Step 5 Betriebsmeldung OP 15 und 95U

Macimooo

Level-1
Beiträge
16
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo wie kann ich eine Betriebsmeldung auf einen eingang setzen? Ich habe eine S5 95U mit einem OP 15 C1
ich habe es so gemacht aber das klappt nicht so ganz !
in ProTool habe ich den MW 200 als Betriebsmelder 1 gesetzt länge der Wort 2

FB1
L EW 0
T MW 200
= M 200.0
NOP 0
L EW 0
T MW 200
= M200.7
NOP 0
BE

oder sollte ich lieber mit nem DB arbeiten?
kann mir einer weiter Helfen? oder ein Beispiel nennen?
Lg Macimooo
 
MW sollte schon funktionieren, ev. werden bei den Wörtern das low und das hig byte vertauscht.

Bei deinem Code versteh ich nicht was deine =MW beedeuten. Was soll das bewirken?

ISt dein VKE am beginn des ganzen 1? sonst wird L ev. nicht ausgeführt!

zum Testen mach einfach mal folgendes:
U E0.0
= M200.0

U E0.0
= M 201.0

wenns jetzt funktioniert, dann testweise mal das eine und das andere löschen, dann weisst du ob high und low vertauscht sind.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
L EW 0
T MW 200
= M 200.0

Lade Engangswort
Transferiere es ins Merkerwort
= Merker 200.0

was bitteschön soll der Merker 200.0 anzeigen ???? Der Merker wird bereits von dem Eingangswort beschrieben.

Da brauchts kein = M200.0 mehr. Soll der M200.0 im Op was anzeigen, so brauchtst Du ihn nur dort als Variable zu deklarieren.

peter(R)
 
Ja stimmt der Merker 200 hat da nichts verloren, ich wollte jedem Eingang eine betriebsmeldung zuweisen
Habe es jetzt so gemacht
U E 0.1
= M 200.0
NOP 0

Macimooo
 
Warum machst Du eigentlich immer ein nop0 hinter einen Abschnitt ??? nop0 bedeutet ja nur für die SPS "mache nix". Das brauch man nicht.
Besser wäre ÜBER jeden Abschnitt eine Kommentarzeile zu machen um zu beschreiben was da gerade kommt.
z.B.
; Betriebsmeldung Handbetrieb
U E 0.1
= M 200.0

peter(R)
 
NOP = 0 kann nötig sein wegen der Darstellung in KOP bzw FUP.
Schön wäre es, wenn du zuerst dir die Grundlagen dir aneignest und dann kannst du mit einer 95U und einem OP gute Ergebnisse erziehlen.


bike
 
@ bike
aber nicht im angegebenen Programmschnipsel. Warum komplizierter als nötig ??
Warum Fragen beantworten die keiner gestellt hat.
Macimooo scheint gerade dabei zu sein sich die Grundlagen anzueignen und da sollte man so einfach wie möglich anfangen.

peter(R)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
.
ISt dein VKE am beginn des ganzen 1? sonst wird L ev. nicht ausgeführt!

Das L und T sind unabhängig vom VKE.


@ TE
Die 16 Meldungen vom EW 0 kannst du gemeinsam so einlesen, jeder einzelne Eingang sitzt dann in einem Merker:

Code:
L EW 0  
T MW 0

Wenn du die Meldungen byteweise für die Anzeige drehen musst, so kannst du die Eingänge ebenfalls byteweise (L EB...)
einlesen und dann dem jeweiligen Merkerbyte (T MB...) zuweisen.


Nur der Vollständigkeit halber und zur Erläuterung zu NOP x:
Die Anweisungen machen schon etwas und belegen daneben auch Speicherplatz und nehmen Zykluszeit in Anspruch, siehe HIER.

.
 
@ softmachine
Siemens:
Die NOP-Anweisungen sind Nulloperationen und bewirken bei der Bearbeitung durch die CPU keinerlei Reaktionen.
Natürlich verbrauchen Sie Speicher und Zykluszeit schliesslich muss der "tunix" Befehl abgearbeitet werden. Aber da müsste man dann auch schon an der äussesten Grenze des Speicherfüllstands arbeiten :)

Unumgänglich sind zB 3x Nop 0 hintereinander wenn man einen timer von AWL auf FUP umschalten will und soweit ich mich erinnere auch bei SET RESET Operationen fürs AWL FUP umschalten.
Am besten mal in FUP programmieren und dann nach AWL umschalten dann sieht man es.

peter(R)
 
Zuletzt bearbeitet:
Zurück
Oben