電子發燒友網 > 工業控制 > 伺服與控制 > 正文

基于FPGA的步進電機控制的實現

2020年09月08日 16:01 ? 次閱讀

步進電機的用途還是非常廣泛的,目前打印機,繪圖儀,機器人等等設備都以步進電機為動力核心。那么,下面我們就了解下什么是步進電機,它是怎么控制的。

一、步進電機相關知識簡介

1、步進電機概述

步進電機是一種能夠將電脈沖信號轉換成角位移或線位移的機電元件,它實際上是一種單相或多相同步電動機。單相步進電動機有單路電脈沖驅動,輸出功率一般很小,其用途為微小功率驅動。多相步進電動機有多相方波脈沖驅動,用途很廣。使用多相步進電動機時,單路電脈沖信號可先通過脈沖分配器轉換為多相脈沖信號,在經功率放大后分別送入步進電動機各相繞組。每輸入一個脈沖到脈沖分配器,電動機各相的通電狀態就發生變化,轉子會轉過一定的角度(稱為步距角)。正常情況下,步進電機轉過的總角度和輸入的脈沖數成正比;連續輸入一定頻率的脈沖時,電動機的轉速與輸入脈沖的頻率保持嚴格的對應關系,不受電壓波動和負載變化的影響。由于步進電動機能直接接收數字量的輸入,所以特別適合于微機控制。

2、步進電機的種類

目前常用的步進電機有三類:

(1)反應式步進電動機(VR):它的結構簡單,生產成本低,步距角可以做的相當小,但動態性能相對較差。

(2)永磁式步進電動機(PM):它的出力大,動態性能好;但步距角一般比較大。

(3)混合步進電動機(HB):它綜合了反應式和永磁式兩者的優點,步距角小,出力大,動態性能好,是性能較好的一類步進電動機。

如果還想做更深入的了解,自行查找相關資料。

3、步進電機控制的實現

我們實驗中所使用的步進電機為四相步進電機。轉子小齒數為64。系統中采用四路I/O進行并行控制,FPGA直接發出多相脈沖信號,在通過功率放大后,進入步進電機的各相繞組。這樣就不再需要脈沖分配器。脈沖分配器的功能可以由純軟件的方法實現。

四相步距電機的控制方法有四相單四拍,四相單、雙八拍和四相雙四拍三種控制方式。步距角的計算公式為:

其中:m為相數,控制方法是四相單四拍和四相雙四拍時C為1,控制方法是四相單、雙八拍時C為2,Zk為轉子小齒數。本系統中采用的是四相單、雙八拍控制方法,所以步距角為360°/512。但步進電機經過一個1/8的減速器引出,實際的步距角應為360°/512/8。

試驗中使用EXI/O的高四位控制四相步進電機的四個相。按照四相單、雙八拍控制方法,電機正轉時的控制順序為A→AB→B→BC→C→CD→D→DA。EXI/O的高四位的值參見表1.1。

表1.1 電機正轉時,FPGA四位IO口的值

反轉時,只要將控制信號按相反的順序給出即可。

步進電機的頻率不能太快,也不能太慢。在200Hz附近最好。頻率太快是轉動不起來的。

注:為什么步進電機高于一定速度就無法啟動:

步進電機有一個技術參數:空載啟動頻率,即步進電機在空載情況下能夠正常啟動的脈沖頻率,如果脈沖頻率高于該值,電機不能正常啟動,可能發生丟步或堵轉。在有負載的情況下,啟動頻率應更低。如果要使電機達到高速轉動,脈沖頻率應該有加速過程,即啟動頻率較低,然后按一定加速度升到所希望的高頻(電機轉速從低速升到高速)。

二、實驗平臺

Quartus II 7.2 集成開發環境、SOPC-MBoard板、ByteBlaster II 下載電纜

三、實驗實現

1、在設計文件中輸入Verilog代碼。

  // Title

 ?。?StepMotorPorts

  // Author

 ?。?wangliang

  // Generated : 2011.08.16

  module StepMotorPorts (StepDrive, clk, Dir, StepEnable, rst);

  input clk;

  input Dir;

  input StepEnable;

  input rst;

  output[3:0] StepDrive;

  reg[3:0] StepDrive;

  reg[2:0] state;

  reg[31:0] StepCounter = 32‘b0;

  parameter[31:0] StepLockOut = 32’d200000;

  //250HZ20 reg InternalStepEnable; 21

  always @(posedge clk or negedge rst)

  begin

  if ( !rst)

  begin

  StepDrive

  《= 4‘b0;

  state 《= 3’b0;

  StepCounter 《= 32‘b0;

  end

  else

  begin

  if (StepEnable == 1’b1) InternalStepEnable 《= 1‘b1 ;

  StepCounter 《= StepCounter + 31’b1 ;

  if (StepCounter 》= StepLockOut)

  begin

  StepCounter 《= 32‘b0 ;

  if (InternalStepEnable == 1’b1)

  begin

  InternalStepEnable 《= StepEnable ;

  if (Dir == 1‘b1)

  state 《= state + 3’b001 ;

  else if (Dir == 1‘b0)

  state 《= state - 3’b001 ;

  case (state)

  3‘b000 : StepDrive 《= 4’b0001 ;

  3‘b001 : StepDrive 《= 4’b0011 ;

  3‘b010 : StepDrive 《= 4’b0010 ;

  3‘b011 : StepDrive 《= 4’b0110 ;

  3‘b100 : StepDrive 《= 4’b0100 ;

  3‘b101 : StepDrive 《= 4’b1100 ;

  3‘b110 : StepDrive 《= 4’b1000 ;

  3‘b111 : StepDrive 《= 4’b1001 ;

  endcase

  end

  end

  end

  end

  endmodule

注:

(1)第19行,此處的數值為200000,因為實驗中所使用的晶振時鐘頻率是50MHz,這樣我們為步進電機提供了250Hz的頻率,使之能正常工作。

(2)第43、44行是選擇正轉還是反轉。

(3)第45行~第54行:就是根據表1.1而來的,配置步進電機的IO口值。

2、由設計文件生成的.bsf文件,其外接接口如圖1.2所示。

3、引腳分配

clk接時鐘;Dir接按鍵,控制正轉還是反轉;StepEnable接按鍵,表示開關;rst接復位信號;StepDrive接步進電機的4個引腳。

4、實驗結果

燒寫到FPGA上以后,通過撥動開關就可以使步進電機正轉反轉了。

下載發燒友APP

打造屬于您的人脈電子圈

關注電子發燒友微信

有趣有料的資訊及技術干貨

關注發燒友課堂

鎖定最新課程活動及技術直播

電子發燒友觀察

一線報道 · 深度觀察 · 最新資訊
收藏 人收藏
分享:

評論

相關推薦

寫好狀態機--從2019年全國FPGA競賽談Verilog編碼技巧

理解Verilog編碼技巧掌握FPGA中狀態機的寫法掌握非重疊序列檢測代器Verilog代碼編寫
發燒友學院發表于 2020-04-21 00:00? 22177次閱讀
寫好狀態機--從2019年全國FPGA競賽談Verilog編碼技巧

基于A4988的步進電機驅動器電路設計

轉換器是A4988易于實施的關鍵。只要在“STEP”引腳輸入一個脈沖,即可驅動電動機產生微步。
發表于 2020-09-08 16:19? 42次閱讀
基于A4988的步進電機驅動器電路設計

數字邏輯設計中鎖存器和觸發器的定義和比較

鎖存器(latch)---對脈沖電平敏感,在時鐘脈沖的電平作用下改變狀態,當Gate輸入為高電平時,....
發表于 2020-09-08 14:26? 37次閱讀
數字邏輯設計中鎖存器和觸發器的定義和比較

FPGA有望成為物聯網設備的核心處理器芯片?

士蘭微公司擬與控股股東的控股子公司士蘭創投共同出資入股安路科技,雙方分別出資1,000萬元認購安路科....
發表于 2020-09-08 14:18? 150次閱讀
FPGA有望成為物聯網設備的核心處理器芯片?

國微思爾芯推采用Stratix 10 GX 10...

國微思爾芯發布3億門原型驗證系統,采用業界最高容量的 Intel? Stratix? 10 GX 1....
發表于 2020-09-08 10:56? 66次閱讀
國微思爾芯推采用Stratix 10 GX 10...

FPGA+DSP之SRIO通信之DSP端參數設置

DSP端參數設置使用的官方例程路徑: ti\pdk_C6678_1_1_2_5\packages\ti\transport\ipc\examples\srioIpcBe...
發表于 2020-09-08 10:36? 0次閱讀
FPGA+DSP之SRIO通信之DSP端參數設置

FPGA入門教程—詳盡的基礎知識, i2c總線協議,煉獄傳奇-BCD轉二進制之戰--pdf

發表于 2020-09-08 09:53? 0次閱讀
FPGA入門教程—詳盡的基礎知識, i2c總線協議,煉獄傳奇-BCD轉二進制之戰--pdf

vivado入門資料,FPGA設計流程指南--pdf

發表于 2020-09-08 09:44? 0次閱讀
vivado入門資料,FPGA設計流程指南--pdf

創龍帶您解密TI、Xilinx異構多核SoC處理器核間通訊

1.什么是異構多核SoC處理器顧名思義,單顆芯片內集成多個不同架構處理單元核心的SoC處理器,我們稱之為異構多核S...
發表于 2020-09-08 09:39? 0次閱讀
創龍帶您解密TI、Xilinx異構多核SoC處理器核間通訊

學海無涯 上學有“禮”—不看看你會后悔的?。?!

      疫情期間,經濟雖然困難,但是無論是學生還是從業人員,9月份開學季在他們心中都是一個朝...
發表于 2020-09-08 09:30? 43次閱讀
學海無涯   上學有“禮”—不看看你會后悔的?。?!

以AD9249介紹其3線SPI配置的verilo...

3線SPI的時鐘產生方式和上一篇的4線SPI相同,這里不在敘述。兩者的不同點在于:三線SPI模式需要....
發表于 2020-09-07 17:17? 67次閱讀
以AD9249介紹其3線SPI配置的verilo...

FPGA通過SPI對ADC配置簡介-----什么...

SDIO—當進行讀操作時,SDIO作為輸出口SDO,串行數據從ADC輸出,進入FPGA;當進行寫操作....
發表于 2020-09-07 17:07? 73次閱讀
FPGA通過SPI對ADC配置簡介-----什么...

采用Altera FPGA芯片和DSP實現多串口...

圖4中SET_EN用于設置個串口的輸入模式(是否乒乓輸入及乒乓輸入時緩存的大?。┖痛谑鼓艿炔僮?,輸....
發表于 2020-09-07 15:37? 30次閱讀
采用Altera FPGA芯片和DSP實現多串口...

利用NoC資源解決FPGA內部數據交換的瓶頸

日益增長的數據加速需求對硬件平臺提出了越來越高的要求,FPGA 作為一種可編程可定制化的高性能硬件發揮著越來越重...
發表于 2020-09-07 15:25? 250次閱讀
利用NoC資源解決FPGA內部數據交換的瓶頸

基于邏輯門搭建的用于處理數字信號的集成電路

數字電路中的數字信號是指在時間上離散,在數值上也離散,且數值的大小和增減都是量化單位的整數倍的一類信....
發表于 2020-09-07 13:47? 81次閱讀
基于邏輯門搭建的用于處理數字信號的集成電路

ARM和FPGA的嵌入式多通道超聲波采集開發

[table] [tr][td]多通道超聲波高速信號采集開發套件(以下簡稱采集板)是我司新推出的多通道超聲波信號采集和二次開發...
發表于 2020-09-07 10:50? 0次閱讀
ARM和FPGA的嵌入式多通道超聲波采集開發

TMCC160-LC TMCL:伺服系統芯片

TMCC160-LC TMCL:直流伺服驅控一體芯片。內置ARM處理器和硬件化操作系統,內置CAN, RS485通訊,外...
發表于 2020-09-07 09:51? 0次閱讀
TMCC160-LC TMCL:伺服系統芯片

在數據采集系統中的DSP技術應用

如今,數據采集系統很多,有基于數字信號處理器 DSP 設計的,也有基于現場可編程門陣列 FPGA 設計的,這些采集...
發表于 2020-09-05 19:12? 505次閱讀
在數據采集系統中的DSP技術應用

【每周FPGA案例】 至簡設計系列_簡易計算器

本文為明德揚原創及錄用文章,轉載請注明出處! 1.1 總體設計 1.1.1 概述 計算器是近代人發明的可以進行數字運...
發表于 2020-09-05 15:34? 101次閱讀
【每周FPGA案例】 至簡設計系列_簡易計算器

VGA硬件電路設計之如何驅動VGA連接器

VGA接口的腳13和14(HS和VS)是數字信號,所以可以直接通過FPGA的兩個IO口來控制(或者還....
發表于 2020-09-05 10:03? 259次閱讀
VGA硬件電路設計之如何驅動VGA連接器

【每日資料精選】電機+STM32+PCB+智能機...

本次分享的內容范圍畢竟廣,有電機方面的,有 PCB 工藝方面的,也有 嵌入式 單片機 方面的,對這些....
發表于 2020-09-04 23:17? 127次閱讀
【每日資料精選】電機+STM32+PCB+智能機...

可編程邏輯器件和ASIC對比介紹

可編程邏輯器件PLD(Programmable Logic Device)就是一種可以由用戶定義和設....
發表于 2020-09-04 17:02? 363次閱讀
可編程邏輯器件和ASIC對比介紹

麒麟9000芯片將用于華為旗艦機Mate40系列...

而其對供應商唯一提的要求是:限期前供貨完成,諸如芯片器件規格、性能等要求相比以往降低很多。
發表于 2020-09-04 16:38? 369次閱讀
麒麟9000芯片將用于華為旗艦機Mate40系列...

在測試應用中使用FPGA的關鍵特性,利用開放式F...

目前大多數儀器采用封閉式FPGA(現場可編程門陣列)和固定的固件實現儀器的功能。如果你曾見過示波器的....
發表于 2020-09-04 09:09? 214次閱讀
在測試應用中使用FPGA的關鍵特性,利用開放式F...

基于DSP控制算法和可編程邏輯器件實現多相變頻控...

在電機驅動系統應用中,多相電機驅動系統可以應用在供電電壓受限制的場合,其作用是:(1)解決低壓大功率....
發表于 2020-09-04 08:53? 125次閱讀
基于DSP控制算法和可編程邏輯器件實現多相變頻控...

采用DSP+FPGA線性流水陣列結構實現基帶發送...

隨著Internet的迅猛發展和各種無線業務需求的增加,目前以承載單一話音業務為主的無線通信網已經越....
發表于 2020-09-04 08:32? 277次閱讀
采用DSP+FPGA線性流水陣列結構實現基帶發送...

通過利用XCore處理器的特點及硬件設計軟件化方...

英國的XMOS Semiconductor公司推出了一種全新的控制器件:事件驅動多核心處理器(以后簡....
發表于 2020-09-03 13:33? 200次閱讀
通過利用XCore處理器的特點及硬件設計軟件化方...

基于Adaboost算法結合Virtex5平臺如...

本文系統的實現主要用到了兩類邏輯資源來優化系統性能:DSP48E Slice:25x18位二進制補碼....
發表于 2020-09-03 12:45? 198次閱讀
基于Adaboost算法結合Virtex5平臺如...

使用2D NoC簡化FPGA可編程邏輯功能的應用...

對于AXI interconnect模塊,我們采用Github上開源的AXI4總線連接器來實現,這個....
發表于 2020-09-03 12:39? 214次閱讀
使用2D NoC簡化FPGA可編程邏輯功能的應用...

基于FPGA+DSP實現最小化通信處理器架構的設...

隨著各類武器平臺向信息化、網絡化的方向發展,各類小型、超小型平臺,如空空導彈、小型無人機等,對通信設....
發表于 2020-09-03 12:28? 146次閱讀
基于FPGA+DSP實現最小化通信處理器架構的設...

Imagination推出首門RISC-V計算機...

RISC-V是切實可行的,并將在未來五年延伸至所有計算層面。它的開放性使所有層面的設計人員都可以參與....
發表于 2020-09-02 17:55? 246次閱讀
Imagination推出首門RISC-V計算機...

利用FPGA設計軟件開放性性能優化MAX+PLU...

舉一個例子:對一個基于FPGA設計的雷達信號處理機,我們關心其在給定發現概率和虛警率的前提下的最小可....
發表于 2020-09-02 17:15? 349次閱讀
利用FPGA設計軟件開放性性能優化MAX+PLU...

Dialog最新可配置IC擴展電機驅動應用

Dialog推出了針對12V電機應用的新型可配置混合信號IC(CMIC)SLG47105,該器件提供....
發表于 2020-09-02 16:55? 786次閱讀
Dialog最新可配置IC擴展電機驅動應用

FPGA IO的基本結構及默認狀態

在進行FPGA硬件設計時,引腳分配是非常重要的一個環節,特別是在硬件電路上需要與其他芯片通行的引腳。....
發表于 2020-09-02 09:20? 297次閱讀
FPGA IO的基本結構及默認狀態

fpga設計實戰:復位電路仿真設計

最近看advanced fpga 以及fpga設計實戰演練中有講到復位電路的設計,才知道復位電路有這....
發表于 2020-09-01 15:37? 178次閱讀
fpga設計實戰:復位電路仿真設計

FPGA的創新用verilog代碼仿真出一顆顆小...

《迢迢牽牛星》 (南北朝)蕭統 迢迢牽牛星,皎皎河漢女。 纖纖擢素手,札札弄機杼。 終日不成章,泣涕....
發表于 2020-09-01 14:10? 208次閱讀
FPGA的創新用verilog代碼仿真出一顆顆小...

在Protel99SE開發軟件中實現FPGA/C...

在Protel99se嵌套的PLD99的開發環境下,可編程邏輯器件設計可以直接面向用戶要求,自上而下....
發表于 2020-09-01 09:25? 51次閱讀
在Protel99SE開發軟件中實現FPGA/C...

ARM、MCU、DSP、FPGA、SOC的比較及...

20世紀80年代后期,ARM很快開發成Acorn的臺式機產品,形成英國的計算機教育基礎。
發表于 2020-08-31 15:49? 1218次閱讀
ARM、MCU、DSP、FPGA、SOC的比較及...

一文解析步進電機的拍數與相數

完成一個磁場周期性變化所需脈沖數或導電狀態用n表示,或指電機轉過一個齒距角所需脈沖數,以四相電機為例....
發表于 2020-08-31 14:13? 295次閱讀
一文解析步進電機的拍數與相數

采用可編程邏輯器件和單片機實現頻率特性測量系統的...

具體電路如圖4所示,此限幅放大電路由前級同相放大、限幅放大和電平轉換電路3部分組成。前級同相放大電路....
發表于 2020-08-31 10:01? 135次閱讀
采用可編程邏輯器件和單片機實現頻率特性測量系統的...

采用可編輯邏輯器件實現智能變送器的應用方案

在工業自動化控制系統中,過程參數壓力、差壓、絕對壓力、流量等工藝參數均要嚴格控制,而這類參數的測量與....
發表于 2020-08-31 09:54? 149次閱讀
采用可編輯邏輯器件實現智能變送器的應用方案

Xilinx推Spartan-3E系列FPGA,...

Xilinx公司的Spartan-3E系列FPGA專為大批量并對成本敏感的消費電子應用而設計,這一系....
發表于 2020-08-30 08:36? 152次閱讀
Xilinx推Spartan-3E系列FPGA,...

Altera公司將FPGA高端密度范圍增大到82...

Altera公司 宣布,40-nm Stratix? IV E FPGA高端密度范圍增大到業界領先的....
發表于 2020-08-30 08:22? 104次閱讀
Altera公司將FPGA高端密度范圍增大到82...

Altera推出面向Stratix? IV FP...

Altera公司推出其面向Stratix? IV FPGA的最新開發套件。Stratix IV E ....
發表于 2020-08-30 08:19? 68次閱讀
Altera推出面向Stratix? IV FP...

使用FPGA實現讀寫器的編解碼設計UHF RFI...

UHF RFID讀寫器具有讀寫距離遠、讀寫速度快等優點,已成功運用于供應鏈管理、航空管理和后勤管理等....
發表于 2020-08-29 10:50? 84次閱讀
使用FPGA實現讀寫器的編解碼設計UHF RFI...

Certus-NX FPGA 支持易于使用的 L...

由于手機出貨量很大,現在的大部分傳感器都采用 MIPI 接口,第一代產品具有 MIPI 接口,因此側....
發表于 2020-08-29 09:57? 165次閱讀
Certus-NX FPGA 支持易于使用的 L...

了解邏輯電路的設計與描述方式

4)知道了 FPGA 學習主要不在于編程!壓根沒有編程這回事??!Verilog 是硬件描述語言!描述....
發表于 2020-08-28 15:33? 423次閱讀
了解邏輯電路的設計與描述方式

基于計算下的行同步碼功率(SYNC_DL)模塊

在本設計中,前端 TD_SCDMA 的射頻信號 RF 輸入后,經過 MAX2392 零中頻下變頻解調....
發表于 2020-08-28 15:26? 73次閱讀
基于計算下的行同步碼功率(SYNC_DL)模塊

微軟在數據中心里部署了上百萬個 FPGA 加速卡...

數據中心已經和 5G 網絡等技術一起,成為我國新基建的重點發展領域。在今年三月的政治局會議上,中央就....
發表于 2020-08-28 15:10? 682次閱讀
微軟在數據中心里部署了上百萬個 FPGA 加速卡...

基于FPGA 構建一個提供瞬時啟動功能的單芯片解...

采用 FPGA 實現視頻監控系統具有許多優點,包括 FPGA 加速 DSP 處理的功能。非易失性 F....
發表于 2020-08-28 15:02? 169次閱讀
基于FPGA 構建一個提供瞬時啟動功能的單芯片解...

基于51內核和FPGA器件實現便攜式幅頻特性測試...

在現代電力電子系統中,隨著內場測試和外場維護工作量的增加,對目前通用的測試儀器也提出了新的要求,研制....
發表于 2020-08-28 09:51? 524次閱讀
基于51內核和FPGA器件實現便攜式幅頻特性測試...

利用SOPC技術結合VHDL語言實現多通道數據采...

整個系統由xilinx公司的spartan3E高性能、低成本的90nm FPGA和一些外圍電路組成。....
發表于 2020-08-28 09:33? 324次閱讀
利用SOPC技術結合VHDL語言實現多通道數據采...

FPGA硬件資源與算法設計

項目簡介在前面也已經講說,這里只放一個整體框圖來表現。這個框圖為了便于大家理解已經進行了簡化,大抵說....
發表于 2020-08-27 17:39? 267次閱讀
FPGA硬件資源與算法設計

各類FPGA原型驗證平臺技術對比 驗證工具的應用...

FPGA的應用范圍廣泛,通信、計算、控制等領域等都有它的建樹,并且由于其具有內部電路可重構的特點,幾....
發表于 2020-08-27 17:39? 933次閱讀
各類FPGA原型驗證平臺技術對比 驗證工具的應用...

基于FPGA器件Cy-ckone實現USB下載接...

隨著片上系統(SoC,System on Chip)時代的到來,包括復雜可編程邏輯器件(CPLD,C....
發表于 2020-08-27 16:11? 68次閱讀
基于FPGA器件Cy-ckone實現USB下載接...

國產FPGA這一“萬能芯”的發展概況

每個輸出可高達80 PTs,高達四個總體OE控制,四個專用總體時鐘輸入接口,每個宏單元都具備時鐘、輸....
發表于 2020-08-27 14:39? 579次閱讀
國產FPGA這一“萬能芯”的發展概況
宁夏11选5遗漏数据查询