第八届全国大学生智能汽车邀请赛技术报告
了使系统具有更好的线性,首先需要对电机死区进行补偿。
4.2.5 车模编码器测速模块
由于直立车转弯时是靠差速来转,所以会有左右两个轮子速度不一样的情况出现,为此我们采用了CD4051开关,分时计数左右两个编码器的速度脉冲,11引脚来控制选择计数13和14哪个通道的脉冲数,3脚接PT7口对脉冲数计数,由于需要知道车模的方向,所以我们采用两个编码器,一个是157线,不带有检测车轮方向功能,一个是512线,可以检测车模方向。
图4-12 CD4051原理图
4.2.6 液晶及蓝牙模块
本届比赛光电平衡组采用TSL1401系列的线性CCD作为传感器进行循迹,
20
第四章 硬件电路设计
为方便查看CCD采集来的道路信息以及二值化后的图像,我们自制了液晶模块,并加有按键功能,液晶与按键配合作为人机接口,实现操作员与单片机之间的信息交换,这样可以大大地提高调试的效率,由于采用了两个CCD,通过按键可以实现上下CCD的切换,为调试带来很多方便。
图4-13 液晶及按键模块
调试参数时,在程序里面改好参数再用BDM烧写进去会很麻烦,因此运用了单片机的异步通信模块来把内部数据以数据包的形式发到无线数据传输模块上,然后无线模块再传输到电脑上查看,我们采用的是济南华茂科技公司的HM系列蓝牙模块,HM系列蓝牙模块采用CSR BlueCore芯片,配置6-8Mbit的软件存储空间,支持AT指令,用户可根据需要更改SPP 角色(主、从模式)以及串口波特率、设备名称、配对密码等参数,使用灵活。
图4-14 蓝牙模块
车模整体电路板PCB图如下:
21
第八届全国大学生智能汽车邀请赛技术报告
图4-12 最小系统板
图4-13车模电路板顶层
22
第五章 软件系统设计
软件的主要功能包括有:车模运行状态检测,电机PWM输出,车模运行控制,其中包括直立控制、速度控制、方向控制,车模运行流程控制,程序初始化、车模启动与结束,系统界面,包括状态显示、上位机监控、参数设定等。其中车模运行控制是核心,为了简化系统,我们把三个部分的输出做简单的叠加后输出给两个电机。其实三个环并不是完全的独立的控制环路,而是相互协同配合的,这三部分的参数调整是后期控制算法调试所要做的主要工作,系统主程序框架如右图所示。
5.1 直立控制设计
这部分是软件设计中最基础的一个部分,因为所有的程序运行必须建立在小
车可以站立不倒的情况下进行,所以对车模的直立稳定性就提出了较高的要求,我们在车模的直立控制上采用的是PD控制,通过角度传感模块和上位机采回车模倾角数据,然后利用MATLAB拟合出跟随平滑曲线,以此方法来调整出合适的PD参数,由于机械结构有所改进,车模重心比去年降低了很多,并对去年的算法进行了改进,所以使小车拥有更强的直立刚度。 5.1.1 小车直立模型的建立
两轮直立小车的模型是一个倒立摆模型,它本身是一个不稳定非线性的系统。单摆模型能够稳定在垂直位置的条件有两个:(1)受到与位移相反的回复力;(2)受到与运动速度相反的阻尼力。
23
第八届全国大学生智能汽车邀请赛技术报告
图5-1 单摆受力分析 图5-2 不同阻尼下的单摆运动
而倒立的摆中,重力在运动方向上产生的力是与运动方向一致的,不仅不能提供回复力而且还会加速摆倒下,但是可以通过轮子的运动来提供回复力:
图5-3 通过车轮运动来达到车模平衡
这个回复力是由惯性力产生的,如下图受力分析:
24