前言:我們精心挑選了數(shù)篇優(yōu)質(zhì)控制軟件設計論文文章,供您閱讀參考。期待這些文章能為您帶來啟發(fā),助您在寫作的道路上更上一層樓。
本文設計的基于以太網(wǎng)的超聲檢測多軸運動控制系統(tǒng)是在復雜的多軸運動控制技術(shù)之上結(jié)合了遠程通信技術(shù),以此來實現(xiàn)超聲檢測的遠程自動控制。此系統(tǒng)主要由上位機、多軸運動控制器、步進電機驅(qū)動器、步進電機、機械執(zhí)行裝置、限位開關(guān)和超聲探頭等組成,其組成框圖如圖1所示。由上位機LabVIEW控制系統(tǒng)為多軸運動控制器發(fā)送運動指令,并由多軸運動控制器將運動信號拆分為步進信號和方向信號,再將這兩種電機控制信號發(fā)送給步進電機驅(qū)動器,步進電機驅(qū)動器將其轉(zhuǎn)化為角位移發(fā)送給步進電機,使步進電機轉(zhuǎn)動相應個步距角,以達到使步進電機按指令運動的目的。步進電機上安裝有機械執(zhí)行裝置,用以固定超聲探頭,機械執(zhí)行裝置上安有限位開關(guān),以此控制電機的運動范圍,當電機運動到限位開關(guān)的位置時,限位開關(guān)發(fā)出限位信號到多軸運動控制器,運動控制器便停止發(fā)出使電機運動的脈沖信號。在進行自動超聲檢測時,Z軸方向機械執(zhí)行機構(gòu)上固定的超聲檢測探頭能夠在被檢測物體的表面按照上位機運動控制算法設計的運動軌跡進行連續(xù)檢測,并實時向PC機返回探頭的位置信息,并將數(shù)據(jù)采集卡采集的超聲信號與探頭返回的位置信息建立起對應關(guān)系,最終通過上位機的圖像處理系統(tǒng)形成超聲檢測圖像,以此來實現(xiàn)物體的超聲檢測。
2多軸運動控制器的方案設計
多軸運動控制器可以通過遠程以太網(wǎng)通信的方式接收上位機的控制信號,向步進電機驅(qū)動器發(fā)送脈沖信號和方向信號以完成對電機的運動控制。采用ARM9處理器S3C2440搭建硬件平臺,配有DM9000A以太網(wǎng)通信芯片使硬件平臺具備遠程通信的功能。在Linux操作平臺上進行控制系統(tǒng)軟件功能設計,并采用UDP通信協(xié)議實現(xiàn)上位機與運動控制器之間的遠程通信[3]。
2.1多軸運動控制器硬件電路設計
本文采用ARM9處理器S3C2440設計了系統(tǒng)中運動控制器的硬件電路部分,并采用DM9000A網(wǎng)絡接口控制器設計了運動控制器的以太網(wǎng)接口。運動控制器硬件整體框圖如圖2所示。運動控制器選用ARM9處理器作為運動控制器的核心芯片可以方便地嵌套Linux操作系統(tǒng),在操作系統(tǒng)之上實現(xiàn)運動控制器的插補等多軸運動控制算法。選用DM9000A以太網(wǎng)控制芯片實現(xiàn)上位機LabVIEW與運動控制器之間的遠程通信,進而實現(xiàn)超聲檢測的遠程自動控制。為了解決步進電機驅(qū)動器與主控芯片信號匹配的問題,本文采用光耦器件設計了電壓轉(zhuǎn)換模塊,負責把主控芯片輸出的3.3V電壓信號轉(zhuǎn)換至5V電壓信號后輸入到步進電機驅(qū)動器中,同時負責把限位開關(guān)發(fā)出的24V限位信號轉(zhuǎn)換至3.3V輸入到主控芯片中。此外,電路中還搭載了用于存儲數(shù)據(jù)的擴展存儲器、以及用于調(diào)試的JTAG接口電路和RS232串口電路。
2.2多軸運動控制器軟件設計
本課題所用的限位開關(guān)為位置可調(diào)的限位開關(guān),每個軸有2個限位開關(guān),在每次超聲檢測前,把每個限位開關(guān)調(diào)節(jié)到被測工件的邊緣處,從而使探頭移動的范圍即為工件所在范圍。故此設計運動控制器的軟件時便可將限位開關(guān)做為邊界條件,以此來設計探頭的運動范圍。其運動控制流程:首先系統(tǒng)初始化,通過上微機控制界面人工控制探頭到被測工件的起點,然后X軸正向運動到X軸限位開關(guān)處,Y軸正向運動一個探頭直徑的長度,X軸再反向運動到X軸另一側(cè)的限位開關(guān)處,之后Y軸繼續(xù)正向運動一個探頭直徑的長度,如此往復運動直至探頭到達Y軸的限位開關(guān)處,檢測結(jié)束,探頭復位。運動控制軟件流程圖如圖3所示。
3多軸運動控制系統(tǒng)上位機軟件設計
基于以太網(wǎng)的自動超聲檢測多軸運動控制系統(tǒng)的上位機軟件是以LabVIEW開發(fā)平臺為基礎,使用圖形G語言進行編寫的,主要包括多軸運動控制軟件和以太網(wǎng)通信軟件。Lab-VIEW是一款上位機軟件,其主要應用于儀器控制、數(shù)據(jù)采集和數(shù)據(jù)分析等領(lǐng)域,具有良好的人機交互界面[4]。LabVIEW軟件中有專門的UDP通信函數(shù)提供給用戶使用,用戶無需過多考慮網(wǎng)絡的底層實現(xiàn),就可以直接調(diào)用UDP模塊中已經(jīng)的VI來完成通信軟件的編寫,因此編程者不必了解UDP的細節(jié),而采用較少的代碼就可以完成通信任務,以便快速的編寫出具有遠程通信功能的上位機控制軟件[5]。上位機LabVIEW軟件的遠程通信模塊、運動控制模塊以及數(shù)據(jù)處理模塊相互協(xié)調(diào)配合,共同構(gòu)成了超聲檢測多軸運動控制系統(tǒng)的上位機軟件。
3.1運動控制軟件設計
運動控制系統(tǒng)軟件部分主要由運動方式選擇、探頭位置坐標、運動控制等模塊組成,可完成對系統(tǒng)運動方式的選擇,運動參數(shù)、控制指令的設定以及探頭位置信息讀取等工作。運動方式選擇模塊可根據(jù)實際需要完成相對運動或是絕對運動兩種運動方式的選擇,并會依照選擇的既定運動模式將X、Y、Z三軸的相應運動位置坐標輸出在相應顯示欄中,以便進行進一步的參數(shù)核對以及設定;運動控制模塊可依照檢測規(guī)則實現(xiàn)對整個系統(tǒng)運動過程的控制,包括:設定相對原點、運行、復位、以及退出等相關(guān)操作。相對原點設定可以將探頭任意當前位置設為新的原點,并以原點作為下一個運動的起始點,即為探頭位置坐標的相對零點,并將此刻相對原點的絕對位置坐標值在文本框中顯示出來。運動控制系統(tǒng)軟件流程圖如圖4所示。
3.2以太網(wǎng)通信軟件設計
以太網(wǎng)通信模塊采用無連接的UDP通信協(xié)議,通過定義多軸運動控制器與上位機LabVIEW的以太網(wǎng)通信協(xié)議,實現(xiàn)下位機與上位機之間的遠程通信。具體設計如下:首先使用“UDPOpenConnection”打開UDP鏈接,使用“UDPWrite”節(jié)點向服務器端相應的端口發(fā)送命令信息,然后使用“UDPRead”節(jié)點讀取服務器端發(fā)送來的有效回波數(shù)據(jù),用于后期處理,最后應用“UDPCloseConnection”節(jié)點關(guān)閉連接[6]。以太網(wǎng)通信模塊的程序框圖如圖5所示。
4實驗及結(jié)果
實驗平臺由步進電機及其驅(qū)動器、上位機控制軟件和自主研發(fā)的多軸運動控制器構(gòu)成。在上位機的用戶控制界面中,首先輸入以太網(wǎng)的IP地址并選擇運動方式,然后根據(jù)用戶的檢測需求設定運動速度和運動距離,點擊運行后探頭即按所設定運行。探頭運動過程中還可以選擇設定當前位置為原點,探頭即按照新的原點重新開始運動。同時,在探頭運動時會實時顯示探頭當前所在位置坐標。模擬開關(guān)發(fā)送選通超聲探頭信號并發(fā)送脈沖信號激勵超聲探頭發(fā)射超聲波,F(xiàn)PGA控制A/D轉(zhuǎn)換電路對超聲回波信號進行轉(zhuǎn)換,并將數(shù)據(jù)存入雙口RAM,存儲完成后向ARM發(fā)送信號,ARM接收到采集完成信號將數(shù)據(jù)通過以太網(wǎng)向上位機發(fā)送。上位機的LabVIEW用戶控制界面如圖6所示。
5結(jié)束語
系統(tǒng)上電后,風門處于關(guān)閉狀態(tài),系統(tǒng)周期檢測傳感器信號,人車運動過程中會觸發(fā)微波傳感器輸出信號,系統(tǒng)則根據(jù)傳感器信號執(zhí)行開關(guān)風門和風門互鎖。人車接近風門時,兩側(cè)風門的微波傳感器檢測到有效運動速度信號,首先進行信號競爭,根據(jù)競爭結(jié)果開啟某一風門。2個風門入口信號4選1采取競爭方法進行選擇,即微波移動傳感器輸出信號A1、A4、B1、B4處于競爭狀態(tài),一個檢測周期內(nèi),只有一個信號有效。2個風門各2個方向。
(2)控制策略
控制系統(tǒng)風門互鎖的控制要求并不復雜,關(guān)鍵是有效判斷風門區(qū)域人員車輛的狀態(tài),并根據(jù)狀態(tài)進行開閉風門。人員在巷道內(nèi)行進過程是隨意的,系統(tǒng)需要根據(jù)人員在微波傳感器檢測區(qū)域內(nèi)的最終狀態(tài),對人員行進完成狀態(tài)估計。如圖3所示,根據(jù)人員的位置和傳感器有效信號可以把人員行進的狀態(tài)和風門控制策略分成9種,如表1所示。風門控制策略是控制系統(tǒng)的核心,策略制定的優(yōu)劣直接影響著風門控制的可靠性。表1中根據(jù)人員行進的最終位置分為不同的狀態(tài)估計,結(jié)合定時器對人員狀態(tài)進行狀態(tài)估計和制定控制策略。
(3)實現(xiàn)方法
有限狀態(tài)機(FSM)理論是本風門自動控制系統(tǒng)狀態(tài)轉(zhuǎn)換和控制策略的理論基礎。FSM包含有限的狀態(tài),但在任一給定時刻必須而且只能處于其中的一個狀態(tài),系統(tǒng)的狀態(tài)變化受事件的驅(qū)動,事件是系統(tǒng)的活動或外部輸入信號,它受當前狀態(tài)約束。因此,研究有限狀態(tài)機的關(guān)鍵就是在其狀態(tài)空間中找到狀態(tài)轉(zhuǎn)換的軌跡,這要求在每個狀態(tài)下全面分析驅(qū)動狀態(tài)轉(zhuǎn)換的事件(包括系統(tǒng)的活動和輸入信號)和轉(zhuǎn)換的目的地(即轉(zhuǎn)換后的狀態(tài))。每個狀態(tài)都有其特定的輸出(系統(tǒng)的各項功能和性能指標),即系統(tǒng)狀態(tài)轉(zhuǎn)換伴隨著系統(tǒng)的性能指標隨時間的變化。風門自動控制系統(tǒng)的動態(tài)特性就是通過狀態(tài)轉(zhuǎn)換表現(xiàn)出來,巷道風門檢測區(qū)域內(nèi)人員行進過程中的每個有效位置都相當于一個狀態(tài),在任何時刻風門只能處于一個工況狀態(tài),工況間的轉(zhuǎn)換受傳感器信號即事件的驅(qū)動。當傳感器信號滿足進入某一工況的條件時,風門立即進入該工況下運行,一旦外部事件不受該工況下條件的約束時,風門立即離開該工況尋找另一個工況。每個風門區(qū)域可以作為一個對象,該對象有微波傳感器和定時器屬性,屬性取值為開或關(guān)。2個操作開門和關(guān)門。根據(jù)人車通行過程和風門對象屬性值的不同組合,可以把工作流程劃分為5個狀態(tài):初始態(tài),狀態(tài)1,狀態(tài)2,狀態(tài)3,狀態(tài)4。用統(tǒng)一建模語言中的狀態(tài)機視圖表達,如圖4所示。圖門狀態(tài)轉(zhuǎn)移示意圖該視圖中對不同區(qū)域設置不同傳感器配合定時器對人車運動狀態(tài)進行分類。從初始狀態(tài)開始,當人車運動速度滿足最低傳感器1閾值接近區(qū)域入口時,風門開啟,進入狀態(tài)1,此時開啟定時器1;若在定時時間到后區(qū)域檢測不到信號則判斷為人車退出風門區(qū)域,返回初始狀態(tài);若傳感器2信號有效則進入狀態(tài)2,同時開啟定時器2,此時判斷人車進入風門,人車的行走不會影響狀態(tài)的改變,直到傳感器3信號有效。狀態(tài)2和狀態(tài)3的人員已經(jīng)進入風門,系統(tǒng)處于等待人車通過風門區(qū)域。傳感器4有效時進入狀態(tài)4,此時人車前端已經(jīng)通過風門,系統(tǒng)等待其他部分通過風門區(qū)域。此時如果傳感器沒有信號則進行短暫延時后關(guān)閉風門。下一步就是根據(jù)狀態(tài)機視圖為PLC編寫梯形圖程序了。程序中使用了置位指令SET和復位指令RSET進行狀態(tài)的切換,有些型號的PLC沒有提供置位和復位指令,但都有實現(xiàn)置位和復位指令功能的變通方法,可以根據(jù)常開常閉寄存器切換,因此利用該狀態(tài)機視圖編程序具有很好的通用性。
(4)結(jié)語
車速傳感器可以發(fā)出一定占空比的方波信號,設計采用單片機的脈沖模塊來捕捉可以用來測量信號的周期。車速采集的程序流程如圖2所示。步進電機的轉(zhuǎn)動不但代表汽車的行駛速度,還代表節(jié)氣門的開度,每轉(zhuǎn)動一定角度就相當于節(jié)氣門的開度。因此,當輸入的實際車速A等于目標車速B時,步進電機將不轉(zhuǎn)動;當輸入的實際車速A大于目標車速B時,步進電機會反轉(zhuǎn),減小節(jié)氣門開度,從而使實際車速降低至目標車速;當輸入的實際車速A小于目標車速B時,步進電機會正轉(zhuǎn),加大節(jié)氣門開度,使實際車速升高至目標車速,汽車進入定速巡航控制。
2軟件可靠性措施
為了提高軟件系統(tǒng)的穩(wěn)定性和可靠性,采取以下措施:(1)封鎖。實際系統(tǒng)中最強的干擾來自自身,如被控的負載電機的通斷、狀態(tài)的變化等,在設計軟件時應適當采取措施避開這些干擾。如:當系統(tǒng)要斷開或接通大功率負載時應暫停數(shù)據(jù)采集,等到干擾過去后再繼續(xù)進行;在適當?shù)牡胤椒怄i一些中斷源;幾個通道互相封鎖。這些都是避免或減少干擾的有效方法。(2)程序的失控保護措施。在控制系統(tǒng)中,一般情況下干擾都不會造成計算機系統(tǒng)硬件損壞,但會對軟件的運行環(huán)境造成不良影響。表現(xiàn)在:數(shù)據(jù)碼和指令碼的一些位受到干擾而出現(xiàn)跳變,使程序出現(xiàn)錯誤,最典型的是程序計數(shù)器發(fā)生跳變,可能把數(shù)據(jù)當作指令碼。這種程序盲目執(zhí)行的結(jié)果,一方面造成RAM存儲器的數(shù)據(jù)破壞,另一方面可能會進入死循環(huán),使整個系統(tǒng)失效。因此,應采取有效措施避免程序失控。
3Proteus仿真驗證
3.1定速巡航控制系統(tǒng)總體仿真電路設計
設計中定速巡航控制系統(tǒng)的主要參數(shù)是車速值及節(jié)氣門開度,因為進行實物測試有設備要求,設備比較復雜,而且測試結(jié)果不夠直觀,所以設計最終結(jié)果通過Proteus仿真來實現(xiàn)。仿真電路如圖3所示。Proteus軟件的元件庫中擁有AT89C52單片機、ULN2003驅(qū)動芯片、步進電機等元件,可滿足設計研究仿真需要。Proteus軟件中的車速采集信號可通過改變脈沖而改變車速,電動機的轉(zhuǎn)速可直觀地顯示出來,還可體現(xiàn)節(jié)氣門開度的大小。
3.2試驗結(jié)果與分析
在Proteus仿真平臺上分別對4種情況進行仿真,即實際車速A等于目標車速B、實際車速A大于目標車速B、實際車速A小于目標車速B及實際車速大于120km/h、小于40km/h,仿真結(jié)果分別如圖4~7所示。從圖4~7可看出:當輸入的實際車速A等于目標車速B時,步進電機不轉(zhuǎn)動;當實際車速A大于目標車速B時,步進電動機反轉(zhuǎn),節(jié)氣門開度減小;當實際車速A小于目標車速B時,步進電動機正轉(zhuǎn),節(jié)氣門開度加大;當實際車速A超過120km/h、低于40km/h(即脈沖頻率低于100Hz、高于999Hz)時,巡航控制系統(tǒng)會自動退出,步進電機不轉(zhuǎn)動。表明所設計的軟件能實現(xiàn)簡單的巡航控制系統(tǒng)指令,滿足預定要求。
4結(jié)語