李霖+李慶達+區(qū)善寧
【摘要】 我國已經(jīng)步入人口老齡化階段,然而我國的老年公寓建設(shè)依舊處于傳統(tǒng),落后的模式。隨著物聯(lián)網(wǎng)技術(shù)的逐漸興起,本項目設(shè)計了一款擁有智能化,高效化的老年公寓服務(wù)系統(tǒng),本文詳細介紹了老年公寓系統(tǒng)。
【關(guān)鍵字】 JAVAWEB 云平臺 STM32單片機
一、引言
中國的物聯(lián)網(wǎng)正處于逐漸興起狀態(tài),很多設(shè)計方案僅僅只是解決了用戶的基本功能,卻遠遠沒有達到智能化高,成本低,服務(wù)性強的智能家居產(chǎn)品。本項目的特點是通過大數(shù)據(jù)分析出老年人平時的生活習(xí)性,例如采集用戶每天第一次打開窗簾的數(shù)據(jù),將數(shù)據(jù)進行整合通過算法分析出精確的時間,當(dāng)用戶開啟智能模式后在睡眠時,當(dāng)達到該時間點系統(tǒng)將會自動打開窗簾,讓用戶起床的是被射進室內(nèi)的第一縷陽光,用戶可以通過響應(yīng)式布局的WEBAPP頁面,實時性的監(jiān)視室內(nèi)安全和了解室內(nèi)的環(huán)境數(shù)據(jù),通過這些數(shù)據(jù)用戶可以第一時間采取相應(yīng)的措施去高效的解決問題。由此可見本項目通過云存儲和云計算,將物聯(lián)網(wǎng)中的數(shù)據(jù)整合并精準(zhǔn)計算,體現(xiàn)出物聯(lián)網(wǎng)方向數(shù)據(jù)的應(yīng)用價值,并給老年人呈現(xiàn)出一種科技感極強,幸福感高的智能家居應(yīng)用。
二、研究意義
本項目旨在于設(shè)計一個低成本,高效率,體驗度高基于云平臺的智能服務(wù)性系統(tǒng),推動老年公寓科技化建設(shè)的腳步,相比于普通的智能家居方案設(shè)計其優(yōu)點有三個。
1、對象存儲OSS是云平臺功能某部分,可以理解為一個靈活性高,存儲量大的存儲集群,數(shù)據(jù)可以自動備份多重冗余防止出現(xiàn)意外的數(shù)據(jù)丟失,提供多重的安全防護避免用戶日常數(shù)據(jù)被非法盜用,且成本低無需物業(yè)聘用服務(wù)器運維人員與托管費用,從而保證企業(yè)只需考慮業(yè)務(wù)需求中采集數(shù)據(jù),處理數(shù)據(jù)部分,而數(shù)據(jù)的持久化階段中的安全性,穩(wěn)定性全部交由云平臺去處理,實現(xiàn)了項目的快速開發(fā),降低企業(yè)成本,且極大的提高數(shù)據(jù)安全性。
2、WEBAPP實現(xiàn)的響應(yīng)式布局,可以自適應(yīng)于各種移動端與電腦屏幕,不需要團隊花費大量的時間成本與技術(shù)資源去即開發(fā)移動APP又開發(fā)和網(wǎng)頁的局面。
3、通過傳感器采集用戶習(xí)性數(shù)據(jù),并通過算法精準(zhǔn)計算數(shù)據(jù)因此來衡量用戶習(xí)性,從而自動向用戶推送服務(wù)給用戶一種被關(guān)懷的體驗。
三、項目架構(gòu)
3.1 項目總體架構(gòu):STM32、云平臺、JAVAWEB
STM32是一款微處理器可以內(nèi)部控制各種外設(shè)傳感器,由于STM32F的功耗遠低于CPU,所以能夠在一定程度上降低產(chǎn)品的功耗,這也正是其為什么能被稱為傳感器中央處理器(Sensor hub)的原因所在,因此利用STM32的可擴展性,低功耗做為硬件設(shè)計中的微處理器,本套系統(tǒng)通過STM32外接攝像頭,環(huán)境數(shù)據(jù)傳感器,繼電器,GPRS模塊,首先STM32將傳感器采集的數(shù)據(jù)進行內(nèi)部處理,用TCP/IP協(xié)議將硬件采集數(shù)據(jù)通過GPRS模塊傳到JAVAWEB后臺,JAVAWEB后臺將接受到的數(shù)據(jù)依據(jù)項目中所需求的業(yè)務(wù)邏輯二次處理,再通過JAVAWEB前端實現(xiàn)了公寓內(nèi)實時的數(shù)據(jù)可視化和設(shè)備遠程控制功能,而云平臺相當(dāng)于一個容納JAVAEE的服務(wù)器,去保證項目的安全性,穩(wěn)定性。
3.2 云平臺產(chǎn)品選擇
每個公司下的云平臺都提供多種產(chǎn)品服務(wù),本項目選擇的是阿里云旗下的產(chǎn)品服務(wù),其中主要選擇了ECS、CDN、OSS、SLB,將傳統(tǒng)項目中單臺服務(wù)器跑整個應(yīng)用程序,分離成不同功能在不同服務(wù)器中。
ECS:本質(zhì)就是一個服務(wù)器,運行在云上的一個服務(wù),主要作用做大數(shù)據(jù)處理,跑本項目程序。
CDN:分布式的緩存服務(wù)器,可以加速項目中靜態(tài)文件加載,達到了緩解網(wǎng)站高并發(fā)下帶寬瓶頸的尷尬,緩解服務(wù)器的IO壓力。
OSS:文件存儲服務(wù)器,將采集的數(shù)據(jù)持久化便于數(shù)據(jù)的存取。
SLB:均衡負載。
四、在JAVAWEB上進行核心設(shè)計的設(shè)計模式
Model(模型):屬于MVC設(shè)計模式的M,在WEB服務(wù)器中,用JAVA語言編寫項目中相關(guān)的數(shù)據(jù)類,將項目中復(fù)雜的數(shù)據(jù)拆分成獨立的模塊,把相似的數(shù)據(jù)屬性封裝在JAVA類中,利用了JAVA中面向?qū)ο蟮脑O(shè)計思想,使項目中數(shù)據(jù)傳輸邏輯更清晰且簡化開發(fā)難度,在本項目中模型數(shù)據(jù)對象負責(zé)在云平臺下的OSS進行存取數(shù)據(jù)。
View(視圖):屬于MVC設(shè)計模式中的V,依據(jù)創(chuàng)建模型數(shù)據(jù),處理數(shù)據(jù)顯示的部分負責(zé)在WEB前端進行數(shù)據(jù)可視化,在本項目中采用了WEBAPP的響應(yīng)式布局,使WEB前端不僅能在電腦顯示器上進行數(shù)據(jù)展示,還可以在Ipad,手機移動端等設(shè)備中根據(jù)設(shè)備的分辨率進行自適應(yīng),降低了前端設(shè)計的復(fù)雜度。
Controller(控制器):屬于MVC設(shè)計模式中的C,是處理業(yè)務(wù)邏輯的主要部分,用戶通過編寫自己定義的JAVA類向模型數(shù)據(jù)對象發(fā)送數(shù)據(jù),在本項目中我們定義與業(yè)務(wù)邏輯相關(guān)的JAVA類,接收硬件通過TCP/IP協(xié)議發(fā)送的數(shù)據(jù)并進行相應(yīng)的業(yè)務(wù)處理,把數(shù)據(jù)發(fā)送到相匹配的模型數(shù)據(jù)中,然后通過自己封裝的阿里云開放的API(接口)工具類,利用工具類將數(shù)據(jù)存儲到OSS中,實現(xiàn)了數(shù)據(jù)的持久化,從而通過工具類進行數(shù)據(jù)的存取。