摘要
通过前面一系列的铺垫,相信大家对整个miiboo机器人的DIY有了一个清晰整体的认识。接下来就正式进入机器人大脑(嵌入式主板:树莓派3)的开发。本章将从树莓派3的开发环境搭建入手,为后续ros开发、slam导航及语音交互算法做准备。本章内容:
7.开机自启动ROS节点
在后续教程学习完后,基本上所有的机器人算法就开发的差不多了。于是,我们就需要在机器人上电开机时,自启动想要启动的ROS节点,让机器人立马进入工作状态。
由于我自己尝试过网上的教程,将ROS节点启动命令放入系统开机自启动脚本的方法,亲测不成功。后来仔细研究才知道,需要系统完全启动,建立起ROS运行的必须环境后,ROS节点程序才能开始工作,所以系统开机自启脚本行不通。
于是,经过我自己的研究,找到了一种简单的方法,将要启动的roslaunch命令加入机器人的~/.bashrc文件的末尾。这样在系统启动后,执行用户自动登录时,~/.bashrc会被调用,这样就可以实现ROS节点启动了。关于用户自动登录的设置可以参考前面的相关内容。
添加到~/.bashrc文件末尾的内容如下,根据自己的需要,将命令替换成自己的ROS节点启动命令。
#robot auto start if rostopic list ; then echo "roscore and robot_auto_start started!" else #launch roscore nohup roscore #launch sleep 30 ... fi
设置完成后,sudo reboot就可以了。
后记
------SLAM+语音机器人DIY系列【目录】快速导览------
第1章:Linux基础
第2章:ROS入门
第3章:感知与大脑
第4章:差分底盘设计
第5章:树莓派3开发环境搭建
第6章:SLAM建图与自主避障导航
2.google-cartographer机器人SLAM建图
第7章:语音交互与自然语言处理
第8章:高阶拓展
2.centos7下部署Django(nginx+uwsgi+django+python3)
----------------文章将持续更新,敬请关注-----------------
如果大家对博文的相关类容感兴趣,或有什么技术疑问,欢迎加入下面的《SLAM+语音机器人DIY》QQ技术交流群,一起讨论学习^_^
关于我们:
视频教程:
https://www.bilibili.com/video/av61448040