电动机转速测试系统的设计_第1页
电动机转速测试系统的设计_第2页
电动机转速测试系统的设计_第3页
电动机转速测试系统的设计_第4页
电动机转速测试系统的设计_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、 电动机转速测试系统的设计电动机转速测试系统的设计摘 要当今,自动化控制系统已经在各行各业得到了广泛的应用和发展,而电机的调速与测速控制作为电气传动的主流,在现代化生产中起着主要作用。本设计主要研究直流调速与测速系统,直流电动机因其具有调节转速比较灵活、控制性能好等特点,在传动领域占有一定的地位。微机技术的快速发展,在控制领域得到广泛应用。本文对基于单片机的直流电机 PWM 调速系统进行了研究,从直流调速系统原理出发,逐步建立了单闭环直流 PWM调速系统的数学模型。用微机硬件和软件发展的最新成果,探讨一个将微机和电机控制相结合的新的控制方法在硬件方面充分利用微机外设接口丰富,运算速度快的特点,

2、采取软件和硬件相结合的措施,实现对转速单闭环调速系统的控制。本设计依据时代的发展趋势,将我们所学的单片机技术知识应用于自动化控制系统中。由于水平有限,有错之处在所难免,恳请各位老师批评指正。关键词:电动机、测速、单片机、PWM目 录摘要2目录3第1章 单片机1.1单片机的发展51.2单片机的组成及特点51.3单片机的应用6第2章 硬件电路的设计3.1系统的设计思路63.2电机的调速63.3电机的测速73.4键 盘83.5液晶显示8第3章 软件的设计4.1电动机调速的参数94.2 多层嵌入94.3 精确时间和速度计算方法94.4 流程图10第4章 总结3.1本设计的特点113.2 进一步的工作建

3、议11参考文献11致 谢12附件程序13概 述电机是各行业生产过程及日常生活中普遍使用的基础设备,它是进行电能量和机械能量转换的主要器件。电机的广泛应用大大提高了生产自动化程度与效率,改善了劳动者的工作环境。现代电力系统主要采用同步发电机和变压器实现电能的产生和分配。在工业、农业、交通运输、石油化工、矿山冶金等诸多领域,大量采用交流、直流电动机驱动各种类型的机械设备和其他生产设备,80%85%工业用电直接与电机有关。不仅如此,各种控制电机还是构造基于转速、转角控制的自动控制系统的重要部件。在日常生活中,电动机也是各种家用电器、办公自动化设备、电动器具中难以或缺的部件,它们提高了人们的生活质量。

4、电动机的控制过去多用模拟法,随着计算机的产生和发展以及新型电力电子功率器件的不断涌现,电动机的控制也发生了深刻的变化。与此同时,电机的理论、产品种类、制造技术与控制技术也在不断发展中,新型电机与驱动器不断出现,电子技术也在不断地渗入电机及其控制之中,电机的发展出现了机电一体化的趋势。数字控制作为电动机控制的发展趋势,用单片机对电动机进行控制是实现电动机数字控制的最常用的手段。第1章 单片机2.1 单片机的发展单片微机(Single-Chip Microcomputer)简称单片机,也有的叫做微处理( Micro-Processor简写P)或微控制器(Micro-Controller简写C),通

5、常统称 微型处理部件(Micro Controller Unit 简写MCU)。一般的说,单片机就是在一 块硅片上集成CPU、RAM、ROM、定时器/计数器、和多种I/O的完整的数字处理系统。二十世纪,微电子、IC集成电路行业发展迅速,其中单片机行业的发展最引人注目。单片机功能强、价格便宜、使用灵活,在计算机应用领域中发挥着极其重要的作用。从INTEL公司于1971年生产第一颗单片机Intel-4004开始,开创了电子应用的智能化新时代。单片机以其高性价比和灵活性,牢固树立了其在嵌入式微控制系统中的霸主地位,在PC机以286、386、Pentium、PIII高速更新换代的同时,单片机却始终如一

6、保持旺盛的生命力。例如,MCS-51系列单片机已有十多年的生命期,如今仍保持着上升的态势就充分证明了这一点。2.2 单片机的组成及特点2.2.1 单片机的组成单片机是微型机的一个主要分支,在结构上把CPU、存储器、定时器和多种输入/输出接口电路集成在一块超大规模集成电路芯片上,通过内部总线把计算机的各主要部件接为一体,其内部总线包括地址总线、数据总线和控制总线。其中,地址总线的作用是在进行数据交换时提供地址,CPU通过它们将地址输出到存储器或I/O接口;数据总线的作用是在CPU与存储器或I/O接口之间,或存储器与外设之间交换数据;控制总线包括CPU发出的控制信号线和外部送入CPU的应答信号线等

7、。 2.2.2 单片机的特点 由于单片机的这种结构形式及它所采取的半导体工艺, 因而在各个领域都得到了迅猛的发展。单片机主要发如下特点: (1)有优异的性能价格比。 (2)集成度高、体积小、有很高的可靠性。单片机把各功能部件集成在一块芯片上,内部采用总线结构,减少了各芯片之间的连线,大大提高了单片机的可靠性与抗干扰能力。另外,其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣环境下工作。(3)控制功能强。为了满足工业控制的要求,一般单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作以及位处理功能。单片机的逻辑控制功能及运行速度均高于同一档次的微机。 (4)低功耗、低电压,便于生产便携

8、式产品。 (5)外部总线增加了I C(Inter-Integrated Circuit)及SPI(Serial Peripheral Interface)等串行总线方式,进一步缩小了体积,简化了结构。 (6)单片机的系统扩展和系统配置较典型、规范,容易构成各种规模的应用系统。2.3 单片机的应用 由于单片机具有显著的优点,它已成为科技领域的有力工具,人类生活的得力助手。它的应用遍及各个领域。单片机已成为计算机发展和应用的一个重要方面。另一方面,单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法

9、来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。第2章 硬件电路设计3.1系统的设计思路整个系统采用模块化设计, 硬件结构由电机调速、电机测速、键盘、液晶显示等模块组成。采用桥式驱动直流电机,左右输入控制电机运转方向;知道通过调节直流电机的电压可以改变电机的转速,但是一般我们设计的电源大都是固定的电压,而且模拟可调电源不易于单片机控制,数字可调电源设计麻烦。所以这里用脉宽调制(PWM)来实现调速,用光电开关测速模块测电机速度;采用74HC595将串行数据转换为并行数据驱动LCD1602显示电机运行和控制信息;设计四个按钮,调节电机速度和控制电机状态;在主控板上加

10、入稳压模块,使输入电压可为812V DC;在电机附近设计电机状态显示灯,根据电机运转方向不同指示灯显示红色或绿色,根据电机运转速度不同指示灯显示亮度不同;系统留有软件升级接口,可在系统部件不动的情况下对系统固件升级。3.2 电机调速模块电机调速一般利用H桥电路来实现调速,H桥驱动电路:图1中所示为一个典型的直流电机控制电路。电路得名于“H桥驱动电路”是因为它的形状酷似字母H。4个三极管组成H的4条垂直腿,而电机就是H中的横杠(图1只是示意图,而不是完整的电路图,其中三极管的驱动电路没有画出来)。如图1所示,H桥式电机驱动电路包括4个三极管和一个电机。要使电机运转,必须导通对角线上的一对三极管。

11、根据不同三极管对的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机的转向。图1正反转控制及调速电路要使电机运转,必须使对角线上的一对三极管导通。例如,如图所示,当Q1管和Q4管导通时,电流就从电源正极经Q1从左至右穿过电机,然后再经Q4回到电源负极。按图中电流箭头所示,该流向的电流将驱动电机顺时针转动。当三极管Q1和Q4导通时,电流将从左至右流过电机,从而驱动电机按特定方向转动(电机周围的箭头指示为顺时针方向)综上可以输入PWM信号调节正转和反转状态下的速度。3.3 电机测速图2转速测量原理图如上图所示为转速测量原理图。在电机需要测速的时候开启测速模块电源,红外发射管发射的红外线只

12、能通过测速模块上的缝隙照射到红外接受管上。 红外接受管当没有红外光照射时电阻无穷大,当有红外光照射时电阻几乎为0,所以当电机转子上同步转动带孔圆盘挡住红外线时optoisoi端为低电平,反之为高电平。由此变化可以非常精确的测出单位时间里被挡住的次数n(与孔数相等)。本系统所带圆盘为6孔(即圈数为n/6),圆盘半径r为15mm,即可以算出路程。3.4 键盘模块为操作简单、使用方便本系统使用4位独立键盘。接线方法为常规方法,使用在延时种插入键盘扫描方法使感应更加灵敏。各键的功能分别为启动、停止、加速、减速。其相应功能和各按钮的名称功能一致。3.5 液晶显示模块图3 LCD驱动电路图 3 LIC驱动

13、电路 在选择微处理器和LCD屏时就存在一个矛盾:引脚多的微处理没PWM调速功能,有PWM调速功能的微处理器使用LCD 1602时引脚不够。LCD1602为并行传输数据,此处采用74HC595将串行数据转换为并行数据输入LCD1602,由微处理器只需使用5个I/O口即可驱动LCD1602。其原理如图所示。第3章 软件设计本系统采用STC12系统微处理器,虽然引脚少但具有PWM功能,所以能在同一时间能完成计时、测速功能。本系统采用定时器0计数圆孔数用于计程S;定时器1计数用于计时t,即速度v=S/t。使用STC12系统微处理器特有PWM调速功能独立调节电机速度。从而形成完整的计时、测速系统。4.1

14、 电动机调速的参数 1. 运行曲线图4 运行曲线PWM来实现电机调速在中小型直流电机调速系统中具有结构简单,运行可靠,调节范围宽,电流连续性好,响应快等特点, 转速环采用PI控制算法,能有效地抑制转速超调,采用此单片机的调速系统是一种可行的设计方案2.调速范围在额定负载转矩下电动机可能调到的最高转速nmax与最低转速nmin之比称为调速范围,用D表示,即:D=nmax/nmin。式中最高转速nmax受电动机换向及机械强度的限制,最低转速nmin。受生产机械转速相对稳定性要求的限制。所谓转速相对稳定性,是指负载转矩变化时转速变化的程度,转速变化越小,相对稳定性越好,能达到的转速越低,调速范围D越

15、大。3.允许容量电动机在额定电流下,对应于不同的调速方法,允许电动机所承受的负载,或者是电动机容许输出的最大转矩或最大功率与转速的关系,称为允许容量。电动机在额定电流下,输出转矩不变的调速方法,称为恒转矩调速;输出功率不变的调速方法,称为恒功率调速。在实际使用中要根据被拖动的生产机械的要求,选择合适的调速方法,使电动机尽可能地得到充分利用。4.2 多层嵌入为节省微处理器程序存储器空间,本系统采用多层嵌入、多层相互使用精简程序。将键盘检测、计时嵌入测速程序实时监控,保证每秒测速一次。 4.3 精确时间和速度计算方法本系统计时课精确到1us,两个定时器均赋初值为0;每65536us产生一次中断;中

16、断程序仅为加1函数,最大限度的提高了计时、计数精度。系统在每秒的前后都会读取一次两个定时器中的数值进行计算测速。其计算函数式如下:每秒开始:K定时0=t1*65536+TH0*256+TL0、K定时1=t2*65536+TH1*256+TL1每秒结束:J定时0=t1*65536+TH0*256+TL0、J定时1=t2*65536+TH1*256+TL1SPEED =( J定时0- K定时0)*1000000/( J定时1- K定时1)*6)4.4流程图开始初始化定时器0、1和PWM特殊寄存器初始化液晶屏、速度赋初值启动定时器0、1和PWM调速模块读取定时器T0、T1当前计数值S1=0?关闭定时

17、器T0、T1、PWMS2=0?开启定时器T0、T1、PWM显示SP显示RN计时1s?读取定时器T0、T1当前计数值计算速度显示速度显示路程、时间YYYNN图5程序流程图总 结本次设计,通过对电动机转速测试系统的设计,真正的把专业知识应用到实践中,加强了我的动手能力,在设计中,遇到了不少问题,通过努力研究,一个一个解决了,系统模拟非常成功,总的来说,这次设计不难,关键在于细心,有时一些小问题,让我走了很多弯路,真正让我感觉到了学以致用的重要性.两年来,我认真地学习了专业课程基础知识,具有一定的设计理论基础和独立设计能力,由于毕业设计的课题是一种整体性的,系统性的设计,我真的是很努力地在做,但还是

18、感到力不从心,因而这次设计在深度和广度上都有一定的局限性,不过,我认为还是提高了认识,学到了东西。所以我要感谢所有的任课老师,是您们的教育和培养,才使我学有所获。5.2 进一步的工作建议通过本设计,掌握以单片机为核心的电路设计的基本方法和技术,了解有关电路参数的计算方法。通过实际程序设计和调试,逐步掌握了模块化程序设计方法和调试技术。 由于微处理内存不足,显示人性化方面没有得到完美体现:可以设置开机界面提供更多的相关信息;报警时可以在液晶屏上显示可能的故障时操作人员更容易找到故障点。参考文献1 郭天祥,51单片机C语言教程。北京:电子工业出版社,2009.62. 王义和,例说51单片机(C语言

19、版)。北京:人民邮电出版社,2008.43. 赵建领,51系列单片机开发宝典,北京:电子工业出版社,2007.44.单片机及工程应用/徐新艳主编.北京:高等教育出版社,2005.75.单片机高级教程/何立民主编.北京北京航空航天大学出版社,2001 6.MCS-51单片机原理及应用/赵晓安主编.天津天津大学出版社,2001.3 7.单片机基础/李广第主编.北京北京航空航天大学出版社,1999 8.电机与电力拖动/姜玉柱主编.北京:北京理工大学出版社,2006.89.电机与控制/程书华主编.:中国电力出版社2009.6附件程序#include #include #include #include

20、 #include first.c#include pid.c#include #include #include #include #include first.c#include pid.c#include delay.c #include key_4.c #include 1602a.c / Declare your global variables herebit s1; /停止/开始bit s2; /正转反转/ Timer 0 overflow interrupt service routineinterrupt TIM0_OVF void timer0_ovf_isr(void)/

21、Place your code hereTCNT0=0x83;if(+tc250)tc=0;#asm(cli); read=1;if (+key_stime_counter =3)/定时10MSkey_stime_counter = 0;key_stime_ok = 1;/ External Interrupt 0 service routineinterrupt EXT_INT0 void ext_int0_isr(void)/read=1;counter+;/end interrupt/*主函数*/void main(void)double rOut; / PID Response (Ou

22、tput)double rIn; / PID Feedback (Input)PIDInit ( &sPID ); / Initialize Structureocr=700;set=1500;sPID.Proportion =1.5; / Set PID Coefficients/ sPID.Integral= 0.683;/ sPID.Derivative = 0.683;sPID.SetPoint =set; / Set PID SetpointsPID.SetPoint=sPID.SetPoint/60.0;#asm(cli);PORTA=0x00; /液晶DDRA=0XFF;PORT

23、B=0x00;DDRB=0x0F;/0000 1111PORTC=0x00;DDRC=0x00;PORTD=0x30;/0000 0000 PD2外部中断入口DDRD=0x30;/0011 0000 / Timer/Counter 0 initialization/ Clock source: System Clock/ Clock value: 125.000 kHz/ Mode: CTC top=OCR0/ OC0 output: DisconnectedTCCR0=0x04; /定时4MS*500TCNT0=0x83; OCR0=0x82;/ Timer/Counter 1 initia

24、lization/ Clock source: System Clock/ Clock value: 1000.000 kHz/ Mode: Ph. correct PWM top=00FFh/ OC1A output:Non-Inv./ OC1B output:Discon./ Noise Canceler: Off/ Input Capture on Falling Edge/ Timer 1 Overflow Interrupt: Off/ Input Capture Interrupt: Off/ Compare A Match Interrupt: Off/ Compare B Ma

25、tch Interrupt: OffTCCR1A=0xc3;/选通OC1ATCCR1B=0x01;TCNT1H=0x00;TCNT1L=0x00;ICR1H=0x00;ICR1L=0x00;OCR1AH=0x03;OCR1AL=0xff;OCR1BH=0x03;OCR1BL=0xff;/对应着PD4口的PWM波,/ Timer/Counter 2 initialization/ Clock source: System Clock/ Clock value: Timer 2 Stopped/ Mode: Normal top=FFh/ OC2 output: DisconnectedASSR=

26、0x00;TCCR2=0x00;TCNT2=0x00;OCR2=0x00;/ External Interrupt(s) initialization/ INT0: On/ INT0 Mode: Rising Edge/ INT1: Off/ INT2: OffGICR|=0x40;MCUCR=0x03;MCUCSR=0x00;GIFR=0x40; /通过写1来清0/ Timer(s)/Counter(s) Interrupt(s) initializationTIMSK=0x01;/ Analog Comparator initialization/ Analog Comparator: O

27、ff/ Analog Comparator Input Capture by Timer/Counter 1: OffACSR=0x80;SFIOR=0x00;RstLcd(); key_init(); /键盘初始化#asm(sei) / 开放全局中断while (1) / Place your code here /*键盘处理*/if (key_stime_ok) / 10ms到,键处理key_stime_ok = 0;switch (read_key() / 调用按键接口程序 /*复位*/case 1:/*键值处理*/ s1=!s1;if (s1)RR LcdPos(14,1);/确定光标

28、位置LcdWd(R); /LcdPos(12,0);/确定光标位置LcdWd(R);LcdWd(U);LcdWd(N);LcdWd( ); else ocr=0;ST LcdPos(12,0);/确定光标位置LcdWd(S);LcdWd(t); LcdWd(o);LcdWd(p); break;cs2=!s2;if (s2)ocr=0;RR/电机正转ocr=700; LcdPos(14,1);/确定光标位置 LcdWd(R);/LcdPos(12,0);/确定光标位置LcdWd(R);LcdWd(U);LcdWd(N);LcdWd( );else ocr=0;LLocr=700;LcdPos(

29、14,1);/确定光标位置LcdWd(L);/ LcdPos(12,0);/确定光标位置LcdWd(R);LcdWd(u);LcdWd(n);LcdWd( ); break;case 3:set-=100; /按一次加100if (set4000)set=1500;break;/end keyproc / read_counter();if (read=1)read=0; if (counter2) ST /当有外力时,停止sPID.SetPoint=(unsigned int )sPID.SetPointSetPoint - NextPoint; / 偏差/ Error = NextPoin

30、t-pp-SetPoint ;/if (Error3000) ST;/ pp-SumError += Error; / 积分/ dError = pp-LastError - pp-PrevError;/ 当前微分pp-PrevError = pp-LastError;pp-LastError = Error;return (pp-Proportion *(Error*2.45 -3.0*pp-LastError+1.55 *pp-PrevError) / 比例项/ 积分项/ 微分项);double sensor (void) / 接收采集的数据/ if (counter3);void actuator(double rDelta)/ 对接收回来的数进行处理送显示ocr=ocr+rDelta;if (TCCR1A=0xc3)OCR1A=ocr;/对应着PD5口输出的PWM波,当为0时最大if (TCCR1A=0x33)OCR1B=ocr;if (ocr1024) ocr=700; / if (ocr=5)/定时10MSkey_stime_counter = 0;key_stime_ok = 1; */*定时器0寄存初始化*/*/void key_init(void)/TCCR0|=0x0b;/采用比较模式,256

温馨提示

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

评论

0/150

提交评论