編者按:本文內容來自庫柏特科技CEO,武漢大學特聘副教授李淼在雷鋒網(公眾號:雷鋒網)硬創公開課的分享,由雷鋒網機器人垂直欄目「新智造(公眾號:新智造)」整理。
嘉賓簡介:李淼,庫柏特科技CEO,武漢大學特聘副教授。
自2011至2015年,在瑞士聯邦洛桑理工(EPFL)攻讀博士學位,研究方向為機器人學習和人機協調交互。博士論文被提名EPFL優秀博士論文獎和ABB自動化獎。其中機器人抓取的動態自適應研究工作,被美國國家標準技術研究所(NIST)選為機器人基於傳感的抓取效率的標準測試方法。
已發表高水平SCI/EI論文近20篇,被引用100餘次,H-index 6 。多次受邀在IROS、ICRA、CASE做技術報告,組織IROS、ICRA機器人抓取研討會,發起並組織第一屆中國協作機器人研討會。擔任ICRA、IROS、RSS、Humanoids、IEEE Robotics and Automation Letters (RA-L)、IEEE Transactions on Robotics(TRO)、Autonomous Robots (AR)、Robots and Autonomous Systems (RAS)、Journal of Sensor、Journal of Intelligent and Robotic Systems等機器人頂級會議與期刊評審。承擔EPFL機器人實踐課(碩士課程)的教學,指導碩士畢業論文與機器人學期項目。長期從事機器人靈巧手抓取規劃與智能控制,主要研究圍繞在將先進機器學習算法應用於複雜機械系統的控制與設計之中。
相信很多人知道人工智慧,根據wikipedia的定義,「人工智慧(英語:Artificial Intelligence, AI)亦稱機器智能,是指由人工製造出來的系統所表現出來的智能。通常人工智慧是指通過普通電腦實現的智能。該詞同時也指研究這樣的智能系統是否能夠實現,以及如何實現的科學領域。人工智慧的研究是高度技術性和專業的,各分支領域都是深入且各不相通的,因而涉及範圍極廣」。
AI這個方向包含的內容太廣泛了,很多時候當你和別人聊天時,別人告訴你他時搞AI的,你其實根本就不知道他是做什麼的。這一點與機器人這個名詞很像,學科的分支太多。
在機器人,特別是工業機器人的領域,當我們想將機器人與人工智慧結合起來時,很多人都想有一定的區別度。我們這裡用了mechanical intelligence這個詞語,機械智能。
那麼什麼是機械智能呢?簡單說,就是一個機器找到一個問題的解決方案的過程。機器通常是指包括機器人在內的自動化設備,智能通常體現在找到好的解決方案上。
這裡面區別與傳統的AI的一個核心點是,我們需要一個物理或者機械系統去與真實的物理世界發生交互。插一句,有一個會議叫pHRI(physical human robot interaction),其實也是出於這個目的來區別傳統的HRI的。研究的問題呢,上面的PPT種給了幾個簡單的例子,包括產品的質量簡單,這裡面涉及到大量的視覺的東西,包括抓取,裡面涉及到機器人視覺和機器人控制,第三個是打磨,這裡面涉及到力控與機器人控制;還有裝配,這可能是目前3C行業的一個共性的問題,裡面涉及到很多的精微力控制。這幾個問題也是我們後面討論的重點。
前面說到了要找到好的解決方案,那麼什麼樣的方案是一個好方案呢?是硬體方案還是軟體方案呢?硬體方案通常就是需要一些特殊的機械設計,這些設計通常需要大量的經驗與人工智慧,而且很多時候是case-by-case的。
有時候,我去工業現場跟一些產品線的時候,我也會被各種巧妙的機械涉及所嘆服,這些基本都是硬體解決方案。
軟體解決方案通常是在硬體的基礎上,針對一些列的類似的需求,提出的一個個模塊的軟體集成方案。硬體和軟體,二者通常是相輔相成,但是在不同的發展階段,又有一些不通側重點。
其實製造業這個詞是很大的,裡面涉及到很多東西。從大了講,整個製造業是屬於廣義自動化的一部分,包括過程自動化和工廠自動化兩部分。
過程自動化是指採用計算機技術和軟體工程幫助工廠更高效、更安全地運營。過程自動化相對於運動自動化採樣時間較大。在過程自動化技術出現之前,工人必須人工監測設備性能指標和產品質量,以確定生產設備處於最佳運行狀態,而且必須在停機時才能實施各種維護,這降低了工廠運營效率,且無法保障操作安全。這部分的應用是與分布式數據存儲,處理分析相關的,其中也涉及到很多人工智慧的應用。現在有很多做企業服務軟體的,其實更多的就是偏向於過程自動化,這個從周期上將,更長一些。
工廠自動化,也稱車間自動化,指自動完成產品製造的全部或部分加工過程。其中一個很大的核心點就是工業機器人,工業機器人由於其適用性與柔性,在過去的幾年開始爆發式增長。正是因為這個行業在飛速發展,才有了與最新技術結合的可能性,我這幾張PPT主要也是簡單介紹下背景知識。
最近幾年,工業機器人的市場規模一直在增長,根據未來的增長的空間預測,到2020年,工業機器人每年的本體加集成市場會在2000億左右。這還不包括新一代機器人開拓的機器人領域以及機器人的輻射效應。
按照領域劃分,未來的主要增長空間會出現在3C行業、倉儲、食品、醫藥等行業。下面我會就3C行業的一些典型問題,來分享一下機械智能是怎麼應用的。
這張PPT實際是告訴大家,未來的機器人的發展熱點與機會會在哪裡,大家也就可以理解為什麼那麼多的資本都開始進入到這個領域了。
3C行業使用機器人從事的工作具有三個特點:工作內容高度重複,產品周期短,集成難度大。近年來,電子產品對質量的要求不斷提高,使得傳統人工在視覺檢測、雷射打標、結構件衝壓與打磨、屏幕貼膜等方面的精細度難以達到要求。機器人在3C行業應用潛力較大的部分是組裝或者叫裝配。由於目前這項工作對機器人柔性要求非常高,應用比較難,故普及情況受限。但隨著機器人技術與人工智慧等技術的結合,未來這方面的應用會大量的增長。
這是3C行業的問題從表象到本質的分析,簡單來說,就是現在機器人不好用,很多人也用不好。
這些是目前的一部分解決方案,主要是從機器人本體上下功夫,也就是目前炒作得很火的協作機器人或者更大一點的新一代機器人的概念。主要是想讓機器人和人進行協同作業,實現一部分工作給人來完成,一部分工作機器人來完成。機械智能的整個系統框架實際上是架構在這個硬體基礎上。
整個機械智能的框架其包括三個部分,示教方式、學習算法與機器人操作。其中示教方式包括各種learning from demonstration,或者是簡單的給產品質量進行標定好壞。總是這部分的作用是存儲一些數據。而學習算法這部分,主要是從這些存儲的數據中,進行抽象提煉出模型,這些模型可能是產品質量的判斷模型,也可能是機器人的控制算法。而在機器人操作上,主要就是實現部分,是怎麼樣學習到的算法在機器人上實現出來。數據收集 - 算法學習 - 機器人實現,基本就是這個套路。下面會給出幾個例子,來闡述整個框架體系,我會儘量的迴避一些技術細節,只給出一些框架和流程。
視覺檢測
視覺檢測目前主要是還是靠人工檢測,左邊的幾幅圖都是我們最近遇到的一些視覺的檢測項目,目前我們在工廠看到的還是人來檢測,平均一個人一天需要檢測7000多個這種小零件。右邊是目前很火的基於深度學習的檢測一個工件的流程圖。上面是模型的訓練過程,主要思想是我們有一些好的工件和壞的工件的圖片,我們訓練出一個模型。然後根據模型,給一個新的工件,可以迅速的判斷模型的質量,缺陷類型等。當然這裡是只給了深度學習的例子,其他的機器學習方法在這裡也可以適用,只是效果可能有所區別。很多時候也需要多個模型的結合來做判斷。NO-FREE-LUNCH,學習算法裡面鐵一般的規律。
我每個例子可能只用了一兩張PPT,但是這每個問題後面都有無數的研究和問題還在探索中。
無序分揀
無序分揀其實在很多地方都有應用,主要是把一些零件從一個位置規整到另外一個位置。目前的通常做法是各種料框,振動盤加上人工。而採用機械智能的方式就可以不需要這些專用的設備,結合機器視覺與機器人,視覺對物體進行識別定位,採用學習算法知道該抓哪個工件的成功率最大,而機器人操作則告訴機器人該怎麼樣過去抓到那個物體。我整個博士階段其實就做這裡面很小的一個點,怎麼樣去抓一個物體。
抓取其實有很長一段時間不受重視,但是由於很多大公司的進入,目前又有了新的發展動力。這一塊的東西目前很多大公司也開始在做,包括google,fanuc, mujin等等,還有最近很著名的Amazon Picking Challenge。這些公司之所以做這個方向,不僅僅是因為grasping是在工業上有巨大的市場,其實就是在日常生活中,比如以後的服務機器人,我們肯定也會用到各種抓取與操作。所以在新一代的機器人的定義中,其實工業與非工業的的機器人的定義已經不是那麼的明顯了。
力控打磨
柔性打磨,人工打磨有柔性但是效率低,機器人打磨有效率但是柔性差。怎麼樣建立力與機器人末端軌跡的關係,目前是通過人工調試的方法,只能一個個零件去測試。有時候整個調試周期可能需要幾個星期。比如像右邊圖中的自適應軌跡與變速度的控制策略,是通過人的調試得到的。我們要做的其實就是把這部分的自適應決策通過學習算法來結局。
這裡打磨質量很大程度取決於機器人調試人員的經驗了,我們的核心思想是通過智能人工示教來降低機器人的操作難度,實際上是通過人與機器人的協作來提高機器人的柔性。整個流程是這樣的,首先我們可以採取不同的方式來示教打磨任務,然後從示教過程中的傳感器數據,我們用人工智慧和機器學習的算法,得到一個學習模型;最後將這個學習模型與機器人的具體控制算法結合,就能在機器人上快速實現這個任務。關於打磨應用,我們是採用變阻抗來實現精確的力控,在使用KUKA LWR與ATI力傳感器時,我們最好的力控控制精度可以保持在0.1N左右。
這裡真正實現起來還有很多工程上的細節要處理,這裡只是給出了一個系統的框架。
目前3C行業的裝配還大量的採用手工裝配,我們平常用的手機,也基本是靠工人手工裝配出來的。現在也有一些機器人裝配,但是需要大量的調試和工程配置,網上有一個ABB 機器人裝配滑鼠的視頻,大家可以感受下裡面的調試難度。
在裝配時,很容易發生的是卡死,另外我們需要一個模型來判斷是否裝好。當發生卡死時,通常需要適當調整機器人的末端姿態,來解決卡死。利用機器學習建立力與末端速度映射關係,可以實現力反饋控制!
運動規劃
運動規劃在機器人操作中是很常見的,這裡通常要通過機器人離線編程,編寫機器人從一個起點到終點的軌跡,比如用樣條曲線等等。但是在很多應用中,我們希望規劃的是一個任務,比如將上圖所示的從不同地方運動到同一個終點。我們當然不希望對每個地點都運動規劃一次,雖然這也是可行的。補充一下,運動規劃不是前面說到的問題,但是在很多地方都需要。sensor-based motion planning是以後的發展重點。
採用學習算法的解決方案是,我們通過人工示教的方式,在幾個不同初始點,展示機器人可以怎麼樣運動到終點,然後我們通過學習算法將這種示教中展示的運動方式,建模成一個個動力系統,主要就是告訴機器人在不同的點,應該怎麼運動,才能到達目標點,其實就是一個全局或者局部的空間向量場。直觀的理解就是,你要去拿桌子上一杯水,每次你的手的起點都不一樣,但是你其實都可以去拿到那杯水,而不需要每次都重新規劃一下怎麼把手移動過去。
整個過程的基本流程如上面的slide所示。
輔助硬體
另外一個很重要的點就是輔助硬體,就像蘋果的軟體系統再好,如果沒有觸控螢幕,它也玩不轉。輔助硬體在機械智能裡面就起到了一個這樣的作用,這些輔助硬體包括一些新的硬體解決方案,比如說移動機器人平臺,末端執行器,智能傳感器等等。這一塊其實很多人也在探索,比如歐盟的SME項目,他們就想過很多的控制機器人的輔助硬體、語音、手勢、VR等等。
人機互動
最後一個強調的點就是人機互動的方式與界面。這種方式有太多種,這裡只是用拖動示教做出來的。
這裡是想說明一下imitation learning的好處與缺點,我尤其想強調的是,示教不是record and replay。
因為傳統的工業機器人上用了示教這個詞,所以現在我每次說到示教,很多人就聯想到傳統的工業機器人上的示教功能了。示教本質上是通過人的先驗知識來幫助機器人快速找到可行或者最優的解決方案。
智能製造同時也對員工提成了更高要求,請問下未來什麼樣的員工是智能製造所需要的?在製造業還需要員工這種職業麼?
智能製造對員工提出了更高要求其實是不準確的,如果你看下70年代打字員這個職業,其實要求還是很高的,要記得很多東西,但是電腦排版系統出現之後,這個職業其實基本就被取代了。智能製造肯定是會減少人的工作量的,但是機器人的輻射效應,會產生更多的職業出來的。
德國製造業原來也不好,靠的職業技術教育,才有的一大批技術工人。中國當下製造業的現狀,要用什麼方式才能根本改善呢?
中國的移動網際網路的發展就是一個很好的例子。中國的網際網路肯定是比歐美發展遲的,但是移動互聯這個領域,在中國的體驗就比國外好很多。製造業,當然與網際網路還是不一樣的。但是每個工業機器人本質就是一個電腦就上一個機械裝置,機械裝置這部分又是變化不大的,軟體上的東西其實可以做的空間非常大。另外,3C行業基本都在中國,這就給了我們很好的試錯機會,這些很有可能都是我們製造業的一次機會。
現在國內3C廠商比較先進的製造產線能到什麼程度?
先進的我倒是沒有去看過幾個,華為裡面的自動化程度我自己目前感覺最好的。這個按照工業4.0標準,都有具體的評分數據的。其他的去的比如手機線,其實主要還是靠人在完成組裝,而且是很多人一條線。
基於機器人系統的深度學習算法有沒用比較好的使用例子?
這個可以看下fanuc deep learning for bin-picking的例子,也可以看下APC,亞馬遜挑戰賽中Jianxiong Xiao用的deep learning來做的物體識別與定位,另外我們自己也在用這個做產品檢測。
雷鋒網原創文章,未經授權禁止轉載。詳情見轉載須知。