NFC物联网智能购物车设计方案

智能购物车是综合利用计算机网络、射频识别技术、数据库技术、单片机于一体的设备具有先进性、便于管理性、经济性、普适性。基于NFC (Near Field Communication,近场通信)技术的智能购物车,能够大幅缩短结账排队时间,实现“无感支付”。NFC是一种非接触式自动识别技术,当NFC 标签靠近阅读器的工作范围之后,通过线圈获得感应电流,感应电流经过升压电路作为电源,将储存器寄存的信息发送给阅读器,阅读器再根据接收的信息进行解码处理。这样大大减少人员成本,同时方便了超市管理,提高顾客的购物体验。

1购物车工作原理(Working principle of shopping cart)

智能购物车

1.1基本原理和技术

智能购物车就是物联网应用的一个实例,智能购物车综合运用嵌入式开发,数据库技术无线网络通信,以及射频识别技术。单片机在购物车上作为信息处理的模块,同时兼备网络传输功能。实现购物数据实时传输,方便超市工作管理,也可以利用实时数据来实现智能超市的感知,包括优化库存,调整供应链等。

智能购物车最大的特点就是使用了树莓派和NFC技术。树莓派是一种基于Arm架构的微型电脑,具备标准的冯·诺伊曼结构。内置CPU和内存,需要连接 Micro SD卡作为外存同时具有连接IEEE 802.11标准协议的无线网络模块。支持Java、CPython等编程语言,可以使用 SPI驱动。利用树莓派,可以很快地完成对硬件驱动的开发,对超市数据库的连接,而不需要专门学习单片机的编程语言。

NFC 技术即射频识别技术,通过非接触的方式实现双向通信,NFC发起设备提供射频场,NFC目标设备运用负载调制技术,可以和调整至与发起设备一样的传递速率进行数据传输。目前 NFC广泛用于公交卡、身份证,以及物流系统和手机中。通过 NFC 可以对资源进行快速定位,信息传输。

NFC与 RFID 区别:NFC 是由 RFID 发展而来,NFC工作频率仅在 13.56MHz,而RFID工作频段分为低频,高频和特高频,频率从120kHz至5.8GHz,执行不同的ISO/IEC18000标准都有不同的工作频率。NFC 可以内置安全芯片,有效防范黑客读取破解。

1.2工作原理

供货商将所有的商品都需要贴上 NFC不干胶贴,超市只需要在收货的时候,用扫描器扫描NFC 标签,就可以完成入库的操作。同时会将商品数据采集到超市的数据库,超市可以继续录入完善商品的信息。当所有商品信息都上传至中心服务器之后,就可以使用智能购物车进行购物了。智能购物车是在传统购物车的基础上进行改造,拥有树莓派+NFC 阅读器组成的系统。顾客的智能手机与智能购物车通过超市 WLAN 或购物车蓝牙,以及 NFC 连接的方式,与智能购物车进行配对。树莓派接入超市的 WLAN,NFC 阅读器读取商品上面NFC标签的内容,返回给树莓派数据,树莓派对数据只对数据进行合法性校验,比如奇偶校验、校验和等NFC标签使用EPC(Electronic Product Code,电子产品编码),并且使用锁位式双前缀探针防碰撞算法,可以减少冗余信息传输,提高算法搜索效率。为了降低中心服务器的工作负荷,树莓派将使用异步传输的方式来与超市服务器进行数据交换。此时顾客的智能手机将出现购物车中所存在的商品信息。

2工作流程(Workflow)

NFC物联网智能购物车

将购物车推至结算区域,当树莓派接收到结算区域的安全网络时,进入结算程序。NFC阅读器反复读取数次存在于购物车的商品上的 NFC 标签,将商品信息发送到超市服务器,超市服务器与支付网关连接,进行安全认证,对顾客账户进行扣款。

3程序实现(Program realization)

3.1程序架构

整个软件分为三个部分,由超市服务器系统,智能购物车系统,支付网关组成。其中,上位机是树莓派、超市服务器和智能手机,树莓派主要使用Python语言进行软件开发,超市服务器使用PostgreSQL数据库,下位机是RFID-RC522A读卡器。

3.2调试读卡器与树莓派连接

将树莓派的系统读写到 MicroSD卡,并且在根目录下新建SSH目录,配置好WIFI连接然后使用数据线与树莓派连接,使用5V/2A 直流电供电,插上即可开机。

在终端里输入 sudo raspi-config,然后再弹出页面选择Interfacing Options->SPI->确认。

出处 软件工程

原标题 基于NFC的智能购物车设计

作者 韦雨轩 陈祥苗 尹浩翔 贾兴东 吴静

参考资料

https://www.hooketech.com/smart-shopping-cart.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/226837.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入浅出理解转置卷积Conv2DTranspose

温故而知新,可以为师矣! 一、参考资料 论文:A guide to convolution arithmetic for deep learning github源码:Convolution arithmetic bilibili视频:转置卷积(transposed convolution) 转置…

【Linux】深挖进程地址空间

> 作者简介:დ旧言~,目前大二,现在学习Java,c,c,Python等 > 座右铭:松树千年终是朽,槿花一日自为荣。 > 目标:熟悉【Linux】进程地址空间 > 毒鸡汤&#xff…

git 常用命令总结

git 工作原理图&#xff1a; git 常用命令及解释: 命令解释例子git init在当前目录初始化一个新的 Git 仓库。git initgit clone <repository>克隆一个远程仓库到本地。git clone https://github.com/example/repository.gitgit add <file>将文件的变化添加到暂存…

MongoDB文档操作

3.3 文档操作 3.1 文档介绍 文档的数据结构和 JSON 基本一样。 所有存储在集合中的数据都是 BSON 格式。 BSON 是一种类似 JSON 的二进制形式的存储格式&#xff0c;是 Binary JSON 的简称。 文档是一组键值(key-value)对(即 BSON)&#xff0c;一个简单的文档例子如下&…

Ubuntu安装K8S(1.28版本,基于containrd)

原文网址&#xff1a;Ubuntu安装K8S(1.28版本&#xff0c;基于containrd&#xff09;-CSDN博客 简介 本文介绍Ubuntu安装K8S的方法。 官网文档&#xff1a;这里 1.安装K8S 1.让apt支持SSL传输 sudo apt-get update sudo apt-get -y install apt-transport-https ca-certi…

web三层架构

目录 1.什么是三层架构 2.运用三层架构的目的 2.1规范代码 2.2解耦 2.3代码的复用和劳动成本的减少 3.各个层次的任务 3.1web层&#xff08;表现层) 3.2service 层(业务逻辑层) 3.3dao 持久层(数据访问层) 4.结合mybatis简单实例演示 1.什么是三层架构 三层架构就是把…

UG装配设计概念

装配的概念&#xff1a;简单说就是将多个零件按照要求组装的过程就叫装配 装配设计的优势&#xff1a; 1、预见产品设计的不足&#xff0c;特别是多零件的配合 2、便于团队协作 3、方便数据管理 4、优化装配工艺 装配设计的两种方法&#xff1a; 1、自下而上&#xff08;自…

【开源】基于Vue+SpringBoot的贫困地区人口信息管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 人口信息管理模块2.2 精准扶贫管理模块2.3 特殊群体管理模块2.4 案件信息管理模块2.5 物资补助模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 人口表3.2.2 扶贫表3.2.3 特殊群体表3.2.4 案件表3.2.5 物资补助表 四…

毫米波雷达:从 3D 走向 4D

1 毫米波雷达已广泛应用于汽车 ADAS 系统 汽车智能驾驶需要感知层、决策层、执行层三大核心系统的高效配合&#xff0c;其中感知层通过传感器探知周围的环境。汽车智能驾驶感知层将真实世界的视觉、物理、事件等信息转变成数字信号&#xff0c;为车辆了解周边环境、制定驾驶操…

恶意软件分析沙箱在网络安全策略中处于什么位置?

恶意软件分析沙箱提供了一种全面的恶意软件分析方法&#xff0c;包括静态和动态技术。这种全面的评估可以更全面地了解恶意软件的功能和潜在影响。然而&#xff0c;许多组织在确定在其安全基础设施中实施沙箱的最有效方法方面面临挑战。让我们看一下可以有效利用沙盒解决方案的…

pytest pytest-emoji通过表情包展示执行状态

pytest-emoji 是一个用于在 Pytest 测试运行期间显示 emoji 表情的插件。它可以为测试结果添加一些有趣的表情符号&#xff0c;以增加测试报告的可读性和趣味性。 使用 pytest-emoji 插件非常简单&#xff0c;只需按照以下步骤进行操作&#xff1a; 首先&#xff0c;确保已经安…

Golang 链表的基础知识

文章目录 链表链表基础知识部分链表的存储方式链表的定义链表的操作性能分析相关leetcode题目 链表 更多有关于go链表的内容可以见这篇文章链表的创建和读取 链表基础知识部分 什么是链表&#xff0c;链表是一种通过指针串联在一起的线性结构&#xff0c;每一个节点由两部分…

docker 安装可视化工具 Protainer 以及 汉化

一、创建保存数据的卷 安装网址&#xff1a;Install Portainer BE with Docker on Linux - Portainer Documentation docker pull portainer/portainer二、根据portainer镜像创建容器 docker run -d -p 8000:8000 -p 9000:9000\ --name portainer --restartalways \ -v /var/r…

大数据技术发展史

今天我们常说的大数据技术&#xff0c;其实起源于Google在2004年前后发表的三篇论文&#xff0c;也就是我们经常听到的“三驾马车”&#xff0c;分别是分布式文件系统GFS、大数据分布式计算框架MapReduce和NoSQL数据库系统BigTable。 你知道&#xff0c;搜索引擎主要就做两件事…

Vue3使用的Compostion Api和Vue2使用的Options Api有什么不同?

我们介绍Compostion Api和Options Api的区别之前&#xff0c;先来说一下为什么会推出来Composition Api&#xff0c;解决了什么问题&#xff1f; Vue2开发项目使用Options Api存在的问题 代码的可读性和维护性随着组件的变大业务的增多而变得差代码的共享和重用性存在缺点不支…

electron 菜单栏打开指定url页面菜单实现方法

electron 菜单栏打开指定url页面菜单 可以是本地URL也可以是远程的URL 自动判断跳转 以下代码可以在主进程main.js里面也可以是在独立的模块文件里面 const { BrowserWindow } require(electron);//定义窗口加载URL export const winURL process.env.NODE_ENV development …

WEB 3D技术 three.js 色彩空间讲解

上文 WEB 3D技术 three.js 设置环境贴图 高光贴图 场景设置 光照贴图 我们讲了基础材质的各种纹理 但是 我们的图片 到了界面场景中 好像绿的程度有点不太一样了 这里的话 涉及到我们的色彩空间 他有两种 一种是线性的 一种是 sRGB类型的 线性呢 就是根据光照强度 去均匀分…

如何在 NAS 上安装 ONLYOFFICE 文档?

文章作者&#xff1a;ajun 导览 ONLYOFFICE 文档 是一款开源办公套件&#xff0c;其是包含文本文档、电子表格、演示文稿、表单、PDF 查看器和转换工具的协作性编辑工具。它高度兼容微软 Office 格式&#xff0c;包括 .docx、.xlsx 、.pptx 、pdf等文件格式&#xff0c;并支持…

使用yolov5的2.0分支训练自己的模型并在x3派运行

目录 准备代码、权重、数据集配置环境准备数据标注数据 训练模型转换模型验证模型准备校准数据转换为板上模型模型精度分析 上板 之前训练自己模型的时候使用的是博主 bubbling的1.0分支的代码&#xff0c;博主的 博客比较详细&#xff0c;使用的是VOC2007数据集&#xff0c;…

ROS仿真R2机器人之安装运行及MoveIt的介绍

R2(Robonaut 2)是NASA美国宇航局与GM通用联合推出的宇航人形机器人&#xff0c;能在国际空间站使用&#xff0c;可想而知其价格是非常昂贵&#xff0c;几百万美刀吧&#xff0c;还好NASA发布了一个R2机器人的Gazebo模型&#xff0c;使用模型就不需要花钱了&#xff0c;由于我们…