Variablen beobachten/steuern

gabbo

Level-1
Beiträge
14
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
hallo,
ich habe die aufgabe mehrere merker z.B. M0.0 bis M0.5 einem taktgeber zuzuweisen.
in einem zyklus von 15 takten soll z.B. M0.0 bei takt 5 eine "1" geben bis takt 11 halten und in takt 12 wieder auf zurück auf "0".
(taktgeber M100.7 am eingang ZR von zähler Z1)
ich weiss das ich diese zuweisung mit der variablentabelle programmieren muß, aber ich weiss nicht wie??????



:confused:
 
???? Beschreibung lesen

Taktmerker Zuweisen als "Suchfunktion!!!!" Verwenden.
dann über Zähler oder Timer nachdenken bzw. suchen.
 
Auf jeden Fall kannst du nicht mit der Variablentabelle programmieren. Nur beobachten und Werte steuern.
Du musst im Programm deinen Zähler abfragen. Wenn er einen bestimmten Wert (in deinem Fall 5) erreicht hat setzt du deinen Merker. Und setzt ihn wieder zurück wenn er dann 11 erreicht hat.
Es gibt auch noch andere Möglichkeiten aber probiere erst mal eine aus und zeige uns deinen Lösungsansatz
 
hallo,
ich habe die aufgabe mehrere merker z.B. M0.0 bis M0.5 einem taktgeber zuzuweisen.
in einem zyklus von 15 takten soll z.B. M0.0 bei takt 5 eine "1" geben bis takt 11 halten und in takt 12 wieder auf zurück auf "0".
(taktgeber M100.7 am eingang ZR von zähler Z1)
ich weiss das ich diese zuweisung mit der variablentabelle programmieren muß, aber ich weiss nicht wie??????



:confused:

Ich würde über eine Flanke hoch zählen, vergleichen und wieder auf Null setzen.
Okay?


bike
 
Der Merker weiss das nicht. Du musst den Zähler abfragen. Du solltest dich also über Zähler und Vergleicher informieren
 
das sind möglichkeiten, aber in meiner anweisungsliste stehen nur

für eine ampelsteuerung, die lichter springen rhytmisch nach festem muster.

mit den bausteinen:

1x Z1

6x merker M0.0 bis M0.5, einer für störung und die anderen rot, gelb ,grün für PKW und rot, grün für fußgänger.


:confused:
 
hm, so recht fällt mir nichts ein.
man kann eine reihenfolge programmieren, aber ich habe keine ahnung wie man etwas für drei takte und das nächste für 5 ansteuert.


:confused:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ohne Eigeninitiative wirst du keine Hilfe bekommen.Wie schon gesagt, befasse dich mit Zählern und Vergleichern und versuche sie zu verstehen und programmiere damit etwas.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Elektrisch könnte man die Ampel so bauen:
Ein Taktgenerator gibt den Takt, der wird von einem Zähler gezählt, um 15 verschiedene Schritte zu haben.
Nach dem 15. Schritt beginnt der Takt-Zähler von vorn. Der Zähler hat 15 Ausgänge, für jeden Schritt einen.
Die Lampen haben jede ein ODER-Glied mit mehreren Eingängen. Nun legt man die ODER-Eingänge jeder Lampe an
diejenigen Schritt-Ausgänge des Zählers, in denen sie leuchten sollen.
Mit einer SPS kann man nun ein Programm schreiben, was genauso wie die elektrisch verdrahtete Variante
funktioniert. Das sollte mit meiner "elektrischen" Programm-Beschreibung nun nicht schwerfallen.

Wenn sich das Schaltmuster sehr selten ändert, dann kann man versuchen, ob sich die Lampenansteuerung auch
mit weniger Aufwand realisieren läßt -> das nennt man Optimierung. Dafür reduziert man die 15 Zählerausgänge
auf 4 binär-codierte Ausgänge, erstellt für die 15 möglichen Schritte und 6 Ausgänge einen Karnaugh-Plan
und kann dann mit einfachen Regeln meistens kürzere Verknüpfungen für die Ausgänge finden.
Mit derartig optimierten Schaltungen arbeiten z.B. die Schaltkreise für 7-Segment-Decoder (z.B. TTL 7447),
um Ziffernanzeigen anzusteuern.

Harald
 
immer locker bleiben und durch die Nase atmen :) wird schon noch werden :
)
bei uns würde Kandidat nach ca. 1 sec Rausfliegen (Bei Aufnahmetest :) )
 
Wär natürlich gut wenn er mal die ganze Aufgabe schreiben würde :confused:

Aber Paule gibt schon nen guten Tipp, dachte darauf auch an Sprungleiste.

Kurzform :D :

Taktmerker zählt nen Zähler oder INT hoch.

Sprungleiste

Takt1
//macht nix
Takt2
S m0.1
Takt3
.
.
.
.
.
Takt12
R M0.1
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Eine Schrittkette würde sich anbieten, wenn die Taktzeiten unterschiedlich lang sind.
Der TE schreibt aber (mehr oder weniger deutlich), daß er einen Taktgeber verwenden soll.

S und R (womöglich gar S im Takt 5 und R im Takt 12) würde ich bei einer Ampelschaltung auf gar keinen Fall benutzen.
Eine Ampelschaltung muß sich in jedem Takt "zurechtfinden", ohne zu wissen, was vorher gewesen ist.

Harald
 
Stimmt, geb ich dir Recht auf Bezug S und R.

Dann könnt er es immer noch so lösen:
Code:
Takt1
//macht nix
Takt2
SET 
=m0.1
=m0.2
CLR
=m0.3
=m0.4
=m0.5
=m0.6
Takt3
SET
=m0.1
CLR
=m0.2
=m0.3
=m0.4
=m0.5
=m0.6
.
.
.
Takt12
CLR
=M0.1         
=m0.2
 =m0.3
 =m0.4
 =m0.5
 =m0.6
//hier wieder Taktzähler rücksetzen und alles von vorn
Wenn ein Takt z.B. eine Sekunde wäre, könnte er somit mit einem einzigen Taktzähler verschiedene Ampelzustände generieren.
Wenn er mehr Takte einfügt ergeben sich längere Takte oder mehr Umschaltungen usw.

Gruss Andi
 
...auf 4 binär-codierte Ausgänge, erstellt für die 15 möglichen Schritte und 6 Ausgänge einen Karnaugh-Plan
und kann dann mit einfachen Regeln meistens kürzere Verknüpfungen für die Ausgänge finden.
Mit derartig optimierten Schaltungen arbeiten z.B. die Schaltkreise für 7-Segment-Decoder (z.B. TTL 7447),
um Ziffernanzeigen anzusteuern.
*ROFL*Köstlich! Der TE denkt, er muss mit einer VAT programmieren (also schon mal gute Voraussetzungen zum proggen), die (Haus-)Aufgabe ist 1. Lehrjahr oder früher und hier bekommt er Begriffe um die Ohren... "Sprungleiste", "Schrittkette" oder "7-Segment-Dekoder"
Möchte wirklich den Gesichtsausdruck des Herrn Gabbo beim "Gedanken machen" sehen!

Wie schon gepostet wurde - wenn ein eigener Lösungsansatz vorhanden ist, dann sehen wir weiter.
Diese Threads wiederholen und wiederholen sich...

Gruß Approx
 
Zurück
Oben