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

FPGA在直流電機位置控制中的應用

2009-08-13 06:18:04金建勛戴志堅
現代電子技術 2009年10期

吳 凡 金建勛 戴志堅

摘 要:由于直流電機具有速度易控制,精度和效率高,能在寬范圍內實現平滑調速等特點而在冶金、機械加工制造等行業中得到廣泛應用。該設計采用FPGA作為直流電機的控制器件,負責信號處理,速度快、可靠性高。介紹直流電機進行位置控制的方法,給出位置控制模塊的設計和實現,使用VHDL語言進行編程完成了FPGA對直流電機的各種控制。

關鍵詞:位置控制;直流電機;FPGA;VHDL

中圖分類號:TP274文獻標識碼:B

文章編號:1004-373X(2009)10-013-03

Application of FPGA in Position Control of Direct Current Motor

WU Fan,JIN Jianxun,DAI Zhijian

(School of Automation Engineering,University of Electronic Science & Technology of China,Chengdu,610054,China)

Abstract: Direct current motor has characters of excellent controlling performance,high precise and great efficiency,smooth timing in wide range,so it′s widely used in metallurgy,enginery and other industry.In this design,FPGA is used as control device of direct current smotor,that charge signal processing.The method of realizing position control of direct current motor by using FPGA is introduced.It describes the design and realization of block of position control of motor and uses VHDL language to program FPGA to complete all kinds of control of direct current motor.

Keywords:position control;direct current motor;FPGA;VHDL

在直流電機控制系統中,被控制量一般都是電機的轉速,控制的目的是保持電機的轉速在所需要的定值上。但在實際生產過程中,電機帶動生產機械或者其他負載運動的表現不一定都是轉速,也可能是使生產機械或其機構產生一定的位置變化,這時需要的控制量就不再是電機的轉速,而是控制對象的直線位移,因此需將電機的轉速輸出轉換為電機的位移輸出。

1 電機位置控制模塊的設計

1.1 直流電機位置控制的方法

在此,使用maxon直流電機,通過與其配套的行星齒輪箱和磁編碼器,能夠實現從轉速到位移的轉換。其工作原理如下:電機轉動時,編碼器開始輸出反饋脈沖,反饋脈沖的頻率與電機的轉速成正比,最高可達20 kHz。電機軸每旋轉一圈,編碼器就輸出16個反饋脈沖,通過計算得出每個脈沖代表電機所帶負載產生0.006 14 mm的位移。這樣就可以把要控制的位移量用反饋脈沖的個數來表示,作為FPGA中位置控制模塊給定值,當電機轉動時,FPGA中的計數器會把反饋脈沖計數并保存,位置控制模塊不斷讀取計數器里的計數值,并與位置控制模塊中的給定值比較。當它們相等的時候,位置控制模塊發出停止信號,從而控制電機剎車。電機停止運動后,再讀取計數器中的計數值,與給定值做比較,計算出差值。如果差值在控制精度范圍內,則此次控制結束;如果不在范圍內,將差值作為下一次控制的給定值,繼續控制電機運動,直至達到要求的精度范圍為止。

1.2 位置控制模塊的組成

位置控制模塊由3部分組成:比較模塊、驅動模塊和延時模塊。比較模塊的作用是將編碼器反饋的脈沖個數與給定的脈沖個數做比較,當它們相等時,給出電機停止信號。驅動模塊的作用是根據輸入的控制信號控制電機的運動。延時模塊的作用是防止丟失反饋脈沖,確保準確讀回編碼器反饋的脈沖個數。接下來將重點介紹各個模塊的具體實現。

1.2.1 比較模塊

圖1中,data_in[15..0]為給定的反饋脈沖個數;EN為電機工作使能信號;inclk為工作時鐘;feedback[15..0]為電機運行時計數器的計數值;stopinter為電機停止時的模塊內部傳遞信號;“0”表示無效,“1”表示有效。比較模塊的工作原理如下:

比較模塊在接收到給定值后,也就是根據要控制的位移量所計算出的反饋脈沖的個數,將其鎖存。在工作時鐘的作用下,模塊會不斷地檢測EN信號是否有效,如果EN信號有效,模塊將開始讀取反饋計數值,并與給定值做比較;如果相等,模塊認為電機所帶負載的運動到達指定位置,這時輸出的stopinter信號有效,控制電機剎車;否則stopinter信號無效,電機繼續運動。

如圖2所示,假設給定的計數值為7。當使能信號EN有效時,模塊開始讀端口feedback[15..0]中的值(電機運行時通過磁編碼器反饋回來的脈沖個數),與data_in[15..0]中給定的脈沖個數做比較。當它們相等的時候,表示電機所帶的負載運動到了指定位置,此時stopinter信號有效,開始控制電機剎車并停止。

1.2.2 驅動模塊

圖3中,derect[1..0]為電機的控制輸入信號;EN為電機工作使能信號,“0”表示無效,“1”表示有效;inclk為工作時鐘;stopinter為電機停止信號的模塊內部傳遞信號;control_outA,control_outB為控制電機的輸出信號,這兩個控制信號直接連接電機的驅動芯片。驅動模塊的工作原理如下:

在工作時鐘的作用下,驅動模塊會不斷地檢測EN信號和stopinter信號是否有效,如果EN有效,并且stopinter無效的時候,模塊的輸出control_outA,contorl_outB取決于電機控制輸入信號derect[1..0]的狀態,當derect[1..0]為“01”時,control_outA輸出為“0”;control_outB輸出為“1”,表示控制電機反轉。當derect[1..0]為“10”時,control_outA輸出為“1”;control_outB輸出為“0”,表示控制電機正轉。驅動控制模塊一旦檢測到stop信號有效,control_outA和control_outB的輸出都為“0”,表示控制電機剎車并停止。在EN和stop信號都無效的時候,control_outA和control_outB的輸出都為“1”,表示對電機不做任何控制。

如圖4所示,當EN和stopinter 信號都為“0”時,模塊的輸出control_outA,contorl_outB都為“1”,對電機不做任何控制。當EN信號變為“1”時,表示電機開始運動,模塊的輸出control_outA為“0”,Contorl_outB為“1”,與direction[1..0]中的值“01”相同,此時電機反轉。當stopinter信號變為“1”時,模塊的輸出control_outA為“0”;contorl_outB也為“0”,此時電機剎車并停止。當EN信號為“1”,stopinter信號再次為“0”時,電機再次開始運動,模塊的輸出control_outA為“1”;contorl_outB為“0”,與direction[1..0]中的值“10”相同,此時電機反轉。

1.2.3 延時模塊

圖4中,EN為延時的使能信號,也就是計數比較模塊的輸出信號stopinter;inclk為工作時鐘;stop為電機停止信號對外部的輸出信號。延時模塊(如圖5所示)的工作原理如下:

當延時模塊檢測到stopinter信號為“1”時,模塊內的計數器開始工作,計數器時鐘即模塊的工作時鐘10 kHz,當記滿300后,模塊輸出信號為“1”。延時模塊檢測到stopinter信號為“0”時,模塊內計數器不工作,模塊輸出信號為“0”。

當電機剎車時,由于存在慣性,電機不會立即停止,會有一段滑行的過程,在這個過程中,電機仍然會通過磁編碼器返回反饋脈沖,只是因為電機的轉速下降,反饋脈沖的頻率大大降低。當stopinter信號變為“1”時,電機開始剎車,如果此時立刻讀取feedback[15..0]端口上的反饋脈沖數值,計算出電機所帶負載的位置,那么必然會丟失掉滑行過程中的反饋脈沖。這樣就會導致讀回的反饋脈沖數與實際電機返回的反饋脈沖數不相等,從而嚴重地影響控制精度,所以必須在stopinter信號變為“1”后,延長一段時間,確保電機停止不動后,再給出STOPTEST信號,作為讀取反饋脈沖數值的有效信號,這時用讀回的反饋脈沖數值計算出負載的實際位置是準確的。

通過實驗,在電機以最高轉速運行時,讓電機剎車,用邏輯分析儀抓出反饋脈沖的波形,找出反饋脈沖頻率開始突然下降直到反饋脈沖消失的那段時間,就是所需要的延時。通過反復進行實驗,測試出這段時間為30 ms,其間的反饋脈沖個數為20個。因此把要控制的位移量換算成反饋脈沖的個數后,用這個值減去20作為比較模塊給定值,就可以抵消滑行過程中增加的20個脈沖。這樣對電機的控制能夠達到一次到位,不需要進行再次調節。延時模塊仿真圖如圖6所示。

2 結 語

現場可編程門陣列(FPGA)器件體積小、速度快、集成度高,能夠用硬件電路來實現算法。使用FPGA控制電機,能夠保證控制的實時性和可靠性。它作為一種有效的數字化控制方法必將廣泛地為人們所接受和使用。

參考文獻

[1]李鐵才.電機控制技術[M].哈爾濱:哈爾濱工業大學出版社,2000.

[2]陳耀和.VHDL語言設計技術[M].北京:電子工業出版社,2004.

[3]潘松,黃繼光.EDA技術實用教程[M].北京:科學出版社,2002.

[4]爾桂花,竇曰軒.運動控制系統[M].北京:清華大學出版社,2002.

[5]黃任.VHDL入門?解惑?經典實例?經驗總結[M].北京:北京航空航天大學出版社,2004.

[6]胡壽松.自動控制原理[M].北京:科學出版社,2000.

[7]于海生.微型計算機控制技術[M].北京:清華大學出版社,1998.

[8]侯伯亨,顧新.VHDL硬件描述語言與數字邏輯電路設計[M].西安:西安電子科技大學出版社,1998.

[9]劉和平.DSP原理及電機控制應用:基于TMS320LF240X系列[M].北京:北京航空航天大學出版社,2006.

[10]王鑒光.電機控制系統[M].北京:機械工業出版社,1994.

主站蜘蛛池模板: 在线欧美一区| 在线观看av永久| 久久综合AV免费观看| 一本久道久综合久久鬼色| 国内精品视频区在线2021| 朝桐光一区二区| 国产精品成人啪精品视频| 欧美人人干| 青草视频在线观看国产| 黄色污网站在线观看| 亚洲第一区精品日韩在线播放| 日本伊人色综合网| 影音先锋丝袜制服| 国产美女丝袜高潮| 青青久久91| 免费国产无遮挡又黄又爽| 国产在线自乱拍播放| 日本午夜网站| 亚洲国产日韩在线成人蜜芽| 二级特黄绝大片免费视频大片| 1级黄色毛片| 亚洲高清在线天堂精品| 美女一区二区在线观看| 国产91在线|中文| 无码人妻免费| 黄色三级毛片网站| 91色在线观看| 好吊日免费视频| 曰AV在线无码| 亚洲一区二区三区在线视频| 国产成人av大片在线播放| 国产成人夜色91| 中文字幕亚洲第一| 亚洲三级电影在线播放| 色播五月婷婷| 国产午夜福利在线小视频| 日韩一级毛一欧美一国产| 欧美日本一区二区三区免费| 国产在线97| 无遮挡一级毛片呦女视频| 精品一区二区三区视频免费观看| 国产丝袜91| 欲色天天综合网| 国产精品成人观看视频国产| 无码免费的亚洲视频| 日韩无码视频专区| 九九热精品视频在线| 亚洲日本中文字幕乱码中文| 手机在线免费毛片| 少妇被粗大的猛烈进出免费视频| 国产日韩欧美成人| 午夜福利视频一区| 久久九九热视频| 国产麻豆va精品视频| 四虎综合网| 真人高潮娇喘嗯啊在线观看 | 麻豆AV网站免费进入| 97一区二区在线播放| 高清色本在线www| 国产午夜精品一区二区三| 天堂在线视频精品| 亚洲成a人片| 国产精品lululu在线观看| 98超碰在线观看| 久久99国产综合精品女同| 亚洲欧美自拍视频| 国产成人凹凸视频在线| 嫩草在线视频| 深夜福利视频一区二区| 色综合热无码热国产| 亚洲av无码片一区二区三区| 精品伊人久久久香线蕉| 麻豆精品在线| 亚洲码在线中文在线观看| 五月天久久综合| 天堂成人在线视频| 久996视频精品免费观看| 粉嫩国产白浆在线观看| 九一九色国产| 免费播放毛片| 国产好痛疼轻点好爽的视频| 米奇精品一区二区三区|