課程資訊
課程名稱
自動化系統設計
Design of Automated Systems 
開課學期
106-2 
授課對象
生物資源暨農學院  生物機電工程學研究所  
授課教師
周瑞仁 
課號
BME7051 
課程識別碼
631 M1500 
班次
 
學分
3.0 
全/半年
半年 
必/選修
選修 
上課時間
星期五7,8,9(14:20~17:20) 
上課地點
電電實驗室 
備註
研究所核心課程(量測與控制)
總人數上限:50人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1062BME7051_ 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

本課程與大學部「機電整合與實習」可以同修。介紹如何透過程式設計,來控制Raspberry Pi與Arduino。同學修習時,需動手設計生物產業上相關的自動化系統,甚至透過網路、雲端與行動裝置遙控對方。課程內容包括:Arduino簡介、架構、IDE、安裝,系統工程與計劃管理,Arduino 程式以及輸入與輸出 (IO) ,Arduino 程式以及類比輸入與類比輸出 (Analog) ;Raspberry Pi簡介、架構、IDE、安裝,Raspberry Pi 伺服器架設--Apache (NginX) Web Server、FTP Server、MySQL Database Server、PHP Script Language,Raspberry Pi輸出入介紹與程式設計--Python 語法簡介及實習,Raspberry Pi 與 Arduino 整合應用。課程進行當中搭配專題實作。 

課程目標
本課程與大學部「機電整合與實習」可以同修。介紹如何透過程式設計,來控制Raspberry Pi與Arduino。同學修習時,需動手設計生物產業上相關的自動化系統,甚至透過網路、雲端與行動裝置遙控對方。課程內容包括:Arduino簡介、架構、IDE、安裝,系統工程與計劃管理,Arduino 程式以及輸入與輸出 (IO) ,Arduino 程式以及類比輸入與類比輸出 (Analog) ;Raspberry Pi簡介、架構、IDE、安裝,Raspberry Pi 伺服器架設--Apache (NginX) Web Server、FTP Server、MySQL Database Server、PHP Script Language,Raspberry Pi輸出入介紹與程式設計--Python 語法簡介及實習,Raspberry Pi 與 Arduino 整合應用。課程進行當中搭配專題實作。 
課程要求
1. 平時考成績、實習、作業   35%
2. 期末計畫與報告成績     35%
3. 期末考成績         30% 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
◆教科書:講義
◆參考書:上課時依進度指定 
參考書目
◆上課時依進度指定 
評量方式
(僅供參考)
 
No.
項目
百分比
說明
1. 
平時考成績、實習、作業 
35% 
 
2. 
期末計畫與報告成績 
35% 
 
3. 
期末考成績 
30% 
 
 
課程進度
週次
日期
單元主題
第1週
03/02  Introduction to course, Lab and Final project (Vehicle design, Arduino, Raspberry Pi, Python, node.js, HTML, MySQL, Sensors, Camera)
Grouping
Photo taking
 
第2週
03/09  Lab. Material
Vehicle design and Project management
Assignment: Lab. 1 Vehicle (車體設計、組裝、機電系統架設)
 
第3週
03/16  Review on Arduino (I/O Interaction) 
第4週
03/23  Vehicle control via Arduino
Assignment: Lab. 2 Control of Vehicle (車體移動控制)
 
第5週
03/30  Raspberry Pi setup and Tool installation
Basic commands for Linux
Submission deadline: Lab. 1 Vehicle

 
第6週
03/31, 04/06  調整放假 (03/31補班、補課,補04/06之調整放假)
Raspberry Pi and Linux
 
第7週
04/13  Python Basic
Communication between Arduino and Raspberry Pi via Serial;
Submission deadline: Lab. 2 Control of Vehicle (車體移動控制)
 
第8週
04/20  EDUCON 國際會議[補課] 
第9週
04/27  Introduction to OpenCV
OpenCV implementation with Python
Assignment: Lab. 3 OpenCV Basics (球體位置、顏色辨識)
 
第10週
05/04  Introduction to MIT App Inventor
MIT App Inventor programming and application  
第11週
05/11  Image processing with OpenCV and Python Assignment: Lab. 4 Wrap up of Lab. 1~3
Assignment: Lab. 5 手機介面建立 (Inventor) 與I/O (I/O interaction)

 
第12週
05/18  Interfacing among APP, Rpi, Arduino
Introduction to MySQL
MySQL server setup
Basic command for MySQL
Access to MySQL via Python
Remote connection (Local network) of MySQL via Python
Submission deadline: Lab. 3 OpenCV Basics (球體位置、顏色辨識)

 
第13週
05/25  Introduction to Node.js
Node.js environment setup
Node.js programming
HTML
Assignment: Lab. 6網頁介面建立 (Node.js) 與後端資料庫建立與管理 (MySQL)
Submission deadline:: Lab. 4 Wrap up of Lab. 1~3
 
第14週
06/01  System integration and application
Submission deadline: Lab. 5手機介面建立 (Inventor) 與I/O (I/O interaction)
 
第15週
06/08  System integration and application 校務評鑑 [補課]
Submission deadline: Lab. 6 網頁介面建立 (Node.js) 與後端資料庫建立與管理 (MySQL)
 
第16週
06/15  Node.js programming and application 
第17週
06/22  Final project presentation and demonstration 
第18週
  期  末  考 (繳交期末書面報告、PPT、Video)