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

艦船能量管理系統(tǒng)中的VxWorks可視化技術(shù)

2018-08-14 15:07:16華逸飛李維波方雄偉許智豪徐聰員欽生
中國艦船研究 2018年4期
關(guān)鍵詞:可視化界面系統(tǒng)

華逸飛,李維波,方雄偉,許智豪,徐聰,員欽生

1武漢理工大學自動化學院,湖北武漢430070

2海軍工程大學電氣工程學院,湖北武漢430033

3上海船用柴油機研究所,上海200090

0 引 言

傳統(tǒng)的艦船推進方式采用原動機進行推進,而目前的電力推進艦船則是由原動機帶動發(fā)電機,然后通過推進電動機驅(qū)動螺旋槳進行推進。電力推進由于具有諸多明顯的優(yōu)勢已成為21世紀艦船動力發(fā)展的主要方向,而能量管理系統(tǒng)則是電力推進系統(tǒng)的重要組成部分[1-2]。

能量管理系統(tǒng)可對艦船電能進行集中調(diào)度、管理和控制,是綜合電力系統(tǒng)艦船的核心控制部分之一。能量管理系統(tǒng)能夠綜合考慮并實現(xiàn)發(fā)電自動化、系統(tǒng)監(jiān)測報警、輸配電監(jiān)控保護及用電設(shè)備的監(jiān)控管理,能綜合優(yōu)化船舶電力系統(tǒng)的經(jīng)濟性、可靠性及安全穩(wěn)定性,為現(xiàn)代大型船舶提供穩(wěn)定、可靠、經(jīng)濟的電力能源[3-4]。

能量管理系統(tǒng)通常采用“二層網(wǎng)絡(luò)、三級設(shè)備”的網(wǎng)絡(luò)構(gòu)架,頂層一般采用冗余的工業(yè)以太網(wǎng)連接各種設(shè)備控制器,下層一般為CAN總線組成現(xiàn)場網(wǎng)絡(luò),與底層設(shè)備進行連接[5-7]。

艦船能量管理系統(tǒng)中的可視化系統(tǒng)是整個系統(tǒng)的人機接口單元,負責整個能量系統(tǒng)中參數(shù)的顯示、管理以及故障的實時報警,同時能夠?qū)Φ讓釉O(shè)備下達控制指令,是艦船能量管理系統(tǒng)安全運行的重要保障。

傳統(tǒng)的嵌入式圖形可視化開發(fā)一般使用Microsoft Visual C++(VC),QT等軟件,這些軟件雖然能夠達到理想的人機界面,但是存在開發(fā)周期長、上手難度大等缺點,為此,本文采用Tilcon軟件進行可視化應(yīng)用研究。目前,Tilcon軟件作為VxWorks操作系統(tǒng)下的圖形可視化開發(fā)工具,具有大量的成熟控件,無需像傳統(tǒng)的可視化開發(fā)軟件那樣,通過調(diào)用函數(shù)去畫線填充以及美化圖形,把用戶從大量編碼的圖形可視化開發(fā)方式中解放出來,簡化了嵌入式圖形的可視化開發(fā)過程[8-9]。

為了保證系統(tǒng)的實時性,本文采用VxWorks操作系統(tǒng)。該操作系統(tǒng)是由美國Wind River公司針對嵌入式系統(tǒng)開發(fā)的實時操作系統(tǒng)。由于其高性能、高可靠性、可剪裁性以及友好的用戶開發(fā)環(huán)境等特點,被廣泛應(yīng)用于軍用和民用的高科技領(lǐng)域[10]。

本文將以某艦船的能量管理系統(tǒng)為基礎(chǔ),針對該船的實際情況,給出艦船能量管理系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu),分析UDP通信并提出設(shè)計方案,研究網(wǎng)絡(luò)架構(gòu)中的可視化關(guān)鍵技術(shù)及其實現(xiàn)方法,確保艦船能量管理系統(tǒng)能夠健康、安全和可靠運行。

1 艦船能量管理系統(tǒng)網(wǎng)絡(luò)架構(gòu)

某艦船能量管理系統(tǒng)由1個可視化系統(tǒng)、1臺能量管理系統(tǒng)中心控制器以及下層的供電監(jiān)測系統(tǒng)、配電監(jiān)測系統(tǒng)、絕緣監(jiān)測系統(tǒng)、推進監(jiān)測系統(tǒng)和故障錄播系統(tǒng)組成,該系統(tǒng)的主干控制網(wǎng)采用雙冗余CAN網(wǎng),顯示用數(shù)據(jù)網(wǎng)采用雙冗余以太網(wǎng)。能量管理系統(tǒng)中心控制器為整個系統(tǒng)的核心,負責整個雙冗余CAN網(wǎng)絡(luò)內(nèi)數(shù)據(jù)的處理、調(diào)度以及控制指令的下發(fā),并通過雙冗余以太網(wǎng)與可視化系統(tǒng)進行數(shù)據(jù)交互。而供電監(jiān)測系統(tǒng)、配電監(jiān)測系統(tǒng)、推進監(jiān)測系統(tǒng)、絕緣監(jiān)測系統(tǒng)和故障錄播系統(tǒng)則負責與底層控制器之間的交互,將來自底層設(shè)備的數(shù)據(jù)參數(shù)轉(zhuǎn)換為CAN信號并轉(zhuǎn)發(fā)至雙冗余CAN網(wǎng)中,同時能夠接收來自雙冗余CAN網(wǎng)的指令操作底層設(shè)備。整個能量管理系統(tǒng)的系統(tǒng)框圖如圖1所示。

本文研究的重點為可視化系統(tǒng),該系統(tǒng)需要實時顯示艦船能量管理系統(tǒng)中所有的測點信息,并且能夠?qū)收闲畔⑦M行報警,是整個系統(tǒng)安全運行的重要保證。

2 網(wǎng)絡(luò)架構(gòu)中的UDP設(shè)計

能量管理系統(tǒng)中心控制器,通過雙冗余以太網(wǎng)完成與可視化系統(tǒng)之間的通信。因為用戶數(shù)據(jù)報協(xié)議(UDP)無需建立連接,故通信效率高[11]。而可視化系統(tǒng)僅用于數(shù)據(jù)顯示和部分數(shù)據(jù)下發(fā),適合采用UDP通信。UDP發(fā)送端的通信流程如圖2所示,其運行步驟簡述如下:

1)通過調(diào)用socket()函數(shù)建立數(shù)據(jù)報套接字并且返回套接字號;

2)通過調(diào)用bind()函數(shù)將套接字與本地地址綁定;

3)調(diào)用sendto()函數(shù)發(fā)送數(shù)據(jù);

4)調(diào)用close()函數(shù)關(guān)閉套接字,服務(wù)結(jié)束。

UDP接收端的通信流程如圖3所示,其運行步驟為:

1)通過調(diào)用socket()函數(shù)建立數(shù)據(jù)報套接字并且返回套接字號;

2)通過調(diào)用bind()函數(shù)將套接字與本地地址綁定;

3)接著通過調(diào)用recvfrom()函數(shù)接收數(shù)據(jù);

4)最后調(diào)用close()函數(shù)關(guān)閉套接字,服務(wù)結(jié)束。

其中,VxWorks系統(tǒng)下的UDP網(wǎng)絡(luò)通信socket編程分為以下2種方式:

1)阻塞模式:調(diào)用結(jié)果返回之前,當前任務(wù)會被掛起,函數(shù)只有在得到結(jié)果之后才會返回。

2)非阻塞模式:即使不能立刻得到結(jié)果,當前任務(wù)也不會被掛起,而會立刻返回。

UDP通信初始化階段默認接收(recvfrom)為阻塞模式,發(fā)送(send)為非阻塞模式,這就意味著在沒有接收到數(shù)據(jù)的時候,程序?qū)⒉粫?zhí)行讀取語句后續(xù)的程序,而發(fā)送數(shù)據(jù)的時候則不管對方是否能夠接收,直接把數(shù)據(jù)發(fā)送至網(wǎng)絡(luò)中。

阻塞模式的響應(yīng)速度比非阻塞模式快,因為若有數(shù)據(jù)可以讀取,將會立刻調(diào)用recvfrom函數(shù)讀取數(shù)據(jù),但是非阻塞模式卻要順序執(zhí)行之后才能讀取數(shù)據(jù)。若采取阻塞模式,當任務(wù)出現(xiàn)阻塞時,會對后續(xù)的數(shù)據(jù)解析處理造成影響。為了排除阻塞模式對數(shù)據(jù)解析的影響,可以創(chuàng)建2個任務(wù),一個通信任務(wù),一個數(shù)據(jù)解析處理任務(wù),當通信任務(wù)因為阻塞而被掛起的時候,數(shù)據(jù)處理任務(wù)仍然可以正常執(zhí)行,但這樣可能會因任務(wù)時序造成數(shù)據(jù)出錯,因此不建議采用。

如果對系統(tǒng)響應(yīng)時間要求較低,可以把任務(wù)改為非阻塞模式,數(shù)據(jù)接收和數(shù)據(jù)解析在一個函數(shù)中執(zhí)行,這樣既可以減少任務(wù)開銷,也可以讓數(shù)據(jù)解析更加可靠。本文中的可視化系統(tǒng)僅用于數(shù)據(jù)的顯示和部分指令的下發(fā),對響應(yīng)時間要求不是很高,因此采用非阻塞的方式進行接收,同時將數(shù)據(jù)接收和數(shù)據(jù)解析一同處理。

通過調(diào)用ioctl函數(shù),可以設(shè)置socket為非阻塞模式,其核心代碼為:

3 網(wǎng)絡(luò)架構(gòu)中的可視化關(guān)鍵技術(shù)與實現(xiàn)

3.1 Tilcon可視化原理

基于Tilcon軟件的可視化圖形的開發(fā)過程包含如下3個部分:

1)嵌入式圖形開發(fā)工具:負責完成界面的繪制,能夠通過調(diào)用各種不同的控件構(gòu)建復(fù)雜的可視化圖形界面。除了成熟的控件外,Tilcon也支持自定義控件設(shè)定功能,控件選項中還包含回調(diào)函數(shù)和觸發(fā)器等配置,通過這些選項能夠完成控件之間的相互關(guān)聯(lián),這些控件除了數(shù)據(jù)顯示以外與用戶的應(yīng)用程序完全分離開來,僅靠控件自身的ID與應(yīng)用程序進行關(guān)聯(lián),最終生成被可視化界面引擎所調(diào)用的.twd圖形資源文件。

2)嵌入式圖形界面引擎:獨立于應(yīng)用程序之外的一個系統(tǒng),除了能夠執(zhí)行API函數(shù)對界面上的控件進行設(shè)置顯示之外,還可以對顯示控件的數(shù)據(jù)結(jié)構(gòu)進行維護,它是將VxWorks操作系統(tǒng)下界面顯示與.twd圖形資源文件進行連接的橋梁。

3)應(yīng)用程序接口函數(shù)API:應(yīng)用接口程序函數(shù)API是將應(yīng)用程序和圖形界面連接起來的協(xié)議,通過調(diào)用這些API函數(shù)能夠完成對應(yīng)控件的初始化、數(shù)據(jù)顯示和其他功能操作。

圖4所示為基于Tilcon軟件由數(shù)據(jù)獲取到界面顯示的過程,其關(guān)鍵性運行步驟為:

1)通過外部通信的方式獲取采集到的數(shù)據(jù);

2)通過調(diào)用應(yīng)用接口程序API將顯示用的控件進行初始化;

3)載入嵌入式圖形界面引擎;

4)完成圖形界面的顯示。

3.2 多頁面切換技術(shù)

對于需要顯示較多數(shù)據(jù)的系統(tǒng),通常需要通過不同的窗口分類顯示,Tilcon軟件下的多頁面切換一般有如下2種方法:

1)采用多張.twd圖形資源文件,每次需要切換頁面的時候?qū)斍绊撁娴?twd圖形資源文件刪除,接著載入另外一張.twd圖形資源文件并進行顯示。優(yōu)點是每次只載入需要顯示的窗口控件,但是要耗用大量的內(nèi)存,每次切換界面都需要刪除并且載入.twd圖形資源文件,切換過程中屏幕閃爍嚴重,且可能造成死機的問題。

2)采用panel控件方式,只采用一張.twd圖形作為界面底圖,設(shè)置多個panel控件,所有顯示用控件均放置在panel控件中,通過切換panel控件的方式來完成界面切換,程序初始化的時候僅載入主panel窗口,其余panel窗口通過TRT_SetValues函數(shù)將其TRT_ATT_HIDE參數(shù)設(shè)置為0進行隱藏。優(yōu)點是只采用一張.twd圖,每次只需要顯示當前頁面的panel控件,將其余panel控件進行隱藏,雖然需要實時設(shè)置所有控件的數(shù)值,但是比起第1種方法,極大地減少了內(nèi)存的使用,同時也提高了切換速度。

經(jīng)過對比可知,采用panel控件切換界面的方式節(jié)約了系統(tǒng)內(nèi)存,降低了系統(tǒng)任務(wù)級的開銷,提高了切換速度,相對于采用.twd圖形文件切換的方式優(yōu)勢明顯。

本文采用panel控件的方式進行界面切換,解決了Tilcon下多頁面切換中屏幕閃爍嚴重和內(nèi)存占用過大的問題,避免了因為內(nèi)存不足而造成頻繁死機的難題。

3.3 界面啟動與刷新技術(shù)

可視化系統(tǒng)上電之后,自動載入.out文件,入口函數(shù)為main,接著執(zhí)行如圖5所示的流程,進行啟動與刷新,其關(guān)鍵步驟為:

1)通過TRT_Start函數(shù)啟動界面引擎,將VxWorks系統(tǒng)和Tilcon的插件進行關(guān)聯(lián),關(guān)聯(lián)之后才可以調(diào)用API函數(shù)對界面中的控件進行設(shè)置操作;

2)調(diào)用TRT_WindowLoad函數(shù),從界面路徑之中獲取.twd文件,并載入系統(tǒng)內(nèi)存之中;

3)調(diào)用TRT_WindowDisplay函數(shù)將.twd文件加載至窗口進行顯示,至此界面啟動完畢;

4)進入應(yīng)用程序主循環(huán),應(yīng)用程序可以通過TRT_GetInput函數(shù),獲取外部鼠標或者鍵盤按鍵輸入;

5)調(diào)用TRT_SetValues函數(shù),將通過以太網(wǎng)通信獲取的數(shù)據(jù)用于設(shè)置對應(yīng)控件的數(shù)值,以刷新界面的顯示內(nèi)容。

3.4 故障報警和記錄技術(shù)

VxWorks軟件支持文件系統(tǒng),為防斷電之后數(shù)據(jù)丟失,可以將數(shù)據(jù)存儲至文本文件之中。當報警信息由0變?yōu)?(即上升沿觸發(fā))時判定報警發(fā)生,將報警信息及其當前時標等參數(shù)寫入文本文檔中,在以下2種情況下需要進行報警文本的讀寫:

1)每次開機初始化調(diào)用read()函數(shù),將報警記錄文本文檔中的內(nèi)容拷貝至結(jié)構(gòu)體數(shù)組之中;

2)每次觸發(fā)報警之后,調(diào)用Write()函數(shù)將結(jié)構(gòu)體數(shù)組寫入報警記錄文本文檔中。

基于VxWorks系統(tǒng)下實現(xiàn)文本的寫入操作步驟為:

4 工程化驗證

為了驗證應(yīng)用于艦船能量管理系統(tǒng)中的VxWorks可視化技術(shù)的有效性,將上述可視化設(shè)計技術(shù)進行工程化驗證。工程樣機的配置為:

1)圖形可視化開發(fā)軟件為Tilcon5.8;

2)軟件開發(fā)平臺為Work Bench3.2;

3)操作系統(tǒng)為VxWorks6.8。

本文以能量管理系統(tǒng)中供電部分的可視化設(shè)計為例進行說明,該可視化設(shè)計由1#機組參數(shù)欄(又稱主窗口)、2#機組參數(shù)欄、3#機組參數(shù)欄、4#機組參數(shù)欄、1#柴油發(fā)電機參數(shù)欄、2#柴油發(fā)電機參數(shù)欄以及報警記錄欄7個窗口組成。其設(shè)置情況為:

1)1#機組參數(shù)欄(主窗口):負責顯示1號機組機柜溫度、機組狀態(tài)、三相電壓、三相電流、有功功率、無功功率以及頻率等參數(shù),采用了指示燈、文本框、條形圖以及數(shù)字儀表等多種控件,增加了可視化效果,并且添加了時間顯示。

2)2#機組參數(shù)欄、3#機組顯示欄和4#機組顯示欄:分別顯示了2#機組、3#機組以及4#機組的相關(guān)參數(shù),它們的顯示內(nèi)容與1#機組參數(shù)欄(主窗口)類似。

3)1#柴油發(fā)電機參數(shù)欄和2#柴油發(fā)電機參數(shù)欄:用于監(jiān)測2臺柴油發(fā)電機的運行狀態(tài),顯示柴油發(fā)電機的輸出電壓、輸出電流、頻率、機油壓力和冷卻系統(tǒng)溫度等參數(shù),同時能夠?qū)^壓、過流、超頻等故障進行報警顯示。

4)報警記錄欄窗口:負責記錄4臺機組以及2臺柴油發(fā)電機的故障信息,將報警信號按照級別進行分類,不同的報警信號用不同的顏色顯示,同時顯示報警時間,保證了重要信息的存儲。

由于篇幅有限,本文僅給出了1#機組參數(shù)欄和報警記錄欄工程樣機設(shè)置界面圖。其中,圖6顯示的是1#機組參數(shù)欄的界面,它負責顯示1#機組的運行、準備以及遙控狀態(tài),同時監(jiān)測1#機組機柜的進出風溫度的越限報警等狀態(tài)參數(shù),其中模擬量參數(shù)以3種形式分別顯示:

1)以文本框的形式顯示1#機組的電壓功率等模擬量參數(shù);

2)以柱狀圖的形式顯示當前1#機組的帶載情況;

3)以儀表盤的形式顯示1#機組的轉(zhuǎn)速以及滑油壓力等參數(shù)。

圖7所示為報警記錄欄的界面,它采用表格的方式顯示報警信息,顯示了4臺機組以及2臺柴油發(fā)電機的一類故障或二類故障等報警信號,并且區(qū)分了報警級別,記錄了報警時間。

經(jīng)工程驗證,實現(xiàn)了應(yīng)用于艦船能量管理系統(tǒng)中的VxWorks可視化技術(shù)、多頁面切換技術(shù)、界面啟動與刷新技術(shù),同時解決了頁面切換過程中屏幕閃爍、內(nèi)存不足而造成頻繁死機以及重要信息遺失等問題。

5 結(jié) 語

本文研究了應(yīng)用于艦船能量管理系統(tǒng)中的VxWorks可視化設(shè)計技術(shù),以UDP通信為核心,采用實時性高的VxWorks操作系統(tǒng)以及具有較高可維護性和可靠性的Tilcon軟件進行圖形可視化開發(fā),著重分析了網(wǎng)絡(luò)架構(gòu)中Tilcon可視化原理、多頁面切換技術(shù)、界面啟動與刷新技術(shù)以及故障報警和記錄技術(shù),解決了界面啟動刷新顯示、多頁面切換由于內(nèi)存不足而導(dǎo)致經(jīng)常死機以及重要信息遺漏丟失等問題。工程樣機的現(xiàn)場實測結(jié)果表明,該方法能夠成功應(yīng)用于艦船能量管理的可視化系統(tǒng),且具有運行穩(wěn)定、操作簡潔、實時性高等優(yōu)點,是比較理想的圖形界面解決方案,具有較高的推廣應(yīng)用價值。

猜你喜歡
可視化界面系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運行動態(tài)分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于CGAL和OpenGL的海底地形三維可視化
“融評”:黨媒評論的可視化創(chuàng)新
傳媒評論(2019年4期)2019-07-13 05:49:14
基于FANUC PICTURE的虛擬軸坐標顯示界面開發(fā)方法研究
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
主站蜘蛛池模板: 亚洲欧美激情小说另类| 亚洲第一中文字幕| 中文字幕va| 波多野吉衣一区二区三区av| 国产一区二区三区在线观看免费| 国产精品任我爽爆在线播放6080 | 欧美劲爆第一页| 国产激情无码一区二区免费| 亚洲成人精品在线| 91人妻在线视频| 婷婷午夜影院| 欧美精品在线看| 欧美一区福利| 日本色综合网| 欧美区一区| 无码内射中文字幕岛国片| 国产精女同一区二区三区久| 亚洲成人精品久久| 日韩欧美在线观看| 免费人成网站在线观看欧美| 亚洲天堂网在线播放| 国产av色站网站| 久草中文网| 国产视频久久久久| 亚洲国产综合精品一区| 国产乱人免费视频| 精品撒尿视频一区二区三区| 手机在线国产精品| 亚洲成人高清在线观看| 1级黄色毛片| 国产精品久久久久鬼色| 激情无码字幕综合| 国产对白刺激真实精品91| 成人毛片在线播放| 91麻豆精品视频| 久久久国产精品无码专区| 国产91精品最新在线播放| 国产小视频免费观看| 在线观看国产小视频| 孕妇高潮太爽了在线观看免费| 中文字幕久久亚洲一区 | 精品一区国产精品| 国产一区二区人大臿蕉香蕉| 亚洲天堂区| 欧美19综合中文字幕| 亚洲成aⅴ人片在线影院八| 丁香婷婷激情综合激情| 日韩天堂视频| 91伊人国产| 亚洲系列无码专区偷窥无码| 成人免费午夜视频| 国产福利2021最新在线观看| 精品伊人久久久大香线蕉欧美| 69国产精品视频免费| 国产精品久久久久久影院| 亚洲国产精品无码久久一线| 极品尤物av美乳在线观看| 55夜色66夜色国产精品视频| 亚洲中文精品人人永久免费| 女人一级毛片| 亚洲日韩高清无码| 国产成人亚洲毛片| 欧美精品在线视频观看| 国产第二十一页| 亚洲香蕉在线| 国产95在线 | 5388国产亚洲欧美在线观看| 国产乱肥老妇精品视频| 国产美女自慰在线观看| 亚洲性一区| 国产9191精品免费观看| 国产亚洲精品91| 亚洲妓女综合网995久久| 久久人搡人人玩人妻精品| 日韩欧美高清视频| 欧美精品三级在线| 人妻丝袜无码视频| a级毛片免费网站| 久久久久亚洲av成人网人人软件| 国产日本欧美在线观看| 色男人的天堂久久综合| 欧美午夜视频|