ESP8266實戰貼:使用HTTP POST請求上傳數據到公有云OneNet

最近一段時間無論是正副業挺忙,人生的第一個父親節,將在天津度過,這也是我生平第一次走出廣東,活已經完成99%了,相對來說還是挺有成就感的,學習了不少東西,今天下午休息,開始繼續更新公衆號推文:

ESP8266可玩性真的很高,公衆號之前也發了不少ESP8266的應用,比如最近,我就把之前做的小車改良了,因爲那個小車由於自己裝配工藝不好,四個輪子經常跑偏,於是我就又花了上百大洋,重新打造了一個坦克,還沒來得及發文呢,給大家展示下效果:

好了,下面進入正題,使用ESP8266來上傳數據到公有云-OneNet

縱觀大部分公有云,就目前個人接觸過的而言,我覺得中國移動OneNet平臺是最好上手的,下面,我們就簡單根據官方網站提供的HTTP開發者文檔的操作指引,通過ESP8266上報數據,最終通過平臺進行展示:

操作指引文檔地址:

https://open.iot.10086.cn/doc/kit/book/standard_board/onenet/HTTP/HTTP.html

根據操作指引,以下是我在OneNet平臺上創建了一個多協議接入的產品:

1、OneNet平臺針對各類接入協議的描述

這裏,我們重點看HTTP協議部分,其它的部分等用到了再詳細去了解。

2、OneNet平臺產品常用名詞解析

這部分也是後面使用HTTP協議的鋪墊,這裏面有部分參數我們後面需要使用,譬如設備ID,OneNet平臺上註冊的APIKey。

3、一個最簡單的數據上報OneNet平臺的HTTP模板

關於HTTP協議學習,可以參考大佬的文章學習,這是我認爲寫得最通俗易懂的:

HTTP 核心總結 PDF 也出來了!!!

炸裂!萬字長文拿下HTTP 我在字節跳動等你!

如上圖所示,這是我創建的數據流模板,然後以下提供一個最簡單的HTTP頭+HTTP數據包。

這樣一個簡單的數據上傳模板就完成了,接下來我們用ESP8266來實測一下:

關於ESP8266聯網的一些基礎之前的文章已經有寫過了,這裏就不再重複寫了,請看下文,當然之前也寫了一篇ESP8266透傳HTTP服務器的文章,這個是用SoapUI搭建的HTTP服務器。

基於小熊派WIFI-ESP8266實踐(上)

ESP8266透傳:發送數據到HTTP服務器

基於小熊派WIFI-ESP8266實踐(中)-多功能處理顯示等大雜燴

以上串口終端已經收到後臺給我們回覆的200OK的字段,數據已經成功上傳到OneNet服務器,接下來我們登錄OneNet雲平臺,可以看到數據已經透傳成功:

以下是我隨機模擬的一組數據,平臺能夠成功收到並通過折線圖進行展示。

那麼在MCU軟件上如何來實現呢?很簡單,我們把在串口終端收發的過程用代碼實現就可以了,其實大部分小白不是糾結怎麼通過ESP8266去連接熱點,連接服務器,這些隨便找野火、正點原子等廠家的ESP8266例程都可以輕鬆獲取,小白糾結的是,如何在程序上組一個HTTP數據包,最後通過數據包透傳到服務器。

以下測試在小熊派開發板上運行,源碼請查看文末回覆字段,關鍵部分代碼實現如下,只需要WIFI進入透傳模式後,循環調用OneNet_SendData這個函數就可以源源不斷的在後臺接收到數據了,其中要注意的是,ONENET_DEVICE_ID以及ONENET_API_KEY這兩個宏,請根據你在平臺上註冊的實際信息填寫。

OneNet平臺收到數據後的數據展示:

4、案例下載

公衆號後臺回覆:OneNet 即可獲取本節程序案例的下載鏈接。

溫馨提示:如果您手上有小熊派開發板,請修改以上紅框字段,其餘部分程序不需要修改,平臺的話,按文章中在平臺上做相應的設置即可,最後直接下載到開發板上,打開串口終端以及OneNet平臺查看實驗結果。

最後,應公衆號讀者要求,來一張楊工近照,4年嵌入式職場老油條,這也是我第一次在公衆號露面啦

明天是我人生中的第一個父親節,先祝自己父親節快樂,好好奮鬥,讓小小楊過得幸福美滿!

往期精彩

一些不可不知的計算機網絡基礎

實戰貼:開源GUI LittlevGL在MCU上的移植

MCU SPI屏也能跑這麼炫酷的特效?來,移植起來秀一秀

實戰貼:開源GUI STemWin在小熊派上的移植(顯示很漂亮、很細膩,棒!)

移植一個實時OS很難?那就手把手教你如何快速移植一個RT-Thread Nano吧!

覺得本次分享的文章對您有幫助,隨手點[在看]並轉發分享,也是對我的支持。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章