41
Build Your Own Robot -with IBM Bluemix & Watson Tommy Wu(tommywu @tw.ibm.com ) Cloud Solution Architect Dec, 2015 © 2015 International Business Machines Corporation

How to build your own robot with ibm bluemix&watson

Embed Size (px)

Citation preview

Page 1: How to build your own robot with ibm bluemix&watson

Build Your Own Robot -with IBM Bluemix & Watson

Tommy Wu([email protected])

Cloud Solution Architect

Dec, 2015

© 2015 International Business Machines Corporation

Page 2: How to build your own robot with ibm bluemix&watson

商用服務機器人商機 – 創意 + 應用

Page 3: How to build your own robot with ibm bluemix&watson

一切要從 Humix 開始說起 .

Page 4: How to build your own robot with ibm bluemix&watson

Human 。 BluemixHumix

Page 5: How to build your own robot with ibm bluemix&watson

An open-source robot framework based on

Bluemix, IoT foundation and Watson Artificial Intelligence

Page 6: How to build your own robot with ibm bluemix&watson

It all starts from a hackathon …

Page 7: How to build your own robot with ibm bluemix&watson

after 8 hours coding session, First generation of Humix was born

ListensIRC communication

Feels the sentiment of discussion

Saysbasic Chinese

Page 8: How to build your own robot with ibm bluemix&watson

Temperature SensorHumidity SensorLight Sensor

Programmable LED (NeoPixel)

Text to Speech API

NoIR Camera

NFC Sensor

Watson Sentiment APITranslation APIAlchemy Face Detection API

Speech to Text API

Speaker / Mic

Humix

Page 9: How to build your own robot with ibm bluemix&watson

如果 Humix 能變小並且能走動 ?

Alice’Toy ? ^.^

Page 10: How to build your own robot with ibm bluemix&watson

功能清單及應用想像情境• 基本功能: 能走路 ( 前進 / 後退 / 左、右轉 ) ,會揮手 、轉頭,扭腰、• IOT 應用 - 透過應用程式操控機器人行動:

Web 應用程式 - 網頁操控 手機 App - 行動裝置操控 語音操作 – 中 / 英文語音命令操控 藍牙應用 – PS3 or Wii 搖桿操控

• 眼睛 / 視覺應用: 能辨識物體 能判斷性別、年紀 能觀看紀錄眼前影像 ( 串流 ) 紀錄 眼睛依據情緒而變化

• 語音 / 聽覺應用:聽懂中、英文 / 講中、英文

• IT 應用:Web 聊天,判斷語意變化表情 判斷應用系統狀態,前進至定位並語音回報 -Beacon 應用 – 能進行室內定位,回報經過地點及時間

• 資料分析應用: 天氣預報服務 ( 英文語音 ) DashDB / R 語言 分析應用 ( 股票曲線 / 異常預測 )

• 其他更多應用:… 串流識別、循跡移動、音樂故事、…… .

Page 11: How to build your own robot with ibm bluemix&watson

這 .. 基於審美的考量,我想… 就是它了 Robot

來源 : 圖片

Page 12: How to build your own robot with ibm bluemix&watson

Rapiro is a cute, affordable, and easy to assemble humanoid robot kit. Comes with 12 servo motors and an Arduino compatible controller board. Designed for Raspberry Pi. Its limitless possibilities all depend on you.

來源 :http://www.rapiro.com/

Programmable

Customizable

粉絲頁: https://www.facebook.com/project.rapiro

Page 13: How to build your own robot with ibm bluemix&watson

接下來 Bluemix+Watson 就是重點 .

Page 14: How to build your own robot with ibm bluemix&watson

Bluemix 是一個基於雲的開放 PaaS 標準平臺,用於構建、管理和運行各種類型的應用程式( Web 、行動化、 BIG Data 、 IOT ,Watson 等等)。

在幾秒內上線開發人員可以選擇任何語言的運行時,或引入他們自己的運行時。從零到生產只需一個命令。

開發運營 (DevOps)開發、監控、部署和日誌工具,讓開發人員可以運行整個應用程式。

API 和服務IBM 、協力廠商和開源 API 服務的目錄,讓開發人員在幾分鐘內就能夠組合出一個應用程式。

內部部署集成構建混合環境。連接到內部部署資產及其他公共和私有雲。

靈活的定價 在幾分鐘內完成註冊。按需付費,訂閱模式提供選擇和靈活性。分層安全防護IBM 保障平臺和基礎架構的安全性,並為您提供保護應用程式所需的工具。

What is BlueMix?

Page 15: How to build your own robot with ibm bluemix&watson

15

Cloud Foundry 開放雲應用平台 - 多平台支持避免被鎖定

Page 16: How to build your own robot with ibm bluemix&watson

開發人員為什麼使用 Bluemix ?在幾分鐘內實現從無到運行程式碼。

自動化許多應用程式的開發和交付。

為了以更低的成本迅速將產品和服務推出市場為了持續交付新的功能給他們的應用程式

為了擴展對 IT 基礎架構的現有投資 通過安全地連接到內部部署基礎架構,擴展現有投資。

Page 17: How to build your own robot with ibm bluemix&watson

What is Watson?

© 2015 International Business Machines Corporation

Page 18: How to build your own robot with ibm bluemix&watson

© 2014 International Business Machines Corporation

Page 19: How to build your own robot with ibm bluemix&watson

19

使用 Bluemix 服務建立機器人控制系統

安全服務Web 與應用服務

雲整合服務

行動服務

• 可選擇使用各種運行環境,服務或工具選擇

領先行業的 IBM 能力• 利用深厚 IBM 軟體實力提供服務• 全方位的能力

完整性• 開放的平臺與服務• 協力廠商提供服務的關鍵用例

資料庫服務

大資料服務

Watson 服務

DevOps 服務

廣泛的能力合適任何偉大創意 物聯網服務

Page 20: How to build your own robot with ibm bluemix&watson

強大的 Watson 人工智慧做為機器人的後盾

Page 21: How to build your own robot with ibm bluemix&watson

•基於 V8 JavaScript 引擎 (With JIT)•可獨立運作 ( 無需瀏覽器 )•Event-driven•Non-blocking I/O model•支援數千以上 Concurrent 連線•Minimal Overhead (CPU/Memory) on a single process

•Extending with C/C++•Support Multi-core Systems

node.js 為主要開發語言

Page 22: How to build your own robot with ibm bluemix&watson

機器人腦神經開發 - Service Mashup

神經細胞-各種服務節點

內視鏡檢視-查看各種訊息

腦神經區域 (Workspace)

X

Page 23: How to build your own robot with ibm bluemix&watson

• Node.js• Interrupt-based IO• Minimal Resource

Usage• https://github.com/watso

n-developer-cloud/rpi-time-weather-demo

Raspberry pi + Text to Speech

有了豐富的範例,一切好談

Page 24: How to build your own robot with ibm bluemix&watson

Watson 影像物件辨識範例What is it?Understand the contents of images. Trainable for custom content.

How does it work?Visual Recognition allows users to understand the contents of an image or video frame, answering the question: “What is in this image?” Submit an image, and the service returns scores for relevant classifiers representing things such as objects, events and settings.

Use Cases-You can organize image libraries, understand an individual image. Train the robot to know image senseDoors Security & Web Cam Application

Demo : http://vision.alchemy.ai/

Page 25: How to build your own robot with ibm bluemix&watson

Watson AlchemyVision – 人臉辨識技術Image Link Extraction - Given any URL, the Image Link Extraction API will scan the designated page to find the most prominent image and directly retrieve the URL for that image. It can then be appropriately classified and tagged.

Image Tagging - With AlchemyVision’s image tagging API, you can quickly categorize and organize image libraries at a massive scale.

Face Detection/Recognition - When provided an image file or URL, the AlchemyVision Face Detection and Recognition API returns the position, age, gender, and, in the case of celebrities, the identities of the people in the photo.

© 2015 International Business Machines Corporation

Page 26: How to build your own robot with ibm bluemix&watson

機器人聊天語意分析 – Watson AlchemyLanguage

Node-Red 開發聊天室

透過聊天室與它互動

Page 27: How to build your own robot with ibm bluemix&watson

以物聯網服務 積木式組裝 .

Page 28: How to build your own robot with ibm bluemix&watson

Loosely-coupled architecture with IoT Foundation

Page 29: How to build your own robot with ibm bluemix&watson

IBM Design for Internet of Things Cloud

Device Registration & Connectivity Connectivity | Awareness | Security & Privacy | Asset mgmt

IntegrationMobile | Cloud | Enterprise

Data services Historian | Cache | Search

Managed APIs Share | Monetize

Real-time Big Data Analytics Data Analytics | Event Analytics | Streaming

ApplicationsRuntime | Services

Accelerators

IBM Internet of Things Cloud

Partners Customers

Developers

Employees

More ThingsAPI

API APIAPI

API

Page 30: How to build your own robot with ibm bluemix&watson

Hundreds of SensorsThousands of API/Services

MeetsWhen

Page 31: How to build your own robot with ibm bluemix&watson

Program the brain is just as easy asDrog-n-Drop

Page 32: How to build your own robot with ibm bluemix&watson

應用系統 (IOT) 組合範例:溫度 / 股價警示

Buy Stock

擷取欄位

存入資料庫

除錯顯示

判定條件

價格 < 38

價格 > 38

發送警示

Buy Stock

即時訊息串流

Page 33: How to build your own robot with ibm bluemix&watson

最終成果2 天後智能機器人誕生

Page 34: How to build your own robot with ibm bluemix&watson

身體控制 :Arduino

大腦控制 :RPi

Bluemix 雲端智能機器人 – 組成架構

主控台

使用服務:1 、 Watson : 中文語音辨識、影像辨識、分析、語意分析2 、 Cloudant DB 、IOT 、 NodeRed 、 d

ashDB 、 R

腦神經

Page 35: How to build your own robot with ibm bluemix&watson
Page 36: How to build your own robot with ibm bluemix&watson

Arduino 身體動作程式碼編輯

Page 37: How to build your own robot with ibm bluemix&watson

Bluemix 雲端智能機器人 – 系統架構RAPIRO 開發

• 開發語言: Node.JS,Python,HTML5,C

• 開發平台: Bluemix DevOps, Node-

Red,Orion,Arduino IDE

• 開發應用: Web 應用 – Node-Red 手機應用 - Mobile First 語音應用 - Node-RED 藍牙應用 - Python Beacon 應用 – Presence

Insight

• 開發架構: 小腦: Raspberry Pi RAM:512MB-16GB

SD Card

大腦: IBM Bluemix

外觀: 3D 列印 (KickStarter)

身體: Arduino 控制板 12 顆伺服馬達

(KickStarter)

思考流程: 中文語音辨識 -Watson 邏輯判斷 -Node-Red, IOT

Foundation 中 / 英文語音回應 -Google/

Watson 語意分析 – Watson Sentiment 身體行動 – Node.JS+Python

身體行動 (Arduino) : 雙手可緊握 手臂可揮舞 雙腳可走路

視覺 / 表情 (Camera) : 影像串流 -Node.JS 影像識別 – Watson Tag 人臉辨識 – Watson Face 氣象播報 - Watson

Weather

眼睛表情 (LED Matrix) -Python

數據存儲 – Cloudant 數據分析 – DashDB / R Script

高感度麥克風 外接喇叭 藍芽模組

序列埠溝通 Beacon 裝置 室內定位

Page 38: How to build your own robot with ibm bluemix&watson

What is YOUR recipe ?

Page 39: How to build your own robot with ibm bluemix&watson

還有一些困難需要克服

• 電壓、電流穩定性 ( 9V or 12 V ? 10A ?)

• 語音連續性模式 + 串流 (Local 連續串流直到 keyword found ?)

• 收音的品質 ( 更高級的麥克風 ? Or 指向性 ?)

• 電池重量及續航力 ( 18650 鋰電 ?)

• 喇叭需要剖腦充電 ( 直接拉二個單體接電至 power ?)

• 眼睛 (LED Matrix) 無法固定 ( 卡筍製作 ?)

• 沒時間… . ( 找人合作開發 ?)

Page 40: How to build your own robot with ibm bluemix&watson

下一步是 :變型金剛?服務機器人?請給我你的創意!

Page 41: How to build your own robot with ibm bluemix&watson

Thank You !

Any Question ?