中文 | English

【物聯網開發系列】感測裝置上傳雲端主機篇

  • 文/曹永忠

本篇是「物聯網開發系列」系列中的第六篇,前文在此:12345

接下來會使用 DHT22 溫濕度感測器,配合 Wifi 開發版,連接 Wifi 熱點,透過 php 連接資料的方式,將溫濕度逐一著墨,請讀者拭目以待。不過本文主要先介紹資料庫使用,資料表建立與建立對應資料庫使用者與對應權限設定。

建立mySql連線程式

首先,我們參照:【物聯網開發系列】雲端主機資料表建置與權限設定篇之內容,在網頁主機目錄;/ Connections,新增一個 iotcnn.php 檔案,內容如下。

如下表所示,主要內容是使用 iot 使用者,建立 $connection 的 mysql 連線,並切換目前使用的資料庫到 iot 資料庫。

Table 1:mySql 連線程式

建立資料上傳程式

首先,我們參照:如何使用 Linkit 7697 建立智慧溫度監控平台()(曹永忠, 2017b)與如何使用LinkIt 7697建立智慧溫度監控平台()內容,例用 php 撰寫在網頁主機目錄;/ dht22p,新增一個 dht22add.php 檔案,內容如下。

如下表所示,主要內容利用 http get 的方法,將感測裝置的溫度用 f1 參數傳回,另一個是將感測裝置的濕度用 f2 參數傳回,在 dht22p 程式中,將這兩個變數組成 SQL 新增資料的字串,用 mysql_query ($query,$link) 的方式送到 mySQL 資料庫。

Table 2:mySql 連線程式

我們將上面程式,上傳到雲端主機上,如下圖所示,請在瀏覽器網址列輸入網址:http://192.168.88.88:8888/dht22p/dht22add.php?f1=21&f2=98.5

如下圖所示,我們可以得到畫面回應「INSERT INTO dhttbl (temperature,humidity) VALUES  (21,98.5)」的字串。

上傳資料測試畫面

如下圖所示,我們將畫面回應「INSERT INTO dhttbl (temperature,humidity) VALUES (21,98.5)」的字串,在  phpmyadmin 的 SQL 測試輸入這些字串,在 phpmyadmin 測試 SQL 字串。

在 phpmyadmin 測試 SQL 字串

如下圖所示,如果在 phpmyadmin 測試 SQL 字串正常執行,我們就可以確定裝置上傳程式正確無誤。

在 phpmyadmin 測試 SQL 字串正常執行

組立電路

如下圖所示,我們將 DHT22 溫濕度感測模組,整合 Arduino MKR1000 開發版,如下所示,組立電路。

DHT22 電路組立圖

如下圖所示,我們將 Arduino 開發板的驅動程式安裝好之後,我們打開 Arduino 開發板的開發工具:Sketch IDE 整合開發軟體,撰寫一段程式,如下表所示之溫濕度裝置上傳程式與 include 檔,編譯完成後上傳到 Arduino MKR1000 開發版。

Table 3:溫濕度裝置上傳程式

 

Table 4:溫濕度裝置上傳程式(include檔)

 

監控視窗畫面如下圖所示,程式編譯完成後,完成上傳後,我們從 Arduino 開發板的開發工具:Sketch IDE 的監控視窗下圖畫面,我們可以看到程式執行。

接下來我們透過 phpmysql 軟體,是否已經把資料上傳到雲端,如下圖所示,我們看到溫濕度裝置已經上傳感測資料到雲端了。

查詢 dhttbl 資料表

如果我們可以看到dhttbl資料表執行「SELECT * FROM `dhttbl`」成功回傳許多資料,代表我們已經讓溫濕度裝置上傳感測資料到雲端了。

後續

本篇是「物聯網開發系列」系列中的第六篇:感測裝置上傳雲端主機篇,筆者已經告訴讀者,從建立感測器資料上傳的對應的資料表與對應權限設定,到 php 連接資料的方式,最後整合出溫濕度裝置,並完成上傳感測資料到雲端。

後續筆者還會繼續發表「物聯網開發」系列的文章,在未來我們可以創造出更優質,更具未來性的物聯網 (Internet of Thing:IOT) 產品開發相關技術。

敬請期待更多的文章。

作者介紹

曹永忠 (Yung-Chung Tsao):目前為自由作家,專注於軟體工程、軟體開發與設計、物件導向程式設計、物聯網系統開發、Arduino 開發、嵌入式系統開發,商品攝影及人像攝影。長期投入資訊系統設計與開發、企業應用系統開發、軟體工程、物聯網系統開發、軟硬體技術整合等領域,並持續發表作品及相關專業著作。

Email:prgbruce@gmail.com/Line ID:dr.brucetsao/作者網頁臉書社群(Arduino.Taiwan)Github 網站Youtube

參考文獻

分享到社群

曹永忠

曹永忠 (Yung-Chung Tsao) ,目前為自由作家暨專業Maker,專研於軟體工程、軟體開發與設計、物件導向程式設計,商品攝影及人像攝影。長期投入創客運動、資訊系統設計與開發、企業應用系統開發、軟體工程、新產品開發管理、商品及人像攝影等領域,並持續發表作品及相關專業著作。 Email:prgbruce@gmail.com Line ID:dr.brucetsao 作者網站:https://www.cs.pu.edu.tw/~yctsao/ 臉書社群(Arduino.Taiwan):https://www.facebook.com/groups/Arduino.Taiwan/ Github網站:https://github.com/brucetsao/ Youtube:https://www.youtube.com/channel/UCcYG2yY_u0m1aotcA4hrRgQ

This site or product includes IP2Location LITE data available from https://lite.ip2location.com.