基于ARM和Linux通用工控平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)
2 PC模擬器開發(fā)環(huán)境搭建
建立自己的開發(fā)目錄,解壓文件libminigui-1.3.3.tar.gz和minigui-res-1.3.3.tar.gz;編譯安裝MiniGUI運(yùn)行所需庫(kù)文件libminigui;安裝資源文件minigui-res-1.3.3;修改/etc/ld.so.conf 文件,加入一行/usr/local/lib,然后執(zhí)行[root]# ldconfig 按照硬件平臺(tái)配置與開發(fā)環(huán)境的設(shè)置修改minigui配置文件,包括修改路徑,屏幕分辨率等。
PC模擬器開發(fā)環(huán)境搭建完畢后,就可在 PC上開發(fā)應(yīng)用程序,在 qvfb中執(zhí)行,驗(yàn)證程序的正確后,就可以進(jìn)行交叉編譯下載運(yùn)行。
3 交叉編譯Minigui1.3.3
解壓arm-Linux-2.95.3.bz2文件安裝交叉編譯工具?cross-2.95.3,安裝之后修改.bashrc腳本,設(shè)置環(huán)境變量:PATH="$PATH:/sbin:/usr/local/arm/2.95.3/bin:/usr/local/bin:/usr/local"。
接下來依次安裝 zlib庫(kù),png庫(kù)、libttf庫(kù),它們的作用分別是:其他的庫(kù)的編譯基礎(chǔ)、顯示PNG圖形、顯示文字。完成以上附加庫(kù)的交叉編譯工作后就可以編譯libminigui了。把/usr/local/arm/2.95.3/arm-Linux/lib中相應(yīng)的庫(kù)拷到目標(biāo)板/usr/lib目錄下,拷貝時(shí)先對(duì)庫(kù)文件執(zhí)行arm-Linux-strip命令,去除文件中的調(diào)試信息。同時(shí)把資源文件復(fù)制到目標(biāo)平臺(tái)的/usr/local/lib目錄下。這樣就完成了交叉編譯工作,可以將PC上調(diào)試好的應(yīng)用程序下載到目標(biāo)硬件平臺(tái)下進(jìn)行應(yīng)用了。
通用工控平臺(tái)人機(jī)界面開發(fā)
1 人機(jī)交互界面需求分析及總體設(shè)計(jì)
通用工控平臺(tái)通信人機(jī)交互界面是集功能演示、信息采集、設(shè)備狀態(tài)、通信交互等功能于一身的人機(jī)交互平臺(tái),可以高效、直觀的顯示通用工控平臺(tái)的基本信息,同時(shí)有效的指導(dǎo)用戶的操作,提高使用效率,是用戶和通用工控平臺(tái)交互的主要方式。
該人機(jī)交互界面顯示器選用PHILIPS公司的14英寸彩色顯示屏,軟件運(yùn)行環(huán)境選用嵌入式操作系統(tǒng)Linux 2.6.21和GUI開發(fā)環(huán)境MiniGUI 1.3.3構(gòu)成,整個(gè)軟件的設(shè)計(jì)過程需要完成以下功能:
(1) 實(shí)時(shí)顯示該平臺(tái)具體信息,及本網(wǎng)內(nèi)在線的其他工控設(shè)備的信息;
(2) 以該平臺(tái)為控制器實(shí)現(xiàn)對(duì)本網(wǎng)內(nèi)在線的其他常見設(shè)備的多線程信息采集與控制;
(3) 以UDP及RS485兩種通信方式實(shí)時(shí)控制工控網(wǎng)絡(luò)內(nèi)部;
(4) 對(duì)工控設(shè)備掉線自動(dòng)斷開連接,防止用戶誤操作;
通用工控平臺(tái)通信人機(jī)交互界面主要是針對(duì)UDP和RS485兩種組網(wǎng)方式基于Modbus協(xié)議完成工控系統(tǒng)中功能演示、信息采集、設(shè)備狀態(tài)、通信交互的功能,設(shè)計(jì)上要求簡(jiǎn)單實(shí)用,操作方便,而復(fù)雜的界面會(huì)帶來不必要的開銷并影響性能。根據(jù)需求分析設(shè)定人機(jī)交互界面整體設(shè)計(jì)方案及效果圖如圖3、圖4所示。
圖3 人機(jī)交互界面整體設(shè)計(jì)方案
圖4 總體效果圖
評(píng)論