ESP32CAM的图片用MQTT也能传?物联网平台来帮你

  ESP32是乐鑫在ESP8266后推出的一款集成WiFi功能的微控制器,相较于ESP8266,ESP32拥有更强大的性能,可用于复杂应用的开发。

  ESP32CAM在ESP32的基础上扩展了摄像头模组,体积极小,可广泛应用于各种物联网场合,适用于家庭智能设备、工业无线控制、无线监控、QR无线识别,无线定位系统信号以及其它物联网应用,是物联网应用的理想解决方案。

  MQTT是一种基于发布/订阅模式的轻量级通讯协议,它的特点是可使用极少的代码与有限的带宽为远程连接的设备提供实时可靠的消息订阅服务,被广泛应用于物联网运用。MQTT单条报文允许的最大体积为 256 M,ESP32CAM拍摄的图片的体积大小远小于这个数值,可以考虑使用MQTT协议来传输图片。

  需要使用的零件如下:

零件名称 数量
1 ESP32CAM 开发板 1
2 USB-TTL模块 1
3 杜邦线 若干

在这里插入图片描述
  那么,要如何将ESP32CAM获取的图片通过MQTT进行传输呢?可参考以下信息进行设置。
在这里插入图片描述
  使用Arduino IDE 编译并上传以下Arduino程序。该程序使用的是esp32开发板,需要在Arduino IDE中添加安装该开发板环境,并在编译时选择开发板环境为ESP32系列开发板。在Arduino IDE中添加ESP32开发板环境。注意烧录时ESP32CAM的开发板中IO0针脚需要进行接地操作,否则会导致刷写失败。

#include "WiFi.h"
#include "esp_camera.h"
#include "esp_timer.h"
#include "img_converters.h"
#include "Arduino.h"
#include "soc/soc.h"           // Disable brownour problems
#include "soc/rtc_cntl_reg.h"  // Disable brownour problems
#include "driver/rtc_io.h"
//#include "StringArray.h"

#include <PubSubClient.h>
#include <base64.h>
#include <libb64/cencode.h>


//esp32-cam针脚定义 拍照相关
constexpr int kCameraPin_PWDN   =  32;
constexpr int kCameraPin_RESET  =  -1;  // NC
constexpr int kCameraPin_XCLK   =   0;
constexpr int kCameraPin_SIOD   =  26;
constexpr int kCameraPin_SIOC   =  27;
constexpr int kCameraPin_Y9     =  35;
constexpr int kCameraPin_Y8     =  34;
constexpr int kCameraPin_Y7     =  39;
constexpr int kCameraPin_Y6     =  36;
constexpr int kCameraPin_Y5     =  21;
constexpr int kCameraPin_Y4     =  19;
constexpr int kCameraPin_Y3     =  18;
constexpr int kCameraPin_Y2     =   5;
constexpr int kCameraPin_VSYNC  =  25;
constexpr int kCameraPin_HREF   =  23;
constexpr int kCameraPin_PCLK   =  22;

// 此处需替换连接的无线网络为自己使用的无线网络
const char* ssid = "YOUR_WIFI_SSID";
const char* password = "YOUR_WIFI_PASSWORD";

// 此处需替换MQTT服务端为自己使用的服务端
const char* mqtt_server = <
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值