什麼?機器人也能用印的?
臺灣大學光電工程學研究所 王勻遠
要機器人富有感知?困難重重
在人類的五感(視覺、聽覺、嗅覺、味覺和觸覺)中,視覺最先被電子化;感知光源、輸出圖像的電子設備最早步入生活周遭,如數位相機中的感光元件CCD(Charge-Coupled Device)與現今主流電視中的液晶顯示模組。這類電子產品之所以能被人們迅速開發、商業化,是由於視覺的輸入與輸出僅用到單一物理──光。以顯示面板為例,每一像素只要精確地呈現光的「亮度」與「顏色」,就能協調出豐富多彩的畫面。
但人們的皮膚能偵測各種不同的外在環境刺激,不同皮層之間富有各式感覺神經元。因此,當我們閉上雙眼,嘗試用手去抓一個物體並遞給別人時,能感知多樣的訊息並加以判斷:觸覺──是否碰到它了?本體知覺──東西遞出去了嗎?痛覺──該物體尖不尖銳?溫度感知──它是冰的還是熱的?[參2]這些訊息的解析並不簡單。反觀視覺中的顏色,可以利用三原色(紅、綠、藍)進行線性疊加直接產生。
要設計出像人類皮膚的敏銳機器,對工程師來說難如登天。如何將各個人工材料、感測器集結再一起,並完善發揮各部件的功能成了首要難題,畢竟皮膚是經年累月演化的結晶。然而,在美國哈佛大學的工程與應用科學學院,有研究團隊建立出了簡潔有效的製作方式,善用純熟的3D列印技術,將多種具離子導電與流體特性的材料,天衣無縫地鑲嵌在彈性基質裡,印刷出富有感知的機器人。
賦予機器人血肉──3D列印技術
3D列印可以蓋房子、做義肢甚至器官,這些應用已經時有耳聞,如今,它還可以替機器人賦予血肉,把多種感官系統有層次地「印」出來。研究人員利用3D列印技術創造軟性體感驅動器SSAs(Soft Somatosensitive Actuators)[參1],整合了多種材料以及複雜的感測器網路,使得驅動器兼具外在柔軟與內在導電的特性,足以應付彎折、壓力、接觸,以及溫度的外在刺激,並有效回傳這些感測資訊。
這些機器不再披著鐵甲外衣,有沒有剛硬的電子零組件焊接在內,取而代之的是有機材料所特製的各種感測器,依序印出,服貼並緊密地佈署在不同基質之間:如彎曲感測在背部基質(Dorsal Matrix)、壓力感測在驅動基質(Actuator Matrix)、接觸感測在前部基質(Anterior Matrix),不同種類的感測器鑲嵌在不同基質之間,一切就像人的皮膚。
然而,這些感測器如何解讀各種不同的外在刺激呢?答案是,感測器材料面對彎曲、壓力、接觸後所產生的形變,會造成材料的電阻值變化,而電阻變化又可以從物理公式精確地還原外界刺激的強度。最後,特製的離子液體注入基質中,量測阻值變化的電訊號也得以導出。這些印刷出來的機器裝置,整體結構更接近生物體,具備柔軟度,有著不同層次的基質皮膚,裡頭彷彿有專職的感測神經元,就連訊號的流通也仰賴富含離子的液體,這也是神經細胞裡的主要成分呢!
多重感知,多重潛力
「軟性機器人在幾何形狀上,受限於傳統的模具技術;在材料方面,一般商用的3D列印也約束了材料的選用。」哈佛大學工程與應用科學學院的教授如此表示;他接續闡明:「這項技術革新了機器人的創造模式……得以將多樣的感測器與驅動器嵌入其中,搭建複雜且龐大的機器人。」
這項發明的研究團隊,下一步策畫運用機器學習,訓練這些軟性機器人,來抓取任意尺寸、形狀、表面結構與不同溫度的物體。正好,嶄新的軟性機器人能感知多種參數,有了更廣泛的資訊,機器學習也能更全面地發揮所長,辨識物體資訊,並作出敏捷而平穩的反應。說不定以後會遇見身手矯健的機器人出現在餐廳裡,為顧客服務,端碗遞菜樣樣不成問題。於是乎,當前最聰穎的演算法、軟體駕馭著豐富多變的軟性機器,也許能把實體機器人發揮到極致,屆時又將會有許多應用遍地開花。
編譯來源:“Novel 3-D printing method embeds sensing capabilities within robotic actuators” Science Daily (2018) https://www.sciencedaily.com/releases/2018/02/180228085345.htm
參考文獻
- Ryan L. Truby et al., “Soft Somatosensitive Actuators via Embedded 3D Printing,” Advanced Material (2018)
- Mark F. Bear et al.,“NEUROSCIENCE – Exploring the Brain,” wolters Kluwer (2017), p. 416-420
- 標題圖片來源自免費授權圖庫Pixabay https://pixabay.com/zh/photos/?q=robot+hand&hp=&image_type=all&order=&cat=&min_width=&min_height=