赞
踩
自下而上的分析实体机器人(差分轮速机器人)搭建中的关键过程。
本部分搭建实体机器人ros底盘:与ros相关的控制系统部分。
底盘上的STM32主控板需要拥有如下处理功能。
执行机构: 两个直流电机带动主动轮。
驱动系统:
驱动系统负责驱动执行机构。
常用的开发板有树莓派,RK3399,firefly等等,很多传感器:比如视觉的和激光雷达,都是直接与嵌入式开发板硬件连接进行数据交互。
如果说教育机器人,我们或许需要所谓的上位机pc;但是做成产品之后,很多功能编译成包之后,就直接落实到嵌入式开发板上了。
开发板上需要安装ubuntu + ros,通过ros的远程分布式通讯机制实现与上位机pc的通讯。
上位机pc可以承担一部分可视化与需要高耗能的功能如视觉、SLAM、导航等。
通过串口进行通讯,按照对应的通讯协议。
开发板下发机器人运动的速度指令
机器人上传里程计、超声波等传感器信息。
与stm32主控板通讯,可以用一个**ros控制端节点:ros_controller
**来进行管理。
该节点实现以下两个功能:
/cmd_vel
, 通过串口发送速度控制指令,实现MRobot运动关于ros_control
的详细内容,可以参考教程
整个机器人系统(面向移动机器人),分为四大块:
第一部分: 控制系统
控制系统的硬件体现:
机器人身上装载的PC。通常可以被称为上位机。
小型机器人通常用微型pc,比如上述提及到的树莓派,RK3399,firefly;大型机器人比如无人车等,通常使用工控机
控制系统的软件功能:
通讯层面:
与底层主控板进行通讯,通常是网口,串口,usb等方式。传输的内容为:向下传输控制指令(力)。
接受底层主控板通过传感器回传的关节状态信息:比如编码器回传的速度和位置信息
功能层面:
识别、导航、抓取、建图等软件功能。其中最本质的是机器人能够移动来进行交互。导航功能是不可或缺的一部分。之后的导航教程也会详细讲解ROS下的导航实现。
第二部分:主控板
第三部分:执行机构
第四部分:传感器
传感器种类很多,我们根据他获取信息的方式大致分为內受形和外感形
内部(预测): 编码器,陀螺仪,加速度计
外感(观测):激光雷达,各种相机,红外,超声
编码器的数据通常由主控板处理,然后发送给控制系统。
IMU、Lidar、camera,通常直接传给控制系统来做数据分析与处理。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。