《直流电机转速控制.pdf》由会员分享,可在线阅读,更多相关《直流电机转速控制.pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、直直流流电电机机转转速速控控制制( (总总 8 8 页页) )-CAL-FENGHAI.-(YICAI)-Company One1 -CAL-本页仅作为文档封面,使用请直接删除直流电机转速控制直流电机转速控制课程设计课程设计姓名:学号:班级:目录目录1 1直流电机转速控制方案设计直流电机转速控制方案设计(2)1.1设计要 求 (2 )1.2 设计框图(2)2 2 直直 流流 电电 机机 转转 速速 控控 制制 硬硬 件件 设设 计计 ( 3 ) 2 . 1 主 要 器 件 功 能 ( 3 ) 2 . 2 硬 件 原 理 图 ( 6 )3 3 直直 流流 电电 机机 转转 速速 控控 制制 软软
2、 件件 设设 计计 ( 7 )4 4 调调 试试 ( 8 )4. 1 硬 件 测 试 ( 8 ) 4. 2 软 件 调 试 ( 1 11 1直流电机转速控制方案设计直流电机转速控制方案设计1.11.1 设计要求设计要求通过设计了解如何运用电子技术来实现直流电机转速控制,完成直流电机转向和转速的控制,提高分析电路设计、调试方面问题和解决问题的能力。1、 用按键 1 控制旋转方向 ,实现正转和反转。2、3、电机的设定转速与电机的实际转速在数码管上显示。旋转速度可实时改变。1.21.2 设计框图设计框图本课题中测量控制电路组成框图如下所示:图 12 2直流电机转速控制硬件设计直流电机转速控制硬件设计
3、2.12.1 主要器件功能主要器件功能1 1、L298N 是专用驱动集成电路,属于H 桥集成电路,与L293D 的差别是其输出电流增大,功率增强。其输出电流为2A,最高电流4A,最高工作电压50V,可以驱动感性负载,如大功率直流电机,步进电机,电磁阀等,特别是其输入端可以与单片机直接相联,从而很方便地受单片机控制。当驱动直流电机时,可以直接控制步进电机,并可以实现电机正转与反转,实现此功能只需改变输入端的逻辑电平。此外可能通过使能端的高低电平的变换,从而使电机通断,来控制电机的转速。图 2板上的EN1 与EN2 为高电平时有效,这里的电平指的是TTL 电平。EN1 为IN1 和IN2 的使能端
4、,EN2为IN3 和IN4 的使能端。POWER 接直流电源,注意正负,电源正端为VCC,电源地为GND。2 2、ZLG7290 的核心是一块 ZLG7290B 芯片,它采用 I2C 接口,能直接驱动 8位共阴式数码管,同时可扫描管理多达64 只按键,实现人机对话的功能资源十分丰富。除具有自动消除抖动功能外,它还具有段闪烁、段点亮、段熄灭、功能键、连击键计数等强大功能,并可提供10 种数字和 21 种字母的译码显示功能,用户可以直接向显示缓存写入显示数据,而且无需外接元件即可直接驱动数码管,还可扩展驱动电压和电流。此外, ZLG7290B 的电路简单,使用也很方便。用户按下某个键时, ZLG7
5、290 的 INT 引脚会产生一个低电平的中断请求信号,读取键值后,中断信号就会自动撤销。正常情况下,微控制器只需要判断1INT 引脚就可以得到键盘输入的信息。微控制器可通过两种方式得到用户的键盘输入信息。其一是中断方式,该方式的优点是抗干扰能力强,缺点是要占用微控制器的一个外部中断源。其二是查询方式,即通过不断查询INT 引脚来判断是否有键按下,该方式可以节省微控制器的一根IO 口线,但是代价是 I2C 总线处于频繁的活动状态,消耗电流多并且不利于抗干扰。图 3ZLG7290 能够直接驱动 8 位共阴式数码管(或 64 只独立的 LED),同时还可以扫描管理多达 64 只按键。其中有 8 只
6、按键还可以作为功能键使用,就像电脑键盘上的 Ctrl、Shift、Alt 键一样。另外 ZLG7290B 内部还设置有连击计数器,能够使某键按下后不松手而连续有效。采用I2C 总线方式,与微控制器的接口仅需两根信号线。可控扫描位数,可控任一数码管闪烁。4、MAX232 芯片是美信公司专门为电脑的 RS-232 标准串口设计的单电源电平转换芯片 ,使用+5v 单电源供电。图 4第一部分是电荷泵电路。由 1、2、3、4、5、6 脚和 4 只电容构成。功能是产生+12v 和-12v 两个电源,提供给 RS-232 串口电平的需要。第二部分是数据转换通道。由 7、8、9、10、11、12、13、14
7、脚构成两个数据通道。 其中 13 脚(R1IN)、12 脚(R1OUT)、11 脚(T1IN)、14 脚(T1OUT)为第一数据通道。 8 脚(R2IN)、9 脚(R2OUT)、10 脚(T2IN)、7 脚(T2OUT)为第二数据通道。 TTL/CMOS 数据从 T1IN、T2IN 输入转换成 RS-232 数据从 T1OUT、T2OUT 送到电脑 DB9 插头;DB9 插头的 RS-232 数据从R1IN、R2IN 输入转换成 TTL/CMOS 数据后从 R1OUT、R2OUT 输出。第三部分是供电。 15 脚 GND、16 脚 VCC(+5v)。2.22.2 硬件原理图硬件原理图电路图电路
8、图图 53 3直流电机转速控制软件设计直流电机转速控制软件设计2程序流程图程序流程图主程序INT0中断服务子程序程序初始化:INT0中断初始化,P1.2和P1.3取反进行转P1.21,P1.30,P1.01速方向改变P1.0,P1.1取,P1.10反显示转向ZLG7290显示程序初始化中断返回将输入设定转速送入数码管显示缓冲区调用ZLG7290显示程序进行1MS定时初始化:TH0=?TL0=?,设定循环次数R0=50,A=R0,RI=100-R0,N=10,TL1=0,TH1=0通过TR0开始1MS定时TL1,TH1进行计数NODISFLAG?1YES调用ZLG7290显示程序DISFLAG=
9、0图 64 4调试调试4.14.1 硬件测试硬件测试4.1.14.1.1 单片机部分及其接口电路测试3T0中断服务子程序R0=R0-1,TH0=?,TL0=?R0?=0NOYESP1.0=0,R0=1P1.0=1R1=R1-1YESR1=0?NON=N-1YESN?0NO把TL1,TH1示数*60放入R0=A数码管上显示缓冲区R1=100-R0N=10,TL1=0,TH1=0DISFLAG=1=a(t)-b(t)R0=50+KR1=100-R0A=R0中断返回图 7当按键 S1 按下时,产生 INT0中断,使 P1.2,P1.3 取反.这样就能控制电机的正反转,且中断来时 P1.1 取反这样
10、LED灯亮灭代表不同的转向.图 8电机测试时,L298N的 IN3,IN4的输出控制电机的正反转,IN3,IN4为 0,1,时是一种转向,当 IN3,IN4为 1,0 时,就反向转动.而电机的转速控制是通过 L298N的 ENB 来控制,由于 ENB的状态直接确定电机的通断,所以,测试时,通过调节 ENB占空比的输出来测试电机的转速控制.电机的测速是通过霍尔开关来获取的,电机的叶片上贴有磁钢,当磁钢经过霍尔开关时,霍尔开关 2 脚产生脉冲,当一定的时间到时,霍尔开关的 2脚输出的脉冲数被单片机记录,然后经过处理在 8位数码管上显示出来.4.1.34.1.3 数码管的部分电路及其接口电路测试数码
11、管的部分电路及其接口电路测试图 9通过单片机控制使 LED1显示输入需要控制的转速,LED2来显示实时的转速,单片机与 LED灯之间通过集成芯片 ZLG7290来进行连接。4.24.2 软件调试软件调试4.2.14.2.1 按键程序按键程序当按键按下的时候产生一个低电平,连接 INT0,产生外部中断,使P1.1,P1.2,P1.3 取反,从而控制电机正反转,和 LED灯的状态,显示其转向.具体的程序如下:void INT0SUB() interrupt 04.2.2 PWM4.2.2 PWM 程序P11=P11;P12=P12;P13=P13;4因为电机调速是本次设计的最主要任务之一,所以 P
12、WM 程序也是程序中最重要的一环。PWM 的调速原理是通过调节一个斩波周期中的脉冲占空比来调节电机功率而达到调速目的。本设计中,PWM 的斩波周期为 500us,那也就是说斩波频率为 2kHz,在理论上能达到 0.05%线性可调,也就是能以 0.05%的调节精度来调节 PWM 占空比。PWM 调速子程序是放在定时器 0 中断中进行的,中断设置如下:ET0 = 1;/中断允许位TMOD=0 x51;TH0=0 xFE;TL0=0 x0C;R0 = 1;/SETB TR0下面是 PWM 的中断子程序:void TIMER0() interrupt 1TH0=0 xFE;TL0=0 x0C;if(r
13、=0)a+;if(a=c)P10=0;5r=1;a=0;if(r=1)b+;if(b=(100-c)P10=1;b=0;r=0;n-;4.2.3 测速系统程序测速是本设计的另外一个重点。本设计中测速系统的工作原理为:利用电机叶片上的磁钢,引起霍尔开关产生脉冲,单片机就采集此脉冲数,加以计算,得出其实时速度。测速程序得用一个计数器 1 具体实现如下:TH1 = 0 x00;TL1 = 0 x00;ET1 = 1;TR1 = 1;6函数中,TH1_1,TL1_1 就是存放计数器 1 的计数值的缓冲区,当它们从 TH1和 TL1 中取得数值之后,TH1 和 TL1 随即被清零,为下一次计数做好准备。void TIMER0() interrupt 1int d,g,z;4.2.44.2.4 调速程序调速程序本程序中我们利用逼近的方式来控制电机的转速,其相应的程序 nz=TL1;d=TL1*30;g=d-k;dat1=d%10;d=d/10;dat2=d%10;d=d/10;dat3=d%10;d=d/10;dat4=d;m=0;n=20;TL1=0X00;TH1=0X00;7
限制150内