首页 > 新能源汽车

基于单片机的电动车跷跷板

来源:新能源汽车网
时间:2020-05-13 16:05:28
热度:

基于单片机的电动车跷跷板  方案  1.实现方法  考虑到稳定性和爬坡能力,选择玩具坦克作为小车的主体。车前安装红外光电开关以接收引导信号,安装红外反射对管用以在跷跷板上寻迹前进。

  方案

  1.实现方法

  考虑到稳定性和爬坡能力,选择玩具坦克作为小车的主体。车前安装红外光电开关以接收引导信号,安装红外反射对管用以在跷跷板上寻迹前进。角度传感器安装在坦克底盘的中心平面上用以检测跷跷板的状态。车的后部安装了以 CH451 驱动的 8 位数码管来显示坦克的行驶路程和时间。对双电机的驱动我们使用了专用芯片 1298N,保证了驱动的可靠性和精确性。微控制器采用凌阳单片机。电源部分采用 7.2V 大功率镉镍电池组,经 LM7806 稳压后为双电机供电,经 LM7805 稳压后为单片机和其它模块供电。无线收发模块用以向远处的监视平台实时发送小车与跷跷板的状态信息。系统方框如下图所示。

  2.方案论证与设计

  (1)微控制器的选择

  采用凌阳 16 位单片机 SPCE061A 进行控制。

  SPCE061A 内部集成 7 路 10 位 ADC 和 2 通道 10 位 DAC,可以直接用于电压测量时的数据采集,以及数字控制输出及语音输出;I/O 口资源丰富,可以直接完成对键盘输入和显示输出的控制;存储空间大,能配合 LCD 液晶显示的字模数据存储。采用 SPCE061A 单片机,能将相当一部分外围器件结合到一起,使用方便,抗干扰性能提高。

  (2)车架的选择与设计

  本设计对车速要求不高,而对稳定性、精确度、平衡能力及爬坡能力要求较高。玩具坦克兼具以上各项优势,故此选作小车底盘。为了方便各个模块的安装将原车的炮塔拆去、只保留底盘和电机。为了测量行驶里程的方便,在坦克一侧的主动轮上均匀粘贴四片小磁钢,通过单片机对霍尔开关输出脉冲的计数完成对路程的精确测量。

  (3)电源的选择与设计

  本系统要求 6V 和 5V 两种电压供电,故选用 7.2V 大功率镉镍电池组,经由 LM7805 及 LM7806 输出 5V 和 6V 电压、分别为电机和单片机供电,实现了控制电路电源和电动机电源隔离,避免了由单电源供电时、电机起停产生的大电流对单片机和其它模块的影响。如下图所示。

  (4)电机及其驱动芯片的选择与设计

  本车采用原车自带的双直流减速电机,仅需 6V 即能可靠工作。电机的驱动选用专用驱动芯片 L298N,该芯片可分别独立控制两路电机的起停和转向,保证两路电机参数的对称,有利于保持坦克行驶的稳定性和精确性,也降低了电路的设计难度。电机驱动电路如下图所示。用单片机的五个端口给出 PWM 信号和控制信号即可实现直行、转弯、加减速、后退等动作。

  (5)显示模块的选择与设计

  根据要求,只需显示小车在跷跷板上行驶的时间和距离,显示内容较少且均为数字,故选用了相对于点阵式液晶显示器造价低很多的数码管。其中五位用以显示路程,余下的三位用来显示行驶时间。八位数码管采用专用键盘显示管理芯片 CH451 驱动。显示模块电路如下图所示。CH451 的 SEGO~SEC7 分别控制数码管的 8 个段,DIGO~ DIC7 用于选通各个数码管进行动态显示。单片机仅用三个端口即可完成 8 位数字的动态显示。而对于监视平台我们选择点阵式液晶显示器,与数码管比较其优势在于:显示内容更加丰富,人机界面更加友好,监视人员易于取得信息。

  (6)引导和寻迹模块的选择与设计

  为引导小车准确驶上跷跷板,在跷跷板的一端安装一只具有广角发射能力的红外发射器,在小车的前端安装一只红外反射开关的接收管以接收广角红外发射器发出的引导信号。在车的前端底部安装红外反射对管以检测跷跷板上的黑色轨迹以循迹前进。在车的后端也安装有红外反射对管以用于倒车时的寻迹。

  下图为引导小车驶上跷跷板所用引导电路。大功率红外发射管发出的红外光可以保证小车前端的光电开关在 30cm 以外准确地接收到。一旦光电开关接收到红外信号便在其输出端输出高电平,使三极管导通驱动蜂鸣器发出声响。同时单片机通过采样光电开关的电平便可得知光电开关的状态、再控制电机做出相应的动作,使小车沿着红外光引导的方向前进并准确驶上跷跷板,继续在跷跷板上寻迹前进。

  沿跷跷板的中间线铺设一条黑胶带,由于黑胶带与其两旁的木板对红外线的反射率相差很大,故安装在车前端的反射式红外传感器在检测到黑胶带和木板表面时输出高低不同的电压,这些电压信号通过凌阳单片机自身集成的 7 通道 10 位模一数转换器(ADC)进入控制器与事先设定的临界值比较,把电压转换为高低电平。再通过一定的控制算法区分黑胶带和木板,使小车沿黑胶带前进和倒退,其电路图如下图所示。

  (7)角度传感器的选择与设计

  为了控制小车在跷跷板上的进退和停止,必须对跷跷板与水平面之间的角度进行测量。我们选用双轴倾角传感器 ZCT245AL-485 来测量角度,其测角范围为 -450 到+450,输出采用半双工通信方式并采用 RS485 通信协议,具有零点设置、波特率调整等功能。其分辨率为 O.l。,重复性好,工作电压为 5V 非常适合本系统的要求。ZCT245AL-485 普通型双轴倾角传感器直接通过 RS-485 总线输出两轴与水平面之间的夹角。将角度传感器固定在车底盘的水平面上,使其 X 轴与车的宽度方向平行,Y 轴与车的长度方向即车的前进方向平行。这样,当车爬坡时 Y 轴输出正的角度,X 轴输出 O;下坡时 Y 轴输出负角度,X 轴输出 O。单片机通过检测 Y 轴输出角度即可获知小车的位置和跷跷板的状态,然后控制小车的进退以保持跷跷板的平衡。其 RS-485 通信电路如下图所示:角度传感器的输出经由转换器 MAX485 转换为标准电平后与单片机进行串行通信,实时读出小车的倾斜状态并由此控制小车的动作以控制跷跷板的倾角。

  (8)无线收发模块的选择与设计

  我们为系统增加了与另一单片机无线通信的功能,该功能的实现赖于无线收发模块 PT2262/2272。其中 PT2262 将载波振荡器、编码器、发射单元集成于一体,使发射电路变得非常简洁。接收芯片 PT2272LA 是非锁存型 4 位数据输出,有 8 位地址编码,有效地防止 r 各个无线模块之间的相互干扰。在我们的设计中小车上的单片机通过 PT2262 向监视单片机实时发送诸如“启动”、“停止”、“平衡”等状态信息,监视单片机通过 PI2272 接收这些信息并通过液晶屏显示和喇叭发声将信息传递给选手,使选手可以对小车和跷跷板的状态进行远距离监视。

  (9)跷跷板的设计

  跷跷板是本设计的关键,我们采用高强度复合板主体加铝合金边框的结构防止其变形,并加装了必要的减震装置来增强其抗干扰能力。

  二、理论分析与计算

  1.理论计算

  (1)平衡时角度控制范围的计算根据题目要求 ldA-dBl≤40mm,故在下图中水平面 H 与跷跷板平面之间的夹角 D 度数的绝对值 IDI≤arcsin(ldA-dBI/IABl)=1.432 度。由于所用角度传感器能分辨的最小角度为 0.1 度,故必须控制小车使角 D 的度数小于+1.4 且大于 -1.4。

  当 D≥+1.4 度时控制小车前进,当 D≤-1.4 度时控制小车后退,以此来调节整个系统的重心,恢复和保持跷跷板的平衡。

  (2)路程的计算

  由于玩具坦克特殊的结构,我们无法使用传统的光电码盘来测速和计程。为此在坦克的一个主动轮上粘贴四片小磁钢,通过下图所示霍尔传感器对小磁钢进行检测即可在其输出端获得一列脉冲。单片机通过对脉冲计数即可通过计算得知路程信息。设 S 表示路程,d 表示主动轮直径,N 为对脉冲的计数值,则有:S=πNd/4.

  2.控制方法

  (1)电机的控制

  根据下表,可利用凌阳单片机的五个端口来控制电机。其中四个端口分为两组去分别控制两个电机的正反转和停转,使两侧电机一正一反转动即可实现小车的左右转弯,此法控制的小车转弯能力极强,可以原地转过任意角度,使小车的机动性能大大提高。其余一个端口输出 PWM 信号接在两电机在 L298N 上所对应的使能引脚 6 和 9 来控制电机的转速。凌阳单片机可输出占空比和频率均可调的 PWM 信号。其占空比从 1/16 到 14/16 分为 14 档,以此可方便地控制电机转速。

  (2)跷跷板倾角的控制

  对跷跷板倾角的控制我们采用闭环反馈的方法,以满足题目对控制精度的高要求。下图是闭环反馈的示意图,角度传感器实时采样跷跷板的倾角 D 送人单片机与预先设定值进行比较得出角度偏差 E。单片机对 E 经过简单的 PID 控制算法得出对电机动作的适当方案 U,该方案通过小车作用于跷跷板以使其倾角恢复或保持在题目要求的范围内,即使角 D 满足 IDI≤1.4 度。

  三、程序设计

  1.软件设计思想

  针对本系统中角度传感器采样较慢,控制对象跷跷板惯性大、滞后大的特点,我们选用了增量式按偏差的比例、积分、微分进行控制,即增量式数字 PID 控制。

  其算式为:

  △u(kT)=Kp[e(kT)-e(kT-T)]+Kie(kT)+Kd[e(kT)-2e(kT-T)+e(kT-2T)]

  其中 Kp、Ki、Kd 分别表示比例系数、积分系数和微分系数。该算法无需累加,控制增量的确定仅与最近三次的采样值有关,较容易通过加权处理获得比较好的控制效果。

  比例控制 P 是一种最简单的控制规律,其控制作用大小与偏差的大小成正比,调节迅速。但对于大多数惯性环节,Kp 太大会引起自激振荡并且仅使用比例控制无法消除静差。积分控制可以弥补单纯比例控制的不足,消除系统的静态误差,因为只要存在偏差,积分控制的输出总是用来减小静态误差,直到偏差为零、积分作用才停止。系统采用比例积分控制即 PI 控制可以消除静态误差,但是系统的超调很大,调节时间很长。

  为改善动态性能还必须引入微分校正 D,微分的控制作用与偏差的变化率有关,偏差变化率越大其调节作用越强。微分控制可以预测偏差,产生超前的校正作用,改善系统的动态性能。结合上述三种控制方法,并通过试验不断地对相应参数做出调整,最后由此编出的软件拥有很强的适应能力,对控制对象的控制相当精确、快速。

  2.工作流程图