Arduino kontrollerade Beehive Fumigator / Air Freshener (2 / 9 steg)
Steg 2: Kontroll av farliga processer
Bilden ovan visar en bikupa som desinficeras med oxalsyra med traditionell elektrisk uppvärmning pannan in i bikupa ingången. Om inte biodlaren är bär rätt mask, kommer han att utsättas för mycket giftiga sura ångor.
Alla kommer att be är "Inte kunde vi har en mycket lång kabel till uppvärmningen panorera enhet?" och "Varför gå till alla problem med att göra en controller?" också "varför inte bara har ett batteri och en stor övergång till använda enheten?"
Alla dessa frågor är mycket värdefullt. Sallad ångorna är giftiga för människor och ja, vi kunde ha en lång kabel, en switch och ett batteri och gömma sig i en underjordisk bunker medan operativa enheten distans. Eller vi skulle kunna använda de befintliga produkter på marknaden, vilket oundvikligen utsätta biodlare för elaka oxalsyra rök.
Som ingenjörer är det vårt jobb att ställa massor av besvärliga frågor och titta på alla de potentiella problemen i minsta detalj. Tro mig, detta kommer att driva din chef galen och han kommer snart att börja skrika obsceniteter i din allmänna riktning.
Om vi tittar på den här enheten i synnerhet, kan vi plåga våra imaginära chef med följande frågor och påståenden:
"Brian, vi måste kunna förhindra att biodlaren utsätts för oxalsyra rök"
"OK Tecwyn, vi ska lägga enheten på en lång kabel med en stor växel och Dölj i en bunker"
"Errrrr... Tja... Det är inte riktigt så enkelt som att. Vi måste också kunna styra temperaturen där vi värmer pulvret"
Att som Brian svar: "du ingenjörer älskar att hitta problem med allt. Vad är det med er?"
"Errrrr... Ja... Men det är mitt jobb är inte det?"
"Nej" säger Brian, "ditt jobb är att göra denna enhet så snabbt och billigt som möjligt."
"Vi måste också se till att enheten är kallt innan biodlaren försöker sätta mer pulver i den" säger jag, nervöst.
Vid denna tid Brian, min imaginära chef, är att nå för en stor flaska whiskey i hans desk draw.
"Vi behöver också varningslampor eller ljud att enheten producerar rök".
Brian svarar: "Ja du har bara lyckats vända en billig $50 produkt till en något tio gånger så dyrt. Försöker du konkurs företaget?"
"Nej" svarar jag, "Vi måste se till att enheten gör det jobb ordentligt och inte skadar biodlare".
Brian nu dricker whisky, når tillbaka i sitt skrivbord dra för sin pump action hagelgevär och jag kör ut ur byggnaden så fort som möjligt med skottlossning bakom mig.
Personligen kan jag inte ge min imaginära chef tillfredsställelsen att se mig ta genvägar och producera en andra kurs gasning maskin utan ordentlig kontroll system, så jag måste, jag bara måste göra det ordentligt eller inte alls!
Så småningom jag lugna ner och skriva en kort lista med alla önskvärda funktioner för min styrenhet, undrar om jag har fortfarande en imaginär jobb att gå till på morgonen:
- Det bör varna biodlare att rök håller på att tas fram så att han kan gå bort till ett säkert avstånd eller sätta på en lämplig mask.
- Den bör styra temperaturen vid vilken oxalsyra pulver värms till så att det inte är "överkokt" eller "dåligt".
- Det bör berätta biodlare om enheten är fortfarande varmt så att han inte försöker lägga till mer pulver för tidigt.
- Det bör lugna biodlare som allt fungerar, eller om det finns ett fel någonstans.
Då tittar på själva enheten:
- Det måste ha en fläkt för att blåsa rök i en bikupa.
- Värmeslinga måste producera tillräckligt med värme för att vaporise pulvret någorlunda snabbt.
- Värmeslinga bör ha en rimlig livslängd, så bör inte användas för hög energi.
- Alla elektriska kablar måste säkras ordentligt.
- Det måste testas ordentligt för att leta efter kortslutningar och läckor.
Förhoppningsvis blir Brian på bättre humör imorgon.
Vad beträffar Arduino går, skulle koden för att varna de biodlare som temperaturen i potten är för hög för påfyllning direkt se ut så här:
medan (värme > 100) { värme = thermocouple.readThermocouple(CELSIUS); LCD.Clear(); lcd.setCursor(0,0); LCD.Print ("var god, vΣnta medan"); lcd.setCursor(0,1); LCD.Print ("de enheten kyler"); lcd.setCursor(0,2); LCD.Print ("till nedan 100");lcd.print((char)223);lcd.print("C"); lcd.setCursor (0,3), lcd.print ("Probe Temp:");lcd.print(heat);lcd.print((char)223);lcd.print("C."); tonen (A2, 300, 100); spelar ett 300 hz ljud för 100ms Delay(3000); } |
I denna bit av koden, K typ temperaturgivaren läses och dess värde förklaras vara "heat". LCD-skärmen rensas då och ett meddelande skrivs ut för att berätta biodlare att potten är för varmt och att han måste vänta tills det svalnat. Ett larm buller sänds var 3 sekunder som koden öglor. Styrenheten kommer att stanna i denna "medan" loop tills på loopens villkor dvs. att "värmen" inte längre är större än 100 ° c.