新聞中心

EEPW首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > Qt跨平臺數(shù)字化壓力測量分析監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

Qt跨平臺數(shù)字化壓力測量分析監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

作者: 時間:2012-07-06 來源:網(wǎng)絡(luò) 收藏

摘要:利用Qt提供的C++應(yīng)用程序開發(fā)框架,以單片機(jī)技術(shù)、數(shù)據(jù)庫技術(shù)為基礎(chǔ),結(jié)合學(xué)校原有的測量儀器設(shè)計(jì)了一套包括計(jì)算機(jī)、儲存數(shù)據(jù)的測量。使用操作簡單,人機(jī)界面人性化,錯誤機(jī)制的反饋信息能幫助操作者及時處理錯誤操作,同時單組數(shù)據(jù)存儲幫助學(xué)生更好的記錄自己數(shù)據(jù),為學(xué)生提供了一個生動有趣全面的實(shí)驗(yàn)平臺。
關(guān)鍵詞:C++;Qt;數(shù)據(jù)庫;單片機(jī);串行通信

在應(yīng)用物理學(xué)科的“壓力測量”實(shí)驗(yàn)裝置中,使用了模擬電路,數(shù)字電路,傳感器與單片機(jī)等學(xué)科技術(shù)知識。為了完成數(shù)據(jù)采集與,單靠單片機(jī)技術(shù)所構(gòu)成的硬件系統(tǒng)架構(gòu),雖然可以做到實(shí)時的監(jiān)控,但不利于數(shù)據(jù)處理的深化與更加深入詳細(xì)的表達(dá),數(shù)據(jù)的記錄也會帶來誤差,為了解決這些問題,讓學(xué)生能更好的領(lǐng)略到時代的知識,在完成壓力測量檢測儀的基礎(chǔ)上,提出本課題的設(shè)計(jì)與實(shí)現(xiàn)。
PC機(jī)具有強(qiáng)大數(shù)據(jù)處理,圖像顯示以及實(shí)時監(jiān)控的能力,利用PC機(jī)的這些特點(diǎn),同時編寫友好的應(yīng)用程序來實(shí)現(xiàn)數(shù)據(jù)的采集與分析,具有特殊意義——能夠提升整套測試系統(tǒng)的處理能力的上位機(jī)得以呈現(xiàn)。
Qt提供的C++應(yīng)用程序開發(fā)框架,可以輕松實(shí)現(xiàn)“一次編寫,隨處編譯”的解決方案,編寫的應(yīng)用程序能完美運(yùn)行于從windows 98到windows 7,從Mac OSX到Linux,從Solaris,HP-UX到其他基于X11的眾多Unix平臺上。
這讓編寫的應(yīng)用程序可以運(yùn)行在不同的系統(tǒng),很大程度上方便移植。

1 總體架構(gòu)設(shè)計(jì)
軟件整體架構(gòu)包括完善的菜單欄、啟動畫面,工具欄,狀態(tài)欄和應(yīng)用程序主界面。軟件架構(gòu)如圖1所示。

本文引用地址:http://m.butianyuan.cn/article/193643.htm

d.JPG


由啟動畫面進(jìn)入程序主應(yīng)用程序,主應(yīng)用程序初始化界面提供一些必要的操作說明,單擊清除按鈕將會清除說明,然后進(jìn)入具體應(yīng)用程序配置,配置完成一些工具按鍵進(jìn)入使能狀態(tài)同時另一些按鍵進(jìn)入禁止使用狀態(tài)。
軟件保留一個按鍵作為切換測量與監(jiān)控模式,具體的模式由單片機(jī)程序決定,默認(rèn)為測量模式。
Qt是由C++體系實(shí)現(xiàn),采用先進(jìn)的信號槽機(jī)制,每一個類對應(yīng)一個功能,about.cpp中的about類提供軟件版本,作者和日期等信息,dis play.cpp中的Clock類提供數(shù)據(jù)回歸分析曲線擬合,fader.cpp中FaderWidget類提供對整體程序彈出窗口中淡入淡出效果,mainwindow.cpp中的MainWindow類提供應(yīng)用程序主體窗口,win_qextserialport.cpp提供的類用于串口配置底層驅(qū)動文件。

2 界面布局設(shè)計(jì)
2.1 菜單欄、工具欄以及狀態(tài)欄的實(shí)現(xiàn)
菜單可以讓用戶瀏覽應(yīng)用程序并且可以學(xué)會如何處理一些新的事情;上下文菜單和工具欄則提供了對那些常使用的功能進(jìn)行快速訪問的方法;狀態(tài)欄用于顯示狀態(tài)提示和其他一些臨時消息。
在Q1中實(shí)現(xiàn)這3個子窗口是相通的,原理一樣,實(shí)現(xiàn)手法一樣,只是對用戶而言看上去不一樣。Qt里面有一個類,叫做QAction,QAction保存有關(guān)于這個動作,也就是action的信息,神奇的是,QAction能夠根據(jù)添加的位置來改變自己的樣子,如果添加到菜單中,它就會顯示成一個菜單項(xiàng);如果添加到工具欄,它就會顯示成一個按鈕,QAction有一個屬性適用于狀態(tài)欄顯示setStatusTip。通過這個屬性可以設(shè)置狀態(tài)欄顯示信息。
example=new QAction(tr(“”),this);
example->setIcon(QIcon(“”));example->setStatusTip(tr(“”));
最后給動作添加一個槽,以便實(shí)現(xiàn)了信號槽connect(example,SIGNAL(triggered()),this,SLOT())。


上一頁 1 2 3 4 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉