• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于樹莓派+云服務器的網(wǎng)絡監(jiān)控及家居控制系統(tǒng)的研究與實際應用

      2016-11-09 19:07:04郝林煒梁穎
      物聯(lián)網(wǎng)技術 2016年9期
      關鍵詞:樹莓派智能家居

      郝林煒+梁穎

      摘 要:樹莓派(Raspberry Pi)卡片電腦原本是為學生計算機編程教育而設計開發(fā)的,自從其面世以來,樹莓派由于其強大的可擴展性及其優(yōu)異的性能在Geek圈以及物聯(lián)網(wǎng)行業(yè)受到廣泛關注。而目前“云計算”、“云存儲”等“云”是當下IT行業(yè)發(fā)展的方向。將這二者結(jié)合而開發(fā)出的遠程實時監(jiān)控以及遠程家居控制系統(tǒng)不論是從成本上,還是從其功能上都具有相當大的優(yōu)勢,同時還能給用戶帶來良好的用戶體驗。文中將使用目前相當流行的編程語言Java與Python來說明如何實現(xiàn)遠程實時影像監(jiān)控、室內(nèi)溫濕度檢測及監(jiān)控、家居電器控制等。

      關鍵詞:樹莓派;云服務器;智能家居;云

      中圖分類號:TP212.9 文獻標識碼:A 文章編號:2095-1302(2016)09-0045-03

      0 引 言

      在國內(nèi),智能家居、智能電器等新產(chǎn)品大量上市。而普通民用的物聯(lián)網(wǎng)設備往往需要購買昂貴的物聯(lián)網(wǎng)系統(tǒng)設備,這極大地阻礙了物聯(lián)網(wǎng)走向普通人家的道路。由于目前可用的互聯(lián)網(wǎng)設備以及它們所采用的軟件系統(tǒng)還有很多不人性化的細節(jié)及集成度不高等缺點,往往需要多個獨立設備結(jié)合使用。因此,價格低廉且開發(fā)、擴展方便的樹莓派便成為智能家居系統(tǒng)開發(fā)用機的不二選擇。

      1 硬件簡介

      1.1 樹莓派簡介

      樹莓派由英國慈善組織“Raspberry Pi基金會”開發(fā),原本是為學生計算機編程而設計的一種價格低廉的卡片電腦,但由于其使用開源易擴展的Linux操作系統(tǒng),性能較強,接口豐富,因此常用于物聯(lián)網(wǎng)等自動控制設備方面。本文將以樹莓派2代B型機作為開發(fā)機,它采用了Broadcom BCM2836作為其SOC(片上系統(tǒng)),CPU基于ARM Cortex-A7架構(gòu),共四個核心,運行頻率為9 00 MHz,具有1 GB LPDDR2 RAM。在接口方面,樹莓派擁有15-針頭MIPI相機 (CSI)界面,可被樹莓派相機 (無紅外線版)使用;4個USB2.0規(guī)范接口;MicroSD卡槽;17個GPIO及HAT規(guī)格鋪設。

      1.2 其他使用到的硬件

      考慮到智能家居需要靈活布置,因此樹莓派連接網(wǎng)絡使用USB無線網(wǎng)卡。在傳感器方面,使用溫濕度傳感器DHT11。在視頻監(jiān)控方面,使用樹莓派帶紅外線版CSI接口攝像頭。除此之外,使用繼電器控制家居的開關。DHT11數(shù)字溫濕度傳感器如圖1所示。

      2 系統(tǒng)設計方案

      2.1 系統(tǒng)總體設計方案

      整個系統(tǒng)包含服務器端與樹莓派客戶端。服務器負責存儲數(shù)據(jù)、提供數(shù)據(jù)查詢接口、提供控制家居的接口。樹莓派客戶端負責讀取傳感器數(shù)據(jù)、發(fā)送從攝像頭獲得的圖像以及對家居(開/關)的控制。系統(tǒng)總體結(jié)構(gòu)圖如圖2所示。

      2.2 硬件設計方案

      硬件設計方案主要將傳感器、繼電器與樹莓派的GPIO接口相連,樹莓派讀取傳感器獲取的數(shù)據(jù),并通過控制繼電器的開/關來控制家電的開關狀態(tài)。樹莓派GPIO接口定義如圖3所示。

      DHT11接線示意圖如圖4所示。將DHT11傳感器的2號針腳(DATA針腳)與樹莓派GPIO針腳相連以進行數(shù)據(jù)傳輸;1號針腳(VCC針腳)與樹莓派3 V正極供電連接;4號針腳接樹莓派GND作為地線。

      3 軟件設計方案

      樹莓派端主要使用Python編程語言。使用基于Linux的Raspbian操作系統(tǒng)中的Rpi.GPIO Python庫來對傳感器、繼電器等連接在GPIO接口的設備進行讀取和控制;使用MySQLdb庫讀取云數(shù)據(jù)庫中的數(shù)據(jù)并將傳感器數(shù)據(jù)寫入云數(shù)據(jù)庫。遠程監(jiān)控方面使用C語言編寫的mjpg-streamer將攝像頭獲取的畫面進行編碼并建立可訪問的服務器,使用戶通過http協(xié)議訪問獲得監(jiān)控畫面。

      服務器端使用開源的MariaDB作為數(shù)據(jù)庫,該數(shù)據(jù)庫作為MySQL的開源版本,應用廣泛。服務器使用Tomcat,服務器端的編寫使用Java語言,運用SSH框架實現(xiàn)服務器端的軟件功能。

      4 云服務器端軟件實現(xiàn)

      4.1 云服務器環(huán)境框架

      服務器端采用Tomcat+MariaDB架構(gòu),使用目前流行的SSH(Struts,Spring,Hibernate)框架搭建服務器端的軟件。MariaDB負責存儲整個系統(tǒng)產(chǎn)生的數(shù)據(jù),包括溫度、濕度、家居的開關狀態(tài)及樹莓派的IP地址等。SSH框架負責系統(tǒng)的邏輯處理并提供REST風格的接口供客戶端調(diào)用。

      4.2 REST風格的API

      即提供訪問功能的URI(如開燈),客戶端使用GET方法請求http://example.com/smart/openlight此URI即可,方便客戶端的使用及編碼,因此在服務器中采用REST風格的API是實現(xiàn)客戶端與服務器端交互的不二之選。使用Struts2框架提供的action機制編寫對應的action操作控制數(shù)據(jù)庫中的家居狀態(tài)標識,樹莓派通過輪詢機制監(jiān)測家居狀態(tài)的更改進而做出相應的動作。

      5 樹莓派端軟件實現(xiàn)

      5.1 安裝操作系統(tǒng)

      從Raspberry Pi官方網(wǎng)站下載最新的Raspbian鏡像解壓得到img文件。將空白SD卡插入電腦,使用diskutil list命令確定SD卡的路徑,然后使用dd命令將img文件寫入SD卡,鏡像路徑為/Users/pi/Downloads/2016-03-18-raspbian-jessie.img,SD卡路徑為/dev/disk2,在終端中使用如下命令寫入磁盤鏡像:

      將已寫入系統(tǒng)的SD卡插入樹莓派的SD卡插槽并通電開機,在終端使用如下命令安裝Python操作MySQL數(shù)據(jù)庫的必要組件python-mysqldb:

      5.2 溫濕度傳感器軟件實現(xiàn)

      DHT11是一款數(shù)字信號輸出的溫濕度復合傳感器,其信號如圖6所示。每個DHT11出廠前都會在校驗室中校準,校準系數(shù)以程序的形式存在OTP內(nèi)存中。DHT11的原理圖以及在樹莓派上使用Python讀取DHT11信號關鍵代碼如下:

      j+=1

      5.3 家居控制軟件實現(xiàn)

      使用繼電器控制家居的開關。樹莓派通過輪詢方式每隔一定時間便會查詢云服務器數(shù)據(jù)庫家居狀態(tài)表,如果查詢到有相應的開關變化,通過控制與繼電器相連的GPIO輸出電平的高低來控制繼電器的開關以達到控制家居開關的目的。

      5.4 視頻監(jiān)控軟件實現(xiàn)

      樹莓派上提供了專供攝像頭使用的CSI接口,使得基于樹莓派的遠程視頻監(jiān)控系統(tǒng)成為可能,我們只需將攝像頭與樹莓派上的CSI接口相連并在系統(tǒng)設置raspconfig中開啟支持攝像頭的選項,攝像頭就可以正常使用了。

      由于遠程監(jiān)控需要通過互聯(lián)網(wǎng)遠程查看攝像頭所捕獲的畫面,因此我們還需要使用一款開源軟件——mjpg-streamer。mjpg-streamer從webcam攝像頭采集圖像,并將圖像以流的形式通過基于IP的網(wǎng)絡傳輸?shù)骄W(wǎng)絡瀏覽器。由于大部分編碼工作都是由攝像頭完成的,因此mjpg-streamer僅需要很少的CPU和內(nèi)存資源就可以工作,非常適用于功耗較低的樹莓派。

      mjpg-streamer使用C語言編寫,因此首先需要使用如下命令在樹莓派上安裝C編譯器cmake:sudo apt-get install cmake。除此之外,mjpg-streamer還需要jpeg編碼庫libjpeg8-dev的支持,同理,使用sudo apt-get install libjpeg8-dev在樹莓派上安裝該支持庫。

      要配置mjpg-streamer需經(jīng)過如下幾個步驟:

      (1)將mjpg-streamer的壓縮包解壓;

      (2)修改mjpg-streamer的配置文件,在樹莓派上用文本編輯器修改mjpg-streamer-master/mjpg-streamer-experimental/plugins/input_raspicam下的input_raspicam.c文件,根據(jù)自己的網(wǎng)絡帶寬調(diào)整監(jiān)控圖像的幀率(fps)以及分辨率(width和height);

      (3)編譯mjpg-streamer,將當前路徑移動到mjpg-streamer-experimental,使用make clean all命令進行編譯;

      (4)制作啟動腳本,方便開啟監(jiān)控,新建一個sh文件,將cd mjpg-streamer-master/mjpg-streamer-experimental./mjpg_streamer -i “./input_raspicam.so” -o “./output_http.so -w ./www”這兩條命令寫入文件并保存,使用 chmod 744命令賦予該文件可運行的權(quán)限;

      (5)將運行該腳本的命令加入/etc/init.d文件,使其開機自動運行。

      完成上述步驟后重啟樹莓派,通過瀏覽器訪問http://樹莓派的ip:8080即可查看實時監(jiān)控情況。

      6 結(jié) 語

      基于樹莓派+云服務器的解決方案能較好地實現(xiàn)從公網(wǎng)遠程控制智能家居及遠程實時視頻監(jiān)控,樹莓派的功耗和發(fā)熱極低,即使長時間運行也不會出現(xiàn)故障,而又因樹莓派采用Linux操作系統(tǒng),可擴展性高,易于在其基礎上開發(fā)出更多的功能模塊,且系統(tǒng)設計簡單、搭建方便、成本低廉,是普通家庭采用智能家居方案的絕佳選擇。

      參考文獻

      [1]瞿中,熊安萍,蔣溢.計算機科學導論(第3版)[M].北京:清華大學出版社,2010.

      (下轉(zhuǎn)第頁)

      (上接第頁)

      [2]Peter Norton.計算機導論(第 6 版)[M].楊繼萍,錢偉,等,譯.北京:清華大學出版社,2009.

      [3]郭衛(wèi)斌,楊建國.計算機導論[M].上海:華東理工大學出版社,2012.

      猜你喜歡
      樹莓派智能家居
      基于PLC的智能家居控制系統(tǒng)研究
      電子制作(2019年20期)2019-12-04 03:51:14
      智能家居發(fā)展或?qū)崿F(xiàn)彎道超車
      基于微信端的智能家居監(jiān)控系統(tǒng)的設計與實現(xiàn)
      智能安全防盜探測小車
      科教導刊(2016年27期)2016-11-15 22:32:51
      一種基于樹莓派的門禁系統(tǒng)快速構(gòu)建方法
      關于智能家居真正需求的探討
      煙草物流中心工業(yè)無線網(wǎng)絡安全監(jiān)測系統(tǒng)設計
      基于樹莓派的高清視頻播放器的設計與實現(xiàn)
      科技視界(2015年29期)2015-10-19 10:55:56
      基于嵌入式技術的農(nóng)村醫(yī)療系統(tǒng)設計
      智能家居的發(fā)展趨勢分析
      移動通信(2015年17期)2015-08-24 08:13:20
      黔西县| 泰来县| 伊宁县| 盐山县| 衢州市| 西宁市| 嘉善县| 涞水县| 诸暨市| 阳曲县| 阿拉善右旗| 鹤峰县| 米易县| 通许县| 陇川县| 陵川县| 民丰县| 八宿县| 威海市| 红原县| 固原市| 林周县| 无极县| 化隆| 蓬溪县| 晋宁县| 星子县| 孝昌县| 封丘县| 南召县| 鹤壁市| 枞阳县| 满洲里市| 泾阳县| 霞浦县| 武山县| 资溪县| 石狮市| 原平市| 洞口县| 抚顺县|