馬達控製:加速和減速的設計關鍵
發布時間:2014-09-15 責任編輯:stone
【導讀】就DC馬達而言,通過升高電壓(如果使用脈寬調製,則增加占空比),可以控製馬達傳動軸達到某個指定速度的快慢。
就DC馬達而言,通過升高電壓(如果使用脈寬調製,則增加占空比),keyikongzhimadachuandongzhoudadaomougezhidingsududekuaiman。danshi,ruguoshibujinmada,zegaibiandianyabuhuiduimadasuduchanshengrenheyingxiang。meicuo,gaibiandianyadaxiaokeyigaibianraozudianliudianhedesulv,congergaibianbujinmadadezuidasudu,danshi,madasudushiyouraozudianliukaiguanhuozhezhengliudesulvsuojueding。
我們可以做這樣的假設嗎:步bu進jin馬ma達da是shi一yi些xie不bu需xu要yao受shou控kong加jia速su過guo程cheng的de機ji器qi?如ru果guo可ke以yi,那na麼me我wo們men就jiu可ke以yi無wu所suo顧gu忌ji地di讓rang步bu進jin馬ma達da工gong作zuo在zai任ren何he目mu標biao速su度du下xia嗎ma?事shi實shi是shi,相xiang比bi其qi他ta馬ma達da拓tuo撲pu結jie構gou,步bu進jin馬ma達da更geng加jia需xu要yao通tong過guo加jia速su和he減jian速su過guo程cheng來lai激ji勵li。以yi任ren意yi速su度du啟qi動dong步bu進jin馬ma達da,可ke能neng會hui帶dai來lai可ke怕pa的de後hou果guo。
本文中,我們假設讀者已熟悉如何利用市場上已有集成微步進驅動器,對步進馬達進行控製。步進驅動器(例如:TI DRV8818等)的輸出與方波(“步進輸入”)頻率成正比。每個“步進”脈衝均等於驅動器步進邏輯定義步進(即微步進)。因此,改變方波頻率,也會相應改變步進馬達的速率。
圖1顯示了某個馬達製造廠商的傳統步進速率/扭矩曲線圖,其中起始頻率fs為一個重要參數。我們必須知道,要想正常啟動這種特殊的馬達,必須使用一個小於fs的步進速率。使用大於fs的步進速率啟動馬達,可能會使馬達停轉,並失去同步性。一旦出現這種情況,馬達轉動控製將受到嚴重的影響。
表麵看起來,這是一個嚴重的問題,但實際卻很容易解決。您需要做的隻是讓馬達以某個低於fs的步進速率啟動,然後提高速度,直到達到目標速度為止。遵循這一原則以後,步進馬達便可以通過遠超fs的步進速率來驅動—隻要速度保持在所示扭矩/速度曲線以下。

圖1:雙極恒流步進馬達的扭矩/速度曲線
同樣重要的是,不能簡單地通過停止“步進”maichonglairangmadatingzhi。xiangfan,yingbabujinsulvcongmubiaosudujiangzhimougenengshimadatingzhixialaiqiemeiyouchuandongzhouguanxingdegengdisulv,yinweichuandongzhouguanxinghuiyinqiduoyu、無(wu)用(yong)的(de)步(bu)進(jin)。請(qing)記(ji)住(zhu),如(ru)果(guo)在(zai)定(ding)位(wei)應(ying)用(yong)中(zhong)使(shi)用(yong)步(bu)進(jin)馬(ma)達(da),則(ze)如(ru)果(guo)馬(ma)達(da)在(zai)應(ying)該(gai)停(ting)止(zhi)時(shi)還(hai)繼(ji)續(xu)轉(zhuan)動(dong),馬(ma)達(da)傳(chuan)動(dong)軸(zhou)便(bian)會(hui)失(shi)去(qu)定(ding)位(wei)。由(you)於(yu)閉(bi)環(huan)位(wei)置(zhi)反(fan)饋(kui)很(hen)少(shao)用(yong)於(yu)驅(qu)動(dong)步(bu)進(jin)馬(ma)達(da),因(yin)此(ci)確(que)保(bao)僅(jin)執(zhi)行(xing)指(zhi)令(ling)性(xing)步(bu)進(jin)至(zhi)關(guan)重(zhong)要(yao)。
加速/減速過程
為(wei)了(le)使(shi)步(bu)進(jin)馬(ma)達(da)從(cong)起(qi)始(shi)速(su)度(du)加(jia)速(su)至(zhi)某(mou)個(ge)期(qi)望(wang)目(mu)標(biao)速(su)度(du),隻(zhi)需(xu)以(yi)周(zhou)期(qi)性(xing)間(jian)隔(ge)改(gai)變(bian)當(dang)前(qian)速(su)度(du)。大(da)多(duo)數(shu)工(gong)程(cheng)師(shi)都(dou)使(shi)用(yong)微(wei)控(kong)製(zhi)器(qi)來(lai)實(shi)現(xian)步(bu)進(jin)馬(ma)達(da)控(kong)製(zhi)。最(zui)常(chang)見(jian)的(de)實(shi)現(xian)方(fang)法(fa)是(shi)隻(zhi)使(shi)用(yong)兩(liang)個(ge)定(ding)時(shi)器(qi)。第(di)一(yi)個(ge)是(shi)每(mei)秒(miao)步(bu)進(jin)(SPS)定時器,用於產生一種精確的步進速率計時功能。另外一個是加速定時器,用於周期性地改變第一個定時器。
由於速度受到周期性改變,在本質上得到與時間相關的角速度(dv/dt)。這一過程被稱作加速度,即速度隨時間變化情況。圖2顯示了一個典型的基於微控製器的加速度分布圖放大圖,並描述了步進馬達加速至目標速度的過程。

圖2:典型加速過程放大圖
[page]SPS是我們希望獲得的每秒步進數,即馬達轉動的步進速率。必須對SPS定時器編程,實現以該速率發出脈衝。根據定時器的振蕩器頻率,典型方程式為:
其中SPS_timer_register為一個16位數字,它告訴定時器產生後續“步進”脈衝的所需時長,而timer_oscillator為一個常量,表示定時器的兆赫單位運行速度。
以函數形式將該方程式存儲起來,因為經常會用到它。為了理解它的工作過程,我們假設定時器振蕩器工作在8 MHz下,並且期望的馬達步進速率為200 SPS。根據該方程式,程序代碼使SPS_timer_register值等於40000。那麼,定時器每計時到40000,便產生一次“步進”脈衝。這會產生每秒200脈衝的定時器型輸出以及200SPS的傳動軸旋轉。
這種事件每次發生時,都會產生一次中斷,並且定時器被清空。“步進”輸入上升沿計時對於微步進驅動器精確度至關重要,但隻要其在下一個“步進”上升沿之前,下降沿幾乎隨時會出現。
定義加速度曲線需要兩個參數:(1)SPS值變化頻率;(2)SPS值變化程度。加速度曲線與這兩個參數成正比;也就是說,SPS值變化越頻繁,其值也越大,而加速度曲線也會越大起大落。加速度定時器同時控製這兩個參數:定時器函數起作用的次數與SPS值每秒的變化次數相同,另外,定時器的中斷服務程序(ISR)通過一個預先確定的因數定期增加當前SPS,從而確定新的速度。
使用每秒每秒步進(SPSPS),或者當前SPS速率改變的每秒次數,來測定加速速率。如果通過增加1來改變SPS值,則每次加速速率改變都必須調用(觸發)加速度定時器的ISR。例如,加速速率為1000 SPSPS時,馬達速度以200SPS開始,並周期性增加1,直至其達到1200SPS。那麼,加速度定時器的ISR需要調用1000次。
另外一種方法是,加速度定時器調用頻率減半,然後SPS周期性增加2。相比前一個例子,加速度定時器的ISR僅調用了500次,但馬達仍然以200SPS啟動,並在1秒內達到1200SPS。兩者的差別是更實時的可用性,但代價是分辨率下降。換句話說,為了達到999 SPSPS的精確加速速率,必須使用第一種方法。
bixuzailiangzhongfangfazhijianjinxingquanheng,yinweinindexuanzejuedinglekeyidadaoshenmeyangdemadagongzuozhiliang。liru,ruguoyaoqiuyouhenduoliduyidadaosuoyoukenengdejiasuduguocheng,zexuyaojinkenengditiaoyongjiasududingshiqideISR。
但是,在前麵的SPS定時器方程式中,存在除運算。根據所使用處理器內核的不同,這種除運算可能會極大限製ISR被有效調用並正確產生新SPS速率的次數。在使用TI MSP430且 CPU運行在16 MHz下的實現中,一次除運算耗時約500μs。結果,ISR每秒被調用的最大次數為2000次。這種限製決定了增量因數的大小。加速速率大於2000時,必須使用大於1的增量。
在(zai)馬(ma)達(da)啟(qi)動(dong)前(qian)不(bu)久(jiu),便(bian)進(jin)行(xing)一(yi)次(ci)加(jia)速(su)速(su)率(lv)計(ji)算(suan)。負(fu)責(ze)該(gai)計(ji)算(suan)的(de)軟(ruan)件(jian),確(que)定(ding)加(jia)速(su)度(du)定(ding)時(shi)器(qi)的(de)時(shi)間(jian)間(jian)隔(ge)和(he)增(zeng)量(liang)因(yin)數(shu)大(da)小(xiao),然(ran)後(hou)對(dui)各(ge)變(bian)量(liang)進(jin)行(xing)相(xiang)應(ying)的(de)配(pei)置(zhi)。同(tong)時(shi)使(shi)用(yong)這(zhe)些(xie)變(bian)量(liang),直(zhi)到(dao)對(dui)SPS速率的修改足以達到目標速度為止。一旦達到目標速度,加速終止。
減速過程與加速過程基本一致,但增量因數為負而非正的情況除外。另外,必須規定一個馬達能夠安全停止的新目標速度。
圖3顯示了一個加速/減速過程,其中,加速和減速速率對稱。也可以使用非對稱速率。

圖3:加速/減速過程
[page]位置控製
daomuqianweizhi,zaisudukongzhihuanluzhongcaozuomadakansishifenjiandan。madadadaomougemubiaosudu,ranhouzaimougeshikeshoudaotingzhizhiling。danshi,dangxuyaozaimouduanyudingshijianneizhixingmougeyudingbujinshushi,jieguohuizenyangne?jiasu/減jian速su過guo程cheng變bian得de比bi任ren何he時shi候hou都dou要yao重zhong要yao。在zai這zhe種zhong運yun行xing控kong製zhi拓tuo撲pu結jie構gou中zhong,所suo有you計ji劃hua步bu進jin都dou執zhi行xing完wan畢bi後hou馬ma達da便bian停ting止zhi,這zhe一yi點dian至zhi關guan重zhong要yao。規gui定ding步bu進jin數shu的de變bian量liang被bei稱cheng作zuo number_of_steps。
必須對馬達運動情況編碼,以使馬達在規定時間停止,不用等待減速命令。實現這個目標的一個方法是對一個名叫steps_to_stop的變量編程,使其小於number_of_steps。之後,軟件通過監測steps_to_stop,確定需要開始減速的時機。
在達到目標速度以前,加速會一直執行。達到目標速度後,在達到steps_to_stop計數(開始減速之時)以前,仍允許步進馬達運行。例如,1000步進運行時,steps_to_stop設置為800。因此,馬達通過一個加速過程啟動,持續運行至步進800,此時馬達開始減速,直到停止運行。
根據所有係統變量的配置,我們需要研究下列5種情況(參見圖 4):
情況1:在馬達達到目標速度以前所有步進結束;
情況2:馬達達到目標速度時所有步進結束;
情況3:達到停止速度以前所有步進結束;
情況4:達到停止速度時所有步進結束;
情況5:達到停止速度後所有步進結束。

圖4:5種加速/減速情況
恰好在達到停止速度時馬達停止(情況4)是一種理想情況。在達到停止速度前不久(情況3)或者以後(情況5)馬ma達da停ting止zhi是shi可ke以yi接jie受shou的de,具ju體ti取qu決jue於yu出chu現xian這zhe些xie情qing況kuang時shi距ju離li理li想xiang情qing況kuang還hai差cha多duo少shao個ge步bu進jin。例li如ru,如ru果guo馬ma達da轉zhuan動dong過guo快kuai時shi所suo有you步bu進jin結jie束shu,則ze馬ma達da傳chuan動dong軸zhou可ke能neng會hui因yin轉zhuan動dong慣guan量liang而er失shi去qu位wei置zhi。但dan是shi,如ru果guo在zai所suo有you步bu進jin執zhi行xing完wan以yi前qian達da到dao停ting止zhi速su度du,則ze執zhi行xing該gai次ci馬ma達da運yun動dong控kong製zhi所suo需xu的de總zong時shi間jian會hui過guo長chang。
[page]
情況1和2僅為說明需要,應該不會出現,因為設計人員應始終確保steps_to_stop小於number_of_steps。了解所有可能出現的情況以後,設計人員可以簡單地對係統進行微調,以獲得最佳響應。
隻需少許微調的另一種方法是,將步進總數分割成幾個百分數,分配給每個加速/減速過程特定區域。在這種算法實現中,可選擇步進總數的20%用以對馬達加速,60%用以使馬達恒速運行,其餘20%用以對馬達減速(參見圖5)。如果number_of_steps為1000,則馬達以預設加速度加速200個步進,然後無論它達到何種步進速率都停止加速。之後,以這種速率執行600個步進,並且最後200個步進執行完全部減速過程。

圖5:基於百分比的加速/減速過程
請注意,使用這種算法時,假設正確選擇百分比的情況下,步進不可能在馬達運動過程的錯誤部分耗盡。就圖5所(suo)示(shi)例(li)子(zi)而(er)言(yan),由(you)於(yu)加(jia)速(su)和(he)減(jian)速(su)部(bu)分(fen)都(dou)很(hen)平(ping)衡(heng),因(yin)此(ci)馬(ma)達(da)最(zui)可(ke)能(neng)以(yi)相(xiang)同(tong)速(su)度(du)開(kai)始(shi)和(he)停(ting)止(zhi)。這(zhe)種(zhong)方(fang)法(fa)的(de)缺(que)點(dian)是(shi),很(hen)難(nan)保(bao)證(zheng)達(da)到(dao)目(mu)標(biao)速(su)度(du)。如(ru)果(guo)目(mu)標(biao)速(su)度(du)不(bu)那(na)麼(me)重(zhong)要(yao),則(ze)可(ke)以(yi)使(shi)用(yong)這(zhe)種(zhong)算(suan)法(fa)來(lai)確(que)保(bao)馬(ma)達(da)始(shi)終(zhong)在(zai)安(an)全(quan)速(su)度(du)下(xia)停(ting)止(zhi)。
如果速度達到對應用來說過慢,使用這種算法加速馬達傳動軸的唯一方法是,提高加速速率,或者增加加速/減速區域中使用的步進數百分比。但是,設計人員必須小心操作,不要讓馬達運行速度違反馬達扭矩/速度曲線。
結論
shuangjibujinmadajiasuhejiansu,shisuoyoubujinmadayingyongshejideguanjianbufen。jinguanzaiguoqushinianli,gonglvjikongzhiyidedaojidajianhua,danshijiasuhejiansuguochengyingyongchengxurengweicongyingyongchuliqilingyuxiaoshengniji。youyugesebujinmadajiejuefangandecunzai,nenggouzhengquechuliyingyongbujinmadayundongkongzhideyixiesuanfa,gengjiarongyibianmaheweitiao。tongguozhengquediduimadajiasuhejiansu,shejirenyuankeyiquebaoyingyonggaoxiaoyunxing,bingdadaogezhongguifanyaoqiu。
相關閱讀:
馬達控製中關鍵安全應用的解決方案
工業自動化方案:傳感器技術及馬達控製的實現
實例告訴你——如何使用 PolySwitch 器件保護馬達
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 築基AI4S:摩爾線程全功能GPU加速中國生命科學自主生態
- 一秒檢測,成本降至萬分之一,光引科技把幾十萬的台式光譜儀“搬”到了手腕上
- AI服務器電源機櫃Power Rack HVDC MW級測試方案
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索





