杜惠明,胡康杰,趙 昊
(武漢電力設備廠,湖北 武漢 430064)
CAN總線具有配置靈活、高可靠性、高速性、非破壞性總線仲裁技術(shù)、自動判斷數(shù)據(jù)錯誤、高效的短幀結(jié)構(gòu)抗干擾能力強、自動重發(fā)功能、解決總線競爭功能以及具有報文優(yōu)先權(quán)進行總線訪問機制等優(yōu)點,廣泛應用于交通工具、自動控制、機械工業(yè)、建筑以及航空航天等領(lǐng)域。
可編程控制器(PLC)是以微處理器為根基的通用工業(yè)控制裝置,自1969年誕生以來,已成為現(xiàn)代工業(yè)生產(chǎn)自動控制的支柱設備。但由于功能需求、價格等因素,應用在一般的中小型控制系統(tǒng)中的可編程控制器往往只提供傳統(tǒng)的RS485或RS232串口通訊接口,具有一定的局限性。本文介紹了普遍運用于中小型控制系統(tǒng)中的西門子SMART 200系列PLC作為控制單元與現(xiàn)場總線控制系統(tǒng)的CAN總線控制器的通訊方法及實現(xiàn)。
CAN屬于現(xiàn)場總線的范疇,是一種高可靠性、高性能、易開發(fā)和低成本的多主方式的串行數(shù)據(jù)通信協(xié)議。電氣傳輸介質(zhì)方式包括以下使用方式:單線總線、兩線總線、共用一條線傳輸信號和供電。在實際應用中,普遍采用的傳輸方式為兩線總線式,該方式可以抑制共模誤差,保證信號在非常低的信號電平下可靠傳輸,傳輸介質(zhì)為高抗干擾能力的雙絞線。
CAN的數(shù)據(jù)格式依據(jù)標識符(ID)長度分為標準格式和擴展格式兩種格式:具有11位標識符的稱為標準幀,而具有11位基本標識符和18位擴展標識符的則稱為擴展幀。如圖1所示,數(shù)據(jù)幀由幀起始、仲裁域、控制域、數(shù)據(jù)域、CRC校驗域、應答域和幀結(jié)束7個不同的部分組成。其中在標準消息格式幀中,幀起始1位,11位標識符和1位遠程發(fā)送請求組成仲裁域,控制域6位,數(shù)據(jù)域0-8個字節(jié)(每個字節(jié)8位),15位的CRC序列和1位CRC界定符組成CRC校驗域,應答域為1位應答位和1位應答界定位組成,幀結(jié)束7位。在擴展消息格式幀中,與標準消息格式幀唯一不同的是仲裁域,其仲裁域由11位基本標識符、代替遠程請求位、標識符擴展位、18位擴展標識符、遠程發(fā)送請求位組成,其他與標準格式相同。
圖1 數(shù)據(jù)幀格式Fig.1 Data frame format
西門子 SMART 200系列PLC產(chǎn)品本身不支持CAN總線通訊協(xié)議,但其支持自由串口協(xié)議,控制系統(tǒng)中需要第三方設備將PLC能接受的通訊協(xié)議轉(zhuǎn)換成CAN總線通訊協(xié)議。CANCOM-100IE智能協(xié)議轉(zhuǎn)換器可以快速地實現(xiàn)RS-232/485/422通訊設備與CAN-bus現(xiàn)場總線設備雙向數(shù)據(jù)通訊。轉(zhuǎn)換器串口通訊速率在600-230 400 bps之間可以設定,CAN-bus通訊速率設置范圍為5 Kbps—1 Mbps。轉(zhuǎn)換器提供透明轉(zhuǎn)換、透明帶標識轉(zhuǎn)換、格式轉(zhuǎn)換三種數(shù)據(jù)轉(zhuǎn)換模式??梢愿鶕?jù)實際運用情景,通過轉(zhuǎn)換器配套的配置軟件靈活設置其運行參數(shù),產(chǎn)品外觀如圖2所示。
圖2CANCOM-100IE外觀Fig.2 The appearance of CANCOM-100IE
CANCOM-100IE智能轉(zhuǎn)換器具有兩類用戶接口:一類是CAN-bus通訊接口;一類是串口通訊接口:2線制RS-485通訊接口、3線制RS-232通訊接口、4線制RS-422通訊接口,其引腳接口定義如表1所示。
表1 CAN接口引腳定義Tab.1 The pin definition of the CAN interface
通過軟件進行參數(shù)配置前,需將智能轉(zhuǎn)換器撥碼至配置“CFG”模式,配置參數(shù)類型主要為3大類,分別為轉(zhuǎn)換參數(shù)、串口參數(shù)、CAN參數(shù)。轉(zhuǎn)換參數(shù)主要有轉(zhuǎn)換模式、轉(zhuǎn)換方向參數(shù)設置;串口參數(shù)包括波特率、串口校驗方式;CAN參數(shù)由波特率、幀類型、濾波等參數(shù)組成。在系統(tǒng)中,應根據(jù)實際情況來適當配置相關(guān)參數(shù),其配置界面如圖3所示。
丹弗斯MC系列控制器采用ARM處理器,具有超大內(nèi)存空間和較強的數(shù)字處理能力。12位A/D分辨率,與傳統(tǒng)控制器相比具有更高的精度。通訊接口為CAN總線,其通過PLUS+1 GUIDE軟件(圖形用戶集成開發(fā)環(huán)境)開發(fā)程序,類似Autocad繪圖軟件界面,使電氣工程師能輕松上手,PLUS+1 GUIDE開發(fā)程序界面如圖4所示。
圖3 CANCOM-100IE轉(zhuǎn)換器配置工具Fig.3 The configuration tool of CANCOM-100IE converter
圖4 PLUS+1 GUIDE開發(fā)程序界面Fig.4 The interface of development software
整套系統(tǒng)硬件架構(gòu)如圖5所示,由控制器、I/O模塊、上位機及各個傳感器、執(zhí)行器構(gòu)成??刂破髂K采用西門子S7-200 SMART系列可編程邏輯控制器和丹弗斯MC050-010控制器,I/O模塊分別由若干個數(shù)字量輸入模塊(DI)、數(shù)字量輸出模塊(DO)、模擬量輸入模塊(AI)組成,傳感器及執(zhí)行器包含所有設備運行所需要的各類信號、執(zhí)行機構(gòu)等等。S7-200 SMART控制器與上位機通過無線局域網(wǎng)方式通訊,進行數(shù)據(jù)交互及處理。其中西門子控制器發(fā)送的自由串口數(shù)據(jù)經(jīng)適配器CANCOM-100IE轉(zhuǎn)換為CAN標準幀數(shù)據(jù),丹弗斯控制器接受轉(zhuǎn)換成功的特定CAN標準幀數(shù)據(jù),從而控制相應的執(zhí)行器;另一方面,丹弗斯控制器發(fā)送的CAN數(shù)據(jù)經(jīng)適配器轉(zhuǎn)換為串口數(shù)據(jù),PLC接受該數(shù)據(jù)從而讀出CAN控制器中相關(guān)參數(shù),其控制系統(tǒng)原理圖如圖5所示。
圖5 控制系統(tǒng)硬件架構(gòu)Fig.5 the hardware architecture of the control system
在該控制系統(tǒng)中,利用西門子SMART 200系列PLC支持的自由端口協(xié)議發(fā)送可自由定義的自由串口數(shù)據(jù),該串口數(shù)據(jù)流無奇偶校驗,每個字符8位,波特率位9 600 bps,串口數(shù)據(jù)發(fā)送主要程序如圖6所示。
圖6 PLC發(fā)送串口數(shù)據(jù)主要程序段Fig.6 PLC sends the main program section of the serial data
為最大限度地提高智能轉(zhuǎn)換器CANCOM-100IE緩沖區(qū)的利用率以及轉(zhuǎn)換器的傳輸速度,轉(zhuǎn)換方式設為透明轉(zhuǎn)換——轉(zhuǎn)換器一收到一端總線的數(shù)據(jù)立即轉(zhuǎn)換發(fā)送至另一端總線,此外轉(zhuǎn)換的幀類型為標準幀格式。CAN總線控制器接受轉(zhuǎn)換成功的CAN數(shù)據(jù)主要程序段如圖7所示。
此時上位機通過無線網(wǎng)絡可同時控制兩種不同通訊類型協(xié)議的控制器,一定程度上擴展了控制系統(tǒng)的應用范圍,并共用一套上位機操作系統(tǒng),提高了控制系統(tǒng)的實用性和可操作性。應用中通過調(diào)節(jié)串口數(shù)據(jù)大小,從而控制CAN總線控制器輸出波形。CAN總線控制器其中一輸出波形變化情況如圖8所示。
CAN總線通訊是本項目PLC系統(tǒng)的關(guān)鍵環(huán)節(jié)。本項目利用CANCOM-100IE智能轉(zhuǎn)換器將支持不同通信協(xié)議的PLC設備、CAN總線控制系統(tǒng)設備連接在相同的控制系統(tǒng)中,實現(xiàn)數(shù)據(jù)交互,提高了控制系統(tǒng)的擴展性和兼容性。該控制通訊方案在現(xiàn)有設備中得到充分應用,運行高效穩(wěn)定,具有一定的使用價值。
圖7 CAN總線控制器接受轉(zhuǎn)換的CAN數(shù)據(jù)Fig.7 The CAN bus controller accepts converted CAN data
圖8 CAN總線控制器輸出波形變化圖Fig.8 A waveform change chart issued by the controller