I've been trying to send a continuous stream of pose data from the KRC4 to an external pc, and been running into issues regarding the "continuous" aspect of this goal. Here's a snippet of the code i'm running:
RET=EKI_Init("SendOnly")
RET=EKI_Open("SendOnly")
EKI_CHECK(RET,#QUIT)
WHILE TRUE
;FOLD Write data to connection
; Write real to <ActPos X="" />
RET=EKI_SetReal("SendOnly","Robot/Data/ActPos/@X", $POS_ACT_MES.X)
; Write real to <ActPos Y="" />
RET=EKI_SetReal("SendOnly","Robot/Data/ActPos/@Y", $POS_ACT_MES.Y)
; Write real to <ActPos Z="" />
RET=EKI_SetReal("SendOnly","Robot/Data/ActPos/@Z", $POS_ACT_MES.Z)
; Write real to <ActPos A="" />
RET=EKI_SetReal("SendOnly","Robot/Data/ActPos/@A", $POS_ACT_MES.A)
; Write real to <ActPos B="" />
RET=EKI_SetReal("SendOnly","Robot/Data/ActPos/@B", $POS_ACT_MES.B)
; Write real to <ActPos C="" />
RET=EKI_SetReal("SendOnly","Robot/Data/ActPos/@C", $POS_ACT_MES.C)
;ENDFOLD
;FOLD Send data to external program
RET = EKI_Send("SendOnly","Robot")
;ENDFOLD
ENDWHILE
Display More
When i run the program, it transmits the first few packets successfully, then halts at a seemingly random point in a loop iteration. I can repeatedly press the run button to receive "bursts" of data packets, but cannot get a continuous stream without letting go of the Teaching Pendant.
Seems like a similar issue to a previous post: https://www.robot-forum.com/robotforum/kuk…66757/#msg66757
However, it doesn't look like the problem was resolved.
Skyfire mentioned that the port should be held open, but as far as i can see that is being done here.
Perhaps this is not meant to be done with EthernetKRL, and i should be using RSI instead?
Any suggestions would be much appreciated!