步進(jìn)電機(jī)控制
步進(jìn)電機(jī)控制,步進(jìn),電機(jī),機(jī)電,控制,節(jié)制
中國(guó)科學(xué)技術(shù)大學(xué)本科畢業(yè)論文
中國(guó)科學(xué)技術(shù)大學(xué)
本科生畢業(yè)論文
題目:基于CPLD的步進(jìn)電機(jī)驅(qū)動(dòng)設(shè)計(jì)
系別:精密機(jī)械與精密儀器系
專業(yè):測(cè)控技術(shù)與儀器
學(xué)制: 五 年
姓名: 王 修 壯
學(xué)號(hào): PB99009025
導(dǎo)師: 邢曉正 翟 超
二零零三年六月
中 文 摘 要
在LAMOST光纖定位系統(tǒng)中,尋星的準(zhǔn)確性、可靠性無(wú)疑是一個(gè)重要指標(biāo),而系統(tǒng)能否可靠、準(zhǔn)確地尋星,其前提是各定位單元能夠穩(wěn)定、可靠地工作。因此,為了使LAMOST項(xiàng)目設(shè)計(jì)順利完成,必須對(duì)定位用的步進(jìn)電機(jī)控制裝置做仔細(xì)地研究。
本文系統(tǒng)論述了步進(jìn)電機(jī)控制裝置的作用、組成;控制裝置中CPLD(Complex Programmable Logic Device)系統(tǒng)的軟硬件設(shè)計(jì),包括電機(jī)驅(qū)動(dòng)電路的整體設(shè)計(jì);硬件采用ALTERA公司的ACEX 1K 系列;開(kāi)發(fā)系統(tǒng)采用ALTERA公司的Max+PlusⅡ10.0和MENTOR公司的Modelsim SE 5.6。
通過(guò)以上幾個(gè)部分的研究使我們對(duì)LAMOST中步進(jìn)電機(jī)的驅(qū)動(dòng)控制問(wèn)題有了較為深入的了解,為今后光纖定位系統(tǒng)的改進(jìn)建設(shè)打下了良好的基礎(chǔ),同時(shí),研究結(jié)果表明了該控制裝置用于LAMOST項(xiàng)目的可行性。
關(guān)鍵詞:LAMOST,CPLD,VHDL
ABSTRACT
In the LAMOST optical fiber positioning system, the veracity and reliability of seeking stars are two undoubtedly important design targets. Meanwhile, the precondition for the system to reach those targets is that every positioning unit can work smoothly and reliably. So we must research the multi-stepping-motor control apparatus used for LAMOST optical fibers’ positioning carefully so we can design the LAMOST optical fiber positioning system well.
The main work of this paper is to determine the functions and parts of multi-stepping-motor control apparatus; the software and hardware design of CPLD(Complex Programmable Logic Device) system as part of the multi-stepping-motor control apparatus, including programming of all kinds of movement control. The language we used is VHDL(VHSIC Hardware Description Language) and we design the system with Max+plusⅡ10.0 and Modelsim SE 5.6.
Keywords: LAMOST, CPLD, VHDL
目 錄
中文內(nèi)容摘要 …………………………………………………………………3
英文內(nèi)容摘要 …………………………………………………………………4
第一章 緒論 …………………………………………………………………5
第一節(jié)LAMOST項(xiàng)目簡(jiǎn)介……………………………………………………5
第二節(jié)LAMOST的總體結(jié)構(gòu)及工作方式……………………………………5
第三節(jié) 步進(jìn)電機(jī)控制裝置的研究…………………………………………6
第二章 可編程邏輯器件及EDA技術(shù)…………………………………………7
第一節(jié) 數(shù)字系統(tǒng)設(shè)計(jì)的發(fā)展及應(yīng)用 ……………………………………7
第二節(jié) EDA技術(shù)的主要特征………………………………………………9
第三節(jié) EDA設(shè)計(jì)的基本工具………………………………………………12
第三章 硬件描述語(yǔ)言…………………………………………………………14
第一節(jié) 概述…………………………………………………………………14
第二節(jié) VHDL…………………………………………………………………15
第四章 步進(jìn)電機(jī)的驅(qū)動(dòng)程序設(shè)計(jì)……………………………………………20
第一節(jié) 步進(jìn)電機(jī)的工作原理………………………………………………20
第二節(jié) 步進(jìn)電機(jī)的驅(qū)動(dòng)電源………………………………………………20
第三節(jié) 分頻程序的設(shè)計(jì)……………………………………………………23
一、 分頻電路的實(shí)現(xiàn) …………………………………………………23
二、 升降速曲線的設(shè)計(jì) ………………………………………………26
三、 低頻到高頻再到低頻的實(shí)現(xiàn) ……………………………………27
四、 環(huán)形分配器的實(shí)現(xiàn) ………………………………………………29
五、 系統(tǒng)綜合 …………………………………………………………31
六、 基于CPLD的步進(jìn)電機(jī)驅(qū)動(dòng)設(shè)計(jì)的優(yōu)點(diǎn)…………………………33
七、 今后的工作 ………………………………………………………34
結(jié)束語(yǔ) ………………………………………………………………………35
參考文獻(xiàn) ……………………………………………………………………36
第一章 緒論
第一節(jié)LAMOST項(xiàng)目簡(jiǎn)介
LAMOST是英文“Large Sky Area Multi-Object Fiber Spectroscopy Telescope” 的縮寫形式,中文全名為“大天區(qū)多目標(biāo)光纖光譜天文望遠(yuǎn)鏡”。它是一臺(tái)兼?zhèn)浯笠晥?chǎng)和大口徑的反射式施密特天文望遠(yuǎn)鏡,其有效通光口徑為4米,焦距為20米,視場(chǎng)達(dá)21平方度,可觀測(cè)的覆蓋天區(qū)超過(guò)2萬(wàn)平方度,在它固定的線直徑為1.75米的焦面板上,按要求在觀測(cè)對(duì)象的位置上布置了4000 根光纖,通過(guò)選擇最佳的觀測(cè)時(shí)機(jī)和適當(dāng)?shù)膬?yōu)化組合,可以同時(shí)對(duì)幾千個(gè)天體目標(biāo)進(jìn)行觀測(cè)。LAMOST在常規(guī)觀測(cè)下,可以進(jìn)行測(cè)量暗至21.0等的恒星或者是暗至20.7等的星系。
它的建成將為眾多科研課題的進(jìn)展提供很大的便利,尤其對(duì)于天文學(xué)領(lǐng)域來(lái)說(shuō),更是具有重大的意義,因此,LAMOST項(xiàng)目被列為我國(guó)跨世紀(jì)重大科學(xué)工程之一。
第二節(jié)LAMOST的總體結(jié)構(gòu)及工作方式
LAMOST的總體結(jié)構(gòu)見(jiàn)圖1-1。
它按中星儀方式工作,對(duì)過(guò)中天前后的天體進(jìn)行觀測(cè)。其施密特改正板采用主動(dòng)光學(xué)控制,位于主鏡的球心處,來(lái)自天體的光線首先射向施密特改正板,然后再反射到主鏡的球面反射鏡上,因此只需要適當(dāng)轉(zhuǎn)動(dòng)施密特改正板,就可以使望遠(yuǎn)鏡實(shí)現(xiàn)跟蹤觀測(cè)。
球面反射主鏡的半徑為40米,來(lái)自天體的光線反射到主鏡之后,由主鏡在焦面上成像。焦面板位于主鏡的焦面的位置,上面呈蜂窩狀分布著4000個(gè)光纖端,每個(gè)光纖由兩個(gè)步進(jìn)電機(jī)通過(guò)以單片機(jī)為核心的控制裝置進(jìn)行控制,同時(shí)瞄準(zhǔn)4000個(gè)天體,將光引至光譜分析儀上,對(duì)天體的光譜進(jìn)行分析,最終獲得天體的光譜樣本資料。
圖1-1 LAMOST總體結(jié)構(gòu)示意圖
第三節(jié) 步進(jìn)電機(jī)控制裝置的研究
如此眾多的光纖,如何準(zhǔn)確、可靠地完成它們的定位,使其能夠達(dá)到同時(shí)觀測(cè)4000顆星體的要求,是整個(gè)項(xiàng)目中的難點(diǎn)。多步進(jìn)電機(jī)并行控制裝置對(duì)于可控式光纖定位單元系統(tǒng)是至關(guān)重要的,它設(shè)計(jì)的好壞、能否安全、可靠、有效、高速地工作,將直接關(guān)系到 LAMOST項(xiàng)目的成敗,所以必須對(duì)其進(jìn)行研究。
本文系統(tǒng)論述了步進(jìn)電機(jī)控制裝置的作用、組成;控制裝置中CPLD(Complex Programmable Logic Device)系統(tǒng)的軟硬件設(shè)計(jì),包括電機(jī)驅(qū)動(dòng)電路的整體設(shè)計(jì);硬件采用ALTERA公司的ACEX 1K 系列;開(kāi)發(fā)系統(tǒng)采用ALTERA公司的Max+PlusⅡ10.0和MENTOR公司的Modelsim SE 5.6。
第二章 可編程邏輯器件及EDA技術(shù)
第一節(jié) 數(shù)字系統(tǒng)設(shè)計(jì)的發(fā)展及應(yīng)用
一、EDA技術(shù)的發(fā)展
EDA(Electronic Design Automatic )技術(shù),也稱電子設(shè)計(jì)自動(dòng)化技術(shù),是在電子CAD(Computer Aided Design )技術(shù)的基礎(chǔ)上發(fā)展起來(lái)的計(jì)算機(jī)設(shè)計(jì)軟件系統(tǒng),它是計(jì)算機(jī)技術(shù)、信息技術(shù)和CAM(計(jì)算機(jī)輔助制造)、CAT(計(jì)算機(jī)輔助測(cè)試)等技術(shù)發(fā)展的產(chǎn)物。
EDA技術(shù)發(fā)展過(guò)程如下:
第一代EDA工具:二十世紀(jì)七十年代,此時(shí)主要用于版圖的設(shè)計(jì)和印刷板(PCB)的布局布線。
第二代EDA工具:八十年代初,主要用于門級(jí)電路的層次設(shè)計(jì),功能包括邏輯圖的設(shè)計(jì)輸入、仿真、自動(dòng)布局布線和驗(yàn)證,版圖由EDA工具自動(dòng)生成。
第三代EDA工具:八十年代末,基于硬件的描述語(yǔ)言HDL(Hardware Description Language) 、系統(tǒng)的仿真及綜合設(shè)計(jì)。
第四代EDA工具:九十年代末,電子設(shè)計(jì)由輔助手段變?yōu)橹饕侄?。設(shè)計(jì)者從事概念設(shè)計(jì)或者是電子系統(tǒng)的“行為設(shè)計(jì)”,而大部分工程中的技術(shù)問(wèn)題,由EDA工具解決。
EDA工具的出現(xiàn),極大地提高了系統(tǒng)設(shè)計(jì)的效率,使廣大的電子設(shè)計(jì)師開(kāi)始實(shí)現(xiàn)“概念驅(qū)動(dòng)工程”的夢(mèng)想。利用EDA工具,電子設(shè)計(jì)師可以從概念、算法、協(xié)議等開(kāi)始設(shè)計(jì)電子系統(tǒng),大量工作可以通過(guò)計(jì)算機(jī)完成,并可以將電子產(chǎn)品從電路設(shè)計(jì)、性能分析到設(shè)計(jì)出印制板的整個(gè)過(guò)程在計(jì)算機(jī)上自動(dòng)處理完成。設(shè)計(jì)師們擺脫了大量的具體設(shè)計(jì)工作,而把精力集中于創(chuàng)造性的方案與概念構(gòu)思上,從而極大地提高了設(shè)計(jì)效率,縮短了產(chǎn)品的研制周期。
EDA工具的開(kāi)發(fā)經(jīng)歷了兩個(gè)大的階段:物理工具階段和邏輯工具階段。物理工具用來(lái)完成設(shè)計(jì)中的實(shí)際物理問(wèn)題,如芯片布局、印刷電路板布線等;邏輯工具是基于網(wǎng)表、布爾邏輯、傳輸時(shí)序等概念。首先由原理圖編輯器或硬件描述語(yǔ)言進(jìn)行設(shè)計(jì)輸入,然后利用EDA系統(tǒng)完成綜合、仿真、優(yōu)化等過(guò)程,最后生成物理工具可以接受的網(wǎng)表或VHDL、VerilogHDL的結(jié)構(gòu)化描述?,F(xiàn)在常見(jiàn)的EDA工具有編輯器、仿真器、檢查/分析工具、優(yōu)化/綜合工具等。
目前,用PLD器件進(jìn)行系統(tǒng)設(shè)計(jì)已成為現(xiàn)代數(shù)字系統(tǒng)設(shè)計(jì)的主要手段之一。傳統(tǒng)的編程技術(shù)是將PLD器件插在編程器上進(jìn)行編程,而“在系統(tǒng)可編程” (ISP即In System Programmable)邏輯器件的問(wèn)世,將充分發(fā)揮可編程器件的優(yōu)越性。它允許用戶“在系統(tǒng)中”編輯和修改邏輯,給使用者提供了在不修改系統(tǒng)硬件設(shè)計(jì)的條件下重構(gòu)系統(tǒng)的能力和硬件升級(jí)能力,使硬件修改變得像軟件修改一樣方便。ISP技術(shù),即直接在用戶設(shè)計(jì)的目標(biāo)系統(tǒng)中或線路板上對(duì)PLD器件進(jìn)行編程的技術(shù)打破了使用PLD先編程后裝配的慣例,而可以先裝配后編程,成為產(chǎn)品后還可反復(fù)編程.
二、數(shù)字集成電路的發(fā)展
自20世紀(jì)60年代以來(lái),數(shù)字集成電路已經(jīng)歷了從SSI、MSI到LSI、VLSI的發(fā)展過(guò)程。20世紀(jì)70年代初以1K位存儲(chǔ)器為標(biāo)志的大規(guī)模集成電路(LSI)問(wèn)世以后,微電子技術(shù)得到迅猛發(fā)展,集成電路的集成規(guī)模幾乎以平均每1~2年翻一番的驚人速度迅速增長(zhǎng)。
專用集成電路(ASIC—Application Specific Integrated Circuit)是指專門為某一應(yīng)用領(lǐng)域或?yàn)閷iT用戶需要而設(shè)計(jì)、制造的LSI或VLSI電路,它可以將某些專用電路或電子系統(tǒng)設(shè)計(jì)在一個(gè)芯片上,構(gòu)成單片集成系統(tǒng)。ASIC可分為數(shù)字ASIC和模擬ASIC,數(shù)字ASIC又分為全定制和半定制兩種。
全定制ASIC芯片的各層(掩膜)都是按特定電路功能專門制造的。設(shè)計(jì)人員從晶體管的版圖尺寸、位置和互連線開(kāi)始設(shè)計(jì),以達(dá)到芯片面積利用率高、速度快、功耗低的最優(yōu)性能,但其設(shè)計(jì)制作費(fèi)用高,周期長(zhǎng),因此只適用于批量較大的產(chǎn)品。
半定制是一種約束性設(shè)計(jì)方式。約束的主要目的是簡(jiǎn)化設(shè)計(jì)、縮短設(shè)計(jì)周期和提高芯片成品率。目前半定制ASIC主要有門陣列、標(biāo)準(zhǔn)單元和可編程邏輯器件三種。
門陣列(Gate Array)是一種預(yù)先制造好的硅陣列(母片),內(nèi)部包括幾種基本邏輯門、觸發(fā)器等,芯片中留有一定的連線區(qū)。用戶根據(jù)所需要的功能設(shè)計(jì)電路,確定連線方式,然后再交生產(chǎn)廠家布線。
標(biāo)準(zhǔn)單元(Standard Cell)是廠家將預(yù)先配置好、經(jīng)過(guò)測(cè)試.具有一定功能的邏輯塊作為標(biāo)準(zhǔn)單元存儲(chǔ)在數(shù)據(jù)庫(kù)中,設(shè)計(jì)人員在電路設(shè)計(jì)完成之后,利用CAD工具在版圖一級(jí)完成與電路一一對(duì)應(yīng)的最終設(shè)計(jì)。和門陣列相比,標(biāo)準(zhǔn)單元設(shè)計(jì)靈活、功能強(qiáng),但設(shè)計(jì)和制造周期較長(zhǎng),開(kāi)發(fā)費(fèi)用也比較高。
可編程邏輯器件(PLD—Programmable Logic Device)是ASIC的一個(gè)重要分支。與上述兩種半定制電路不同,PLD是廠家作為一種通用型器件生產(chǎn)的半定制電路,用戶可以通過(guò)對(duì)器件編程使之實(shí)現(xiàn)所需要的邏輯功能。PLD是用戶可配置的邏輯器件,它的成本比較低,使用靈活,設(shè)計(jì)周期短,而且可靠性高,承擔(dān)風(fēng)險(xiǎn)小,因而很快得到普通應(yīng)用.發(fā)展非常迅速。
三、EDA技術(shù)的應(yīng)用
信息社會(huì)的發(fā)展離不開(kāi)電子產(chǎn)品的進(jìn)步?,F(xiàn)代電子產(chǎn)品在性能提高、復(fù)雜度增大的同時(shí),性能價(jià)格比一直呈下降趨勢(shì),而且產(chǎn)品更新?lián)Q代的步伐也越來(lái)越快,實(shí)現(xiàn)這種進(jìn)步的主要原因就是生產(chǎn)制造技術(shù)和電子設(shè)計(jì)技術(shù)的發(fā)展。前者以微細(xì)加工技術(shù)為代表,目前已發(fā)展到深亞微米階段,可以在幾平方厘米的芯片上集成數(shù)千萬(wàn)個(gè)晶體管;后者的核心就是EDA工程。而EDA工程的關(guān)鍵之一是EDA工具,EDA工具是指以計(jì)算機(jī)為工作平臺(tái),融合了應(yīng)用電子技術(shù)、計(jì)算機(jī)技術(shù)、智能化技術(shù)最新成果而研制成的電子設(shè)計(jì)通用工具軟件,主要能進(jìn)行三方面的輔助設(shè)計(jì)工作:
(1)PCB印刷電路板設(shè)計(jì)
(2)ASIC設(shè)計(jì)
(3)電子系統(tǒng)設(shè)計(jì)(SOC)
沒(méi)有EDA工程的支持,想要完成上述超大規(guī)模集成電路的設(shè)計(jì)制造是不可想象的,反過(guò)來(lái),生產(chǎn)制造技術(shù)的不斷進(jìn)步又必將對(duì)EDA工程提出新的要求。
第二節(jié) EDA技術(shù)的主要特征
一、自頂而下的設(shè)計(jì)方法
EDA技術(shù)的主要特征是設(shè)計(jì)方法采用自頂而下(Top Down)的方法(圖1-1),設(shè)計(jì)工作從高層開(kāi)始,使用標(biāo)準(zhǔn)化硬件描述語(yǔ)言(VHDL或VerilogHDL等)描述電路行為,自上而下跨過(guò)各個(gè)層次,完成整個(gè)電子系統(tǒng)的設(shè)計(jì)。
自頂而下的設(shè)計(jì)方法分為三個(gè)層次(圖2-2):
第一層:行為級(jí)描述
即對(duì)系統(tǒng)的數(shù)學(xué)模型的描述,決定系統(tǒng)做什么及性能如何,不考慮系統(tǒng)的實(shí)際操作和用什么方法實(shí)現(xiàn),是一種抽象的描述。這一層次的EDA工具提供行為級(jí)模型庫(kù),自建模型(如System C,HDL語(yǔ)言)及系統(tǒng)功能的完整仿真。
第二層:RTL級(jí)描述
即寄存器傳輸描述(Register Transfer Level),導(dǎo)出系統(tǒng)邏輯表達(dá)式,以便映射到由具體邏輯元件組成的硬件結(jié)構(gòu)。這一層次的EDA工具提供RTL級(jí)編程環(huán)境(HDL語(yǔ)言)RTL級(jí)仿真。
系統(tǒng)總體設(shè)計(jì)目標(biāo)
系統(tǒng)性能算法/分析
系統(tǒng)軟件結(jié)構(gòu)
系統(tǒng)硬件結(jié)構(gòu)
DSP編程
應(yīng)用軟件
HDL編程
DSP實(shí)現(xiàn)
ASIC實(shí)現(xiàn)
FPG實(shí)現(xiàn)
圖2-1
圖2-2
第三層:邏輯綜合(圖2-3)
利用邏輯綜合工具將RTL級(jí)描述程序轉(zhuǎn)換成用基本邏輯元件表示的文件(門級(jí)網(wǎng)表文件)。門級(jí)網(wǎng)表文件分為:一般性的網(wǎng)表文件(與物理實(shí)現(xiàn)技術(shù)無(wú)關(guān))和目標(biāo)網(wǎng)表文件(與物理實(shí)現(xiàn)技術(shù)有關(guān))。這一層次的EDA工具提供邏輯綜合,門級(jí)電路仿真及輸出電路原理圖。
圖2-3
二、硬件描述語(yǔ)言(HDL)
用硬件描述語(yǔ)言進(jìn)行電路與系統(tǒng)的設(shè)計(jì)是當(dāng)前EDA技術(shù)的又一個(gè)重要特征。與傳統(tǒng)的原理圖輸入設(shè)計(jì)方法相比較,硬件描述語(yǔ)言更適合規(guī)模日益增大的電子系統(tǒng),它還是進(jìn)行邏輯綜合優(yōu)化的重要工具。硬件描述語(yǔ)言使得設(shè)計(jì)者在比較抽象的層次上描述設(shè)計(jì)的結(jié)構(gòu)和內(nèi)部特征。它的突出優(yōu)點(diǎn)是:語(yǔ)言的公開(kāi)可利用性;設(shè)計(jì)與工藝的無(wú)關(guān)性;寬范圍的描述能力;便于組織大規(guī)模系統(tǒng)的設(shè)計(jì):便于設(shè)計(jì)的復(fù)用和繼承等。目前最常用的硬件描述語(yǔ)言有VHDL和Verilog HDL,它們都已經(jīng)成為IEEE標(biāo)準(zhǔn)。
三、邏輯綜合與優(yōu)化
邏輯綜合功能將高層次的系統(tǒng)行為設(shè)計(jì)自動(dòng)翻譯成門級(jí)邏輯的電路描述,做到了設(shè)計(jì)與工藝的獨(dú)立。優(yōu)化則是對(duì)于上述綜合生成的電路網(wǎng)表,根據(jù)布爾方程功能等效的原則,用更小、更快的綜合結(jié)果替代一些復(fù)雜的邏輯電路單元,根據(jù)指定的目標(biāo)庫(kù)映射成新的網(wǎng)表.
四、開(kāi)放性和標(biāo)準(zhǔn)化
框架是一種軟件平臺(tái)結(jié)構(gòu),它為EDA工具提供了操作環(huán)境??蚣艿年P(guān)鍵在于提供與
硬件平臺(tái)無(wú)關(guān)的圖形用戶界面以及工具之間的通信、設(shè)計(jì)數(shù)據(jù)和設(shè)計(jì)流程的管理等,此外還應(yīng)包括各種與數(shù)據(jù)庫(kù)相關(guān)的服務(wù)項(xiàng)目。任何一個(gè)EDA系統(tǒng)只要建立了一個(gè)符合標(biāo)準(zhǔn)的開(kāi)放式框架結(jié)構(gòu),就可以接納其他廠商的EDA工具一起進(jìn)行設(shè)計(jì)工作。這樣,框架作為一套使用和配置EDA軟件包的規(guī)范,就可以實(shí)現(xiàn)各種EDA工具間的優(yōu)化組合,并集成
在一個(gè)易于管理的統(tǒng)一的環(huán)境之下,實(shí)現(xiàn)資源共享。
五、庫(kù)(Library)的引入
EDA工具之所以能夠完成各種自動(dòng)設(shè)計(jì)過(guò)程,關(guān)鍵是有各類庫(kù)的支持,如邏輯模擬時(shí)的模擬庫(kù)、邏輯綜合時(shí)的綜合庫(kù)、版圖綜合時(shí)的版圖庫(kù)、測(cè)試綜合時(shí)的測(cè)試庫(kù)等,這些庫(kù)都是EDA設(shè)計(jì)公司與半導(dǎo)體生產(chǎn)廠商緊密合作、共同開(kāi)發(fā)的。
第三節(jié)EDA設(shè)計(jì)的基本工具
一、 編輯器
編輯器包括文字編輯器和圖形編輯器。在系統(tǒng)設(shè)計(jì)中,文字編輯器用來(lái)編輯硬件系統(tǒng)的自然描述語(yǔ)言,在其他層次用來(lái)編輯電路的硬件描述語(yǔ)言文本。在數(shù)字系統(tǒng)中的門級(jí)、寄存器級(jí)以及芯片級(jí),所用的描述語(yǔ)言通常為VHDL和VerilogHDL;在模擬電路級(jí),硬件描述語(yǔ)言通常為SPICE的文本輸入。
圖形編輯器可用于硬件設(shè)計(jì)的各個(gè)層坎。在版圖級(jí),圖形編輯器用來(lái)編輯表示硅工藝加工過(guò)程的幾何圖形。在高于版圖層次的其他級(jí),圖形編輯器用來(lái)編輯硬件系統(tǒng)的方框圖、原理因等。典型的原理圖輸入工具至少應(yīng)包括以下3個(gè)組成部分:
(1)基本單元符號(hào)庫(kù),主要包括基本單元的圖形符號(hào)和仿真模型。
在實(shí)際應(yīng)用時(shí),硬件設(shè)計(jì)者除了采用基本單元和標(biāo)準(zhǔn)單元之外,還應(yīng)該能夠使用原理圖編輯器建立自己專用的圖形符號(hào)以及相應(yīng)的仿真模型,并加到基本單元符號(hào)庫(kù)中,供
下次設(shè)計(jì)時(shí)使用。
(2)原理圖編輯器的編輯功能。
(3)產(chǎn)生網(wǎng)表的功能。
二、 仿真器
即模擬器,主要用來(lái)幫助設(shè)計(jì)者驗(yàn)證設(shè)計(jì)的正確性。在硬件系統(tǒng)設(shè)計(jì)的各個(gè)層次都要用到仿真器。在數(shù)字系統(tǒng)設(shè)計(jì)中,硬件系統(tǒng)由數(shù)字邏輯器件以及它們之間的互連來(lái)表示。仿真器的用途是確定系統(tǒng)的輸入/輸出關(guān)系,所采用的方法是把每一個(gè)數(shù)字邏輯器件映射為一個(gè)或幾個(gè)進(jìn)程,把整個(gè)系統(tǒng)映射為由進(jìn)程互連構(gòu)成的進(jìn)程網(wǎng)絡(luò),這種由進(jìn)程互連組成的網(wǎng)絡(luò)就是設(shè)計(jì)的仿真模型。
三、 檢查和分析工具
在集成電路設(shè)計(jì)的各個(gè)層次都會(huì)用到檢查分析工具。在版圖級(jí),必須用設(shè)計(jì)規(guī)則檢查工具來(lái)保證版圖所表示的電路能被可靠地制造出來(lái)。在邏輯門級(jí),檢查/分析工具可以用來(lái)檢查是否有違反扇出規(guī)則的連接關(guān)系。時(shí)序分析器一般用來(lái)檢查最壞情形時(shí)電路中的最大和最小延時(shí)。
四、 優(yōu)化綜合工具
優(yōu)化綜合工具用來(lái)把一種硬件描述轉(zhuǎn)換為另一種描述,這里的轉(zhuǎn)換過(guò)程通常伴隨設(shè)計(jì)的某種改進(jìn)。在邏輯門級(jí),可以用邏輯最小化來(lái)對(duì)布爾表達(dá)式進(jìn)行簡(jiǎn)化。在寄存器級(jí),
優(yōu)化工具可以用來(lái)確定控制序列和數(shù)據(jù)路徑的最優(yōu)組合。各個(gè)層次的綜合工具可以將硬件的高層次描述轉(zhuǎn)換為低層次描述,也可以將硬件的行為描述轉(zhuǎn)換為結(jié)構(gòu)描述。
第三章 硬件描述語(yǔ)言(HDL)
第一節(jié) 概述
由于高密度現(xiàn)場(chǎng)可編程邏輯器件(CPLD/FPGA)和專用集成電路的飛速發(fā)展,傳統(tǒng)的設(shè)計(jì)技術(shù)如卡若圖等已經(jīng)不適合大規(guī)模及超大規(guī)模集成電路的設(shè)計(jì)。由此EDA軟件得以迅速地發(fā)展。
目前國(guó)際上使用比較多的HDL語(yǔ)言有VHDL語(yǔ)言(VHSIC Hardware Description Language)和VerilogHDL語(yǔ)言。二者比較見(jiàn)圖3-1。
圖3-1
目前在ASIC設(shè)計(jì)中應(yīng)用最廣泛的語(yǔ)言當(dāng)屬Verilog語(yǔ)言,它的特點(diǎn)是簡(jiǎn)單易學(xué),硬件描述能力強(qiáng),因?yàn)樗拿枋龈咏谟布?
VHDL語(yǔ)言描述能力很強(qiáng)。它是比其他語(yǔ)言更高層次的描述。甚至有時(shí)在描述過(guò)程中只有算法描述,而無(wú)硬件的形跡。因此,VHDL語(yǔ)言在CPLD/FPGA的應(yīng)用方面較為廣泛;一個(gè)復(fù)雜的問(wèn)題,VHDL可以用較少的篇幅描述清楚。同時(shí)VHDL語(yǔ)言指令代碼多,數(shù)據(jù)類型豐富,既有用于仿真系統(tǒng)的指令,又有可用于綜合的語(yǔ)句。因此VHDL語(yǔ)言使用起來(lái)非常靈活,但同時(shí)其繁多的指令代碼,以及編譯仿真軟件的缺乏也是其很嚴(yán)重的缺點(diǎn)。相對(duì)VerilogHDL語(yǔ)言,VHDL具有如下優(yōu)勢(shì):
(1) 明確的定義設(shè)計(jì)要求;
(2) 縮短設(shè)計(jì)周期;
(3) 改變?cè)O(shè)計(jì)靈活;
(4) 設(shè)計(jì)程序或程序包可再利用;
(5) 獨(dú)立于實(shí)現(xiàn)技術(shù);
(6) 易于分析各種結(jié)構(gòu)
第二節(jié) VHDL
一、 VHDL的基本組成
圖3-2
一個(gè)VHDL文件包括:程序包(Package)、實(shí)體(Entity)、結(jié)構(gòu)體(Architecture)。 實(shí)體是一個(gè)VHDL程序的基本單元,由實(shí)體說(shuō)明和結(jié)構(gòu)體兩部分組成。實(shí)體說(shuō)明用于描述設(shè)計(jì)系統(tǒng)的外部接口信號(hào);結(jié)構(gòu)體用于描述系統(tǒng)的行為、系統(tǒng)數(shù)據(jù)的流程或者系統(tǒng)組織結(jié)構(gòu)形式。包集合存放各設(shè)計(jì)模塊能共享的數(shù)據(jù)類型、常數(shù)、子程序等。下面是一個(gè)簡(jiǎn)單的分頻電路描述。
library ieee; ―――――庫(kù),程序包調(diào)用
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity fp is ―――――實(shí)體部分
port(inclk:in std_logic;
outputa:out std_logic);
end fp;
architecture arch_fp of fp is ――――結(jié)構(gòu)體部分
signal fp:std_logic_vector(23 downto 0);
signal f:std_logic;
begin
process(inclk)
begin ――――――――進(jìn)程
if (inclk'event and inclk='1') then
if fp=4999999 then
fp<="000000000000000000000000";
f<=not f;
else fp<=fp+1;
end if;
end if;
end process;
outputa<=f;
end arch_fp;
二、庫(kù)(Library)
表3-1
庫(kù)名
程序包名
包中預(yù)定義內(nèi)容
Std
Standard
VHDL類型,如bit, bit_vector
Ieee
Std_logic_1164
定義std_logic,std_logic_vector
I Ieee
Std_logic_arith
定義有符號(hào)與無(wú)符號(hào)類型,以及基于這些類型上的算術(shù)運(yùn)算
Ieee
Numeric_std
定義了一組基于std_logic_1164中的定義的類型的算術(shù)運(yùn)算符
Ieee
Std_logic—signed
定義了基于std_logic與std_logic_vector類型上的無(wú)符號(hào)的算術(shù)運(yùn)算
Ieee
Std_logic—unsigned
定義了基于std_logic與std_logic_vector類型上的無(wú)符號(hào)的算術(shù)運(yùn)算
表3-1列出了IEEE兩個(gè)標(biāo)準(zhǔn)庫(kù)STD與IEEE的內(nèi)容。
三、 實(shí)體
實(shí)體中定義了設(shè)計(jì)的輸入/輸出信號(hào),也叫端口模式,同時(shí)還定義了端口的數(shù)據(jù)類型。
端口模式主要有:
in:信號(hào)進(jìn)入實(shí)體但并不輸出;
out:信號(hào)離開(kāi)實(shí)體但并不輸入,且不會(huì)在內(nèi)部反饋使用;
inout:信號(hào)是雙向的,既可以進(jìn)入實(shí)體,又可以離開(kāi)實(shí)體;
buffer:信號(hào)輸出到實(shí)體外部,但同時(shí)也在實(shí)體內(nèi)部反饋。它是inout的子集,但不由外部驅(qū)動(dòng)。具體如圖3-3所示。
in out buffer inout
圖3-3
端口數(shù)據(jù)類型主要有:
integer:可用作循環(huán)指針或常數(shù),通常不用作I/O信號(hào);
bit:可取0或1;
std_logic:工業(yè)標(biāo)準(zhǔn)邏輯類型,可取0、1、X、Z。0和1表示高低電平,X表示懸空,Z表示高阻;
Std_logic_vector:是std_logic的組合。
四、 結(jié)構(gòu)體(architecture)
結(jié)構(gòu)體是VHDL設(shè)計(jì)中最主要的部分。在上面分頻電路的描述中已標(biāo)出結(jié)構(gòu)體部分。
具體格式如下:
architecture<結(jié)構(gòu)體名>of<.實(shí)體名>is
<結(jié)構(gòu)體聲明區(qū)>
――聲明結(jié)構(gòu)體的類型、常數(shù)、元件及子程序
――如果使用元件例化,則在此聲明所用的元件
begin――以下開(kāi)始結(jié)構(gòu)體
――concurrent signal assignments 并行語(yǔ)句信號(hào)賦值
――process進(jìn)程(順序語(yǔ)句描述設(shè)計(jì))
――component instantiations 元件例化
end<結(jié)構(gòu)體名>;
五、 數(shù)據(jù)對(duì)象
VHDL語(yǔ)言中,凡是可以賦值的對(duì)象就稱為客體,即數(shù)據(jù)對(duì)象。
常用的數(shù)據(jù)對(duì)象為信號(hào)、常量和變量三種,它們通常都具有一定的物理含義:
信號(hào)代表物理設(shè)計(jì)中的某一條硬件連接線;
常量代表電路中的電源和接地等;
變量的對(duì)應(yīng)關(guān)系不太直接,通常只代表暫存某些值的載體。
具體來(lái)說(shuō)如下表所示:
表3-2
客體類別
含義
說(shuō)明場(chǎng)合
信號(hào)
說(shuō)明全局量
Architecture ,Package
變量
說(shuō)明局部量
Process ,Function, Procedure
常量
說(shuō)明全局量
上面兩種場(chǎng)合下均可存在
信號(hào)用來(lái)定義一個(gè)“信號(hào)”數(shù)據(jù)對(duì)象,即定義電路的內(nèi)部硬件連接。這個(gè)信號(hào)在元件之間起互連作用,可以賦值給外部信號(hào)。其定義方式如下:
Sigal 信號(hào)名稱:數(shù)據(jù)類型:=設(shè)置值
信號(hào)賦值符號(hào)為 “<=”。
常量所代表的數(shù)據(jù)部分不會(huì)被改變,這樣可以提高程序的閱讀性和維護(hù)性。其定義方式如下:
constant 變量名稱:數(shù)據(jù)類型:=設(shè)置值
常量賦值符號(hào)為 “:=”。
變量只局限于進(jìn)程或函數(shù)語(yǔ)句中,用來(lái)說(shuō)明局部量。其定義方式如下:
variable 變量名稱:=數(shù)據(jù)類型:設(shè)置值
變量賦值符號(hào)為“:=”。
六、語(yǔ)句
VHDL常用語(yǔ)句包括:順序語(yǔ)句(sequential),它總是處于進(jìn)程的內(nèi)部,從仿真的角度看是順序執(zhí)行的,類似于C、Basic等執(zhí)行方式;并行語(yǔ)句(concurrent)都是并行執(zhí)行的,即與他們出現(xiàn)的先后次序無(wú)關(guān)。
七、進(jìn)程(process)
進(jìn)程用于描述順序事件并且包含在結(jié)構(gòu)體中。一個(gè)結(jié)構(gòu)體可以包含多個(gè)進(jìn)程語(yǔ)句,語(yǔ)法結(jié)構(gòu)如圖3-4所示。
八、元件例化
元件可以看作是一個(gè)VHDL模塊(即最低層設(shè)計(jì),也是完整的VHDL設(shè)計(jì))。元件例化指元件的調(diào)用;元件聲明是對(duì)元件的說(shuō)明,可放在程序包中,也可放在某個(gè)結(jié)構(gòu)體中。有了元件聲明,元件就可以被其它模塊調(diào)用。
圖3-4
元件聲明的語(yǔ)法結(jié)構(gòu):
component <元件實(shí)體名>
port (<元件端口信息,同元件實(shí)體的port部分);
end component;
元件聲明的語(yǔ)法結(jié)構(gòu):
<例化名>:<實(shí)體名,即元件名> port map (<端口列表>);
九、參數(shù)化元件
參數(shù)化元件是指元件的特性或規(guī)模可以通過(guò)參數(shù)來(lái)指定的一類元件。元件例化的格式為:
<例化名>:<實(shí)體名,即元件名>
generic map (<實(shí)體參數(shù),如確定的總線寬度>);
port map (<端口列表>);
十、配置
一個(gè)實(shí)體可以用多個(gè)結(jié)構(gòu)體來(lái)描述;綜合的時(shí)候由配置語(yǔ)句來(lái)決定選擇哪一個(gè)結(jié)構(gòu)體;可以利用配置來(lái)選擇不同的結(jié)構(gòu)體進(jìn)行性能對(duì)比,以得到性能最佳的結(jié)構(gòu)體。
十一、子程序
子程序就是主程序在調(diào)用它以后能將處理結(jié)果返回主程序的程序模塊。在調(diào)用的時(shí)候首先進(jìn)行初始化,執(zhí)行結(jié)束后子程序終止。子程序返回以后才能被再次調(diào)用,包括過(guò)程(procedure)和函數(shù)(function)。
第四章 步進(jìn)電機(jī)的驅(qū)動(dòng)程序設(shè)計(jì)
第一節(jié) 步進(jìn)電機(jī)的工作原理
一、基本概念
步進(jìn)電動(dòng)機(jī)是一種將電的脈沖信號(hào)轉(zhuǎn)換成相應(yīng)的角位移(或線位移)的機(jī)電元件,也就是外加一個(gè)脈沖信號(hào)于這種電動(dòng)機(jī)時(shí),它就運(yùn)行—步。步進(jìn)電動(dòng)機(jī)的轉(zhuǎn)子為多極分布,定子上嵌有多相星形連接的控制繞組,由專門電源輸入電脈沖信號(hào),每輸入一個(gè)脈沖信號(hào),步進(jìn)電動(dòng)機(jī)的轉(zhuǎn)子就前進(jìn)一步。由于輸入的是脈沖信號(hào),輸出的角位移是斷續(xù)的,所以又稱為脈沖電動(dòng)機(jī)。
步進(jìn)電動(dòng)機(jī)的種類很多,按結(jié)構(gòu)可分為反應(yīng)式和激勵(lì)式兩種;按相數(shù)分則可分為單相、兩相和多相三種。
圖4-1 反應(yīng)式步進(jìn)電動(dòng)機(jī)的結(jié)構(gòu)示意圖
二、單三拍通電方式的基本原理
設(shè)A相首先通電(B、C兩相不通電),產(chǎn)生A-A′軸線方向的磁通,并通過(guò)轉(zhuǎn)子形成閉合回路。這時(shí)A、A′極就成為電磁鐵的N、S極。在磁場(chǎng)的作用下,轉(zhuǎn)子總是力圖轉(zhuǎn)到磁阻最小的位置,也就是要轉(zhuǎn)到轉(zhuǎn)子的齒對(duì)齊A、A′極的位置;接著B(niǎo)相通電(A、C兩相不通電),轉(zhuǎn)子便順時(shí)針?lè)较蜣D(zhuǎn)過(guò)30°,它的齒和C、C′極對(duì)齊。不難理解,當(dāng)脈沖信號(hào)一個(gè)一個(gè)發(fā)來(lái)時(shí),如果按A→C→B→A→…的順序通電,則電機(jī)轉(zhuǎn)子便逆時(shí)針?lè)较蜣D(zhuǎn)動(dòng)。這種通電方式稱為單三拍方式(如圖4-2)。
第二節(jié) 步進(jìn)電機(jī)的驅(qū)動(dòng)電源
步進(jìn)電動(dòng)機(jī)需配置一個(gè)專用的電源供電,電源的作用是讓電動(dòng)機(jī)的控制繞組按照特定的順序通電,即受輸入的電脈沖控制而動(dòng)作,這個(gè)專用電源稱為驅(qū)動(dòng)電源。步進(jìn)電動(dòng)機(jī)及其驅(qū)動(dòng)電源是一個(gè)互相聯(lián)系的整體,步進(jìn)電動(dòng)機(jī)的運(yùn)行性能是由電動(dòng)機(jī)和驅(qū)動(dòng)電源兩者配合所形成的綜合效果。
圖4-2單三拍通電方式時(shí)轉(zhuǎn)子的位置
一、對(duì)驅(qū)動(dòng)電源的基本要求
(1)驅(qū)動(dòng)電源的相數(shù)、通電方式和電壓、電流都能滿足步進(jìn)電動(dòng)機(jī)的需要;
(2)要滿足步進(jìn)電動(dòng)機(jī)的起動(dòng)頻率和運(yùn)行頻率的要求;
(3)能最大限度地抑制步進(jìn)電動(dòng)機(jī)的振蕩;
(4)工作可靠,抗干擾能力強(qiáng);
(5)成本低、效率高、安裝和維護(hù)方便。
二、驅(qū)動(dòng)電源的組成
步進(jìn)電動(dòng)機(jī)的驅(qū)動(dòng)電源基本上由脈沖發(fā)生器、脈沖分配器和脈沖放大器(也稱功率放大器)三部分組成,如圖4-3所示。
步 進(jìn)
電 動(dòng) 機(jī)
工作機(jī) 構(gòu)
脈 沖
放 大 器
脈 沖
分 配 器
脈 沖
發(fā) 生 器
指令
圖4-3步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)電源的方框圖
三、脈沖發(fā)生器傳統(tǒng)的設(shè)計(jì)方法
脈沖發(fā)生器是一個(gè)脈沖頻率由幾赫到幾十千赫可連續(xù)變化的脈沖信號(hào)發(fā)生器。脈沖發(fā)生器可以采用多種線路,最常見(jiàn)的有多諧振蕩器和單結(jié)晶體管構(gòu)成的張弛振蕩器兩種,它們都是通過(guò)調(diào)節(jié)電阻R和電容C的大小來(lái)改變電容器充放電的時(shí)間常數(shù),以達(dá)到改變脈沖信號(hào)頻率的目的。圖4-4是兩種實(shí)用的多諧振蕩電路,它們分別由反相器和非門構(gòu)成,振蕩頻率由RC決定,改變R值即可改變脈沖頻率。
四、脈沖分配器傳統(tǒng)的設(shè)計(jì)方法
圖4-4脈沖發(fā)生器實(shí)用電器
脈沖分配器中由門電路和雙穩(wěn)態(tài)觸發(fā)器組成的邏輯電路,它根據(jù)指令把脈沖信號(hào)按一定的邏輯關(guān)系加在脈沖放大器上,使步進(jìn)電動(dòng)機(jī)按確定的運(yùn)行方式工作。常用的象CH250環(huán)形脈沖分配器就是通過(guò)其控制端的不同接法組成三相雙三拍和三相六拍的不同工作方式,如圖4-5、圖4-6所示
圖4-5 CH250三相六拍接法
圖4-6 CH250三相六拍接法
J3r、J3L兩端子是三相雙三拍的控制端,J6r、J6L是三相六拍的控制端,三相雙三拍工作時(shí),若J3r=“1”,而J3L=“0”,則電機(jī)正轉(zhuǎn);若J3r=“0”,J3L=“1”,則電機(jī)反轉(zhuǎn);三相六拍供電時(shí),若J6r=“1”,J6L=“0”,則電機(jī)正轉(zhuǎn);若J6r=“0”,J6L=“1”,電機(jī)反轉(zhuǎn)。R2是雙三拍的復(fù)位端,R1是六拍的復(fù)位端,使用時(shí),首先將其對(duì)應(yīng)復(fù)位端接入高電平,使其進(jìn)入工作狀態(tài),然后換接到工作位置。CL端是時(shí)鐘脈沖輸入端,EN是時(shí)鐘脈沖允許端,用以控制時(shí)鐘脈沖的允許與否。當(dāng)脈沖CP由CL端輸入,只有EN端為高電平時(shí),時(shí)鐘脈沖的上升沿才起作用。CH250也允許以EN端作脈沖CP的輸入端,此時(shí),只有CL為低電平時(shí),時(shí)鐘脈沖的下降沿才起作用。A0、B0、C0為環(huán)形分配器的三個(gè)輸出端,經(jīng)過(guò)脈沖放大器(功率放大器)后分別接到步進(jìn)電動(dòng)機(jī)的三相線上。
五、我的設(shè)計(jì)思路
硬件采用ALTERA公司的FLEX 10K系列,開(kāi)發(fā)系統(tǒng)采用ALTERA公司的Max+PlusⅡ10.0和MENTOR公司的Modelsim SE 5.6,利用復(fù)雜可編程邏輯器件突出的優(yōu)點(diǎn):設(shè)計(jì)者從事概念設(shè)計(jì)或者是電子系統(tǒng)的“行為設(shè)計(jì)”,而大部分工程中的技術(shù)問(wèn)題,由EDA工具解決。這樣就可以從概念、算法、協(xié)議等開(kāi)始設(shè)計(jì)電子系統(tǒng),大量工作可以通過(guò)計(jì)算機(jī)完成,并可以將電子產(chǎn)品從電路設(shè)計(jì)、性能分析到設(shè)計(jì)出印制板的整個(gè)過(guò)程在計(jì)算機(jī)上自動(dòng)處理完成。
第三節(jié) 分頻程序的設(shè)計(jì)
由于步進(jìn)電機(jī)的運(yùn)轉(zhuǎn)過(guò)程比較復(fù)雜,本設(shè)計(jì)硬件采用了功能強(qiáng)大的Altera公司的低電壓1k系列EP1K100QC208-3,軟件采用VHDL語(yǔ)言,開(kāi)發(fā)系統(tǒng)采用Altera公司的MAX+plus II 10.0和MENTOR公司的ModelSim SE 5.6,使得驅(qū)動(dòng)程序設(shè)計(jì)過(guò)程較以往顯得簡(jiǎn)單明了。
一、分頻電路的實(shí)現(xiàn)
由于步進(jìn)電機(jī)在運(yùn)轉(zhuǎn)過(guò)程中,先是由低頻200HZ漸變到高頻600HZ,再有高頻600HZ逐漸減小到200HZ。在此過(guò)程中,頻率不斷變化,這也就牽扯到如何由一個(gè)輸入時(shí)鐘信號(hào)(輸入頻率為11.0592MHZ)得到這種頻率。
下面是一個(gè)分頻程序:
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_unsigned.ALL;
ENTITY fp1 IS
PORT( inclk : IN STD_LOGIC;
reset : IN STD_LOGIC;
outputa : OUT STD_LOGIC);
END fp1;
ARCHITECTURE a OF fp1 IS
SIGNAL fp : STD_LOGIC_VECTOR(5 downto 0);
SIGNAL f : STD_LOGIC;
BEGIN
PROCESS (inclk)-----inclk為敏感量
BEGIN
IF (inclk'event and inclk='1') THEN
IF RESET = '1' then
fp <= "000000";
f <= '0';
outputa<=f;
ELSE
IF (fp<2)THEN
fp<=fp+1;
f<=f;
ELSE
fp<="000000";
f<=not f;
END IF;
outputa<=f;
END IF;
END IF;
END PROCESS;
END a;
仿真波形如圖4-7所示。
圖4-7
上圖中inclk為輸入時(shí)鐘信號(hào),reset為復(fù)位控制信號(hào),outputa為輸出信號(hào)。
基本流程圖如圖4-8。
圖4-8
經(jīng)過(guò)分頻后輸出信號(hào)的頻率變?yōu)檩斎胄盘?hào)的1/6,這也就為后面驅(qū)動(dòng)電機(jī)驅(qū)動(dòng)程序的實(shí)現(xiàn)提供了基本思路。
二、升降速曲線的設(shè)計(jì)
步進(jìn)電機(jī)啟動(dòng)時(shí),必須有升速、降速過(guò)程,升降速的設(shè)計(jì)至關(guān)重要。如果設(shè)計(jì)不合適,將引起步進(jìn)電機(jī)的堵轉(zhuǎn)、失步、升降速過(guò)程慢等問(wèn)題。
升速過(guò)程由突跳頻率加升速曲線組成(降速過(guò)程反之),理想的升降速曲線為指數(shù)曲線(見(jiàn)圖4-9),根據(jù)用戶的負(fù)載情況選擇不同的突跳頻率和不同的指
數(shù)曲線,以找到一條最理想的曲線,一般需要多次‘試機(jī)’才行。突跳頻率不宜過(guò)大,。指數(shù)曲線在實(shí)際軟件編程中比較麻煩,一般事先算好后存貯在ROM內(nèi),工作過(guò)程直接選取。在此處我們用線性變化近似代替指數(shù)曲線。
圖4-9 升速曲線示意圖
CP脈沖的設(shè)計(jì)主要要求其要有一定的脈沖寬度(一般不小于5μS)、脈沖序列的均勻度以及高低電平方式。電機(jī)換向時(shí),一定要在電機(jī)降速停止后再換向。換向信號(hào)一定要在前一個(gè)方向的最后一個(gè)CP脈沖結(jié)束后以及下一個(gè)方向的第一個(gè)CP脈沖前發(fā)出。
步進(jìn)電機(jī)從初始的200HZ逐漸變化到600HZ,在這個(gè)過(guò)程中,頻率應(yīng)按線性變化。此流程如圖4-10所示。
由圖4-11可以看出此算法實(shí)現(xiàn)了由低頻漸變高頻的過(guò)程。
圖4-10
仿真波形如圖4-11所示。
圖4-11
三、低頻到高頻再到低頻的實(shí)現(xiàn)
算法描述:
圖4-12
系統(tǒng)仿真圖:
圖4-13
注、若輸入步進(jìn)電機(jī)步數(shù)小于升頻和降頻所用的步數(shù)和,則直接將總步數(shù)平分為升頻和降頻步數(shù),省略中間高頻連續(xù)運(yùn)轉(zhuǎn)。此時(shí)的系統(tǒng)仿真圖如圖4-14。
圖4-14
四、環(huán)形分配器的實(shí)現(xiàn)
工作原理:根據(jù)指令把脈沖信號(hào)按一定的邏輯關(guān)系加在脈沖放大器上,使步進(jìn)電動(dòng)機(jī)按確定的運(yùn)行方式(正轉(zhuǎn)或反轉(zhuǎn))工作。
程序設(shè)計(jì)流程圖:
圖4-15
正轉(zhuǎn)過(guò)程狀態(tài)機(jī):
圖4-16
初始狀態(tài)為a,當(dāng)輸入脈沖第一次到達(dá)上跳沿時(shí),三路信號(hào)分別輸出0、1、0;.
當(dāng)輸入脈沖第二次達(dá)到上跳沿時(shí),三路信號(hào)分別輸出0、0、1;當(dāng)輸入脈沖第三次到達(dá)上挑沿時(shí),三路信號(hào)分別輸出1、0、0。當(dāng)輸入脈沖第四次到達(dá)上跳沿時(shí),三路信號(hào)再次輸出0、0、1,如此形成一個(gè)狀態(tài)機(jī)。
反轉(zhuǎn)過(guò)程狀態(tài)機(jī)到達(dá)各狀態(tài)的順序恰好和正轉(zhuǎn)時(shí)相反。如圖圖4-17所示。
反轉(zhuǎn)過(guò)程狀態(tài)機(jī):
圖4-17
程序仿真圖如圖4-18(步進(jìn)電機(jī)正轉(zhuǎn)時(shí))和圖4-19(步進(jìn)電機(jī)反轉(zhuǎn)時(shí))。
圖4-18 步進(jìn)電機(jī)正轉(zhuǎn)時(shí)
圖4-19步進(jìn)電機(jī)反轉(zhuǎn)時(shí)
五、系統(tǒng)綜合
情況一:輸入一個(gè)周期脈沖時(shí)鐘信號(hào)inclk,給預(yù)定值max(可以達(dá)到最大頻率),復(fù)位信號(hào)reset,正反轉(zhuǎn)選擇信號(hào)sel,輸出三路信號(hào)output【0】、output【1】、output【2】。
系統(tǒng)綜合反真波形如圖4-20、圖4-21所示。
圖4-20 步進(jìn)電機(jī)正轉(zhuǎn)時(shí)
圖4-21步進(jìn)電機(jī)反轉(zhuǎn)時(shí)
情況二:輸入一個(gè)周期脈沖時(shí)鐘信號(hào)inclk,給預(yù)定值max(未能達(dá)到最大頻率),復(fù)位信號(hào)reset,正反轉(zhuǎn)選擇信號(hào)sel,輸出三路信號(hào)output【0】、output【1】、output【2】。
波形仿真如圖4-22、圖4-23所示。
圖4-22 步進(jìn)電機(jī)正轉(zhuǎn)時(shí)
圖4-23步進(jìn)電機(jī)反轉(zhuǎn)時(shí)
六、 基于CPLD的步進(jìn)電機(jī)驅(qū)動(dòng)設(shè)計(jì)的優(yōu)點(diǎn)
(1)整個(gè)系統(tǒng)有硬件實(shí)現(xiàn),節(jié)省了計(jì)算機(jī)資源;
(2)程序設(shè)計(jì)實(shí)現(xiàn)功能模塊化,便于功能擴(kuò)展;
(3)可以實(shí)現(xiàn)多電機(jī)的同時(shí)控制,各路之間干擾很?。?
(4)多路驅(qū)動(dòng)電路板的電源穩(wěn)定性高,靜態(tài)電流損耗小。
七、今后的工作
(1)進(jìn)一步完善升降速曲線的設(shè)計(jì);
(2)完成硬件電路,搭建控制裝置網(wǎng)絡(luò)。
第五章 結(jié)束語(yǔ)
經(jīng)過(guò)這次畢業(yè)設(shè)計(jì),我不僅重新回顧了過(guò)去所學(xué)過(guò)的知識(shí),增加了在軟件開(kāi)發(fā)方面的經(jīng)驗(yàn),而且初步掌握了Max+plusⅡ10.0這種電子設(shè)計(jì)自動(dòng)化軟件和硬件描述語(yǔ)言VHDL,還了解了一些相關(guān)的電路設(shè)計(jì)和硬件的知識(shí),特別是CPLD系統(tǒng)方面的知識(shí),可以說(shuō)是對(duì)我的大學(xué)期間所學(xué)知識(shí)的一次性綜合檢驗(yàn);并且通過(guò)切身的動(dòng)手實(shí)驗(yàn),不僅加強(qiáng)了理論知識(shí)還加強(qiáng)了我的感性認(rèn)識(shí),再次體會(huì)到自己知識(shí)上的局限性??梢哉f(shuō),這次畢業(yè)設(shè)計(jì)既鍛煉了我動(dòng)腦分析問(wèn)題的能力,又鍛煉了我動(dòng)手解決實(shí)際問(wèn)題的能力,這將對(duì)我以后的學(xué)習(xí)起到不可估量的作用。
本次畢業(yè)設(shè)計(jì)主要完成了步進(jìn)電機(jī)控制裝置中CPLD(Complex Programmable Logic Device)系統(tǒng)的軟硬件設(shè)計(jì),包括電機(jī)驅(qū)動(dòng)電路的整體設(shè)計(jì);硬件采用ALTERA公司的ACEX 1K 系列;開(kāi)發(fā)系統(tǒng)采用ALTERA公司的Max+PlusⅡ10.0和MENTOR公司的Modelsim SE 5.6。
通過(guò)以上的研究使我們對(duì)LAMOST中步進(jìn)電機(jī)的驅(qū)動(dòng)控制問(wèn)題有了較為深入的了解,為今后光纖定位系統(tǒng)的改進(jìn)建設(shè)打下了良好的基礎(chǔ),同時(shí),研究結(jié)果表明了該控制裝置用于LAMOST項(xiàng)目的可行性。
參考文獻(xiàn)
[1] EDA 可編程邏輯器件設(shè)計(jì)教程 杭州天科技術(shù)實(shí)業(yè)有限公司 2002
[2] 陳隆昌 控制電機(jī)(第二版) 西安電子科技大學(xué)出版社 1998
[3] 趙曙光, 郭萬(wàn)有, 楊頌華編著 可編程邏輯器件原理、開(kāi)發(fā)與應(yīng)用
西安電子科技大學(xué)出版社 2000
[4] 曾繁泰 陳美金 VHDL程序設(shè)計(jì) 清華大學(xué)出版社 2000
[5] 梁曉雯 EDA設(shè)計(jì)原理及應(yīng)用技術(shù) 中國(guó)科技大學(xué)EDA實(shí)驗(yàn)室
[6] 黃亞楠 LAMOST光纖定位系統(tǒng)中步進(jìn)電機(jī)控制裝置的設(shè)計(jì) 2002
致 謝
本文的研究工作是在邢曉正和翟超兩位老師的指導(dǎo)下進(jìn)行的。由于本人水平有限,在做畢業(yè)設(shè)計(jì)的過(guò)程中,兩位老師給予我很多的指導(dǎo)并提出了許多的寶貴意見(jiàn),對(duì)我的一些看法以及錯(cuò)誤的觀點(diǎn)予以及時(shí)糾正。使我在完成設(shè)計(jì)的同時(shí),對(duì)學(xué)習(xí)近四年的專業(yè)知識(shí)做了一次系統(tǒng)的復(fù)習(xí)總結(jié),并且對(duì)目前所從事的項(xiàng)目以及相關(guān)的學(xué)科有了一定的了解和認(rèn)識(shí),獲益非淺。
在這段時(shí)間里,兩位老師言傳身教,以他們廣博的知識(shí),敏銳的洞察力,多年的教學(xué)和實(shí)際經(jīng)驗(yàn),給予我畢業(yè)設(shè)計(jì)上很大的幫助。我學(xué)到的不僅是科學(xué)知識(shí)和工作方法,更學(xué)到了作為一個(gè)研究人員應(yīng)有的治學(xué)態(tài)度以及為人處世的道理,這一切都將使我終身受益。在此,深表謝意。
同時(shí)對(duì)yakhe同學(xué)的幫助在此一并表示衷心的感謝。
- 45 -
收藏
鏈接地址:http://m.italysoccerbets.com/p-3310029.html