基于FPGA的直流电机伺服控制系统设计

2016-02-22 12:41张建祥陆辉山
科技视界 2016年4期
关键词:直流电机

张建祥++陆辉山

【摘 要】为了提高直流电机伺服控制系统的静态调节精度和动态范围,以FPGA为核心开发了电机控制系统,设计了数据采集电路和隔离驱动电路,控制策略采用速度、位置、电流三环控制,并用Verlog HDL语言实现了控制算法。此方案增强了电机负载能力和响应特性,在电机控制领域有着广阔的应用前景。

【关键词】直流电机;FPGA;Verlog HDL

Control System of DC Motor Design based on FPGA

ZHANG Jian-xiang1 LU Hui-shan1,2

(1.School of Mechanical and Power Engineering, North University of China, Taiyuan Shanxi 030051, China;

2.Key Laboratory of Advanced Manufacturing Technology in Shanxi Province, North University of China, Taiyuan Shanxi 030051, China)

【Abstract】Regulate the accuracy and dynamic state scope for the sake of the static state of the exaltation direct current electrical engineering servocontrol system, Taking FPGA as the core developped the electrical engineering control system, Designed a data to collect the electric circuit and insulation to drive electric circuit, Control strategy adoption speed,position,electric current three wreath controls, Counteract the language of Verlog HDL carried out the control calculate way, This project strengthenned the electrical engineering load ability with respond to characteristic, control in the electrical engineering the realm have vast of applied foreground.

【Key words】BLDCM; FPGA;Verlog HDL

0 引言

无刷直流电机(Brushless Direct Current Motor,BLDCM)是伴随永磁材料、微控制器、电力电子等技术迅速发展起来的一种新型电动机[1]。无刷直流电机将永久磁钢安装在转子上,无励磁损耗;同时将发热的电枢绕组安装在定子上,散热容易,它不但保持了传统直流电机优良的调速性能,还具有交流电机运行可靠、维护方便等一系列优点,同时无换相火花和励磁损耗。正是具有这些优点,无刷直流电动机在家用电器、音像设备、汽车、医疗设备、电动车以及机器人等领域有着广泛的应用。

在实际应用中,电机已由过去简单的起停控制、提供动力为目的,上升到对速度、位置、转矩等进行精确的控制。电机控制器也经历了从模拟控制器到数字控制器的发展过程,数字控制器具有可靠性高、参数调整方便、控制精度高等优点,其中基于现场可编程门阵列(FPGA)的数字电子系统对电机进行控制,为实现电机数字控制提供了一种新的解决方案[2]。

1 控制系统硬件设计

直流电机伺服控制系统主要由FPGA及其外围电路、隔离电路、过流保护电路、数据采集电路等组成。其硬件结构框图如图1所示。

图1 控制系统硬件框图

本设计所采用的可编程逻辑芯片为Altera公司Cyclone II系列的EP3CLS200芯片[3],该器件具有200K逻辑单元、8Mb嵌入式存储器和891个嵌入式乘法器,广泛应用于汽车、无线、消费等领域,是高性能处理、低功耗的理想选择。为了使FPGA芯片能够稳定运行,在其核心电路中,加入了电源电路、复位电路、配置电路和存储电路。

1.1 数据采集电路

数据采集电路主要由3个A/D转换器组成,利用FPGA控制这3路同时采样,分别采集指令信号、反馈信号和电流信号。具体如下:

(1)采集指令信号。AD1选用芯片型号为AD1674,这是一款12位A/D转换器[4],高达10us的采样率,内部包含了采样保持放大器、高精度10V参考电压源、时钟振荡器和三态输出缓冲等。上位机给定信号送到数据采集电路,与位置检测传感器输出信号比较得到位置误差信号及其变化率,构成电机伺服控制的速度环。

(2)采集位置反馈信号。AD2与AD1采用相同型号的芯片,位置检测传感器采用精密电阻器,精度为0.1%,构成电机伺服控制的位置环。

(3)采集电流信号。AD3选用ADC0809芯片[5],支持单+5V供电,分辨率为8Bit,电流传感器采用CHB-25NP,响应时间小于1us,额定输入电流25A,输出电流25mA,采集电机电枢电流,构成系统的电流环。

1.2 隔离及驱动电路

设置隔离电路可以避免后端电机对前端控制电路的干扰,本系统采用高速光耦6N137进行隔离,解决PWM波上升沿失真的问题。

采用双级可逆受限PWM波控制两组NMOS电路驱动直流电机,分别驱动直流电机正转和反转,同时通过设置适当死区,避免MOS管同时导通而导致过电流的发生。

2 控制系统软件设计

2.1 软件整体结构设计

直流电机伺服控制系统软件设计主要由A/D控制模块、反馈控制模块、PWM波控制模块等组成,主要流程如图2所示。本设计采用Verlog HDL语言描述整个模块功能,该语言允许设计者进行各级别的逻辑设计,进行数字逻辑系统的仿真验证、时序分析、逻辑综合。

控制系统主程序由FPGA控制3个A/D芯片实现同步采样,位置环作为系统的主控制环,实现位置跟踪;速度环抑制速度波动,增强系统抗负载扰动的能力;电流环限制大电流,保护电机。三环联合工作,保证了系统拥有良好的静态精度和动态特性。

2.2 反馈控制模块软件设计

反馈控制模块所完成的功能为对AD输出的信号进行处理,若反馈量大于指令量,运行比例运算;否则电机全素运转,核心代码如下:

if(input>qinout) //如果反馈量大于指令值

begin

reg_1 <= input-qinput; //反馈值减指令值

cerror <= 8`b01111111-reg_1[7:0];

end

else //反馈值小于指令,指令值减反馈值

begin

reg_2<=qinput-input;

cerror <= 8`b01111111+reg_2[7:0];

end

2.3 PWM波生成模块软件设计

本设计由FPGA产生一路PWM波作为控制信号,通过硬件电路产生两组PWM波信号,可以提高电路的可靠性,其Verlog HDL主要代码如下:

if(cnt == `b11111111)

begin cnt<=`b00000000;end

else if(cnt<=ctrl) //计数值小于控制量,输出高电平

begin PWM<=1;cnt<=cnt+1;end

else //否则输出低电平

begin PWM<=0;cnt<=cnt+1;end

由此代码生成的一路PWM波频率为20kHz,占空比为0%~100%,后续的硬件电路根据这路PWM生成4路带死区的PWM波。

3 结论

经过实验测试,基于FPGA的直流电机伺服控制系统,响应时间短,算法执行速度快,充分发挥了FPGA并行处理、运算速度快的特长。长期实验表明,此控制系统没有发生死机、复位等情况,并且有很强的抗干扰能力,电机速度调节精度高,动态范围广,在电机控制领域有着很好的发展前景。

【参考文献】

[1]夏长亮.无刷直流电机控制系统[M].北京:科学出版社,2009:4-8.

[2]张红霞.国内外工业机器人发展现状与趋势研究[J].电子世界,2013,12:5-5.

[3]Cyclone III Device Handbook[M].http:www.altera.com,2012:15-16.

[4]黄伟,严利人,周卫.高性能及新颖性A/D转换器技术综述[J].微电子学,2008,38(6):805-810.

[5]基于Quartus II的数字系统Verlog HDL设计实例详解[M].北京:电子工业出版社,2014:494-495.

[责任编辑:王楠]

猜你喜欢
直流电机
基于模糊PID的无刷直流电机速度控制系统的设计与仿真
基于FPGA的双绕组无刷直流电机软件设计
基于模糊神经网络PID的无刷直流电机控制系统研究
基于HHT的直流电机换向电流分析
一种改进的无刷直流电机控制方法
电动汽车直流电机再生制动控制方式