SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——6.树莓派USB与tty串口号绑定

431
0
2020年9月10日 10时32分

摘要

通过前面一系列的铺垫,相信大家对整个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节点


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

底盘、激光雷达、IMU这三个传感器都使用串口与树莓派通信,为了防止每次开机这三个设备的串口号发生变动,需要将串口号进行绑定与重映射。

创建rules文件:

rules文件前的序号越大优先级越小,将优先级设置的小一点;创建文件/etc/udev/rules.d/99-miiboo-usb-serial.rules,文件内容如图28。

 

SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——6.树莓派USB与tty串口号绑定插图

(图28)/etc/udev/rules.d/99-miiboo-usb-serial.rules文件内容

 

确定新插入串口设备的属性:

 

#将<devpath>替换成新插入串口设备号,如/dev/ttyUSB0
udevadm info -a -p $(udevadm info -q path -n <devpath>)

 

在输出的数据中从上到下找(如KERNELS==”1-1.4.3:1.0″形式的项),下一个不带“:”的KERNELS就是我们要找的,将下面这些参数

ATTRS{idProduct}

ATTRS{idVendor}

KERNELS

的取值填入上面创建的rules文件中对应的位置,然后在SYMLINK+中给这个设备取一个别名,MODE设为0777。

 

将底盘、雷达、IMU依次插入树莓派3的USB口,重复执行上面确定新插入串口设备的属性这一步,直到将这3个串口都绑定完成。这里将底盘、雷达、IMU分别ttyUSB*名称分别映射成别名miiboo、lidar、imu,这样在不改变底盘、雷达、IMU插入树莓派3的USB口物理孔位顺序时,不论上电开机后这3个串口被系统分配的ttyUSB*实际是多少,我们都可以用映射好的别名/dev/miiboo、/dev/lidar、/dev/imu来访问底盘、雷达、IMU串口,并且不用担心用户访问权限不足的问题。这里特别说明,miiboo机器人的底盘、雷达、IMU插入树莓派3的USB口物理孔位顺序,如图29,请不要改变这个顺序。

 

SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——6.树莓派USB与tty串口号绑定插图(1)

(图29)miiboo机器人的底盘、雷达、IMU插入树莓派3的USB口物理孔位顺序

 

使绑定设置生效:

 

重启机器人使绑定设置生效,命令如下。

sudo reboot

 

机器人重启后通过命令查看绑定是否生效,看到下面的输出就说明绑定成功了,如图30。

 

SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——6.树莓派USB与tty串口号绑定插图(2)

(图30)查看绑定是否生效

发表评论

后才能评论