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

單足彈跳機器人聯合仿真教學實踐

2016-12-24 10:26:06李瑞史瑩晶何笑隆
計算機教育 2016年8期

李瑞 史瑩晶 何笑隆

摘要:提出通過ADAMS軟件建立單足彈跳模型,搭建ADAMS與MATLAB的聯合仿真平臺,闡述通過在仿真中實時觀察機器人的運動過程,并結合模型反饋回的數據曲線,學生可以完成單足模型的腿部擺角控制實驗、能量補償實驗等。

關鍵詞:機器人建模;聯合仿真;擺角控制;能量補償

0 引言

機器人技術在近二三十年里得到了迅速的發展,其應用范圍也從工業制造領域擴展到了航空航天、軍事偵察、醫療服務等領域。隨著機器人工作環境的日益復雜,對于機器人運動靈活性的要求也越來越高。目前,機器人運動主要分為輪式、步行以及彈跳等方式,其中彈跳式運動所特有的突然性與爆發性,可以使機器人在面對突發狀況時迅速地做出反應,躲避風險,正被越來越多的科研院校所關注。

目前,國內很多工科院校都把機器人學作為一門必修或選修的課程。然而,在傳統的教學中,機器人學中的運動學、動力學建模部分涉及復雜的分析與運算。對于彈跳機器人,更包含著地相、騰空相、沖擊過程等若干個階段,建模十分復雜;此外,由于機器人設備價格昂貴,且對操作性以及場地要求較高,目前還很難做到讓每個學生進行實際的機器人操作。隨著虛擬樣機技術的發展,在虛擬樣機軟件中建立用于仿真的模型,并與其他仿真軟件相結合的聯合仿真技術,對于機器人的研究與教學工作發揮著重要的作用。

1 聯合仿真技術簡介

ADAMS是一款對機械系統的運動學與動力學進行仿真與計算的軟件。作為一款虛擬樣機軟件,ADAMS豐富的特性,使其成為目前世界上使用最多的機械系統仿真分析軟件。這套軟件可以對較為復雜的機械系統進行建模,并真實地反應實物的運動學、動力學等特性。然而,由于該軟件自帶的控制工具箱較為簡易,因此只能滿足比較簡單的控制需求。

MATLAB作為專業的數學計算與仿真軟件,借助其豐富的工具箱以及強大的控制系統的設計能力,可以搭建出復雜的控制系統。但在建立復雜運動系統的模型時,需要推導出系統中用于仿真的所有微分方程,導致工作量急劇增加,其中從分析模型到計算推導,任意一個環節出錯都可能導致建模失敗。

通過將ADAMS軟件中建立的模型導入到MATLAB的Simulink環境中,可以彌補ADAMS軟件難以對模型進行較為復雜控制系統設計的缺陷,同時也避免了在MATLAB下建模的難度與時間長的弊端。二者的結合彌補了各自的缺陷,極大地提高了建模的效率,并使得仿真的結果更加趨近于實物。因此基于ADAMS和MATLAB的聯合仿真技術在航空航天、機械制造、機器人等領域都得到了廣泛的應用。

2 機器人聯合仿真平臺搭建

彈簧負載倒立擺模型(SLIP)是用來研究機器人彈跳運動的經典模型,整個模型由一個有質量的身體以及與髖關節相連的輕質彈簧腿組成。位于髖關節處有一轉動自由度,使得彈簧腿可以調整著地角度,以實現整個彈跳過程。由于聯合仿真平臺的搭建是本教學實踐的一部分,只有了解平臺的搭建過程,才可以在仿真平臺上開展實驗,并及時修改實驗過程中出現的錯誤。因而,首先介紹聯合仿真平臺的搭建過程,如圖1所示。

2.1 建立單足機器人的ADAMS模型

首先介紹如何針對彈簧負載倒立擺模型,在ADAMS環境下搭建彈跳模型運動仿真平臺。

(1)添加構件。彈簧負載倒立擺模型主要由身體和彈簧腿兩部分組成,其中身體質心等效在髖關節,因此在建模時可以用有質量的球體代替。

在ADAMS環境下,選取有質量信息的幾何實體(Solids)模塊,選擇球體(Sphere)用來模擬身體質心,設置其半徑為5.0cm,并拖動到圖形區。在創建新構件時,系統會在球體的球心處創建一個質心坐標系(cm)和局部坐標系(Marker點),其中質心坐標系用于計算構件的質量信息,而局部坐標系用于確定球體的位置和方向。由于在ADAMS中新添加的構件根據大小以及密度自動計算質量,需手動修改其質量,改為4.5kg。

創建新構件圓柱體(cylinder),連接在球體正下方,作為彈簧腿剛性部分,設置半徑為2.0cm,長度為20.0cm,并修改其質量為0.5kg。在圓柱體正下面50cm處添加新構件球體,用以代替足端,設置其半徑為2.0cm,并修改其材質為Wood。在圓柱體與輕質球之間連接彈簧阻尼器,其長度為500mm,剛度系數設置為2N/mm,阻尼系數采用默認值。

(2)添加約束。已建立的模型由多個構件組成,各個構件之間通常存在某些約束關系,即一個構件限制另一個構件的運動,兩個構件之間的約束關系通常稱之為運動副。彈簧負載倒立擺模型有兩個自由度,一個是髖關節處腿部的轉動自由度,一個是彈簧腿軸向的自由度。因此需要在球體質心位置(即髖關節)定義旋轉副約束,如圖2(a);而為了約束彈簧在運動時只在軸向伸縮,需要在彈簧與圓柱體連接處定義滑動副約束,如圖2(b)。

(3)定義地面及接觸力。當兩個構件的表面之間發生接觸時,兩個構件就會在接觸的位置產生接觸力。

對于彈簧質量模型,由于要研究其在地面上的彈跳運動,因此需要定義地面及其接觸力、摩擦力等以模擬真實地面情況。

首先選擇零件庫中的立方體(Box)作為地面,設置長、高、深分別為1000cm、5cm、20cm,修改材質為Wood,并調整位置,使上表面與x軸重合,且關于z軸對稱。添加固定關節(FixedJoint),使其與大地固連。在Force工具條中,點擊Create Contact按鈕,設置足部球體與地面的接觸類型為Solid to Solid,計算接觸力的方法采用沖擊函數法(Impact),其中的參數采用默認值。在摩擦力選項中,選擇Coulomb(庫侖法),并設置靜態摩擦系數為0.3,動摩擦系數為0.1。

最終在ADAMS環境下建立的模型如圖3所示。

2.2 ADAMS模型導出到MATLAB環境

(1)定義輸入輸出。ADAMS與MATLAB之間的數據交換是通過狀態變量實現的,在定義輸入輸出以前,需要將相應的狀態變量定義好。在本模型中,需要輸入的變量為髖關節轉矩;輸出變量為腿部著地角度、身體質心的前向速度與高度、足底與地面接觸力等。

創建力矩的狀態變量并命名為.SLIP.Torque,在髖關節的轉動關節處添加單分量力矩,并修改其函數為VARVAL(.SLIP.Torque),使模型中的狀態變量(Torque)與單分量力矩相關聯。

創建著地角度、質心高度、速度及接觸力的狀態變量,分別命名為angle、Height、Velocity、Contact。著地角度函數為AZ(MARKER_11,MARKER_12),即位于圓柱腿上的坐標MARKER 11相對于身體上的坐標MARKER 12關于z軸旋轉的角度。同理,分別用DY、VX和CONTACT函數定義高度、速度以及接觸力的狀態變量。

設置完狀態變量后,分別指定狀態變量Torque為輸入變量,Angle、Contact、Height、Velocity為輸出變量。

(2)導出控制參數。在創建完控制輸入與控制輸出后,選擇Control菜單的Plant Export選項,分別將之前定義的輸入輸出變量加載到列表中,將Target Software選擇為MATLAB,Analysis Type類型選擇為non linear。

通過以上設置,在ADAMS工作目錄中,將生成Controls_Plant.m,Controls_Plant.cmd,Controls_Plant.adm 3個文件。啟動MATLAB,將MATLAB工作目錄指向ADAMS的工作目錄。在命令窗口中輸入Controls Plant,即執行Controls Plant.m文件,此時在MATLAB的工作空間中將導人ADAMS模型信息,如圖4(a);接著輸入命令adams_sys,該命令是ADAMS與MATLAB的接口命令,由此可以生成如下模型,如圖4(b)。

其中,S-Function表示ADAMS模型的非線性模型,State-Space表示線性化模型,而adams sub為我們仿真需要的模型,包含了之前定義的輸入與輸出變量。至此,ADAMS模型在MATLAB中的仿真模型生成完畢,可以在Simulink環境下對其進行仿真實驗。

由于在聯合仿真平臺的搭建過程中,涉及的細節很多,而且容易出錯,因而,對參與教學實踐的學生首先分組,采用組長負責制,逐層推進,保證每個學生均可獨立完成平臺搭建。

3 仿真平臺的實驗

針對搭建的單足彈跳機器人仿真平臺,可引導學生進行相關控制器的學習與設計。目前學生已經在此平臺基礎上,進行了單足機器人腿部擺角實驗、著地角度與前向速度關系實驗,以及彈簧腿能量補償實驗等。

3.1 模型腿部擺角實驗

對于單足機器人的彈跳運動研究,首先需要解決的就是腿部擺動角度的控制。通過將模型的身體固定,利用髖關節轉矩控制腿部的轉動角度,學生設計了PID控制器。給定幅值為30°,周期為ls的方波信號,實現了腿部角度跟蹤任務,如圖5所示。

3.2 著地角度與前向速度關系實驗

在腿部擺角實驗的基礎上,學生又對著地角度與前向彈跳速度的關系進行了研究與實驗。在彈跳機器人即將從騰空相進入著地相時,需要調整腿部著地角度,以使機器人的腳趾落在合適的位置。通過控制模型腿部擺角來影響落地點的位置,機器人或保持原有速度,或加快彈跳速度,或降低彈跳速度。當模型的著地速度與離地速度相同時,此時腳趾落地點的位置稱為中性點。學生在學習理解中性點的概念后,分析落地點相對于中性點的3種不同位置對于彈跳速度的影響,并在仿真平臺中進行驗證。

對于彈跳運動相對于中性點對稱的情形,研究人員總結出用于計算彈簧質量模型前向速度的公式,通過計算可得,在前向速度為1.5m/s時,穩定運動的著地角度約為13.6°,如圖6所示。

此外,學生又分別增大和減小腿部著地角度,觀察模型著地點落在中性點近端和遠端時對模型前向速度的影響。

在實際著地角度小于期望角度時,模型的矢量平面將發生偏轉,此過程離地時的角度將增大,整個模型做加速運動,如圖7所示。

與加速過程相反,該狀態下著地角度大于期望角度,從而導致模型離地角度減小,隨著前向速度的不斷減小,模型最終失穩,甚至出現反向跳躍的過程,如圖8所示。

3.3 SLIP模型能量補償實驗

在忽略能量損耗的情況下,只要確定了在期望速度下的著地角度,SLIP模型便能夠實現穩定的周期跳躍運動。然而,在實際的運動過程中,由于落地碰撞以及摩擦等原因,導致系統能量不斷損耗,因此需對模型在每個周期損耗的能量進行補償。

針對這一問題,學生采用為彈簧滑動關節處加一外力用以壓縮彈簧,以達到補償能量的目的。鑒于此,學生對已建立的ADAMS模型增加了輸入變量F,增加了輸出變量彈簧壓縮量Spring Length,以及模型質心豎直方向速度Velocity On Y。

基本的彈跳狀態可以分成著地相和騰空相,在此基礎上,學生將模型的運動狀態進行了細分,建立有限狀態機的控制邏輯。通過檢測模型質心在豎直方向的速度以及與地面接觸力,來判斷模型當前所處的狀態,并分別在不同狀態下進行不同的控制,如圖9所示。

能量損耗很大一部分原因是由模型沖擊地面造成的,隨著數次落地彈起的過程,彈簧在著地期間的壓縮量越來越小。通過觀察模型在自由狀態下落地前后兩個周期質心的高度差,可以求得一次落地時的能量損耗,進而計算得到每次著地期間所需的補償力。通過有限狀態機判斷當前模型運動所處的狀態,并在觸底事件發生時進行能量補償,最終實現模型的周期彈跳運動,運動曲線示意圖如圖10所示。

4 結語

通過本教學實踐,學生掌握基于ADAMS與MATLAB的聯合平臺的搭建方法,系統地實踐了機器人動力學建模方法。基于ADAMS與MATLAB的聯合仿真平臺,使得學生在仿真時不僅可以得到仿真曲線,更可以實時觀察模型的運動過程,這種教學實踐方法提高了學生的學習自主性與科研熱情。

(編輯:郭田珍)

主站蜘蛛池模板: 欧美中文字幕无线码视频| 精品国产自在在线在线观看| 国产欧美专区在线观看| 欧美有码在线观看| 成人精品午夜福利在线播放| 亚洲精品视频在线观看视频| 中国国产高清免费AV片| 亚洲床戏一区| 91无码网站| 欧美成人日韩| 亚洲一区二区三区国产精华液| 国产成人免费手机在线观看视频| 福利在线一区| 国产拍在线| 国产18在线| 国产亚洲现在一区二区中文| 玖玖精品在线| 亚洲天堂首页| 免费全部高H视频无码无遮掩| 国产成人精品视频一区二区电影 | 91精品久久久无码中文字幕vr| 996免费视频国产在线播放| 激情国产精品一区| 另类综合视频| 午夜视频在线观看区二区| 久久96热在精品国产高清| 日韩天堂网| 欧美午夜在线播放| 老色鬼久久亚洲AV综合| 久久精品亚洲中文字幕乱码| AV不卡在线永久免费观看| 国产亚洲欧美在线人成aaaa| 一区二区午夜| 丰满的少妇人妻无码区| 免费高清a毛片| 中文字幕在线播放不卡| 亚洲人成网7777777国产| 青青青视频91在线 | 99re免费视频| a毛片基地免费大全| 无码专区第一页| 波多野结衣一区二区三区四区视频 | 亚洲欧美日韩精品专区| 日韩色图区| 亚洲精品天堂自在久久77| 午夜福利网址| 亚洲天堂在线免费| 婷婷开心中文字幕| 奇米影视狠狠精品7777| 亚洲国产成人综合精品2020| 精品欧美视频| 午夜少妇精品视频小电影| 亚洲性日韩精品一区二区| 亚洲成人动漫在线观看| 亚洲无码在线午夜电影| 国产丝袜第一页| 日韩精品亚洲一区中文字幕| 蜜桃视频一区| 久久毛片免费基地| 无码在线激情片| 亚洲天堂视频网| 日本精品视频一区二区| 午夜精品区| 欧美在线国产| 国产va在线观看| 九九九精品成人免费视频7| 国产后式a一视频| 色精品视频| 国产精品美女自慰喷水| 国产福利在线观看精品| www.av男人.com| 天天色综网| 无码粉嫩虎白一线天在线观看| 伊人久久综在合线亚洲91| 动漫精品啪啪一区二区三区| 久久久久夜色精品波多野结衣| 国产国产人成免费视频77777 | 国产日韩欧美中文| 国产精品开放后亚洲| 五月天综合婷婷| 久久成人国产精品免费软件| WWW丫丫国产成人精品|