ESP32是樂鑫在ESP8266後推出的一款集成WiFi功能的微控制器,相較於ESP8266,ESP32擁有更強大的性能,可用于複雜應用的開發。
ESP32CAM在ESP32的基礎上擴展了攝像頭模組,體積極小,可廣泛應用於各種物聯網場合,適用于家庭智慧設備、工業無線控制、無線監控、QR無線識別,無線定位系統信號以及其它物聯網應用,是物聯網應用的理想解決方案。
MQTT是一種基於發佈/訂閱模式的羽量級通訊協定,它的特點是可使用極少的代碼與有限的頻寬為遠端連接的設備提供即時可靠的消息訂閱服務,被廣泛應用於物聯網運用。MQTT單條報文允許的最大體積為 256 M,ESP32CAM拍攝的圖片的體積大小遠小於這個數值,可以考慮使用MQTT協定來傳輸圖片。
那麼,要如何將ESP32CAM獲取的圖片通過MQTT進行傳輸呢?可參考以下資訊進行設置。
使用Arduino IDE 編譯並上傳以下Arduino程式。該程式使用的是esp32開發板,需要在Arduino IDE中添加安裝該開發板環境,並在編譯時選擇開發板環境為ESP32系列開發板。在Arduino IDE中添加ESP32開發板環境。注意燒錄時ESP32CAM的開發板中IO0針腳需要進行接地操作,否則會導致刷寫失敗。
使用FastWeb網頁開發平臺的示例來接收,可查看ESP32CAM傳輸的介面。ESP32CAM的畫面使用十六進位文本進行傳輸,MQTT接收到傳輸的資訊後,使用專用的解析函數可將十六進位的內容重新轉換成圖片。以上的示例使用的介面可自行搭建,只要幾分鐘就可以搭建完成。
UGCM.HexToJPG(apayload,"profile-image.jpg");
UgImage01.Picture.LoadFromFile("profile-image.jpg");
如果您需要瞭解更多當前展示範例的詳細資訊,可點擊以下連結查看。
產品簡介:https://isoface.net/isoface/production/software/fastweb/web
運行範例:https://web.diylogi.com/...
視頻說明:https://isoface.net/.../video-tutorial/fastweb/w-eq-dem-2009
範例手冊:https://isoface.net/isoface/doc/fastweb/demo/mqtt-esp32-cam/