IoT

 armmbed IoT

現在位置:艾鍗學院ARM系列課程 / 網路及雲端系列課程實現Web IoT平台 - 基於ARM mbed Cloud

報名即贈送:Raspberry Pi 3 開發套件包+數位課程Raspberry Pi 3

課程特色

我可以從這門課學到什麼?
1.能了解物聯網IoT 架構,包含物聯網感知層、物聯網網路層、物聯網應用層
2.了解物聯網中M2M通訊協定並如何實現-MQTT、CoAP
3.學會擷取感測器訊號與輸出入控制
4.能開發一個Web-Based IoT平台:掌握Web前端與後端的通訊能力(AJAX,WebSocket)
5.你能快速學會Node.js的開發方法
6.了解 ARM mbed Cloud 平台-mbed Client API與mbed device connector API
7.善用更多其他的雲端服務BaaS(Backend as a Service),如Freeboard、ThingSpeek等
課程介紹︰快速打造物聯網Web整合應用
 

從實作中認識物聯網!

本課程將採用Node.js撰寫WebAPP,使用HTTP/RESTful API存取Resource。在實作WebAPP中,除了後端Node.js,你也將會看到後端如何與前端瀏覽器之間要如何溝通的方式,如AJAX或WebSocket。課程使用Raspberry Pi結合ARM mbed Cloud來實現一個物聯網解決方案。你會了解M2M(Machine-to-Machine)網路協定,包含CoAP、MQTT、LWM2M等協定,並藉由Raspberry Pi連接 Cloud 。 Raspberry Pi的部份教你連接一些感測器,包含GPIO、數位界面I2C的溫溼度感測器、類比感測器如光感應器等,並將這些感測器成為定義為不同的Resource Path並註冊在mbed cloud中。

物聯網中Web APP的重要性

物聯網真正的價值來自於資料及服務。雲端是由設備或是連網端點收集來的數據(Machine Data)儲存的地方,系統必須同時具備將時間序列的數據轉換為可以被行動應用存取的數據型態,藉此連接Web APP,提供企業進而掌握可獲利的服務或商業模式。

一次整合前後端的程式語言-Node.js

Node.js最大的特色就是可以在伺服器端執行JavaScript。也就是說,前端工程師可以單純地使用一種語言(JavaScript)完成前後端的Web Application開發。目前Node.js增長的很快,每年增長率達到100%,全球已超過數千家公司引入Node.js在自身產品中,如Google、IBM、Microsoft、Paypal、Alibaba等企業。

相關詞:IoT、物聯網、WoT、Raspberry Pi、ARM mbed、CoAP、MQTT、LWM2M、WebAPP、RESTful API、Node.js、AJAX、WebSocket、JavaScript、JQuery、MongoDB、NoSQL

課程大綱

1) 什麼是物聯網?我該如何實現?我該或我可以專注什麼?
2) 物聯網技術架構簡介
3) 物聯網感測層技術:
     ▪ Raspberry Pi 開發快速上手
     ▪ 基礎I/O控制:GPIO、Relay 控制110V家電控制 
     ▪ 感測器介面技術 - 數位(I2C, SPI)、類比 (ADC) 
     ▪ 數位感測器讀取-溫溼度感測器(BME280) 
     ▪ 數位感測器讀取-G-Sensor(LIS3DH) 
     ▪ OLED 輸出
     ▪ 類比式感測器讀取-光感測器
4)物聯網網路層技術
 ▪ M2M通訊協定說明
 ▪ CoAP協定解析與實驗
 ▪ MQTT協定解析與實驗
5)物聯網應用層技術:WebAPP實作
 ▪ Web前端技術: HTML/CSS/JavaScript/JQuery (瀏覽器前端 UI控制)
 ▪ Web後端技術: Node.js (伺服端端資料處理)
 ▪ 瀏覽器與Web Server間的通訊實現: AJAX, WebSocket
 ▪ Node.js MQTT Client
 ▪ MongoDB (NoSQL)進行感測資料儲存
6) 實現一個基於 ARM mbed cloud 的 Web IoT 平台
    ▪ ARM mbed Cloud 平台架構簡介
 ▪ build mbed Client to Linux 
 ▪ mbed Client API 
 ▪ Raspberry Pi 3 連線ARM mbed cloud using CoAP 
 ▪ ARM mbed Device Connector Web API
7) IoT 架構解決方案Demo
 ▪ 以MQTT架構整合感測端與Web應用端
 ▪ 以ARM mbed Cloud 整合感測端與Web應用端

適合對象
1.想了解物聯網完整解決方案的研發工程師或專案經理或技術評估者
2.對於如何使用Raspberry Pi 3打造物聯網系統有興趣者
3.對 ARM mbed 平台開發有興趣者
4.對 Web 開發技術 (Node.js) 運用於物聯網有興趣者
5.對於感測器讀取、韌體程式撰寫傳統MCU或嵌入式系統開發有興趣者
6.想輕鬆取iPAS經濟部工業局專業工程師考試物聯網應用工程師的人
 
物聯網平台開發人才平日班
師資介紹

Joseph

▪ 台灣大學電機工程系博士研究 ▪ 網通科技公司/資深工程師

▪ 嵌入式Linux系統 ▪ ARM Boot Loader ▪ 資料結構及演算法 ▪ M2M通訊協定

▪ MCU 韌體設計 ▪ Linux 驅動程式 ▪ Linux系統程式 ▪ 無線通訊

子板介紹

carbon fibreiPAS first

點擊 ↑ 看更多詳細內容
 
 
 
 
PartIII- Node.js WebSocket 課程影片(截錄)

ARM mbed cloud 物聯網整合應用 (Demo)

 
 
無線感測網路(WSN)進行遠端家電控制

 
課程Q&A
  •   M2M 和 ARM mbed Cloud的關係?
    當大家在談論智慧家庭的解決方案時,如遠端控制冷氣、家電等,首先要解決的第一個問題就是要如何從Internet 連入家中的設備,而不必對家中路由器進行任何設定,如Virtual Server、Port Forwarding等,M2M就是要能做到這點,而這就是NAT Traversal (穿透防火牆)。藉由ARM mbed cloud或其他平台技術讓你具有NAT Traversal的能力,而快速地建構出M2M(Machine-to-Machine)網路架構,只要確定終端設備(node)可以上網就好,你就可以由遠端對該節點進行控制與進行資源存取。

 

  •   什麼是物聯網M2M協定?
    機器對機器(Machine-to-Machine,M2M)通訊是物聯網的一個重要運作概念。隨著物聯網的應用日益興盛,M2M流量會持續增加,故針對M2M Traffic特徵及其應用,M2M通訊技術應運而生。由於物聯網架構下,感測節點本身多半採用MCU且以電池供電,故這些新的M2M協定必須考量在有限的硬體能力及功耗等條件下,使得M2M Traffic在進行網路傳輸時,有較高的Throughput、低延遲、低電力耗損,甚至提供不同的 QoS (Quality of Service)。

 

  •   CoAP協定是什麼?
    CoAP(The Constrained Application Protocol) 目前已是IETF標準(RFC 7252),提出一個類似https/TCP設計,但是屬於輕量版的https/UDP,使得其有利於感測節點進行網路傳輸。CoAP是主從(Client/Server)架構,感測節點多半為CoAP Server提供資源,由CoAP Client請求讀取/控制資源狀態。CoAP使用UDP (port: 5683),對於資料是否要重傳或傳送順序(Reordering) 全交由上層應用層來決定,對於資源有限的MCU則不需要有完整TCP/IP協定實作。

 

  •   MQTT協定是什麼並且如何應用?
    MQTT(Message Queuing Telemetry Transport)是IBM開發的一個即時通訊協定,2010年IBM釋出免授權版本(v3.1)。MQTT是機器對機器(M2M)物聯網的連接協定。它被設計成一個非常輕量級的發布/訂閱消息傳輸。對於感測節點擁有很少的記憶體和或網路頻寬很小的情況下,MQTT非常適合。MQTT已經是ISO(ISO / IEC 20922:2016)和OASIS標準。另外,Facebook Messenger即是採用MQTT協定。
  • 課程中講師會進行關於MQTT的 Lab:
  •   如何開發Web APP 遠端時監聽數據?
    課程所教授的AJAX或WebSocket方法再搭配JQuery即可解決此問題,並且使用者的瀏覽器不必一直按F5更新畫面。
職涯方向
IoT 系統整合工程師 │ 韌體工程師 │ ARM mbed 工程師 │ MCU軟體工程師 │ 前端工程師 後端工程師 全端工程師

延伸學習課程

上課花絮

學員須知
立即索取課程資訊