-
Notifications
You must be signed in to change notification settings - Fork 6
Baxter DMP RL Demo cn
EN | 中文
Baxter DMP RL Demo 是一个程序包,可以让Baxter机器人学习一个DMP范化之后的抓取轨迹,同时用强化学得到一条最优抓取轨迹。
目前这个程序包只在ROS indigoUbuntu14.04版本上测试通过, 如果你在测试这个包时遇到任何问题,请在github上通知我。
- ./baxter_DMP_RL/scripts/...
- ./baxter_DMP_RL/src/...
- ./robotiq/robotiq_force_torque_sensor/nodes/rq_sensor.cpp
- geometry_msgs.msg.WrenchStamped massage
-
In this demo i publish 5 topics which is :
action1_reward, type is std_msgs.Float32
action2_reward, type is std_msgs.Float32
action3_reward, type is std_msgs.Float32
action4_reward, type is std_msgs.Float32
action5_reward, type is std_msgs.Float32这些发布的消息用于产生reward曲线。
在运行这个程序包之前请认真阅读README文件,里面有相关说明,同时请确认你的电脑已经链接上了Baxter机器人. 运行:
$ rosrun dmp dmp_joint_trajectory_action_server.py
$ rosrun dmp Baxter_DMP_RL_joint_trajectory_learn_client.py
如果想要获取更多信息或者寻求帮助,或者请阅读常见问题部分常见问题 .
当你运行 dmp_joint_trajectory_action_server.py 这个python节点,它会创建一个轨迹服务。
如果你需要知道更多的细节请参考这个网站: Baxter关节轨迹点生成,回放教程.
当你运行 Baxter_DMP_RL_joint_trajectory_learn_client.py 这个python节点, 它会创建一个DMP轨迹实例和一个强化学习智能体,DMP实例能够运行DMP轨迹点,但是这些DMP轨迹强化学习只能体是随机产生的,强化学习智能体会更具当前的力反馈信息反馈给当前的范化的DMP轨迹一个奖励值,然后学习到一条最优的抓取轨迹。
如果你要了解更多关于ROS DMP程序包的相关信息,请参考这个网页 ROS DMP package, 强化学习off-policy Q-learning RL Q-learning.
Q1 我可以自己产生DMP轨迹吗 ?
A1 当然可以!
- 在你自己用DMP程序包产生DMP轨迹前,你需要去了解这个教程:
Baxter关节角记录回放教程.
This example will tell you how to generate a joint trajectory, which is input data of DMP.
- 然后运行:
rosrun dmp dmp_server
rosrun dmp baxter_r_arm_dmp.py
[Tip]: 请确保你自己产生的关节角轨迹点正确输入到了这个python脚本baxter_r_arm_dmp.py file.
Q2. 我没有 Robotiq的力传感器, 怎么办?
A2. 如果你没有力传感器,则意味着你不能在真机器人上实现这个功能,但是这还是有办法的,你可以在Gazebo仿真器中运行这个程序:
- 我会在下一次更新中回答这个问题.
如果你在实验的时候按下了急停按钮, 请千万记住先关掉这个节点 dmp_server, 然后再松开急停按钮. 否则, 机器人会运动得非常快,这可能会伤到你。