电动机处于耗能制动状态。
当电动机轻载或空载运行时,平均电压U等于感应电动势E。在每个PWM周期的导通区间,V2截止,电流先经VD4、VD1流向电源,当减小到零后,V1导通接通电源,电流改变方向,沿V1、V4流动。在每个PWM周期的关断区间,V1截止,电流先是沿VD2、V4续流,当续流电流减小到零后,V2导通,在感应电动势的作用下,电流改变方向,沿开关管V2和二极管VD4流动。因此,在一个PWM周期中,电流交替呈现再生制动、电动、续流电动、耗能制动四种状态。
我们所用的驱动芯片是L298N。L298N是SGS公司的产品,内含二个H桥的高电压大电流双全桥式驱动器,接收标准TTL逻辑电平信号,可驱动46V、2A以下的两台电机。且价格便宜,对本电路来说是经济合适之选。本设计中的硬件电路原理框图如图1.5所示。其中驱动部分的原理图如图1.6所示。
图1.5 系统硬件电路原理框图
11
图1.6 驱动电路原理图
图1.7 速度反馈电路
12
1.4 速度检测电路
测速元件是闭环调速系统中的关键元件,为了扩大调速范围,改善电动机的低速平稳性,要求测速元件低速输出稳定,波纹小,线性度好。常用的测速元件有模拟式测速元件和数字式测速元件。模拟式测速元件通常采用测速发电机;数字式测速元件采用光电式脉冲发生器。数字测速元件具有低惯量低噪声高分辨率和高精度的特点,有利于控制直流电机。在现代驱动控制系统中,为了提高速度反馈检测精度,正在摒弃直流测速发电机加A/D转换器的方案,而采用光电码盘直接数字测速的方案。
本系统采用增量式光电旋转编码器测量电机的速度。将光电编码器与电动机相连,当电动机转动时,带动码盘旋转,便发出相应的信号。光电编码器由光源,光电转盘,光敏元件和光电整形放大电路组成。光电转盘与被测轴连接,光源通过光电转盘的透光孔射到光敏元件上,当转盘转动时,光敏元件便发出与转速成正比的脉冲信号,为了判别电机的转向,光电编码器输出两路相隔90度电脉冲角度的正交脉冲。
利用光电编码器进行数字测速的常用方法有两种:M法和T法。
(1)M法测速:M法又叫定时计数法,是用计数器记取规定时间内光电编码器输出的脉冲个数来反映转速值,即在规定的时间间隔T内,测量编码器光栅所产生的脉冲数来获得被测的速度值。设编码器光栅每转一圈发出的脉冲数为Z,且在规定的时间T内,测得的脉冲数为M,则电机每分钟转数为:
n=60M/ZT
(1-2)
将转速实际值和测量值之差与实际值之比定义为测量误差率δ,δ反映了测速方法的准确性,δ越小,准确度越高。M法测速误差率取决于编码器的制造精度,以及编码器输出脉冲前沿和测速时间采样脉冲前沿不齐所造成的误差等,最多可以产生一个脉冲的误差。因此,M法测速误差率的最大值为:
60M60M(?1)?1ZT δ?ZT (1-3) ×100%?60MMZT由上式可知,误差率δ与M成反比,即脉冲数越大,误差越小,故M法测速适用于高速段。
(2)T法测速:T法又叫定数计时法,是用定时器记取光电编码器输出脉冲一个周期内的高频时基个数,然后取其倒数来反应速度值,即测量相邻两个脉冲的时间间隔来
13
确定被测速度。设编码器光栅每转一圈发出的脉冲数为Z,定时器的时基是一已知频率为F的高频脉冲,定时器的起始和终止由编码器光栅脉冲的两个相邻脉冲的起始沿控制。若定时器的读数为M,则电机每分钟的转速为:
n?60F/ZM (1-4)
T法测速的误差产生原因与M法相仿,定时器的计数M最多存在一个脉冲的误差,因此,T法测速误差率的最大值为:
60F6F0?1Z(M?1)ZM (1-5) δ=×100%=60FM?1ZM低速时,编码器相邻脉冲间隔时间长,测得的高频脉冲个数多,误差小,故T法适用于低速段。
我们采用M法测速。所采用的光电编码器光栅每转一圈发出1000个脉冲。设电机工作在额定转速下,即n=500转/分,则在0.1秒的采样间隔内,计数器所应接受到的标准脉冲个数为M=500/60*0.1*1000=833个,可以看出,精度还是较高的。
本设计中速度反馈回路的原理图如图1.7所示。
1.5 控制器
本设计选用手头上的C8051F040单片机为系统的控制器,C8051F040单片机执行效率高,片上可利用资源丰富,为以后系统功能的扩展留有余地。
Silicon Laboratories公司出品的C8051F系单片机是完全集成的混合信号系统级芯片(SOC),具有与MCS-51完全兼容的指令内核。该系单片机采用全新的CIP-51内核,采用流水线处理技术,不再区分时钟周期和机器周期,能在执行指令期间预处理下一条指令,提高了指令执行效率。C8051F040单片机是该系中功能最全最具代表性的一款。具有控制系统所需的所有的模拟和数字外设。 其主要特性如下:
(1)片内看门狗、定时器、VDD监视器和温度传感器; (2) 一个12位、100ksps和一个8位、500ksps的A/D转换器; (3) 两个12位D/A转换器;
(4)4K字节的片内RAM和64KB可在系统编程的FLASH存储器; (5) 5个通用的16位定时器;
14
(6)具有6个捕捉/比较模块的可编程计数器/定时器阵列; (7)硬件实现的SPI、SMBUS和两个UART串行接口; (8)控制器局域网(CAN2.0)控制器, 具有32个消息对象; (9)全速、非侵入式的在线调试接口;
(10)引入交叉开关配置,可灵活地将外围设备配置到P0~P3口。
C8051F040单片机是真正能独立工作的片上系统(SOC)。除具有标准8051的端口外,C8051F040还有4个附加的8位端口,每个端口都可以配置为推挽输出或开路输出。最独特的改进就是引入了数字交叉开关,允许将内部数字资源映射到P0口,P1口,P2口,P3口,这一特性允许用户根据自己的特定应用选择通用端口和所需数字资源的组合。其MCU能有效地管理模拟和数字外设,可以关闭单个或全部外设,所以其功耗很低。
片内JTAG调试支持功能允许对安装在最终应用系统上的产品MCU进行非侵入式(不占用片内资源)、全速、在系统调试。在系统调试比采用标准MCU仿真器要优越的多,因为这一技术能保证精确模拟外设的性能。该调试系统支持观察和修改存储器和寄存器,支持断点,单步,观察点,运行和停机命令。在使用JTAG调试时,所有的模拟和数字外设都可全功能运行,当MCU单步执行或遇到断点而停止运行时,所有的外设都停止运行,以保持同步。
FLASH编程非常方便,可以在Silicon Labs集成开发环境(IDE)下通过JTAG接口进行编程,不需要专用编程器或适配器。每个MCU都可在工业温度范围(-45到+80度)内用2.7~3.6V的电压工作,端口I/O、RST、JTAG引脚都容许5V的输入信号电压。
正是由于这些优点以及极高的模拟和数字集成度,对各种要求小体积,高集成度精确测量的场合而言,C8051F040实为理想选择。
1.6 通信模块
本设计中为了能够人为的设定电机的转速及观察两个电机的实时速度,采用了RS232串行通信方式实现计算机与单片机的通信,通过计算机的操作界面可以很方便地完成这些任务。利用C8051F040单片机内部集成的UART控制器,很容易进行串行通信。
计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯两种方式。由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多
15