新闻  |   论坛  |   博客  |   在线研讨会
电动车跷跷板
一周心一 | 2010-11-03 08:34:16    阅读:5007   发布文章

 

        电动车跷跷板
 
摘要  系统通过对电动车的运动控制实现在规定时间内使跷跷板在有无配重的情况下均达到平衡状态。以AT89S52单片机为控制核心,通过光电传感器检测黑线来引导电动车在跷跷板上运动以及寻找初步平衡点,以倾角传感器MSIN-LD60测量跷跷板的倾角,然后微调电动车的运动以达到平衡。最终实现在不加配重的情况下30秒内到达跷跷板中心C附近,60秒内达到平衡状态,在加配重及配重变化时都能够自动寻找到平衡位置并保持平衡。
    关键词  跷跷板;电动车;平衡点;AT89S52
 
 
1.设计方案
1.1 系统设计
    根据题目要求,系统可以分为控制部分和信号检测部分.控制部分则包括显示模块、控制模块、电机驱动模块三个基本部分。信号检测部分由光电检测及倾角测量模块组成,其中光电检测用以检测黑线从而引导电动车在跷跷板上运动以及寻找初步平衡点,倾角测量模块用以测量跷跷的倾角。在平衡点附近设置黑线作为标志,当光电传感器检测到标志时,电动车缓慢运动进行微调,每移动一次,测量一次电动车的倾角a。接着判断a是否小于等于误差允许的角度|δ|,如果不在误差允许范围之内,则判断角度a的极性,控制电动车向前或向后移动,直到角度a达到误差允许范围之内,从而确定电动车在跷跷板上的平衡点,控制跷跷板达到平衡的原理图如图1所示:
图1 平衡点确定的原理方框图
1.2 各模块方案设计与论证
1.2.1 控制器模块
    方案1:采用现场可编程逻辑器件(PFGA)。利用VHDL硬件描述语言进行编程,实现对小车的控制。但是FPGA面积较大,浮点运算编程比较复杂,而本系统对输出处理的速度要求不高,无法使其高速处理能力得到使用。
    方案2:采用Atmel公司的AT89S52单片机。单片机方便进行各种运算,软件编程灵活,成本低、体积小、功耗低,在本系统中使用非常合适。因此,我们选择了此方案。
1.2.2 电机选择模块
    对于电动车来说,要实现对它的精确控制,其车轮驱动电机的选择就显得十分重要,我们考虑以下两种方案:
    方案1:使用步进电机。步进电机虽可实现精确定位,但输出力矩较小,不能驱动大负载,随着转速的增大,它的转矩出力减小,对电源的要求高,且驱动电路复杂。
    方案2:采用直流减速电机。由于其内部由高速电动机提供原始动力,通过变速(减速)齿轮组进行减速,可以产生很大的扭力,且所需的驱动电流较小。
并采用专用驱动芯片L298N进行驱动,L298N是一套具有高电压大电流的全桥驱动芯片,一片L298N可以控制两个直流电机。用该芯片作为电机驱动,操作方便,稳定性好,易于实现对直流电机转速及正反转的控制。其原理方框图如图2所示:
图2 L298N驱动原理方框图
我们选择方案2。
1.2.3 光电检测模块
    方案1:用红外发射管和接收管搭建光电对管。由红外发射管发出红外线,当接收管接收不到发射管发出的红外线时则检测到黑线,输出高电平。基本能满足系统的要求,但工作不稳定,且容易受外界光线的影响。
    方案2:用ST188型光电对管。ST188为一体化反射型光电探测器,其发射器是一个砷化镓红外发光二极管,而接收器是一个高灵敏度、硅平面光电三极管。其内置可见光过滤器能减小离散光的影响,体积小,结构紧凑,工作性能稳定。其原理方框图如图4所示:
图3 光电传感器检测的原理方框图
   为方便使用,我们选择了方案2。
1.2.4倾角测量模块
    方案1:采用角度传感器。由UZZ9001和KMZ41组成角度测量模块,并使用矩形磁铁进行配合测量磁铁与KMZ41芯片之间的角度。UZZ9001将KMZ41输出的正余弦角度信号转换为数字信号,并通过SPI串口输出。但KMZ41调试比较困难,不方便用于测量倾角。
    方案2:使用倾角传感器模块MSIN-LD60。 采用MSIN-LD60测量跷跷板纵向和横向的倾角,并用RS-232将倾角的数据输出。它具有0.1度的高分辨率,精度高,成本较低,方便进行倾角测量。
    根据以上分析,本系统采用方案2。  
1.2.5 车载显示模块
    根据要求,需要显示电动车行驶的时间以及当前的状态,我们考虑以下方案:
    方案1:采用用8位数码管显示。数码管虽具有低功耗,耐老化,体积小等特点。但其只能显示0-9的数字和少量的字符,不能显示汉字、复杂的字符和图形。
    方案2: 采用LCD进行显示。液晶屏(LCD)具有低功耗、影像稳定、可视面积大显示清晰、图形美观及显示内容多等特点。且可与单片机直接相连,电路设计简单,我们选择采用此方案。
2.系统理论分析与计算
2.1 参数计算   
    题目要求电动车自行寻找其在跷跷板上的平衡点。由给定条件可知:
    跷跷板的最大倾角θ0: θ0=arcsin(70mm/800mm)≈5.58°
    电动车重: m=1.5Kg,车轮半径:r=0.035m
    误差允许范围内的最大倾角|δ|: |δ|=arcsin(40/1600)=1.59°
    电动车允许的最小速度V: V=800mm/30s≈26.7mm/s=0.0267 m/s
    电动车在跷跷板上受力分析,如图4所示:
图4 小车在跷跷板上受力分析图
    沿跷跷板面的分力: Fx=mgsin5.58°=1.5×9.8 sin5.58≈1.29N
    电动车对板面的压力: Fy= mgcos5.58°=1.5×9.8 cos5.58≈14.64N
    电动车与板面的磨擦力: f=μFy≈0.1×14.64=1.464N(μ取值为0.1)
    电机所需最小输出功率: P=(Fx+ f)×V=(1.29+1.464)×0.0267≈0.074W
    电机所需最小转动力矩: M=(Fx+ f)×r=(1.29+1.464)×0.035≈0.096F·m
 2.2 理论分析  
    系统用的直流减速电机的型号为GB37Y500-30,在6V的电压下,当转速为ω=72r/min时,转矩为M=0.3kg.cm,功率为P=0.22W,电流为I=0.096A, 其转速、转矩、功率均满足设计要求。
    直流减速电机使用L298N驱动,L298N最高电压可达46V,最大输出电流为4A,完全有能力驱动直流减速电机GB37Y500-30。
    在平衡点附近划上黑线,车子行驶一段时间后检测到黑线,进入微调阶段,当实时倾角|a|≤|δ|时说明系统达到平衡状态。
3.电路设计
3.1 直流电机驱动电路设计
直流电机驱动电路主要用来控制直流电动机的转动方向及速度,改变直流电动机两端电压的极性就可控制电机的前进与后退。采用电机驱动芯片L298N来实现对直流电机的驱动,AT89S52单片机控制PWM的占空比就可以控制电机的转速。在使能端输入PWM信号,控制输入端IN1和IN2输入控制电机状态的信号,可实现控制电机的正反转,如表1所示。
表1 L298N控制电机正反转状态表

使能端
控制A
控制B
电机状态
 
高电平
高电平
   低电平
    正转
 低电平
高电平
    反转
            同高或同低
    刹车
    低电平
    任意
    任意
 自然停转

    驱动电路设计如图4所示:
图5 L298N电机驱动电路
3.2 光电检测电路设计
    光电传感器电路如图6所示:
     
         图6 ST188光电对管寻迹电路                   图7 光电传感器安装示意图
    在图6所示电路中,由R3=(VCC-VD)/ID可算得R3为510Ω限流电阻。当有光反射回来时,光电对管中的三极管导通,此时VT1饱和导通。当检测到黑线时,光电对管中的三极管不导通,其集电极输出高电平。
    为确保检测的准确性,我们按照图7所示对光电管进行安装。
3.3 LCD显示电路设计
    我们使用的是带中文字库的12864液晶显示屏,可实现良好的界面显示。其接口电路如图8所示: 
图8 LCD显示电路
4. 程序设计
    本系统在WindowsXP环境下采用keil软件用C语言进行编程,控制单片机的运行,进而实现对黑线的检测和跷跷板倾角的测量,并实现对减速电机的控制。
4.1 系统主程序设计
    主程序主要起到一个导向和决策功能,决定什么时候电动车该做什么,而车子各种功能的实现主要通过调用具体的子程序。主程序流程图如图9所示:
 
        
    图9 主程序流程图    图10 黑线检测子程序流程图    图11 平衡查询子程序流程图      
4.2 黑线检测子程序设计
    黑线检测子程序主要用于检测黑线,然后根据检测的结果使电动车作出相应的动作,程序流程图如上图10所示:   
4.3 平衡点查询子程序设计
    在平衡点附近设置一条黑线,当小车检测到黑线时,小车减速,并不断测量跷跷的倾角a。当ε∣1.5o∣则我们认为系统达到平衡。其程序流程图如上图11所示:
5.系统测试
5.1 测试仪器及设备
表2 测试使用的仪器设备

序号
名称、型号、规格
数量
备注
1
三角板,精度0.001m
1
宁波得力集团有限公司
2
秒表,精度0.01s
1
深圳天福电子有限公司

5.2 指标测试
5.2.1基本要求时间测试
 时间测试是对小车到达各点所用的时间进行测试,可分两个部分进行:
(1) 基本部分
    表3 时间测试结果

到达位置
中点C(t1)
平衡点(t2)
末端B(t3)
始端A(t4)
时间(s)
18
42
59
88

(2) 发挥部分
   表4 时间测试结果

到达位置
中点C(t1)
平衡点(t2)
新平衡点(t3)
时间(s)
17
46
75

    5.2.2 平衡测试
平衡测试是指对小车从平衡点附近开始寻找平衡点到小车确定平衡点或者从平衡点到新平横点过程中各参数进行测试,结果如表3所示:
表5 平衡测试结果

条件
平衡用时间(S)
A与地距dA(mm)
B与地距离dB(mm)
|dA-dB|(mm)
无配重
21
75
85
10
加配重
24
73
87
15
配重增加
28
76
84
8

6.测试结果及误差分析
    根据测试结果,运动到C点附近的时间t=18s<30s
    小车寻找平衡点的平均时间t=( 21s + 24s+28 )/3≈24.3S
    平衡点的平均误差d=( d1 + d2 + d3 )/3=(10+15+8)/3= 11mm<40mm
    可知,测试结果满足题目的要求,很好地实现系统的各项功能。
7.结论
    本系统通过光电检测、角度测量及电机驱动在跷跷板上实现在不同情况下自动寻找平衡点。系统能很好地完成题目的要求,关键在于选择了精度高性能良好的倾角传感器MSIN-LD60测量跷跷的倾角和先粗调后微调的平衡点确定方案。测试表明,电动车能够很好的完成题目基本部分及发挥部分的要求,误差较小,并通过液晶实时显示电动车状态,直观形象。
参考文献
[1] 黄智伟.全国大学生电子设计大赛电路设计[M].北京:北京航空航天大学出版社,2006.
[2]黄智伟.全国大学生电子设计大赛系统设计[M].北京:北京航空航天大学出版社,2006.
[3]许大中,贺益康.电机控制[M].浙江:浙江大学出版社,2005.
[4]高吉祥.全国大学生电子设计竞赛培训系统教程[M].北京:电子工业出版社,2007.
 

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客