程序汪20万接的无人售货机项目,开发周期2个月

本文详细介绍了开发团队如何通过Vue和SpringBoot技术栈实现无人售货机项目,涉及硬件(摄像头、电子秤)的对接,AI商品识别技术的应用,以及商业项目的价格评估。通过实例展示了项目的整体流程和技术选型,对开发者有实用价值。
摘要由CSDN通过智能技术生成

本文章来自程序汪背后的私活小团队,无人售货机的项目,希望把这些真实案例分享出来,大家能学到点东西,比如软件硬件怎么对接,商业项目具体怎么评估价格,无人售货机技术方案是什么样的等等。

B站【我是程序汪】

图片

开发人员

  • 前端   技术栈  vue  主要任务小程序及PC端页面

  • 后端   技术栈  springboot  

  • AI商品识别

  • 硬件 售货机 锁 摄像头 电子秤

  • 开发周期60天  

  • 开发人数 3人   

  • 整体研发费用是20万

  • 走的公司合同

  • 云服务器2台

后端技术选型

  • 核心框架:Spring Boot

  • 数据库连接池:Druid

  • 缓存:redis

  • 数据库:mysql

项目背景

售货机目前市面上已经很多了,特别是风景区车站地铁等,无人售货机目前市面上的成品相对较少,我们利用视频流进行AI自动识别来判断顾客购买了具体什么商品,相比其他售货机体验更好操作也更简单。

本项目涉及3个硬件联调对接 摄像头(成品)、电子秤、门锁

核心流程

程序汪还是画个简单的流程图吧,方便大家理解

图片

摄像头

这里的摄像头用于监控同时也方便AI识别商品,摄像头本身不需要然后开发,只需要购买市面上的成品就可以。视频推流AI去分析识别出具体商品

摄像头实时捕捉客户取货过程,从而判断客户拿的是什么。与静态识别相比,这项技术需要的摄像头更少,不需要检测所有产品,只需要看客户拿走或放回的产品。摄像头较少,一般都设在门上,空间利用率高。

图片

顾客拿出来商品的瞬间AI就可以识别出商品,如下图

图片

摄像头的文档主要就是配置好网络设置好推流基本操作

图片

电子秤

这里电子秤的作用主要是验证 AI识别的正确性,算双重验证吧。当开门时和拿走商品时,计算重量的变化来确定商品。电子秤会主动上报重量给后端,这里核心的参数是 订单ID

图片

后端系统上架商品会输入相应的重量

图片

电子秤的接口文档

图片

设备登录  (A1)

命令报文数据域:

代码

长度

格式

数据

描述

SN

6

HEX

ICCID

10

HEX

CSQ

1

HEX

响应报文数据域:成功响应:

代码

长度

格式

数据

描述

ReturnCode

1

HEX

80

80表示成功

ErrorCode

1

HEX

00

00正常

设备心跳  (A2)

命令报文数据域:

代码

长度

格式

数据

描述

服务响应

代码

长度

格式

数据

描述

Heart

1

Hex

80

服务开启命令  (A0) 

后端服务通过订单ID 识别具体是哪次交易

命令报文数据域:

代码

长度

格式

数据

描述

timeId

10

HEX

订单ID

relay1_on_off

4

HEX

00,01

00关闭设备 01开启设备  大端序排列

Relay2_on_off

4

HEX

00,01

00关闭设备 01开启设备  大端序排列

Relay3_on_off

4

HEX

00,01

00关闭设备 01开启设备  大端序排列

fan_on_off

4

HEX

00,01

00关闭设备 01开启设备  大端序排列

led_on_off

4

HEX

00,01

00关闭设备 01开启设备  大端序排列

Fan_water

1

HEX

0,1

风机喷雾 0关闭 1开启

fan_speed

1

HEX

1,2,3

1慢速 2中速 3快速

left_right

1

HEX

0-200

对应 0-270度

up_down

1

HEX

0-200

对应 0-270度

led_pwm

1

HEX

30,60,90

30低 60中 90高(亮度)

led_mode

1

HEX

1,2

1冷光 2暖光

响应报文数据域:成功响应:

代码

长度

格式

数据

描述

ReturnCode

1

HEX

80

80表示成功

relay1_time

4

HEX

0x64000000十进制100

时间秒  正常数据为时间

Relay2_time

4

HEX

0x64000000十进制100

时间秒  正常数据为时间

Relay3_time

4

HEX

0x64000000十进制100

时间秒  正常数据为时间

fan_time

4

HEX

0x64000000十进制100

时间秒  正常数据为时间

led_time

4

HEX

0x64000000十进制100

时间秒  正常数据为时间

Fan_water

1

HEX

0,1

风机喷雾 0关闭 1开启

结束数据上传  (A3)

代码

长度

格式

数据

描述

timeId

10

HEX

订单ID

relay1_time

4

HEX

0x64000000十进制100

时间秒  正常数据为时间

Relay2_time

4

HEX

0x64000000十进制100

时间秒  正常数据为时间

Relay3_time

4

HEX

0x64000000十进制100

时间秒  正常数据为时间

fan_time

4

HEX

0x64000000十进制100

时间秒  正常数据为时间

led_time

4

HEX

0x64000000十进制100

时间秒  正常数据为时间

Fan_water

1

HEX

0,1

风机喷雾 0关闭 1开启

fan_speed

1

HEX

1,2,3

1慢速 2中速 3快速

left_right

1

HEX

0-200

对应 0-270度

up_down

1

HEX

0-200

对应 0-270度

led_pwm

1

HEX

1,2,3

1低 2中 3高(亮度)

led_mode

1

HEX

1,2

1冷光 2暖光

water_error

1

HEX

无水预警

moto_error

1

HEX

升降超时预警

AC_moto_error

1

HEX

防堵预警

DC_error

1

HEX

断电预警

响应报文数据域:成功响应:

代码

长度

格式

数据

描述

ReturnCode

1

HEX

80

80表示成功

Errorcode

1

HEX

00

00

数据

#A01234567890681C02A064000000C80000002C01000090010000F4010000010232323C012516

A0 设备开启指令

设备ID 123456789068

64000000 100 秒 继电器一通道时间

。。。。

。。。。

。。。。

25数据校验和

售货机的开锁

注意关闭门锁后需要后端调用AI 和 电子秤 获去商品信息进行验证,验证通过结算订单

图片

AI商品识别

这里的AI商品识别是找的一个专业团队开发的,这里给大家一个参考吧,市面上成熟的也比较多,你花钱就行

图片

图片

文章最下面分享下腾讯 百度等AI商品识别能力项目资源

小程序

以前开发的充电宝项目的小程序非常类似,拿过来改吧改吧就变无人售货机项目了,接私活项目如果你没有可以复用的项目,都是从零开始开发成本就非常高了。

图片

PC端

目前主要功能,跟以前充电宝项目基本差不多吧,拿来根据甲方要求,再改吧改吧

图片

图片

AI商品识别项目参考资料

[1]

https://ai.baidu.com/solution/fmcg/sku

[2]

https://github.com/huggingface/pytorch-image-models

[3]

https://www.paddlepaddle.org.cn/modelbasedetail/vgg

[4]

https://cloud.tencent.com/document/product/865/36457

[5]          https://ai.baidu.com/tech/easydl/dkycommodity

历史私活项目案例分享

程序汪接私活项目目录,2023年总结

程序汪10万接的无线共享充电宝项目,开发周期3个月

程序汪1万接的企业官网项目,开发周期15天

程序汪8万接的共享口罩项目,开发周期1个月

程序汪8万块的饮水机物联网私活项目经验分享

程序汪接的4万智慧餐饮项目

程序汪接的酒店在线开房项目,另外一个好听的名字叫智慧酒店

  • 11
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值