Hallo,
ich versuche gerade eine Liste von Frames per Ethernet KRL XML 1.2 zu übertragen. Aber irgendwie scheitert es bereits bei der Interpretation des roboterseitig empfangenen XML Strings. Ich komme nicht dahinter, was der Roboter da wo anders erwartet.
Ich habe einen Channel definiert und die XML Empfangsstruktur wie folgt definiert:
<Elements>
<Element Tag="root" Type="STRUCTTAG" Stacksize="100/">
<Element Tag="root.data" Type="STRUCTTAG" Stacksize="100/">
<Element Tag="root.data.rr_frames" Type="STRUCTTAG" Stacksize="100/">
<Element Tag="root.data.rr_frames.rr_frame" Type="STRUCTTAG" Stacksize="100/">
<Element Tag="root.data.rr_frames.rr_frame.index" Type="INTEGER" Stacksize="100/">
<Element Tag="root.data.rr_frames.rr_frame.cid" Type="INTEGER" Stacksize="100/">
<Element Tag="root.data.rr_frames.rr_frame.f" Type="FRAME" Stacksize="100/">
</Elements>
Die gesendeten Daten enthalten erst mal nur einen Frame:
<root>
<data>
<rr_frames>
<rr_frame index="1" cid="1">
<f X="1.0" Y="2.0" Z="3.0" A="4.0" B="5.0" C="6.0" />
</rr_frame>
</rr_frames>
</data>
</root>
EKX_WaitForSensorData() gibt false zurück, ist auch klar, denn bereits vor dem Aufruf sieht man in der telnet Konsole:
Error: EKX: Error While extract FRAME information. Send:X="1.0" Y="2.0" Z="3.0" A="4.0" B="5.0" C="6.0"/> <rr_frame> </rr_frames> </data> </root>, Expect:XPos
Error: EKX: Error while extract attributes in FRAME:f X="1.0" Y="2.0" Z="3.0" A="4.0" B="5.0" C="6.0"/> <rr_frame> </rr_frames> </data> </root>
Error: EKX: Execute Filters, Channel EKXChannel_rr_frames
Danach kommt noch mal der "XML Chunk of interest", in dem aber genau das steht, was ich gesendet habe.
Ich habe schon mal probiert, statt
das hier zu schicken:
Aber auch ohne Erfolg.
Zu "EKX_GetFrameElement" bekomme ich *ein* einziges Ergebnis bei google... (gab's da nicht mal ein Wettbewerb oder so?).
Ich hoffe, einer von den Roboter Gurus kann mir helfen, denn ich bin so ziemlich am Ende. 
Gruß ins Forum 
sk
PS: Softwareversion KR C 5.4.14