littlebot
Published on 2025-04-09 / 0 Visits
0

【源码】基于Django和React的RFID无人购物系统

项目简介

本项目是基于RFID技术的无人购物系统,提供自动化、高效的购物体验。系统涵盖硬件终端、用户前端、后端服务器以及TCP通信服务器等模块,通过RFID标签识别商品,实现用户自助结账和商品管理功能。

项目的主要特性和功能

硬件终端

  • RFID识别终端挂载在购物车上,支持用户自主购物。
  • 主控芯片采用意法半导体STM32F103C8T6。
  • 通信模块使用移远BC26 NB - IOT模块。
  • RFID识别模块为恩智浦MFRC522。

用户前端

  • 用户终端用Typescript + React + Ant Design实现界面与交互逻辑。
  • Native容器由Java编写,实现条形码及二维码扫描功能。
  • Hybrid App通过WebView与React前端结合交付。

后端服务器

  • 核心业务逻辑用Django + Django Rest Framework + Django Channels编写。
  • 支持商品的添加、更新、删除等管理操作。
  • 管理用户购物会话,包括购物车状态、订单创建和关闭时间。

TCP通信服务器

  • 用Python + Tornado实现RFID识别终端与服务器的TCP自由通信。

高频RFID识别

  • 通过高频RFID识别实现防盗,使用paho - mqtt - cpp将标签推送到mosquitto MQTT Broker。

安装使用步骤

环境准备

  1. 确保安装Python 3.x。
  2. 确保安装Node.js和npm。
  3. 确保安装Java JDK。

后端安装

  1. 复制项目到本地: bash cd RFID - Unmanned - Shopping/SSBWeb
  2. 创建虚拟环境并激活: bash python -m venv venv source venv/bin/activate # 在Windows上使用 `venv\Scripts\activate`
  3. 安装依赖: bash pip install -r requirements.txt
  4. 运行数据库迁移: bash python manage.py migrate
  5. 启动Django服务器: bash python manage.py runserver

前端安装

  1. 进入前端目录: bash cd ../ssb - front
  2. 安装依赖: bash npm install
  3. 启动React开发服务器: bash npm start

硬件终端安装

  1. 根据硬件文档配置STM32F103C8T6开发板。
  2. 烧录固件到开发板。

TCP通信服务器安装

  1. 进入TCP服务器目录: bash cd ../tcpserver
  2. 安装依赖: bash pip install -r requirements.txt
  3. 启动TCP服务器: bash python server.py

高频RFID识别安装

  1. 根据硬件文档配置高频RFID设备。
  2. 启动MQTT Broker。
  3. 运行高频RFID识别程序: bash cd ../UHDServer/driver/source ./main

通过以上步骤,可成功部署并运行该系统。

下载地址

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