• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    精密運(yùn)動(dòng)控制方法在球面打標(biāo)機(jī)中的應(yīng)用研究

    2012-09-27 01:41:18王少輝程鐵漢
    電子設(shè)計(jì)工程 2012年3期
    關(guān)鍵詞:步數(shù)指令運(yùn)算

    姚 遙,王少輝,程鐵漢

    (1.周口師范學(xué)院 物理與電子工程系,河南 周口 466001;2.河南平高電氣股份有限公司 河南 平頂山 467000)

    精密運(yùn)動(dòng)控制方法在球面打標(biāo)機(jī)中的應(yīng)用研究

    姚 遙1,王少輝1,程鐵漢2

    (1.周口師范學(xué)院 物理與電子工程系,河南 周口 466001;2.河南平高電氣股份有限公司 河南 平頂山 467000)

    針對國家對鋼印標(biāo)記的要求和現(xiàn)有球面打標(biāo)機(jī)在打標(biāo)精度、速度方面的不足,提出一種基于FPGA(現(xiàn)場可編程邏輯門陣列)的步進(jìn)電機(jī)伺服控制器設(shè)計(jì)。設(shè)計(jì)中采用了改進(jìn)的比較積分法和S型加減速控制方法,并對可能產(chǎn)生的誤差進(jìn)行了研究和解決。實(shí)驗(yàn)結(jié)果表明,該控制器可以有效的提高打印標(biāo)記的精度和速度。該控制器已成功應(yīng)用于球面打標(biāo)機(jī)中。

    球面打標(biāo)機(jī);現(xiàn)場可編程邏輯門陣列;比較積分法;S型加減速;誤差分析

    高壓容器鋼瓶按國家標(biāo)準(zhǔn)規(guī)定在出廠前必須進(jìn)行嚴(yán)格的質(zhì)量檢查?!稓馄堪踩O(jiān)察規(guī)程》(2000版)第二章第12條規(guī)定:氣瓶的鋼印標(biāo)記是識別氣瓶的依據(jù),鋼印標(biāo)記必須準(zhǔn)確、清晰,并對鋼印的位置和內(nèi)容進(jìn)行了詳細(xì)的規(guī)定[1]。打標(biāo)機(jī)的控制器的性能的優(yōu)劣直接影響打印質(zhì)量,目前控制器核心主要由單片機(jī)實(shí)現(xiàn),通過單片機(jī)收發(fā)打印指令、指令運(yùn)算、生成步進(jìn)脈沖,單片機(jī)的工作是相當(dāng)繁重的,提高打印速度就容易產(chǎn)生掉筆、缺字現(xiàn)象,不符合標(biāo)準(zhǔn)規(guī)定。廖欣[2]提出采用基于FPGA的PCI伺服控制卡實(shí)現(xiàn)步進(jìn)電機(jī)控制器,但其核心算法采用的是梯形加減速控制算法,打印速度較低,生產(chǎn)效率不高。本文采用FPGA作為打標(biāo)機(jī)的控制核心,核心算法采用改進(jìn)的比較積分法和S型加減速控制方法,能夠在提高打印速度的情況下達(dá)到打字準(zhǔn)確、清晰、不掉筆、缺字。

    1 FPGA控制器設(shè)計(jì)

    本球面打標(biāo)機(jī)控制器的FPGA采用了ALTERA公司的Cyclone系列產(chǎn)品EP1C3和QuartusII集成開發(fā)環(huán)境。Cyclone系列是ALTERA中等規(guī)模FPGA,EP1C3有2 910個(gè)邏輯單元,支持接近5萬門的設(shè)計(jì),內(nèi)嵌RAM共59 904 bits,可配置為用戶程序RAM,也可以配置為雙口RAM或FIFO存儲器,完全滿足系統(tǒng)的設(shè)計(jì)要求[3]。

    FPGA功能總體設(shè)計(jì)框圖如圖1所示。

    圖1 FPGA功能框圖Fig.1 FPGA functional block diagram

    整個(gè)FPGA模塊采用VHDL開發(fā)[4]。各模塊功能簡述如下:

    核心控制器主要負(fù)責(zé)將存儲器中的數(shù)據(jù)讀出,然后分發(fā)到插補(bǔ)器和升降頻控制器中;處理外部反饋信號,并生成特定的反饋數(shù)據(jù)格式通過總線發(fā)送到主機(jī)。同時(shí)根據(jù)插補(bǔ)器的完成狀態(tài),給出內(nèi)部控制信號,協(xié)調(diào)各個(gè)模塊的工作。在前一條指令讀出后,如果數(shù)據(jù)存儲器內(nèi)還有指令,則將該指令讀出,在前一條指令執(zhí)行完成后,馬上開始執(zhí)行。核心控制器中還包含多個(gè)狀態(tài)寄存器,在各種事件發(fā)生后將其置位,以便主機(jī)獲取狀態(tài)。

    加減速控制器負(fù)責(zé)按照核心控制器從數(shù)據(jù)指令中給定的初始速度和末速度給出步進(jìn)脈沖,送插補(bǔ)器作為參考輸出脈沖。

    插補(bǔ)器的作用是根據(jù)核心控制器提供的信號,分別選通各個(gè)軸的輸出脈沖,最終實(shí)現(xiàn)插補(bǔ)脈沖輸出。

    位置反饋是將本地的輸出脈沖計(jì)數(shù),得到打印頭當(dāng)前位置,通過核心控制器可以將打印頭位置讀到主機(jī)上。

    2 運(yùn)動(dòng)控制方法

    運(yùn)動(dòng)控制系統(tǒng)中,控制方法對于其實(shí)現(xiàn)不同的性能要求起著關(guān)鍵的作用。在FPGA中的控制方法主要包含插補(bǔ)運(yùn)算和加減速控制兩部分,下面對其分別進(jìn)行闡述。

    2.1 插補(bǔ)運(yùn)算

    球面打標(biāo)機(jī)在實(shí)際加工中有自由曲線、曲面、方程曲線和曲面體構(gòu)成的復(fù)雜零件輪廓,還有一系列實(shí)驗(yàn)或經(jīng)驗(yàn)數(shù)據(jù)表示的、沒有表達(dá)輪廓形狀的曲線方程的曲線,理論上,應(yīng)該保證針頭中心軌跡應(yīng)與零件輪廓形狀一致,但實(shí)際上,筆者只能通過一系列的直線或圓弧去逼近它。

    插補(bǔ)的任務(wù)就是根據(jù)進(jìn)給速度的要求,在輪廓起點(diǎn)和終點(diǎn)之間計(jì)算出若干個(gè)中間點(diǎn)的坐標(biāo)值。由于每個(gè)中間點(diǎn)計(jì)算所需的時(shí)間直接影響系統(tǒng)的控制速度,而插補(bǔ)中間點(diǎn)坐標(biāo)值的計(jì)算精度又影響到系統(tǒng)的控制精度,所以插補(bǔ)算法對整個(gè)系統(tǒng)的性能指標(biāo)至關(guān)重要。

    按照運(yùn)算方式分,常用的插補(bǔ)方法有:逐點(diǎn)比較法、數(shù)字積分法、時(shí)間分割法、數(shù)字脈沖乘法器法、比較積分法等。不管是以哪一種方式實(shí)現(xiàn)插補(bǔ),其基本原理都是相同的。在現(xiàn)場應(yīng)用中,選取何種插補(bǔ)運(yùn)算方法,可以用算法簡便程度、插補(bǔ)精度高低、執(zhí)行時(shí)間長短來評價(jià)。

    本設(shè)計(jì)中在PC機(jī)上已經(jīng)將曲線分段,得到每段直線各軸的步數(shù)、方向和速度。在已知直線運(yùn)動(dòng)步數(shù)的情況下,按照設(shè)定速度產(chǎn)生一個(gè)基準(zhǔn)參考脈沖,各軸需要的脈沖從該參考脈沖中提取。為在FPGA中方便運(yùn)算,所有的速度都轉(zhuǎn)換為周期數(shù)(本設(shè)計(jì)中采用的是100 ns的整數(shù)倍)進(jìn)行運(yùn)算。這樣,就能很容易產(chǎn)生給定頻率的脈沖。文中采用的是改進(jìn)的比較積分法[2]適合FPGA運(yùn)算,單軸算法實(shí)現(xiàn)框圖如圖2所示。

    在系統(tǒng)時(shí)鐘的控制下,每當(dāng)檢測到一個(gè)參考脈沖的邊沿,就啟動(dòng)一次該算法。參考脈沖根據(jù)當(dāng)前的輸出脈沖周期決定。在所有的軸都完成運(yùn)動(dòng)指定步數(shù)后結(jié)束整個(gè)算法。從圖中可以看出,每一路算法相同。該算法優(yōu)于普通數(shù)字積分算法在于插補(bǔ)脈沖都是均勻的輸出,這對于直線運(yùn)動(dòng)時(shí)的平穩(wěn)度很重要。另一個(gè)優(yōu)點(diǎn)在于適合FPGA運(yùn)算,因?yàn)樗荛_了非常耗資源的乘除法運(yùn)算,只有加減法運(yùn)算,并且可以很方便地?cái)U(kuò)充為多路插補(bǔ)運(yùn)動(dòng),而VHDL程序只需要很小的修改。

    圖3是兩路插補(bǔ)輸出的SingalTap波形,分別輸出9、5個(gè)脈沖。

    圖2 直線插補(bǔ)算法Fig.2 Linear interpolation algorithm

    圖3 兩路插補(bǔ)SingalTap波形Fig.3 Two-way waveform interpolation SingalTap

    從圖中可以看出,插補(bǔ)點(diǎn)正好均勻分布,達(dá)到插補(bǔ)要求。

    2.2 加減速控制

    打標(biāo)機(jī)做直線運(yùn)動(dòng)最復(fù)雜的就是電機(jī)的加減速控制,為了防止電機(jī)失步,不能直接發(fā)送給定頻率的脈沖,需要有加速和減速的過程。加減速控制有兩種方法,梯形方法和S型方法。如圖4所示,梯形方法是采用恒定加速度,S型方法是采用變加速度和恒定加速度的2次加速方案。

    圖4 加減速控制曲線Fig.4 Acceleration and deceleration control curve

    傳統(tǒng)梯型加減速實(shí)現(xiàn)簡單,計(jì)算方便,適用于低速、低精度要求的場合。但是在變速點(diǎn)存在速度突變,對系統(tǒng)造成柔性沖擊,不適用于高速、高精度要求的場合。S型加減速控制方式速度過渡平滑,加速度與加加速度變化平穩(wěn),提高了高速打標(biāo)系統(tǒng)的柔性,適用于高速、高精度要求的場合,所以本設(shè)計(jì)采用的是S型加減速控制方法。程序框圖[5]如圖5所示。

    圖5 S型加減速程序框圖Fig.5 S-type acceleration and deceleration block diagram

    實(shí)驗(yàn)得到,利用梯形加速,電機(jī)從速度0加速到頻率200 kHz,加速時(shí)間最短在0.4 s左右,而用S型可以在不到0.1 s內(nèi)成功啟動(dòng)。

    圖6是兩路插補(bǔ)加速輸出的SingalTap波形。

    圖6 S型加速插補(bǔ)SingalTap波形Fig.6 S-type acceleration waveform interpolation SingalTap

    圖中第一個(gè)波形就是參考脈沖輸出,后面兩個(gè)分別是插補(bǔ)兩個(gè)軸的輸出脈沖。明顯可以看出輸出頻率不斷增加,實(shí)現(xiàn)的加速功能。

    3 系統(tǒng)誤差

    系統(tǒng)的誤差主要是從系統(tǒng)的運(yùn)行過程來進(jìn)行分析的,具體體現(xiàn)在打印標(biāo)記的輸入、打印指令的形成、數(shù)據(jù)傳輸、數(shù)據(jù)處理以及電機(jī)驅(qū)動(dòng)的各個(gè)環(huán)節(jié)[6]。由于打印標(biāo)記的輸入環(huán)節(jié)是圖形界面部分,圖形算法已經(jīng)比較成熟,校正比例為double型,因此在此處存在的誤差在系統(tǒng)可接受范圍;數(shù)據(jù)傳輸過程認(rèn)為是比較理想的,不會(huì)出現(xiàn)誤差,即使出現(xiàn)問題,那也將是錯(cuò)誤,而非誤差;數(shù)據(jù)處理部分的FPGA在數(shù)字信號處理能力方面是相當(dāng)成熟的,若出現(xiàn)誤差也是在合理的范圍內(nèi);因此,可校正的誤差主要集中在由圖形標(biāo)記轉(zhuǎn)化為指令格式的指令形成階段。

    在伺服機(jī)構(gòu)(步進(jìn)電機(jī)、驅(qū)動(dòng)器和傳動(dòng)裝置)確定的情況下,可以計(jì)算出步進(jìn)電機(jī)在每個(gè)脈沖下帶動(dòng)針頭所運(yùn)動(dòng)的確切距離,稱為最小步進(jìn)距離。在形成運(yùn)動(dòng)數(shù)據(jù)指令時(shí),先計(jì)算運(yùn)動(dòng)下一點(diǎn)到當(dāng)前點(diǎn)的實(shí)際距離,然后除以最小步進(jìn)距離得到的就是實(shí)際運(yùn)動(dòng)的步數(shù)。但由于運(yùn)動(dòng)步數(shù)只能是整數(shù)形式,必然存在著最大的±1最小步進(jìn)距離的誤差。如果數(shù)據(jù)處理出來的每個(gè)指令都忽略這個(gè)誤差,將會(huì)使累積誤差增大,甚至影響打印效果。

    在本設(shè)計(jì)中,每生成一條數(shù)據(jù)指令后,以實(shí)際計(jì)算的步數(shù)再乘以最小步進(jìn)距離來確定當(dāng)前的實(shí)際位置。這樣,理想情況下的實(shí)際針頭位置和軟件上記錄的實(shí)際位置只相差±1個(gè)最小步進(jìn)距離,從而消除了累積誤差。

    4 結(jié)束語

    本控制器充分利用FPGA的高速并行處理能力,在開放式數(shù)控中能夠發(fā)揮出較好的運(yùn)動(dòng)控制性能。實(shí)際性能:在40 MHz的時(shí)鐘頻率下,實(shí)現(xiàn)0.1 μm的插補(bǔ)精度,可達(dá)到4~5字符/秒的打印速度,性能好于以前的控制器。出于環(huán)保和經(jīng)濟(jì)的考慮,燃?xì)馄囋絹碓蕉?,天然氣的承裝必須用鋼瓶,因而該控制器有著廣泛的應(yīng)用前景。

    [1]國家質(zhì)量技術(shù)監(jiān)督總局.氣瓶安全監(jiān)察規(guī)程[S].北京:技術(shù)標(biāo)準(zhǔn)出版社,2000.

    [2]劉曉明,廖欣,熊東,等.基于FPGA的高速PCI伺服卡的實(shí)現(xiàn)[J].自動(dòng)化與儀表,2008(1):45-49.

    LIU Xiao-ming,LIAO Xin,XIONG Dong,et al.Realization of high speed PCI servo control card based on FPGA[J].Automation and Instrumentation,2008(1):45-49.

    [3]Silicon Laboratories.CP2102 Data Sheet[EB/OL].(2004)http://www.silabs.com.

    [4]侯伯亨,顧新.VHDL硬件描述語言與數(shù)字邏輯電路設(shè)計(jì)(修訂版)[M].西安:西安電子科技大學(xué)出版社,1999.

    [5]陸悅,張峰,賀超.基于FPGA的直線插補(bǔ)器的研究與設(shè)計(jì)[J].電氣自動(dòng)化,2010,32(1):27-29.

    LU Yue,ZHANG Feng,HE Chao.Design of line interpolator based on FPGA[J].Electrical Automation,2010,32(1):27-29.

    [6]劉曉明,姚遙,王泉,等.鋼瓶刻印機(jī)刻印算法及應(yīng)用研究[J].自動(dòng)化與儀表,2009(3):50-56.

    LIU Xiao-ming,YAO Yao,WANG Quan,et al.Research of the algorithm and application of cylinder mark printer[J].Automation and Instrumentation,2009(3):50-56.

    Research on applications of precision motion control method in spherical marker

    YAO Yao1, WANG Shao-hui1, CHENG Tie-han2
    (1.Physics and Electron Engineering Department,Zhoukou Normal University,Zhoukou466001,China;2.Henan Pinggao Electric Co.Ltd.,Pingdingshan467000,China)

    For the requirements of the state to Cylinders marked and the shortage of sphere mark printer in marking accuracy and speed,a design of stepper motor servo controller based on FPGA (field programmable gate array)is proposed.Improved compare integration method and S-shape acceleration/deceleration control algorithm are used in the design,and possible errors are studied and resolved.Experimental results show that the controller can effectively improve the accuracy and speed of marking.The controller has been successfully applied in the sphere mark printer.

    sphere mark printer; field programmable gate array; compare integration method; S-shape acceleration/deceleration;error analysis

    TP273.5

    A

    1674-6236(2012)03-0109-03

    2011-12-16 稿件編號:201112097

    周口師范學(xué)院青年科研基金項(xiàng)目(zknuqn201133B)

    姚 遙(1984—),男,河南周口人,碩士研究生,助教。研究方向:信號與信息處理系統(tǒng)設(shè)計(jì)。

    猜你喜歡
    步數(shù)指令運(yùn)算
    速度和步數(shù),哪個(gè)更重要
    聽我指令:大催眠術(shù)
    重視運(yùn)算與推理,解決數(shù)列求和題
    楚國的探索之旅
    奇妙博物館(2021年4期)2021-05-04 08:59:48
    有趣的運(yùn)算
    ARINC661顯控指令快速驗(yàn)證方法
    微信運(yùn)動(dòng)步數(shù)識人指南
    小演奏家(2018年9期)2018-12-06 08:42:02
    LED照明產(chǎn)品歐盟ErP指令要求解讀
    電子測試(2018年18期)2018-11-14 02:30:34
    “整式的乘法與因式分解”知識歸納
    撥云去“誤”學(xué)乘除運(yùn)算
    林周县| 哈巴河县| 神农架林区| 古丈县| 潜山县| 江孜县| 鹤庆县| 石阡县| 自治县| 佛坪县| 麻栗坡县| 新丰县| 界首市| 南城县| 荆州市| 新竹市| 绍兴市| 阿克| 天等县| 开封市| 乌鲁木齐市| 防城港市| 舒城县| 阜康市| 固始县| 垫江县| 望谟县| 蒙山县| 临漳县| 芦山县| 山丹县| 崇文区| 沁源县| 长岭县| 克山县| 东乌珠穆沁旗| 弋阳县| 安陆市| 阿拉善盟| 奇台县| 渭源县|