當前位置:米奇創意網>生活小發明>電子DIY>

自組裝機器人手工電子DIY教程

電子DIY 閲讀(1.43W)

自組裝機器人

 

DIYer: Dan 製作時間: 數星期 製作難度: ★★★★★ GEEK指數: ★★★★★ 

如何製作你自己的獨立自組裝機器人?本製作項目將對應用於我們的科學研究中的機器人的每一個細節作詳細描述,包括 CAD 文件、源代碼、組裝指導等等。你一般可以輕易找齊所有所需要的材料來重現我們的實驗,或者製作出一個有趣的玩具。我們的研究有一部分已發表在了《自然》雜誌上,附有這份 論文副本 。另外還附上了這篇 博士論文摘錄 ,其中包括了利用這些機器人進行的所有實驗和它們的結構與規格的細節的彙總信息。下面附上了數次實驗的視頻。要想了解除了與這些機器人有關的更多進一步的細節,請訪問 Growing Machines 。

 

手動組裝演示視頻。 

程序組裝1:隨機長度的單色隊列聚合。 

程序組裝2:棋盤格方陣到單色隊列。 

錯誤阻礙晶型的形成。 

 

 

電池端子:2 個滾柱罩:紅色的“滾柱罩”可以在混亂的活動中避免閂鎖臂飛出。閂鎖臂和滾柱罩都是寬鬆地安裝在黃色底座的槽中的。電路板:微控制器和簡單的電路板;鋰離子電池則在電路板下面。通訊線圈:通訊線圈在其下面接口:在電路板和電磁驅動器與通訊線圈之間的接口銅箔:我們用的是背面有粘性的銅箔,用切割機切成標籤的形狀,將它粘在塑料上。線圈和磁鐵:置於黃色底座中的電磁線圈,以及插入紅色閂鎖臂的稀土磁鐵通訊線圈:下面有通訊線圈,和表面平齊閂鎖:別的機器人要鈎住這個機器人的話,就要靠這個閂鎖閂鎖鈎:抓住其他機器人所用的閂鎖鈎底座:激光切割的丙烯酸(亞克力)底座。黃色的部分厚度為 3/16 英寸,用膠水粘在底部的厚 1/16 英寸的透明丙烯酸塑料板上。  

1   製作印刷電路板(PCB)PCB 是通過 Eagle PCB 設計軟件進行設計的。我附上了 Eagle CAD 文件 和 Gerber 文件 。Gerber 文件可以直接發送到 PCB 製作服務,製作出電路板來。我還附上了面板化的 gerber 文件——這個版本將機器人的 PCB 分成了 16 塊面板,讓製造的效率更高,成本更低。 

2   電路綜覽我們將電路設計得簡單而靈活,因為我們在開始並計劃着試用了各種各樣的控制算法、執行機構,以及通訊方式時還沒有將機器人的設計方案最終定下來。我們還需要讓電路既小又輕。我們在最終設計方案中決定採用體積非常小的表面封裝(SMT)元件,並得以把一個微控制器、10 支表示狀態的發光二極管、4 個用於驅動執行機構的場效應晶體管,以及編程/電力接頭佈置在了一塊 25 毫米 × 25 毫米的電路板上,上面還配備了供 4 個執行機構和 4 個傳感器連接的接觸點。我們試着把電路板做得更小,但那樣組裝起來難度就太大了。我們所採取的簡單而靈活的策略得到了很好的效果——我們後來用多餘的電路板又進行了其他 3 項於此完全無關的製作項目。 

3   執行機構綜覽線圈與磁體:電磁線圈被壓裝在黃色底板上切出的一個孔中,而立方形的稀土磁體被壓裝在紅色的閂鎖臂中。閂鎖臂的平衡:閂鎖臂的形狀讓它微妙地平衡在這支點上,因此微弱的電磁力就能夠讓它開啟或閉合。通訊線圈閂鎖臂掛鈎:用於抓住其他的機器人。它通常處於“閉鎖”位置,從而可以抓住任何碰上它的機器人。在兩個機器人相互進行通訊了以後,它可以決定激活電磁鐵,將閉鎖打開,升起掛鈎,放開那個被抓住的機器人。 

機器人帶有兩個電磁驅動的閂鎖。紅色的閂鎖臂壓裝有一個 3 毫米的立方體磁鐵(NdFeB 類型),而黃色的機器人底座壓裝有一個圓柱線圈。這些線圈都是根據以下規格自信製備的:700 匝 42 口徑的線圈線,長 4 毫米,纏繞在一個直徑 2 毫米的軸上。製作出來的線圈外徑大約為 4 毫米,內徑大約為 2 毫米。我們之所以選擇這樣的線圈規格是為了能夠直接利用機器人的電源來驅動它們,並且產生適當的電量。我們一開始試着在線圈中插入一個磁芯,這樣可以讓它的功率更大,但是我們找不到一個可以在線圈斷電之後失去磁性的磁芯,而且我們也無法翻轉線圈的極性(每個執行機構配備 1 個場效應晶體管是無法做到的,得有 4 個才行)。 

4   通訊通訊線圈1:通訊線圈被壓裝在黃色底座中。其頂端與底座表面齊平。當兩個機器人閉鎖在一起時,它們的通訊線圈就會正好靠在一起,雖然由於空氣曲棍球枱面上混亂的環境會讓機器人發生劇烈的扭曲,因此實際上這兩個線圈可能相距最多有 5 毫米。通訊線圈2:在這個標籤下面還有另一個通訊線圈塑料彎片:在黃色底座上插入一塊特殊設計的塑料彎片,讓通訊線圈固定在其中。機構線圈:驅動閂鎖臂的執行機構線圈銅片:粘貼式的銅片讓電路聯通到另一個通訊線圈上 

這些機器人利用電感耦合來進行短距離的無線通訊。每個機器人帶有 4 個小(3 毫米 × 2 毫米)線圈,各位於四個面上。它們在安裝後與表面齊平,這樣一來當兩個機器人在一個面上適當組合起來之後,兩個線圈之間的間距就總是在幾個毫米以內了。我們之前説過要使用的是簡單的 8 位微控制器,帶有 1K 的 RAM,最大模數採樣率為 10 千赫茲,其總時鐘頻率為 8 兆赫茲。這其中根本就不需要數模轉換的電路。因此我懷疑既然線圈的諧振頻率高於模數採樣率,而且我們無論如何也無法生成正弦波形,那麼它可能無法發送或接收 AM 或者 FM 的無線電信號。而且我們也沒有足夠的計算能力來處理這麼龐大的快速傅立葉變換算法(FFT)。因此我們轉而意識到所需要發送的數據寥寥無幾,所以我們可以讓它慢慢傳輸。我們只是簡單地通過開關通訊線圈來發送電磁脈衝信號。每當線圈通電或斷電時,它就會生成一道短暫的電磁(EM)脈衝序列,其頻率為其固有頻率。周圍任何線圈都會與它形成磁耦合,並生成相應的脈衝輸出。我們只要利用微控制器的模數轉換尋找這些脈衝就行了。由於脈衝的頻率高於模數採樣頻率,所以我們不能指望檢測到每一道脈衝。因此我們發送大量脈衝,並且進行大量的檢測。這個方案很有效。這是有史以來最龐大的 Hack 了!一旦在空氣曲棍球枱面上有一羣這樣的機器人到處橫衝直撞,整個環境就變得非常混亂了。我們不斷地在軟件中添加錯誤檢測和修正層,最終讓通訊可靠程度上升到了 50 個隨機碰撞單元每小時大約只發生 1 次錯誤。大功告成之後,在兩台機器人之間的數據傳輸率為每 2 秒 2 比特。那可是比特啊,不是千比特。這是在假設沒有數據發生衝突或者出現錯誤的情況下的最大值了。每個線圈既用於發送也用於接收數據,因此有時會發生衝突,這就需要重新發送了。發送數據大約耗時 200 毫秒,在隨機狀況下,由於衝突而需要重新發送,所以耗時在 2000 毫秒的範圍以內。 

5   微控制編程我在這裏附上了 AVR微控制器的代碼 。這段代碼完成了如下的自組裝算法,在視頻中也有所演示:1)列隊一羣黃色和綠色的機器人將會排列成黃色的一排與綠色的一排。

2)錯誤修正結晶:單個的“種子”晶體將會以螺旋形式組成一個完美的黃綠相間的棋盤。

3)感染和重新編程:機器人們一開始使用結晶算法組合。接着放入一個病毒機器人,它會對其他機器人注入新的程序,並在晶體中傳播開來。最後晶體組合會散開,這些機器人單元會使用列隊算法排成兩排

4)DNA複製:單獨的一串機器人(4 個、5 個等等)被放入一羣自由的機器人之中。其 DNA 通過只有本地狀態和本地信息傳輸的錯誤修正算法以指數增長的速度進行復制——就像真實的 DNA 複製一樣。

 

每個機器人單元都以含有所有算法的代碼進行了程序編制。接着,一個特殊的“編程”機器人單元就可以輕易設定每個機器人單元所激活的算法和所激活的顏色。 

6   製作機器人過程綜覽 

1. 製作印刷電路板

2. 在印刷電路板上佈置元件

3. 對微控制器進行編程

4. 製作機器人的塑料零件

5. 組裝機器人的塑料零件

6. 在機器人的架構中組裝磁體

7. 在機器人的架構中組裝電子器件

8. 測試