陽光探索號之微型機器人

十二月 10, 2014
Facebook
Twitter
文/Sola Lu
參考原文:http://makezine.com/projects/make-39/sunbeam-seeker-bot/

在1980年代研究機器人運動的行為與作動中,微型機器人(Beam robotics)深植於來思考建立機器人的行為與作動的方法。微型機器人(Beam)設計不依靠微處理器、編製程序、數位邏輯來控制機器人,而偏愛使用分離的元件、刺激反應控制系統與類比邏輯。從一個設計觀點來看,微型機器人是使用最簡單的電路、促動器與元件來達到複雜且有趣的行為,這便是挑戰所在。

微型機器人(BEAM)是以下四個單字的縮寫:

  • 生物(Biology)-微型機器人靈感是來自大自然,特別是簡單的有機體,像是植物、蠕蟲與昆蟲。根據它們的主要感官系統,它們常常被分類為依靠聲音反應(Audiotropes)、依靠熱反應(Thermotropes)、依靠無線電源反應(Radiotropes)等等類別。根據它們移動的類型與姿態的機制,它們可以更加被細分為固定型(Sitters)、蠕動型(Squirmers)、跳躍型(Jumpers)、飛行型(Fliers)、滾動型(Rollers)、步行型(Walkers)等等。
  • 電子(Electronics)-微型機器人需要巧妙的電路設計。不像數位系統必須互相連結所有正確的腳位與在適當的時候確認電壓的高低,微型機器人使用較微妙的類比電路。設計數位電路是比較像電腦編譯程式,而設計類比電路比較像是配管工程。
  • 美學(Aesthetics)-微型機器人是藝術層面多於科學層面。很酷的設計通常不是工程師的優先考量,但微型機器人著重於外觀的重要性,雖然這不是為了他的功能著想。然而精煉的美學設計是成熟的微型機器人應該要通過的一個關卡。專注設計並建構美觀的機器人會使你更加注意細節。它的外型對於其功能來說是精煉的、有效率、自然的、有合理的反應。人們會覺得它很美麗想會保存它,所以美學也變成它的一個「生存」功能。
  • 機械(Mechanics)-有時候機械的解決方法比電子來的便宜、容易並且較堅固耐用。例如,微型機器人的電子馬達控制不是使用複雜的電路,而它的設計常常採用簡單的機械老方法(像是過度傾斜馬達或者使用小直徑的輪軸來調節馬達速度)。
太陽探索號是非常簡明的光感型機器人(phototrope),意味著它對光有所反應,它是基於Randy Sargent’s經典的厄比機器人(Herbie)設計,而此機器人設計原本是在1996年西雅圖機器人協會的Robotthon競賽活動中,研發當作”循跡”的機器人。僅僅使用少量的六個元件,Herbie的電路使機器人可以在白色地板上循著黑線行走,而此篇的機器人是隨著指向上方的感光器來尋找房間內最亮的光源。

我們出版了一種Herbie設計下的複雜版本機器人,如同Make Volume 02的老鼠機器人(Mousey the Junkbot)。根據基本的設計架構,老鼠機器人增加了碰撞開關按鈕與繼電器控制馬達暫時地反轉,此設計能讓機器人偶然碰撞到某物體的時候能夠倒車一段時間再繼續導向光源處行走,希望下次嘗試前進的狀況能通過之前碰撞到的障礙物了。

陽光探索號是參考老鼠機器人的LED的巡航光與限制電流的電阻設計,但使用紅外線光感電晶體來取代二極體。它也增加了滾輪槓桿型微動開關來當作尾輪使得當你放置機器人時它會自動開啟電源,當你拾起它時或者當它翻倒時會自動關閉電源。

機器人如何運作?

Herbie電路的核心就是LM386功率放大器晶片。簡單來說,我們可以想像晶片就是一個可輸入輸出的黑盒子,而輸出將反應在可預測路線上,不需要完全了解裡頭到底如何運作。

大致原理如下,首先,在輸入端有針腳2與3。基本上,這晶片會持續不斷比較此兩個針腳的電壓,並且對於電壓差異大小做出反應。因此我們在針腳2與3連結著光感元件,晶片會對這兩個光感應元件偵測到的光源程度之間的差異做出反應。如同機器人的左右眼感知到的亮度差異。

在輸出端有針腳5。當第一眼看到這個電路,你可能會困惑兩顆馬達串連正極與負極要如何獨立分開的來控制?關鍵在於了解它們之間共享連接針腳5是怎麼回事。在本質上,當一眼看到光源比另一眼還亮的時候,針腳5會成為電壓非常接近主要電源供應電壓的電流流出(current source)。這種情況下,馬達M1的兩端是處在非常相同的電位,使得馬達M1不轉動;而馬達M2是連接針腳5跟接地,它則會被驅動,彷彿像是在針腳5與正極電壓(Vcc)中間放置一個跳線;相反的情況來看,另一隻眼睛看到比較亮的光源時,針腳5當作是電流流入(current sink),把任何正電位的電壓直接導入到晶片接地的針腳4上。這種情況下,彷彿像是針腳5與接地(Ground)之間放置一個跳線。只有馬達M1是被驅動,電流流經它之後以最省事的方式直接經過晶片流入接地而沒有通過馬達M2。


工具:

  • 尖嘴鉗子(Plier)
  • 銼刀(File)
  • 剪刀
  • 酒精
  • 剝線鉗
  • 奇異筆(選用)
  • 烙鐵
  • 焊錫
  • 熱風槍或打火機(使用於熱縮套管)
  • 美工刀
材料:

  • 四號電池座AAA(*2)
  • 滑動開關(Slide switch)
  • 滾輪槓桿型微動開關(Roller lever switch)
  • 泡棉雙面膠
  • 魔鬼沾
  • 6V DC直流馬達(*2)
  • 橡皮擦(*2)
  • 跳線(24~22 AWG)6吋(電池盒通常於預留有足夠長度的電線來完成此專案,但你也可能想要有第三種顏色的導線來連接馬達)
  • LED紅外線接收器(*2)
  •  熱縮套管(ψ1.5mm or 2 mm)
  • LM386低耗損功率放大器
  • 1K歐姆電阻(1/4 W)
  • 綠光LED
  • 洞洞板
  • AAA四號電池(*4)

第一步:心臟(The guts)

  • 首先,我們建立電源系統,主要由兩顆電池座以及兩個焊接串連的開關所組成(頭上的電源開關與尾端拖曳的滾輪開關),其中滾輪開關是用來當機器人跌倒的時候來切斷電源使用。
  • 移除滑動開關兩端所螺紋的耳片,藉由尖嘴鉗往復折彎它們直到金屬疲勞斷裂(或者把耳片直接折彎90度),再拿銼刀移除尖銳的斷裂邊緣。
  • 用酒精沾紙巾擦拭乾淨電池盒的背部和兩個開關的兩側。依照開關尺寸,剪裁適當大小雙面膠,將兩個開關黏貼到電池盒上。滾輪開關是沿著電池盒下方邊緣置中放置,而滑動開關是放在電池盒右上方角落距離右邊邊緣預留3 mm。剪一段電池盒上紅色電線並剝線,將兩個開關串連焊接起來,如圖所示。
  • 剪斷另一個電池盒紅色導線,剪斷處是連接電池座內側末端的位置,如圖所示。我們將焊接導線串接兩個電池盒。

第二步:身軀(The body)

  • 電池座除了裝上電池之外,它也是微型機器人的結構框架。每個電池座可裝兩顆1.5伏特AAA四號電池(總共3伏特),當串連焊接兩個電池座後會達到6伏特。
  • 如前個步驟,在兩個開關另一側上貼上泡棉雙面膠。如圖所示,把兩條紅色導線調整走向位置,一條往右方走,一條往上方走。黑色導線穿過第二個電池座上已經被移除的紅色導線的孔洞,移除兩個開關上的雙面膠保護層,將兩個電池座像三明治一樣背對背的黏貼起來。
  • 把多餘的黑色導線剪斷、剝線,並焊接在先前移除的紅色導線的電池夾的末端處。
 注意:請小心焊接時不要過度加熱電池末端處,你可能會融掉附近的塑膠。

  • 用酒精清潔身軀前方區域,並剪下適當大小的魔鬼氈黏貼上。

第三步:四肢(The legs)

  • 每個馬達有兩邊平面。有一個平面上有一些沖壓過後的裂縫通風口(散熱用),這個平面應該放至在外頭。用酒精清潔另一側沒通風口的平面,貼上一塊的魔鬼氈在上頭。
  • 使用美工刀切下兩個鉛筆上頭的橡皮擦(或慢慢拔下),將橡皮擦插在每個馬達軸上當成輪子。把軸上的橡皮擦推到底後,往回拉一點確保它不會摩擦到馬達外殼。注意要將馬達軸心置中於橡皮擦中,不然旋轉時會晃動。
  • 利用魔鬼氈將把馬達黏貼在身體在前方,之後你可能要試驗兩顆馬達之間不同的角度,現在只是要放置用來焊接使用。
  • 將前方紅色導線焊接在右舷(starboard)馬達的內側接腳。(若要美觀,可以使用熱縮套管來覆蓋掉原本的紅色導線。)
  • 將黑色導線焊接在左舷(port)馬達的外側接腳。把電池盒剪下來多餘的黑色導線焊接到相同的接腳,預留長度大約8公分就很足夠。現在先讓另一端先放著。
  • 在馬達上剩餘的兩個接腳分別接上一條黃色導線,這兩條導線將來會連接LM386的IC上面的針腳5(Pin 5),為了去辨識它,建議用一些特殊的顏色導線(除了黑或紅色),我則使用黃色導線焊接。

第四步:頭部(The head)

  • 將兩個LED紅外線接收器的針腳使用熱縮套管覆蓋起來,尾端預留大約5 mm左右即可。調整好熱縮套管位置後,使用熱風槍、吹風機或打火機去加熱。這針腳的作用是當作為可移動的追蹤眼球,讓針腳與PCB板絕緣的原因是防止當一起彎曲或扭轉它們的時候不會短路。
  • 焊接LM386IC、電阻、LED、黑色跳線、兩個紅外線接收器至PCB洞洞板上,如圖所示(我的LED位置跟設計圖不一樣,所以有稍微移動一下線路)。詳細請參考照片、組裝圖、電路圖來確認你洞洞板焊接面的連接是正確無誤的。
備註:

  1. LM386的IC針腳1與針腳8,使用是直接用焊錫焊在一起。使針腳1與針腳8短路的用意是始放大器IC進入高增益(high gain)模式。
  2. 此電路中是不使用LM386的IC針腳7,它是為了增加強度而被焊在洞洞板上,但沒有連接到其他任何東西。

第五步:有生命的微型機器人(It’s alive!)

  • 把馬達上還沒固定的導線穿進機器人身體的滑動開關前方的空隙中(之前預留的3mm),繞過滑動開關後立即往上拉到機器人上方。剪掉多餘線導線、剝線並焊接到PCB洞洞板上-電源(紅色)、接地(黑色)與兩條共用相接的馬達導線(黃色),如設計圖所示。
  • 把PCB洞洞板上未焊接的地方使用泡棉雙面膠將之黏貼固定至電池盒上。美觀上,可以使用奇異筆將洞洞板邊緣塗上顏色。
  • 確認滑動開關是處於往後方關閉電源的位置,安裝上四顆AAA四號電池在電池盒上。
  • 滑動開關往前撥動開啟電源,找一個平坦的平面,放上你的微型機器人。假如一切都沒問題的話,當底部的滾輪開關接觸到地面觸動開關時,機器人就會開始有生命,它將會快樂地改變速度來去尋找房間裡最亮的光源。

第六步:照料與餵食(Care and feeding)

  • 機器人前方的馬達與地板的角度將會影響機器人驅動系統整體的速度與動力。角度越垂直將會驅動的較慢但較可穩定行走;角度越水平將會驅動的較快但較容易翻船。
  • 你也可藉由使用尖嘴鉗子來折彎滾輪開關上的槓桿來調整機器人站立狀況。請確認折彎後的槓桿仍可以確實地碰觸到桿子後的小按鈕。折彎後將會使機器人的重心前移,看起來有種弓著身軀的樣子;相反地,將桿子往上折彎,會把機器人重心後移,會有種仰躺的樣子。
  • 可以左右上下調整紅外線感測器(機器人眼睛)往一個方向或著不同方向,讓機器人的行駛有著特定的偏愛路線。當機器人會特別偏愛轉到一個方向(左方或右方),方向的偏差修正通常可以藉由調整眼柄來補償它。


 
實作心得:

  • 注意滑動開關以及滾輪槓桿開關不能買太大(最好希望寬度要相近),上下疊放至少小於四號電池盒的大小。
  • DC 6V馬達建議買小顆一點,小編買到太大顆馬達導致頭重腳輕,在調整兩顆馬達的角度時候,會造成干涉問題,建議使用四驅車馬達的尺寸大小即可,記得需要挑選兩邊有平面的小馬達,才能使魔鬼氈有較大面積固定在電池盒上。
  • 若是預算足夠,可以使用3M的超強魔鬼氈,但須注意安裝後的24小時內要調整好馬達角度,不然馬達會牢牢固定在上相當難拿下。
  • 整體結構其實沒有穩固,建議電池盒前後方都貼上魔鬼氈固定兩個電池盒加強結構。
  • 購買紅外線IR接收器時,建議挑選較長的針腳,小編買的比較短,調整的範圍就比較窄了。
  • 橡皮擦的部份,若安裝時有偏心的狀況,機器人行駛後就會容易造成橡皮擦的破裂。
  • 原本想改裝成3V馬達來當作驅動,後來發現LM386的晶片驅動電壓是在4V~12V,所以改裝的時候要記得去查詢晶片規格。
  • 當初小編沒注意到,將焊接馬達的導線左右顛倒,於是這臺機器人就會變成行進方向是顛倒的『黑暗探索號』微型機器人了。

結論

以下是Herbie風格的機器人的簡易疑難排解表是採用David HrynkiwMark Tilden出版的傑出書籍,《Junkbots, Bugbots, and Bots on Wheels》(假如你對BEAM微型機器人有興趣絕對要去閱讀!):

假如你的機器人

機器人完全沒辦法動:首先把電池取下,確認沒有任何東西短路發燙。然後尋找是否有一些焊珠造成短路或者線路的錯誤配置。假如一切都正常,檢查一下是否電池已經沒電,應該兩個電池盒串連過後的電壓至少6伏特。最後用三用電表檢查開關是否損壞或者接錯線路。

機器人持續順時鐘旋轉:左邊馬達方向搞錯了,把左馬達上面的配線左右互換再試一次。

機器人持續逆時鐘旋轉:右邊馬達方向搞錯了,把右馬達上面的配線左右互換再試一次。

機器人呈現順時鐘環狀行走:在機器人上頭照射強光讓它持續行走。假如沒有反應,可能是線路問題,也許馬達本身或者IR光感眼睛壞了。假如有反應,譬如環狀行走半徑變大了,則嘗試把右邊的光感眼睛向外折彎一點。

機器人呈現逆時鐘環狀行走:同上處理方式,讓機器人照射強光看它的反應。假如沒反應則檢查線路,假如有反應則把左邊的光感眼睛向外折彎一點。

機器人向後行走:兩顆馬達都接反了,把兩顆馬達上的線路互相交換再試一次。

更進一步

使用較大的3號電池(AA)跟電池盒(取代4號電池AAA)將造成更重的機器人(不一定是一件壞事),因為它有較長的電池壽命與較大的上方空間來放置電路板。這可能好的第一步對於改裝成有極度反射反應的Mousey-style機器人所需要增加繼電器與其他的元件。詳細細節請看Make Volume 02老鼠機器人(Mousey the JunkbotMark TildenDavid Hrynkiw的書籍或這個專題在Instructables上的更多資訊。

Mousey設計下的其中一個巧妙的特色是使用反接LED當成光感測器。就是讓未供電的馬達轉動使得馬達電極處產生電力,此電力來點亮LED並在橫跨LED的導線上產生可量測的電流。因此LED可以被使用偵測特殊顏色的光線,例如接反的藍光LED相較其他顏色光線來說,是對藍色光線有較強烈反應(請參考Make Volume 36Forrest Mims撰寫的How to Use LEDs to Detect Light )。


參考資料:
1. http://makezine.com/projects/make-39/sunbeam-seeker-bot/
2. http://makezine.com/projects/mousey-the-junkbot/
3. http://makezine.com/projects/make-36-boards/how-to-use-leds-to-detect-light/

Social media & sharing icons powered by UltimatelySocial