Zum Inhalt springen

Timeranzahl minimieren


Empfohlene Beiträge

Geschrieben (bearbeitet)

Guten tag zusammen..

ich muss für die Schule ne Übungsaufgabe mit Visual Basic machen, d.h. wir sollen bei einer Kreuzung die Ampelschaltung programmieren. An sich ja relativ einfach, ich hab jedoch das Problem, dass ich zu viele Timer hab. Das sind (wenn ich wirklich alle einsetzte bis zu 5-6 Timer pro Strasse , insgesamt dann ca. 20 - 24 Timer...

Irgendwie muss es doch möglich sein, mit jeweils einem Timer eine Strasse komplett zu bearbeiten (also erst Fussgängerschalter drücken, dann Auto ampel auf Gelb, dannach rot, dann fussgängerampel auf grün, die dann wieder auf rot, dann Autoampel auf gelb und letzendlich diese wieder auf gruen).

Da ja nicht alles gleichzeitig von statten gehen soll, muss es doch ne möglichkeit geben entweder einem timer verschiedene Intervalle zuzuweisen oder es so hinzubiegen, dass er halt wartet bevor er die nächste aktion ausführt....

Ps.: Bin momentan nich sehr bewandert in Visual Basic =)

Hier maln Bild der Kreuzung mit Beschriftung der einzelnen Ampeln.

bezeichnungenprogramm06.th.jpg

Wenn jemand weiterweiß bitte melden =)

Bearbeitet von Dingens
Geschrieben

insgesamt soll, wenn man auf die "fussgängerschalter" klickt, die ampeln wie im realen Leben geschaltet werden. Soll heißen:

dass die Auto Ampeln ca. 5 sekunden gelb,

dann nach ca. 5 sekunden rot,

dann 5 sekunden später soll

dann die Fußgängerampel grün geschaltet werden,

nach 7 sekunden wieder rot,

dann die Autoampeln wieder gelb und

dannach wieder rot geschaltet werden.

Wie eine ganz normale Kreuzung soll das alles von statten gehen.

Geschrieben

ohne Abbiegen oder Fahrzeuge, nur wie in der Abbildung dargestellt.

Aktiviert wird alles über die Schalter bei jeder Fußgängerampel.

Programmiert hab ich bis jetzt noch nicht viel, nur dass wenn man auf die Schalter drückt Timer gestartet werden. Jetzt muss nur noch die zeitliche Abstimmung der Bilderwechsel (z.b. von grün auf gelb und dannach rot) definiert werden. Und da ich keine 24 Timer für jeden einzelnen Schritt verwenden will würd eich mich freuen wenn du da weiterweißt.

Geschrieben

Was soll deine Ampelsteuerung eigentlich tun, wenn kein Fußgänger kommt?

An einer Kreuzung ohne Fahrzeugkontakte braucht man ja eigentlich keine Schalter für die Fußgängerampel, weil die sowieso Grün werden, wenn die parallel dazu fahrenden Fahrzeuge Grün haben.

Geschrieben

Du solltest mit 2 oder 3 Timern hinkommen, da du ja für die horizontal verlaufende Straße einen Timer und einen 2. Timer für die vertikal verlaufende Straße benötigst. Durch welchen der jeweils 4 Schalter an der horizontalen bzw. vertikalen Straße der Timer gestartet wird, ist doch egal. Den 3. Timer brauchst du dann, um nach einer Grünphase der Fußgänger für eine Mindestzeit den Autoverkehr Grün zu schalten, bevor eine neue Anforderung der Fußgänger erfolgen kann.

Geschrieben (bearbeitet)
Du solltest mit 2 oder 3 Timern hinkommen, da du ja für die horizontal verlaufende Straße einen Timer und einen 2. Timer für die vertikal verlaufende Straße benötigst. Durch welchen der jeweils 4 Schalter an der horizontalen bzw. vertikalen Straße der Timer gestartet wird, ist doch egal. Den 3. Timer brauchst du dann, um nach einer Grünphase der Fußgänger für eine Mindestzeit den Autoverkehr Grün zu schalten, bevor eine neue Anforderung der Fußgänger erfolgen kann.

Nun ja...aber da ja nicht alles direkt von grün auf rot (bei den "Autoampeln") geschaltet werden soll, würde ich gern wissen, wie man einem Timer sagt, dass er warten soll bevor er seine nächste Aktion ausführt....

und @Klotzkopp: Daran hatet ihc noch garnicht gedacht...aber dass will ich dann später selbst versuchen =)

Und schonmal danke für Antworten =D

Bearbeitet von Dingens
Geschrieben

Das kann dir so vermutlich keiner sagen.

Stell doch mal hier deinen Algorithmus und deine Interaktionsszenarien zur Diskussion.

Ich glaube dass diese Aufgabe viuel mehr Nachdenken über die Steuerung verlangst, als du vermutest.

Geschrieben
Also muss ich doch mit ca. 20 timern arbeiten oder wie versteh ich das?
Nein, ein einziger Timer sollte reichen, wenn du das ordentlich modellierst, z.B. in Form eines endlichen Automaten.

Zähl doch mal ab, wieviele Zustände dein ganzes Ampelsystem haben kann. Ich komme mit 8 Stück aus.

Geschrieben

@Klotzkopp: Ich zähle für Oben und Unten (also wenn amn oben oder unten nen Schalter drückt) 7 Zustände.

Zustand 1: Autoampeln (unten und oben rot, Fußgänger links und rechts gruen)

Zustand 2: alle rot bis auf AutoAmpeln oben und unten

Zustand 3: Links und rechts Autoampeln gelb, rest rot

Zustand 4: Gruen für Autos von Links und rechts, ebenso Fußgänger oben und unten

Zustand 5: wie 2

Zustand 6: alle autoampeln gleb, fußgänger alle rot

Zustand 7:wie 1

..für die andere Seite wären das dann wohl vermutlich auch 7...hieße insgesamt ca. 10 Timer (wenn ich mache doppelt verwende..)

naja...ich werde nochmal alles überdenken, danke schonmal bis hierhin an euch =)

Geschrieben
Zustand 6: alle autoampeln gleb,
Da sind Unfälle programmiert.

Zustand 7:wie 1
Wenn 1 auf 7 folgt, und beide gleich sind, dann ist das nur ein einziger Zustand.

..für die andere Seite wären das dann wohl vermutlich auch 7...

Welche andere Seite? Du hast doch das Gesamtsystem betrachtet.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...