CAN總線技術(shù)在數(shù)字伺服系統(tǒng)中的應(yīng)用
點(diǎn)擊:2132
A+ A-
所屬頻道:新聞中心
1 前言
多伺服系統(tǒng)在實(shí)際生產(chǎn)過(guò)程中的應(yīng)用相當(dāng)少-泛,如配料、傳動(dòng)等生產(chǎn)過(guò)程,需要多臺(tái)伺服電機(jī)驅(qū)動(dòng),伺服電機(jī)的控制性能和多臺(tái)電機(jī)間協(xié)調(diào)控制的好壞直接影響著生產(chǎn)過(guò)程的質(zhì)量。如何方便管理、控制多伺服電機(jī)系統(tǒng)是生產(chǎn)領(lǐng)域}r待解決的問(wèn)題,因此提出了基十CAN總線技術(shù)的數(shù)字交流伺服系統(tǒng)。
現(xiàn)場(chǎng)總線技術(shù)解決了傳統(tǒng)總線插板I/0模塊多,干擾嚴(yán)重、系統(tǒng)軟件編寫(xiě)復(fù)雜、系統(tǒng)硬件兼容性差等問(wèn)題。減輕現(xiàn)場(chǎng)信號(hào)連接的繁瑣與費(fèi)用,提高了信號(hào)傳輸?shù)木扰c靈活性,給安裝、調(diào)試和維護(hù)帶來(lái)方便,為現(xiàn)場(chǎng)用戶帶來(lái)巨大的經(jīng)濟(jì)效益,代表著自動(dòng)化領(lǐng)域發(fā)展的一個(gè)重要方向。
數(shù)字伺服系統(tǒng)實(shí)現(xiàn)位置、速度、力矩(電流)三環(huán)控制,如圖1所不。控制器參數(shù),如位置、速度、力矩等運(yùn)行參數(shù)設(shè)置與功能設(shè)置通過(guò)串行接口傳送到伺服系統(tǒng)。數(shù)控系統(tǒng)上位機(jī)計(jì)算出每個(gè)插補(bǔ)周期的位移量,通過(guò)串行總線傳送到相應(yīng)的伺服單兒,即可完成位置控制和速度控制。位置、速度、力矩等反饋信息也可通過(guò)串行口送回主計(jì)算機(jī),用十顯不坐標(biāo)軸位置、跟隨誤差等,這是一種分布式運(yùn)動(dòng)控制系統(tǒng)。
數(shù)字伺服與數(shù)控系統(tǒng)之間傳輸?shù)臄?shù)據(jù)可以分為實(shí)時(shí)性數(shù)據(jù)信息和非實(shí)時(shí)性數(shù)據(jù)信息兩類(lèi)。實(shí)時(shí)性數(shù)據(jù)指參與實(shí)時(shí)位置、速度、轉(zhuǎn)矩控制的指令和實(shí)際反饋信息,這類(lèi)數(shù)據(jù)的傳輸速度要求較高。而非實(shí)時(shí)性數(shù)據(jù)主要是參數(shù)設(shè)置、功能設(shè)定、診斷功能、伺服狀態(tài)與報(bào)警等,對(duì)傳輸速度的要求相對(duì)較低一些。
RS-232(422,485)串行通訊應(yīng)用廣泛,但其通訊速度較低。因此,各種土業(yè)現(xiàn)場(chǎng)總線技術(shù)引起了人們的關(guān)注,主要有CAN, SERCOS, ProfiBus, Lon-Works, InterBus等。
本文討論CAN總線用十?dāng)?shù)字伺服與數(shù)控系統(tǒng)的接口連接,介紹了系統(tǒng)的組成結(jié)構(gòu)、土作原理和軟件、硬件設(shè)計(jì)。
2 CAN總線技術(shù)簡(jiǎn)介
2.1 CAN總線的特點(diǎn)
CAN屬十現(xiàn)場(chǎng)總線(Field Bus)的范疇,它是一種有效支持分布式控制或?qū)崟r(shí)控制的串行通信網(wǎng)絡(luò)。CAN總線中各節(jié)點(diǎn)都有權(quán)利向其它節(jié)點(diǎn)發(fā)送信息。通信介質(zhì)可以是雙絞線、同軸電纜或光纖,主要特點(diǎn)有:
(1)CAN總線上任意一個(gè)節(jié)點(diǎn)均可在任意時(shí)刻主動(dòng)向網(wǎng)絡(luò)上的其它節(jié)點(diǎn)發(fā)送信息,而不分主、從,通訊靈活;
(2)CAN總線上的節(jié)點(diǎn)可分成不同的優(yōu)先級(jí),以滿足不同的實(shí)時(shí)一要求:
(3)CAN總線采用獨(dú)特的非破壞性總線仲裁技術(shù),當(dāng)兩個(gè)節(jié)點(diǎn)同時(shí)向網(wǎng)絡(luò)上傳送信息時(shí),優(yōu)先級(jí)低的節(jié)點(diǎn)主動(dòng)停止數(shù)據(jù)發(fā)送,而優(yōu)先級(jí)高的節(jié)點(diǎn)可不受影響地繼續(xù)傳送數(shù)據(jù);
(4)CAN總線具有點(diǎn)對(duì)點(diǎn),一點(diǎn)對(duì)多點(diǎn)(成組)及全局少一播傳送數(shù)據(jù)的功能;
(5)CAN總線通訊距離最遠(yuǎn)可達(dá)10 km,通訊速率最高可達(dá)1 Mbps(距離小于40 m) ;
(6) CAN總線上的節(jié)點(diǎn)數(shù)可達(dá)110個(gè);
(7) CAN總線上每一幀的有效字節(jié)數(shù)為8個(gè),這樣傳輸時(shí)間短,抗干擾能力強(qiáng);
(8) CAN總線每幀信息都有CRC校驗(yàn)及其它校驗(yàn)措施,數(shù)據(jù)出錯(cuò)率低,可靠性高;
(9) CAN總線節(jié)點(diǎn)在故障的情況下,可自動(dòng)切斷它與總線的聯(lián)系,以使總線上的其它操作不受影響。
目前國(guó)內(nèi)市場(chǎng)上已有相應(yīng)的CAN總線通訊接口片,該片完成ISO/OSI參考模型中的物理層和數(shù)據(jù)鏈路層兩層功能,如數(shù)據(jù)打包、拆包、發(fā)送、接收、校驗(yàn)、編碼、解碼等,用戶只需開(kāi)發(fā)應(yīng)用層和用戶層相應(yīng)軟件即可。
2.2 DSP CAN控制器
TM 5320 F2407是TI公司新一代16位定點(diǎn)DSP芯片,用十?dāng)?shù)字電機(jī)控制和嵌入式控制器。片內(nèi)CAN模塊是一個(gè)完全的CAN控制器,其結(jié)構(gòu)框圖如圖2所示。CAN模塊是一個(gè)16位外設(shè),有控制/狀態(tài)寄存器的訪問(wèn)和郵箱的RAM訪問(wèn)兩種方式。
(1)全面兼容CAN 2. 0B協(xié)議,具有標(biāo)準(zhǔn)和擴(kuò)展標(biāo)識(shí)符日_有數(shù)據(jù)幀和遠(yuǎn)程幀;
(2)對(duì)象有6個(gè)郵箱(MBOXO一5),其長(zhǎng)度為0~8個(gè)字節(jié)。它們是48 x 16位的RAM區(qū),CPU或CAN可按16位讀或?qū)憽C總€(gè)郵箱為8x16位的RAM,由“箱0,1只用作接收,郵箱4,5只用作發(fā)送,而郵箱2,3可用作接收或發(fā)送;
(3)對(duì)郵箱0,1和2,3有局域接收屏蔽寄存器;
(4)可編程的位定時(shí)器;
(5)中斷配置可編程;
(6)可編程的CAN總線喚醒功能;
(7)自動(dòng)恢復(fù)遠(yuǎn)程請(qǐng)求;
(8)當(dāng)發(fā)送出錯(cuò)或仲裁丟失數(shù)據(jù)時(shí),CAN控制器有自動(dòng)重發(fā)功能;
(9)總線錯(cuò)誤診斷功能;
(10)自診斷功能。
3 數(shù)字伺服系統(tǒng)網(wǎng)絡(luò)硬件與軟件設(shè)計(jì)
3.1 DSP CAN接口電路設(shè)計(jì)
使用CAN總線技術(shù)將伺服驅(qū)動(dòng)和主控系統(tǒng)連成現(xiàn)場(chǎng)控制網(wǎng)絡(luò)。主控系統(tǒng)上位機(jī)采用研華公司PCL-841片實(shí)現(xiàn)CAN總線通訊,伺服驅(qū)動(dòng)系統(tǒng)采用TMS320 F2407片內(nèi)CAN控制器。
TMS320 F2407 DSP芯片的CAN總線控制器與CAN物理總線的接口采用82 C250驅(qū)動(dòng)器芯片。8X250采用阻抗為120 SZ雙絞線作通訊介質(zhì),信號(hào)采用差動(dòng)接收和發(fā)送,抗干擾能力強(qiáng),最高通信速率可達(dá)1 Mbps。通過(guò)對(duì)8X250引腳8(RS)的不同連接,可以實(shí)現(xiàn)三種不同的土作方式:高速、斜率控制和待機(jī)。本系統(tǒng)采用斜率控制,以降低射頻干擾。為了增加抗干擾能力,保護(hù)CAN控制器,在TMS320F2407與8X250之間加高速光電隔離器,光電隔離器采用HP公司HCPL-2630芯片,速度為lOMHz,電路如圖3所示。
3.2 CAN控制器軟件設(shè)計(jì)
對(duì)十CAN網(wǎng)的實(shí)現(xiàn),智能終端(即CAN節(jié)點(diǎn))軟件設(shè)計(jì)主要包括兩大部分,即通信網(wǎng)絡(luò)的應(yīng)用層協(xié)議和節(jié)點(diǎn)實(shí)現(xiàn)功能的流程和編碼。
3.2.1 郵箱初始化配置
初始化包括對(duì)管腳的配置、波特率的設(shè)定、郵箱的收發(fā)配置等。首先,配置MCRB寄存器,將IOPC6和IOPC7引腳配置成特殊功能,即CANRX和CANTX;其次,配置MDER寄存器,即配置郵箱的使能和郵箱2一3的功能;最后,對(duì)屏蔽ID寄存器進(jìn)行配置,可以屏蔽任意位的ID。這種寄存器只對(duì)接收郵箱起作用。
3.2.2波特率設(shè)定
波特率設(shè)定主要和3個(gè)寄存器有關(guān):SCSR1(系統(tǒng)控制和狀態(tài)寄存器1) , BCR1(位配置寄存器)和BCR2(位配置寄存器2)。在配置之前,明確要實(shí)現(xiàn)的波特率和品振頻率。要注意的是在對(duì)位定時(shí)器進(jìn)行配置時(shí),CAN控制器必須處十復(fù)位模式下,即CCR=1。
3.2.3 由}S箱的收發(fā)配置
在進(jìn)行數(shù)據(jù)域改變之前,首先要禁用郵箱,然后置位數(shù)據(jù)域,改變請(qǐng)求。再設(shè)置郵箱ID和信息控制寄存器。若是發(fā)送郵箱,則在數(shù)據(jù)域存放預(yù)發(fā)送數(shù)據(jù);若是接收郵箱,則清空接收緩存。
郵箱中斷設(shè)置CAN模塊令屬中斷寄存器有CAN_IFR和CAN_ IMR,使用方法與一般的中斷寄存器相同。但TMS320 LF2407 A采用了二級(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)INTS。所以在程序中也要開(kāi)放對(duì)應(yīng)的一級(jí)中斷。接收幀ID的讀入在接收事件中,通常一個(gè)郵箱要接收多節(jié)點(diǎn)幀。因此,信息幀ID的讀出也很重要。不管有沒(méi)有屏蔽,接收了的信息幀的ID會(huì)被置入MSGIDnH和MS-GIDnL。但事實(shí)上,該接收郵箱的ID并沒(méi)有改變。
實(shí)驗(yàn)程序使用郵箱2接收,郵箱3發(fā)送。通訊軟件可以采用查詢方式或中斷方式,主要包括CAN控制器的初始化程序、接收郵箱與發(fā)送郵箱設(shè)置、發(fā)送程序、接收程序,程序框圖。
發(fā)送程序只需要設(shè)定發(fā)送控制寄存器的相應(yīng)位即可實(shí)現(xiàn)發(fā)送。
接收程序要完成:
(1)讀取已接收的郵箱標(biāo)識(shí)符格式;
(2)讀取接收的標(biāo)識(shí)符;
(3)讀取接收的數(shù)據(jù)長(zhǎng)度;
(4)讀取接收的數(shù)據(jù)值。
3.2.4 監(jiān)控主機(jī)的軟件
用一臺(tái)土控機(jī)作為監(jiān)控機(jī),通過(guò)適配片與CAN連接。在監(jiān)控機(jī)上用VC 6.0編寫(xiě)監(jiān)控的操作軟件,并日_把監(jiān)控機(jī)作為局域網(wǎng)上的一臺(tái)操作服務(wù)器,用戶通過(guò)它可以對(duì)各個(gè)模塊進(jìn)行操作。
4 結(jié)語(yǔ)
CAN總線具有功能特性好、可靠性高、抗干擾能力強(qiáng)日_經(jīng)濟(jì)實(shí)用,是一種很有前途的現(xiàn)場(chǎng)總線。它的應(yīng)用將為分布式運(yùn)動(dòng)控制提供一種新的解決方案,會(huì)受到人們?cè)絹?lái)越多的重視。新一代的智能數(shù)字伺服系統(tǒng)通過(guò)CAN總線與開(kāi)放式數(shù)控系統(tǒng)互連,是運(yùn)動(dòng)控制領(lǐng)域發(fā)展的一個(gè)重要方向。
(審核編輯: 智匯張瑜)
分享