258浏览
查看: 258|回复: 7

[项目] 【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头

[复制链接]
【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头图1
ESP32-Cam 是一款运行在 ESP32-S 芯片上并使用 OV2640 摄像头的小型摄像头模块。ESP32_Cam 也可以 OV7670 摄像头,但 OV2640 更好(更高的分辨率和内置的 JPEG 编码,这消除了 ESP32-S 的处理任务)。
ESP-32 Cam 规格ESP-32 系列
它支持 Wi-Fi (802.11b/g/n)
支持蓝牙 (4.2 带 BLE)
内置 LED 闪光灯
9 个 IO 端口
支持 UART、SPI、I2C 和 PWM
内置 micro SD 读卡器
输入电源:3.3V / 5V(据报道,5V 供电比 3.3V 更稳定)
OV2640 摄像头
2 百万像素
阵列尺寸:UXGA (1600 x 1200)
镜头尺寸:1/4 英寸(6.35 毫米)
最大图像传输速率:15 帧/秒


【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头图2

驴友花雕  中级技神
 楼主|

发表于 2024-9-7 18:51:38

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头

  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验二百三十:ESP32 CAM开发板 带OV2640摄像头模块 WIFI+蓝牙模块
  项目实验之十:WifiCam: 无线网络摄像头HTTP服务器

下载esp32cam库
链接:https://github.com/yoursunny/esp32cam?tab=readme-ov-file

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-9-7 19:11:06

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头

项目实验之十:WifiCam: 无线网络摄像头HTTP服务器
实验开源代码

  1. /*
  2.   【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  3.   实验二百三十:ESP32 CAM开发板 带OV2640摄像头模块 WIFI+蓝牙模块
  4.   项目实验之十:WifiCam: 无线网络摄像头HTTP服务器
  5. */
  6. // 引入WifiCam库
  7. #include "WifiCam.hpp"
  8. // 引入WiFi库
  9. #include <WiFi.h>
  10. // 定义WiFi的SSID和密码
  11. static const char* WIFI_SSID = "zhz3";
  12. static const char* WIFI_PASS = "z156721";
  13. // 定义初始分辨率
  14. esp32cam::Resolution initialResolution;
  15. // 创建Web服务器,端口号为80
  16. WebServer server(80);
  17. void setup() {
  18.   // 初始化串口通信,波特率为115200
  19.   Serial.begin(115200);
  20.   Serial.println();
  21.   delay(1000);
  22.   // 设置WiFi模式为STA(Station)
  23.   WiFi.persistent(false);
  24.   WiFi.mode(WIFI_STA);
  25.   // 连接到WiFi网络
  26.   WiFi.begin(WIFI_SSID, WIFI_PASS);
  27.   // 等待WiFi连接结果
  28.   if (WiFi.waitForConnectResult() != WL_CONNECTED) {
  29.     Serial.printf("WiFi连接失败 %d\n", WiFi.status());
  30.     delay(5000);
  31.     ESP.restart();
  32.   }
  33.   Serial.println("WiFi连接成功");
  34.   delay(1000);
  35.   {
  36.     using namespace esp32cam;
  37.     // 设置初始分辨率为1024x768
  38.     initialResolution = Resolution::find(1024, 768);
  39.     // 配置摄像头参数
  40.     Config cfg;
  41.     cfg.setPins(pins::AiThinker);  // 设置引脚
  42.     cfg.setResolution(initialResolution);  // 设置分辨率
  43.     cfg.setJpeg(80);  // 设置JPEG质量
  44.     // 初始化摄像头
  45.     bool ok = Camera.begin(cfg);
  46.     if (!ok) {
  47.       Serial.println("摄像头初始化失败");
  48.       delay(5000);
  49.       ESP.restart();
  50.     }
  51.     Serial.println("摄像头初始化成功");
  52.   }
  53.   // 输出摄像头启动信息和设备IP地址
  54.   Serial.println("摄像头启动中");
  55.   Serial.print("http://");
  56.   Serial.println(WiFi.localIP());
  57.   // 添加请求处理程序
  58.   addRequestHandlers();
  59.   // 启动Web服务器
  60.   server.begin();
  61. }
  62. void loop() {
  63.   // 处理客户端请求
  64.   server.handleClient();
  65. }
复制代码


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-9-7 19:15:30

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头

实验串口返回情况

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-9-7 19:16:39

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头

打开浏览器控制页面:http://192.168.28.223/

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-9-7 19:20:24

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头

分成照片格式BMP,不同大小规格供选择,打开后直接在浏览器上显示照片

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-9-7 19:26:33

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头

照片格式还有JPG,也是不同大小规格供选择,打开后直接在浏览器上显示照片(晚上灯光环境,拍虚了)

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头图1

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2024-9-7 20:59:00

【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头

第三种是视频流MJPEG格式,这里实验使用800X600格式,可以拍摄21.17fps

【【花雕学编程】Arduino动手做(230)---WIFI无线网络摄像头】

https://www.bilibili.com/video/BV1ZTp8eFEaU/?share_source=copy_web&vd_source=371a292a55e5ca9be994cbb4a86cc987






回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail