基于FPGA的位置伺服三闭环控制器设计
2016-05-30张显亭刘兴中郑自伟
张显亭 刘兴中 郑自伟
摘 要:设计了基于FPGA外挂SDRAM的三闭环位置伺服控制器,对三闭环控制算法进行了详细描述,并结合硬件电路应用在实际产品中,取得了预期的技术指标,提高了位置伺服系统的动态特性。
关键词:FPGA SDRAM 伺服控制器
中图分类号:TP273 文献标识码:A 文章编号:1672-3791(2016)06(b)-0026-02
目前国内外把电动位置伺服作为重要的研究方向,电动舵机的应用也日益广泛。电动舵机相比与以前的液压舵、气动舵具有体积小、成本低、简单可靠、动态特性好且易于控制等特性。目前电动舵机的性能越来越完善,并朝着数字化、多余度、大功率、高精度和智能化的方向发展。电动舵机的控制策略也多种多样,根据不同应用场合的要求运用了不同的算法和设计平台,比如基于DSP、FPGA或者单片机等。该文设计了一套全数字导弹用舵机伺服系统,该系统以无刷直流电机作为伺服电机,采用三闭环的控制策略,基于FPGA的NIOSⅡ软核为开发平台,利用C语言的优良特性,在NIOSⅡ内实现基于C语言的算法设计,实现了舵机位置的高性能跟踪,以满足导弹舵机的高精度、高灵敏度和高可靠性要求。
1 系统构成及工作原理
位置伺服控制器是一个闭环的控制系统。其执行元件是直流无刷电机,传动部件由行星减速器和滚珠丝杠组成,驱动控制器采用数字控制。伺服控制器接收上位机的角度控制信号,驱动无刷电机按照一定的速度、旋转方向和旋转角度工作,通过传动部件转化为角度运动,从而实现位置的角度控制。
2 硬件设计
2.1 FPGA主控及外围电路设计
该项目采用的是Altera公司的CycloneⅢ系列低成本器件,该芯片为256管脚的BGA球栅型封装,拥有更多的I/O端口,集成嵌入式处理器NOISⅡ,I/O口157个,满足设计要求。
FPGA外围电路主要包括:电源管理电路、程序配置芯片电路、下载调试口电路等。
2.2 驱动及电流采样电路设计
伺服系统控制器的驱动电路采用经典的三相桥式电路,驱动芯片采用仙童公司集成电路,桥式电路采用IR公司MOSFET开关管,电流采样电路采用ACS714ELCTR-05B-T集成电路。
系统中笔者对三相绕组分别采样,电流的方向和相序选择在软件内部完成,该电流传感器额定供电电压5 V,额定输入电流为±5 A,输出电压范围是0~5 V,具有185 mV/A输出灵敏度。芯片可以线性的将电流信号转化为相应的电压信号输出,输入电流与输出电压关系为:
2.3 A/D转换电路设计
控制中分别使用电位器和电流传感器作为舵机位置和电流的检测装置,所以共有16路模拟电压信号需要转换为数字信号。其中电位器的输出为0~5 V电压信号,为了满足系统控制精度要求为±0.2°,通过计算需要14位精度的AD才能满足要求,同时系统需采集四路位置信号,选择了AD7949模数转换芯片,该芯片具有8路输入通道,每路的输入电压最高可到5.5 V,并且独立工作,该芯片数字端供电电压为+3.3 V,串行信号输出,可以满足舵系统的使用要求。
系统电流信号的转换采用NS公司的12位A/D转换器,该芯片的模拟输入端为0~5 V电压信号,数字输出为幅值3.3 V的数字量,接口与FPGA匹配,数字信号可直接送入FPGA的I/O口。
2.4 外部扩展SDRAM电路设计
由于采用了C语言编写主程序,嵌入在NIOS软核内,程序代码量较大,不适宜在FPGA内部RAM上运行,所以在外部外扩了SDRAM电路,以降低FPGA的消耗,提高运行速度,所用的SDRAM器件为MICRON公司的MT48LC16M16A2TG,它的地址线为16位,并行运行方式。
3 软件算法设计
软件设计采用NIOSⅡ软核加部分用VHDL语言编写的数字逻辑电路的方式来完成整个系统的功能和要求,将算法嵌入进NIOSⅡ软核内部,用C语言实现,外部只用硬件语言VHDL实现A/D转换和PWM换向等模块编程。
3.1 系统软件设计组成
软件主要分为两大块:外围硬件语言编写模块和NIOSⅡ软核模块。外部硬件语言采用VHDL加Verilog语言实现位置信号和电流信号A/D的采集及转换;内部软核实现整个控制算法以及对EEPROM的读写操作。算法首先将串口接收到的操舵指令进行分离和转换,同时将四路反馈回来的位置信号也进行调理和转换,然后做差进行位置PI调节;完成位置调节后通过调理模块计算出给定速度信号,同时与反馈计算的当前舵角转速信号做差再进入速度PI调节模块;最后进入电流环P调节器。待三环调节完成后输出PWM调节信号。
3.2 三闭环控制算设计
系统采用了全数字三闭环串级控制策略,分为电流环、速度环和位置环;位置环接收上位机下发的舵角操舵指令和位置传感器反馈回来的当前位置信号并对两者进行做差处理,然后进行位置环的PI控制,输出一个速度参考值,该值与反馈计算的当前舵角速度进行做差处理,再进入速度环PI调节器,输出给电流给定信号,该信号与电流采样值做差,进入电流环P调节,输出一定占空比的PWM信号,驱动三相桥臂电路,调节伺服电机正反转运动。
三环控制可以保证系统的稳定性和响应速度,当速度环和电流环内部的参数发生变化或者受到扰动时,它们能起到有效的拟制作用,减少了对位置环的影响。电流环将产生最终的PWM信号,它的作用是考虑到电流的跟随特性,当电流受到微小扰动时,算法能够自动响应进行迅速调节,从而保证舵机输出力矩波动尽可能的小。
电流环的给定既是速度环的输出,速度环作为三环的中间环节,具有承上启下的作用,由于舵机负载转矩产生的非线性主要作用于速度环,因此该环的非线性较大,采用传统的PI控制可以维持转速的平稳性,速度反馈的计算是通过对位置信号检测值的微分得来的。
位置环作为最外环的控制,决定了舵机系统的快速性和稳定性,同时决定了系统精度,该项目中采用PI调节器,这样不仅保持了算法原理简单、使用方便、鲁棒性较强的特点,而且具有更大的灵活性、适应性和精确性,有利于提高系统的阻尼性能,并极大的减少了系统响应的超调,使系统具有较快的响应速度和抗扰动能力。
4 结语
项目研制完成后对样机进行了试验验证,各项测试结果显示均能达到预期的指标要求,较之前的同类产品性能有了很大的提高。
从分析结果可得,该系统实现了基于NIOSⅡ软核三环控制算法策略,系统达到了预期的技术指标,速度、频响等特性表现较好,系统频响在原有15 Hz的基础上提高到了现有的17 Hz。
参考文献
[1] 汪军林,解付强,刘玉浩.导弹电动舵机的研究现状及发展趋势[J].飞航导弹,2008(3):42-46.
[2] 王生明.制导炮弹舵机控制器设计与分析[D].南京:南京理工大学,2010.
[3] 汪首坤,王军政.舵机频率特性的测试误差分析与修正[J].北京理工大学报,2007(1):34-37.
[4] 陈伯时.电力拖动自动控制系统[M].北京:机械工业出版社,2000.