实验三Timer部件驱动马达

上传人:ni****g 文档编号:476166440 上传时间:2023-12-06 格式:DOCX 页数:19 大小:534.97KB
返回 下载 相关 举报
实验三Timer部件驱动马达_第1页
第1页 / 共19页
实验三Timer部件驱动马达_第2页
第2页 / 共19页
实验三Timer部件驱动马达_第3页
第3页 / 共19页
实验三Timer部件驱动马达_第4页
第4页 / 共19页
实验三Timer部件驱动马达_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《实验三Timer部件驱动马达》由会员分享,可在线阅读,更多相关《实验三Timer部件驱动马达(19页珍藏版)》请在金锄头文库上搜索。

1、精品文档电机转动控制实验一、实验目的1熟悉ARM本身自带的六路即三对PWM,掌握相应寄存器的配置。2编程实现ARM系统的PWM输出用于控制直流电机。3了解直流电机的工作原理,4掌握带有PWM的CPU编程实现其相应功能的主要方法。二、实验内容学习直流电机的工作原理,了解实现电机转动对于系统的软件和硬件要求。学习ARM知识,掌握PWM的生成方法。编程实现ARM芯片的一对PWM输出用于控制直流电机的转动,并实现三级速度变化。三、预备知识1、用ARMADS1.2集成开发环境,编写和调试程序的基本过程。2、ARM应用程序的框架结构。3、了解直流电机的基本原理。四、实验设备及工具硬件:ARM嵌入式开发平台

2、、用于ARM920T的JTAG仿真器、PC机Pentium100以上。软件:PC机操作系统Win2000或WinXP、ARMADS1.2集成开发环境、仿真器驱动程序、超级终端通讯程序。五、实验原理及说明1、直流电机1)直流电动机的PWM电路原理晶体管的导通时间也被称为导通角a,若改变调制晶体管的开与关的时间,也就是说通过改变导通角a的大小,如图1所示,来改变加在负载上的平均电压的大小,以实现对电动机的变速控制,称为脉宽调制(PWM)变速控制。在PWM变速控制中,系统采用直流电源,放大器的频率是固定,变速控制通过调节脉宽来实现。构成PWM的功率转换电路或者采用H桥式驱动,或者采用T”式驱动。由于

3、T”式电路要求双电源供电,而且功率晶体管承受的反向电压为电源电压的两倍。因此只适用于小功率低电压的电动机系统。而H”桥式驱动电路只需一个电源,功率晶体管的耐压相对要求也低些,所以应用得较广泛,尤其用在耐高压的电动机系统中。图1脉宽调制(PWM)变速原理精品文档2)直流电动机的PWM等效电路如图2a所示:是一个直流电动机的PWM控制电路的等效电路。在这个等效电路中,传送到负载(电动机)上的功率值决定于开关频率、导通角度及负载电感的大小。开关频率的大小主要和所用功率器件的种类有关,对于双极结型晶体管(GTR),一般为lkHz至5kHz,小功率时(100W,5A以下)可以取高些,这决定于晶体管的特性

4、。对于绝缘栅双极晶体管(IGBT),一般为5kHz至12kHz;对于场效应晶体管(MOSFET),频率可高达20kHz0另外,开关频率还和电动机电感有关,电感小的应该取得高些。(a)等效电路b) PWM 电路中电流和电压波讨论图2当接通电源时,电动机两端加上电压Up,电动机储能,电流增加,当电源中断时,电枢电感所储的能量通过续流二极管VD继续流动,而储藏的能量呈下降的趋势。除功率值以外,电枢电流的脉动量也与电动机的转速无关,仅与开关周期、正向导通时间及电机的电磁时间常数有关。3)直流电动机PWM电路举例图3为直流电动机PWM电路的一个例子。它属于H桥式双极模式PWM电路。PWM信号延迟及 信号

5、分配电路图3直流电动机 PWM电路举例电路主要由四部分组成,即三角波形成电路、脉宽调制电路、信号延迟及信号分配电路和功率电路。电路中各点波形如图4所示。其中信号延迟电路是为了防止“共态直通”而设置的。一般延迟时间调整在(1030)ps之内,根据晶体管特性而定。其原理简单叙述如下:功率电路主要由四个功率晶体管和四个续流二极管组成。四个功率晶体管分为两组,V1与V4、V2与V3分别为一组,同一组的晶体管同时导通,同时关断。基极的驱动信号Ub1=Ub2,Ub3=Ub4。其工作过程为: 在t112期间,Ub10与Ub40,V1与V4导通,V2与V3截止,电枢电流沿回路l流通。 在t2T+t1期间,Ub

6、10与Ub40与Ub30但此时由于电枢电感储藏着能量,将维持电流在原来的方向上流动,此时电流沿回路2流通;经过跨接于V2与V3上的续流二极管VD4、VD5。受二极管正向压降的限制,V2与V3不能导通。 T+t1之后,重复前面的过程。 反向运转时,具有相似的过程。0 A图4各点波形4)开发平台中直流电机驱动的实现开发板中的直流电机的驱动部分如图5所示;由于S3C2410X芯片自带PWM定时器,所以控制部分省去了三角波产生电路、脉冲调制电路和PWM信号延迟及信号分配电路,取而代之的是S3C2410X芯片的定时器0、1组成的双极性PWM发生器。2、Timer部件S3C2410X双极性PWM发生器Ti

7、mer部件主要是用于提供定时功能、脉宽调制(PWM功能的部件,它的应用比较灵活,对于需要一定频率的脉冲信号、一定时间间隔的定时信号的应用场合,它都能提供应用支持。下面主要对S3c2410K片内部的Timer部件进行介1)概况S3c2410芯片内部拥有5个16位的Timer部件。其中TimerO,Timer1,Timer2,Timer3具有脉宽调制(PWM)功能。Timer4仅作定时器用,不具有PWM功能,因为它没有输出引脚。TimerO有一个死区(dead-zone)发生器,通常用于大电流设备应用。Timer0和Timer1共享一个8位的预分频器,而Timer2,Timer3,Timer4共享

8、另一个8位的预分频器。另外还有2个具有5种分频系数的时钟分割器,5种不同的分频系数是:1/2,1/4,1/8,1/16和TCLK。其中,Timer0和Timer1共享一个4位的分割器,而Timer2,Timer3,Timer4共享另一个4位的分割器。每个Timer部件接收的时钟是经过预分频器、分割器分频后的、仅提供给自己的时钟信号。8位的预分频器、分割器均可编程设定。S3c2410芯片内部的Timer部件功能框图如图7-6所示。T0UT2) 1WT3* r*jPin图5 Timer部件内部功能框图TCNTBn是定时器的计数缓冲寄存器,初始化应给其赋一个初值,该初值在定时器启动时加载进递减计数器

9、中。TCMPBn是定时器(但Timer4没有)的比较缓冲寄存器,初始化时也给其赋一个初值,该初值被加载进比较寄存器,以便与递减计数器中的值比较。TCNTBn和TCMPBn的双缓冲机制,保证了Timer部件在频率和占空比发生改变时能有一个稳定的输出。2)Timer部件的操作每个定时器都有他自己的16位递减计数器TCNTn,该计数器是通过定时器自己的时钟驱动的。当递减计数器减为0时,可产生定时器中断请求信号,该中断信号通知微处理器定时器的操作已经完成了。当定时器计数器中的值为0时,TCNTBn的值将自动加载到递减计数器,以开始下一轮定时操作。但是,如果定时器停止工作,那么TCNTBn的值就不会被重

10、新加载到计数器中。TCMPBn的值用于脉宽调制。当递减计数器的值和定时器控制逻辑中的比较寄存器值相匹配时,定时器控制逻辑将改变输出电平(outputlevel)。因止匕,比较寄存器确定脉宽调制信号输出的上升时间(或者下降时间)。(1)基本的定时器操作每个定时器(除了定时器4外)者B有TCNTBn,TCNTn,TCMPBn和TCMPn在TCNTn的值达至I0时,TCNTBn和TCMPBn被分另力口载至UTCNTn和TCMPn中c同时,如果中断使能的话,将会提出中断请求。TCNTn和TCMPn是内部寄存器,TCNTn计数器的值可以通过TCNTOn寄存器读出。定时器基本操作的过程如图6所示。Skui

11、t bil=lTimeiissldrkd|T匕AJa-rcjoad|fTCNTn=TCMPri|Tim史r由sluppM11n1111:7:*T+t.中断道求图6定时器操作fCMPnTCNTBn=3 TCN1 Bn =il Manual upciate= 1 Autoeiaaci= 1TCNT 斯=2 TCNlBnO manual updaie=o Auto-reioad= i1 X。(2)自动重载和双缓冲器S3c2410芯片的PWM定时器有双缓冲功能,该功能可以在不停止当前定时器操作的情况下,重新加载为下一轮定时器操作而改变的值。在这种机制下,尽管设置了新的定时器计数值,但是当前定时器的操作

12、不受影响,还是按原计数值完成操作。定时器计数值可以写入定时器计数缓冲寄存器(TCNTBn)中,而当前定时器的计数值可以从定时器计数观察寄存器(TCNTOn)中读到。如果读取TCNTBn的值,读至U的值不一一定是当前定时器的计数值,但一定是下一轮定时器操作的计数值。当TCNTn值达至IJ0时,自动重载操作将TCNTBn的值拷贝至TCNTn中。写入至ijTCNTBn中的值,仅在TCNTn值为0并且自动重载使能时,被加载到TCNTn中。如果TCNTn值变为0并且自动重载不使能,那么,TCNTn就不会进一步操作。一个双缓冲功能的例子如图7所示。写写TCHTBn=100TCMTBn=200开始ITCHT

13、E吨11自动加费一IHHHI150100100200中断I_I_IL图7一个双缓冲功能的例子(3)采用手动更新方式初始化定时器当递减计数器的值为0时,定时器自动重载操作就会发生。但若在重载发生之前,TCNTn的初始值还没有设置,在这种情况下,就必须通过手动更新位来加载TCNTn的初值。启动一个定时器操作的步骤如下:1) 将初始值写至ITCNTBn和TCMPBn中2) 设置相应的定时器的手动更新位。3) 设置相应的定时器的启动位来启动定时器,并清除手动更新位。如果定时器被强制停止,TCNTn仍保持着当前计数值,而不会从TCNTBn重新加载计数值。如果需要重新启动定时操作,则必须设置新的计数值,这

14、也要采用手动更新的方式。如图8所示,若要产生图中所示脉冲信号波形,则要进行如下步骤的操作:1)使能自动重载功能位。设置TCNTBn的值为160(50+110),TCMPBn的值为110。设置手动更新位和配置反转器位(开/关)。手动更新位分别设置TCNTn和TCMPn为TCNTBn和TCMPBn的值。然后,再分另设置TCNTBn的值和TCMPBn的值为80(40+40)和40,用作下一轮的重载值。2)设置启动位,将手动更新位满为0,反转器置为of,自动重载使能。定时器的递减计数器开始启动工作。3)当TCNTn的值达到与TCMPn的值相同时,TOUTn的逻辑电平由低变高。4)当TCNTn的值达至I

15、J0时,产生中断请求,同时TCNTBn的值力口载至U一个临时寄存器中。在下一节拍的定时器操作开始时,TCNTn从临时寄存器中重新加载计数值。5)在中断服务程序中,TCNTBn的值和TCMPBn的值分别设置为80(20+60)和60,用于下一轮的定时操作。6)当TCNTn的值达到与TCMPn的值相同时,TOUTn的逻辑电平由低变高。7)当TCNTn的值达至IJ0时,TCNTn自动重载TCNTBn中的值,并触发一个中断请求。8)在中断服务程序中,自动重载和中断请求被禁止,从而停止定时器工作。9)当TCNTn的值达到与TCMPn的值相同时,TOUTn的逻辑电平由低变高。10)当TCNTn的值递减计数到0时,由于自动重载被禁止,因此TCNTn不再重载计数值,并且定时器停止。11)不再产生中断请求。图8定时器产生的一个脉冲信号(4)脉宽调制(PWM)PWM脉冲宽度值由TCMPBn确定,而PWM脉冲频率值由TCNTBn确定。如图9所示。若要得到一个较高的PWM脉宽输出值,需增加TCMPBn的值。若要得到一个较低的PWM脉宽输出值,需减少TCMP

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业/管理/HR > 市场营销

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号