Der code soll wenn ich einen Knopf drücke in einer bestimmten Reihenfolge meine relais ansteurn. Bisher bekomme ich aber nur ein relai angeschalten. Wenn ich mehrere outputs hinzufüge dann funktioniert mein Knopf nicht mehr und der code wird einfach so ohne knopfdruck ausgeführt.
Das ist mein knopf:
Ich finde komischerweise nur tutorials mit tastern. Trotzdem würde ich den code gerne mit diesem knopf ausführen. Später wird der knopf dann durch ein relai erstetzt das ich mit alexa steuern kann.
Wie würde denn so ein code in arduino sprache aussehen? Meine knöpfe sind an pin 2 bis 5 angeschlossen. Wenn ich einen der schalter kurz drücke soll jenachdem welchen schalter ich gedrückt habe bestimmte outputs mit high oder low angesteuert werden. Meine relais sind an pin 6 bis 12 angeschlossen und mit 5v verbunden. Ich bekomm es einfach nicht hin mehrere relais mit einem delay dazwischen in einer reihenfolge anzusteuern. Immer wenn ich das versuche funktioniert mein knopf entweder garnicht, nur manchmal oder komplett falsch. Mein Knöpfe haben übrigens nur 2 pins, also kann ich keinen wiederstand anschließen und muss somit auf pullup oder pulldown setzen.
Es gibt keine Arduino-Sprache. Wie ich schon schrieb, es ist C++, die auch auf anderen System eingesetzt werden kann.
Auch verwendest du keine Knöpfe, sondern Taster, hatte ich auch schon geschrieben.
An diesen Tastern reichen dir 2 Pins aus, wenn du nur einen Kontakt zwischen einem Arduino Pin und einem bestimmten Potential herstellen möchtest.
Da kannst du dann den entsprechenden Widerstand (bitte nur mit i) an den Pin deines Tasters der am Eingangspin des Arduinos anliegt, anschließen.
Das funktioniert auch so. Allerdings ist die Verwendung eines internen Pullup-Widerstandes deutlich einfacher und reicht in den meisten Fällen aus.
Wie du jetzt eine, bzw. mehrere Taster Auswertungen programmierst, kannst du dir in den Beispielen der IDE (Menü>Datei, Beispiele) ansehen und für deine Programmierung nutzen.
@madmax68exe
Was mir grad an deinem Verdrahtungs-Bild auffällt, hast du am Uno kein GND (minus) vom Netzteil angeschlossen ?
Theoretisch könnte ein Verbinden der +5V auch funktionieren ABER.
Aber dann wird das LED des Optokopples vom Arduino-Versorgung gespeist und nicht von der Versorgungsspannung des Relaismoduls.
Es ist übllich und jeder baut darauf daß der Minuspol (Masse) verbunden wird da die Spannungen gegen Masse gemessen werden. Auch alle Eingänge machen das so.
Das kann nicht funktionieren, da es ein Kurzschluss ist.
Du musst GND (Minus) vom Netzteil mit GND vom Uno verbinden. Nur so funktioniert es.
Uwe hat es dir auch schon geschrieben.
Gehen Deine "Knöpfe" beim Loslassen wieder in die Ruhestellung zurück? Dann werden sie üblicherweise als Taster bezeichnet. Oder verbleiben sie bis zur nächsten Betätigung in einem der Zustände Offen bzw. Geschlossen?
Und auch wenn sie nur zwei Pins haben, kann man sie tatsächlich mit einem externen Pullup-Widerstand betreiben. Dieser macht nichts anderes als ein interner Pullup, nämlich einen definierten Pegel am Port bereitzustellen. Der Taster/Schalter wird so angeschlossen, dass er beim Schließen den Port auf Masse/GND zieht.
Bei Deinem grafischen Code erscheint mir der Block " input Pull-up pin 2" nicht richtig platziert. Das müsste m.E. vorher erfolgen, nicht im If...