《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 如何簡(jiǎn)化步進(jìn)電機(jī)系統(tǒng)設(shè)計(jì)
如何簡(jiǎn)化步進(jìn)電機(jī)系統(tǒng)設(shè)計(jì)
摘要: 現(xiàn)代步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)通常使用集成電路功率芯片驅(qū)動(dòng)電機(jī)運(yùn)轉(zhuǎn),,有時(shí)可能還會(huì)集成一些簡(jiǎn)單的控制功能,,像電流控制。
Abstract:
Key words :

  現(xiàn)代步進(jìn)電機(jī)" title="步進(jìn)電機(jī)">步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)通常使用集成電路功率芯片驅(qū)動(dòng)電機(jī)運(yùn)轉(zhuǎn),,有時(shí)可能還會(huì)集成一些簡(jiǎn)單的控制功能,,像電流控制,。有些較先進(jìn)的控制芯片還集成一個(gè)狀態(tài)機(jī),對(duì)步進(jìn)電機(jī)的步進(jìn)順序進(jìn)行相應(yīng)的控制。一般而言,,步進(jìn)時(shí)序和運(yùn)動(dòng)曲線是由一個(gè)外部微控制器" title="微控制器">微控制器或?qū)S玫腁SIC邏輯電路控制的。如果需要控制多臺(tái)電機(jī),,解決辦法無(wú)非是給每臺(tái)電機(jī)安裝專用邏輯電路或者在微控制器上安裝每臺(tái)電機(jī)的控制軟件,。通過(guò)在一顆芯片上集成一個(gè)數(shù)字控制內(nèi)核和驅(qū)動(dòng)電路,意法半導(dǎo)體的新產(chǎn)品 L6470可簡(jiǎn)化多電機(jī)控制系統(tǒng)的設(shè)計(jì),。這款新IC采用電壓控制模式,,能夠以1/128微步進(jìn)管理用戶設(shè)置的運(yùn)動(dòng)曲線,而且這些操作對(duì)主微控制器的負(fù)荷影響微乎其微,。在采用該控制器的系統(tǒng)中,,因?yàn)槲⒖刂破髦恍柘蚩刂破靼l(fā)出高級(jí)運(yùn)動(dòng)命令,所以只用一個(gè)微控制器即可輕松管理多臺(tái)電機(jī),。

  前言

  意法半導(dǎo)體新推出的步進(jìn)電機(jī)控制芯片L6470在一顆芯片上集成了功率級(jí)和一個(gè)數(shù)字控制內(nèi)核,。這款步進(jìn)電機(jī)控制芯片能夠通過(guò)SPI接口接收微控制器的運(yùn)動(dòng)曲線命令,按照預(yù)制的加速度和速度曲線自動(dòng)執(zhí)行運(yùn)動(dòng),,還能自動(dòng)加快電機(jī)的運(yùn)轉(zhuǎn)速度,,并使之保持預(yù)設(shè)的轉(zhuǎn)速。

  該控制器的結(jié)構(gòu)如圖1所示,??刂七壿嬰娐肥且粋€(gè)可以設(shè)置的狀態(tài)機(jī),能夠接收并保存各種參數(shù),,例如:加速度,、減速度、啟動(dòng)轉(zhuǎn)速,、轉(zhuǎn)速,、相電流控制 (PWM)和步進(jìn)模式。從全步進(jìn)到1/128微步進(jìn),,該控制器共支持8種步進(jìn)模式,。內(nèi)部絕對(duì)位置計(jì)數(shù)器負(fù)責(zé)計(jì)算所選步進(jìn)模式的步進(jìn)或微步進(jìn)的數(shù)量,以相當(dāng)于該步進(jìn)模式的分辨率跟蹤電機(jī)轉(zhuǎn)子位置,。每步旋轉(zhuǎn)1.8 度,,1/128微步電機(jī)轉(zhuǎn)子旋轉(zhuǎn)一整圈后,位置計(jì)數(shù)器將自動(dòng)增加25600(128×200步),。

  所有的運(yùn)動(dòng)參數(shù)和命令都是通過(guò)SPI接口送到控制器,。控制邏輯電路負(fù)責(zé)解釋前進(jìn)步數(shù)等運(yùn)動(dòng)命令,,控制電機(jī)從靜止開始做加速運(yùn)轉(zhuǎn)再返回到停止?fàn)顟B(tài)所需的步進(jìn)時(shí)間和步數(shù)輸出,,同時(shí)執(zhí)行命令中的步進(jìn)總數(shù)。該芯片還能給這些運(yùn)動(dòng)命令排隊(duì)和發(fā)送,進(jìn)行復(fù)雜的運(yùn)動(dòng)控制,,從而能夠大幅減少微控制器的開銷,。

  

  圖1:結(jié)構(gòu)框圖。

  運(yùn)動(dòng)和位置命令

  數(shù)字內(nèi)核可執(zhí)行五種運(yùn)動(dòng)命令和4種停止命令:

  圖2所示是Move命令的一個(gè)典型運(yùn)動(dòng)曲線,。當(dāng)接收到一條 Move命令時(shí),,控制器將計(jì)算電機(jī)從靜止開始做加速運(yùn)轉(zhuǎn)再返回到起始位置所需的步數(shù)N的運(yùn)動(dòng)曲線,整個(gè)過(guò)程都是由數(shù)字內(nèi)核硬件獨(dú)立完成的,。

  GoTo命令指示驅(qū)動(dòng)器根據(jù)內(nèi)部22位絕對(duì)位置計(jì)數(shù)器的數(shù)值驅(qū)動(dòng)電機(jī)旋轉(zhuǎn)到一個(gè)特定位置,。 GoTo命令分為兩種:一種沿特定方向旋轉(zhuǎn);另一種是沿最直接路徑旋轉(zhuǎn),,即確定以最少步數(shù)達(dá)到所需位置的運(yùn)動(dòng)方向,。對(duì)于每步旋轉(zhuǎn)1.8度的1/128微步電動(dòng)機(jī),22位計(jì)數(shù)器的解析率相當(dāng)于電機(jī)旋轉(zhuǎn)大約164周,。即便齒輪減速比很大,,有效解析率仍然在位置計(jì)數(shù)器的范圍內(nèi)。GoTo命令的運(yùn)動(dòng)曲線看起來(lái)與Move命令曲線相同,,但是有一點(diǎn)不同,,在GoTo命令中,達(dá)到命令指定的絕對(duì)位置所需步數(shù)是自動(dòng)計(jì)算結(jié)果,。

  Run和GoUntil命令用于使電動(dòng)機(jī)保持恒速旋轉(zhuǎn),,直到接到一條制動(dòng)命令 (適用于Run命令)或者有外部事件發(fā)生(適用于GoUntil)為止。當(dāng)接收到一條制動(dòng)命令時(shí),,控制器執(zhí)行下面兩種操作之一:緊急制動(dòng)或減速制動(dòng),。該器件還能執(zhí)行緊急制動(dòng)或減速停止,然后提供三態(tài)輸出,。

  

  圖2:典型運(yùn)動(dòng)曲線,。

  現(xiàn)代步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)通常使用集成電路功率芯片驅(qū)動(dòng)電機(jī)運(yùn)轉(zhuǎn),有時(shí)可能還會(huì)集成一些簡(jiǎn)單的控制功能,,像電流控制,。有些較先進(jìn)的控制芯片還集成一個(gè)狀態(tài)機(jī),對(duì)步進(jìn)電機(jī)的步進(jìn)順序進(jìn)行相應(yīng)的控制,。一般而言,,步進(jìn)時(shí)序和運(yùn)動(dòng)曲線是由一個(gè)外部微控制器或?qū)S玫腁SIC邏輯電路控制的。如果需要控制多臺(tái)電機(jī),,解決辦法無(wú)非是給每臺(tái)電機(jī)安裝專用邏輯電路或者在微控制器上安裝每臺(tái)電機(jī)的控制軟件,。通過(guò)在一顆芯片上集成一個(gè)數(shù)字控制內(nèi)核和驅(qū)動(dòng)電路,意法半導(dǎo)體的新產(chǎn)品 L6470可簡(jiǎn)化多電機(jī)控制系統(tǒng)的設(shè)計(jì),。這款新IC采用電壓控制模式,,能夠以1/128微步進(jìn)管理用戶設(shè)置的運(yùn)動(dòng)曲線,,而且這些操作對(duì)主微控制器的負(fù)荷影響微乎其微。在采用該控制器的系統(tǒng)中,,因?yàn)槲⒖刂破髦恍柘蚩刂破靼l(fā)出高級(jí)運(yùn)動(dòng)命令,,所以只用一個(gè)微控制器即可輕松管理多臺(tái)電機(jī)。

  前言

  意法半導(dǎo)體新推出的步進(jìn)電機(jī)控制芯片L6470在一顆芯片上集成了功率級(jí)和一個(gè)數(shù)字控制內(nèi)核,。這款步進(jìn)電機(jī)控制芯片能夠通過(guò)SPI接口接收微控制器的運(yùn)動(dòng)曲線命令,,按照預(yù)制的加速度和速度曲線自動(dòng)執(zhí)行運(yùn)動(dòng),還能自動(dòng)加快電機(jī)的運(yùn)轉(zhuǎn)速度,,并使之保持預(yù)設(shè)的轉(zhuǎn)速,。

  該控制器的結(jié)構(gòu)如圖1所示,??刂七壿嬰娐肥且粋€(gè)可以設(shè)置的狀態(tài)機(jī),能夠接收并保存各種參數(shù),,例如:加速度,、減速度、啟動(dòng)轉(zhuǎn)速,、轉(zhuǎn)速,、相電流控制 (PWM)和步進(jìn)模式。從全步進(jìn)到1/128微步進(jìn),,該控制器共支持8種步進(jìn)模式,。內(nèi)部絕對(duì)位置計(jì)數(shù)器負(fù)責(zé)計(jì)算所選步進(jìn)模式的步進(jìn)或微步進(jìn)的數(shù)量,以相當(dāng)于該步進(jìn)模式的分辨率跟蹤電機(jī)轉(zhuǎn)子位置,。每步旋轉(zhuǎn)1.8 度,,1/128微步電機(jī)轉(zhuǎn)子旋轉(zhuǎn)一整圈后,位置計(jì)數(shù)器將自動(dòng)增加25600(128×200步),。

  所有的運(yùn)動(dòng)參數(shù)和命令都是通過(guò)SPI接口送到控制器,。控制邏輯電路負(fù)責(zé)解釋前進(jìn)步數(shù)等運(yùn)動(dòng)命令,,控制電機(jī)從靜止開始做加速運(yùn)轉(zhuǎn)再返回到停止?fàn)顟B(tài)所需的步進(jìn)時(shí)間和步數(shù)輸出,,同時(shí)執(zhí)行命令中的步進(jìn)總數(shù)。該芯片還能給這些運(yùn)動(dòng)命令排隊(duì)和發(fā)送,,進(jìn)行復(fù)雜的運(yùn)動(dòng)控制,,從而能夠大幅減少微控制器的開銷。

  

  圖1:結(jié)構(gòu)框圖,。

  運(yùn)動(dòng)和位置命令

  數(shù)字內(nèi)核可執(zhí)行五種運(yùn)動(dòng)命令和4種停止命令:

  圖2所示是Move命令的一個(gè)典型運(yùn)動(dòng)曲線,。當(dāng)接收到一條 Move命令時(shí),控制器將計(jì)算電機(jī)從靜止開始做加速運(yùn)轉(zhuǎn)再返回到起始位置所需的步數(shù)N的運(yùn)動(dòng)曲線,,整個(gè)過(guò)程都是由數(shù)字內(nèi)核硬件獨(dú)立完成的,。

  GoTo命令指示驅(qū)動(dòng)器根據(jù)內(nèi)部22位絕對(duì)位置計(jì)數(shù)器的數(shù)值驅(qū)動(dòng)電機(jī)旋轉(zhuǎn)到一個(gè)特定位置。 GoTo命令分為兩種:一種沿特定方向旋轉(zhuǎn);另一種是沿最直接路徑旋轉(zhuǎn),,即確定以最少步數(shù)達(dá)到所需位置的運(yùn)動(dòng)方向,。對(duì)于每步旋轉(zhuǎn)1.8度的1/128微步電動(dòng)機(jī),22位計(jì)數(shù)器的解析率相當(dāng)于電機(jī)旋轉(zhuǎn)大約164周,。即便齒輪減速比很大,,有效解析率仍然在位置計(jì)數(shù)器的范圍內(nèi)。GoTo命令的運(yùn)動(dòng)曲線看起來(lái)與Move命令曲線相同,,但是有一點(diǎn)不同,,在GoTo命令中,達(dá)到命令指定的絕對(duì)位置所需步數(shù)是自動(dòng)計(jì)算結(jié)果,。

  Run和GoUntil命令用于使電動(dòng)機(jī)保持恒速旋轉(zhuǎn),,直到接到一條制動(dòng)命令 (適用于Run命令)或者有外部事件發(fā)生(適用于GoUntil)為止。當(dāng)接收到一條制動(dòng)命令時(shí),,控制器執(zhí)行下面兩種操作之一:緊急制動(dòng)或減速制動(dòng),。該器件還能執(zhí)行緊急制動(dòng)或減速停止,然后提供三態(tài)輸出,。

  

  圖2:典型運(yùn)動(dòng)曲線,。

  如圖3所示,使用一系列Run命令可以執(zhí)行復(fù)雜的運(yùn)動(dòng),。每接到一個(gè)新的Run命令后,,控制器都會(huì)驅(qū)動(dòng)電機(jī)做加速或減速旋轉(zhuǎn)到新命令指定的位置,并以指定速度保持旋轉(zhuǎn),,直到接收到下一條Run命令或一條Stop命令為止,。當(dāng)接收到一條反向運(yùn)轉(zhuǎn)命令時(shí),電機(jī)減到最低速度,,然后再向相反方向加速運(yùn)轉(zhuǎn),。

  

  圖3:多條Run命令可實(shí)現(xiàn)復(fù)雜運(yùn)動(dòng)。

  電壓控制式微步進(jìn)

  通常情況下,,步進(jìn)電機(jī)驅(qū)動(dòng)電路是電流式控制設(shè)計(jì),,電流控制器監(jiān)測(cè)并控制繞組電流強(qiáng)度。這種結(jié)構(gòu)讓設(shè)計(jì)人員能夠在寬轉(zhuǎn)速范圍內(nèi)保持所需的轉(zhuǎn)矩,,而且電源電壓波動(dòng)很小,。這種設(shè)計(jì)非常適合全步和半步驅(qū)動(dòng)器,而且也易于實(shí)現(xiàn),。很多設(shè)計(jì)人員避免在微步進(jìn)驅(qū)動(dòng)器中使用電壓控制方式,,因?yàn)殡娫措妷鹤兓瘜?dǎo)致峰流有很大變化,而且,,隨著轉(zhuǎn)速提高,,電機(jī)的反電動(dòng)勢(shì)(EMF )也會(huì)增強(qiáng),。不過(guò),利用數(shù)字控制技術(shù)可以修正這些不利因素,。

  Run (Direction,, Speed):加速運(yùn)轉(zhuǎn)直到接到停止命令為止

  Move (Direction, N_Steps):沿命令方向運(yùn)動(dòng)N步

  GoTo (Position):沿最直接路徑運(yùn)動(dòng)到絕對(duì)位置

  GoTo (Direction,, Position):沿指令方向運(yùn)動(dòng)到絕對(duì)位置

  GoUntil (Act,, Direction, Speed):加速運(yùn)轉(zhuǎn)直到有外部事件發(fā)生為止

  SoftStop:減速直到停止

  Hard Stop:緊急制動(dòng)(無(wú)減速過(guò)程)

  SoftHiZ:減速到停止,,然后關(guān)閉電橋

  HardHiZ:緊急制動(dòng),,并關(guān)閉電橋

  在開始任何運(yùn)動(dòng)之前,通過(guò)SIP接口使用SetParam命令設(shè)置運(yùn)轉(zhuǎn)參數(shù):最低轉(zhuǎn)速,、最高轉(zhuǎn)速,、加速度、減速度以及其它運(yùn)動(dòng)參數(shù)值,。為確保運(yùn)動(dòng)的完整性,,在電機(jī)運(yùn)動(dòng)過(guò)程中,,運(yùn)動(dòng)曲線的很多參數(shù)值是鎖定的,,只能在電機(jī)被制動(dòng)后才能更改這些參數(shù)。

  為實(shí)現(xiàn)這種電壓控制式驅(qū)動(dòng)電路,,需要利用一個(gè)PWM計(jì)數(shù)器/定時(shí)器電路來(lái)控制輸出脈寬,,以數(shù)字方式設(shè)置輸出占空比。L6470通過(guò)在電機(jī)繞組上施加電壓來(lái)控制相電流,。雖然不能直接控制相電流的幅度,,但是,相電流與相電壓的大小,、負(fù)載,、轉(zhuǎn)矩、電機(jī)電學(xué)特性和轉(zhuǎn)速密切相關(guān),。有效輸出電壓與電機(jī)電源電壓和KVAL系數(shù)的積成正比,。KVAL的取值范圍是電源電壓的0%到100%。在微步進(jìn)驅(qū)動(dòng)器中,,這個(gè)最大值再乘以調(diào)制指數(shù),,可產(chǎn)生所選步數(shù)的正弦波。峰值電壓由下面的公式得出:

  新的步進(jìn)電機(jī)控制器/驅(qū)動(dòng)器簡(jiǎn)化步進(jìn)電機(jī)<a class=系統(tǒng)設(shè)計(jì)" title="系統(tǒng)設(shè)計(jì)">系統(tǒng)設(shè)計(jì)(電子系統(tǒng)設(shè)計(jì))" border="0" height="23" src="http://files.chinaaet.com/images/20110106/f95d5fb1-b084-48f0-8a69-85f605e6973c.jpg" width="300" />

  KVAL值由下面的公式得出: KVAL= (Ipk x R)/Vs

  其中:Ipk=所需的峰流,,Vs=典型電源電壓,,R=電機(jī)繞組電阻

  該器件的寄存器支持加速度、減速度,、恒速運(yùn)轉(zhuǎn)和保持位置等不同的 KVAL設(shè)置,,在運(yùn)動(dòng)曲線每個(gè)部分輕松實(shí)現(xiàn)不同的轉(zhuǎn)矩設(shè)置,。

  BEMF補(bǔ)償

  如果在整個(gè)轉(zhuǎn)速范圍內(nèi)始終向電機(jī)供給相同的峰值電壓,隨著電機(jī)轉(zhuǎn)速增加,,電流強(qiáng)度會(huì)逐漸降低,,因?yàn)殡姍C(jī)的反電動(dòng)勢(shì)BEMF會(huì)顯著降低施加到線圈上的電壓。圖4左邊的波形描述了沒有采用BEMF補(bǔ)償技術(shù)的電機(jī)工作狀況,。從圖中不難看出,,隨著電機(jī)轉(zhuǎn)速增加,BEM以線性方式提高,,因?yàn)榫€圈上的電壓是實(shí)際施加的相電壓與BEMF電壓的差值,,所以電流將會(huì)降低。

  

  圖4:有BEMF補(bǔ)償電路和無(wú)BEMF補(bǔ)償電路的相電流,。

  為修正BEMF增加對(duì)電流的影響,,該產(chǎn)品在KVAL系數(shù)中增加一個(gè)修正BEMF的因數(shù)。本質(zhì)上,,就是在 KVAL初始設(shè)置值中增加一個(gè)修正值,,以抵消BEMF的影響。由于BEMF直接與轉(zhuǎn)速成正比,,因此這個(gè)修正值因數(shù)是一個(gè)斜率,,根據(jù)這個(gè)斜率和電流轉(zhuǎn)速來(lái)計(jì)算實(shí)時(shí)修正值。該產(chǎn)品提供不同的修正值:第一個(gè)值是一個(gè)標(biāo)準(zhǔn)值,,適用于電機(jī)從零轉(zhuǎn)速開始加速運(yùn)轉(zhuǎn),,直到相交轉(zhuǎn)速參數(shù)INT_SPEED設(shè)置的最高速度為止。在相交速度之上,,可以用兩個(gè)附加的斜率調(diào)整標(biāo)準(zhǔn)斜率,,一個(gè)用于恒速運(yùn)轉(zhuǎn)和加速度,另一個(gè)則用于減速運(yùn)轉(zhuǎn),。當(dāng) BEMF修正值設(shè)置適當(dāng)時(shí),,峰值電流在電機(jī)全程轉(zhuǎn)速范圍內(nèi)保持恒定,如圖4所示,。圖6描述了當(dāng)一個(gè)電機(jī)加速運(yùn)轉(zhuǎn)時(shí)的實(shí)際電流波形,。

  

  圖5: BEMF修正曲線。

  

  圖6: 有BEMF修正功能的相電流,。

  電源和相電阻修正

  電機(jī)的電源電壓和相電阻是另外兩個(gè)影響相電流的主要因素,。因?yàn)榭刂破鞑捎秒妷嚎刂品绞剑瑢?duì)輸出占空比進(jìn)行控制,,所以這兩個(gè)要素之中任何一個(gè)發(fā)生變化,,都會(huì)影響相電流。

  當(dāng)電機(jī)沒有穩(wěn)壓電源時(shí),,在從電源到電機(jī)驅(qū)動(dòng)電路的電壓上會(huì)出現(xiàn)大量的脈動(dòng)電壓,。隨著電源電壓變化,,電機(jī)電流也會(huì)波動(dòng)。如果電源上的脈動(dòng)電壓很大,,當(dāng)電機(jī)電流變得太小時(shí),,電機(jī)很可能會(huì)停止運(yùn)轉(zhuǎn)。該控制器內(nèi)置一個(gè)電源電壓修正電路,,如圖7所示,。在這個(gè)電路內(nèi),內(nèi)部模數(shù)轉(zhuǎn)換器負(fù)責(zé)測(cè)定電源電壓,,然后由在數(shù)字內(nèi)核實(shí)現(xiàn)的修正算法計(jì)算修正因數(shù),,將其施加到PWM占空比內(nèi),使輸出電壓值在整個(gè)電源電壓變化范圍內(nèi)保持恒定,。

  

  圖7: 電源修正,。

  隨著電機(jī)發(fā)熱,相阻變化也會(huì)直接影響相電流,。KTHERM設(shè)置用于修正電機(jī)內(nèi)部發(fā)熱導(dǎo)致的相阻變化,。驅(qū)動(dòng)器控制器的軟件可以監(jiān)測(cè)或估計(jì)電機(jī)溫度的升高狀況,設(shè)置KTHERM值,,修正因?yàn)闇囟壬叨鸬碾姍C(jī)相阻的變化,。例如,可以使用一個(gè)簡(jiǎn)單的算法測(cè)定在運(yùn)轉(zhuǎn)間隔時(shí)電機(jī)停止運(yùn)轉(zhuǎn)時(shí)的相阻,,根據(jù)測(cè)量結(jié)果調(diào)整KTHERM值,。

  結(jié)論

  L6470實(shí)現(xiàn)的功能讓設(shè)計(jì)人員可以實(shí)現(xiàn)電壓控制式微步進(jìn)驅(qū)動(dòng)器,,修正過(guò)去需要采用電流控制式驅(qū)動(dòng)器才能解決的典型的系統(tǒng)問(wèn)題,。從總體上看,系統(tǒng)控制變得更加順暢,,沒有電流控制式驅(qū)動(dòng)器的常見限制性問(wèn)題,。使用數(shù)字化電壓控制式PWM方法,可以輕松實(shí)現(xiàn)每步最多128微步進(jìn) 的微步進(jìn)驅(qū)動(dòng)器,。電壓控制式解決方案的正弦波曲線更加精確,,位置解析率高于電流控制式方法,電壓控制式操作可大幅降低系統(tǒng)諧振,。此外,,該器件實(shí)現(xiàn)的數(shù)字運(yùn)動(dòng)引擎能夠大幅降低系統(tǒng)微控制器的負(fù)荷,在多電機(jī)應(yīng)用環(huán)境中,,無(wú)需另設(shè)一個(gè)專用微控制器,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。