项目简介
本项目是基于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。
安装使用步骤
环境准备
- 确保安装Python 3.x。
- 确保安装Node.js和npm。
- 确保安装Java JDK。
后端安装
- 复制项目到本地:
bash cd RFID - Unmanned - Shopping/SSBWeb
- 创建虚拟环境并激活:
bash python -m venv venv source venv/bin/activate # 在Windows上使用 `venv\Scripts\activate`
- 安装依赖:
bash pip install -r requirements.txt
- 运行数据库迁移:
bash python manage.py migrate
- 启动Django服务器:
bash python manage.py runserver
前端安装
- 进入前端目录:
bash cd ../ssb - front
- 安装依赖:
bash npm install
- 启动React开发服务器:
bash npm start
硬件终端安装
- 根据硬件文档配置STM32F103C8T6开发板。
- 烧录固件到开发板。
TCP通信服务器安装
- 进入TCP服务器目录:
bash cd ../tcpserver
- 安装依赖:
bash pip install -r requirements.txt
- 启动TCP服务器:
bash python server.py
高频RFID识别安装
- 根据硬件文档配置高频RFID设备。
- 启动MQTT Broker。
- 运行高频RFID识别程序:
bash cd ../UHDServer/driver/source ./main
通过以上步骤,可成功部署并运行该系统。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】