Indholdsfortegnelse:

Temperaturstyret blæser!: 4 trin
Temperaturstyret blæser!: 4 trin

Video: Temperaturstyret blæser!: 4 trin

Video: Temperaturstyret blæser!: 4 trin
Video: How to use W3230 Thermostat Heat and Cold Relay Controller AC DC 12V/24V/120/220V P1 to P8 2024, Juli
Anonim
Temperaturstyret blæser!
Temperaturstyret blæser!

Bor i et tropisk land som Singapore, er det frustrerende at svede hele dagen, og i mellemtiden skal du fokusere på dit studie eller arbejde i sådanne indelukkede omgivelser. For at få luften til at strømme og afkøle dig selv, kom jeg på ideen om en temperaturstyret blæser, der tænder automatisk, når temperaturen når 25 Celsius (det er, når de fleste mennesker begynder at føle sig varme), og ventilatorhastigheden stiger og bringer stærkere vind ved 30 Celsius.

Nødvendige komponenter:

1. En Arduino Uno.

2. En temperatursensor (TMP36, der har analog udgang).

3. En TIP110 -transistor.

4. En 6V DC -motor med blæserblad.

5. Én diode (1N4007).

6. En LED.

7. To modstande (220Ohm og 330Ohm)

8,6V strømforsyning.

Trin 1: Opret en skematisk

Opret en skematisk
Opret en skematisk
Opret en skematisk
Opret en skematisk

Her er skematikken, jeg har oprettet til dette projekt ved hjælp af Eagle.

Temperatursensorkredsløbet giver den analoge indgang baseret på hvilken motoren er tændt og varierer dens hastighed. Som vist i pinlayoutet ovenfor, skal pin1 tilsluttes strømforsyningen. Da TMP36 fungerer godt under spænding på 2,7V til 5,5V (fra datablad), er 5V fra Arduino -kort nok til at drive temperatursensoren. Pin 2 udsender analog spændingsværdi til A0 pin i Arduino, som er lineært proportional med celsius temperatur. Mens Pin3 er forbundet til GND i Arduino.

Baseret på den registrerede temperatur vil PWM -stiften 6 "udsende forskellig spænding" (forskellig spænding opnås ved at tænde og slukke signalet gentagne gange) til basen af TIP110 -transistoren. R1 bruges til at begrænse strømmen, så den ikke overstiger den maksimale basisstrøm (for TIP110 er den 50mA baseret på databladet.) En 6V ekstern strømforsyning frem for 5V fra Arduino bruges til at drive motoren som den store strøm trukket af motoren kan ødelægge Arduino. Transistoren her fungerer også som en buffer til at isolere motorkredsløbet fra Arduino af samme grund (forhindrer strøm trukket af motor for at beskadige Arduino.). Motoren vil dreje med forskellig hastighed ved forskellig spænding, der påføres den. Dioden, der er forbundet til motoren, skal fjerne den inducerede emf, der genereres af motoren i det øjeblik, vi tænder og slukker blæseren for at forhindre transistoren i at beskadige. (Pludselig ændring i strøm vil forårsage tilbage emf, som kan beskadige transistoren.)

Digital pin 8 er tilsluttet LED, som lyser, når ventilatoren roterer, modstand R2 er her for at begrænse strømmen.

Bemærk*: Alle komponenter i kredsløbet deler den samme jord, så der er et fælles referencepunkt.

Trin 2: Kodning

Kodning
Kodning
Kodning
Kodning

Kommentarer i min kodning har forklaret hvert trin, følgende er de supplerende oplysninger.

Den første del af min kodning er at definere alle variablerne og benene (første foto):

Linje 1: Temperaturen er defineret som flydende, så den er mere præcis.

Linje 3 og linje 4: Minimumstemperaturen, hvor blæseren tændes, kan tilpasses til andre værdier samt "tempHigh", hvor blæseren centrifugerer hurtigere.

Linje 5: Blæserbolten kan være enhver PWM -stift (pin 11, 10, 9, 6, 5, 3.)

Den anden del af min kodning er at styre hele kredsløbet (Andet foto):

Linje 3 og linje 4: Den analog-til-digitale konverter i Arduino får værdien af et analogt signal fra analogRead () og returnerer en digital værdi fra 0-1023 (10-bit). For at konvertere den digitale værdi til temperatur divideres den med 1024 og ganges med 5 V for at beregne den digitale spændingsoutput fra temperatursensoren.

Line5 & Line 6: Ifølge databladet for TMP36 har den en spændingsforskydning på 0,5V, så 0,5v trækkes fra den originale digitale spænding for at få den faktiske spændingsoutput. Endelig multiplicerer vi den faktiske spænding med 100, da TMP36 har en skalafaktor på 10mV/grad Celsius. (1/(10mV/grad Celsius)) = 100 grader celsius/V.

Line 18 & Line24: PWM Pin udgangsspænding fra 0-5V. Denne spænding bestemmes af driftscyklussen fra 0-255, hvor 0 repræsenterer 0% og 255 repræsenterer 100%. Så "80" og "255" her er blæserhastigheden.

Trin 3: Testning og lodning

Test og lodning
Test og lodning
Test og lodning
Test og lodning
Test og lodning
Test og lodning

Efter at have udarbejdet skematikken og kodningen, er det tid til at teste kredsløbet på brødbrættet!

Tilslut kredsløbet som vist i skematisk

Jeg brugte et 9V batteri i denne fase, der ikke er egnet til en 6V DC motor, men det burde være i orden at forbinde dem sammen i et kort stykke tid. Under selve prototypen brugte jeg ekstern strømforsyning til at drive 6V til motoren. Efter test er det vist, at kredsløbet fungerer godt. Så det er på tide at lodde dem på en tavle!

Inden lodning af kredsløbet …

Det er godt at tegne kredsløbet på et Stripboard Layout Planning Sheet for at planlægge, hvor komponenterne skal placeres, og hvor der skal bores huller. Baseret på min erfaring er det lettere at lodde, når du forlader en kolonne mellem to lodninger.

Ved lodning …

Vær forsigtig med komponenter med polaritet. I dette kredsløb vil de være LED'en, hvis længere ben er anoden og dioden, hvis grå del er katoden. Pinout af TIP110 transistor og TMP36 temperatursensor bør også overvejes.

Trin 4: Demostration

Image
Image
Demostration
Demostration
Demostration
Demostration
Demostration
Demostration

For at gøre hele kredsløbet pænt og ikke så rodet, bruger jeg hun -til -mand -header til at stable stribetavlen på Arduino, mens jeg forbinder til stiften i Arduino. Jeg har også 3D -printet en blæserholder til at holde blæseren, stl -filen er vedhæftet nedenfor. Under demonstrationen bruger jeg den eksterne strømforsyning, da mit 9V batteri ikke fungerer.

Den sidste demonstrationsvideo er vedhæftet ovenfor. Tak fordi du så med!

Anbefalede: