《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于Xilinx System Generator的PID算法快速硬件實現
基于Xilinx System Generator的PID算法快速硬件實現
來源:電子技術應用2011年第11期
錢偉康1,倪元鴻1,謝凱年2,蔣 艷1
1.上海理工大學 光電信息與計算機工程學院,上海200093; 2.上海賽靈思電子科技有限公司 大學計劃部大中華區,上海201203
摘要: 介紹了利用Xilinx System Generator平臺構建模型化數字PID控制算法,并通過FPGA將數字PID算法結合傳感器與實際硬件控制對象快速建立控制模型,構成完整的閉環控制。通過對控制效果的實驗驗證,證明了其控制方法的可行性。
中圖分類號: TP273
文獻標識碼: B
文章編號: 0258-7998(2011)11-0048-04
Simpler realization of PID algorithm based on Xilinx system generator
Qian Weikang1,Ni Yuanhong1,Xie Kainian2,Jiang Yan1
1.College of Optoelectronic Information and Computer Engineering,University of Shanghai for Science and Technology, Shanghai 200093,China; 2.Shanghai Xilinx Technology Company(XUP China), Shanghai 201203,China
Abstract: This paper introduced how to create the digital PID control algorithm model and form a complete closed-loop control system through digital PID algorithm combining with the sensor and actual hardware control object based on Xilinx System Generator tools and FPGA. Finally, the experiment results of control effect proved the feasibility of the control method.
Key words : FPGA;system generator;PID algorithm


1 Xilinx System Generator簡介
    Xilinx System Generator 是專門為數字信號算法處理而推出的模型化設計平臺,可以快速、簡單地將DSP系統的抽象算法轉換成可綜合的、可靠的硬件系統,彌補了大部分對C語言以及Matlab工具很熟悉的DSP工程師對于硬件描述語言VHDL和Verilog HDL認識不足的缺陷[1]。
    System Generator作為一個硬件設計工具包安裝在Matlab軟件中,提供了相當豐富的應用子模塊[2]。設計者如同使用Matlab中其他模塊一樣,通過拖拽和連接就可以將子模塊搭建成一個完整的應用系統。
2 增量式PID數字算法原理
    在PID控制算法的應用中有位置式和增量式兩種[3-4]。位置式PID控制算法中因運用了誤差的累加,控制的輸出量與過去所有時間的狀態有關,所以位置式PID控制算法的累積誤差相對較大。而增量式PID控制算法中的調整量只是與當前及前兩個狀態有關,并且增量式PID算法只是控制每次的輸出增量,而且一般執行機構都帶有記憶功能,一旦控制器出錯,能保持住原位,不會嚴重影響到系統的工作。
    PID數學模型:

3 在System Generator中建立PID算法模型
    根據公式(4)的增量式數字PID模型,可在Xilinx System Generator工具包中調用相關子函數模塊來構建整個函數[5],如圖1所示。

    設計中使用了自定義函數模塊(Mcode),該模塊是Xilinx System Generator中提供給DSP設計者的可編程邏輯模塊,可以使用Matlab語言編寫符合設計者要求的子函數。Mcode模塊分別支持控制邏輯、狀態邏輯、二位除法運算以及定點數運算等邏輯運算,并可靈活地定義輸入輸出的個數以及輸出數據的類型。最終在生成硬件邏輯時自動將Mcode中的代碼轉換成VHDL/Verilog硬件描述語言。另外,由于生成的是邏輯控制,對設計者來說運用起來十分便利,并且該模塊中的代碼在生成為硬件邏輯以后,幾乎是并行直接輸出,速度和效率都非常高。如圖2所示,在Mcode模塊中寫入了代碼之后,會生成對應的自定義函數模塊。

4 控制對象與控制算法的級聯
    在PID算法模塊構建完成以后,需要嵌入到實際的控制對象中以達到預期的控制目的。
    實驗采用的是一階RC控制對象,該對象在實驗中可以明顯有效地將控制效果反映出來。PID閉環控制系統框圖如圖3所示。對于一階RC控制對象,選擇電壓作為輸出的控制量,在設計中加入了A/D 以及D/A轉換模塊來完成采樣和控制量的輸出。
    實驗平臺采用Xilinx公司的Spartan3E Start Kit,其中帶有兩路14 bit的A/D(LTC1407)輸入以及4路16 bit

    (2)在PID算法的輸入與輸出端搭建數據轉換模塊。由于通過A/D采樣得到的數據和D/A輸出的數據都是二進制,而PID算法模塊中使用的是十進制數據,并且小數點的位數也不一樣,所以需要在PID算法的輸入和輸出端插入數據轉換模塊。另外還必須加入Gateway in和Gateway out來實現數據的前端輸入和后端輸出。PID控制器完整模型如圖5所示。

 

 

    (3)用System Generator生成PID算法工程文件后導入到ISE工程中。雙擊圖5中的System Generator模塊,選擇HDL\netlist和生成路徑后點擊Generator,就能自動生成相應的VHDL/Verilog硬件語言代碼。在工程的頂層文件下把生成的sgp工程添加進去,例化后嵌入到工程中。
    (4)在頂層文件中由狀態機安排好各個模塊之間的時序。
    (5)綜合工程,分析時鐘時序是否滿足工程要求,工程時序分析如表1所示。需要時可添加時鐘管理器(DCM)確保時序的正常進行。


    (6)連線并把BIT文件下載到開發板中,用示波器察看實際效果。
5 實驗數據分析
    實驗中使用了D/A 4路輸出信號中的2路:A路輸出控制量;B路輸出1 V~2 V的方波電壓作為給定值,同時方波電壓接到另一個完全相同的一階RC電路上,讓其與通過PID調節后的被控對象作對比。圖6(a)~圖6(d)表示了頻率為100 Hz時,在不同參數條件下的實驗結果。

    從實驗結果可知,在FPGA中構建的PID控制器完全能達到預期的效果,而且實驗結果是通過示波器觀測到的實測結果,證明了在FPGA中實現算法硬件化是可行的,并且控制算法在硬件中運行的實測數據和仿真出來的模擬數據相比,實測數據更有說服力。
    用FPGA作為嵌入式算法平臺,在算法運行速度上與其他嵌入式算法平臺相比有著特定的優勢,利用Xilinx的System Generator工具能夠快速簡單地完成算法構建并可直接完成硬件實現。雖然本文采用的是一階RC電路作為控制對象,即使換成是二階或者是耦合控制對象同樣能夠達到比較理想的控制效果。特別是對于大運算量的算法(如矩陣運算等),在FPGA資源充裕的情況下,可以達到其他控制器無法達到的處理速度,而且基于FPGA的可編程性,對于算法的修正、升級和驗證都十分靈活,更使算法的硬件實現變得實用。缺點是FPGA對于時序較為嚴格,在工程中需要對整個工程的時序進行分析,以確保滿足時序要求,而且如果是自己編寫一些執行機構的驅動,仍需要將驅動部分也考慮進去,必要時需要添加約束。
參考文獻
[1] 孟憲元,錢偉康.FPGA嵌入式系統設計[M].北京:電子工業出版社,2007.
[2] 紀志成.FPGA數字信號處理設計教程—System Generator入門與提高[M].西安:西安電子科技大學出版社,2008.
[3] 彭小衛.基于System Generator的Gardner 算法設計與實現[J].電子設計工程,2010(7):16-18.
[4] 蔡曉寧.數字PID控制器的硬件優化設計[J].中國科學院研究生院學報,2010(9):690-694.
[5] Shi Changchun,Hwang James,McMILLAN S,et al.A system level resource estimation tool for FPGAs[C].14th International Conference,FPL 2004,Leuven,Belgium,2004:424-433.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久伊伊香蕉| 欧美aⅴ99久久黑人专区| 欧美一级淫片aaaaaaa视频| 99热免费精品| 亚洲每日更新| 亚洲精品麻豆| 亚洲人成小说网站色在线| 伊人久久大香线| 狠狠色狠狠色综合日日五| 国产一区二区中文| 国产亚洲成av人片在线观看桃| 国产欧美精品一区aⅴ影院| 国产精品裸体一区二区三区| 欧美日韩一区在线视频| 欧美日韩一本到| 国产精品啊啊啊| 欧美色中文字幕| 国产精品看片你懂得| 国产精品乱码久久久久久| 国产精品久久午夜夜伦鲁鲁| 国产精品日韩在线观看| 国产乱码精品一区二区三区五月婷| 国产精品三上| 国产精品在线看| 国产视频自拍一区| 国内精品久久久久久久影视蜜臀 | 亚洲日本国产| 亚洲精品一区二区三区四区高清 | 欧美日韩视频免费播放| 欧美午夜影院| 国产欧美日韩免费| 精品999在线播放| 亚洲国产免费| 一本久道久久综合婷婷鲸鱼| 国产精品99久久久久久久久久久久| 亚洲午夜国产成人av电影男同| 午夜日韩在线观看| 亚洲国产一区在线观看| 艳女tv在线观看国产一区| 亚洲在线观看视频| 久久福利影视| 欧美韩日一区二区三区| 欧美视频在线观看一区| 国产人妖伪娘一区91| 激情综合在线| 亚洲免费观看在线观看| 亚洲欧美国产毛片在线| 亚洲精品在线观看免费| 国产精品激情| 国产区在线观看成人精品| 永久免费精品影视网站| 亚洲人人精品| 亚洲综合激情| 91久久综合亚洲鲁鲁五月天| 一区二区不卡在线视频 午夜欧美不卡在| 亚洲私拍自拍| 久久久水蜜桃| 欧美日韩亚洲视频| 国产亚洲成人一区| 一区二区三区四区五区在线| 加勒比av一区二区| 亚洲国产91| 亚洲一区二区免费在线| 亚洲国产精品女人久久久| 亚洲综合导航| 先锋影院在线亚洲| 免费h精品视频在线播放| 欧美视频官网| 日韩一区二区免费高清| 久久国产精品免费一区| 麻豆精品在线观看| 国产精品欧美一区二区三区奶水 | 一本大道av伊人久久综合| 欧美在线精品一区| 亚洲午夜极品| 免费人成网站在线观看欧美高清| 欧美午夜一区二区| 亚洲国产天堂久久综合| 午夜精品一区二区三区四区| 99在线精品观看| 久久午夜视频| 国产精品在线看| 99在线观看免费视频精品观看| 久久国产精品72免费观看| 亚洲一级一区| 欧美激情a∨在线视频播放| 国产日韩一区二区三区在线播放| av不卡免费看| 亚洲精品女av网站| 久久久久久电影| 国产精品日本精品| 一本色道久久99精品综合| 亚洲国产影院| 久久青青草原一区二区| 国产欧美另类| 亚洲一区二区三区在线看| 亚洲免费电影在线观看| 免费观看不卡av| 国语自产在线不卡| 午夜视频在线观看一区二区三区| 亚洲免费人成在线视频观看| 欧美日韩天天操| 亚洲精品一区二区三区四区高清| 亚洲黄色免费电影| 久久综合中文色婷婷| 国模大胆一区二区三区| 午夜影视日本亚洲欧洲精品| 亚洲影院一区| 国产精品久久精品日日| 夜色激情一区二区| 亚洲视频二区| 欧美视频在线免费| 在线综合亚洲| 亚洲综合二区| 国产精品美女久久| 亚洲一区二区三区激情| 午夜亚洲福利| 国产精品一区二区男女羞羞无遮挡| 亚洲午夜精品一区二区| 亚洲欧美日本伦理| 国产精品蜜臀在线观看| 亚洲一区免费| 欧美一区二区三区的| 国产精品视频xxxx| 性欧美大战久久久久久久免费观看 | 欧美亚洲系列| 国产精品―色哟哟| 午夜在线视频一区二区区别| 欧美在线视频不卡| 国产一区二区高清视频| 欧美在线观看www| 久热精品视频| 亚洲激情在线观看视频免费| 亚洲美洲欧洲综合国产一区| 欧美日韩国产页| 一本久道综合久久精品| 性欧美xxxx视频在线观看| 国产欧美日韩在线观看| 欧美在线观看视频一区二区| 老司机67194精品线观看| 亚洲激情偷拍| 亚洲一区美女视频在线观看免费| 国产精品乱码一区二三区小蝌蚪 | 欧美三级资源在线| 亚洲欧美999| 久久综合国产精品| 亚洲精品国产欧美| 亚洲在线黄色| 国产资源精品在线观看| 亚洲人线精品午夜| 欧美日韩亚洲一区二区三区在线 | 久久精品官网| 欧美另类亚洲| 亚洲影院在线| 久久综合影音| 99视频热这里只有精品免费| 性欧美videos另类喷潮| 伊人色综合久久天天五月婷| 一区二区三区av| 国产精品视频精品视频| 久久精品视频在线观看| 欧美精品日韩精品| 亚洲一区综合| 欧美成人激情视频免费观看| 一本一本久久a久久精品综合麻豆| 欧美一级黄色录像| 1000部精品久久久久久久久 | 午夜久久99| 亚洲第一在线| 午夜国产精品视频| 尤物99国产成人精品视频| 一区二区三区四区蜜桃| 国产日韩欧美黄色| 亚洲每日在线| 国产精品一区二区在线观看网站| 91久久精品国产91性色tv| 国产精品久久久久天堂| 亚洲电影在线观看| 欧美三级日本三级少妇99| 欧美在线观看视频在线| 欧美日韩在线精品| 亚洲第一免费播放区| 欧美亚日韩国产aⅴ精品中极品| 久久精品91久久久久久再现| 欧美午夜美女看片| 亚洲欧洲在线一区| 国产日韩欧美日韩| 制服丝袜亚洲播放| 激情六月婷婷久久| 香蕉av777xxx色综合一区| 亚洲国产第一页| 久久久久成人精品免费播放动漫| 日韩午夜在线观看视频| 久久婷婷激情| 亚洲尤物在线| 欧美日韩亚洲系列| 亚洲美女av黄| 一区二区在线免费观看| 性做久久久久久久免费看| 亚洲精选一区|