韓冬林
(天津中德職業(yè)技術(shù)學院 天津 300350)
一種集成CAN總線的步進電機驅(qū)動裝置
韓冬林
(天津中德職業(yè)技術(shù)學院 天津 300350)
采用dsPIC30F6010A高性能數(shù)字信號控制器,提出并實現(xiàn)了一種新型的集成CAN總線接口的步進電機驅(qū)動裝置。根據(jù)dsPIC30F6010A芯片外設(shè)模塊的參數(shù)特點,設(shè)計了PWM驅(qū)動電路、電機相電流測量電路和CAN總線收發(fā)器電路,開發(fā)了基于C語言的模塊化應(yīng)用程序。實際測試表明,該集成CAN總線的步進電機驅(qū)動裝置可以直接接入CAN總線網(wǎng)絡(luò),實現(xiàn)了對電機運行參數(shù)和運行狀態(tài)的遠程控制功能。
步進電機驅(qū)動器;CAN總線;dsPIC30F6010A;PWM驅(qū)動電路;相電流測量電路
步進電機作為一種數(shù)字伺服執(zhí)行元件,具有結(jié)構(gòu)簡單、運行可靠、定位方便等優(yōu)點,在精密機械運動控制領(lǐng)域有著廣泛的應(yīng)用[1]??刂破骶钟蚓W(wǎng)CAN總線是德國BOSCH公司為現(xiàn)代汽車電控系統(tǒng)推出的一種多主機數(shù)據(jù)通訊總線,具有高可靠性和高實時性等突出優(yōu)點,廣泛應(yīng)用于汽車制造和自動化控制領(lǐng)域[2],已成為國際上應(yīng)用最廣泛的現(xiàn)場總線之一。CAN總線采用具備CAN通信能力的控制設(shè)備作為智能節(jié)點,不僅極大地降低了控制系統(tǒng)的布線數(shù)量與成本,而且有效地提高了控制信號數(shù)據(jù)傳輸?shù)臏蚀_性與靈活性。近年來隨著汽車網(wǎng)絡(luò)技術(shù)的發(fā)展,以嵌入式微控制器為核心的具有CAN總線接口的各種電控單元已經(jīng)成為了研究的重點[3]。本文基于dsPIC30F6010A高性能數(shù)字信號控制器,提出并實現(xiàn)了一種集成CAN總線的步進電機驅(qū)動裝置,為步進電機控制單元的智能化和網(wǎng)絡(luò)化提供了一種高集成度的一體化設(shè)計方案。
本文設(shè)計的集成CAN總線的步進電機驅(qū)動裝置如圖1所示,主要由dsPIC30F6010A高性能數(shù)字信號控制器、FAN7384PWM驅(qū)動電路、雙H橋功率放大電路、步進電機相電流反饋電路、CAN收發(fā)器和CAN總線端口等6部分構(gòu)成。
dsPIC30F6010A的通用數(shù)字I/O口接收CMD輸入信號,作為步進電機控制的使能信號,該使能信號具有最高的優(yōu)先級,只有當該使能信號有效時,dsPIC30F6010A才會接受CAN總線的控制指令,產(chǎn)生相應(yīng)的PWM驅(qū)動脈沖,通過FAN7384驅(qū)動電路和雙H橋功率放大電路,實現(xiàn)步進電機的驅(qū)動控制功能。步進電機相電流反饋電路將電機相電流信號通過采樣電阻SHUNT1和SHUNT2轉(zhuǎn)換為直流電壓信號,由dsPIC30F6010A內(nèi)部的高速A/D轉(zhuǎn)換模塊采樣并轉(zhuǎn)換為數(shù)字信號,從而實現(xiàn)電機相電流的精確閉環(huán)控制。dsPIC30F6010A內(nèi)嵌的CAN總線模塊通過CAN1RX/CAN1TX管腳與CAN收發(fā)器實現(xiàn)數(shù)據(jù)通訊功能。步進電機的轉(zhuǎn)速設(shè)定有兩個途徑,一種途徑是由SPD電壓信號經(jīng)dsPIC30F6010A的模擬量輸入接口采樣設(shè)定,另一種途徑可以通過CAN總線通訊方式以數(shù)字量的形式直接設(shè)定。
圖1 集成CAN總線的步進電機驅(qū)動裝置系統(tǒng)框圖Fig.1 Integrated CANBUS stepping motor driver system block diagram
本文采用美國MICROCHIP公司的高性能數(shù)字信號控制器dsPIC30F6010A作為主控芯片。該芯片的內(nèi)核采用改進型的哈佛架構(gòu),工作速度最高可達30 MIPS,內(nèi)嵌的DSP引擎不僅集成了兩個具備可選飽和邏輯的40位寬累加器,而且包含了一個17位乘17位單周期的硬件乘法器,非常適用于高速數(shù)據(jù)處理的應(yīng)用場合。該芯片內(nèi)部集成了一個電機專用的PWM控制模塊,該PWM模塊具備4個占空比發(fā)生器和8個 PWM輸出引腳,分別為 PWM1H/PWM1L、PWM2H/PWM2L、 PWM3H/PWM3L、PWM4H/PWM4L,這 8 個 PWM 輸出引腳可組合為4組互補輸出的PWM引腳對,能夠滿足多種類型的電機控制應(yīng)用要求。
dsPIC30F6010A芯片的外設(shè)非常豐富,不僅集成了高達16通道的高速10位A/D轉(zhuǎn)換模塊,而且還集成了2個2.0B標準的CAN總線模塊,只需外接CAN收發(fā)器,就可以勝任集成CAN總線的步進電機驅(qū)動裝置的硬件設(shè)計要求。
dsPIC30F6010A芯片的高速A/D轉(zhuǎn)換模塊具有4路采樣保持器,可同時對4路模擬量電壓信號進行采樣,最高采樣速率可達1 MHz。本設(shè)計充分發(fā)揮這一硬件優(yōu)勢,將步進電機相電流反饋電路和直流母線電壓監(jiān)視電路的電壓信號接入A/D轉(zhuǎn)換模塊,實現(xiàn)了主控芯片對電機相電流信號和直流母線電壓信號的同時采樣功能,有效地提高了步進電機驅(qū)動裝置的控制精度和響應(yīng)速度。
dsPIC30F6010A芯片內(nèi)嵌的CAN總線模塊實現(xiàn)了一個完整的CAN控制器系統(tǒng),該CAN模塊具備2個可區(qū)分優(yōu)先級的接收報文存儲緩沖器和3個可指定優(yōu)先級的發(fā)送緩沖器,并支持自檢操作的可編程環(huán)回通訊模式,最高波特率可達1Mbps。本設(shè)計將步進電機驅(qū)動功能與CAN總線通訊功能整合為一體化設(shè)計,集成CAN總線的步進電機驅(qū)動裝置不再僅是一個電機驅(qū)動器,而成為了一個智能化的電機控制單元,該控制單元可以直接接入標準的CAN總線網(wǎng)絡(luò),成為CAN總線上的一個智能節(jié)點,實現(xiàn)了步進電機的網(wǎng)絡(luò)控制功能。
FAN7384是美國FAIRCHILD半導體公司生產(chǎn)的一款單片高壓半橋驅(qū)動集成電路,廣泛用于功率MOSFET半橋自舉驅(qū)動電路設(shè)計中[4]。本裝置共設(shè)計了四組結(jié)構(gòu)相同的半橋驅(qū)動和功率放大電路,每一組電路都是由一個FAN7384半橋驅(qū)動器和兩個FDS3992功率MOSFET構(gòu)成。圖2為PWM1H/PWM1L驅(qū)動與功率放大電路原理圖,其他三組驅(qū)動與功率放大電路與其結(jié)構(gòu)完全相同。
圖2 PWM驅(qū)動與功率放大電路原理圖Fig.2 PWM driver and power amplifier schematic
FAN7384具有獨立的高端輸入(HIN)和低端輸入(LIN)通道,由于HIN/LIN管腳兼容3.3 V和5 V邏輯電平輸入,所以可以直接接收dsPIC30F6010A芯片的PWM1H和PWM1L脈沖信號。FAN7384的高端輸出(HO)和低端輸出(LO)通道具備250 mA的驅(qū)動能力,可以直接驅(qū)動兩個FDS3992功率MOSFET,二極管D16和電容C40構(gòu)成自舉充電電路,充電電流由電阻R52限定。由FAN7384半橋驅(qū)動器和FDS3992功率MOSFET構(gòu)成的PWM驅(qū)動與功率放大電路只需單路15V控制電源供電,克服了常規(guī)驅(qū)動電路需要多路隔離直流穩(wěn)壓電源供電的缺點,并且具有高端(HO)和低端(LO)欠壓鎖定保護功能,大大簡化了硬件電路設(shè)計。
圖1中雙H橋功率放大電路底部的SHUNT1和SHUNT2是電機兩個繞組的相電流采樣電阻,SHUNT1和SHUNT2電阻的取值為0.1 Ω。電機相電流測量電路如圖3所示。
圖3 電機相電流測量電路原理圖Fig.3 Motor phase current measurement schematic
電流檢測電阻 SHUNT1上的電壓信號通過 R28、R29、R33、R34和C27組成的濾波電路,以差分方式饋至運算放大器MCP6024的信號輸入端。MCP6024是軌到軌(Rail-to-Rail)輸入/輸出型運算放大器,具有低噪聲、低漂移的優(yōu)良特性,帶寬典型值為10 MHz,完全能夠滿足頻率為40kHz的PWM驅(qū)動方式下的電機相電流測量電路的要求[5]。MCP6024將IMOTOR1的輸出電壓幅值限定在0 V至5 V的A/D轉(zhuǎn)換模塊采樣電壓范圍內(nèi),在R28=R29=R33=R34且R27=R35的前提條件下,運算放大器MCP6024的增益為:
該測量電路的最大檢測電流數(shù)值為:
本設(shè)計采用MCP2551作為CAN總線收發(fā)器芯片,MCP2551是一個可容錯的高速CAN總線收發(fā)器件,適用于dsPIC30F6010A內(nèi)部的CAN總線模塊與物理總線接口電路設(shè)計。MCP2551可為CAN總線模塊提供差分收發(fā)能力,該芯片完全符合ISO-11898標準,工作速率高達1Mbps。CAN總線收發(fā)器電路如圖4所示。
圖4 CAN總線收發(fā)器電路原理圖Fig.4 CANBUS transceiver schematic
MCP2551的TXD管腳直接接到dsPIC30F6010A的CAN1TX信號輸出端,RXD管腳直接接到dsPIC30F6010A的CAN1RX信號輸入端,CANH和CANL管腳直接接入CAN總線端口,R5為終端匹配電阻。MCP2551可以通過Rs引腳選擇三種操作模式:當Rs引腳電壓為0 V時芯片進入高速模式;當Rs引腳引腳電壓為5 V時芯片進入休眠模式;當Rs引腳通過外接電阻R6與0 V電壓相連時則進入斜率控制模式[6]。本設(shè)計將R6阻值設(shè)為0 Ω,MCP2551工作在高速模式下,CAN總線收發(fā)器的輸出驅(qū)動具有快速的上升和下降時間,可以滿足高速CAN總線的通訊速率要求。
本集成CAN總線的步進電機驅(qū)動裝置的軟件采用C語言進行開發(fā),應(yīng)用程序包括初始化模塊、模數(shù)轉(zhuǎn)換模塊、PWM驅(qū)動脈沖模塊、電機相電流測量模塊、CAN總線通訊模塊。主程序流程圖如圖5所示。
圖5 主程序流程圖Fig.5 Main program flow chart
數(shù)字信號控制器dsPIC30F6010A上電復位后首先調(diào)用初始化模塊,完成控制器通用I/O口的設(shè)置、內(nèi)部高速模數(shù)轉(zhuǎn)換器、電機專用PWM控制器和CAN總線控制器的初始化任務(wù),然后進入主循環(huán)程序。在主循環(huán)程序中第一步先調(diào)用模數(shù)轉(zhuǎn)換模塊,讀入圖1中SPD電壓信號并轉(zhuǎn)換成步進電機的轉(zhuǎn)速數(shù)據(jù);第二步調(diào)用CAN總線通訊模塊,接收上位節(jié)點的控制命令,并產(chǎn)生應(yīng)答信號;第三步先檢查電機使能信號CMD,如果該信號為有效則使能PWM驅(qū)動脈沖模塊以產(chǎn)生步進電機驅(qū)動脈沖信號PWM1H/PWM1L~PWM4H/PWM4L,否則就禁止 PWM[7]驅(qū)動脈沖模塊;第四步調(diào)用電機相電流測量模塊,dsPIC30F6010A內(nèi)部的高速模數(shù)轉(zhuǎn)換器讀入圖1中IMOTOR1和IMOTOR2電壓信號并轉(zhuǎn)換成步進電機相電流數(shù)據(jù),從而實現(xiàn)對電機相電流的精確閉環(huán)控制。
本文提出的集成CAN總線的步進電機驅(qū)動裝置采用模塊化設(shè)計方案,分別設(shè)計了dsPIC30F6010A主控通訊電路板和PWM驅(qū)動放大電路板。該裝置的最高驅(qū)動電壓為80 V,適用于多種類型的步進電機和控制軟件算法,PWM驅(qū)動脈沖的工作頻率設(shè)計為40 kHz,以實現(xiàn)盡可能短的反應(yīng)時間。集成的CAN總線接口實現(xiàn)了2.0B標準CAN協(xié)議報文的收發(fā)功能,完成了與上位計算機的通訊任務(wù)。實現(xiàn)的集成CAN總線的步進電機驅(qū)動裝置及其通訊波形如圖6所示,圖6(a)和圖6(b)分別是實驗電路板及CAN總線通訊波形。
圖6 集成CAN總線的步進電機驅(qū)動裝置及其通訊波形Fig.6 Integrated CANBUS stepping motor driver and commu nication waveform
基于dsPIC30F6010A高性能數(shù)字信號控制器,本文提出的集成CAN總線的步進電機驅(qū)動裝置實現(xiàn)了CAN總線通訊電路和步進電機驅(qū)動電路一體化設(shè)計,具有系統(tǒng)集成度高和編程靈活的特點,不僅可對多種類型步進電機的相電流實現(xiàn)精確閉環(huán)控制,而且以嵌入式微控制器技術(shù)為核心,實現(xiàn)了從獨立的步進電機驅(qū)動器到具有CAN總線通訊能力的智能控制單元的技術(shù)升級。嵌入式CAN總線接口技術(shù)和步進電機驅(qū)動技術(shù)是當前汽車電子和自動化控制領(lǐng)域里的共性技術(shù),具有CAN總線接口的步進電機驅(qū)動裝置可以直接接入分布式CAN總線網(wǎng)絡(luò),驅(qū)動裝置成為了CAN總線中的智能節(jié)點,可實時接收上位節(jié)點的控制指令,對步進電機的運行參數(shù)和運行狀態(tài)實施遠程網(wǎng)絡(luò)控制。
[1]何沖,王淑紅,侯勝偉,等.基于AT89C52單片機的步進電機控制系統(tǒng)研究[J].電氣技術(shù),2012(4):5-8.
HE Chong,WANG Shu-wei,HOU Sheng-wei,et al.Research of control system of two-phase hybrid stepping motor based on AT89C52 microcontrollers[J].Electrical Engineering,2012(3):5-8.
[2]周立功.iCAN現(xiàn)場總線原理與應(yīng)用[M].北京:北京航空航天大學出版社,2007(4):8-9.
[3]劉立峰,廖力清,凌玉華.高低速CAN總線在汽車控制系統(tǒng)中的研究與應(yīng)用[J].上海汽車,2005(9):29-31.
LIU Li-feng,LIAO Li-qing,LING Yu-hua.Research and application of High speed and low speed CANBUS in the automotive control system[J].Shanghai Auto,2005(9):29-31.
[4]劉威龍,孫明磊.基于STM32的分布式步進電機控制系統(tǒng)設(shè)計[J].數(shù)字技術(shù)與應(yīng)用,2012(3):18-20.
LIU Wei-long,SUN Ming-lei.Thestepmotordistributed control system based on STM32 MCU[J].Digital Technology&Application,2012(3):18-20.
[5]王安敏,孫豐鑫,杜攀攀.基于TB6560AHQ和ATmega8的步進電機驅(qū)動控制器設(shè)計[J].青島科技大學學報:自然科學版,2012(2):102-106.
WANG An-min,SUN Feng-xin,DU Pan-pan.Stepping motor drive controller design based on TB6560AHQ and ATmega8[J].Journal of Qingdao University of Science and Technology:Natural Science Edition,2012(2):102-106.
[6]曾志軍,李偉光,葉凡.基于CAN總線的智能測控節(jié)點研究[J].機電工程技術(shù),2005(4):65-68.
ZHENG Zhi-jun,LI Wei-guang,YE Fan.The research of intelligential measuring and controlling node based on CAN bus[J].Machine Development,2005(4):65-68.
[7]王坤.基于SVPWM的STATCOM設(shè)計及實現(xiàn)[J].陜西電力,2011(1):11-15.
WANG Kun.SVPWM based design and realization of STATCOM[J].Shaanxi Electric Power,2011(1):11-15.
An integrated CANBUS stepping motor driver
HAN Dong-lin
(Tianjin Sino-German Vocational Technical College, Tianjin 300350, China)
this paper discussed and realized a kind of integrated CANBUS stepping motor driver utilizing dsPIC30F6010A high performance digital signal controller.According to parameter characteristics of peripheral modules in dsPIC30F6010A,it is carried out PWM driver circuit, motor phase current measurement circuit and CANBUS transceiver circuit, developed modular application programs based on C language.The practical test showed that the integrated CANBUS stepping motor driver can access CAN network directly,and realized remote control functions of the motor running parameters and status.
stepping motor driver; CANBUS; dsPIC30F6010A; PWM driver circuit; phase current measuring circuit
TM383.6
A
1674-6236(2013)08-0105-04
2012-11-29稿件編號201211249
韓冬林(1966—),男,天津人,副教授。研究方向:傳感器與電控技術(shù)。