Probleme bei der Programmierung mit step 5

Msyou

Level-1
Beiträge
26
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi hab hier in meinem Ob1 ein Programm:

Name :Send
SSNR : KY0,8
A-NR : KY0,1
ANZW : MW 0
QTYP : KC DB
DBNR : KY0,10
QANF : KF +0
QLAE : Kf +5
PAFE : MB30
:O M0.0
:ON M0.0
:SPAFB 121

Name:Receive
SSNR:KY0,8
A-NR:KY0,2
ANZW:MW104
ZTYP:KCDB
DBNR:KY0,10
ZANF:KF+0
ZLAE:KF+5
PAFR:MB124
:***

das ist mein OB1 er kommuniziert mit einer S7 ,, nun soll ich das programm so er weitern das ein wert von der s7 kommt und dieser wert +1 gerechnet wird .(pro sekunde +1)

hat wer villt ne ahnung wie sowas auf s5 geht ? auf s7 hab ich das programm aber keine ahung wie man das jetzt mit S5 macht

Mfg
 
Hallo Msyou,
also 1. solltest Du nicht mehrere Threads aufmachen, wo Du doch anscheinend immer noch am selben Problem tüftelst! Siehe Thread A, Thread B und nun dieser hier...
2. sind Codes in sog Codetags für andere User besser lesbar:
Code:
Code
So wie ich dein S5-Programm Zeilen lese, steht in der S5 irgendwo im DB10 (Empfangs-Datenbaustein) in den Datenworten 0 bis 5 dein Wert drin.
Leider ist der Sendebaustein ebenfalls der DB10 mit DW0 bis 5.
Also entweder den DB10 etwas erweitern (DW6-11) und dort die Sendedaten hineinlegen:
Code:
Name :Send
SSNR : KY0,8
A-NR : KY0,1
ANZW : MW 0
QTYP : KC DB
DBNR : KY0,10
QANF : KF [COLOR=red]+6[/COLOR]
QLAE : Kf +5
PAFE : MB30
Oder einen anderen DB zum Senden nehmen:
Code:
Name :Send
SSNR : KY0,8
A-NR : KY0,1
ANZW : MW 0
QTYP : KC DB
DBNR : KY0,[COLOR=red]20[/COLOR]
QANF : KF +0
QLAE : Kf +5
PAFE : MB30

Es ginge auch noch dir 3.Möglichkeit zwischen den Aufrufen zu ändern(halte ich aber für etwas unsauber):
Code:
:O M0.0
:ON M0.0
:SPAFB 121
Name:Receive
SSNR:KY0,8
A-NR:KY0,2
ANZW:MW104
ZTYP:KCDB
DBNR:KY0,10
ZANF:KF+0
ZLAE:KF+5
PAFE:MB124
 
Auf DB10
L DW 1 //Falls der Wert hier drin steht
L KF+1
+F
T DW1
 
Name :Send
SSNR : KY0,8
A-NR : KY0,1
ANZW : MW 0
QTYP : KC DB
DBNR : KY0,10
QANF : KF +0
QLAE : Kf +5
PAFE : MB30

Gruß Approx
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Die erhaltenen Werte stehen so wie es aussieht im DB 10. Um was für einen Wert handelt es sich (Byte, Wort, Doppelwort)? Um was für eine S5 handelt es sich?
Grundsätzlich kann das in S5 wie in der S7 gelöst werden. Statt +I halt ein +F verwenden.

Beispiel (wenn ich S5 noch richtig im Kopf habe):

Code:
Auf DB 10
L DW 0
L KF+1
+F
T DW 0

Oder soll der Wert jetzt alle Sekunde inkrementiert werden?
 
So wie ich das verstehe funktioniert die Verbindung schon. Was etwas seltsam ist ist dass der geliche Datenblock der gelesen wird gleich wieder zurückgeschrieben wird. Wenn Du also an dem DB was ändern willst so musst Du dies zwischen den beiden Aufrufen tun.


Hi hab hier in meinem Ob1 ein Programm:

Name :Send
SSNR : KY0,8
A-NR : KY0,1
ANZW : MW 0
QTYP : KC DB = DB10 wird empfangen
DBNR : KY0,10 = DB10 wird empfangen




War wohl zu langsam *g*
QANF : KF +0 Blockanfang also DW 0
QLAE : Kf +5 Blocklänge also 5 Datenwörter
PAFE : MB30

hier programmieren weil es sonst beim nächsten Aufruf überschrieben wird
also:
L DW 0
lkf +1
+f
T DW 0


:O M0.0
:ON M0.0
:SPAFB 121

Name:Receive
SSNR:KY0,8
A-NR:KY0,2
ANZW:MW104
ZTYP:KCDB = DB10 wird gesendet
DBNR:KY0,10 = DB10 wird gesendet
ZANF:KF+0 Blockanfang also DW 0
ZLAE:KF+5 Blocklänge also 5 Datenwörter
PAFR:MB124
:***

das ist mein OB1 er kommuniziert mit einer S7 ,, nun soll ich das programm so er weitern das ein wert von der s7 kommt und dieser wert +1 gerechnet wird .(pro sekunde +1)

hat wer villt ne ahnung wie sowas auf s5 geht ? auf s7 hab ich das programm aber keine ahung wie man das jetzt mit S5 macht

Mfg
 
Zuletzt bearbeitet:
Hallo, ja es besteht schon eine verbindug zwischen der s7 und der s5..
jau und pro sekunde soll das passieren

und das programm was ich jetzt programmieren soll , hab ich schon einmal mit s7 programmiert, nun soll ich das net in s7 machne sonder mit s5
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Und wovon war die Codesequenz in Beitrag 1? Doch nicht von einer S7. Oder funktioniert das Beispiel nicht? Da hat Approx und Uwe16 schon was dazu geschrieben? Wo ist das Problem noch?
 
Approx hat im 3. Beispiel im Prinzip dasselbe gesagt. Problematisch ist es trotzdem. Es werden ja nur die empfangenen Daten zurückgesendet. Was passiert eigentlich im FB 121? Soll das inkrementieren vor oder nach dessen Aufruf erfolgen?
 
@Msyou: so wirklich interessiert es Dich nicht, was die Leute (die Dir eigentlich helfen wollen) zurückfragen - oder?
Mir kommt es bald so vor, als ob Du ein Soufflé herstellen möchtest, aber nicht mal ein Ei in die Pfanne hauen kannst...

@Rainer: Der FB121 ist der Receive-(Standard-)Baustein in der S5. Ähnlich dem FC6 bei S7.

Grüße
 
Zurück
Oben