下推式磁悬浮系统软件设计_第1页
下推式磁悬浮系统软件设计_第2页
下推式磁悬浮系统软件设计_第3页
下推式磁悬浮系统软件设计_第4页
下推式磁悬浮系统软件设计_第5页
已阅读5页,还剩46页未读 继续免费阅读

下推式磁悬浮系统软件设计.pdf 免费下载

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

文档简介

河南科技大学毕业设计(论文)下推式磁悬浮系统软件设计摘要磁悬浮系统能够创造一个无接触、无摩擦、无润滑的特殊空间环境,磁悬浮技术可以用于实现零部件间无摩擦相对运动,不仅提高了运动速度与精度,而且还能延长零部件使用寿命。由于磁悬浮系统的这些优点,目前它不仅在电气等工业领域得到广泛应用,而且在人类生活中也开始得到应用,充分显示了磁悬浮技术在国民经济发展和人们生活质量提高方面具有广阔的发展前景,因此对它进行设计或研究具有十分重要的理论意义和现实意义其中对磁悬浮系统的控制成为目前的首要问题。随着磁悬浮技术的广泛应用,对磁悬浮系统的控制已成为首要问题。本设计以ARDUINO开发板为平台,以PID控制和脉宽调制为原理,通过单片机编程设计出PID控制器对磁悬浮系统进行控制。PID控制器自产生以来,一直是工业生产过程中应用最广、也是最成熟的控制器,以其结构简单、易实现、适应性强等优点,处于主导地位。本设计将创建一个基于ARDUINO开发板的下推式磁悬浮系统,在分析磁悬浮系统构成及工作原理的基础上,确定控制方案,通过编写系统控制程序,不断调节PID控制参数,并通过调节PWM的占空比来实时控制电磁线圈的电流,从而使悬浮物体在设定位置得到与干扰力相平衡的电磁吸力,最终得到一个稳定的磁悬浮系统,此外系统还能够和PC机进行动态通信,由PC机实现对该磁悬浮系统的实时控制。最后,本设计对以后研究工作的重点进行了思考,提出了自己的见解。关键词磁悬浮系统,ARDUINO开发板,PID控制,脉宽调制河南科技大学毕业设计(论文)THESOFTWAREDESIGNOFPUSHTYPEMAGNETICLEVITATIONSYSTEMABSTRACTMAGNETICLEVITATIONSYSTEMCANCREATEANOCONTACT,NOFRICTION,NOLUBRICATIONOFTHESPECIALSPACEENVIRONMENTMAGLEVTECHNOLOGYCANBEUSEDTOIMPLEMENTPARTSOFNOFRICTIONBETWEENTHERELATIVEMOTION,NOTONLYINCREASESTHEMOVEMENTSPEEDANDACCURACY,BUTALSOCANPROLONGTHESERVICELIFEOFCOMPONENTSBECAUSEOFTHESEADVANTAGESOFMAGLEVSYSTEM,ITNOTONLYINTHEELECTRICALINDUSTRYISWIDELYUSED,BUTISALSOBEGINNINGTOBEUSEDINHUMANLIFEITFULLYSHOWSTHATMAGNETICSUSPENSIONTECHNOLOGYHASABOARDDEVELOPMENTPROSPECTONIMPROVINGTHEDEVELOPMENTOFNATIONALECONOMYANDTHEQUALITYOFLIFETHEREFORE,ITHASAVERYIMPORTANTTHEORETICALSIGNIFICANCEANDPRACTICALSIGNIFICANCEONDESIGNINGORRESEARCHINGTHESYSTEM,ANDTHECONTROLOFTHESYSTEMHASBECOMETHEFIRSTPROBLEMWITHTHEEXTENSIVEAPPLICATIONOFMAGLEVTECHNOLOGY,THECONTROLOFTHEMAGLEVSYSTEMHASBECOMEAPRIORITYINTHISPAPER,FORTHEPRINCIPLEOFPIDCONTROL,ARDUINODEVELOPMENTBOARDASPLATFORM,PIDCONTROLLERDESIGNEDTOCONTROLMAGNETICSUSPENSIONSYSTEMSINCEPIDCONTROLLERSHAVEBEENTHEPROCESSOFINDUSTRIALPRODUCTIONHASBEENMOSTWIDELYANDMOSTSOPHISTICATEDCONTROLLERBYITSSIMPLESTRUCTURE,EASYTOIMPLEMENT,ROBUST,ETC,INADOMINANTPOSITIONTHISDESIGNWILLCREATEAMAGNETICSUSPENSIONSYSTEMBASEDONTHEARDUINODEVELOPMENTBOARDONTHEBASISOFANALYZINGOFMAGNETICSUSPENSIONSYSTEMSSTRUCTUREANDWORKINGPRINCIPLE,WEWILLGETTHECONTROLSCHEMETHROUGHMAKINGTHEPROGRAMOFTHECONTROLSYSTEM,REGULATINGTHEPIDPARAMETERSANDCHANGINGTHEFREQUENCYOFTHEPWM,WECANCONTROLTHEELECTROMAGNETICCOILCURRENTINREALTIME,ANDTHESUSPENDEDOBJECTWILLOBTAINSANELECTROMAGNETIC河南科技大学毕业设计(论文)FORCETOBALANCETHEGRAVITYATTHEPREDETERMINEDLOCATIONSTHENWEWILLGETASTABLEMAGNETICSUSPENSIONSYSTEMINADDITION,THESYSTEMCANDOADYNAMICCOMMUNICATIONWITHTHEPERSONALCOMPUTER,ANDREALIZETHEREALTIMECONTROLBYTHEPERSONALCOMPUTERATLAST,THEKEYRESEARCHWORKSFORFURTHERSTUDYAREPROPOSEDKEYWORDSMAGNETICSUSPENSIONSYSTEM,ARDUINODEVELOPMENTBOARD,PIDCONTROLLER,PULSEWIDTHMODULATION河南科技大学毕业设计(论文)目录前言1第1章绪论211设计的依据与意义212国内外同类设计的概况综述313本课题设计的主要任务4第2章磁悬浮系统的结构521磁悬浮系统的工作原理522磁悬浮系统的组成623磁悬浮系统的结构特点724磁悬浮系统的主要参数7第3章下推式磁悬浮控制系统设计931位置检测原理932控制系统设计10321系统数学模型10322控制器设计11323系统仿真1233小结14第4章磁悬浮软件设计1541软件开发环境介绍15411ARDUINONANO开发板介绍16412ARDUINO编程环境1742软件设计思想与程序流程图1943数据采集2044PID调节控制2145PWM输出2446上位机通信2747按键变化功能27河南科技大学毕业设计(论文)第5章运行调试与结果分析3051硬件接线3052程序的编译与上传3053确定系统极性3154PID参数整定3255结果34结论36参考文献37致谢38河南科技大学毕业设计(论文)1前言磁悬浮技术属于自动控制技术,它是随着控制技术的发展而建立起来的。磁悬浮的作用是利用磁场力使某一物体沿着或绕着某一基准框架的一轴或几轴保持固定位置。由于悬浮体和支撑之间没有任何接触,克服了由摩擦带来的能量消耗和速度限制,具有寿命长、能耗低、无污染、无噪声、不受任何速度限制、安全可靠等优点,因此目前世界各国已广泛开展磁悬浮控制系统的研究。随着控制理论的不断完善和发展,采用先进的控制方法对磁悬浮系统进行的控制和设计,使系统具有更好的适应性。随电子技术发展,特别是电子计算机的发展,带来了磁悬浮控制系统向智能化方向的快速发展。随着航天事业的发展,模拟微重力环境下的空间悬浮技术已成为进行相关高科技研究的重要手段。目前的悬浮技术主要包括磁悬浮、光悬浮、声悬浮、气流悬浮、静电悬浮、粒子束悬浮等,其中磁悬浮技术比较成熟。由于悬浮体与支撑之间没有任何接触,克服了摩擦带来的能量消耗和速度限制,具有寿命长、无污染、无噪声、能耗低、安全可靠等优点。当今,关于磁悬浮技术的研究与开发在国内外都处于快速发展之中,磁悬浮技术从原理上来说不难以理解,但是真正将其产业化却是近几年才开始的。其中研究较多的磁悬浮技术主要有两类磁悬浮轴承和磁悬浮列车;我国从20世纪80年代开始研究磁悬浮轴承技术,现已取得了一定的研究成果。为了让我们对大学四年学习的知识进行融会贯通和综合升华,提升我们使用和学习知识的能力,避免眼高手低,知行不一的毛病,为未来的工作打下基础,在学校的最后一年,毕业之际进行了此次设计,以此作为大学生涯的圆满结束。由于本人所学知识有限,设计经验不足,对该方面的了解还很肤浅,在此次设计中不免会遇到许多问题,感谢指导老师能给予悉心的辅导和耐心帮助,使我对所做的设计一点一滴从起步到入门,对所学专业在实践中进一步理解和总结。河南科技大学毕业设计(论文)2第1章绪论11设计的依据与意义磁悬浮技术的系统,是由永磁体、传感器、控制器和执行器4部分组成,其中执行器包括电磁铁和功率放大器两部分。假设在参考位置上,永磁体受到一个向左的扰动,就会偏离其参考位置,这时传感器检测出永磁体偏离参考点的位移,作为控制器的微处理器将检测的位移变换成控制信号,然后功率放大器将这一控制信号转换成控制电流,控制电流在执行磁铁中产生磁力,从而驱动永磁体返回到原来平衡位置。最终,不论永磁体受到水平哪个方向的扰动,永磁体始终能处于稳定的平衡状态。利用磁力使物体处于无接触悬浮状态的设想由来已久,但实现起来并不容易,要使永磁体实现稳定的磁悬浮,必须根据物体的悬浮状态不断的调节磁场力的大小,这种思想也即是目前磁悬浮列车和磁悬浮轴承研究的主导思想,其中在具有各种外界干扰的环境下,如何使物体在进行高速精确移动或转动工作的同时,还能够处于稳定的悬浮状态成为了研究者们重点研究的目标。磁悬浮系统能够创造一个无接触、无摩擦、无润滑的特殊空间环境,磁悬浮技术可以用于实现零部件间无摩擦相对运动,不仅提高了运动速度与精度,而且还能延长零部件使用寿命。由于磁悬浮系统的这些优点,目前它被广泛用于工业生产中,例如在工业上,磁悬浮工作台、磁悬浮轴承等都运用磁悬浮技术,在工作中极大的提高了生产效率;在人们的生活中,磁悬浮列车的出现带给人们交通旅行上的极大便利,此外,还有诸如磁悬浮地球仪等极具观赏性的产品陆续进入到人们的生活中。综上所述,磁悬浮技术不仅在电气等工业领域得到广泛应用,而且在人类生活中也开始得到应用,充分显示了磁悬浮技术在国民经济发展和人们生活质量提高方面具有广阔的发展前景,因此对它进行设计或研究具有十分重要的理论意义和现实意义。河南科技大学毕业设计(论文)312国内外同类设计的概况综述国内外磁悬浮系统大都是利用高频电磁场在金属表面产生的涡流来实现对金属球的悬浮,将一个金属样品放置在通有高频电流的线圈上方或下方,高频电磁场会在金属材料表面产生一高频涡流,这一高频涡流与外磁场相互作用,使金属样品受到一个洛沦兹力的作用。在合适的空间配制下,可使洛沦兹力的方向与重力方向相反,通过改变高频源的功率使电磁力与重力相等,即可实现磁悬浮。对于国内外复杂度更高的磁悬浮系统,则可利用磁场力实现金属沿着两个或两个以上方向进行位置悬浮。目前世界上有三种类型的磁悬浮。一是以德国为代表的常导电式磁悬浮,二是以日本为代表的超导电动磁悬浮,这两种磁悬浮都需要用电力来产生磁悬浮动力。而第三种,就是中国的永磁悬浮,它利用特殊的永磁材料,不需要任何其他动力支持。其中国内外对磁悬浮技术研究的热点应用是磁悬浮轴承和磁悬浮列车。对于磁悬浮列车,中国、德国和日本均制造出基于各自磁悬浮技术的磁悬浮列车;对于磁悬浮轴承,中国、美国、法国、瑞士和日本都在大力支持开展磁悬浮轴承的研究工作,然而由于国内对磁悬浮轴承的研究工作起步较晚,目前尚处于实验室阶段。随着电子元件的集成化以及控制理论和转子动力学的发展,经过多年的研究工作,国内外对该项技术的研究都取得了很大的进展。但是不论是在理论还是在产品化的过程中,该项技术都存在很多的难题,其中磁悬浮列车的技术难题是悬浮与推进以及一套复杂的控制系统,它的实现需要运用电子技术、电磁器件、直线电机、机械结构、计算机、材料以及系统分析等方面的高技术成果。需要攻关的是组成系统的技术和实现工程化。磁悬浮轴承面向电力工程的应用也具有广阔的前景,根据磁悬浮轴承的原理,研制大功率的磁悬浮轴承和飞轮储能系统以减少调峰时机组启停次数;进行以磁悬浮轴承系统为基础的振动控制理论的研究,将其应用于汽轮机转子的振动和故障分析中;通过调整磁悬浮轴承的刚度来改变汽轮机转子结构设计的思想,从而改善转子运行的动态特性,避免共振,提高机组运行的可靠性等,这些都将为解决电力工程中的技术难题提供崭新的思路。河南科技大学毕业设计(论文)4本课题提出的下推式磁悬浮系统是永磁悬浮的一种简单结构。13本课题设计的主要任务下推式磁悬浮实验系统主要由永磁体、霍尔传感器、控制器、执行机构组成,目前国内对下推式磁悬浮系统的研究也有了不错的成果,主要表现在生活产品中,如磁悬浮地球仪等。对于下推式磁悬浮系统的设计,应考虑其结构设计、硬件设计、软件功能设计和后期试验调试等方面。本课题主要研究的是磁悬浮系统的下位机软件,所以本课题的主要任务是完成系统的结构设计和下位机软件设计。对于设计的磁悬浮系统,应该实现如下功能1悬浮体在空间设定位置实现稳定悬浮;2悬浮体在稳定悬浮基础上,可进行水平悬浮移动。3磁悬浮系统的主要状态数据,可通过与上位机通信,在上位机做出相应数据显示。对于磁悬浮系统的设计目标,应达到系统应用中工作稳定可靠,且悬浮体悬浮位置准确,误差10。河南科技大学毕业设计(论文)5第2章磁悬浮系统的结构21磁悬浮系统的工作原理本项目将设计一种下推式磁悬浮实验系统,目的是让永磁体不借助外力悬浮于空中,并在此基础上进行其他运动。下推式磁悬浮系统结构原理如图21所示。在垂直方向上,悬浮磁体与底座磁体相斥,悬浮在空中的垂直高度由磁场强度和悬浮磁体重量共同决定,不需控制就能保持稳定。在水平方向上,水平位置在没有外界控制的情况下是一种不稳定状态。假设悬浮磁体稍稍偏离了中心平衡点,一边的斥力会减小,另一侧的的斥力会增加,促使悬浮磁体加速偏离中点,导致悬浮磁体迅速掉落。因此为了保证水平方向稳定,必须增加自动控制环节。NS底座磁体悬浮磁体S图21下推式磁悬浮磁场原理图反馈环节采用线性霍尔传感器实时获取永磁体位置信息,产生电压信号,控制器对电压信号进行处理产生相应控制信号(以PWM波形式),功率放大器根据控制信号产生所需电流并送往电磁铁,电磁铁产生相应磁力与河南科技大学毕业设计(论文)6干扰或外磁力平衡使得永磁体稳定在设定点附近。当永磁体受到干扰水平运动时,永磁体与设定位置的距离变化,霍尔传感器所获得的位置信号亦随之变化,其输出电压改变,经过功率放大器处理后,使得电磁铁控制绕组的控制电流变化,改变电磁吸、拉力,永磁体被调回平衡位置。该悬浮系统是利用电磁力来控制永磁体悬浮的空间位置。PID控制器执行器被控对象(过程)传感器偏差测量值被控参数给定值控制信号控制量图22下推式磁悬浮系统框图22磁悬浮系统的组成NS底座磁体悬浮磁体电磁线圈霍尔磁场传感器XY图23下推式磁悬浮系统结构原理图河南科技大学毕业设计(论文)7下推式磁悬浮系统主要由悬浮磁体、底座磁体、线性霍尔传感器、控制器、电磁线圈组成,电磁线圈位于悬浮磁体下方。下推式磁悬浮系统在控制器的控制下,电磁线圈产生合适的电磁力与永磁体相互吸引,使永磁体悬浮在设定位置上。霍尔传感器能够检测永磁体的位置。控制器不断检测悬浮磁体的位置,与设定位置做比较,产生一定的线圈电流,继而产生磁场力,使磁体能够动态稳定在设定位置上。悬浮物体使用了永磁体,自身就有很强的吸力,可以减少电磁线圈消耗的电流。23磁悬浮系统的结构特点本课题主要研究磁悬浮实验系统的软件,软件设计要与系统的结构相匹配。设计的下推式磁悬浮系统总体结构安排有以下特点1永磁体浮子自身带有很强的磁性,提供了一部分斥力与底板永磁铁平衡,故线圈中电流大小不需太大。此外,浮子的磁场强度可供传感器检测位置使用。2作为反馈环节的传感器,要检测到悬浮体的位置,本课题设计使用两个传感器对于这种位置安排,当浮子远离中心时,传感器检测信号变强,这时需要电磁线圈中通过更大的电流,提供更大的吸力和拉力,将浮子水平吸引;而当浮子靠近中心时,即水平运动靠近线圈,这时需要线圈中电流减小,吸力和拉力减小。上述便是本课题软件设计的总体思想。本次软件设计将以单片机作为控制芯片,编程创建PID控制系统,对于线圈电流的控制,采用控制PWM信号占空比的方法控制其大小。24磁悬浮系统的主要参数磁悬浮系统对实时性要求很高,而且控制的快速性、准确性和稳定性是系统能否稳定的关键。这就需要合理的选用元件、设计结构位置的安排。河南科技大学毕业设计(论文)8传感器选用线性霍尔传感器,型号为3503,它能够检测磁场强度,返回电压信号。永磁体越靠近传感器,返回电压信号越强。返回值实测范围16942403。电磁线圈是提供悬浮体平衡力力的器件,有足够的磁场力力才能保证系统的顺利运行,设计中将给电磁线圈中通直流电。设计最大线圈电流为03A。经实验确定电流足够。控制器使用ARDUINO开发板,通过软件编程构建位置式PID控制器,经分析本系统综合使用PID环节可达到不错的效果。霍尔传感器3503到电磁铁端面距离设计为50MM,并设定3503参考值为2000,经调试该环境下会使永磁体悬浮于距离传感器25MM的位置附近。河南科技大学毕业设计(论文)9第3章下推式磁悬浮控制系统设计31位置检测原理为了检测悬浮磁体的水平位置,在磁体下方,X轴中点位置放置了一个线性霍尔传感器。该传感器能够产生一个带方向并与磁场成正比的电压信号。图31霍尼韦尔3503线性霍尔传感器当磁体处于中点时,没有磁力线穿越霍尔传感器,因此输出为0;当磁体位于负位置时,磁力线沿负方向穿越霍尔传感器,输出为负值,偏离越远,输出越大;正方向同理可知。N悬浮磁体霍尔磁场传感器磁场XS图32线性霍尔传感器位置检测原理为了控制悬浮的水平位置,在X正、负方向放置两个电磁线圈,两个线河南科技大学毕业设计(论文)10圈导线为串联关系,但绕向相反。假设磁体在扰动作用下偏离中点,到达负位置,则霍尔传感器检测到负磁场,则控制器给电磁线圈通入正电流,线圈1产生斥力,线圈2因为绕向相反而产生吸力。磁体在一推一拉的作用下回到中点位置。Y方向同理,配置有两个线圈和一个霍尔传感器,将磁体控制在Y方向中点。N悬浮磁体电磁线圈X2霍尔磁场传感器NS电磁线圈X1磁场XII图33下推式磁悬浮系统控制系统框图32控制系统设计321系统数学模型根据上述控制原理,设计X方向控制系统如下,Y方向同理。图34下推式磁悬浮系统控制系统框图永磁体受力分析F图35受力分析河南科技大学毕业设计(论文)11动态方程为MXF1其中,F是电磁线圈产生的磁力,可以表述如下2FCI2其中,C是与电磁线圈参数有关的系数,令C2C。方程2是一个非线性方程,为了便于处理,需要对其线性化。假设系统工作点为00I,在工作点处使用泰勒级数展开,抛去高阶项,得到FCI3将方程3带入方程1得到MXCI4两边零初始条件下得拉氏变换,整理后得到传递函数2XSCGSISMS5为了便于处理,将霍尔传感器简化为单位环节,则控制系统框图可以简化为IXSOXSESDS2CMS控制器对象IS图36磁悬浮系统控制简化框图322控制器设计设计一个控制系统需要满足稳定性、准确性、快速性三方面的要求。其中稳定性是最重要的。系统闭环传递函数21OCIXSDSGSCDSGSXSDSGSMSCDS6系统控制传递函数1IIISDSGSXSDSGS7河南科技大学毕业设计(论文)12闭环特征方程为21NSGSMSCDS8若选择控制器为比例控制DSK9则比例控制作用下的特征方程为2NSMSCK10由劳斯判据可知,特征方程缺乏S的一次方项,闭环系统不稳定。简单的比例控制无法满足要求,因此添加微分项,构成比例微分控制器PDDSKKS11则闭环系统传递函数21DPOCIDPCKSCKXSDSGSGSXSDSGSMSCKSCK12比例微分控制时的特征方程为2DPNSMSCKSCK13可见系统为二阶,无阻尼自然震荡频率和阻尼比为2PDPCKMKCMK14选择合适的比例系数PK、微分系数DK,使闭环特征方程的两个根均为负实部即可保证稳定。若07,可以使系统性能达到最优。323系统仿真为了验证上述可知系统的设计十分有效,本节使用MATLAB对控制系统进行仿真。为了简化编程,这里对系统参数进行了简化。运行下面程序后可以得到闭环系统的单位脉冲响应曲线。C1KD25KP30M1河南科技大学毕业设计(论文)13STFSGCKDSCKP/MSSCKDSCKPIMPULSEG000501015020250510152025IMPULSERESPONSETIMESECONDSAMPLITUDE图37单位脉冲响应仿真曲线从单位脉冲响应曲线可知,若磁体因为扰动偏离原点,则能够在自动控制系统的作用下,015秒左右回到原点,且无震荡。C1KP10KD100KI001M1STFSDSKP1KDS/001S1KI/SGSC/M/S/SGCDSGS/1DSGS河南科技大学毕业设计(论文)14GIDS/1DSGSSTEPGC000200400600801012002040608112141618STEPRESPONSETIMESECONDSAMPLITUDE33小结本章讨论了下推式磁悬浮系统的检测原理、数学模型、控制系统设计,最后进行了控制系统仿真。结果表明设计的比例微分控制器能够有效的对磁体的悬浮位置进行控制。但是建模以及仿真时对真实系统进行了大幅简化,例如磁场的非线性、电磁线圈的磁滞、控制量的饱和等均未考虑,因此仿真结果仅能表明设计的有效性,对设计的大致方向进行指导。控制系统的参数调整、真实响应曲线还需要进行实验验证。河南科技大学毕业设计(论文)15第4章磁悬浮软件设计41软件开发环境介绍河南科技大学毕业设计(论文)16软件设计基于ARDUINONANO开发板。ARDUINO是一块基于开放原始代码的SIMPLEI/O平台,并且具有使用类似JAVA,C语言的开发环境。411ARDUINONANO开发板介绍ARDUINONANO控制板基于ATMEGA328,有14个数字输入输出脚,6个模拟输入口,16MHZ内部晶振,USB链接,电源插座和ICSP接头。它包含了微处理器所必须的所有元件,只需用USB连接线插入电脑即可开始使用。ARDUINONANO特色1、开放源代码的电路图设计,程序开发接口免费下载,也可依需求自己修改。2、使用低价格的微处理控制器ATMEGA328。可以采用USB接口供电,不需外接电源。也可以使用外部5VDC输入。3、ARDUINO支持ISP在线烧,可以将新的“BOOTLOADER”固件烧入ATMEGA328或ATMEGA168芯片。有了BOOTLOADER之后,可以通过串口或者USBTORS232线更新固件。4、可依据官方提供的EAGEL格式PCB和SCH电路图,简化ARDUINO模组,完成独立运作的微处理控制。可简单地与传感器,各式各样的电子元件连接EX红外线、超音波、热敏电阻、光敏电阻、伺服马达等。5、支持多种互动程序,如FLASH、MAX/MSP、PD、C、PROCESSING等。6、应用方面,利用DFRDUINO,突破以往只能使用鼠标、键盘,CCD等输入的装置的互动内容,可以更简单地达成单人或多人游戏互动。ARDUINONANO规格参数1微控制器核心AVRMEGA32820PU(处理速度可达20MIPS)2工作电压5V3外部输入电压7V12V(建议)4外部输入电压(极值)6VVIN20V5数字信号I/O接口14(其中6个PWM输出接口)6模拟信号输入接口67DCI/O接口电流40MA8FLASH容量16KB其他2K用于BOOTLOADER9SRAM静态存储容量1KB河南科技大学毕业设计(论文)1710EEPROM存储容量512BYTES11时钟频率16MHZ图41ARDUINONANO开发板412ARDUINO编程环境ARDUINO开发板使用其官网自带编程软件,开发编译环境十分简洁。本设计使用版本ARDUINO155R2。界面集成性很好,显示按键功能简单明了,在界面中直接用C语言编程,如图4、5所示。ARDUINO155R2开发编译环境很简洁,ARDUINO语言是建立在C/C基础上的,其实也就是基础的C语言。它只不过把AVR单片机相关的一些寄存器参数设置等都函数化了,使我们不用去了解它的底层,轻松上手。ARDUINO语言是以SETUP开头,LOOP作为主体的一个程序构架。SETUP函数用来初始化变量,管脚模式,调用库函数等等,此函数只运行一次。LOOP函数是一个循环函数,函数内的语句周而复始的循环执行,功能类似C语言中的“MAIN”。河南科技大学毕业设计(论文)18图42ARDUINO开发板编程软件界面图43ARDUINO软件界面按键功能使用ARDUINO开发板和其自带的集成开发环境使得开发过程变得简单,在程序编辑框中编写程序,然后点工具栏中的编译按钮,编译成功后点击下载按钮即可完成程序的下载,点击按钮可打开串口调试窗口进行串口调试。河南科技大学毕业设计(论文)1942软件设计思想与程序流程图根据下推式磁悬浮的结构设计安排可知,软件设计思想有以下几点1电磁线圈电流由PWM占空比控制,占空比越大,线圈电流越大;2悬浮体的位置信号通过传感器得到,传感器返回信号越强,表示需要电磁线圈吸力越大,即PWM占空比越大。3所需的PWM占空比可通过PID算法对传感器返回值进行计算获得。4在主程序中,软件系统不仅要实时显示磁悬浮状态信息,还要与上位机进行通讯。为了实现多任务同时进行,需要引入中断方式。本课题设计的磁悬浮系统下位机软件,需要实现的功能有串口数据发送、按键进行相应动作、传感器返回值读取、PID算法控制、PWM输出。程序流程图大致如图6所示河南科技大学毕业设计(论文)20图44磁悬浮系统软件程序流程图43数据采集下推式磁悬浮系统使用线性霍尔传感器作为反馈环节,其返回的电压信号,零点返回电压值为25V,将该信号直接通过ARDUINO模拟IO口读入,并通过AD7792的16位AD进行转换,转化后值为065535,对应0117V电压。本设计使用模拟口读入。VOIDTIMER河南科技大学毕业设计(论文)21STATICENUMREAD_A,READ_BTURNIFREAD_ATURNAACTUAL32767AD7792_SPIREADTWOREGISTERSAD7792_REG_DATAAD7792_SETCHANNELCHANNEL_BAD7792_SETMODEAD7792_MODE_SINGLETURNREAD_BELSEIFREAD_BTURNBACTUAL32767AD7792_SPIREADTWOREGISTERSAD7792_REG_DATAAD7792_SETCHANNELCHANNEL_AAD7792_SETMODEAD7792_MODE_SINGLETURNREAD_APID_COMPUTE44PID调节控制由于磁悬浮系统是一个天然不稳定系统,该系统对实时性要求很高,最终决定使用PID控制算法。PID是比例,积分,微分的缩写比例调节作用是按比例反应系统的偏差,系统一旦出现了偏差,比例调节立即产生调节作用用以减少偏差。比例作用大,可以加快调节,减少误差,但是过大的比例,使系统的稳定性下降,甚至造成系统的不稳定。河南科技大学毕业设计(论文)22积分调节作用是使系统消除稳态误差,提高无差度。因为有误差,积分调节就进行,直至无差,积分调节停止,积分调节输出一常值。积分作用的强弱取决与积分时间常数KI,KI越小,积分作用就越弱。反之KI大则积分作用强,加入积分调节可使系统稳定性下降,动态响应变慢。积分作用常与另两种调节规律结合,组成PI调节器或PID调节器。微分调节作用微分作用反映系统偏差信号的变化率,具有预见性,能预见偏差变化的趋势,因此能产生超前的控制作用,在偏差还没有形成之前,已被微分调节作用消除。因此,可以改善系统的动态性能。在微分时间选择合适情况下,可以减少超调,减少调节时间。微分作用对噪声干扰有放大作用,因此过强的加微分调节,对系统抗干扰不利。此外,微分反应的是变化率,而当输入没有变化时,微分作用输出为零。微分作用不能单独使用,需要与另外两种调节规律相结合,组成PD或PID控制器。对于PID参数KP比例增益偏差愈大时,KP也愈大,比例期补偿更大,过大的比例增益会导致系统的不稳定乃至崩溃。KI积分,KI越大时,稳态偏差会更迅速地被消除,在达到稳态之前,在瞬态响应期间组合的任何误差必须分开。KD微分,KD越大时,越容易超调,但是不同扰动区域的信号噪音的瞬态响应可能导致系统的不稳定。PID算法0TPDIDETUTKETKKETDTDTINTSAMPLETIME12VOIDPID_COMPUTESTATICINTLASTERROR0STATICUNSIGNEDLONGINTLASTTIME0CHARSTR50河南科技大学毕业设计(论文)23NOWMICROSTIMECHANGENOWLASTTIMEIFTIMECHANGESAMPLETIMELASTTIMENOW/PID控制算法UKP偏差KD偏差速度KI偏差累积AERRORASETAACTUAL/偏差APITERMAERROR/偏差,比例项ADITERMAKDAERRORALASTERROR/SAMPLETIME/偏差速度,微分项AIITERMAKIAERRORSAMPLETIME/偏差累积,积分项AUAKPAPITERMADITERMAIITERM/控制量/极性IFAU0APWMAUA_POSELSEAPWMAUA_NEG为保证计算出的输出值不至于无限制变化,故限定其范围在0255,从而避免无法提供此PWM的现象。另外在程序中使用TIMER2作为定时器,以保证与PID计算频率的配合,保证了PID计算的准确性。在PID算法中,其核心内容是PID参数的确定,参数是否合适决定了磁悬浮系统的稳定性。参数确定是根据被控过程的特性确定PID控制器的比例系数、积分时间和微分时间的大小。在调试时,可先设置积分和微分参数为0,从小到大调节比例系数,当感觉到悬浮体在平衡位置出现震动时,河南科技大学毕业设计(论文)24确定比例系数。然后依次加入积分微分项,直至调试系统稳定。PID控制器参数整定的方法很多,概括起来有两大类一是理论计算整定法。它主要是依据系统的数学模型,经过理论计算确定控制器参数。这种方法所得到的计算数据未必可以直接用,还必须通过工程实际进行调整和修改。二是工程整定方法,它主要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。45PWM输出对于电磁线圈中通电电流的控制,设计将采用PWM的控制方式。PWM是一种对模拟信号电平进行数字编码的方法。通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。只要带宽足够,任何模拟值都可以使用PWM进行编码。这种方式是目前利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。PWM控制技术以其控制简单,灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,PWM的一个优点是从处理器到被控系统信号都是数字形式的,无需进行数模转换。让信号保持为数字形式可将噪声影响降到最小。噪声只有在强到足以将逻辑1改变为逻辑0或将逻辑0改变为逻辑1时,也才能对数字信号产生影响。河南科技大学毕业设计(论文)25图45PWM的一般形式(占空比0100)对于ARDUINO而言,有三种方式可以产生PWM。第一种直接用ARDUINO语言库中的ANALOGWRITEPIN,VAL命令,可以在几个指定的数字IO口输出PWM。其中PIN是引脚的编号,此函数只能用3,5,6,9,10,11这6个IO口,VAL表示为0255的整数值,代表占空比。第二种手动用代码实现PWM。这是一个基本的方法,原理就是在一段时间内给予IO口高电平,另一段时间内给予其低电平,两段时间加在一起作为一个脉宽长度。这种方法的优点1PWM的比例可以更精确;2周期和频率可控制;3所有的PIN脚都可以输出,不局限于那几个脚;但其缺点CPU干不了其他事情了,在本设计中要进行PID定时运算、串口发送数据、实现变化动作功能等,所以这种方法不适用。第三种使用PWM寄存器,此方法下有两种PWM模式“快速PWM”和“相位修正PWM”。对于快速PWM来说,时钟都是从0计数到255。当计数器0时,输出高电平1,当计数器等于比较寄存器时,输出低电平0。所以输出比较器越大,占空比越高。另外一种PWM模式是相位修正模式,也叫做“双斜率PWM”,这种模式下,计数器从0数到255,然后从255再倒数到0。当计数器在上升过程中遇到比较器的时候,输出0;在下降过程中遇到比较器的时候,输出1。相位修正PWM具有更加对称的输出,输出如图8所示。相位修正PWM和快速PWM的区别在于,相位修正PWM在达到上限值后做减一操作,然后到达匹配值后端口再发生变化,其他特性和快速PWM基本一致。其中相位修正PWM为用户提供了一个获得高精度相位修正PWM波形的方法,计时器重复地从BOTTOM计到MAX,然后又从MAX倒退河南科技大学毕业设计(论文)26回到BOTTOM,在一般的比较输出模式下,当计时器往MAX计数时若发生了TCNT0与OCR0的匹配,OC0将清零为低电平;而在计时器往BOTTOM计数时若发生了TCNT0与OCR0的匹配,OC0将置位为高电平。它与单斜坡操作相比,双斜坡操作可获得的最大频率要小,但由于其对称的特性,十分适合于直流控制。图46相位修正PWM时序图经综合考虑,本设计将ANALOGWRITEPIN,VAL方式产生PWM,使用时钟TIMER2,产生PWM波的频率为976HZ,周期大约1MS,已经足够使用。APWMCONSTRAINAPWM,0,255/PWM只能在0255之间ANALOGWRITEEN1_PIN,APWM/产生PWM输出/REMEMBERSOMEVARIABLESFORNEXTTIME/ALASTERRORAERROR通过这种方法,在程序进行PID控制算法以后,会将算出的占空比在3、5口直接输出。河南科技大学毕业设计(论文)2746上位机通信ARDUINO不但有14个数字接口和6个模拟接口外,还有一个更为常用的串口接口,串口通讯中最重要的一点就的通讯协议,一般串口通讯协议都会有波特率、数据位、停止位、校验位等参数。ARDUINO语言中SERIALBEGIN函数能够轻松完成设置,例如SERIALBEGIN115200,则表示波特率为115200BIT/S每秒比特数BPS,其余参数默认即可。此外ARDUINO软件还自带模拟串口显示功能。图47模拟串口显示按钮VOIDLOOPSERIALPRINTLNINPUT本设计与上位机通信只需发送传感器检测到的位置信号,然后在上位机中显示出数据即可。故使用SERIALPRINTLN函数,在主程序中不断向串口发送数据。47按键变化功能在保证悬浮体在系统中稳定悬浮的基础上,本设计要求悬浮体还能水平移动,故设计使悬浮体产生一个阶跃变化,即上下跳动。通过按键激发此功能,按键设定为下降沿有效VOIDLOOP河南科技大学毕业设计(论文)28CHARSTR50/POLAR_TEST/SNPRINTFSTR,50,“04D,04D,04D,04D,04D,04D,04D“,ASET,AACTUAL,AERROR,INTAPITERM,INTADITERM,INTAIITERM,ACTRL/SNPRINTFSTR,50,“04D,04D“,ASET,AACTUALIF0ABUTTON_LASTIFASTATEASET2200ELSEASET1800ABUTTON_LASTDIGITALREADA_PINSNPRINTFSTR,50,“04D,04D,04D,04D“,ASET,AACTUAL,BSET,BACTUALSERIALPRINTLNSTRDELAY20悬浮体水平跳动范围需选在稳定悬浮范围内,而且不能太大。由于磁悬浮系统自身具有很强的非线性,如果选定较大范围,会使PID参数不再适用,导致使得悬浮体在进行跳动过程中失去稳定性。河南科技大学毕业设计(论文)29最后,在进行移动变化后悬浮体还原为稳定悬浮状态。河南科技大学毕业设计(论文)30第5章运行调试与结果分析51硬件接线根据系统中所选择的接口对硬件进行接线,接线图如下图所示图51最后接线图52程序的编译与上传下面就要开始进行运行与调试了,首先要将系统从IDE环境中写入ARDUINO单片机中,其方法如下。先将ARDUINO开发板通过串口连接到电脑上,然后在IDE环境中点击TOOLS选项卡,在下拉菜单中选择“板”,然后点击ARDUINONANO。然后选择端口,在下拉菜单中选择“端口”,然后点击对应端口(COM4)。河南科技大学毕业设计(论文)31然后进行编译图52IDE编译菜单编译完成点击上传,就成功将程序传到了ARDUINO开发板上。X、Y运行原理相同,各自独立调试。53确定系统极性定义正方向霍尔传感器测量磁体位置,定义霍尔传感器输出增加的方向为正方向确定线圈正方向确定L298N的IN1、IN2电平,使得通入线圈电流产河南科技大学毕业设计(论文)32生的线圈磁场力吸引磁体向正方向运动。系统极性确定后,就可以构成负反馈假设磁体位于设定位置正方向,则设定位置小于实际位置,产生负偏差,比例控制器会产生负电流,线圈反方向吸引磁体,将磁体拉回设定位置。54PID参数整定整定的含义就是确定最优的的参数。基本原则首先确定KP,其次是微分KD,最后是积分KI。初始状态KP、KD、KI均设为0;1首先只整定比例部分。比例系数KP由小变大,观察相应的系统响应,直到得到反应快,超调小的响应曲线。系统若无静差或静差已小到允许范围内,并且响应效果良好,那么只须用比例控制器即可。2若稳态误差不能满足设计要求,则需加入积分控制。整定时先置积分时间TI为一较大值,并将经第1步整定得到的KP减小些,然后减小KI,并使系统在保持良好动态响应的情况下,消除稳态误差。这种调整可根据响应曲线的状态,反复改变KP及KI,以期得到满意的控制过程。3若使用PI控制器消除了稳态误差,但动态过程仍不能满意,则可加入微分环节。在第2步整定的基础上,逐步增大KD,同时相应地改变KP和KI,逐步试凑以获得满意的控制效果。运用SERIALCHART软件对串口返回数据进行分析,波形和数据如图河南科技大学毕业设计(论文)33图53A向单位阶跃响应1如图53,系统处于震荡,比例系数不合适,误差较大。图54A向单位阶跃响应2加入按键程序,改动程序后照上面所述再次写入单片机测试,按键时浮河南科技大学毕业设计(论文)34子可以从X或Y方向水平移动一个距离,然后保持平衡。在上面的基础上反复尝试调节KP后,得到图54所示波形,已经可以达到平衡,但是振动不够平稳,调节时间略长。图55A向单位阶跃响应3再次调节KI后,得到图55所示波形,调节时间明显变短,震荡也更为平稳。多次尝试改变KP和KI、KD,每次改变都要重新将程序写入单片机,不过经过数据的多次改动,发现浮子逐渐稳定悬浮。55结果在PID控制调节作用下,悬浮浮子最终可在平衡位置较为平稳悬浮,但有少许振动,可能是由于水平方向受到分力影响。总体,系统可达到稳定,测试平均悬浮时间可达5分钟以上。河南科技大学毕业设计(论文)35图56浮子空间悬浮河南科技大学毕业设计(论文)36结论磁悬浮技术以其特有的优点受到广泛的研究,在能源、交通、航空航天、机械工业和生命科学等高科技领域具有广泛的应用背景。对磁悬浮技术进行进一步的研究,以推动磁悬浮高技术产品的开发与应用,具有重要的理论意义和现实意义。控制器是磁悬浮系统中的重要环节,其性能与系统的稳定性及各项技术指标有着密切关系。在本次毕业设计中,我负责的是下推式磁悬浮系统的软件设计,通过前几个月的学习理解,使我掌握了ARDUINO开发板的使用方法,接触到很多集成化的函数语句,和以往用的C51单片机相比,ARDUINO使我感觉更加简单方便实用。通过近半年的软件编程,我对程序编写模块化、整体化、系统化也都有了很好的理解。通过本次毕业设计,我还从中了解到国内外磁悬浮技术的发展状况以及存在的问题,学会了如何去构建一套完整的控制系统,也学会了PID参数的调试方法等等,最重要的是通过实践加强了我分析问题和解决问题的能力,将我从理论知识层面带入到动手实践中,对我而言十分有意义。在这半年的毕业设计过程中,由于学校及指导老师的严格要求,慢慢培养了我们严谨对待知识及问题的态度。毕业设计最接近以后的工作内容,这次设计也为我们今后的人生之路打下坚实的基础。虽然经过这次毕业设计,我自身的理论知识和实际操作都有了长足的进步,但由于技术水平有限,很多理论知识掌握不够深入,在设计中还存在着一些不足之处,也有一些设计想法没能很好地展示,最后还请各位老师给予多多的批评和指正。河南科技大学毕业设计(论文)37参考文献1胡寿松自动控制原理M第五版北京科学出版社,20072刘豹,唐万生现代控制理论M第三版北京机械工业出版社,20069543薛定宇反馈控制系统设计与分析M北京清华大学出版社,20001201314彭建刚系统的控制研究J自动化技术与应用,200848505张士勇磁悬浮技术的应用现状与展望J工业仪表与自动化控制,2003,363656王义进,席文明磁悬浮球控制系统的设计研究J计算机测量与控制,2007,57SIMONMONK,吴兰臻,郑海昕,王天祥基于ARDUINO的趣味电子制作M第一版科学出版社2011,7,18谭浩强C语言设计M第三版北京清华大学出版社,20079谢剑英,贾青微型计算机控制技术M第三版国防工业出版社2006,8,110于洪国,王平一种改进的最优PID参数自整定控制方法J现代电子技术2010第19期11北京龙凡汇众机器人科技有限公司ARDUINO控制器使用教程12徐俊起基于力平衡的磁悬浮控制方法J电机与控制应用2010,371113HUGHBLEMINGSPRACTICALARDUINOCOOLPROJECTSFOROPENSOURCEHARDWAREMAPRESSDECEMBER28,200914MICHAELMCROBERTSBEGINNINGARDUINOMA

温馨提示

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

评论

0/150

提交评论