电控旋翼(Electrically controlled rotor, ECR)相比于传统的自动倾斜器旋翼,取消了自动倾斜器、机械操纵杆系及相应的液压助力系统,取而代之的是嵌入桨叶后缘的伺服襟翼操纵控制系统[1]。其基本工作原理是:操纵信号经机载计算机计算后经集流环,旋翼轴传到桨毂控制盒里的功率放大器驱动嵌入桨根处的电磁作动器偏转,电磁作动器通过传动杆系驱动各片桨叶上的襟翼作偏转运动[2]。只要桨根的扭转刚度适当,通过襟翼偏转产生的俯仰力矩作用使桨叶偏转从而改变桨叶桨距,实现对电控旋翼的操纵[3]。
为开展电控旋翼的相关试验研究,文献[4]中研制了一套桨盘直径为2.8 m的电控旋翼综合试验台,在试验中,需通过上位机在线向控制器发送襟翼控制参数、桨距控制参数以及控制算法的在线调试和切换,并对传感器反馈数据进行标定、实时处理和储存,实现对旋翼转速和旋翼轴俯仰角度的精确控制,同时进行系统保护和故障监视。
为满足该试验的需要,本文以电控旋翼综合试验台(其原理图见图 1)为应用对象,基于LabVIEW开发了一套电控旋翼测控系统。
1 电控旋翼测控系统设计 1.1 测控系统硬件设计
电控旋翼测控系统主要由上位机、数据采集模块、运动控制模块、执行机构、被控对象和检测装置6部分构成。被控对象为嵌入桨叶后缘的襟翼和旋翼主轴。检测装置包括4部分:(1) 霍尔角度传感器,用于反馈襟翼偏角。(2) 六分量天平用于测量旋翼载荷,扭矩传感器用于测量旋翼轴扭矩。(3) 两个绝对光电编码器分别用于反馈旋翼方位角和主轴俯仰角。(4) 增量式编码器用于反馈主轴转速。执行机构为嵌入桨根处的电磁作动器、主轴电机和控制俯仰角的电动缸。运动控制模块为TMS320F2812运动控制板,用于控制襟翼偏转角度。运动控制卡,用于控制主轴电机和俯仰电机。数据采集模块指数据采集卡,用于采集来自传感器的反馈信号。上位机主要实现对反馈信号的监视、数据的采集、控制指令的发送和系统的自动保护。测控系统各个硬件部分之间的关系如图 2所示。
1.2 测控系统软件设计
为实现对电控旋翼的实时监测和控制,测控系统软件应具备的主要功能包括:数据自动采集保存、软件运行前自动检测、数据波形曲线显示、采集通道的动态添加、旋翼状态监视、数据超限报警等[5]。旋翼出现故障时主轴电机自动停机保护,主轴电机的控制具有防止误操作、采集频率设定、数据的实时滤波处理、在线发送控制参数和切换控制模式[6]。
本上位机测控系统软件界面主要由数据保存模块、数据采集显示模块、串口数据发送模块、运动控制卡控制模块和主轴电机状态监视保护模块5个部分组成。测控系统程序框架如图 3所示。电控旋翼测控系统的控制流程如图 4所示。
2 测控系统软件实现
基于LabVIEW进行测控系统软件界面的开发。按照第一节测控系统软件界面的设计思想和流程进行具体的软件界面的开发。需要设计的模块包括:串口通信模块、数据采集和显示模块、数据存储模块、电机控制模块、旋翼保护模块。开发上位机软件界面除用到LabVIEW自带的程序代码和函数外,还需包括以下应用程序库代码供主程序调用:数据采集系统DAQ、串行接口仪器控制、Galil运动控制卡动态链接库[7]。
2.1 串口通信模块串口通信模块主要用于上位机向TMS320F2812控制板在线发送控制参数。模块的设计主要用到了VISA(虚拟仪器软件结构体系)库函数,包括VISA配置串口函数、VISA写入函数、VISA关闭函数[8]。
由于该电控旋翼为两片桨叶的跷跷板式旋翼,两片桨叶在方位角上相差180°,为便于区分,将后缘襟翼以红和黄颜色标记。以红襟翼为基准,则在同一时刻红黄桨距的控制信号输出量为
$\begin{matrix} {{\theta }_{红}}={{\theta }_{0}}+g{{q}_{1}}\cdot \sin \left( \varphi +{{\phi }_{1}} \right)+ \\ {{A}_{{{N}_{1}}}}\cdot \cos \left( {{N}_{1}}\cdot \varphi-{{\phi }_{{{N}_{1}}}} \right)+ \\ {{A}_{{{N}_{2}}}}.\cos \left( {{N}_{2}}\cdot \varphi-{{\phi }_{{{N}_{1}}}} \right) \\ \end{matrix}$ | (1) |
$\begin{matrix} {{\theta }_{黄}}={{\theta }_{0}}+{{\theta }_{1}}\cdot \sin \left( \left( \varphi +\pi \right)+{{\phi }_{1}} \right)+ \\ {{A}_{{{N}_{1}}}}\cdot \cos \left( {{N}_{1}}\cdot \left( \varphi +\pi \right)-{{\phi }_{{{N}_{1}}}} \right)+ \\ {{A}_{{{N}_{2}}}}\cdot \cos \left( {{N}_{2}}\cdot \left( \varphi +\pi \right)-{{\phi }_{{{N}_{2}}}} \right) \\ \end{matrix}$ | (2) |
式中:θ红为红桨距偏角控制量;θ黄为黄桨距偏角控制量;θ0为总距;θ1为周期变距;ϕ1为一阶周期变距相位;N为周期变距阶数;AN1为第N阶周期变距幅值;ϕN1为第N阶周期变距相位;φ为红色襟翼方位角。
由于控制板采用的是16级深度的FIFO增强型的串口中断数据接收方式。该方式可以减少DSP的中断响应次数,显著提高通信效率。串口通信模块的数据发送方式为:每连续发送16个字符等待5 ms,使DSP有充分的中断响应时间,再发送下一批16个字符,完成一次数据发送需发送4批数据共64个ASCLL码字符。根据实际的控制参数精度和范围,每个控制参数最多用两个ASCLL码值表示,可以极大减少字符的发送数量,减少DSP资源的开销,保证通信稳定正常[9]。
2.2 数据采集及显示模块该模块驱动硬件为9111和9114两块数据采集卡。首先安装DAQpilot LabVIEW数据采集库函数和采集卡驱动程序,在函数选板的用户库函数中会显示DAQpilot、paletteMenu、errors数据采集子选板。在DAQpilot选板中调用如图 5所示的驱动控件,9111采集卡的工作模式设置为单端模拟电压信号输入,9114采集卡的工作模式设置为差分模拟电压信号输入。在开始运行DAQ数据采集系统时首先调用DAQpilot,它通知硬件开始I/O操作,DAQ设备使用板卡上的缓存区和RAM缓存区作为数据采集保存的中间环节。LabVIEW的DAQ应用信号传输路径如图 6所示。
其相应的DAQpilot采集卡驱动控件设置和驱动程序如图 7,8所示。采集卡同时采集多路信号输出到上位机,通过使用数组索引控件提取每一路采集到的信号并进行滤波处理,再调用表达式节点对信号进行标定[10]。滤波与标定程序模块如图 9所示。
2.3 数据存储模块
通过调用“写入电子表格文件Ⅵ”将采集到的数据保存为Excel格式。软件运行时会自动按日期在指定保存路径下建立一个文件夹,将所有Excel数据表保存在该文件夹中。Excel表格的名称可自动按时间命名也可手动命名。生成Excel表格时通道名称自动依次写入首行,保证数据存储的灵活性和易于后期对数据的识别处理。在采集数据保存的同时,对旋翼施加的各种控制参数和旋翼运转状态参数也会记录在Excel表格中。数据保存模块流程图如图 10所示。
2.4 电机控制模块
电机控制模块用于控制旋翼主轴电机和俯仰电机。电机控制通过Galil运动控制卡实现,该运动控制卡为四轴运动控制卡,实际只用到两轴,A轴控制俯仰电机,B轴控制主轴旋翼电机。首先安装GAlil运动控制卡驱动程序软件Galiltools。LabVIEW与Galil运动控制卡程序的链接通过ActiveX技术实现。硬件上PC机与Galil运动控制卡的通信通过网线实现。程序中调用ActiveX自动化函数中的“打开自动化句柄”,并为该句柄配置“选择ActiveX类”中的“Galil.IGalil”,自动生成一个Galil.IGalil输入句柄实现对Galil运动控制卡程序的引用。再通过调用Galil指令属性节点向运动控制卡写入电机控制指令。在Galiltools软件中先对运动控制卡的IP地址进行设定,在调用IGalil属性节点时输入运动控制卡的通信IP地址,接着进行初始化设置和控制参数配置。利用ActiveX自动技术,调用俯仰电机与主轴电机的部分程序和运动控制指令写入节点[11]。主轴电机与俯仰电机的部分程序控制图如图 11,12所示。
2.5 旋翼保护模块
对电控旋翼测控系统的保护主要是对主轴电机和旋翼的保护,同时也是对旋翼台操纵者生命安全的保护。系统运转时旋翼转速较高,若出现意外情况时,应首先对主轴电机进行停机保护。一般可能出现的意外情况有:旋翼挥舞角超出警戒值、旋翼台振动水平超出警戒值、主轴在启动阶段加速度超出设定值、主轴转速超出设定值过大、电机功率超速额定功率、误操作导致旋翼控制参数输入不当。
出现以上意外情况时,在程序上对电机的保护措施主要有两种:(1) 自动监测停机保护:程序对各传感器反馈回来的旋翼状态数据进行分析处理,根据处理结果与设定的阀值比对判断是否发出停机指令。(2) 防止误触发或操作不当:操作主轴电机时,操作按钮应遵循正确的操作流程依次激活或关闭,设置控制输入参数上下限,增加多个具有停机功能的按钮并以高亮的图标显示,保证在慌乱中及时停机。以上停机保护方式是由程序产生停机指令,通过网线发送给运动控制卡控制主轴停机。当网线松动转速不能正常反馈时,需读取下位机DSP发来的转速值进行判断是否停机。除了手动停机,同时应在硬件上增加冗余停机保护措施。在程序产生停机指令时,采集卡模拟电压AO口输出高电平,控制继电器使旋翼主轴停机。停机保护模块如图 13所示。
3 测控系统测试结果
最终的电控旋翼测控系统上位机软件完整界面如图 14所示。测试时,通过上位机界面设置数据采集卡采集频率。正确配置串口号后,向TMS320F2812控制板发送控制参数。DSP的D/A口产生的期望正弦信号经采集卡采集输出给上位机, 经示波器面板显示出来,启动数据保存,启动电机使能。设置主轴电机工作转速和主轴俯仰角度,并经参数确认按钮确认后分别按下主轴启动和俯仰定位按钮,启动系统。
得到的测试结果分析图如图 15所示。在图 15(a)中,0~1 s, 1~2 s, 2~3 s从上位机输入的桨距控制幅值分别为2°,4°和0°,DSP接收到控制参数后转换为桨距的模拟控制电压输出,并反馈给采集卡。反馈结果与控制输入结果一致,表明上位机可以准确向DSP发送控制参数,采集卡可以准确采集数据。图 15(b)为转速控制输入与转速反馈曲线。转速反馈频率为1 Hz,实际转速能够稳定在设置转速附近,转速波动为1 r/min。在第73 s将错误的反馈信号施加给旋翼保护系统,系统立刻做出保护停机,大约经过4 s转速从500 r/min降到0 r/min。图 15(c)为旋翼轴俯仰角度控制输入与反馈曲线。俯仰角度能够稳定在设定的角度处,角度波动为0.05°。
4 结论
本文针对电控旋翼综合试验台开发了一套测控系统,试验实测表明该系统能够实现所需的各项功能并满足性能要求,具体结论如下:
(1) 该上位机软件能够正确发送控制参数和采集传感器数据。
(2) 主轴电机转速能够稳定到设置转速,转速误差在1 r/min以内。
(3) 主轴俯仰角能够准确达到设置角度,角度误差在0.05°以内。
(4) 当桨叶挥舞角、主轴转速、主轴加速度以及功率超出设定值,主轴控制继电器能够迅速做出响应,控制主轴停机。
[1] |
陆洋.
电控旋翼——一种新概念旋翼系统[J]. 航空科学技术, 2007(6): 48–51.
LU Yang. Electrically controlled rotor-A new concept rotor system[J]. Aeronautical Science and Technology, 2007(6): 48–51. |
[2] | SAXENA A, CHOPRA I. Hover testing of a swashplateless rotor with compact brushless motor actuated flaps for primary control[C]//American Helicopter Society 68th Annual Forum. Forth Worth, TX:[s.n.], 2012. |
[3] |
陆洋, 王浩文, 高正.
电控旋翼气弹动力学建模研究[J]. 航空动力学报, 2006, 21(6): 1021–1026.
LU Yang, WANG Haowen, GAO Zheng. Aeroelastic dynamic modeling of the electrically controlled rotor[J]. Journal of Aerospace Power, 2006, 21(6): 1021–1026. |
[4] |
董维生. 基于在线辨识的电控旋翼桨距控制研究[D]. 南京: 南京航空航天大学, 2013.
DONG Weisheng. Study of the electrically controlled rotor blade pitch control based on online identification[D]. Nanjing: Nanjing University of Aeronautics & Astronautics, 2013.http://cdmd.cnki.com.cn/article/cdmd-10287-1014059653.htm |
[5] |
罗德柱. 基于虚拟仪器的测控平台的设计与研究[D]. 西安: 西安科技大学, 2006.
LUO Dezhu. Design and research of measurement and control platform based on virtual instrument [D]. Xi′an: Xi′an University of Science and Technology, 2006.http://cdmd.cnki.com.cn/Article/CDMD-10704-2006118713.htm |
[6] |
崔海全, 张春梅, 赵志成.
基于C#液位过程测控软件的设计与实现[J]. 太原科技大学学报, 2012, 33(1): 1–5.
CUI Haiquan, ZHANG Chunmei, ZHAO Zhicheng. Process control based on C# design and implementation of software[J]. Journal of Taiyuan University of Science and Technology, 2012, 33(1): 1–5. |
[7] |
林静, 林振宇.
LabVIEW虚拟仪器程序设计从入门到精通[M]. 北京: 人民邮电出版社, 2013.
LIN Jing, LIN Zhenyu. LabVIEW virtual instrument programming from entry to master[M]. Beijing: People′s Posts and Telecommunications Press, 2013. |
[8] |
李江全.
LabVIEW虚拟仪器数据采集与串口通信测控应用实战[M]. 北京: 人民邮电出版社, 2010.
LI Jiangquan. LabVIEW virtual instrument data acquisition and serial communication measurement and control application[M]. Beijing: People's Posts and Telecommunications Press, 2010. |
[9] |
顾卫钢.
手把手教你学DSP[M]. 北京: 北京航空航天大学出版社, 2010.
GU Weigang. Teach you how to learn DSP[M]. Beijing: Beihang University Press, 2010. |
[10] |
邢冀川, 吴进.
数字信号处理原理及其LabVIEW实现[M]. 北京: 电子工业出版社, 2013.
XING Jichuan, WU Jin. Principle of digital signal processing LabVIEW implementation[M]. Beijing: Electronic Industry Publishing Press, 2013. |
[11] |
赵炯, 刘力平.
LabVIEW中的动态连接库调用[J]. 中国工程机械学报, 2007, 5(1): 122–126.
ZHAO Jiong, LIU Liping. Dynamic link library call in LabVIEW[J]. Chinese Journal of Mechanical Engineering, 2007, 5(1): 122–126. |