• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      地鐵列車顯示屏軟件的設(shè)計(jì)與開發(fā)

      2018-05-10 12:16:44杜苗苗宋君君
      鐵道機(jī)車車輛 2018年2期
      關(guān)鍵詞:控件顯示屏端口

      杜苗苗, 宋君君, 冀 云

      (中車唐山機(jī)車車輛有限公司 產(chǎn)品研發(fā)中心, 河北唐山 063035)

      隨著軌道交通的快速發(fā)展,地鐵已經(jīng)在國內(nèi)很多城市開通運(yùn)營,給人們出行帶來了極大的便利,同時(shí)也加快了城市的建設(shè),今后地鐵項(xiàng)目將會(huì)走入更多的城市,得到更快的發(fā)展,列車人機(jī)交互接口單元作為列車網(wǎng)絡(luò)控制系統(tǒng)的終端設(shè)備在地鐵項(xiàng)目中得到了廣泛的應(yīng)用。

      列車網(wǎng)絡(luò)設(shè)備多而復(fù)雜,而人機(jī)接口交互單元可提供車輛運(yùn)行狀態(tài)信息、故障信息以及安全操作提示,同時(shí)司機(jī)及維護(hù)人員也可根據(jù)顯示信息對列車進(jìn)行參數(shù)設(shè)置、自檢測試及系統(tǒng)維護(hù)等操作[1],因此列車顯示控制單元是列車正常運(yùn)行的重要保證之一,此部分的設(shè)計(jì)與開發(fā)工作對于列車行車安全有著重要的意義。為了滿足地鐵列車運(yùn)行過程中的監(jiān)控需求,及時(shí)解決列車調(diào)試過程中的問題,加快列車調(diào)試效率,特對其顯示屏軟件進(jìn)行自主設(shè)計(jì)與開發(fā)。

      1 系統(tǒng)介紹

      1.1 硬件介紹

      每輛地鐵列車配置兩個(gè)人機(jī)交互接口單元(Human Machine Interaction Interface Unit,簡稱HMI),顯示器分辨率為1 024×768,處理器為PowerPc架構(gòu),主頻為400 MHz,平臺(tái)操作系統(tǒng)采用開源的Linux操作系統(tǒng),并且支持多種通信方式,全觸摸無按鍵電阻屏,色彩鮮明,人機(jī)交互友好,應(yīng)用程序數(shù)據(jù)操作精確,采用U盤下載方式,簡單快捷。

      1.2 開發(fā)環(huán)境介紹

      HMI的軟件開發(fā)是在Linux操作系統(tǒng)下,使用Qt Creator開發(fā)工具來進(jìn)行的。Qt是基于C++開發(fā)語言、跨平臺(tái)的圖形用戶界面應(yīng)用程序框架,它包括一套跨平臺(tái)的類庫、一套整合的開發(fā)工具和一個(gè)跨平臺(tái)的集成開發(fā)環(huán)境[2],采用面向?qū)ο缶幊?,封裝良好,滿足顯示屏軟件開發(fā)過程中的需求。

      2 應(yīng)用程序設(shè)計(jì)

      2.1 網(wǎng)絡(luò)拓?fù)?/h3>

      地鐵列車采用6輛編組,網(wǎng)絡(luò)控制系統(tǒng)主干網(wǎng)采用滿足IEC 61375-1標(biāo)準(zhǔn)的MVB網(wǎng)絡(luò)[3],主要硬件設(shè)備有列車中央控制單元CCU、數(shù)據(jù)記錄模塊ERM、中繼器REP、遠(yuǎn)程輸入輸出單元RIOM、人機(jī)接口設(shè)備HMI和必要的總線終端連接器等。網(wǎng)絡(luò)拓?fù)鋱D如圖1所示。

      2.2 界面設(shè)計(jì)

      根據(jù)用戶需求,地鐵顯示屏界面主要包括司機(jī)界面和維護(hù)界面兩大部分,設(shè)計(jì)界面顯示框架如圖2所示。

      3 應(yīng)用程序?qū)崿F(xiàn)

      3.1 顯示界面實(shí)現(xiàn)

      顯示屏界面是由自定義類CPage實(shí)現(xiàn),每個(gè)界面類基于CPgae類派生而來,繼承基類的基本屬性,通過調(diào)用自定義的按鈕,圖片,文本,線條,編輯框等控件來實(shí)現(xiàn)對各界面的繪制。各界面類包括對界面的初始化及函數(shù)的定義:

      ① ROMDATA g_PicRom_Main[];∥結(jié)構(gòu)體數(shù)組,實(shí)現(xiàn)對各控件的初始化

      ② Void OnInitPage(); ∥界面初始化函數(shù),實(shí)現(xiàn)首次進(jìn)入界面各變量的初始化

      ③ Void OnShowPage(); ∥界面展示函數(shù),實(shí)現(xiàn)每次切換到該界面所需控件狀態(tài)的顯示

      Tc-拖車;M-動(dòng)車;CCU-列車中央控制單元;REP-中繼器;DXM-數(shù)字量輸入輸出模塊;DIM-數(shù)字量輸入模塊;AXM-模擬量輸入輸出模塊;ERM-事件記錄儀; ATC-列車自動(dòng)控制;HMI-人機(jī)接口單元;FDS-火災(zāi)報(bào)警系統(tǒng);PIS-乘客信息顯示系統(tǒng);MDCU-車門控制單元;ACU-空調(diào)控制單元;DCU/M-牽引控制單元;DCU/A-輔助控制單元;BECU-制動(dòng)控制單元;BMS-蓄電池;CCU-D-數(shù)據(jù)記錄儀。圖1 網(wǎng)絡(luò)拓?fù)鋱D

      圖2 界面設(shè)計(jì)框架圖

      ④ Void OnUpdatePage(); ∥界面更新函數(shù),實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)的通訊以及各控件狀態(tài)的刷新

      靜態(tài)界面的實(shí)現(xiàn)主要在ROMDATA結(jié)構(gòu)體數(shù)組中,根據(jù)功能劃分,將界面顯示分為4部分,包括公共信息顯示區(qū)、主顯示及功能按鈕區(qū)、故障提示區(qū)和公共按鈕區(qū),如圖3所示。其中公共信息顯示區(qū)包括對列車站點(diǎn)、電壓及時(shí)間等重要信息的顯示,主顯示區(qū)根據(jù)用戶對按鈕的選擇顯示對應(yīng)的信息,故障提示區(qū)提示列車當(dāng)前的最新故障,按鈕區(qū)實(shí)現(xiàn)用戶的操作。

      3.2 數(shù)據(jù)通訊

      列車顯示屏實(shí)現(xiàn)對列車運(yùn)行過程中實(shí)時(shí)數(shù)據(jù)的監(jiān)控,要對MVB總線數(shù)據(jù)進(jìn)行讀寫操作。根據(jù)各系統(tǒng)接口規(guī)范,MVB數(shù)據(jù)通訊部分首先要對端口進(jìn)行定義,需要先進(jìn)行pit表的配置,pit表是定義端口號(hào),源宿端口和端口大小所生成的配置文件。關(guān)于配置pit表所使用的工具如圖4所示。

      圖3 顯示屏界面

      圖4 pit表配置工具

      在配置工具中各項(xiàng)的定義為:

      ① 端口號(hào): 十六進(jìn)制數(shù)表示;

      ② 端口類型: 1表示宿端口(接收數(shù)據(jù)端);2表示源端口(發(fā)送數(shù)據(jù)端);

      ③ 端口存儲(chǔ)地址:第一個(gè)地址為4,第二個(gè)地址為8,第三個(gè)地址為12,…,以此類推,不能使用端口地址0;

      ④ 端口大小: 端口的大小可以是2,4,8,16,32,根據(jù)數(shù)據(jù)流選擇相應(yīng)的端口大小,在pit配置工具中分別對應(yīng)0,1,2,3,4。

      各端口輸入完畢,點(diǎn)擊生成配置即可生成相應(yīng)的數(shù)據(jù)pit表。pit表配置完畢,對數(shù)據(jù)讀寫函數(shù)進(jìn)行調(diào)用并對其數(shù)據(jù)進(jìn)行邏輯處理

      ∥讀數(shù)據(jù)函數(shù)

      mvb.get_uint(unsigned short port_num, char ofs_byte); ∥讀雙字?jǐn)?shù)據(jù)

      mvb.get_uchar(unsigned short port_num, char ofs_byte); ∥讀單字節(jié)數(shù)據(jù)

      mvb.get_ushort(unsigned short port_num, char ofs_byte);∥讀單字?jǐn)?shù)據(jù)

      mvb.get_ubit(unsigned short,char ofs_byte,char ofs_bit); ∥讀bit位數(shù)據(jù)

      ∥寫數(shù)據(jù)函數(shù)

      mvb.put_uint(unsigned short port_num, char ofs_byte, unsigned char value);∥寫雙字?jǐn)?shù)據(jù)

      mvb.put_uchar(unsigned short port_num, char ofs_byte, unsigned char value); ∥寫單字節(jié)數(shù)據(jù)

      mvb.put_ushort(unsigned short port_num, char ofs_byte, unsigned char value); ∥寫單字?jǐn)?shù)據(jù)

      mvb.put_ubit(unsigned short port_num, char ofs_byte, char ofs_bit, unsigned char value); ∥寫bit位數(shù)據(jù)

      依據(jù)各系統(tǒng)接口規(guī)范,通過對以上函數(shù)的調(diào)用,來獲取MVB總線上的實(shí)時(shí)數(shù)據(jù),根據(jù)數(shù)據(jù)值,對其進(jìn)行邏輯處理并對相關(guān)控件的狀態(tài)進(jìn)行控制,來實(shí)現(xiàn)界面的刷新。

      4 故障診斷

      列車故障診斷部分是網(wǎng)絡(luò)控制系統(tǒng)的一個(gè)重要組成部分,主要實(shí)現(xiàn)車載各部件故障數(shù)據(jù)的采集、分析、轉(zhuǎn)儲(chǔ)和顯示功能[4]。故障診斷程序主要是對故障字典數(shù)據(jù)表的建立以及對數(shù)據(jù)庫數(shù)據(jù)的讀寫操作。

      根據(jù)故障對子系統(tǒng)或列車的性能或安全性的影響劃分為不同的故障等級,不同的故障等級對應(yīng)不同的聲光信息提示,有4種等級:

      (1) 嚴(yán)重故障 :列車無法動(dòng)車、安全回路故障、煙溫探測報(bào)警、關(guān)鍵系統(tǒng)故障等;

      (2) 中等故障 :司機(jī)操作失誤、乘客信息系統(tǒng)故障等不影響列車牽引的故障;

      (3) 輕微故障 :空調(diào)系統(tǒng)、備份功能切換等不影響列車正常載客運(yùn)營的故障;

      (4) 提示信息:非故障,只作一次性的提示作用。

      故障診斷程序?qū)崟r(shí)檢測故障數(shù)據(jù)信號(hào),當(dāng)檢測到列車發(fā)生故障時(shí),根據(jù)端口號(hào)、字節(jié)號(hào)以及位的信息來查詢故障字典中相應(yīng)的故障數(shù)據(jù),并且將查詢中的信息記錄到當(dāng)前故障列表中,同時(shí)在HMI上進(jìn)行顯示。當(dāng)故障消失后,故障信息從當(dāng)前故障列表中刪除,插入到歷史故障列表中,當(dāng)前故障列表和歷史故障列表到達(dá)一定的數(shù)量限制之后,將最早的100條記錄進(jìn)行刪除,故障診斷程序流程圖如圖5所示。

      經(jīng)過上述幾部分的代碼開發(fā),顯示屏應(yīng)用程序已基本開發(fā)完畢,經(jīng)本地測試之后,交叉編譯生成鏡像文件,通過U盤下載到HMI設(shè)備中,經(jīng)過試驗(yàn)臺(tái)的功能測試,再上車聯(lián)調(diào)。自主開發(fā)顯示屏程序給測試人員帶來了很大的便利,調(diào)試過程中的問題能夠得到及時(shí)的反饋和解決,大大提高了工作效率。

      圖5 故障診斷程序流程圖

      5 結(jié)束語

      網(wǎng)絡(luò)控制系統(tǒng)作為一列車的大腦,意義重大,而HMI作為列車網(wǎng)絡(luò)控制系統(tǒng)的眼睛也擔(dān)負(fù)著重要作用,列車顯示屏的軟件設(shè)計(jì)與開發(fā)工作對測試人員、司機(jī)及維護(hù)人員都有著重要的意義。地鐵列車顯示屏程序應(yīng)用軟件已在地鐵項(xiàng)目中運(yùn)用,經(jīng)過多次試驗(yàn)和調(diào)試,列車現(xiàn)已進(jìn)入運(yùn)營階段。該地鐵顯示屏應(yīng)用程序下載簡單,人機(jī)界面交互友好,用戶操作便捷高效,軟件運(yùn)行穩(wěn)定可靠,對其他軌道交通項(xiàng)目的顯示屏軟件開發(fā)具有很好的參考價(jià)值。

      [1] 李 偉,張?zhí)燔姡环N基于Linux的地鐵列車顯示屏設(shè)計(jì)[J].鐵道車輛,2014,52(12):29-30.

      [2] 閆鋒欣,曾泉人,張志強(qiáng).C++ GUI Qt4編程[M](第2版).北京:電子工業(yè)出版社,2011.

      [3] IEC 61375-1— 1999.Electric Railway Equipment Train Bus Part 1:Train Communication Network[S].

      [4] 孫幫成.CRH380BL型動(dòng)車組[M].北京:中國鐵道出版社,2014.

      猜你喜歡
      控件顯示屏端口
      一塊布就是一個(gè)顯示屏?
      軍事文摘(2022年10期)2022-06-15 02:29:30
      一種端口故障的解決方案
      蒼蠅迷戀顯示屏
      關(guān)于.net控件數(shù)組的探討
      軟件(2018年7期)2018-08-13 09:44:42
      端口阻塞與優(yōu)先級
      未來五年LED顯示屏出貨將保持16%增長
      中國照明(2016年6期)2016-06-15 20:30:14
      初識(shí)電腦端口
      電腦迷(2015年6期)2015-05-30 08:52:42
      生成樹協(xié)議實(shí)例探討
      基于AT89S52的手勢可控LED滾動(dòng)顯示屏設(shè)計(jì)
      就這樣玩會(huì)VBA中常見的自定義控件
      電腦迷(2012年24期)2012-04-29 00:44:03
      武冈市| 二手房| 连南| 阿尔山市| 自贡市| 淮南市| 安徽省| 那坡县| 宣武区| 饶阳县| 深州市| 洮南市| 奉新县| 钦州市| 伊川县| 松原市| 涡阳县| 余江县| 武平县| 修水县| 高密市| 闽侯县| 关岭| 井冈山市| 东丰县| 平乡县| 玉屏| 安西县| 古交市| 德令哈市| 紫阳县| 道孚县| 辽宁省| 耒阳市| 巢湖市| 朝阳市| 长寿区| 自贡市| 庆城县| 潞城市| 江津市|