Arduino skrivbord Fan Controller (2 / 3 steg)
Steg 2: Kontrollerna
Alla baserade runt en Arduino Uno. Jag bröd bordade komponenterna och gjort en start på en skiss.
Skissen använder 3 bibliotek:
- En att köra irf520 mosfet att byta fläkten.
- En att köra OLED-skärm
- Man kan läsa och översätta temperaturdata från DHT11
Jag kommer att inkludera skissen här senare, när jag har städat det upp lite, men vänligen varnas, jag inte är en programmerare, jag förstår bra kodning principer, men tenderar att vara en lata kodare. Om jag kan hitta en väg runt något och det fungerar, då det fungerar.
Det finns några bra platser ute förklarar hur du använder alla... och kommer att inkludera länkar till de bästa (enligt min åsikt) webbplatserna för att få bäst av varje.
Logik:
En enda USB-kabel ger ström till Arduino och att USB-fläkt. Arduinoen kan inte köra fläkten eftersom den nuvarande det drar skulle skada Arduino (lite dramatiskt faktiskt! det skulle resa ombord säkringen). Så måste vi hitta ett sätt att använda Arduino för att byta makt till fläkten på eller av.
En transistor som krävs, jag först beställde en Darlington transistor, men efter att ha läst, plumped för en irf520 MOSFET driver modul från HobbyComponents.com. Nörd varning! IRF520 är bra för logik nivå växling (output från Arduino stift). Den spänning som skickas till enheten avgör motståndet av MOSFET, dvs att skicka 0 till 255 till en digital pin kommer att driva fläkten (eller andra anslutna enheten) från av till full fart.
Vi kommer tillbaka till 0 till 255 senare.
Så vi byter en fläkt med en Arduino, varför bry sig? Ja, vill vi inte att komma på när det är för kallt, gör vi? Så om vi lägger en temperaturgivare, vi kan skriva kod och test för att se om den har hot och vända fläkten på (255) eller av (0). Jag gick för en DHT11 som det är smuts billigt, lätt att koden och korrekt nog för detta projekt.
Tillbaka till som 0 till 255 företag. Om vi vet att en bit kod startar fläkten (255) om temperaturen är hög, eller av (0) om temperaturen är låg, om vi hade ett värde mellan 0 och 255, skulle motståndet stiga eller falla över MOSFET och snabba upp eller sakta ner fläkten.
Ange en potentiometer kopplad till en analog pin! När vände, genererar ett värde mellan 0 och 1023. Det här värdet kan sedan testas i koden för att ändra fläkthastigheten! yipeeeee.
Det finns en sista sak (Ja, ett par). Motorisk kontroll biblioteket vi använder för att köra MOSFET föraren accepterar 2 parametrar, en att ställa in motståndet (för hastighet) och en annan för att ställa in längd. Så med denna magiska parameter, kan vi ställa hur länge fläkten är på, och hur lång tid fan av detf off.
Så, vi har 4 krukor att styra 4 variabler. Nästa ska vi titta på displayen.