序
Dexter 是一個開源的機械臂,主要由 3D 打印機制造。它使用 5 個 NEMA-17 步進(jìn)電機控制其 5 個軸以及其中 3 個軸上的諧波驅(qū)動。由于步進(jìn)電機沒有編碼器,所以設(shè)計者在每根軸上都安裝了正交光學(xué)編碼器,如果強度不夠,它們有時會跳過。有了這些編碼器,Dexter 上的 FPGA 微控制器就可以快速對傳感器進(jìn)行輪詢,并實時校正電機的位置。由于有網(wǎng)關(guān)的存在,可以每秒對每個軸進(jìn)行 500 萬次輪詢,從而創(chuàng)建一個 200 納秒的反饋循環(huán)。Dexter 是經(jīng) GPL3 授權(quán)的,因此可以隨意復(fù)制和修改設(shè)計。
設(shè)計細(xì)節(jié)
Dexter 是一個開源的 5+軸機械臂。它的零件是用聚乳酸(PLA)進(jìn)行三維打印的,并用碳纖維帶固定在一起進(jìn)行。它使用 5 個 NEMA-17 步進(jìn)電機,在 3 個軸上有諧波驅(qū)動。它們沒有編碼器,很容易滑動,所以開發(fā)者在軸上設(shè)置了光學(xué)編碼器。采用兩個傳感器,相位相差 90 度,從而得到了一個正交編碼器系統(tǒng)。通過軟件將這些值內(nèi)插為 sin 和 cos,并允許測量每個軸。
設(shè)計中使用一個 FPGA 來實現(xiàn)對來自編碼器的數(shù)據(jù)的實時處理。有了網(wǎng)關(guān)軟件,可以每秒測量 500 萬次,并得到一個 200 納秒的控制回路和電機。這允許電機在檢測到光學(xué)編碼器中的變化時作出反應(yīng)。其中一種控制模式被稱為“跟我來”,它允許有人通過觸摸來控制 Dexter,而不需要對諧波驅(qū)動進(jìn)行反向驅(qū)動(這樣做會使它們磨損,最終會削弱傳輸?shù)耐暾裕?/p>
開發(fā)者希望 Dexter 能夠很容易地幫助新手學(xué)習(xí)為機器人編程,并且對代碼有基本的理解,所以他們創(chuàng)建了 Dexter 開發(fā)環(huán)境。由于可訪問性的原因,它使用了一個修改過的 javascript 版本,并且附帶了有關(guān)如何在 DDE 中編程 Dexter 的文檔。
Dexter 使用了 DDE 的套接字連接,但這并不是唯一使用它的方法。Dexter 社區(qū)的一個成員實際上開發(fā)了一個與 Dexter 一起使用的統(tǒng)一庫。使用 FollowMe 模式,你實際上可以在虛擬現(xiàn)實中連接移動 Dexter 與對象交互。觸摸物體將在 Dexter 物理層中產(chǎn)生觸覺反饋。
有沒有覺得很酷,因為這讓 Dexter 可能被用作游戲控制器。
這里,Dexter 身上的許多設(shè)計創(chuàng)新可以被打散應(yīng)用到你自己的項目中。例如,Dexter 巧妙的編碼器設(shè)計。光學(xué)編碼器通常使用一個有孔的圓盤;通過圓盤將光照射到傳感器上,可以通過計算產(chǎn)生的脈沖數(shù)來確定位置。
Dexter 進(jìn)一步利用光傳感器的模擬值,跟蹤每個孔幾千個位置,乘以可用的分辨率。這意味著,通過一個 3D 打印的編碼器輪和一些嚴(yán)謹(jǐn)?shù)臄?shù)學(xué)計算將其轉(zhuǎn)換成一個位置,Dexter 的編碼器可以解決每轉(zhuǎn)超過一百萬個位置。這是令人驚嘆的精確性,由于計算能力的進(jìn)步,它的可用性相對較低。
具體來說,一個 FPGA 和一些定制的“網(wǎng)關(guān)”邏輯代碼運行編碼器數(shù)據(jù)到 ARM 位置的轉(zhuǎn)換。沒錯,Dexter 的開發(fā)者正致力于開發(fā)一款嵌入式 Linux 電腦,配備有 FPGA 外圍設(shè)備,用于計算兩個關(guān)節(jié)的位置。你可能會認(rèn)為這有點大材小用了,但是像這樣的手臂,在桌子上的第一個關(guān)節(jié)中任何小的角度誤差都會乘以手臂的伸距。你想要半米手臂末端 0.1 毫米的位置精度,你需要 0.01 度的角度分辨率。用一個 3D 打印的編碼器輪和一些繁重的計算來獲得這種分辨率是一個偉大的創(chuàng)新。
結(jié)合這些詳細(xì)的位置反饋和一些好的軟件,你可以設(shè)計一個手臂,既強大,而且通過移動它很容易訓(xùn)練。Dexter 在一些軸上使用諧波驅(qū)動,雖然你通常不想強加諧波驅(qū)動,但位置傳感器的極端分辨率讓機器人知道何時將其推出位置,或者施加更多的力來保持位置,或者如果它試圖學(xué)習(xí)一個新動作,驅(qū)動電機朝運動方向運動,這使得訓(xùn)練變得簡單。
Dexter 有一組可擴展的末端執(zhí)行器,通過一個簡單的 3D 打印鎖環(huán)和 Pogo 針排列連接。無論你需要吸塵器、剪刀還是機器人手臂末端的鉗子,Dexter 都會為你提供保護。
如果說 Dexter 有什么缺陷,那就是運行編碼器的 FPGA 代碼是用專用的硬件描述語言 vivado 編寫的。因此,雖然 Dexter 可以為我們提供一個位流,使我們可以閃存到自己的 FPGA 中,但我們不能調(diào)整編碼器的算法。開發(fā)者的立場是,他們不能承擔(dān)重新設(shè)計 FPGA 代碼,因此不能讓其成為完全開放的源代碼。
最后,就是這只機械臂 Dexter,摘得了 2018 年 HackadayPrize 全球硬件開發(fā)者大賽的最高大獎,拿走了 5 萬美元的獎金。如大賽評委對它的評價,Dexter 已經(jīng)不僅僅是各個組件的集合,它的開發(fā)者將“真正的極客精神”體現(xiàn)在設(shè)計中,即盡可能使整個系統(tǒng)的實現(xiàn)更加實惠,但仍然保持高質(zhì)量。
關(guān)于 Dexter 的技術(shù)細(xì)節(jié),可打開鏈接查看:https://hackaday.io/project/158779-dexter
與非網(wǎng)編譯內(nèi)容,未經(jīng)許可, 不得轉(zhuǎn)載!
2019 年 3 月 20 日 14:00~16:00,上海新國際博覽中心,這個機械手臂將出現(xiàn)在 E5.5352,與非網(wǎng)的展位上,你可以親身體驗下它有多神奇。我們等你來!
現(xiàn)在就掃描二維碼報名吧
不能來到現(xiàn)場的小伙伴也可以在線觀看我們的視頻直播,一睹 Dexter 真容
https://www.moore8.com/special/livevideo/Hackaday
關(guān)于 Hackaday Prize
有人說硬件技術(shù)將很快達(dá)到極限,而在我們看來,硬件創(chuàng)新,尤其是中國硬件工程師的創(chuàng)新,還遠(yuǎn)未走到盡頭,而只是剛剛開始。作為致力于為全球硬件開發(fā)者提供技術(shù)共享服務(wù)的平臺,與非網(wǎng)母公司SupplyFrame旗下最大的全球硬件開發(fā)者社區(qū) Hackaday.com 已連續(xù)五年舉辦全球硬件開發(fā)者大賽 Hackaday Prize,有超過 3000 多個硬件團隊在這個賽事中互動交流、切磋技藝。
2019 年 3 月慕尼黑上海電子展期間,Hackaday Prize 中國區(qū)賽事將隆重開啟,我們很期待看到國內(nèi)的硬件開發(fā)者大開腦洞、大展技藝。你準(zhǔn)備好了沒,與來自全球的硬件開發(fā)者同臺 PK?