由于树莓派自身运算能力不足, 稳定性较为欠缺,一些功能复杂的功能包运行速度较慢,在笔记本上能更快更好的完成相应任务。实验过程中,可以利用分布式原理,设置机器人工控机为从机,启动底盘控制节点、雷达节点、摄像头节点等,笔记本为主机,启动建图、导航节点等。当从机启动底盘控制节点、雷达节点,主机启动建图节点时出现了以下警告:[ WARN] [1603761495.279659749]:MessageFilter [target=odom ]: Dropped 95.28% of messages so far.Please turn the [ros.gmapping.message_notifier] rosconsole logger to DEBUG for more information.
,并且不能显示雷达信息
如下图所示:
解决办法
将两台设备的时间进行同步。
-
首先在主机和从机上分别安装ntp时间服务器
sudo apt-get install ntp
-
在主机上配置ntp
通过指令sudo gedit /etc/ntp.conf
打开ntp.conf 文件,在最下面添加如下三条指令并保存:
restrict 192.168.12.0 mask 255.255.255.0 nomodify notrap
server 127.127.1.0
fudge 127.127.1.0 stratum 10
第一条指令中的192.168.12.0替换成你自己的局域网IP,即允许该网段的设备与本机时间同步,第二、三条指令不用改动,如下图所示:
然后打开新终端输入以下指令重启ntp服务
sudo /etc/init.d/ntp restart
如下图所示:
-
配置从机
先在从机上安装ntpdate,打开一个终端,输入以下指令:
sudo apt-get install ntpdate
然后输入以下指令,其中将192.168.12.172替换成你的主机的IP地址,即与该地址的主机进行时间同步。
sudo ntpdate 192.168.12.172
为了避免每次时间同步都要手动输入以上指令,可以在从机的配置文件/etc/crontab的最后添加以下指令,同理将192.168.12.172替换成你主机的IP地址。
* * * * ntpdate 192.168.12.172
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)