??歡迎來到Labview專欄~四足爬行機器人仿真與控制
- ☆* o(≧▽≦)o *☆嗨~我是小夏與酒??
- ?博客主頁:小夏與酒的博客
- ??該系列文章專欄:Labview-3D虛擬平臺
- 文章作者技術和水平有限,如果文中出現錯誤,希望大家能指正??
- ?? 歡迎大家關注! ??
![]()
一、前言
??效果展示
??四足機器人整體預覽:
??機器人關節(jié)運動:
??機器人整體旋轉與關節(jié)運動:
??部分vi代碼展示:
本教程全部內容均為本人探索研究整理得出,現在將該部分資料內容開源!
效果展示中的完整項目vi和資料獲取鏈接:【全網首發(fā)開源資料-多路支配關系】Labview仿真控制四足爬行機器人。也可以三連本文章之后聯(lián)系我免費獲取。
??基礎知識學習與回顧
本篇文章涉及的知識內容較為復雜,請先掌握如下文章中的基礎知識點:
??零件模型的導入:【Labview-3D虛擬平臺】Labview與Solidworks聯(lián)合仿真(保姆級)(上)在Labview中使用Solidworks的3D模型——零件模型的導入
??3D模型的變換操作:【Labview-3D虛擬平臺】Labview與Solidworks聯(lián)合仿真(保姆級)(中)在Labview中使用Solidworks的3D模型——3D模型的變換操作
??裝配體、父級與子級:【Labview-3D虛擬平臺】Labview與Solidworks聯(lián)合仿真(保姆級)(下)在Labview中使用Solidworks的3D模型——裝配體、父級與子級
??軟件說明
SOLIDWORKS 2022;LabVIEW 2021。
軟件 | 版本 |
---|---|
SOLIDWORKS | 2022 |
NI LabVIEW | 2021 (32位) |
LabVIEW 2021(32位)和LabVIEW 詳細課程獲取:三易電子工作室;也可以搜索并關注微信公眾號【易小時課堂】或者【三易電子工作室】了解更多內容。
二、重點內容回顧
??裝配體、父級與子級:【Labview-3D虛擬平臺】Labview與Solidworks聯(lián)合仿真(保姆級)(下)在Labview中使用Solidworks的3D模型——裝配體、父級與子級
首先回顧一下上文中的關系指示圖:
??單路支配關系:
單路支配關系,即父級支配第一子級,然后依次向下支配第二子級、第三子級、…、第n子級。對于單路支配關系的詳細講解參考上述文章鏈接。
通過對單路支配關系的實踐應用,我們可以完成對機械臂等的仿真與控制:
??多路支配關系:
由上圖指示:
- 第一子級1和第一子級2稱為 同級 ;同樣,第二子級1和第二子級2也稱為 同級 。
- 子級對象自身的變換操作不會影響到同級對象。
??關于父級和子級的作用與相互影響:
父級處于主導地位,影響著其下的各個子級,對子級起支配作用;子級只對其下的子級起支配作用,完全不會對父級造成影響,也不會對同級造成影響。
上述內容即是文章《裝配體、父級與子級》中的理論基礎。在我發(fā)布上一篇文章之后,有許多小伙伴不太清楚多路支配關系是如何實現的,也對多路支配關系的實現抱有懷疑態(tài)度。在此篇文章中我將對其進行詳細介紹。
多路支配關系中,父級占最高位置,對以下的所有子級起支配作用,而且同級之間不會產生相互影響,最經典的多路支配關系模型之一就是多足機器人:
三、項目理論講解
??項目實現目標:
??四足機器人的身體部分是父級,對機器人的四條足起支配作用;
??機器人四條足彼此之間不存在任何相互影響;
??任何一條足的組成都是單路支配關系。
??四足爬行機器人的結構關系:
四、案例制作全流程
4.1 模型零件的準備
該項目的四足機器人建模文件都包含在已上傳的壓縮包資源中:
由于該四足機器人的零件較多,且大部分零件都是固定不動的,為了導入labview時方便快捷,對部分零件組裝為裝配體之后再導出wrl格式。例如機器人的身體部分就可以作為一個裝配體導出:
對零件進行處理之后得到的各部分裝配體:
4.2 零件的導出
在零件導出時最重要的還是要找到旋轉關節(jié),在旋轉關節(jié)部位建立新坐標系。
在之前的文章中介紹過,labview中的3D顯示坐標基準為笛卡爾-右手坐標系。所以在零件中建立新坐標系的時候,還需要選擇好一個軸為整體模型的前端。
在本次項目中,我選擇以Z軸正方向作為機器人的前端。
對于新手來說,在這里給出一個在零件圓心處建立新坐標系的方法:
??以圓心為原點新建坐標系:
??第一步:
??第二步:
??第三步:
??第四步:
??第五步:
??新坐標系建立完成:
4.3 編寫vi
當我們將模型零件準備好并導出wrl格式文件之后,就可以開始vi的編寫了。
4.3.1 太陽系范例講解
對于在labview中實現3D操作,太陽系范例真的特別經典!
在該范例中,包含了相當多的知識點,其中就包括了多路支配關系的實現:
在此說明一點:在labview中,你導入的零件模型被稱為對象,而我習慣于說成場景(可能會與一些vi函數產生歧義),希望讀者能夠在后續(xù)的文章中分辨清楚。
大家一定要認真學習并掌握太陽系的范例vi,可以學到很多有用的知識點!
4.3.2 在大場景中加入小場景
如何實現多路支配關系呢? 在labview的3D操作中,必須存在一個 大場景 ,然后在這個大場景中加入其他需要的元素,例如光照、坐標軸、小場景等等。換一個說法,你想要制作一個生態(tài)缸,那就必須先有一個大的透明塑料容器或者其他材料的容器,然后在這樣的容器中加入泥土、假山、草皮、植株、小動物或者昆蟲等等。其中,容器就是你實現生態(tài)缸的一個大場景,而泥土、動植物等就是你加入到這個大場景中的元素。
因此,我們要在labview中仿真控制四足機器人、實現多路支配關系,就必須先建立一個大場景,然后在向這個大場景中添加所需要的元素。 其中,將四足機器人的四條腿分別作為一個個獨立的小場景加入到機器人身體這個場景中,四條腿都是身體場景中的元素。
??建立大場景并添加一個坐標軸:
??創(chuàng)建四足機器人場景:
在該項目中,我們在大場景中添加小場景,并且使這些小場景都是彼此獨立的,這樣就不會產生相互影響了。
在上圖代碼中,我們新建了一個叫做四足機器人的小場景,并將機器人的身體部分加入到這個小場景中。
??知識點說明:
對于添加場景來說,以下兩種方法都是等效的,都可以在三維場景中添加新的場景對象:
添加對象vi:
調用節(jié)點添加對象:
以上兩種方法的區(qū)別即是:通過調用節(jié)點添加對象的輸出端可以直接對已添加的場景對象進行變換操作!
以上兩種方法的轉換方法:
對添加對象vi操作:
轉換結果如下:
至此,對于添加場景并引用來說,以上兩種方法都是等效的。
??每一條腿都是單路支配關系:
為每一條腿都建立一個獨立的小場景。每一條腿都包括三個部分:大腿部分、小腿部分和前爪部分,這三部分構成單路支配關系:大腿部分支配小腿部分和前爪部分;小腿部分也支配前爪部分。 其中一條腿的小場景的建立過程見上圖所示。
??將所有元素按正確關系添加到大場景中:
在該項目中,包含一個大場景、一個坐標軸場景、一個四足機器人場景和四條腿各自的小場景,四條腿各自的小場景是包含在四足機器人的場景中。場景中添加元素的方法:
使用 添加對象vi 將元素添加到場景中,同時,不對已添加的元素進行引用操作,這樣就實現了獨立控制!
總結與注意:
- 在場景中添加對象時一定要注意添加元素的順序;
- 小場景也是大場景中的一個元素,這是包含的關系,小場景中也包含其他多個元素或更小的場景;
- 實現場景獨立的方法:不對已添加的元素進行引用操作。
4.3.3 控制的實現
對于各部件控制的實現,對已添加到場景中的元素進行引用操作即可:
或者:
部分控制操作vi:
五、參考文章
??感謝以下大佬的資料分享!
labview學習筆記–3D模型(1)
labview學習筆記–3D模型(2)
labview學習筆記–3D模型(3)
機械類——Labview 調用 Solidworks 模型,制作機械臂控制方式探索
LabVIEW學習分享(2)
labview調用solidworks3維模型
訂閱該系列文章專欄,不錯過精彩內容~開源不易,轉載請注明原文鏈接(本文章只在CSDN發(fā)布)!文章來源:http://www.zghlxwxcb.cn/news/detail-439134.html
??結尾文章來源地址http://www.zghlxwxcb.cn/news/detail-439134.html
- ?? 感謝您的支持和鼓勵! ????
- ??您可能感興趣的內容:
- 【FPGA-Spirit_V2】基于FPGA的循跡小車-小精靈V2開發(fā)板
- 【Go黑帽子】使用Golang編寫一個TCP掃描器(高級篇)
- 【Labview機器視覺】- USB攝像頭識別和解碼二維碼 - 學習記錄
- 【Verilog HDL】FPGA-Verilog文件的基本結構
![]()
到了這里,關于【全網首發(fā)開源教程】【Labview機器人仿真與控制】Labview與Solidworks多路支配關系-四足爬行機器人仿真與控制的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!