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

基于Linux的遠程控制系統綜合實驗設計

2019-03-19 13:13:14鄭紅黨劉燦斌孫彥景
實驗技術與管理 2019年2期
關鍵詞:嵌入式設計

鄭紅黨, 劉燦斌, 孫彥景, 李 松

(中國礦業大學 信息與控制工程學院, 江蘇 徐州 221116)

隨著“三網融合”的提速,手機、數字電視、信息家電、網絡電話、汽車電子、醫療電子等行業成為嵌入式系統的重要應用領域[1-3]。盡管高校開設了嵌入式系統課程,但學生的軟件開發能力仍顯不足[4-5]。因此,相關實驗教學需更具直觀性和實用性[6],使學生能夠掌握嵌入式軟件開發的方法,具備計算機網絡、圖形界面設計、嵌入式服務器等技術的研發能力[7]。

常用嵌入式操作系統有Linux、Windows Mobile、VxWorks等。Linux開放源代碼,有GNU下的各種開源軟件的支持,且支持幾乎所有的嵌入式CPU,具有低開發成本、高開發效率的優勢,是目前應用最為廣泛的嵌入式操作系統[8]。本文基于Linux操作系統設計了遠程控制系統綜合實驗。下位機的應用軟件基于Linux操作系統開發,搭建了可外網訪問的Web服務器和簡單的圖形界面;上位機應用軟件基于Web和Electron技術開發,構建了桌面應用程序。

1 系統設計分析

遠程控制系統綜合實驗的功能為:用電腦或手機對嵌入式開發板中的LED燈、蜂鳴器和電位計進行遠程控制和狀態顯示,嵌入式開發板也可通過操作本地LCD面板界面控制設備和顯示設備狀態。設計包括上位機和下位機兩部分,如圖1所示。

圖1 系統設計

上位機提供桌面應用程序,對下位機中的LED燈和蜂鳴器進行遠程控制,并顯示下位機的狀態以及輔助性說明等內容。

下位機硬件采用三星Exynos4412嵌入式平臺,軟件設計選用Linux操作系統,運用QTE技術設計LCD面板的圖形用戶界面(GUI)。用戶可通過GUI操作,實現對下位機中LED燈、蜂鳴器的控制,實現電位計的數據采集,并在LCD面板中顯示各設備狀態。下位機還需搭建Boa Web服務器并使用內網透傳技術實現上位機的遠程訪問。

綜上,實驗內容具體包括:

(1) 嵌入式Linux開發環境的搭建及操作系統移植;

(2) 設備驅動程序的開發;

(3) 嵌入式圖形界面的設計;

(4) 嵌入式Web服務器的搭建;

(5) 內網透傳技術的實現;

(6) 上位機軟件設計。

有關嵌入式Linux環境的搭建、移植及設備驅動設計方面的文獻較多,本文不再贅述,重點介紹上述(3)—(6)項內容的實現。

2 圖形界面設計

2.1 圖形界面

采用QTE(Qt/Embedded)平臺設計面板的圖形界面。QTE是Qt平臺專門針對嵌入式Linux提供的API,可在嵌入式環境下構建GUI圖形界面。Qt Creator是跨平臺的Qt集成開發環境(IDE),有良好的圖形界面,通過“所見即所得”的開發方式,放置好控件并進行參數設定,即可生成Qt界面的XML文件[9]。

QMainWindow控件是窗體控件,是圖形界面的載體。根據開發板平臺顯示面板的分辨率,設置窗體的長寬為480×272像素,并且刪除無關的標題欄、信息欄、選單欄、達到簡約的效果。

下位機布置了3個Check Box控件:checkBox_led1、checkBox_led2、checkBox_beep,Check Box控件有“勾選”和“未勾選”兩種選擇,分別表示2個LED燈和蜂鳴器運行與否。

QLCDNumber控件是一個類似數碼管顯示效果的數字顯示控件,它支持配置顯示樣式以及數字的位數。該實驗中,能實時顯示電位計的AD采樣值,實例化為LCDNumber。

Label控件是可以顯示圖片、文字的標簽控件。在完成上述主要控件布置后,需要對軟件名稱、按鍵操作、顯示數字進行指引,故添加了若干Label控件。

2.2 通信機制

信號和槽是Qt自行定義的一種通信機制,應用于對象之間的通信[10]。當某個信號對其客戶或所有者的內部狀態發生改變,信號則被對象發射,和其相關聯的槽將被即時執行,就像一個正常的函數調用。信號和槽的關系如圖2所示。

圖2 信號與槽

設計中一共有3個控制控件及1個數字顯示控件,信號與槽的設計見表1。為實現電位計數值的動態變化,采用Timer定時器每隔500 ms觸發一次timerEvent事件。

表1 信號與槽函數對應關系

在MainWindow.cpp窗體對象中,進行Signal和Slot的連接:

connect(ui->checkBox_led1,SIGNAL(toggled(bool)),

this,SLOT(LED1_Toggle()));

connect(ui->checkBox_led2,SIGNAL(toggled(bool)),

this,SLOT(LED2_Togg,le())); connect(ui->checkBox_beep,SIGNAL(toggled(bool)),

this,SLOT(BUZZER_Toggle()));

startTimer(500);

對應的check_Box_ledx發出toggled信號,將執行LEDx_Toggled()函數:

LEDx_Toggled()

{LEDx=~LEDx;

if(LEDx==0)

{ioctl(fb_led,1,1);}

else

{ioctl(fb_led,0,1);}

}

3 遠程控制

為實現上位機(本地計算機或手機)的遠程控制,搭建了BOA服務器。BOA是一個小型的嵌入式Web服務器,可以有效減少資源的占用,提高Web服務器的穩定性與可靠性,支持CGI編程和單線程處理用戶的訪問[11]。

為實現上位機與下位機不在同一局域網內的遠程控制,設計中搭建了NGROK服務器,使用內網透傳技術實現局域網內的服務器被外網訪問。NGROK是一款開源的軟件,內網透傳的原理為反向代理。服務端要求有公網的IP地址,內網設備有相對固定的訪問接口,內網與公網NGROK服務端之間建立通道,進行反向代理,實現對客戶端的動態域名解析[12]。

從NGROK官方網站ngrok.org可以得到免費的NGROK服務,下載對應平臺的客戶端并運行,就可以通過域名訪問內網的資源。設計中將本地的80端口映射為test.ngrok.cucb17.cn。

下位機軟件包括BOA服務器和QTE的GUI軟件。模擬Linux設備驅動程序的方法,使用了共享文件的方式實現兩者的通信,程序流程如圖3所示。

圖3 程序流程圖

4 上位機軟件設計

使用Web技術設計上位機界面,再用Electron構建一個桌面應用程序。Electron是使用Web前端技術開發跨平臺桌面應用的開源庫,它將Chromium和Node.js整合為一體,由Chromiun負責渲染前端界面,Node.js負責后臺的數據處理,并支持將Electron環境下運行的程序打包為Mac,為Windows和Linux系統下無環境依賴的桌面應用程序[13]。

上位機界面包括控制操作以及下位機狀態顯示。根據需求,將上位機界面劃分為幾個區域:

(1) 標題信息區:用于顯示基本的標題和信息;

(2) 控制操作區:用于顯示控制界面;

(3) 數據接收區:用于接收下位機返回的數據;

(4) 時延顯示區:用于顯示連接時延;

(5) IP配置區:用于進行遠程IP地址的配置。

使用屬性,添加了訪問設備地址的選擇區域。訪問設備地址IP有2種選項:(1)本地控制,上位機與下位機在同一局域網內;(2)遠程控制模式,NGROK服務器主機位于紐約。

根據手機和PC端的兩種應用場景,分別進行界面布局。以手機為例,手機通常是屏幕較小的手機,豎屏顯示,其典型的顯示分辨率為360×640像素,界面設計如圖4所示。

圖4 手機控制界面

桌面應用程序實際運行方式為命令行,輸入eletron main.js執行,main.js為主程序。配置窗體信息以及進行數據處理的主要代碼如下:

function createWindow() {

mainWindow = new BrowserWindow({width: 360, height: 640})

mainWindow.loadURL(url.format({

pathname:path.join(__dirname, ′index.html′),

protocol: ′file:′,

slashes: true

}))

……}

5 結語

基于Linux遠程控制系統的綜合實驗內容既有Linux系統移植、驅動開發基本實驗,也有應用層軟件嵌入式圖形界面、Web服務器以及上位機應用程序的開發實驗。通過LCD面板界面和上位機軟件可同時控制LED燈和蜂鳴器并顯示其狀態,實驗結果具有直觀性。

猜你喜歡
嵌入式設計
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
TS系列紅外傳感器在嵌入式控制系統中的應用
電子制作(2019年7期)2019-04-25 13:17:14
嵌入式系統通信技術的應用
電子制作(2018年18期)2018-11-14 01:48:16
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
搭建基于Qt的嵌入式開發平臺
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
嵌入式軟PLC在電鍍生產流程控制系統中的應用
電鍍與環保(2016年3期)2017-01-20 08:15:32
Altera加入嵌入式視覺聯盟
主站蜘蛛池模板: 丝袜久久剧情精品国产| 亚洲无码熟妇人妻AV在线| 国产精品亚欧美一区二区三区| 久久国产精品波多野结衣| 欧亚日韩Av| 久久一日本道色综合久久| 无码啪啪精品天堂浪潮av| 老司机aⅴ在线精品导航| 亚洲色成人www在线观看| 成人午夜福利视频| 久久久成年黄色视频| 国产黑丝一区| 午夜无码一区二区三区在线app| 啦啦啦网站在线观看a毛片| 日韩精品成人在线| 亚洲日韩每日更新| 天天综合天天综合| 国产在线麻豆波多野结衣| 99资源在线| 国产男女免费视频| 国产成人乱码一区二区三区在线| 欧美日韩国产成人在线观看| 亚洲va欧美va国产综合下载| 国产一区成人| 性色一区| 亚洲国产日韩在线观看| 影音先锋亚洲无码| 亚洲综合第一页| 日本国产一区在线观看| 亚洲人成网7777777国产| 波多野结衣中文字幕久久| 九九久久精品免费观看| 丰满人妻一区二区三区视频| 2021天堂在线亚洲精品专区| 日韩无码一二三区| 亚洲国产成人久久77| 国产美女精品一区二区| 国产精品三区四区| 茄子视频毛片免费观看| 91视频青青草| 免费av一区二区三区在线| 波多野结衣国产精品| 国产精品久久久久久久久kt| 国产毛片久久国产| 国产高清不卡| 麻豆精品视频在线原创| 四虎精品黑人视频| 久久人人妻人人爽人人卡片av| 亚洲美女久久| 欧美人与牲动交a欧美精品 | 在线一级毛片| 不卡国产视频第一页| 日本黄色a视频| 曰韩人妻一区二区三区| 久久影院一区二区h| 香蕉久久国产精品免| 激情综合网激情综合| 最近最新中文字幕在线第一页| 一边摸一边做爽的视频17国产| 91国内外精品自在线播放| 欧美色99| 国产精品久久久精品三级| 国产丰满大乳无码免费播放| 老司机精品一区在线视频 | 免费在线播放毛片| 无码人中文字幕| 91国内视频在线观看| 国产美女免费| 性做久久久久久久免费看| 四虎在线高清无码| a毛片免费看| 国产伦精品一区二区三区视频优播 | 国产视频入口| 亚洲免费人成影院| 国产v欧美v日韩v综合精品| 国产精品太粉嫩高中在线观看| 一级毛片免费的| 国产精品 欧美激情 在线播放| 在线欧美日韩国产| 人妖无码第一页| 国产在线视频福利资源站| 欧美一级视频免费|