直流电机位置伺服系统驱动器设计
扫描二维码
随时随地手机看文章
摘 要: 直流电机位置伺服系统是天然气发动机电子调速系统的关键组成部分。本文利用Freescale公司的MC9S12型单片机,结合电机位置反馈和电枢电流检测,研制出了数字式PWM型伺服驱动器。该驱动器充分利用单片机的内嵌资源,实现了位置、速度和电流三闭环控制策略。
关键词: 天然气发动机 直流电机 位置伺服系统 三闭环控制
随着我国能源紧缺问题的日益严峻,在生产实践中不断提高能源利用率是大势所趋。然而我国西部的大部分油田仍然存在伴生天然气大量放空的现象。为此可以将伴生天然气经简单分离处理后直接驱动大功率天然气发动机工作,使其带动发电机发电并送入电网,从而提高能源的综合利用率。因此这种天然气发动机及发电机组将具有十分广阔的应用前景。
1 系统控制方案
天然气发动机及发电机组电子调速系统的控制原理如图1所示。
上位机发动机管理系统(EMS)通过接收操作人员的指令,并根据发动机转速的反馈信号进行转速的闭环控制。上位机的输出信号为有限转角直流伺服电机的目标位置信号。
图1中,虚线框内部分即为直流电机位置伺服系统,包括驱动器和执行器两部分。执行器即直流伺服电机,该伺服电机同天然气发动机的蝶型进气阀门相连接(二者完全同步),随着电机位置的变化,阀门开度改变,天然气进气量发生变化,从而达到调速的目的。本设计所选用电机的主要参数为:输出转角0°~75°,最大输出转矩13.6Nm,最大电流20A。
伺服系统驱动器的功能是正确接收处理电机目标位置信号,并根据电机的反馈信号驱动电机精确跟踪目标位置。上下位机之间通过4mA~20mA电流环传递目标位置,具有低阻抗传输线对电气噪声不敏感的特点。
2 硬件设计
硬件系统框图如图2所示。驱动器数字核心采用Freescale公司的MC9S12DG128型单片机,单片机需处理5个模拟量输入和2个数字量输出。按照模块化的思想[1]可以将硬件结构划分为:电源模块、数字核心模块、通讯接口模块、信号处理模块以及电机驱动模块等。
2.1 信号处理模块
(1)电机位置信号和速度信号处理
电机通过其内置的磁敏转角传感器反馈位置信号。位置反馈信号是实现电机伺服控制的基础,该信号A/D转换精度越高,转换结果扰动越小,对电机的精确控制越有利。因此专门为电机位置传感器设计了精密5V电源,在使用单片机10bit A/D转换器的情况下取得了良好的效果。将位置信号通过微分电路处理后即得到电机速度信号。
(2)电机电流信号处理
电路的核心是高压线性电流传感器IR2175,如图3(a)。它可直接将电流采样电阻两端的电压转换为相应占空比的PWM信号输出,该信号既可以被单片机直接处理,也可以通过简单的滤波处理后变成电压,由单片机的A/D转换器处理,从而简化了电机线电流的检测电路。
2.2 电机驱动模块
电机驱动采用双极式H型可逆PWM变换器[2],两组完全反相的PWM信号由硬件方法得到,即单片机只输出一路PWM信号,将其通过非门电路后得到与自身反相的另一组信号。高低边驱动器选择IR2110。
双极式控制方式的缺点之一是容易发生上下两管直通的现象,因此在一管关断和另一管导通之间,利用与门芯片设计了延时电路,如图3(b)所示,匹配的延时时间为2μs。
3 软件设计
系统软件部分采用分层设计的思想,包括底层驱动层、中断配置层、电机驱动层和支持层。
(1)底层驱动层
该层位于整个软件结构的最底层,包括如A/D转换模块在内的若干模块,每个模块都提供了相关的功能实现,并且以头文件的形式定义了函数接口,这样电机驱动层和支持层就可以直接调用相关功能函数。因为需要对单片机内部寄存器进行配置,本层程序完全采用手写代码。
(2)中断配置层
对中断的配置搭建起了整个软件系统的框架,软件系统通过一套有条不紊工作的中断体系将所需的各种功能包括进来。本设计采用位置伺服系统最经典的位置、速度和电流三闭环控制策略[3],如图4所示。其中位置环和速度环为外环,电流环为内环,定时中断周期分别为5ms和1ms。试验表明,内环的控制周期从2ms缩短至1ms对控制效果有一定改善,但小于1ms的控制周期改善效果已不明显,还给单片机的计算速度提出了更高的要求。
此外还要强调MC9S S12单片机中断嵌套的实现,这里涉及的中断都是可屏蔽中断。如果不采用软件方面的特殊处理,则会有如下情况出现:当CCR(Condition Code Register)寄存器的I-bit在进行中断处理中被自动置高时,任何其他中断都不能打断当前的中断服务程序,即使当前的中断优先级较低,即单片机默认的中断配置不支持中断嵌套;相反,如果强制将I-bit置低,则允许低优先级的中断服务程序打断高优先级的中断[4]。理想的中断关系应为高优先级的中断可以打断低优先级的中断,反之则不然。解决该问题的思路是,首先将CCR的I-bit置低,之后在任何中断服务程序执行前先关闭低于其优先级的所有中断,这样便只有高优先级的中断才能给予处理,最后在此次中断服务程序结束之前,再将中断的状态恢复即可。
(3)电机驱动层
三闭环控制的每一环均采用了数字增量式PID控制算法,电机驱动层主要完成这部分的PID计算任务及根据前面的计算结果输出相应的电机驱动PWM信号。为提高控制精度,充分利用该单片机的硬件资源,通过设置PWMCTL寄存器,将其中2个8-bit PWM输出通道合并为1个16-bit PWM输出通道[5]。
(4)支持层
这部分软件主要基于串口通讯为用户提供一个简单易用的交互接口,包括驱动器的控制参数设置都可以在这一层面上进行。
4 试验结果
图5为通过FreeMASTER软件监控得到的电机空载阶跃响应曲线,其中粗实线为电机目标位置,浅色虚线为实际位置。可以看到电机在阶跃响应过程中超调量小,反应迅速灵敏。
此外还进行了电机在惯性负载和弹性负载下的试验,同样取得了良好的效果:电机在固定位置时具有相当高的硬度及稳定性,也能够在目标位置信号的连续变化过程中准确地进行跟随,达到了设计要求。
本文讨论了应用在天然气发动机电子调速系统中的直流电机位置伺服系统驱动器软硬件设计。经验证,自主研发的这套系统具有较强的控制精度和稳定性,能够成功地应用于天然气发动机及发电机组的实际生产,在当前外国产品垄断的市场中具有较强的竞争力。