ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:254.81KB ,
资源ID:20134090      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20134090.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(悬挂运动控制系统3.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

悬挂运动控制系统3.docx

1、悬挂运动控制系统37.5 二等奖作品(江苏大学 张寿龙 田兆垒 赵生禄)本系统以凌阳SPCE061A 单片机为控制核心,采用L298 芯片作为两只步进电机的驱动模块,利用14键盘完成对相关参数的设定,采用液晶显示器显示参数信息,采用1 个反射式光电传感器来检测板上所标黑线的位置;使用了一套精确的软件算法,有效地实现了两路电机的配合转动,使得悬挂物体能够按照几种不同的设定路径准确移动,完成题目的各项要求。7.5.1 方案论证1、单片机的选择方案一:采用89C51 单片机实现,单片机软件编程自由度大,可用编程实现各种控制算法和逻辑控制。但是89C51 需外接模数转换器来满足数据采样,硬件电路相对复

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

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

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

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

6、点是控制比较复杂。由于凌阳SPCE061A 单片机有着丰富的硬件资源,加上现代社会的发展对人机界面的要求越来越高。基于上述考虑,所以我们选择方案二。7.5.2 详细软硬件设计根据题目要求和上述论证,本系统的系统框图如图 7.47。总体设计方案的硬件连接图如图 7.48 所示。1、硬件设计(1)单片机最小系统由凌阳单片机SPCE061A 及键盘和LCD 显示器组成。SPCE061A 是凌阳科技推出的一款16 位结构的nSP 系列微控制器。SPCE061A 里内嵌32K 字的闪存(Flash),较高的处理速度使nSP 能够非常容易地、快速地处理复杂的数字信号。SPCE061A 单片机内置8 路AD

7、C,2 路DAC,且集成开发环境中,配有很多语音播放API 函数,用SPCE061A 实现语音播放极为方便。另外,该芯片内置在线仿真、编程接口,可以方便实现在线调试。考虑到本题目所应用的复杂程度和系统资源的分配,采用最简单的直接14 键盘数据输入端口。显示模块用的是OCM4X8C 液晶显示器,它是12864 点阵的汉字图形型液晶显示模块,可显示汉字及图形,内置国标GB2312 码简体中文字库(1616 点阵)、128 个字符(816 点阵)及64256 点阵显示RAM(GDRAM)。具有多种功能:光标显示、画面移位、睡眠模式等。界面比较丰富,人机操作更直观。其外接接口可直接与CPU 连接,提供

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

9、四拍电动机的励磁方式输入如表 7.15。利用单片机很容易满足步进电机的工作条件,且容易控制。电路连接见图 7.50。D4(3)光电检测模块的电路设计与实现为了检测板上黑线的位置,在悬挂物体中心上固定一个反射式红外发射-接收器。具体电路如图 7.51所示。发射部分采用红外发射管,实现检测系统信号的输出。接收部分的光敏二极管在不同的的光照强度下,电阻值会大幅改变。本实验中,我们把电路参数设置为只对黑色敏感。当检测不到黑线时,发射管发出的红外光经板面反射后被接收管接收,接收管导通,斯密特管输出低电平,当检测到黑线时,发射管发出的红外光不能被反射,斯密特管输出高电平,单片机通过检测I/O 口的高低电平

10、来判断电机的运动方向。由于是采用四个方向的同时检测,故单片机的判断能力就明显提高,缩短了检测判断时间,同时也增强了纠错能力。2、软件设计(1)主程序要完成上述任务,并且控制的比较准确,实现的算法很重要。尤其是悬挂物体从一个位置坐标运动到另一个位置坐标的算法,是实现任务的基础。按照题目要求在100cm80cm 的图上定出各个点的坐标,现在以左下角为坐标原点,以一厘米为一个单位,标出横轴和纵轴的数据,如图 7.52。用x 和y 来表示坐标的位置,用l 表示左边的绳子的长度,用r 表示右边的绳子的长度(注意:我们这里的长度是指悬线与滑轮的触点和图中任一点(x,y)间的直线距离)。x 和y 与l 和r

11、 的关系函数如下:现在我们来计算出相应的电机转动的拍数。设初始位置坐标为(x1,y1),目标位置为(x2,y2)时,l 和r 为l 和r 的微小变量:通过l 和r 的变化,就可以控制电机的转动拍数,进而控制物体的移动。根据圆周的数学关系,要使悬物左右相应移动l、r,则左右两电机需转动过的角度为:又知我们采用的二相四拍步进电机,每一步进为1.8,则得到左右两个电机需转动的拍数为:由此我们就可以根据上面的计算来控制电机输出脉冲,驱动电机以一定的步进节拍运转,拖动悬挂物体从初始位置运动到目标位置了。本系统外围电路比较简单,但是软件设计相对较复杂。既要考虑系统完成任务的具体执行,又要考虑总体组成的易于

12、实现性。从软件的功能方面看,主程序主要完成坐标设置,键盘的扫描及其显示,相应任务子程序模块的调用等。其流程图如图 7.53。在发挥部分(1)中,要求能够显示物体中画笔所在位置的坐标。本系统主模块中把此项功能独立出去,放在坐标计算后,直接输出并在LCD 显示。这样就与任务子程序的调用分离开来,易于实现。(2)定点运动程序定点运动中不需要关心悬挂物体在运行过程中的轨迹,只考虑原点与设定点之间的距离,根据这一距离,利用公式直接计算出左右两根绳子最终应该收放的相对距离,根据这一距离控制电机的转数。则基于原点坐标(0,0),设定坐标(x,y),和两边的绳子的长度的函数关系为:设定点左右绳长,开(3)自定

13、义轨迹程序在自定义轨迹模块中需要让悬挂物体沿任意设定形状的一条曲线来运行。在该模块中,设定的曲线是一条一个周期的正弦波,该正弦波的波长是72cm,从(0,25)沿轨迹走到(72,25),幅值为20cm。其基本原理是在程序中预先设计一个正弦波坐标表格,表中放置72 个数据,基本可以达到精度要求。正弦波初始点坐标(0,20),则所行轨迹上各点(x,y)坐标为:x = 0 + 72 arcsin(360 k / 72)y = 25 + 20 arcsin(360 k / 72)其中k 为 0,1,2,3,72。依次计算k=0,k=1,k=2,直到k=72 所对应的(x,y)坐标值数据。系统运行时,单

14、片机每控制电机拖动悬挂物体到一个位置前,会先查正弦波表,将查表得到的坐标结果按照定点运动模块的算法算出左右两线与上一个位置的长度差,以及各个电机所需转动的角度和拍数。这样从微观上看还是从一个点运动到另一个点,从宏观上看就是一个连续的正弦波形图了。选取的取样点越多,运动的轨迹就越精确。程序流程图如图 7.55 所示。(3)圆形轨迹运动模块与(2)相似,要让电机控制悬挂物体走圆形轨迹,只要在程序中建立一张圆形轨迹坐标表,单片机在运行中不断去查表,以获得下一步的位置坐标。本程序中以半径R,圆心(xc,yc)(运行前设置)为参考点,为满足精确度,共设定取样点为N 个,算出每一个点(x,y)的横坐标和纵

15、坐标。 则坐标计算公式为:其中BI 为角度值(单位弧度),为N/45。代入预定数值:R=25cm,N=(1,2,90),BI 取值为/45,2/45,3/45,90/45。按下面公式,x = x + 25 cos(BI /180) cy = y + 25 sin(BI /180) c依次计算得到90 个采样点的坐标值。程序运行时,先读取圆心坐标值,由软件程序算出圆形坐标表。通过不断的查询表格可以获得相应的坐标信息, 按照定点运动模块的算法算出悬物在前一位置和后一位置左右两线的长度差,以及各个电机所需转动的角度和拍数。圆形轨迹程序流程图如图 7.56 所示。(4)轨迹跟踪程序在该程序模块中,题目

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

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

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

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

20、数据如表 7.16 所示。测试中设定的路径是一个周期的正弦波,测试显示物体实际运行的轨迹与算法中理论设定的轨迹基本相符,而且所画波形比较圆滑,误差很小,达到设计要求。(3)圆周运动测试测试数据如表 7.17 所示。通过测试,我们发现实际测得的直径总是稍有偏大,但在误差范围之内,我们分析原因可能在于滑轮的摩擦力和细线的变形,而我们的实际走完全程所用时间远小于规定的时间,原因在于我们的算法较优。总体看来,我们这一模块的设计速度快,精度高。(4)定点运动测试测试数据如表 7.18 所示。从测试的数据来看,我们所测的几组数据的横坐标都稍有偏大,但误差很小,原因可能在于右边电机由于绕线偏密,实际轴径增大

21、,以至右拉过大,导致到达点右偏。但本模块运行过程所用时间都比较短,而且我们所走的距离远大于题目所要求的距离,因此整个模块性能优良,完全符合要求。(5)轨迹跟踪模块测试测试数据如表 7.19 所示。我们设计的算法,完全满足了题目的要求,很准确的寻找到黑线,并且能够按照所画曲线的轨迹正确运动,所用时间很短,精度很高,基本上没走多余的路,效果非常好。7.5.4 作品点评该系统采用了61 板作为控制核心,使得系统硬件结构比较简单,系统的技术难点主要在于软件的编制设计方面。软件比较复杂,却突显了系统的优势。但是如果在一些方面处理上再做一些改进,比如充分利用单片机资源加入语音功能,或者硬件实现一些软件特别复杂的部分,这样系统会更完美。_

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1