SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——4.PC端与robot端ROS网络通信

132
0
2020年9月8日 10时05分

摘要

通过前面一系列的铺垫,相信大家对整个miiboo机器人的DIY有了一个清晰整体的认识。接下来就正式进入机器人大脑(嵌入式主板:树莓派3)的开发。本章将从树莓派3的开发环境搭建入手,为后续ros开发、slam导航及语音交互算法做准备。本章内容:

1.安装系统ubuntu_mate_16.04

2.安装ros-kinetic

3.装机后一些实用软件安装和系统设置

4.PC端与robot端ROS网络通信

5.Android手机端与robot端ROS网络通信

6.树莓派USB与tty串口号绑定

7.开机自启动ROS节点


4.PC端与robot端ROS网络通信

PC端与robot端ROS网络通信的设置,其实很简单。就是要在PC端和机器人端都要指明master和hostname这两个东西,我们都知道ROS基于的是一个分布式的通信机制,支持多机通信,并且只能有一个master设备作为对其他分部式设备的统一管理。

 

由于大部分节点算法都是运行在机器人上,PC端只是用于远程调试,为了系统的效率与稳定性,我把机器人端作为master。如图24。

 

SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——4.PC端与robot端ROS网络通信插图

(图24)PC端与robot端ROS网络通信

 

首先,配置机器人端的ROS网络参数,打开机器人用户目录下的~/.bashrc配置文件,在最后添加两个环境变量,如图25。

 

SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——4.PC端与robot端ROS网络通信插图(1)

(图25)配置机器人端的ROS网络参数

 

不难发现在机器人上mater和host的IP是一样的,因为机器人被指定为了整个ROS网络的master设备。修改好后,需要重启系统使设置参数生效。

 

然后,配置PC端的ROS网络参数。这里需要提醒一下,需要让PC端与机器人出于同一局域网下,如果PC端使用的是虚拟机运行ubuntu建议用物理桥接的方式给虚拟机连网。打开PC端用户目录下的~/.bashrc配置文件,在最后添加两个环境变量,如图26。

 

SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——4.PC端与robot端ROS网络通信插图(2)

(图26)配置PC端的ROS网络参数

 

不难发现PC端上master填的是机器人IP地址,host为PC本地IP。修改好后,需要重启系统使设置参数生效。

 

设置好PC端与robot端ROS网络通信,在正是进行ROS多机通信时,需要首先在机器人上启动节点管理里master,启动命令是roscore,然后就可以在相应的机器上启动需要的节点了。

发表评论

后才能评论