CAN總線在逆變電源監(jiān)控模塊中的研究與應用
新型高頻中小功率逆變電源設備運用電源模塊之間的并聯實現功率合成,組成積木式、智能化的分布式大功率電源系統(tǒng),是當今很有應用前景的新型技術。將若干電源模塊組合起來,可以構成任意功率等級的供電系統(tǒng),有著廣泛的應用前景。以現場總線為基礎的全數字化自動控制系統(tǒng)是當今世界各國在工業(yè)自動化領域的熱點課題。本文采用CAN現場總線組建監(jiān)控網絡,對含DSP的嵌入式智能控制器的電源模塊進行單模塊和多模塊監(jiān)控。
CAN (Controler Area Network)總線屬于現場總線的范疇,是一種串行數據通信總線。CAN總線結構模型取ISO/OSI參考模型的第1、2、7層協(xié)議,即物理層、數據鏈路層和應用層。應用層的內容主要取決于用戶的需要,所以實際應用CAN總線時,用戶可以根據需要實現應用層的功能。
2 系統(tǒng)結構
逆變電源現場總線監(jiān)控系統(tǒng)包括上位機操作站、現場DSP模塊控制器。在系統(tǒng)中設置一臺PC計算機(以下均稱操作站),它負責對整個系統(tǒng)進行管理。操作站通過CAN接口適配卡與以DSP為核心的逆變電源模塊控制器(以下均稱控制器)通信,實現對逆變電源的監(jiān)控功能。系統(tǒng)采用適配卡SC2102作為PC機與CAN總線的接口,通過連接器與CAN總線相連,負責CAN總線與PC機之間數據交換的功能模塊。各個電源模塊的控制器間以及模塊控制器與操作站之間通過控制器局域網(CAN)連接通信,在硬件實現上采用DSP TMS320LF2407A的內嵌CAN控制器實現與上位機的數字通信。
操作站軟件分為三個基本的模塊:通信模塊、主監(jiān)控模塊、數據管理模塊。通信模塊的功能包括利用CAN適配卡及其函數庫,實現CAN總線應用層協(xié)議,實現操作站與各控制器的網絡通信,完成通信命令和數據的編/解碼以及特殊處理。主監(jiān)控模塊的功能包括提供監(jiān)控界面;系統(tǒng)運行的初始化配置功能;查詢各現場單元的實時采集數據,并將數據實時顯示;設置被控對象的參數,保證逆變電源的正常運行。數據管理與顯示模塊包括對各現場單元的采集數據的處理,報警,統(tǒng)計,報表查詢輸出;數據查詢等。
3 CAN總線應用層的實現
CAN物理層和數據鏈路層協(xié)議在CAN的相關器件中已經基本實現了,而應用層協(xié)議至今仍然沒有統(tǒng)一的標準,并且現實應用又是多種多樣的,所以,如何選用或制定一種CAN應用層協(xié)議,就成為CAN網絡應用中的核心問題。
3.1報文格式
操作站與控制器之間的通信是實現監(jiān)控制功能的基礎和關鍵。針對逆變電源監(jiān)控系統(tǒng),經過通信雙方具體協(xié)商制定,使用現場總線CAN網絡技術,制定了CAN應用層協(xié)議,包括報文格式,標識符的分配,多報文的處理,錯誤處理等。報文個格式如圖2所示。
(1)廣播位 操作站向控制器發(fā)送廣播時該位為1,其它情況為0。
(2)目標地址 表示數據報文所要到達節(jié)點的地址。
(3)數據包類型(TYPE) 報文的類型。
(4)RTR位 在數據報文中必須是“顯性”電平0,在遠程報文中必須是“隱性”電平1。
(5)數據長度碼DLC 標識報文中該字節(jié)往后的數據長度,最長為8字節(jié)。
(6)源地址 表示發(fā)出數據報文的節(jié)點地址,當接收節(jié)點收到此報文后,會把此源地址作為目標地址發(fā)送響應報文。
(7)忙 表示操作站正與某一控制器通信,此時此位為1。
3.2標識符分配方案
由CAN的數據鏈路層協(xié)議已經知道,CAN的每一幀都有一個11位的標識符,用來標識該幀數據,并且決定仲裁。
標識符分配是CAN應用層協(xié)議中的重要問題,標識符要能反映報文的地址信息,報文類型,體現報文級別。另外,很重要的是報文標識符決不能重復。在逆變電源監(jiān)控系統(tǒng)CAN應用層協(xié)議中,標識符由三項確定:廣播位,地址域和數據包類型域,如圖3所示。
這三項包含了是主機還是從機,網絡節(jié)點地址以及報文承載的數據信息。廣播位決定一半的優(yōu)先級,因此主機發(fā)出的命令優(yōu)先級一定高于從機的數據。網絡節(jié)點地址域使不同節(jié)點發(fā)出的報文標識符不同。
3.3 多報文的處理
在數據鏈路層中,CAN協(xié)議規(guī)定每幀最大8字節(jié)。為了傳輸大于8字節(jié)的數據包,在應用層中采用多報文機制。多報文發(fā)送時要有報文標識,在多報文的發(fā)送期間通過識別這一標識判斷是否屬于同一多報文,在多報文發(fā)送完畢時有多報文結束標識。在報文發(fā)送期間,如果同時收到其它報文則不做處理,待多報文發(fā)送完畢后再讓它重新發(fā)送。
3.4 錯誤處理
對于數據傳輸中的錯誤,應采取分層的概念做出處理。即下一層對上一層提交一定可信度的信道,使上一層只關注于解決本層可能出現的錯誤,并解決下一層無法處理,提交上來的錯誤。反之,上一層如果認為下一層信道是安全可靠的,在把數據交給下一層后,它將不認為會出現數據傳輸錯誤,當然對線路斷開,目的站離線等嚴重錯誤,下一層無法解決的錯誤,交給上一層后,上層要有解決措施,幫助恢復下層信道。
評論