成 果,冉 全*,2,葉惠嬌,潘 洋
1.武漢工程大學計算機科學與工程學院,湖北 武漢 430205;2.智能機器人湖北省重點實驗室(武漢工程大學),湖北 武漢 430205
步進電機是將電脈沖信號轉變為角位移或線位移的數字式傳動裝置,在電子、機械等領域有很多的應用[1]。電機的轉動是由輸入的脈沖信號控制,在控制的過程中能具體的知道電機旋轉的角度[2]。但是由于步進電機的步距角固定,在低頻運轉時容易產生振蕩,不能保證平穩的運行,無法滿足精確控制的要求,一般需要外接阻尼器或者加減速器才可以緩解振蕩問題[3]。本文使用步進電機細分驅動的方式來減少電機振蕩,細分驅動的脈沖信號在控制器中產生,不用外接設備,簡化了控制過程。
傳統的步進電機控制方式是以單片機等微處理器為控制核心,對于簡單的步進電機控制場景是沒有問題的,但是在控制多個步進電機進行頻繁細分操作時,會占用微處理器大量的運算時間和大量的IO口,這會對系統中其它模塊的資源分配產生影響,從而影響其他功能的執行與實現??删幊涕T陣列(field programmable gate array,FPGA)因為內部程序是并行運行,對處理復雜功能有很強的能力且FPGA擁有大量的IO口,對于步進電機這樣需要多個IO口同時控制的器件是非常適合的。可以很好的解決微處理器在上述方面的不足,而且與程序控制相比,硬件電路控制具備更好的穩定性和快速性。所以系統采用FPGA為控制核心實現步進電機細分控制。
當步進電機驅動器接收到一個脈沖信號,步進電機就會按固定的角度(稱為“步距角”)轉一步,電機的旋轉是以固定的角度一步一步運轉下去[4]。……