《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 業(yè)界動(dòng)態(tài) > 基于專用控制芯片的步進(jìn)電機(jī)運(yùn)動(dòng)控制系統(tǒng)設(shè)計(jì)

基于專用控制芯片的步進(jìn)電機(jī)運(yùn)動(dòng)控制系統(tǒng)設(shè)計(jì)

2017-04-25

  步進(jìn)電機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)化為角位移或線位移的電磁機(jī)械裝置。步進(jìn)電機(jī)的穩(wěn)定性和可靠性直接影響到工業(yè)控制領(lǐng)域的精度,特別是在點(diǎn)膠點(diǎn)焊等高精度運(yùn)動(dòng)控制系統(tǒng)中,對(duì)于步進(jìn)電機(jī)的精度和穩(wěn)定性要求更高。所以說(shuō),對(duì)于步進(jìn)電機(jī)控制系統(tǒng)的研究,不論是在實(shí)際效益還是理論價(jià)值方面意義都將是巨大的。近年來(lái)不少專家學(xué)者研制出性能不錯(cuò)的步進(jìn)電機(jī)控制系統(tǒng),然而這些控制系統(tǒng)具有微處理器需處理的任務(wù)量大、PCB板元器件較多、系統(tǒng)不夠穩(wěn)定等缺點(diǎn),這給系統(tǒng)的可靠性帶來(lái)了較大的隱患。隨著電子技術(shù)的發(fā)展,步進(jìn)電機(jī)的很多功能單元如加減速控制、微步控制等都走向模塊化,并且具有體積小、重量輕、工作穩(wěn)定、能夠?qū)崿F(xiàn)多軸控制等優(yōu)點(diǎn),這給步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì)和開發(fā)帶來(lái)了很大的方便。

  基于以上的考慮,文中利用微控制器AT90CAN128、步進(jìn)電機(jī)運(yùn)動(dòng)控制芯片TMC429和步進(jìn)電機(jī)驅(qū)動(dòng)芯片TMC262設(shè)計(jì)了一種控制驅(qū)動(dòng)一體化的3軸步進(jìn)電機(jī)控制系統(tǒng)。通信方面設(shè)計(jì)了RS485接口,用于上位機(jī)與控制驅(qū)動(dòng)板之間的通信,增加了CAN接口,為后續(xù)多軸聯(lián)動(dòng)、生產(chǎn)線網(wǎng)絡(luò)化作功能擴(kuò)展。

  1 系統(tǒng)的總體設(shè)計(jì)

  設(shè)計(jì)的步進(jìn)電機(jī)控制系統(tǒng)結(jié)構(gòu)框圖如圖1所示。

   在該系統(tǒng)中設(shè)計(jì)完成的控制兼驅(qū)動(dòng)集成板可作為下位機(jī),PC、PLC和DSP等可作為上位機(jī),上、下位機(jī)通過(guò)RS485或CAN總線等通訊接口進(jìn)行通訊。上位機(jī)主要負(fù)責(zé)發(fā)送驅(qū)動(dòng)裝置(步進(jìn)電機(jī))的運(yùn)動(dòng)控制指令(如位移、速度、加速度等),下位機(jī)(微控制器)負(fù)責(zé)接收指令并對(duì)指令進(jìn)行處理以輸出步進(jìn)電機(jī)運(yùn)動(dòng)所需要的脈沖信號(hào)和方向信號(hào)。

  2 硬件部分設(shè)計(jì)

  本系統(tǒng)中微控制器采用AT90CAN128,專用控制芯片采用了TRINAMIC公司生產(chǎn)的TMC429和TMC262。系統(tǒng)拋棄了傳統(tǒng)的“CPU+外置CAN協(xié)議轉(zhuǎn)換器”的方案,選擇內(nèi)置CAN模塊的AT90CAN128主要考慮到系統(tǒng)的穩(wěn)定性、減少電路板元器件的數(shù)量、提高系統(tǒng)的集成度和靈活性。TMC429提供了所有與數(shù)字運(yùn)動(dòng)控制有關(guān)的功能,包括位置控制、速度控制及微步控制等步進(jìn)電機(jī)常用的控制功能。這些功能如果讓微處理器來(lái)完成,則需占用大量的系統(tǒng)資源,所以它的使用可將微處理器解放出來(lái),以把資源用在接口的擴(kuò)展和對(duì)步進(jìn)電機(jī)的更高層次的控制上。此外,在TMC262與電機(jī)之間還需配置H橋,系統(tǒng)中選用的是互補(bǔ)型MOSFET器件FDD8424H芯片。由于一片步進(jìn)電機(jī)驅(qū)動(dòng)芯片TMC262只能驅(qū)動(dòng)一路步進(jìn)電機(jī),且需要與4片F(xiàn)DD8424H芯片使用,故系統(tǒng)中共使用了3片TMC262芯片及12片F(xiàn)DD8424H芯片。

  2.1 核心控制芯片簡(jiǎn)介

  2.1.1 AT90CAN128單片機(jī)簡(jiǎn)介

  AT90CAN128為基于AVR RISC結(jié)構(gòu)的8位低功耗CMOS微處理器。由于其先進(jìn)的指令集以及單周期指令執(zhí)行時(shí)間,該單片機(jī)的數(shù)據(jù)吞吐率高達(dá)1 MIPS/MHz,從而緩解了系統(tǒng)在功率和處理速度之間的矛盾。該單片機(jī)大部分引腳與MEGA128兼容,內(nèi)部結(jié)構(gòu)在繼承MEGA128的資源基礎(chǔ)上進(jìn)行了改進(jìn),但其最大的特色還在于具有了符合CAN2.0A和CAN2.0B標(biāo)準(zhǔn)的全功能CAN外設(shè)模塊。AT90CAN128采用Mob(消息對(duì)象)方式進(jìn)行數(shù)據(jù)的發(fā)送和接受,共有15個(gè)Mob,它們具有相同的屬性。

  2.1.2 TMC262步進(jìn)電機(jī)驅(qū)動(dòng)芯片簡(jiǎn)介

  TMC262是一款具有高細(xì)分率的兩相步進(jìn)電機(jī)驅(qū)動(dòng)芯片,適用于雙極性步進(jìn)電機(jī)的驅(qū)動(dòng)。該芯片同時(shí)帶有專利技術(shù)stallguard功能和專利技術(shù)coolstep功能,前者可以實(shí)現(xiàn)無(wú)需傳感器精確測(cè)試電機(jī)負(fù)載,后者可以根據(jù)電機(jī)的負(fù)載自動(dòng)調(diào)節(jié)驅(qū)動(dòng)芯片輸出的電流,避免因?yàn)槌d而丟步,減少電機(jī)的發(fā)熱量,和其他驅(qū)動(dòng)芯片相比可節(jié)省75%的能量。使用該芯片可通過(guò)兩種方式控制電機(jī):S/D(Step/Direction)模式和SPI模式。芯片內(nèi)置的微步表提供了與電機(jī)電流匹配的正弦值和余弦值。TMC262的低功率、高效率、體積小的設(shè)計(jì)理念使其成為嵌入式運(yùn)動(dòng)控制甚至電池供電設(shè)備的完美選擇,內(nèi)部集成的DAC功能可實(shí)現(xiàn)對(duì)電流的微步控制。在使用芯片之前,需通過(guò)SPI接口對(duì)TMC262進(jìn)行相關(guān)的配置。

  2.1.3 TMC429步進(jìn)電機(jī)控制芯片簡(jiǎn)介

  TMC429是TRINAMIC公司開發(fā)的小尺寸、高性價(jià)比的二相步進(jìn)電機(jī)控制芯片,可以控制多達(dá)3軸步進(jìn)電機(jī)。與TMC428不同,該芯片的CPU時(shí)鐘頻率可高達(dá)32 MHz。一旦初始化,TMC429能按照設(shè)定的目標(biāo)位置和目標(biāo)速度自動(dòng)運(yùn)行各種實(shí)時(shí)關(guān)鍵任務(wù),且目標(biāo)位置和速度可隨時(shí)更改。它可以減少外圍電路,減少電機(jī)控制軟件設(shè)計(jì)的工作量,降低開發(fā)成本,縮短研發(fā)時(shí)間。和TMC262一樣,在使用芯片之前,也需通過(guò)SPI接口對(duì)TMC429進(jìn)行相關(guān)的配置。

  TMC429有4種工作模式,可單獨(dú)為每個(gè)步進(jìn)電機(jī)編程。其中位置控制有RAMP模式和SOFT模式,速度控制有VELOCITY模式和HOLD模式。對(duì)于位置應(yīng)用,RAMP模式比較合適,而對(duì)于持續(xù)的速度應(yīng)用,VELOCITY模式比較合適。在RAMP模式,用戶只要設(shè)置位置參數(shù),TMC429計(jì)算出一個(gè)矩形速度曲線然后驅(qū)動(dòng)電機(jī)自主地運(yùn)行至目標(biāo)位置,而且在運(yùn)動(dòng)期間,位置可以被任意改變。SOFT模式與RAMP模式比較類似,只是在速度減少時(shí),速度以指數(shù)曲線下降。在VELOCITY模式,目標(biāo)速度被設(shè)置,運(yùn)行時(shí)TMC429會(huì)考慮用戶定義的速度和加速度的極限。在HOLD模式,用戶設(shè)置目標(biāo)速度,但是TMC429忽略速度和加速度的任何限制,去實(shí)現(xiàn)完全由用戶設(shè)定的任意速度曲線。此外,TMC429提供了中斷機(jī)制,用戶可根據(jù)具體應(yīng)用要求進(jìn)行設(shè)置。

  微處理器通過(guò)發(fā)送和接收固定長(zhǎng)度的數(shù)據(jù)包對(duì)TMC429的寄存器和片內(nèi)RAM進(jìn)行讀寫操作。利用TMC429自帶的二個(gè)獨(dú)立的SPI口,可分別與微處理器和帶有SPI接口的步進(jìn)電機(jī)驅(qū)動(dòng)芯片相連以構(gòu)成完整的系統(tǒng)。每次微控制器發(fā)送數(shù)據(jù)包給TMC429的同時(shí),微控制器也接受到來(lái)自TMC429的數(shù)據(jù)包。

  微控制器與TMC429之間的通信數(shù)據(jù)包如圖2和圖3所示。

 備注:

  RRS:寄存器/RAM選擇位(RRS=0:寄存器/RRS=1:RAM)

  RW:讀寫選擇位(RW=1:讀/RW=0:寫)

  備注:

  INT:中斷控制狀態(tài)輸出信號(hào)

  CDGW(cover dategram waiting):(無(wú)握手信號(hào)時(shí)為0)

  RS1、RS2和RS3:限位開關(guān)的設(shè)置(未激活時(shí)為0)

  xEQt1、xEQt2和xEQt3:指示相應(yīng)的步進(jìn)電機(jī)是否到達(dá)目標(biāo)位置

  2.2 專用控制芯片間的硬件連接

  專用控制芯片TMC262和TMC429的連接簡(jiǎn)圖如圖4所示。

  為TMC429-L1(QFN32封裝)與TMC262的連接簡(jiǎn)圖,TMC429與TMC262的通信方式有SPI模式和step/dir模式,本系統(tǒng)選用后者。CSN_0用于片選TMC429的SPI微控制接口,CSN_1、CSN_2和CSN_3分別用于片選3個(gè)TMC262以完成對(duì)TMC262的配置。

  2.3 CAN總線通訊接口電路設(shè)計(jì)

  系統(tǒng)CAN總線的硬件電路如圖5所示。

  CAN接口電路主要由3部分組成:?jiǎn)纹瑱C(jī)AT90CAN128、高速光耦合器6N137和高速CAN總線收發(fā)器。其中AT90CAN128主要負(fù)責(zé)內(nèi)部CAN控制器的初始化、實(shí)現(xiàn)數(shù)據(jù)的接收和發(fā)送等通信任務(wù);6N137起到控制器與工業(yè)現(xiàn)場(chǎng)相隔離的目的,可以提高系統(tǒng)的抗干擾能力;TJA1050是控制器區(qū)域網(wǎng)絡(luò)(CAN)協(xié)議控制器和物理總線之間的接口,可以為CAN控制器提供差動(dòng)接收性能。

  2.4 RS485總線通訊接口電路設(shè)計(jì)

  系統(tǒng)RS485總線的硬件電路如圖6所示。

  由于RS-485與TTL電平不兼容,因此兩者之間需要有電平轉(zhuǎn)換。目前完成此功能的芯片比較多,本系統(tǒng)中采用MAXIM公司生產(chǎn)的MAX485。該芯片內(nèi)有接收器與發(fā)送驅(qū)動(dòng)器,控制簡(jiǎn)單,適用于半雙工通訊。為了提高通訊接口的抗干擾能力,在MAX485與單片機(jī)輸出端之間接入光電耦合器;同時(shí)在A端和B端之間增加了匹配電阻,以吸收總線上的反射信號(hào),保證正常傳輸信號(hào)時(shí)無(wú)毛刺。

  3 軟件部分設(shè)計(jì)

  在硬件電路設(shè)計(jì)制作的基礎(chǔ)上設(shè)計(jì)了控制系統(tǒng)的軟件??刂葡到y(tǒng)的所有源代碼均在AVR Studio 4和ICCAVR集成開發(fā)環(huán)境中編譯和調(diào)試。為了便于系統(tǒng)擴(kuò)展,系統(tǒng)軟件設(shè)計(jì)采用模塊化設(shè)計(jì)。

  步進(jìn)電機(jī)控制系統(tǒng)的主程序設(shè)計(jì)流程圖如圖7所示。

  在軟件設(shè)計(jì)中,由于專用控制芯片分擔(dān)了不少單片機(jī)的軟件設(shè)計(jì)工作,因此通信方面的軟件編程是設(shè)計(jì)的重點(diǎn)。設(shè)計(jì)的控制系統(tǒng)擬作為下位機(jī),下位機(jī)與上位機(jī)的通信選擇了RS485和CAN接口。RS485接口標(biāo)準(zhǔn)只對(duì)接口的電氣特性做出規(guī)定,使其具有通用性,但不涉及接插件、電纜等,在此基礎(chǔ)上用戶可以建立自己的高層通信協(xié)議。而這個(gè)高層通信協(xié)議的建立既可以采用已有的應(yīng)用成熟的通信協(xié)議,比如Modbus協(xié)議等,也可以由用戶自定義RS485的通信協(xié)議。本系統(tǒng)采用了Modbus通信協(xié)議。CAN總線節(jié)點(diǎn)的軟件設(shè)計(jì)主要包括3大部分:CAN節(jié)點(diǎn)初始化、報(bào)文發(fā)送和報(bào)文接收。

  CAN節(jié)點(diǎn)的初始化程序的主要任務(wù)就是對(duì)總線通信控制器CAN控制器進(jìn)行合適的配置,以滿足系統(tǒng)運(yùn)行的要求。CAN控制器的初始化包括了工作方式的設(shè)置、ID標(biāo)志符寄存器的設(shè)置、接受屏蔽寄存器的設(shè)置、波特率參數(shù)的設(shè)置、消息郵箱Mob控制寄存器的設(shè)置和中斷允許寄存器的設(shè)置等。由于本文設(shè)計(jì)的步進(jìn)電機(jī)控制系統(tǒng)采用CAN2.0B規(guī)范,需要對(duì)CAN接收器進(jìn)行相應(yīng)的初始化。在完成初始化配置以后,回到工作狀態(tài)進(jìn)行正常的通訊任務(wù)。

  限于篇幅,這里僅給出CAN控制器初始化的部分程序:

 對(duì)于報(bào)文的發(fā)送,當(dāng)CAN總線上的一個(gè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),它以報(bào)文形式廣播給網(wǎng)絡(luò)中所有節(jié)點(diǎn)。當(dāng)發(fā)送時(shí),CAN控制芯片將數(shù)據(jù)進(jìn)行相應(yīng)的組織和傳送,此時(shí)網(wǎng)絡(luò)上其他節(jié)點(diǎn)處于接收狀態(tài)。報(bào)文的接收主要有兩種方式:中斷方式和查詢方式。在本設(shè)計(jì)中,采用的是中斷方式,即每傳來(lái)一個(gè)報(bào)文,就觸發(fā)CANSTMOB中的相應(yīng)中斷,然后將接收到的數(shù)據(jù)從CAN數(shù)據(jù)寄存器中轉(zhuǎn)移到指定的存儲(chǔ)區(qū)域內(nèi)并保存起來(lái)。

  4 結(jié)束語(yǔ)

  采用步進(jìn)電機(jī)專用的運(yùn)動(dòng)控制芯片TMC429和驅(qū)動(dòng)芯片TMC262設(shè)計(jì)了控制驅(qū)動(dòng)一體化的步進(jìn)電機(jī)控制系統(tǒng)。經(jīng)過(guò)自動(dòng)化生產(chǎn)線的實(shí)驗(yàn)測(cè)試表明,所設(shè)計(jì)的步進(jìn)電機(jī)控制驅(qū)動(dòng)一體化系統(tǒng)具有高細(xì)分、控制精度高和穩(wěn)定性好等特點(diǎn)。設(shè)計(jì)的步進(jìn)電機(jī)控制系統(tǒng)可降低軟件開發(fā)的難度,減少硬件實(shí)現(xiàn)的成本,且控制方便。該控制系統(tǒng)可廣泛應(yīng)用于汽車行業(yè)和工業(yè)運(yùn)動(dòng)控制領(lǐng)域。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。