风力摆控制系统_第1页
风力摆控制系统_第2页
风力摆控制系统_第3页
风力摆控制系统_第4页
风力摆控制系统_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、2015年全国大学生电子设计竞赛风力摆控制系统(B题)2015年8月15日摘要本系统采用STC12C5A60S2为主控芯片,通过MPU6050传感器提供反馈信息、采用PID控制算法调整轴流风机的工作状态、在液晶和按键的作用下显示并切换工作模式,形成一闭环测控系统。该测控系统通过控制驱动各风机,使风力摆按照一定规律运动,同时保证摆杆下方悬挂的激光笔能在地面画出要求的轨迹。关键词:风力摆 STC12单片机 轴流风机 目录摘要-1一、设计任务-1二、方案论证-12.1 控制器模块方案-22.2位置检测模块-22.3动力装置方案设计-22.4 外围模块方案设计-22.4.1 功能调用模块的设计-22.

2、4.2 显示模块的设计-32.4.3 声光提示模块-3 2.4.4 电源模块-32.5硬件电路设计-32.6 系统控制方案的整体设计-32.6.1 风力摆摆直线过程分析-42.6.2 风力摆摆圆过程分析-4三、理论分析与计算-53.1运动控制-63.1.1直线运动的控制-63.1.2 摆圆运动的控制-63.2 软件实现-63.2.1 所用算法-63.2.2 程序部分-6四、测试结果与误差分析-74.1风机性能的测试-74.2摆直线任务的测试-74.3速停任务测试记录-74.4圆周轨迹任务测试-74.5误差分析-7五、结论心得体会-85.1结论-85.2心得体会-8参考文献-9 附录1:电路原理

3、图-10 附录2:部分PCB设计图-11附录3:部分关键程序-12 附录4:系统整体照片-13风力摆控制系统摘要:本系统采用STC12C5A60S2为主控芯片,通过MPU6050传感器提供反馈信息、采用PID控制算法调整轴流风机的状态、在液晶和按键的人机交互作用下显示并切换工作模式,形成一闭环测控系统。该测控系统通过控制驱动各风机,使风力摆按照一定规律运动,同时保证摆杆下方悬挂的激光笔能在地面画出要求的轨迹。关键词:风力摆 STC12单片机 轴流风机 一、设计任务一长约 60cm70cm 的细管上端用万向节固定在支架上,下方悬挂一组(24 只)直流风机,构成一风力摆。风力摆上安装一向下的激光笔

4、,静止时,激光笔的下端距地面不超过 20cm。设计一测控系统,控制驱动各风机使风力摆按照一定规律运动,激光笔在地面画出要求的轨迹。具体要求可参看设计任务书。二、方案论证根据题目要求,此测控系统完成控制风力摆按照一定规律运动、使激光笔在地面上画出规定轨迹的任务。其通过按键与三级子菜单,在不同工作模式间切换,完成相应的控制任务,关键在于反馈信息的准确和对轴流风机的控制。为此我们将系统分为五个模块,并对各个模块的方案进行了评估选择。系统整体方案框图如图 1 所示:摆杆位置检测模块动力装置模块功能调用模块控制器声光提示显示模块图1 系统整体框图2.1 控制器模块方案控制器是整个控制系统的核心,承载着执

5、行控制算法,实现控制功能的作用。因此,要保证系统整体的控制质量,控制器的选择非常重要!在控制器的选择方案中,主要进行了如下对比:方案一:选择常见且应用广泛的AT89C52作为控制芯片。对于这种单片机,我们有良好的知识基础,上手快,成本低。然而对于本控制系统,程序量较大、所需I/O口较多,89单片机将很难满足控制要求,难以胜任控制任务。因此,89单片机并不适合作为本系统的控制器。方案二:较之89系列单片机,STC12单片机资源丰富,集成EEPROM、AD、 PCA可编程计数阵列等;其功能更强大,执行速度更快。对于本系统来说,足以完成控制任务。故而作为本控制系统的首选。2.2位置检测模块检测模块不

6、仅是获得被控系统所需信息的唯一渠道,而且从根本上决定了被控系统的控制精度,相当于控制系统中的“眼睛”;因此检测模块的设计对整个控制系统的设计至关重要!基于此,在选择检测元件时,主要做了如下对比:方案一:选择整合性6轴运动处理组件MPU6050,利用其自身集成的3轴MEMS陀螺仪,3轴 MEMS加速度计精确地对被控对象的运动状态进行数据采集;在数据处理上采用卡尔曼滤波算法,测量精度极高。另外,该传感器封装小节省空间,对本系统的控制十分有利。方案二:选择角度、加速度模块 MMA7361传感器。这一模块虽有压降小,适合高噪声电源环境工作等特点,但其测量精度及测量范围等各方面性能不及MPU6

7、050。综合考虑,选取MMA7361作为检测变送传感器并不明智。经过上述对比,最终本系统选用了MPU6050作为位置检测的传感器。2.3动力装置方案设计动力装置作为本控制系统中的执行机构,是控制系统中的重要组成部分。它将控制器送来的控制信号转换成执行动作,从而操纵作用于被控对象的能量,将被控变量维持在所要求的数值上或一定的范围内。轴流风机作为此系统的唯一动力装置,其提供的动力是否充足、可调性是否优良将直接决定能否完成控制任务和控制质量的高低。为此考虑了成本、体积等因素,主要拟定了以下两个方案。方案一:选择某牌直流12V-2.3A轴流小型风机。该风机体积小、质量轻,对摆杆的运动十分有利。另外,该

8、种风机功率大、动力充足,能为控制系统提供充足的能量。方案二:选择与上述风机同品牌的12V-1.8A轴流风机。与上述风机相比,该风机质量较大,功率却不及小型风机。其他方面,此二种风机并无差异。上述方案的论证,似乎证明方案一将是本系统的不二之选,然而事实并非如此。在经过充分的实验发现(详见4.1中风机性能测试),方案一中风机启动过慢、控制不及时,而且其提供风力并不比方案二中轴流风机大。因此,本系统最终确定以方案二作为动力装置。2.4 外围模块方案设计本系统中的外围模块,主要是指与对风机的控制不起直接作用的功能调用模块、显示模块、声光提示模块、电源模块。主要是指键盘(按键)模块和显示模块。由于该系统

9、所涉及的控制任务较多,使用键盘按键进行不同那个任务间的相互切换,降低了对程序的逻辑要求,易于编程、方便实施。而显示模块将检测到的信息直观的显示出来,利于对整个控制过程进行实时监控。这种良好的人机交互环境,也非常符合当前控制过程智能友好的趋势。 2.4.1 功能调用模块的设计功能调用模块主要完成切换系统工作模式的任务。这里工作模式的切换主要通过按键,常见的按键单元有:矩阵键盘、简单键盘等。以下为两种方案的对比:方案一:矩阵键盘占用单片机的端口少、节约硬件资源;但电路设计较复杂、开发时间较长、软件设计也相对复杂。主要针对多键盘设计,适用于控制要求高、控制功能多的系统。方案二:简单键盘设计简单、易于

10、实现、减少了系统的复杂度;尤其适合执行功能不多的系统。在上面的对比中不难看出,利用简单键盘进行功能调用将更加方便;对本系统的设计更有优势。因此选用方案二。2.4.2 显示模块的设计作为人机交互的途径,显示模块旨在占用最小的资源提供最多的可利用信息。常见的显示模块有1602液晶和12864液晶,本文对上述两种液晶做了如下对比:方案一:采用1602液晶。1602液晶体积小、引脚少,节省硬件资源;但其显示信息量与其他液晶相比较小。方案二:采用12864液晶。该种液晶微功耗、显示信息量大、字迹清晰、美观、视觉舒适;适合进行菜单显示,使整个控制系统更加人性化。另外,其可在串行口模式下工作,工作时仅需引出

11、两根数据线和两根电源线,更加节省I/O口。考虑到以上信息、并结合了本系统的特点,最终本系统以12684液晶作为显示单元。2.4.3 声光提示模块此模块的设计主要考虑了设计任务的要求,即各项目中,运动达到要求时需有明显的声或光提示,以便开始测试及记录。本系统的提示装置为发光二极管和蜂鸣器,他们在系统中起到了提示作用,这里不再赘述。2.4.4 电源模块在该控制系统中,要完成控制任务必须保证风机提供充足的动力。这就要求电源能提供风机工作所需的电流。在选择电源时,主要从如下两个方案中进行实验对比:方案一:采用类似于驱动直流电机的方法,通过L298N驱动四个风机。此方案在电机的控制中较为常见,轴流风机作

12、为一种直流电机,应该也能正常工作。方案二:使用两个12V-3A的电源直接供电,每个电源分别为其中的两个风机供电。这样要控制风机,必须选择带有PWM控制线的风机。通过实验证实:方案一如果没有采用必要的软件控制和硬件补偿,很难提供充足的动力使摆杆摆起足够的角度。而方案二只要选择带有控制线的风机,便避免了方案一中的弊端。 故此系统电源选择方案二。2.5硬件电路设计在硬件方面,本系统采用了STC12C5A60S2最小系统板、12864液晶以及其他外围模块。相应的电路图和PCB板可参看附录1。2.6 系统控制方案的整体设计选择好各模块合适的方案后,系统整体控制方案的设计就相当重要了。首先是系统结构设计,

13、如图2所示是系统的机械结构。图2 系统结构模型 图3 风机摆放位置值得注意的是风机的摆放位置,为便于设计分析,风机应摆放为十字型如图3所示。控制系统各部分的关系如图4控制方框图所示。偏差姿态PWM轴流风机摆杆STC12MCU姿态角MPU6050图4 控制系统控制方框图明确了控制流程和系统结构,系统控制任务的完成就完全依赖于对摆运动过程的理解。这里首先对系统结构进行说明,然后将系统的运动过程分为摆直线和摆圆周两个部分,进行简要分析。 2.6.1 风力摆摆直线过程分析角度圆心其简化的模型如图5所示。很显然,在该模型中摆杆的位置到圆心A的距离与角度成单值函数关系。在执行风力摆摆直线的工作模式时,只要

14、根据反馈的角度,在确定了摆杆的长度的前提下,即可由式1得到摆杆所能摆直线的长度D:由于D=l*sin ,而事实上,摆杆摆起的高度可以近似忽略,则D=l*tan, (公式1)即:=arctan(D/l) (公式2)其中l为摆杆长度。在具体工作时,可将控制器的输出信号作用于风机,以此来改变其摆动的幅度。此为风力摆摆直线的简单分析。图5 风力摆简化模型2.6.2 风力摆摆圆过程分析力摆摆圆过程其实可以分解为两个方向(x轴、y轴)的运动,如图6所示。在该过程中,四个轴流风机控制了摆杆沿如图所示的x、y方向的运动。只要使在x方向的运动与y向的运动频率相同、幅度相等,相位相差90°,即可完成画圆

15、任务。因此利用反馈的位置信息,可控制四个风机的工作状态;进而改变摆杆所处位置,完成控制任务。图6风力摆摆圆简易模型三、理论分析与计算3.1运动控制在2.5部分,对摆的运动状况已经有了一个基本的了解。下文的叙述将在上述运动状态的基础上,以设计任务为最终目的,结合采用的控制算法进行分析论证。3.1.1直线运动的控制设计任务中,要求本系统做类似自由摆运动,使激光笔稳定地在地面画出一条长度不短于 50cm 的直线段,其线性度偏差不大于±2.5cm,并且具有较好的重复性。这显然是一个开环控制,通过粗略调节便可实现设计任务。在2.5.1中的运动分析部分已经明确,要求激光笔绘制的距离需要控制的其实

16、是摆杆的角度,而摆杆的角度是通过控制轴流风机的转速产生空气推力来间接控制的。为了使激光笔绘制的轨迹达到设定值,我们就需要控制摆杆的倾角,这个个倾角可以直接计算出来;然后,通过简单的开环调节,给风机以相应的PWM波,风机带动摆杆摆动,便可轻易实现直线任务。3.1.2 摆圆运动的控制在2.5.2的基础上,可做如下分析。如图7运动分解,并结合公式1和公式2不难得出如下公式:tan=FyFx, (公式3)其中,是自行设置的,知道轴向风机应产生空气推力的比例之后,MCU 将控制电机的 PWM 置为相应比例,反复调节几次便可以使摆动角度达到要求。图7 运动分解图示3.2 软件实现在有了一定的理论基础,并构

17、建了相应的硬件电路之后,控制任务将完全依赖于程序实现。而此系统的关键在于,根据反馈角度对轴流风机进行较精确的控制。这一精确控制体现在PWM的控制中,因此控制算法的选择尤为重要。3.2.1 所用算法本系统采用增量式PID控制公式:(如下所示)u(k)=Kpe(k)-e(k-1)+Kie(k)+Kde(k)-2e(k-1)+e(k-2), (公式4)其中,u(k)系统应增加的输出Kp为比例系数Ki积分时间Kd微分时间e(k)第K次采样的误差e(k-1) 第k-1次采样的误差e(k-2) 第k-2次采样的误差于本控制系统而言,误差即给定值与反馈的到的姿态角之间的差值。经过计算得到u(k)作为控制器的

18、输出,调节风机转速,这一改变直接作用于被控对象,最终达到控制效果。这一过程中控制质量的优劣,关键在于PID控制算式中比例系数Kp、积分时间Ki和微分时间Kd的整定。本系统整定主要采用了经验试凑法,这里不再赘述。3.2.2 程序部分A主程序流程图如图8所示:图8 程序流程图B关键算法的程序实现在任务一和二中,采用了开环控制,这里不再给出其实现程序。在其他基础任务和发挥部分,用到了PID控制方法,其实现代码见附录三。四、测试结果与误差分析4.1风机性能的测试将占空比恒定的PWM波分别加到两组风机上,在其他状况完全相同的情况下,记录启动N秒后摆杆所能摆动的幅度,以此来进行其性能比较。如下表1所示:风

19、机类型风机数小风机启动N秒后的摆动幅度(单位:厘米)大风机启动N秒后的摆动幅度(单位:厘米)351015203510152013417252444152935235283035415374955表1风机性能的测试对比上述测试数据,不难发现小风机虽然功率大,但实际的吹风效果并不及大风机,且风机数量越多越利于摆出较大幅度。4.2摆直线任务的测试在任务一和任务二中,都是完成摆直线的任务。所以这里仅给出部分测试数据,下表2所示的记录,是设定摆摆动幅度为55cm时的数据。表中的偏离程度是指,所摆轨迹偏离给定直线的距离。次数项目123456789所用时间12.312.51011.512.311.711.8

20、13.911.2偏离程度±1.5±1.0±2.0±1.0±0.5±0.8±1.0±2.5±1.5表2摆直线任务测试记录4.3速停任务测试记录:将摆杆拉起不同的角度,记录其停止时间。多次进行试验后,数据记录如下: 起角及耗时次数30°35°40°45°13.8s4.0s3.7s5.0s23.7s4.0s5.1s4.7s33.7s3.8s3.9s3.8s44.0s4.5s3.8s6.7s54.6s6.2s4.8s5.0s63.9s3.6s6.3s3.9s74.2s3.8

21、s4.0s4.9s84.1s4.5s3.7s7.8s表3速停任务记录4.4圆周轨迹任务测试该部分数据为设定摆圆半径,记录其轨迹稳定完成规定任务时所用时间:半径次数15cm20cm25cm30cm112.4s15.2s17.3s20.1s213.5s13.4s19.8s22.8s313.9s12.1s18.3s19.8s415.0s14.9s17.6s17.9s514.7s16.2s17.8s21.8s614.0s15.2s16.3s22.3s713.8s15.3s21.2s23.9s813.0s16.7s18.2s18.9s表4圆周轨迹任务测试4.5误差分析由表中数据可知,在每一项数据中都在时

22、间和摆动轨迹上存在误差。分析其产生原因,主要有四:一是参数整定不足够优良,这是最根本的;二是机械结构不够稳固,在摆杆运动过程中其引起系统震动,这一干扰在系统中很难消除;三是控制器通信存在时间滞后,难以消除;还有第四点就是测量是可能存在误差。不过,这些误差都是在所允许的范围内,故而可以认定系统是满足设计要求的。五、结论心得体会5.1结论经过足够多次的测试,在允许的误差范围内,本系统基本完成了设计任务。测试中,该系统充分展示了其较高稳定性和较强的鲁棒性。附录中给出了相关的程序和电路图等,以供说明使用。5.2心得体会眼看结项之日临近,心中难免感慨万千。从确定题目、到制定方案、到程序调试我们经历了漫长

23、而又最最充实的四天三夜!热爱播下“控制之种”源于对控制学科的热爱,试题未出,本团队成员便达成一致意见:无论控制类题目的难易,一定做控制题。工作一展开,我们团队便按事先的准备明确分工、通力配合。这种和谐特别体现在搭建系统机械架构和最后的程序调试过程中。整个工作过程中,我们相互鼓励,最终完成了既定任务。汗水浇灌“成功之花”在作品最终定型那一刻,我们所有的疲惫都化为乌有,我们所有的汗水都化作成功的喜悦。此时,最终的结果都已不再重要,我们有所付出、有所收获、有所感动,这便是我们最大的成功。从项目开始到最终完成,我们遇到的困难从硬件资源不足,到算法实现困难,又到程序调试困难重重;然而,我们没有被吓倒,因

24、为我们坚信:一切困难都是纸老虎!达不到期望的性能,我们可以不吃饭、不睡觉;我们不认为苦,因为我们乐在其中!最终我们做到了让自己满意,We did it!稍有遗憾,收获颇丰当然,这个过程中我们还是留有一些遗憾。因为系统仍有不足,未能完善到我们理想的状态。主要有三:一是对机械部分的构建,现有设备毕竟有限,主要利用了木材作为支撑设备,其柔性对系统的干扰,我们很难克服;二是对算法和程序的优化不足,造成程序略显冗余,给日后本团队完善作品、添加功能造成不便;三是原本计划的发挥功能未能成功添加到系统中,如实现检测信号显示到手机上,进行实时监控的功能等。谈到收获,那应该就是这次赛事所给我们带来的项目经验了。我们层层障碍,最终完成作品;成功将理论联系实际。我们很享受这个过程,这四天三夜的充实工作,必将是我们团队终生铭记!致谢最后我们要感谢主办方、学校和指导老师,感谢你们为我们创造的这一平台,让我们有机会将自己的理论与实践结合,让我们的动手能力提高到新的台阶!参考文献:1.单片机实用系统设计与仿真经典实例,电子工业出版社,周润景 刘晓霞著2.全国大学生电子设计竞赛培训系列教程<数字系统与自动控制系统设计>,电子工业出版社,高吉祥主编附录1:电路原理图1.1单片机资源分配图1.2电源转接板原理图附录2:部分PCB设

温馨提示

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

评论

0/150

提交评论