2005年电子大赛二等奖凌阳SPCE061A 悬挂运动控制系统江苏大学张寿龙田兆垒赵生禄_第1页
2005年电子大赛二等奖凌阳SPCE061A 悬挂运动控制系统江苏大学张寿龙田兆垒赵生禄_第2页
2005年电子大赛二等奖凌阳SPCE061A 悬挂运动控制系统江苏大学张寿龙田兆垒赵生禄_第3页
2005年电子大赛二等奖凌阳SPCE061A 悬挂运动控制系统江苏大学张寿龙田兆垒赵生禄_第4页
2005年电子大赛二等奖凌阳SPCE061A 悬挂运动控制系统江苏大学张寿龙田兆垒赵生禄_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、总体设计方案的硬件连接图如图2.2所示。悬挂运动控制系统(6)作者:江苏大学张寿龙田兆垒赵生禄来源:凌阳科技教育推广中心录入:随风字A摘要:本系统以凌阳SPCE061A单片机为控制核心,采用 L298芯片作为两只步进电机的驱动模块,利用1X4键盘完成对相关参数的设定, 采用液晶显示器显示参数信息,采用1个反射式光电传感器来检测 板上所标黑线的位置;使用了一套精确的软件算法,有效地实现了两路电机的配合转动,使得悬挂物体能 够按照几种不同的设定路径准确移动,完成题目的各项要求。一、方案论证1、单片机的选择方案一:采用89C51单片机实现,单片机软件编程自由度大,可用编程实现各种控制算法和逻辑控制。

2、51单片机在线操作不易掌握,但是89C51需外接模数转换器来满足数据采样,硬件电路相对复杂。另外, 需要用仿真器来实现软硬件调试,较为繁琐。方案二:采用凌阳SPCE061A单片机实现,该单片机内部资源丰富,集成了 A/D, D/A,易于数据的采集, 同时由于其在线仿真技术,软硬件调试方便,对于电子设计竞赛这种时间紧,任务多的开发来说是极为有 利的。基于上述分析,我们拟选择方案二。2、电机的选择方案一:采用直流 电机控制 悬挂物体的运动,直流电机力量大,能获得较大的启动转矩,转动速度快, 但由于存在机械触点,直流电机容易产生噪声,而且单独使用时不能完成位置控制,需要配以传感器才能 控制定位。方案

3、二:采用步进 电机控制悬挂物体的准确运动,步进电机不需要使用传感器就能精确定位,而且通 过给定的脉冲周期,能够以任意速度转动,定距运动较精确。虽然步进电机不能高速转动,但根据题目要 求的时间和移动距离,步进电机完全能够符合要求,是该种要求下广泛使用的一种电机。基于上述理论分析,我们拟选择方案二。3、黑线检测模块选择检测板上黑线的基本原理是:光线照射到板上并反射,由于黑线和白纸的反系数不同,根据接收到的 反射光强弱判断是否黑线。方案一:可见光发光二极管与光敏二极管组成的发射-接收电路。这种方案的缺点在于其他环境光源会 对光敏二极管的工作产生很大干扰,一旦外界光亮条件改变,很可能造成误判和漏判,即

4、使是采用超高亮 发光二极管可以降低一定的干扰,但这将增加额外的功率损耗。方案二:脉冲调制的反射式红外发射-接收器。采用带有交流分量的调制信号,可以大幅的减少环境光 源的直流分量的干扰,但由于该红外发射管的最大工作电流取决于平均电流,该最大电流需要通过调节占 空比来调节;而且需要添加额外的电路和程序,本题中并不需要很大的电流,故不需要采用该管子。方案三:不调制的反射式红外发射-接收器。由于采用红外管代替普通可见光管,可以有效的降低环境 光源的干扰,尺寸小、质量轻、灵敏度高,对辅助装置的要求最少,对人眼无伤害,采用不调制的反射式 红外发射-接收器完全可以有效的降低干扰,而且方便可行,能够准确的实施

5、检测。基于上述考虑,我们决定采用方案三。4、电源的选择方案一:所有器件都采用单一电源。这样供电虽然比较简单,但是由于电动机启动瞬间电流很大,而 且给定脉冲信号驱动的电机电流波动较大,会造成电压不稳、有毛刺等干扰,对单片机系统造成严重的干 扰,缺点十分明显。方案二:双电源供电。将电机驱动电源(12V)和单片机的供电电源(5V)完全隔开,这样设计可以彻 底消除电机驱动所造成的干扰,提高了系统的稳定性。基于上述考虑,所以我们选择方案二。5、显示的选择方案一:用LED数码管显示设定的坐标,本题中只需要六只LED数码管进行动态显示即可以显示X轴 和Y轴的坐标,优点是接口简单,易于控制,缺点是只能用于比较

6、简单的数字显示。方案二:用LCD液晶显示器显示,优点是能显示更多的字符,有着良好的人机界面,缺点是控制比较 复杂。由于凌阳SP CE061A单片机有着丰富的硬件资源,加上现代社会的发展对人机界面的要求越来越高。基于上述考虑,所以我们选择方案二。二、详细软硬件设计根据题目要求和上述论证,本系统的系统框图如图2.1。LCD显示器图2.1系统结构框图图硬件连接图2.21、硬件设计 (1 )单片机最小系统由凌阳单片机SP CE061A及键盘和LCD显示器组成。SP CE061A是凌阳科技推出的一款16位结构的 叮nSP系列微控制器。SPCE061A里内嵌32K字的闪存(Flash ),较高的处理速度使

7、叮nSP能够非常容易地、快速地处理复杂的数字信号。SP CE061A单片机内置8路ADC 2路DAC且集成开发环境中,配有很多语音播放API函数,用SPCE061A实现语音播放极为方便。另外,该芯片内置在线仿真、编程接口,可以方便实现在线调试。考虑到本题目所应用的复杂程度和系统资源的分配,采用最简单的直接1X 4键盘数据输入端口。显示模块用的是 OCM4X8液晶显示器,它是128 X 64点阵的汉字图形型液晶显示模块,可显示汉字及图形,内置国标 GB2312码简体中文字库(16X 16点阵)、128个字符(8 X 16点阵)及64X 256点阵显示RAM(GDRAM。具有多种功能:光标显示、画

8、面移位、睡眠模式等。界面比较丰富,人机操作更直观。其外接接口可直接与 CPU连接,提供两种方式来连接微处理机:8-位并行方式和串行方式。串行进行数据传输,可以节省单片机资源。本系统中就用了串行方式。(2)步进电机驱动模块电路的实现系统中选用二相四拍步进电机,L298N (用于输入标准TTL逻辑电平、输出电压、电流要求比较高的驱动电路,诸如继电器、电磁阀、DC或步进电动机等设备中)作为双桥驱动器件。每次绕组受到激励,电动机轴就旋转一圈的几分之一。为使其正确的旋转,绕组必须按正确的顺序受到激励。若励磁信号正向传送,则步进电机正转;励磁信号反向传送,则步进电机反转。由脉冲信号控制电动机,故调节脉冲信

9、号的频率便可改变步进电机的转速。L298N内电路如图 2.3。图2.3L298N内电路由电路可知,二相四拍电动机的励磁方式输入如表2.1。表2.1二相四拍电动机的励磁方式输入ABCD11000110001110012.4。利用单片机很容易满足步进电机的工作条件,且容易控制。电路连接见图D4TAAJ2!l11BJC10!D1 1mMi U FW11mwi11L 1111 cD5DSD7D81 1,SE113E2C1图2.4L298N的电路连接示。(3)光电检测模块的电路设计与实现为了检测板上黑线的位置,在悬挂物体中心上固定一个反射式红外发射-接收器。具体电路如图2.5所10kI 100kF图2.

10、5 反射式红外发射-接收器电路发射部分采用红外发射管,实现检测系统信号的输出。接收部分的光敏二极管在不同的的光照强度下,电阻值会大幅改变。本实验中,我们把电路参数设置为只对黑色敏感。当检测不到黑线时,发射管 发出的红外光经板面反射后被接收管接收,接收管导通,斯密特管输出低电平,当检测到黑线时,发射管I/O 口的高低电平来判断电机的运动方发出的红外光不能被反射,斯密特管输出高电平,单片机通过检测 向。由于是采用四个方向的同时检测,故单片机的判断能力就明显提高,缩短了检测判断时间,同时也增 强了纠错能力。2、软件设计主程序要完成上述任务,并且控制的比较准确,实现的算法很重要。尤其是悬挂物体从一个位

11、置坐标运动到另一个位置坐标的算法,是实现任务的基础。按照题目要求在lOOcmX 80cm的图上定出各个点的坐标,现在以左下角为坐标原点,以一厘米为一个单位,标出横轴和纵轴的数据,如图2.6。用x和y来表示坐标的位置,用I表示左边的绳子的长度,用 r表示右边的绳子的长度(注意:我们这里的长度是指悬线与滑轮的触点和图中任一点(X, y)间的直线距离)。x和y与I和r的关系函数如下:/二 Jq+E: + (1巧-为2r = J(94R2+(115-y)2现在我们来计算出相应的电机转动的拍数。设初始位置坐标为(x1,y1),目标位置为(x2,y2)时, I和 r为I和r的微小变量:务子程序模块的调用等

12、。其流程图如图2.7。AmA&二山X36W2腻 A0 二MX36W2腻又知我们采用的二相四拍步进通过 I和r的变化,就可以控制电机的转动拍数,进而控制物体的移动。根据圆周的数学关系,要使悬物左右相应移动I、r,则左右两电机需转动过的角度为:电机,每一步进为1.8 ,则得到左右两个电机需转动的拍数为:由此我们就可以根据上面的计算来控制电机输出脉冲,驱动电机以一定的步进节拍运转,拖动悬挂物体从初始位置运动到目标位置了。本系统外围电路比较简单,但是软件设计相对较复杂。既要考虑系统完成任务的具体执行,又要考虑总体组成的易于实现性。从软件的功能方面看,主程序主要完成坐标设置,键盘的扫描及其显示,相应任开

13、始系统初始化键盘扫描取谴值NYYY调用曲翩毎艮踪程序是否有爆按下?是艮即2键?疋Key4键?Y调用定点同程序调用自定辆越程序调用画圆程序SD显示菜单和坐标清看门狗图2.7 主程序程序流程图在发挥部分(1)中,要求能够显示物体中画笔所在位置的坐标。本系统主模块中把此项功能独立出去,放在坐标计算后,直接输出并在LCD显示。这样就与任务子程序的调用分离开来,易于实现。(2)定点运动程序定点运动中不需要关心悬挂物体在运行过程中的轨迹,只考虑原点与设定点之间的距离,根据这一距 离,利用公式直接计算出左右两根绳子最终应该收放的相对距离,根据这一距离控制电机的转数。则基于原点坐标(0,0),设定坐标(X,

14、y),和两边的绳子的长度的函数关系为:设定点左右绳长,J = j(15+沪+(1 巧*)2防95刁吋15原点左右绳长,4 = 715M15=lli97cmFq二9宁+111 = 149.16cin左右电机运线所需差值,A/ =几-11 )97Af二r厂149.16其步进角度为,2 腻3 141593.14159代入电机步进单位1.8 ,得左右电机步进拍数,ATJV -_L=63.662A/】1於A# 兀=63.662加1.8其实现程序流程图如图 2.8所示。图2.8定点运动程序流程图(3)自定义轨迹程序在自定义轨迹模块中需要让悬挂物体沿任意设定形状的一条曲线来运行。在该模块中,设定的曲线是一条

15、一个周期的正弦波,该正弦波的波长是72cm,从(0,25)沿轨迹走到(72, 25),幅值为20cm其72个数据,基本可以达到精度要求。基本原理是在程序中预先设计一个正弦波坐标表格,表中放置正弦波初始点坐标(0, 20),则所行轨迹上各点(x,y)坐标为:X 二 0 +72x arc$in(360XjU72)y 二 2H 20 X ar 泗(360 吹削 72)其中k为0, 1, 2, 3,72。依次计算k=0, k=1, k=2 ,,直到k=72所对应的(x , y)坐标值数据。系统运行时,单片机每控制电机拖动悬挂物体到一个位置前,会先查正弦波表,将查表得到的坐标结 果按照定点运动模块的算法

16、算出左右两线与上一个位置的长度差,以及各个电机所需转动的角度和拍数。这样从微观上看还是从一个点运动到另一个点,从宏观上看就是一个连续的正弦波形图了。选取的取样点 越多,运动的轨迹就越精确。程序流程图如图2.9所示。开始图2.9自定轨迹程序流程图(3)圆形轨迹运动模块R,圆心(XC,yc)(运行前设置)为参考点,为满足精确度,共设定取样点为N个,算出每一个点(X,y)的横坐标和纵坐标。则坐标计算公式与( 2)相似,要让电机控制 悬挂物体走圆形轨迹,只要在程序中建立一张圆形轨迹坐标表,单片机在 运行中不断去查表,以获得下一步的位置坐标。本程序中以半径其中BI为角度值(单位弧度),为Nn /45。代

17、入预定数值:R=25cm N=( 1,2,90),BI取值为n /45,2n /45,3n /45,90 n /45。为:x =(別x2?r/36Q)尸几+恥池(创 x27r/360)按下面公式,依次计算得到90兀+ 25xco$(別 询180)=儿+ 2了乂$皿(月几开门80)个采样点的坐标值。程序运行时,先读取圆心坐标值,由软件程序算出圆形坐标表。通过不断的查询表格可以获得相应的以及各个电机所坐标信息, 按照定点运动模块的算法算出悬物在前一位置和后一位置左右两线的长度差, 需转动的角度和拍数。圆形轨迹程序流程图如图 2.10所示。进入第二层继续查询。这四个点正面分布如图2.11。图 2.1

18、0圆形轨迹程序流程图轨迹跟踪程序在该程序模块中,题目要求悬挂物体沿现场任意标示的轨迹运行。在悬挂物体运行过程中需要有寻迹1个红外反射对管,以完成反馈,这样才能对悬挂物体的行进路线进行纠偏。我们在悬挂物体底下安装了 对反馈信号的采样。由上面硬件介绍可知,当对管被黑色物体挡住时,接收管没有反射光源照射,则其输 出端为高电平,反之为低电平。单片机通过不断查询采样信号端的状态,控制电机的运动。在此模块的算法中,首先确定待寻轨迹初始位置的坐标,以此坐标数据为基础寻找待寻轨迹的下一个 点。寻下一点程序是本模块的关键。为了能够准确找到该点的下一个点,我们定义了两层查询结构。第一层是记住该点,并以这一点为中心

19、,向上行进1cm,若传感器信号输出端为低电平,则按此方向1cm若沿某方向检测向上运动;若为高电平,则回到记忆点。按照上述方法依次向右、向下、向左行进 出低电平,则在此点开始下一点的查询;若检测输入信号始终为高电平,则在悬挂物体回到记忆点以后,+ H 1 cm图 2.11悬物运动第一层查询点分布第二层查询在第一层查询没有结果的情况下进行。首先使悬挂物体沿与x、y轴分别成45、135的方向行进,行进距离为 2cm,到第1点,若检测为低电平,则在此位置进行新一轮的下一点查询;若检测为高电平,则水平行进到与记忆点的y坐标相交的位置,为第 2点。若为高电平,则沿水平方向继续行进到与第若此时检测信号为低电

20、平,则开始新一轮的下一点查询;一点关于记忆点y坐标对称的位置,是第 3点。若检测为低电平,则在此位置进行新一轮的下一点查询;若检测为高电平,则竖直行进到与记忆点的x坐标相交的位置,是第 4点。若检测为低电平,则在此位置进行新一轮的下一点查询;若检测为高电平,则竖直行进到与第三点关于记忆点的x坐标对称的位置,是第 5点。若检测为低电平,则在此位置进行新一轮的下一点查询;若检测为高电平,则水平行进到与第二点关于记忆点的x坐标对称的位置,是第 6点。若检测为低电平,则在此位置进行新一轮的下一点查询;若检测为高电平,则水平行进到与第五点关于记忆点的y坐标对称的位置,是第 7点。若检测为低电平,则在此位

21、置进行新一轮的下一点查询;若检测为高电平,则竖直行进到与第七点关于记忆点的x坐标对称的位置,是第 8点。若检测为低电平,则在此位置进行新一轮的下一点查询;若检测为高电平,则证明已无轨迹可寻,退出跟踪程序的运行。这八个点的正面分布为图2.12。/图 2.12悬物运动第二层查询点分布轨迹跟踪程序流程图如图2.13。图 2.13轨迹跟踪程序流程图检测到低电平信号以后,根据上面通用的算法,可知坐标差值,进而算得电机运行的步进拍数。三、测试说明1、测试仪器海星顺达科技806秒表:最小刻度值:1/5S地牌3米卷尺(JC-353W-4):精度0.001m2、测试数据键盘设定坐标点测试通过键盘设定(0, 0)

22、(80,100)之间的任何一点的坐标,结果正确,准确率100%。自定义轨迹测试测试数据如表3.1所示。次数123起始点(0, 25)(1, 24)(1, 25)终止点(72,25)(70,24)(71,23)所用时间(s)50.048.549表3.1自定义轨迹测试记录测试中设定的路径是一个周期的正弦波,测试显示物体实际运行的轨迹与算法中理论设定的轨迹基本相符,而且所画波形比较圆滑,误差很小,达到设计要求。圆周运动测试测试数据如表3.2所示。次数123圆心(40,50)(40, 50)(50, 30)直径(cm)525151直径误差(cm)211所用时间(s)908988圆周运动测试记录表3.2通过测试,我们发现实际测得的直径总是稍有偏大,但在误差范围之内,我们分析原因

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论