< >
Home » Turtlebot与仿真 » Turtlebot仿真-编写第一个交互

Turtlebot仿真-编写第一个交互

编写第一个交互

  • 在这节课我们将把该应用的用户侧。
  • 我们将学习如何在应用程序列表中添加跟随者应用程序。

先决条件

  • 这节课是上一节课的延续:“多turtlebots互动”。如果你没有做过这一课,先做吧。

创造互动

  1. 在my_rapps创建文件夹。
cd ~/my_ws/src/my_rapps/
mkdir interactions
cd ineractions

2。创建 my.interactions文件以下内容:

- name: ""
  role: My Interactions
  compatibility: rocon:/pc/*/hydro|indigo/precise|quantal|raring|saucy|trusty
  display_name: Follower
  description: Take the TurtleBot for a stroll. TurtleBot will follow  whatever is in front of it.
  max: -1
  icon:
    resource_name: my_rapps/follower_bubble_icon.png
  pairing:
    rapp: my_rapps/follower
    remappings: []

修改concert_service_gazebo包

  1. 克隆concert_services。
cd ~/my_ws/src/
git clone https://github.com/robotics-in-concert/concert_services.git
  1. 改变目录。
cd ~/my_ws/src/concert_services/
  • 改变分支。
git checkout indigo
  1. 编辑robot.launch文件。
cd concert_service_gazebo/launch/
  • 在参数robot_concert_whitelist下面, 在include 标签上面,添加robot_interactionsrobot_interactions_list
<arg name="robot_interactions" default="false"/>
<arg name="robot_interactions_list" default="[]"/>
  • 在concert_whitelist下面,include标签里面添加interactions 和interactions_list。
<arg name="interactions" value="$(arg robot_interactions)"/>
<arg name="interactions_list" value="$(arg robot_interactions_list)"/>
  1. 编辑gazebo_robot_manager.py文件。
cd ~/my_ws/src/concert_services/concert_service_gazebo/src/concert_service_gazebo/
  • 增加2个字符串,在_prepare_rocon_launch_text函数:
launch_text += '    <arg name="robot_interactions" value="%s"/>\n' % robot['interactions']
launch_text += '    <arg name="robot_interactions_list" value="%s"/>\n' % str(robot['interactions_list'])
  • 在此字符串上
launch_text += '  </launch>'
  • 我们编辑这个文件为使用robot_interactions和robot_interactions_list参数。

修改gazebo_concert包

  1. 编辑gazebo.parameters文件。
cd ~/my_ws/src/rocon_tutorials/concert_tutorials/gazebo_concert/solutions/
  • 为每个机器人添加interactions 和interactions_list参数。
interactions: true
interactions_list: [turtlebot_bringup/documentation.interactions, my_rapps/my.interactions]
  1. 编译包。
source /opt/ros/indigo/setup.bash
cd ~/my_ws/
catkin_make

运行的追随应用程序

  1. 改变路径。
source ~/my_ws/devel/setup.bash
  1. 启动gazebo_concert。
roslaunch gazebo_concert concert.launch
  • 你会看到这些字符串在每个机器人终端。
[INFO] [WallTime: 1456371595.581037] [10.320000] Interactions : loading Follower [-My Interactions-/]
  1. 开始rocon_remocon。
rocon_remocon
  1. 选择 Gazebo Concert->User->Gazebo Viewer。
  • 你会看到熟悉的Gazebo世界。
  1. 在Interactions Chooser选择Concert Teleop 。

  2. 选择资源列表中gamza1捕获。

  3. 在一个新的终端开始rocon_remocon。

rocon_remocon
  1. 按添加。编辑MASTER_URI
MASTER_URI = http://localhost:11412

sim_remocon_add_master

  1. 按添加。你会看到gamza2

  2. 选择gamza2.

  3. 选择My Interactions.

sim_role_chooser

  1. 选择Follower.

sim_interactions_chooser

  1. 操作gamza1使用操纵杆进行跟随行为。

  2. 中断进程。关闭窗口。

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: turtlebot仿真