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

基于Matlab與Modelsim 的四足機器人步態算法的協同仿真

2015-09-12 06:42:28羅慶生李超韓寶玲司世才牛鍇
單片機與嵌入式系統應用 2015年5期
關鍵詞:模型系統設計

羅慶生,李超,韓寶玲,司世才,牛鍇

(1.北京理工大學 機電學院,北京100081;2.北京理工大學 機械與車輛學院)

羅慶生(教授)、李超(碩士研究生),研究方向為特種機器人技術、機器人伺服驅動技術。

引 言

我國廣大山區地勢險峻、地形復雜,輪式或履帶式機器人很難在這些地區進行軍事偵察、資源勘探、貨物運載等工作。四足機器人具有較強的機動性和靈活性,能夠適應非結構化的地面,有望在這些區域發揮機動性能,已成為移動機器人研究領域的熱點之一。運動控制算法是四足機器人研究的重點和難點,如何驗證控制算法的有效性,更好地應用于四足機器人的實際行走中是本文研究的重點。

筆者所在實驗室設計了一種液壓驅動的四足機器人,該機器人采用FPGA 作為步態算法的硬件平臺,如何將步態算法快速有效地應用于FPGA 硬件板中成為研究的核心。傳統的驗證方法需要花費大量的時間將步態算法轉換為硬件語言,并且在后期驗證過程中需要系統開發人員以及FPGA 設計人員多次返工。而Simulink 仿真庫里提供的HDL Coder功能,能夠把Matlab/Simulink直接轉化為Verilog 語言程序,同時可以生成仿真用的Test Bench,包括FPGA 和ASIC 的硬件設計流程無縫連接起來的聯合仿真接口擴展模塊,它的快速雙向連接將Matlab/Simulink和硬件描述語言仿真軟件Modelsim 連接起來,使二者之間直接的聯合仿真成為可能,并且更高效地在Matlab/Simulink 中驗證Modelsim 中的寄存器傳輸級(RTL)模型。因此筆者在文中采用了Matlab與Modelsim 協同仿真的方法,既降低了系統級開發的復雜度,又提高了設計的驗證效率。

1 四足機器人控制模型建立

1.1 液壓四足機器人物理樣機介紹

筆者所在團隊設計的四足機器人采用液壓伺服驅動,現已設計并加工出該機器人的物理樣機(見圖1)。該四足機器人采用兩腿節設計,共12個主動自由度,腿部含有3個旋轉關節,分別為側擺關節、髖關節和膝關節。3 個關節均采用液壓缸驅動,通過對液壓缸活塞桿的位置控制來實現機器人的各種步態。該機器人的總體長度為1m,寬度為0.5m,站立時高度為1m,其中足端距機體中心高度為0.74m。機器人的腿部采用前肘后膝的結構形式[7],四條腿采用模塊化設計,結構尺寸完全一致,其中大腿和小腿的長度均為400mm,側擺關節到髖關節的距離為140mm。

圖1 液壓四足機器人物理樣機

1.2 CPG控制方法簡介

液壓四足機器人采用基于CPG 和生物反射的控制方法。CPG(Central Pattern Generator,中樞模式發生器)是由中間神經元構成的局部網絡,能夠通過神經元之間的相互抑制產生穩定的相位互鎖關系,并通過自激振蕩激發肢體的節律運動(如跑、跳、游等),通過對其進行數學建模以產生控制信號實現四足機器人的典型步態。該方法避免了對動力學研究精確度的依賴,控制相對簡單,具有良好的自穩定性,生物對復雜環境的適應性主要是通過各種反射機制實現的,觀察生物反射行為,探索其反射機理,對反射動作進行規劃和建模是提高四足機器人環境適應性的主要方法。

對四足機器人的運動進行控制,最基本的是建立合理的CPG 網絡模型,產生持續穩定并且具有一定相位關系的多路周期性振蕩信號,以控制四足機器人的各關節運動,使其可以在平地上完成幾種典型步態下的運動。

1.3 液壓四足機器人控制算法模型的建立

本文選擇了加入反饋的Hopf振

蕩器作為CPG單元模型,Hopf振蕩器結構較簡單,且能在一定程度上反映神經元間的關系,調節方便,參數對輸出的影響簡單,其數學表達式如式(1)所示。式中x、y為兩個相互耦合的變量,使振蕩器模型的輸出在狀態空間形成穩定極限環,a、b為定義極限環收斂時間的正常數,t是一個取較大值的正常數為x、y振蕩的幅值,w為振蕩器的振蕩頻率,wstance和wswing分別控制振蕩器x輸出上升和下降區間的持續時間(即分別代表支撐相和擺動相的頻率)。

2 從Simulink模型到硬件描述語言的轉換

2.1 Simulink模型的建立

Simulink是Matlab軟件重要的軟件包,在動態系統仿真中,它對于連續系統和離散系統、線性系統和非線性系統同時適用,采用模塊直觀地描述系統典型環節,可以十分方便地建立系統模型而不需要花大量時間編程。所建立的CPG 模型能否輸出具有確定相位關系的控制信號,還需要進一步仿真驗證,本文利用Simulink工具包對模型進行了數值仿真,采用odb3(Bogacki-Shampine)算法,仿真步長固定為0.005s。

建立如圖2所示的CPG 單元模型,并且建立如圖3所示的CPG 整體模型。

圖2 CPG單元模型

2.2 高效轉換工具

傳統的FPGA 開發流程,要將已經在Simulink中實現的算法轉換為FPGA 可識別的代碼。首先需要將算法中的數據進行定點化處理,將浮點型變量轉換為定點型;其次將算法用HDL代碼形式實現出來,并對代碼進行測試,發現問題并改正相應代碼,直到測試通過;再次將HDL代碼綜合成邏輯網表,映射到FPGA 上的資源;最后在FPGA 上完成布局布線,并再次測試。傳統的FPGA開發需要很長的開發周期,很難滿足快速更新要求。

圖3 CPG整體模型

基于模型設計,利用Matlab中的HDL Coder工具實現代碼轉換過程,如圖4 所示。首先利用Mathworks的Matlab/Simulink的系統設計能力和無縫分析能力,以及已有的MegaCore完成頂層系統設計;接著通過轉換工具配置Simulink中的IP核,即將靜態參數做定點化處理;再將Simulink模型文件(.mdl)轉換成VHDL 的RTL 表述和工具命令語言(Tcl)腳本,同時還可進行RTL級的功能仿真;然后通過SOPC 設計工具進行綜合、適配與時序仿真;最后形成對指定FPGA 進行編程配置的文件,實現硬件系統的仿真測試模型。

圖4 采用基于模型設計加速的整個過程

2.3 Verilog代碼生成

轉換需要兩個過程:第一個過程,審察整個設計并確定模型的公用模塊,每一個公用模塊都將被描述成一個單獨的VHDL文件。從Simulink的基本模塊中區分模型的次級模塊,并采集每一個模塊端口及端口類型的相關信息,在編寫VHDL文件進行內容描述時將會用到這些信息。第二個過程,算法反復地檢查模型的全部層次,從最高層次到底層,為每一個在第一個過程中找到的模塊生成結構描述。HDL Coder不支持矩陣,對原模型做適當修改,將內部的矩陣相乘改為相乘相加的形式,運行模型中的.m 文件,并在Simulink中完成仿真。右鍵點擊模型選擇Fixed-Point Tool進入對話框,按照圖5中右面步驟一步步完成定點轉換。點擊Fixed-Point Advisor打開定點向導,右鍵選擇Run to Failure運行向導一步步驗證,當出現錯誤或者警告時,按照提示做出相應調整。

完成定點轉換以后,右鍵點擊模型選擇HDL Code下的HDL Code Properties進入圖6所示對話框。HDL Coder支持代碼自動生成,同時還可以生成仿真用的Test Bench,可以大大縮短驗證時間,從而縮短設計周期。

圖5 定點化處理

圖6 HDL Coder代碼自動生成

3 協同仿真驗證

為了綜合驗證算法的有效性,生成代碼以后還需要驗證生成代碼與Simulink模型的一致性。文中采用了協同仿真驗證,本文借助Matlab內的HDL Coder功能協助生成測試腳本,完成相應的仿真驗證。選擇HDL Code Generation中的Test Bench,勾選HDL Test Bench和Cosimulation兩個選項用于聯合仿真,點擊右下角的Generate Test Bench,生成測試腳本,同時產生用于聯合仿真的模塊,如圖7所示。圖7(a)為原Simulink模型,圖7(b)是用于調用Modesim 對HDL代碼進行仿真。

點擊圖(a)右上角模塊打開Modesim,點擊Simulink中的運行進行仿真。在Simulink適配器中產生數據波形如圖8所示。上面為Modesim 輸出的波形,下面為Simulink中輸出波形,最后一個為兩個之間的差值。如圖能清晰地看出兩個波形輸出完全一致,驗證了HDL 代碼與Simulink模型完全一致。

圖7 聯合仿真模塊

圖8 輸出效果對比圖

結 語

為了驗證四足機器人步態算法的可行性,采用Matlab與Modelsim 協同仿真的方法,力求通過聯合仿真的方式實現驗證的完整性。在Simulink中建立系統模型,完成初步仿真,使用了Matlab內的HDL Coder將Simulink模型自動轉換為Verilog,實現FPGA 系統級的仿真。這既保證了代碼的準確性,又節省了復雜的Test Bench編寫過程,有效加快了仿真的速度,縮短了設計周期。最后借助Modelsim 實現仿真數據的前后對比,直觀有效地驗證了步態算法的有效性。

[1]郭云飛,孫福海.Modelsim 與Matlab/Simulink聯合仿真技術研究及應用[J].光電技術應用,2013,28(6).

[2]劉杰.基于模型的設計—Qsys篇[M].北京:機械工業出版社,2012.

[3]陳永春.從Matlab/Simulink模型到代碼實現[M].北京:清華大學出版社,2002.

[4]諸葛俊貴.基于Matlab模糊控制器HDL 代碼的自動生成[J].電子科技,2012,25(1):42-44.

[5]楊守良.Matlab/simulink在FPGA 設計中的應用[J].微計算機信息,2005,21(23).

[6]Ying-Shieh Kung,Nguyen Vu Quynh.Simulink/ModelSim co-simulation of sensorless PMSM speed controller[J].Proceedings 2011IEEE Symposium on Industrial Electronics and Applications,2011,24(9).

[7]Hatnik U,Altmann S.Using ModelSim,Matlab/Simulink and NS for simulation of distributed systems[J].International Conference on Parallel Computing in Electrical Engineering,2004(9):7-10.

[8]杜勇,劉帝英.MATLAB在FPGA 設計中的應用[J].電子工程師,2007(1).

[9]胡迎剛.基于FPGA的DSP設計方法的研究[J].工會博覽·理論研究,2010(5).

猜你喜歡
模型系統設計
一半模型
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
主站蜘蛛池模板: 欧美区国产区| 亚洲无码精品在线播放| 国产91av在线| 色综合天天娱乐综合网| 国产成人无码AV在线播放动漫| 色哟哟国产精品| 亚洲男人的天堂久久香蕉| 精品国产三级在线观看| 91精品国产丝袜| 亚洲国产欧美国产综合久久 | 国产一级毛片在线| 无码高潮喷水在线观看| 亚洲91在线精品| 久久久久久久久久国产精品| 草草影院国产第一页| 色妞www精品视频一级下载| 国产一区二区精品福利| 国产又爽又黄无遮挡免费观看 | 波多野结衣二区| 国产精品亚洲片在线va| 真人免费一级毛片一区二区 | 免费高清自慰一区二区三区| 人妻无码中文字幕第一区| 九月婷婷亚洲综合在线| 亚洲欧洲日本在线| 在线亚洲小视频| 国产原创自拍不卡第一页| 97人妻精品专区久久久久| 国产免费黄| 亚洲无码四虎黄色网站| 自拍中文字幕| 57pao国产成视频免费播放| 免费播放毛片| 国产成人精品在线| 欧美日韩免费在线视频| 亚洲国产高清精品线久久| 日本道综合一本久久久88| 久久亚洲黄色视频| 美女一级免费毛片| 欧美国产日韩在线| 免费日韩在线视频| 欧美性精品不卡在线观看| 亚洲天堂视频在线观看免费| 久久精品无码一区二区国产区| 日韩小视频在线播放| 免费激情网站| 国产精品亚洲αv天堂无码| 福利姬国产精品一区在线| 国产H片无码不卡在线视频| 欧美日韩中文国产| 亚洲美女一区| 国产综合网站| 亚洲综合精品香蕉久久网| 国产精品3p视频| 日本爱爱精品一区二区| 久久夜色精品国产嚕嚕亚洲av| 99re66精品视频在线观看| Aⅴ无码专区在线观看| 国产经典三级在线| 欧美专区在线观看| 日韩无码视频播放| 国产成人精品一区二区| 在线观看网站国产| 国产人成午夜免费看| 国产嫖妓91东北老熟女久久一| 亚洲国产欧美国产综合久久 | 香蕉eeww99国产在线观看| 精品无码一区二区三区在线视频| 被公侵犯人妻少妇一区二区三区| 久久精品66| 亚洲天堂免费| 久久熟女AV| 人妻精品久久无码区| 久久久久亚洲AV成人网站软件| 日韩天堂网| 天天躁夜夜躁狠狠躁躁88| 欧美精品伊人久久| 久久久久青草大香线综合精品| 国产在线精彩视频论坛| 国产激情无码一区二区APP| 在线亚洲小视频| 精品亚洲麻豆1区2区3区|