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