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

基于Qt/Embedded的機房環境監控系統

2014-09-27 17:59:17劉鐘情
現代電子技術 2014年8期

劉鐘情

摘要: 為了實現機房環境監控系統實時性,可控性和可預警性,在軟硬件資源受限的嵌入式環境中,采用Qt/Embedded在嵌入式Linux系統下開發出友好的GUI界面,可以提供實驗室環境參數的查詢和設置,從而實現實時監控。通過結合Qt/Embedded的特點和優點,提出用Qt/Embedded實現實驗室環境監控系統的圖形用戶界面的設計思路,并對Qt/Embedded圖形系統應用開發過程中的一些關鍵問題進行了深入研究。

關鍵詞: Qt/Embedded; 嵌入式GUI; 嵌入式Linux; 控制界面

中圖分類號: TN911?34; TP311 文獻標識碼: A文章編號: 1004?373X(2014)08?0038?02

Qt/Embedded?based environment monitoring system for laboratory

LIU Zhong?qing

(Chengdu Sport University, Chengdu 610041, China)

Abstract: To achieve the real?time performance, controllability and early warning of computer room environment monitoring system, Qt/Embedded is adopted in the embedded Linux system to realize friendly GUI, which makes query and set of the laboratory environment parameters possible in the hardware and software resource?constrained embedded environment. In consideration of the characteristics and advantages of Qt/Embedded, Qt/Embedded is used to realize the GUI of remote monitoring system for the environment in the laboratory. Some key problems existing in the process of developing the GUI based on Qt/Embedded is deeply discussed in this paper.

Keywords: Qt/Embedded; embedded GUI; embedded Linux; control interface

0引言

智能監控是當前自動控制領域研究的熱點問題,在軟硬件資源受限的嵌入式環境中,將32位高性能微處理器和Qt/Embedded結合,應用到現實控制場合具有一定的可行性和前瞻性。

隨著自動化設備現場環境更加注重實效性,高精度,且對人體健康影響小等方面,目前,國內高等院校的實驗室已不能完全滿足要求,因此,研究開發具有高效實時監控,精密遠程控制,可靠安全預警等功能的的智能實驗室環境監控系統具有重要的實踐意義[1]。本文重點研究基于Qt/Embedded智能實驗室監控系統開發過程和應用難點。

1系統硬件架構圖

本系統主控制器以三星公司的S3C2410 ARM微處理器作為嵌入式前端機,通過MEGA8傳感器擴展板完成數據的采集,存儲,顯示和前端機的通信。以固定IP計算機為中層監控主機,通過以太網接入Internet。監控主機通過監控軟件實時掌握被監控點的環境參數,根據預設參數(閾值)邏輯判斷狀態,達到條件啟動異常警告[2],并將相關數據或報警信息傳送給遠程監控。遠程監控包括手機,固定電話,普通PC或移動PC等,他們通過GSM,PSTN,TCP/IP與監控中心相連見圖1。

系統功能流程為:軟件輪詢接收傳感器的狀態數據,同時發送中斷請求,前端機根據串口通信協議發送控制命令給單片機,單片機根據控制命令向指定傳感器的返回狀態或數據。前端機的觸摸屏呈現的友好的GUI界面是在嵌入式Linux系統下用Qt開發的,具備提供實驗室環境參數的查詢和設置等功能。

2Qt/Embedded系統平臺

2.1Qt/Embedded系統移植

Qt/Embedde系統是專為小型設備提供圖形用戶界面的應用框架和窗口系統,作為要移植的GUI,具體安裝移植參見文獻[3?4]。

圖1 系統硬件架構圖

2.2中文顯示支持

監控系統使用中文字體顯示可以方便用戶操作。采用Qt/Embedded開發的監控界面需要完成在編譯庫中加入對中文的支持和在程序中指定一個中文字體即可實現對中文支持[5]。

2.3Qt/Embedded程序開發流程

(1) 注冊環境變量,進入Qt/Embedded系統開發環境,PC機上使用Qt?x11.2.3.2的設計工具designer設計可視化界面,使用uic代碼自動生成工具把demo.ui生成C++代碼:demo.h和demo.cpp,并編寫main.cpp主程序,建立工程,然后編譯,生成可執行文件,使用qvfb工具運行此可執行文件查看仿真效果。

(2) 使用交叉編譯工具編譯源程序,編譯生成可在ARM?Linux系統中運行的可執行文件,將該可執行文件復制到ARM?Linux系統中,在ARM?Linux系統中運行該可執行文件,得到應用程序的實際效果[6]。

3GUI設計

3.1圖形用戶界面程序框架

用戶與嵌入式前端機的接口是圖形用戶界面,用戶可以根據圖形用戶界面所顯示的信息,結合觸摸屏選擇響應的菜單,查詢所需要的信息。圖形用戶界面主要模塊有:狀態設置,數據通信,數據采集,故障診斷,溫度管理示即實時管理機房的溫度變化曲線, 濕度管理,即實時管理機房的濕度變化曲線。如圖2所示。

3.2圖形用戶界面程序設計

3.2.1頭文件和源文件的生成

以下為使用QtDesigner開發溫度顯示界面,濕度管理及其他界面類似。使用uic工具,用temperature.ui界面文件生成temperature..h頭文件和源文件。

uic ?otemperature.htemperature.ui

uic ?otemperature.cpp ?impltemperature.htemperature.ui

圖2 圖形用戶界面程序基本架構

溫度管理界面要實現查詢當前或某個歷史時刻的溫度,在temperature.cpp文件里添加溫度曲線生成的代碼實現生成溫度曲線的功能。在文件temperature.cpp中定義一個temperature類的查詢當前或某個歷史時刻的溫度成員函數:

void temperature::searchtempSlot()

定義編輯生成溫度曲線成員函數:

void temperature::edittempSlot()

溫度管理窗口界面的2個按鈕的Signal?Slot的connect()代碼:

connect(searchtemp. SIGNAL(clicked()),this.SLOT(searchtempSlot)));

connect(edittemp. SIGNAL(clicked()),this.SLOT(edittempSlot)));

3.2.2main主函數文件編寫

為了生成main.cpp文件,必須先生成QApplication類的實例,定義窗口類實例,把窗口類實例作為程序的主窗口,設置mainwindow部件,調用show()和exec()方法,使溫度管理界面作為主窗口。以下是temperature的主函數文件main.cpp的主要代碼:

int main(int argc,char **argv)

{

QApplication temperature(argc,argv);

temperature *mainwindow=new temperature;

app.setMainWidget((&mainwindow);

mainwindow?>show();

retrun temperature.exec();

}

3.2.3編譯調試

先生成.pro工程文件,采用progen方法為:$TMAKEDIR/bin/progen?T.app.t?otemperature.pro。用tmake命令生成Makefile文件,方法為:$TMAKEDIR/bin/tmake?oMakefiletemperature.pro,用make命令對整個工程進行編譯鏈接。調試過程中,先在開發機上用Qt/Embedded提供的模擬環境qvfb即Qt/Embedded的虛擬仿真窗口中進行測試[7]。

3.2.4移植程序到目標機

重新編譯程序,復制Qt/Embedded二進制庫和應用程序的二進制代碼到某個目錄下,把該目錄制成某種類型的根文件系統,最后將該根文件系統燒寫到S3C410的FLASH存儲器上[8]。

4結語

高性能的監控系統需要一個高性能,高可靠性的用戶界面的支持,基于Qt/Embedded的人機界面的設計,開發和維護成本低,人機交互信息豐富,豐富的API接口和基于組件的編程模型使得嵌入式應用程序開發更加便捷[9]。本文設計了基于S3C2410ARM微處理器和嵌入式Linux系統的實驗室環境監控系統,對基于Qt/Embedded開發嵌入式GUI,及Qt/Embedded編程的關鍵技術問題做了較詳細的論述。

參考文獻

[1] 楊柳,岳坤,龐和明,等.Qt/Embedded及嵌入式Linux在智能監控系統控制中的應用[J].計算機應用,2010,30(1):289?291.

[2] 楊柳,龐和明,姜琳穎,等.嵌入式Linux及SQLite數據庫在智能監控中的應用研究[J].微計算機信息,2010,26(24):65?67.

[3] 郭海濤,王進華.基于Qt支持庫的嵌入式系統中GUI分析與設計[J].江蘇電氣,2008(10):8?10.

[4] 張亞君,孔帥.基于Qt/Embedded和Qtopia的嵌入式GUI移植開發[J].天津職業大學學報,2010,19(1):78?82.

[5] 趙毅,游有鵬.基于Qt/Embedded的嵌入式數控系統人機界面設計與開發[J].工業控制計算機,2008,21(4):68?71.

[6] 孫巍,馮偉興.Qt/Embedded應用程序在ARM?Linux系統中開發與應用[J].計算機應用,2011,30(8):9?12.

[7] 陳鯤,陳云秋,劉信新.基于Qt/Embedded的嵌入式Linux應用程序的設計[J].計算機與數字工程,2009,37(1):156?158.

[8] 劉勝玉,張志新.基于Qt/Embedded的嵌入式監測系統人機界面[J].工業控制計算機,2009,22(9):17?18.

[9] 連照亮,徐世國.基于Qt/Embedde在嵌入式Linux下的應用研究[J].微計算機信息,2010,26(12):81?83.

溫度管理窗口界面的2個按鈕的Signal?Slot的connect()代碼:

connect(searchtemp. SIGNAL(clicked()),this.SLOT(searchtempSlot)));

connect(edittemp. SIGNAL(clicked()),this.SLOT(edittempSlot)));

3.2.2main主函數文件編寫

為了生成main.cpp文件,必須先生成QApplication類的實例,定義窗口類實例,把窗口類實例作為程序的主窗口,設置mainwindow部件,調用show()和exec()方法,使溫度管理界面作為主窗口。以下是temperature的主函數文件main.cpp的主要代碼:

int main(int argc,char **argv)

{

QApplication temperature(argc,argv);

temperature *mainwindow=new temperature;

app.setMainWidget((&mainwindow);

mainwindow?>show();

retrun temperature.exec();

}

3.2.3編譯調試

先生成.pro工程文件,采用progen方法為:$TMAKEDIR/bin/progen?T.app.t?otemperature.pro。用tmake命令生成Makefile文件,方法為:$TMAKEDIR/bin/tmake?oMakefiletemperature.pro,用make命令對整個工程進行編譯鏈接。調試過程中,先在開發機上用Qt/Embedded提供的模擬環境qvfb即Qt/Embedded的虛擬仿真窗口中進行測試[7]。

3.2.4移植程序到目標機

重新編譯程序,復制Qt/Embedded二進制庫和應用程序的二進制代碼到某個目錄下,把該目錄制成某種類型的根文件系統,最后將該根文件系統燒寫到S3C410的FLASH存儲器上[8]。

4結語

高性能的監控系統需要一個高性能,高可靠性的用戶界面的支持,基于Qt/Embedded的人機界面的設計,開發和維護成本低,人機交互信息豐富,豐富的API接口和基于組件的編程模型使得嵌入式應用程序開發更加便捷[9]。本文設計了基于S3C2410ARM微處理器和嵌入式Linux系統的實驗室環境監控系統,對基于Qt/Embedded開發嵌入式GUI,及Qt/Embedded編程的關鍵技術問題做了較詳細的論述。

參考文獻

[1] 楊柳,岳坤,龐和明,等.Qt/Embedded及嵌入式Linux在智能監控系統控制中的應用[J].計算機應用,2010,30(1):289?291.

[2] 楊柳,龐和明,姜琳穎,等.嵌入式Linux及SQLite數據庫在智能監控中的應用研究[J].微計算機信息,2010,26(24):65?67.

[3] 郭海濤,王進華.基于Qt支持庫的嵌入式系統中GUI分析與設計[J].江蘇電氣,2008(10):8?10.

[4] 張亞君,孔帥.基于Qt/Embedded和Qtopia的嵌入式GUI移植開發[J].天津職業大學學報,2010,19(1):78?82.

[5] 趙毅,游有鵬.基于Qt/Embedded的嵌入式數控系統人機界面設計與開發[J].工業控制計算機,2008,21(4):68?71.

[6] 孫巍,馮偉興.Qt/Embedded應用程序在ARM?Linux系統中開發與應用[J].計算機應用,2011,30(8):9?12.

[7] 陳鯤,陳云秋,劉信新.基于Qt/Embedded的嵌入式Linux應用程序的設計[J].計算機與數字工程,2009,37(1):156?158.

[8] 劉勝玉,張志新.基于Qt/Embedded的嵌入式監測系統人機界面[J].工業控制計算機,2009,22(9):17?18.

[9] 連照亮,徐世國.基于Qt/Embedde在嵌入式Linux下的應用研究[J].微計算機信息,2010,26(12):81?83.

溫度管理窗口界面的2個按鈕的Signal?Slot的connect()代碼:

connect(searchtemp. SIGNAL(clicked()),this.SLOT(searchtempSlot)));

connect(edittemp. SIGNAL(clicked()),this.SLOT(edittempSlot)));

3.2.2main主函數文件編寫

為了生成main.cpp文件,必須先生成QApplication類的實例,定義窗口類實例,把窗口類實例作為程序的主窗口,設置mainwindow部件,調用show()和exec()方法,使溫度管理界面作為主窗口。以下是temperature的主函數文件main.cpp的主要代碼:

int main(int argc,char **argv)

{

QApplication temperature(argc,argv);

temperature *mainwindow=new temperature;

app.setMainWidget((&mainwindow);

mainwindow?>show();

retrun temperature.exec();

}

3.2.3編譯調試

先生成.pro工程文件,采用progen方法為:$TMAKEDIR/bin/progen?T.app.t?otemperature.pro。用tmake命令生成Makefile文件,方法為:$TMAKEDIR/bin/tmake?oMakefiletemperature.pro,用make命令對整個工程進行編譯鏈接。調試過程中,先在開發機上用Qt/Embedded提供的模擬環境qvfb即Qt/Embedded的虛擬仿真窗口中進行測試[7]。

3.2.4移植程序到目標機

重新編譯程序,復制Qt/Embedded二進制庫和應用程序的二進制代碼到某個目錄下,把該目錄制成某種類型的根文件系統,最后將該根文件系統燒寫到S3C410的FLASH存儲器上[8]。

4結語

高性能的監控系統需要一個高性能,高可靠性的用戶界面的支持,基于Qt/Embedded的人機界面的設計,開發和維護成本低,人機交互信息豐富,豐富的API接口和基于組件的編程模型使得嵌入式應用程序開發更加便捷[9]。本文設計了基于S3C2410ARM微處理器和嵌入式Linux系統的實驗室環境監控系統,對基于Qt/Embedded開發嵌入式GUI,及Qt/Embedded編程的關鍵技術問題做了較詳細的論述。

參考文獻

[1] 楊柳,岳坤,龐和明,等.Qt/Embedded及嵌入式Linux在智能監控系統控制中的應用[J].計算機應用,2010,30(1):289?291.

[2] 楊柳,龐和明,姜琳穎,等.嵌入式Linux及SQLite數據庫在智能監控中的應用研究[J].微計算機信息,2010,26(24):65?67.

[3] 郭海濤,王進華.基于Qt支持庫的嵌入式系統中GUI分析與設計[J].江蘇電氣,2008(10):8?10.

[4] 張亞君,孔帥.基于Qt/Embedded和Qtopia的嵌入式GUI移植開發[J].天津職業大學學報,2010,19(1):78?82.

[5] 趙毅,游有鵬.基于Qt/Embedded的嵌入式數控系統人機界面設計與開發[J].工業控制計算機,2008,21(4):68?71.

[6] 孫巍,馮偉興.Qt/Embedded應用程序在ARM?Linux系統中開發與應用[J].計算機應用,2011,30(8):9?12.

[7] 陳鯤,陳云秋,劉信新.基于Qt/Embedded的嵌入式Linux應用程序的設計[J].計算機與數字工程,2009,37(1):156?158.

[8] 劉勝玉,張志新.基于Qt/Embedded的嵌入式監測系統人機界面[J].工業控制計算機,2009,22(9):17?18.

[9] 連照亮,徐世國.基于Qt/Embedde在嵌入式Linux下的應用研究[J].微計算機信息,2010,26(12):81?83.

主站蜘蛛池模板: 国产女人18水真多毛片18精品 | 亚洲V日韩V无码一区二区| 久996视频精品免费观看| 亚洲久悠悠色悠在线播放| 国产一级无码不卡视频| 精品国产91爱| 日本午夜精品一本在线观看| 91av成人日本不卡三区| 欧美亚洲国产一区| 日韩一区精品视频一区二区| 亚洲免费人成影院| 欧美高清日韩| 免费无码在线观看| 欧美曰批视频免费播放免费| 色婷婷在线影院| 欧美日一级片| 91福利在线观看视频| 国产幂在线无码精品| 欧亚日韩Av| 国产成人乱无码视频| 亚洲无码高清免费视频亚洲| 国产波多野结衣中文在线播放| 毛片网站在线看| 亚洲资源站av无码网址| 中日韩一区二区三区中文免费视频 | 久久久久久久97| 欧美区一区| 精品综合久久久久久97超人| 亚洲人精品亚洲人成在线| 国产男女免费完整版视频| 国产无码制服丝袜| 精品国产免费观看一区| 精品国产一二三区| 欧美激情综合| 自拍中文字幕| 亚洲无码电影| 亚洲一区二区精品无码久久久| 久久久91人妻无码精品蜜桃HD| 久久免费观看视频| 亚洲日韩精品综合在线一区二区| 国产精品嫩草影院视频| 国产美女丝袜高潮| 九九视频免费看| 婷婷综合亚洲| 亚洲男人在线| 国产嫩草在线观看| 日本黄色不卡视频| 第九色区aⅴ天堂久久香| 国产乱子伦视频在线播放| 久久国产精品麻豆系列| 国产情侣一区二区三区| 国产h视频在线观看视频| 国产一区二区三区在线观看免费| 亚洲国产成人综合精品2020 | 国产欧美日韩在线在线不卡视频| 午夜天堂视频| 久久国产av麻豆| 中文字幕在线一区二区在线| 欧美无专区| 国内视频精品| 日韩AV无码一区| 免费国产小视频在线观看| 欧美精品亚洲精品日韩专| jizz在线免费播放| 日a本亚洲中文在线观看| 在线观看av永久| 香蕉在线视频网站| 欧美一区福利| 国产69囗曝护士吞精在线视频| 亚洲欧洲日产国产无码AV| 亚洲丝袜中文字幕| 国产不卡国语在线| 热99精品视频| 国产精品一线天| 国产精品久久久久久影院| 午夜精品国产自在| 亚洲日本中文字幕天堂网| 国产成人精品一区二区三区| 色婷婷成人| 97国产精品视频自在拍| 久久人人爽人人爽人人片aV东京热| 99热这里只有精品在线观看|