步進(jìn)電機控制器的FPGA實(shí)現
2.2 步進(jìn)電機方向電路模塊設計
該模塊的功能是設定步進(jìn)電機的旋轉方向(順/逆時(shí)針轉動(dòng)),并設定電動(dòng)機在順/逆時(shí)針時(shí)所需的初值與累加/減值。給出逆時(shí)針操作模式的技術(shù)規則和仿真輸出(ini=0賦初值,ini=1時(shí)開(kāi)始計數)。
如果manner=00,這時(shí)進(jìn)行自動(dòng)判斷,若angle步進(jìn)角為偶數(角度設定可以被90整除)電路使用一相激磁法,則count的初始值為000(cntini=0),每次加2;否則電路使用二相激磁法,count的初始值為111(cntini=111),每次加2;angleDnCntDec每次減2。得到的仿真結果如圖2所示。
表2是模塊按不同勵磁方式輸出時(shí)各個(gè)初值以及累加/減值的設定真值表。
2.3 步進(jìn)電機移動(dòng)與定位控制模塊設計
該模塊的主要功能是利用賦初值ini將數值傳到該模塊中并配合輸入的clk作為同步控制信號,進(jìn)行步進(jìn)電機的步進(jìn)移動(dòng)與定位控制。步進(jìn)電機定位功能通過(guò)一個(gè)減法器實(shí)現:在每個(gè)clk脈沖上升沿,設定步進(jìn)角倍數,angleDnCount減去不同激磁方式下設定的累加器計數值angleDnCntDec,判斷差值小于設定的累減計數時(shí),步進(jìn)電機旋轉到預定角度停止輸出驅動(dòng)端口信號,來(lái)實(shí)現定位功能。
2.4 編碼輸出模塊
評論