《直流电机速度控制课程设计(共14页).doc》由会员分享,可在线阅读,更多相关《直流电机速度控制课程设计(共14页).doc(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上直流电机速度控制1设计内容及要求1.1设计目的设计制作和调试一个由MCS51单片机组成的直流测控系统。通过这个过程学习熟悉键盘控制和七段数码管的使用,掌握直流电机的速度控制和测试方法。12预习和参考MCS51单片机汇编程序语言、计算机控制技术、自动控制原理、1.3 设计(设计)要求设计指标1在显示器上显示任意四位十进制数2将8个键定义键值为07,按任意键在显示器上显示对应键值3实现功能:(1)定义键盘按键:5个为数字键04;3个功能键:设置SET、清零 CLR、开始START;(2)显示器上的四位可显示每分钟的速度;(3)通过键盘的按键,设置直流电机每分钟的速度值;(
2、4)按START键启动电机开始转动,按SET键停止;按CLR键清零。2控制芯片选择根据实验要求选择80C31芯片。选择该芯片可以根据控制开关按钮的开关状态,控制数码管的数字显示以及变频直流电动机的转速。80C31单片机,是8位高性能单片机,具有40根引脚。属于标准的MCS-51的HCMOS产品。它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,标准MCS-51单片机的体系结构和指令系统。 80C31内置中央处理单元、128字节内部数据存储器RAM、32个双向输入/输出(I/O)口、2个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。40根引脚按其功能可分
3、为四类: 1. 电源线2根 VCC:编程和正常操作时的电源电压,接+5V。 VSS:地电平。 2. 晶振:2根 XTAL1:振荡器的反相放大器输入。使用外部震荡器是必须接地。 XTAL2:振荡器的反相放大器输出和内部时钟发生器的输入。当使用外部振荡器时用于输入外部振荡信号。 3. I/O口有p0、p1、p2、p3共四个8位口,32根I/O线,其功能如下: P0.0P0.7 (AD0AD7) 是I/O端口O的引脚,端口O是一个8位漏极开路的双向I/O端口。在存取外部存储器时,该端口分时地用作低8位的地址线和8位双向的数据端口(在此时内部上拉电阻有效)。P1.0P1.7 端口1的引脚,是一个内部上
4、拉电阻的8位双向I/O通道,专供用户使用。 P2.0P2.7 (A8A15) 端口2的引脚。端口2是一个带内部上拉电阻的8位双向I/O口,在访问外部存储器时,它输出高8位地址A8A15 P3.0P3.7 端口3的引脚。端口3是一个带内部上拉电阻的8位双向I/O端口,该口的每一位均可独立地定义第一I/O口功能或第二I/O口功能。作为第一功能使用时,口的结构和操作和P1口完全相同,第二功能如下示: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 (外部中断) P3.3 (外部中断) P3.4 T0(定时器0外部输入) P3.5 T1(定时器1外部输入) P3.6 (外部数
5、据存储器写选通) P3.7 (外部数据存储器读选通) 图2-1 8031管脚图3方案选择和结构设计3.1矩阵式键盘 3.1.1矩阵式键盘设计 根据实验要求通过按键开关可以控制数码管的显示,并且可以通过80C31芯片控制变频直流电动机的转速,所以设计一种键盘式的按钮开关矩阵。 矩阵式键盘的按键识别方法 ,确定矩阵式键盘上何键被按下介绍一种“行扫描法”。 行扫描法 行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,介绍过程如下。1、判断键盘中有无键按下 将全部行线置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线和行线相交叉的按键之
6、中。若所有列线均为高电平,则键盘中无键按下。 2、判断闭合键所在的位置 在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线和置为低电平的行线交叉处的按键就是闭合的按键。在这次课程设计中要求有8个按键,其中包过0-4这5个数字按键,以及3个功能键:设置SET、清零 CLR、开始START。所以我们将这些键按照两行 三列来排列。其中的数字键我们可以按照基本的逐行扫描查询法经行按键识别。 其中的0-3数字键的一端和80C51 的P1.0,其余的另一端分
7、别连接80C51单片机的P1.4,P1.5,P1.6,P1.7相连。设置SET功能键分别连接P1.2和P1.6,开始START功能键分别连接P1.3,P1.4,而剩下的功能键CLR则分别连接P1.2,P1.7,这样就可以利用按钮开关和80C51芯片构成简单的矩阵式键盘。3210 SETCLRSTART4图3-1 矩阵式键盘3.1.2矩阵式键盘程序及程序流程图开始在80C51单片机的程序编写上,采用C语言的程序编写方法。键盘设计部分的程序流程图如下:行值-0,列值-0EFH输出行码和列码扫描行行码循环扫描列码加4RET有第i列为0调用显示程序A-i-1扫描列码,并且全为1列扫面 C语言编写的使用
8、于80C31控制数字键盘使其实现功能的程序如下:void key()uchar i,temp,lie,hang,shu;for(i=0;i4;i+) /求出按键值P1=chosei;temp=P1;temp=temp&0xf0;if(temp!=0xf0)hang=i;if(temp=0xe0)lie=1;else if(temp=0xd0)lie=2;else if(temp=0xb0)lie=3;else if(temp=0x70)lie=4;break; shu=hang*4+lie;/数为对应的按键switch(shu)case 1: if(!flag)yishu(0);break;c
9、ase 2: if(!flag) yishu(1);break;case 3: if(!flag) yishu(2);break;case 4: if(!flag) yishu(3);break;case 5: if(!flag) yishu(4);break;case 6: flag+;flag1+; break;case 7: sv=0;miaoshu=0;flag=0;flag1=0;break;case8: flag1+; break;default: break;while(temp!=0xf0)/放键检测temp=P1;temp=temp&0xf0;for(i=0;i501)uk=
10、501; /限定输出上限if(uk1):uk=1; /限定输出下限3.2数码管转速显示LED数码管(LED Segment Displays)是由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。图3-2数码管数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。 静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端
11、口多,如驱动5个数码管静态显示则需要58=40根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:),实际使用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。 数码管动态显示接口是单片机中使用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出
12、字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。 在本次课程设计中需要用到4个数码管在静态显示的工作状态下工作,用80C31来驱动数码管正常工作。为了使数码管显示数据的时候稳定准确,一般是接在80C31单片机的P0口上接一个RESPACK-8排阻,因为P0口内
13、部没有上拉电阻,不能输出高电平,所以要接上拉电阻。排阻就是好多电阻连载一起,他们有一个公共端 。 在用80C31控制4个7位数码管的时候后我们还要用到74HC240。74 HC240是一款高速CMOS器件,引脚兼容低功耗双八线反响缓冲线路驱动器,具有三态输出,该三台输出有时能断控制,任意NOE上的高电平将使输出端呈现高阻态。74HC240在电路中起缓冲保护作用。数码管显示流程图:返回关所有显示位显示4位数字取得显示数据关闭所有显示位初始化显示参数开始数码管显示子程序:void display(uint a,uint b)char i;shu0=a/100;shu1=a%100/10;shu2=
14、a%10;shu3=b/100;for(i=0;i0输出低电平计数器-1=0占空值赋初值计数器赋初值输出高电平启动AD3.3.2驱动电路子程序void t0(void) interrupt 1 using 0 /定时T0中断服务函数tcnt+; /每过250ust tcnt 加一if(tcnt=40) /计满40 次(1/100 秒)时tcnt=0; /重新再计sec+;if(sec=10) /定时0.1 秒,在从零开始计时sec=0;TH0=0x06; /对TH0 TL0 赋值TL0=0x06;miaoshu=count;count=0;void sdf(void) interrupt 2
15、using 0 /计数T1中断服务函数 count=count+1;/左移一位void yishu(uchar num)uchar bai,shi,ge;bai=sv%100/10;shi=sv%10;ge=num;sv=bai*100+shi*10+ge;3.4芯片80C31在电路中的控制 80C31芯片是整个电路中最重要的部分,它需要读取矩阵式键盘按钮开关的信息,并通过编码程序进行一定的数字编码,然后输出控制直流电动机和八位数码管显示,达到完整控制直流电动机调速。控制编码部分子程序:main()q0=Kp*(1+T/Ti+Td/T);/先算出PID的计算参数q1=-Kp*(1+2*Td/T
16、);q2=Kp*Td/T;p30=0;EX0=1;IT1=1;TMOD=0x02; /定时器T0工作在方式2 自动重装方式,计数器T1工作在方式2 自动重装方式TH0=0x06; /对TH0 TL0 赋值TL0=0x06;TR0=1; /开始定时ET0=1; /允许T0 产生中断EA=1;EX1=1;EA=1;sec=0;SCON=0x90; /MODER1,REN=1;PCON=0x00;miaoshu=0;tcnt=0;count=0;sv=0;flag=0;while(1) eleyscan();if(flag=2)p30=0;if(flag1=2)uint i;pid();if(ek1
17、00)p30=1;else if(ek=0)p30=1;display(sv,miaoshu);p30=0;delay(50-uk/10);else if(ek0)p30=0;display(sv,miaoshu); 4直流电动机调速控制电路仿真本次课程设计采用proteus7.7软件进行仿真电路的设计和制作。Proteus软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。此次课程设计主要用到proteus软件的原理图布局和电器电路仿真。4.1原理图布局 此次
18、设计的完整电路图包括矩阵式键盘部分,数码管数字显示,电动机的PWM调速控制以及整个电路设计中的核心芯片80C31芯片。图4-1直流电动机速度控制原理图布局图4-2 直流电动机速度控制仿真效果5结束语通过本次课程设计,加深了对计算机控制技术中的51系列单片机的认识和理解,对其使用有了更深沉的了解,特别是在51系列单片机的编程和数字控制方面的学习。在对电路进行原理图布局和仿真的过程中,了解并学会使用了仿真软件proteus,对其基本用法和一些扩展功能有所了解。在以后的电路仿真中或用到此次课程设计所积累的经验。其次就是在对电路进行连接的过程中,加强了实际动手操作能力,和应对突发问题的处理能力。矩阵式
19、键盘设计方面,通过网络和书籍基本了解了矩阵式键盘的设计方法和原理,对矩阵式键盘有了一定的了解。可以连接比较简单的数码管显示电路,通过80C31单片机可以达到对数码管的控制显示输出,在这方面获得了更多的知识。再就是直流电动机转速控制方案的选择以及电路图的设计,结合电力电子技术方面的知识,达到多种知识的相互结合运用,对以后的学习将会有更多的帮助!参考文献【1 】张波计算机控制技术 中国电力出版社,2010年版【2 】孙增圻计算机控制理论及使用 清华大学出版社 1989年版【3 】于海生微型计算机控制技术 清华大学出版社1999年版【4 】黄一夫微型计算机控制技术 机械工业出版社 1988年版【5
20、】戴冠中计算机控制原理 国防工业出版社 2005年版【6 】王兆安 黄俊 电力电子技术 西安交通大学出版社,2005年版【7 】郭天祥51单片机C语言教程【8 】王兆安 刘进军电力电子技术 机械工业出版社 2009年版【9 】Binmal k.bose power electronics and motor driver Elsevier Science【10】John G Principles of power electronics Addison Wesley publishing company【11】Hua GuiChaosoft-switching techniques in PWM converters IEEE Trans.on Industrial Electronics,1995专心-专注-专业