《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 基于FPGA的步進電機控制器設計
基于FPGA的步進電機控制器設計
摘要: 目前大多數步進電機控制器需要主控制器發(fā)送時鐘信號,并且要至少一個I/O口來輔助控制和監(jiān)控步進電機的運行情況。在單片機或DSP的應用系統(tǒng)中,經常配合CPLD或者FPGA來實現特定的功能。本文介紹通過FPGA實現的步進電機控制器。該控制器可以作為單片機或DSP的一個直接數字控制的外設,只需向控制器的控制寄存器和分頻寄存器寫入數據,即町實現對步進電機的控制。
Abstract:
Key words :

    步進電機是一種將電脈沖信號轉換成相應的角位移的特殊電機,每改變一次通電狀態(tài),步進電機的轉子就轉動一步。

       目前大多數步進電機控制器需要主控制器發(fā)送時鐘信號,并且要至少一個I/O口來輔助控制和監(jiān)控步進電機的運行情況。在單片機或DSP的應用系統(tǒng)中,經常配合CPLD或者FPGA來實現特定的功能。本文介紹通過FPGA實現的步進電機控制器。該控制器可以作為單片機或DSP的一個直接數字控制的外設,只需向控制器的控制寄存器和分頻寄存器寫入數據,即町實現對步進電機的控制。

  1 步進電機的控制原理

  步進電機是數字控制電機,它將脈沖信號轉變成角位移,即給一個脈沖信號,步進電機就轉動一個角度,因此非常適合對數字系統(tǒng)的控制。步進電機可分為反應式步進電機(簡稱“VR”)、永磁式步進電機(簡稱“PM”)和混合式步進電機(簡稱“HB”)。

  步進電機區(qū)別于其他控制電機的最大特點是,通過輸入脈沖信號來進行控制,即電機的總轉動角度由輸入脈沖數決定,而電機的轉速由脈沖信號頻率決定。

  步進電機的驅動電路根據控制信號工作,控制信號由各類控制器來產生。其基本原理作用如下:

  ①控制換相順序,通電換相。這一過程稱為“脈沖分配”。例如:四相步進電機的單四拍工作方式,其各相通電順序為A-B-C-D。通電控制脈沖必須嚴格按照這一順序分別控制A、B、C、D相的通斷,控制步進電機的轉向。如果給定工作方式正序換相通電,則步進電機正轉;如果按反序換相通電,則電機就反轉。

  ②控制步進電機的速度。如果給步進電機發(fā)一個控制脈沖,它就轉一步,再發(fā)一個脈沖,它會再轉一步。兩個脈沖的間隔越短,步進電機就轉得越快。調整控制器發(fā)出的脈沖頻率,就可以對步進電機進行調速。

  2 控制器的總體設計

  控制器的外部接口電路如圖1所示。各引腳的功能如下:

控制器的內部原理框圖

       控制器的內部原理框圖如圖2所示,由命令字寄存器(Cmd_reg)、分頻系數備份寄存器(fdiv_back)、分頻器、相位輸出狀態(tài)機組成。

控制器的內部原理框圖

  其中命令字寄存器Cmd_reg組成如下(對應的地址為“00”):

命令字寄存器Cmd

  X未用位。

  Ini對控制器初始化為1時有效。當該位為1時,備份寄存器的數據直接裝入分頻器的寄存器reg_dATA[15~0],裝入后由硬件自動置O。

  Newr當對正在運行的控制器寫入新的分頻系數時,對該位置1;當下一個分頻器輸出的clkout時鐘來到時,將fdiv_back寫入到reg_data[15~0]中,分頻器便按新的分頻系數進行分頻。

  Manner[1~0] 電動機的驅動方式,用來控制相位輸出狀態(tài)機的輸出,“00”表示單四拍方式,四相位輸出為(A-B-C-D);“Ol”表示雙四拍,四相位輸出為(ABBC-CD-DA),八拍(A-AB-B-BC-C-CD-DDA)。

  分頻系數備份寄存器(fdiv_back) 兩字節(jié)寄存器,reg_data[15~0]為分頻器的一個16位寄存器,接收fdiv_back的值,對系統(tǒng)的分頻為2~65536。對于12MHz的輸入頻率,分頻后頻率為6MHz~183Hz,(本設計中,步進電機的啟動轉速、轉距、加速度由使用者根據實際情況自己計算)分頻后每個clkout走一個步距角。對于步距角為1.8°的電機,可以滿足各種速度的要求。

       3 分頻器的設計

  分頻器是該控制器實現的關鍵,在這里作為一個獨立的模塊,dATA[15~0]為分頻系數。系統(tǒng)時鐘Clk被分頻系數寄存器中值分頻后,輸出Clkout作為相位輸出狀態(tài)機的時鐘,每個Clkout到來時,產生一次相位轉換,步進電機運行一個步距角。分頻器的程序如下:

程序

  圖3所示為3分頻時單四拍的輸出仿真圖

3分頻時單四拍的輸出仿真圖

  結語

  本文的創(chuàng)新點為將該步進電機控制器的控制字和分頻系數映射在主控制器(DSP或單片機等)的內存空間,控制時僅需對其進行寫操作,使步進電機的控制變得簡單方便;而且,可節(jié)省主控制器(DSP或單片機等)的外圍資源,減少板上負載。系統(tǒng)中可以加入電機運行總步數控制寄存器及其電路、加速度寄存器及其控制電路等,打造一個更智能的步進電機控制器。

此內容為AET網站原創(chuàng),未經授權禁止轉載。
主站蜘蛛池模板: 女人张腿让男桶免费视频观看| 欧美性大战XXXXX久久久√| 国产成人高清在线播放| juy051佐佐木明希在线观看| 日韩加勒比一本无码精品| 亚洲网红精品大秀在线观看 | 人妻免费久久久久久久了| 被cao的合不拢腿的皇后| 国产精品极品美女免费观看| 一个人看的视频www在线| 日本高清在线中文字幕网| 亚洲天堂第一区| 福利在线小视频| 国产一级特黄生活片| 中文字幕5566| 在免费jizzjizz在线播| 三上悠亚电影在线观看| 日本电车强视频在线播放| 亚洲国产精品线在线观看| 玄兵chinesemoney| 台湾一级淫片完整版视频播放| 高清中文字幕免费观在线| 国产精品你懂得| 999影院成人在线影院| 成人国产一区二区三区| 久久精品国产亚洲av高清漫画| 欧美日本一本线在线观看| 人与禽交videosgratisdo视频| 精品无码久久久久久久久水蜜桃| 国产免费av片在线播放| 免费在线视频你懂的| 国产精品毛片va一区二区三区 | 日韩内射美女片在线观看网站| 亚洲欧美中文字幕5发布| 男女猛烈xx00免费视频试看| 囯产精品一品二区三区| 青苹果乐园在线高清| 国产成人精品一区二区三区| 天堂资源中文在线| 国产肥老上视频| ass日本乱妇bbw|