基于CAN總線的分布式嵌入式遠(yuǎn)程監(jiān)控系統(tǒng)研制
表2 遠(yuǎn)程幀舉例
當(dāng)CAN控制器發(fā)出設(shè)置逆變模塊開關(guān)和模塊參數(shù)的數(shù)據(jù)幀時(shí),定義中除了標(biāo)識(shí)符的設(shè)置外,遠(yuǎn)程發(fā)送請求位被置為“0”,DLC置“1000”表示一幀數(shù)據(jù)信息中的數(shù)據(jù)域有8個(gè)節(jié)字的數(shù)據(jù)要發(fā)送。CAN控制器發(fā)送設(shè)置(修改)逆變模塊參數(shù)的數(shù)據(jù)幀時(shí),數(shù)據(jù)結(jié)構(gòu)如表3所示。
表3 模塊參數(shù)格式
在CAN控制器發(fā)送設(shè)置逆變模塊開關(guān)機(jī)的數(shù)據(jù)幀時(shí),開關(guān)機(jī)信息由一位數(shù)據(jù)表示,緊跟命令編碼。當(dāng)數(shù)據(jù)值為0FH時(shí),表示逆變模塊關(guān)機(jī);當(dāng)數(shù)據(jù)值為01H時(shí),表示逆變模塊開機(jī)。除了發(fā)送數(shù)據(jù)信息外,系統(tǒng)還要接收來自各個(gè)逆變模塊的告警信息幀和模塊參數(shù)數(shù)據(jù)幀信息,接收數(shù)據(jù)幀的格式仍然參考上例制定。主站程序流程圖如圖2所示。
圖2 主站程序流程圖
網(wǎng)絡(luò)服務(wù)器配置及主頁設(shè)計(jì)
通過在嵌入式uCremm上的uClinux操作系統(tǒng)上移植HTTP服務(wù)器軟件BOA,并設(shè)置其配置文件(boa. conf),可以指定主頁和CGI程序所在路徑。這里CGI程序用C語言編寫,其實(shí)就是一些應(yīng)用程序,如CAN通訊數(shù)據(jù)等,只是它能由遠(yuǎn)程瀏覽器通過點(diǎn)擊主頁而激活,從而實(shí)現(xiàn)瀏覽器和服務(wù)器的交互功能。如圖3所示,用戶在遠(yuǎn)程瀏覽器中輸入嵌入式Webserver的IP地址后,需要登錄用戶名及密碼,當(dāng)?shù)玫椒?wù)器確認(rèn)后,進(jìn)入監(jiān)控界面。圖4為監(jiān)控系統(tǒng)登陸界面,圖5為系統(tǒng)主參數(shù)界面。
圖3 瀏覽器和服務(wù)器的交互功能示意圖
圖4 監(jiān)控系統(tǒng)登陸界面
圖5 系統(tǒng)主參數(shù)界面
利用網(wǎng)頁來顯示監(jiān)控界面, 使監(jiān)控系統(tǒng)由傳統(tǒng)的C?S 模式(Clien t?Server) 轉(zhuǎn)變?yōu)楦冗M(jìn)的B?S 模式(B row ser?Server) , 不僅節(jié)省了購買和開發(fā)監(jiān)控上位機(jī)軟件的費(fèi)用, 而且使之成為不受地域限制上的真正意義的遠(yuǎn)程監(jiān)控系統(tǒng)。
總結(jié)
嵌入式系統(tǒng)具有可裁減、體積小和進(jìn)程及內(nèi)存管理、網(wǎng)絡(luò)支持等功能的獨(dú)特設(shè)計(jì)和極高的可靠性; 而CAN 總線具有多主站運(yùn)行和分散仲裁以及廣播通信的特點(diǎn)和可不分主次任意節(jié)點(diǎn)可在任意時(shí)刻主動(dòng)向網(wǎng)絡(luò)上其它節(jié)點(diǎn)發(fā)送信息,實(shí)現(xiàn)自由通信卓越特性和功能。因此將CAN 總線與嵌入式系統(tǒng)的技術(shù)融合,將是后PC 時(shí)代的發(fā)展趨勢。本系統(tǒng)針對(duì)通信用多逆變模塊電源系統(tǒng)的遠(yuǎn)程監(jiān)控要求而開發(fā)研制,其技術(shù)完全可以移植到樓宇自動(dòng)化、工業(yè)底層設(shè)備網(wǎng)絡(luò)等其它遠(yuǎn)程監(jiān)控場合。 linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論