在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

4G氣象站的設計與實現

9GxC_IoTMaker ? 來源:機智云開發者 ? 作者:機智云開發者 ? 2022-08-27 11:17 ? 次閱讀

ShineBlink 是一款零門檻、零開發環境、低代碼的萬能物聯網智能硬件開發板

機智云開發者提供傻瓜式硬件上云、接App/小程序的能力

結合 ShineBlink 和 機智云 開發者即使不懂嵌入式物聯網開發、云和App開發,也能很快實現一款包含硬件、云和App的物聯網智能硬件。

一、本章實現功能介紹

Shinelink開發板通過采集PM2.5傳感器、紫外線傳感器、風速傳感器、雨滴感應傳感器、SHT溫濕度傳感器、氣壓傳感器采集數據,數據通過ML302(4G通信模塊)將數據上傳至機智云,之后我們就可以在遠程通過手機App或者Web網頁端來訪問這個氣象站測量的所有傳感器數據。

下圖是接線實物圖和App監測頁面:

58fe4c7e-25b5-11ed-ba43-dac502259ad0.png

5923a0aa-25b5-11ed-ba43-dac502259ad0.png

二、硬件端接線圖

593b10e6-25b5-11ed-ba43-dac502259ad0.png

注意:上面的電路傳感器比較多,要求給 ShineBlink 開發板提供5V的電源帶載能力至少大于1A。

三、材料清單

59530958-25b5-11ed-ba43-dac502259ad0.png

四、硬件端完整源代碼
--定義函數:將傳感器輸出電壓(單位:mv)轉換成紫外線指數indexfunction GetUvIndex(v)  if v < 50.0 then    index = 0  elseif v < 227.0 then    index = 1;  elseif v < 318.0 then    index = 2;  elseif v < 408.0 then    index = 3;  elseif v < 503.0 then    index = 4;  elseif v < 606.0 then    index = 5;  elseif v < 696.0 then    index = 6;  elseif v < 795.0 then    index = 7;  elseif v < 881.0 then    index = 8;  elseif v < 976.0 then    index = 9;  elseif v < 1079.0 then    index = 10;  else    index = 11  end  return indexend--使能USB print輸出打印LIB_UsbConfig("CDC")--機智云平臺為每個產品類別分配的唯一PK和PS,一定要改成您自己的PK和PSPK = "7ebaec64beaf4e389a2957f38711fcda"PS = "b4a4ef17dbf74463b0f1b3c525a8b8de"--初始化4G模塊LIB_Giz4GConfig(PK,PS,1000,120,"UART0","D5","HIGH","D6","HIGH")--配置A0-A3這四個電壓采集通道同時開始工作,當每個通道采集滿50個點時緩存滿,每個點的采集時間間隔為10msLIB_ADConfig(50,10000)--設置PM2.5傳感器占用TX1和RX1引腳LIB_ZPH04Config("UART1")--設置sht3x傳感器占用SCL0SDA0引腳,并啟動傳感器以每秒出10個數據的頻率工作,repeatability="HIGH"時精度最高LIB_Sht3xConfig("IIC0","10","HIGH")--設置BMP280氣壓計傳感器占用SCL1和SDA1引腳,并啟動傳感器以每秒輸出26.32組數據的頻率工作LIB_BMP280Config("IIC1")--開始大循環while(GC(1) == true)do  LIB_DelayMs(50)  --查詢是否讀到溫濕度數據產生  sht3x_flag,sht3x_temp,sht3x_humi = LIB_Sht3xGetResult()  if sht3x_flag == 1 then    --打印讀到的溫濕度值,保留2位小數    print(string.format("temp: %.2f
humi: %.2f", sht3x_temp, sht3x_humi))    --向機智云服務器發送(溫濕度)短整數型數值(舍去小數部分)    LIB_SendToGizCloud("Rs1", math.floor(sht3x_temp))    LIB_SendToGizCloud("Rs2", math.floor(sht3x_humi))  end  --查詢氣壓傳感器是否出數  flag, temprature, pressure = LIB_BMP280GetResult()  if flag == 1 then --如果傳感器此時有數據    --溫度值保留兩位小數,氣壓值去掉小數部分    print(string.format("temprature: %.2f pressure: %.0f Pa", temprature, pressure))    --向機智云服務器發送長整數型氣壓數值,單位:Pa    LIB_SendToGizCloud("RL7", math.floor(pressure))  end  --查詢是否讀到傳感器PM2.5  flag, pm25_val = LIB_ZPH04GetPM25()  if flag == 1 then    --打印讀到的PM2.5值,保留1位小數,單位:ug/m^3    print(string.format("PM2.5:%.1f", pm25_val))    --向機智云服務器發送(PM2.5)浮點型小數值(范圍應是-1000.0~5000.0)    LIB_SendToGizCloud("Rf1", pm25_val)  end  --查詢是否讀到A0端口的電壓采集值(風速)  A0_full_flag, A0_tab = LIB_ADCheckBufFull("A0")  --每當A0通道的緩存滿以后,計算緩存內的50個元素的平均值,并換算成電壓值  --由LIB_ADConfig(50,10000)可以算出,此處大概是50X10000us=0.5秒執行一次  if A0_full_flag == 1 then    SUM = 0    for i = 1, #A0_tab do --此處#A0_tab的值是50,表示A0_tab表內的元素個數      SUM = SUM + A0_tab[i]    end    AVER = SUM / #A0_tab --計算平均采樣值    --將A0通道的AD值轉換成實際電壓打印出來    out_voltage = AVER*3.6/4096.0    --打印出傳感器輸出的電壓值,保留小數點后兩位,單位V    print(string.format("wind voltage=%.2fV
", out_voltage))    --向機智云服務器發送(風速)浮點型小數值(范圍應是-1000.0~5000.0)    LIB_SendToGizCloud("Rf2", out_voltage)  end  --查詢是否讀到A1端口的電壓采集值(紫外線)  A1_full_flag, A1_tab = LIB_ADCheckBufFull("A1")  --每當A1通道的緩存滿以后,計算緩存內的50個元素的平均值,并換算成電壓值  --由LIB_ADConfig(50,10000)可以算出,此處大概是50X10000us=0.5秒執行一次  if A1_full_flag == 1 then    SUM = 0    for i = 1, #A1_tab do --此處#A1_tab的值是50,表示A1_tab表內的元素個數      SUM = SUM + A1_tab[i]    end    AVER = SUM / #A1_tab --計算平均采樣值    --將A0通道的AD值轉換成實際電壓打印出來    vol_mv = AVER*3600/4096.0    --打印出傳感器輸出的電壓值,保留小數點后兩位,單位mV    print(string.format("ultraviolet voltage=%.2fmV
", vol_mv))    uv_index = GetUvIndex(vol_mv)--將電壓轉換成紫外等級指數    --打印紫外線等級,0~11    print(string.format("ultraviolet level=%d
", uv_index))    --向機智云服務器發送紫外線等級,短整數型    LIB_SendToGizCloud("Rs3", uv_index)  end  --查詢是否讀到A2端口的電壓采集值(雨滴感應)  A2_full_flag, A2_tab = LIB_ADCheckBufFull("A2")  --每當A2通道的緩存滿以后,計算緩存內的50個元素的平均值,并換算成電壓值  --由LIB_ADConfig(50,10000)可以算出,此處大概是50X10000us=0.5秒執行一次  if A2_full_flag == 1 then    SUM = 0    for i = 1, #A2_tab do --此處#A2_tab的值是50,表示A2_tab表內的元素個數      SUM = SUM + A2_tab[i]    end    AVER = SUM / #A2_tab --計算平均采樣值    --將A0通道的AD值轉換成實際電壓打印出來    vol = AVER*3.6/4096.0    --打印雨滴傳感器輸出的電壓值,保留小數點后兩位,單位V    print(string.format("rain voltage=%.2fV
", vol))    --向機智云服務器發送(雨滴值)浮點型小數值(范圍應是-100.00~500.00)    LIB_SendToGizCloud("Rf3", vol)  endend
五、機智云接入和App開發

無論使用哪種方法實現APP控制,都必須先定義數據點。

本例中我們使用了"Rf1","Rf2","Rf3","Rs1","Rs2","Rs3","RL7"這七個數據點分別作為PM2.5,風速,雨滴,溫度,濕度,紫外線等級,大氣壓強這七個傳感器值上傳數據通道,記得在機智云平臺修改相應的數據點的名稱。

59a35a16-25b5-11ed-ba43-dac502259ad0.png

方法一:使用機智云測試APP

先在機智云開發者中心定義好數據點

隨后下載機智云測試APP

使用機智云測試APP掃描4G模塊二維碼

即可實現APP控制設備了。

具體過程可參考:

http://www.shineblink.com/html/gizwits/9_3_4GJoin/4GJoin.html

方法二:使用賽博坦工具零代碼定制版App

在機智云開發者中心定義好數據點后,

創建一個移動應用,定義相應的頁面信息

再關聯相應的智能產品,

即可實現定制版App訪問設備。

開發好以后的頁面如下:

5923a0aa-25b5-11ed-ba43-dac502259ad0.png

具體過程可參考:

http://www.shineblink.com/html/gizwits/9_4_4GJoinSaiBoTan/4GJoinSaiBoTan.html

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 物聯網
    +關注

    關注

    2927

    文章

    45964

    瀏覽量

    388829
  • 開發板
    +關注

    關注

    25

    文章

    5565

    瀏覽量

    102761
  • 氣象站
    +關注

    關注

    1

    文章

    767

    瀏覽量

    16099
  • 機智云
    +關注

    關注

    3

    文章

    609

    瀏覽量

    26750

原文標題:實操案例:基于Shineblink和機智云的4G氣象站

文章出處:【微信號:IoTMaker,微信公眾號:機智云開發者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    LabVIEW自動氣象站演示

    基于LabVIEW自動氣象站演示,包括可執行文件及源代碼
    發表于 04-01 21:59

    野外無人自動氣象站聯網方案

    準確性,實現利用精細化的城市內澇氣象預警服務系統為市排水集團排除積水服務。各地市氣象局不斷增設無人自動氣象站,以提高預報的精準度;無人自動氣象站
    發表于 12-28 17:13

    如何使用miniprog3設置氣象站

    你好,可以請人幫我,我想計劃的cy3271-exp1 PSoC氣象站板采用miniprog3這樣我可以把周圍的光強讀數然后發送閱讀通過串行命令我寫的一個應用程序并存儲的數據畫成了GR促性腺激素釋放
    發表于 04-15 08:32

    采用LabVIEW實現虛擬自動氣象站設計

    QLI50氣象數據采集器,實現虛擬自動氣象站設計。2 虛擬自動氣象站功能介紹  自動氣象站由傳感器、數據采集器、數據處理終端等組成。傳感器感
    發表于 04-16 09:40

    如何使用樹莓派制作小氣象站

    自動氣象站可以實時探測氣溫、濕度、氣壓、風速、風向、降雨量、紫外線輻射等氣象信息,通過不同的傳感器采集地面氣象數據,數據采集完成后通過網絡統一傳輸到氣象服務器上,再經
    發表于 05-19 07:59

    基于機智云gokit4.0(G)和MDM9206的 小型智能氣象站

    項目介紹小型氣象站廣泛應用于氣象、農業、環境檢測和治理等領域。小型氣象站對空氣溫濕度、光照、風速、風向、雨量、土壤濕度、蒸發量、大氣壓力等環境氣象要素進行全天候現場檢測。通過更換不同的
    發表于 07-19 16:18

    基于51單片機的氣象站系統功能描述

    基于51單片機的氣象站系統功能描述,使用51單片機實現氣象站的全部功能,如溫濕度、大氣壓強,光照度、風向、風強的檢測,并有LCD12864、GSM、整流穩壓等電路的部分。氣象站系統電路
    發表于 11-19 08:59

    分享一個氣象站項目

    描述氣象站 | 風向
    發表于 07-11 07:16

    Wemos Mini Di繼電器和氣象站

    描述Wemos Mini Di繼電器和氣象站Wemos D1 迷你轉接板,用于 3 個中繼或 2 個中繼+氣象站
    發表于 08-17 06:26

    小型氣象站是什么?一文淺談

    小型氣象站又叫自動氣象站、農業氣象站、校園氣象站
    的頭像 發表于 11-16 13:15 ?1970次閱讀

    何為氣象站氣象站有什么作用?

    氣象站,可以監測空氣溫濕度,風速風向,光照,大氣壓力,輻射度,降雨量等參數,根據使用場景可分為農業氣象站,校園氣象站,交通氣象站,環境監測站等。
    發表于 02-14 09:29 ?1257次閱讀

    氣象站的發展歷程和分類

    氣象站分為手持氣象站和無線遠程傳輸氣象站,手持氣象站又稱為便攜式氣象站,可移動監測不同環境的參數數值,遙測
    的頭像 發表于 04-10 09:09 ?1316次閱讀

    氣象站的設備有哪些?

    氣象站的設備有哪些? 推薦山東風途小型自動氣象站FT-QC4、FT-QC5、FT-QC6、FT-QC7、FT-QC8、FT-QC9、FT-QC10等,根據參數可定制不同氣象站設備,超
    的頭像 發表于 03-09 15:12 ?1411次閱讀
    <b class='flag-5'>氣象站</b>的設備有哪些?

    校園氣象站的功能和作用

    等。這些數據會通過4G方式上傳至環境監控平臺,用于分析和預測天氣情況,學校可以校園氣象站監測到的數據制定學生的戶外實踐課程。 ②數據記錄與傳輸 校園氣象站監測到的氣象數據可以被環境監控
    的頭像 發表于 09-01 17:11 ?1245次閱讀

    什么是氣象站氣象站的簡介

    什么是氣象站氣象站的簡介
    的頭像 發表于 09-14 16:14 ?1829次閱讀
    主站蜘蛛池模板: 精品国产第一国产综合精品gif | 国产精品福利在线观看免费不卡 | 美女被免费视频网站九色 | 欧美特黄一级视频 | 免费永久欧美性色xo影院 | 女同国产| 国产福利午夜 | 男生脱美女内裤内衣动态图 | 女的扒开尿口让男人桶 | 久久久久女人精品毛片 | 91黄色影院| www.色网| 亚洲天天看 | 天堂在线www天堂中文在线 | 91九色蝌蚪在线 | 2018天天干夜夜操 | 亚洲产国偷v产偷v自拍色戒 | 久久婷五月综合 | 久久久久久夜精品精品免费 | 99久久久久久久 | 欧美日剧在线免费 | 毛片网站网址 | 国产成人精品曰本亚洲78 | 男人的天堂在线视频 | 成人在线综合网 | 性做久久久久久久免费观看 | 成年人的毛片 | 99热色| 日本不卡在线观看免费v | 日本午夜色 | 国产精品a在线观看香蕉 | 伊人小婷婷色香综合缴缴情 | 特级一级黄色片 | 天天看天天摸天天操 | 毛片视频网址 | 色狠狠狠色噜噜噜综合网 | 欧美成人一区二区三区在线电影 | 日本免费看黄 | 高颜值大长腿美女啪啪 | 亚洲黄色高清视频 | 欧美大狠狠大臿蕉香蕉大视频 |