最近一段時間無論是正副業挺忙,人生的第一個父親節,將在天津度過,這也是我生平第一次走出廣東,活已經完成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頭+HTTP數據包。
這樣一個簡單的數據上傳模板就完成了,接下來我們用ESP8266來實測一下:
關於ESP8266聯網的一些基礎之前的文章已經有寫過了,這裏就不再重複寫了,請看下文,當然之前也寫了一篇ESP8266透傳HTTP服務器的文章,這個是用SoapUI搭建的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 STemWin在小熊派上的移植(顯示很漂亮、很細膩,棒!)
移植一個實時OS很難?那就手把手教你如何快速移植一個RT-Thread Nano吧!
覺得本次分享的文章對您有幫助,隨手點[在看]
並轉發分享,也是對我的支持。