基于FPGA的步進電機控制系統(tǒng)的設(shè)計方案
如果在控制電路中嚴格按照電流分配系數(shù)來控制各個通電狀態(tài),則能夠保證細分后的每一小步的控制精度相等。因此本文采用按等步距角的細分方式。
2 步進電機細分控制硬件的實現(xiàn)
為了實現(xiàn)步進電機的等步距角細分,本文采用脈沖寬度調(diào)制(PWM)的方式來實現(xiàn)。PWM 就是對逆變電路開關(guān)器件的通斷進行控制,使輸出端得到一系列幅值相等的脈沖。這些脈沖綜合在一起即可形成等效的正弦波、方波等預(yù)期的波形。而等效輸出波形的質(zhì)量與脈沖的步距有關(guān),即同一時刻輸出的PWM路數(shù)越多,則脈沖密度越高,則輸出等效波形的質(zhì)量就越好。而傳統(tǒng)的步進電機控制系統(tǒng)多采用單片機作為微處理器,而單片機是單線程的微處理器,同一時刻只能執(zhí)行一條命令,也即是同一時刻只能產(chǎn)生一路PWM信號,因此輸出波形質(zhì)量較差,從而導(dǎo)致步進電機的控制精度偏低。而FPGA的運算速度遠遠高于單片機的運算速度,且通過模塊化設(shè)計可以使其處于多線程工作模式,即可以同時產(chǎn)生多路PWM信號,提高了輸出等效波形的質(zhì)量。本文中選取Al-tera公司2004年推出了新款Cyclone Ⅱ系列FPGA器件作為開發(fā)平臺,同時輸出8路PWM信號,控制實現(xiàn)四相步進電機的16細分。同時利用串口模塊與上位機相連以實現(xiàn)人機交互。系統(tǒng)原理圖如圖4 所示。
該控制系統(tǒng)中采用總線控制方式,利用片選信號依次控制4路PWM鎖存器的通斷,這樣可以簡化硬件電路和軟件設(shè)計。以A相控制為例,當(dāng)片選A為高電平而其他幾路片選為低時,A 路PWM 鎖存器工作而其他幾路PWM鎖存器休眠。根據(jù)公式(8)計算出細分的電流分配系數(shù),進而轉(zhuǎn)化成控制PWM信號的占空比,同時開通幾路鎖存器,通過鎖存器輸出驅(qū)動步進電機。
3 步進電機細分控制軟件的設(shè)計
本設(shè)計中采用Quartus Ⅱ軟件開發(fā)平臺和Verilog設(shè)計語言進行控制軟件的設(shè)計。系統(tǒng)中需要在FPGA 內(nèi)利用線性反饋移位寄存器(Linear Feedback Shift Regis-ters)來實現(xiàn)隨機數(shù)的產(chǎn)生,控制步進電機的隨機取樣轉(zhuǎn)動,本系統(tǒng)中最核心的PWM控制模塊設(shè)計如下:
4 系統(tǒng)測試
系統(tǒng)設(shè)計完成后,對整個系統(tǒng)進行測試和檢驗。
PWM 控制系統(tǒng)的仿真結(jié)果如圖5 所示,觀察仿真輸出波形可知控制脈沖輸出正確。將程序固化到FPGA 硬件中之后,將被控的四相反應(yīng)式步進電機連接上,并通過串口將FPGA與上位機相連,由上位機輸出命令控制步進電機的轉(zhuǎn)速、轉(zhuǎn)向、轉(zhuǎn)動角度等。
5 結(jié)語
本文提出了一種基于FPGA的步進電機控制系統(tǒng)的設(shè)計方案。該方案利用FPGA控制速度快、可靠性強等特點,利用等步距細分原理和PWM控制技術(shù),設(shè)計出了高靈活性、可人機交互、分辨率高的步進電機控制系統(tǒng)。驗證結(jié)果表明,該控制系統(tǒng)實現(xiàn)了步進電機等步距角的16級細分,并通過人機交互實現(xiàn)了任意改變各相順序的主要技術(shù)指標(biāo),控制精度高,可靠性強。從而證實了該方案的可行性。
陀螺儀相關(guān)文章:陀螺儀原理
評論