欢迎收看《ROS移动机器人从0到1》长篇小说第一章----《ROS移动小车整体框架详解》!
下图是小说目前的目录,后续会根据同学们的建议进行增加或修改。
也请大家能及时提供反馈,共同进步。
ROS移动小车整体框架介绍 |
---|
STM32和jetson nano通讯协议 |
mpu6050和ADC的配置以及数据读取 |
电机驱动和编码器数据读取 |
PID控制轮子转速 |
jetson_nano和STM32串口绑定和通讯测试 |
ROS小车功能包安装 |
雷达串口绑定和测试,RVIZ上显示 |
PS2手柄遥控小车 |
ROS MPU6050数据,里程计数据接收以及处理 |
ROS 建图和导航详解 |
深度相机做视觉避障 |
深度相机目标检测 |
语音识别和交互 |
增加机械臂 |
更多 |
如上图所示,可以清晰地表明各硬件之间的通讯方式和传输的数据。
蓝色字体为硬件之间的通讯方式。
红色字体为硬件之间的传输内容。
接下来,我会详细的介绍各模块。
jetson nano
stm32
mpu6050
电机&编码器
ADC模块
雷达
深度相机
遥控手柄
语音识别模块
触摸屏
为什么选择jeston nano而不用树莓派呢?
因为家里刚好有个nano在吃灰,不用白不用。
而且nano性能要强于树莓派,能实现更多的功能。
本来想着在淘宝上买一块新的stm32控制板,但是从今年开始,芯片短缺问题越来越严重,ROS STM32控制板定制化程度很高,几乎都是小商家在做,他们的进货渠道更少。问了很多卖家,都说因为STM32芯片短缺,暂时没有板子卖了。所以我就只能利用之前购买的ROS小车上的stm32控制板了。不过各板子都是大同小异,对我们应用者来说,只是GPIO引脚有所不同而已。
所用的stm32控制板板载了mpu6050模块,是通过IIC协议通讯的。
价格不贵,大概20元一个。
我们使用的是带霍尔编码器的直流减速电机
电机参数:
电机额定转速 280 RPM
减速器减速比 21.3
在不带减速器的情况下,电机转一圈脉冲数 11
在带减速器的情况下,电机转一圈脉冲数 11*21.3=234.3
ADC模块用于实时监控小车整体电量,保证小车在安全的电压范围内工作,后续也会利用电量监控功能做自动回充功能。
使用的是思岚A1雷达,价格不贵,而且很多人使用过,所以我们在使用过程中遇到问题也更容易找到解决方法。
用的是乐视体感摄像头,我是2020年1月买的,价格125。
写这篇文章的时候,我特意又看了下,价格428…早知道囤这个摄像头了,哈哈!
可怕的价格,但是仔细想想,时隔1年半,产品售价变成翻了3倍,原材料价格是真得翻了3倍吗?
因为雷达是单线的,所以打算用相机做视觉避障,用于识别高一点的障碍物。
还能做简单的物体识别。
遥控手柄功能:
1.建图的时候取代键盘控制小车
2.给小孩子当遥控车玩
语音模块用于做人机交互,家里有小米的一些智能家电,小米好像开放了部分的API,尝试看能不能通过ROS小车来控制家电。
暂时未购买。
触摸屏为了更清楚的展示ROS移动小车状态。
触摸屏并不是必须的,如果价格贵,就可能换成普通的显示屏(留下了贫穷的眼泪)。
暂时未购买。
下篇文章预告《STM32和Jetson nano通讯协议详解》!
更多ROS开发资料可以点击下方链接获取:
https://github.com/Githubcxy666/ROSBOT