1.NaviPack工作流程及常见问题解答 - navipack/navi-panel GitHub Wiki
## NaviPack工作流程及常见问题解答
#1. 版本修改信息
版本号 | 修改日期 | 修改内容 |
---|---|---|
1.0 | 2016.08.02 | 初始创建 |
1.1 | 2016.08.03 | 加入了常见问题解答 |
#2. 工作流简介
设备启动后,底盘控制器,需要按照固定的周期(10~50ms)不停地上报自己的工作状态和各种传感器参数(状态寄存器的传感器部分),并等待算法控制器的运动控制命令(控制寄存器的TargetLineVelocity,TargetAngleVelocity)。当底盘控制器收到运动控制命令后,开始控制电机,实现两个Velocity的控制。
同时,算法控制器,等待人机接口的命令,并根据需要,发送地图,路径规划点,激光雷达的数据到人机接口板。
整体流程如下图所示:
#3. 常见问题解答
-
Navipack与市面上其他家所售的激光雷达有何不同?
答:Navipack是乐行天下自主研发的定位与导航套件,集成了SLAM算法处理器,自动完成初始建图,智能避障,路径规划等功能;自主研发的光磁耦合技术,无需中间滑环,寿命大大提高;整体结构小巧,性能稳定;开发者仅需控制电机运转,大大的提高了客户的开发效率。 -
Navipack工作流程是什么样的,我该怎么用起来?
答:Navipack工作流程详情见上述流程图,仅需要底盘控制器和navipack算法处理器通信,控制电机的运转即可。 -
底盘的串口通信频率是多少?
答:115200Hz。 -
Navipack上的硬件接口分别是什么用途?
答:Navipack的硬件接口详情见文档《Navipack硬件接口》。 -
Navipack的软件可以接入其它的传感器吗?如超声波,防跌落?软件接口在哪里?怎么接入?
答:可以接入其它传感器,目前支持的传感器有:RGBD、超声波、防跌落、碰撞等;这些传感器接入底盘的电路板,通过底盘处理器的串口把传感器数据发送给navipack算法板,软件接口见《navipack通信协议》。 -
底盘处理器需要给Navipack传输哪些信息?
答:底盘处理器主要是把各种传感器数据发送到navipack,比如:编码器数据,按照通信协议发送到navipack;这里需要注意传感器数据的发送频率,在满足传感器采样周期和通信不过载的条件下,越快越好,尤其是编码器数据,推荐10ms。 -
Navipack会给底盘处理器传输哪些信息?数据格式是什么样的?
答:navipack主要是发送角速度和线速度给底盘处理器,数据格式详见通信协议文档。 -
Navipack模块输出的线速度和角速度,底盘怎么用,频率如何?
答:输出的线速度和角速度对于底盘来说,是期望值;即底盘自身需要实现角速度和线速度闭环控制,navipack是闭环控制的期望值输入;正常情况下,两者是主动输出给底盘使用,频率大概是50Hz。 -
底盘如何实现角速度和线速度闭环?
答:先通过轮子编码器或IMU等传感器采样并换算出当前的角速度和线速度值,然后根据该采样值做 PID 闭环控制,让采样速度趋近于期望速度。 -
请给出底盘处理器与上位机通信的例子?
答:详见《navipack通信协议》中“5.应用层协议”。