2.12.4 2.12.3 2.12.2 2.12.1 2.12 2.11.2 2.11.0.1 Korean English Chinese Czech Dutch French German Hungarian Italian Japanese Polish Portuguese Spanish
2.12.4 2.12.3 2.12.2 2.12.1 2.12 2.11.2 2.11.0.1 Korean English Chinese Czech Dutch French German Hungarian Italian Japanese Polish Portuguese Spanish

Integrated example - DR_VS_CUSTOM

Communication Protocol

The vision system must conform to the following protocol to ensure that vision commands run properly.

image2021-11-9_9-56-28.png

vs_request (cmd)

  1.  Robot controller → Vision system"MEAS_START" +cmd[4byte]cmd refers to the number of detected objects: Conversion of the integer to 4 bytes. ex) cmd=1 → 00000001ex) In case of cmd= 1 : “MEAS_START"+00000001Acutal packet : 4D4541535F535441525400000001

  2. Vision system → Robot controller"MEAS_OK" is transmitted if the vision system is normal, and "MEAS_NG" is transmitted otherwise.


vs_result()

  1. Robot controller → Vision system“MEAS_REQUEST"

  2. Vision system → Robot controller“MEAS_INFO" +cnt[4byte] +[(x[4byte] + y[4byte] + t[4byte]) x cnt]cnt refers to the number of detected objects.The transmitted x (x coordinate), y (y coordinate), and t (rotation value) must be scaled up 100 times. ex) cnt = 1 , (x=1.1 , y=2.2, t=3.3)“MEAS_INFO"+1[4byte] +110[4byte] +220[4byte] +330[4byte]Actual packet: 4D4541535F494E464F000000010000006E000000DC0000014Aex) cnt = 2 , (x=1.1 , y=2.2, t=3.3) (x=1.1 , y=-2.2, t=-3.3)“MEAS_ INFO"+2[4byte] +110[4byte] +220[4byte] +330[4byte]+110[4byte] -220[4byte] -330[4byte]Actual packet: 4D4541535F494E464F000000020000006E000000DC0000014A0000006EFFFFFF24FFFFFEB6

Example

Python
vs_set_info(DR_VS_CUSTOM)
res = vs_connect("192.168.137.200", 9999)   #Vision and communication connection attempt
if res !=0:                                                    #Check the result of communication connection 
 tp_popup("connection fail",DR_PM_MESSAGE) #Upon connection failure, program termination
 exit() 
 
ret = vs_request(1)                                    #Request of Vision Measurement Information for No. 1 Object
 
cnt, result = vs_result()                              #Get object measurement result information
 
for i in range(cnt):
 x = result[i][0] 
 y = result[i][1] 
 t = result[i][2]
 tp_popup("x={0},y={1}, t={2}".format(result[i][0], result[i][1], result[i][2]),DR_PM_MESSAGE)