通 知

Similar documents
Visual Basic D 3D

投影片 1

Microsoft PowerPoint - VB14.ppt

綜合社會保障援助指引

投影片 1

<4D F736F F D C4EAC6D5CDA8B8DFB5C8D1A7D0A3D5D0C9FAC8ABB9FACDB3D2BBBFBCCAD4CEC4BFC6D7DBBACDCAD4BEEDBCB0B4F0B0B82DD6D8C7ECBEED2E646F63>

2 WF 1 T I P WF WF WF WF WF WF WF WF 2.1 WF WF WF WF WF WF

untitled

(Microsoft Word - wes _\246p\246\363\250\317\245\316LED\277O\305\343\245\334\252\254\272A.doc)

Microsoft PowerPoint - 第14章.ppt

880041_C_Unique_REDACTED_.indb

計算機程式及實習 期末報告ppt製作 題目:南台黑心早餐店結帳系統

ActiveX Control

Microsoft Word - 08 单元一儿童文学理论

第三章

nb.PDF

bnbqw.PDF

1. 本文首段的主要作用是 A. 指出 異蛇 的藥用功效 說明 永之人爭奔走焉 的原因 B. 突出 異蛇 的毒性 為下文 幾死者數矣 作鋪墊 C. 交代以蛇賦稅的背景 引起下文蔣氏有關捕蛇的敘述 2. 本文首段從三方面突出蛇的 異 下列哪一項不屬其中之一 A. 顏色之異 B. 動作之異 C. 毒性之

untitled

項 訴 求 在 考 慮 到 整 體 的 財 政 承 擔 以 及 資 源 分 配 的 公 平 性 下, 政 府 採 取 了 較 簡 單 直 接 的 一 次 性 減 稅 和 增 加 免 稅 額 方 式, 以 回 應 中 產 家 庭 的 不 同 訴 求 ( 三 ) 取 消 外 傭 徵 費 6. 行 政 長

(f) (g) (h) (ii) (iii) (a) (b) (c) (d) 208

Microsoft Word - 發布版---規範_全文_.doc

概 述 随 着 中 国 高 等 教 育 数 量 扩 张 目 标 的 逐 步 实 现, 提 高 教 育 质 量 的 重 要 性 日 益 凸 显 发 布 高 校 毕 业 生 就 业 质 量 年 度 报 告, 是 高 等 学 校 建 立 健 全 就 业 状 况 反 馈 机 制 引 导 高 校 优 化 招

鱼类丰产养殖技术(二).doc

疾病诊治实务(一)

名人养生.doc

<4D F736F F D2040B9C5B871A661B0CFABC8AE61C2A7AB55ACE3A8735FA7F5ABD8BFB3B9C5B871A661B0CFABC8AE61C2A7AB55ACE3A8732E646F63>


中老年保健必读(十).doc

27 i

% % ,542 12,336 14,53 16,165 18,934 22,698 25, ,557 7,48 8,877 11, 13,732 17,283 22,

穨ecr1_c.PDF

穨2005_-c.PDF

北京理工大学.doc

尲㐵.⸮⸮⸮⸮⸮

果树高产栽培技术(一).doc

物质结构_二_.doc

第一節 研究動機與目的

水力发电(九)

中国古代文学家(八).doc

景观植物(一)

Microsoft Word - 目录.doc

园林植物卷(三).doc

19q indd

厨房小知识_一_

中南财经大学(七).doc

赵飞燕外传、四美艳史演义

厨房小知识(五)

园林植物卷(十二).doc

國立中山大學學位論文典藏

乳业竞争_一_

untitled

中国政法大学(六).doc

胎儿健康成长.doc

Microsoft Word - edu-re~1.doc

南華大學數位論文

Microsoft Word 一年級散文教案.doc

米食天地教案

27 :OPC 45 [4] (Automation Interface Standard), (Costom Interface Standard), OPC 2,,, VB Delphi OPC, OPC C++, OPC OPC OPC, [1] 1 OPC 1.1 OPC OPC(OLE f

(譯本)

Microsoft Word - CX1000-HMI_程序开发_PLC通讯

IsPostBack 2

CHAPTER VC#

2006年国家公务员招录考试行测真题(A)

Chapter 16 集合

報告題名 : 應用程式設計期末報告 產品管理系統 作者 : 張紹剛系級 : 工業二甲學號 :D 開課老師 : 陳亭志課程名稱 : 應用程式設計開課系所 : 工業工程與系統管理開課學年 :97 學年度第 1 學期

li 侉 2. 在 下 列 加 点 字 的 正 确 读 音 旁 打 : (1) 我 看 见 路 边 有 一 条 蛇 A.sh 佴 B.sh 佶 C.sh 侑 D.sh 侉 (2) 外 面 的 泥 土 冻 得 很 硬 A.y 侏 n 倮 B.y 侃 n 倮 C.y 佾 n 倮 D.y 佻 n 倮 (3

新・解きながら学ぶJava

1

509 (ii) (iii) (iv) (v) 200, , , , C 57

Microsoft Word - 小心翼翼的二十一點N.doc

Microsoft Word - MP2018_Report_Chi _12Apr2012_.doc

南華大學數位論文

李天命的思考藝術

皮肤病防治.doc

性病防治

中国南北特色风味名菜 _一)

全唐诗24

马太亨利完整圣经注释—雅歌

Excel VBA Excel Visual Basic for Application

Transcription:

修平科技大學電機工程系 DEPARTMENT OF ELECTRICAL ENGINEERING HSIUPING UNIVERSITY OF SCIENCE AND TECHNOLOGY 實務專題報告書 老人多功能智慧照顧系統 指導老師 : 許耿禎 專題製作學生 : 四技電三甲 四技電三甲 吳亮穎 BD104025 黃凱立 BD104095 中華民國 1 0 7 年 6 月 2 5 日

修平科技大學 電機工程系 HSIU-PING UNIVERSITY OF SCIENCE AND TECHNOLOGY DEPARTMENT OF ELECTRICAL ENGINEERING 指導老師 : 許耿禎 專題製作學生 : 吳亮穎 BD104025 黃凱立 BD104095 製作日期 :107 年 6 月 25 日 I

摘要 全球人口正邁入高齡化的社會, 慢性病的盛行率隨之增加, 老人照護 將是 21 世紀健康照護的主題, 未來長期照護人力的需求也將隨之成長 醫院的服務型態將因應社會環境的需求而調整, 護理人員的服務對象與範圍將從醫院推向社區, 提供老人或是長期照護需求者健康服務 本組研究目的在於如何在第一時間, 了解老人獨自一人在家 無他人協助照顧時, 隨時監控著老人的肢體動作 避免發生危急情況, 延遲就醫等情況 II

目錄 第一章緒言 1. 研究動機 1 2. 研究目的 1 第二章零件選擇及介紹 1. 零件介紹 2 (1).Arduino 介紹 2 (2). 三軸介紹 4 第三章專題使用程式 1.Arduino 7 (1). 閘道器接收訊號程式 7 (2). 三軸發送訊號程式 10 2.VB 程式碼 14 第四章數據平均表 1. 坐著數據表 22 2. 走路數據表 23 III

3. 躺著數據表 24 4. 站著數據表 25 5. 跌倒數據表 26 6. 起床數據表 27 第五章結論 一. 結語 28 參考文獻 一. 文獻 29 作者簡介 一. 簡介 30 IV

圖表目錄 圖一 Arduino 2 1. Arduino 大臺主機板 3 2. Arduino 大臺主機板 3 圖二三軸模組 4 圖三三軸組裝圖 4 圖四閘道器模組 5 圖五閘道組裝圖 5 圖六杜邦線 6 圖七 Arduin 電池 6 圖八坐著實驗圖 22 圖九走路實驗圖 23 圖十躺著實驗圖 24 圖十一站著實驗圖 25 圖十二跌倒實驗圖 26 圖十三起床實驗圖 27 V

1. 研究動機 第一章緒言 現今社會大多數老人都獨自一人居住, 發生危急狀況都無人知曉, 除非是社會福利機構去介入關懷, 不然身為子女的我們總是無法在第一時間知道情況 所以本組要研究出防止老人獨自生活中, 可以在遠端也能了解到使用者情況之裝置, 來減少危險之發生 2. 研究目的 研究此照護裝置, 主要是利用 Arduino 的技術, 目的是實現老人獨自在家 預防無人的照護所發生的危險 這裝置的研發, 可以持續觀察使用者, 當人體的動作特別異常時我們可以知道使用者的情況, 以防範危險的發生 1

1. 零件介紹 (1).Arduino 介紹 第一章零件選擇及介紹 Arduino 是一種開放授權的互動環境開發技術, 互動裝置其實無所不在, 像是冷氣的恆溫裝置, 便是使用感測器偵測環境溫度, 進行室內溫度的自動調節 ; 還有汽車使用的倒車雷達, 過於靠近物體便會發出聲音警告駕駛者 這些裝置為生活增加不少安全及便利, 互動能帶給使用者驚喜, 有時會以藝術品的方式呈現在生活當中 以往要處理相關的電子設備時, 需要透過工程師, 逐一由單一小元件拼湊出整個電路 大多數的設計工具都是為了工程師設計, 除了電路外還需要廣泛的知識, 才有辦法完成電路 還好微處理器有了長足的進步, 除了在使用上變得更為容易, 價格上的減少更降低了學習的門檻 2

圖一 Arduino 大臺主機板 圖二 Arduino 小臺主機板 3

(2). 三軸介紹 ADXL335 三軸加速計, 性價比高, 低消耗, 提供經過信號調理的電壓輸出, 該產品的滿量程加速測量範圍 ±3g( 最小值 ), 可以測量傾斜測應用中的靜態重力加速度, 以及運動 衝擊或震動導致的動態加速度 圖三三軸模組 圖四三軸組裝圖 4

圖五閘道器 圖六閘道組裝圖 5

圖七杜邦線 圖八 Arduino 電池 6

1.Arduino 第三章專題使用程式 (1). 閘道器接收訊號程式 //------------------------------------------------------------------------------ // Title:PC_ZigBee_GateWay // Firmware:PC_ZigBee_GateWay // Devices:Nano_KIT+ CC2530 // Function:ZigBee_GateWay //UpDate:2017/05/20 //------------Declare-CC2530-------------------------------------------------- #include <SoftwareSerial.h> SoftwareSerial myzigbee(a1, A2); // RX, TX #define Kit1Channel 12 #define Kit1Panid 0x0510 #define Kit1Addr 0x2000 #define RECV_MAX 32 uint8_t RecvBuf[RECV_MAX]; uint8_t RecvLen; int RecvCount; //-------Declare-OLED---------------------------------------------------- #include <OLED.h> OLED myoled; void setup() { //=============Setup ZigBee ============================== myzigbee.begin(9600); Serial.begin(9600); Zigbee_setup(Kit1Channel, Kit1Panid, Kit1Addr); RecvCount = 0; RecvLen = 0; //-------Setup-set OLED FONT_8x16 --------------------------------------------- myoled.begin(font_8x16); //FONT_6x8, FONT_8x16 myoled.clearscreen(); myoled.println("pc_zb_gateway"); 7

myoled.println("pid:b217"); } void loop() { char ch; if (myzigbee.available() > 0) { myoled.setposi(4, 0); ch = myzigbee.read(); Serial.write(ch); myoled.print(ch); } myoled.setposi(6, 0); if (Serial.available() > 0) { ch = Serial.read(); myzigbee.write(ch); myoled.print(ch); } //delay(1000); } //------------------------------------------------------------------------------ void Zigbee_setup(uint8_t channel, uint16_t panid, uint16_t addr) { int i, len; // get Channel/PAN ID/Address myzigbee.write(0xaa); myzigbee.write(0xc7); myzigbee.write(0xbb); delay(30); // set Channel/PAN ID/Address myzigbee.write(0xaa); myzigbee.write(0xc7); myzigbee.write(0x5a); myzigbee.write(channel); myzigbee.write(panid >> 8); 8

} myzigbee.write(panid & 0xff); myzigbee.write(addr >> 8); myzigbee.write(addr & 0xff); myzigbee.write(0xbb); 9

(2). 三軸發送訊號程式 //Ex08_ADXL //------------Declare-CC2530-------------------------------------------------- #include <SoftwareSerial.h> SoftwareSerial myzigbee(a1, A2); // RX, TX #define Kit1Channel 12 #define Kit1Panid 0x0510 #define Kit1Addr 0x2002 #define RECV_MAX 32 uint8_t RecvBuf[RECV_MAX]; uint8_t RecvLen; int RecvCount; //-------Declare--ADXL345----------------------- #include <SoftwareWire.h> #include <ADXL345.h> #define SDA_PIN A4 ///< pin for SDA #define SCL_PIN A5 ///< pin for SCL ADXL345 adxl; char ADXL_Data[18]; // 存放三軸全部字串資料 void Read_ADXL345(); // 讀取三軸值的函式 uint16_t ix; // X 軸值 uint16_t iy; // Y 軸值 uint16_t iz; // Z 軸值 char sx; // X 軸正負號 char sy; // Y 軸正負號 char sz; // Z 軸正負號 //-------Declare-OLED---------------------------- #include <OLED.h> 10

OLED myoled; //------------------------------------------------------------------------------ void setup() { //=============Setup ADXL 345================ adxl.begin(sda_pin, SCL_PIN); //=============Setup ZigBee ============================== myzigbee.begin(9600); Serial.begin(9600); Zigbee_setup(Kit1Channel,Kit1Panid,Kit1Addr); RecvCount=0; // ====== Setup OLED ============== myoled.begin(font_8x16); //FONT_6x8, FONT_8x16 myoled.clearscreen(); myoled.println("ex08_adxl"); } void loop() { Read_ADXL345(); myoled.setposi(2,0); myoled.println(adxl_data); Serial.print("X:"); Serial.print(sX); Serial.println(iX); myzigbee.print("x:"); myzigbee.print(sx); myzigbee.println(ix); delay(200); Serial.print("Y:"); Serial.print(sY); Serial.println(iY); myzigbee.print("y:"); myzigbee.print(sy); myzigbee.println(iy); delay(200); Serial.print("Z:"); 11

Serial.print(sZ); Serial.println(iZ); myzigbee.print("z:"); myzigbee.print(sz); myzigbee.println(iz); delay(200); } void Read_ADXL345() { uint16_t buf[3]={0,0,0}; uint16_t X0, X1, Y0, Y1, Z1, Z0; X0 = adxl.getdata(0x32); // ã? X É x? àüå X1 = adxl.getdata(0x33); // ã? X É? x? àüå buf[0]= ((X1 << 8) X0) ; Y0 = adxl.getdata(0x34); // ã? Y É x? àüå Y1 = adxl.getdata(0x35); // ã? Y É? x? àüå buf[1] = ((Y1 << 8) Y0) ; Z0 = adxl.getdata(0x36); // ã? Z É x? àüå Z1 = adxl.getdata(0x37); // ã? Y É? x? àüå buf[2] = ((Z1 << 8) Z0) ; delay(500); for (int i=0;i<3;i++) { if ((buf[i] & 0x8000) == 0x8000) { buf[i] = 65535-buf[i]; ADXL_Data[5*i] =' '; ADXL_Data[5*i+1] ='-'; ADXL_Data[5*i+2]=( buf[i]/100)+'0'; ADXL_Data[5*i+3]=( buf[i]/10%10)+'0'; ADXL_Data[5*i+4]=( buf[i]%10)+'0'; } else 12

{ ADXL_Data[5*i] =' '; ADXL_Data[5*i+1] ='+'; ADXL_Data[5*i+2]=( buf[i]/100)+'0'; ADXL_Data[5*i+3]=( buf[i]/10%10)+'0'; ADXL_Data[5*i+4]=( buf[i]%10)+'0'; } } ADXL_Data[0]='X';ADXL_Data[5]='Y';ADXL_Data[10]='Z'; ix=buf[0];iy=buf[1];iz=buf[2]; sx=adxl_data[1];sy=adxl_data[6];sz=adxl_data[11]; } //------------------------------------------------------------------------------ void Zigbee_setup(uint8_t channel,uint16_t panid,uint16_t addr) { int i,len; } // get Channel/PAN ID/Address myzigbee.write(0xaa); myzigbee.write(0xc7); myzigbee.write(0xbb); delay(30); // set Channel/PAN ID/Address myzigbee.write(0xaa); myzigbee.write(0xc7); myzigbee.write(0x5a); myzigbee.write(channel); myzigbee.write(panid>>8); myzigbee.write(panid&0xff); myzigbee.write(addr>>8); myzigbee.write(addr&0xff); myzigbee.write(0xbb); 13

2.VB 程式碼 Imports System Public Class Form1 Dim DX Dim DY Dim DZ Dim testnum = 30 Dim SX = 0 Dim SY = 0 Dim SZ = 0 Dim ERR_X = 60 Dim Seat = New Integer() {270, 110, -65} Dim Lay = New Integer() {0, 0, 0} Dim walk = New Integer() {0, 0, 0} Dim Standup = New Integer() {0, 0, 0} Dim Falls = New Integer() {0, 0, 0} Dim Getup = New Integer() {0, 0, 0} Dim active1 = New Integer() {0, 0, 0} Dim count ' 坐姿平均 ' Dim ay1 = -85 Dim ay2 = -65 Dim ax1 = 255 Dim ax2 = 285 Dim az1 = -95 Dim az2 = -70 Dim by1 = -100 Dim by2 = -80 Dim bx1 = 80 Dim bx2 = 180 Dim bz1 = -310 Dim bz2 = -210 14

Dim cy1 = 18 Dim cy2 = 28 Dim cx1 = 210 Dim cx2 = 220 Dim cz1 = 135 Dim cz2 = 145 Dim dy1 = -120 Dim dy2 = -80 Dim dx1 = 210 Dim dx2 = 230 Dim dz1 = -120 Dim dz2 = --80 Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged SerialPort1.PortName = ComboBox1.Items(ComboBox1.SelectedIndex) SerialPort1.Open() Timer1.Enabled = True End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load For Each sp As String In My.Computer.Ports.SerialPortNames ComboBox1.Items.Add(sp) Next End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Dim RXD$ = SerialPort1.ReadExisting() If RXD$ <> "" Then Label2.Text = RXD$ If Mid(RXD$, 1, 2) = "X:" Then Label4.Text = Mid(RXD$, 3, 4) Label9.Text = Val(Mid(RXD$, 3, 4)) 15

If Val(Mid(RXD$, 3, 4)) <> 0 Then DX = Val(Mid(RXD$, 3, 4)) End If End If If Mid(RXD$, 1, 2) = "Y:" Then End Sub Label6.Text = Mid(RXD$, 3, 4) Label10.Text = Val(Mid(RXD$, 3, 4)) If Val(Mid(RXD$, 3, 4)) <> 0 Then DY = Val(Mid(RXD$, 3, 4)) End If End If If Mid(RXD$, 1, 2) = "Z:" Then Label8.Text = Mid(RXD$, 3, 4) Label11.Text = Val(Mid(RXD$, 3, 4)) If Val(Mid(RXD$, 3, 4)) <> 0 Then DZ = Val(Mid(RXD$, 3, 4)) End If End If End If Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ' SerialPort1.Write(TextBox1.Text) ERR_X = TextBox1.Text * 10 End Sub Private Sub GroupBox1_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox1.Enter End Sub Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click 16

SX = 0 SY = 0 SZ = 0 count = 0 Timer2.Enabled = True End Sub Timer3.Enabled = False Button4.Text = " 起動辨識 " Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick Label19.Text = count If count < testnum Then SX = SX + DX SY = SY + DY SZ = SZ + DZ 'ERR_Z = ERR_Z + Math.Abs((SZ / count) - DZ) count = count + 1 Else Label16.Text = SX / testnum Label17.Text = SY / testnum Label18.Text = SZ / testnum Select Case ListBox1.SelectedIndex Case 0 Seat(0) = SX / testnum Seat(1) = SY / testnum Seat(2) = SZ / testnum Case 1 walk(0) = SX / testnum walk(1) = SY / testnum walk(2) = SZ / testnum Case 2 Lay(0) = SX / testnum Lay(1) = SY / testnum 17

Lay(2) = SZ / testnum Case 3 Standup(0) = SX / testnum Standup(1) = SY / testnum Standup(2) = SZ / testnum Case 4 Falls (0) = SX / testnum Falls (1) = SY / testnum Falls (2) = SZ / testnum Case 5 Getup (0) = SX / testnum Getup (1) = SY / testnum Getup (2) = SZ / testnum Case 6 Active1(0) = SX / testnum Active1(1) = SY / testnum Active1(2) = SZ / testnum End Select Timer2.Enabled = False End If End Sub Private Sub Timer3_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer3.Tick If (DX > Seat(0) - ERR_X And DX < Seat(0) + ERR_X And DY > Seat(1) - ERR_X And DY < Seat(1) + ERR_X And DZ > Seat(2) - ERR_X And DZ < Seat(2) + ERR_X) Then Label12.Text = " 坐著 " ElseIf (DX > walk(0) - ERR_X And DX < walk(0) + ERR_X And DY 18

> walk(1) - ERR_X And DY < walk(1) + ERR_X And DZ > walk(2) - ERR_X And DZ < walk(2) + ERR_X) Then Label12.Text = " 走路 " ElseIf (DX > Lay(0) - ERR_X And DX < Lay(0) + ERR_X And DY > Lay(1) - ERR_X And DY < Lay(1) + ERR_X And DZ > Lay(2) - ERR_X And DZ < Lay(2) + ERR_X) Then Label12.Text = " 躺者 " ElseIf (DX > Standup(0) - ERR_X And DX < Standup(0) + ERR_X And DY > Standup(1) - ERR_X And DY < Standup(1) + ERR_X And DZ > Standup(2) - ERR_X And DZ < Standup(2) + ERR_X) Then Label12.Text = " 站者 " ElseIf (DX > Falls(0) - ERR_X And DX < Falls (0) + ERR_X And DY > Falls (1) - ERR_X And DY < Falls (1) + ERR_X And DZ > Falls (2) - ERR_X And DZ < Falls (2) + ERR_X) Then Label12.Text = " 跌倒 " ElseIf (DX > Getup(0) - ERR_X And DX < Getup (0) + ERR_X And DY > Getup (1) - ERR_X And DY < Getup (1) + ERR_X And DZ > Getup (2) - ERR_X And DZ < Getup (2) + ERR_X) Then Label12.Text = " 起床 " ElseIf (DX > active1(0) - ERR_X And DX < active1(0) + ERR_X And DY > active1(1) - ERR_X And DY < active1(1) + ERR_X And DZ > active1(2) - ERR_X And DZ < active1(2) + ERR_X) Then Else Label12.Text = " 動作 1" 19

Label12.Text = " 無法辨識 " End If End Sub Private Sub Button4_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click If Button4.Text = " 起動辨識 " Then Else Timer3.Enabled = True Button4.Text = " 停止辨識 " Button4.Text = " 起動辨識 " Timer3.Enabled = True End If End Sub Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged Label20.Text = ListBox1.SelectedIndex End Sub Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged Try ERR_X = TextBox1.Text * 10 Catch MsgBox(" 設定錯誤 ") 20

End Try End Sub Private Sub Label19_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label19.Click, Label20.Click End Sub End Class 21

表 1. 坐著數據表 第四章數據平均表 坐著第一次第二次第三次第四次第五次平均 X Y Z 7.3 7.97 10.4 10.23 10.63 9.31 217.07 216.8 219.67 217.33 217.97 217.77 105.57 103.5 94.5 110.4 105.6 103.91 圖九坐著實驗圖 22

表 2. 走路數據表 走路第一次第二次第三次第四次第五次平均 X Y Z 21.9 23.03 29.13 33.87 48.1 31.21 229.8 271.2 263.17 239.83 243.9 249.58-112 -134.27-137.93-126.43-114.6-125.05 圖十走路實驗圖 23

表 3. 躺著數據表 躺著第一次第二次第三次第四次第五次平均 X Y Z -80.77-81.33-82.2-82.9-90.07 83.45 34.7 34.8 35.6 37.6 33.97 35.33 194.97 193.9 195.13 194.43 193.87 194.46 圖十一躺著實驗圖 24

表 4. 站著數據表 走路第一次第二次第三次第四次第五次平均 X Y Z -2.43-1 1 1.3 1.7 0.15 282 255.07 254.63 255.2 247.3 258.84-87.6-89.53-93.63-94.73-89.67 91.03 圖十二站著實驗圖 25

表 5. 跌倒數據表 跌倒第一次第二次第三次第四次第五次平均 X Y Z 32 34.37 34.4 34.6 35.43 34.16 261.47 262.67 262.07 260.17 265.77 262.43-18.97-17.67-21.07-21.93-35.2-24.97 圖十三跌倒實驗圖 26

表 6. 起床數據表 起床第一次第二次第三次第四次第五次平均 X Y Z -75.47-77 -77.33-79.67-81.83-78.26 140 138.53 141.33 143 143.47 141.27 155.2 154.07 151.83 160.77 144.1 153.19 圖十四起床實驗圖 27

第五章結論 經過這一次專題的製作, 使我們了解到關懷老人生活安全的重要性, 因此花費了很多時間去研究 在動作監控方面, 提供老人居家健康照護也可以很自在, 減少使用者在家人不在時可以第一時間知道使用者的動作, 降低發生緊急事故機率, 而延誤緊急救援, 提升老人健康照護品質 28

參考文獻 1. https://zh.wikipedia.org/wiki/arduino 維基百科 Arduino 介紹 2. https://blog.csdn.net/ling3ye/article/details/51469152 凌順實驗室 3. https://www.arduino.cc/ Arduino 官網 4.http://newsletter.ascc.sinica.edu.tw/news/read_news.php?nid=2782 基本介紹 29

作者簡介 班級 : 電機三甲學號 :BD104025 姓名 : 吳亮穎工作 : 程式編寫與修改和購買心得 : 經過這次的專題製作讓我學習到如何與同學互相溝通, 一起合作完成一件事, 原本以為會很困難, 但經過多次的討論我們終於決定用 Arduino 來完成專題與實驗 班級 : 電機三甲學號 :BD10495 姓名 : 黃凱立工作 : 程式撰寫與書面報告整理心得 : 透過這次的專題製作, 讓我學習到 Arduino VB 如何修改程式內容, 雖還不太會至少有學習過, 完成製作很有成就感 30