時(shí)間:2018-10-22 14:37:09來源:網(wǎng)絡(luò)
關(guān)于CAN總線與伺服電機(jī)的特點(diǎn),并討論了伺服電機(jī)基于CAN總線的通信控制特性。
1、引言
CAN(ControllerAreaNetwork)總線是一種有效支持分布式控制或?qū)崟r(shí)控制的串行通信局域網(wǎng)絡(luò),由于其高性能、高可靠性、實(shí)時(shí)性好以及獨(dú)特的設(shè)計(jì),已廣泛應(yīng)用于控制系統(tǒng)中的各檢測和執(zhí)行機(jī)構(gòu)之間的數(shù)據(jù)通信,在工控領(lǐng)域興起應(yīng)用熱潮。
而伺服電機(jī)具有結(jié)構(gòu)緊湊、控制容易、運(yùn)行穩(wěn)定、響應(yīng)速度快等優(yōu)異特性,已越來越成為現(xiàn)代工業(yè)自動化系統(tǒng)中的一個(gè)重要執(zhí)行元件。在自動化程度高、需精確控制速度、位置、力矩等的場合,如印刷機(jī)械、造紙機(jī)械、紡織機(jī)械、工業(yè)機(jī)器人、高速電梯、數(shù)控機(jī)床等重要行業(yè)中,得到了普遍的應(yīng)用。
德國倫茨公司生產(chǎn)的伺服電機(jī)由于提供了CAN總線接口,使其很容易掛接到CAN總線上,通過CAN總線進(jìn)行數(shù)據(jù)傳輸與控制,拓展了伺服電機(jī)的功能與應(yīng)用范圍,使伺服電機(jī)能更好更靈活地應(yīng)用于現(xiàn)代工業(yè)控制系統(tǒng)中。
2、CAN總線的特性
作為專門應(yīng)用于工業(yè)自動化領(lǐng)域的網(wǎng)絡(luò),CAN總線具有以下優(yōu)點(diǎn):
(1)使用簡單方便。許多CAN控制器芯片如SJA1000T、Philips82C250等實(shí)現(xiàn)了CAN物理層及數(shù)據(jù)鏈路層的大部分,在使用時(shí)用戶需要做的只是兩件事:對CAN控制器進(jìn)行初始化,對CAN總線上的數(shù)據(jù)進(jìn)行收發(fā)操作。
(2)高效可靠。CAN采用短幀結(jié)構(gòu),數(shù)據(jù)幀中的數(shù)據(jù)字段長度最多為8B,所以傳輸?shù)乃俣瓤欤ㄗ畲笸ㄐ潘俾士蛇_(dá)1Mbps),受干擾的概率低。同時(shí),CAN總線作為多主節(jié)點(diǎn),各節(jié)點(diǎn)通過總線仲裁獲得總線控制權(quán),并擁有完善的錯誤處理機(jī)制,保證了各種干擾環(huán)境下數(shù)據(jù)傳輸?shù)陌踩煽俊?/p>
(3)系統(tǒng)可擴(kuò)充性好。CAN總線是面向消息的編碼,而不是面向設(shè)備的編碼,故增添或刪減CAN上的節(jié)點(diǎn)非常方便和靈活,易于系統(tǒng)的擴(kuò)充。
3、伺服電機(jī)接入CAN網(wǎng)
倫茨伺服電機(jī)的伺服控制器由于提供了專門的CAN總線接口X4,可以像其他的CAN節(jié)點(diǎn)一樣,用普通雙絞線作為通信介質(zhì),很方便地連接到基于CAN總線的工業(yè)控制系統(tǒng)上。
倫茨的伺服控制器與伺服電機(jī)之間采用旋轉(zhuǎn)變壓器或光電編碼器建立反饋,形成高精度的伺服控制系統(tǒng),伺服電機(jī)實(shí)時(shí)地將其運(yùn)行狀態(tài)與運(yùn)行信息上傳給伺服控制器。作為CAN總線上的節(jié)點(diǎn),伺服控制器不僅可以與上位主機(jī)進(jìn)行通信,通過CAN總線接收上位機(jī)的各種操作、控制和參數(shù)設(shè)定命令;同時(shí)伺服控制器之間亦可以進(jìn)行快速的數(shù)據(jù)交換,相互間建立一定的協(xié)調(diào)或控制關(guān)系。
上位主機(jī)通過接插支持CAN的通訊適配卡獲得對CAN總線的支持,負(fù)責(zé)對整個(gè)系統(tǒng)的運(yùn)行和工作狀態(tài)進(jìn)行監(jiān)視管理。由于CAN總線在工業(yè)控制上的應(yīng)用越來越廣泛,很多公司都推出了支持CAN總線的接口適配卡,如研華的PCL-841通信卡、北京華控的HK-CAN20通信卡、北京三興達(dá)公司的智能CAN-PC總線適配卡PCCAN等等,用戶可以通過這些接口適配卡,來運(yùn)行復(fù)雜的通信任務(wù),進(jìn)行各CAN節(jié)點(diǎn)與上位主機(jī)之間的數(shù)字通信和協(xié)調(diào)管理。
4、伺服控制器的功能模塊與基于CAN總線的數(shù)據(jù)通道
倫茨伺服電機(jī)的伺服控制器,具有豐富的內(nèi)部功能模塊庫,如常見的邏輯功能模塊、算術(shù)功能模塊、信號類型轉(zhuǎn)換模塊、斜坡函數(shù)發(fā)生模塊、相位積分模塊以及較特殊的數(shù)頻輸入輸出模塊、數(shù)頻處理模塊、伺服控制處理模塊、速度設(shè)定處理模塊等等。用戶利用這些功能塊,可以自由配置控制器的信號流程,使控制器能很容易地適應(yīng)不同的實(shí)際應(yīng)用。
為了實(shí)現(xiàn)基于CAN總線的應(yīng)用,伺服控制器提供了專門的CAN總線功能模塊組CAN-IN與CAN-OUT,作為過程數(shù)據(jù)通道,進(jìn)行過程數(shù)據(jù)的傳輸。其中,功能塊CAN-IN1與CAN-OUT1只用于伺服控制器與上位主機(jī)之間進(jìn)行通信與數(shù)據(jù)傳輸。輸入功能塊CAN-IN1用于接收上位主機(jī)的數(shù)據(jù)信息,CAN-IN1有8B的數(shù)據(jù)空間可供用戶使用配置,可以向其他內(nèi)部功能模塊提供二進(jìn)制信號、16位的模擬信號、16位的速度信號以及32位的相位信號等多種控制信號。上位主機(jī)通過向根據(jù)實(shí)際應(yīng)用配置的CAN-IN1模塊發(fā)送命令信息,能實(shí)現(xiàn)伺服電機(jī)的速度給定、電機(jī)快停、電機(jī)的正反轉(zhuǎn)切換、電機(jī)正常模式轉(zhuǎn)速與恒定低速的切換、電機(jī)使能、電機(jī)禁止等各種功能。同樣,CAN-OUT1功能模塊亦有8B的數(shù)據(jù)空間可供用戶使用,可以通過配置向上位主機(jī)實(shí)時(shí)地提供電機(jī)的各種狀態(tài)信息、電機(jī)的實(shí)際速度、電機(jī)的實(shí)際相位等信息。
功能塊CAN-IN2、CAN-IN3與CAN-OUT2、CAN-OUT3用于伺服控制器之間進(jìn)行快速數(shù)據(jù)交換。只要配置了某一伺服控制器的CAN-OUT2或CAN-OUT3與另一伺服控制器的CAN-IN2或CAN-IN3的對應(yīng)關(guān)系,即可建立起伺服控制器間的數(shù)據(jù)傳輸通道,在電機(jī)運(yùn)行過程中將1臺伺服控制器的各種數(shù)據(jù)信息傳給另1臺伺服控制器,常見的如:將1臺伺服控制器的速度給定經(jīng)一定運(yùn)算處理后作為另1臺伺服控制器的速度給定信號,使2臺伺服電機(jī)速度比例運(yùn)行。該特性對于多臺伺服電機(jī)之間的協(xié)調(diào)控制具有重要意義。上位主機(jī)亦可以監(jiān)測到在CAN總線上傳輸?shù)脑擃悢?shù)據(jù)信息。
同時(shí),伺服控制器還提供2路參數(shù)輸入通道和2路參數(shù)輸出通道。在CAN總線上,上位主機(jī)可通過2路參數(shù)輸入通道,對伺服控制器內(nèi)的各種參數(shù)進(jìn)行設(shè)置修改,如伺服電機(jī)的加減速時(shí)間、齒輪箱變速比、級聯(lián)系數(shù)等等;通過2路參數(shù)輸出通道讀取伺服控制器的各種參數(shù),如伺服電機(jī)的當(dāng)前溫度、當(dāng)前配置的加減速時(shí)間以及電機(jī)的實(shí)際電壓電流等等,故只要是能在伺服控制器的參數(shù)代碼表中找得到的參數(shù),基本上都能夠讀取。
通過CAN總線接口與各個(gè)數(shù)據(jù)通道,伺服電機(jī)可將自己的相關(guān)數(shù)據(jù)信息發(fā)送到CAN總線上;同時(shí)亦可以接收來自總線的伺服電機(jī)所需的各種數(shù)據(jù)信息與控制命令。
5、CAN的通信協(xié)議
作為實(shí)時(shí)性要求比較高的工業(yè)控制底層網(wǎng)絡(luò),CAN協(xié)議只分為3層:物理層、數(shù)據(jù)鏈入層和應(yīng)用層。CAN通信協(xié)議有4種不同的幀格式:數(shù)據(jù)幀、遠(yuǎn)程幀、錯誤幀和超載幀。
由于CAN通信協(xié)議給出的只是共性要求,在實(shí)際應(yīng)用中需要將協(xié)議具體化,建立適用的協(xié)議規(guī)則。根據(jù)伺服電機(jī)伺服控制器的特點(diǎn),并遵循CAN通信協(xié)議標(biāo)準(zhǔn),制定了伺服控制器的通信協(xié)議規(guī)則。伺服控制器的每個(gè)信息幀分為2部分:幀頭和數(shù)據(jù)域。幀頭占2B,其前11位為標(biāo)識符,然后是一位RTR位,最后是4位的數(shù)據(jù)長度位DLC(即所發(fā)數(shù)據(jù)的實(shí)際長度,以字節(jié)為單位)。數(shù)據(jù)域占用8B。11位的信息標(biāo)識符反應(yīng)了節(jié)點(diǎn)的優(yōu)先級別,總線仲裁就是通過它來實(shí)現(xiàn)的,信息幀的標(biāo)識符越小,信息幀就具有越高的優(yōu)先權(quán)。除總線狀態(tài)等特殊信息外,伺服控制器對所傳輸信息的標(biāo)識符有一定的計(jì)算公式:
信息標(biāo)識符=基準(zhǔn)標(biāo)識符+設(shè)定的控制器的節(jié)點(diǎn)地址
伺服控制器的節(jié)點(diǎn)地址可以在參數(shù)代碼表中設(shè)定。而對信息的基準(zhǔn)標(biāo)識符,伺服控制器有統(tǒng)一的規(guī)定,如:同步觸發(fā)信號的基準(zhǔn)標(biāo)識符為128,來自控制器CAN-OUT1通道的信息的基準(zhǔn)標(biāo)識符為384,而發(fā)送到控制器CAN-IN1通道的信息的基準(zhǔn)標(biāo)識符為512,通過參數(shù)通道1發(fā)送到控制器的信息基準(zhǔn)標(biāo)識符為1536,通過參數(shù)通道1接收的信息基準(zhǔn)標(biāo)識符則為1408。
對于8B的數(shù)據(jù)域,用戶需要按照所要發(fā)送的具體信息來確定應(yīng)遵循的使用原則。比如,要通過參數(shù)通道進(jìn)行參數(shù)設(shè)定,第1個(gè)字節(jié)為命令碼,第2、3字節(jié)為參數(shù)對應(yīng)的索引號,第4個(gè)字節(jié)為參數(shù)對應(yīng)的次索引,后4個(gè)字節(jié)是要設(shè)定的參數(shù)數(shù)據(jù)大小;而要發(fā)送信息到某伺服控制器的過程數(shù)據(jù)通道CAN-IN1,則直接是數(shù)據(jù)信息的發(fā)送,沒有命令碼,也沒有索引號。
6、上位主機(jī)的軟件設(shè)計(jì)
通過CAN總線進(jìn)行通信與控制的伺服電機(jī),在針對實(shí)際的應(yīng)用要求配置好伺服控制器的內(nèi)部控制信號流,以及基于CAN的接口功能模塊和數(shù)據(jù)通道后,剩下需要解決的是上位主機(jī)的軟件設(shè)計(jì)問題。
由于上位主機(jī)所接插的CAN通訊適配卡一般都提供CAN的驅(qū)動函數(shù),所以在上位機(jī)軟件的編制過程中,實(shí)現(xiàn)與CAN總線的通信部分可以直接調(diào)用相應(yīng)的函數(shù),如上位主機(jī)與CAN通信的主要任務(wù):對CAN適配卡的初始化、CAN信息包的發(fā)送、CAN信息包的接收等,都有現(xiàn)成的函數(shù)可以使用,為用戶使用CAN進(jìn)行通信提供了方便。對CAN通訊適配卡的初始化主要是初始化適配卡的各個(gè)寄存器,設(shè)置中斷向量、通信卡的波特率以及中斷屏蔽字等必要的參數(shù),為正常通信作準(zhǔn)備。實(shí)現(xiàn)CAN信息包的發(fā)送,首先要確定信息包的11位信息標(biāo)識符,填入幀頭,并在數(shù)據(jù)域中填入需要發(fā)送的數(shù)據(jù)信息,通過發(fā)送函數(shù)發(fā)送給所有CAN節(jié)點(diǎn)或特定的CAN節(jié)點(diǎn)上。而對于使用接收函數(shù)所接收的CAN信息包,亦通過其11位信息標(biāo)識符,判斷其來源,對數(shù)據(jù)域的數(shù)據(jù)進(jìn)行處理,取得有效的信息,進(jìn)行顯示或存儲,并按照控制需要發(fā)送控制指令。
上位主機(jī)正是通過對CAN驅(qū)動函數(shù)的不斷調(diào)用,發(fā)送控制命令或參數(shù)設(shè)定命令給各伺服電機(jī)的伺服控制器,驅(qū)動伺服電機(jī)的啟停運(yùn)轉(zhuǎn);同時(shí)接收來自伺服控制器的伺服電機(jī)的速度、相位、轉(zhuǎn)動方向、轉(zhuǎn)矩等各種數(shù)據(jù)信息及狀態(tài)信息,并進(jìn)行分析處理,然后按照系統(tǒng)的實(shí)際控制需要再給伺服控制器發(fā)送相應(yīng)的命令,去驅(qū)動電機(jī),使伺服電機(jī)的運(yùn)行始終按用戶的要求進(jìn)行變化,從而實(shí)現(xiàn)對伺服電機(jī)的管理與控制。
7、結(jié)束語
倫茨伺服電機(jī)CAN接口的引入,提高了伺服電機(jī)的自動化水平,使伺服電機(jī)在工業(yè)控制網(wǎng)絡(luò)中的通信與控制更為方便、靈活和可靠。
CAN總線在現(xiàn)代工業(yè)控制系統(tǒng)中越來越廣泛的應(yīng)用,為帶CAN接口的伺服電機(jī)提供了廣闊的應(yīng)用前景。
標(biāo)簽:
中國傳動網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。