先锋机器人ROS入门——rosaria安装、测试及学习

1.安装MobileSim

MobileSim是一个移动机器人仿真软件,即启动之后,在不连接实体机器人的情况下,运行rosaria不会报错,即是连接上了一个虚拟的机器人主机。进入MobileSim下载选择下载 mobilesim_0.9.8+ubuntu12_i386.deb,通过Ubuntu Software Center或者通过指令dpkg -i进行安装。

2.安装rosaria

2.1先建立工作空间

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
cd ~/catkin_ws
catkin_make
echo “source ~/catkin_ws/devel/setup.bash” >> ~/.bashrc

2.2clone ROSARIA到工作空间

cd ~/catkin_ws/src
git clone https://github.com/amor-ros-pkg/rosaria.git

2.3下载安装MobileRobots ARIA Ubuntu Package

网址: http://robots.mobilerobots.com/wiki/Aria
安装: sudo dpkg -i libaria_2.9.1+ubuntu12_i386.deb
返回工作空间编译时catkin_make,出现 libAria.so类的报错:

skipping incompatible /usr/local/Aria/lib/libAria.so when searching for -lAria/usr/bin/ld: cannot find -lAria
/usr/bin/ld: cannot find -lAria

解决办法是重新编译Aria:

cd /usr/local/Aria
make clean     #清除原有的编译
make -j4     #重新编译

那么,返回工作空间再进行编译即可。
再进行编译,如果编译报错,尝试 catkin_make –force-cmake(此处显示有问题,不是简写是两个-)

3.测试

首先打开mobilesim
然后roscore
然后 rosrun rosaria Rosaria
输出转态消息:rostopic echo /RosAria/pose 则会有数据输出,数据类型为nav_msgs/Odometry
输出话题:rostopic list
输出结果为:

/RosAria/battery_recharge_state
/RosAria/battery_state_of_charge
/RosAria/battery_voltage
/RosAria/bumper_state
/RosAria/cmd_vel
/RosAria/motors_state
/RosAria/parameter_descriptions
/RosAria/parameter_updates
/RosAria/pose
/RosAria/sonar
/RosAria/sonar_pointcloud2
/rosout
/rosout_agg
/tf

4.相关的话题

4.1 订阅的话题

cmd_vel 对于速度的控制为:rostopic pub -1 /RosAria/cmd_vel geometry_msgs/Twist '[0.1, 0.0, 0.0]' '[0.0, 0.0, 0.0]'

4.2 发布的话题

  • pose 能够发布里程计的信息,通常是10HZ更新一次
  • bumper_state能够发布缓冲的状态 sonar能够读出声呐的状态,出来的数据是二维的x,y,Z始终是0
  • battery_state_of_charge 电池的状态的百分比(取值范围0~1)
  • battery_voltage 电压
  • battery_recharge_state充电的状态
  • motors_state 发动机的状态

4.3 服务service

  • enable_motors 控制电机的启动
  • disable_motors 禁止电机运动

4.4 参数说明

  • trans_accel (float, default: none, use robot controller
  • firmware configuration) 平移的加速度控制,可以动态设置
  • trans_decel (float, default: none, use robot controller firmware configuration) 平移的减速度控制,可以动态设置
  • rot_accel (float, default: none, use robot controller firmware configuration) 旋转的加速度控制,可以动态设置
  • rot_decel (float, default: none, use robot controller firmware configuration) 旋转的减速度控制,可以动态设置
  • cmd_vel_timeout (float, default: 0.6 sec) 速度指令等待时间
  • odom_frame (string, default: odom) 发布机器人里程状态的frame
  • base_link_frame (string, default: base_link) 发布base_link tf

5.ROSARIA示例学习

cd ~/catkin_ws/src
git clone https://github.com/pengtang/rosaria_client.git
cd ..
catkin_make
source devel/setup.bash

step1 连接机器人

case1 连接真实的机器人

先打开机器人,然后配置参数
sudo usermod -a -G dialout $USER
dialout 是linux 默认自带的用户群组,在/erc/groups 文件夹中即可看到,而设备文件如下面的tty就属于该群组,所以将用户名添加到该群组才能对设备文件进行读写。

sudo chmod a+rw /dev/ttyUSB0  //赋予端口权限

或者命令sudo chmod 777 /dev/ttyUSB0

case2 Mobilesim仿真机器人

打开mobilesim,在一个新建的terminal中输入MobileSim启动

step2 启动rosaria

依次打开terminal,输入roscoreroslaunch rosaria_client rosaria_client_launcher.launch。也可不用launch文件,在三个terminal中依次输入roscorerosrun rosaria RosAriarosrun rosaria_client interface
对于真实的机器人:rosrun rosaria RosAria改为rosrun rosaria RosAria _port:=/dev/ttyUSB0

step3 根据程序输出的指示进行操作

指令说明:

  • Up Arrow: 前进
  • Down Arrow: 后退
  • Left Arrow: 逆时针转
  • Right Arrow: 顺时针转
  • Spacebar: 停止运动
  • A: 增加线速度
  • Z: 减少线速度
  • S: 增加角速度
  • X: 减少角速度
  • Q: 退出控制
  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值