Arduino kétlépcsős programozható időzítő áramkör

Próbálja Ki A Műszerünket A Problémák Kiküszöbölésére





Ebben a cikkben megtanuljuk, hogyan készíthetünk egy egyszerű, kétlépcsős Arduino programozható időzítő áramkört, amellyel függetlenül állítható BE és KI időzítéssel be lehet kapcsolni az elektromos terhelést.

Például, ha azt szeretné, hogy a lámpa 24 órán keresztül bekapcsolt állapotban maradjon, és 2 órán át kialszik, egyszerűen megteheti ezt a programkód gyors módosításával. Ugyanígy testreszabhatja a kimeneti időzítést bármely más kívánt időintervallumra a kód megfelelő megváltoztatásával.



Csak muszáj összeállítás és feltöltés a következő kódot az Arduino táblára, és indítsa el az időzítő funkciót az adott alkalmazás igényeinek megfelelően.

Programkód

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

A fenti példában kódolja a sorokat késés (86400000) és késés (3600000) határozza meg a kimenet ON és OFF késleltetési időintervallumait, milliszekundumban. Itt az ábra 86400000 ezredmásodperc 24 órának felel meg, míg 3 600 000 1 órás késést mutat be.



Testreszabhatja ezt a két értéket személyes preferenciáinak megfelelően, hogy megkapja a szükséges kimeneti késéseket.

A beállítás és az áramellátás után az Arduino folytatja a váltást a kétlépcsős BE / KI időzítési sorrend között. mindaddig, amíg a rendszer továbbra is hatalommal bír.

Kördiagramm

A teljes kapcsolási rajz és az Arduino kapcsolatok a következő ábrán láthatók:

Arduino One-Shot Timer áramkör

Ha nem szeretné, hogy az időzítő körbevezesse a kétlépcsős időzítőt, ehelyett azt szeretné, hogy az időzítő egyképes legyen, amely a beállított késleltetés után véglegesen kikapcsol, akkor a következő kódot alkalmazhatja:

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 } }

Ha egy azonos programozható időzítő áramkör diszkréten megtervezett változatát szeretné, akkor megteheti válassza ezt az áramkört

Az Arduino programozható időzítő áramköréhez szükséges alkatrészek

  • Arduino UNO Board = 1
  • IC 7809 = 1
  • BC547 = 1
  • 1N4007 Dióda = 1
  • 10k 1/4 w ellenállás = 1
  • Relé 12V / 400 ohm / SPDT / 5 amp = 1
  • 12 V AC - DC adapter = 1



Előző: Egyszerű digitális időzítő áramkör 2 jegyű kijelzővel Következő: Digitális hőmérő áramkör - napelemet használ az áramellátáshoz