陳亮
摘要:在液壓伺服控制試驗(yàn)設(shè)備中,常采用MOOG便攜式控制器作為測控系統(tǒng)下位機(jī),同時通過LabVIEW進(jìn)行上位軟件開發(fā)。在某些試驗(yàn)中,需要進(jìn)行任意自定義譜的設(shè)置,則需要通過SDK進(jìn)行程序的二次開發(fā),對控制器序列文件進(jìn)行編輯,從而達(dá)到試驗(yàn)?zāi)康?。本文基于LabVIEW編程語言,在下位硬件控制設(shè)備為MOOG便攜式控制器的條件下,分別采用直接序列生成、數(shù)據(jù)文件查詢兩種方式對自定義譜設(shè)置進(jìn)行了程序設(shè)計。該種自定義譜實(shí)現(xiàn)方式大大提高了試驗(yàn)效率,拓展了控制器應(yīng)用場景。
關(guān)鍵詞:LabVIEW;MOOG便攜式控制器;自定義譜
引言
MOOG便攜式控制器是液壓伺服加載試驗(yàn)中常用的控制設(shè)備,具有集成度高、便攜、穩(wěn)定性高、控制魯棒性強(qiáng)、多種可調(diào)控制參數(shù)、可進(jìn)行SDK軟件二次開發(fā)功能等優(yōu)點(diǎn)[1][2]。LabVIEW作為圖形化編程語言中最常用的工具,具有界面友好、簡潔直觀、易維護(hù)等優(yōu)點(diǎn)[3]。在采用MOOG便攜式控制器進(jìn)行試驗(yàn)控制過程中,如測控系統(tǒng)上位控制程序采用LabVIEW平臺進(jìn)行開發(fā),且上位程序需要進(jìn)行任意自定義譜的設(shè)置,此時就需要使用SDK包進(jìn)行LabVIEW編程實(shí)現(xiàn)[1][2][3]。本文基于此應(yīng)用背景,采用LabVIEW編程語言,利用MOOG便攜式控制器的序列(sequence)播放功能,實(shí)現(xiàn)了上述需求。
本文詳細(xì)敘述了兩種序列生成方式,從而完成任意自定義譜的設(shè)置。這兩種方式分別稱之為:直接序列生成方式和數(shù)據(jù)文件查詢方式。
1 直接序列生成方式
直接序列生成方式,是指程序按照自定義譜的內(nèi)容,直接生成控制器可執(zhí)行的序列文件,序列文件中包含了以下幾個關(guān)鍵點(diǎn):每一階段的起點(diǎn)值、終點(diǎn)值、過渡時間、序列譜重復(fù)次數(shù)等。在直接生成序列前,需要對序列文件中固定的開始符、結(jié)束符、編輯格式等深入理解,以便生成的序列編譯并執(zhí)行成功。
首先,需要在本地硬盤使用“文本文檔”工具新建一個后綴名為“.seq”的空序列文件,然后,通過編寫LabVIEW程序引用本地文件位置,以便進(jìn)行讀取和編輯操作。如圖1所示。
下一步,根據(jù)實(shí)際自定義譜的內(nèi)容,生成序列文件。如圖2所示。
最后,運(yùn)行序列,即可發(fā)出自定義譜指令信號。如圖3所示。
2 數(shù)據(jù)文件查詢方式
數(shù)據(jù)文件查詢方式,是指LabVIEW程序?qū)⒆远x譜生成本地.csv文件,然后通過序列文件引用本地.csv文件,從而實(shí)現(xiàn)譜生成功能。
首先,需要根據(jù)自定義譜進(jìn)行插值計算,生成.csv文件,如圖4所示。本例中實(shí)現(xiàn)“載荷-時間譜”,數(shù)組第一行為時間,第二行為載荷,插值程序根據(jù)原表格生成一個步長為0.1s(此處步長可根據(jù)實(shí)際精度需求進(jìn)行自定義)的表格,并將其按照特定格式存儲在本地“l(fā)oad_time.csv”文件中。
第二步,需要在本地工程下新建一個后綴名為“.seq”的文件(本例中命名為“l(fā)oad_time_seq.seq”),該文件是控制器中執(zhí)行的序列文件,文件中的語句說明了序列文件的一下幾個關(guān)鍵參數(shù):引用數(shù)據(jù)文件、序列持續(xù)時間、序列運(yùn)行的通道屬性。當(dāng)生成完畢后,通過SDK中的“l(fā)oadsequence”函數(shù)將序列文件加載到控制器內(nèi)容中,為后續(xù)自定義譜的播放做準(zhǔn)備。圖5所示程序?qū)υ撐募嚓P(guān)內(nèi)容進(jìn)行編輯。其中“總時間”控件是自定義譜的總時間。圖6所示為生成本地seq文件的具體內(nèi)容。
第三步,運(yùn)行序列,即可發(fā)出自定義譜指令信號。如第1節(jié)中圖3所示。
結(jié)束語
MOOG便攜式控制器的SDK程序包二次開發(fā)功能突出體現(xiàn)了其應(yīng)用靈活性。而其序列播放功能可以實(shí)現(xiàn)任意自定義譜的設(shè)置。本文即是通過SDK開發(fā)包對序列播放功能進(jìn)行二次開發(fā),從而實(shí)現(xiàn)了任意自定義指令譜的生成,大大提高了試驗(yàn)效率,拓展了MOOG便攜式控制器的應(yīng)用場景。
參考文獻(xiàn):
[1] ?張穎.穆格測試技術(shù)為汽車行業(yè)提供精確控制[J].汽車與配件,2010(44):44-45.
[2] ?李耀輝. M00G電液伺服閥及伺服系統(tǒng)在玻殼壓機(jī)液壓系統(tǒng)中的應(yīng)用與維護(hù)[C].中國硅酸鹽學(xué)會:中國硅酸鹽學(xué)會2003年學(xué)術(shù)年會論文摘要集,2003:196.
[3] ?張靜,劉潔,侯京鋒,韓澈,張夢妍.基于MOOG/SDK的多通道靜力加載控制系統(tǒng)設(shè)計[J].計算機(jī)測量與控制,2017,25(04):47-50.
(作者單位:中國飛機(jī)強(qiáng)度研究所)