序
本文主要发布一些作者从零开始开发ROS的项目实战经验,包括一些经验与本文遇到坑时的解决方案,ROS因为版本不同与开发环境不同在实际开发中会遇到各类问题,下面就细细道来。
一、环境搭建
本人开发环境 ——上位机:MAC主机+PD虚拟机+Ubuntu12.04(64位)+Hydro,底层:STM32F407
先说下为什么是PD虚拟机,现在主流的电脑安装Ubuntu容易出现没有无线网卡驱动的问题(如果你的电脑有请忽略),虚拟机不用担心网卡问题,并且虚拟机安装Ubuntu更方便(如果你的电脑是UEFI,安装Ubuntu将会遇到一些麻烦),相比之下虚拟机其实用起来更方便一些(本人直观感受)。
现在很多人用Ubuntu14.04+indigo,本人也建议用14.04,本文通信代码在两个版本下都可以顺利运行。
二、STM32与ROS串口通信
本人STM32串口通信模块(当然用山外助手也是一样可行的):
图 1
在ROS下主要运用asio,本人找了许多方法,这种比较简洁实用,接下来就是在ROS下设置与底层相匹配的通信协议格式了,按照图1相应的设置程序如下:
#