中型組機(jī)器人運(yùn)動(dòng)控制系統(tǒng)的FPGA設(shè)計(jì)
3.1 正交編碼信號(hào)采集與測(cè)速實(shí)現(xiàn)
增量式光電編碼器輸出信號(hào)如圖4所示。本文引用地址:http://butianyuan.cn/article/162812.htm
A、B兩相信號(hào)是相位相差90°的正交方波脈沖串,每個(gè)脈沖代表被測(cè)對(duì)象旋轉(zhuǎn)了一定的角度,A、B之間的相位關(guān)系則反映了被測(cè)對(duì)象的旋轉(zhuǎn)方向。在FPGA中設(shè)計(jì)4倍頻和鑒向電路,本設(shè)計(jì)采用2路輸出:一路輸出方向,另一路輸出脈沖,并對(duì)鑒向倍頻電路進(jìn)行仿真,如圖5所示。
根據(jù)脈沖計(jì)數(shù)來測(cè)量轉(zhuǎn)速的方法有M法、T法以及M/T法3種。M法適用于高速測(cè)量場(chǎng)合,在低速時(shí)有較大的誤差;而T法,恰恰相反,在低速時(shí)測(cè)量準(zhǔn)確,高速時(shí)誤差較大。
本設(shè)計(jì)采用文獻(xiàn)所描述的方法。該方法如圖6所示,設(shè)定參考閘門時(shí)間為固定的1個(gè)值,它只是作為參考信號(hào)和編碼信號(hào)共同確定實(shí)際的閘門時(shí)間。這樣確定的閘門時(shí)間為被測(cè)信號(hào)的整周期倍,能夠有效提高測(cè)量精度。則測(cè)得的速度為:
3.2 增量式PID控制原理及其FPGA實(shí)現(xiàn)
實(shí)際機(jī)器人的數(shù)學(xué)模型不可避免地存在一定程度的參數(shù)不確定性,且三輪全方位移動(dòng)機(jī)器人的正交全向輪在行走時(shí)會(huì)與地面交替接觸而產(chǎn)生一些不確定摩擦轉(zhuǎn)矩,這些都會(huì)給機(jī)器人的精確控制帶來難度。為了對(duì)三輪全方位移動(dòng)機(jī)器人進(jìn)行精確的控制,系統(tǒng)采用PID速度閉環(huán)控制算法對(duì)機(jī)器人的3個(gè)全向輪進(jìn)行速度調(diào)節(jié)。
令采樣周期為TS,將連續(xù)PID公式離散化后可得到數(shù)字PID算法表達(dá)式:
式中:k為采樣序號(hào);u(k)為第k個(gè)采樣時(shí)刻的計(jì)算機(jī)輸出值;e(k)為第k個(gè)采樣時(shí)刻的計(jì)算機(jī)輸入誤差值;e(k-1)為第k-1個(gè)采樣時(shí)刻的輸入誤差值;Kp為比例系數(shù);KI為積分系數(shù);KD為微分系數(shù)。
這種算法雖然比較直觀,但由于是全量輸出,所以每次輸出均與過去的所有狀態(tài)有關(guān),計(jì)算時(shí)要對(duì)e(k)進(jìn)行累加,計(jì)算機(jī)運(yùn)算量大。
于是產(chǎn)生了增量式PID算法:
上述公式(7)為增量式PID控制算法。只輸出控制增量,誤動(dòng)作影響較小,且控制增量只與最近幾次的采樣值有關(guān),容易通過加權(quán)處理獲得比較好的控制效果。
根據(jù)以上公式推導(dǎo),結(jié)合FPGA的工作特點(diǎn),本文設(shè)計(jì)了適合FPGA的增量式PID實(shí)現(xiàn)結(jié)構(gòu)。
由圖7可以看出,增量式PID控制算法程序結(jié)構(gòu),只要最近的3個(gè)誤差采樣值就可以加權(quán)計(jì)算。這在FPGA內(nèi)部完全可以并行實(shí)現(xiàn),移位部分結(jié)構(gòu)類似FIR濾波器的實(shí)現(xiàn)結(jié)構(gòu),難點(diǎn)是FPGA設(shè)計(jì)時(shí)對(duì)有符號(hào)數(shù)的熟練操作和保證累加器不能溢出。
伺服電機(jī)相關(guān)文章:伺服電機(jī)工作原理
評(píng)論