search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

揭秘:從0到1 如何快速搭建原型機?丨機器人大家說第16期乾貨整理

什麼是機器人?問題遠比看起來的要複雜。從古希臘到現在,無數學者、專家跨越時間長河探索著人與機器關係的本質。

今天,機器人已經滲透進人類世界。我們打造了一個又一個機器人,它們或獨立工作,或成群協同工作;有的不及米粒大小,有的大於穀倉;它們機器形態各異:有角的、扁平的、桶狀的、紡錘形的、球根狀的或者瘦長的。

因此,有人說,這是一個機器人創業最好的時代,然而也有人說,這是一個機器人創業最壞的時代,但是如論怎樣,對於一個企業而言,快速搭建出原型機,創造出個性化的機器人,實現自己的夢想是一件讓人高興的事。

但在這個過程中,我們往往會遇到很多阻礙,硬體平台的選擇便是其中之一。本期機器人大家說,我們邀請到了在機器人、人工智慧、智能硬體領域深耕十多年的硬蛋科技專家,為我們揭秘機器人與智能硬體選什麼硬體平台,以及如何快速搭建原型機。

以下為楊慧鵬老師演講實錄↓↓↓↓

當我們談論人工智慧或機器人時,第一個聯想到的會是演算法、軟體、機器學習等名詞,但是最終在做產品的時候,不管是人工智慧還是機器人,都必須落地到硬體上才能和廣大用戶見面。

那麼,什麼是機器人或者什麼是人工智慧設備?對於這個問題,每個人的想法都會有所不同:樂高機器人,掃地機器人,平衡車,甚至最近很火的智能音箱都能算在機器人的範疇。而今天我們所要討論的,主要是指具有學習能力、NUI、智能服務的設備。

從這幅圖大家可以看到, 智能硬體設備的發展路徑:從早期連接手機APP,到連接雲,再到連接AI服務,自然的人機交互機器人 。

人工智慧產品跟手機、平板等產業最大的區別就是,人工智慧產業的發展比較碎片化,還沒有形成一個特別大的統一的的市場。就像手機,我們可以選MTK,高通等turn-keysoloution,他們基本上就能把平台性質的工作做完。在智能硬體或者機器人行業目前很難做到這樣。

從目前來看,機器人/ AI設備在市場上面臨的最大的挑戰主要有兩點:一是它還處於早期階段,發展比較碎片化;二是市場變化速度快,相比手機平板等產業很難對其銷量做出準確預測,因此作為創業公司也比較難從晶元廠商那裡得到強大的支持。

事實上,在智能硬體的發展過程中,出現了一些很典型的產品,包括NEST 溫控器,這是最早出來的一個人工智慧設備,裡邊包括感測器,還可以學習人的活動範圍,學習你對溫度的偏好設定等,我們認為它是一個很典型的人工智慧產品。最近,大家都在談論的ECHO,它可以進行語音控制,語音聊天以及作為Amazon的服務入口等。

接下來可以看一下硬體產品開發的基本流程,或者說一個簡單check point。通過這張圖,希望大家能夠對硬體開發有一個更加清晰的了解和更加結構化的理解。

我們經常聽到的做硬體就是從畫電路圖,今天晚上畫個電路板,明天投出去,硬體OK了。事實上,從硬體設計來說,畫電路板在硬體整個開發周期里只是一部分,而且占的工作量並不大。進行產品開發,當我們kickoff的時候,我們需要有明確的需求,包括Feature List、ID、Form Factor以及我們的UX要怎麼交互等,這些對我們選擇硬體平台,進行產品設計都有很大的影響。

從requirement到ArchitectureDesign其實是一個不斷迭代的過程和需求收斂固定的過程。在這個階段,我們的需求、 Feature List都確定了,我們的Architecture、Chipset以及我們的KeyPart也就基本上確定了。如果一開始就一頭扎進去找參考方案畫圖, 很肯能做出來的並不是項目真正想要的,一個小的需求改動又會給硬體設計帶來巨大的影響。

在Architecture Design這個階段,我們的output就是 確定主晶元的平台,大的器件,例如顯示設備, camera、touch等。

如上圖所示,是我們在產品開發中經常使用的工具, Technology Building Block,就是把我們所用到的主要的器件,主要的solution像搭積木一樣畫出來,來幫助我們更全面的理解主要Technologybuilding block, technology solution, FW, SW以及他們的dependancy。

除了我們買的主晶元平台,以及外加的camera、wifi、ZigBee晶元之外,很有可能還需要自己去開發一些程序,或者從第三方去採購solution,但是這些模塊之間都是有依賴的。我們在產品開發過程中,如果沒有把這些關係搞清楚的話,很有可能出現這樣一個情況:我們畫了一個板,板子也打回來了,結果可能缺個演算法,或者缺了一個解決方案,這時候我們再去找第三方,很有可能找不到現成的,或者商務合作很難談下來。

舉個例子,我現在選了一個安卓平台,要做智能家庭的網關,同時我們又需要有個ZigBee的Function來控制家裡的燈、感測器等,這時候我們就面臨一個問題:如果有兩種ZigBee晶元,比如說有兩種,一種是Transceiveronly的,比較便宜,但是所有的Protocol,協議解析都是要放到hostCPU這邊來做,這個時候你就需要考慮自己是否有能力去找到這些Protocol、Profile,如果找不到,那麼就需要找第三方;第二種方案,我們也可以選一種帶MCU的ZigBee晶元,在它上面,就能完成所有的Protocol、Profile,選擇這樣的晶元,從客戶角度來說集成工作量會少很多,但是成本也會更高,所以當遇到這種問題的時候,我們還是需要根據自己的資源和能力綜合考慮。

每個公司他擁有的資源, competence,和晶元供應商的合作關係都是不一樣的,客戶根據自己的能力或者根據自己的資源來酌情的安排最適合的解決方案。

下面簡單介紹一下對於主晶元選擇的一些考量和限制。

首先要考慮我們這個項目,我們的Use Case主要是用來幹什麼,是用來做一個掃地機器人,還是要用它來做一個智能家庭的網關,能放音樂,同時又能講故事,又能進行語音交互,同時需要考慮UX,我們使用哪些方式進行交互?除了語音、手勢,需不需要觸摸或者一些別的方式。

第一項我們要考慮的是晶元廠商的Strategy。比如我們要做機器人,做人工智慧,就需要看這個晶元廠商他的晶元主要是面向哪些市場。實際上,特別適合做機器人和人工智慧的產品的晶元,其實並不是那麼容易找,大多數情況下,基於手機、平板晶元演進過來的,這個時候我們就需要知道供應商在這個方向是否願意長期投入,如果他只是想嘗試一下,不一定什麼時候就退出這塊市場。就像我們經常看到的新聞某某大公司退出移動端市場,退出IoT市場。

同時,我們需要了解晶元廠商主流的產品線,他靠哪個來掙錢,靠哪個產品來做他的未來,如果是一個比較小的產品線,很有可能這個產品會做不下去。

對於開發硬體產品來說,拿到晶元廠商的支持是非常重要的,有的晶元可能你覺得很合適,但是如果除了Spec連晶元廠商的人都找不著,這種其實就不需要考慮了。

第三項,我們需要考慮晶元的整體處理能力。這個處理能力其實包含很多,平時我們關心更多的可能是它是四核的,還是八核的,或者A7核,A53的核,其實除了這,還有一個特別重要的指標,就是內存,同樣的一個處理器,如果它的memorysupport只能支持到16位,那它整體的性能會下降很多。同時,我們需要考慮晶元內部有沒有集成一些ISP、HW Accelerator,或者內部DSP等,這些對我們完成我們一些特定場景和功能很有幫助。

還有一項就是OS Support的考慮,很多情況下,要根據實際情況去選擇。例如我們做的產品打算用安卓,還是linux,或者用windows,得看公司的情況。對於每一家創業公司來說,軟體工程師的能力或者擅長的基本上是一個方面,很難為了一個產品,讓這些工程師從windows去換到安卓,或者從linux馬上改成安卓,那麼我們選晶元的時候,也需要­­­要跟這個結合起來。如果公司做的都是安卓,但是晶元廠商目前沒有安卓計劃,期望晶元廠商馬上給你release安卓,幾乎是不可能的。

對這部分進行一個總結:沒有完美的晶元組選擇,只有適合您的晶元組。大多數情況下,蘋果、亞馬遜、微軟等大型晶元組和硬體架構放到初創企業就完全玩不轉。

在選擇晶元的時候,還需要考慮它的擴展性問題。在選擇一個晶元時,剛開始我們確定了要支持的功能,但隨著開發的推進,我們很有可能再增加一些功能,例如增加一個感測器等。這時,我們就需要知道這塊晶元它到底有多少個外設介面,有多少個GPIO資源供使用。還需要考慮到能同時支持多少外設。有很多廠商release的時候,告訴你是支持的,但是等產品硬體設計完了,軟體開始調的時候發現它只支持一個master模式,兩個master放一塊就工作不了。這雖然是個小bug,但也會把項目block。

一個晶元的選對了,對我們Time to market是至關重要的。Time to market不光要考慮Design的周期,還有一個就是產品集成的時間。產品集成階段,需要有不同廠家的release,以及我們最終要上市,過認證,Ramp-up這些都需要就是從一個Overall的角度來去考慮。

接下來講每個人都很關心的cost問題。一個項目的成本有多少,除了考慮晶元成本,還需要考慮系統成本。舉個例子,比如一個六塊錢的晶元和一個四塊錢的晶元,四塊錢的需要複雜的pcb疊層,必須做2-4-2,做一個很複雜的疊層結構等,就需要綜合考慮這個錢合不合適。現有的平台已經很熟悉了,但換一個平台能夠節省一塊錢,我們就需要綜合考慮一下NRE和forcastvolume,包括人力,所有投入的資源的成本等。

接下來講總體硬體的尺寸考慮。事實上,晶元的大小對硬體尺寸有很重要的影響,但很多時候我們需要考慮的,不只是晶元的尺寸,包括ChipsetSize, Mini-Block Size等,我們都需要通盤考慮。除此之外,這個硬體是否只能單面做,單面做面積是多大,支不支持雙面做,雙面做面積是多大,以及廠家推薦的堆疊和參考設計等,都需要考慮進去。

power的話,要考慮的是我們的產品是不是電池供電的,如果是,那我們就需要了解在sleep狀態,功耗是多少,工作的時候最大電流是多少。有的晶元雖然有標識,但跟我們實際上在產品中用的值是不太一樣的。

下一項是Lifecycle。我們選晶元的時候需要考慮我們上市的時間,我們上市的時候,這個產品還有多少,還在不在。避免產品上市以後售賣一年或者一年半,這個晶元就沒有了。

上面這張框圖,如果您對AI設備硬體有興趣,我相信您知道他們是什麼。

左圖是亞馬遜的echo,看起來很簡單。 但是,如果一家初創公司制定完全相同的架構,那麼將會會面臨什麼樣的問題?

先來看一個很著名的麥克風陣列。亞馬遜的這邊麥克風用了是6+1,一個作為wake up,另外六個是做microphone array,從框圖裡看,它是模擬麥克,然後兩個麥克加一個ADC轉成一路I2S,最終的I2S再輸入到TIOMAP晶元里。選擇OMAP晶元是因為它的介面非常豐富,同時很靈活,可以配製成各種介面,所以他把四個McBSP配成了四個I2S介面,但是對於大部分CPU來說,支持四個I2S的很少。

如果我們現在是一個創業公司,也用了TI OMAP晶元,也用了他的這個麥克風演算法,架構設計,那麼我們現在就面臨一個問題:我們需要找到一個演算法,能支持低功耗的關鍵詞,喚醒,能夠支持麥克風陣列,然後這個演算法還能夠在DSP裡邊運行。創業公司如果能夠短期解決這些問題,就可以這樣做,否則的話,再採用這種方式就得不償失。

另外,它的處理器是一個A8單核加了一個DSP,整個處理能力相對於市面上來說都不算強;它的內存是四G的EMC加上256的DDR,實際上對這種配置來說,我們只能運行linux,運行安卓是不行的,所以對於一個創業公司,如果我們選這種架構,我們就看我們有沒有能力在linux的環境下把這些搞定。

還有可以設想下微軟拿到ECHO的hardware會怎麼來設計會很有趣,能否把Windows porting 上OMAP + 256MB DDR,估計一定會把4路I2S輸入OMAP的方案改成USB輸入以便充分利用現有的audio pipeline asset.估計怎麼都走不下去。

右邊是Raspberry Pi 3,這是世界上最受歡迎的open硬體,特別是maker或創業者製作原型。

樹莓派集成了CPU的最小系統,包括wifi,各種介面,camera,HDMI,TFT,還有我們需要的乙太網,所以對於一個開發者,如果沒有一個的硬體team,直接買一個樹莓派,就直接可以進行軟體開發。

如上圖所示,是美國一個博士用樹莓派做的一個Babycam。他是在Deep Learning方面的博士,強項就是做演算法,因此他用樹莓派集成了一個USB Camera,然後自己把DeepLearning優化完,再用小孩的大量的照片來訓練,最後就能夠實現小孩睡覺情況的檢測,例如是否睡著,臉朝下,還是臉朝上,這樣一個簡單而又實用的具有DeepLearning功能的產品就做出來了,而且是一個人就可以完成的。

另外一個例子,是XNOR.AI。它是一家專門對移動端的Deep Learning進行優化,做解決方案的AI創業公司。基於樹莓派,這家公司做了一些物體的實時監測。具體來說,就是採用樹莓派加camera給每個物體打上標籤,從而用來進行安防的監控,或者說特定場景的監控,比如監測老人有沒有摔倒,或者監測我的車,防止有人破壞等,所有自己關注的事件。

怎樣才能做出比樹莓派還要方便的平台,能夠給創業者,給做人工智慧產品的公司提供更多服務,讓大家能夠更方便打造出人工智慧產品。

上圖所示,是我們目前在做的一個解決方案——開普勒的Open AI System。它包括兩部分:一部分是硬體,另一部分是CloudSoftware。

從硬體方面來講,我們是從樹莓派演進過來,但我們希望有更強大的處理能力,所以我們用了全志的一個R40,包括四核的Quad A7和Mali GPU,wifi支持ABGA、AC雙模式。

音頻方面,我們還集成了麥克風陣列,smart audio power amplifier,以及speaker box,並且針對speakerbox的參數都已經tuning好,客戶直接拿過去就可以使用。除了硬體方面,軟體方面我們也集成了安卓的OS,安卓的驅動, Key Words Detection功能等。

對於Key Words Detection功能,我們有兩種實現方式,一種是基於硬體的,可以做到低功耗的關鍵詞喚醒,支持電池供電,也可以睡眠,當然這個是有成本的。另一種,做軟體的關鍵詞喚醒,對用戶來說,使用這個系統,可以自定義一些關鍵詞,同時還不需要付出很高的成本。

目前,我們還在做的一個事情,如果我們能夠支持Local物體檢測,能夠支持本地的語音指令,從端上來說就是一個很適合做人工智慧的一個硬體,創業公司直接用這個硬體就不需要從頭開始集成硬體,選晶元,寫驅動,直接就能夠開始做希望做的產品,可以節省很多時間。

對於開普勒雲來說, 會把Kepler board,第三方的人工智慧的基礎服務【比如微軟、科大訊飛、百度的某些AI的基礎服務】和第三方設備對接好。我們做這個目的就是希望幫助用戶減少硬體開發的工作量以及集成第三方service的繁瑣耗時耗人的工作,讓用戶能夠解放出來專註在自己的特色方面。

以下是本次分享部分精彩問答:

Q1:隨著越來越多的創業團隊瞄準智能硬體領域,關於定價的問題是爭論最多的,定價過低,利潤太薄,定價過高,市場空間變小,競爭性不強。楊老師,您怎麼看待這個問題?

楊慧鵬:我覺得還是要找准差異化,找到特定場景的一個點,把產品做的更好。

微信ID:robotplaces

機器人創新生態



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦