關於STM32F103+ESP8266+阿里雲過程之環境搭建和阿里雲數據格式設置及注意點(一)


  計划實現功能:將STM32F103采集到的溫濕度,PM2.5等數值,通過UART與ESP8266通訊,使得ESP8266對外僅充當串口功能的黑盒。ESP8266通過MTQQ發布訂閱數據,設備上傳、接收 阿里雲的數據,通過SmartConfig配網。

 

   用到工具和環境:

    1.安信可ESP8266 IDE集成環境,https://wiki.ai-thinker.com/ai_ide_install 

      注:cygwin的文件已存在在下載文件中,不需要網上搜索下載。不要被鏈接中的內容誤導

    2.如何使用安信可ESP系列集成環境   https://wiki.ai-thinker.com/ai_ide_use

    3.ESP 系列模組燒錄固件: https://wiki.ai-thinker.com/esp_download

    4.官方SDK下載鏈接   https://www.espressif.com/zh-hans/products/hardware/esp8266ex/resources

      注:本人使用的是 ESP8266_NONOS_SDK-3.0 + aliyun_mqtt_app。

    5.下載 aliyun_mqtt_app。  https://github.com/AngelLiang/esp8266_aliyun_mqtt_app

  

  一.  免費注冊阿里雲,https://www.aliyun.com/   阿里雲物聯網平台目前收費方法是按消息數量收費,不過每月前100萬條消息免費,對於個人玩轉物聯雲是完全夠用的。獲取阿里雲IoT hub設備認證三元組方法流程:

    注冊阿里雲->開通物聯網平台->創建產品->創建設備->獲取認證三元組(DeviceName、ProductKey、DeviceSecret)。具體參照阿里雲文檔https://help.aliyun.com/document_detail/73728.html?spm=5176.11485173.0.0.3fc459afRok2la    這里只介紹部分注意點。

  附阿里雲創建完成后頁面:

 

     1.新建產品時,選擇的數據格式決定后續的通訊方式

       1)ALINK JSON的數據格式: Alink協議是針對物聯網開發領域設計的一種數據交換規范,數據格式是JSON,用於設備端和物聯網平台的雙向通信,官方給出的SDK中包含了ALINK JSON需要上報的數據格式,一般在設備端處理能力足夠的情況下采用此方式,這里采用此種格式。

       2)透傳/自定義 數據格式:使用這種數據格式的上報方式,需要在物聯網平台網頁中(路徑為 產品->數據解析)調用數據解析腳本中的 protocolToRawData方法,將結果數據轉換成Alink JSON格式。阿里雲文檔參照https://help.aliyun.com/document_detail/68702.html?spm=a2c4g.11186623.6.575.64e920a8CHKJBw   注: 數據格式選擇為透傳/自定義時, 產品頁面下的才有數據解析的選項。ALINK JSON格式下無需設置。

                        

 

    2.創建設備時輸入的DeviceName將用於認證三元組中。獲取認證三元組之后要在  產品->功能定義  中填入需要設備屬性和服務以及事件,這里我使用的是自定義功能,設備的屬性數據只要可讀就能更新來自設備的數據。此頁面下可查看已創建好的物模型(后續將用到)。

 

  

    二:MQTT協議簡介:基於TCP協議棧上,輕量級的發布訂閱,不實時,低開銷,低寬帶占有。MQTT的topic和三個角色:發布者,訂閱者,代理

        1.topic,附加在消息中的標簽,發布信息時附帶topic。

        2.發布者:發布一條帶有topic的信息。

        3.訂閱者:訂閱感興趣的topic(多個topic在代碼中進行string的判斷選擇)。

        4.代理:負責對來自發布者的信息進行存儲操作,並將消息發送至正確的訂閱者去。

          附:產品topic查看位置,各個topic功能參展后面的描述,(可自定義topic)。

 

 

                                   ----------------今天也是充滿希望的一天呦~(博客園限制ID長度.....)

                                                      

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM