關(guān) 閉

新聞中心

EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > FPGA在直流電機(jī)位置控制中的應(yīng)用

FPGA在直流電機(jī)位置控制中的應(yīng)用

作者: 時(shí)間:2009-07-03 來(lái)源:網(wǎng)絡(luò) 收藏

在工作時(shí)鐘的作用下,驅(qū)動(dòng)模塊會(huì)不斷地檢測(cè)EN信號(hào)和stopinter信號(hào)是否有效,如果:EN有效,并且stopinter無(wú)效的時(shí)候,模塊的輸出 controi_outA,cont-orl_outB取決于輸入信號(hào)derect[1..0]的狀態(tài),當(dāng)derect[1..0]為“01” 時(shí),control_outA輸出為“0”;control_outB輸出為“1”,表示反轉(zhuǎn)。當(dāng)derect[1..0]為“10”時(shí), control_outA輸出為“1”;con-trol_outB輸出為“O”,表示正轉(zhuǎn)。驅(qū)動(dòng)控制模塊一旦檢測(cè)到stop信號(hào)有效, control_outA和control_outB的輸出都為“O”,表示控制電機(jī)剎車并停止。在EN和stop信號(hào)都無(wú)效的時(shí)候, control_outA和con-trol_outB的輸出都為“1”,表示對(duì)電機(jī)不做任何控制。
如圖4所示,當(dāng)EN和stopinter信號(hào)都為“0”時(shí),模塊的輸出control_outA,contorl_outB都為“1”,對(duì)電機(jī)不做任何控制。當(dāng)EN信號(hào)變?yōu)椤?”時(shí),表示電機(jī)開(kāi)始運(yùn)動(dòng),模塊的輸出control_outA為“O”,Contorl_outB為“1”,與direction [1..0]中的值“01”相同,此時(shí)電機(jī)反轉(zhuǎn)。當(dāng)stopinter信號(hào)變?yōu)椤?”時(shí),模塊的輸出control_outA為“O”; contorl_outB也為“O”,此時(shí)電機(jī)剎車并停止。當(dāng)EN信號(hào)為“1”,stopinter信號(hào)再次為“0”時(shí),電機(jī)再次開(kāi)始運(yùn)動(dòng),模塊的輸出 control_outA為“1”;con-torl_outB為“0”,與direction[1..O]中的值“10”相同,此時(shí)電機(jī)反轉(zhuǎn)。
1.2.3 延時(shí)模塊
圖4中,EN為延時(shí)的使能信號(hào),也就是計(jì)數(shù)比較模塊的輸出信號(hào)stopinter;inclk為工作時(shí)鐘;stop為電機(jī)停止信號(hào)對(duì)外部的輸出信號(hào)。延時(shí)模塊(如圖5所示)的工作原理如下:當(dāng)延時(shí)模塊檢測(cè)到stopinter信號(hào)為“1”時(shí),模塊內(nèi)的計(jì)數(shù)器開(kāi)始工作,計(jì)數(shù)器時(shí)鐘即模塊的工作時(shí)鐘10 kHz,當(dāng)記滿300后,模塊輸出信號(hào)為“1”。延時(shí)模塊檢測(cè)到stopinter信號(hào)為“0”時(shí),模塊內(nèi)計(jì)數(shù)器不工作,模塊輸出信號(hào)為“0”。

當(dāng)電機(jī)剎車時(shí),由于存在慣性,電機(jī)不會(huì)立即停止,會(huì)有一段滑行的過(guò)程,在這個(gè)過(guò)程中,電機(jī)仍然會(huì)通過(guò)磁編碼器返回反饋脈沖,只是因?yàn)殡姍C(jī)的轉(zhuǎn)速下降,反饋脈沖的頻率大大降低。當(dāng)stopinter信號(hào)變?yōu)椤?”時(shí),電機(jī)開(kāi)始剎車,如果此時(shí)立刻讀取feedback[15..O]端口上的反饋脈沖數(shù)值,計(jì)算出電機(jī)所帶負(fù)載的,那么必然會(huì)丟失掉滑行過(guò)程中的反饋脈沖。這樣就會(huì)導(dǎo)致讀回的反饋脈沖數(shù)與實(shí)際電機(jī)返回的反饋脈沖數(shù)不相等,從而嚴(yán)重地影響控制精度,所以必須在stopinter信號(hào)變?yōu)椤?”后,延長(zhǎng)一段時(shí)間,確保電機(jī)停止不動(dòng)后,再給出STOPTEST信號(hào),作為讀取反饋脈沖數(shù)值的有效信號(hào),這時(shí)用讀回的反饋脈沖數(shù)值計(jì)算出負(fù)載的實(shí)際是準(zhǔn)確的。
通過(guò)實(shí)驗(yàn),在電機(jī)以最高轉(zhuǎn)速運(yùn)行時(shí),讓電機(jī)剎車,用邏輯分析儀抓出反饋脈沖的波形,找出反饋脈沖頻率開(kāi)始突然下降直到反饋脈沖消失的那段時(shí)間,就是所需要的延時(shí)。通過(guò)反復(fù)進(jìn)行實(shí)驗(yàn),測(cè)試出這段時(shí)間為30 ms,其間的反饋脈沖個(gè)數(shù)為20個(gè)。因此把要控制的位移量換算成反饋脈沖的個(gè)數(shù)后,用這個(gè)值減去20作為比較模塊給定值,就可以抵消滑行過(guò)程中增加的20 個(gè)脈沖。這樣對(duì)電機(jī)的控制能夠達(dá)到一次到位,不需要進(jìn)行再次調(diào)節(jié)。延時(shí)模塊仿真圖如圖6所示。

2 結(jié) 語(yǔ)
現(xiàn)場(chǎng)可編程門陣列()器件體積小、速度快、集成度高,能夠用硬件電路來(lái)實(shí)現(xiàn)算法。使用控制電機(jī),能夠保證控制的實(shí)時(shí)性和可靠性。它作為一種有效的數(shù)字化控制方法必將廣泛地為人們所接受和使用。


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉