基于fpga的異步電機(jī)課程設(shè)計(jì)_第1頁
已閱讀1頁,還剩19頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p><b>  課程設(shè)計(jì)</b></p><p><b>  課程設(shè)計(jì)任務(wù)書</b></p><p>  學(xué)生姓名: 專業(yè)班級: </p><p>  指導(dǎo)教師: 工作單位 </p>&

2、lt;p>  題目:步進(jìn)電機(jī)定位控制系統(tǒng)設(shè)計(jì)</p><p><b>  初始條件:</b></p><p>  1. 熟悉QuartusII 軟件的操作與運(yùn)用;</p><p>  2. 掌握步進(jìn)電機(jī)的工作原理。</p><p>  要求完成的主要任務(wù):</p><p>  1. 設(shè)計(jì)一個

3、基于FPGA 的4 相步進(jìn)電機(jī)定位控制系統(tǒng),包括步進(jìn)電機(jī)方向設(shè)定</p><p>  電路模塊、步進(jìn)電機(jī)步進(jìn)移動與定位控制模塊和編碼輸出模塊。</p><p>  2.撰寫符合學(xué)校要求的課程設(shè)計(jì)說明書</p><p><b>  時間安排:</b></p><p>  1、 年 月 日,布置課設(shè)具體實(shí)

4、施計(jì)劃與課程設(shè)計(jì)報(bào)告格式的要求說明。</p><p>  2、 年 月 日至 年 月 日,設(shè)計(jì)說明書撰寫。</p><p>  3、 年 月 日,上交課程設(shè)計(jì)成果及報(bào)告,同時進(jìn)行答辯。</p><p>  指導(dǎo)教師簽名: 年 月 日<

5、/p><p>  系主任(或責(zé)任教師)簽名: 年 月 日</p><p><b>  目錄</b></p><p><b>  摘要I</b></p><p>  AbstractII</p><p>  1 設(shè)計(jì)目標(biāo)及簡介1<

6、;/p><p><b>  1.1設(shè)計(jì)目標(biāo)1</b></p><p>  1.2 步進(jìn)電機(jī)簡介1</p><p>  2 VHDL語言介紹2</p><p>  3 Quartus Ⅱ介紹3</p><p><b>  4 系統(tǒng)組成4</b></p>&l

7、t;p>  4.1 四相步進(jìn)電機(jī)工作原理4</p><p>  4.2 系統(tǒng)組成5</p><p><b>  5 模塊設(shè)計(jì)5</b></p><p>  5.1 FPGA模塊圖及信號說明5</p><p>  5.2 系統(tǒng)模塊構(gòu)成6</p><p>  5.3 各模塊間整體共享的

8、電路內(nèi)部傳遞信號6</p><p>  5.4 電機(jī)方向設(shè)定電路模塊6</p><p>  5.5 步進(jìn)電機(jī)步進(jìn)移動與定位控制模塊7</p><p>  5.6 編碼輸出模塊7</p><p>  6 程序設(shè)計(jì)與仿真8</p><p><b>  7 仿真結(jié)果12</b></p&

9、gt;<p><b>  8 實(shí)驗(yàn)總結(jié)14</b></p><p><b>  9參考文獻(xiàn)15</b></p><p><b>  摘要</b></p><p>  在分析了步進(jìn)電機(jī)工作原理的基礎(chǔ)上,提出了步進(jìn)電機(jī)定位控制系統(tǒng)的模塊劃分和實(shí)現(xiàn)方法。以步進(jìn)電機(jī)四相四拍工作方式為例,用V

10、erilog編程在Altera公司的FPGA開發(fā)系統(tǒng)中實(shí)現(xiàn)了各功能模塊和顯示程序。在系統(tǒng)仿真的基礎(chǔ)上,進(jìn)行了功能模塊的控制實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果和仿真一致,實(shí)現(xiàn)了對步進(jìn)電機(jī)模組的預(yù)定控制。</p><p>  關(guān)鍵詞:步進(jìn)電機(jī) 定位控制 Verilog硬件描述語言 FPGA</p><p><b>  Abstract</b></p><p>  On

11、 the basis of analysing stepping motor’s operational principle,we put forward modules division and realizing method of positioning control system which using stepping motor.Giving an example such as stepping motors which

12、 work in Four-phase-four-step mode,we use Verilog programming realized every foundational module and display routine in Altera’s FPGA development system.On the basis of system simulation,we conduct a controlling experime

13、nt about foundational modules,the results are the same as </p><p>  Keyword: stepping motor positioning control VHDL FPGA</p><p><b>  1 設(shè)計(jì)目標(biāo)及簡介</b></p><p><b>  1.1

14、設(shè)計(jì)目標(biāo)</b></p><p>  設(shè)計(jì)一個基于FPGA的4相步進(jìn)電機(jī)定位控制系統(tǒng)。</p><p>  系統(tǒng)主要由步進(jìn)電機(jī)方向設(shè)定電路模塊、步進(jìn)電機(jī)步進(jìn)移動與定位控制模塊和編碼輸出模塊構(gòu)成。</p><p>  前兩個模塊完成電機(jī)旋轉(zhuǎn)方向設(shè)定,激磁方式設(shè)定和定位角度的換算等工作,后一個模塊用于對換算后的角度量編碼輸出。</p><

15、p>  1.2 步進(jìn)電機(jī)簡介</p><p>  步進(jìn)電機(jī)是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件,具有價格低廉、易于控制、無累積差錯和與計(jì)算機(jī)接口方便等諸多優(yōu)點(diǎn),在機(jī)械、儀表、工業(yè)控制等領(lǐng)域中獲得了廣泛的應(yīng)用。在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),而不受負(fù)載變化的影響,即給電機(jī)加一個脈沖信號,電機(jī)則轉(zhuǎn)過一個步距角。這一線性關(guān)系的存在,加上步進(jìn)電機(jī)只有周期性的誤差而

16、無累積誤差等特點(diǎn)。使得在速度、位置等控制領(lǐng)域用步進(jìn)電機(jī)來控制變的非常的簡單。</p><p>  2 VHDL語言介紹</p><p>  VHDL的英文全名是Very-High-Speed Integrated Circuit Hardware Description Language,誕生于1982年。1987年底,VHDL被IEEE和美國國防部確認(rèn)為標(biāo)準(zhǔn)硬件描述語言。</p&g

17、t;<p>  VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式和描述風(fēng)格與句法是十分類似于一般的計(jì)算機(jī)高級語言。VHDL的程序結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計(jì),或稱設(shè)計(jì)實(shí)體(可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可視部分,及端口)和內(nèi)部(或稱不可視部分),既涉及實(shí)體的內(nèi)部功能和算法完成部分。在對一個設(shè)計(jì)實(shí)體定義了外部界面后,一旦其內(nèi)部開發(fā)完成后,其他的設(shè)計(jì)

18、就可以直接調(diào)用這個實(shí)體。這種將設(shè)計(jì)實(shí)體分成內(nèi)外部分的概念是VHDL系統(tǒng)設(shè)計(jì)的基本點(diǎn)。</p><p>  VHDL 語言能夠成為標(biāo)準(zhǔn)化的硬件描述語言并獲得廣泛應(yīng)用,它自身必然具有很多其他硬件描述語言所不具備的優(yōu)點(diǎn)。歸納起來,VHDL 語言主要具有功能強(qiáng)大,設(shè)計(jì)方式多樣;硬件描述能力強(qiáng)大;具有很強(qiáng)的移植能力;設(shè)計(jì)描述與器件無關(guān)程序易于共享和復(fù)用等優(yōu)點(diǎn)。</p><p>  3 Quartus

19、 Ⅱ介紹</p><p>  Quartus II 是Altera公司的綜合性PLD/FPGA開發(fā)軟件,支持原理圖、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多種設(shè)計(jì)輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計(jì)輸入到硬件配置的完整PLD設(shè)計(jì)流程。</p><p>  Quartus II可以在XP、Lin

20、ux以及Unix上使用,除了可以使用Tcl腳本完成設(shè)計(jì)流程外,提供了完善的用戶圖形界面設(shè)計(jì)方式。具有運(yùn)行速度快,界面統(tǒng)一,功能集中,易學(xué)易用等特點(diǎn)。</p><p>  Quartus II提供了完全集成且與電路結(jié)構(gòu)無關(guān)的開發(fā)包環(huán)境,具有數(shù)字邏輯設(shè)計(jì)的全部特性,包括:可利用原理圖、結(jié)構(gòu)框圖、VerilogHDL、AHDL和VHDL完成電路描述,并將其保存為設(shè)計(jì)實(shí)體文件;芯片(電路)平面布局連線編輯;LogicLo

21、ck增量設(shè)計(jì)方法,用戶可建立并優(yōu)化系統(tǒng),然后添加對原始系統(tǒng)的性能影響較小或無影響的后續(xù)模塊;功能強(qiáng)大的邏輯綜合工具;完備的電路功能仿真與時序邏輯仿真工具;定時/時序分析與關(guān)鍵路徑延時分析;可使用SignalTap II邏輯分析工具進(jìn)行嵌入式的邏輯分析;支持軟件源文件的添加和創(chuàng)建,并將它們鏈接起來生成編程文件;使用組合編譯方式可一次完成整體設(shè)計(jì)流程;自動定位編譯錯誤;高效的期間編程與驗(yàn)證工具;可讀入標(biāo)準(zhǔn)的EDIF網(wǎng)表文件、VHDL網(wǎng)表文件

22、和Verilog網(wǎng)表文件;能生成第三方EDA軟件使用的VHDL網(wǎng)表文件和Verilog網(wǎng)表文件。</p><p><b>  4 系統(tǒng)組成</b></p><p>  4.1 四相步進(jìn)電機(jī)工作原理</p><p>  步進(jìn)電機(jī)是利用數(shù)字信號控制的電機(jī)裝置,步進(jìn)電機(jī)每次接收到一組脈沖數(shù)字信號,便旋轉(zhuǎn)一個角度,稱為步進(jìn)角。不同規(guī)格的步進(jìn)電機(jī)的步進(jìn)角

23、不同,與電動機(jī)內(nèi)部的線圈數(shù)量有關(guān)。線圈中的供應(yīng)電流決定線圈所產(chǎn)生的磁場方向。</p><p>  4相步進(jìn)電機(jī)有兩組線圈 A和 B,如圖4.1所示,A、B兩組垂直擺放線圈的電流方向的排列組合,A線圈如果提供A點(diǎn)低電位而A′點(diǎn)高電位,電流由A′螺旋向上流到A,形成向上的磁場方向;同理,提供B點(diǎn)低電位而B′點(diǎn)高電位,電流由B′螺旋流到B,形成向左的磁場方向。A和B這兩組線圈形成的總磁場方向即為左上方。如果將電動機(jī)的轉(zhuǎn)

24、子置于線圈所產(chǎn)生的磁場中,便會受到磁場的作用而產(chǎn)生與磁場方向一致的力,轉(zhuǎn)子便開始轉(zhuǎn)動,直到轉(zhuǎn)子的磁場方向與線圈的磁場方向一致為止。最多可以產(chǎn)生8種磁場方向,分別是0º、45º、90º、135º、180º、225º、270º、315º。</p><p>  圖4.1 四相步進(jìn)電機(jī)</p><p>  由表4.1可

25、以知,假設(shè)電動機(jī)轉(zhuǎn)子刻度在0º的位置,想讓其轉(zhuǎn)180º,可以使端口信號依次按0001,0011,0010,0110到0100變化。</p><p>  注意:四相電動機(jī)有1相激磁法、2相激磁法和1-2相混合激磁法3種激磁方式。不同的激磁方式,端口信號的順序是不同的。</p><p>  表4.1 四相步進(jìn)電機(jī)的8個方向和電流以及電壓信號的關(guān)系</p>&l

26、t;p>  1-相激磁法:當(dāng)目標(biāo)角度是90的整數(shù)倍時,采用這種方法。例如要從0轉(zhuǎn)到270,只要讓端口信號的順序?yàn)?000,0001,0010,0100,1000即可。</p><p>  2-相激磁法:當(dāng)目標(biāo)角度是45而非90的整數(shù)倍時,可采用這種方法。例如要從0轉(zhuǎn)到225,只要讓端口信號的順序?yàn)?000,0011,0110,1100即可。</p><p>  1-2-相混合激磁法:

27、按照表中所列的信號順序。</p><p>  該步進(jìn)電機(jī)為一四相步進(jìn)電機(jī),采用單極性直流電源供電。只要對步進(jìn)電機(jī)的各相繞組按合適的時序通電,就能使步進(jìn)電機(jī)步進(jìn)轉(zhuǎn)動。</p><p><b>  4.2 系統(tǒng)組成</b></p><p><b>  圖4.2 系統(tǒng)組成</b></p><p><

28、b>  5 模塊設(shè)計(jì)</b></p><p>  5.1 FPGA模塊圖及信號說明</p><p>  圖5.1 FPGA模塊圖</p><p>  reset:系統(tǒng)內(nèi)部復(fù)位信號,’1’時有效;</p><p>  dir:步進(jìn)電機(jī)正反轉(zhuǎn)的方向控制開關(guān),0:逆時針,1:順時針;</p><p>  c

29、lk:由FPGA內(nèi)部提供的4MHz的時鐘信號;</p><p>  ini:賦初值的使能開關(guān),’0’時有效;</p><p>  manner:激磁方式的選擇開關(guān)(兩位), 00:自動檢測角度輸入,決定激磁方式01:1-相激磁;10:2.相激磁;11:1-2.相激磁. </p><p>  angle:步進(jìn)角的倍數(shù)設(shè)定輸入鍵.</p><p>

30、;  baba:將內(nèi)部計(jì)數(shù)器的count[3 downto 0]的數(shù)值編碼輸出</p><p>  5.2 系統(tǒng)模塊構(gòu)成</p><p>  系統(tǒng)主要由步進(jìn)電機(jī)方向設(shè)定電路模塊、步進(jìn)電機(jī)步進(jìn)移動與定位控制模塊和編碼輸出模塊構(gòu)成。</p><p>  前兩個模塊完成電機(jī)旋轉(zhuǎn)方向設(shè)定,激磁方式設(shè)定和定位角度的換算等工作,后一個模塊用于對換算后的角度量編碼輸出。</

31、p><p>  5.3 各模塊間整體共享的電路內(nèi)部傳遞信號</p><p>  count:內(nèi)部電路計(jì)數(shù)累加器,用來產(chǎn)生輸出所需對應(yīng)的狀態(tài);</p><p>  cntinc:設(shè)定累加器所需的累加/減計(jì)數(shù)值;</p><p>  sntini:設(shè)定累加器所需的計(jì)數(shù)初值;</p><p>  angledncount:設(shè)定步

32、進(jìn)角所需處理的次數(shù);</p><p>  Angledncntdec:設(shè)定步進(jìn)角所需累減計(jì)數(shù)值;</p><p>  5.4 電機(jī)方向設(shè)定電路模塊</p><p>  該模塊設(shè)定了步進(jìn)電機(jī)的旋轉(zhuǎn)方向以及電機(jī)在任一方向上所需的初值與累加/減值。</p><p>  dir為0時,步進(jìn)電機(jī)工作于逆時針旋轉(zhuǎn)模式,累加值為正數(shù)。</p>

33、<p>  manner 選擇激磁方式 00、01、10、11分別對應(yīng)默認(rèn)激磁方式、1-相激磁方式、2.相激磁方式和1-2.相激磁方式。如表5.1。</p><p>  表5.1 dir為0時</p><p>  dir為1時,步進(jìn)電機(jī)工作于順時針旋轉(zhuǎn)模式,累加值為負(fù)數(shù)。 manner 選擇激磁方式 00、01、10、11分別對應(yīng)默認(rèn)激磁方式、1-相激磁方式、2.相激磁方式和1

34、-2.相激磁方式。如表5.2。</p><p>  表5.2 dir為1時</p><p>  5.5 步進(jìn)電機(jī)步進(jìn)移動與定位控制模塊</p><p>  該模塊的主要功能是利用賦初值ini將數(shù)值傳到該模塊中并配合輸入的clk作為同步控制信號,進(jìn)行步進(jìn)電機(jī)的步進(jìn)移動與定位控制。</p><p>  步進(jìn)電機(jī)定位功能通過一個減法器實(shí)現(xiàn):在每個c

35、lk脈沖上升緣,設(shè)定步進(jìn)角倍數(shù)angledncount 減去不同激磁方式下設(shè)定的累減記數(shù)值angledncntdec,判斷差值小于設(shè)定的累減記數(shù)時,步進(jìn)電機(jī)旋轉(zhuǎn)到預(yù)定角度停止輸出驅(qū)動端口信號,實(shí)現(xiàn)步進(jìn)電機(jī)的定位功能。</p><p>  驅(qū)動端口信號利用累加器實(shí)現(xiàn)。</p><p>  5.6 編碼輸出模塊</p><p>  該模塊的功能是將count與angle

36、dncount產(chǎn)生的數(shù)值經(jīng)過編碼,并通過baBA[3downto0]輸出到步進(jìn)電機(jī)。</p><p><b>  6 程序設(shè)計(jì)與仿真</b></p><p>  library IEEE;</p><p>  use IEEE.std_logic_1164.all;</p><p>  use IEEE.std_logi

37、c_arith.all;</p><p>  use IEEE.std_logic_unsigned.all;</p><p>  entity step_motor is</p><p>  port (reset:in STD_LOGIC; --系統(tǒng)復(fù)位信號</p><p>  dir: in STD_LOGIC; --方向控制信號<

38、;/p><p>  clk: in STD_LOGIC; --系統(tǒng)時鐘信號</p><p>  ini: in STD_LOGIC; --初始化使能信號 </p><p>  manner: in STD_LOGIC_VECTOR (1 downto 0); --激磁方式的選擇開關(guān)</p><p>  angle: in INTEGER rang

39、e 255 downto 0; --步進(jìn)角的倍數(shù)設(shè)定輸入</p><p>  baBA: out STD_LOGIC_VECTOR (3 downto 0)); --步進(jìn)電機(jī)狀態(tài)輸出</p><p>  end step_motor;</p><p>  architecture stepmotor_arch of step_motor is</p>

40、<p>  signal count: INTEGER range 0 to 7; --計(jì)數(shù)器 </p><p>  signal cntInc: INTEGER range -2 to 2; --設(shè)定累加器所需的累(加/減)計(jì)數(shù)值</p><p>  signal cc : integer range 0 to 3;</p><p>  signal c

41、ntIni: INTEGER range -1 to 0; --設(shè)定累加器所需的計(jì)數(shù)初值</p><p>  signal angleDnCount: INTEGER range 255 downto 0; --計(jì)算已經(jīng)轉(zhuǎn)過的步進(jìn)角</p><p>  signal angleDnCntDec: INTEGER range 2 downto 1; </p><p>

42、;<b>  begin</b></p><p>  --步進(jìn)電機(jī)方向設(shè)定電路模塊</p><p>  該模塊的主要功能是設(shè)定步進(jìn)電機(jī)的旋轉(zhuǎn)方向(順時針或逆時針),并設(shè)定電機(jī)在順時針或逆時針轉(zhuǎn)動時所需要初值與累加/減值。</p><p>  process(dir, manner, angle)--, ini)</p><p

43、><b>  begin</b></p><p>  --if ini='1' then</p><p>  cc<=conv_integer(manner);</p><p>  if dir='0' then</p><p>  case cc is</p>

44、<p>  when 1 => -- 1-相激勵</p><p>  --count<=0;</p><p>  cntIni<=0;</p><p>  cntInc<=2;</p><p>  angleDnCntDec<=2;--"10";</p><p

45、>  when 2 => -- 2-相激勵</p><p>  --count<=7;</p><p>  cntIni<=-1;</p><p>  cntInc<=2;</p><p>  angleDnCntDec<=2;--"10"; </p><p&g

46、t;  when 3 => -- 1-2相激勵</p><p>  --count<=0;</p><p>  cntIni<=0;</p><p>  cntInc<=1;</p><p>  angleDnCntDec<=1;--"01"; </p><p>

47、;  when 0 => --manner="00" autodetect </p><p>  if (angle rem 2) =1 then -- 2-相激勵</p><p>  --count<=7;</p><p>  cntIni<=-1;</p><p>  cnt

48、Inc<=2;</p><p>  angleDnCntDec<=2;--"10"; </p><p>  else -- 1-相激勵 </p><p>  --count<=0;</p><p>  cntIni<=0;</p><p&g

49、t;  cntInc<=2;</p><p>  angleDnCntDec<=2;--"10";</p><p>  end if; --angle</p><p>  end case; --manner</p><p>  else -- if dir='1'</p><

50、;p>  case cc is</p><p>  when 1 => -- 1-相激勵</p><p>  --count<=0;</p><p>  cntIni<=0;</p><p>  cntInc<=-2;</p><p>  angleDnCntDec<=2;--&q

51、uot;10";</p><p>  when 2 => -- 2-相激勵</p><p>  --count<=7;</p><p>  cntIni<=-1;</p><p>  cntInc<=-2;</p><p>  angleDnCntDec<=2;--"

52、10"; </p><p>  when 3 => -- 1-2相激勵</p><p>  --count<=0;</p><p>  cntIni<=0;</p><p>  cntInc<=-1;</p><p>  angleDnCntDec<=1;--"0

53、1"; </p><p>  when 0 => --manner="00" autodetect </p><p>  if (angle rem 2) = 1 then -- 2-相激勵</p><p>  cntIni<=-1;</p><p>  cntInc&

54、lt;=-2;</p><p>  angleDnCntDec<=2;--"10"; </p><p>  else -- 1-相激勵 </p><p>  cntIni<=0;</p><p>  cntInc<=-2;</p><p> 

55、 angleDnCntDec<=2;--"10";</p><p>  end if; --angle</p><p>  end case; --manner</p><p>  end if; -- else dir=0</p><p>  --end if; -- ini</p><p>

56、;  end process;</p><p>  --步進(jìn)電機(jī)步進(jìn)移動與定位控制電路模塊</p><p>  該模塊的主要功能是利用ini(使能開關(guān)),將數(shù)值傳到該模塊中,并配合輸入的clk(系統(tǒng)時鐘)作為同步控制信號,進(jìn)行步進(jìn)機(jī)的步進(jìn)移動與定位控制。</p><p>  counting_reset: process(reset,ini, angle, clk)

57、</p><p><b>  begin</b></p><p>  if reset='1' then</p><p><b>  count<=0;</b></p><p>  angleDnCount<=0; </p><p>  elsif

58、 clk'event and clk='1' then</p><p>  if ini='0' then</p><p>  count<=0+cntIni;</p><p>  angleDnCount<=angle;</p><p><b>  else</b>&

59、lt;/p><p>  count <= count+cntInc;</p><p>  if angleDnCount > angleDnCntDec then</p><p>  angleDnCount <= angleDnCount-angleDnCntDec;</p><p><b>  else</b

60、></p><p>  angleDnCount <= 0;</p><p><b>  end if; </b></p><p><b>  end if;</b></p><p><b>  end if;</b></p><p>  e

61、nd process;</p><p>  --編碼輸出電路模塊</p><p>  該模塊的功能是將count和angledncount產(chǎn)生的數(shù)值經(jīng)過編碼,并利用baBA輸出連線信號,將結(jié)果輸出顯示。</p><p>  baBA <="0000" when angleDnCount=0 else</p><p>

62、  "0001" when count=0 else</p><p>  "0011" when count=1 else</p><p>  "0010" when count=2 else</p><p>  "0110" when count=3 else</p>&

63、lt;p>  "0100" when count=4 else</p><p>  "1100" when count=5 else</p><p>  "1000" when count=6 else</p><p>  "1001";-- when count>=7;&l

64、t;/p><p>  end stepmotor_arch;</p><p><b>  7 仿真結(jié)果</b></p><p><b>  圖7.1 編譯結(jié)果</b></p><p><b>  7.2RTL視圖</b></p><p>  圖7.3 時序仿

65、真部分結(jié)果</p><p>  圖7.4 局部時序仿真結(jié)果</p><p><b>  結(jié)果分析:</b></p><p>  1、從編譯結(jié)果中可以看出片上資源使用情況。</p><p>  Total logic elements 31/8256(<1%): 該芯片中共有8256個LE資源,其中有31個在這次編譯

66、中使用。</p><p>  Total combinational functions 32/8256(<1%):該芯片中共有8256個LE資源,有31個用于實(shí)現(xiàn)組合邏輯。</p><p>  Dedicated logic redisters 11/8256(1%):該芯片中共有8256個LE資源,其中有11個用于實(shí)現(xiàn)寄存器,即時序邏輯。</p><p>

67、  也從上得出組合邏輯和時序邏輯的比例為31/11=2.8:1。 </p><p>  2、從局部時序仿真結(jié)果中可以看出:當(dāng)ini無效時,dir=0表示逆時針方向轉(zhuǎn)動,manner=10,決定2-相激磁方式,此時的baBA對應(yīng)輸出順序?yàn)?011(45度)、0110(135度)、1100(225度)、1001(315度)再循環(huán),滿足2-相激磁方式的順序結(jié)果正確。</p><p><b&

68、gt;  8 實(shí)驗(yàn)總結(jié)</b></p><p>  本文所設(shè)計(jì)的步進(jìn)電機(jī)控制系統(tǒng)實(shí)現(xiàn)簡單,編程容易,所設(shè)計(jì)系統(tǒng)實(shí)現(xiàn)了對電機(jī)模組的預(yù)定控制,較好的完成了設(shè)計(jì)要求。采用Verilog和FPGA設(shè)計(jì),能夠縮短設(shè)計(jì)周期,并使設(shè)計(jì)易于調(diào)試、實(shí)現(xiàn)。在系統(tǒng)需升級時,僅需對FPGA模塊再設(shè)計(jì),成本較低。</p><p>  從仿真結(jié)果來看,利用FPGA芯片嚴(yán)謹(jǐn)?shù)幕谟布木幊陶Z言和精確的時間控

69、制特點(diǎn),準(zhǔn)確地實(shí)現(xiàn)了精確定位功能,并利用直接頻率合成理論中的相位累加器的原理同時實(shí)現(xiàn)了對步進(jìn)電機(jī)的運(yùn)行速度的精確控制。實(shí)踐證明,這種方法定位準(zhǔn)確,控制速度精確,是一種行之有效的方案。</p><p><b>  9參考文獻(xiàn)</b></p><p>  [1] 王紫婷,吳蓉 ,張彩珍,EDA技術(shù)與應(yīng)用,蘭州大學(xué)出版社,2003</p><p> 

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論