2025交互标牌 - 基于xiao-esp32-s3的智能电子价签系统
该项目使用了Seeed XIAO ESP32S3 Sense开发板,实现了智能电子价签系统的设计,它的主要功能为:通过Web界面实时管理商品信息、监控价签状态、调整价格,并通过无线方式将更新推送到物理价签设备上。
标签
ESP32S3
各类活动
2025交互标牌创客争霸赛
智造工社
更新2025-08-19
21


一、项目介绍

本项目设计并实现了一套创新的智能电子价签管理系统,旨在替代传统纸质价签,实现商品价格的远程实时更新和管理。系统采用Seeed Studio XIAO ESP32S3 Sense开发板作为终端显示设备,搭配OLED显示屏,通过SIOT MQTT服务器与基于Flask的Web管理系统进行通信。管理员可以通过Web界面实时管理商品信息、监控价签状态、调整价格,并通过MQTT协议将更新推送到物理价签设备上。
系统核心功能包括:



  • 商品信息管理(添加、编辑、删除)
  • 电子价签设备管理
  • 商品与价签的绑定关系管理
  • 实时状态监控(电量、信号强度、在线状态)
  • 价格变更的即时推送
  • 基础数据配置(分类、单位、位置等)

二、使用到的硬件介绍

1. Seeed Studio XIAO ESP32S3 Sense开发板

XIAO ESP32S3 Sense 引脚列表2.jpg

  • 处理器:ESP32-S3双核Xtensa® 32位LX7 MCU,主频240MHz
  • 无线连接:支持Wi-Fi 4(802.11b/g/n)和蓝牙5.0
  • 存储:内置8MB PSRAM和8MB Flash
  • 传感器:集成麦克风和摄像头接口(本项目未使用)
  • 特点:体积小巧(21×17.5mm),低功耗设计,支持深度睡眠模式

2. OLED显示屏


  • 尺寸:0.96英寸(也可使用1.3英寸)
  • 分辨率:128x64像素
  • 接口:I2C通信接口

三、方案框图和项目设计思路

1. 方案框图

+-----------------+     +----------------+     +-----------------+
| 电子价签终端 |<--->| SIOT MQTT服务器 |<--->| Flask Web服务器 |
| (XIAO+OLED) | | (消息中转) | | (数据管理+界面) |
+-----------------+ +----------------+ +-----------------+
^ |
| |
+----------------+ +-----------------+
| 商品价格更新 | | 管理员操作 |
| 状态上报 | | (浏览器界面) |
+----------------+ +-----------------+

2. 项目设计思路

系统采用 “分层架构 + 模块化设计” 思路,分为三层:

  1. 终端设备层:XIAO ESP32S3作为主控,连接Wi-Fi并订阅MQTT主题,接收价格更新指令并刷新显示屏
  2. 通信层:使用SIOT作为MQTT Broker,实现终端与后台之间的消息传递
  3. 后台管理层:Flask提供RESTful API管理数据,Web界面提供可视化操作
  4. 数据存储:使用JSON文件存储商品信息、价签设备和绑定关系
  5. 实时通信:通过MQTT协议实现双向通信(指令下发和状态上报)

四、软件流程图和关键代码介绍

1.系统流程图


2.终端设备工作流程

 初始化OLED显示屏 → 连接Wi-Fi网络 → 获取设备MAC地址 →  
 连接MQTT服务器 → 订阅指令主题 → 循环执行:
  ├─ 接收MQTT消息(若MAC匹配则更新显示内容)
  ├─ 每30秒上报设备状态(电量、信号等)
  └─ 异常时重启设备

3.Web 平台工作流程

 用户登录 → 加载设备/商品数据 → 实时展示仪表盘 →  
 用户操作(添加商品/绑定设备/更新信息) →
 发送指令至MQTT服务器 → 接收终端状态反馈 → 更新界面显示

4. 关键代码介绍

1. MQTT消息处理(前端)


// 发布价签更新消息
function publishPriceTagUpdate(topic, message) {
if (globalData.mqtt.client && globalData.mqtt.isConnected) {
const jsonMessage = JSON.stringify(message);
globalData.mqtt.client.publish(topic, jsonMessage, { qos: 1 }, (error) => {
if (error) {
addLog(`发布消息失败: ${error.message}`);
} else {
addLog(`发布消息成功: ${jsonMessage}`);
}
});
}
}

2. 价签状态更新处理(后端)

# Flask API接收终端状态更新
@app.route('/api/status', methods=['POST'])
def update_status():
data = request.json
mac = data.get('mac_address')

# 查找对应设备
for device in esl_devices:
if device['mac'] == mac:
device['battery'] = data.get('battery_level')
device['RSSI'] = data.get('RSSI')
device['last_heartbeat'] = datetime.now().isoformat()
device['status'] = 'online'
break

save_json('esl_devices.json', esl_devices)
return jsonify(success=True)

3. 终端显示刷新(终端设备)




4. 数据库


5.MQTT服务器


(1)商品数据库

image.png

(2)电子价签数据库

screenshot_2025-08-15_23-06-32.png
(3)绑定数据库

screenshot_2025-08-15_23-08-28.png


五、功能展示图及说明

1. 后台管理系统界面


说明:系统仪表盘展示所有价签设备的实时状态,包括在线/离线状态、电量、信号强度等关键信息。不同颜色边框直观区分设备状态(绿色:在线,红色:离线,灰色:闲置)

2. 商品管理界面

lQLPKdOzjo2Art3NArDNBVawggloeaz4JIcIfNbi_cXFAA_1366_688.png


说明:商品管理界面支持添加、编辑和删除商品信息,包括商品名称、分类、价格等属性。支持按分类、价格范围等多维度筛选

3. 价签设备管理

lQLPJxs7IB7HOl3NArLNBVawTW8diC4BNdkIfNbyBwRxAA_1366_690.png


说明:价签设备管理界面显示所有注册的电子价签详细信息,包括MAC地址、IP地址、屏幕规格等,支持远程管理设备

4. 绑定管理界面

  • lQLPJwVOoic9Vp3NArDNBVWwPMdnEBxxlAIIfNcDYGg4AA_1365_688.png


说明:绑定管理界面显示所有电子价签绑定详细信息,包括绑定ID、商品信息、价签信息、位置、状态等,支持远程管理设备

5.系统管理界面

lQLPKIDHlOXt6B3NArDNBVWwCMxe5JY6flEIfNc1dOryAA_1365_688.png


说明:系统管理界面显示系统设置相关信息,包括websocket服务器设置、基础数据配置等


六、项目中遇到的难题和解决方法

1、Web界面实时性不足

管理员操作后需手动刷新页面才能看到最新状态。解决方法:实现WebSocket双向通信,服务器主动推送状态更新,添加实时通知系统,显示关键操作结果。

2、MQTT 消息冲突
多设备同时订阅同一主题时,易收到无关指令。解决方法:在消息中加入 MAC 地址字段,终端仅处理与自身 MAC 匹配的消息,确保指令精准送达。

七、心得体会

本次项目实践是一次从 “创意构思” 到 “落地实现” 的完整过程,让我们深刻体会到技术创新与实际需求结合的魅力。

在技术层面,我们掌握了 XIAO ESP32-S3 的硬件开发、MicroPython 编程与 MQTT 通信原理,同时提升了 Web 前端开发能力。面对 Wi-Fi 断连、消息冲突等问题,团队通过分工协作(硬件调试、软件优化、界面设计)逐一攻克,培养了问题分析与解决能力。

在设计层面,我们意识到 “用户体验” 的重要性:终端显示需清晰易读,Web 操作需简洁直观,功能需贴合实际场景(如零售场景的价格快速更新)。

总之,“2025 交互标牌” 项目不仅是一次技术实践,更是一次创新思维的锻炼。它让我们明白,数字化空间的信息传达不应局限于静态展示,而应通过技术赋能,实现更灵活、更智能、更具温度的交互体验。


软硬件
元器件
ESP32
ESP32-WROOM-DA 是一款 Wi-Fi + Bluetooth + Bluetooth BLE MCU 模组,与 ESP32-WROOM-32E 模组管脚布局相同,方便用户快速迁移至此平台。模组采用独特的双向互补双天线设计,适用于大范围通信,Wi-Fi 环境复杂,以及设备位置不佳导致通信受限等物联网应用场景。因此该模组是智能家居、工业控制、消费电子等室内外设备的理想选择。
电路图
附件下载
前端与服务器端.zip
电子价签代码.zip
团队介绍
制造工社
团队成员
智造工社
评论
0 / 100
查看更多
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号