一、整体方案
智能车系统采用K60单片机(32位)路径识别线性CCD传感器采集,经过ECU的A/D模块处理后,由ECU发出PWM波,驱动电机对智能车进行加速和减速控制,以及通过对两个电机的差速进行转向控制。
二、车体平衡
陀螺仪利用的是惯性,而加速度计利用的是加速度,前者可以知道物体的姿态,后者可以用来测斜调平
直立行走的小车就像是倒立的单摆,它之所以无法像一般的单摆一样自己恢复到平衡位置,是因为倒立摆的恢复力与偏转的方向同向,不仅不会是倒立摆回平衡位置,反而会越来越偏离平衡位置,因此,要使倒立摆保持平衡,必须施加一个与偏转平衡位置,因此,要使倒立保持平衡,必须施加一个与偏转力相反的外力,只能通过小车前后加速行驶产生的加速度来对抗使其倾斜的趋势
要产生合适的加速度,首先通过陀螺仪采集小车绕车轴的角速度,加速度计采集垂直于车身的加速度,经过换算统一单位之后,让角速度积分逼近加速度计算出的角度与加速度通过卡尔曼滤波算法融合买这个角度即为此次计算节点想对于上次计算节点的角度变化量,通过PD运算即可作为控制电机的PWM值,使电机以 以合适的转速运转,达到控制小车平衡的要求。
三、车体模块
1、电源模块
2、电机驱动模块
3、角度传感器模块
4、路径检测模块
四、转向控制
根据小车偏离中心位置的程度给小车分配不同大小的转向值,基本思想是偏离程度越大给小车的转向值越大,这样可以保证在验证偏离赛道中心的时候给小车最大的转向值保证小车快速回到中心位置,在算法中采用的是PD控制
五、速度控制
利用单片机上的脉冲捕捉端口捕捉车速传感器在单位时间内的脉冲得出当前车速、采用PI闭环控制,根据实际中不同情况及快速调整PWM波使电机及时调整转矩,最终使小车稳定与预定的目标速度,同时为了避免速度控制对直立控制的干扰,在测量电机转速时取10个主循环周期之和,PI控制的输出量也初10
除此之外,在普通赛道上时,也对小车的速度偏差进行了限制,超过限制则提高或减小加速度计的零偏值,使其向相应的方向倾斜,产生一个额外的加速度。