mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Ampelsteuerung


Autor: Julian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

ich habe den Auftrag bekommen eine Ampelsteuerung zu
entwickeln mit einem Mikrocontroller.
die Aufgabenstellung ist egal von einfach (Eine Kreuzung mit 4 Ampeln) 
bis schwierig (4 Ampeln,8Fugängerüberwege,Mit Abbiegefunktion)
ist mir überlassen,ich kann Programmieren ,nur das Problem ich muss mir 
noch Bauteile überlegen und ein Schaltplan entwickeln und dass kann ich 
einfach nicht ich hab schon versucht und gemacht aber ich komm damit 
einfach nicht klar.Programmieren werde ich es in C oder Assembler.
Ich bitte um Hilfe beim Schaltplan wenn jemand schon ein fertigen hat
kann ihn mir gerne schicken unter lafeefan7@web.de
oder hier ins Forum.
Ich danke schon mal im vor raus.

Autor: Heinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

An welchen Controller hast du gedacht?

Wieviele Ampeln?

Willst du auch Sensoren simulieren?

Zum Schaltplan:

Ampeln: LED´s?

Wenn du LED´s nimmst, kannst du diese über Vorwiderstände direkt vom 
Controller schalten.

3V3 - LED - Widerstand - PIN

Wenn du den Pin auf low legst, leuchtet die LED.

Hast du schon ein Demoboard?

lg

Autor: sgfxcb (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wenn du den Pin auf low legst, leuchtet die LED

Und wenn dann bei ersten Tests alle LED leuchten, leuchtet der uC.

Gast

Autor: Wilhelm F. (ferkes-willem)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Julian schrieb:

>ich habe den Auftrag bekommen eine Ampelsteuerung zu
>entwickeln mit einem Mikrocontroller.

Welchen der 10000 am Markt befindlichen Controller sollte es denn sein?

Studienarbeit fürs Labor?

Im Grunde macht man mal einen Programmablaufplan (Flußdiagramm oder 
Struktogramm), bevor man die Hard- und Software erstellt. Das gehört zum 
guten Programmierstil. Danach ist es leichter, die Software zu erstellen 
(aus eigener Erfahrung).

Unter Umständen ist die Ampelsteuerung gar nicht sooo kompliziert, 
sondern einfach eine Geradeaussteuerung.

State-Machine nennt sich sowas, ist bei der Programmierung von 
Prozessoren aber auch elementar wichtig.

Im Grunde besteht das Ding nur aus I/O-Ports mit z.B. LEDs und Tastern. 
Sollte so schwierig nicht sein.

>Ich bitte um Hilfe beim Schaltplan wenn jemand schon ein fertigen
>hat kann ihn mir gerne schicken unter lafeefan7@web.de

Und wo bleibt dann deine Herausforderung, die Aufgabe weitgehend selbst 
zu lösen?

Autor: Sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Such mal bei www.elv.de, die haben da ne Bauanleitung mit guter 
Beschreibung.

Autor: 2fast4you (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Karl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das geht sogar mit logik gattern und nem zähler (musten wir mal für 2 
ampeln) inner uni basteln ... ich sags dir ... is scho ein bischen 
unlustig

Autor: Martin Vogel (oldmax)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi
Eigentlich ist es gar nicht schwer. Du sagst, du kannst programmieren? 
Na ja, das ist ja schon was. Dann weißt du ja auch, wie man eine Ampel 
aufbaut...
Es gibt rote, gelbe und grüne Lampen. Manche leuchten gemeinsam, andere 
nicht... Also, um die Anzahl der aktiven Ausgänge festzulegen, rechnet 
man erst mal die Anzahl der unabhängig geschalteten Lampen, also die, 
die sich eine eigene Zuschaltung wünschen.. Dann gibt's die, denen es 
egal ist, sie leuchten einfach bei anderen mit. Das kannst du natürlich 
auch lassen und gibst jeder Lampe einen eigenen Ausgang. Also, Lampen 
zählen und Ausgänge festlegen. Die Anzahl der Ausgänge plus Anzahl von 
Eingängen sagen dir, welcher µC in Frage kommt.
Nun kommen wir zu den LED Treiber.... es geht mit Transistoren oder 
einem Treiber IC. ULN 2008  oder so..., einen direkten Anschluß kann man 
machen, würd ich aber nicht empfehlen.
Na ja, eine Ampelsteuerung erfordert nicht so wahnsinnig schnelle 
Aktionen und Reaktionen, daher denk ich, kannst du einen externen Quarz 
oder Taktgeber weglassen und mit internem Taktgeber arbeiten.
Somit ist klar:
Controler, Treiberstufe für Lampen /LED, Taster (Fußgänger?), Batterie, 
Platinchen, etwas Draht, Lötzinn, ein paar Klemmen und IC Fassungen 
und.... viiieel Geduld.
Vorgehensweise:
Aufzeichnen auf ein Blatt Papier, wie die Kreuzung aussieht. Ampeln 
einzeichnen. Eine Tabelle erstellen, in welcher die Ein-und Auszustände 
der einzelnen Ampellampen / LED eingetragen werden.
Damit erkennt man, wieviel Schritte der Ampelzyklus dieser Kreuzung 
benötigt:
1. Gradeaus = Rot,  Quer = grün
2. Gradeaus = Rot, Quer gelb
3. Gradeaus = Rot, Quer Rot
4. Gradeaus = rot+gelb, Quer = rot
5. Gradeaus = grün, Quer = rot
6. Gradeaus= gelb, Quer = rot
7. Gradeaus = rot, Quer = rot
8. Gradeaus = rot, Quer = rot + gelb
9. = 1.
Wenn fußgänger, Abbieger oder andere Phasen einfließen sollen, dann mußt 
du entsprechend dafür Schritte erfinen. Da du programmieren kannst, 
dürfte die Umsetzung nun kein Problem mehr sein.
Gruß oldmax

Autor: Wegstaben Verbuchsler (wegstabenverbuchsler)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
> nur das Problem ich muss mir noch Bauteile überlegen

Ampeln gibts im Eisenbahn-Modellbau-Laden (z.B. hat auch Conrad passende 
Abteilung für Modellbau)

Autor: Volker Schulz (volkerschulz)
Datum:

Bewertung
3 lesenswert
nicht lesenswert
Fuer den Anfang wuerde ich erstmal die gelbe LED an jeder der Ampeln mit 
ca. 1Hz blinken lassen und behaupten, die Ampel-Anlage sei gerade 
ausgefallen! ;) Danach koennen wir ja weitersehen...


Volker

Autor: Andreas Ferber (aferber)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aus meiner Kindheit(tm) kann ich mich noch an eine Schaltung erinnern, 
bei der einfach nur eine Drahtmatrix dafür verwendet wurde. Jede Lampe 
bzw. LED gehört jeweils zu einer Spalte, und zu jedem Schaltzustand gibt 
es eine Zeile. In jeder Zeile sind jeweils nur die Kreuzungspunkte zu 
den Spalten verbunden, wo Lampen leuchten sollen.

Sowas wie neulich in Münster ist damit zuverlässig ausgeschlossen ;-)

Andreas

Autor: Julian (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
danke Matrin war sehr hilfreich.
Ich hab mich jetzt entschieden ich
mach eine Ampelsteuerung mit 4 Ampeln für den Hauptverkehr,
und 8 fußgängerampeln für den Nebenverkehr.
Den Nebenverkehr will ich mit Taster steuern bei Druck
des Tasters springt die Entsprechende Ampel auf Grün.
Aber ich komme einfach mit dem Schaltplan nicht weiter.
oder zurecht wie ich was anschließen soll und welche bauteile ich noch 
brauche und wie ich die wiedderum anschliße.Ich habe mir gedacht ich 
nehm einen MEGA32-P aber ich muss den nicht mehmen ich habe freie 
auswahl auf die Mikrocontroller.Ich nehme keine LEd´s sondern Lampen
Für einen richtigen aufbau auf einem Brett.

Autor: Wegstaben Verbuchsler (wegstabenverbuchsler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> einfach nur eine Drahtmatrix dafür verwendet wurde

oder einen alten Drehschalter aus der Waschmaschine FG

Autor: Volker Zabe (vza)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Fußgängerampeln haben kein Gelp.

Sind hier nur CO2-Produzenten unterwegs?

Autor: Volker Schulz (volkerschulz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wegstaben Verbuchsler schrieb:
>> einfach nur eine Drahtmatrix dafür verwendet wurde
>
> oder einen alten Drehschalter aus der Waschmaschine *FG*

Die gibt's natuerlich auch als neue Drehschalter! ;)

http://www.reichelt.de/?;ACTION=3;LA=444;GROUP=C23...

Die Achse kommt dann an den Minuten-Zeiger eines Quarz-Uhrwerks.. und 
fertig ist die zeitgesteuerte Ampelschaltung!


Volker

Autor: us73 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
a) denke ich, dass Fußgängerampeln nur 2 Leuchten, rot und grün haben
b) alle notwendigen Outputs zählen, erstmal pro Leuchte 1, bei den 
Fußgängern werden die beiden Leuchten parallel versorgt
c) alle notwendigen Inputs zählen
d) In- und Outputs addieren.
e) gibts einen verfügbaren Controller, der für alle aufaddierten In- und 
Outputs je einen I/O-PIN z.V stellt ? Dann gut und einfach. Den nehmen, 
Schaltung planen. Max. Output-Strom pro PIN und auch gesamt beachten.
f) gibt keinen, der ausreichend PINs z.V. stellt ? Überlegen. Input / 
Output durch Tricks / Kniffe verfielfachen.

Los gehts.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Julian schrieb:
> Aber ich komme einfach mit dem Schaltplan nicht weiter.

Da Du keine Richtungsampeln hast, kannst Du gegenüberliegende Ampeln 
parallel schalten, d.h. es sind nur 2 Fahrbahn und 2 Fußgängerampeln = 
10 Ausgänge. Und je 2 Tasten auch = 2 Eingänge.
Du brauchst also nur 12 Portpins.


> .Ich habe mir gedacht ich
> nehm einen MEGA32-P

Gute Wahl, der hat 32 IO-Pins.

> Ich nehme keine LEd´s sondern Lampen

Dann brauchst Du Treiberstufen, z.B. Logik-FETs (Reichelt: IRLU 120N).
Die FETs brauchen Pulldownwiderstände (10k) am Gate, damit sie beim 
CPU-Reset aus bleiben.


Peter

Autor: Martin Vogel (oldmax)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi
Volker schrieb:
>Für den Anfang wuerde ich erstmal die gelbe LED an jeder der Ampeln mit
>ca. 1Hz blinken lassen und behaupten, die Ampel-Anlage sei gerade
>ausgefallen! ;)
Dann reicht ein Relais, 1 Transistior und eine Blinkschaltung mit einem 
NE555
Ok, du solltest mal deine Tabelle erstellen und deine Ampelphasen 
auflisten. Dann dürfte dir klar sein, wieviele Ausgänge du brauchst. 
Dann schaust du wiederum, ob du mit 2 Eingängen für die Fußgängerampel 
auskommst. Gegenüberliegende Taster parallel schalten.
Jetzt hast du die Anzahl der benötigten Portpins. Für jeden Ausgang 
brauchst du einen Transistor. Schau nach, ob der Transistor den Strom 
für die Lampen liefern kann, ansonsten setzt du halt noch ein Relais 
ein. Dann kannst du auch bei geeigneter Stromversorgung Autoscheinwerfer 
aufleuchten lassen. ;)
Nun, einen Schaltplan wirst du nicht bekommen, das solltest du dir mal 
zusammenlesen. Hinweis: es gibt Datenblätter, Lineal und Bleistift.....
Geh einfach mal folgendermaßen vor:
alle Lampen haben einen gemeinsamen Anschlußpunkt, also Kreise, Kreuze 
in die Kreise, eine Linie nach oben, eine nach unten. Die obere 
verbindest du mal und schreibst an die Verbindung Vccb. Nach unten 
zeichnest du an jeden Anschluß einen Transistor, wenn ich's richtig im 
Kopf habe NPN, mit Emitterpfeil nach unten. Diese Emitter verbindest du 
wieder und an dieseLinie schrebst du Gnd. Nun kommt an jede Basis ein 
Widerstant ca.10kOhm und den anderen Draht vom Widerstand legst du auf 
einen Ausgang des µC. Dann noch die Taster an den Controller, auch hier
eine Seite des Tasters an den Controler, die andere an Gnd. Was fehlt 
noch ? ach ja, der Controller braucht auch sowas wie eine 
Spannungsversorgung. Jetzt kannst du dich entscheiden: der µC will 5 V. 
Hast du auch Lampen mit 5 V? Wenn nicht, dann brauchst du 5 V für den 
Controller Vcca und 12 oder was auch immer ( bloß keine Netzspannung!) 
an Vccb der Lampen. Ansonsten sind Vcca und Vccb gleiche Spannungen(+).
Mehr kann ich nun wirklich nicht tun.... ach ja, doch, lies mal ein 
bischen in den Tutorials.
Gruß oldmax ( und nicht Matrin...)

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zum Thema Schaltplan.
Es wurde ja schon angesprochen, dass es sowas fertig nicht geben wird. 
Also musst du ihn dir aus Einzelteilen 'zusammensetzen'.

Hier findest du die µC-Grundschaltung
http://www.mikrocontroller.net/articles/AVR-Tutori...

Lies dir auch das drumherum durch.
Die Grundschaltung ist für einen Mega8, funktioniert aber für einen 
Mega32 1:1 genau gleich. Gleiche Namen der Pins entsprechen sich.

Damit hast du erstmal einen µC der läuft und sein Programm abarbeitet.

So werden die Taster angeschlossen
http://www.mikrocontroller.net/articles/AVR-Tutori...

(Auch hier wieder: die ganze Seite durchlesen)

Bei deiner Menge an Lampen wird ein direkter Anschluss nicht gehen. Also 
musst du eine Treiberstufe für jede Lampe/Lampenpaar einplanen. Das kann 
man mit Einzeltransistoren machen, so wie hier
http://www.mikrocontroller.net/articles/AVR-Tutori...

aber es ist dann doch einfacher, dafür einen ULN2803 zu benutzen. Das 
sind im Grunde einfach nur 8 Stück dieser Treibertransistoren in einem 
IC-Gehäuse.

Dazu noch Stromversorgung. Da braucht du erst mal eine Abschätzung, 
wieviel Strom deine Lampen ziehen werden, wenn die maximale Anzahl 
Lampen eingeschaltet ist. Ehe du das nicht weißt, kann man da wenig 
planen, das hängt auch nicht unwesentlich von dem Lampen selber ab. Wenn 
du wählen musst, wähle so, dass du in Summe unter 1A bleiben kannst. 
Dann kann man einen 7805 noch nehmen. Zur Not gibts den auch als 2A 
Ausführung. Kühlkörper wird wahrscheinlich sowieso fällig werden.

Autor: Wegstaben Verbuchsler (wegstabenverbuchsler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
frag den mal,ob er sein zeugs noch braucht

Beitrag "Mikrocontrollerplatine programmieren?"

der hat doch laut Text eine Ampelsteuerung damit gemacht

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.