收藏 分销(赏)

直流电动机的应用第九章应用实例本科毕业论文.doc

上传人:胜**** 文档编号:3004879 上传时间:2024-06-12 格式:DOC 页数:35 大小:812.50KB
下载 相关 举报
直流电动机的应用第九章应用实例本科毕业论文.doc_第1页
第1页 / 共35页
直流电动机的应用第九章应用实例本科毕业论文.doc_第2页
第2页 / 共35页
直流电动机的应用第九章应用实例本科毕业论文.doc_第3页
第3页 / 共35页
直流电动机的应用第九章应用实例本科毕业论文.doc_第4页
第4页 / 共35页
直流电动机的应用第九章应用实例本科毕业论文.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

1、第九章 应用实例在本章中,将前几章所学的内容进一步扩展,设计并完成几个完整的应用实例,巩固所学的知识。特别是提高程序设计和调试能力。9.1 直流电动机的应用直流电动机的基本知识1)直流电动机工作原理直流电动机就是将直流电能转换为机械能的转动装置。直流电动机具有良好的调速性能、较大的启动转矩和过载能力强等诸多优点,因此在许多行业中应用广泛。特别在全国大学生电子设计竞赛中,微型直流电机、电动小车多次作为控制类题目主要控制对象。微型直流电机(包括玩具直流电机、小型直流减速电机等)一般为永磁式直流电动机。永磁式直流电动机由定子磁极、转子、换向器、电刷、机壳、轴承等构成。定子磁极采用永磁体(永久磁钢),

2、定子的作用是产生主磁场。转子为进行能量转换的电枢,在磁场中产生感应电动势和电磁转矩。直流电机定子固定有环状永磁体,电流通过转子上的线圈产生安培力,当转子上的线圈与磁场平行时,再继续旋转受到的磁场方向将改变,因此此时转子末端的电刷跟换向片交替接触,从而线圈上的电流方向也改变,产生的洛伦兹力方向不变,所以电机能保持一个方向转动。要改变直流电机旋转方向,只需要改变转子线圈电压极性。直流电机转速公式:式中,Ud为电机外加直流电压,Ra为电枢绕组电阻,Ce为电机常数,I为电机电流,电机电流与负载大小有关。从直流电机转速公式可见,只要改变电枢电压就能实现直流电机的无极调速。2)直流电机驱动电路小功率直流电

3、机驱动电路可以采用如图9_1所示的H桥开关电路。这种驱动电路可以很方便地实现直流电机的四象限运行,即正转、正转制动、反转和反转制动。UA和UB是互补的TTL驱动信号。由于大功率PNP晶体管价格高,难实现,所以这个电路只在小功率电机驱动中使用。当四个功率开关全用NPN晶体管时,需要解决两个上桥臂晶体管(BG1和BG3)的基极电平偏移问题。图(b)中H桥开关电路利用两个晶体管实现了上桥臂晶体管的电平偏移。但电阻R上的损耗较大,所以也只能在小功率电机驱动中使用。(a) PNP/NPN管 (b)4个NPN管图9_1 H桥开关电路对于H桥驱动电路,上下桥臂功率晶体管施加互补信号。由于带载情况下,晶体管的

4、关断时间通常比开通时间长,例如当下桥臂晶体管未及时关断,而上桥臂抢先开通时就出现所谓“桥臂直通”故障。桥臂直通时,电流迅速变大,造成功率开关损坏。所以设置导通延时,是必不可少的。在实际制作中,可以采用大功率达林顿管或场效应管等分离元件进行驱动电路设计。为了简化电路设计,建议使用H桥电机驱动L298N等专用芯片,其性能稳定可靠、电路简单。对于大功率驱动系统,希望将主回路与控制回路之间实行电气隔离,此时常采用光电耦合电路来实现。L298N是ST公司生产的一种高电压、大电流电机驱动芯片。该芯片主要特点是:工作电压高,最高工作电压可达46V;输出电流大,瞬间峰值电流可达3A,持续工作电流为2A;额定功

5、率25W。内含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器线圈等感性负载;采用标准逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。L298N内部结构示意图如图9_2所示。该芯片可以驱动一台两相步进电机或四相步进电机,也可以驱动两台直流电机。图9_2 L298N内部结构示意图使用一个L298N驱动器可以驱动两台直流电机。引脚ENA、ENB可用于输入PWM脉宽调制信号对电机进行调速控制。如果无须调速可将两引脚接5V,使电机工作在最高速

6、状态,实现电机正反转就更容易了。如果输入信号端IN1接高电平,输入端IN2接低电平,电机M1正转;如果信号端IN1接低电平, IN2接高电平,电机M1反转。控制另一台电机是同样的方式,输入信号端IN3接高电平,输入端IN4接低电平,电机M2正转。反之则反转。对于电机的调速,我们采用PWM调速的方法。其原理就是开关管在一个周期内的导通时间是t,PWM周期为T,则电机两端的平均电压为Ud=Vs*t/T=a*Vs。其中,占空比a=t/T,Vs为驱动电源电压。电机的转速与电机两端的电压成正比,而电机两端的电压与控制波形的占空比成正比,因此电机的速度与占空比成正比。占空比越大,电机转得越快。实例9.1直

7、流电机的单片机控制任务要求:设计一个能控制直流电机正反转的调速电路,采用PWM方式调速,有加减速按键、启动停止按键和方向选择键。分析说明:在选择控制直流电机的PWM周期时,要考虑的因素主要是电枢电感,驱动器能承受的频率,散热条件,对噪声的要求等等。在驱动器能承受的范围内,周期短一点好(也就是PWM频率高一点)。这样转矩更平稳,噪声小,电流纹波小。但是驱动器发热会严重一些。直流电机用PWM实现调速的PWM波周期通常在毫秒以下量级,电机功率越大,可以允许周期也大一些。不考虑开关频率的限制的话周期越短越好,但实际上电流越大电压越高开关的频率上限越低,或者说周期的下限越高。PWM周期较大时,电机高转速

8、时由于惯性大不会有瞬间停顿问题,但让电机运转在很低的转速时确实会出现类似蠕动的瞬间停顿的问题。我们选取PWM周期为2.5ms。1)硬件电路设计为了保证电路简单可靠高,直流电机驱动电路采用电机专用驱动芯片L298N。四个二极管起到保护驱动芯片L298N的作用,当加到电机上的直流电压关断时,电机电枢线圈将产生很高的感应电压,此感应电压可以通过二极管提供的回路泄放,从而保护驱动芯片。硬件电路图参见图9_3所示。2)程序设计#include #define key1 0x01#define key2 0x02#define key3 0x03#define key4 0x04void key_proc

9、ess_1(void);void key_process_2(void);void key_process_3(void);void key_process_4(void);void key_check (void);unsigned char key_value; /定义全局变量,键值unsigned int a=10000; /初值50%占空比void main(void) WDTCTL = WDTPW + WDTHOLD; /停止看门狗 BCSCTL2=SELS; P1DIR = 0xff; / P1输出 CCR0 = 20000; / PWM 周期2.5ms CCTL1 = OUTMO

10、D_7; / CCR1复位/置位 CCR1 = a; / CCR1 PWM 占空比5% TACTL = TASSEL_2 + MC_1; / 定时器A时钟源为SMCLK,增计数模式 P2IE = 0x27; / P2.0-P2.3 IO口中断使能 P2IES = 0x27; / P2.0-P2.3 IO口下降沿触发中断方式 P2IFG = 0x0; / P2.0-P2.2 IO口中断标志位清除 _EINT(); /中断允许 while(1) if(P2IN&BIT4) P1OUT &=(BIT4+BIT7); /正转 P1OUT |=BIT0+BIT5; else P1OUT &=(BIT0+

11、BIT5); /反转 P1OUT |=BIT4+BIT7; CCR1 = a; key_check (); switch (key_value) /对键值进行处理.采switch语法结构查询 case key1: key_process_1(); /调用键处理程序1 break; case key2: key_process_2(); /调用键处理程序2 break; case key3: key_process_3(); /调用键处理程序3 break; case key4: key_process_4(); /调用键处理程序4 break; default: break; key_valu

12、e=0x00; /键值清除 P2IE = 0x27; / P2.0-P2.2 IO口中断使能 P2IFG = 0x0; / P2.0-P2.2 IO口中断标志位清除 #pragma vector=PORT2_VECTOR _interrupt void Port_2(void) /P2中断服务程序 switch (P2IFG) case 0x01: key_value=0x01; break; case 0x02: key_value=0x02; break; case 0x04: key_value=0x03; break; case 0x20: key_value=0x04; break;

13、 default: P2IFG = 0x0; / P2.0-P2.2 IO口中断标志位清除 break; P2IFG = 0x0; / P2.0-P2.2 IO口中断标志位清除 void key_check (void) unsigned int i; for(i=0;i=20000) a=20000; void key_process_4(void) /减速 a-=1000; if(a=0) a=0; 3)仿真结果与分析图9_3 实例9_1仿真结果注意电路仿真与实物运行有所不同,仿真时电机加减速过程较慢,启动后要多等待一会儿,等电机加速结束,运行稳定后,再进行加速或减速控制。可以通过示波器观

14、察PWM信号周期和占空比。9.2 舵机的单片机控制舵机的工作原理舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。目前在高档遥控玩具、航模和遥控机器人中已经使用得比较普遍。舵机是伺服马达俗称。舵机常用的控制信号是一个周期为20毫秒左右,宽度为0.5毫秒到2.5毫秒的脉冲信号。当舵机收到该信号后,会马上激发出一个与之相同的,宽度为1.5毫秒的负向标准的中位脉冲。之后二个脉冲在一个加法器中进行相加得到了所谓的差值脉冲。输入信号脉冲如果宽于负向的标准脉冲,得到的就是正的差值脉冲。如果输入脉冲比标准脉冲窄,相加后得到的肯定是负的脉冲。此差值脉冲放大后就是驱动舵机正反转

15、动的动力信号。舵机电机的转动,通过齿轮组减速后,同时驱动转盘和标准脉冲宽度调节电位器转动。直到标准脉冲与输入脉冲宽度完全相同时,差值脉冲消失时才会停止转动。这就是舵机的工作原理。小型舵机的工作电压一般为4.8V或6V,转速也不是很快,一般为0.22秒/60度或0.18秒/60度。假如你更改角度控制脉冲的宽度太快时,舵机可能反应不过来。如果需要更快速的反应,就需要更高的转速了。舵机的控制一般需要一个20ms左右的时基脉冲,该脉冲的高电平部分一般为0.5ms2.5ms范围内的角度控制脉冲部分。以180度角度伺服为例,那么对应的控制关系是这样的: 0.5ms-0度; 1.0ms-45度; 1.5ms

16、-90度; 2.0ms-135度; 2.5ms-180度;这只是一种参考数值,具体的参数,请参见舵机的技术参数。标准的舵机有3条导线,分别是:电源线、地线、控制线,如图9_4所示。脉冲宽度与舵机输出转角的关系如图9-5所示。图9-4标准舵机引脚图图9-5脉冲宽度与舵机输出转角的关系实例9_2 舵机的单片机控制实例任务要求:设计一个舵机控制电路,能够启动停止、增加减少转角和回零。1)硬件电路设计要精确控制PWM脉冲宽度,单片机选用XT2片外晶振8MHz。设置5个按键分别为启动、停止、增加、减少和回零。硬件电路图参见9_6所示。2)程序设计#include #define key1 0x01#de

17、fine key2 0x02#define key3 0x03#define key4 0x04#define key5 0x05void key_process_1(void);void key_process_2(void);void key_process_3(void);void key_process_4(void);void key_process_5(void);void key_check (void);unsigned char key_value; /定义键值全局变是unsigned int a=1500;/ 7.5%void main(void) WDTCTL = WDT

18、PW + WDTHOLD; /停止看门狗 BCSCTL2=SELS+DIVS0+DIVS1; /SMCLK = XT2,SMCLK 8分频 P1DIR = 0xff; / P1输出 P1OUT &=BIT2; CCR0 = 20000; / PWM 周期 CCTL1 = OUTMOD_7; / CCR1复位/置位 CCR1 = a; / CCR1 PWM 占空比5% TACTL = TASSEL_2 + MC_1; / 定时器A时钟源为SMCLK,增计数模式 P2IE = 0x37; / P2.0-P2.3 IO口中断使能 P2IES = 0x37; / P2.0-P2.3 IO口下降沿触发中

19、断方式 P2IFG = 0x0; / P2.0-P2.2 IO口中断标志位清除 _EINT(); /中断允许 while(1) CCR1 = a; key_check (); switch (key_value) /对键值进行处理.采switch语法结构查询 case key1: key_process_1(); /调用键处理程序1 break; case key2: key_process_2(); /调用键处理程序2 break; case key3: key_process_3(); /调用键处理程序3 break; case key4: key_process_4(); /调用键处理程

20、序3 break; case key5: key_process_5(); /调用键处理程序3 break; default: break; key_value=0x00; /键值清除 P2IE = 0x37; / P2.0-P2.2 IO口中断使能 P2IFG = 0x0; / P2.0-P2.2 IO口中断标志位清除 #pragma vector=PORT2_VECTOR _interrupt void Port_2(void) /P2中断服务程序 switch (P2IFG) case 0x01: key_value=0x01; break; case 0x02: key_value=0

21、x02; break; case 0x04: key_value=0x03; break; case 0x20: key_value=0x04; break; case 0x10: key_value=0x05; break; default: P2IFG = 0x0; / P2.0-P2.2 IO口中断标志位清除 break; P2IFG = 0x0; / P2.0-P2.2 IO口中断标志位清除 void key_check (void) unsigned int i; for(i=0;i=2500) a=2500; void key_process_4(void) /减 a-=100;

22、if(a=500) a=500; void key_process_5(void) a=1500; /回零 4)仿真结果与分析图9_6 实例9_2仿真结果9.3 LED点阵汉字显示屏应用实例汉字LED点阵屏简介按性能和用途分类,LED显示屏分为条屏、图文屏、视屏以及数码屏四种。条屏系列一般为单基色显示屏,主要用于显示标准16x16汉字。这类屏幕多做成条形,故称为条屏。可用USB输入,RS232输入或GPRS无线输入。图文屏系列一般为双基色显示屏,主要用于显示文字和图形,一般无灰度控制。它通过与计算机通讯输入信息。与条屏相比,图文屏的优点是显示的字体字型丰富,并可显示图形,与视屏相比,图文屏最大

23、的优点是一台计算机可以控制多块屏,且可以脱机显示。视屏系列一般为全彩色显示屏,与计算机VGA信号点对点同步显示。视屏开放性好,对操作系统没有限制,能实时反映计算机监视器的显示。数码屏的显示器件为7段码数码管,适于制作时钟屏、利率屏等,广泛用于证券交易所股票行情显示、银行汇率、利率显示、各种价目表等。多数情况下,在数码屏上加装条屏来显示欢迎词、通知、广告等。 像素是LED显示屏的最小成像单元。俗称“点”或“像素点”。为便于组装和显示,出厂的半成品通常是以显示模组形式提供的,一个显示模组将多个显示单元加显示驱动做在一起。模组也称单元板,单元板通常有64x32(64列32行)、64x16(64列16

24、行)。将单元板按一定方式拼接在一起,加上控制卡/控制系统、电源和框架等就构成为LED显示屏。扫描方式决定了模组之间连接的形式,扫描方式有1/16、1/8、1/4、1/2、静态这几种。因为LED显示屏是逐行刷新显示的,扫描方式也就决定了显示刷新的方式,如1/16就是每次刷新1行,16行为一个扫描周期,需ABCD四个信号控制;1/8就是每次刷新1行,8行为一个扫描周期,需ABC三个信号控制;其它依次类推。如果采用相同的LED灯,1/16扫的亮度要比1/8低,静态的亮度是最高的。户内的屏一般采用1/16扫,户外和半户外的一般采用1/16或者1/8。对于放置在屏经常受到猛烈阳光照射的环境,就最好用1/

25、4扫描。实例9_3 LED点阵汉字移动显示任务要求:使用16x16点阵显示四个汉字“汉字显示”,并且实现汉字向左移动显示。分析说明:为了在LED点阵上显示汉字,通常采用字模软件生成汉字点阵字模。我们采用字模增强版,如图2所示。该软件为单色液晶显示生成字模,同样适用于为点阵LED汉字显示生成字模。该软件不需要安装,在程序包中双击ZimoIII.exe即可使用。首先,进行参数设置。字模格式为横向取模,字节正序,汉字大小16x16。第二字符输入。第三生成字模,字模代码可以直接复制或者导出到文件,供编程使用。图9_7 字模生成软件的使用1) 硬件电路设计为了显示4个汉字,采用8片74HC595、1片7

26、4HC154,扫描方式采用1/16。4个汉字为128x16点阵,16行由74HC154逐行扫描;128列分为8字节,由74HC595提供8个字的段码。硬件电路图参见图9_8所示。2) 程序设计显示采用扫描方式为1/16,即每次刷新1行,每行显示1.5ms,16行为一个扫描周期,共24ms。由于人眼的视觉暂留现象,将感觉到16行LED显示屏是同时亮的。若显示的时间太短,则亮度不够,若显示的时间太长,将会感觉到闪烁。#include msp430f249.hchar tab=0x20,0x00,0x10,0x00,0x17,0xFC,0x02,0x08,0x82,0x08,0x49,0x10,0x

27、49,0x10,0x11,0x10, 0x10,0xA0,0x20,0xA0,0xE0,0x40,0x20,0xA0,0x21,0x18,0x26,0x0E,0x28,0x04,0x00,0x00,/汉16x160x02,0x00,0x01,0x00,0x3F,0xFC,0x20,0x04,0x40,0x08,0x1F,0xE0,0x00,0x40,0x00,0x80, 0x01,0x00,0x7F,0xFE,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x05,0x00,0x02,0x00,/字16x160x00,0x00,0x1F,0xF0,0x10,0

28、x10,0x1F,0xF0,0x10,0x10,0x1F,0xF0,0x04,0x40,0x04,0x40, 0x44,0x48,0x24,0x48,0x14,0x50,0x14,0x60,0x04,0x40,0xFF,0xFE,0x00,0x00,0x00,0x00,/显16x160x00,0x00,0x1F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFE,0x01,0x00,0x01,0x00,0x11,0x20,0x11,0x10,0x21,0x08,0x41,0x0C,0x81,0x04,0x01,0x00,0x05,0x00,0x02,0x0

29、0,/示16x16 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0/第5个汉字保留空白,用于移动显示 ;void send_led(char m);void yidong(void);void main(void) char i,n; unsigned int k=0; WDTCTL = WDTPW + WDTHOLD; P1DIR=0xFF; P3DIR=0xFF; P3OUT =0; while (1) for(n=0;n50;n+) /移动显示时,保证每一屏点亮时间,也控制了移动速度 for(i=0;i0;k

30、-);/ 延时 P3OUT &=0x04; /P3.2=0 CLK for(k=300;k0;k-);/ 每行显示1.5ms(仿真时应适当调整) yidong(); void send_led(char m) char i,x; for(i=0;i8;i+) x=m&0x80;/取最高位判断是1或者0 if (x=0) P3OUT &=0x02; /若为0,则数据输出0,即P3.1=0 else P3OUT |=0x02; /若为1,则数据输出1,即P3.1=1 P3OUT |=0x04; /时钟输出高,即P3.2=1 m=m1; /左移一位 P3OUT &=0x04; /时钟输出低,即P3.

31、2=0 void yidong(void) char i,j,k=0; for(j=0;j7; /将第1个汉字的第1列送到第5个汉字的第16列tabj*2+128=tabj*2+128|tabj*2+128+17;/将第5个汉字的第9列送到第5个汉字的第8列 for(j=0;j4;j+)/4个汉字需要移动 for(i=k;i16+k;i+) tabi*2=tabi*27;/汉字左字节左移1位,合并右字节的最高位 tabi*2+1=tabi*2+17;/汉字右字节左移1位,合并下一汉字的最高位 k=k+16; /取用下一汉字 if(k48) k=0; /4个汉字移动完成,回零 for(j=0;j

32、16;j+) tabj*2+128+1=tabj*2+128+11;/第5个汉字右字节左移1位 tabj*2+128=tabj*2+1281; /第5个汉字左字节左移1位 ;3) 仿真结果及分析实例9_3仿真结果如图9_8所示,汉字的移动效果如图9_9所示。图9_8 实例9_3仿真结果图9_9 汉字移动效果图9.4 简易流量计流量计英文名称是flow meter,它的定义为:指示被测流量和(或)在选定的时间间隔内流体总量的仪表。简单来说就是用于测量管道或明渠中流体流量的一种仪表,工程上常用单位m3/h,它可分为瞬时流量(Flow Rate)和累计流量(Total Flow),瞬时流量即单位时间

33、内过封闭管道或明渠有效截面的量,流过的物质可以是气体、液体、固体;累计流量即为在某一段时间间隔内(一天、一周、一月、一年)流体流过封闭管道或明渠有效截面的累计量。通过瞬时流量对时间积分亦可求得累计流量,所以瞬时流量计和累计流量计之间也是可以相互转化的。流量计又分为有转子流量计、节流式流量计、细缝流量计、容积流量计、电磁流量计、超声波流量计等。按介质分类:液体流量计和气体流量计。在工业现场,测量流体流量的仪表统称为流量计或流量表。是工业测量中最重要的仪表之一。随着工业的发展,对流量测量的准确度和范围要求越来越高,为了适应多种用途,各种类型的流量计相继问世,广泛应用于石油天然气、石油化工、水处理、

34、食品饮料、制药、能源、冶金、纸浆造纸和建筑材料等行业。以脉冲输出转子流量计为例,实际流量计要求设计的功能较多,主要特点如下所示。1、可显示管道内流体的瞬时流量、累计流量和单班累计流量。2、内部可置入高精度修正曲线,确保流量检测的准确性。3、表头采用MSP430芯片,液晶显示,超低功耗。3、高精度D / A转换芯片,保证4-20mA电流稳定输出。4、具有二线制420mA电流输出功能和脉冲输出功能。5、采用铁电数据存储器,具有高可靠数据掉电保护功能(存储速度快,无数次上电冲击数据不丢失)。6、具有485通讯输出功能,标准Modbus/RTU 协议, DC24V或 DC12V供电。7、表头采用电池供电,可供电两年;或者采用外部DC24V、DC12V供电。限于本书的篇幅,我们仅仅设计显示总流量和瞬时流量等主要功能。实例9_4简易流量计的设计任务要求:设计一个脉冲输

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服