99久久99久久精品免费看蜜桃,国产性色av一区二区三区,宝贝小嫩嫩好紧好爽h视频,《隔壁放荡人妻bd高清》,噜噜噜噜av夜色在线

  • 頭條利用FPGA,設(shè)計(jì)增量式編碼器的接口電路
    2021-12-23 作者:張圣超 佘洪波  |  來(lái)源:《電氣技術(shù)》  |  點(diǎn)擊率:
    分享到:
    導(dǎo)語(yǔ)現(xiàn)場(chǎng)可編程邏輯陣列(FPGA)資源豐富,結(jié)構(gòu)靈活,近年來(lái)發(fā)展迅猛。針對(duì)其特點(diǎn),本文設(shè)計(jì)了基于FPGA的增量式光電編碼器的接口電路,實(shí)現(xiàn)了對(duì)增量式編碼器脈沖信號(hào)的倍頻、鑒相及計(jì)數(shù)等功能。最后仿真驗(yàn)證了設(shè)計(jì)的可行性。為進(jìn)一步實(shí)現(xiàn)高精度的位置伺服控制提供基礎(chǔ)。

    光電編碼器是目前伺服系統(tǒng)中應(yīng)用最多的傳感器,它通過(guò)光電轉(zhuǎn)換將輸出軸上的機(jī)械幾何位移量轉(zhuǎn)換成脈沖或數(shù)字量。光電編碼器與電機(jī)相連,當(dāng)電機(jī)轉(zhuǎn)動(dòng)時(shí),帶動(dòng)碼盤(pán)旋轉(zhuǎn),便發(fā)出轉(zhuǎn)速或轉(zhuǎn)角信號(hào)。

    目前光電編碼器已經(jīng)普遍應(yīng)用在雷達(dá)、光電經(jīng)緯儀、地面指揮儀、機(jī)器人、數(shù)控機(jī)床和高精度閉環(huán)調(diào)速系統(tǒng)等諸多領(lǐng)域。根據(jù)其刻度方法及信號(hào)輸出形式,可分為增量式、絕對(duì)式以及混合式3種。

    絕對(duì)型編碼器在轉(zhuǎn)軸的每一個(gè)位置均可讀出唯一對(duì)應(yīng)的數(shù)字碼,抗干擾、無(wú)需掉電記憶,但其制造工藝復(fù)雜、價(jià)格是增量型編碼器的幾倍到幾十倍。因此在實(shí)際的應(yīng)用中,增量型編碼器占據(jù)了統(tǒng)治地位。

    增量式編碼器工作原理

    增量式編碼器由光源、碼盤(pán)、檢測(cè)光柵、光電檢測(cè)器件和光電轉(zhuǎn)換電路組成,其原理如圖1所示。

    利用FPGA,設(shè)計(jì)增量式編碼器的接口電路

    圖1 增量式編碼器原理圖

    當(dāng)碼盤(pán)隨同被測(cè)轉(zhuǎn)軸轉(zhuǎn)動(dòng)時(shí),檢測(cè)光柵保持不動(dòng)。光線(xiàn)穿過(guò)碼盤(pán)和檢測(cè)光柵的縫隙照射在光電檢測(cè)器件上,光電檢測(cè)器件即會(huì)輸出相位相差900電度角的近似于正弦波的兩組差分電信號(hào),這兩組差分信號(hào)再經(jīng)脈沖整形轉(zhuǎn)換為普通的單端電平信號(hào),最后對(duì)兩個(gè)單端電平信號(hào)進(jìn)行倍頻、鑒相和計(jì)數(shù)等操作,以得到碼盤(pán)旋轉(zhuǎn)的方向和位置。

    本文旨在解決增量編碼器倍頻、鑒相、計(jì)數(shù)的問(wèn)題,充分利用FPGA豐富的邏輯模塊和IO模塊,設(shè)計(jì)了一種簡(jiǎn)單的接口電路,并行輸出結(jié)果以供進(jìn)一步操作,如圖2所示。

    利用FPGA,設(shè)計(jì)增量式編碼器的接口電路

    圖2 編碼信號(hào)處理模塊

    倍頻、鑒相、計(jì)數(shù)原理分析

    編碼器碼盤(pán)和檢測(cè)光柵有兩組對(duì)應(yīng)的等間距透光縫隙,相互錯(cuò)開(kāi)1/4節(jié)距,用于在旋轉(zhuǎn)過(guò)程中對(duì)光電發(fā)送及接收裝置產(chǎn)生通斷變化,使得光電檢測(cè)器件輸出相位上相差90o的信號(hào)A、B。根據(jù)A和B的相位關(guān)系可判斷出碼盤(pán)的旋轉(zhuǎn)方向。

    當(dāng)A相位超前B90o時(shí),DIR(方向信號(hào))為高電平,電機(jī)正轉(zhuǎn);當(dāng)A滯后B90o時(shí),DIR(方向信號(hào))為低電平,電機(jī)反轉(zhuǎn)。碼盤(pán)信號(hào)經(jīng)過(guò)計(jì)數(shù)器計(jì)數(shù)后得出碼盤(pán)旋轉(zhuǎn)的角度才能轉(zhuǎn)換為位置信息,計(jì)數(shù)器加減以方向信號(hào)為依據(jù)。

    與此同時(shí),碼盤(pán)上還有一個(gè)開(kāi)孔用來(lái)判斷碼盤(pán)的絕對(duì)位置,即碼盤(pán)每旋轉(zhuǎn)一周將產(chǎn)生一個(gè)索引信號(hào)I,有的也用I作為對(duì)位、清零信號(hào)。如圖3所示。

    利用FPGA,設(shè)計(jì)增量式編碼器的接口電路

    圖3 編碼器輸出信號(hào)

    編碼器每旋轉(zhuǎn)一周,A相和B相所輸出的脈沖數(shù)相同,脈沖數(shù)決定了編碼器的精度。

    由圖3可知,在一個(gè)編碼脈沖輸出周期中,A和B信號(hào)共產(chǎn)生了4個(gè)跳變沿。捕捉每個(gè)跳變并且進(jìn)行計(jì)數(shù),即:當(dāng)A為高電平時(shí),B在上升沿則加1,下降沿則減1;A為低電平時(shí),B在下降沿則減l,上升沿則加l;B為高電平時(shí),A在上升沿則減1,下降沿則加l;在B為低電平時(shí),A在上升沿則加1,下降沿則減l。

    如此在每個(gè)周期內(nèi),碼盤(pán)正轉(zhuǎn)時(shí)計(jì)數(shù)4次,反轉(zhuǎn)時(shí)也計(jì)數(shù)4次,使計(jì)數(shù)脈沖數(shù)量增加了4倍。若一個(gè)編碼脈沖信號(hào)量化誤差為φ,則四倍頻后的量化誤差降為φ/4,其角位移的測(cè)量精度提高了4倍,同時(shí)光電碼盤(pán)的分辨率也提高了4倍。

    信號(hào)四倍頻設(shè)計(jì)的關(guān)鍵在于捕捉A、B信號(hào)的上升沿和下降沿。本設(shè)計(jì)采用數(shù)字型電路即D觸發(fā)器作為延遲環(huán)節(jié)來(lái)檢測(cè)邊沿的變化,A、B相倍頻脈沖寬度和延時(shí)時(shí)間均由時(shí)鐘(外部有源晶振提供)控制,倍頻后的脈沖寬度一致,可以有效地克服傳統(tǒng)RC微分型或積分型邊沿檢測(cè)電路的不足。

    A、B信號(hào)經(jīng)D觸發(fā)器后的信號(hào)分別記為A1、B1。將A1、B1作為倍頻的原始信號(hào),將消除A、B信號(hào)中尖脈沖帶來(lái)的影響,提高了系統(tǒng)的抗干擾性能。A1、B1再經(jīng)過(guò)一個(gè)D觸發(fā)器,延時(shí)一個(gè)時(shí)鐘周期,將產(chǎn)生A2、B2信號(hào)。

    即A2、B2分別滯后A1、B1一個(gè)時(shí)鐘周期,且A1、A2的相位分別滯后B1、B290o(假定此時(shí)電機(jī)反轉(zhuǎn),B1超前A190o),為了實(shí)現(xiàn)預(yù)期目的,需要能夠完全捕捉到一個(gè)周期內(nèi)脈沖的上升沿和下降沿,即圖4的圓黑點(diǎn)。

    從圖4中虛線(xiàn)所示的狀態(tài)可知,A1和A2,B1和B2兩組信號(hào)里都有一組不同的電平狀態(tài),故采用3個(gè)異或門(mén)以求得信號(hào)的4倍頻信號(hào)F4_CLK。與此同時(shí),采用兩個(gè)與非門(mén)來(lái)求得方向信號(hào)。

    利用FPGA,設(shè)計(jì)增量式編碼器的接口電路

    圖4 A、B信號(hào)經(jīng)D觸發(fā)器后的信號(hào)圖

    光電編碼器線(xiàn)數(shù)為1024,四倍頻后旋轉(zhuǎn)一圈產(chǎn)生4096個(gè)脈沖,其精度為0.0879o。為滿(mǎn)足精度要求,本設(shè)計(jì)采用的是16位可逆計(jì)數(shù)器,計(jì)數(shù)范圍為-65536~65535,利用Altera公司的設(shè)計(jì)軟件自帶的LPM(宏功能模塊)模塊實(shí)現(xiàn)該計(jì)數(shù)模塊。

    接口電路的設(shè)計(jì)與實(shí)現(xiàn)

    本設(shè)計(jì)使用的軟件是Altera公司的Quartus II,選用的芯片是CycloneⅢ的EP3C16Q240。該芯片有15408個(gè)邏輯單元,56個(gè)乘法器,4個(gè)鎖相環(huán),20個(gè)全局時(shí)鐘網(wǎng)絡(luò),存儲(chǔ)器容量為504Kbit,最高工頻率可為437.5MHz,輸入輸出電壓3.3V[8],如此強(qiáng)大的資源足以實(shí)現(xiàn)設(shè)計(jì)預(yù)期的功能。

    1 子模塊的原理圖設(shè)計(jì)

    FPGA具有動(dòng)態(tài)可系統(tǒng)重構(gòu)和靜態(tài)可重復(fù)編程的特性,使得可以像軟件一樣通過(guò)編程來(lái)修改硬件的功能。我們可以通過(guò)原理圖輸入或者HDL(硬件描述語(yǔ)言)來(lái)設(shè)計(jì)實(shí)現(xiàn)一個(gè)數(shù)字系統(tǒng)。根據(jù)上一節(jié)原理的介紹,生成倍頻、鑒相、計(jì)數(shù)模塊的頂層文件原理圖,如圖5所示。

    利用FPGA,設(shè)計(jì)增量式編碼器的接口電路

    圖5 頂層原理圖

    其中,輸入為正交編碼信號(hào)A、B,輸出為16位計(jì)數(shù)結(jié)果。該頂層原理圖分為兩部分,一個(gè)是倍頻、鑒相模塊,如圖6所示;一個(gè)是使用自帶的宏功能模塊實(shí)現(xiàn)的計(jì)數(shù)模塊。編碼信號(hào)經(jīng)倍頻、鑒相后產(chǎn)生四倍頻信號(hào)F4_CLK、方向信號(hào)ENADD,再經(jīng)過(guò)pluse_count實(shí)現(xiàn)16位可逆計(jì)數(shù)功能。當(dāng)ENADD為高電平即碼盤(pán)正轉(zhuǎn)時(shí),實(shí)現(xiàn)加法計(jì)數(shù);當(dāng)ENADD為低電平即碼盤(pán)反轉(zhuǎn)時(shí),實(shí)現(xiàn)減法計(jì)數(shù)。

    利用FPGA,設(shè)計(jì)增量式編碼器的接口電路

    圖6 倍頻、鑒相原理圖

    2 編譯及下載

    在Quartus II中依次進(jìn)行如下操作:新建工程、選擇目標(biāo)芯片、繪制原理圖、管腳分配、芯片參數(shù)及配置選項(xiàng)設(shè)置,即可對(duì)設(shè)計(jì)文件進(jìn)行編譯。

    編譯完成后將在工程文件夾下將生成后綴名為sof和pof的兩個(gè)下載文件,這兩個(gè)文件的區(qū)別在于:前者是通過(guò)JTAG口下載到FPGA芯片中(配置FPGA芯片),直接運(yùn)行程序,而掉電后程序消失;后者是通過(guò)AS口下載到配置芯片中,上電后將自動(dòng)完成配置,運(yùn)行程序。

    前者下載的速度快,一般用于FPGA的調(diào)試過(guò)程;而后者由于是燒寫(xiě)EPCS配置芯片(實(shí)際上是串行FLASH),速度較慢,一般用于開(kāi)發(fā)后期的程序固化。本次設(shè)計(jì)也是遵循調(diào)試階段采用JTAG模式燒寫(xiě)下載,待程序確定后采用AS模式燒寫(xiě)下載[11]。

    波形仿真及分析

    編譯通過(guò)后,我們使用Quartus II自帶的仿真器進(jìn)行功能仿真以驗(yàn)證設(shè)計(jì)的邏輯是否正確。在建立矢量源文件時(shí),首先設(shè)置編碼信號(hào)A超前B 90o得到仿真結(jié)果如圖7所示;然后設(shè)置編碼信號(hào)B超前A 90o得到仿真結(jié)果如圖8所示。

    從圖7、圖8中可以看出,當(dāng)信號(hào)A超前B 90o即電機(jī)正轉(zhuǎn)時(shí),方向信號(hào)為高電平,實(shí)現(xiàn)四倍頻且一個(gè)周期內(nèi)加法計(jì)數(shù)4次;反之,當(dāng)信號(hào)B超前A 90o即電機(jī)反轉(zhuǎn)時(shí),方向信號(hào)為低電平,同樣實(shí)現(xiàn)四倍頻且一個(gè)周期內(nèi)減法計(jì)數(shù)4次。由此可知,仿真結(jié)果與理論分析完全一致,本接口電路邏輯正確,具有實(shí)際意義。

    在實(shí)際調(diào)試階段中,連接好編碼器和電路板,通過(guò)QuartusII的Signaltap II來(lái)捕捉和顯示實(shí)時(shí)信號(hào),所得的結(jié)果與預(yù)期也是一致的,從而進(jìn)一步驗(yàn)證了設(shè)計(jì)的可靠性。

    利用FPGA,設(shè)計(jì)增量式編碼器的接口電路

    圖7 信號(hào)A超前B 90o仿真結(jié)果

    利用FPGA,設(shè)計(jì)增量式編碼器的接口電路

    圖8 信號(hào)B超前A 90o仿真結(jié)果

    小結(jié)

    基于FPGA的增量式編碼器的接口設(shè)計(jì)實(shí)現(xiàn)了對(duì)編碼信號(hào)數(shù)據(jù)的采集和處理,克服了使用ASIC(專(zhuān)用集成電路)對(duì)數(shù)據(jù)進(jìn)行處理而產(chǎn)生的編譯復(fù)雜、通用性差等缺點(diǎn)。該接口電路具有適用性好、集成度高、抗干擾性強(qiáng)、運(yùn)行可靠、數(shù)據(jù)處理快等優(yōu)點(diǎn),適用于各種需要使用增量式編碼器測(cè)量位置和速度的場(chǎng)合。

    本文編自《電氣技術(shù)》,標(biāo)題為“基于FPGA的增量式編碼器接口電路的設(shè)計(jì)”,作者為張圣超、佘洪波。