UR中ROS仿真使用脚本命令控制

发布时间:2024-01-11 11:58:52

1.下载最新的脚本命令文件

在浏览器搜索“UR官网”,打开协作机器人的那个连接。

?按照图示进行点击下载官方的脚本文件

2.按ros2 ur部分的说明进行测试

网站如下:?

Usage — ur_robot_driver documentation

?查看现在的topic,找到最后那个/urscript_interface/script_command

cheni@yuchen:~$ ros2 topic list

/clicked_point

/diagnostics

/dynamic_joint_states

/force_torque_sensor_broadcaster/transition_event

/force_torque_sensor_broadcaster/wrench

/forward_position_controller/commands

/forward_position_controller/transition_event

/goal_pose

/initialpose

/io_and_status_controller/io_states

/io_and_status_controller/robot_mode

/io_and_status_controller/robot_program_running

/io_and_status_controller/safety_mode

/io_and_status_controller/tool_data

/io_and_status_controller/transition_event

/joint_state_broadcaster/transition_event

/joint_states

/parameter_events

/robot_description

/rosout

/scaled_joint_trajectory_controller/controller_state

/scaled_joint_trajectory_controller/joint_trajectory

/scaled_joint_trajectory_controller/transition_event

/speed_scaling_state_broadcaster/speed_scaling

/speed_scaling_state_broadcaster/transition_event

/tf

/tf_static

/urscript_interface/script_command

2.1弹窗测试

?输入下面的第一行

cheni@yuchen:~$ ros2 topic pub /urscript_interface/script_command std_msgs/msg/String '{data: popup("hello")}' --once

Waiting for at least 1 matching subscription(s)...

Waiting for at least 1 matching subscription(s)...

publisher: beginning loop

publishing #1: std_msgs.msg.String(data='popup("hello")')

效果如下:

在浏览器中那个控制界面可以看到这个

2.2 多行命令运动测试?

输入第一行的命令

cheni@yuchen:~$ ros2 topic pub --once /urscript_interface/script_command std_msgs/msg/String '{data:

"def my_prog():



  set_digital_out(1, True)



  movej(p[0.2, 0.3, 0.8, 0, 0, 3.14], a=1.2, v=0.25, r=0)



  textmsg(\"motion finished\")



end"}'

publisher: beginning loop

publishing #1: std_msgs.msg.String(data='def my_prog():\nset_digital_out(1, True)\nmovej(p[0.2, 0.3, 0.8, 0, 0, 3.14], a=1.2, v=0.25, r=0)\ntextmsg("motion finished")\nend')

机器人从当前位置移动到命令要求的位置,查看TCP位置与最终位置一致

2.3 不打断程序的日志信息命令

?输入第一行的命令

cheni@yuchen:~$ ros2 topic pub --once /urscript_interface/script_command std_msgs/msg/String '{data:

  "sec my_prog():



    textmsg(\"This is a log message\")



  end"}'

publisher: beginning loop

publishing #1: std_msgs.msg.String(data='sec my_prog():\ntextmsg("This is a log message")\nend')

效果如下:

可以逐步点击确认

3.总结

以上就是三种命令的测试,其他的命令可以按照脚本描述的去测试。在虚拟机上仍然可以仿真机器人。?

文章来源:https://blog.csdn.net/xiaoding_ding/article/details/133928868
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。