
上篇文章说的是MicroROS对传统的ROS的一些构造的优势确实从底层看起MicroROS确实省略了很多看似不必要的麻烦。但是在工程世界里新永远无法完全替代旧需求和环境是多样的。1.芯片的能力MicroROS的芯片要求通常而言要求较高ESP32、STM32系列的F4、F7这些高性能芯片能够跑RTOS所以能够使用MicroROS但是对于性能一般的芯片你不能指望他们都可以MicroROS但是作为单片机的串口通信、数据读取依旧是看家本领。2.接受能力配置上有些时候MicroROS对于初学者而言不是很友好配置交叉编译链、安装 Micro-ROS Agent、配置 WiFi 密码、处理网络冲突。诚然网络上的资源很多取之不尽大不了查阅功能但是终究是比较复杂的。但是串口发送和传感器数据采集等这些部分对于一个嵌入式工程师而言应该是不在话下所以就上手难度上看传统方法也是比较好接受的。3.续航传统的方式中ESP32已经可以看作是一个附庸了所以他做的事情很简单功耗很低。对于MicroROS而言由于WiFi的功耗较高电池往往耗电速度较快。4.系统解耦这是大公司架构师最看重的一点Micro-ROSESP32 的代码和 ROS2 版本如 Humble、Foxy强绑定。如果 ROS2 升级Micro-ROS 固件可能需要重写。传统方式定义了“帧头数据校验”的串口协议后主机那边不管是用 ROS1、ROS2、Python、C#、Matlab 还是 PLC只要按协议读串口都能用。Micro-ROS 是为了“开发更复杂、无线、分布式的机器人系统”而生的上层建筑传统串口是为了“确保在任何恶劣环境、任何廉价芯片、任何协议栈下都能稳定传输”而生的地基。