littlebot
Published on 2025-04-16 / 3 Visits
0

【源码】基于ESP32和Raspberry Pi的远程Smoothie投放系统

项目简介

本项目是一个远程食品投放系统,消费者可通过手机按下按钮,将Smoothie投放到指定容器中。系统运用ESP32微控制器、Raspberry Pi、LIDAR传感器、加速度计和温度传感器等技术,实现从检测容器位置到远程投放的完整流程。

项目的主要特性和功能

  1. 利用LIDAR传感器和Raspberry Pi摄像头实时检测食品容器位置。
  2. 通过加速度计判断食品容器是否处于稳定状态。
  3. 借助ESP32控制伺服电机,实现远程投放Smoothie。
  4. 用热敏电阻实时监控Smoothie温度,确保其保持低温。
  5. 通过Node.js服务器和HTML页面,实时展示加速度计和温度传感器的数据。
  6. 在HTML页面提供按钮,用户点击即可触发投放操作。

安装使用步骤

1. 硬件准备

  • 2个ESP32开发板
  • 带摄像头模块的Raspberry Pi
  • 伺服电机
  • LIDAR传感器
  • 加速度计
  • 热敏电阻
  • 其他必要的线缆和配件

2. 软件准备

  • 用于ESP32代码编译和烧录的ESP-IDF开发环境。
  • 用于搭建服务器和数据处理的Node.js。
  • 确保摄像头模块正常工作的Raspberry Pi操作系统。

3. 代码配置

  1. ESP32代码
  2. food_container.c:配置加速度计和温度传感器的数据采集,通过UDP协议将数据发送到Node.js服务器。
  3. drop_food.c:配置LIDAR传感器的数据采集,通过UDP协议接收投放指令,控制伺服电机进行投放操作。
  4. Node.js服务器
  5. 配置UDP通信,接收来自ESP32的传感器数据。
  6. 配置Socket.IO,接收来自HTML页面的投放指令,并通过UDP协议发送给ESP32。
  7. HTML页面
  8. 配置AJAX请求,实时获取传感器数据并动态展示。
  9. 配置投放按钮,点击后通过Socket.IO发送投放指令。

4. 系统测试

  1. 确保所有传感器和电机正确连接到ESP32和Raspberry Pi。
  2. food_container.cdrop_food.c分别烧录到两个ESP32开发板。
  3. 在Raspberry Pi上启动Node.js服务器。
  4. 通过浏览器访问HTML页面,观察传感器数据并测试投放功能。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】