999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于FPGA精插補方法改進

2018-06-02 06:48:29王金領
制造技術與機床 2018年5期

王金領 盧 鷗

(海天塑機集團有限公司技術中心,浙江 寧波 315800)

在數控系統中,各個運動軸的插補算法是運動控制的核心之一,良好的插補算法是設備加工精度、運行平穩的關鍵因素。

數控系統的插補實現一般有兩種方式:(1)“一次插補法”,又被稱為“基準脈沖插補”。這種插補算法實現比較簡單,所有的插補運算全部由一個CPU實現,在每次插補運算中每個進給軸只能產生一個脈沖,所以無論怎樣改進插補算法,其產生的脈沖頻率都會受到CPU頻率的限制。并且因為采用單CPU工作方式,如果CPU占用率過高,任務調度開銷嚴重,還會出現脈沖頻率波動現象。(2)“二次插補法”現代中高檔數控系統基本采用了二次插補方式,該算法采用兩塊CPU分別進行粗插補和精插補,粗插補CPU一般由ARM或DSP擔任,實現加工代碼譯碼、速度控制、粗插補等運算;而精插補一般是采用FPGA實現,這是利用了FPGA超強的并行運算能力,可以同時處理多個運算。

由于二次插補方式的這些優點,所以現代系統基本都是采用該方式實現運動插補。

1 傳統FPGA精插補實現方法

傳統的FPGA精插補方式一般采用除法運算,在每個插補周期開始時,由一次插補周期內FPGA的時鐘數Clocks除以該周期需要輸出的脈沖數Pulse,從而得到每產生一個脈沖需要間隔的時鐘數Period,即:

Period=Clocks÷Pulse

(1)

如果Clocks能夠被Pulse整除,則該除法算式不會產生余數,按照每Period個FPGA時鐘產生一個脈沖輸出,則在一個插補周期結束時,就會產生Pulse個脈沖輸出。但是在Clocks不能夠被整除時,則會產生余數,如果這時候仍然按照每間隔Period個時鐘周期產生一個脈沖輸出,則有可能在一個插補周期結束時,產生超過Pulse個脈沖的輸出。

若要解決這個算法存在的問題,一般是在脈沖輸出部分添加一個積分電路,將每次的余數計入積分器,在積分器數值達到Period脈沖時,進行一次脈沖輸出的修正,從而達到最終輸出Pulse個脈沖的目的。

雖然能夠輸出正確的脈沖個數,但是在脈沖修正的過程中,必然會造成輸出脈沖頻率的變化,從而會導致設備進給速度的變化,可能會造成設備的抖動或者刀具紋路的變化,從而降低了設備的加工精度。

2 FPGA精插補算法的改進

為了解決傳統FPGA精插補算法的缺陷,產生理論上完全均勻化的脈沖輸出,對傳統精插補算法進行了改進。在每個插補周期開始時,利用同步時鐘將脈沖累加器Sum清零,在以后的每個FPGA時鐘將累加器的值加上插補周期需要輸出的脈沖數Pulse,然后判斷累加器的值是否超出插補周期內FPGA的時鐘周期數Clocks/ 2,若是則產生一個脈沖的上升沿,如果累加器的值超出Clocks,則產生一個下降沿輸出,同時將Sum值減去Clocks。這樣在一個插補周期內累加器的累加值每次累加Pulse,共計累加了Clocks次,在不考慮溢出的情況下總的累加值為

Sum=Pulse×Clocks

(2)

由此可以算出,累加器一共溢出了Sum/Clocks次,也就是Pulse次,也就產生了一個占空比為50%,脈沖數為Pulse的脈沖。并且是誤差值在一個FPGA時鐘周期之內的理論上最佳均勻化的脈沖輸出。

該算法只采用了加法運算,并且不需要前置處理,僅僅利用加法產生的Sum值與Clocks比較作為脈沖的輸出信號,就產生了均勻化的脈沖輸出。大大提高了FPGA的執行效率和算法的簡便性。

3 新插補算法的功能擴展

除了良好地實現了均勻化脈沖輸出的目的,該算法還可以靈活地進行一些功能擴展。

3.1 波形相位移動

有時要求輸出波形的起始脈沖為高電平輸出或低電平輸出,或者要求首脈沖要進行相位移動以滿足驅動設備的要求。

若要實現以上要求,只需要根據不同的要求設置脈沖累加器Sum的初始值,初始值越大,則波形的相位向左移動,初始值變小,則波形的相位向右移動。只要設置合適的初始值就可以得到不同相位的輸出脈沖,并且產生的仍然是準確的、均勻化的脈沖輸出。

3.2 波形倍頻輸出

當需要精插補產生N倍的輸出脈沖時,只需要將累加器每次的累加值乘以N就可以產生N倍Pulse的脈沖輸出。并且產生的仍然是準確的、均勻化的脈沖輸出。

3.3 可調占空比PWM輸出

在數控系統的模擬輸出方式或者一些需要DA輸出的場合,可以將PWM波輸出端加濾波電容,產生模擬量的輸出。模擬電壓的高低可以由PWM的占空比控制,PWM的占空比越高,則濾波產生的電壓越高;PWM的占空比越低,則濾波產生的電壓越低。

模擬輸出電壓值Vo、和脈沖輸出高電平的電壓VDD以及PWM占空比R之間的關系為:

Vo=VDD×R

(3)

若要產生可調占空比的PWM波形輸出,首先計算出需要進行上升沿輸出的累加器值PP:

PP=Clocks×(1-R)

(4)

與產生占空比50%脈沖的相比,累加器仍然在每個FPGA時鐘累加Pulse,只是不再判斷累加器的值是否大于等于Clocks/ 2,而是判斷累加器的值是否大于等于PP,若是則產生一個脈沖的上升沿,如果累加器的值超出Clocks,則產生一個下降沿輸出,同時將Sum值減去Clocks。這樣就會產生一個占空比為R,每個插補周期內輸出脈沖個數為Pulse的PWM波形。

這種PWM波不僅可以調頻,而且可以調整輸出的占空比,具有非常廣泛的應用范圍。

4 結語

本文介紹了一種FPGA精插補的實現算法,在實現了理論上的均勻化脈沖輸出外,并且顯著降低了FPGA代碼的復雜度。并且該算法還可以方便地進行輸出脈沖的相位平移、輸出脈沖的倍頻輸出以及輸出可調占空比的PWM波,具有非常廣泛的應用范圍。

[1]閆莎莎.基于DPS+CPLD的多軸運動控制器平臺設計及單軸伺服運動控制算法研究[D].杭州:浙江大學,2010.

[2]徐霞棋 .基于 DSP 的多軸運動控制系統設計[D].上海:上海交通大學,2007.

[3]徐志軍 . CPLD/FPGA的開發與應用[M]. 北京:電子工業出版社,2002.

主站蜘蛛池模板: 天天爽免费视频| 亚洲品质国产精品无码| 欧美日本在线| 国产精品三区四区| 国产精品美人久久久久久AV| 九九热免费在线视频| 国产96在线 | 58av国产精品| 国产成人三级在线观看视频| 久久性视频| 毛片卡一卡二| 成人国产小视频| 亚洲精品视频免费| 久久综合色88| 亚洲欧洲综合| 日本在线视频免费| 激情乱人伦| 91精品小视频| 四虎影视无码永久免费观看| 永久免费无码成人网站| 欧美v在线| 丰满的熟女一区二区三区l| 久久亚洲中文字幕精品一区| 国产精品亚洲а∨天堂免下载| 一级毛片a女人刺激视频免费| 99在线视频精品| 久久久久久久久亚洲精品| 国产特级毛片aaaaaa| 无码aaa视频| 欧美午夜理伦三级在线观看| 国产在线一二三区| 亚洲美女一区二区三区| 亚洲精品视频网| 欧美影院久久| 91亚洲精选| 尤物国产在线| 91精品国产福利| 亚洲精品手机在线| 国产高清在线观看| 亚洲中文无码h在线观看 | 国产99在线| 国产精品不卡永久免费| 欧美成一级| 小蝌蚪亚洲精品国产| 亚洲午夜天堂| a色毛片免费视频| 色噜噜综合网| 亚洲性色永久网址| 伊人成人在线视频| 综合色在线| 国产极品嫩模在线观看91| 久久国产精品国产自线拍| 久久99这里精品8国产| 中文字幕在线免费看| 国产人前露出系列视频| 一本大道无码高清| 午夜日b视频| 国产成人区在线观看视频| 免费一级无码在线网站| 就去色综合| 真实国产精品vr专区| 99草精品视频| 一级看片免费视频| 久久国产精品无码hdav| 五月六月伊人狠狠丁香网| 国产综合亚洲欧洲区精品无码| 国产91小视频| 又猛又黄又爽无遮挡的视频网站| 色一情一乱一伦一区二区三区小说| 国产婬乱a一级毛片多女| 亚洲AV无码不卡无码| 精品视频在线一区| 国产乱子伦一区二区=| 久久成人国产精品免费软件 | 亚洲无码日韩一区| 欧美精品综合视频一区二区| 在线网站18禁| 国产丝袜91| 色婷婷成人网| 四虎在线高清无码| 免费一级毛片不卡在线播放| 2019年国产精品自拍不卡|