韓冬林
(天津中德職業技術學院 天津 300350)
一種集成CAN總線的步進電機驅動裝置
韓冬林
(天津中德職業技術學院 天津 300350)
采用dsPIC30F6010A高性能數字信號控制器,提出并實現了一種新型的集成CAN總線接口的步進電機驅動裝置。根據dsPIC30F6010A芯片外設模塊的參數特點,設計了PWM驅動電路、電機相電流測量電路和CAN總線收發器電路,開發了基于C語言的模塊化應用程序。實際測試表明,該集成CAN總線的步進電機驅動裝置可以直接接入CAN總線網絡,實現了對電機運行參數和運行狀態的遠程控制功能。
步進電機驅動器;CAN總線;dsPIC30F6010A;PWM驅動電路;相電流測量電路
步進電機作為一種數字伺服執行元件,具有結構簡單、運行可靠、定位方便等優點,在精密機械運動控制領域有著廣泛的應用[1]。控制器局域網CAN總線是德國BOSCH公司為現代汽車電控系統推出的一種多主機數據通訊總線,具有高可靠性和高實時性等突出優點,廣泛應用于汽車制造和自動化控制領域[2],已成為國際上應用最廣泛的現場總線之一。CAN總線采用具備CAN通信能力的控制設備作為智能節點,不僅極大地降低了控制系統的布線數量與成本,而且有效地提高了控制信號數據傳輸的準確性與靈活性。近年來隨著汽車網絡技術的發展,以嵌入式微控制器為核心的具有CAN總線接口的各種電控單元已經成為了研究的重點[3]。本文基于dsPIC30F6010A高性能數字信號控制器,提出并實現了一種集成CAN總線的步進電機驅動裝置,為步進電機控制單元的智能化和網絡化提供了一種高集成度的一體化設計方案。
本文設計的集成CAN總線的步進電機驅動裝置如圖1所示,主要由dsPIC30F6010A高性能數字信號控制器、FAN7384PWM驅動電路、雙H橋功率放大電路、步進電機相電流反饋電路、CAN收發器和CAN總線端口等6部分構成。
dsPIC30F6010A的通用數字I/O口接收CMD輸入信號,作為步進電機控制的使能信號,該使能信號具有最高的優先級,只有當該使能信號有效時,dsPIC30F6010A才會接受CAN總線的控制指令,產生相應的PWM驅動脈沖,通過FAN7384驅動電路和雙H橋功率放大電路,實現步進電機的驅動控制功能。步進電機相電流反饋電路將電機相電流信號通過采樣電阻SHUNT1和SHUNT2轉換為直流電壓信號,由dsPIC30F6010A內部的高速A/D轉換模塊采樣并轉換為數字信號,從而實現電機相電流的精確閉環控制。dsPIC30F6010A內嵌的CAN總線模塊通過CAN1RX/CAN1TX管腳與CAN收發器實現數據通訊功能。步進電機的轉速設定有兩個途徑,一種途徑是由SPD電壓信號經dsPIC30F6010A的模擬量輸入接口采樣設定,另一種途徑可以通過CAN總線通訊方式以數字量的形式直接設定。

圖1 集成CAN總線的步進電機驅動裝置系統框圖Fig.1 Integrated CANBUS stepping motor driver system block diagram
本文采用美國MICROCHIP公司的高性能數字信號控制器dsPIC30F6010A作為主控芯片。該芯片的內核采用改進型的哈佛架構,工作速度最高可達30 MIPS,內嵌的DSP引擎不僅集成了兩個具備可選飽和邏輯的40位寬累加器,而且包含了一個17位乘17位單周期的硬件乘法器,非常適用于高速數據處理的應用場合。該芯片內部集成了一個電機專用的PWM控制模塊,該PWM模塊具備4個占空比發生器和8個 PWM輸出引腳,分別為 PWM1H/PWM1L、PWM2H/PWM2L、 PWM3H/PWM3L、PWM4H/PWM4L,這 8 個 PWM 輸出引腳可組合為4組互補輸出的PWM引腳對,能夠滿足多種類型的電機控制應用要求。
dsPIC30F6010A芯片的外設非常豐富,不僅集成了高達16通道的高速10位A/D轉換模塊,而且還集成了2個2.0B標準的CAN總線模塊,只需外接CAN收發器,就可以勝任集成CAN總線的步進電機驅動裝置的硬件設計要求。
dsPIC30F6010A芯片的高速A/D轉換模塊具有4路采樣保持器,可同時對4路模擬量電壓信號進行采樣,最高采樣速率可達1 MHz。本設計充分發揮這一硬件優勢,將步進電機相電流反饋電路和直流母線電壓監視電路的電壓信號接入A/D轉換模塊,實現了主控芯片對電機相電流信號和直流母線電壓信號的同時采樣功能,有效地提高了步進電機驅動裝置的控制精度和響應速度。
dsPIC30F6010A芯片內嵌的CAN總線模塊實現了一個完整的CAN控制器系統,該CAN模塊具備2個可區分優先級的接收報文存儲緩沖器和3個可指定優先級的發送緩沖器,并支持自檢操作的可編程環回通訊模式,最高波特率可達1Mbps。本設計將步進電機驅動功能與CAN總線通訊功能整合為一體化設計,集成CAN總線的步進電機驅動裝置不再僅是一個電機驅動器,而成為了一個智能化的電機控制單元,該控制單元可以直接接入標準的CAN總線網絡,成為CAN總線上的一個智能節點,實現了步進電機的網絡控制功能。
FAN7384是美國FAIRCHILD半導體公司生產的一款單片高壓半橋驅動集成電路,廣泛用于功率MOSFET半橋自舉驅動電路設計中[4]。本裝置共設計了四組結構相同的半橋驅動和功率放大電路,每一組電路都是由一個FAN7384半橋驅動器和兩個FDS3992功率MOSFET構成。圖2為PWM1H/PWM1L驅動與功率放大電路原理圖,其他三組驅動與功率放大電路與其結構完全相同。

圖2 PWM驅動與功率放大電路原理圖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的驅動能力,可以直接驅動兩個FDS3992功率MOSFET,二極管D16和電容C40構成自舉充電電路,充電電流由電阻R52限定。由FAN7384半橋驅動器和FDS3992功率MOSFET構成的PWM驅動與功率放大電路只需單路15V控制電源供電,克服了常規驅動電路需要多路隔離直流穩壓電源供電的缺點,并且具有高端(HO)和低端(LO)欠壓鎖定保護功能,大大簡化了硬件電路設計。
圖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)輸入/輸出型運算放大器,具有低噪聲、低漂移的優良特性,帶寬典型值為10 MHz,完全能夠滿足頻率為40kHz的PWM驅動方式下的電機相電流測量電路的要求[5]。MCP6024將IMOTOR1的輸出電壓幅值限定在0 V至5 V的A/D轉換模塊采樣電壓范圍內,在R28=R29=R33=R34且R27=R35的前提條件下,運算放大器MCP6024的增益為:

該測量電路的最大檢測電流數值為:

本設計采用MCP2551作為CAN總線收發器芯片,MCP2551是一個可容錯的高速CAN總線收發器件,適用于dsPIC30F6010A內部的CAN總線模塊與物理總線接口電路設計。MCP2551可為CAN總線模塊提供差分收發能力,該芯片完全符合ISO-11898標準,工作速率高達1Mbps。CAN總線收發器電路如圖4所示。

圖4 CAN總線收發器電路原理圖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]。本設計將R6阻值設為0 Ω,MCP2551工作在高速模式下,CAN總線收發器的輸出驅動具有快速的上升和下降時間,可以滿足高速CAN總線的通訊速率要求。
本集成CAN總線的步進電機驅動裝置的軟件采用C語言進行開發,應用程序包括初始化模塊、模數轉換模塊、PWM驅動脈沖模塊、電機相電流測量模塊、CAN總線通訊模塊。主程序流程圖如圖5所示。

圖5 主程序流程圖Fig.5 Main program flow chart
數字信號控制器dsPIC30F6010A上電復位后首先調用初始化模塊,完成控制器通用I/O口的設置、內部高速模數轉換器、電機專用PWM控制器和CAN總線控制器的初始化任務,然后進入主循環程序。在主循環程序中第一步先調用模數轉換模塊,讀入圖1中SPD電壓信號并轉換成步進電機的轉速數據;第二步調用CAN總線通訊模塊,接收上位節點的控制命令,并產生應答信號;第三步先檢查電機使能信號CMD,如果該信號為有效則使能PWM驅動脈沖模塊以產生步進電機驅動脈沖信號PWM1H/PWM1L~PWM4H/PWM4L,否則就禁止 PWM[7]驅動脈沖模塊;第四步調用電機相電流測量模塊,dsPIC30F6010A內部的高速模數轉換器讀入圖1中IMOTOR1和IMOTOR2電壓信號并轉換成步進電機相電流數據,從而實現對電機相電流的精確閉環控制。
本文提出的集成CAN總線的步進電機驅動裝置采用模塊化設計方案,分別設計了dsPIC30F6010A主控通訊電路板和PWM驅動放大電路板。該裝置的最高驅動電壓為80 V,適用于多種類型的步進電機和控制軟件算法,PWM驅動脈沖的工作頻率設計為40 kHz,以實現盡可能短的反應時間。集成的CAN總線接口實現了2.0B標準CAN協議報文的收發功能,完成了與上位計算機的通訊任務。實現的集成CAN總線的步進電機驅動裝置及其通訊波形如圖6所示,圖6(a)和圖6(b)分別是實驗電路板及CAN總線通訊波形。

圖6 集成CAN總線的步進電機驅動裝置及其通訊波形Fig.6 Integrated CANBUS stepping motor driver and commu nication waveform
基于dsPIC30F6010A高性能數字信號控制器,本文提出的集成CAN總線的步進電機驅動裝置實現了CAN總線通訊電路和步進電機驅動電路一體化設計,具有系統集成度高和編程靈活的特點,不僅可對多種類型步進電機的相電流實現精確閉環控制,而且以嵌入式微控制器技術為核心,實現了從獨立的步進電機驅動器到具有CAN總線通訊能力的智能控制單元的技術升級。嵌入式CAN總線接口技術和步進電機驅動技術是當前汽車電子和自動化控制領域里的共性技術,具有CAN總線接口的步進電機驅動裝置可以直接接入分布式CAN總線網絡,驅動裝置成為了CAN總線中的智能節點,可實時接收上位節點的控制指令,對步進電機的運行參數和運行狀態實施遠程網絡控制。
[1]何沖,王淑紅,侯勝偉,等.基于AT89C52單片機的步進電機控制系統研究[J].電氣技術,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現場總線原理與應用[M].北京:北京航空航天大學出版社,2007(4):8-9.
[3]劉立峰,廖力清,凌玉華.高低速CAN總線在汽車控制系統中的研究與應用[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的分布式步進電機控制系統設計[J].數字技術與應用,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的步進電機驅動控制器設計[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總線的智能測控節點研究[J].機電工程技術,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設計及實現[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—),男,天津人,副教授。研究方向:傳感器與電控技術。