Arduino 2-Step Programmable Timer Circuit

Versuchen Sie Unser Instrument, Um Probleme Zu Beseitigen





In diesem Artikel erfahren Sie, wie Sie eine einfache 2-stufige programmierbare Arduino-Zeitschaltuhr erstellen, mit der eine elektrische Last mit unabhängig einstellbaren EIN- und AUS-Zeiten ein- und ausgeschaltet werden kann.

Wenn Sie beispielsweise möchten, dass ein Licht 24 Stunden lang EIN und 2 Stunden lang AUS bleibt, können Sie dies einfach durch eine schnelle Änderung des Programmcodes tun. Auf die gleiche Weise können Sie die Ausgabezeiten an jeden anderen gewünschten Satz von Zeitintervallen anpassen, indem Sie den Code entsprechend ändern.



Du musst nur kompilieren und hochladen Geben Sie den folgenden Code auf Ihr Arduino-Board ein und starten Sie die Timer-Funktion gemäß Ihren spezifischen Anwendungsanforderungen.

Programmcode

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

Im obigen Beispiel codieren Sie die Zeilen Verzögerung (86400000) und Verzögerung (3600000) Bestimmen Sie die Zeitintervalle für die EIN- und AUS-Verzögerung des Ausgangs in Millisekunden. Hier die Figur 86400000 Millisekunden entsprechen 24 Stunden, während 3.600.000 zeigt 1 Stunde Verspätung.



Sie können diese beiden Werte nach Ihren persönlichen Wünschen anpassen, um die erforderlichen Ausgabeverzögerungen zu erhalten.

Nach dem Einrichten und Einschalten schaltet der Arduino weiter zwischen der zweistufigen EIN / AUS-Zeitfolge um. solange das System mit Strom versorgt wird.

Schaltplan

Das vollständige Schaltbild zusammen mit den Arduino-Verbindungen ist im folgenden Diagramm zu sehen:

Arduino One-Shot-Timer-Schaltung

Wenn Sie nicht möchten, dass der Timer den zweistufigen Timer durchläuft, sondern dass der Timer ein One-Shot-Typ ist, der nach der eingestellten Verzögerung dauerhaft ausgeschaltet wird, können Sie den folgenden Code anwenden:

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

Wenn Sie eine diskret gestaltete Version einer identischen programmierbaren Zeitschaltung wünschen, können Sie dies tun Entscheide dich für diese Schaltung

Erforderliche Teile für die programmierbare Arduino-Timer-Schaltung

  • Arduino UNO Board = 1
  • IC 7809 = 1
  • BC547 = 1
  • 1N4007 Diode = 1
  • 10k 1/4 w Widerstand = 1
  • Relais 12V / 400 Ohm / SPDT / 5 Ampere = 1
  • 12V AC / DC Adapter = 1



Zurück: Einfache digitale Timer-Schaltung mit 2-stelliger Anzeige Weiter: Digitale Thermometerschaltung - Verwendet eine Solarzelle zur Stromversorgung