最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

出處:維庫電子市場(chǎng)網(wǎng) 發(fā)布于:2018-01-02 17:09:44

本文主要介紹了一種基于STM32的混合式步進(jìn)電機(jī)控制方案,STM32產(chǎn)生PWM(脈寬調(diào)制信號(hào)),利用PWM完成DAC轉(zhuǎn)換,通過PWMDAC的輸出電壓實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的多細(xì)分控制。該設(shè)計(jì)相比利用DAC數(shù)模轉(zhuǎn)換芯片的設(shè)計(jì)方案具有電路簡(jiǎn)單,費(fèi)效比高的優(yōu)點(diǎn),而且可實(shí)現(xiàn)步進(jìn)電機(jī)十六分之一步的驅(qū)動(dòng)控制,較高。

1、硬件設(shè)計(jì)

硬件設(shè)計(jì)框圖如圖1所示,主要由PC上位機(jī)給STM32F103發(fā)送控制命令,通過STM32F103控制A3988,從而驅(qū)動(dòng)兩個(gè)步進(jìn)電機(jī)轉(zhuǎn)動(dòng)。其中,STM32F103是意法半導(dǎo)體公司生產(chǎn)的基于ARMCortex—M3內(nèi)核的微控制器,內(nèi)核架構(gòu)先進(jìn),性能優(yōu)越,主頻可達(dá)72MHz,執(zhí)行效率高,具有較高的運(yùn)算能力及數(shù)據(jù)處理功能,擁有豐富的外設(shè)接口,在硬件設(shè)計(jì)中,上位機(jī)與STM32F103之間的RS—422串行通信,就是通過外接MAX3079電平轉(zhuǎn)換芯片來實(shí)現(xiàn)的。

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

STM32F103控制定時(shí)器產(chǎn)生PWM,通過LPF(低通濾波器)實(shí)現(xiàn)PWM的DAC轉(zhuǎn)換,并由PWMDAC來提供A3988的4個(gè)基準(zhǔn)電壓,設(shè)計(jì)中,定時(shí)器M1的輸出通道在經(jīng)過濾波器后與A3988的參考電壓VERFx接口相連,PC0~3,PB12~15,PB6~9為通用GPIO輸出端口,接A3988的邏輯控制信號(hào)輸入腳I0x、I1x和Phasex,PC0~3和PB12~15分別置低,Phasex用于控制流過電機(jī)各相電流的方向。選用的步進(jìn)電機(jī)的步距角為0.9,額定電流為0.5A。

2、多細(xì)分控制原理分析與實(shí)現(xiàn)

2.1、多細(xì)分控制原理分析

選用電機(jī)為兩相步進(jìn)電機(jī),假設(shè)為A、B相,通過兩相的電流在相位上相差為90,控制流過兩相的電流大小和方向就可以控制電機(jī)轉(zhuǎn)動(dòng)。A3988是一個(gè)4DMOS全橋脈寬調(diào)制電機(jī)驅(qū)動(dòng)器,可以同時(shí)驅(qū)動(dòng)兩個(gè)步進(jìn)電機(jī),每個(gè)全橋輸出電流可達(dá)到1.2A。流過電機(jī)的每一相電流可以通過UREFx,I0x,I1x,Phasex和接SENSEx引腳的電阻Rx進(jìn)行控制。工作電流通過公式(1)可以得到。

ITripMax=UREFx/(3RSx)(1)

由式(1)可知,電流ITripMax是由UREFx和RSx共同決定,UREFx為PWM-DAC的輸出的電壓,其值為1.1V,RSx選用1歐的電阻。

ITrip=(%ITripMax/100)ITripMax(2)

式(2)中,ITrip為實(shí)際輸出的電流,邏輯接口I0x,I1x控制%ITripMax,由A3988的用戶文檔可知,當(dāng)I0x,I1x控制邏輯都為低時(shí),實(shí)際輸出電流就等于電流,由上述公式可知,ITrip輸出約為367mA。

為實(shí)現(xiàn)步進(jìn)電機(jī)多細(xì)分控制,必須能夠控制流過步進(jìn)電機(jī)的兩相電流,在參考電壓UREFx一定的情況下,使用邏輯接口I0x,I1x,Phasex僅可實(shí)現(xiàn)步進(jìn)電機(jī)整步、半步和四分之一步的驅(qū)動(dòng)控制,這樣的細(xì)分控制并不能滿足設(shè)計(jì)需求,為了得到更多的細(xì)分,設(shè)計(jì)采用動(dòng)態(tài)改變UREFx的方法來輸出動(dòng)態(tài)變化的電流,通過對(duì)UREFx的多細(xì)分控制,來實(shí)現(xiàn)對(duì)ITrip的多細(xì)分,從而實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)多細(xì)分控制。

UREFx由PWM-DAC輸出,其值在0~1.1V變化,將其按0~π的正旋曲線32等分得到32個(gè)電壓值,令PWM-DAC輸出的值為這32個(gè)值,從而對(duì)應(yīng)得到0~1.1V的32個(gè)電壓值和按正弦規(guī)律變化的32個(gè)電流值,通過Phasex控制電流方向,可實(shí)現(xiàn)步進(jìn)電機(jī)1/16步的驅(qū)動(dòng)控制。

2.2、PWM實(shí)現(xiàn)DAC轉(zhuǎn)換的原理及設(shè)計(jì)

雖然大容量的STM32F103具有內(nèi)部DAC,但是更多的型號(hào)是沒有DAC的,本文中所用到的STM32F03就沒有DAC外設(shè)功能。不過STM32所有的芯片都有PWM輸出,因此,可以用PWM+LPF來實(shí)現(xiàn)PWM-DAC輸出,從而節(jié)省成本。

PWM本質(zhì)上是一種周期一定而高低電平的占空比可以調(diào)制的方波信號(hào),實(shí)際電路中典型的PWM波形如圖2所示。

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

圖2的PWM波形可以用分段函數(shù)表示為式(3)。

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

式(3)中,T是STM32定時(shí)器TIM1的計(jì)數(shù)頻率(可達(dá)72MHz)的倒數(shù),N是PWM波一個(gè)周期的計(jì)數(shù)脈沖個(gè)數(shù),也就是STM32的ARR—1的值,n是PWM波一個(gè)周期中高電平的計(jì)數(shù)脈沖個(gè)數(shù),也就是STM32的CCRx的值,VH和VL分別是STM32產(chǎn)生PWM波的高低電平電壓值,高電平為3.3V,低電平為0V,k為諧波次數(shù),t為時(shí)間。將式(3)展開成傅里葉級(jí)數(shù),得到式(4)。

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

從式(4)可以看出,式(4)中第1個(gè)方括弧為直流分量,第2項(xiàng)為1次諧波分量,第3項(xiàng)為大于1次的高次諧波分量。直流分量與n成線性關(guān)系,并隨著n從0到N,直流分量在0~3.3V變化。這正是電壓輸出的DAC所需要的。因此,如果能把式中除直流分量外的諧波過濾掉,則可以得到從PWM波到電壓輸出DAC的轉(zhuǎn)換,即:PWM波可以通過一個(gè)低通濾波器進(jìn)行解調(diào)。其中,第2項(xiàng)的幅度和相角與n有關(guān),頻率為1/(NT),其實(shí)就是PWM的輸出頻率。該頻率是設(shè)計(jì)低通濾波器的依據(jù)。如果能把1次諧波很好過濾掉,則高次諧波就基本不存在了。

選用RC二階低通濾波器實(shí)現(xiàn)PWM波的解調(diào),電路設(shè)計(jì)如圖3所示。

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

當(dāng)N取值為256時(shí),PWM-DAC的分辨率為log2(N)=8位,在8位分辨條件下,要求1次諧波對(duì)輸出電壓的影響不要超過1個(gè)位的,也就是3.3/256=0.01289V。由式(4)可知,諧波的值是2&TImes;3.3/π=2.1V,所以,RC濾波電路要提供至少-20lg(2.1/0.01289)=-44dB的衰減。

當(dāng)STM32的定時(shí)器TIM1的計(jì)數(shù)頻率是72MHz,分辨率為8的時(shí)候,PWM頻率為72/256=281.25kHz。如果是1階RC濾波,則要求截止頻率為1.77kHz,如果為2階RC濾波,則要求截止頻率為22.34kHz。相比之下,2階濾波器的信號(hào)抑制能力更強(qiáng),濾波效果更好。由分析可知,2階RC濾波截止頻率計(jì)算公式為:

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

7.96×10-5,可確定電路參數(shù)值,令R1=R2=2.4kΩ,C1=C2=3300pF,可計(jì)算出圖3的截止頻率為21.9kHz,略小于22.34kHz,符合設(shè)計(jì)需求。PWM波調(diào)制后,輸出的直流分量值為3.3V,而UREFx可操作的電壓的范圍是只有0~1.5V,可利用一個(gè)2.4kΩ的電阻R3與濾波器串聯(lián),從而實(shí)現(xiàn)對(duì)直流分量的分壓調(diào)理。

3、軟件設(shè)計(jì)

軟件設(shè)計(jì)主要是電機(jī)驅(qū)動(dòng)軟件的相關(guān)設(shè)計(jì),通過對(duì)定時(shí)器的控制,實(shí)現(xiàn)電機(jī)的轉(zhuǎn)動(dòng)方向和速度的調(diào)節(jié),其次是PC上位機(jī)控制軟件設(shè)計(jì),主要利用C++Bulider平臺(tái)開發(fā),完成對(duì)步進(jìn)電機(jī)的測(cè)試。

3.1、PWM信號(hào)產(chǎn)生的設(shè)計(jì)

STM32F103中的7個(gè)定時(shí)器,每個(gè)定時(shí)器均有4個(gè)獨(dú)立可編程通道輸出的PWM信號(hào)。選用定時(shí)器TIM1,它由APB2總線提供時(shí)鐘,設(shè)置為72MHz,向上(增)計(jì)數(shù),自動(dòng)裝載寄存器ARR—1的值為256,所以,PWM波的占空比的取值范圍為0~256,不同占空比的取值存儲(chǔ)在每個(gè)通道的捕獲比較寄存器CCRx中,編程時(shí),通過改變寄存器CCRx的值來改變PWM波的占空比。占空比值的計(jì)算如式(6)所示。

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

這樣就得到正旋曲線0~π范圍內(nèi)的32個(gè)點(diǎn)對(duì)應(yīng)的占空比的值。將得到的占空比的值放在定義的數(shù)組Sequence[32]內(nèi),通過查表的方法,使定時(shí)器TIM1輸出占空比變化的PWM波,通過濾波器后產(chǎn)生UREFx的波形如圖4。

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

從圖中可以看出,輸出信號(hào)UREFx波形達(dá)到了預(yù)期目標(biāo)。由于選擇了合適的濾波器參數(shù),PWM波和UREFx幾乎不存在大的相位差。

3.2、Phasex信號(hào)產(chǎn)生的設(shè)計(jì)

Phase1~Phase4用于控制流過電機(jī)各相電流的方向,當(dāng)Phase1為1時(shí),電流從OUT1A流向OUT1B流向,當(dāng)Phase1為0時(shí),電流從OUT1B流向OUT1A,其他三相控制原理相同,下面就以Phase1為例加以闡述。

STM32F103通過PB6來控制Phase1信號(hào),配置PB6為推挽輸出端口,在UREFx奇數(shù)次周期時(shí),將PB6置1,偶數(shù)次周期時(shí),PB6置0,在0~2π區(qū)間內(nèi),PB6將變化兩次。Phase1信號(hào)變化如圖5所示。

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

通過Phasex信號(hào)對(duì)電流方向的控制,可實(shí)現(xiàn)實(shí)際輸出電流ITrip以2π為周期的正弦曲線變化,在0~2π共產(chǎn)生64個(gè)電流值,從而實(shí)現(xiàn)了步進(jìn)可實(shí)現(xiàn)步進(jìn)電機(jī)十六分之一步的驅(qū)動(dòng)控制。

3.3、步進(jìn)電機(jī)正反轉(zhuǎn)和變速控制

由于通過步進(jìn)電機(jī)A、B相的電流在相位上相差為90,當(dāng)A相超前B相時(shí),電機(jī)正轉(zhuǎn),而當(dāng)B超前A時(shí),則電機(jī)反轉(zhuǎn)。所以,控制流過A、B相電流的相位差,即可實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的方向控制,也就是控制輸入?yún)⒖茧妷旱南辔徊睢T谲浖O(shè)計(jì)時(shí),定時(shí)器TIM1通過查表法輸出PWM波,在占空比數(shù)組的初始下標(biāo)取值時(shí),讓A、B相對(duì)應(yīng)的PWM輸出相差90。例如,當(dāng)A相對(duì)應(yīng)的PWM輸出的初始占空比為Sequence[0]時(shí),B相為Sequence[16],這樣使得輸入各相的參考電壓在相位上相差了90。

在步距角已知的情況下,通過控制相鄰兩個(gè)取值的變化時(shí)間間隔,便可以控制電機(jī)的轉(zhuǎn)動(dòng)速度,時(shí)間間隔越小,轉(zhuǎn)動(dòng)速度越高,時(shí)間長則轉(zhuǎn)速低。為了得到兩個(gè)取值變化之間的時(shí)間間隔,設(shè)計(jì)通過定時(shí)器TIM2進(jìn)行的定時(shí)控制,TIM2中ARR—1的取值通過等分0~π2正弦曲線的辦法計(jì)算得到,在這里不再贅述,定時(shí)器產(chǎn)生定時(shí)中斷,中斷響應(yīng)中改變PWM占空比的值,實(shí)現(xiàn)了速度10級(jí)可調(diào)??芍诓竭M(jìn)電機(jī)實(shí)現(xiàn)變速控制時(shí),Phasex和UREFx的頻率都發(fā)生了變化。

3.4、上位機(jī)控制和實(shí)驗(yàn)測(cè)試

STM32F103提供功能強(qiáng)大的USART串口功能,在本設(shè)計(jì)中,通過外接電平轉(zhuǎn)換芯片實(shí)現(xiàn)了上位機(jī)與MCU之間的RS—422串行通信,RS—422是一種全雙工的通訊總線。STM32F103通過計(jì)算PWM占空比變化的次數(shù)和TIM2的中斷周期,將電機(jī)的位置點(diǎn)和速度信息發(fā)送至上位機(jī),上位機(jī)利用增量式PID算法,向步進(jìn)電機(jī)發(fā)送控制命令,實(shí)現(xiàn)對(duì)電機(jī)的實(shí)時(shí)控制。

為了確定系統(tǒng)能否按照設(shè)計(jì)需求工作,需要對(duì)系統(tǒng)進(jìn)行測(cè)試。上位機(jī)模擬生成一段目標(biāo)航路,控制步進(jìn)電機(jī)跟蹤,測(cè)試結(jié)果如圖6所示。

基于STM32步進(jìn)電機(jī)多細(xì)分控制的設(shè)計(jì)

由測(cè)試結(jié)果可知,步進(jìn)電機(jī)跟蹤在2mil之內(nèi),達(dá)到了模型設(shè)計(jì)的需求。

4、結(jié)束語

本文介紹了基于STM32F103和A3988的步進(jìn)電機(jī)多細(xì)分控制系統(tǒng),較傳統(tǒng)的利用DA轉(zhuǎn)換芯片的方案,具有結(jié)構(gòu)簡(jiǎn)單,靈活性較好等優(yōu)點(diǎn),充分利用了A3988技術(shù)應(yīng)用特點(diǎn)和STM32F103芯片優(yōu)越的性能,極大提高了系統(tǒng)的性能和可擴(kuò)展性。經(jīng)實(shí)際實(shí)驗(yàn)表明,該系統(tǒng)工作穩(wěn)定,高,且具有較高及效費(fèi)比,達(dá)到了設(shè)計(jì)要求,為步進(jìn)電機(jī)控制提供了一種新的方法,具有一定推廣價(jià)值。

關(guān)鍵詞:stm32,步進(jìn)電機(jī),a3988

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫電子市場(chǎng)網(wǎng),http://www.udpf.com.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動(dòng)力!意見一經(jīng)采納,將有感恩紅包奉上哦!