拓展教程三:ROS中使用机器人的三种方法¶
首先介绍一下在ROS中使用机器人的三种方法:
直接使用机器人本体
ssh远程登录
ROS网络联机
方法 | 优点 | 缺点 |
---|---|---|
直接使用机器人本体 | 程序直接在机器人本身上运行 方便可视化编辑修改文件 可以运行可视化调试程序 |
需要鼠标键盘显示器 机器人没办法大范围运动 |
ssh远程登录 | 机器人可以自由运动 不需要鼠标键盘显示器 |
没办法可视化调试 |
ROS网络联机 | 机器人可以自由运动 不需要鼠标键盘显示器 可以可视化调试 |
偶尔受网络质量影响 |
ssh远程登录¶
该方法需要一台笔记本电脑或者主机,按照前面安装操作系统方法装好系统,但是不需要安装ROS。
然后连接外网安装ssh软件
sudo apt install ssh
然后断开外网,电脑连接机器人的无线网络xbot-network-bj**,密码xbot1234。
此时打开命令行,远程登录机器人:
ssh xbot@192.168.8.101
输入密码xbot1234,即可进入机器人的命令行,然后就可使用了。
以上登录ssh到机器人上可以多次运行,相当于在机器人上打开了多个命令行。
ROS网络联机¶
创建ROS工作空间¶
mkdir -p ~/catkin_ws/src
然后下载机器人的ROS包
cd ~/catkin_ws/src
git clone -b kinetic-devel https://github.com/DroidAITech/xbot.git
然后编译程序
cd ~/catkin_ws
rosdep install --from-paths src --ignore-src --rosdistro=kinetic -y
catkin_make
配置ROS联机¶
编译成功后,将笔记本网络断开外网,电脑连接机器人的无线网络xbot-network-bj**,密码xbot1234。
打开命令行,运行
ifconfig
可以看到
记下无线网的ip地址,此处记为your_ip,此处我的是192.168.2.35,你连接了机器的ip应该为形式为192.168.8.*的一个地址。
编辑配置文件:
gedit ~/.bashrc
在尾行加入:
source ~/catkin_ws/devel/setup.bash
export ROS_MASTER_URI=http://192.168.8.101:11311
export ROS_HOSTNAME=your_ip
上面如果source /opt/ros/kinetic/setup.bash这一行没有的话,也请加在上面三行之上。
测试ROS联机¶
这样,机器人已经作为ROS主机,笔记本作为ROS从机配置好了。
测试方法可以直接运行:
source ~/.bashrc
rosnode list
因为机器人上开机启动了xbot_bringup/launch/xbot-u.launch程序,在笔记本本地就能看到ROS的节点信息了。