基于ARM9的直流电机控制系统的设计.docx
《基于ARM9的直流电机控制系统的设计.docx》由会员分享,可在线阅读,更多相关《基于ARM9的直流电机控制系统的设计.docx(44页珍藏版)》请在冰豆网上搜索。
基于ARM9的直流电机控制系统的设计
基于ARM9的直流电机控制系统的设计
沈阳航空航天大学
2010年6月
摘要
随着我国经济的高速发展,微电子技术、计算机技术和自动控制技术也得到了迅速发展,直流电机调速技术已经进入一个崭新的时代,其应用越来越广。
而作为控制核心的各种单片机芯片也在不断的更新发展,其功能越来越强大。
随着人们对其要求的提高,直流电机控制系统的调速方法也相应的产生了PWM(脉宽调制技术),其控制芯片也由原来常用的51单片机系列升华为ARM系列的控制实验板。
本设计基于ARM9开发板的直流电机控制系统的调速,以显示ARM开发板的独特功能,利用脉宽调制技术,调节占空比以达到调节转速的目的,将测得的数据传给上位机后进行观测。
设计大体上分为硬件设计和软件设计两部分,硬件部分包括驱动模块,控制模块,数据检测模块以及通信模块,软件部分包括程序设计,两大部分实现了对电机转速的监测和控制,更好的确保了设计的准确性。
通过合理的选择和设计提高了直流电机控制系统调速的技术,学习和研究新型控制芯片,使设计达到了较为理想的控制效果是本设计的宗旨。
关键词:
ARM9开发板;PWM技术;PID调节功能
Abstract
AlongwiththerapiddevelopmentofChineseeconomy,microelectronicstechnology,computertechnologyandautomaticcontroltechnologyisrapidlydeveloping,dcmotorcontroltechnologyhasenteredanewera,themoreandmorewideapplication.AsthecoreofMCUcontrolchipareconstantlyupdateddevelopment,itsfunctionandmorepowerful.Asforthepeople,thecontrolsystemofdcmotorcontrolmethodandthecorrespondingproducethepulsewidthmodulation(PWM)anditscontrolchiptechnologyisusedbytheoriginalsublimated51-seriesmicrocomputerseriesofcontrolboardARMseries.ThedesignisbasedonARM9developmentboardofthecontrolsystemofdcmotorspeed,inordertoshowtheARMdevelopmentboard,usingtheuniquefunctionofPWMtechnology,SHCHadjustmentinordertoachievethegoal,willadjustspeedmeasurementdatatoPCandsoftwareit.Generaldesignofhardwaredesignandsoftwaredesignisdividedintotwoparts,hardwarepartincludesdrivermodule,controlmodule,datacommunicationmodule,andthesoftwaremoduleincludesprogrammingmodule,twomostofthemonitoringandcontrolmotorspeed,betterensuretheaccuracyofthedesign.Throughthereasonableselectionanddesignofdcmotorcontrolsystemtoimprovethespeedoftechnology,learningandresearch,newcontrolchipdesigntotheidealcontroleffectisthedesignpurpose.
Keywords:
ARM9Board;PWM;PIDAdjustmentFunction
1绪论
随着我国经济的高速发展,微电子技术、计算机技术和自动控制技术也得到了迅速发展,直流电机调速技术已经进入一个崭新的时代。
然而,电机调速的方法有很多,比如说变极对数调速法,变频调速法,串级调速法,绕线式电动机转子串电阻调速法,定子调压调速法,电磁调速法等。
但是在某些条件下,直流电机调速具有其特有的优势。
为了提高生产率和保证产品质量,大量的生产机械要求直流电机以不同的速度工作。
这就要求人们采用一定的方法来改变机组的转速,即对直流电机进行调速。
对电机的转速不仅要能调节,而且要求调节的范围宽广,过程平滑,调节的方法要简单、经济。
直流电机在上述方面都具有独到的优点,使它得到广泛的应用。
本文针对直流电机具有起动转距大、体积小、重量轻、转矩和转速容易控制以及效率高等十分优良的特点,根据自动控制原理,采用PWM控制方式,设计了一个直流电机控制系统,以更好地对直流电机进行精确而又迅速的控制。
1.1毕业设计立题意义
直流电机是常用的动力提供原件,在日常生活中占据着十分重要的地位,研究直流电机的速度控制,有十分重要的意义。
驱动电机选用直流电机,这是因为直流电机具有优越的速度调节控制性能,具有较大的转矩,用以克服装置的摩擦阻力和负载转矩,调速范围宽而且速度平稳,具有快速响应能力,可以适应复杂的速度变化,直流电机的负载特性硬,有较大的过载能力,可以确保运行速度不受负载冲击的影响。
ARM是近年来发展非常迅速的处理器,有很好的应用前景。
ARM,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。
ARM处理器是现代非常流行及重要的一款芯片,其拥有良好的发展性,有广泛的应用领域。
ARM公司自1990年正式成立以来,在32位RISC(ReducedInstructionSetComputerCPU开发领域不断取得突破,其结构已经从V3发展到V6。
由于ARM公司自成立以来,一直以IP(IntelligenceProperty)提供者的身份向各大半导体制造商出售知识产权,而自己从不介入芯片的生产销售,加上其设计的芯核具有功耗低、成本低等显著优点,因此获得众多的半导体厂家和整机厂商的大力支持,在32位嵌入式应用领域获得了巨大的成功,目前已经占有75%以上的32位RISC嵌入式产品市场。
在低功耗、低成本的嵌入式应用领域确立了市场领导地位。
现在设计、生产ARM芯片的国际大公司已经超过50多家,国内中兴通讯和华为通讯等公司也已经购买ARM公司的芯核用于通讯专用芯片的设计。
将其应用在直流电机的调速控制中,有极大的实用价值。
以脉宽调制技术为代表的电机数字驱动技术也在迅猛发展,将计算机应用于这一领域正好可以发挥其在数字方面控制的优势。
微电子技术和计算机技术的发展,为计算机控制技术的发展和应用奠定了坚实的基础。
可以这样说,没有微处理器的仪器不能称为仪器,没有微型机的控制系统,更谈不上现代工业控制系统。
随着微型计算机,超大规模集成电路,新型电力电子开关器件和传感器的出现,以及自动控制理论和电力电子技术以及计算机控制技术的深入发展,直流传动系统也在不断发展。
直流电机是常用的动力提供元件,在日常生活中占据着重要的地位。
直流电机是最常见的一种电机,在各领域中得到广泛应用。
研究直流电机的速度控制,有着非常重要的意义。
研究直流电机的控制和测量方法,对提高控制精度和响应速度、节约能源等都具有重要意义。
本方案以ARM9为控制核心,实现普通直流电机的转速测量和转速调节功能,为进一步研究和优化直流电机控制方法提供基础。
直流电机控制系统的转速控制方法可分为两类,即励磁控制法和电枢电压控制法。
通常的方法是改变输入端电压对电枢电压的控制,继而实现对转速的改变,本次毕业设计实验将使用ARM9来实现对输入端电压的控制,从而对ARM的直流电机控制系统的设计与调速作深入研究,并对其监检测方面进行研究。
PWM(PulcsiWdhtMdoluatino)脉宽调制技术是直流电机调速中最为有效的方法,即给直流电机输入高速的开关脉冲信号,通过改变脉冲信号开关的比例,达到速度控制的效果。
简单的解释是,由于在ON的时间内施加电压,OFF的时间内切断电压,电机的转动将是断续的。
不过在脉冲波段的OFF区段,电机线圈内部储存的能量能够产生续流二极管流动的电流,因此得以继续维持转动。
PWM调速的基本思想是:
以通过电机的平均电压和电流作比较,40%的时间接通电源的电机比20%的时间接通电源的电机要大。
当电机没有接通电源时,它完全不消耗能量,这一点正是其高效率的原因。
PWM技术是降低直流电机功耗的一种好方法,它使驱动芯片和电机的发热减少,从而电机也可以用得更久。
在工业控制中,按偏差的比例P、积分I和微分D进行控制的PID调节器现在得到广泛的应用。
在小型微型计算机用于生产过程以前,连续过程系统中采用的气动、液动和电动的PID调节器几乎占垄断地位。
由最优控制理论可以证明,它能适应不少工业控制对象的要求。
单片机控制技术不断发展,特别是软件PID算法控制器的使用,代替了原来很多的硬件PID调节器,在工业控制系统和嵌入式系统中得到广泛的应用。
1.2研究内容及目标
利用ARM9实验板及直流电机实验板实现直流电机转速测量和调节。
使系统实现下列功能:
(1)可通过ARM实验板上的按键设定电机的转动方向、转速;
(2)可对电机进行转速调节,实时测量电机的实际转速,并通过RS232总线把转速传给上位机;
本次毕设要达到的指标是电机驱动电路采用集成电路SPGT62C19B电机模组,可以驱动电压46V,电流2A以下的电机;电机转速调节范围30—60转/秒,转速误差值不大于1转/秒。
1.3毕业设计内容分析
本设计的主要目的是对直流电机控制系统的转速测量和监控做一个系统的设计,由上位机,也就是电脑,和下位机进行通讯,控制整个系统的运行。
其次下位机包括ARM9开发板,它作为控制核心发布指令,由驱动模组带动直流电机旋转,再由串口将所得数据传输给上位机。
大体需要以下几个准备步骤:
首先,了解整个设计所涉及到的知识点,搜集资料加以学习。
其次,根据设计的要求和需要选择硬件,包括直流电机和电阻等。
再次,设计SPGT直流电机驱动模块和速度检测模块电路,并完成硬件搭建。
最后,制定上下位机通信协议,将采用RS-232C来实现串口通信。
2总体方案设计
直流电机控制系统的设计,重点在于上位机和下位机功能的串联,硬件和软件的相互联调。
本设计的主要目的是测量监控电机的转速,那么选用何种方法调节转速就是关键问题。
与此同时,测得的数据或多或少存在误差,在此设计的基础上,如何有的加进一些措施来调节误差,误差控制在一定范围也是值得讨论的。
2.1直流电机控制系统的总体设计思想
本设计的思想将分为两大部分进行,一是由上位机组成的软件部分的设计,这一部分包括程序的编写。
二是由ARM9开发板和驱动电路板等组成的下位机,称之为硬件部分,包括驱动模块,控制模块,数据检测模块以及通信模块。
本设计的主要工作是基于ARM9的直流电机调速系统的设计,从内容上也分为软件和硬件的两大部分来设计。
最后还要在硬件软件相应完成的基础上进行调试,所以本次课题设计内容安排可分为三个步骤。
第一步骤是硬件设计,包括方案主要模块的电路设计、元器件的选择等。
具体的硬件电路是SPGT驱动模块和速度检测模块两大电路。
先对每一个模块的各个芯片测试成功后,再焊接其对应的整个模块电路,且每一部分都要进行单独调试,各个部分调试成功后,联接调试整个硬件电路,对在途中出现的错误进行分析和改正,最后得出结论。
第二步骤是软件设计,软件采用C语言编写,软件设计的思想主要是自顶向下,模块化设计,逐一设计各个子模块,分别进行调试,最后的连调整个程序,判断是否达到预期的要求,做出结论。
第三步骤硬件模块调试都成功的前提下,进行硬、软件连调。
2.2硬件部分设计
这一部分是由驱动模块,控制模块,数据检测模块以及通信模块组成的。
用到的硬件有ARM9开发板,直流电机,SPGT62C19B电机模组以及一些检测设备。
以ARM9开发板为控制核心SPGT62C19B模组驱动电机,由光电开关接收的信号通断频率来测算电机转速将直流电机的转动信息,反馈给ARM9实验板。
系统的结构框图如图2.1所示。
图2.1控制系统结构框图
ARM9作为主控芯片,通过I/O端口来控制SPGT电机模组,实现对直流电机的控制。
速度检测设备将直流电机的转速信息反馈给ARM9开发板,ARM9针对实际测得的转速来调节SPGT模组的状态,让其达到预设值大小。
同时,上位机在对其进行调节。
2.3软件部分设计
软件部分涉及到编程。
本系统使ARM9平台,运用ARM9编程语言,在CodeWarriorforARMDeveloperSuite软件平台进行开发。
编写程序的主导思想是自顶向下,模块化设计,主要分为测速程序,PWM调解程序,中断程序,PID算法程序,其中,定义端口也尤为主要。
3硬件设计方案
3.1ARM9开发板简介
根据本课题设计的任务要求,须采用ARM9作为开发平台,因此本课题设计的控制电路由以ARM9开发板及其外围电路构成,其布局结构如图3.1所示。
图3.1ARM9开发板实物图
ARM9开发板硬件资源特性介绍如下:
(1)CPU处理器:
SamsungS3C2440A,主频400MHz,最高533Mhz;
(2)SDRAM内存:
64MSDRAM,32bit数据总线,SDRAM时钟频率高达100MHz;
(3)FLASH存储:
64MNandFlash,2MNorFlash,已安装BIOS;
(4)LCD显示:
标配NEC256K色240x320/3.5英寸TFT真彩液晶触摸屏;
(5)接口和资源:
3个串行口,1个USBHost,1个2.0mm间距10针JTAG接口,4USERLeds,电源接口(5V),带电源开关和指示灯等等;
(6)系统时钟源:
12M无源晶振;
(7)实时时钟:
内部实时时钟(带后备锂电池);
(8)扩展接口:
1个34pin2.0mmGPIO接口,1个40pin2.0mm系统总线接口。
ARM9开发版是具有很高性价比一款16/32位单片机,支持标准C语言,可以实现C语言与汇编语言的互相调用,ARM9开发板是以Samsung公司32位处理器为核心的开发板,开发板除了具备最小系统电路外,还包括电源电路、音频电路(含MIC输入部分和DAC音频输出部分)、复位电路等,在掌握软件设计的同时,熟悉其硬件的设计制作,锻炼动手能力。
而且它的体积小,采用外部电源供电,方便携带。
开发板上有CMOS摄像头、USB、双声道音频输、LCD、音频输入等接口,此开发板还可以通过RJ45网络座实现网络远程控制,配合CodeWarriorforARMDeveloperSuite、AXDDebugger、H-Flasher和H-JTAG软件可方便地在板上实现程序的下载及调试等工作。
3.2驱动模块设计
3.2.1S3C2440芯片简介
S3C2440是一款低价实用的ARM9开发板,是目前国内性价比最高的一款学习板;它采用SamsungS3C2440为微处理器,并采用专业稳定的CPU内和电源芯片和复位芯片来保证系统运行时的稳定性。
S3C2440的PCB采用沉浸工艺的四层板设计,专业等长布线,保证关键信号线的信号完整性,生产采用机器贴片,批量生产;出厂时都经过严格的质量控制。
本设计主要是了解嵌入式设计芯片S3C2440,这款芯片有着强大的功能,了解这款芯片的引脚功能是最关键也是最重要的一个环节。
这款芯片集成了51系列单片机所有的功能,且具备了普通51单片机所没有的功能,是普通单片机所不能比拟,具体引脚功能如图3.2:
图3.2S3C2440芯片内部结构图
3.2.2SPGT62C19B电机控制模组简介
SPGT62C18B电机控制模组是为学生以及单片机爱好者学习步进电机和直流电机控制而设计的学习套件。
模组采用凌阳SPGT62C19B电机驱动芯片,配置两相步进电机和直流电机各一台,并提供4位LED数码管用来显示电机转速等信息。
模组针对SPCE061A单片机设计,可以方便的用排线与SPCE061A精简开发板(即“61板”)连接,可作为单片机教学,产品开发前期验证等辅助工具使用。
模组的平面如图3.3。
图3.3电机控制模组结构图
上述结构图中各部分说明如下:
电机控制接口:
模组与单片机的接口,为10PIN排针,可以直接与“61板”连接,实现电机控制。
数码管控制接口:
模组与单片机的接口,为两组10PIN排针,可以直接与“61板”连接,实现对4位LED数码管的控制。
SPGT62C19B:
电机驱动芯片,可驱动一台双极性两相步进电机,或者两台直流电机。
外接电源指示灯:
SPGT62C19B电机驱动芯片的逻辑控制电源与电机驱动电源是各自独立供电的,可以外接5V~12V的电机驱动电源。
当接通了电机驱动电源时,外接电源指示灯会亮。
外接电源插座:
为SPGT62C19B提供电机驱动电源的插座。
共有两组电源插座,分别为2PIN针座(可接61板电池盒或其他直流电源)和DC稳压电源插座(可接直流稳压电源)。
使用时可选择其中一组插座作为电机驱动电源输入端。
3.3数据检测模块设计
数据检测主要是测速,将测得的速度传给上位机。
光电开关通过接收的信号通断频率来测算电机转速将直流电机的转动信息,反馈给ARM9实验板。
3.3.1PWM技术简介
PWM(PulcsiWidhtMdoluatino)脉冲宽度调制技术就是通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形(含形状和幅值)的技术。
根据PWM控制技术的特点,到目前为止主要有八类方法:
相电压控制PWM、线电压控制PWM、电流控制PWM、空间电压矢量控制PWM、矢量控制PWM、直接转矩控制PWM、非线性控制PWM、谐振软开关PWM。
3.3.2直流电机电枢PWM调压调速原理
随着计算机进入控制领域,以及新型的电力电子功率元器件的不断出现,采用全控型的开关功率元件进行脉宽调制的PWM控制方式已成为主流。
这种控制方式很容易在单片机控制中实现,从而为直流电动机控制数字化提供了契机。
直流电机转速n的表达式为:
(3.1)
式(3.1)中U为电枢端电压,I为电枢电流,R为电枢电路总电阻,
为每极磁通量,K为电动机结构参数。
电动机的电枢绕组两端的电压平均值Uo为:
(3.2)
其中,
称为占空比,
。
占空比
表示了在一个周期T里开关管导通的时间与周期的比值。
的变化范围为
。
由式(3.2)可知,当电源电压Us不变的情况下,电枢的端电压的平均值U0取决于占空比
的大小,改变
值就可以改变端电压的平均值,从而达到调速的目的,这就是PWM调速原理。
在PWM调速中,占空比
是一个重要参数。
在直流电机控制中,改变
来实现调速主要方法是定频调宽法:
使周期T(或频率)保持不变,而同时改变t1和t2。
PWM控制信号的产生方法:
新一代的单片机增加了许多功能,其中包PWM功能。
单片机通过初始化设置,使其能自动地发出PWM脉冲波,只有在改变占空比时CPU才进行干预。
这种方法是目前获得PWM信号的主流方法,本控制系统采用此方法产生PWM信号。
3.3.3直流电机调速系统的整体结构
整个直流电机调速系统采用一种上位机、下位机二级分布式结构。
上位机负责整个系统管理和计算等,下位机ARM输出PWM信号控制电机转速。
下位机采用Samsung公司的S3C2440A芯片,通过串口与上位机通信,ARM接收上位机的控制指令以实现所要求的功能。
上位机控制电机运行,ARM不能自主控制电机转速,上位机和ARM之间通过串口进行实时通信。
上位机接收用户输入,并转换为PWM占空比和转向信息,并按照通信协议发送给下位机。
下位机ARM接收到上位机正确的数据指令后,根据指令决定PWM5占空比输出和引脚(PO.16和PO.17)的输出,并向上位机返回应答信息。
下位机子系统为整个系统的核心子系统,下位机系统决定整个系统的性能。
ARM上运行实时嵌入式系统以保证系统的实时性和高效性。
3.3.4ARM的脉宽调制PWM描述
ARM处理器有7个PWM匹配寄存器,可实现6个单边沿控制或3个双边沿控制PWM输出,或者这两种类型的混合输出:
(1)连续操作,可选择在匹配时产生中断;
(2)匹配时停止定时器,可选择产生中断;
(3)匹配时复位定时器,可选择产生中断。
单边沿控制PWM输出在每个周期开始时总是高电平,除非输出保持恒定低电平。
双边沿控制PWM输出可在一个周期内的任何位置产生边沿,这样可同时产生正脉冲和负脉冲。
脉冲周期和宽度可以是任何的定时器计数值,这样可实现灵活的分辨率和重复速率的设定。
所有PWM输出都以相同的重复速率发生。
PWM脉冲频率由TCNTBn(timern计数缓冲器)决定。
PWM脉冲宽度值TCMPBn(timern比较缓存寄存器)的值来决定。
要得到一个较低的PWM脉宽输出值,就可以减少TCMPBn的值,反之亦然。
如果输出反转器使能,增加和减少的结果也将是反转的。
基于双缓冲器的特性,下一个PWM周期的TCMPBn的值可以通过ISR或其它手段,在当前PWM周期中的任何一点写入。
即在程序中可以通过中断重新设定TCMPBn的值来改变电机的转速。
缓冲区TCMPBn,TCNTBn的值不一定等于这个周期的TCMPn,TCNTn的值,但一定是TCMPn,TCNTn的下一个周期的值。
在S3C2440中,每个定时器具有一个倒计时器,通过定时器时钟源驱动16位倒计时寄存器TCNTn。
定时器启动前,要向TCNTBn(定时计数缓冲区寄存器)写入一个初始值,这个值在定时器启动时载入到TCNTn(倒计时器)中。
在定时器的TCMPBn(比较缓冲器寄存器)中同样也要写入一初始值,运行时用来载入到TCMPn(比较寄存器)中与TCNTn(倒计时器)的值相比较。
系统启动时,需要通过置手动刷新位的方式,将TCMPBn和TCNTBn这两个缓冲区的值载入到TCMPn和TCNTn中。
TCMPBn和TCNTBn这两个缓冲区的应用(即双缓冲器)使定时器能够在频率和占空比同时变化时,仍然产生一个稳定的输出。
一般启动定时器的步骤如下:
1)将初始值写入到TCNTBn和TCMPBn中;
2)设置对应定时器的自动重载位;
3)设置对应定时器的手动更新位,反向器置为off状态;
3)设置对应定时器的启动位来启动定时器,同时清除手动更新位。
系统使用PWM5输出控制一个电机的转速,改变对应的PWM输出,就可以实现电机速度的控制。
3.4控制模块设计
控制模块的作用主要是控制直流电机的转向和转速。
变换电机的转向是靠在上位机的编程语言里设定中断功能,而控制电机转速,接近于设定值是靠PID调节来控制的。
直流电机的转速框图如下:
图3.4直流电机控制系统闭环结构框图
此系统属于单闭环调速系统,测得的速度与上位机设定的速度存在误差ΔN,需要控制器进行调节,其中控制器采用的控制方式是