第1步:所需的零件和工具
零件
3D燈絲(我使用的是黑白PLA但ABS也可以使用)
至少8臺SG90舵機(jī)(我說至少因?yàn)槲覀儠茐乃鼈兌铱赡軙茐乃鼈?/p>
釣魚線
細(xì)彈力繩
4個(gè)彈簧
熱縮管
備用電線
編織尼龍?zhí)坠埽ㄟ@是可選的,很難找到少量,你可以找到替代品或只是使用拉鏈)
Arduino Uno
電池(我使用了9v,但可充電的脂肪是理想的)
工具
3D
烙鐵
螺絲刀和其他基本車間工具
超級膠水和/或環(huán)氧樹脂
用于清潔支撐結(jié)構(gòu)的鉆頭和鉗子
剝線器/切割器
步驟2:打印
關(guān)于打印的一些評論:
指尖設(shè)計(jì)用于雙擠壓3D打印機(jī),因?yàn)楹谏P尖太薄而無法自行打印。 (如果您使用單個(gè)擠出打印機(jī),您將不會在指尖上使用黑色飾邊,因?yàn)樗鼈兲《鵁o法單獨(dú)打印并粘上膠,或者您可以重新設(shè)計(jì)黑色指尖更厚)
我個(gè)人使用PLA但是ABS塑料也可以使用
為了減少打印時(shí)間我將手掌和前臂等較大的部件打印在0.3mm的層高,而其他一些部件,如手指,我做了0.1mm。
取決于您打印的分辨率
我發(fā)現(xiàn)白色塑料很容易出現(xiàn)污垢(因?yàn)樗苋菀妆挥∷又g的凹槽夾住),在選擇顏色時(shí)請記住這一點(diǎn)
步驟3:黑客劫掠(第1部分):連續(xù)旋轉(zhuǎn)伺服
舵機(jī)的旋轉(zhuǎn)受限于電位計(jì)(具有可變電阻且旋轉(zhuǎn)旋轉(zhuǎn)變化的裝置)的事實(shí)可以讀取并從中計(jì)算出一個(gè)旋轉(zhuǎn)角度不能旋轉(zhuǎn)超過180度。
為了克服這個(gè)限制,打開伺服并切斷最頂部齒輪上的塑料塞。然后向下鉆一個(gè)孔,這個(gè)擋塊允許齒輪自由旋轉(zhuǎn),然后咬住電位計(jì)的D形針座(見上圖第4張圖)。現(xiàn)在齒輪可以連續(xù)旋轉(zhuǎn),而電位計(jì)完全不動(dòng)。按原樣重新組裝伺服,并使用下面的代碼進(jìn)行測試,確保它在兩個(gè)方向上連續(xù)旋轉(zhuǎn)。制作其中2個(gè)伺服電機(jī)。
測試代碼
重要:修改伺服時(shí),請確保將電位器旋轉(zhuǎn)到中間位置。這是因?yàn)榇a會告訴伺服旋轉(zhuǎn)到180度或0度(取決于旋轉(zhuǎn)方向),并且由于頂部齒輪不再咬合電位器,電位器將永遠(yuǎn)不會移動(dòng),因此電機(jī)將繼續(xù)旋轉(zhuǎn)試圖永遠(yuǎn)達(dá)到0或180度的同一方向。但是,如果您的電位計(jì)旋轉(zhuǎn)到任一端,它將讀取180或0的角度,并且代碼將不起作用,因此確保電位計(jì)旋轉(zhuǎn)到大約中間位置。 (我不知道我是否以一種有意義的方式表達(dá)自己,如果我應(yīng)該回來重寫一下,請?jiān)谙旅娴脑u論中告訴我)
步驟4:黑客劫掠(第2部分):二合一緊湊型直流電機(jī)
我想保持這只手的審美和逼真,因此空間有限在掌上用于伺服。
以下步驟將討論如何使2個(gè)伺服器適合更小的空間,同時(shí)保持伺服基本上(就電路而言)完全相同。本質(zhì)上,我所做的唯一改變是增加連接電機(jī),電位器和芯片的電線長度。
打開伺服電源
切斷電位器和芯片(將它們放在一邊以備日后使用)
在3個(gè)藍(lán)色塑料外殼組件中切割下面的2個(gè),如圖/視頻所示。重要的是要確保軸上沒有切斷的凹痕(圖4)
切掉最頂部齒輪上的塑料擋塊(這樣可以使伺服連續(xù)旋轉(zhuǎn))
如圖所示重新組裝外殼
因?yàn)槲覀円呀?jīng)拆下了電位器2,所以齒輪沒有軸可以旋轉(zhuǎn)。我最初嘗試通過將塑料外殼中的一個(gè)螺釘切割成8.5mm的長度來更換軸,但發(fā)現(xiàn)它引起了太大的振動(dòng)。相反,我后來發(fā)現(xiàn)了一些直徑更好的廢料棒。
在第二個(gè)伺服系統(tǒng)上重復(fù)上述步驟
使用環(huán)氧樹脂將伺服系統(tǒng)按上圖所示方向粘在一起(小心不要在齒輪上涂上任何環(huán)氧樹脂)
將直流電線上的電線焊接到直流電機(jī)的電線上
為了測試電機(jī)的工作情況,我還使用連接到其中一個(gè)電機(jī)的3.7v脂肪,檢查它是否在兩個(gè)方向上連續(xù)旋轉(zhuǎn)(通過反轉(zhuǎn)實(shí)現(xiàn))電池)然后測試第二個(gè)電機(jī)。
在后面的步驟中,我們保存的電位器將放入指關(guān)節(jié),以讀取手指旋轉(zhuǎn)的程度(0到90之間)度)。通過將電位器和電機(jī)連接回芯片,它可以像連接到Arduino時(shí)的任何其他伺服一樣用作伺服。
側(cè)面思考:
另一個(gè)設(shè)計(jì)我曾考慮用于拇指運(yùn)動(dòng),如上圖(圖8)和視頻所示。我最終決定反對它,因?yàn)槲覠o法找到一種方法從花盆中獲取讀數(shù),同時(shí)保持設(shè)計(jì)緊湊和美觀。但是制作它的步驟與上面完全相同,除了步驟8,你應(yīng)該先粘貼2個(gè)電機(jī)外殼。如果你最終在你制作的任何其他項(xiàng)目中使用這種類型的設(shè)計(jì),請告訴我,我很想知道!
第5步:黑客劫掠(第3部分):剩余舵機(jī)
舵機(jī)中的3個(gè)可保持原樣,不變:
其中一個(gè)舵機(jī)將用作拇指旋轉(zhuǎn)伺服。
兩個(gè)舵機(jī)將用作手腕的左/右和上/下運(yùn)動(dòng)
注意:實(shí)際上,sg90舵機(jī)沒有足夠的扭矩來旋轉(zhuǎn)手腕。在后來的版本中,我將使前臂更大,以適應(yīng)更強(qiáng)大的伺服,例如兩個(gè)Kuman MG996伺服系統(tǒng)。
從第四個(gè)伺服系統(tǒng)我們唯一需要的東西是黑色電位器,其余可作為備件預(yù)留。 (你可能在前兩個(gè)步驟中打破了塑料外殼/齒輪,從而使它們無用,而不是浪費(fèi)另一個(gè)伺服,只需使用那些電位器)。或者,您可以嘗試在線查找相同的花盆(我還沒看過)。
步驟6:組裝手指
注意:并非所有黑色部分都適合如果您愿意,可以通過更改Fusion 360文件來解決這兩個(gè)問題。
用鉆頭清理支撐結(jié)構(gòu),確保在繼續(xù)之前可以將繩子穿過每個(gè)孔(當(dāng)手指被膠合時(shí)難以糾正問題)
將手指部分布置為在視頻和膠水(超強(qiáng)力膠水或環(huán)氧樹脂)中顯示它們在一起,小心不要粘合接頭,或者繩子穿過的孔
通過頂部的孔進(jìn)給彈性,并且可選擇如果你想要通過底部的孔測試手指喂魚線。當(dāng)釣魚線被拉動(dòng)時(shí),手指應(yīng)收縮,松開時(shí)松緊帶應(yīng)將其拉回。如果您選擇測試它們,請立即移除釣魚線。
重復(fù)4個(gè)主手指(拇指在以后完成,以免在裝配手時(shí)妨礙)
使用之前保存的3個(gè)電位器,焊接延長線到他們。我建議將熱縮管放在延長線的末端,并開發(fā)某種顏色代碼來區(qū)分每根電線(包括電線與伺服電機(jī),總共有22根電線從手中出來,它如果你沒有某種編碼系統(tǒng),將無法區(qū)分它們。
將所有花盆旋轉(zhuǎn)至90度(即兩端阻擋旋轉(zhuǎn)的中間位置),然后將每個(gè)花盆推入食指,中指和無名指。小指不需要一個(gè),因?yàn)樗蜔o名指連接到同一個(gè)伺服,但是如果你想給小指自己的鍋,我有空間。
將手指放入3D打印手掌(頂部)的孔中,然后將彈性體穿過手掌上的孔。在保持彈性緊密的同時(shí),在孔中加入強(qiáng)力膠或環(huán)氧樹脂。您可以嘗試打結(jié)而不是粘合但是在此過程中您可能會失去彈性的張力,如果彈性不緊,則手指不會彈回到位。
將電線穿過手掌并從手腕附近的孔中取出。
步驟7:構(gòu)建手
將4個(gè)黑色滑輪擰到4個(gè)經(jīng)過修改的伺服系統(tǒng)上。
上面你可以找到手中所有舵機(jī)的位置以及釣魚線連接的手指的圖片。為了使布線簡單,我建議按以下順序組裝:
拇指收縮的連續(xù)旋轉(zhuǎn)伺服(注意:這個(gè)需要粘貼到位,因?yàn)闆]有足夠的墻壁保持在適當(dāng)位置,你可以使用環(huán)氧樹脂,但我選擇了熱膠水,以便我可以在以后需要時(shí)將其打撈出來。
拇指旋轉(zhuǎn)的正常,未改變的伺服,如圖所示,通過手掌送入接線。
2合1緊湊型直流電機(jī)(注意:小指和拇指系在一起的皮帶輪比其他3個(gè)皮帶輪大)
中指連續(xù)旋轉(zhuǎn)伺服收縮。
在繼續(xù)之前,我建議只需仔細(xì)檢查所有舵機(jī)是否仍然有效(在組裝手之前更容易解決問題)。
花盆的所有電線并且馬達(dá)應(yīng)該從手掌側(cè)的孔中出來。如前一步所述,請確保您有一些系統(tǒng)可以將不同的電線分開。我建議使用彩色熱縮管。為了保持整潔,我在編織線上滑動(dòng)編織尼龍?zhí)坠埽淄彩抢硐氲模驗(yàn)樗娜犴g性,你也可以使用膠帶或拉鏈。
在每個(gè)滑輪上綁一條釣魚線。我使用了一點(diǎn)帶有強(qiáng)力膠水的丁香栓來確保釣魚線不會滑動(dòng)。將釣魚線穿過另一半手掌的孔,然后朝向手指。
將手掌的兩半擰在一起。將魚線穿過4根手指并將它們系在每根手指末端的結(jié)中
步驟8:做手腕
我從舊打印機(jī)中拯救了幾個(gè)彈簧,因此遺憾的是,我沒有他們的部件號或名稱。用8個(gè)螺釘(4個(gè)彈簧的兩端各一個(gè))擰緊,重要的是使用頭部足夠?qū)挼穆葆敚鼈儾粫^彈簧的末端,或者在螺釘上加一個(gè)墊圈。
擰入彈簧兩側(cè),一個(gè)擰入手掌,一個(gè)擰到前臂。這可能很棘手,需要彎曲彈簧并使用薄螺絲刀(注意不要彎曲/拉伸彈簧導(dǎo)致永久變形)。
一旦所有4個(gè)彈簧將前臂連接到手掌,將彈出的3D打印球體彈出。也許可以使用乒乓球,實(shí)際上比0.1mm的印刷層更平滑,乒乓球可能是減少摩擦的理想選擇(我沒有測試過這個(gè)想法,并且有可能在一段時(shí)間之后乒乓球可以在壓力下破裂。
將電樞連接到2個(gè)SG90伺服電機(jī)并將它們移動(dòng)到90度,然后再繼續(xù)。可在此處找到此代碼。
一旦達(dá)到90度,將兩條釣線連接到每個(gè)伺服機(jī)構(gòu),每個(gè)機(jī)架兩端各一根。將伺服器安裝在前臂上。
幾個(gè)設(shè)計(jì)缺陷:
在用于安裝伺服器的4個(gè)螺孔中,只能用螺絲刀到達(dá)一個(gè)(疏忽)
負(fù)責(zé)左/右運(yùn)動(dòng)(即揮動(dòng))的伺服可以很容易地從其底座上撕下來,而不是我應(yīng)該在墻的另一側(cè)放一堵墻。伺服,以防止它在自己的旋轉(zhuǎn)下自行拉出。
sg90伺服系統(tǒng)太弱而無法實(shí)際旋轉(zhuǎn)手腕(至少對于我使用過的彈簧),所以這一步實(shí)際上有點(diǎn)多余,因?yàn)槭滞蟛粫苿?dòng)。
安裝舵機(jī)后,將釣魚線穿過各自的孔并從前臂伸出(小心不要讓它們扭曲),在小螺釘周圍打結(jié)(用較大的頭部或墊圈確保)釣魚線不會滑落)然后將它們擰到位。我再加上一點(diǎn)強(qiáng)力膠是安全的。
第9步:前臂和接線
將電線穿過第一前臂片側(cè)面的管子。
將第二個(gè)前臂片擰到第一個(gè)上。請注意,在視頻和圖片中,我的前臂的第二塊在打印中間失敗,因此我不得不將失敗的打印件的兩半粘在一起,這對您來說應(yīng)該不是問題。
將9伏電池放入第二前臂片的插槽中,并焊接在母DC插頭上,中間有+ ve。
在第4張圖片中,您可以看到芯片的外觀與先前步驟中制作的2合1改裝伺服器相同。雖然“二合一改裝伺服”中的2個(gè)電機(jī)不再“看起來”像舵機(jī),但我們可以用與舵機(jī)相同的方式將它們以相同的方式連接回來“操作”。在第5張圖中,有一個(gè)如何做到這一點(diǎn)的圖表,只需焊接電機(jī)和相應(yīng)的電位器(位于指針和無名指指針),然后將它們?nèi)鐖D所示焊接到芯片上。伺服現(xiàn)在“功能上”與任何其他伺服相同。
在第6張圖中,有一個(gè)如何將所有內(nèi)容連接到Arduino Uno板的圖表。請注意,紅色伺服系統(tǒng)是常規(guī)伺服系統(tǒng),紫色伺服系統(tǒng)是沒有從電位計(jì)讀取位置的伺服系統(tǒng)。更具體地說,2個(gè)紫色伺服系統(tǒng)是在之前的步驟中被修改為連續(xù)旋轉(zhuǎn)伺服系統(tǒng)的伺服系統(tǒng)。
將電位計(jì)置于中指指節(jié)中,我們可以獲得位置讀數(shù)并使用它來控制相應(yīng)的紫色,連續(xù)旋轉(zhuǎn)伺服。
用于拇指收縮的另一個(gè)紫色連續(xù)旋轉(zhuǎn)伺服器沒有位置讀數(shù)。這是一個(gè)嚴(yán)重的設(shè)計(jì)缺陷,必須在以后的版本中修復(fù)。目前它只能通過視線操作(即觀看拇指移動(dòng)的人并告訴Arduino何時(shí)停止),如果留在自己的設(shè)備上,它將繼續(xù)旋轉(zhuǎn)直到伺服或拇指斷開。我添加了一個(gè)連接到引腳6的瞬時(shí)開關(guān),可用于告訴Arduino何時(shí)停止收縮手指。
將Arduino uno安裝在其框架中并從電池插入電源插頭。將前臂的黑色最終塑料片粘上。
步驟10:添加拇指
以與其他手指相同的方式組裝拇指的前幾個(gè)部分。然而,不是將彈性材料送入手中,而是將其粘貼在最后一段(參見上面的第2張和第3張圖片)。
將拇指軸安裝座擰到從手伸出的伺服器上。正如在第4張照片中,膠水兩側(cè)的膠水圍繞軸(這種設(shè)計(jì)在結(jié)構(gòu)上很薄弱,但足以滿足這個(gè)原型,可以根據(jù)需要自由調(diào)整)。
將釣魚線穿過拇指底部的孔和拇指末端的結(jié)。
步驟11:代碼
可以在此處找到代碼
使用代碼時(shí)要記住的一些事項(xiàng):
在代碼中我只有3個(gè)基本的手部動(dòng)作:波形,拳頭和按鍵保持。您可以隨意自定義并添加自己的。
由于電位器在關(guān)節(jié)中的定向方式,伺服系統(tǒng)的運(yùn)動(dòng)范圍為[90,180]度。例如,90度對應(yīng)于手指處于靜止?fàn)顟B(tài),完全伸展,并且在180度處手指完全收縮。范圍之外的值無效,并且對應(yīng)于向后彎曲手指。
中指電位器讀取模擬范圍最高為1023的值,我使用134行 中的map()函數(shù)將范圍轉(zhuǎn)換為相同的[90,180] ]范圍與其他手指一樣。對于不同的電位器,您映射的值可能不同,因此在setup()中,有幾行專用于電位器的校準(zhǔn),如果您不希望每次運(yùn)行代碼時(shí)重新校準(zhǔn)電位器,您可以簡單地記錄校準(zhǔn)值并將變量MidExtd和MidCont設(shè)置為等于它們。
如前所述,在“前臂和接線”中,控制拇指收縮的伺服沒有位置反饋,必須使用瞬時(shí)開關(guān)手動(dòng)控制,有關(guān)詳細(xì)信息,請參閱moveThumb()函數(shù)。
最后如關(guān)于如何進(jìn)行連續(xù)旋轉(zhuǎn)伺服的步驟中所述,重要的是修改伺服確保將電位器旋轉(zhuǎn)到中間位置(即不是0的極值,也不是180度)。這與拇指收縮和中指收縮有關(guān),因?yàn)槲覀儗懀ǎ┑饺魏我粋€(gè)極值:0或180,這取決于我們想要旋轉(zhuǎn)伺服的方式。
在函數(shù)moveThumb()中,我需要將rotAngle的范圍從[60,140]更改為不同的值,具體取決于連接拇指時(shí)伺服旋轉(zhuǎn)到的位置,只需使用范圍,直到找到合適的一個(gè)。
自從上次測試(并且有幾個(gè)伺服器斷開)后,我對代碼進(jìn)行了一些修改。一切都應(yīng)該可以正常工作,但如果我錯(cuò)了就在下面評論,我會去解決它。
第12步:結(jié)束
雖然我沒有達(dá)到預(yù)期的結(jié)果我曾經(jīng)希望,我已經(jīng)學(xué)到了很多東西,而且知識將被構(gòu)建到未來的版本中。盡管還有一些問題仍然需要解決,但我特別高興我能夠控制所有舵機(jī)。
雖然sg90舵機(jī)有足夠的扭矩來移動(dòng)手腕,但是當(dāng)用更大的舵機(jī)進(jìn)行測試時(shí),手腕會按預(yù)期移動(dòng)。下次我將更寬的前臂,以適應(yīng)這些優(yōu)質(zhì)的伺服器。我唯一擔(dān)心的是手腕重復(fù)使用后手腕可能會開始斷裂。
我早些時(shí)候已經(jīng)超越了這個(gè)缺陷所以除了說我鼓勵(lì)之外我不會在這里多說些什么。在設(shè)計(jì)自己的機(jī)器人手臂時(shí),請仔細(xì)閱讀并牢記這些內(nèi)容。無論如何都可以隨意使用和改變我共享的融合文件,但我相信這可能是一個(gè)更好的時(shí)間分配,可以開始重新設(shè)計(jì),記住以前的知識。
-
機(jī)械臂
+關(guān)注
關(guān)注
12文章
520瀏覽量
24708 -
3D打印
+關(guān)注
關(guān)注
26文章
3561瀏覽量
109528
發(fā)布評論請先 登錄
相關(guān)推薦
評論