![本教程介紹步進(jìn)電機(jī)驅(qū)動(dòng)和細(xì)分的工作原理_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/20/b16ac13b-d3e4-421c-98c8-3cdee6ced286/b16ac13b-d3e4-421c-98c8-3cdee6ced2861.gif)
![本教程介紹步進(jìn)電機(jī)驅(qū)動(dòng)和細(xì)分的工作原理_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/20/b16ac13b-d3e4-421c-98c8-3cdee6ced286/b16ac13b-d3e4-421c-98c8-3cdee6ced2862.gif)
![本教程介紹步進(jìn)電機(jī)驅(qū)動(dòng)和細(xì)分的工作原理_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/20/b16ac13b-d3e4-421c-98c8-3cdee6ced286/b16ac13b-d3e4-421c-98c8-3cdee6ced2863.gif)
![本教程介紹步進(jìn)電機(jī)驅(qū)動(dòng)和細(xì)分的工作原理_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/20/b16ac13b-d3e4-421c-98c8-3cdee6ced286/b16ac13b-d3e4-421c-98c8-3cdee6ced2864.gif)
![本教程介紹步進(jìn)電機(jī)驅(qū)動(dòng)和細(xì)分的工作原理_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2021-12/20/b16ac13b-d3e4-421c-98c8-3cdee6ced286/b16ac13b-d3e4-421c-98c8-3cdee6ced2865.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本教程介紹步進(jìn)電機(jī)驅(qū)動(dòng)和細(xì)分的工作原理,以及stm32103為主控芯片制作的一套自平衡的兩輪車系統(tǒng), 附帶原理圖pcb 圖和源代碼, 有興趣的同學(xué)一起來(lái)吧. 本系統(tǒng)還有一些小問(wèn)題, 不當(dāng)之處希望得到大家的指正.一 . 混合式步進(jìn)電機(jī)的結(jié)構(gòu)和驅(qū)動(dòng)原理電機(jī)原理這部分不想講的太復(fù)雜了,拆開一臺(tái)電機(jī)看看就明白了。電機(jī)的轉(zhuǎn)子是一個(gè)永磁體,它的上面有若干個(gè)磁極 SN組成,這些磁極固定的擺放成一定角度。電機(jī)的定子是幾個(gè)串聯(lián)的線圈構(gòu)成的磁體。出線一般是四條線標(biāo)記為 A+, A-, B+, B-。A相與B相是不通的,用萬(wàn)用表很容易區(qū)分出來(lái),至于各相的+-出線實(shí)際是不用考慮的,任意一相正負(fù)對(duì)調(diào)電機(jī)將反轉(zhuǎn)。另外一種
2、出線是六條線的只是在 A相和B相的中間點(diǎn)做兩條引出線別的沒什么差別,六出線的電機(jī)通過(guò)中間出線到A+或A-的電流來(lái)模擬正向或負(fù)向的電流,可以在沒有負(fù)相電流控制的電路中實(shí)現(xiàn)電機(jī)驅(qū)動(dòng),從而簡(jiǎn)化驅(qū)動(dòng)電路,但是這種做法任意時(shí)刻只有半相有電流,對(duì)電機(jī)的力矩是有損失的。步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)也是電磁極與永磁極作用力的結(jié)果,只不過(guò)電磁極的極性是由驅(qū)動(dòng)電路控制實(shí)現(xiàn)的。我們做這樣的一個(gè)實(shí)驗(yàn)就可以讓步進(jìn)電機(jī)轉(zhuǎn)動(dòng)起來(lái)。1 找一節(jié)電池正負(fù)隨意接入到A相兩端;然后斷開;(記為A正向)2再將電池接入到B相兩端;然后斷開;(記為B正向)3電池正負(fù)對(duì)調(diào)再次接入 A相;然后斷開;(記為A負(fù)向)4保持正負(fù)對(duì)調(diào)接入B相;然后斷開;(記為B負(fù)
3、向),如此循環(huán)你會(huì)看到步進(jìn)電機(jī)在緩慢轉(zhuǎn)動(dòng)。注意電機(jī)的相電阻是很小的接通時(shí)近乎短路。我們將相電流的方向記錄下來(lái)應(yīng)該為:A+B+A-B-A+,,如果我們更換接線順序使得相電流順序?yàn)锳+B-A-B+A+這時(shí)我們會(huì)看到電機(jī)向反方向運(yùn)動(dòng)。這里每切換一次相電流電機(jī)都會(huì)轉(zhuǎn)動(dòng)一個(gè)很小的角度, 這個(gè)角度就是電機(jī)的步距角。步距角是步進(jìn)電機(jī)的一個(gè)固有參數(shù),一般兩相電機(jī)步距角為1.8 度即切換200次可以讓電機(jī)轉(zhuǎn)動(dòng)一圈。這里我們比較正反轉(zhuǎn)的電流順序可以看出A+和A-;B+和B-的交換后的順序和正反順序是一致的,也就是前面所說(shuō)的”任意一相正負(fù)對(duì)調(diào)電機(jī)將反轉(zhuǎn)”。以上為四排工作方式, 為了使相電流更加平滑另外可以使用八排
4、的工作方式即: A+;A+B+;B+;B+A-;A-;A-B-;B-;B-A+; 從前往后循環(huán)正轉(zhuǎn),從后往前循環(huán)反轉(zhuǎn)。為了用單片機(jī)實(shí)現(xiàn)相電流的正負(fù)流向控制必須要有一個(gè)H橋的驅(qū)動(dòng)電路,這種帶H橋的驅(qū)動(dòng)模塊還是很多的,比較便宜的是晶體管 H橋比如L298N,晶體管開關(guān)速度比較慢,無(wú)法驅(qū)動(dòng)電機(jī)高速運(yùn)動(dòng)。有些模 塊將細(xì)分控制電路也包含在內(nèi),我們也不用這種,因?yàn)槲覀兊募?xì)分由軟件控制。實(shí)際應(yīng)用中使用 ST的mos管兩橋驅(qū)動(dòng)芯片L6205一片即可驅(qū) 動(dòng)一臺(tái)步進(jìn)電機(jī)。有了 H橋通過(guò)PW哪可以控制相電流大小,改變輸入 極 IN1、 IN2 的狀態(tài)(參看手冊(cè)第8 頁(yè))可以控制相電流的方向。二 . 細(xì)分的原理和輸出
5、控制從這里開始重點(diǎn)了,別的地方看不到哦。一個(gè)理想的步進(jìn)電機(jī)電流曲線應(yīng)該是相位相差90 度的正弦曲線如下圖:圖中藍(lán)色線時(shí)A相電流,紅色線是B相電流。如果把A相正負(fù)極 值視為A+A-, B相正負(fù)極值視為B+B-,比較一下四拍方式正轉(zhuǎn) A+B+A-B- 和反轉(zhuǎn)A+B-A-B+不難看出四排方式實(shí)際上是用一個(gè)脈沖來(lái)代替一個(gè)正 弦半周期,相位點(diǎn)從左到右變化則電機(jī)正轉(zhuǎn),從右到左電機(jī)反轉(zhuǎn)。類似的我們把八拍方式A+;A+B+;B+;B+A-;A-;A-B-;B-;B-A+; 放到曲線里也可以找到對(duì)應(yīng)點(diǎn),圖中標(biāo)出了各拍的相位點(diǎn)1 , 2, 3, , 不難看出用A+B+代替第2拍點(diǎn)用B+A代替第四拍點(diǎn)都是近似的做法
6、。那么這種近似和理想情況的電流的差值去哪里了呢?這些電流被無(wú)謂的消耗掉了而且多余的電流會(huì)引起電機(jī)轉(zhuǎn)動(dòng)的不平穩(wěn)。為什么要細(xì)分呢?實(shí)際細(xì)分的終極目標(biāo)就是在正弦的周期中插入若干個(gè)點(diǎn)使得相電流接近正弦變化,細(xì)分可以提高定位精度和電機(jī)運(yùn)轉(zhuǎn)的平穩(wěn)性。由此我們拋開細(xì)分不談,如果你能調(diào)制出兩條相差為90 度的正弦波形就是理想的步進(jìn)電機(jī)驅(qū)動(dòng)器了,調(diào)制出的正弦波形的頻率就是步進(jìn)電機(jī)的轉(zhuǎn)速,正弦的幅值就是步進(jìn)電機(jī)的轉(zhuǎn)矩。這個(gè)聽起來(lái)貌似不難啊, 但是你不要忘了調(diào)制出的正弦是有要求的。第一要有一定的驅(qū)動(dòng)能力步進(jìn)電機(jī)的功率越大驅(qū)動(dòng)能力要求也越大。第二要能夠保持90 度的相差前提下改變正弦的頻率,這樣才能夠驅(qū)動(dòng)電機(jī)按不同的
7、轉(zhuǎn)速運(yùn)轉(zhuǎn),步進(jìn)電機(jī)的旋轉(zhuǎn)方向?qū)嶋H上是兩條正弦波的相位點(diǎn)順序。第三最好能夠調(diào)幅,調(diào)整幅值能夠?qū)崿F(xiàn)電機(jī)的恒力矩輸出,調(diào)幅的實(shí)際意義還不止這些后面再講??傊痪湓捑褪峭ㄟ^(guò)pwEM制輸出可以調(diào)頻調(diào)幅的兩路固定相差的正弦波。(如果是三相步進(jìn)電機(jī)應(yīng)該是相差各位120 度的三路正弦波,原理是一樣的。)上面那個(gè)圖和兩相步進(jìn)電機(jī)驅(qū)動(dòng)的關(guān)系可能有些疑惑"真的是這樣的嗎 ?", 我們?cè)谶@里再安排一個(gè)試驗(yàn)。我們知道電動(dòng)機(jī)和發(fā)電機(jī)是兩個(gè)可逆的過(guò)程,因此我們可以用步進(jìn)電機(jī)來(lái)當(dāng)發(fā)電機(jī)。很簡(jiǎn)單的實(shí)驗(yàn),我們把步進(jìn)電機(jī)的兩相引線接到雙蹤示波器輸入上,然后找個(gè)電機(jī)帶著轉(zhuǎn)軸運(yùn)轉(zhuǎn) (我是用一個(gè)手電鉆夾住電機(jī)的轉(zhuǎn)軸,
8、我的這個(gè)手鉆是可以正反轉(zhuǎn)的)。保持穩(wěn)定的轉(zhuǎn)速,你會(huì)在示波器上看到上面那個(gè)圖:即兩路相差固定的完美的正弦波,當(dāng)轉(zhuǎn)速增大時(shí)幅值和頻率都有變化(線性關(guān)系),并且正轉(zhuǎn)和反轉(zhuǎn)時(shí)兩路正弦相位位置不同,如果你能夠確定轉(zhuǎn)速的話你還可以驗(yàn)證以下周期、轉(zhuǎn)速、步距角之間的關(guān)系。步進(jìn)電機(jī)的驅(qū)動(dòng)要比逆變器、伺服電機(jī)驅(qū)動(dòng)復(fù)雜的地方在于需要大范圍的變頻,如果能做好這個(gè)步進(jìn)電機(jī)的驅(qū)動(dòng)器其它那兩個(gè)就不成問(wèn)題了,至少在波形調(diào)制上絕對(duì)沒問(wèn)題了,它們的基本原理是通的。下面我們展開正弦調(diào)制的討論,這部分是核心的部分將占很大的篇幅,你放心我絕對(duì)不會(huì)羅列一大堆的數(shù)學(xué)式在教程里,不然怎么能叫超級(jí)無(wú)敵呢?教程超級(jí)無(wú)敵,這個(gè)stm32實(shí)現(xiàn)的驅(qū)動(dòng)
9、程序也是超級(jí)無(wú)敵 的(吼吼)。但是“載波比、spwm死區(qū)、單雙極性”這幾個(gè)詞如果你 覺得很陌生的話建議你還是要看看電力電子課程的相關(guān)章節(jié)基本概念還是要有的。三 .spwm 運(yùn)算和輸出Spwm的產(chǎn)生可以分為軟件方法和硬件方法,硬件方法通過(guò)硬件產(chǎn) 生一路三角波一路正弦波,經(jīng)過(guò)一個(gè)比較器比較正弦波幅值與三角波幅 值的關(guān)系即可得到spwm波。這種方法也應(yīng)用于很多 spwm集成芯片 件方法在波形產(chǎn)生上不需要軟件參與,并且調(diào)頻和調(diào)幅控制上都是比較簡(jiǎn)單的。硬件方法的功能和性能取決于芯片本身,對(duì)于比較復(fù)雜的應(yīng)用上會(huì)受到限制。軟件方法的思路是使得pwm以spwm的脈寬數(shù)據(jù)變化濾波后就可 以得到正弦波形,通過(guò)計(jì)算
10、得到占空比的波形數(shù)據(jù),按波形數(shù)據(jù)調(diào)整pwm 其實(shí)軟方法和硬方法也并不是絕對(duì)的,比如ti的dsp芯片內(nèi)部的spwm發(fā)生器,他的做法是在內(nèi)存中存儲(chǔ)一張正弦表,然后用一個(gè)和定時(shí)器時(shí) 鐘同步的計(jì)數(shù)器正負(fù)計(jì)數(shù)模擬一個(gè)三角波,每個(gè)時(shí)鐘將正弦表的值與三角計(jì)數(shù)值作比較輸出即得到 spwm實(shí)際上可以看成是一種半軟件半硬件 的做法。軟件方法的優(yōu)勢(shì)在于成本低且更靈活,成本低不用說(shuō)了,靈活 性上舉個(gè)例子:調(diào)制正弦波性的極性是由獨(dú)立的控制位實(shí)現(xiàn)的(雙極性),如果輸出標(biāo)準(zhǔn)的正弦波形硬方法需要三角波發(fā)生器和正弦波發(fā)生器的 起始點(diǎn)精確對(duì)齊,這在硬件電路實(shí)現(xiàn)上需要附帶鎖相環(huán)電路才能保證, 而軟件方法則不需要任何附加操作?,F(xiàn)在為
11、了改善步進(jìn)電機(jī)的驅(qū)動(dòng)性能, 我們希望極性翻轉(zhuǎn)點(diǎn)落后輸出幾個(gè)微秒,要做到這一點(diǎn)硬件方法改動(dòng)肯 定是難上難,而軟件方法上只需要增加個(gè)定時(shí)滯后輸出就行了。為了減少運(yùn)算開銷也可以使用查表法,把計(jì)算好的spwm數(shù)據(jù)存儲(chǔ)在rom里,按順序輸出表中的值即可。這種方法的數(shù)據(jù)計(jì)算可以在pc機(jī)上通過(guò)matlab軟件 進(jìn)行,將數(shù)據(jù)算好粘貼到源程序中就可以了。查表法的局限在于參數(shù)的變化和存儲(chǔ)開銷的矛盾,參數(shù)越復(fù)雜占用存儲(chǔ)空間越大。(1) 三角波向鋸齒波的轉(zhuǎn)換載波為三角波時(shí)輸出的是一個(gè)左右不對(duì)稱的pwm波形,只有這種波形能夠調(diào)制出半周期對(duì)稱的正弦波,這種方法稱為非對(duì)稱的自然采樣法。其它方法(規(guī)則采樣等效面積,)都是為了
12、減小計(jì)算量或不得以而采取的近似方法。非對(duì)稱pwmFF點(diǎn)與關(guān)閉點(diǎn)沒有必然關(guān)系,必須由中央對(duì)齊的pwm模式通過(guò)一個(gè)周期的兩次更新來(lái)輸出。三角波可以看成是兩個(gè)鋸齒波的組合,因此我們可以通過(guò)鋸齒波的數(shù)據(jù)來(lái)簡(jiǎn)化程序結(jié)構(gòu)。我們比較下面三張圖:圖1是一個(gè)鋸齒波幅值為1,載波比N=16,正弦幅值0.5,正弦與鋸齒波相差為半個(gè)鋸齒波周期;圖 2 是圖 1 水平翻轉(zhuǎn)的結(jié)果;圖3 是圖1和圖2的疊加結(jié)果。圖三中看到三角波形的spwm數(shù)據(jù)了嗎?沒錯(cuò)就這么簡(jiǎn)單,鋸齒波正弦幅值比為2: 1, 相差半個(gè)鋸齒波周期,計(jì)算出來(lái)的數(shù)據(jù)首尾組合成三角波數(shù)據(jù)。算法上就很簡(jiǎn)單了,假設(shè)數(shù)組中存放上述的鋸齒波spwm數(shù)據(jù),編號(hào)015共16
13、個(gè),依次取0, 1, 2, ,15為三角波形開點(diǎn)輸出數(shù)據(jù),則反向取15, 14, 13, ,0 為三角波形關(guān)點(diǎn)數(shù)據(jù)即可。特別的如果載波比為奇數(shù)時(shí)三角波也為奇數(shù),中間的數(shù)自然和自己組合的數(shù)據(jù)仍然是正確的。注意這里提及的方法可以把三角波形的計(jì)算轉(zhuǎn)換為鋸齒波,但并不能減少計(jì)算量,因?yàn)槿绻桥紨?shù)個(gè)三角波只要計(jì)算四分之一周期就夠了其他的是對(duì)稱的,而鋸齒波形數(shù)據(jù)需要計(jì)算半個(gè)周期。至此我們可以使用鋸齒波的方法計(jì)算按三角波的數(shù)據(jù)輸出。為計(jì)算spwm占空比首先要求得鋸齒波斜線與正弦交點(diǎn),即方程KX+B=Yf Sin(X)=Y的解。這個(gè)方程是一個(gè)超越方程,只能通過(guò)迭代的方法計(jì)算。我們將直線方程變?yōu)?X=(Y-B)
14、/K ,首先任取一個(gè)X值(這個(gè) 值就是迭代初值),將它帶入 Sin(X)求一個(gè)Y值再將Y值代入(Y-B)/K 求一次X值,再將X帶入Sin(X)求一個(gè)Y值,如此反復(fù)若干次后可以得 到一個(gè)結(jié)果就是方程式的解,這個(gè)就叫做迭代法。迭代次數(shù)越多;迭代初值越接近結(jié)果精度越高。每一組數(shù)據(jù)計(jì)算有這樣幾個(gè)參數(shù)1:正弦幅值(三角幅值與之成比例)2:載波比N值即半周期中三角波個(gè)數(shù)。另外pwm勺占空比即定時(shí)器的通道值是和 pwm勺周期值有關(guān)系的,因此為 了計(jì)算定時(shí)器通道值還需要一個(gè)周期值,對(duì)于stm32f 這個(gè)值就是定時(shí)器AR嘀存器的值,它決定pwm期(或頻率)。附件中有個(gè) matlab_spwm.rar , ma
15、tlab下計(jì)算定時(shí)器spwmB值和繪圖的小工具上面 幾個(gè)圖就是用它畫的,開始部分可以置參數(shù)s_M=32768/65536 %正弦波幅值比01s_N=16% 半周期三角波個(gè)數(shù)s_Pre=16384% 單片機(jī)定時(shí)器模數(shù)值執(zhí)行分為三部分,計(jì)算spwm數(shù)據(jù);將數(shù)據(jù)按周期值換算為定時(shí)器設(shè)定 值;畫圖;計(jì)算定時(shí)器設(shè)定結(jié)果在TimerSetting 中,復(fù)制粘貼替換tab 字符成逗號(hào)就行了,下面是上述參數(shù)的計(jì)算結(jié)果:1780524684441122113461150881606316384160751518213764118939645710243461463(3)spwm 實(shí)時(shí)運(yùn)算的優(yōu)化如前所述簡(jiǎn)單的應(yīng)用
16、查表法就可以解決了但是復(fù)雜一點(diǎn)的功能就不能滿足要求了,比如步進(jìn)電機(jī)大范圍調(diào)速、不同轉(zhuǎn)速下恒力矩輸出、恒加速運(yùn)動(dòng)等等。網(wǎng)上有很多文章介紹自然采樣法的數(shù)學(xué)方法,并給出了各種優(yōu)化算法,這些算法力圖精確求解三角方程與正弦方程的交點(diǎn),由于運(yùn)算中帶有大量的浮點(diǎn)運(yùn)算若沒有 dsp或高速浮點(diǎn)處理芯片的支持必然會(huì)造成運(yùn)算時(shí)間過(guò)長(zhǎng)對(duì)實(shí)時(shí)調(diào)控產(chǎn)生影響。實(shí)際上我們需要的計(jì)算精度和每載波周期可能的開關(guān)點(diǎn)數(shù)量有關(guān)系,此數(shù)值用C來(lái)表示,稱其為控制比(下文同)數(shù)值上=載波周期/pwm周期,同步調(diào)制方式中此值為整數(shù),可以理解為用多少個(gè) pw碉期控制一個(gè)載波周期。pwm®率實(shí)際上是開關(guān)電路的極限頻率或最理想工作的頻率,
17、假設(shè)每載波周期可能的開關(guān)點(diǎn)數(shù)量為512個(gè)則需要二進(jìn)制的9位計(jì)算精度如果再加一位存疑位最多計(jì)算10位就夠了。如果采用數(shù)據(jù)類型IEEE32浮點(diǎn)數(shù)迭代運(yùn)算將得到 24位(二進(jìn)制)精度的計(jì)算結(jié)果,與實(shí)際需要相差甚遠(yuǎn), 也就是說(shuō)你算了半天大部分是沒有意義的計(jì)算, 這種計(jì)算資源浪費(fèi)發(fā)生在每一次運(yùn)算中,因此累計(jì)起來(lái)就比較驚人了。從另一個(gè)角度看由于pwm頻率的限制有高精度的計(jì)算結(jié)果也無(wú)法實(shí)施高精度的開關(guān)控制, 這么說(shuō)就好理解了。對(duì)計(jì)算采取一定的優(yōu)化是必須的它將直接影響系統(tǒng)的實(shí)時(shí)性能。一個(gè)簡(jiǎn)單的方法就是在計(jì)算有初值后確定數(shù)據(jù)變動(dòng)方向逐個(gè)可能值比較, 另一個(gè)方法就是去浮點(diǎn)迭代計(jì)算,這兩個(gè)方法在單片機(jī)上實(shí)現(xiàn)都可 行
18、有機(jī)會(huì)再發(fā)文討論不再詳述了。四 . 步進(jìn)電機(jī)運(yùn)行控制至此假設(shè)我們可以很快的在單片機(jī)上進(jìn)行實(shí)時(shí)的迭代運(yùn)算了。迭代計(jì)算一個(gè)半周期的spwm其輸入的原始參數(shù)只和三個(gè)數(shù)值有關(guān):1.M 正弦的幅值這個(gè)值將決定步進(jìn)電機(jī)的相電流大小, 也就是步進(jìn)電機(jī)的輸出力矩。步進(jìn)電機(jī)的優(yōu)點(diǎn)之一是它的低速性能, 當(dāng)步進(jìn)電機(jī)低速運(yùn)轉(zhuǎn)時(shí)轉(zhuǎn)子始終受到磁場(chǎng)力的牽引轉(zhuǎn)動(dòng), 這個(gè)力的大小直接取決于勵(lì)磁電流的大小, 很小的速度下卻可以用很大的力牽引轉(zhuǎn)動(dòng)。而直流電機(jī)的低速運(yùn)動(dòng)只能靠減小勵(lì)磁電流實(shí)現(xiàn), 實(shí)際上就是小力矩實(shí)現(xiàn)低速, 這樣控制就不可能很精確特別是啟停階段尤其麻煩。步進(jìn)電機(jī)在高速時(shí)力矩下降很快這個(gè)原因也不難理解, 因?yàn)樵诓竭M(jìn)電機(jī)勵(lì)
19、磁線圈里有多組磁極快速劃過(guò)產(chǎn)生很大的感生電動(dòng)勢(shì)抵消了驅(qū)動(dòng)的電壓致使勵(lì)磁電流變小力矩變小。為了改善高速性能解決辦法只有一個(gè)提高工作電壓。根據(jù)電機(jī)轉(zhuǎn)速自動(dòng)調(diào)整相電流的大小就可以實(shí)現(xiàn)恒定的力矩輸出了, 即低轉(zhuǎn)速小幅值高轉(zhuǎn)速大幅值。2 .載波比N和控制比C,這兩個(gè)參數(shù)和調(diào)制頻率 F的關(guān)系是:F*2C*2N=TF(TF是定時(shí)器的時(shí)鐘頻率)我們慢慢來(lái)解釋一下這個(gè)式子, 調(diào)制頻率就是我們實(shí)際想要的電機(jī)轉(zhuǎn)速?gòu)纳厦媸阶涌梢钥闯鲆岆姍C(jī)速度增加有兩個(gè)方法即減小C或減小N(TF也是可以變的暫不考慮);C實(shí)際上就是定時(shí)器的模數(shù)值(ARR),他的含義是使用幾個(gè)定時(shí)器時(shí)鐘周期產(chǎn)生一個(gè)pwm期,前面的2是由于定時(shí)器工作在中
20、央對(duì)齊模式下,定 時(shí)器+-計(jì)數(shù)一輪產(chǎn)生一個(gè)完整的三角波周期。ARR勺取值范圍不可以太小 , 因?yàn)樾枰〞r(shí)器中斷來(lái)更新個(gè)通道的值, 太小的數(shù)值兩次更新時(shí)間過(guò)短而無(wú)法實(shí)現(xiàn)計(jì)算和更新步計(jì)數(shù)等操作。ARR勺值如果太大則輸出的pwm®率過(guò)低效果不佳。3 . N 是載波比也就是半周期的三角波的數(shù)量, 他的含義是使用幾個(gè)pwm周期調(diào)制出一個(gè)正弦周期, 其實(shí)也就是我們常說(shuō)的細(xì)分?jǐn)?shù), 它決定一個(gè)正弦周期( 一個(gè)步距角) 內(nèi)可以控制的位置點(diǎn)的數(shù)量。在常見的驅(qū)動(dòng)器中這個(gè)數(shù)值都是由撥碼開關(guān)事先設(shè)定的, 工作中是一個(gè)固定值, 原因是硬件電路無(wú)縫的調(diào)整細(xì)分度幾乎是不可能的。軟件運(yùn)算則沒有這個(gè)問(wèn)題,N的取值可以是
21、任意的,唯一受影響的就是極性控制,上面算式里N前面的 2 含義是正弦正半周期和負(fù)半周期。N 的取值還要考慮內(nèi)存和計(jì)算占用; 迭代算法如果有接近結(jié)果的初始值將使得運(yùn)算效率大幅提高,因此對(duì)于有初始值的運(yùn)算每一個(gè)計(jì)算點(diǎn)都要有存儲(chǔ)空間占用,過(guò)大的N值要考慮內(nèi)存資源,如果無(wú)初值的計(jì)算則要考慮計(jì)算資源。特別的當(dāng)N值變化時(shí)初值會(huì)與真實(shí)值有差距,所以應(yīng)盡量減少N的變動(dòng)。和步進(jìn)電機(jī)轉(zhuǎn)速有關(guān)系的參量在運(yùn)行時(shí)都是已知的,因此任意時(shí)刻電機(jī)的轉(zhuǎn)速都是可以計(jì)算的,如果電機(jī)能夠平穩(wěn)運(yùn)行(沒有堵轉(zhuǎn)或丟步的情況)是不需要其它測(cè)速碼盤裝置的,閉環(huán)控制就更加沒必要了。話 又說(shuō)回來(lái)如果丟步或堵轉(zhuǎn)了閉環(huán)能解決嗎?五 . 步值計(jì)數(shù)產(chǎn)生A
22、B 極性邏輯和正反轉(zhuǎn)網(wǎng)上看到的步進(jìn)電機(jī)驅(qū)動(dòng)程序千篇一律的都是數(shù)組存儲(chǔ)io 狀態(tài)查表輸出,帶細(xì)分更少。先來(lái)梳理一下目前已經(jīng)現(xiàn)在做到的內(nèi)容,內(nèi)存中有一個(gè)數(shù)組存放整個(gè)正弦半周期的實(shí)時(shí)運(yùn)算的 spwm數(shù)據(jù),這個(gè)數(shù)據(jù) 是根據(jù)當(dāng)前的pwmw期折算過(guò),因此每個(gè)pwmw期依次將數(shù)組內(nèi)容賦值給定時(shí)器通道值就可以在定時(shí)器通道管腳輸出正弦變化的pwm了。另外使用一個(gè)(l6205 是兩個(gè),也可以用非門)io 口來(lái)控制極性輸出,比如高電平輸出正弦負(fù)半周,低電平輸出正弦正半周。接下來(lái)需要安排一個(gè)合理而簡(jiǎn)單的數(shù)據(jù)結(jié)構(gòu)把步進(jìn)計(jì)數(shù)、細(xì)分和極性控制合為一體。首先我們用一個(gè)s32 stepcounter 全局量來(lái)做步進(jìn)計(jì)數(shù) , 它
23、的數(shù)值與步進(jìn)電機(jī)的實(shí)時(shí)位置對(duì)應(yīng),這個(gè)變量是一個(gè)很關(guān)鍵的變量,因?yàn)槿我鈺r(shí)刻的AB兩相spwm數(shù)據(jù)輸出點(diǎn)和極性控制信號(hào)都由它產(chǎn)生。 假設(shè)我們把它的低八位視為細(xì)分步計(jì)數(shù)( 256 為最大細(xì)分), 則這個(gè)計(jì)步值除256 對(duì)應(yīng)整步位置。另外安排一個(gè)u8 microstep 用來(lái)控制細(xì)分步進(jìn), 它的取值和當(dāng)前的細(xì)分度有關(guān),如果256細(xì)分則microstep=1,128 細(xì)分 microstep=2, 以此類推. 如果電機(jī)正轉(zhuǎn)前進(jìn)一個(gè)微步則 stepcounter+=microstep ,如果反轉(zhuǎn)一個(gè)微步則stepcounter-=microstep (微步進(jìn)這部分可以放到中斷程序里),OK正反轉(zhuǎn)很簡(jiǎn)單,微
24、步前進(jìn)自動(dòng)更新整步。關(guān)鍵點(diǎn)在于如何使用這個(gè)計(jì)數(shù)值產(chǎn)生兩個(gè)相位的極性信號(hào)輸出控制和A相B相的spwm數(shù)據(jù)位置,這里解釋一下為什么會(huì)希望控制都由這一個(gè)變量產(chǎn)生:因?yàn)檫@樣的程序最 簡(jiǎn)單,雖然這里講一大堆但是在編程實(shí)現(xiàn)時(shí)你就看到了就幾行搞定;不容易出錯(cuò),效率最高,你可以想象的到如果涉及的變量越多操作的代碼越多需要考慮的可能性越多也越容易錯(cuò);便于封裝和功能擴(kuò)展,比如你想做一個(gè)AD采樣值與電機(jī)位置按一個(gè)比例同步的程序即轉(zhuǎn)滑阻電機(jī)跟著動(dòng)的小玩意兒,稍微改改把 AD采樣值賦給計(jì)步值其它都不用管了。先說(shuō)第一個(gè)數(shù)據(jù)的輸出,spwm數(shù)組256個(gè),如果不考慮極性則數(shù) 據(jù)位置只和stepcounter的低8位有關(guān),因此 A相數(shù)據(jù)用
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度新材料研發(fā)高級(jí)人才引進(jìn)及產(chǎn)業(yè)化合同
- 二零二五年度籃球賽事場(chǎng)地承包與宣傳合同
- 2025年度員工個(gè)人資金周轉(zhuǎn)困難公司借款合同
- 二零二五年度社區(qū)老年食宿關(guān)愛服務(wù)合同
- 二零二五年度農(nóng)產(chǎn)品加工廠工人雇傭合同示范文本
- 二零二五年度智能城市建設(shè)項(xiàng)目股權(quán)投資顧問(wèn)合同
- 2025年倉(cāng)庫(kù)貨運(yùn)車輛租賃合同
- 空間站項(xiàng)目股權(quán)居間合同
- 教育培訓(xùn)課程報(bào)名合同及成績(jī)免責(zé)聲明
- 城市公共安全監(jiān)控系統(tǒng)建設(shè)項(xiàng)目投資合同
- 第1課 隋朝統(tǒng)一與滅亡 課件(26張)2024-2025學(xué)年部編版七年級(jí)歷史下冊(cè)
- 【歷史】唐朝建立與“貞觀之治”課件-2024-2025學(xué)年統(tǒng)編版七年級(jí)歷史下冊(cè)
- 產(chǎn)業(yè)園區(qū)招商合作協(xié)議書
- 2024年廣東省公務(wù)員錄用考試《行測(cè)》真題及答案解析
- 盾構(gòu)標(biāo)準(zhǔn)化施工手冊(cè)
- 天然氣脫硫完整版本
- 人教版八級(jí)物理下冊(cè)知識(shí)點(diǎn)結(jié)
- 2021年高考真題-生物(湖南卷) 含解析
- 幼兒園2024-2025學(xué)年第二學(xué)期園務(wù)工作計(jì)劃
- 新疆2024年新疆和田師范??茖W(xué)校招聘70人筆試歷年典型考題及考點(diǎn)附答案解析
- 【正版授權(quán)】 ISO 15978:2002 EN Open end blind rivets with break pull mandrel and countersunk head - AIA/St
評(píng)論
0/150
提交評(píng)論