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

基于Nios II步進(jìn)電機(jī)控制器IP核的設(shè)計(jì)與實(shí)現(xiàn)

2011-06-01 02:54:04劉洪朋葛廣英
電子科技 2011年12期
關(guān)鍵詞:信號設(shè)計(jì)

劉洪朋,葛廣英

(聊城大學(xué)物理科學(xué)與信息工程學(xué)院,山東聊城 252059)

隨著系統(tǒng)級芯片集成度越來越高,SOPC技術(shù)成為電子系統(tǒng)設(shè)計(jì)的熱點(diǎn)。它是利用FPGA器件的可編程性進(jìn)行SOC設(shè)計(jì),其最突出優(yōu)點(diǎn)是在提供豐富IP庫的情況下,用戶可以利用IP庫中的組件按需求來搭建系統(tǒng),有較大的靈活性。但是在供應(yīng)商提供的IP庫中沒有用戶所需的IP核時,用戶只能根據(jù)需要自定義IP核。另外,F(xiàn)PGA的傳統(tǒng)應(yīng)用是在通信、工業(yè)控制等領(lǐng)域。鑒于此,設(shè)計(jì)了一款步進(jìn)電機(jī)控制器IP核,它具有對步進(jìn)電機(jī)的轉(zhuǎn)速、轉(zhuǎn)向及運(yùn)轉(zhuǎn)節(jié)拍數(shù)進(jìn)行控制的功能。

1 步進(jìn)電機(jī)驅(qū)動原理

步進(jìn)電機(jī)驅(qū)動是通過按一定順序切換每相線圈中的電流,以達(dá)到旋轉(zhuǎn)切換步進(jìn)電機(jī)的過程。其中,步進(jìn)電機(jī)的控制轉(zhuǎn)速與各繞組中輸入脈沖的頻率成正比,轉(zhuǎn)向則取決于控制繞組中的通電順序。步進(jìn)電機(jī)按其勵磁相數(shù)可以分為三相、四相、五相、六相甚至八相制式。其中工業(yè)常用的是三相、四相勵磁制式。其中三相制式又包括單三拍(A-B-C-A)方式及雙三拍(AB-BC-CA-AB)方式,而四相制式則有三種常見方式,即雙四拍(AB-BC-CD-DA-AB)方式;單四拍(A-B-C-D-A)方式;單、雙八拍(A-AB-BBC-C-CD-D-DA-A)方式。

2 步進(jìn)電機(jī)控制器IP核設(shè)計(jì)

對于面向Nios II處理器開發(fā)的所有IP核,包括從設(shè)備IP核和主設(shè)備IP核兩大類。文中設(shè)計(jì)的步進(jìn)電機(jī)控制器IP核是一個受控對象,屬于從設(shè)備。Nios II處理器通過Avalon總線對步進(jìn)電機(jī)控制器IP核的寄存器進(jìn)行參數(shù)設(shè)置,實(shí)現(xiàn)對步進(jìn)電機(jī)的一系列操作。其中Avalon總線接口規(guī)范的功能是它定義了信號類型、信號的行為及傳輸類型等信息。

一個典型的IP核由硬件文件、軟件文件及組件描述文件組成,步進(jìn)電機(jī)控制器IP核也嚴(yán)格按照規(guī)范來編寫。它的硬件文件由多個HDL模塊組合完成硬件設(shè)計(jì),其中包括邏輯任務(wù)模塊、寄存器模塊及接口模塊,其原理如圖1所示,軟件文件則由寄存器頭文件、驅(qū)動文件組成。Nios II開發(fā)工具自2006年公布新版本以后,軟件可以自動生成組件描述文件。

2.1 硬件文件設(shè)計(jì)

IP核設(shè)計(jì)部分中的邏輯任務(wù)模塊根據(jù)寄存器模塊傳遞的參數(shù)產(chǎn)生步進(jìn)電機(jī)控制所需的脈沖信號;寄存器模塊則用來存儲Avalon總線傳來的參數(shù),包括步進(jìn)電機(jī)的轉(zhuǎn)速、勵磁相數(shù)、正/反轉(zhuǎn)參數(shù)、節(jié)拍數(shù)等;接口模塊是一個符合 Avalon規(guī)范的接口,起著連接Avalon總線與IP核寄存器模塊橋梁的作用。

圖1 Avalon接口硬件電路原理圖

2.1.1 邏輯任務(wù)模塊設(shè)計(jì)

產(chǎn)生控制步進(jìn)電機(jī)所需的脈沖信號一般可以采用ROM查表法或狀態(tài)機(jī)法。本文采用狀態(tài)機(jī)法,即狀態(tài)機(jī)的每個狀態(tài)輸出一種脈沖信號。以四相單、雙八拍制式來控制步進(jìn)電機(jī)舉例進(jìn)行說明,其模塊設(shè)計(jì)原理如圖2所示,圖中共有8種狀態(tài),每種狀態(tài)對應(yīng)每種輸出狀態(tài)。該制式電機(jī)相位順序?yàn)锳-AB-B-BCC-CD-D-DA,那么輸出狀態(tài)即為1000-1100-0100-0110-0010-0011-0001-1001。

圖2 采用狀態(tài)機(jī)設(shè)計(jì)步進(jìn)電機(jī)控制驅(qū)動原理圖

邏輯任務(wù)模塊采用VHDL語言進(jìn)行編寫,本模塊采用控制規(guī)則如下,其中,xiangwei為控制電機(jī)的相位;direction為控制電機(jī)正/反轉(zhuǎn)位;pai為選擇節(jié)拍數(shù)位。

(1)如果 xiangwei為 0,direction 為 0,pai為 00,電機(jī)轉(zhuǎn)向?yàn)镃-B-A-C(三相單拍反轉(zhuǎn))。

(2)如果 xiangwei為 0,direction 為 0,pai為 01,電機(jī)轉(zhuǎn)向?yàn)镃B-BA-AC(三相雙拍反轉(zhuǎn))。

(3)如果 xiangwei為 0,direction 為 1,pai為 00,電機(jī)轉(zhuǎn)向?yàn)锳-B-C(三相單拍正轉(zhuǎn))。

(4)如果 xiangwei為 0,direction 為 1,pai為 01,電機(jī)轉(zhuǎn)向?yàn)锳B-BC-CA(三相雙拍正轉(zhuǎn))。

(5)如果 xiangwei為 1,direction 為 0,pai為 00,電機(jī)轉(zhuǎn)向?yàn)?D-C-B-A(四相單拍反轉(zhuǎn))。

(6)如果 xiangwei為1,direction 為 0,pai為 01,電機(jī)轉(zhuǎn)向?yàn)镈C-CB-BA-AD(四相雙拍反轉(zhuǎn))。

(7)如果 xiangwei為 1,direction 為 0,pai10,電機(jī)轉(zhuǎn)向?yàn)镈-DC-C-CB-B-BA-A-AD-DC-CCB-B-BA-A-AD(四相單、雙拍反轉(zhuǎn))。

(8)如果 xiangwei為1,direction 為 1,pai為 00,電機(jī)轉(zhuǎn)向?yàn)锳-B-C-D(四相單拍正轉(zhuǎn))。

(9)如果 xiangwei為1,direction 為 1,pai為 01,電機(jī)轉(zhuǎn)向?yàn)锳B-BC-CD-DA(四相雙拍正轉(zhuǎn))。

(10)如果 xiangwei為 1,direction 為 1,pai為 10,電機(jī)轉(zhuǎn)向?yàn)锳-AB-B-BC-C-CD-D-DA(四相單、雙拍正轉(zhuǎn))。

根據(jù)上述控制規(guī)則編寫邏輯任務(wù)模塊程序并進(jìn)行仿真,得到仿真結(jié)果如圖3所示,所得結(jié)果與設(shè)計(jì)要求一致。

圖3 邏輯任務(wù)模塊仿真圖

2.1.2 寄存器模塊

寄存器模塊的作用是存儲IP核與外界交換的信息。驅(qū)動程序可以通過Avalon接口采用“基地址+地址偏移量”的方式讀取各寄存器的數(shù)據(jù)。設(shè)計(jì)一共有3個寄存器,即方向寄存器、勵磁制式選擇寄存器、節(jié)拍寄存器。設(shè)計(jì)方法:在reset無效,clock和write有效的前提下,若address信號為“00”時,writedata數(shù)據(jù)則寫入方向寄存器direction中;當(dāng)address信號為“01”時,writedata數(shù)據(jù)寫入節(jié)拍寄存器pai中;當(dāng)address信號為“10”時,writedata數(shù)據(jù)寫入勵磁制式選擇寄存器中。對此模塊進(jìn)行編程仿真,仿真結(jié)果如圖4。圖中可以看到當(dāng)address為00時,方向寄存器direction數(shù)據(jù)與writedata的數(shù)據(jù)都為1;address為01時,節(jié)拍寄存器pai數(shù)據(jù)與writedata數(shù)據(jù)相同;address為10時,勵磁制式選擇寄存器xiang數(shù)據(jù)與writedata一致。

圖4 寄存器接口仿真圖

2.1.3 接口模塊

接口模塊作為頂層模塊,為寄存器文件模塊提供了一個標(biāo)準(zhǔn)的Avalon前端,它使用Avalon必需的信號來訪問寄存器文件,并且支持任務(wù)邏輯的傳輸類型,負(fù)責(zé)復(fù)位、片選、尋址及對內(nèi)部寄存器進(jìn)行讀寫等,主要完成從Nios II處理器接收指令和數(shù)據(jù)。對于步進(jìn)電機(jī)控制器 IP核,用到接口模塊信號有:clk,reset,chipselect,address,write,writedata 信號。

2.2 軟件設(shè)計(jì)

軟件設(shè)計(jì)包括寄存器頭文件、驅(qū)動軟件的設(shè)計(jì)。

2.2.1 寄存器頭文件

寄存器頭文件定義了外設(shè)的底層硬件訪問接口信息,程序員只需使用定義與該頭文件的宏來操作外設(shè),其好處在于使應(yīng)用程序獨(dú)立于底層硬件。設(shè)計(jì)首先創(chuàng)建一個寄存器頭文件altera_avalon_stepping_regs.h,它的功能用于描述步進(jìn)電機(jī)控制IP核設(shè)備的3個寄存器。

2.2.2 驅(qū)動軟件

驅(qū)動軟件包括altera_avalon_stepping_routines.h和altera_avalon_stepping_routines.c文件。altera_avalon_stepping_routines.h定義了驅(qū)動函數(shù)的原型及常量。其函數(shù)定義語句為:

int altera_avalon_stepping_init(unsigned int address,unsigned int data1,unsigned int data2,unsigned int data3,int error);

int ltera_avalon_stepping_enable(unsigned int address);

int tera_avalon_stepping_disable(unsigned int address);

3 生成IP核

將軟硬件文件編譯完畢后,就需要在SOPC Builder軟件中利用Component Editor生成工具封裝成自定義組件。設(shè)置好HDL files、Signals、Interface以及SW files選項(xiàng)后,生成的IP核便成功設(shè)置在組件框內(nèi)。利用此IP核即可與其他IP核聯(lián)合搭建構(gòu)成一個步進(jìn)電機(jī)嵌入式控制系統(tǒng)。整個系統(tǒng)結(jié)構(gòu)圖如圖5所示。

圖5 步進(jìn)電機(jī)控制器IP核及由其搭建的系統(tǒng)結(jié)構(gòu)

4 結(jié)束語

提出的基于Nios II的步進(jìn)電機(jī)控制器IP核設(shè)計(jì)采用的軟件平臺是Quartus II6.0和Nios II IDE6.0,硬件平臺采用康芯公司的SOPC實(shí)驗(yàn)系統(tǒng),步進(jìn)電機(jī)控制IP核的占用資源為20%,它可以移值到所有Altera公司支持SOPC技術(shù)的芯片上。采用SOPC技術(shù)設(shè)計(jì)的自定義步進(jìn)電機(jī)控制IP核,在提高效率、縮短開發(fā)周期的前提下,可以滿足工業(yè)控制場合的需要及開源升級。

[1]潘松,黃繼業(yè).EDA技術(shù)實(shí)用教程[M].北京:科學(xué)出版社,2010.

[2]李蘭英.Nios II嵌入式軟核SOPC設(shè)計(jì)原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2009.

[3]鄭恭明,沈媛媛.基于Nios II的偽隨機(jī)序列信號發(fā)生器IP核設(shè)計(jì)[J].工礦自動化,2011(2):52-55.

[4]高楓,王玉松.基于NiosII自定制Avalon設(shè)備的設(shè)計(jì)與實(shí)現(xiàn)[J].中國測試技術(shù),2007,33(4):105 -108.

[5]殷蘇民,楊仁宇.基于Avalon總線的插補(bǔ)器IP核的設(shè)計(jì)[J].機(jī)械設(shè)計(jì)與制造,2009(8):198 -200.

[6]章智慧,白瑞林,沈憲明.面向SOPC Builder的用戶自定義 IP 核開發(fā)[J].自動化儀表,2006,27(9):23 -26.

猜你喜歡
信號設(shè)計(jì)
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
何為設(shè)計(jì)的守護(hù)之道?
《豐收的喜悅展示設(shè)計(jì)》
流行色(2020年1期)2020-04-28 11:16:38
孩子停止長個的信號
瞞天過海——仿生設(shè)計(jì)萌到家
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計(jì)的信號盲抽取算法
主站蜘蛛池模板: 国产一区二区三区免费观看| 午夜激情福利视频| 2020精品极品国产色在线观看| 波多野结衣爽到高潮漏水大喷| 999精品视频在线| 国产乱视频网站| 国产福利小视频在线播放观看| 91精品网站| 欧美黄网站免费观看| 国产香蕉一区二区在线网站| 国内精品免费| 亚洲女同一区二区| 国产亚洲精品自在线| 国产福利影院在线观看| 亚洲成人在线免费| 欧美日韩另类在线| 亚洲天堂视频在线播放| 久久久久亚洲Av片无码观看| 国产综合网站| 91国内外精品自在线播放| 综合亚洲网| 亚洲欧美天堂网| 亚洲国产中文精品va在线播放| 成人在线亚洲| 国产一区二区免费播放| 国产成人精彩在线视频50| 欧美国产日本高清不卡| 国产一区二区人大臿蕉香蕉| 色哟哟国产成人精品| 国产在线视频自拍| 色偷偷一区二区三区| 久久国产精品国产自线拍| 一区二区欧美日韩高清免费| 538国产视频| 久久99国产乱子伦精品免| 五月天在线网站| 九九久久精品国产av片囯产区| 日本成人一区| 九九九精品成人免费视频7| 亚洲无码电影| 亚洲欧美成人影院| 亚洲日韩在线满18点击进入| 久久精品日日躁夜夜躁欧美| 久久精品只有这里有| 午夜国产小视频| 欧美精品不卡| 国产精品任我爽爆在线播放6080| 国产美女精品在线| 亚洲最新地址| 国产午夜在线观看视频| 久久综合丝袜日本网| 中国毛片网| av一区二区人妻无码| 国产经典在线观看一区| 国产成人精品一区二区三在线观看| 免费观看亚洲人成网站| 伊人AV天堂| 欧美成人综合在线| 新SSS无码手机在线观看| 久久综合结合久久狠狠狠97色| 国产91丝袜| 亚洲一区二区三区在线视频| jizz在线免费播放| 成人在线亚洲| 国产噜噜噜视频在线观看| 欧美全免费aaaaaa特黄在线| 114级毛片免费观看| 亚洲第一成人在线| 波多野结衣中文字幕一区| AV无码一区二区三区四区| jizz国产视频| 五月婷婷丁香综合| 国产爽歪歪免费视频在线观看| 欧美亚洲激情| 成人免费视频一区二区三区| 国产欧美精品一区aⅴ影院| 欧美爱爱网| igao国产精品| 国产午夜不卡| 精品乱码久久久久久久| 亚洲综合久久一本伊一区| 欧美伦理一区|