01 本章實(shí)現(xiàn)功能介紹
追蹤外賣騎手的保溫箱的GPS定位信息以及外賣箱是否被人打開(kāi),以防止騎手在送餐時(shí)電動(dòng)車被盜竊或者外賣箱被人打開(kāi)偷竊外賣餐品,并實(shí)時(shí)監(jiān)控外賣箱內(nèi)的溫濕度數(shù)據(jù),并將它們上傳至機(jī)智云,然后我們就可以在遠(yuǎn)程通過(guò)手機(jī)App或者Web網(wǎng)頁(yè)端來(lái)訪問(wèn)相關(guān)的定位數(shù)據(jù)、外賣箱溫濕度環(huán)境數(shù)據(jù)、以及外賣箱是否被打開(kāi)。
03 材料清單名稱推薦購(gòu)買源資料下載
溫濕度傳感器模塊、NEO6M GPS模塊、自鎖開(kāi)關(guān)淘寶搜索”ShineBlink“店鋪有售,或者任意其他店鋪(功能相似即可)shineblink.com
黑色底板該底板只是為了省掉接杜邦線,讓外觀好看一些,不是必需品,開(kāi)發(fā)者如果沒(méi)有可以用杜邦線來(lái)替代。如果仍想獲取該底板,有如下兩種方式:(1)通過(guò)右邊提供的PCB工程資料自己打樣PCB制作即可(2)通過(guò)聯(lián)系微信號(hào)“shine_blink”免費(fèi)獲取空板PCB自己焊接也可(如果還有的話)底板PCB工程下載地址
04 硬件端完整源代碼
--使能USB print輸出打印
LIB_UsbConfig(“CDC”)
--機(jī)智云平臺(tái)為每個(gè)產(chǎn)品類別分配的唯一PK和PS,一定要改成您自己的PK和PS
PK = “76841a997f134f06ab97698a12104e02”
PS = “26ab8338463a4786838e43dc0043cf74”
--初始化4G模塊
LIB_Giz4GConfig(PK,PS,1000,120,“UART0”,“D5”,“HIGH”,“D6”,“HIGH”)
--設(shè)置D0口為上拉輸入,用來(lái)監(jiān)測(cè)外賣箱是否被打開(kāi)
LIB_GpioInputConfig(“D0”,“PULLUP”)
--設(shè)置sht3x傳感器占用SCL0和SDA0引腳,并啟動(dòng)傳感器以每秒出10個(gè)數(shù)據(jù)的頻率工作,repeatability=“HIGH”時(shí)精度最高
LIB_Sht3xConfig(“IIC0”,“10”,“HIGH”)
--配置NEO-6M GPS模塊開(kāi)始工作,占用TX1和RX1引腳,默認(rèn)每秒鐘自動(dòng)輸出一組GPS數(shù)據(jù)
LIB_NEO6MConfig(“UART1”)
--開(kāi)始大循環(huán)
while(GC(1) == true)
do
LIB_DelayMs(1000)
--每隔一秒向云發(fā)送外賣保溫箱是否被打開(kāi)的狀態(tài)
--這里看似一直再向云發(fā)送數(shù)據(jù),其實(shí)只有發(fā)生變化時(shí)才會(huì)實(shí)際發(fā)送
LIB_SendToGizCloud(“In1”, LIB_GpioRead(“D0”))
--查詢是否讀到溫濕度數(shù)據(jù)
sht3x_flag,sht3x_temp,sht3x_humi = LIB_Sht3xGetResult()
if sht3x_flag == 1 then
--打印讀到的溫濕度值,保留1位小數(shù)
print(string.format(“temp: %.1f
humi: %.1f”, sht3x_temp, sht3x_humi))
--向機(jī)智云服務(wù)器發(fā)送(溫濕度)(帶一位小數(shù))
LIB_SendToGizCloud(“Rf1”, sht3x_temp)
LIB_SendToGizCloud(“Rf2”, sht3x_humi)
end
--查詢是否解析到GPS數(shù)據(jù),注意GPS首次定位出數(shù)據(jù)的時(shí)間較長(zhǎng),大概有1分鐘左右
flag,lo,la,al,utc = LIB_NEO6MGetGpsData()
if flag == 1 then
--將讀取到的經(jīng)度、緯度、海拔、UTC時(shí)間打印輸出
print(string.format(“l(fā)ongtitue:%f latitue:%f altitue:%.0fm UTC:%d”, lo,la,al,utc))
--將從GPS獲取的時(shí)間設(shè)置為開(kāi)發(fā)板自身的系統(tǒng)時(shí)間
LIB_SetUtcTime(utc);
--向機(jī)智云服務(wù)器發(fā)送(經(jīng)緯度)(帶兩位小數(shù))
LIB_SendToGizCloud(“Rf3”, lo)
LIB_SendToGizCloud(“Rf4”, la)
--向機(jī)智云服務(wù)器發(fā)送(海拔高度,單位:米)(短型整數(shù))
LIB_SendToGizCloud(“Rs1”, math.floor(al))
end
end
上面代碼中出現(xiàn)的“LIB_”開(kāi)頭的庫(kù)函數(shù)的詳細(xì)介紹可以在shineblink.com網(wǎng)站上的API文檔中查詢。
05 機(jī)智云接入和App開(kāi)發(fā)(三個(gè)選擇)
選擇一:機(jī)智云+通用版App訪問(wèn)設(shè)備(難度最低)
通過(guò)《騎手保溫箱追蹤及溫濕度監(jiān)測(cè)(4G版):(上)4G設(shè)備接入機(jī)智云教程》我們可以很快掌握機(jī)智云的接入流程,并使用現(xiàn)成的通用版機(jī)智云App即可很快的實(shí)現(xiàn)手機(jī)App遠(yuǎn)程訪問(wèn)我們的開(kāi)發(fā)板。缺點(diǎn)就是通用版App的UI頁(yè)面看起來(lái)不夠?qū)I(yè)。
本例中我們使用了“Rf1”,“Rf2”,“Rf3”,“Rf4”,“Rs1”這五個(gè)數(shù)據(jù)點(diǎn)分別作為溫度,濕度,經(jīng)度,緯度,海拔高度這五個(gè)值的上傳數(shù)據(jù)通道,記得在機(jī)智云平臺(tái)修改相應(yīng)的數(shù)據(jù)點(diǎn)的名稱。
選擇二:機(jī)智云+零代碼定制版App訪問(wèn)設(shè)備(難度較低)
在選擇二之前,必須完成上面選擇一的工作,然后參考《賽博坦零代碼App開(kāi)發(fā)(4G版)》教程實(shí)現(xiàn)定制版App訪問(wèn)設(shè)備。開(kāi)發(fā)好以后的頁(yè)面如下:
選擇三:定制化開(kāi)發(fā)App或微信小程序(難度較高)
如果有一定開(kāi)發(fā)能力,開(kāi)發(fā)者可以考慮在機(jī)智云免費(fèi)提供的開(kāi)源代碼上做一定的定制開(kāi)發(fā)形成自己的App。
如果開(kāi)發(fā)者希望開(kāi)發(fā)一個(gè)專屬的App,機(jī)智云也會(huì)提供代碼開(kāi)源的安卓和IOS SDK框架,幫助開(kāi)發(fā)者快速完成App開(kāi)發(fā),開(kāi)發(fā)者僅需關(guān)注App的UI和UE設(shè)計(jì)即可,而相對(duì)復(fù)雜的協(xié)議與錯(cuò)誤處理等事項(xiàng)可忽略。關(guān)于開(kāi)源SDK的介紹和獲取請(qǐng)登錄docs.gizwits.com 了解
責(zé)任編輯:haq
-
硬件
+關(guān)注
關(guān)注
11文章
3482瀏覽量
67463 -
代碼
+關(guān)注
關(guān)注
30文章
4900瀏覽量
70663 -
機(jī)智云
+關(guān)注
關(guān)注
3文章
616瀏覽量
26835
原文標(biāo)題:騎手保溫箱追蹤及溫濕度監(jiān)測(cè)(4G版)(下):硬件開(kāi)發(fā)和項(xiàng)目演示(視頻版)
文章出處:【微信號(hào):IoTMaker,微信公眾號(hào):機(jī)智云開(kāi)發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
STM32項(xiàng)目分享:智能家居(機(jī)智云)升級(jí)版

物聯(lián)網(wǎng)智能家居方案-基于Nucleo-STM32L073&機(jī)智云實(shí)例項(xiàng)目打包下載
基于STM32 HAL庫(kù)與標(biāo)準(zhǔn)庫(kù)的esp8266接入機(jī)智云方案(二)

基于STM32 HAL庫(kù)與標(biāo)準(zhǔn)庫(kù)的ESP8266接入機(jī)智云方案(一)

物聯(lián)網(wǎng)智能家居方案-基于Nucleo-STM32L073&機(jī)智云 項(xiàng)目實(shí)例
STM32與機(jī)智云連接實(shí)現(xiàn)步驟與技巧(下篇):機(jī)智云代碼移植與優(yōu)化

STM32與機(jī)智云連接實(shí)現(xiàn)步驟與技巧(上篇)

字節(jié)跳動(dòng)扣子AI工坊硬件專場(chǎng)四城聯(lián)動(dòng),機(jī)智云引領(lǐng)AI+IoT創(chuàng)新變革

STM32項(xiàng)目分享:智能臺(tái)燈(機(jī)智云)系統(tǒng)

機(jī)智云推出集成Deepseek和豆包大模型的AIoT開(kāi)發(fā)平臺(tái)
STM32項(xiàng)目分享:機(jī)智云智慧農(nóng)業(yè)系統(tǒng)

STM32連接機(jī)智云,代碼移植,NTP實(shí)時(shí)時(shí)間獲取(一)

機(jī)智云開(kāi)源自動(dòng)化控制篇:溫濕度報(bào)警器

STM32F103 + ESP8266與機(jī)智云開(kāi)發(fā)常見(jiàn)問(wèn)題集錦:入門者必讀!

評(píng)論