现实生活中除了单纯以「物品数量」结帐外,还有其他情况是以「秤重」来计算价格的,也就是「重量乘上单位价格」,这类的场景比如水果摊、糖果铺、自助餐、中药行、菜市场等。
如果有一台 POS 机,能够识别物品并自动切换以重量或数量的方式来结帐,该有多方便啊!下面我们就来实际操作一台自动 POS 机,能够识别商品并依据商品种类来决定所采用的计价方式,比如西瓜用斤,鸡蛋用颗数来计算等。
所需材料只要一块普通的树莓派,不需要任何硬件加速器,大约元就能搞定,对于不需要打印发票或链接后台 POS 系统的小商家可说是相当方便!
功能需求
1. 自动识别商品
2. 秤重功能
各个商品可设定自己的秤重单位和单位价格(如公斤、斤、克)
1. 连续物品的结帐功能(一位顾客会购买多样商品,因此需一样样依次识别秤重后再一起结帐)
2. 不同类商品但单位重量价格相同,可放在一起同时结帐
使用零件
- 树莓派板子 x1 (约 350~500 元)
- 树莓派 7” 官方屏幕(含触控) x1 (约 450~600元)
- 模组 5 kg 压力感测器 x1 (约 35~70元)
- Web 摄像头 x1 (约 60~200 元)
这类的压力感测器是将应变片贴附在钢或铝的柱状体上,主要是通过感应这个柱状体上微小的变化来探知物体的重量:另外,为 24 位元的 A/D 转换器,由于其感应的数值很小,需通过模组来放大。
摄像头使用的是 标准的 USB,而由于 模型的图片尺寸需求为 416×416,因此使用一般最便宜的 VGA 即可。
3D 打印外壳
外壳设计如下,分别为主体和秤重盘,可一体化树莓派和秤重模组等零件;我是以白色来打印,不过由于屏幕为黑色,因此模型颜色使用黑色其实会更适合。
组装和接线
由于零件不多,因此组装相当容易,基本上就是把秤重模组放入圆形凹槽、树莓派含屏幕倒扣在方形凹槽即可。
模组与树莓派的接法如下:
- VCC 5V
- GND 接地
- DT Pin (引脚号 5)
- SCK Pin (引脚号 6)
程序设计
使用者动作流程:同一位顾客的多个商品,可使用结帐按钮来累积其金额:清空按钮则可清除目前的购物车,开始下一位客人的结帐。
秤重模组程序在网络上有现成的可直接使用,我参考的是这个,有稍加修改后再整合到程序中;这个程序每次执行时,会先侦测目前的重量,以其作为基准(代表重量为零),所以一开始执行程序时记得不要放任何东西在秤盘上。
程序和参数说明
如果您使用的零件都相同,基本上只要修改设定的内容,并改成您自己训练好的模型即可。
各项参数说明如下:
- 商品列表:
格式为 ID: [品名, 单价(每重量单位或每个), 计价单位]
计价单位 --> g:斤, kg:公斤, 克, 一个
- 录制视频:
(H, V) 是否水平或垂直翻转画面
是否将过程录制成影片
影片名称
每秒帧数
- 背景图片
背景图片的路径名称
(y,x) 购物车的显示尺寸
仅仅显示用, 侦测种类
- 其他参数
CN, EN
商品结帐的结果, 要显示几秒
- GUI参数
是否切换到全屏幕来执行
缩放倍数
截屏的区域
cfg
小结
不同种类的物品可设定专属的秤重单位(公斤、克、斤),或换成以数量计价;商品的识别时间约为 4 秒,如果想要更快的速度,可将树莓派 3 替换成第四代,或者加上 NCS 加速棒甚至改用 ,相信能得到更好的识别效率。
银联刷卡机安装丨银联POS机办理中心
微信:18121958461
电话:18121958461
地址: 成都市人民东路6号川航大厦
银联POS机办理推荐