劉璇
摘 要:伴隨著中國經濟快速持續增長,鐵路交通運輸行業也得到了突飛猛進的發展,對于鐵路運行安全和運行可靠性的要求也越來越高,提高了對能為機車的安全運行提供重要保證的司機控制屏的要求,所以借助現行先進的網絡控制系統和控制技術,以開發更好的應用于司機控制屏的控制技術已經成國內外課題研究的重點。該文選擇嵌入式Linux操作系統作為開發平臺,利用專業跨平臺C++圖形用戶界面Qt軟件來實現司機控制屏控制軟件的開發。介紹了機車車輛的功能以及司機顯示屏的結構的基礎上,描述了運用Linux和Qt軟件將兩者有機結合到一起,制作機車車輛司機的操作顯示界面。
關鍵詞:司機控制屏 ?嵌入式Linux ?Qt軟件 ?人機交互界面
中圖分類號:TP311 ? ?文獻標識碼:A ?文章編號:1674-098X(2014)11(a)-0013-02
1 課題背景和意義
目前中國大量的長距離物資運輸和中長途旅客運輸主要由鐵路承擔,每年完成的旅客周轉量約占全社會旅客周轉量1/3以上,完成貨物周轉量約占全社會貨物周轉量的55%。于此同時,國家經濟的持續發展帶動了社會對于我國各種產業的需求,而越來越大的需求又帶動了基礎鐵路設施的建設。
要發揮鐵路在經濟社會發展中的重要作用,必須確保鐵路運輸的安全,機車本身的運行或行駛中的安全控制和監督尤為重要。機車工作所用到的設備非常多,不可能人為地合理監測控制每一個設備。司機控制屏是機車上完成人機對話和系統信息顯示及反饋的重要設備,它為司機正確操作和控制機車、及時掌握機車工作狀況起到了至關重要的作用。在實際運用中,機車控制屏能夠將機車的相關設備狀態、故障信息和安全行車信息等以圖像和文字的形式反映給司機,以便有效地指導機車司機進行相關操作,為機車的安全運行提供了重要的保證。
鑒于司機控制屏的重要作用,支撐其正常穩定運行的控制系統及控制軟件便成為了其中的關鍵。而隨著網絡控制技術和信息交互管理技術的不斷發展,相關控制技術也得到了很大的提升,采用數字系統和微機系統的控制系統在國內外已經得到了廣泛的應用。因此,為了能夠增強司機控制屏對于機車狀態的監測和控制,并能更好地反映給司機,指導司機對機車進行操作和控制,以便提高機車運行過程中的安全性,基于相關控制系統的司機控制屏控制軟件的開發已經變的勢在必行。
2 系統硬件選擇
對于系統硬件的選型,需要遵循的原則有:統一規則、高可用性、高擴展性、高安全性、高可維護性和合適性價比等。該文涉及的司機控制屏控制軟件開發的硬件平臺搭建就要依據以上原則進行。
3 Linux的裁剪與移植
3.1 Linux介紹
Linux是一種自由和開放源碼的類Unix操作系統,這種系統可以看作Unix操作系統的一種克隆系統。它誕生于1991年,具有開發性、良好的應用性、多任務和多用戶的性能、系統可移植性特性、獨立性使用特性和通用網絡鏈接的優點,之后借助于Internet網絡,并在全世界各地計算機愛好者的共同努力下,Linux系統成為今天世界上使用最多的一種Unix類操作系統,并且使用人數還在迅猛增長。
3.2 建立交叉編譯環境
交叉編譯環境,簡單地說就是在一個平臺上生成另一個平臺上的可執行代碼。這里需要注意的是所謂的平臺,實際上包含兩個概念:體系結構(Architecture)和操作系統(Operating System)。同一個體系結構可以運行不同的操作系統;而同一個操作系統也可以在不同的體系結構上執行。這種環境的搭建需要專門的編譯工具和開發系統來實現,而一個完整的編譯開發系統和環境有需要其相應的組態控件組成。
3.3 Linux內核剪裁
嵌入式系統具備的最大的優點主要表現在它們的專用性及可裁剪性上。可裁剪性主要表現在剪裁掉無用的系統安裝程序,將本系統用到的系統配置項保留。現在實時Linux操作系統內核的剪裁配置方法都是集中在源代碼基礎上,通過配置工具生成配置文件,然后條件編譯生成目標系統內核。
3.4 配置Busybox
BusyBox是一個集成了很多個常用Linux命令和工具的應用程序。這里面的系統命名有一些是對系統進行簡單訪問的函數,比如ls;也有一些系統命令是相對難掌握的系統命令函數,比如grep。所以,它可以看作一種工具盒。
3.5 U-Boot移植
系統上電之后,需要進行初始化:關閉WATCHDOG、改變系統時鐘、初始化存儲控制器、將更多的代碼復制到內存中等。如果它能將操作系統內核復制到內存中運行,無論從本地,比如Flash,還是從遠端,比如網絡,就稱這段程序為Bootloader。通過串口或網絡從PC下載燒寫文件、將存儲在Flash上壓縮的文件解壓后再運行等,這樣的Bootloader是比較強大的,也叫做Monitor。
4 GUI Qt用戶界面開發
4.1 GUI簡介
GUI是Graphical User Interface的縮寫,即圖形用戶接口。顧名思義GUI就是將計算機的用戶操作界面用圖形的樣式呈現出來。通過這種圖形的方式,降低了產品的使用難度,提高了系統的人性化水平,使產品更具有視覺效果,達到了使產品性能優化的目的,滿足了客戶的操作需求。
4.2 Qt介紹
Qt是一個跨平臺的C++圖形用戶界面應用程序框架。它提供給應用程序開發者建立藝術級的圖形用戶界面所需的所用功能。Qt是完全面向對象的,很容易擴展,并且允許真正地組件編程,具有優秀的跨平臺特性、可移植的微處理器體系結構和豐富的API等優點。
4.3 圖形用戶界面開發
司機控制屏圖形用戶界面開發軟件為基于嵌入式Linux操作系統,利用開源軟件Qt Designer設計器開發編譯完成。它的操作界面類似于Windows下的Visual Studio,而且它還提供了相當多的部件資源。在編譯Qt源碼的時候,也同時生成了可執行程序designer。
司機控制屏顯示單元主機內的運行軟件結構,應該包括交互界面、應用軟件和底層軟件三個部分。三個部分由以下幾個模塊組成:網絡協議棧模塊、故障數據解析和診斷模塊、運行數據解析和顯示模塊、人機交互界面模塊。
4.4 系統聯調
通過對系統軟件部分的開發,結合硬件平臺,基本上完成了對基于Linux的司機控制屏控制軟件的開發,下面給出系統聯調時得到的一個司機顯示單元界面圖。(見圖1~4)
參考文獻
[1] 安成錦,孫茂陽,李跛.基于嵌入式Linux系統的MiniGui圖形界面開發[J].西安:現代電子技術,2005,28(20):108-110.
[2] 白玉霞,劉旭輝,孫肖子.基于Qt/Embedded的GUI移植及應用程序開發[J].北京:電子產品世界,2005(7):98-105.
[3] 陳喜紅.國內外地鐵車輛技術的發展趨勢[J].電力機車技術,2002,25(6):28.
[4] 陳莉君.Linux操作系統內核分析[M].北京:人民郵電出版社,2000.
[5] 陳俊宏.Embedded Linux嵌入式系統原理與實務[M].北京:中國鐵道出版社,2004:234-248.
[6] 曾青中,韓增盛.城市軌道交通車輛[M].成都:西南交通大學出版社,2009.
[7] 丁青艷,張秀媛.鐵路信號故障診斷專家系統基本結構設計[M].北京:鐵路計算機應用,2005,17(5):27-32.
[8] 韓存兵,龔波.構建嵌入式Linux系統[M].北京:中國電力出版社,2006:14-39.
[9] 何劍鋒.嵌入式Linux系統的Qt/Embedded圖形界面開發[J].南京:電子工程師,2007(7):46-52.
[10] 紀君峰.基于QT/E的嵌入式系統研究及應用[D].北京:北京郵電大學,2008.
司機控制屏圖形用戶界面開發軟件為基于嵌入式Linux操作系統,利用開源軟件Qt Designer設計器開發編譯完成。它的操作界面類似于Windows下的Visual Studio,而且它還提供了相當多的部件資源。在編譯Qt源碼的時候,也同時生成了可執行程序designer。
司機控制屏顯示單元主機內的運行軟件結構,應該包括交互界面、應用軟件和底層軟件三個部分。三個部分由以下幾個模塊組成:網絡協議棧模塊、故障數據解析和診斷模塊、運行數據解析和顯示模塊、人機交互界面模塊。
4.4 系統聯調
通過對系統軟件部分的開發,結合硬件平臺,基本上完成了對基于Linux的司機控制屏控制軟件的開發,下面給出系統聯調時得到的一個司機顯示單元界面圖。(見圖1~4)
參考文獻
[1] 安成錦,孫茂陽,李跛.基于嵌入式Linux系統的MiniGui圖形界面開發[J].西安:現代電子技術,2005,28(20):108-110.
[2] 白玉霞,劉旭輝,孫肖子.基于Qt/Embedded的GUI移植及應用程序開發[J].北京:電子產品世界,2005(7):98-105.
[3] 陳喜紅.國內外地鐵車輛技術的發展趨勢[J].電力機車技術,2002,25(6):28.
[4] 陳莉君.Linux操作系統內核分析[M].北京:人民郵電出版社,2000.
[5] 陳俊宏.Embedded Linux嵌入式系統原理與實務[M].北京:中國鐵道出版社,2004:234-248.
[6] 曾青中,韓增盛.城市軌道交通車輛[M].成都:西南交通大學出版社,2009.
[7] 丁青艷,張秀媛.鐵路信號故障診斷專家系統基本結構設計[M].北京:鐵路計算機應用,2005,17(5):27-32.
[8] 韓存兵,龔波.構建嵌入式Linux系統[M].北京:中國電力出版社,2006:14-39.
[9] 何劍鋒.嵌入式Linux系統的Qt/Embedded圖形界面開發[J].南京:電子工程師,2007(7):46-52.
[10] 紀君峰.基于QT/E的嵌入式系統研究及應用[D].北京:北京郵電大學,2008.
司機控制屏圖形用戶界面開發軟件為基于嵌入式Linux操作系統,利用開源軟件Qt Designer設計器開發編譯完成。它的操作界面類似于Windows下的Visual Studio,而且它還提供了相當多的部件資源。在編譯Qt源碼的時候,也同時生成了可執行程序designer。
司機控制屏顯示單元主機內的運行軟件結構,應該包括交互界面、應用軟件和底層軟件三個部分。三個部分由以下幾個模塊組成:網絡協議棧模塊、故障數據解析和診斷模塊、運行數據解析和顯示模塊、人機交互界面模塊。
4.4 系統聯調
通過對系統軟件部分的開發,結合硬件平臺,基本上完成了對基于Linux的司機控制屏控制軟件的開發,下面給出系統聯調時得到的一個司機顯示單元界面圖。(見圖1~4)
參考文獻
[1] 安成錦,孫茂陽,李跛.基于嵌入式Linux系統的MiniGui圖形界面開發[J].西安:現代電子技術,2005,28(20):108-110.
[2] 白玉霞,劉旭輝,孫肖子.基于Qt/Embedded的GUI移植及應用程序開發[J].北京:電子產品世界,2005(7):98-105.
[3] 陳喜紅.國內外地鐵車輛技術的發展趨勢[J].電力機車技術,2002,25(6):28.
[4] 陳莉君.Linux操作系統內核分析[M].北京:人民郵電出版社,2000.
[5] 陳俊宏.Embedded Linux嵌入式系統原理與實務[M].北京:中國鐵道出版社,2004:234-248.
[6] 曾青中,韓增盛.城市軌道交通車輛[M].成都:西南交通大學出版社,2009.
[7] 丁青艷,張秀媛.鐵路信號故障診斷專家系統基本結構設計[M].北京:鐵路計算機應用,2005,17(5):27-32.
[8] 韓存兵,龔波.構建嵌入式Linux系統[M].北京:中國電力出版社,2006:14-39.
[9] 何劍鋒.嵌入式Linux系統的Qt/Embedded圖形界面開發[J].南京:電子工程師,2007(7):46-52.
[10] 紀君峰.基于QT/E的嵌入式系統研究及應用[D].北京:北京郵電大學,2008.