999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于LabVIEW的舵機自動加載測試系統軟件設計

2015-08-22 08:14:48胡武揚段富海董科銳
軟件 2015年5期

胡武揚 段富海 董科銳

摘要:采用LabVIEW 2013虛擬儀器平臺開發了直升機舵機自動加載測試系統軟件。介紹了測試系統軟件結構和流程圖,重點闡述了軟件開發過程中遇到的典型問題,如生產者消費者設計模式處理數據采集、利用通知器控件實現循環通信、利用LabVIEW特有的字符串轉換控件解決數據類型轉換等,并給出了解決問題方法,以期對其它基于LabVIEW的軟件開發提供借鑒。

關鍵詞:舵機;加載系統;自動測試;LabVIEW

中圖分類號:TP206 文獻標識碼:A DOI:10.3969/j.issn.1003-6970.2015.05.006

0 引言

舵機是直升機動力學控制的執行機構,它在直升機實際飛行過程中需要承受通過液壓助力器來的空氣動力及其力矩作用??諝鈩恿捌淞仉S著直升機飛行高度、速度、姿態等飛行狀態的不同而變化,最終呈現為舵機的動態交變負載。舵機性能直接影響直升機整體的飛行性能,而舵機的帶載能力是舵機的主要技術參數。在試驗室條件下對舵機施加載荷,模擬直升機在空中飛行時舵機輸出軸所受到的負載情況,對舵機系統的實際工作性能進行考核驗證,是舵機產品檢驗和進行飛控系統動態半物理仿真試驗必備程序。

傳統的手動加載舵機測試方式測試精度不高,不僅耗時費力,而且人為很多因素會影響測試結果的可信度。本文所述的直升機并聯電動操縱舵機綜合自動測試系統主要用于測試舵機在空載及不同負載下的性能,主要測試內容包括舵機空載和加載時的電壓、電流,輸出軸的轉角、轉速、行程和扭矩等參量。

根據并聯舵機測試系統技術要求和測試技術的最新進展,軟件的運行環境選為Windows 7.0圖形視窗操作系統,選用美國NI(National Instrument)公司的LabView2013圖形化編程語言(Graphics Language,G語言)進行設備軟件開發。本文在介紹測試系統硬件的基礎上,給出了軟件的框架設計,重點闡述了軟件開發過程中遇到的典型問題:生產者一消費者設計模式處理數據采集、利用通知器控件實現循環通信、利用LabVIEW特有的字符串轉換控件解決數據類型轉換等,并給出了解決問題方法,以期對其它基于LabVIEW的軟件開發提供借鑒。

1 硬軟件結構設計

1.1 硬件結構設計

測試對象直升機并聯舵機主要由電機、減速器、蝸桿機構、電磁離合器、微動行程開關等組成,輸出軸為慢速的旋轉運動。

舵機自動加載測試系統的硬件結構如圖l所示。選用阿爾泰公司PXI機箱、PXI控制器和兩塊多功能數據采集卡作為控制和測量平臺,選用三相交流伺服電機、伺服驅動器、扭矩傳感器、編碼器構成加載系統,組成完整的舵機自動加載測試系統。PXI控制器通過連接數據采集卡控制舵機轉動、控制伺服電機扭矩輸出和位移輸出等,同時它還采集各種設備反饋的信號,包括舵機電機及舵機離合器的電流和電壓信號、扭矩傳感器信號、編碼器脈沖信號等。

1.2 軟件設計

LabVIEW是NI公司最核心的軟件產品,是工業控制、測試軟件開發的專業平臺,它具有界面簡潔友好,能較好地模擬測控儀器及環境等特點。它采用了工程人員熟悉的術語、圖形等圖形化符號來代替常規基于文字的語言程序。它將功能強大的C語言與測控技術有機結合,具有靈活的交互式編程方法和豐富的庫函數,為開發人員建立檢測系統、自動測試環境、數據采集系統、過程監控系統等提供了理想的軟件開發環境。LabVIEW實時編譯特性,讓編程和調試效率得到很大的提升。根據軟件開發規律,從功能設計,結構設計和通信設計依次說明。

1.2.1 軟件功能設計

測試系統軟件所提供的功能包括:

1)圖形用戶(GUI)界面的人機對話接口和界面友好,包括可顯示設定指令的曲線和回采信號的實時曲線及數字實時刷新顯示監測信號等;

2)有典型試驗入口;

3)試驗進程的監測及報警;

4)控制參數的設置;

5)系統輸出輸入通道的自檢;

6)試驗數據的保存、處理、曲線回放、報表打印等。

1.2.2 軟件結構設計

將測試測量程序劃分3個層次,即主VI、功能層和最底層的驅動層。LabVIEW已經提供了常用的底層驅動功能,如數據采集設備的驅動、文件讀寫驅動、VISA驅動等,因此,舵機自動加載測試系統程序設計主要在主vI和功能層。

主VI是最高一層,它主要通過界面為程序提供必要的信息,并且接收需要的信息以及調用下層VI。依據LabVIEW開發程序的流程即提出需求、設計、編碼、測試、發布和維護,結合舵機自動加載測試系統的特點,采用從用戶界面設計著手開發。為保證舵機自動加載測試系統良好的人機交互,主界面將采集區域與控制區域分類排布,并且卡片式管理各個實時顯示項,統一使用LabVIEW銀色系列控件,從而讓試驗監視方便,測試過程操作簡單。將測試主界面劃分為舵機控制、加載電機控制、試驗控制、試驗監控和試驗記錄5個區域,每個區域下又有若干測試子項。圖2所示為舵機自動加載測試系統的交互界面設計簡圖。

依據主VI設計功能層,功能層采用自頂向下的設計方式,逐步實現使用子Ⅵ去實現各個功能模塊,軟件結構圖如圖3所示,軟件程序流程圖見圖4。

1.2.3 軟件通信環境

1)使用標準PXI儀器總線通信協議,支持32或64位數據傳輸,最高數據傳輸速率可達132Mb/或528Mb/s;

2)RS232串口通信協議。

2 數據采集模塊設計

2.1 數據采集的實現

LabVIEW可以很方便無縫地利用NI公司的數據采集卡實現數據的采集,NI提供了上百種采集卡的驅動程序供用戶使用。然而由于NI采集卡是高端產品,價格昂貴,不適用于一般的企業和科研單位,應用并不是很廣泛。在滿足舵機測試各項要求的情況下,通過動態鏈接庫(.d11)調用非NI板卡——阿爾泰的PX19606多功能采集卡來實現數據的采集,LabVIEW程序見圖5。

在LabVIEW程序窗口選擇基本函數Call Library Function Node.vi,并且在其右鍵的菜單里選擇configure對其屬性,例如DLL文件的路徑、被調用的函數名、參數的類型及返回類型進行配置后,即可在LabVIEW中連接阿爾泰提供數據采集卡進行模擬量數據采集。

CreateDevice為設備創建了句柄,供其它函數調用識別設備,InitDeviceProAD初始化硬件通道和采樣頻率等,StartDeviceProAD啟動設備,ReadDeviceProAD Half讀取指定長度數組數據進入物理緩沖區,從緩沖區不同層次的數組取出一個元素,經過一系列轉換即可得到各個傳感器采集的電壓值。最后ReleaseDeviceProAD和ReleaseDevice釋放設備,完成一次數據采集。將這些動態鏈接庫函數加入到循環結構中,即可實現連續數據采集。

2.2 數據采集中的生產者一消費者設計模式

數據采集程序在運行時仍然希望系統能夠處理其它事件,這是在傳統的狀態機或者事件結構中無法實現的。因為無論是狀態機結構還是事件結構,都是由一個循環組成的,不同的狀態是無法同時被響應和處理的。解決這個問題的方法也比較簡單,LabVIEW本身就是一種多線程的程序設計語言,可以再加一個循環或者另外開一個程序獨立運行。舵機自動化測試過程中,既需要對數據實時采集,又必須通過對采集的數據根據舵機測試項的具體需求進行處理得到計算值,然后與標稱值比對,從而得出最后結果,因此多線程是必須的。然而,在舵機自動加載測試系統中,采集數據速度很快,而分析處理數據速度相對較慢,如果分析處理過于復雜可能會導致處理時間過長,將會影響到采集數據的速度。為了解決此問題,采用生產者-消費者數據采集模塊程序模式來設計采集循環。

如圖6所示,生產者循環不斷的產生數據送入緩存器,而消費者循環則從緩存器中不斷的讀出數據。在由于每個循環只做自己的事情,所以相互之間并不會發生影響。生產者循環不產生數據,消費者循環則不運行。隊列起到了重要的作用。這里采用全局變量進行數據傳遞,它與生產者一消費者設計模式下的隊列相連。這雖然破壞了數據流,但是讓編程模塊化程度更好,有利于提高多人開發其它模塊的效率。

3 循環間通信設計

因為舵機自動加載測試系統并沒有多個數據流同時對一個變量進行讀寫,不會因為競態條件發生讀寫沖突,所以在并行采集循環中,可以使用全局變量進行數據傳遞。然而,LabVIEW以數據流機制控制VI執行,數據流機制的主要特點是數據從屬,即僅當一個節點接收到所有必需的輸入數據時,節點才可以執行,當節點執行完畢,數據流出節點。循環沒有執行結束,數據流無法流出循環,并行循環間無法進行通信。

LabVIEW的通知器控件是用來在程序框圖中的兩個獨立部分之間或者在運行于同一臺機器的兩個Ⅵ之間通信的工具,它類似于數據郵箱,程序框圖的一段代碼發送數據給郵箱,另外一段代碼從郵箱中接收數據。等待通知器控件的程序框圖則完全停止執行,只有當新數據可用時才重新啟動。這使計算機減少浪費在無止境的輪詢中的時間。通知器經常用在循環控制的信息傳遞,例如兩個循環同時啟動,同時終止的控制等。通知器這一特性,可以為并行循環通信提供一種通信的方法。在循環外層再嵌套上通知結構,即使循環未結束,也能將數據送出循環。

在LabVIEW程序面板,單擊編程一同步一通知器操作一獲取通知其引用,即可新建一個通知器。如圖7所示的事件循環結構中,獲取通知器通過句柄的方式與發送通知控件相連接,等待通知控件錯誤輸出連線與循環相連。當“開啟檢測”事件發生時,等待通知控件收到發送通知控件的布爾指令,即可開始執行循環結構。即使等待循環從未結束,也可將數據實時寫入全局變量,供其它Ⅵ讀取,程序如圖8所示。

4 串口通信中的數值轉換

虛擬儀器軟件體系結構(VISA)是一種包括GPIB、串口、以太網、USB的編程和故障診斷儀器系統的標準配置。為了在LabVIEW中編寫的VISA接口程序,需另外安裝NI-VISA驅動程序。LabVIEW提供NI-VISAInteractiveControl對VISA進行配置和調試。在后面板利用VISA節點進行串行通信編程,利用ⅥSAConfigure Serial Port節點設定串口的設備句柄、波特率、停止位、校驗位、數據位,讀寫串口,利用VISARead節點和VISA Write節點對串口進行讀寫,關閉串口,停止所有讀寫操作等。

在舵機測試設備調試過程中,發現靜態應變片扭矩傳感器出現電壓偏置,推測原因是由于自動測試加載系統電路密集程度高,各個子電路接地不同,以及電路間可能的電磁干擾。為了徹底解決這個問題,將扭矩傳感器輸出方式由電壓輸出改為頻率輸出,這很好地抑制了干擾。接收頻率信號的扭矩表提供模擬量接口和VISA接口與PXI控制器相連。如果再用電壓模擬量傳遞扭矩信號,必然增加一次轉換過程,可能導致采集精度的下降,所以采用VISA接口來鏈接扭矩表和PXI控制器。

通過向扭矩表發送接收命令碼,扭矩表向PXI系統傳送一組數據類型為BCD碼的當前測量值。測量數據由特定字節數組成。數據的數符、數碼、階符和階碼都包含在特定的字節中。這就會面臨一個問題,數據是BCD碼,不能直接參與后續運算,因此需要將字節數里的信息提取出來。在文本語言編程中,通常是將BCD碼轉換成二進制然后按位取出0或1進行加權冪運算,再減去進制不同的差值,最后換算成十進制數值。然而這樣不僅代碼冗長,可讀性不好,并且影響執行效率,降低采集速度。

VISA接口采集到的BCD碼32H轉化為十進制數值32,在文本編程語言中:

需先將32H換算成二進制碼,即00110010B;

最后得到數值5-18=32。

如果在LabVIEW中采用與文本語言相同轉換思路編程,必然造成代碼堆積凌亂。為了解決這個問題,在LabVIEW中巧妙使用字符串,能非常輕松完成數值的轉換。如圖9所示,BCD碼32H連接數值至十六進制字符串轉換控件,得到十六進制數組成的字符串,再將該十六進制字符串當成十進制字符串,直接連接十進制字符串至數值的轉換控件,即可非常方便得到數值32,代碼簡潔明了。

5 結束語

(1)利用LabWindows/CVI開發功能相同的舵機自動加載測試系統占用50MB磁盤空間,而利用封裝性更好的LabVIEW2013搭建的相同的系統,大小占用只有不到4MB,LabVIEW有效地降低代碼體積;

(2)圖形化編程語言帶來了不同視角的編程方式。在舵機自動加載測試系統開發過程中,充分利用LabVIEW的編程特性可取得意想不到的效果;

(3)在測試系統各項功能開發實現過程中,LabVIEW呈現出更加簡潔的編程方式,給后續拓展和維護帶來一定的便利性。

主站蜘蛛池模板: 91亚洲精品第一| 一级看片免费视频| 国产大片喷水在线在线视频| 亚洲国产成熟视频在线多多| 国产91成人| 精品色综合| 国产免费网址| 人妻精品久久久无码区色视| 毛片免费试看| 国产黑丝一区| 国产91九色在线播放| 91成人在线免费视频| 成人亚洲国产| 麻豆国产精品一二三在线观看| 露脸国产精品自产在线播| 美女被狂躁www在线观看| 国产欧美性爱网| 国产成人亚洲无码淙合青草| 亚洲av无码片一区二区三区| 青青青国产精品国产精品美女| 欧美精品亚洲二区| 亚洲天堂久久新| 欧美中日韩在线| 国产精品久久久久久影院| 一本大道在线一本久道| 丝袜久久剧情精品国产| 青青草原偷拍视频| 高清无码不卡视频| 日韩免费毛片| 国产黑人在线| 亚洲一欧洲中文字幕在线| 四虎成人精品| 日本高清在线看免费观看| 国产精品va| 黄色网址免费在线| 亚洲日本在线免费观看| 国产第一页屁屁影院| 久久精品无码专区免费| 91网红精品在线观看| 狠狠v日韩v欧美v| 伦精品一区二区三区视频| 色综合天天综合| 国产一二三区在线| 天天躁夜夜躁狠狠躁躁88| 在线观看国产小视频| 麻豆国产精品一二三在线观看| 欧美精品二区| 国产福利一区二区在线观看| 91亚洲视频下载| 久久久噜噜噜久久中文字幕色伊伊| 亚洲一区二区三区国产精华液| 国产午夜无码专区喷水| 欧美精品综合视频一区二区| 国产欧美视频在线| 美女无遮挡拍拍拍免费视频| 91日本在线观看亚洲精品| 国产日韩精品欧美一区喷| 朝桐光一区二区| 中文字幕佐山爱一区二区免费| 国产69精品久久久久妇女| 亚欧成人无码AV在线播放| 国内熟女少妇一线天| 国产精品hd在线播放| 亚洲日本中文字幕乱码中文 | 台湾AV国片精品女同性| 女人毛片a级大学毛片免费| 日本免费精品| 在线精品视频成人网| 免费在线色| 国产欧美又粗又猛又爽老| 亚洲精品大秀视频| 成人免费网站久久久| 动漫精品中文字幕无码| 国产1区2区在线观看| 中文成人在线| 久久精品无码国产一区二区三区 | 麻豆AV网站免费进入| 国产黄网永久免费| 国产精品私拍99pans大尺度| 在线观看国产精品第一区免费| 91亚洲视频下载| 91在线国内在线播放老师|