王秀蓮劉昭明畢大強(qiáng)
(1. 沈陽(yáng)理工大學(xué),沈陽(yáng) 1101682;2. 清華大學(xué)電動(dòng)機(jī)系電力系統(tǒng)國(guó)家重點(diǎn)實(shí)驗(yàn)室,北京 100084)
?
基于CANopen的DSP和ABB變頻器的通信與實(shí)現(xiàn)
王秀蓮1劉昭明1畢大強(qiáng)2
(1. 沈陽(yáng)理工大學(xué),沈陽(yáng)1101682;2. 清華大學(xué)電動(dòng)機(jī)系電力系統(tǒng)國(guó)家重點(diǎn)實(shí)驗(yàn)室,北京100084)
針對(duì)于CAN總線成本低、數(shù)據(jù)傳輸距離遠(yuǎn)和傳輸速率快等特點(diǎn)。本文以DSP作為主節(jié)點(diǎn),變頻器為從節(jié)點(diǎn),利用CAN應(yīng)用層協(xié)議CANopen實(shí)現(xiàn)了變頻器的遠(yuǎn)程控制。通過(guò)對(duì)CCS開(kāi)發(fā)平臺(tái)上程序的調(diào)試,完成了DSP和變頻器的通信。同時(shí)介紹了變頻器RCAN-01適配器參數(shù)配置、通信參數(shù)含義及通信程序。通過(guò)該模塊用戶(hù)可以由DSP向變頻器發(fā)送控制命令或者獲取一些實(shí)時(shí)參數(shù)值,進(jìn)而對(duì)現(xiàn)場(chǎng)工作狀態(tài)進(jìn)行控制監(jiān)測(cè)。CAN通信的實(shí)現(xiàn)對(duì)于現(xiàn)場(chǎng)總線控制具有較強(qiáng)的操作性和實(shí)用性。
CAN;ABB變頻器;數(shù)字信號(hào)處理器;現(xiàn)場(chǎng)總線
CAN(Controller Area Network)即控制器局域網(wǎng)總線,最早應(yīng)用于20世紀(jì)80年代末的汽車(chē)和電子產(chǎn)品的研發(fā)中。是一種用于實(shí)時(shí)應(yīng)用的串行通信協(xié)議總線,具有抗干擾性強(qiáng)、通信速率高和開(kāi)發(fā)靈活等優(yōu)點(diǎn)。針對(duì)于CAN這些優(yōu)越的性能,國(guó)內(nèi)的一些大型設(shè)備也開(kāi)始對(duì)該協(xié)議進(jìn)行使用,但是大多數(shù)CAN控制器只做到鏈路層或停留在通信幀的結(jié)構(gòu)分配上。隨著CAN技術(shù)在國(guó)內(nèi)的發(fā)展和應(yīng)用,對(duì)于應(yīng)用層的硬件設(shè)計(jì)也開(kāi)始考慮,CANopen是 CAN應(yīng)用層的一種協(xié)議[1-2]。
為了對(duì) CANopen協(xié)議的應(yīng)用和研發(fā),本文以DSP為主站,變頻器為從站,利用 CAN的應(yīng)用層協(xié)議CANopen實(shí)現(xiàn)了主站和從站的遠(yuǎn)程控制。CAN通信的實(shí)現(xiàn)可以使操作員通過(guò)主站(DSP)的集成開(kāi)發(fā)平臺(tái)CCS對(duì)設(shè)備進(jìn)行人性化的控制和完成原動(dòng)機(jī)模擬的實(shí)驗(yàn),比如水輪機(jī),柴油機(jī)和汽輪機(jī)等的模擬,其突出的可靠性、準(zhǔn)確性在多種現(xiàn)場(chǎng)總線中應(yīng)用廣泛,可以滿足不同的實(shí)時(shí)要求。CANopen的實(shí)現(xiàn)在DSP的控制中具有不可替代的優(yōu)勢(shì),為變頻器的高性能應(yīng)用與靈活控制提供條件。
1.1系統(tǒng)硬件連接
系統(tǒng)通信結(jié)構(gòu)如圖1所示,圖中,DSP和WinXP系統(tǒng)下 CCS軟件共同組成一個(gè)上位機(jī)開(kāi)發(fā)控制平臺(tái)。在 CAN通信中,DSP為主節(jié)點(diǎn),變頻器為從節(jié)點(diǎn),帶動(dòng)電動(dòng)機(jī)運(yùn)行。DSP和變頻器之間通過(guò)CAN的應(yīng)用層協(xié)議CANopen實(shí)現(xiàn)通信,CCS和DSP之間應(yīng)用仿真器實(shí)現(xiàn)程序的燒寫(xiě)和在線調(diào)試。
圖1 硬件連接圖
1.2通信連接方法
本實(shí)驗(yàn)用到了兩條信號(hào)線“CAN_H”和“CAN_L”,具體連線圖如圖2所示[2]。DSP開(kāi)發(fā)軟件CCS通過(guò)XDS510U-PLUS仿真器與DSP的JTAG口相連,實(shí)現(xiàn)DSP程序的開(kāi)發(fā)、在線調(diào)試和燒寫(xiě)。變頻器和異步電動(dòng)機(jī)通過(guò)電纜連接。
圖2 CAN通信線路圖
2.1RCAN-01
主站(DSP)集成了增強(qiáng)型CAN總線通信接口,變頻器可以通過(guò)可選模塊RCAN-01連接到CAN總線系統(tǒng)。通過(guò)RCAN-01可以實(shí)現(xiàn)以下功能[3]:
1)給變頻器發(fā)送控制命令,如起動(dòng)、停止、運(yùn)行使能等。
2)接收變頻器控制電動(dòng)機(jī)運(yùn)行的實(shí)際速度或轉(zhuǎn)矩值。
3)讀取變頻器的狀態(tài)值和實(shí)際值。
4)改變變頻器的參數(shù)值和復(fù)位變頻器的故障。
2.2變頻器CANopen通信參數(shù)配置
使用 RCAN-01進(jìn)行通信時(shí)必須先將變頻器的參數(shù)98.02組參數(shù)設(shè)置為Fieldbus,此參數(shù)用于激活適配器。設(shè)置完成后才可以看到51組配置參數(shù),下面是51組參數(shù)設(shè)置的方法:
1)51.01 Module Type對(duì)通信的模型類(lèi)型選擇,默認(rèn)為CANopen,用戶(hù)無(wú)法改變其數(shù)值。
2)51.02 Node ID設(shè)置變頻器的節(jié)點(diǎn)號(hào),設(shè)置為1。
3)51.03 BAUDRAT 設(shè)置通信的波特率,設(shè)置為4,即125kbit/s。
4)51.04 PD021Cfg.Loc設(shè)置PDO21組的變量是通過(guò)變頻器面板設(shè)置還是總線設(shè)置。本實(shí)驗(yàn)設(shè)置為0,即通過(guò)總線進(jìn)行變量的配置,配置51.05~51.25組參數(shù)。
5)51.26 Transparent/Profi設(shè)置RCAN-01和變頻器之間的通信協(xié)議,設(shè)置為2,即應(yīng)用CANopen協(xié)議進(jìn)行通信。
節(jié)點(diǎn)和波特率的設(shè)置還可以通過(guò)適配器上3個(gè)旋轉(zhuǎn)按鈕S1、S2、S3進(jìn)行設(shè)置。撥碼開(kāi)關(guān)的設(shè)置如圖3所示。若通過(guò)面板配置,3個(gè)按鈕均選擇為0。撥碼開(kāi)關(guān)S1用來(lái)設(shè)置波特率,S2、S3用來(lái)設(shè)置變頻器的ID號(hào),設(shè)置后的ID=10×S2+S3。顯然,通過(guò)撥碼開(kāi)關(guān)設(shè)置只能設(shè)置0~99之間的節(jié)點(diǎn)號(hào),如果設(shè)置的ID在100~127時(shí),只能將S2和S3均設(shè)置為0后,從變頻器的第51.02組參數(shù)設(shè)置。完成51組的參數(shù)設(shè)置還需對(duì)電動(dòng)機(jī)的參數(shù)進(jìn)行設(shè)置。設(shè)置99.05~99.09組對(duì)電動(dòng)機(jī)銘牌進(jìn)行設(shè)置。設(shè)置參數(shù)99.10選擇電動(dòng)機(jī)的辨識(shí)模式(辨識(shí)勵(lì)磁)。其他參數(shù)的設(shè)置可以根據(jù)實(shí)際應(yīng)用進(jìn)行設(shè)置。
圖3 撥碼開(kāi)關(guān)設(shè)置
3.1CAN和CANopen
CAN是一種實(shí)時(shí)應(yīng)用的串行通信協(xié)議,CAN層的定義和開(kāi)放系統(tǒng)互聯(lián)模型 Open System Interconnection Model(OSI)一致,表1為OSI開(kāi)放式互聯(lián)模型的各層。CAN的基本協(xié)議只包含物理層和數(shù)據(jù)鏈路層,并沒(méi)有規(guī)定應(yīng)用層。在通信應(yīng)用中需要一個(gè)高層協(xié)議來(lái)定義 CAN消息中的標(biāo)識(shí)符和字節(jié)數(shù)據(jù)的使用。CANopen協(xié)議是一個(gè)基于CAN應(yīng)用層的子協(xié)議,具有很好的模塊化特性和較高的配置靈活性。
表1 開(kāi)放系統(tǒng)互聯(lián)模型
CAN的數(shù)據(jù)幀由7個(gè)位場(chǎng)組成,其具體格式如圖4所示。CANopen規(guī)定了其中的仲裁場(chǎng)(11位標(biāo)識(shí)符和RTR位)和數(shù)據(jù)場(chǎng)(8位),數(shù)據(jù)場(chǎng)包含了所需要發(fā)送的數(shù)據(jù),它的長(zhǎng)度為0~8個(gè)字節(jié),每個(gè)字節(jié)包含8位[4]。
圖4 數(shù)據(jù)幀格式
3.2CANopen協(xié)議設(shè)計(jì)
CANopen設(shè)備由通信部分、對(duì)象字典和應(yīng)用部分3部分組成,其設(shè)備模型如圖5所示。通過(guò)應(yīng)用層協(xié)議 CANopen和變頻器可以靈活地改變電動(dòng)機(jī)的特性進(jìn)而完成一些動(dòng)態(tài)試驗(yàn)的模擬。本實(shí)驗(yàn)通信部分為變頻器的適配器RCAN-01的串口與DSP的CAN口相連接的部分,應(yīng)用部分連接到應(yīng)用相關(guān)的I/O數(shù)據(jù)端口,即適配器的輸出部分,與變頻器相連。通信部分和應(yīng)用部分之間是對(duì)象字典,對(duì)象字典包含了描述對(duì)象和主站執(zhí)行動(dòng)作的所有參數(shù),它是CANopen協(xié)議的核心部分。
圖5 CANopen設(shè)備模型
CANopen通信部分定義了4種通信對(duì)象,過(guò)程數(shù)據(jù)對(duì)象(PDO)、服務(wù)數(shù)據(jù)對(duì)象(SDO)、網(wǎng)絡(luò)管理對(duì)象(NMT)和預(yù)定義報(bào)文或者特殊功能對(duì)象[5]。
CANopen設(shè)備在工作時(shí)具有4種狀態(tài),初始化、預(yù)運(yùn)行、運(yùn)行和停止?fàn)顟B(tài)。本文將部分對(duì)象執(zhí)行的動(dòng)作作為模塊,將設(shè)備所處的狀態(tài)作為每種對(duì)象動(dòng)作時(shí)的觸發(fā)條件,這樣就降低了編程難度,同時(shí)簡(jiǎn)化了程序。在CANopen協(xié)議編寫(xiě)時(shí),程序的運(yùn)行狀態(tài)流程圖如圖6所示。各觸發(fā)點(diǎn)命令含義見(jiàn)表2。
圖6 狀態(tài)運(yùn)行流程圖
表2 觸發(fā)命令含義
初始化時(shí)主要是初始通信對(duì)象的參數(shù)。初始化結(jié)束后,設(shè)備開(kāi)始進(jìn)入預(yù)運(yùn)行狀態(tài)。在預(yù)運(yùn)行狀態(tài)時(shí)過(guò)程對(duì)象(PDO)不能進(jìn)行通信,此時(shí)由過(guò)服務(wù)數(shù)據(jù)對(duì)象(SDO)進(jìn)行參數(shù)配置。參數(shù)配置完成后設(shè)備進(jìn)入運(yùn)行狀態(tài)。在運(yùn)行狀態(tài)所有對(duì)象都可以進(jìn)行通信,既可以通過(guò)PDO傳輸報(bào)文也可以通過(guò)SDO訪問(wèn),修改參數(shù)等。如果主節(jié)點(diǎn)發(fā)送停止命令后設(shè)備可以從其他狀態(tài)直接進(jìn)入停止?fàn)顟B(tài),在停止?fàn)顟B(tài),通信對(duì)象等待主節(jié)點(diǎn)發(fā)送命令進(jìn)入其他狀態(tài)[6]。
3.3實(shí)驗(yàn)程序
通信程序(部分)如圖7所示。在程序中,當(dāng)狀態(tài)值statues=1時(shí),運(yùn)用SDO訪問(wèn)對(duì)象字典,即對(duì)適配器RCAN_01中參數(shù)組51.05~51.25進(jìn)行參數(shù)配置,當(dāng)statues=2,判斷是否進(jìn)行預(yù)操作和檢查參數(shù)是否配置正確,如果正確,轉(zhuǎn)到操作階段。此時(shí)狀態(tài)值為3,變頻器起動(dòng)運(yùn)行通信協(xié)議 ABBDrives,根據(jù)ABB Drives控制電動(dòng)機(jī),對(duì)變頻器的運(yùn)行狀態(tài)進(jìn)行監(jiān)控。
圖7 部分通信程序
3.4實(shí)驗(yàn)結(jié)果
變頻器采用閉環(huán)控制方式直接轉(zhuǎn)矩進(jìn)行控制,變頻器的起動(dòng)和停止通過(guò)DSP上的用戶(hù)開(kāi)關(guān)控制。電動(dòng)機(jī)的實(shí)際參數(shù)反饋值如圖8所示。界面顯示的速度值為 675r/min,轉(zhuǎn)矩為額定轉(zhuǎn)矩的 5.97%,額定轉(zhuǎn)矩經(jīng)計(jì)算為9.5N·m,則實(shí)際轉(zhuǎn)矩為0.57N·m。電流值為1.92A,功率為額定功率的2.88%,額定功率為1.5kW,則實(shí)際功率為0.0432kW。
圖8 變頻器界面
主節(jié)點(diǎn)運(yùn)用CCS軟件的Watchwindow窗口作為監(jiān)控界面,如圖9所示。狀態(tài)值為3表明變頻器已進(jìn)入ABB Drives通信協(xié)議的運(yùn)行階段。上位機(jī)的速度顯示值和給定值均為標(biāo)幺值,速度給定值為9000,實(shí)際速度比例為 20000,電動(dòng)機(jī)的額定轉(zhuǎn)速為1500r/min,則電動(dòng)機(jī)的實(shí)際轉(zhuǎn)速為
即實(shí)際轉(zhuǎn)速為 675r/min。轉(zhuǎn)矩和功率的顯示值為593和27,由比例關(guān)系可換算出實(shí)際值為額定轉(zhuǎn)矩的5.93%和額定功率的2.7%。換算值與變頻器的顯示值在允許的誤差范圍內(nèi),說(shuō)明通信結(jié)果正確。
圖9 Watchwindow界面
本文運(yùn)用變頻器 RCAN-01適配器和 DSP的CAN口完成硬件連接。應(yīng)用CAN通信的應(yīng)用層協(xié)議CANopen完成主節(jié)點(diǎn)(DSP)和從節(jié)點(diǎn)(變頻器)的CAN通信,從而實(shí)現(xiàn)對(duì)電動(dòng)機(jī)和變頻器運(yùn)行狀態(tài)的監(jiān)控。通過(guò)開(kāi)發(fā)平臺(tái)CCS對(duì)CANopen的研發(fā)和編寫(xiě),可以完成一些動(dòng)模實(shí)驗(yàn)和工業(yè)現(xiàn)場(chǎng)中不同的實(shí)時(shí)性需求,為系統(tǒng)的二次開(kāi)發(fā)和變頻器高性能的應(yīng)用提供條件。
[1] 寧改娣,曾翔君,駱一萍. DSP控制器原理及應(yīng)用[M]. 2版. 北京︰科學(xué)出版社,2009︰1-8.
[2] ABB適配器RCAN-01用戶(hù)手冊(cè).
[3] 樊后世,尹麗娜,王為曉,等. 采煤機(jī)牽引變頻器CAN 適配器參數(shù)設(shè)置[J]. 工礦自動(dòng)化,2011(12)︰101-103.
[4] 張厚林. CANopen通信協(xié)議與實(shí)現(xiàn)[D]. 武漢︰華中科技大學(xué),2009︰7-14.
[5] 肖海峰,楊柳. 基于TMS320F28335的CANopen協(xié)議從節(jié)點(diǎn)設(shè)計(jì)與實(shí)現(xiàn)[J]. 科技視界,2014(36)︰79,135.
[6] 賈運(yùn)紅. 基于 CANopen的變頻器控制方法研究[J].煤礦機(jī)械,2015,36(3)︰253-255.
Communication and Implementation of DSP and ABB Drive based on CANopen Protocol
Wang Xiulian1Liu Zhaoming1Bi Daqiang2
(1. Shengyang Ligong University,Shengyang110168;2. Tsinghua University,Dept of Electrical Engineering,State Key Lab of Power Systems,Beijing100084)
In view of CAN Bus with the low cost,long distance and fast rate of data transmission,this paper takes Digital Signal Processor (DSP) as the main station,and the converter is the Slave station,realizes the remote control of inverter by utilizing CAN application layer protocol CANopen. Communication is completed by debugging on CCS development platform between DSP and ABB driver. This paper also introduces parameter configuration,implication of communication parameters and communication program of RCAN-01 in ABB driver. Users can send control commands,or get the values of real time parameter from DSP to ABB driver by this way,and then control and monitor the field state. The implementation of CAN communication has strong operability and practicability for the field bus control.
CAN Bus; ABB driver; DSP; field bus