Timer für LED-"Ampel" selber bauen, wer kann mir helfen?

Robinhood

Vereinsmitglied
Hallo liebe Gemeinde,
ich brauche mal die Unterstüzung von den Elektronikern und Controllerfreaks unter Euch!

Meine Aufgabe ist folgende:

Die "Ampel" besteht aus einer roten und einer grünen LED. Per Tastendruck sollen feste Ablaufschemata gestartet werden. Z.B:

1) 7 sec rot, dann 150 sec grün, dann wieder 7 sec rot
2) 7 sec rot, dann 20 sec grün, dann wieder 7 sec rot
3) 7 sec rot, 3 sec grün 5x hintereinander, als Abschluß wieder 7 sec rot. Also 7-3-7-3-7-3-7-3-7-3-7

Die Auswahl der Programme 1), 2) oder 3) soll per Wählschalter erfolgen oder 3 verschiedene Taster starten drei verschiedene Programme.

Ich habe zuletzt in den 80ern und 90ern Platinen von Conrad mit ein paar passiven Bauteilen und IC's nach Schaltplan zusammengelötet und damit ist mein Fachwissen schon am Ende. Ich habe keine Möglichkeit, Platinen selber zu erstellen (ätzen) und programmieren habe ich auch nicht gelernt, bin aber willens, mich einzuarbeiten. Jede Hilfe, wie man ein solches Projekt angehen und lösen kann, ist gewünscht! Vielen Dank schon mal!
 

wno158

User
Arduino!

Arduino!

Hallo Robin,
das Problem lässt sich m.E. sehr elegant mit einem Arduino lösen - vorausgesetzt die Einbausituation lässt das zu.

In diesem Fall sollte ein Nano reichen. Du brauchst dann drei die Taster, die beiden LED, zwei Vorwiderstände und eine Spannungsversorgung (ein kleines USB-Netzteil sollte reichen). Das ist jetzt nicht so umfangreich und könnte zunächst (zur SW-Entwicklung) auf dem Steckbrett und dann später "fliegend" verkabelt werden.

Kannst Du ein wenig genauer mitteilen, was Du in diesem Umfeld an Vorkenntnissen hast? Dann kann ich ggf. auch noch etwas detaillierter antworten.

Es gibt auch ein hilfreiches Arduino-Forum (das ist die deutschsprachige Abteilung); die Kollegen dort leisten gerne Hilfe zur Selbsthilfe. Das heißt, den Anfang (Schaltung und ein erstes Programm) solltest Du schon haben, bevor Du da vorstellig wirst.

Gruß Walter
 
Hallo Robin,

deine gestellten Anforderungen kannst du eigentlich mit jedem Microkontroller spielend erreichen.
Falls du mehr Schaltleistung erreichen willst, kannst du z.b einen ULN Array dahinter schalten. Mit diesem kannst du leicht ein paar 2-3 hundert mA schalten.
bei einem Microcotroller ist meist bei 20mA schluss.
Schreibe doch ein paar genauere Infos, und welche Hardware du zur hand hast. der Code sollte kein Problem sein :-)


Gruß
 

Robinhood

Vereinsmitglied
Hallo brueggen2, hallo Walter,

ich habe noch keine Hardware und auch keinerlei Vorauskenntnisse bei Programmieren.

Ich werde mich mal in die Richtung Arduino vorarbeiten. Wenn Ihr jetzt z.B. bei Conrad einkaufen würdet, was müßte auf der Einkaufsliste stehen?

Z.B. https://www.conrad.de/de/evaluationsboard-c-control-nano-board-1528496.html?WT.mc_id=google_pla&WT.srch=1&ef_id=EAIaIQobChMIgLakofvs3wIVW8ayCh3drg58EAQYAyABEgKLufD_BwE:G:s&gclid=EAIaIQobChMIgLakofvs3wIVW8ayCh3drg58EAQYAyABEgKLufD_BwE&hk=SEM&insert_kz=VQ&s_kwcid=AL!222!3!310335538502!!!g!! wäre der Anfang, oder?

Welches Zubehör brauche ich noch? 5V Netzteil, 3 Taster, zwei LEDs ist klar. Aber spätestens jetzt hört‘s schon auf. Welches Entwicklungsboard? Evtl. gibt es bei Conrad ein Bausteinsystem oder Set, das für den Einstieg geeignet ist oder schon alles mitbringt.

Geht mal - etwas übertrieben formuliert - davon aus, daß Ihr einem 4-jährigen die Problemlösung erklären sollt ;)
 

wno158

User
In aller Kürze...

In aller Kürze...

...denn ich muss noch ein wenig Geld verdienen!

Das Conrad-Board ist m.E. maßlos überteuert. Deinen ersten Nano bekommst Du als Neukunde sogar umsonst (Löten kannst Du ja), ein Steckbrett kann nicht schaden und was den Kleinkram angeht such ich Dir heute abend mal ein paar Beispiele bei Reichelt raus.

Gruß Walter
 

Robinhood

Vereinsmitglied
da findest Du auch schon ein, wenn auch sehr einfaches, Programm für Deine Idee:
http://www.cboden.de/mikro-controller/digispark/ampel-steuerung

Und die Arduino IDE würde ich Dir auch empfehlen, damit solltest Du recht schnell zum Erfolg kommen. Es gibt einen riesigen Haufen Hardware und Software sowie Foren und Hilfen zu allem möglichen.

Danke Thomas, das hilft schon mal weiter, um überhaupt ein Gefühl für die Thematik zu bekommen. Die Ampel-Thematik aus dem Modellbahnbereich war der Auslöser für meine Projektaufgabe.

Das Conrad-Board ist m.E. maßlos überteuert. Deinen ersten Nano bekommst Du als Neukunde sogar umsonst (Löten kannst Du ja), ein Steckbrett kann nicht schaden und was den Kleinkram angeht such ich Dir heute abend mal ein paar Beispiele bei Reichelt raus.

Gruß Walter

Super Walter, das bringt mich sicher einen großen Schritt weiter!
Gehäuse etc. drucke ich mir dann im 3D-Drucker selber aus.
 

Thomas L

Vereinsmitglied
Arduino Boards bekommst Du auch billiger, da hat Walter Recht das Ding ist viel zu teuer.

Um schnell zum Erfolg zu kommen empfehle ich ein Board mit USB Schnittstelle. So kannst Du die IDE ohne viel tamtam direkt mit dem Board verbinden. Auf den Arduinos ist ein Bootloader der es der IDE ermöglicht die neue Software seriell zu laden.
In der IDE stellst Du ein welches Board und welche COMx Du verwendest und schon geht es los. Einfacher geht es mE nicht mehr.
 

wno158

User
Sodele...

Sodele...

Hallo Robin,
die Handballer sind fertig (schade...) und ich auch. Wir nehmen mal die Version für Fünf-Jährige; Du bist ja nicht POTUS :).

Hier habe ich Dir als Beispiel eine Bauteileliste für den Anfang zusammengestellt. Es müssen natürlich nicht diese Taster sein, es ginge auch mit einem billigeren LED/Widerstandssortiment - aber ein kleiner Vorrat kann ja nicht schaden. Wählschalter ginge auch, ggf. auch mit verschiedenen Pullup-Widerständen an einem Analogeingang.

Mit dem Digispark kenne ich mich leider gar nicht aus; nach "Papierform" sollte der aber für Deine Anwendung auch reichen. Ich würde tatsächlich einen Dreierpack Nanos nehmen - einen für die Verwendung auf dem Steckbrett mit den Stiftleisten versehen und die anderen dann in die Anwendung packen.

Eine erste Schaltungsidee habe ich angehangen (das Fritzing-File kann ich Dir bei Bedarf auch zuschicken - bitte Mailadresse per PN mitteilen). ACHTUNG: Ich habe das noch nicht zusammengebaut und getestet. Wenn Du diesen Weg gehen willst, kann ich das gerne mal ausprobieren und dann bestätigen.

Bis die Hardware geliefert wird, kanns Du Dich schon ein wenig mit der Arduino-Welt anfreunden. Ich empfehle für die ersten Schritte die IDE und die darin enthaltenen Basis-Beispiele für LED-Ansteuerung (Datei -> Beispiele -> 01 Basics -> "Blink" - das "Hello World" der Arduino-Welt) und Tasten (02 Digital -> Button).

Dann sehen wir weiter...

Anmerkung: Natürlich ist das nicht unbedingt die günstigste Variante, um zwei LEDs anzusteuern, aber vielleicht die einfachste mit der größten Unterstützung im Netz. Es gibt da auch noch diverse andere Chips wie z.B. PIC und 8051 usw.

Und noch eine freche Frage: Wo genau können wir dann später die rote und die grüne LED in Aktion sehen?
Gruß Walter
 

Anhänge

  • Ampelschaltung_Schaltplan.pdf
    427,2 KB · Aufrufe: 167
  • Ampelschaltung_Steckplatine.pdf
    596,7 KB · Aufrufe: 196

Thomas L

Vereinsmitglied
Nur zur Klarstellung bevor das fehlinterpretiert wird, den Digispark würde ich auch nicht empfehlen. Nimm ein normales Arudino Board mit integrierter USB Schnittstelle. Die werden standardmäßig von der IDE unterstützt und vereinfacht den Einstieg extrem. Das NANO ist hierfür eine einfache und gute Wahl.
Das Beispiel habe ich halt bei Digispark gefunden, fand es gut erklärt und habe es nur zur Veranschaulichung gepostet.
 
Zuletzt bearbeitet:

Robinhood

Vereinsmitglied
Mensch Walter, das ist ja sensationell, was Du da ablieferst :D! Vielen Dank für Deine Mühe!

Ich werde die nächsten Tage (wahrscheinlich beruflich bedingt eher Wochen) mit Beschaffung der Materialien und "Anfreunden mit der Arduino-Welt" verbringen.

Jetzt geht's schon los mit der Fragerei: Das Board liefert 40mA lt. Datenblatt, was für bis zu drei Standard LEDs 5V/13mA ausreicht. Was mache ich aber, wenn im Endstadium bis zu 5 Ampeln gleichzeitig geschaltet werden sollen und dies sogar mit High Power LEDs ?

Dieses Kit https://www.az-delivery.de/collections/arduino-zubehor/products/mb-102-breadboard-kit?ls=de würde neben dem Steckbrett auch einen Netzteiladapter mitbringen. Wäre das ok oder unnötig?

P.S.: Sobald das Teil funktionsfähig ist, lüfte ich das Geheimnis um den konkreten Einsatz und Fotos davon gibt's auch ;)
P.P.S.: Wenn wir dieses Niveau für 5-jährige beibehalten, komme ich klar damit :)
 

wno158

User
Es wird (etwas) komplizierter...

Es wird (etwas) komplizierter...

Was die Spannungsversorgung angeht, wird das u.U. etwas diffiziler. Die 40mA kommen wohl aus dem ATMega-Datenblatt...

Wenn Du diesen Schaltplan vom Nano meinst: Die USB-Versorgung VBUS geht über den MSMF050 als VUSB dann über eine Diode auf +5V. Damit hast Du nur die Begrenzung auf 500mA durch die "Sicherung". Das Board mit dem Adapter (der in dem Fall auch nur die 5V-USB-Spannung durchschleift) brauchst Du meiner Meinung nach (hierfür) nicht.

Ein ATMega-Pin kann High-Power-LEDs nicht treiben, der geht dann kaputt. Da kommt dann der oben schon erwähnte ULN ins Spiel. Da muss ich aber erst in einem früheren Projekt wühlen - das wird heute (von mir) nix mehr.

Bleiben wieder zwei Fragen von mir:
Laufen eigentlich alle fünf gleichzeitig mit demselben Ablauf oder alle fünf mit jeweils eigener Taktung?
Hast Du einen Link auf die LEDs?

Ich habe ein klein wenig Bedenken, ob die 500mA reichen... und was der Treiber wird leisten müssen.

@Thomas: Wir sind uns da einig, obwohl der Verlinkte tatsächlich USB hat. Dafür sind es halt nur 8kB Flash. Wenn ich da mal wieder bestelle, kaufe ich mal einen zum Spielen mit :).

P.P.S.: Robin wird nächste Woche sechs und dann eingeschult :)
 

Thomas L

Vereinsmitglied
@Thomas: Wir sind uns da einig, obwohl der Verlinkte tatsächlich USB hat. Dafür sind es halt nur 8kB Flash. Wenn ich da mal wieder bestelle, kaufe ich mal einen zum Spielen mit :).

Yep, aber der Digispark ist kein Standard Arduino und muss speziell in die IDE eingebunden werden damite er bedienbar wird. Zudem muss das Ding vor dem Softwareupdate auch neu gestartet werden. Alles nichts für einen der noch keine Ahnung von der Materie hat.

Aber mit dem UNO und Deiner sehr guten Hilfe wird das schon was werden.
Bzgl. großer LED Anzahl (10Stk ?), das würde ich eh als Multiplexer in Software ausführen. Macht ja keinen Sinn alle gleichzeitig zu bestromen. Aber soweit ist er ja noch nicht ;)

Die 40mA ist mW auch die Summe die getrieben werden kann, 1 PIN 40mA (?) 2 Pinne je 20mA ...
 

Robinhood

Vereinsmitglied
Was die Spannungsversorgung angeht, wird das u.U. etwas diffiziler. Die 40mA kommen wohl aus dem ATMega-Datenblatt...

Aus dem Nano V3 Datenblatt...

Wenn Du diesen Schaltplan vom Nano meinst: Die USB-Versorgung VBUS geht über den MSMF050 als VUSB dann über eine Diode auf +5V. Damit hast Du nur die Begrenzung auf 500mA durch die "Sicherung".

Jetzt fühle ich mich wie 3 1/2...:eek:

Bleiben wieder zwei Fragen von mir:
Laufen eigentlich alle fünf gleichzeitig mit demselben Ablauf oder alle fünf mit jeweils eigener Taktung?
Hast Du einen Link auf die LEDs?

Alle fünf gleichzeitig. Link: https://www.reichelt.de/led-5-mm-bedrahtet-5-v-rot-30-mcd-60-led-5mm-5v-rt-p54104.html?&trstct=pos_6

YAlles nichts für einen der noch keine Ahnung von der Materie hat.

Ja.


Aber mit dem UNO und Deiner sehr guten Hilfe wird das schon was werden.

Ich bin da sehr zuversichtlich :)


Bzgl. großer LED Anzahl (10Stk ?), das würde ich eh als Multiplexer in Software ausführen. Macht ja keinen Sinn alle gleichzeitig zu bestromen. Aber soweit ist er ja noch nicht ;)

Die 40mA ist mW auch die Summe die getrieben werden kann, 1 PIN 40mA (?) 2 Pinne je 20mA ...

Es werden genau genommen im finalen Stadium nur fünf LEDs gleichzeitg angetrieben. 5x rot abwechselnd mit 5x grün, nie 10 gleichzeitig. Für den Testaufbau reicht eine 13mA rote und grüne aus dem Link.
 

wno158

User
Da bin ich wieder

Da bin ich wieder

...mit einer neuen Schaltung - auch wieder noch nicht ausprobiert (das hat ja Zeit)!

Wenn Du über die LED-Ansteuerung mit Strömen jenseits der 20mA pro Pin und 40mA insgesamt mal gegockelt hast, sind Dir vermutlich Schaltungen mit Transistoren und weiteren Widerständen untergekommen. Das ginge auch, aber ein ULN2003 bringt das Ganze gleich sieben mal und etwas schöner in einem Gehäuse mit (ULN2803: 8 Kanäle).

Jeder der sieben Ausgänge kann 500mA treiben, sodass die fünf roten und fünf grünen Lampen jeweils zusammen an einen Ausgang geschaltet werden können - wenn die fünf zusammen unter dieser Schwelle bleiben und ich keinen kapitalen Denkfehler drin habe. Sollte das nicht der Fall sein, verteilen wir die auf die Ausgänge oder nehmen im schlimmsten Fall zwei ULN und müssen dann auch ein paar Pins mehr vom Arduino benutzen. Deshalb hatte ich nach dem Datenblatt der High-Power-LEDs gefragt. Die 13mA-Dinger sind unkritisch.

Wenn es vom Steckbrett in die Zielumgebung geht, würde ich den Aufbau auf einer Lochrasterplatine empfehlen; passendes Kabel oder Kupferlackdraht könnte ja noch vorhanden sein.

Sag Bescheid, wenn es mit der Software losgehen soll - das ist der interessantere Teil und das ist dann auch wieder leichtere Kost.

Gruß Walter
(der seit fast 30 Jahren ganz kleine und kleine Rechner programmiert)
 

Anhänge

  • Ampelschaltung-v2_Steckplatine.pdf
    1 MB · Aufrufe: 113
  • Ampelschaltung-v2_Schaltplan.pdf
    1 MB · Aufrufe: 153

wkrug

User
Wenn's nicht Super Hell sein muß könnte man auch sog. Low Current LED's nehmen die nur 2mA brauchen.
Der ULN 2008 ist aber als Treiber ne gute Idee.
Bei den LED's darf man aber die Vorwiderstände nicht vergessen einzubauen!

Apropos Ampel:
Für ne Verkehrsampel braucht man doch auch gelbe Lichter?
Und was ist mit den Fussgänger Ampeln?
Alles nur eine Frage der Portanzahl und des verwendeten Programmcodes.
 

Robinhood

Vereinsmitglied
...mit einer neuen Schaltung - auch wieder noch nicht ausprobiert (das hat ja Zeit)!

Ja leider, ich würde gerne sofort loslegen. Dummerweise hat der Job was dagegen :rolleyes:

Toll Walter, was Du hier raushaust :)! Geht die Stromversorgung auch bei fünf LEDs immer noch über die USB-Buchse des Boards?
 

wno158

User
Geht die Stromversorgung auch bei fünf LEDs immer noch über die USB-Buchse des Boards?
Für den Testaufbau mit den 13mA-Birnchen in jedem Fall; für die finale Variante müssen wir dann mal sehen.

Das hängt auch ein wenig davon ab, welches Netzteil Du am Ende verwenden willst - den Arduino kann man soweit mir bekannt statt über USB im Betrieb über den 5V-Pin speisen. Da empfiehlt sich dann noch (sicherheitshalber) eine zusätzliche Diode und dabei auf gar keinen Fall (nie, wirklich nie) gleichzeitig ein USB-Kabel zum PC anschließen - wie auch bei Verwendung von Vin. Als Kabel habe ich bei einem Standard-USB-Netzteil dann ein normales einfach abgeschnitten; hilfsweise geht auch sowas hier.

Übrigens vielen Dank für die freundlichen Worte- warten wir mal ab, wie es dann funktioniert!
 

Robinhood

Vereinsmitglied
Die Hardware ist bestellt :) Wegen der Versandkostengrenze habe ich das noch mit dazu geordert:

https://www.az-delivery.de/collections/arduino-zubehor/products/led-rgb-modul?ls=de

Ich hoffe, die LED rot/grün ansteuern zu können. Also zuerst rot, dann Umschalten auf Grün, dann wieder rot. Ob die LED dann für die Anwendung auf größerer Entfernung geeignet ist, muß sich zeigen. Falls nicht, steige ich auf die schon angesprochene 5-fach LED-Lösung um.
 

Robinhood

Vereinsmitglied
Jetzt habe ich die Hardware beisammen und die Arduino-App (IDE) ist auf dem Rechner installiert. Jetzt könnte es weitergehen ;)

Ich tippe mal, daß der "Blink"-Sketch irgendwie als Ausgangsbasis dienen könnte?
 
Ansicht hell / dunkel umschalten
Oben Unten