基于LabVIEW与MOOG便携式控制器的自定义谱实现方法
2020-07-04陈亮
陈亮
摘要:在液压伺服控制试验设备中,常采用MOOG便携式控制器作为测控系统下位机,同时通过LabVIEW进行上位软件开发。在某些试验中,需要进行任意自定义谱的设置,则需要通过SDK进行程序的二次开发,对控制器序列文件进行编辑,从而达到试验目的。本文基于LabVIEW编程语言,在下位硬件控制设备为MOOG便携式控制器的条件下,分别采用直接序列生成、数据文件查询两种方式对自定义谱设置进行了程序设计。该种自定义谱实现方式大大提高了试验效率,拓展了控制器应用场景。
关键词:LabVIEW;MOOG便携式控制器;自定义谱
引言
MOOG便携式控制器是液压伺服加载试验中常用的控制设备,具有集成度高、便携、稳定性高、控制鲁棒性强、多种可调控制参数、可进行SDK软件二次开发功能等优点[1][2]。LabVIEW作为图形化编程语言中最常用的工具,具有界面友好、简洁直观、易维护等优点[3]。在采用MOOG便携式控制器进行试验控制过程中,如测控系统上位控制程序采用LabVIEW平台进行开发,且上位程序需要进行任意自定义谱的设置,此时就需要使用SDK包进行LabVIEW编程实现[1][2][3]。本文基于此應用背景,采用LabVIEW编程语言,利用MOOG便携式控制器的序列(sequence)播放功能,实现了上述需求。
本文详细叙述了两种序列生成方式,从而完成任意自定义谱的设置。这两种方式分别称之为:直接序列生成方式和数据文件查询方式。
1 直接序列生成方式
直接序列生成方式,是指程序按照自定义谱的内容,直接生成控制器可执行的序列文件,序列文件中包含了以下几个关键点:每一阶段的起点值、终点值、过渡时间、序列谱重复次数等。在直接生成序列前,需要对序列文件中固定的开始符、结束符、编辑格式等深入理解,以便生成的序列编译并执行成功。
首先,需要在本地硬盘使用“文本文档”工具新建一个后缀名为“.seq”的空序列文件,然后,通过编写LabVIEW程序引用本地文件位置,以便进行读取和编辑操作。如图1所示。
下一步,根据实际自定义谱的内容,生成序列文件。如图2所示。
最后,运行序列,即可发出自定义谱指令信号。如图3所示。
2 数据文件查询方式
数据文件查询方式,是指LabVIEW程序将自定义谱生成本地.csv文件,然后通过序列文件引用本地.csv文件,从而实现谱生成功能。
首先,需要根据自定义谱进行插值计算,生成.csv文件,如图4所示。本例中实现“载荷-时间谱”,数组第一行为时间,第二行为载荷,插值程序根据原表格生成一个步长为0.1s(此处步长可根据实际精度需求进行自定义)的表格,并将其按照特定格式存储在本地“load_time.csv”文件中。
第二步,需要在本地工程下新建一个后缀名为“.seq”的文件(本例中命名为“load_time_seq.seq”),该文件是控制器中执行的序列文件,文件中的语句说明了序列文件的一下几个关键参数:引用数据文件、序列持续时间、序列运行的通道属性。当生成完毕后,通过SDK中的“loadsequence”函数将序列文件加载到控制器内容中,为后续自定义谱的播放做准备。图5所示程序对该文件相关内容进行编辑。其中“总时间”控件是自定义谱的总时间。图6所示为生成本地seq文件的具体内容。
第三步,运行序列,即可发出自定义谱指令信号。如第1节中图3所示。
结束语
MOOG便携式控制器的SDK程序包二次开发功能突出体现了其应用灵活性。而其序列播放功能可以实现任意自定义谱的设置。本文即是通过SDK开发包对序列播放功能进行二次开发,从而实现了任意自定义指令谱的生成,大大提高了试验效率,拓展了MOOG便携式控制器的应用场景。
参考文献:
[1] 张颖.穆格测试技术为汽车行业提供精确控制[J].汽车与配件,2010(44):44-45.
[2] 李耀辉. M00G电液伺服阀及伺服系统在玻壳压机液压系统中的应用与维护[C].中国硅酸盐学会:中国硅酸盐学会2003年学术年会论文摘要集,2003:196.
[3] 张静,刘洁,侯京锋,韩澈,张梦妍.基于MOOG/SDK的多通道静力加载控制系统设计[J].计算机测量与控制,2017,25(04):47-50.
(作者单位:中国飞机强度研究所)