Arduino programirljivi krug odbrojavanja u dva koraka

Isprobajte Naš Instrument Za Uklanjanje Problema





U ovom članku saznajemo kako napraviti jednostavni Arduino programirljivi krug s timerom u dva koraka koji se može koristiti za UKLJUČIVANJE / ISKLJUČIVANJE električnog opterećenja s neovisno podesivim vremenima UKLJUČIVANJA i ISKLJUČIVANJA.

Na primjer, ako želite da lampica ostane UKLJUČENA 24 sata i ISKLJUČENA 2 sata, to možete jednostavno učiniti brzom izmjenom programskog koda. Na isti način možete prilagoditi izlazna vremena za bilo koji drugi željeni skup vremenskih intervala odgovarajućom promjenom koda.



Jednostavno moraš sastaviti i prenijeti sljedeći kod na vašu Arduino ploču i pokrenite funkciju odbrojavanja prema vašim specifičnim potrebama aplikacije.

Programski kod

void setup(){ pinMode(13, OUTPUT) } void loop(){ digitalWrite(13, HIGH) delay(86400000) digitalWrite(13, LOW) delay(3600000) }

U gornjem primjeru kodirajte redove kašnjenje (86400000) i kašnjenje (3600000) odredite intervale kašnjenja izlaza ON i OFF u milisekundama. Evo, slika 86400000 milisekunde odgovara 24 sata, dok 3.600.000 izlaže 1 sat kašnjenja.



Ove dvije vrijednosti možete prilagoditi prema vlastitim željama kako biste dobili potrebna kašnjenja izlaza.

Jednom kada se postavi i uključi, Arduino će nastaviti prebacivati ​​se između vremenskog slijeda za UKLJUČIVANJE / isključivanje u dva koraka. sve dok snaga ostaje primijenjena na sustav.

Kružni dijagram

Kompletni dijagram sklopa zajedno s Arduino vezama može se vidjeti na sljedećem dijagramu:

Arduino krug s jednim pucanjem

Ako ne želite da se tajmer provlači kroz tajmer s dva koraka, umjesto toga želite da tajmer bude jednokratni, koji će se trajno ISKLJUČITI nakon postavljenog kašnjenja, možete primijeniti sljedeći kod:

int led = 13 // Pin 13 has an LED connected on most Arduino boards. unsigned long DELAY_TIME = 10000 // 10 sec unsigned long delayStart = 0 // the time the delay started bool delayRunning = false // true if still waiting for delay to finish void setup() { pinMode(led, OUTPUT) // initialize the digital pin as an output. digitalWrite(led, HIGH) // turn led on // start delay delayStart = millis() delayRunning = true } void loop() { // check if delay has timed out if (delayRunning && ((millis() - delayStart) >= DELAY_TIME)) { delayRunning = false // finished delay -- single shot, once only digitalWrite(led, LOW) // turn led off } }

Ako želite diskretno dizajniranu verziju identičnog programabilnog kruga timera, možete odlučite se za ovaj sklop

Dijelovi potrebni za programirljivi krug odbrojavanja Arduino

  • Arduino UNO odbor = 1
  • IC 7809 = 1
  • BC547 = 1
  • 1N4007 Dioda = 1
  • Otpor 10k 1/4 w = 1
  • Relej 12V / 400 ohma / SPDT / 5 amp = 1
  • 12V adapter za izmjenični i istosmjerni tok = 1



Prethodno: Jednostavni digitalni timer krug s dvoznamenkastim zaslonom Dalje: Krug digitalnog termometra - koristi solarnu ćeliju za napajanje