前 言
隨著計算機技術和網絡技術的飛速發展,Internet網已成為信息交流的重要渠道,基于WebB/S(BroWser/Server)遠程監控技術的應用也越來越廣泛。將這種技術應用于工業現場控制,用戶可在Internet接入的地方,實現對工業現場設備進行遠程監控,是當前倍受關注和研究熱點的真正意義上的工業控制遠程監控系統。CAN bus是一種有效支持分布式控制和實時控制的優秀工業控制現場總線,與其它通信總線相比,具有突出的可靠性、實時性和靈活性。由CAN總線組成的分布式控制系統與Internet網絡連接的嵌入式系統集成后的遠程監控系統,可把工業控制現場的數據信息實時可靠地傳輸,實現工控現場與管理信息系統(MIS)的無縫連接。本系統針對通信用多逆變模塊電源系統的遠程監控要求,通過CAN總線與底層多逆變電源模塊連接、通過Web服務器接入Internet的嵌入式系統,成功實現了對底層工業現場設備的遠程監控和管理。
CAN總線與嵌入式操作系統
CAN(CoNtroller Area Net)總線
CAN總線是一種多主總線,通信速率可達1Mb/s。CAN總線的通信接口集成了CAN協議的物理層和數據鏈路層功能,可完成包括位填充、數據塊編碼、循環冗余檢驗、優先級判別等通信數據的成幀處理。CAN bus協議廢除了傳統的站地址編碼,采用了對通信數據塊進行編碼的方式,這種方法可使網絡內的節點個數在理論上不受限制。數據塊的標識碼由11位或29位二進制數組成,即可定義211或229個不同的數據塊。這種按數據塊編碼的方式,可以使不同的節點同時接收到相同的數據,這一點在分布式控制系統中非常有用。因為CAN bus采用短幀格式通信,每幀最多有8個字節數據,可滿足工業領域中控制命令、工作狀態及測試數據的一般要求。同時,8個字節不會占用總線時間過長,保證了通信系統的實時性要求。同時CAN bus協議采用CRC檢驗并提供相應的錯誤處理功能,保證了數據通信的可靠性。CAN總線的上述特點非常適合工業現場過程監控設備的互連。
CAN總線采用多主競爭方式工作和非破壞性總線仲裁技術,總線上任意節點可在任意時刻主動地向網絡上其它節點發送信息而不分主次,各節點之間實現自由通信。當多個節點同時向總線發信息時,優先級較低的節點會主動退出發送,而優先級較高的節點不受影響。大大節省了總線沖突仲裁時間,在網絡負載很重的情況下,也不會出現網絡癱瘓的情況。因此,適用于分布式監控系統的數據通訊。
嵌入式操作系統
嵌入式操作系統(Embedded Operation System簡稱EOS)是嵌入式技術或嵌入式系統的關鍵技術之一。嵌入式系統(Embedded System)是對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統。簡單的嵌入式系統并不使用操作系統,只包含一些控制流程。但當功能復雜化以后(如圖像用戶界面和網絡支持等),簡單的流程控制不能滿足系統的要求,這時就必須考慮采用操作系統作為系統軟件。嵌入式操作系統uclinux是在Linux2. 0版本的基礎上裁減掉存儲器管理單元(Memory Management Unit簡稱MMU)得到的。此外,為了將系統設置成為網絡服務器,需另外移植并調試通過支持公共網關接口(CG I:Common Gateway Interface)的HTTP服務器軟件BOA。
系統工作原理
系統簡介
針對通信用多逆變模塊電源系統的遠程監控要求,在嵌入式核心板的基礎上擴展了CAN總線接口,整個系統稱為嵌入式遠程監控系統(uCremM)。它基于Motorola公司的ColdFire5272CPU,2M FLASHMEMORY、32M DRAM以及UART、ETHERNET網卡等外圍設備接口,CAN總線控制芯片采用英飛凌的82C900,SPI接口支持CAN2. 0B。
監控系統板利用RS232串口線和雙絞線與宿主PC機相連,組成可以交叉編譯的開發環境。編譯語言為標準C,在宿主PC機上編譯uClinux內核并下載到uCremM板上,由uCremMMOUNT上宿主機上的應用程序開發目錄,就可以在PC機的L inux環境下進行嵌入式應用程序開發,最后重新編譯包括應用程序的內核并燒寫到uCremM上的FLASHMEMORY 就完成了監控系統的軟件。 [page]
系統結構及結構流程
系統結構如圖1所示。
圖1監控系統結構框圖
本系統由嵌入式uCremm與現場數據采集節點組成主從(Masterand Slave)關系,數據結構參考CAN總線通訊協議。
1)系統下層結構流程。由主站按授權用戶要求向指定MCU系統發出查詢信息,實現對工控現場節點查詢功能;各個CAN節點隨時監聽總線,當發現總線上有地址段與自己的地址相同的幀時,再判斷是遠程幀還是數據幀:如果是遠程幀,則由CANbus節點按既定協議發送數據到總線上;否則節點開始接收CANbus上的數據幀。嵌入式uCremM與Internet的互聯以及與用戶的交互功能,則由其嵌入式操作系統中的網絡服務器來完成。嵌入式uCremM上配有以太網接口RJ45,當用網線把uCremM與Internet連接,并配置好IP地址且運行網絡服務器后,授權用戶就可在INternet上任何一臺機器的瀏覽器中敲入IP地址,訪問存在嵌入式uCremM中的主頁了。
2)用戶與服務器的交互是通過CGI程序來完成的。簡單地講,CGI是一個運行在Web服務器上的程序,由瀏覽器的輸入觸發。這個腳本通常是客戶端與服務器中其他程序如數據庫的橋梁。
用戶可以通過點擊頁面,查詢來自現場的數據,如逆變模塊的電壓、電流和功率等;或者發送命令,如設置模塊最高直流輸入和交流輸出等數值。
CAN總線通訊協議及程序流程
目前有3種CAN通訊協議,包括CAN2. 0A,CAN2. 0B和CAN2. 0B passive,CAN2. 0B是最通用的CAN通訊協議。CAN的3種通訊協議間的區別就是協議中定義的標識符的長度不同。CAN2. 0A協議中僅定義了具有11位標識符的標準幀數據結構,CAN2. 0B協議中除了定義標準幀外還定義了具有29位標識符的擴展幀數據結構。
本系統定義在CAN總線上傳輸的數據包為標準幀格式,它分為遠程幀和數據幀兩種,區別遠程發送請求位是否置位。標準幀的數據結構如表1所示。
表1標準幀格式
在設計中,本系統以嵌入式監控系統來完成對各個分布的逆變電源模塊的參數上傳和設置。當CAN控制器發出要求逆變電源模塊上傳數據的遠程幀時,系統定義了遠程幀中的11位標識符中高5位作為各模塊的模塊號標識,同樣在各模塊的CAN控制器中的Msg ID 寄存器也作了相應的設置。另外在幀格式中的遠程發送請求位必須置“1”,DLC全置“0”,數據域無數據信息。遠程幀舉例見表2。[page]
表2遠程幀舉例
當CAN控制器發出設置逆變模塊開關和模塊參數的數據幀時,定義中除了標識符的設置外,遠程發送請求位被置為“0”,DLC置“1000”表示一幀數據信息中的數據域有8個節字的數據要發送。CAN控制器發送設置(修改)逆變模塊參數的數據幀時,數據結構如表3所示。
表3模塊參數格式
在CAN控制器發送設置逆變模塊開關機的數據幀時,開關機信息由一位數據表示,緊跟命令編碼。當數據值為0FH時,表示逆變模塊關機;當數據值為01H時,表示逆變模塊開機。除了發送數據信息外,系統還要接收來自各個逆變模塊的告警信息幀和模塊參數數據幀信息,接收數據幀的格式仍然參考上例制定。主站程序流程圖如圖2所示。
圖2主站程序流程圖
[page]網絡服務器配置及主頁設計
通過在嵌入式uCremm上的uClinux操作系統上移植HTTP服務器軟件BOA,并設置其配置文件(boa. conf),可以指定主頁和CGI程序所在路徑。這里CGI程序用C語言編寫,其實就是一些應用程序,如CAN通訊數據等,只是它能由遠程瀏覽器通過點擊主頁而激活,從而實現瀏覽器和服務器的交互功能。如圖3所示,用戶在遠程瀏覽器中輸入嵌入式Webserver的IP地址后,需要登錄用戶名及密碼,當得到服務器確認后,進入監控界面。圖4為監控系統登陸界面,圖5為系統主參數界面。
圖3瀏覽器和服務器的交互功能示意圖
圖4監控系統登陸界面
圖5系統主參數界面
利用網頁來顯示監控界面, 使監控系統由傳統的C?S 模式(Clien t?Server) 轉變為更先進的B?S 模式(B row ser?Server) , 不僅節省了購買和開發監控上位機軟件的費用, 而且使之成為不受地域限制上的真正意義的遠程監控系統。
總結
嵌入式系統具有可裁減、體積小和進程及內存管理、網絡支持等功能的獨特設計和極高的可靠性; 而CAN 總線具有多主站運行和分散仲裁以及廣播通信的特點和可不分主次任意節點可在任意時刻主動向網絡上其它節點發送信息,實現自由通信卓越特性和功能。因此將CAN 總線與嵌入式系統的技術融合,將是后PC 時代的發展趨勢。本系統針對通信用多逆變模塊電源系統的遠程監控要求而開發研制,其技術完全可以移植到樓宇自動化、工業底層設備網絡等其它遠程監控場合。
-
嵌入式
+關注
關注
5069文章
19021瀏覽量
303412 -
CAN總線
+關注
關注
145文章
1936瀏覽量
130633 -
操作系統
+關注
關注
37文章
6742瀏覽量
123194
發布評論請先 登錄
相關推薦
評論