-> Hier kostenlos registrieren
Liebe Leut, ich habe hier ein Problem:
ein FB der ungefähr so aussieht:
Aufruf sieht so aus:
Damit geht meine SPS in Stop, und zwar wegen DW13. Aber warum?
Wenn ich DW13 zuerst in einen Zwischenmerker speichere geht es. Ich dachte halt, daß ich das so nicht aufrufen darf. Deswegen folgende änderung:
Wenn ich diesen Programmteil beobachte sieht alles gut aus. Die gewollten Werte werden übergeben.
Wenn ich aber den FB10 beobachte (und es gibt wirklich nur einen Aufruf davon) dann kriege ich für VON und BIS irgendwelche Werte, von denen ich keine Ahnung habe wo sie herkommen.
Mache ich da was grundsätzliches falsch, oder bin ich schon zu Step7 verdorben um es zu sehen?
Ich Programmiere mit WinSPS-S5.
Gruß,
Aksels
ein FB der ungefähr so aussieht:
NAME :SchUhr
BEZ :VON E/A/D/B/T/Z: E BI/BY/W/D: W
BEZ :BIS E/A/D/B/T/Z: E BI/BY/W/D: W
BEZ :ISON E/A/D/B/T/Z: A BI/BY/W/D: BI
000E :A -DB_DZF DB11
000F :L -DW21 DW21
0010 :A -DB_Tmp_FB10 DB20
0011 :T -DW0 DW0
0012 :A -DB_DZF DB11
0013 :L -DW20 DW20
0014 :A -DB_Tmp_FB10 DB20
0015 :T -DW1 DW1
0016 :L = VON
0017 :T -DW2 DW2
0018 :L = BIS
0019 :T -DW3 DW3
001A :L -DW2 DW2
001B :L -DW3 DW3
001C :<=F
001D :SPB = M001
001E :L -DW3 DW3
001F :L KF +2400
0021 :+F
0022 :T -DW3 DW3
Aufruf sieht so aus:
NETZWERK 4 Badpumpe Zeit
0026 :SPA -FBSchUhr FB10
0027 NAME :SCHUHR
0028 VON > -DW12 DW12 (E/W)
0029 BIS > -DW13 DW13 (E/W)
002A ISON < -MBadSchUhrEin M7.3 (A/BI)
002B :***
Damit geht meine SPS in Stop, und zwar wegen DW13. Aber warum?
Wenn ich DW13 zuerst in einen Zwischenmerker speichere geht es. Ich dachte halt, daß ich das so nicht aufrufen darf. Deswegen folgende änderung:
NETZWERK 4 Badpumpe Zeit
0022 :L -DW12 DW12
0023 :T -TmpFB3_1 MW10
0024 :L -DW13 DW13
0025 :T -TmpFB3_2 MW11
0026 :SPA -FBSchUhr FB10
0027 NAME :SCHUHR
0028 VON > -TmpFB3_1 MW10 (E/W)
0029 BIS > -TmpFB3_2 MW11 (E/W)
002A ISON < -MBadSchUhrEin M7.3 (A/BI)
002B :***
Wenn ich diesen Programmteil beobachte sieht alles gut aus. Die gewollten Werte werden übergeben.
Wenn ich aber den FB10 beobachte (und es gibt wirklich nur einen Aufruf davon) dann kriege ich für VON und BIS irgendwelche Werte, von denen ich keine Ahnung habe wo sie herkommen.
Mache ich da was grundsätzliches falsch, oder bin ich schon zu Step7 verdorben um es zu sehen?
Ich Programmiere mit WinSPS-S5.
Gruß,
Aksels