資料介紹
描述
介紹
我想做一個四足行走的機器人,更像是“哺乳動物”的風格,而不是普通的“蜘蛛”或“昆蟲”。靈感來自著名的波士頓動力機器人和其他四足研究機器人。制作這樣的機器人非常具有挑戰性,因為它很容易因為重心高和腳在身體下方而翻倒,而不是伸展到角落。
目的是使用 Arduino 和低成本的微型伺服系統制造一個廉價的機器人。這個解決方案當然有它的局限性。不能指望它是完美的,但我現在已經設法制造了一些機器人,它們可以執行這部電影中描述的步行行為。用很少的預算做最好的事情本身就是一個挑戰,也許是那些從事資金雄厚的研究項目的人永遠不必面對的事情。:)
很早就發現,需要對反向運動學 (IK) 進行研究以使其正確。該代碼具有一組方程式,可根據所需的腳部運動計算關節角度。這些可以進一步用于一些重復性任務的功能,例如進行身體運動(將四只腳向相反方向移動)和進行完整的腳部運動(向上抬起以指定方向移動并再次放下)。
下一個挑戰是進行步態研究,即根據身體和足部運動定義機器人應該如何行走和轉動。我的機器人一直使用靜態穩定的步態。當時一只腳被抬起并放在一個新的位置。身體靠在其他三只腳上,為了不翻倒重心,必須保持在這些腳形成的三腳架內。我開發了四種標準步態——向前、向后、向左和向右。這反過來又利用足部和身體運動功能組合成一個完整的序列。
我還設計了一個同步伺服運動的功能。在某些情況下,幾個伺服器在設定的時間內做出不同的沖程。這必須同步以實現平穩的運動。
最后但同樣重要的是,我使用了完全不受保護的鋰聚合物電池。這可能是有風險的,主要的危險是放電過快或過深。只要沒有意外短路,就可以避免第一個危險。普通 R/C 電池的放電率為 25 C,在這種情況下允許 12 A。UBEC 將防止其在任何情況下高于 2 A。軟件中的監視功能可以防止第二種危險。在其中一個模擬引腳上測量電壓,如果低于 7.0 V,機器人將停止工作。
最后,我必須強調,電池應該使用專用充電器充電,并應小心處理,切勿讓充電無人看管。電池應從機器人上拆下(使用魔術貼安裝)并在防火袋中充電,或至少與易燃材料保持安全距離,以免火勢蔓延。還要安全地存放電池。
如果您不熟悉 LiPo 電池,請咨詢當地的 R/C 愛好商店并購買電池以及合適的充電器,可能還有用于充電和存放的防火袋/容器。這些物品通常充滿警告標志。重做它們并使用您自己的良好判斷力。:)
構建機器人
根據提供的文件打印零件。花點時間看一下圖片,并在開始之前弄清楚如何組裝零件。我是斯堪的納維亞人,但這條指令與宜家或樂高指令的水平相差甚遠 :)
首先應組裝髖關節。我使用質量好的雙面膠帶連接零件。它們也可以用膠水粘合,但如果需要修復無法拆卸的損壞部件,一個損壞的伺服系統會導致更換整個接頭。
將伺服支架放在一個伺服的底部,與驅動軸對齊。然后加入另一個軸垂直的伺服。下圖顯示了前后左右的髖關節。對于另外兩個角,應制作鏡像接頭。
在繼續之前,最好確保所有 12 個舵機都居中。最好的方法是組裝 PCB(或面包板,見下文),連接所有伺服系統并加載代碼。當 Arduino 啟動時,所有舵機將居中(命令信號 90 度)。機器人組裝完成后,將需要稍后微調中心位置。
下一步是連接稱為大腿的部分,即腿組件的“上肢”。該部件具有與通常與伺服一起交付的伺服喇叭裝配在一起的凹槽。將喇叭粘在凹槽中。確保使用膠水來連接 3D 打印材料和喇叭制成的尼龍塑料。我用的膠槍效果很好,但我在使用 CA 膠水方面取得了一些成功(有些品牌有效,其他品牌無效)。
大腿以 60 度角與髖關節相連。當舵機居中時,嘗試找到一個盡可能接近該角度的位置。用提供的螺絲(通常是隨伺服提供的三個中較短的一個)將喇叭固定到伺服花鍵上。下面是兩張組裝好的大腿和臀部的照片,為了清楚起見,伺服喇叭沒有包括在內(或者從我這邊的懶惰出發從未建模)。
腿的下部也應組裝。在這種情況下,伺服系統使用螺釘連接到腿部。隨伺服提供螺釘(通常是兩個較長的“木”螺釘)。
現在可以將腿組裝到身體上。我稱之為“保險杠”的兩個部分位于機器人的前部和后部(就像汽車上的保險杠)。它們有伺服喇叭的凹槽,就像大腿部分一樣。將角粘到它們身上。然后將大腿的伺服支撐滑入身體的相應孔中。當這在兩側都完成時,該組件可以由保險杠固定。讓腿以大約 12 度的角度向外突出(腿的腳趾向外 20 毫米)。保險杠通過使用剩余的(較長的)伺服螺釘固定在車身上。
最后可以連接機器人的小腿。它們應該與大腿相反的方向傾斜,使腳尖正好位于每個腿組件的髖關節下方。
這樣機器人就組裝好了。它應該如下圖所示。請注意,與頂部圖像和電影剪輯相比,機器人的設計略有變化。車身經過重新設計,以簡化并打造更堅固的設計。髖關節的伺服支撐和喇叭交換了位置。所以根據3D圖像組裝,避免被照片和電影剪輯混淆。
當然,每個關節的角度不可能完全符合要求的角度,SG-90 舵機上的花鍵數量為 21,導致兩個位置之間的角度為 17 度。您最多可以在 10-20 度范圍內組裝機器人,剩余的誤差必須通過更改代碼中的中性位置來調整,請參閱本說明的進一步內容。再次連接所有伺服系統并啟動 Arduino 并檢查中性位置并在需要時進行一些機械調整(移動一個或兩個樣條線)可能是個好主意。與伺服系統一起工作時,往往會意外轉動伺服系統。
連接電子設備
有兩種選擇,將所有東西都放在一個面包板上,或者使用提供的 Fritzing 文件生產 PCB。如果在將所有電源線和地線連接到伺服系統時不小心,您可能會遇到面包板中的電壓問題。在極端情況下,一臺伺服器可能會消耗 600 mA 的電流,而不良的連接會導致行為不穩定。PCB 的電源線有非常寬的銅跡線,因此如果您正確焊接,它將正常工作。
我的設計中沒有電源開關。只需連接電池即可開啟和關閉機器人。如果你想添加一個,它應該在電池連接器之后,切斷 Arduino 和 UBEC 的 7.4 V 電源。
面包板版本
可以將 Pro Mini、伺服連接器和大多數其他電子設備放在一個半尺寸的面包板上。我在下圖中繪制了示意圖。確保使用短跳線,尤其是用于伺服系統的 5 V 電源和接地連接。伺服連接器只是超長的公頭,被切成三塊并壓入面包板。
圖片中沒有顯示的是電池和UBEC。可能有一些焊接來解決這個問題,以便將連接器配件連接到電池上。從連接器兩根跳線應連接到面包板的下部“電源軌”,以便為 Pro Mini 供電(連接到 RAW 和 GND)。還將兩個電阻從 7.4 V 電源連接到 A0 引腳。2.2k 來自正極,1k 來自地面。這會將電壓(滿電池時超過 8 V)分壓為低于 5 V 的值,該值可由模擬引腳測量。
UBEC 的輸出端有一個伺服連接器。在上面的“電源導軌”上加一個兩個公頭是相當方便的。把它放在中間的某個地方,如圖所示,以確保伺服系統的功率分配盡可能平衡。
IR 接收器應連接到 A1 并具有 5V 電源。接收器上的針腳足夠長,可以直接插入面包板上的孔中。
下面有一個示意圖和一張關于成品面包板外觀的圖片。請注意,圖片顯示了具有不同引腳和連接的舊版本機器人。它仍然提供了如何連接跳線和伺服連接器的想法。
面包板通過其自粘背面連接到車身上。定位它,使伺服系統連接到引腳 D3、D4 和 D5(示意圖中的右上角)的角位于機器人的前/左角,并確保電路板位于身體的中心(正確的中心重力至關重要)。
PCB版
我在下面添加了一個 Fritzing 文件。這可用于生產 PCB,可以通過從 Fritzing 提供的服務訂購,也可以通過導出用于 PCB 制造的文件。我做了一系列圖片來展示下面的組件。PCB 是為這個機器人定制的,帶有連接到所有伺服、IR 和電壓測量的連接器。但也有從其余引腳斷開的連接器。如果您將來想擴展機器人,這些可用于連接其他設備。
身體上有一些小的“墊子”,可以貼合 PCB 的角落。同樣在這里,帶有 D3 到 D5 連接器的角落應該在前面/左側。PCB上有安裝孔,但我只在機身上使用了一塊雙面膠帶來固定它。它會留在原地。
電池
電池用魔術貼固定在底部。身體上有專門用于此的平面。7.4V/500mAh LiPo 電池的外形尺寸通常約為 55x30x10 mm(上下幾毫米),非常適合這個地方。
最后,機器人可以通過將伺服線捆成漂亮的束來“修飾”,這樣它在行走時就不會被它們絆倒。它還使機器人看起來實際上是一個四足行走的生物,而不是一堆伺服線。:)
敲定
在使用機器人之前,應微調中心位置。這是通過在代碼中編輯數組 serverdeg0 來完成的:
const float servodeg0[12] = {90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90};
這些值的順序是 alfa、beta gamma 和前/左、后/左、前/右、后/右。所以右前方的 beta 是數組中的第八個位置或者是serveddeg0[7](數組的編號從 0 開始)。
還有一個稱為servodir 的數組定義了舵機的旋轉方向。
const int servodir[12] = { +1, +1, -1, -1, -1, +1, -1, -1, -1, +1, +1, +1}; // Turning direction (positive is servo counter-clockwise)
我使用的舵機逆時針方向從 0 度移動到 180 度。我在某處讀到有伺服系統朝另一個方向前進。在這種情況下,數組servodir 必須始終更改其符號。
啟動 Arduino 并檢查所有伺服系統的角度。采取措施,看看一切看起來都是直的和對稱的。距離和角度應根據下圖。
每次測量很難在精確的毫米范圍內,在厘米范圍內是合理的。查看需要哪些更改并將它們添加/減去數組servodeg0中的值。在一切正確之前,這肯定需要幾次迭代。你將以一個看起來像這樣的servodeg0數組結束(我的一個機器人的一段實際代碼)。最重要的是,你最終應該擁有一個四足支撐并筆直站立的機器人。
const float servodeg0[12] = {80, 95, 100, 100, 110, 90, 100, 115, 100, 80, 80, 100};
現在一切都結束了。享受!
可能只是路上的一些提示。
一段時間后,伺服系統可能需要重新校準。中心位置會隨著時間而漂移。只需不時檢查所有內容是否對齊。
如果您已將所有內容都正確,但仍有一個機器人會翻倒,請檢查重心。可以移動電池來平衡這一點,使用魔術貼是一件好事。
再一次。小心對待你的鋰聚合物電池。
進一步改進
通過在這里提交我的機器人,我還邀請人們改進設計,或者添加更多功能,或者做一個稍微不同的布局(更大、更小、更酷)。該代碼應該可以在布局或大小略有不同的機器人上重復使用。下面的草圖顯示了代碼中的不同常量。如果制造了具有不同措施的機器人,所有 IK 和運動功能應該仍然有效。它還顯示坐標已定義,x 指向正向。
當然,如果人們為機器人添加功能會很有趣。遙控器上有幾個按鈕可以被賦予功能(如果按下按鈕,為什么不跳舞或做一些其他的動作)。
我個人嘗試模擬輸入。我還使用了“走路時轉身”的步態,以便能夠在一定程度上引導機器人,或者在陀螺儀或指南針的幫助下糾正路線偏差。我還添加了一個超聲波傳感器和自主行為(避開障礙物)。我目前的項目是將模擬控制與自主相結合,并通過智能手機控制一切。這迫使我學習了很多新東西(Blynk、ESP6822、設備之間的串行通信等),希望我能推出一個改進版的機器人(或者也許有更好技能的人在這方面打敗了我):)
- 制作Arduino控制的機器人
- Arduino伺服電機避障機器人
- 使用Arduino制作兩輪機器人
- 如何使用Arduino Uno制作智能避障機器人
- 如何使用Arduino制作跟隨機器人
- 如何制作Arduino相撲機器人
- 基于Arduino系統拉線墻畫機器人設計制作 10次下載
- PLC的工業機器人關節直流伺服系統
- 機器人關節伺服控制系統設計與仿真 38次下載
- Arduino教學機器人的使用教程免費下載 37次下載
- 詳解機器人的伺服系統 0次下載
- 教學雷達伺服系統設計與制作 18次下載
- Arduino機器人制作指南-奧松機器人 34次下載
- 基于MatlabRTW的機器人伺服系統設計方案
- 機器人視覺伺服系統的標定
- 交流伺服系統的組成和應用 487次閱讀
- 液壓伺服系統的類型和應用 823次閱讀
- 一文了解機器人伺服系統 844次閱讀
- 基于松下交流伺服電機和pmac運動控制卡實現機器人視覺伺服系統的設計 4489次閱讀
- 基于仿人機器人BHR-1的視覺跟蹤和運動控制系統的設計 2726次閱讀
- 機器人視覺伺服系統技術的介紹及發展歷程的詳細資料說明 3700次閱讀
- 伺服系統設計驗證流程解決方案 1072次閱讀
- 一文教你如何用單片機系統制作微型打印機 5278次閱讀
- 機器人伺服系統詳解(組成/原理框圖/執行元件/發展趨勢) 2.6w次閱讀
- 基于PLC的機器人伺服運動控制系統設計詳解 1.5w次閱讀
- 一文詳解伺服系統需求重點在哪里 5984次閱讀
- 伺服系統應用于哪兒_伺服系統應用實例 1.6w次閱讀
- 伺服系統什么意思_伺服系統的作用是什么 3.3w次閱讀
- 伺服系統是什么_伺服系統的基本要求_伺服系統的基本組成 1.8w次閱讀
- 基于MSP430F149的變頻伺服系統的設計 1201次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多