深圳市一天廣聯(lián)科技有限公司
參考價(jià): | 面議 |
- 產(chǎn)品型號(hào)
- 品牌
- 其他 廠商性質(zhì)
- 所在地
訪問次數(shù):240更新時(shí)間:2021-07-27 14:38:47
本方案以SQL數(shù)據(jù)庫存儲(chǔ)過程、表、記錄、PHP、Aja此方式適用于物聯(lián)網(wǎng)終端都安裝在同一地點(diǎn)的情況(例如某個(gè)機(jī)房、別墅等)。
在局域網(wǎng)內(nèi)使用一臺(tái)可以上網(wǎng)的電腦運(yùn)行DBGW數(shù)據(jù)庫網(wǎng)關(guān)軟件,所有物聯(lián)網(wǎng)終端都通過此電腦來操作網(wǎng)站空間的后臺(tái)數(shù)據(jù)庫,然后以PHP+HTML5網(wǎng)頁形式提供給手機(jī)、平臺(tái)等終端遠(yuǎn)程訪問。
租用的網(wǎng)站空間都已經(jīng)自動(dòng)建好了SQL數(shù)據(jù)庫和PHP運(yùn)行環(huán)境,而且成本很低,小型物聯(lián)網(wǎng)系統(tǒng)每年只需幾百塊錢費(fèi)用。網(wǎng)站空間服務(wù)器由服務(wù)商進(jìn)行維護(hù),不需要專人運(yùn)維。幾乎沒有部署難度。
2、 租用云服務(wù)器方案,擁有獨(dú)立公網(wǎng)IP,靈活性。
此方案適用于物聯(lián)網(wǎng)終端分散安裝在各地,統(tǒng)一連接至云服務(wù)器的情況。
低成本低配置云服務(wù)器方案
此方案中的云服務(wù)器僅用于數(shù)據(jù)轉(zhuǎn)發(fā),在云服務(wù)器只運(yùn)行DBGW數(shù)據(jù)庫網(wǎng)關(guān)軟件即可,但仍需要綁定公網(wǎng)IP。
同時(shí)再租用支持PHP+SQL數(shù)據(jù)庫的網(wǎng)站空間(虛擬主機(jī)),手機(jī)、平臺(tái)、電腦等終端通過此網(wǎng)站查詢數(shù)據(jù)、控制硬件。
物聯(lián)網(wǎng)終端通過寬帶或手機(jī)線路連接云服務(wù)器上的DBGW數(shù)據(jù)庫網(wǎng)關(guān)軟件來操作網(wǎng)站空間數(shù)據(jù)庫。云服務(wù)器上也可以運(yùn)行小型的Windows上位機(jī)軟件,來滿足特殊功能要求。幾乎沒有部署難度。
多合一高配置云服務(wù)器方案
在云服務(wù)器上同時(shí)運(yùn)行DBGW數(shù)據(jù)庫網(wǎng)關(guān)軟件、SQL數(shù)據(jù)庫、PHP網(wǎng)站,并且綁定公網(wǎng)IP和域名,部署難度與自建網(wǎng)站基本相同。
物聯(lián)網(wǎng)終端通過寬帶或手機(jī)線路連接云服務(wù)器上的DBGW數(shù)據(jù)庫網(wǎng)關(guān)軟件來操作數(shù)據(jù)庫。手機(jī)、平板、電腦通過云服務(wù)器上的PHP網(wǎng)站查詢數(shù)據(jù)、控制硬件。云服務(wù)器上也可以運(yùn)行Windows上位機(jī)軟件,來滿足特殊功能要求。
3、自建數(shù)據(jù)中心方案。
如果數(shù)據(jù)不宜存儲(chǔ)在第三方空間,則需要自建數(shù)據(jù)中心。需要單獨(dú)購買服務(wù)器、防火墻等硬件設(shè)備。并且租用專用線路。自行搭建軟硬件環(huán)境。成本很高,但是性能、可靠性、安全性均為。再配合物聯(lián)網(wǎng)終端使用,也可實(shí)現(xiàn)相同功能。
4、局域網(wǎng)內(nèi)自建服務(wù)器。
如果不允許接入公網(wǎng),可在局域網(wǎng)服務(wù)器上自行搭建數(shù)據(jù)庫和PHP運(yùn)行環(huán)境,再配合物聯(lián)網(wǎng)終端使用,也可實(shí)現(xiàn)相同功能。
三、實(shí)時(shí)動(dòng)態(tài)數(shù)據(jù)顯示
本節(jié)以temp溫度數(shù)據(jù)為例子來說明實(shí)時(shí)動(dòng)態(tài)顯示數(shù)據(jù)的原理。
首先由物聯(lián)網(wǎng)終端讀取溫度傳感器,得到溫度值25.4攝氏度,然后物聯(lián)網(wǎng)終端調(diào)用存儲(chǔ)過程upsensdata更新數(shù)據(jù)庫中的temp列值為25.4攝氏度。
使用PHP+Ajax+ HTML5技術(shù)編寫“設(shè)備狀態(tài)"網(wǎng)頁,將Ajax刷新周期設(shè)置為1.5秒(或所需的周期)。在手機(jī)、平板、電腦上打開“設(shè)備狀態(tài)"網(wǎng)頁后,此網(wǎng)頁將以1.5秒的頻率自動(dòng)從數(shù)據(jù)庫中讀取temp列值,然后實(shí)時(shí)顯示出來,其實(shí)時(shí)性和動(dòng)態(tài)效果與電腦端軟件*相同。
整個(gè)過程中無需物聯(lián)網(wǎng)平臺(tái)對(duì)接任何物聯(lián)網(wǎng)通訊協(xié)議,所有功能*通過數(shù)據(jù)庫實(shí)現(xiàn)。
四、通過PHP+數(shù)據(jù)庫實(shí)時(shí)控制硬件
本節(jié)以控制1路燈光為例子來說明實(shí)時(shí)控制原理。
首先用戶通過手機(jī)、平板、電腦打開“設(shè)備控制"網(wǎng)頁,然后將“機(jī)房1燈光"選擇為ON開燈。此操作會(huì)將數(shù)據(jù)表plc_ctrldata中的lightrelay列值設(shè)置為1,在選擇為OFF關(guān)燈時(shí)設(shè)置為0。同時(shí)將apply列值設(shè)置為1通知物聯(lián)網(wǎng)終端有新的控制數(shù)據(jù)。
物聯(lián)網(wǎng)終端以1秒的周期(或所需周期)調(diào)用get_ctrldata存儲(chǔ)過程,從plc_ctrldata表中讀取控制數(shù)據(jù)并判斷執(zhí)行。當(dāng)apply為1時(shí),物聯(lián)網(wǎng)終端判斷l(xiāng)ightrelay列值,如果為1接通繼電器1,如果為0斷開繼電器1。執(zhí)行成功后,再次調(diào)用get_ctrldata存儲(chǔ)過程,將apply列值設(shè)置為0,表示本次控制成功完成。
控制數(shù)據(jù)也可以是數(shù)值,例如通過“設(shè)備控制"將adjlightuart列設(shè)置為76,表示將燈光調(diào)至76%亮度。物聯(lián)網(wǎng)終端會(huì)將此值通過串口發(fā)送給調(diào)光控制器。
整個(gè)控制過程*通過PHP+數(shù)據(jù)庫實(shí)現(xiàn),無需平臺(tái)軟件對(duì)接任何協(xié)議。
五、由硬件數(shù)據(jù)觸發(fā)服務(wù)(例如二維碼掃碼控制)
典型的應(yīng)用是類似地鐵的二維碼掃碼控制。簡而言之,物聯(lián)網(wǎng)終端從二維碼掃描槍讀取到二維碼后,將二維碼數(shù)據(jù)傳遞給存儲(chǔ)過程并執(zhí)行,再由存儲(chǔ)過程返回控制數(shù)據(jù)給物聯(lián)網(wǎng)終端進(jìn)行控制,完成一次服務(wù)。
任何硬件數(shù)據(jù)都可以很方便的用于觸發(fā)服務(wù),例如從讀取二維碼數(shù)據(jù)、讀取IC卡數(shù)據(jù)、按下按鈕導(dǎo)致的開關(guān)量輸入變化、溫濕度模擬量變化等。
下圖簡單描述了如何快速完成此類應(yīng)用。首先物聯(lián)網(wǎng)終端從二維碼掃描器讀取數(shù)據(jù),并放進(jìn)變量2dbar,再將此變量賦值給SQLDB服務(wù)中的2bar。然后將2bar作為參數(shù)調(diào)用存儲(chǔ)過程get2dbarservice(紅線流程)。
數(shù)據(jù)庫執(zhí)行存儲(chǔ)過程get2dbarservice,并判斷2bar數(shù)據(jù)如果為open1,向物聯(lián)網(wǎng)終端返回opendoor=1,物聯(lián)網(wǎng)終端根據(jù)此結(jié)果,接通繼電器1,打開門1(綠線流程),
六、定時(shí)向數(shù)據(jù)庫添加歷史記錄數(shù)據(jù)
本節(jié)以物聯(lián)網(wǎng)終端每30分鐘向數(shù)據(jù)庫添加一條溫度歷史數(shù)據(jù)的例子來說明原理。
首先物聯(lián)網(wǎng)終端從傳感器讀取溫度數(shù)據(jù),并放進(jìn)變量temp。然后將此變量賦值給SQLDB服務(wù)中的數(shù)據(jù)庫列Temp。
接著從本機(jī)時(shí)鐘模塊讀取時(shí)間日期信息,判斷是否達(dá)到30分鐘間隔,如果達(dá)到間隔,將時(shí)間日期信息賦值給rectimedate列。
然后使用函數(shù)sql_procinsert調(diào)用存儲(chǔ)過程proc_insert向數(shù)據(jù)庫添加一條溫度記錄。sql_procinsert函數(shù)支持?jǐn)?shù)據(jù)補(bǔ)發(fā)。如果向數(shù)據(jù)庫添加數(shù)據(jù)失敗,此函數(shù)將數(shù)據(jù)存儲(chǔ)在物聯(lián)網(wǎng)終端的flash存儲(chǔ)區(qū)中,待通訊恢復(fù)后,自動(dòng)補(bǔ)發(fā)數(shù)據(jù)進(jìn)數(shù)據(jù)庫??梢源_保不丟失關(guān)鍵數(shù)據(jù)。
物聯(lián)網(wǎng)終端每隔30分鐘執(zhí)行一次上述操作,即可生成30分鐘一次的溫度歷史數(shù)據(jù)。此數(shù)據(jù)可以用于生成曲線圖、進(jìn)行大數(shù)據(jù)分析等用途。