回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

【比赛优秀作品】无人超市货架管理系统 简单

头像 木子呢 2024.03.29 57 1

无人超市货架管理系统
作品来源:第四届全国青少年人工智能挑战赛—开源硬件创意智造专项赛优秀作品参赛学生:南京师范大学附属中学江宁分校  薛辙指导老师:陶言成
作品创意灵感

经过调研,在普通超市中,员工主要分为理货员、收银员、安保员、导购员等职位。无人超市里,收银、安保、导购等这些工作都可以交给机器来完成。经过分析就像下图这样,但目前来看理货这项工作还是需要人员来亲自完成:

project-image

特别是临期商品的处理、货物的及时补充,这些是一个超市商品质量的保障。相信大家谁都不想买一些过期的产品。所以我做了一个货架管理的系统,让理货人员能够及时去补充商品、及时处理过期商品。让其工作更加轻松。通过网络的管理就可以远程查看货架商品数量与保质期等。如果理货真的可以实现自动化,我们也可以把数据库的数据传输给它,来实现自动理货的功能。

功能简介

实现的主要功能:

1、商品计价:通过NFC扫描商品的标签来进行购买的商品计价,同时会在数据库中减少对应商品的数量,如果货架上的商品低于某个值就会提醒我们的理货人员进行补货
2、自助结账:可充值的NFC购物卡,如果NFC扫描到购物卡就会自助完成扣款
3、库存管理:在后台实时看到库存的变化,通过程序来实现库存管理
4、打折促销:在实时检测中,如果发现数据库中的生产日期比较临近,也会通知理货人员进行打折处理,远程修改商品的价格即可完成打折

硬件清单

Arduino UNO R3 X1Arduino UNO 扩展板X1Gravity: UART OBLOQ - IoT物联网模块X1Gravity: UART & I2C NFC近场通讯模块X1Gravity: I2C OLED-2864 显示屏X1

制作过程

经过头脑风暴后,我们决定制作货架管理系统。
根据经验,需要先进行程序的编写再进行外观的设计,这样容易控制作品的外观大小,不会出现设计完成后传感器没有地方放的情况。
把选择完成的硬件连接完成后开始逐步完成程序。
首先确定我手中的NFC卡的ID,然后根据检测的ID不同来进行不同的操作。总共三个标签,大的模拟购物卡,两个小的模拟商品。
因为所有的程序都和数据库有关,我们先收集了一些常见的商品,把商品的信息填充到数据库中,包括商品价格、保质期、上架数量、库存数量。

project-image

填充到数据库中后就可以一步步完成我们的程序了。第一张卡片当作面包1,当NFC检测到就会从数据库中读取到商品价格显示在屏幕第一行,设置一个变量总价格计算我们商品的总价显示在第二行,然后数据库中的数量减去1。

第二张商品卡片也是一样。卡片多的话可以把卡片ID对应的商品名称也写到数据库中,这样读取到商品ID就可以获取它的名称,这样程序就可以减少复杂度。

第三张的购物卡,当我们检测到之后,读取购物卡余额显示在第三行,然后计算购物后余额显示在第四行,并把新的余额写入到数据库中。如果余额不足进行提醒。

这就是Arduino程序的思路。

project-image

这个作品是为了理货人员的方便工作,所以我在Mind+的实时模式里做了一个非常直观的管理界面,可以直接完成:更新商品生产日期、补货、修改价格的功能。

在网络上找到商品的素材,开始进行编程。

project-image

首先当点击角色我们就能实现预想的功能:更新生产日期、补充货架、补充库存、价格修改。

这些操作和数据库息息相关,我们商店的商品所有信息都是从数据库中获取的。

project-image

同时在遇到一些特殊情况,程序要会实时通知我们的工作人员,比如:商品到期,货架商品不足等情况。

我根据不同的情况设置了不同的提醒方式。

商品到期是直接跳转到到期商品页面,同时商品变亮,而货架商品不足商品则会变暗。

project-image

我们也可以主动去查询商品的信息。为了防治遮挡到其他的商品,这里我用空格键来使商品显示它的信息。

project-image

程序基本编写完毕,我们就可以进行外观的设计。使用激光切割节省时间,画图也比较方便。

画图使用了MakerBrush,可以绘制立体的一些结构,但在细节的方面我们还是借助了其他的软件进行编辑。留1的地方使为了方便我们编辑细节,作品大致模型如图:

project-image

导入到laserbox进行细节修改,然后排版进行切割。

project-image

开始组装,外部框架按照立体图进行拼接。

project-image
project-image
project-image
project-image
project-image
project-image
project-image
project-image

临时决定加一些小装饰小商品在模型内部。同时顺便设计了个购物卡:

project-image

组装调试完成后,请看下面的视频演示。

作品演示视频

附件(以及试用)



软件源代码:
软件源代码为1.sb3,可通过Mind+1.7.1打开。

总共非为上传模式和实时模式。根据接线图连接好硬件后,把上传模式程序的网络热点修改好上传到Arduino板即可。

实时模式点击小绿旗开始运行,点击某件商品后根据对应的提示即可完成相应的管理操作,鼠标移到商品上按下空格键会显示商品的基础信息。如果遇到页面跳转到莫一页然后商品变白或变黑不用担心,那是在提醒你进行补货或清理临期商品。

结构设计文件:

文件是立体设计图,可通过Botcraft2 (datui.tv)进行模型导入,查看或者修改

文件是通过laserbox进行细节修改最终的切割文件,可通过laserbox进行查看,但需要对应的激光切割机才能进行切割。

硬件接线图:

接线图比较简单,总共只有三个传感器。

NFC是IIC接口,12864显示是IIC接口,OBLOQ物联网是串口。

IIC口SDA接SDA、SCL接SCL。不够用的话A4接SDA、A5接SCL。

串口RX接TX,TX接RX,上传程序时记得拔掉串口的连线

接线如下图所示:

project-image

评论

user-avatar
  • 罗罗罗

    罗罗罗2024.04.05

    优秀

    0