Neben Hardwarelösungen bieten heutzutage Software mehrere Möglichkeiten, einen Kontakt (Taster oder Relais) zu
entprellen, an. Die Softwaremethoden, trotz einiger Nachteile, sind einfacher zu realisieren und kostengünstiger. Es gilt dabei
lediglich darauf zu achten, dass das Hauptprogramm nicht allzu stark zeitlich von den Entprell-Routinen beeinflusst wird. Hier ein
kleines Arduino – Entprellungsprogramm (IDE). Mit einem Taster wird eine Diode ein und ausgeschaltet. Beim Einschalten (Taster betätigt) und Ausschalten (Taster losgelassen)
prellt der Kontakt. Der Vorgang ist zwar für uns nicht sichtbar, kann jedoch mit diversen Methoden festgestellt werden. Es gilt
die Auswirkungen der Prellung zu unterbinden. Eine passende Schaltung für den Programmtest könnte so aussehen: In dem Beispiel werden jeweils die steigende und fallende Flanke am Eingang (PIN 40) vorrangig behandelt. Arduino eingang abfragen code. Wird eine
steigende Flanke erkannt (Taster war nicht gedrückt und wurde gedrückt), wird die den Ausgang repräsentierende Variable "Signal" auf
HIGH gesetzt (Diode geht an).
Arduino Eingang Abfragen Code
Wird der Taster gedrückt, sorgt der Widerstand dafür, dass der Strom nicht zur Masse fließt und einen
Kurzschluss erzeugt, sondern nur zum digitalen Eingang. Entsprechend liegen dort nun wieder +5 V an; der Eingang schaltet auf HIGH. Wird der
Taster losgelassen, wird nun dagegen der Stromkreis vom digitalen Eingang über den Widerstand zur Masse geschlossen. Dass bedingt durch den Widerstand
nur geringe Ströme fließen, ist dem Arduino, wie oben geschrieben, egal. Arduino eingang abfragen tutorial. Man sagt, der Widerstand zieht die Eingangsleitung nach unten auf Masse. Daher wird
der Widerstand als Pull-Down-Widerstand bezeichnet. Der genaue Wert des Pull-Down-Widerstands scheint eine Glaubensfrage zu sein, wenn man verschiedene Internetseiten vergleicht. Letztlich ist der Wert
relativ beliebig. Er muss lediglich einerseits hochohmig genug sein, um keinen Kurzschluss zu erzeugen, andererseits nicht so hochohmig, dass die Stromstärke
so stark begrenzt wird, dass der Arduino das LOW-Signal nicht mehr lesen kann. Ich habe bereits Werte von 1 kΩ bis 1 MΩ erfolgreich getestet, wahrscheilich funktionieren aber auch noch kleinere oder größere Werte.
Der Wert, der zwischen 0 und 1023 liegt, wird als Verzögerung (delay) in das Programm eingefügt und reguliert so die Blinkgeschwindigkeit der LED. Schaltplan mit Fotowiderstand (LDR)
Nun kann man das Potentiometer auch gegen einen anderen Sensor austauschen. Wie beim Potentiometer benötigt das Arduino-Board ein Verhältnis zweier Widerstände, um einen analogen Wert zu erfassen. Fotowiderstand (LDR) am Analog Input des Arduinos (Grafik mit Fritzing erstellt. Drucktaster - Vorwiderstand - Mikrocontroller - Arduino - Lernmaterial - Unterricht - Physik - MINT. ) Ein Fotowiderstand (LDR) im Beispiel allein kann dieses Verhältnis nicht liefern. Man benötigt einen zusätzlichen Referenzwiderstand. Die Größe (Widerstandswert) des Referenzwiderstands richtet sich nach dem verwendeten Sensor und dem Umfeld, in dem er betrieben wird. Um den Referenzwiderstand des Fotowiderstands auszurechen, muss sein Widerstand in einem hellen und einem dunklen Umfeld bestimmt werden. Beide Werte werden miteinander multipliziert und aus dem Ergebnis die Wurzel gezogen. Wurzel aus (Rmin * Rmax) = Rref
Es ergibt sich der Referenzwiderstand.