開課名稱:雲端物聯網建構實務The Practices for IOT Cloud and Application Development |
學分數:3 |
任課教師:李奇璋 |
助教: |
上課時段:(一)5,6,7 |
教室代號:R210 |
課程目標 Goal:
物聯網 ( Internet of Things,IoT ) 的發展讓我們身旁的所有裝置都可以連上網路,不只是人與人之間的連結,物件本身也可互動,從而以人為主體的網路世界將進展到物件與人互為主體的 Metaverse 新世界。
學習IoT與AIoT (智慧聯網,AI+IoT)相關技術,透過「感知」與「控制」等物件的掌握,整合「真實與虛擬」的情境將是本課程的目標。
課程提供學生在藝術創作上運用 IoT 與 AIoT 等技術的相關學習路徑與技法,並以「物件聯網」+「資料串接」與「AI表現」等實務專題為課堂的示範內容,嘗試以科技語言來創造相對應的藝術語境,藉此來提升同學在藝術創作上表現的可能性與厚實創作能量。
評分標準 Evaluation:
(1).期中個人實作: 20% 。
(2).學期個人創作,60% 。(可由期中個人實作續延伸)
(3).出席及課堂表現: 20%
上課教材 Texts:
自擬教材
教學網站:https://newmedia.tw
課程大綱 Course Description:
本課程教學設計上採每週專題式教學,以該週專題為主要技術學習焦點,前後進度銜接。
內容上,將以WoT( Web of Things ) 技法為核心技術,著重於 API 資料串接應用:從Web Service 的前端(front-end)介面設計到後端(back-end)的資料儲存與交換,從物端,端點設備的感測與遙控,到雲端的連結、運算與儲存 。
課程嘗試以IoT System的全端開發(full-stack development)視角,實作完整的IoT全端系統,其中亦含括設備和系統在本機與雲端的部署(Deployment)技術,還有IoT、AIoT結合 音像表現與聲音藝術的整合應用,以及於學習過程中讓同學同時掌握軟體開發流程中版本控制觀念與能力。
課程中所運用的主要硬體預計有ESP32、ESP32-CAM等,同學可自備或由課堂分組提供;雲端主機由課程提供同學個人雲端VPS空間運用;所使用的程式語言,除了Arduino IDE 開發環境外,Node.js與python將是最主要的使用語法。
每週授課進度 Weekly Schedule: (註:授課進度依學生實際學習進度進行調整)
第1週: 全端技術藍圖、Web System 架設觀念與實作、本機開發環境建置
第2週: 軟體開發版本控制觀念與實作
第3週: 容器化虛擬技術基礎
第4週: API 觀念與串接實作
第5週: MVC網站框架實作、資料庫串接
第6週: IP 計算與網段規劃
第7週: IoT 裝置實作:感測與資料上雲端
第8週: IoT 裝置實作:MQTT雙向互動與 Line Bot 實作
第9週: IoT 裝置實作:Websocket 實作
第10週:API 專題:IoT 裝置與網路雲端服務互動
第11週:WoT 專題:物件控制介面設計與實作
第12週:專案部署實作:本機部署與雲端部署
第13週:專案部署實作:容器部署
第13週:AIoT 專題:影像偵測與辨識
第14週:AIoT 專題:物件與 AI 平台串接
第15週:AIoT 專題:室內定位
第16週:整合應用專題:IoT 與 音像表現
第17週:整合應用專題:IoT 與 聲音藝術
第18週:創作發表與學期座談 $h
PS:提醒各位老師及同學,請尊重智慧財產權,勿非法影印書籍、教材。