siemens x
I/O 設(shè)備

基于CAN總線技術(shù)的數(shù)字交流伺服系統(tǒng)的研究

2025China.cn   2008年07月07日

  多電機(jī)伺服控制廣泛應(yīng)用于各種電力傳動(dòng)自動(dòng)控制系統(tǒng)中,如配料、傳動(dòng)等生產(chǎn)過程。伺服系統(tǒng)中電機(jī)控制性能和多電機(jī)間協(xié)調(diào)控制的好壞直接影響生產(chǎn)過程的質(zhì)量,如何高效管理、方便應(yīng)用、實(shí)時(shí)控制是多電機(jī)伺服系統(tǒng)生產(chǎn)領(lǐng)域亟待解決的首要問題。因此,本文提出一種基于CAN總線技術(shù)的多軸運(yùn)動(dòng)控制數(shù)字交流伺服系統(tǒng)。

現(xiàn)場(chǎng)總線技術(shù)解決了傳統(tǒng)總線插板I/O模塊多,干擾嚴(yán)重、系統(tǒng)軟件編寫復(fù)雜、系統(tǒng)硬件兼容性差等問題。大大減輕了現(xiàn)場(chǎng)信號(hào)連接的繁瑣與費(fèi)用,提高了信號(hào)傳輸?shù)木扰c靈活性,給安裝、調(diào)試和維護(hù)帶來諸多方便,為現(xiàn)場(chǎng)用戶帶來巨大的經(jīng)濟(jì)效益,代表著自動(dòng)化領(lǐng)域發(fā)展的一個(gè)重要方向[1>。

CAN總線技術(shù)

隨著工業(yè)現(xiàn)場(chǎng)控制和自動(dòng)化技術(shù)的不斷進(jìn)步,傳統(tǒng)的通信模式已不能滿足現(xiàn)代工程需要。CAN(Controller Area Network)總線是80年代初德國(guó)Bosch公司為解決現(xiàn)代汽車中眾多控制與測(cè)試儀器間數(shù)據(jù)交換而開發(fā)的一種串行數(shù)據(jù)通信協(xié)議,是一種性能先進(jìn)、價(jià)格低廉、保密性好的現(xiàn)場(chǎng)總線(Field Bus)技術(shù),能夠有效支持分布式控制或?qū)崟r(shí)控制串行通信網(wǎng)絡(luò)[2>。CAN總線中各節(jié)點(diǎn)都有權(quán)利向其它節(jié)點(diǎn)發(fā)送信息。通信介質(zhì)可以是雙絞線、同軸電纜或光纖,主要技術(shù)特點(diǎn)有:

是一種多主總線

網(wǎng)絡(luò)上任一個(gè)節(jié)點(diǎn)均可在任意時(shí)刻主動(dòng)向網(wǎng)絡(luò)上其它節(jié)點(diǎn)發(fā)送信息,多主站依據(jù)優(yōu)先機(jī)制進(jìn)行總線訪問;

非破壞性基于優(yōu)先權(quán)總線仲裁技術(shù)

采用非破壞性基于優(yōu)先權(quán)總線仲裁技術(shù)結(jié)構(gòu),大大節(jié)省總線沖突仲裁時(shí)間,在重負(fù)荷下表現(xiàn)出良好性能;

具有多種傳送數(shù)據(jù)功能

具有點(diǎn)對(duì)點(diǎn),一點(diǎn)對(duì)多點(diǎn)(成組)及全局廣播傳送數(shù)據(jù)功能;

節(jié)點(diǎn)數(shù)目多

直接通訊距離最遠(yuǎn)可達(dá)10km(傳輸速率為5kbps),最高通訊速率可達(dá)1Mbps(傳輸距離為40m);

可靠性高

數(shù)據(jù)鏈路層采用短幀結(jié)構(gòu),實(shí)時(shí)性高,糾錯(cuò)效果好,每幀信息都有CRC校驗(yàn)及其它校驗(yàn)措施,數(shù)據(jù)出錯(cuò)率低,可靠性高;

故障自動(dòng)判別

發(fā)送期間若丟失仲裁或因出錯(cuò)而遭破壞的幀可自動(dòng)重發(fā),暫時(shí)錯(cuò)誤和永久性故障節(jié)點(diǎn)判別及故障節(jié)點(diǎn)自動(dòng)脫離CAN總線。

CAN總線系統(tǒng)由CAN網(wǎng)絡(luò)節(jié)點(diǎn)、轉(zhuǎn)發(fā)器節(jié)點(diǎn)和上位機(jī)構(gòu)成。總線技術(shù)遵循現(xiàn)場(chǎng)總線協(xié)議,將分布在不同位置,用途各異的測(cè)量?jī)x表、控制設(shè)備互聯(lián)成網(wǎng),并可接入Intranet和Internet網(wǎng)絡(luò)。現(xiàn)場(chǎng)總線技術(shù)的關(guān)鍵標(biāo)志是它能支持雙向多變量、總線式全數(shù)字通訊。傳統(tǒng)4~20mA模擬直流回路只能在一根兩芯電纜中單向傳輸一個(gè)參數(shù),隨著系統(tǒng)結(jié)構(gòu)的日益復(fù)雜和信息量的增加,4~20mA電流環(huán)傳輸成為制約信息傳輸?shù)钠款i,所以現(xiàn)場(chǎng)總線替代4~20mA模擬信號(hào)標(biāo)準(zhǔn)已成為控制系統(tǒng)發(fā)展的必然趨勢(shì)。

基于CAN總線技術(shù)的多機(jī)伺服系統(tǒng)

CAN總線控制網(wǎng)絡(luò)結(jié)構(gòu)

基于CAN總線技術(shù)的多電機(jī)伺服控制系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,系統(tǒng)由上位機(jī)、CAN總線、現(xiàn)場(chǎng)伺服單元節(jié)點(diǎn)組成。數(shù)控系統(tǒng)上位機(jī)通過CAN總線控制網(wǎng)絡(luò)節(jié)點(diǎn)任一伺服單元,數(shù)字伺服與數(shù)控系統(tǒng)之間數(shù)據(jù)傳輸可分為實(shí)時(shí)性數(shù)據(jù)信息和非實(shí)時(shí)性數(shù)據(jù)信息兩類。實(shí)時(shí)性數(shù)據(jù)指參與控制器實(shí)時(shí)位置、速度、轉(zhuǎn)矩等控制指令和反饋信息,傳輸速度要求較高。非實(shí)時(shí)性數(shù)據(jù)主要是指控制器參數(shù)設(shè)置、功能設(shè)定、診斷功能、伺服狀態(tài)與報(bào)警等信息,傳輸速度相對(duì)較低。

CAN接口適配器是上位機(jī)與伺服單元數(shù)據(jù)傳輸和控制的橋梁,伺服單元采集現(xiàn)場(chǎng)的數(shù)據(jù)通過總線傳給上位機(jī),實(shí)現(xiàn)實(shí)時(shí)監(jiān)視和控制。

數(shù)字伺服系統(tǒng)網(wǎng)絡(luò)硬件與軟件設(shè)計(jì)

CAN總線接口硬件電路

數(shù)控系統(tǒng)上位機(jī)采用研華公司PCL-841卡實(shí)現(xiàn)CAN總線通訊,伺服驅(qū)動(dòng)系統(tǒng)采用TI公司TMS320LF2407A片內(nèi)CAN控制器[3>。該控制器全面兼容CAN2.0B協(xié)議,具有標(biāo)準(zhǔn)和擴(kuò)展標(biāo)識(shí)符,有數(shù)據(jù)幀和遠(yuǎn)程幀,2407A片內(nèi)CAN總線控制器與CAN物理總線接口采用82C250驅(qū)動(dòng)器芯片。82C250采用阻抗為120Ω雙絞線作通訊介質(zhì),信號(hào)采用差動(dòng)接收和發(fā)送模式,抗干擾能力強(qiáng),最高通訊速率可達(dá)1Mbps。有三種不同工作方式:高速、斜率控制和待機(jī)。本系統(tǒng)采用斜率控制,以降低射頻干擾。為了增加抗干擾能力,保護(hù)CAN控制器,在TMS320LF2407A與82C250之間加高速光電隔離器,光電隔離器采用HP公司HCPL-2630芯片,速度為10MHz,電路如圖2所示。

CAN總線網(wǎng)絡(luò)控制軟件包括網(wǎng)絡(luò)應(yīng)用層協(xié)議、節(jié)點(diǎn)功能流程和編碼等的配置和設(shè)計(jì)[4>。

郵箱初始化配置

包括對(duì)管腳的配置、波特率的設(shè)定、郵箱的收發(fā)配置等。首先,配置MCRB寄存器,將IOPC6和IOPC7引腳配置成特殊功能,即CANRX和CANTX;其次,配置MDER寄存器,即配置郵箱使能和郵箱2~3功能;最后,對(duì)屏蔽ID寄存器進(jìn)行配置,可以屏蔽任意位ID,這種寄存器只對(duì)接收郵箱起作用。

;CAN郵箱初始化配置
CAN_INIT:
LDP#DP_PF2
LACL MCRB
;配置CAN引腳
OR#0C0H
;IOPC6,IOPC7配置為特殊功能:CANRX,CANTX
SACLMCRB
;CAN位定時(shí)器配置
LDP #DP_CAN
SPLK#0040H,MDER;MD2 =1,MBX2為發(fā)送方式
SPLK#0FFFFH,CAN_IFR
;清全部CAN中斷標(biāo)志
SPLK#07FFFH,LAM1_H
;設(shè)置郵箱2、3屏蔽ID寄存器0
SPLK#0FFFFH,LAM1_L;則ID必須匹配

波特率設(shè)定

主要與3個(gè)寄存器有關(guān),即SCSR1(系統(tǒng)控制和狀態(tài)寄存器1)、BCR1(位配置寄存器1)和BCR2(位配置寄存器2)。配置前要確定波特率和晶振頻率,當(dāng)對(duì)位定時(shí)器進(jìn)行配置時(shí),CAN控制器必須處于復(fù)位模式下,即CCR=1。

SPLK #1000H,MCR;CCR=1改變配置請(qǐng)求
W_CCE:BITGSR,#0Bh;等待改變配置使能
BCNDW_CCE,NTC;當(dāng)CCE=1時(shí)即可配置BCR2、BCR1寄存器
SPLK#01H,BCR2;波特率預(yù)分頻寄存器
SPLK#0033H,BCR1;波特率設(shè)置為1M
LACLMCR

郵箱收發(fā)配置

在數(shù)據(jù)域改變前首先要禁用郵箱,然后置位數(shù)據(jù)域,改變請(qǐng)求。再設(shè)置郵箱ID和信息控制寄存器。若是發(fā)送郵箱,則在數(shù)據(jù)域存放預(yù)發(fā)送數(shù)據(jù),若是接收郵箱,則清空接收緩存。

;寫CAN郵箱內(nèi)容前寄存器設(shè)置
LDP#DP_CAN
SPLK #0040H,MDER ;不使能郵箱,郵箱2設(shè)為接收方式
SPLK #0103H,MCR;CDR=1,數(shù)據(jù)區(qū)改變請(qǐng)求
;寫CAN郵箱內(nèi)容
LDP#DP_CAN2
SPLK #2447H,MSGID2H;設(shè)置郵箱2控制字及ID
;IDE=0,AME=0,AAM=0
;標(biāo)準(zhǔn)方式為MSGID2H[12~2>
SPLK#0FFFFH,MSGID2L
SPLK#08H,MSGCTRL2;設(shè)置控制域
;數(shù)據(jù)長(zhǎng)度DCL=8,RTR=0數(shù)據(jù)幀
SPLK#00000H,MBX2A;郵箱2信息初始化
SPLK#00000H,MBX2B
SPLK#00000H,MBX2C
SPLK#00000H,MBX2D
SPLK#2447H,MSGID3H;設(shè)置郵箱3的標(biāo)識(shí)符
SPLK#0FFFFH,MSGID3L
SPLK#08H,MSGCTRL3;RTR=0,DCL=8
SPLK#02211h,MBX3A;郵箱3信息初始化
SPLK#04433h,MBX3B
SPLK#06655h,MBX3C
SPLK#08877h,MBX3D
;寫CAN郵箱內(nèi)容后寄存器設(shè)置
LDP#DPCAN
SPLK#0480H,MCR;DB0=1,AB0=1,STM=0
SPLK#04CH,MDER;ME3=1,MBX3發(fā)送,ME2=1接收
SPLK#0F7FFH,CAN_IMR;中斷MBX3無(wú)效,MBX2使能,
;中斷優(yōu)先級(jí)
SPLK#0FFFFH,CAN_IFR;清全部中斷標(biāo)志
RET

郵箱中斷設(shè)置CAN模塊專屬中斷寄存器有CAN_IFR和CAN_IMR,使用方法與一般中斷寄存器相同。但TMS320LF2407A 采用二級(jí)中斷方式,高優(yōu)先級(jí)模式的CAN郵箱中斷對(duì)應(yīng)INT1,高優(yōu)先級(jí)CAN錯(cuò)誤中斷對(duì)應(yīng)INT2;而低優(yōu)先級(jí)CAN郵箱中斷和CAN錯(cuò)誤中斷都對(duì)應(yīng)INT5。所以在程序中要開放對(duì)應(yīng)一級(jí)中斷。接收幀ID的讀入在接收事件中,通常一個(gè)郵箱要接收多節(jié)點(diǎn)幀。因此,信息幀ID的讀出也很重要。不管有沒有屏蔽,所接收信息幀的ID會(huì)被置入MSGIDnH和MSGIDnL,但接收郵箱的ID并沒有改變[5>。

程序框圖如圖3所示,實(shí)驗(yàn)程序使用郵箱2接收,郵箱3發(fā)送。通訊軟件可以采用查詢方式或中斷方式,主要包括CAN控制器初始化程序、接收郵箱與發(fā)送郵箱設(shè)置、發(fā)送程序、接收程序。

發(fā)送程序只需要設(shè)定發(fā)送控制寄存器相應(yīng)位;接收程序要完成:

讀取已接收的郵箱標(biāo)識(shí)符格式;
讀取接收的標(biāo)識(shí)符;
讀取接收的數(shù)據(jù)長(zhǎng)度;
讀取接收的數(shù)據(jù)值。

上位機(jī)通過適配器與CAN總線連接,用VC6.0編寫監(jiān)控軟件,并定義上位機(jī)作為局域網(wǎng)操作服務(wù)器,用戶通過它可以對(duì)各個(gè)伺服單元進(jìn)行操作。

結(jié)語(yǔ)

CAN總線具有良好的網(wǎng)絡(luò)通信功能、高可靠性、抗干擾能力強(qiáng)且經(jīng)濟(jì)實(shí)用,是一種很有前途的現(xiàn)場(chǎng)總線技術(shù)。它的應(yīng)用將為分布式運(yùn)動(dòng)控制提供一種新的解決方案,會(huì)受到人們?cè)絹碓蕉嗟闹匾?。新一代的智能?shù)字伺服系統(tǒng)通過CAN總線于開放式數(shù)控系統(tǒng)互聯(lián),是運(yùn)動(dòng)控制領(lǐng)域發(fā)展的一個(gè)重要方向。
 
 

(轉(zhuǎn)載)

標(biāo)簽:CAN 總線技術(shù) 數(shù)字交流 伺服系統(tǒng) 我要反饋 
2024世界人工智能大會(huì)專題
即刻點(diǎn)擊并下載ABB資料,好禮贏不停~
優(yōu)傲機(jī)器人下載中心
西克
2024全景工博會(huì)
專題報(bào)道