三轮-直立变形记浅析 By【逐飞科技】
各位车友周末愉快,借用今天在群里看到的一句话,调车累了也休息休息,找个妹纸去晒晒太阳或者淋淋雨,好好过个周末。逐飞的技术宅继续给大家带来两天前预告过的“三轮-直立变形记浅析”。 先睹为快: 再说配置: 本次三轮变形测试样车采用NXP最新的RT跨界处理器,主频高达500M。具体哪些资源可以到上一贴开源库里去看,一句话----处理能力非常强悍,另外RT支持四编码器正交解码,因此在编码器的选择上选用正交解码的编码器就好,目前市面上大部分都是带方向的更贵一些(比如逐飞店里面的正交解码的编码器一个就要便宜20)。因此利用其正交解码功能还可以节省一点费用。液晶屏幕采用逐飞科技新出的IPS彩色液晶,分辨率高135*240,可以方便的显示总钻风120*188的典型分辨率,但是体积却只有OLED般大小,可以大大减轻重量。姿态传感器用的是ICM20602,替换掉比较老的MPU6050。其实在invensense的官网很早就不推荐将MPU6050用于新产品的设计了,言下之意就是快淘汰了吧,ICM系列属于invensense公司最新一代的产品,如果觉得6050满足自己的要求那么也是可以继续使用的,对于ICM来说属于新一代的产品噪声方面肯定比6050要好,而且ICM支持10M的SPI通讯,本次三轮变形测试样车就采用的硬件SPI通讯,采集速度大大提升,读取六轴的时候大概也就是10-15us之间,如果用6050那么使用IIC通讯读取六轴时间大概为500-1000us之间,可以看出来他们之间的差距,因此在这里强烈推荐已经使用ICM姿态传感器的同学们采用SPI接口进行通讯(6050不支持SPI通讯),想从6050换到ICM20602的也抓紧了。运放芯片采用OPA4377,一个芯片有四路,基本上一个车一片就足够了,使用起来也方便。摄像头无需多说,当然是总钻风+最新130°无畸变镜头(PS:真无畸变),编码器采用逐飞1024线正交解码迷你编码器,驱动采用7843MOS双驱学习模块,车模当然采用前面帖子推荐过的D车+逐飞万向轮改装而来。 机械结构: 关于D车如何改装,万向轮如何选择,前面的帖子已经说过,不再赘述。说一说运行方向,本次采用与传统的方式相反的方向。传统的方式是电池在前作为车头,本次是电池在后,背着电池跑。目的很明显,底板在前可以尽可能的在30CM车长规则限制下提高电磁传感器的前瞻(当然样车这里为了简单操作,因此并未将电感伸出去,大家自己做的时候就可以尽量做到30cm,这样就可以在规则范围内,尽量提高前瞻)。 对于电感的安装做个简单提醒,本来做测试样车时想图方便直接粘在车的底板前端,但后来发现不能太矮,当水平电感贴地的时候,基本是没有电压的,因为这个时候磁场是基本没有穿过电感的线圈的,因此没有电压。所以需要在车模为三轮运行的时候电感距离地面有一定的高度,当然这只是最简单的办法,还有其他更好的传感器架设方案就需要车友们自己构思了。 控制程序浅析: 通过这么多年的比赛沉淀,直立状态的控制以及后面衍生的三轮控制方法其实基本快成熟了,稍微了解过的老司机也大概都知道是怎么回事,可能部分新手还不太明白,这里简单文字描述下。逐飞测试样车的软件控制策略是这样的:直立部分采用互补滤波,简单好用参数也很好调试。直立控制部分采用串级PID来进行控制。一共分为三个环节,速度环à角度环à角速度环。 速度环:期望速度与实际速度做差经过PI运算,速度环计算的值我们可以看做是期望车模达到一个角度,也就是期望角度。 角度环:期望角度与实际角度做差经过PD运算计算出来的结果我们看做是期望的角速度。 角速度环:期望的角速度实际的角速度(也就是陀螺仪的值)做差经过PD运算,这样将整个系统串起来,实际最后调整就是调整车模的角速度。由于我们的内环控制频率提高了很多,使得车模的鲁棒性大大增加,这里需要提示下当内环的频率超过陀螺仪的更新频率之后,控制频率再高将没有意义。 对于串级PID的调试:这里也简单说一下,调试的时候由内到外,内环实现的效果就是控制车模角速度到达你设定的角速度。因此最开始调试的时候应该将期望角速度设置为0,这样效果就很明显,车模自由落体旋转变得较慢、很稳就好了。外环稍微给给参数基本就可以站起来了,实际效果就要调试过程中摸索摸索。一般很快可以摸索出来。 对于三轮和直立两种姿态的切换,其实没有想象中的那么难,我们可以通过改变直立的零点,使得控制车模达到我们想要的角度,另外呢在两个姿态下的速度控制肯定是不一样的,这个看看四轮与直立车的速度控制基本就能明白了,这里需要注意一个问题,就是由于在三轮的状态我们是一直在控制着车模的角度,因此就会出现上坡减速(甚至停下来)与下坡(加速)的问题,因此这个问题需要大家仔细想想如何处理,提供一个简单的思路,识别到坡道之后,可以持续去改变零点去适应坡道即可。方法很多,具体怎么做就靠大家自己尝试了。 样车的每个环节执行时序如下:角速度环1ms执行一次,角度环5ms执行一次,速度环50-100ms执行一次。 关于寻迹就不多说啦,不论是采用摄像头搜线,还是简单采用电磁寻迹都能很好的完成,寻迹方法在逐飞科技之前的帖子里也有讲过,但是要兼顾断路和路障两种元素可能需要两种传感器都采用才比较稳妥,具体以谁为主就靠车友们自己去权衡利弊了。样车虽然采集了摄像头数据与电磁数据,实则仅仅使用了电磁进行引导。目的只是为了推荐一种硬件思路和传感器架设安装思路,同时也秀一下新的IPS液晶屏和显示效果。 友情提示:对于电池支架的安装,由于规则要求在直立状态下需要离地有2cm以上便于观察。所以大家最好检查下自己的车模不要太低,要不到时候判你犯规就GG了。 好了,“三轮-直立变形记浅析”差不多就到这里了,抛砖引玉一下,欢迎车友留言讨论。 PS:也可以加群讨论,“逐飞科技_智能车2部:244861897” 楼下有变形车视频、图片及下期彩蛋,欢迎关注! 本文由“逐飞科技”编辑整理,大神轻拍,欢迎交流,愿智能车世界更美好!
|