关键词:数字信号处理器;无刷直流电机;自适应模糊PID;仿真
New Design of Brushless DC Motor Servo System
ZHOU Bao,ZHANG An—nian,DING Zhe,YU Cheng—lin
(Henan University ofScience&Technology,Lnoyang471003,China)
Abstract:This paper presents a design of bmshless DC motor(BLDCM)control system based ondigital signal processor(DSP)and CPLD,The function of high—speed operation of DSP and mighty logicof CPLD are utilized to implement the real—time control of the system and simplify the peripherals.According to the character of BLDCM,this paper use the control strategy of adopting PID and self—adaptive fuzzy PID.The simulation results show that the system has good dynamic and static characteristics.
Key words:DSP;BLDCM ;Self—adaptive fuzzy PID;Simulation
1 引 言
无刷直流电机具有质量轻、寿命长、调速范围宽、启动转矩大、电磁转矩与磁链耦合小等优点,在控制系统中获得了越来越广泛的应用。但其存在换相时电磁转矩扰动、负载扰动、参数变化等缺点,因此需要有先进的控制策略来提高系统的控制性能. 。基于智能控制思想的模糊控制算法的最大特点是不依赖于对象模型,而是利用所制定的模糊控制规则进行推理以获得合适的控制量,适合无刷直流电机驱动控制策略的要求。系统采用PID和模糊自适应PID相结合的控制策略。利用ALTERA公司的MAX7000系列CPLD器件和美国TI公司的面向电机控制的专用DSP芯片TMS320LF2407A作为控制器的核心,完成了无刷直流电机控制器硬件的设计,不仅大大简化了外围电路,而且使系统的适时性和可靠性得到了提高。
2 硬件设计
2.1 无刷直流电机伺服系统的组成
无刷直流电机控制系统主要由DSP模块单元、CPLD逻辑控制单元、驱动电路单元、位置检测单元、电流检测单元等组成,组成框图如图1所示。CPLD主要用于完成相应的电流斩波、外围电路的实现、产生PWM信号、过流保护、欠压保护、A/D采样等功能[5]。其中产生PWM信号的原理是采用DSP引脚T1PWM输出一路脉宽调制信号PWM和无刷直流电机反馈的三路转子磁极位置信号以及电机正反转信号并送到CPLD进行逻辑处理,输出六路PWM调制信号PWM1一PWM6,经一个反向驱动电路连接到六个开关管,实现定额PWM和换相控制。CPLD还负责A/D采样,并把转换结果写入到FIFO中,当转换结束时通知DSP,当DSP收到结束信号时,可以从FIFO中读取A/D转换的数据,从而避免了A/D转换过程中受DSP的频繁干预,简化了采样控制,最大程度地减轻了DSP的负担。VHDL语言在CPLD芯片中实现功能时,各进程之间采用并行处理方式,因此具有较好的实时性。DSP主要用于响应CPLD发送来的控制指令以及处理采集到的数据和实现控制策略等。
2.2 位置检测和速度计算
位置信号通过三个霍尔传感器得到,每个霍尔传感器都产生一个180。脉宽且相位差互呈120。的输出信号,它们在每个机械转中都有6个上升或下降沿,而每一个上升或下降沿对应着一个换相时刻。通过将DSP的捕捉口CAP1~CAP3设置为I/O口、并检测该口的电平状态,就可以知道哪一个霍尔传感器的什么沿触发的捕捉中断。在捕捉中断处理子程序中,根据换相控制字查表就能得到换相信息,实现正确换相。
位置信号还可用于产生速度控制量。每个机械转有6次换相,转子每转过6O°机械角都有一次换相,只要测得两次换相的时间间隔△t,就可通过t0=60°/△t计算出两次换相间隔期间的平均角速度。△t可以通过在捕捉中断发生时读T2CNT寄存器的值来获得。计算所得到的速度值作为速度反馈量参与速度调节计算。三相无刷直流电动机在启动时也需要位置信号。通过三个霍尔传感器的输出来判断应该先给哪两相通电,并且给出一个不变的供电电流,直到第一次速度调节[2]。
2.3 系统保护电路的设计
在无刷直流电机控制系统中,保护电路占据着很重要的地位。对功率运放使用的关键是使结温尽可能低。使结温降低有两个方法,一是降低功耗,二是减小热阻。由于功率大小由系统本身的需要而定,因此要降低结温只有选择合适的散热器。为了使系统可靠地工作,还必须对电流和发热等进行限制,使功率元件工作在安全工作区内。其中限流的工作原理是通过取样电阻检测全桥低边电流,再把检测电流送人CPLD的逻辑控制单元中,如果电流超过所设定的门限值时,产生过流信号。系统采用CPLD接收来自功率驱动电路的过流和欠压信号,将过流和欠压信号逻辑相或产生的综合故障信号反馈给DSP(高电平有效),当驱动电路出现过流或欠压时,DSP将关闭定时器T1,此时不产生PWM控制信号,直到重新加电,从而实现对驱动电路和电机的保护。
3 系统软件设计
3.1 系统软件设计流程与概述
系统软件主要实现无刷直流电机的位置调节、速度调节等。其中速度调节采用PID控制,可以克服模糊控制特有的稳态误差问题,提高系统的稳态性能;位置调节采用自适应模糊PID控制,其特点是不依赖于具体的对象模型,而是用语言变量来描述系统特征,并依据系统的动态信息和模糊控制规则进行推理以获得合适的控制量。图2为主程序的软件流程图。首先关闭中断进行系统初始化,开启ADC中断,ADC中断是通过CPLD来控制,然后读取启动时刻的位置值,根据位置值来产生PWM控制信号。启动后,主程序就进入了等待循环,等待中断的产生。当中断标志为真时,进行系统的三闭环调节,读取给定位置值和位置反馈值进行自适应模糊推理,完成位置调节器功能,将输出值送到速度调节器进行PID控制,输出电流调节器的控制信号,从而输出PWM控制信号。
3.2 系统软件的控制策略
在实际控制系统中,随着负载的变化电机绕组的自感、互感、阻尼系数、转动惯量等呈不确定性,因此仅采用PID策略已不能提供很好的控制性能,而模糊控制把一些具有模糊性的成熟经验和规则有机地融人到控制策略中,具有较强的鲁棒性,并且能够克服系统中的不确定因素[4]。系统设计采用全数字三闭环(电流环、速度环、位置环)控制。其中电流环的设计要考虑跟随性,使电流调节速度快;速度环主要用于增强系统抗负载扰动的能力,抑制速度波动;位置环作为外环,决定了系统响应的快速性及稳定性。基于以上考虑,为了获得优良的性能,电流环和速度环采用PID控制,位置环采用自适应模糊PID控制技术。将模糊控制和PID控制集合起来,既可以提高控制精度,又能够根据对象输出的变化调整参数,取得良好的控制效果。
自适应模糊PID控制器结构如图3所示,误差e和误差变化ee作为输人,在PID算法的基础上,通过计算当前系统误差e和误差变化率ec,利用模糊规则进行模糊推理,查询模糊矩阵表在线对Kp、Ki和Kd进行调整[3]。
其中
根据上式可以看出|e|和|ec|的大小变化对系统输出u的影响程度是不同的,为了使控制对象具有良好的动态性能和静态性能,参数Kp, Ki,和Kd的在线模糊自整定应遵循如下规则:
(1)当|e|较大时,即误差较大,为了加快系统的响应速度,应把K。取得大一点;为防止|ec|瞬时过大,Kd应该取较小一点的值;为了避免出现较大的超调,应对积分作用加以限制,取消积分环节,即取Ki=O。
(2)当|e|为中等大小时,为使系统的超调量减小,Kp, Ki和Kd都不宜取大,应取较小的K ,而Ki和Kd大小应适中,以保证系统的响应速度。
(3)当|e|较小时,为使系统具有良好的稳态性能,应增大Kp,Ki的值,同时为提高系统的抗干扰能力并避免系统在设定值附近出现震荡现象,应选取适当的Kd值,其原则为:当|ec|较小时,Kd应取大一些;当|ec|较大时,Kd应取小一些。
4 实验结果及分析
应用MATLAB仿真软件对位置控制器进行了仿真,给定位置电压为U=1.2V,其中传统PID的参数选取为K。=2,Ki=0.04,K =0.1,仿真结果如图4所示,模糊自适应PID算法明显比传统PID控制算法的效果要好。基于模糊推理的自适应模糊PID控制在降低超调量、加快调节速度和减少稳态误差等方面明显优于传统PID控制。在位置调节器中采用自适应模糊PID控制使得系统在参数变化时依然具有较快的响应能力和较强的鲁棒性。
图4 位置环采用PID调节与自适应模糊PID调节的比较
5 结束语
采用以DSP为主处理器,CPLD为协处理器的无刷直流电机控制系统较以往单独以DSP作为控制核心的系统而言,利用了CPLD强大的逻辑功能及对电流的斩波功能大大减轻了DSP的工作负担,使DSP能够完成更为复杂的控制算法且控制的实时性得到了保障。其中对位置环采用模糊自适应PID的控制策略。仿真结果表明,与传统PID控制方式相比,系统的响应能力、控制精度、稳态性等方面均得到明显改善。
参考文献:
[1] 王晓明,王玲.电动机的DSP控制[M].北京:北京航空航天出版社,2004.
[2] 刘和平.TMS320LF240X DSP结构、原理及应用[M].北京:北京航空航天出版社,2002.
[3] 刘金琨.先进PID控制MATLAB仿真[M].北京:电子工业出版社,2004.
[4] HZLI.ZGONG.Dsp—based motion control of a non—commutated DC linear motor module[J].International Journal of Software Engineering,2005.
[5] Cong J,Romesis M.Performance—driven multi—level clustering with application to hierarchical FPGA mapping[C].Design Automation Conference[S.1.],2002.