SLAM+語音機器人DIY系列:(五)樹莓派3開發環境搭建——6.樹莓派USB與tty串口號綁定


摘要                                              

通過前面一系列的鋪墊,相信大家對整個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

(圖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依次插入樹莓派3USB口,重復執行上面確定新插入串口設備的屬性這一步,直到將這3個串口都綁定完成。這里將底盤、雷達、IMU分別ttyUSB*名稱分別映射成別名miiboolidarimu,這樣在不改變底盤、雷達、IMU插入樹莓派3USB口物理孔位順序時,不論上電開機后這3個串口被系統分配的ttyUSB*實際是多少,我們都可以用映射好的別名/dev/miiboo/dev/lidar/dev/imu來訪問底盤、雷達、IMU串口,並且不用擔心用戶訪問權限不足的問題。這里特別說明,miiboo機器人的底盤、雷達、IMU插入樹莓派3USB口物理孔位順序,如圖29,請不要改變這個順序

(圖29miiboo機器人的底盤、雷達、IMU插入樹莓派3USB口物理孔位順序

使綁定設置生效:

重啟機器人使綁定設置生效,命令如下。

sudo reboot

機器人重啟后通過命令查看綁定是否生效,看到下面的輸出就說明綁定成功了,如圖30

(圖30)查看綁定是否生效

后記               

------SLAM+語音機器人DIY系列【目錄】快速導覽------

第1章:Linux基礎

1.Linux簡介

2.安裝Linux發行版ubuntu系統

3.Linux命令行基礎操作

第2章:ROS入門

1.ROS是什么

2.ROS系統整體架構

3.在ubuntu16.04中安裝ROS kinetic

4.如何編寫ROS的第一個程序hello_world

5.編寫簡單的消息發布器和訂閱器

6.編寫簡單的service和client

7.理解tf的原理

8.理解roslaunch在大型項目中的作用

9.熟練使用rviz

10.在實際機器人上運行ROS高級功能預覽

第3章:感知與大腦

1.ydlidar-x4激光雷達

2.帶自校准九軸數據融合IMU慣性傳感器

3.輪式里程計與運動控制

4.音響麥克風與攝像頭

5.機器人大腦嵌入式主板性能對比

6.做一個能走路和對話的機器人

第4章:差分底盤設計

1.stm32主控硬件設計

2.stm32主控軟件設計

3.底盤通信協議

4.底盤ROS驅動開發

5.底盤PID控制參數整定

6.底盤里程計標

第5章:樹莓派3開發環境搭建

1.安裝系統ubuntu_mate_16.04

2.安裝ros-kinetic

3.裝機后一些實用軟件安裝和系統設置

4.PC端與robot端ROS網絡通信

5.Android手機端與robot端ROS網絡通信

6.樹莓派USB與tty串口號綁定

7.開機自啟動ROS節點

第6章:SLAM建圖與自主避障導航

1.在機器人上使用傳感器

2.google-cartographer機器人SLAM建圖

3.ros-navigation機器人自主避障導航

4.多目標點導航及任務調度

5.機器人巡航與現場監控

第7章:語音交互與自然語言處理

1.語音交互相關技術

2.機器人語音交互實現

3.自然語言處理雲計算引擎

第8章:高階拓展

1.miiboo機器人安卓手機APP開發

2.centos7下部署Django(nginx+uwsgi+django+python3)

----------------文章將持續更新,敬請關注-----------------

 

如果大家對博文的相關類容感興趣,或有什么技術疑問,歡迎加入下面的《SLAM+語音機器人DIY》QQ技術交流群,一起討論學習^_^

關於我們:

視頻教程:

 

https://www.bilibili.com/video/av61448040


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM