摘要:一些運動控制系統(tǒng),要求伺服驅(qū)動器能夠輸出正交的脈沖,用于反映電機軸的位置信息?,F(xiàn)介紹一種基于定時器和鎖相環(huán)的伺服系統(tǒng)實現(xiàn)可變整數(shù)分頻輸出的方法,即編碼器原始信號經(jīng)運算產(chǎn)生速度信息和位置信息,鎖相環(huán)以一定的響應(yīng)速度跟隨位置信號;由定時器產(chǎn)生一對中心對稱的PWM信號,經(jīng)過移相產(chǎn)生的分頻輸出信號再經(jīng)第二個定時器的正交脈沖接口采樣,形成負反饋閉環(huán)。經(jīng)仿真驗證,該方法可實現(xiàn)產(chǎn)品要求的35~32 767任意整數(shù)分頻。研究成果可為相關(guān)應(yīng)用與研究提供參考。
關(guān)鍵詞:定時器;鎖相環(huán);分頻輸出;伺服系統(tǒng)
中圖分類號:TM921.54? 文獻標(biāo)志碼:A? 文章編號:1671-0797(2022)03-0013-04
DOI:10.19514/j.cnki.cn32-1628/tm.2022.03.004
0? ? 引言
運動控制系統(tǒng)為了監(jiān)視或控制機構(gòu)的運行狀態(tài),常需驅(qū)動執(zhí)行機構(gòu)的伺服驅(qū)動器將電機編碼器位置信息分頻后,以正交脈沖的形式實時反饋給上位控制系統(tǒng)。對于脈沖型伺服驅(qū)動器,這是常用的方法;對于總線型伺服驅(qū)動器,雖然可以通過總線接口向上位控制系統(tǒng)反饋位置信息,但應(yīng)用中也存在不足之處:一方面,要求上位控制系統(tǒng)總線接口必須與伺服驅(qū)動器總線接口相同或者兼容,另一方面,總線通信周期相對伺服控制周期來說較長,且存在較大通信抖動,對于全閉環(huán)控制難以獲得理想的性能,所以仍然需要將編碼器數(shù)值分頻后通過正交脈沖接口實時反饋到上位控制器[1]。
分頻輸出采用的硬件平臺,一般基于CPLD或FPGA來實現(xiàn)[2],這就需要在伺服系統(tǒng)中增加額外的邏輯單元,會增加成本和系統(tǒng)復(fù)雜度。
本文方法,硬件上采用MCU芯片自帶的兩個定時器外設(shè)單元:一個定時器利用PWM功能,生成一對頻率可變、占空比為50%的正交脈沖信號;然后將分頻輸出的正交脈沖信號連接到第二個定時器的編碼器接口,對輸出信號進行測量,形成反饋;將分頻輸出脈沖指令信號與反饋信號比較后,利用鎖相環(huán)跟隨指令信號,形成對分頻輸出的自動控制。
本設(shè)計充分利用微處理器豐富的定時器外設(shè),控制上采用鎖相環(huán)跟隨編碼器輸入信號,在不使用可編程器件的情況下,實現(xiàn)低成本的35~32 767范圍內(nèi)任意整數(shù)分頻輸出,經(jīng)仿真和實驗驗證可達到設(shè)計要求。
1? ? 分頻輸出正交脈沖的方案設(shè)計及實現(xiàn)
1.1? ? 設(shè)計原理
伺服電機位置反饋采用多摩川17位RS485總線式絕對式編碼器[3],單圈分辨率為131 072。分頻輸出正交脈沖分辨率為35~32 767。系統(tǒng)設(shè)計框圖如圖1所示。
編碼器實時角度θe與反饋的正交脈沖角度θq′比較后形成角度差Δφ,經(jīng)比例放大疊加編碼器速度后形成速度信號ωe。ωe經(jīng)頻率計算后得到正交脈沖頻率ωq,然后通過正交脈沖發(fā)生器產(chǎn)生占空比為50%的脈沖信號。此信號經(jīng)正交脈沖檢測器檢測積分后形成正交脈沖的角度值θq,再經(jīng)角度計算后,形成正交脈沖反饋角度θq′。
當(dāng)編碼器角度θe與正交脈沖角度θq′同相位,那么角度差Δφ為0,正交脈沖輸出頻率正比于編碼器速度;當(dāng)電機加速時,編碼器角度θe超前正交脈沖角度θq′,相位差Δφ增加,導(dǎo)致ωe增加,正交脈沖頻率ωq增加,最終使得反饋角度θq′相位增加,這樣相位差Δφ將會減小;當(dāng)電機減速時,編碼器角度θe滯后正交脈沖角度θq′,相位差Δφ減小,導(dǎo)致ωe減小,正交脈沖頻率ωq減小,最終使得反饋角度θq′相位減小,這樣相位差Δφ將會增加。整個調(diào)節(jié)過程為反饋控制方式[4],無論電機處于何種運行狀態(tài),系統(tǒng)總能將相位偏差降低,且積分環(huán)節(jié)可使穩(wěn)態(tài)偏差消除,使分頻輸出角度始終跟隨編碼器角度。
1.2? ? 正交脈沖發(fā)生器
正交脈沖由工作于非對稱PWM模式的定時器產(chǎn)生,其由正交的A、B兩相脈沖和表示零位的Z相信號組成,且三個信號之間有一定的相位要求和占空比要求[5]。定時器在該模式下生成的兩個中心對稱PWM信號間允許存在可編程相移。當(dāng)定時器向上計數(shù)時,若定時器值小于比較寄存器值CCR1,則輸出高電平;反之,輸出低電平。當(dāng)定時器向下計數(shù)時,若定時器值大于比較寄存器值CCR2,則輸出低電平;反之,輸出高電平。正交脈沖輸出過程如圖2所示。
脈沖頻率fp由計數(shù)器的重載寄存器ARR和定時器的16位預(yù)分頻器PSC確定,如式(1)所示:
式中:fck_int為定時器輸入時鐘。
由圖2可知,綜合調(diào)節(jié)比較器CCR1~CCR4的值,即可改變兩路PWM脈沖的占空比和相位。脈沖A與脈沖B要求占空比為50%、相位差90°,可固定脈沖A與定時器三角波中心對稱,只調(diào)節(jié)脈沖B的相位。各比較寄存器值計算如下:
1.3? ? 正交脈沖檢測及Z信號生成
1.3.1? ? 正交脈沖的檢測
將輸出的正交脈沖信號A與B分別連接到第二個定時器TIM2的編碼接口TI1、TI2,并配置為編碼器接口模式。此時,它相當(dāng)于帶有方向選擇的外部時鐘,在兩路信號的每個邊沿進行計數(shù)。當(dāng)A相超前B相時遞增計數(shù),B相超前A相時遞減計數(shù),因此其計數(shù)值始終表示正交脈沖的位置信息,計數(shù)方向?qū)?yīng)于旋轉(zhuǎn)方向。工作過程如圖3所示。
1.3.2? ? 產(chǎn)生零位脈沖Z信號
Z信號與A相、B相脈沖有一定時序和精度要求,且Z信號的正脈寬要求為90°。為達到此要求,采用定時器TIM2的輸出比較功能輸出脈沖寬度為1個時鐘寬度的信號作為Z信號。首先,將TIM2重載寄存器TIM2_ARR設(shè)置為分頻脈沖的分辨率Ro,如此,當(dāng)向上計數(shù)達到該值時,定時器將從0開始重新計數(shù),并產(chǎn)生更新事件。其次,打開定時器TIM2溢出中斷,當(dāng)中斷發(fā)生時,強制輸出Z信號為低電平。最后,在向上計數(shù)時設(shè)置比較寄存器值為1,向下計數(shù)時設(shè)置比較計數(shù)器值為Ro-1,當(dāng)比較匹配時,Z信號設(shè)置為自動翻轉(zhuǎn)。
1.4? ? 鎖相環(huán)
鎖相環(huán)的作用是穩(wěn)定分頻輸出的角度,即正交脈沖的個數(shù),實時跟蹤電機編碼器角度值。鎖相環(huán)結(jié)構(gòu)圖如圖4所示,由負反饋調(diào)整回路實現(xiàn)。
鎖相環(huán)角度輸出如下:
式中:speede為編碼器速度;Rq為分頻輸出脈沖分辨率;θe為編碼器角度;ωq為正交脈沖頻率;kpll為鎖相環(huán)比例環(huán)節(jié)增益。其中,角度θe和θq以標(biāo)幺值計算,用數(shù)字0~1表示0°~360°;speede單位為Hz,1 Hz表示旋轉(zhuǎn)速度為1 r/s。
比例環(huán)節(jié)增益kpll應(yīng)盡量大,以提高系統(tǒng)的動態(tài)響應(yīng),有利于快速跟隨輸入信號;但同時也要足夠小,以減少輸出頻率抖動引發(fā)的干擾。其值可通過仿真和調(diào)試進行合理選取。
2? ? 分頻輸出脈沖自動控制仿真與實驗驗證
2.1? ? 控制系統(tǒng)的Simulink仿真
系統(tǒng)Simulink模型如圖5所示。正交脈沖發(fā)生器模塊QEP_generator是利用Simulink基本模塊單元搭建的,用于模擬MCU定時器外設(shè)產(chǎn)生正交PWM;正交脈沖檢測模塊QEP_detector用于模擬MCU定時器編碼器接口進行正交脈沖計數(shù);其他比例、積分模塊采用標(biāo)準的Simulink模塊實現(xiàn)[6]。
通過調(diào)節(jié)kpll值觀察模型的階躍響應(yīng),以初步找出kpll的合適范圍,為實驗驗證提供較為準確的值,階躍響應(yīng)如圖6所示。系統(tǒng)采樣頻率10 kHz,仿真時長0.1 s,在0.01 s編碼器速度由0 r/min變化至600 r/min,角度誤差經(jīng)過0.02 s收斂至穩(wěn)定值。經(jīng)仿真比較,隨著增益kpll增大,收斂逐漸加快;當(dāng)kpll大于0.4時,會出現(xiàn)超調(diào)且能夠收斂;當(dāng)kpll等于1.0時,系統(tǒng)出現(xiàn)震蕩且無法收斂。為減少系統(tǒng)震蕩,將系統(tǒng)調(diào)節(jié)為過阻尼狀態(tài)。根據(jù)調(diào)參仿真,kpll以不大于0.4為好。
2.2? ? 實驗驗證
2.2.1? ? 實驗平臺與實驗方法
采用四橫電機SH660系列220 V/400 W交流伺服驅(qū)動器作為實驗平臺(圖7)來驗證本文所提分頻輸出方法。伺服電機安裝17位多圈絕對式編碼器,額定轉(zhuǎn)速3 000 r/min,設(shè)置分頻輸出4倍頻后分辨率為10 000。分頻正交脈沖由Micsig STO1104C示波器采樣,脈沖計數(shù)由J-Scope采樣并顯示。實驗操作使用四橫電機公司的伺服系統(tǒng)調(diào)試軟件ShMotion,利用調(diào)試軟件位置點動功能,設(shè)定點動脈沖數(shù)位20 000,單圈脈沖數(shù)10 000,最高速度設(shè)定為600 r/min。調(diào)試軟件啟動位置點動功能后,伺服電機以設(shè)定速度先反向運轉(zhuǎn)720°再正向運轉(zhuǎn)720°,用示波器和J-Scope同時采集分頻輸出脈沖,對設(shè)計方法進行驗證。
2.2.2? ? 正交脈沖相位驗證
正向旋轉(zhuǎn)波形如圖8所示,可以看出,正交脈沖A相超前B相90°,頻率為25 kHz。修改點動脈沖數(shù)位-20 000,反向旋轉(zhuǎn)波形如圖9所示,可以看出反向運轉(zhuǎn)時B相超前A相90°,頻率為25 kHz。根據(jù)實驗結(jié)果,分頻輸出信號特征符合產(chǎn)品要求。
2.2.3? ? 分頻輸出脈沖位置跟隨性驗證
J-Scope采集位置跟隨波形如圖10所示,在反向旋轉(zhuǎn)時,分頻輸出脈沖信號跟隨編碼器脈沖以下降鋸齒波的形式在0~10 000之間變化。
在完成反向運動20 000個脈沖后,電機減速停止到初始位置,開始正向運動。正向運動時,分頻輸出脈沖跟隨編碼器脈沖以上升鋸齒波的形式在0~10 000之間變化,完成正向運動20 000個脈沖??梢钥闯?,分頻輸出角度能夠較好地跟隨編碼器角度。
3? ? 結(jié)語
綜上所述,本文介紹了一種基于定時器和鎖相環(huán)實現(xiàn)伺服系統(tǒng)可變整數(shù)分頻輸出的方法,使用微控制器兩個定時器外設(shè),控制方法上采用比例積分環(huán)節(jié)構(gòu)成鎖相環(huán),無須CPLD或FPGA器件,在伺服系統(tǒng)原有的MCU上就可實現(xiàn),具有明顯的成本優(yōu)勢。通過仿真和實驗,在伺服系統(tǒng)5 000 r/min速度范圍內(nèi),該方法可實現(xiàn)產(chǎn)品要求的35~32 767任意整數(shù)分頻。該方法在低速范圍內(nèi)還可提供倍頻輸出,但囿于定時器PWM的輸出頻率,高速倍頻會受到限制。
[參考文獻]
[1] 丁信忠,嚴彩忠.伺服系統(tǒng)等占空比任意小數(shù)分頻研究[J].微電機,2018,51(7):40-43.
[2] 汪虹,李宏.基于FPGA的等占空比任意整數(shù)分頻器的設(shè)計[J].現(xiàn)代電子技術(shù),2005(16):8-9.
[3] 姜燕平.多摩川絕對式編碼器特點和應(yīng)用[J].電梯工業(yè),2006(1):14-15.
[4] 胡壽松.自動控制原理[M].6版.北京:科學(xué)出版社,2015.
[5] 楊金波,殷春輝,趙晶.正交脈沖分頻系統(tǒng)設(shè)計[J].測控技術(shù),2015,34(7):144-146.
[6] 孫忠瀟.Simulink仿真及代碼生成技術(shù)入門到精通[M].北京:北京航空航天大學(xué)出版社,2015.
收稿日期:2021-11-19
作者簡介:針躍軍(1983—),男,山西人,工程師,研究方向:伺服控制系統(tǒng)。