基于A3992和C8051F300的兩相步進電機驅(qū)動系統(tǒng)
1 引言
步進電機定位準確且與數(shù)字電路接口連接方便.無需反饋就能實現(xiàn)準確的角位移,在數(shù)控機床等許多領域中均得到了廣泛應用。但是,傳統(tǒng)的步進電機定位系統(tǒng)是由控制器件產(chǎn)生脈沖,然后加在環(huán)形分配器和功率驅(qū)動部分,最后連接至電機的控制方式,其軟硬件的實現(xiàn)都較為復雜,成本偏高,難以滿足現(xiàn)代工業(yè)發(fā)展所需的精度和集成度等要求。采用美國Allegro公司推出的一款易操作,內(nèi)置功率驅(qū)動的A3992型兩相步進電機微步距驅(qū)動器,以C805117300單片機為控制核心設計了一個驅(qū)動控制電路。該驅(qū)動控制電路能簡單方便實現(xiàn)電機的微步距控制,不僅解決了步進電機步距角大的問題。提高了步進電機的分辨率,減弱或消除了步進電機的低頻振動.也改善了電機的其他性能,具有控制靈活,維護簡單,成本較低的特點,完全能滿足中小企業(yè)的生產(chǎn)要求。
2 系統(tǒng)組成與工作原理
圖1示出基于A3992和C805lF300控制的兩相步進電機驅(qū)動系統(tǒng)組成框圖。其中,上位機主要完成命令指示等控制功能;C8051F300主要用來接收上位機的指令參數(shù)。然后向A3992驅(qū)動器寫控制字;A3992驅(qū)動電路主要完成按接收的控制字向電機提供相應的驅(qū)動電流。
2.1 C8051F300控制電路
C805117300是美國Cygnal公司的一款完全集成的混合信號系統(tǒng)級MCU器件(SOC),其主要特點是:
(1)高性能指令處理能力 采用Cygnal專利的高速管線式CIP一51(與8051全兼容)微控制器內(nèi)核:
(2)完善的時鐘系統(tǒng)采用可編程25 MHz內(nèi)部時鐘發(fā)生器,不僅支持外部時鐘,也支持使用過程中內(nèi)外時鐘發(fā)生器之間的切換:
(3)低功耗供電電壓為2.7~3.6 V,其典型工作電流在25 MHz下為5 mA:
(4)片內(nèi)模數(shù)轉(zhuǎn)換 采用11通道真正的8位500 Ks/s.具有可編程前置放大器(PGA)和模擬多路復用器(AMUX)的A/D轉(zhuǎn)換器;
(5)豐富的存儲器資源 采用256字節(jié)片內(nèi)RAM.8 KB片上Flash存儲器,支持系統(tǒng)512字節(jié)(扇區(qū))編程;
(6)增強的中斷資源 采用內(nèi)含12個中斷源,適用于多任務、實時系統(tǒng)的開發(fā);
(7)豐富的片上資源 采用片內(nèi)溫度傳感器、電源監(jiān)測器、片上電壓比較器及上電復位、SMBUS/I2C和URAT接口、3個16位通用定時器、可編程定時器陣列(PCA)并帶有比較/捕捉模塊和WDT3種功能:
(8)可編程的數(shù)字I/O口和交叉開關(guān)(crossbar)在這種交叉開關(guān)配置的I/O端口系統(tǒng)中,可以通過配置相應的寄存器將內(nèi)部數(shù)字資源連接到物理I/O引腳上。改變了傳統(tǒng)MCS一51單片機的固定I/O模式:
(9)在線調(diào)試功能具有Cygnal2-Wire(C2)調(diào)試電路,支持存儲器和寄存器的校驗和修改、斷點和單步。無需額外的RAM、程序存儲器及定時器等。
C8051F300是連接上位機和A3992的橋梁。上位機的指令信號包含電機的正轉(zhuǎn)、反轉(zhuǎn)和加減速等信息,該信號通過C8051F300的I/O端口進入單片機,單片機利用3條與A3992相連的I/O數(shù)據(jù)線.控制驅(qū)動器按用戶的要求驅(qū)動電機運轉(zhuǎn)。
2.2 A3992驅(qū)動電路
A3992型雙DMOS全橋微步距脈寬調(diào)制(PWM)步進電機驅(qū)動器可利用控制器件通過3線串行接口(CLK,DATA,STROBE)對其進行控制.并能方便地調(diào)節(jié)步進電機的運轉(zhuǎn)方向,實現(xiàn)各種不同的步進法(從整步驅(qū)動到最高可達64細分的微步距驅(qū)動),使步進電機的驅(qū)動方式具有很大的靈活性。
A3992是通過3線串口寫控制字來實現(xiàn)的。A3992的控制字有Word0和Wordl兩個,每個控制字包含19個位(D0~D18),先傳送高位D18,最后傳送最低位DO。其中Word0是橋電流控制字,當DO=0時,A3992便進入WordO模式;Wordl是時間數(shù)據(jù)控制字,當DO=1時,A3992便進入Wordl模式。詳細的各位數(shù)據(jù)設置參見文獻。
A3992只需很少的R,C元件即可組成兩相步進電機的微步距驅(qū)動電路。圖2是A3992的典型應用電路,其連續(xù)輸出的額定電流可達1.5 A。電壓可達50 V。
C805lF300不斷地通過3線串口向A3992寫入控制字Word0,A3992根據(jù)所輸入的控制字,調(diào)整橋電流的方向和大小,從而控制步進電機按用戶的實際需要運轉(zhuǎn)。需要注意的是,控制字Wordl是時間數(shù)據(jù)控制字,用于設置死區(qū)時間、關(guān)斷時間和快速衰減時間等相關(guān)參數(shù),所以C8051F300只需對A3992進行一次設置即可,不必反復進行寫操作。
3 系統(tǒng)硬件設計
該系統(tǒng)硬件設計主要是由上位機與單片機接口、單片機控制電路和A3992驅(qū)動電路組成。其中,上位機主要實現(xiàn)用戶與單片機的交互,并通過單片機的串口實現(xiàn)與單片機的通信。圖3給出C8051F300串口和RS232的接口電路。
單片機控制電路由C8051F300單片機、供電電源、濾波電容和一系列的I/O端口構(gòu)成。其中,供電電源采用了A1117穩(wěn)壓器,將5 V輸入電壓轉(zhuǎn)換成C8051F300適用的3.3 V供電電壓,從而保證了供電電源的精度。A3992驅(qū)動電路是整個系統(tǒng)的功率部分,接收來自控制電路的信號,兩橋橋臂輸出滿足一定時序的相電流,從而實現(xiàn)驅(qū)動步進電機按用戶的要求運轉(zhuǎn)。圖4所示給出了系統(tǒng)的主體硬件電路。
4 系統(tǒng)軟件設計
根據(jù)系統(tǒng)硬件設計的相關(guān)要求設計軟件程序,完成系統(tǒng)初始化,接收來自用戶的輸入指令,控制驅(qū)動器按要求運轉(zhuǎn)等功能。具體的系統(tǒng)軟件流程設計如圖5所示。其中系統(tǒng)初化包括對單片機內(nèi)的看門狗、I/O端口和A3992的控制字Word0、Wordl參數(shù)的初始化。
采用該步進電機驅(qū)動方案可以靈活通過軟件編程對步進電機進行最高可達64細分的微步距驅(qū)動,因而可方便快捷地改善步進電機的運行性能。
5 結(jié)語
討論了基于A3992和C805lF300控制的兩相步進電機驅(qū)動方案,簡要介紹了系統(tǒng)各個硬件模塊的實現(xiàn),給出系統(tǒng)軟件設計流程。該設計方案的各部分硬件模塊連接簡單,集成度高,可靠性強,易于調(diào)試和維護,體積小,成本低,具有很高的推廣價值。