SPS-freak1
Level-2
- Beiträge
- 396
- Reaktionspunkte
- 54
-> Hier kostenlos registrieren
Hallo Programmiererkollegen,
habe nochmal eine Frage zu einer Kommunikation via CP-343-1 Lean.
Und zwar folgendes Problem: Ich empfange Daten von einer Kamera, welche ohne Header oder sonst was sind (4 Byte). Dies Funktioniert auch soweit ganz gut, will ich aber jetzt eine Programmanwahl machen, sendet mir die Kamera als Antwort 5 Byte Daten zurück. Ich habe für die Nutzdaten und die Programmanwahlantwort jeweils einen eigenen AG_Recv Block gemacht, der einmal als Empfangspuffer P#DB80.dbx2.0 Byte 4 bzw P#DB85.dbx2.0 Byte 5 für die Programmanwahl hat. Mein Problem ist jetzt, das er erst ein Programm anwählt, bevor er in Automatikbetrieb die Nutzdaten liest. Jetzt bilde ich mir ein mal gelesen zu haben, das der CP einmal die Empfangslänge einliest und diese nicth wieder ändert, bis zum nächsten Stoppen und Starten des CPs.
Wenn ich jetzt ohne einen Stop Start in Automatikbetrieb gehe, gibt er mir beim empfangen der 4 Bytes immer den Fehlercode für Zielbereich ungültig raus. Nach einen Stop und Start funktionierts wieder.
Ich bin leider ratlos wie ich dieses Problem beheben kann. Und ich möchte eigentlich an der Variante vorbei immer nur ein Byte abzuholen und es Byteweise in den Empfangsdb zu schreiben. Wäre super, wenn ihr hierfür einen relative einfache Lösung bereit hättet und ich nicht den Umständlichen weg gehen muss.
Danke vielmals.
habe nochmal eine Frage zu einer Kommunikation via CP-343-1 Lean.
Und zwar folgendes Problem: Ich empfange Daten von einer Kamera, welche ohne Header oder sonst was sind (4 Byte). Dies Funktioniert auch soweit ganz gut, will ich aber jetzt eine Programmanwahl machen, sendet mir die Kamera als Antwort 5 Byte Daten zurück. Ich habe für die Nutzdaten und die Programmanwahlantwort jeweils einen eigenen AG_Recv Block gemacht, der einmal als Empfangspuffer P#DB80.dbx2.0 Byte 4 bzw P#DB85.dbx2.0 Byte 5 für die Programmanwahl hat. Mein Problem ist jetzt, das er erst ein Programm anwählt, bevor er in Automatikbetrieb die Nutzdaten liest. Jetzt bilde ich mir ein mal gelesen zu haben, das der CP einmal die Empfangslänge einliest und diese nicth wieder ändert, bis zum nächsten Stoppen und Starten des CPs.
Wenn ich jetzt ohne einen Stop Start in Automatikbetrieb gehe, gibt er mir beim empfangen der 4 Bytes immer den Fehlercode für Zielbereich ungültig raus. Nach einen Stop und Start funktionierts wieder.
Ich bin leider ratlos wie ich dieses Problem beheben kann. Und ich möchte eigentlich an der Variante vorbei immer nur ein Byte abzuholen und es Byteweise in den Empfangsdb zu schreiben. Wäre super, wenn ihr hierfür einen relative einfache Lösung bereit hättet und ich nicht den Umständlichen weg gehen muss.
Danke vielmals.