APP下载

基于CPLD的无刷直流电机全硬件PI控制系统设计*

2019-09-18刘曰涛

组合机床与自动化加工技术 2019年9期
关键词:脉冲数直流电机驱动器

杨 林,刘曰涛

(山东理工大学 机械工程学院,山东 淄博 255049)

0 引言

无刷直流电机具有功耗低、换向可靠,体积小、重量轻、输出扭矩大,使用寿命长等优点,在工业控制、医疗器械、家用电器等领域有广阔的应用前景[1]。传统的基于MCU或ARM的无刷直流电机驱动器受限于运算能力弱和运行速度低等缺陷,无法实现转速、扭矩的实时控制[2-4];以DSP为核心设计的驱动器成本较高,外设功能繁杂,不适用于一般的应用场合,易造成DSP芯片资源的浪费[5];以FPGA为核心设计的驱动器,虽然通过模糊PI控制算法取得了较为理想的效果,但其核心仍以数字电路编程为基础,运算速度和精度受到FPGA晶振频率和逻辑资源的限制[6];基于离散的PI控制器,其对控制指令的响应性和跟随性仍低于连续的PI控制器[7]。针对以上问题,本文选用复杂可编程逻辑器件(以下简称为CPLD)ATF1502AS为主控芯片设计无刷直流电机驱动器。由于本系统采用全硬件的电路设计,充分发挥了CPLD执行能力迅速、抗干扰能力强的特点。

1 系统构成

如图1所示,无刷直流电机驱动器由主控制器、脉宽调制信号(PWM)生成电路、转速PI控制电路、电流PI控制电路、MOSFET驱动电路、电流采样电路、速度反馈电路构成,其中虚线框内为CPLD实现的功能模块。

本系统以ATF1502AS为核心,完成无刷直流电机换向逻辑的判断、6路PWM信号的输出、编码器信号采集及转速反馈信号输出。以连续的模拟PI控制器代替离散的数字PI控制器,使系统具有更优的动态跟随特性;以全硬件PWM生成电路代替数字PWM生成模块。编码器信号由CPLD预处理成与其频率成正比的PWM信号,再经由速度反馈电路生成与转速等价的直流信号参与调节运算,从而替代传统的软件速度检测机制。

图1 控制系统构成图

2 驱动器核心电路设计

为了提高控制系统的动态响应特性并降低控制误差,本系统将传统控制系统中软件实现的部分全部采用硬件电路实现,具体包括:PWM控制信号生成模块、速度反馈PWM转换输出模块、电流PI调节模块及转速PI调节模块。

2.1 PWM控制信号生成模块

PWM控制信号生成模块主要由 AD826构成的RC间歇振荡器、加法器和比较器LM393和施密特反向触发器组成,电路原理图如图2所示。

图2 PWM控制信号生成电路原理图

该模块的运行方式为:首先,由RC间歇振荡器构成的三角波发生电路输出频率为33kHz,幅值为±3.85V的三角波,以确定PWM信号的周期;三角波通过电容C55滤掉直流偏置电压后与目标电流分别放大相加后与门限电压(±5V)电流相比较;当电机正转(顺时针)时,U8A为工作比较器,经调制后的三角波与+5V电压比较输出正转的PWM信号,当电机反转(逆时针)时,U8B为工作比较器, 经调制后的三角波与-5V电压比较输出反转的PWM信号;CPLD捕捉到PWM后由当前霍尔传感器信号判断转子所在区域,并根据梯形换向的原则将PWM信号调制成驱动电机运行的PWM信号。

图3是实测得三角波发生电路的波形图,由于电容、电阻、运放输出的饱和电压存在误差,实测载波幅值为±3.76V,频率为32.4kHz。

图3 三角波实测波形

2.2 速度反馈PWM转换输出模块

速度反馈电路主要由OP2177构成的二阶巴特沃斯滤波器组成,其电路原理图如4所示。

图4 速度反馈电路原理图

该模块的工作原理为:通过二阶低通滤波器将CPLD输出的fpwm中的高次谐波分量滤除,保留与无刷直流电机转速成正比的直流分量参与转速PI调节运算。速度反馈电路中的fpwm信号波形如图5所示。

图5 信号波形

取图5中第k周期分析,其数学表达式为:

(1)

将式(1)的表达式展开成傅里叶级数:

(2)

由式(2)可得,fPWM信号第一项为直流分量,其他项为高次谐波分量。fPWM信号的直流分量的大小与其占空比成线性关系。滤掉fPWM信号中的高次谐波分量,即可得到与无刷直流电机转速成正比的模拟电压信号。

图6是速度反馈电路传递函数的伯德图。由图可得:电路具有很小的通频带且在通频带内的频率响应曲线有着最大限度的平坦,没有起伏,具有良好的滤波效果。当fPWM的占空比达到50%时,速度反馈电路输出10V的电压信号,即可认为电机达到驱动器控制的最高转速。因此,当驱动器驱动电机工作在低速的状态下,选择高脉冲数的编码器,使得电机在低速获得更好的速度控制性能;当驱动器驱动电机工作在高速状态下,选择低脉冲数的编码器,使得电机在有更广的调速范围。

图6 速度反馈电路伯德图

图7是电机转速为230r/min,编码器脉冲数为1024时实测得的fPWM信号与速度反馈电路输出波形,从图中可以看出,选取高脉冲数的编码器时,电机在低速时的速度反馈电路输出波形依然平滑,从而保证了速度PI调节的连续性。

图7 速度反馈电路实测波形图

2.3 电流PI及转速PI调节模块

电流PI电路和速度PI电路原理相同,均由运算放大器和电容电阻构成,电流PI电路原理图分别如图8和转速PI电路原理图如图9所示。

图8 电流PI电路

图9 速度PI电路

由于运算放大器对交流信号具有高的放大倍数,电路噪声信号较大,影响电路稳定性,故加入反馈电容C66和C69为PI调节电路提供高频通路,减少高频噪声。D2、D3可有效限制PI电路的输出幅值,防止积分超调。以电流PI电路为例,其对应的输入输出方程如式(3)所示:

(3)

由拉氏变换得电流PI控制器的传递函数为:

(4)

同理,转速PI控制器的传递函数为:

(5)

设定离散的PI控制器电流PI调节频率为fs1=2kHz,转速PI调节频率为fs2=1kHz,其对应的离散的传递函数见式(6)、式(7):

(6)

(7)

为了比较离散和连续的控制的响应性能,本文利用MATLAB/Simulink搭建了无刷直流电动机转速电流双闭环控制系统的模型并进行仿真。

图10是设定转速为1000r/min电机空载时两种PI控制器的转速仿真对比曲线图,从图中可以看出,连续的PI控制器在0.018s时达到稳定状态,而离散的PI控制器在0.025s时达到稳定状态。

图10 连续PI控制器和离散PI控制器的转速仿真曲线

图11是设定转速为1000r/min突加负载时两种PI控制器的转速仿真对比曲线图。在0.2s时,电机负载由0N·m突然加到1N·m,从图中可以看出,连续的PI控制器经过0.05s后回到稳定状态,而离散的PI控制器经过0.07s时回到稳定状态。通过仿真对比可以看出:在启动时,连续的PI控制器比离散的PI控制器在快速性,稳定性、调节时间上具有更优的性能,超调量更小;当负载突然发生变化的情况下,连续的PI控制器具有更快的响应性,更小转速的波动,回到稳态用时更短;主控器的运算能力、采样器件的转换时间、数据传输时间等因素限制了离散的控制器调节频率,使得在相同的控制算法下它在控制性能上不如连续的PI控制器。

图11 突加负载时两种控制器的转速仿真曲线

3 核心算法设计

传统的无刷直流电机驱动器测速机制采用M法、T法或M/T法,但在实际应用中,考虑到脉冲信号采集的延迟、软件处理的时间和主控制器晶振频率的影响,不能实现速度的实时反馈和高精度的采集,从而影响驱动器的响应性能和控制精度。本系统采用全硬件的速度采集反馈机制,驱动器对速度闭环有着良好的跟随特性,速度采集精度完全满足驱动器的性能需求。

3.1 编码器信号的处理

驱动器采用增量型编码器作为速度反馈传感器,编码器A、B相信号经过施密特反向触发器波形处理后输入CPLD中。如图12所示。

(a) 电机正转逻辑示意图 (b) 电机反转时逻辑示意图图12 编码器信号与fpwm信号逻辑示意图

根据A、B相信号相位相差90°的关系可以判断电机的当前旋转方向。在一个周期T内,编码器A、B相输出信号的高脉冲和低脉冲时间相等。因此,通过捕捉A、B相信号的上升沿和下降沿,在每一个边沿输出一个脉冲宽度固定的脉冲信号将编码器信号四倍频成与它的频率成正比的fPWM信号。对于fPWM来说,它的周期Tf是变化的,取决于编码器的脉冲数和旋转速度(电机转速),而高脉冲的时间是固定的,这样就使得fPWM的占空比随着电机转速的变化而变化。

式(8)是正转时的逻辑运算公式,式(9)是反转时的逻辑运算公式:

(8)

(9)

3.2 CPLD程序设计

本文使用Quartus Ⅱ编程环境,器件型号为EPM7032S系列。图13是F/PWM转换逻辑模块的RTL视图,其中clk是时钟信号,rst_n是复位信号;encode_a、encode_b为编码器A、B相信号;comm是外部输入速度反馈输出极性选择信号,当相电机与编码器转向相反时comm为1,速度反馈输出极性逆转。

图13 F/PWM转换逻辑RTL视图

图14是实际测得的编码器信号和fpwm信号波形图。编码器采用NPN输出方式,需外加上拉电阻,受到电路寄生电容的影响,A、B信号上升边沿存在12μs的充电时间,但经过施密特反向触发器调制后的波形能够被CPLD很好地捕捉并输出对应的fPWM,满足驱动器系统性能需求。

图14 编码器信号与实测波形图

4 实验结果及分析

本文搭建无刷直流电机测试平台来测试控制系统的性能。具体方法为:利用FPGA开发板读取编码器的A、B相的信号,每隔150μs通过高速串口发送一次编码器脉冲数,最终在MATLAB中计算生成实际的电机转速曲线;使用信号发生器为驱动器发送正弦波控制信号以测试驱动器的带宽,通过示波器实时采集输入的正弦波控制信号与驱动器速度反馈电路的输出波形数据,在MATLAB中拟合出电机转速曲线。电机型号为:57BL115S21其具体试验参数如表1所示。

表1 无刷直流电机参数表

图15是设定转速为2500r/min时电机空载启动时实测转速曲线,最终电机在0.0256s到达稳态,最高转速2530r/min,其上升时间为0.0175s。当转速第一次到达2500r/min时,由于积分环节的滞后性,无刷直流电机转速会继续上升,其超调量1.2%,但由于本系统电流转速均采用连续的模拟PI控制器,控制器对无刷直流电机转速、电流具有良好的跟随特性,控制系统经过0.0081s调节至稳态,振荡次数仅为2次。

图15 设定转速2500r/min时电机空载转速曲线

图16是使用脉冲数为2048,输入正弦波赋值为3V,频率由1kHz逐渐升高至35kHz时示波器采集到的数据在MATLAB中拟合出的带宽测试数据曲线。当频率升高至30kHz时,电机转速模拟量输出幅值已经下降-3dB,相位滞后54.5°。实验证明驱动器具有较高的实际带宽,满足一般对控制系统动态响应特性要求较高的应用场合。

图16 驱动器带宽测试实测曲线

5 结论

针对传统驱动器响应速度慢,成本高的问题,本文提出了以CPLD为核心的全硬件无刷直流电机驱动器的设计方案,给出驱动器关键电路的设计,分别分析了PWM控制信号生成电路、速度反馈电路和电流、转速PI调节电路的工作原理并给出各电路的实测波形图,同时通过Matlab仿真比较了连续PI控制器与离散PI控制器的控制性能,验证了连续的PI控制器在静态特性和动态特性上具有更优的控制性能。最终的实验结果也证明该控制系统具有控制性能高,成本低的优点,适用于对速度控制精度要求高,驱动器响应速度快的应用场合。

猜你喜欢

脉冲数直流电机驱动器
基于模糊PID的无刷直流电机速度控制系统的设计与仿真
基于模糊自适应ADRC的无刷直流电机控制技术
车辆转弯工况下间接式胎压监测系统脉冲数的修正
气动网络多腔室弯曲软体驱动器结构优化
某型组合导航系统故障分析及预防
高精度电子体温计设计与实现
藏起驱动器号确保数据安全
空间大载荷石蜡驱动器研制
基于FPGA的双绕组无刷直流电机软件设计
直流电机电源设计研究