時間:2023-03-14 15:15:21
序論:在您撰寫控制軟件設計論文時,參考他人的優秀作品可以開闊視野,小編為您整理的7篇范文,希望這些建議能夠激發您的創作熱情,引導您走向新的創作高度。
1553B通信節點與各個傳感器采用主從式通信模式進行通信。通過將1553B通信節點配置為BC(總線控制器),傳感器節點配置為RT(遠程終端)。所有傳感器節點需使用不同的1553B地址,并將其作為通信集群中節點的唯一ID。如表1所示為不同傳感器1553B地址分配。飛行控制計算機外部1553B傳感器由慣導傳感器、大氣數據機傳感器和無線電高度傳感器組成,樣例飛行控制計算機各傳感器數據流量如表2所示。BU-61580內部具有4k字的共享靜態RAM,與主機交互具有很強的操作靈活性。BU-61580的存儲數據的基本單元為消息塊(MessageBlock),每個消息塊大小為38字[6]。其中數據字包含的最大數據量為32字,故一次可傳輸的最大數據量為32。本系統中,無線電高度傳感器與大氣數據機傳感器的數據幀長度均小于32字節,可通過一次數據傳輸完成數據通信。而慣導傳感器的數據幀長度為54個字節,超過了一次傳輸數據的最大字節數,為保證數據完整性,不破壞每個字節數據內容,本設計采用數據幀拆分的方式。通過將數據幀拆分,使每個數據塊長度均小于32字節,然后通過BC與RT的兩次數據通信完成整個慣導傳感器數據幀的傳輸。慣導傳感器數據格式如表3所示。2.31553B通信時間調度設計由表1可知,飛行控制計算機各個傳感器的更新頻率并非完全一致,速率最高為100Hz,最低為50Hz。針對BC與多個RT進行數據通信,BU-61580采用大周期和小周期協同的方案來實現多個傳輸速率的通信。由于本系統頻率最高為100Hz,最低頻率為50Hz,故將通信大周期選擇為20ms,將小周期選擇為10ms。如圖3所示為BC與傳感器RT1~RT3的大周期通信順序圖,每個大周期內,慣導傳感器和無線電高度傳感器與BC通信一次,而大氣數據機傳感器與BC通信兩次。圖3中,為平衡數據流量及小周期通信數量,本設計將慣導傳感器和無線電高度傳感器分別位于兩個小周期中,使兩個小周期的數據流量平衡,實現兩個小周期的通道資源充分利用。
2、FlexRay總線時間調度
根據樣例飛行控制計算機的內部總線FlexRay通信協議可知,內部總線通信時間為5ms,每個時隙為50μs,FlexRay總線最大幀長為127字[7]。本設計中1553B幀長度最大為54個字節,頻率最高為100Hz,故使用上述FlexRay總線通信協議能夠符合1553B總線通信要求。本設計中,1553B傳感器數據的頻率為50Hz和100Hz,而FlexRay總線通信頻率為200Hz,內部總線通信速率高于外部傳感器速率。故1553B板卡在內部總線通信過程中,當有傳感器數據更新時,FlexRay總線傳輸最新的數據;而當沒有數據更新時,FlexRay總線傳輸當前的傳感器數據。為保證數據的完整性及減少占用總線時隙數量,本設計共使用總線三個時隙,每個時隙具體傳輸內容如表4所示,時隙2、7、15傳輸內容分別為慣導傳感器無線電高度傳感器和大氣數據機的數據,數據幀大小分別為54字節、32字節、12字節。
3、1553B通信單元軟件設計
3.1驅動軟件的IP核封裝與實現
在嵌入式FPGAEDK設計中,為了簡化用戶開發難度,Xilinx公司提供了一個封裝了的接口,即IPIF(IPinterface,IP接口)作為介于PLB總線與用戶邏輯模塊之間的接口緩沖[8]。IPIF將PLB總線操作封裝起來,而留給用戶一個邏輯接口。本文軟件設計采用模塊化設計思想。其設計步驟如下:首先,將每個硬件模塊對應編寫一個驅動軟件程序;其次,將相應驅動軟件封裝成通用IP核;最后,將IP核掛載到PowerPC內部總線PLB上。模塊之間的通信主要通過PLB總線和OPB總線實現,系統中各模塊通過這兩種總線連接至PowerPC內核上,而PowerPC通過內部總線讀寫機制實現對各個模塊的讀寫與控制。如圖4所示為1553B通信單元的硬件平臺總體架構圖,主要由PowerPC內核、1553BIP核、FlexRay總線對應GPIOIP核集合、串口IP核、BRAM模塊IP核及相應的中斷控制IP核組成。
3.21553B總線接口驅動軟件設計
如圖5所示為1553B總線接口IP核結構圖,整個驅動分為三個模塊:總線讀寫模塊,初始化模塊和數據緩存模塊。系統上電,該IP核激活,進行總線初始化操作,發送初始化完成信號并查詢PLB讀寫信號,等待PowerPC405的讀寫操作。當讀控制信號使能時,PowerPC405讀取數據緩沖區中的數據;當寫控制信號使能時,總線讀寫模塊將數據緩沖區中的數據發送至總線上。
3.31553B通信算法設計
1553B通信單元的調度主要由外部1553B總線的數據接收,內部FlexRay總線的數據通信組成。本設計采用模塊化設計,將系統功能劃分為頂層應用和底層數據通信。底層數據通信主要包括外部數據流通信及內部數據流通信,外部數據流通信主要由1553BIP核實現,內部總線也由FlexRay驅動程序實現數據通信;而內核PowerPC主要實現頂層應用,即數據調度及總線故障切換功能的實現。如圖6所示為節點通信程序流程圖,系統上電后,首先對FlexRay總線及1553B總線節點進行相應的初始化,進而查詢1553B對應FIFO滿輸出引腳,當接收到數據時,節點讀取FIFO內容,并寫入相應的總線發送緩沖區中。進而查詢MFR4310的中斷引腳信號,當發送中斷有效時,執行發送中斷子程序,將接收到1553B總線數據通過1553B總線發送出去;當接收中斷有效時,執行接收中斷子程序,通信節點接收CPU發送來的控制信號。系統完成數據調度后,進而進行總線故障檢測。由于1553B總線的基本周期為10ms,故本設計中總線檢測周期為10ms。當定時器的10ms定時時間到,總線進行一次總線檢測。當接收到總線切換指令,通信單元進行總線切換,并更新總線狀態;進而判斷是否接受到傳感器的1553B總線應答信號,如果有,將總線故障計數清零,倘若沒有,將故障計數加1,當故障計數大于6,進行總線切換,并更新總線狀態。
4、總線網絡通信測試與結果分析
(1)FlexRay總線測試結果將FlexRay通信周期設置為5ms,靜態時隙長度為50μs,將CPU板卡與1553B板卡進行通信實驗,從總線上讀出輸出波形。FlexRay總線通信時,在總線上截取的波形如圖7所示,從圖中可以看出通信周期為5ms,與預設值一致。如圖8所示為一個周期時隙輸出波形,時隙2、7、15傳輸傳感器數據。由圖8可知,時隙2與時隙7相差250μs,時隙7與時隙15相差350μs,與預設值一致。FlexRay總線通信6小時,進而進行連續總線數據傳輸測試,經過6個小時的總線測試結果如表5所示,通信過程中,丟幀、錯幀計數均為0,表明1553B通信單元FlexRay總線設計正確,可以滿足飛行控制計算機通信的基本要求。(2)1553B總線測試結果由前面可知,1553B數據通信周期為10ms,即100Hz。如圖9~12分別為1553B通信單元與CPU單元模擬大氣數據機傳感器數據幀發送數據8字節,進行通信2小時、4小時、6小時、10小時的通信仿真圖。其通信幀數分別為719999,1439998,2160023,3599991。期間在2小時~4小時,4小時~6小時,6小時~10小時通信期間,丟幀數分別為1,1,0,合計丟幀率約為5.56×10-7,符合飛行控制計算機通信要求。(3)測試結論以上實驗結果表明,1553B通信單元的各個模塊通信正常,與飛行控制計算機CPU板卡通信正常,能夠符合飛行控制計算機的通信要求。
5、結束語
本文設計的基于以太網的超聲檢測多軸運動控制系統是在復雜的多軸運動控制技術之上結合了遠程通信技術,以此來實現超聲檢測的遠程自動控制。此系統主要由上位機、多軸運動控制器、步進電機驅動器、步進電機、機械執行裝置、限位開關和超聲探頭等組成,其組成框圖如圖1所示。由上位機LabVIEW控制系統為多軸運動控制器發送運動指令,并由多軸運動控制器將運動信號拆分為步進信號和方向信號,再將這兩種電機控制信號發送給步進電機驅動器,步進電機驅動器將其轉化為角位移發送給步進電機,使步進電機轉動相應個步距角,以達到使步進電機按指令運動的目的。步進電機上安裝有機械執行裝置,用以固定超聲探頭,機械執行裝置上安有限位開關,以此控制電機的運動范圍,當電機運動到限位開關的位置時,限位開關發出限位信號到多軸運動控制器,運動控制器便停止發出使電機運動的脈沖信號。在進行自動超聲檢測時,Z軸方向機械執行機構上固定的超聲檢測探頭能夠在被檢測物體的表面按照上位機運動控制算法設計的運動軌跡進行連續檢測,并實時向PC機返回探頭的位置信息,并將數據采集卡采集的超聲信號與探頭返回的位置信息建立起對應關系,最終通過上位機的圖像處理系統形成超聲檢測圖像,以此來實現物體的超聲檢測。
2多軸運動控制器的方案設計
多軸運動控制器可以通過遠程以太網通信的方式接收上位機的控制信號,向步進電機驅動器發送脈沖信號和方向信號以完成對電機的運動控制。采用ARM9處理器S3C2440搭建硬件平臺,配有DM9000A以太網通信芯片使硬件平臺具備遠程通信的功能。在Linux操作平臺上進行控制系統軟件功能設計,并采用UDP通信協議實現上位機與運動控制器之間的遠程通信[3]。
2.1多軸運動控制器硬件電路設計
本文采用ARM9處理器S3C2440設計了系統中運動控制器的硬件電路部分,并采用DM9000A網絡接口控制器設計了運動控制器的以太網接口。運動控制器硬件整體框圖如圖2所示。運動控制器選用ARM9處理器作為運動控制器的核心芯片可以方便地嵌套Linux操作系統,在操作系統之上實現運動控制器的插補等多軸運動控制算法。選用DM9000A以太網控制芯片實現上位機LabVIEW與運動控制器之間的遠程通信,進而實現超聲檢測的遠程自動控制。為了解決步進電機驅動器與主控芯片信號匹配的問題,本文采用光耦器件設計了電壓轉換模塊,負責把主控芯片輸出的3.3V電壓信號轉換至5V電壓信號后輸入到步進電機驅動器中,同時負責把限位開關發出的24V限位信號轉換至3.3V輸入到主控芯片中。此外,電路中還搭載了用于存儲數據的擴展存儲器、以及用于調試的JTAG接口電路和RS232串口電路。
2.2多軸運動控制器軟件設計
本課題所用的限位開關為位置可調的限位開關,每個軸有2個限位開關,在每次超聲檢測前,把每個限位開關調節到被測工件的邊緣處,從而使探頭移動的范圍即為工件所在范圍。故此設計運動控制器的軟件時便可將限位開關做為邊界條件,以此來設計探頭的運動范圍。其運動控制流程:首先系統初始化,通過上微機控制界面人工控制探頭到被測工件的起點,然后X軸正向運動到X軸限位開關處,Y軸正向運動一個探頭直徑的長度,X軸再反向運動到X軸另一側的限位開關處,之后Y軸繼續正向運動一個探頭直徑的長度,如此往復運動直至探頭到達Y軸的限位開關處,檢測結束,探頭復位。運動控制軟件流程圖如圖3所示。
3多軸運動控制系統上位機軟件設計
基于以太網的自動超聲檢測多軸運動控制系統的上位機軟件是以LabVIEW開發平臺為基礎,使用圖形G語言進行編寫的,主要包括多軸運動控制軟件和以太網通信軟件。Lab-VIEW是一款上位機軟件,其主要應用于儀器控制、數據采集和數據分析等領域,具有良好的人機交互界面[4]。LabVIEW軟件中有專門的UDP通信函數提供給用戶使用,用戶無需過多考慮網絡的底層實現,就可以直接調用UDP模塊中已經的VI來完成通信軟件的編寫,因此編程者不必了解UDP的細節,而采用較少的代碼就可以完成通信任務,以便快速的編寫出具有遠程通信功能的上位機控制軟件[5]。上位機LabVIEW軟件的遠程通信模塊、運動控制模塊以及數據處理模塊相互協調配合,共同構成了超聲檢測多軸運動控制系統的上位機軟件。
3.1運動控制軟件設計
運動控制系統軟件部分主要由運動方式選擇、探頭位置坐標、運動控制等模塊組成,可完成對系統運動方式的選擇,運動參數、控制指令的設定以及探頭位置信息讀取等工作。運動方式選擇模塊可根據實際需要完成相對運動或是絕對運動兩種運動方式的選擇,并會依照選擇的既定運動模式將X、Y、Z三軸的相應運動位置坐標輸出在相應顯示欄中,以便進行進一步的參數核對以及設定;運動控制模塊可依照檢測規則實現對整個系統運動過程的控制,包括:設定相對原點、運行、復位、以及退出等相關操作。相對原點設定可以將探頭任意當前位置設為新的原點,并以原點作為下一個運動的起始點,即為探頭位置坐標的相對零點,并將此刻相對原點的絕對位置坐標值在文本框中顯示出來。運動控制系統軟件流程圖如圖4所示。
3.2以太網通信軟件設計
以太網通信模塊采用無連接的UDP通信協議,通過定義多軸運動控制器與上位機LabVIEW的以太網通信協議,實現下位機與上位機之間的遠程通信。具體設計如下:首先使用“UDPOpenConnection”打開UDP鏈接,使用“UDPWrite”節點向服務器端相應的端口發送命令信息,然后使用“UDPRead”節點讀取服務器端發送來的有效回波數據,用于后期處理,最后應用“UDPCloseConnection”節點關閉連接[6]。以太網通信模塊的程序框圖如圖5所示。
4實驗及結果
實驗平臺由步進電機及其驅動器、上位機控制軟件和自主研發的多軸運動控制器構成。在上位機的用戶控制界面中,首先輸入以太網的IP地址并選擇運動方式,然后根據用戶的檢測需求設定運動速度和運動距離,點擊運行后探頭即按所設定運行。探頭運動過程中還可以選擇設定當前位置為原點,探頭即按照新的原點重新開始運動。同時,在探頭運動時會實時顯示探頭當前所在位置坐標。模擬開關發送選通超聲探頭信號并發送脈沖信號激勵超聲探頭發射超聲波,FPGA控制A/D轉換電路對超聲回波信號進行轉換,并將數據存入雙口RAM,存儲完成后向ARM發送信號,ARM接收到采集完成信號將數據通過以太網向上位機發送。上位機的LabVIEW用戶控制界面如圖6所示。
5結束語
系統上電后,風門處于關閉狀態,系統周期檢測傳感器信號,人車運動過程中會觸發微波傳感器輸出信號,系統則根據傳感器信號執行開關風門和風門互鎖。人車接近風門時,兩側風門的微波傳感器檢測到有效運動速度信號,首先進行信號競爭,根據競爭結果開啟某一風門。2個風門入口信號4選1采取競爭方法進行選擇,即微波移動傳感器輸出信號A1、A4、B1、B4處于競爭狀態,一個檢測周期內,只有一個信號有效。2個風門各2個方向。
(2)控制策略
控制系統風門互鎖的控制要求并不復雜,關鍵是有效判斷風門區域人員車輛的狀態,并根據狀態進行開閉風門。人員在巷道內行進過程是隨意的,系統需要根據人員在微波傳感器檢測區域內的最終狀態,對人員行進完成狀態估計。如圖3所示,根據人員的位置和傳感器有效信號可以把人員行進的狀態和風門控制策略分成9種,如表1所示。風門控制策略是控制系統的核心,策略制定的優劣直接影響著風門控制的可靠性。表1中根據人員行進的最終位置分為不同的狀態估計,結合定時器對人員狀態進行狀態估計和制定控制策略。
(3)實現方法
有限狀態機(FSM)理論是本風門自動控制系統狀態轉換和控制策略的理論基礎。FSM包含有限的狀態,但在任一給定時刻必須而且只能處于其中的一個狀態,系統的狀態變化受事件的驅動,事件是系統的活動或外部輸入信號,它受當前狀態約束。因此,研究有限狀態機的關鍵就是在其狀態空間中找到狀態轉換的軌跡,這要求在每個狀態下全面分析驅動狀態轉換的事件(包括系統的活動和輸入信號)和轉換的目的地(即轉換后的狀態)。每個狀態都有其特定的輸出(系統的各項功能和性能指標),即系統狀態轉換伴隨著系統的性能指標隨時間的變化。風門自動控制系統的動態特性就是通過狀態轉換表現出來,巷道風門檢測區域內人員行進過程中的每個有效位置都相當于一個狀態,在任何時刻風門只能處于一個工況狀態,工況間的轉換受傳感器信號即事件的驅動。當傳感器信號滿足進入某一工況的條件時,風門立即進入該工況下運行,一旦外部事件不受該工況下條件的約束時,風門立即離開該工況尋找另一個工況。每個風門區域可以作為一個對象,該對象有微波傳感器和定時器屬性,屬性取值為開或關。2個操作開門和關門。根據人車通行過程和風門對象屬性值的不同組合,可以把工作流程劃分為5個狀態:初始態,狀態1,狀態2,狀態3,狀態4。用統一建模語言中的狀態機視圖表達,如圖4所示。圖門狀態轉移示意圖該視圖中對不同區域設置不同傳感器配合定時器對人車運動狀態進行分類。從初始狀態開始,當人車運動速度滿足最低傳感器1閾值接近區域入口時,風門開啟,進入狀態1,此時開啟定時器1;若在定時時間到后區域檢測不到信號則判斷為人車退出風門區域,返回初始狀態;若傳感器2信號有效則進入狀態2,同時開啟定時器2,此時判斷人車進入風門,人車的行走不會影響狀態的改變,直到傳感器3信號有效。狀態2和狀態3的人員已經進入風門,系統處于等待人車通過風門區域。傳感器4有效時進入狀態4,此時人車前端已經通過風門,系統等待其他部分通過風門區域。此時如果傳感器沒有信號則進行短暫延時后關閉風門。下一步就是根據狀態機視圖為PLC編寫梯形圖程序了。程序中使用了置位指令SET和復位指令RSET進行狀態的切換,有些型號的PLC沒有提供置位和復位指令,但都有實現置位和復位指令功能的變通方法,可以根據常開常閉寄存器切換,因此利用該狀態機視圖編程序具有很好的通用性。
(4)結語
車速傳感器可以發出一定占空比的方波信號,設計采用單片機的脈沖模塊來捕捉可以用來測量信號的周期。車速采集的程序流程如圖2所示。步進電機的轉動不但代表汽車的行駛速度,還代表節氣門的開度,每轉動一定角度就相當于節氣門的開度。因此,當輸入的實際車速A等于目標車速B時,步進電機將不轉動;當輸入的實際車速A大于目標車速B時,步進電機會反轉,減小節氣門開度,從而使實際車速降低至目標車速;當輸入的實際車速A小于目標車速B時,步進電機會正轉,加大節氣門開度,使實際車速升高至目標車速,汽車進入定速巡航控制。
2軟件可靠性措施
為了提高軟件系統的穩定性和可靠性,采取以下措施:(1)封鎖。實際系統中最強的干擾來自自身,如被控的負載電機的通斷、狀態的變化等,在設計軟件時應適當采取措施避開這些干擾。如:當系統要斷開或接通大功率負載時應暫停數據采集,等到干擾過去后再繼續進行;在適當的地方封鎖一些中斷源;幾個通道互相封鎖。這些都是避免或減少干擾的有效方法。(2)程序的失控保護措施。在控制系統中,一般情況下干擾都不會造成計算機系統硬件損壞,但會對軟件的運行環境造成不良影響。表現在:數據碼和指令碼的一些位受到干擾而出現跳變,使程序出現錯誤,最典型的是程序計數器發生跳變,可能把數據當作指令碼。這種程序盲目執行的結果,一方面造成RAM存儲器的數據破壞,另一方面可能會進入死循環,使整個系統失效。因此,應采取有效措施避免程序失控。
3Proteus仿真驗證
3.1定速巡航控制系統總體仿真電路設計
設計中定速巡航控制系統的主要參數是車速值及節氣門開度,因為進行實物測試有設備要求,設備比較復雜,而且測試結果不夠直觀,所以設計最終結果通過Proteus仿真來實現。仿真電路如圖3所示。Proteus軟件的元件庫中擁有AT89C52單片機、ULN2003驅動芯片、步進電機等元件,可滿足設計研究仿真需要。Proteus軟件中的車速采集信號可通過改變脈沖而改變車速,電動機的轉速可直觀地顯示出來,還可體現節氣門開度的大小。
3.2試驗結果與分析
在Proteus仿真平臺上分別對4種情況進行仿真,即實際車速A等于目標車速B、實際車速A大于目標車速B、實際車速A小于目標車速B及實際車速大于120km/h、小于40km/h,仿真結果分別如圖4~7所示。從圖4~7可看出:當輸入的實際車速A等于目標車速B時,步進電機不轉動;當實際車速A大于目標車速B時,步進電動機反轉,節氣門開度減?。划攲嶋H車速A小于目標車速B時,步進電動機正轉,節氣門開度加大;當實際車速A超過120km/h、低于40km/h(即脈沖頻率低于100Hz、高于999Hz)時,巡航控制系統會自動退出,步進電機不轉動。表明所設計的軟件能實現簡單的巡航控制系統指令,滿足預定要求。
4結語
軟件的功能劃分為4類:變電站管理、裝置程序維護、在線瀏覽操作、一鍵歸檔分析功能。定義上位機調試軟件為控制方向,裝置側服務器程序為監視方向。
1、1變電站管理
變電站管理功能按照不同電壓等級、間隔名稱,分層次多級目錄管理若干裝置??尚陆ā⒋蜷_和關閉變電站工程;支持在人機界面中輸入裝置地址發起連接請求創建裝置;支持裝置重命名、排序、復制、粘帖和導入導出等操作。以層次樹的資源管理器方式展示變電站結構。裝置分離線和在線兩種狀態,離線模式下可進行數據分析、離線定值設置、主畫面編輯等操作,在線模式下可進行程序維護、狀態瀏覽、數據歸檔收集等操作。
1、2裝置程序維護保護測控裝置調試軟件設計與實現上傳配置文件、日志文件等文本??刂品较掳l需要上裝的文件名,監視方打開文件,并分段上傳數據,到達文件尾部后給出結束幀標記,控制方將數據存儲到文件。上裝是下載的反向過程。在程序運行調試過程中,往往需要通過調試相關變量進行狀態診斷。在調試上位機程序時,可以使用IDE或gdb等進入調試狀態,設置斷點并查看變量值。嵌入式裝置在運行狀態下,監視相關變量時不能隨意切換到調試狀態,而是將調試變量作為一個實時響應的處理線程。通過調試變量協議,控制方下發需要調試的變量名,裝置側獲取相關變量的地址信息和類型后,訪問變量地址,讀取數據,周期上送變量值,控制方顯示實際值。調試變量的關鍵步驟是獲取變量的地址,全局變量可以通過分析編譯器形成的map文件獲取,對于動態分配的內存,則需通過輔助手段實現。為此制定相關嵌入式程序編程規范,用結構體元件來封裝各功能模塊數據。元件結構體的內存是動態分配的,編譯器在編譯時沒有為其分配靜態地址,map文件里沒有這些變量的地址信息。需要在裝置啟動階段才能得到變量地址。對于動態分配內存的結構體變量,裝置側提供注冊接口,可記錄首地址。調試軟件根據輸入的元件結構體類型名、成員變量名、文件存放路徑和CPU字節對齊等信息,對相關的文件進行詞法分析和語法分析,進行宏表達式求值,計算出變量在結構體中的偏移量,并下發相對偏移信息。裝置側程序由結構體首地址+變量的相對偏移地址得到變量的真正地址。調試人員只需輸入層次實例名,不需手工計算變量地址,調試軟件在計算相對地址時已考慮了各種CPU的字長對齊設置。調試變量的流程如圖3所示??赏ㄟ^查詢內存的功能實現一次查看連續區域內存數據。控制方可下發查詢起始絕對地址,監視方一次回復若干個字節的內存數據。也支持通過下發變量名的方式查詢內存。
1、3在線瀏覽操作在線瀏覽的通信協議基于繼電保護國際標準規約IEC60870-5-103協議[6],可以實現不同廠家的設備、后臺的交互通信,減少了私有協議轉換過程,方便運行管理和維護。其協議結構如圖4所示。類結構圖如圖5所示。在線瀏覽操作功能包括:裝置模擬量開關量實時顯示、裝置定值整定和比較、可編程邏輯編輯和狀態顯示、事件查看、動作報告顯示、波形文件上傳和分析、HMI遙控模擬、信號復歸等。通過在線瀏覽模塊,可實時顯示裝置的狀態數據、參看監視報文、分析跳閘邏輯、查看并設置定值、開關分合遙控等操作。其中涉及到遙控、定值整定、報告清除等關鍵操作,需要輸入用戶名和密碼,進行權限校驗。以定值設置整定為例,其報文交互流程如圖6所示。
1、4一鍵歸檔分析通過一鍵歸檔操作,批量上裝日志文件、配置文件等文件,自動截取裝置當前的斷面數據(包括裝置模擬量、狀態量、定值、報告、用于問題診斷的特定變量等內容),將各分立文件壓縮存儲為一個數據包。當現場運行的裝置出現異?;蛱l動作時,通過一鍵歸檔,可自動打包相關數據,并以郵件方式發送到指定郵箱,裝置研發人員可離線打開查看分析。
2軟件風格設計
2、1基于軟件管家模式由于軟件功能復雜,采用了模塊化設計思想,進行分層、分模塊設計,以去除界面、數據、接口之間具體耦合,方便擴充。調試軟件由引導主進程和按照功能劃分的子進程組成。如圖7所示,引導主進程是安裝軟件的啟動程序,提供變電站資源管理器功能,在左側樹形區域點擊裝置節點時,會在右側按照模塊劃分,分類顯示相關功能。點擊功能圖標,傳入形參,啟動獨立的子進程。通過組件化的設計思路,可確保增加一個新的模塊時,不會影響已經穩定的模塊?;谧舆M程的軟件管家模式,也減少了人機界面的操作復雜度,用戶在一個時間段內只需專注于單一圖4在線瀏覽報文協議結構圖5在線狀態瀏覽類結構圖圖3調試變量流程圖2《工業控制計算機》2014年第27卷第11期的功能,并可快捷地切換到另一個功能的操作界面。
2、2類瀏覽器界面風格當各個子進程啟動后,為避免頂層窗體過多,采用類似Chrome的界面風格,用標簽頁管理子進程的界面。對各子進程的界面、顏色進行了統一設計,基于QT-CSS技術,設計了統一的界面風格庫,并提供風格設置接口,可設置標簽頁QTabWid-get、層次樹QListTreeWidget、??繖赒DockWidget等控件的邊框、縮進、標題、字體、顏色等內容。類瀏覽器的界面規范使不同人員開發的子進程在風格上高度統一。
3軟件分層設計
除按照主進程-子進程的模塊化設計外,單個通信子進程按照分層原則設計,共分為三層,最底層為數據收發層,中間層為數據處理層,最上層為展示層。如圖8所示:圖8軟件分層結構數據收發層的功能是負責從裝置接收報文并將數據處理層的報文發送到裝置。針對不同類型的裝置,該層需要支持串口通信、以太網鏈路層通信與以太網傳輸層通信三種通信方式。同時為了保證通信狀態的可靠性,數據收發層還支持出錯重傳及超時重傳機制。其中網絡通信采用ACE中間件實現,串口通信采用Qt的QExtSearialPort實現。數據處理層是整個系統的主體部分,主要負責報文解析,報文生成,提供接口供展示層調用,實現了業務與操作接口的分離。展示層提供數據的展示與用戶交互功能,不涉及具體的業務流程處理。針對不同的數據,展示層提供二維表格、層次樹等不同的展示方式,采用Qt的Model-View模式,可高效快速顯示刷新數據。展示層還提供個性化的右鍵菜單、按鈕與工具欄。當用戶點擊某個菜單或按鈕時,展示層會調用數據處理層的對應接口,對用戶的操作進行處理。
4結果
實現與分析軟件主界面如圖9所示:左側為資源管理器,用來管理變電站,變電站下支持新建多個裝置。右側為工作區,用來展示當前活動裝置支持的功能。圖9軟件主界面點擊工作區某個功能按鈕,主進程將啟動相應的子進程。以在線瀏覽功能為例,圖10所示為裝置報告查看界面。
5結束語
關鍵詞:以太網;燃機模塊;電子控制系統;軟件設計
引言
隨著燃氣輪機在工業現場的廣泛使用,對控制性能的要求越來越高,其控制系統也迅速從液壓機械式控制器發展為模擬式電子控制系統,進而發展成數字電子控制系統。到20世紀90年代,燃氣輪機開始全面配置數字電子控制系統。近年來,國外燃氣輪機的數字電子控制系統已經實現了標準化、系列化,實現了模塊化,并配置了菜單式的開發軟件。模塊化控制系統中通信總線是系統內部數據交換的橋梁,總線的可靠性是系統可靠性的保障,總線速度也直接影響到整個控制器的性能,因此必須選擇實時、可靠的通信總線。MIL-STD-1553B、ARINC-429等傳統的現場總線可靠性高、使用靈活,工程上已經得到了廣泛應用,但卻遭受速度瓶頸。工業實時以太網技術具有速度快、實時性好、可靠性高等特點,它的發展使工業控制在通用化、模塊化、數據交換等方面都面臨新的技術革命,特別適用于分布式控制系統設計。EtherCAT是由德國Beckhoff公司開發。采用以太網幀,以特定環狀拓撲發送數據的技術,擁有杰出的通訊性能,接線簡單,并對其它協議開放。
1.總體方案
1.1燃機模塊式電子控制系統方案
系統的控制對象是某型艦用中檔功率系列燃氣輪機,控制系統采用開放性的模塊結構。電子控制器采用標準化、系列化的模塊設計,各模塊間采用最新的工業實時以太網Ethercat連接,控制軟件設計成可選擇、可配置的標準模塊和接口,液壓執行機構設計成通用的模塊化的部件和組件。這就使整個控制系統的設計變為功能模塊的選擇、匹配和調整——根據燃機控制系統的信號數量和接口類型選擇合適的硬件模塊,根據特定控制規律和控制系統要求選擇、配置相應的軟件模塊,根據燃油和導葉的控制要求選擇合適液壓執行機構。采用的是成熟的模塊使各模塊功能、性能都有了保證,各部件僅需要進行部分調整就能滿足要求,既縮短研發周期,又提高系統的可靠性,同時也便于今后實現性能改進和功能擴展。
1.2燃機控制系統組成
燃機控制系統包括綜合電子控制柜、系統軟件、液壓執行機構、電氣系統等。液壓機械裝置采用模塊化設計方法,包括高壓燃油泵、燃油計量裝置、導葉調節裝置等。各模塊可根據具體燃機要求配合使用。電子硬件通用模塊包括:電子控制器模塊、獨立保護模塊。系統軟件包含控制軟件和應用軟件??刂葡到y接收來自控制室或監控臺的控制信號,對燃氣輪機的起動、加速、減速、穩態工況運行以及停車和重要參數限制實施全面的自動控制和安全保護,能實現對燃機輔助系統的監測和控制,能實現對燃機的故障診斷和重要參數的記錄、存貯和通訊。
2.控制軟件設計
2.1電子控制器方案介紹
電子控制器由主CPU模塊與AD模塊、DA模塊、FI模塊、IO模塊等低級模塊組成,各模塊自帶CPU處理器,模塊之間通過工業以太網連接,控制系統采用基于網絡通訊技術模塊化設計,控制器的各種功能模塊之間用實時以太網進行連接,完成數據交互。各模塊可以集中在一起也可以分散到燃機的各部分,通過工業總線實現實時信息交流和控制。
2.2控制軟件分層設計
控制軟件包含CPU模塊的控制應用軟件、其它通用模塊底層軟件組成。底層軟件與模塊一一對應。模塊的底層軟件主要是實現通用模塊采集、輸出或信息交互功能,并與其它模塊通訊,傳遞和接受信息,實現控制系統功能。CPU模塊的控制應用軟件通過與底層軟件,根據模塊的特點進行功能的初始選擇和配置。初步設計的控制軟件層次結構如圖1所示,該層次結構適用于主CPU模塊與所有低級功能模塊。由于低級功能模塊的任務都比較簡單,所以并無必要采用實時內核,主CPU模塊也需根據實際情況決定采用傳統的順序結構還是基于實時內核的并行結構。同一功能的器件在驅動程序層向頂層提供一致的接口,在這一層次中需要制定對器件讀、寫、模式設置、中斷、輪詢等操作的驅動程序函數模版。整理電子控制器硬件設計中常用的接口器件資料,針對這些器件編寫驅動程序并用數據庫進行驅動程序模塊的管理。
2.3控制軟件模塊化設計
控制軟件采用模塊設計,將燃機的主要控制過程、各種控制規律形成標準程序模塊。模塊劃分可層層分解,步步細化,當針對具體燃機時只要選用合適的模塊進行組合,并進行對參數設置連接就可形成控制程序。程序的框架設計要保證其可擴展性,根據燃機控制要求的變化,不斷的增加先進控制規律、控制算法模塊提高整個系統的性能。在對燃機控制系統的特點進行充分分析的基礎后,建立對燃機控制軟件的通用框架結構、模塊劃分準則與模塊配置策略,通過更改模塊配置信息、模塊整體更換等方式靈活構建可靠的燃機控制軟件。軟件模塊化按照由粗到細、由繁到簡的指導方針,按步驟逐級細化,最終生成最基本的模塊單元。根據燃機控制系統的功能,將控制軟件劃分為基本數值計算模塊庫、信號處理模塊庫、故障處理模塊庫、起動控制模塊庫、燃機運行控制模塊庫、停車控制模塊庫、輔助系統控制模塊庫、底層軟件模塊庫、通訊協議模塊庫。模塊一般采用標準C語言編寫,與CPU相關的代碼采用匯編語言編寫,考慮到不同CPU的字長、對齊方式等特性,模塊內部均采用自定數據類型,且可通過外部進行設置。
3.通訊軟件設計
EtherCAT通訊程序包括網絡收發模塊、EtherCAT接口模塊、EtherCAT設備模塊、主站模塊和從站模塊。網絡收發模塊完成底層網絡數據包的發送和接收功能。EtherCAT接口模塊實現EtherCAT通訊程序與功能軟件的接口功能。EtherCAT設備模塊實現EtherCAT設備掃描和軟件初始化工作。主站模塊實現主站初始化命令和循環命令的發送處理,實現和維護主站的狀態機。從站模塊實現從站設備的配置,同時維護從站設備的狀態機。
3.1Ethercat協議
EtherCAT是用于過程數據的優化協議,憑借特殊的以太網類型,它可以在以太網幀內直接傳送。EtherCAT幀可包括幾個EtherCAT報文,每個報文都服務于一塊邏輯過程映像區的特定內存區域,該區域最大可達4GB字節。數據順序不依賴于網絡中以太網端子的物理順序,可任意編址。從站之間的廣播、多播和通訊均得以實現。當需要實現最佳性能,且要求EtherCAT組件和控制器在同一子網操作時,則直接以太網幀傳輸就將派上用場。然而,EtherCAT不僅限于單個子網的應用。EtherCATUDP將EtherCAT協議封裝為UDP/IP數據報文,這就意味著,任何以太網協議堆棧的控制均可編址到EtherCAT系統之中,甚至通訊還可以通過路由器跨接到其它子網中。顯然,在這種變體結構中,系統性能取決于控制的實時特性和以太網協議的實現方式。因為UDP數據報文僅在第一個站才完成解包,所以EtherCAT網絡自身的響應時間基本不受影響。另外,根據主/從數據交換原理,EtherCAT也非常適合控制器之間(主/從)的通訊。自由編址的網絡變量可用于過程數據以及參數、診斷、編程和各種遠程控制服務,滿足廣泛的應用需求。主站/從站與主站/主站之間的數據通訊接口也相同。從站到從站的通訊則有兩種機制以供選擇。一種機制是,上游設備和下游設備可以在同一周期內實現通訊,速度非???。由于這種方法與拓撲結構相關,因此適用于由設備架構設計所決定的從站到從站的通訊,如打印或包裝應用等。而對于自由配置的從站到從站的通訊,則可以采用第二種機制—數據通過主站進行中繼。這種機制需要兩個周期才能完成,但由于EtherCAT的性能非常卓越,因此該過程耗時仍然快于采用其他方法所耗費的時間。EtherCAT僅使用標準的以太網幀,無任何壓縮。因此,EtherCAT以太網幀可以通過任何以太網MAC發送,并可以使用標準工具。
3.2主站軟件設計
EtherCAT可以在單個以太網幀中最多實現1486字節的分布式過程數據通訊。其它解決方案一般是,主站設備需要在每個網絡周期中為各個節點處理、發送和接收幀。而EtherCAT系統與此不同之處在于,每周期僅需要一個或兩個幀即可完成所有節點全部通訊,因此,EtherCAT主站不需要專用的通訊處理器。主站功能幾乎不會給主機CPU帶來任何負擔,處理任務的同時,還可處理應用程序,因此EtherCAT無需使用昂貴的專用有源插接卡,只需使用無源的NIC卡或主板集成的以太網MAC設備即可。EtherCAT主站容易實現,尤其適用于中小規模的控制系統和有明確規定的應用場合。EtherCAT映射不是在主站產生,而是在從站產生,此時過程映像已經完成排序。該特性進一步減輕了主機CPU的負擔??梢钥吹?,EtherCAT主站完全在主機CPU中采用軟件方式實現,相比之下,傳統的慢速現場總線系統通過有源插接卡方可實現主站的方式則要占用更多的資源,甚至服務于DPRAM的有源卡本身也將占用可觀的主機資源。
3.3從站軟件設計
子站模塊劃分為A/D采樣模塊、頻率量模塊、LVDT及振動信號處理模塊、熱電阻信號處理模塊、熱電偶信號處理模塊、壓力信號處理模塊、電流電壓信號處理模塊、開關量輸入模塊、開關量輸入1模塊、開關量輸入2模塊、開關量輸出模塊、模擬量輸出模塊1、模擬量輸出模塊2,備份槽。主程序通過不同的功能要求調用軟件塊。軟件模塊設計的基本原則是數據隱藏,即各模塊內部數據私有,并提供外部接口訪問這些私有數據,各模塊之間相互獨立,從而降低各模塊之間的耦合程度。整個框架提供諸多配置接口,具有一定的通用性。子站模塊實現的功能為DSP外設初始化;獲取通道信息;獲取開關量輸入、擬量輸入、頻率量輸入信號;輸出開關量、PWM信號;FLASH存儲器操作;定時器的啟停、看門作等。
4.結束語
在國內航空發動機電子控制系統研制的技術積累基礎上,開展基于網絡通訊技術的燃機模塊式電子器研究工作,研制具有自主知識產權的、具有國際先進水平的燃機模塊式電子控制系統,不僅可以創造經濟效益,而且能夠打破燃機電子控制系統被國外公司壟斷的局面,極大提高燃機市場的核心競爭力。
參考文獻
[1]周向陽.模塊式燃機電子控制系統軟件設計技術研究.南京航空航天大學碩士論文.2010-03-01
[2]EtherCAT——技術介紹及發展概貌.國內外機電一體化技術.2006-11-30
[3]周千翔.基于實時以太網的分布式電子控制器設計.南京航空航天大學碩士論文.2008-12-01
本文根據中小型油庫發油系統控制管理發展現狀,針對中小型油庫發油系統 中所存在的問題,設計了中小型油庫自動化發油系統,編寫了上位機監控軟 件和下位機 PLC 控制程序及管理軟件。 在中小型油庫發油系統的設計和開發中我主要完成了下面的工作:
(1)根據該項目設計的要求:對系統進行了總體設計。構建了以通用 PC 機 為上位機,可編程序控制器(S7-200PLC)為下位機的控制系統。
(2)控制軟件編程:控制軟件采用自適應設計,使系統的穩定性發揮到最佳 狀態。采用提前量自整定的控制算法并編寫了 PLC 程序,實現了提高了發油精 度的設計目標。
(3)組態軟件設計:利用組態軟件實現上位機對系統的組態控制。
由于時間有限,本課題難免存在一些不足,需在以后的研究中進一步完善。 后續工作應集中在以下幾方面:
(1)本系統設計主要是針對中小型油庫而設計的,總的發油鶴位小于十個, 如果油庫的規模再大些,可以采用 S7-300PLC 作控制主站,S7-200PLC 通過 PROFIBUS 現場總線掛接在 S7-300 上作為控制從站,形成 PROFIBUS 現場總線 結構,系統的適應能力會更強大。
(2)為了加強系統的可靠性,如果條件允許,還可以增加雙設備冗余或雙 機熱備功能。
(3)在原有控制程序的算法上加入人工智能方法(專家系統、模糊邏輯、神 經網絡),實現智能控制,從而提高控制系統的性能。
6 技術經濟分析
本文是針對中小型油庫設計的。設計的對象是自動發油系統;設計的目的是在日益激烈的國際市場競爭面前,提高油庫效率,加快周轉,加強安全管理,減少人為差錯,增強竟爭力和提升企業形象。信息化、自動化、規范化是油庫發展的必然趨勢。
以PLC為控制器投資比較大。一臺西門子S7-200的PLC加上擴展模塊售價為5000元;油泵每臺2500元以內;電動機每臺2000元,總投資為23000元。它比DCS系統和以太網系統要貴一些,但是,它以良好的人機界面、發油的穩定性和兼容性為以后的維修和長時間的使用打下了基礎,后期的維修費用大大降低了。
致謝
本論文是老師的悉心指導下完成的,在課題進展的全過程中,宋老師精心指導,嚴格要求,可以說自己每一步的前進都是與老師的指導分不開的。 宋老師學識淵博、治學嚴謹,具有豐富的實際科研項目經驗。宋老師待人熱情,從不以長者自居,他是學生的良師益友。總而言之,無論是在做學問還是在做人方面,宋老師為我樹立了榜樣,指明了方向。
本論文之所以能順利完成,還要感謝同學們的熱心幫助,我還要向自己的父母、親戚和朋友表示感激,感謝他們的全力支持和鼓勵。最后,我再一次向曾經支持和幫助過我的老師、同學表示衷心 的感謝!
參考文獻
[1] 司馬冰.石油化工信息化現狀和發展趨勢.數字化工.2004,(12):1~4
[2] 王常力,羅安.分布式控制系統(DCS)設計與應用實例.電子工業出版社,2004:22~39
[3] 鄭晟,鞏建平,張學.現代可編程控制器原理與應用.科學出版社,2002:10~22
[4] SIMATIC S7-200 可編程控制器系統手冊.2002.4
[5] 周萬珍,高鴻斌.PLC 分析與設計應用.電子工業出版社,2004:141~173
[6] 彭向軍.基于現場環境的部隊油庫綜合業務信息管理平臺的設計與實現.中國科技大學碩士論文.2001:43~54
[7] 王金龍.淺談油庫防爆電磁閥的選用.石油商技.2000,(2): 40~41
[8] 高東華.新舊國家標準《石油計量表》與微機自動發油系統之分析.石油庫與加油站.2000,(5):32~34
[9] 趙翔,李著信,稅愛社.自動罐裝系統電液控制閥恒流調控軟件包.油氣儲運.1997,(3):30~33
[10] 曾茹,相軍,丁清一.周灌中.黃島油庫自動化控制系統.石油規劃設計.2002 ,13(4) :33~34