基于FPGA的高速PID控制器設(shè)計(jì)與仿真
3 工作控制狀態(tài)機(jī)的設(shè)計(jì)
本文引用地址:http://www.ex-cimer.com/article/270111.htm典型的數(shù)字PID控制系統(tǒng)由A/D轉(zhuǎn)換、PID控制算法和D/A轉(zhuǎn)換三個(gè)關(guān)鍵環(huán)節(jié)構(gòu)成。為了協(xié)調(diào)三個(gè)環(huán)節(jié)之間的工作流程,系統(tǒng)工作控制部件必不 可少。純硬件數(shù)字系統(tǒng)的順序控制有多種方案可選,如單片機(jī)輔助控制、嵌入式CPU軟核控制、脈沖計(jì)數(shù)控制等等,但都難以兼顧系統(tǒng)的高速控制和靈活擴(kuò)展。在 高速運(yùn)算和控制方面,有限狀態(tài)機(jī)具有以上幾種控制方式難以超越的優(yōu)越性。
從狀態(tài)機(jī)的信號(hào)輸出方式上分,有Moore型和Mealy型兩類狀態(tài)機(jī)。從輸出時(shí)序上看,前者屬于同步輸出狀態(tài)機(jī),而后者屬于異步輸出狀態(tài)機(jī)。Mealy型狀態(tài)機(jī)的輸出是當(dāng)前狀態(tài)和所有輸入信號(hào)的函數(shù),它的輸出是在輸入變化后立即發(fā)生的,不依賴于時(shí)鐘的同步[2]。
Moore型狀態(tài)機(jī)的輸出則僅為當(dāng)前狀態(tài)的函數(shù),這類狀態(tài)機(jī)在輸入發(fā)生變化時(shí)還必須等待時(shí)鐘的到來,時(shí)鐘使?fàn)顟B(tài)發(fā)生變化時(shí)才導(dǎo)致輸出的變化,所 以比Mealy機(jī)要多等待一個(gè)時(shí)鐘周期,但是能有效避免毛刺現(xiàn)象。本設(shè)計(jì)所用的狀態(tài)機(jī)為單進(jìn)程Moore型狀態(tài)機(jī)。狀態(tài)轉(zhuǎn)換如圖4所示。
4 系統(tǒng)實(shí)現(xiàn)與功能仿真
整個(gè)PID控制器的系統(tǒng)設(shè)計(jì)采用自頂向下的設(shè)計(jì)方法和模塊化的設(shè)計(jì)思想,即先由PTD控制器的自然語言描述得到VHDL的系統(tǒng)行為描述,然后對(duì)系統(tǒng)分解為誤差A(yù)/D變換部件、PID運(yùn)算部件、控制增量D/A變換以及協(xié)調(diào)三者的控制狀態(tài)機(jī)等四個(gè)主要模塊。
Altera公司專用EDA軟件QuartusII支持原理圖與VHDL語言混合輸入設(shè)計(jì)方式,除PID運(yùn)算部件采用原理圖輸入設(shè)計(jì)方式以外,其余三個(gè)部件均采用VHDL輸入設(shè)計(jì)方式。系統(tǒng)仿真時(shí),如果將系統(tǒng)的最高工作速率設(shè)定為120MHz,則采樣速率為24MHz。功能仿真波形圖如圖5所示。
通過對(duì)增量式數(shù)字PID控制算法的優(yōu)化處理,顯著提高了系統(tǒng)的工作速度。仿真結(jié)果表明,擁有較低轉(zhuǎn)換速率的A/D變換技術(shù)成為提高系統(tǒng)運(yùn)行速度的瓶頸。就本設(shè)計(jì)采用的閃爍型A/D器件而言,減少狀態(tài)機(jī)等待A/D轉(zhuǎn)換結(jié)束信號(hào)EOC(見圖4)的時(shí)間,即提高A/D轉(zhuǎn)換的速率是提高系統(tǒng)整體工作速率的關(guān)鍵。
本設(shè)計(jì)中所采用的增量式數(shù)字PID控制算法的設(shè)計(jì)思想可以應(yīng)用到有限長(zhǎng)單位脈沖響應(yīng)(FIR)濾波器和無限長(zhǎng)單位脈沖響應(yīng)(ⅡR)濾波器的FPGA設(shè)計(jì)中,并且同樣可以使用流水線優(yōu)化技術(shù)以提高工作速度。同時(shí),由于PLD設(shè)計(jì)和專用ASIC設(shè)計(jì)的通用性,在PLD設(shè)計(jì)平臺(tái)上所完成的設(shè)計(jì)可以很自然地過渡到專用ASIC的設(shè)計(jì)工作中,進(jìn)一步提高了系統(tǒng)的可靠性和集成度。
pid控制相關(guān)文章:pid控制原理
fpga相關(guān)文章:fpga是什么
伺服電機(jī)相關(guān)文章:伺服電機(jī)工作原理
pid控制器相關(guān)文章:pid控制器原理
評(píng)論