国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA 的電子齒輪比設(shè)計(jì)與實(shí)現(xiàn)

2014-01-13 10:06:48劉繼磊毛立峰張松飛
微特電機(jī) 2014年3期
關(guān)鍵詞:倍頻伺服系統(tǒng)上位

劉繼磊,毛立峰,陶 俊,張松飛

(中國船舶重工第七〇四研究所,上海200031)

0 引 言

目前無法通過速度控制來實(shí)現(xiàn)伺服系統(tǒng)的精確定位,需要結(jié)合位置控制方式。利用上位控制裝置發(fā)出特定頻率和個數(shù)的脈沖指令來控制電機(jī)的轉(zhuǎn)速和轉(zhuǎn)過的角度,將光電編碼器的輸出信號作為伺服系統(tǒng)的位置反饋信號,根據(jù)編碼器輸出的脈沖數(shù)對電機(jī)進(jìn)行精確定位。對于傳動比一定的交流伺服系統(tǒng),伺服電機(jī)每轉(zhuǎn)一圈產(chǎn)生的機(jī)械軸位移量是一定的,當(dāng)指令脈沖對應(yīng)的機(jī)械軸位移量和位置反饋脈沖對應(yīng)的機(jī)械軸位移量不一致時,需要利用電子齒輪進(jìn)行調(diào)整[1]。

1 電子齒輪比的功能框圖

在伺服系統(tǒng)中,電子齒輪比是指來自于電機(jī)編碼器反饋脈沖與上位機(jī)指令脈沖的一個比值。它可以對上位機(jī)發(fā)出的脈沖頻率進(jìn)行放大或者縮小,通過電子齒輪比的參數(shù)值設(shè)定,可以在機(jī)械齒輪外部設(shè)定速度指令不變的情況下,靈活地改變電機(jī)的速比,以匹配用戶實(shí)際應(yīng)用。由于它是通過電子器件(本文采用FPGA)來實(shí)現(xiàn)的類似機(jī)械齒輪的速比變化,所以稱為電子齒輪比[1]。可以按照公式ΔL =ΔM×A/B(其中A/B 為電子齒輪比,ΔL 和ΔM 分別為指令脈沖當(dāng)量和反饋脈沖當(dāng)量)進(jìn)行計(jì)算,這里的ΔM=(其中W 為絲杠螺距,PG為光電編碼器線數(shù))。帶有電子齒輪比的交流伺服系統(tǒng)結(jié)構(gòu)圖,如圖1 所示。

圖1 帶有電子齒輪比的交流伺服系統(tǒng)結(jié)構(gòu)圖

圖1 中,在機(jī)械結(jié)構(gòu)的減速比和編碼器脈沖數(shù)一定的情況下,上位控制裝置(CNC:計(jì)算機(jī)數(shù)字控制)發(fā)出的指令脈沖,經(jīng)過相關(guān)處理后,借助電子齒輪比來匹配交流伺服電機(jī)發(fā)出的脈沖數(shù)與機(jī)械最小移動量,實(shí)現(xiàn)電機(jī)的高精度運(yùn)動控制[2]。

2 位置指令脈沖處理

在交流伺服應(yīng)用系統(tǒng)中,來自上位控制裝置(CNC)的位置指令脈沖[3-4]主要是:“脈沖+ 方向”、“正反兩向CW+CCW 脈沖”(其中CW 是從伺服電機(jī)的軸向觀察,順時針方向旋轉(zhuǎn),定義為反方向;CCW 是從伺服電機(jī)的軸向觀察,逆時針方向旋轉(zhuǎn),定義為正方向)、“A,B 兩相正交脈沖”。如圖2 所示。

圖2 位置指令脈沖的三種常見形式

圖2 中的三種不同形式的指令脈沖都代表電機(jī)的轉(zhuǎn)向和電機(jī)轉(zhuǎn)過的角度,其中只有“脈沖+方向”的指令形式可以進(jìn)行計(jì)數(shù),因此需將其余兩種指令脈沖轉(zhuǎn)換成“脈沖+方向”形式,這部分工作可由FPGA 來完成,通過硬件描述語言(VHDL)進(jìn)行實(shí)現(xiàn)。有關(guān)位置指令脈沖處理方案如圖3 所示。

圖3 位置指令脈沖處理方案簡圖

由圖3 可知,三種形式的脈沖指令通過輸入指令選擇模塊及鑒相模塊,最終轉(zhuǎn)化為“脈沖+方向”的指令形式。

3 整數(shù)分倍頻基本原理

由前文可知,電子齒輪比可以用來匹配位置指令脈沖數(shù)與機(jī)械負(fù)載軸最小移動量的對應(yīng)關(guān)系,其數(shù)學(xué)表達(dá)式A/B 中的A 和B 分別代表倍頻系數(shù)和分頻系數(shù),上位機(jī)給定的脈沖信號經(jīng)過A 倍頻和B分頻后就可以得到和輸入信號成某種對應(yīng)關(guān)系的輸出信號,該輸出信號對應(yīng)負(fù)載軸相應(yīng)的移動量。因?yàn)锳 和B 都是整數(shù)(范圍一般在1 ~65 535 之間),所以電子齒輪比的實(shí)現(xiàn)相對小數(shù)分倍頻要容易許多。在全數(shù)字交流伺服應(yīng)用系統(tǒng)中,電子齒輪比應(yīng)滿足條件:0.01≤100。關(guān)于整數(shù)分頻倍頻方法,現(xiàn)簡要介紹如下:

3.1 整數(shù)分頻原理

鑒于伺服系統(tǒng)中脈沖信號常常是等占空比的,這里僅對等占空比的整數(shù)分頻的實(shí)現(xiàn)方法進(jìn)行簡要介紹。針對等占空比偶數(shù)分頻器的設(shè)計(jì),常采用以下方法:用模為-1(其中N 代表分頻系數(shù))的計(jì)數(shù)器對待分頻脈沖進(jìn)行計(jì)數(shù)。當(dāng)從0 計(jì)數(shù)到-1時,輸出脈沖信號翻轉(zhuǎn),同時對計(jì)數(shù)器進(jìn)行置位,當(dāng)下一個脈沖到來時重新開始計(jì)數(shù),如此循環(huán),即可得到N 分頻器。針對等占空比奇數(shù)分頻器的設(shè)計(jì),需要設(shè)計(jì)兩個計(jì)數(shù)器,一個計(jì)數(shù)器采用分頻時鐘信號的上升沿觸發(fā),另一個計(jì)數(shù)器采用分頻時鐘信號的下降沿觸發(fā),對得到的兩組脈沖信號,進(jìn)行邏輯或運(yùn)算,就可得到一組所需的等占空比奇數(shù)分頻信號[5]。

3.2 整數(shù)倍頻原理

在數(shù)字電路設(shè)計(jì)中,可采用除法器解決整數(shù)倍頻問題。有關(guān)除法器的FPGA 實(shí)現(xiàn)方法可參考文獻(xiàn)[6]。關(guān)于整數(shù)倍頻的基本方法如下:

在需倍頻信號pulse_mid 的高電平階段,對時鐘信號sysclk(其頻率遠(yuǎn)大于pulse_mid)進(jìn)行計(jì)數(shù),得到時鐘信號sysclk 的周期個數(shù)cnt;采用除法器得到cnt0 =cnt/倍頻系數(shù);設(shè)置一個初始電平為高的信號sign,用時鐘信號sysclk 計(jì)數(shù)到cnt0,同時信號sign 電平翻轉(zhuǎn),在信號sign 的低電平階段重新對時鐘信號sysclk 計(jì)數(shù)到cnt0,電平再次翻轉(zhuǎn),如此循環(huán)就可得到所需的倍頻信號pulse_midb。

3.3 電子齒輪比的FPGA 實(shí)現(xiàn)及驗(yàn)證

以電子齒輪比為4/3(這里A =4,B =3;下文程序中的m 就是這里的A,n 就是這里的B)的設(shè)計(jì)為例來給出基于FPGA 的電子齒輪比一般設(shè)計(jì)方法。采用硬件描述語言VHDL,進(jìn)行模塊化程序設(shè)計(jì)[5,7](注意:程序在各進(jìn)程之間是并行執(zhí)行的,在各進(jìn)程的內(nèi)部是順序執(zhí)行的),主要包括:位置指令處理模塊、倍頻模塊、分頻模塊三部分。這里重點(diǎn)介紹位置指令處理模塊和倍頻模塊。

3.3.1 位置指令處理模塊

上文提到,除了可被計(jì)數(shù)器計(jì)數(shù)的“脈沖+方向”指令形式外,上位機(jī)指令還可能是“A,B 兩相正交脈沖”或者“正反兩相CW +CCW 脈沖”,如圖3所示。必須將“A,B 兩相正交脈沖”或者“正反兩相CW+CCW 脈沖”轉(zhuǎn)化為“脈沖+ 方向”的指令形式,按照前面提到的方案進(jìn)行轉(zhuǎn)換,具體實(shí)現(xiàn)的流程圖如圖4 所示。

圖4 位置指令脈沖處理流程圖

圖4 中,當(dāng)系統(tǒng)時鐘信號sysclk 上升沿到來時,進(jìn)程1 是通過軟件設(shè)置mode 信號對上位機(jī)可能輸入的三種指令脈沖進(jìn)行選擇;進(jìn)程2 是對來自上位機(jī)的三種可能輸入脈沖進(jìn)行處理(其中“脈沖+方向”形式的輸入指令不需進(jìn)行處理)。由于A,B 兩相脈沖相位相差90°,可以根據(jù)A,B 兩相脈沖的相位變化關(guān)系對電機(jī)進(jìn)行鑒相[7-8];關(guān)于“正反兩向CW +CCW”指令脈沖,由于在同一時刻CW、CCW 信號電平不同時為高,可以通過RS 觸發(fā)器實(shí)現(xiàn)鑒相[7-8]。

3.3.2 倍頻模塊

位置指令脈沖經(jīng)過上面的相關(guān)處理,得到了統(tǒng)一的“脈沖+方向”形式,下面要對選擇到的脈沖信號進(jìn)行倍頻處理,這里要實(shí)現(xiàn)脈沖信號的4 倍頻,根據(jù)上述介紹的整數(shù)倍頻的相關(guān)方法,運(yùn)用VHDL 語言進(jìn)行程序設(shè)計(jì),部分程序如下。

進(jìn)程3 的主要功能是:在待倍頻脈沖pulse_mid的高電平處對高頻脈沖(此處高頻脈沖為系統(tǒng)時鐘sysclk,此脈沖的頻率應(yīng)該遠(yuǎn)大于pulse_mid)進(jìn)行計(jì)數(shù),設(shè)置一信號sign 初始為高電平(1 有效),在pulse_mid 變?yōu)榈碗娖降臅r刻,即pulse_mid 的下降沿將計(jì)數(shù)值保存,此時的計(jì)數(shù)值cnt_pm 作為下面除法器的被除數(shù)dividend,同時在pulse_mid 下降沿將計(jì)數(shù)值cnt_pm 清零,為下次在pulse_mid 的高電平重新計(jì)數(shù)做準(zhǔn)備。

進(jìn)程4 的主要功能是除法器。整體上理解為上一步計(jì)數(shù)值cnt_pm 除以m(倍頻系數(shù))得到一個商,該商作為進(jìn)程5 產(chǎn)生倍頻脈沖的基準(zhǔn)。

進(jìn)程5 的主要功能是以除法器得到的商為基準(zhǔn)產(chǎn)生倍頻脈沖。具體實(shí)現(xiàn)方法:當(dāng)高頻脈沖(系統(tǒng)時鐘sysclk)的上升沿到來時,對高頻脈沖進(jìn)行計(jì)數(shù)到進(jìn)程3 產(chǎn)生的商quo,每計(jì)數(shù)到商quo 時,電平就進(jìn)行反轉(zhuǎn),最終產(chǎn)生四倍頻脈沖信號pulse_midb。

3.3.3 分頻模塊

采用上述介紹的奇數(shù)分頻的方法,運(yùn)用VHDL語言進(jìn)行程序設(shè)計(jì),對上述四倍頻脈沖信號pulse_midb 進(jìn)行三分頻(n=3)。

在Xilinx 型FPGA 開發(fā)環(huán)境ISE 9. 1i 下進(jìn)行VHDL 程序設(shè)計(jì),在程序中設(shè)置電子齒輪比的分子A 為4(程序中m =4),分母B 為3(程序中n =3),經(jīng)過編譯和分析綜合,利用專業(yè)軟件Modelsim XEIII 6.2C 進(jìn)行仿真,得到如圖5 所示的仿真波形。

圖5 電子齒輪比為4/3 的仿真波形圖

由圖5 可知,上位機(jī)發(fā)給FPGA 的三種位置指令均被轉(zhuǎn)化為“脈沖+方向”的指令形式,并且在三種模式下,輸出信號脈沖的頻率是對應(yīng)的輸入脈沖頻率的4/3 倍,從而證明了基于FPGA 的電子齒輪比為4/3 的數(shù)字實(shí)現(xiàn)的正確性。為進(jìn)一步論證本文提出的基于FPGA 的電子齒輪比設(shè)計(jì)方案的正確性,在交流伺服系統(tǒng)硬件板卡上(如圖6 所示)進(jìn)行相關(guān)實(shí)驗(yàn),可得如圖7 所示的實(shí)驗(yàn)波形圖。

圖6 交流伺服系統(tǒng)硬件板卡實(shí)物連接圖

圖7 電子齒輪比為4/3 的實(shí)驗(yàn)波形(截圖)

由圖7 可知,輸入周期為400 μs 的A,B 兩相正交脈沖(如圖7(a)所示),經(jīng)過電子齒輪比為4/3 的模塊處理后,最終輸出周期為300 μs 的兩相正交脈沖(如圖7(b)所示),完成了輸入脈沖與輸出脈沖之間的匹配,從而有力證明了本文所提出的基于FPGA 的電子齒輪比設(shè)計(jì)與實(shí)現(xiàn)方案的正確性與可行性。

4 結(jié) 語

本文在介紹電子齒輪比功能的基礎(chǔ)上,利用FPGA 實(shí)現(xiàn)了將伺服系統(tǒng)中三種常見上位機(jī)位置指令脈沖轉(zhuǎn)換為可被直接計(jì)數(shù)的指令形式,尤其是以電子齒輪比4/3 的數(shù)字實(shí)現(xiàn)為例,詳細(xì)講述了基于FPGA 電子齒輪比設(shè)計(jì)與實(shí)現(xiàn)的一般方法,經(jīng)過仿真和試驗(yàn),結(jié)果表明:本文提出的電子齒輪比設(shè)計(jì)與實(shí)現(xiàn)方法是完全正確可行的,具有一定的工程價(jià)值。

[1] 胡慶波,呂征宇.全數(shù)字伺服系統(tǒng)中位置環(huán)和電子齒輪的設(shè)計(jì)[J].電源技術(shù),2004,7(6):348-351.

[2] 李寧,徐俊. 電子齒輪原理及其實(shí)現(xiàn)[J]. 電氣傳動,2002,32(3):53-55.

[3] SUGIMOTO H,ICHIKAWA T,HOSOI K. Magnetic pole position detection method and control of a brushless DC servomotor with incremental encoder[J]. Electrical Engineer in Japan,2003,145(4):64-77.

[4] 李海春.FPGA/CPLD 在交流伺服系統(tǒng)中的應(yīng)用[D]. 武漢:華中科技大學(xué),2008.

[5] 盧毅.VHDL 與數(shù)字電路設(shè)計(jì)[M].北京:科學(xué)出版社,2001.04.

[6] 周殿鳳,王俊華.基于FPGA 的32 位除法器設(shè)計(jì)[J]. 信息化研究,2010,36(3):26-28.

[7] 張寶泉,楊世興,趙永秀.編碼器倍頻、鑒相電路在FPGA 中的實(shí)現(xiàn)[J].工礦自動化,2005(4):69-71.

[8] 王冰,王新民,劉繼磊,等.電子齒輪比在FPGA 中的實(shí)現(xiàn)[J].微電機(jī),2011,44(7):104-106,115.

猜你喜歡
倍頻伺服系統(tǒng)上位
北京航空航天大學(xué)學(xué)報(bào)(2022年6期)2022-07-02 01:59:46
基于復(fù)合前饋模糊PID的位置伺服系統(tǒng)研究
特斯拉 風(fēng)云之老阿姨上位
車迷(2018年12期)2018-07-26 00:42:22
“三扶”齊上位 決戰(zhàn)必打贏
基于ZigBee和VC上位機(jī)的教室智能監(jiān)測管理系統(tǒng)
基于自適應(yīng)反步的DGMSCMG框架伺服系統(tǒng)控制方法
基于LBO晶體三倍頻的激光實(shí)驗(yàn)系統(tǒng)的研究
脈沖單頻Nd∶YVO4激光器及其倍頻輸出特性研究
以新思路促推現(xiàn)代農(nóng)業(yè)上位
消除彈道跟蹤數(shù)據(jù)中伺服系統(tǒng)的振顫干擾
弋阳县| 台南市| 新余市| 乳山市| 日喀则市| 宁南县| 翁源县| 鸡泽县| 岳阳市| 武汉市| 泸定县| 金坛市| 金沙县| 汉沽区| 山东省| 烟台市| 兰考县| 东兰县| 阳朔县| 镇宁| 新平| 南华县| 景东| 九龙县| 桂东县| 泽普县| 南雄市| 仙桃市| 丰镇市| 天全县| 临西县| 吴川市| 塘沽区| 上虞市| 陆河县| 屏东县| 开封市| 四川省| 三河市| 体育| 景谷|