09-10-2021,晚上11:08
(这篇文章最后修改:09-10-2021,晚上11:10 byhieuvoquoc)。
嗨RoboDK,
目前我想通过RobotDK实时监控UR5e机器人的输入/输出状态。有什么办法可以做到吗?
我看到库中有python代码UR_Monitoring_CSV.py其中提到了这一点,但当我改变UR5e上的输入/输出值时,我没有看到值的变化。
请指教,非常感谢!
目前我想通过RobotDK实时监控UR5e机器人的输入/输出状态。有什么办法可以做到吗?
我看到库中有python代码UR_Monitoring_CSV.py其中提到了这一点,但当我改变UR5e上的输入/输出值时,我没有看到值的变化。
请指教,非常感谢!
代码:
Ur_get_inputs = (86-32)*8 + 252
Ur_get_outputs = (131-32)*8 + 252
Def on_packet(packet, packet_id):
全球ROBOT_JOINTS
从数据包中检索所需的信息
rob_joints_RAD = packet_value(数据包,UR_GET_JOINT_POSITIONS)
robot_关节= [ji * 180.0/pi for ji in rob_joints_RAD]
ROBOT_TCP_XYZUVW = packet_value(数据包,UR_GET_TCP_POSITION)
ROBOT_TCP_SPEED = packet_value(数据包,UR_GET_TCP_SPEED)
ROBOT_INPUTS = packet_value_bin(数据包,UR_GET_INPUTS)
ROBOT_OUTPUTS = packet_value_bin(包,UR_GET_OUTPUTS)
#打印(“输出:”)
#打印(ROBOT_OUTPUTS)
#ROBOT_SPEED = packet_value(数据包,ur_get_joint_speed)
#ROBOT_CURRENT = packet_value(数据包,UR_GET_JOINT_CURRENTS)
#打印(ROBOT_JOINTS)
#监视线程从机器人检索信息
def UR_Monitor ():
而真正的:
print("连接到机器人%s -> %s:%i" %(机器人名,机器人ip,机器人端口))
Rt_socket = socket。create_connection ((ROBOT_IP ROBOT_PORT))
打印(“连接”)
Buf = b "
Packet_count = 0
Packet_time_last = time.time()
而真正的:
更多= rt_socket.recv(4096)
如果更多的:
Buf = Buf +更多
如果packet_check (buf):
Packet_len = packet_size(buf)
Packet, buf = buf[:packet_len], buf[packet_len:]
packet_count on_packet(包)
Packet_count += 1
如果packet_count % 250 == 0:
T_now = time.time()
msg = "监视%s在%。1f packets per second" % (robotname, packet_count/(t_now-packet_time_last))
打印(味精)
RDK。ShowMessage(味精、假)
Packet_count = 0
Packet_time_last = t_now
rt_socket.close ()