0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OneNET Studio云STM32物聯(lián)網(wǎng)開發(fā)(2)- STM32+Air724UG(4G模組)數(shù)據(jù)采集顯示上報(bào)

楊榮國(guó) ? 來源:楊榮國(guó) ? 作者:楊榮國(guó) ? 2022-09-25 00:52 ? 次閱讀

實(shí)現(xiàn)效果視頻 (點(diǎn)擊可以觀看)

結(jié)合OneNET Studio云平臺(tái)STM32物聯(lián)網(wǎng)開發(fā)(1)- MQTT協(xié)議設(shè)備接入數(shù)據(jù)上報(bào)測(cè)試(https://blog.csdn.net/weixin_44862509/article/details/127015383) 這篇文章如圖1,圖1的1位置是在MQTTX上模擬和OneNET Studio云平臺(tái)連接以及在相應(yīng)的通道上上發(fā)數(shù)據(jù)以及接收數(shù)據(jù),

pYYBAGMvNEiAEEPNAAJzXFrIHro387.png

圖1

圖1的2位置是OneNET Studio 平臺(tái)上顯示的數(shù)據(jù),說明我已經(jīng)可以和云端進(jìn)行互動(dòng)數(shù)據(jù)了。
但是如何用手上的Air724UG(4G模組)如圖2,替代MQTTX軟件實(shí)現(xiàn)與OneNET云進(jìn)行通訊實(shí)現(xiàn)替代MQTTX用硬件將數(shù)據(jù)發(fā)送到云端顯示呢,以及如何用STM32單片機(jī)結(jié)合4G模組實(shí)現(xiàn)將數(shù)據(jù)自動(dòng)上發(fā)呢?

pYYBAGMvNFuAbpTDAB07mLWls-U346.png

圖2

第一步 獲取4G模組AT聯(lián)網(wǎng)設(shè)置信息如果需要設(shè)置4G模組,其實(shí)主要的工作和在MQTTX設(shè)置是一樣的,就是將于云服務(wù)器鏈接的賬號(hào)密碼以及產(chǎn)品和設(shè)備的信息以及通道信息通過AT指令寫入到4G模組硬件,所以如圖3結(jié)合上一篇文章找到以下信息:Client ID,Host,Port,Username,Password,以及屬性上報(bào)topic和屬性上報(bào)回復(fù)topic。找到信息如下:

poYBAGMvNG6AYq4AAAFBLy6-PTs785.png

圖3


Client ID:P0001
Host:studio-mqtt.heclouds.com
Port:1883
Username:i7ybqx3ZNk
Password:version=2018-10-31&res=products%2Fi7ybqx3ZNk%2Fdevices%2FP0001&et=--------gn=e5xZrxCdfmKkT1hndeWvmg%3D%3D
上報(bào)topic: $sys/i7ybqx3ZNk/P0001/thing/property/post
回復(fù)topic: $sys/i7ybqx3ZNk/P0001/thing/property/post/reply

第二步 通過4G模組DTU工具設(shè)置聯(lián)網(wǎng)信息:首先通過USB轉(zhuǎn)串口模塊與4G模組鏈接,并給4G模組通電實(shí)現(xiàn)4G模組可以接收電腦端串口調(diào)試助手下發(fā)的AT指令(可以根據(jù)大家在網(wǎng)上自行買的Air724UG 4G模組的方式配置鏈接,對(duì)于實(shí)現(xiàn)這一步的前提條件是你手上的4G模組是可以通過AT指令在電腦端的串口調(diào)試助手下發(fā)命令并且是有回復(fù)的,比如發(fā)送AT,回復(fù)OK)如圖4,

pYYBAGMvNHmAb4MJAAIs8Zi-Ce8292.png

圖4


將相關(guān)信息輸入到DTU小工具,如圖4的位置1是打開串口,位置2是選擇MQTT協(xié)議(上一篇文章我用的是MQTTX模擬該協(xié)議),位置3為設(shè)置的基本登入信息,位置4為小工具實(shí)際下發(fā)的AT指令。

pYYBAGMvNICAVmNoAAJBnRvlzUE664.png

圖5


以及圖5的位置1為回復(fù)topic,位置2位上報(bào)topic和位置3為對(duì)應(yīng)的AT指令。

第三步 實(shí)現(xiàn)4G模組聯(lián)網(wǎng):如圖6點(diǎn)擊圖6位置1通過AT指令重啟4G模組,可以看到4G模組對(duì)應(yīng)的指令燈從關(guān)閉到開啟說明重啟成功,位置2為4G模組與服務(wù)器鏈接成功的狀態(tài)回復(fù):“+STATUS: 1,MQTT CONNECTED”,這里很關(guān)鍵,只有回復(fù)了這個(gè)狀態(tài)才說明與服務(wù)鏈接成功,同時(shí)看到4G模組的LINK的指示燈是常亮。

poYBAGMvNIyAaxzeAANsbCYjJ3o435.png

圖6


如圖6的3位置為設(shè)備狀態(tài)為“在線”,其實(shí)到了這一步,大家有沒有覺得與我們?cè)诘谝黄恼陆榻B的MQTTX鏈接服務(wù)器一樣的感覺,如果感覺一樣,那就說明你真正開始領(lǐng)悟了。

第四步 通過4G模組發(fā)送數(shù)據(jù)到服務(wù)器:按指定的數(shù)據(jù)格式通過串口方式發(fā)送出去,如圖7的位置1位串口發(fā)送的內(nèi)容就是對(duì)應(yīng)屬性JSON格式要發(fā)送的數(shù)據(jù)(這里測(cè)試發(fā)送的時(shí)候我把時(shí)間戳修改了當(dāng)前的時(shí)間),圖7的位置2為服務(wù)器收到數(shù)據(jù)后回復(fù)接收成功的狀態(tài)信息,圖7的3位置看到OneNET Studio平臺(tái)顯示了我們發(fā)送上去的數(shù)據(jù)。

pYYBAGMvNJSAFfLvAAKy8gAHOBY237.png

圖7

第五步 STM32終端硬件功能:如圖8,圖8的1位置為12V電源輸入及5V和3.3V電壓降壓及擴(kuò)展模塊,2位置為STM32F103C8T6單片機(jī)核心板,3位置為Air724UG Cat1 4G模塊,4位置為DHT11溫濕度模塊,5位置為光敏電阻光線感應(yīng)模塊,6位置為L(zhǎng)CD12864液晶屏,7位置為杜邦線,8位置為4G模塊天線。

poYBAGMvNJ6AadQqACaphcneRXU138.png

圖8

圖9和圖10為數(shù)據(jù)在OneNET Studio云平臺(tái)展示界面,而且OneNET Studio平臺(tái)的數(shù)據(jù)接口是對(duì)外開發(fā)的,如果大家需要直接設(shè)計(jì)前端頁(yè)面可以直接獲取相關(guān)的接口數(shù)據(jù),通過以上8部分硬件模塊在杜邦線的連接下實(shí)現(xiàn)了功能如下。

pYYBAGMvNKWAPptaAAE5JWp1mPU012.png

圖9

poYBAGMvNK6Aa8C5AAEH77wdhGk412.png

圖10


這里我們暫且把這個(gè)作品稱為系統(tǒng),名稱為基于OneNET Studio云實(shí)現(xiàn)STM32農(nóng)業(yè)環(huán)境監(jiān)測(cè)Air724UG Cat1 4G傳輸系統(tǒng)。
1、STM32單片機(jī)每隔10秒通過DHT11溫濕度傳感器和GL5537光敏電阻傳感器采集農(nóng)業(yè)環(huán)境數(shù)據(jù)并在LCD12864液晶屏實(shí)時(shí)顯示;
2、每隔10S通過Air724UG Cat1 4G模塊將采集的溫度,濕度,光照值數(shù)據(jù)及當(dāng)前時(shí)間戳上報(bào)到OneNET Studio云平臺(tái)進(jìn)行展示,同時(shí)LED閃爍一次;
3、OneNET Studio云平臺(tái)將收集到數(shù)據(jù)以曲線及表格的方式展示并記錄數(shù)據(jù),同時(shí)向單片機(jī)下發(fā)數(shù)據(jù)接收狀態(tài),同時(shí)LED閃爍2次;

第六步 硬件電路接線說明:如圖11為硬件電路圖接口接線說明圖,按圖11的控制接口將溫濕度傳感器,光敏電阻傳感器,4G模塊發(fā)送數(shù)據(jù)給單片機(jī),液晶屏,LED接收單片機(jī)的控制數(shù)據(jù),這里說一點(diǎn)是電源部分,因?yàn)?G模塊需要12V供電,所以采用12V轉(zhuǎn)5V的模塊進(jìn)行連接同時(shí)將5V和3.3V擴(kuò)展出來方便給其他模塊供電。

pYYBAGMvNLeAJaC2AACEZUzrAa4711.png

圖11


模塊原理我想大家應(yīng)該都很熟悉了,因?yàn)槎际潜容^常用的模塊,大家獲取到我提供的源代碼后直接對(duì)著代碼和函數(shù)看程序就可以知道模塊怎么使用了。而且相信大家手上都直接或間接的單片機(jī)開發(fā)板對(duì)于本系統(tǒng)所用到的都是比較常見的模塊所以大家這部分可以直接補(bǔ)習(xí),如果任然有疑問的可以和我交流。

第七步 關(guān)鍵程序段分析:如圖12為程序主函數(shù)的內(nèi)容,可以看到程序非常簡(jiǎn)單,圖12的1和2的位置通過調(diào)用函數(shù)的方式通過相應(yīng)的變量獲取到時(shí)間戳,溫度,濕度,光照值。

poYBAGMvNL6AOk0WAAPVquv0n_4047.png

圖12


同時(shí)圖12的3和4的位置調(diào)用函數(shù)將獲取數(shù)據(jù)的變量傳遞給LCD12864顯示函數(shù)進(jìn)行數(shù)據(jù)顯示,再通過調(diào)用4G模塊數(shù)據(jù)發(fā)送函數(shù)將變量的值通過4G模塊發(fā)送出去。時(shí)間戳如果生成,這里需要包含一個(gè)系統(tǒng)自帶的頭文件:#include "time.h",并通過mktime(&Time)函數(shù),將獲取的當(dāng)前時(shí)間(格式:XX-XX-XX YY:YY:YY 年-月-日 時(shí):分-秒,這個(gè)時(shí)間可以通過時(shí)鐘芯片讀取,我的程序?yàn)榱搜菔痉奖?,我是直接用軟件延時(shí)的方式直接換算出日期和時(shí)間的,最關(guān)鍵還是時(shí)間戳的轉(zhuǎn)換)北京時(shí)間格式轉(zhuǎn)換為時(shí)間戳格式的算法如下:
Time.tm_year = (2000 + time_data[0])%100 + 100;
Time.tm_mon = time_data[1] - 1;
Time.tm_mday = time_data[2];
Time.tm_hour = time_data[3]- 8;
Time.tm_min = time_data[4];
Time.tm_sec = time_data[5];
time_uinx=mktime(&Time); //讀取時(shí)間戳
time_uinx=time_uinx*1000;
大家可以通過這個(gè)函數(shù)轉(zhuǎn)換出來的時(shí)間戳值,放到在線工具進(jìn)行反推驗(yàn)證,比如我得到的一個(gè)時(shí)間戳的值是1663962320000 單位是毫秒,如圖13的1位置可以看到轉(zhuǎn)換出來的北京時(shí)間是符合要求的(要注意,這個(gè)隨數(shù)據(jù)一起發(fā)送的時(shí)間不能超過你生成密碼用的時(shí)間)。

poYBAGMvNMaAezOxAAJcXo7pvYM143.png

圖13


還有就是如何把OneNET Studio平臺(tái)需要的數(shù)據(jù)格式組合起來,比如我這個(gè)系統(tǒng)目前發(fā)送的是溫度,濕度,光照三個(gè)值,數(shù)據(jù)格式如下:
{"id":"0001","params":{"LightLux":{"time":1663962320000,"value":1155.00},"RelativeHumidity":{"time":1663962320000,"value":40.0},"CurrentTemperature":{"time":1663962320000,"value":32.0}},"version":"1.0"},但是如果直接在C語(yǔ)言里發(fā)送是發(fā)送不過去的,需要用到一個(gè)字符串組合函數(shù)如圖14,為了方便大家看到調(diào)用的全部參數(shù)為把程序分行了,但是在實(shí)際編譯的時(shí)候要排成一行,要不然編譯不通過。

pYYBAGMvNM-AXNHrAAEPO1CF_zE666.png

圖14


當(dāng)然了也可以通過Keil環(huán)境下Jansson庫(kù)生成相應(yīng)的JSON格式的數(shù)據(jù),但是這樣做的話對(duì)單片機(jī)的存儲(chǔ)空間有一定要求,所以如果傳輸數(shù)據(jù)量大需要用JSON函數(shù)轉(zhuǎn)換,如果傳輸數(shù)據(jù)不多的話可以直接用我介紹的方法。

第八步 回顧總結(jié):其實(shí)最關(guān)鍵的還是要保證4G模塊能和OneNET Studio建立連接,真正需要單片機(jī)控制的非常少,關(guān)鍵還是第一篇文章,以及這邊文章的前幾部的循序漸進(jìn)的聯(lián)網(wǎng)測(cè)試,還有就是為了保證數(shù)據(jù)能正常上報(bào),一定要驗(yàn)證下單片機(jī)串口發(fā)送出來的數(shù)據(jù)格式是否正確。

希望我的文章能幫到大家,文章里涉及到的軟件工具,電路圖資料,程序源代碼等大家可以 搜索 WX公眾號(hào) “和我學(xué)單片機(jī)”回復(fù)“OneNET01”回復(fù)帶密碼的百度網(wǎng)盤下載鏈接,大家可以自行下載。如果資料不夠或?qū)W習(xí)中遇到問題可以在公眾號(hào)留言。
更新: 2022年9月24日 楊榮國(guó) 個(gè)人WX : tong1366

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2909

    文章

    44736

    瀏覽量

    374463
  • STM32
    +關(guān)注

    關(guān)注

    2270

    文章

    10906

    瀏覽量

    356549
  • MQTT
    +關(guān)注

    關(guān)注

    5

    文章

    651

    瀏覽量

    22555
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    OneNET Studio平臺(tái)STM32聯(lián)網(wǎng)開發(fā)(1)- MQTT協(xié)議設(shè)備接入數(shù)據(jù)上報(bào)測(cè)試

    OneNET Studio平臺(tái)STM32聯(lián)網(wǎng)開發(fā)
    的頭像 發(fā)表于 09-25 01:01 ?1952次閱讀
    <b class='flag-5'>OneNET</b> <b class='flag-5'>Studio</b><b class='flag-5'>云</b>平臺(tái)<b class='flag-5'>STM32</b><b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b><b class='flag-5'>開發(fā)</b>(1)- MQTT協(xié)議設(shè)備接入<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>上報(bào)</b>測(cè)試

    分步實(shí)操 | Air724UG低功耗模組軟件中復(fù)刻高效FTP示例!

    本文要說的是低功耗4G模組Air724UG軟件中復(fù)刻高效FTP示例,我已整理成文供大家參考。
    的頭像 發(fā)表于 12-03 11:45 ?626次閱讀
    分步實(shí)操 | <b class='flag-5'>Air724UG</b>低功耗<b class='flag-5'>模組</b>軟件中復(fù)刻高效FTP示例!

    4G聯(lián)網(wǎng)開關(guān)求助

    阿里聯(lián)網(wǎng)平臺(tái) 合宙模塊780E 724 或者移遠(yuǎn)4G模塊開發(fā)一款
    發(fā)表于 05-19 15:28

    ESP32S2 WROVER在使用AT指令獲取4G模組時(shí),dte會(huì)報(bào)超時(shí)怎么解決?

    模組:ESP32 S2 WROVER 4G模組:合宙Air724UG 在使用AT指令獲取4G
    發(fā)表于 06-27 06:54

    【正點(diǎn)原子STM32H7R3開發(fā)套件試用體驗(yàn)】4G聯(lián)網(wǎng)工業(yè)設(shè)備控制網(wǎng)關(guān)

    資料,了解STM32H7R3開發(fā)套件的功能。 2. 接入Air780E,實(shí)現(xiàn)開發(fā)板通過4G
    發(fā)表于 12-18 14:14

    EVB_Air724UG_A13開發(fā)板使用指南 相關(guān)資料推薦

    速率5Mbps數(shù)據(jù)傳輸。 具有全功能音頻輸入輸出接口,LCD接口,Camera接口,內(nèi)存卡接口,矩陣鍵盤接口,ADC接口,其外設(shè)齊全,是替代2G聯(lián)網(wǎng)模塊的理想產(chǎn)品。??EVB_
    發(fā)表于 07-06 06:17

    air724ug開發(fā)

    air724ug開發(fā)板,最近購(gòu)買了一塊4G開發(fā)板來玩玩,做個(gè)開發(fā)記錄開發(fā)板采用合宙
    發(fā)表于 07-22 07:25

    STM32+Air724UG基本控制篇

    所屬系列: 指路者系列開發(fā)板型號(hào): ZLAir724UGA板載說明:①主控芯片: STM32F103CBT6;(實(shí)際使用軟硬件全兼容芯片 AT32F413ACBT7)②4G
    發(fā)表于 08-20 06:09

    Air724UG是什么

    2.檢查固件3.聯(lián)網(wǎng)測(cè)試4.服務(wù)器配置·建立TCP服務(wù)器5.與服務(wù)器通訊測(cè)試(一)6.服務(wù)器配置·建立通訊數(shù)據(jù)存儲(chǔ)池7.與服務(wù)器通訊測(cè)試(二)8.單片機(jī)配置·通訊板控制程序9.單片機(jī)與
    發(fā)表于 12-13 07:07

    降本增效!合宙超低功耗藍(lán)牙網(wǎng)關(guān)模組——Air724UG-BL全新方案來了

    龐大, 解決藍(lán)牙上的問題尤為關(guān)鍵。 合宙計(jì)劃推出一款 超低功耗藍(lán)牙網(wǎng)關(guān)模組——Air724UG-BL。 1 Air724UG-BL產(chǎn)品規(guī)劃 合宙A
    的頭像 發(fā)表于 12-14 16:35 ?1532次閱讀
    降本增效!合宙超低功耗藍(lán)牙網(wǎng)關(guān)<b class='flag-5'>模組</b>——<b class='flag-5'>Air724UG</b>-BL全新方案來了

    合宙超低功耗藍(lán)牙網(wǎng)關(guān)模組——Air724UG-BL全新方案來了

    隨著聯(lián)網(wǎng)的普及,局域網(wǎng)的數(shù)據(jù)終歸是需要上,才能實(shí)現(xiàn)多終端的數(shù)據(jù)共享以及設(shè)備控制。因此局域網(wǎng)必須有個(gè)網(wǎng)關(guān),將局域網(wǎng)的
    的頭像 發(fā)表于 12-15 08:04 ?1990次閱讀
    合宙超低功耗藍(lán)牙網(wǎng)關(guān)<b class='flag-5'>模組</b>——<b class='flag-5'>Air724UG</b>-BL全新方案來了

    4G模組SD卡使用技巧|專家指南

    今天我們學(xué)習(xí)的是4G模組SD卡使用技巧,以Air724UG為例做出指南供大家參考。
    的頭像 發(fā)表于 12-14 09:37 ?222次閱讀
    <b class='flag-5'>4G</b><b class='flag-5'>模組</b>SD卡使用技巧|專家指南

    4G模組Air724UG軟件示例:UDP實(shí)戰(zhàn)演練!

    關(guān)于4G模組Air724UG軟件的UDP示例,今天我將對(duì)其實(shí)戰(zhàn)演練,整理成文示例展示:
    的頭像 發(fā)表于 11-26 12:10 ?223次閱讀
    <b class='flag-5'>4G</b><b class='flag-5'>模組</b><b class='flag-5'>Air724UG</b>軟件示例:UDP實(shí)戰(zhàn)演練!

    4G模組Air724UG的軟件教程:KEYPAD示例!

    本回我要說的是低功耗4G模組Air724UG的KEYPAD示例,我已整理成文,特供大家參考。
    的頭像 發(fā)表于 11-30 09:44 ?278次閱讀
    <b class='flag-5'>4G</b><b class='flag-5'>模組</b><b class='flag-5'>Air724UG</b>的軟件教程:KEYPAD示例!

    解讀Air724UG低功耗4G模組軟件的語(yǔ)音通話!

    本篇文章以Air724UG模組為例,解讀低功耗4G模組軟件的語(yǔ)音通話,呈現(xiàn)實(shí)用教程供大家參考。
    的頭像 發(fā)表于 12-09 09:39 ?276次閱讀
    解讀<b class='flag-5'>Air724UG</b>低功耗<b class='flag-5'>4G</b><b class='flag-5'>模組</b>軟件的語(yǔ)音通話!