基于云技术和虹膜识别的微信智能柜控制系统及存件、取件方法与流程

文档序号:15351121发布日期:2018-09-04 23:20阅读:198来源:国知局

本发明属于智能柜的技术领域,涉及一种基于云技术和虹膜识别的微信智能柜控制系统及存件、取件方法。



背景技术:

目前市场上的智能柜大体可分为传统智能柜、物联网智能柜两大类,前者一般采用条码、efid射频卡作为物主身份识别的主要途径。物联网智能柜则是更进一步,采用当前越来越成熟的物联网iot技术,将设备连接到因特网上面,用户可以随时随地查询柜子的状态、存件或者取件等操作,因此物联网方式的智能柜一般都需要伴随移动app来使用。在电子商务应用蓬勃发展的今天,基于物联网的智能柜为用户带来了更大的价值空间。而本发明主要以物联网、微信app、生物识别技术作为载体,提出全新的智能柜解决方案,将智能柜应用导向到物联网+生物识别+app联合的新方式。

使用传统的物联网智能柜虽然能满足用户的基本存取需求,但是在某些情况下,仍然可能不太方便,下面是一个可能比较常见的场景:比如在游泳馆,如果通过手机app、rfid或者条码进行存件,需要保存好前述的取件信息,比如客户的手机。但是游泳的时候,手机可能是没法带下水的,这样的场景极大抵消了智能柜带来的便利性。存件凭据没法妥善的保存,而使用指纹可能出现指纹被水泡变形的问题,导致识别不出,这个场景下物联网功能的附加价值没法体现。



技术实现要素:

本发明的主要目的在于克服现有技术的缺点与不足,提供一种基于云技术和虹膜识别的微信智能柜控制系统及存件、取件方法,利用每个人生物特征的不同作为标识,同时和微信公众号openid账户做关系绑定、用户通过此任一方式即可完成存件、取件。

为了达到上述目的,本发明采用以下技术方案:

本发明基于云技术和虹膜识别的微信智能柜控制系统,包括集成虹膜和锁控功能的嵌入式储物系统、云端管理系统以及微信app,

所述嵌入式储物系统基于稳定可靠的openwrt操作系统,其上方连接到云端管理系,下方通过rs485/串口方式连接到虹膜识别模块、电子锁控制板,用于执行云端管理系统下发的操作指令,以模块化动态链接库方式加载虹膜模块,通过管理平台配置虹膜模块类型和应用参数;

所述云端管理系统,用于响应整个系统业务的处理,是微信智能柜终端、微信公众号平台、商家web管理控制台交互中心,包含了支付业务、实时通信业务、用户管理、存取件历史记录等子单元;

所述微信app,用于用户扫码二维码,并进入到智能柜运营商的微信公众号,云端管理系统可以识别出该用户的id,并根据扫码指令执行存、取件操作,如果用户余额不足也可以推送支付推送消息,用户根据点击该通知消息进入到支付页面并支付。

作为优选的技术方案,所述嵌入式储物系统包括物联网通讯模块、虹膜识别模块、锁控模块、管理模块、参数配置模块、软件升级模块以及日志查看模块;

所述物联网通讯模块,用于同云端管理系统的实时通讯连接,接受来自云端管理系统的通讯指令;

所述虹膜识别模块,用于同虹膜识别硬件之间的通讯,虹膜识别硬件同嵌入式储物系统是相互独立的硬件、通过串口进行通讯和交互;

所述锁控模块,用于连接到锁控板硬件,锁控板硬件连接到每个箱子的电磁锁,可以执行开锁操作,也可以查询到每个电子锁的开关状态;

所述参数配置模块,用于保存嵌入式储物系统的运行配置信息,配置有基于本地web保存的模块运行参数、电磁锁配置、也有来自云端保存或者分配的参数如设备id,设备二维码信息;

所述软件升级模块可通过本地web管理系统上传升级、也可以在云端由商户下发自动升级到最新的稳定版本;

所述日志查看模块,用于保存嵌入式储物系统的运行信息,用于调试或异常情况的诊断依据。

本发明基于云技术和虹膜识别的微信智能柜控制系统的存件方法,包括下述步骤:

s11、用户通过微信app扫描控制柜上的微信二维码,扫描二维码的信息通过微信开放平台接口被发送到云端管理系统,云端管理系统根据信息携带的openid和appid查询用是否存在用户对应的虹膜id;

s12、如果用户没有使用过虹膜id,则分配一个数字类型的虹膜id给用户,并发出通知推送提醒用户注册,当用户需要注册时,点击通知推送连接进入到虹膜识别交互页面,所述交互页面上记载有用户虹膜注册需要了解的操作规范,用户点击按钮进入到注册页面,完成注册后,重新扫描智能柜上的二维码;

s13、如果用户没有使用过虹膜id,进入存件流程,具体包括下述步骤:

s131、云端管理系统查询智能柜空闲队列是否有可用的箱子,如果有则分配一个,并将这个箱门划分到已使用队列,同时保存好该用户的openid、存入时间、锁地址、昵称和头像信息;

s132、将步骤s131中保存的信息作添加到日志数据库,以备管理员查询,推送微信通知给用户,提示其打开的柜门编号、存取时间、柜子存放位置信息;

s133、向云端管理系统推送开锁消息,开锁消息类型是存包,也附带了用户的openid、昵称、锁地址、锁状态检查时间;

s134、嵌入式储物系统收到开锁请求后,通过云端管理系统提供的api查询用户openid的虹膜下载地址;

s135、当收到来自云端管理系统的url地址后,嵌入式储物系统启动一个线程,将用户的虹膜下载并保存到内存中;

s136、下载了虹膜采样数据后,主线程调用虹膜模块接口将此虹膜采样数据下发到虹膜硬件模块,完成存件流程。

作为优选的技术方案,步骤s12中,完成虹膜注册的具体步骤为:

s121、点击获取验证码,云端管理系统将此消息推送到嵌入式储物系统,嵌入式储物系统会生成一个n位的数字随机码,并通过文字转声音tts技术播出此数字验证码到音箱;

s122、用户根据听到的语音验证码输入到页面的验证码输入框,js前端代码将内容以websocket+mqtt方式推送到嵌入式储物系统验证,若验证码输入正确,执行查询,如果查找到当前用户的数据,以对话框提示当前使用用户;

s123、如果验证码输入不正确,将导致用户的websocket实时连接断开,无法完成后续操作;

s124、用户点击页面上的虹膜注册按钮启动虹膜注册过程,嵌入式储物系统通过音箱反馈用户的虹膜注册信息,所述虹膜注册信息为用户的眼睛信息或眼睛动作;

s125、当用户注册成功,则移动终端上实时收到推送信息,提示虹膜已经注册完成;

s126、成功完成虹膜注册的用户,嵌入式储物系统将此用户的虹膜信息从模块下载到内存,并按照商户和虹膜id作为特征参数上传到云端管理系统,由于上传信息是通过云端下发的token进行验证的;

s127、注册完成后,重新扫描智能柜上的二维码。

作为优选的技术方案,还包括下述步骤:

如果用户不熟悉使用规范导致注册超时,音箱语音也有相应的提示信息。

作为优选的技术方案,还包括下述步骤:

如果用户如要关闭虹膜,可通过个人中心的虹膜信息页面删除存储在云端管理系上的虹膜信息。

作为优选的技术方案,在步骤s11中,若商家设置了费率,当用户费用不足时,则推送是否付费的指令,若用户选择付费,则跳转到付费页面。

作为优选的技术方案,步骤s12通过html5+websocket实现,具体为:

采用mqtt协议,此协议可以支持同时tcp、websocket两种方式接入,嵌入式储物系统和云端管理系统之间是通过tcp方式连接,而当用户使用微信同云端管理系统通信时,由于web不支持tcp只能以websocket方式连接到mqttbroker,出于安全考虑websocket的连接只能接收消息,而不能向外发布消息,发布消息仍然通过httpapi实现。

本发明基于云技术和虹膜识别的微信智能柜控制系统的取件方法,包括下述步骤:

s21、在智能柜的柜体上设计了一个按钮,并绑定到gpio端口,默认是低电平状态,当用户触动按钮引起电平变化时,嵌入式终端侦测到了此变化,从而触发取件操作;

s22、嵌入式储物系统通过tts语音提示用户已经进入到取件操作,用户将眼睛靠近虹膜模块;

s23、虹膜模块通过摄像头读取并分析用户虹膜提取特征值,和存件过程中下发存储的虹膜采样数据做1:n比对;

s24、如果比对失败,tts提示取件失败。

s25、如果比对成功,则返回当前识别用户的虹膜id,此虹膜id和云端管理系统有对应关系,嵌入式储物系统将此用户虹膜id上传到云端管理系统请求开锁;

s26、云端管理系统查询到虹膜id所对应的openid,进而在柜门使用队列找到了openid对应的柜子信息,云端管理系统向嵌入式储物系统推送开锁取件指令,并向用户推送通知提醒;

s27、如果没有找到步骤s25所对应的用户或者箱子,则向嵌入式终端应答没有找到,否则进入步骤s28;

s28、嵌入式储物系统收到了来自云端的取件指令,打开智能柜柜门,并向云端管理系统应答,用户取件成功,同时删除该用户的虹膜采样数据。

作为优选的技术方案,步骤s23具体为:通过提取当前用户的虹膜特征码,数据约1024字节,同前面下发到数据库的所有用户特征码做比对,跳过所有比对结果低于阀值的结果。返回唯一的用户,并通过串口通知嵌入式储物系统其用户id。如果没有找到合适或者数据库为空则返回失败。

本发明与现有技术相比,具有如下优点和有益效果:

1、用户不需要在每台智能柜上录入虹膜、为存取操作提供便利。

2、如果虹膜识别算法部署在云端,由于采集的照片需要持续上传,会占用比较大的4g传输带宽和耗用比较多的流量。而且服务器需要提供比较强劲的运算能力和带宽资源才能完成部署。而此方案每次仅仅只需要上传、下载1024字节的虹膜特征数据即可。

附图说明

图1是本发明的系统方框图;

图2是本发明的存件方法流程图;

图3是本发明的取件方法流程图。

具体实施方式

下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。

实施例1

如图1所示,基于云技术和虹膜识别的微信智能柜控制系统包括集成虹膜和锁控功能的嵌入式储物系统、云端管理系统以及微信app,通过微信app扫描嵌入式储物系统上的微信二维码,将该信息上传到云端管理系统进行虹膜验证,从而完成存件、取件的流程。

所述嵌入式储物系统基于稳定可靠的openwrt操作系统,其上方连接到云端管理系,下方通过rs485/串口方式连接到虹膜识别模块、电子锁控制板。用于执行云端管理系统下发的操作指令,以模块化动态链接库方式加载虹膜模块,通过管理平台配置虹膜模块类型和应用参数;

所述嵌入式储物系统包括物联网通讯模块、虹膜识别模块、锁控模块、管理模块、参数配置模块、软件升级模块以及日志查看模块;

所述物联网通讯模块,用于同云端管理系统的实时通讯连接,接受来自云端管理系统的通讯指令;

所述虹膜识别模块,用于同虹膜识别硬件之间的通讯,虹膜识别硬件同嵌入式储物系统是相互独立的硬件、通过串口进行通讯和交互;

所述锁控模块,用于连接到锁控板硬件,锁控板硬件连接到每个箱子的电磁锁,可以执行开锁操作,也可以查询到每个电子锁的开关状态;

所述参数配置模块,用于保存嵌入式储物系统的运行配置信息,配置有基于本地web保存的模块运行参数、电磁锁配置、也有来自云端保存或者分配的参数如设备id,设备二维码信息;

所述软件升级模块可通过本地web管理系统上传升级、也可以在云端由商户下发自动升级到最新的稳定版本;

所述日志查看模块,用于保存嵌入式储物系统的运行信息,用于调试或异常情况的诊断依据。

所述云端管理系统,用于响应整个系统业务的处理,是微信智能柜终端、微信公众号平台、商家web管理控制台交互中心,包含了支付业务、实时通信业务、用户管理、存取件历史记录等子单元。是整个智能柜存取业务处理的大脑。

所述微信app,用于用户扫码二维码,并进入到智能柜运营商的微信公众号,云端管理系统可以识别出该用户的id,并根据扫码指令执行存、取件操作,如果用户余额不足也可以推送支付推送消息,用户根据点击该通知消息进入到支付页面并支付。

虽然市场上不同的虹膜模块提供的接口可能各不相同,满足本发明的虹膜模块需要支持如下功能:

1.虹膜模块的初始化和退出清理功能。

2.提供进入虹膜识别、注册、以及进入idle状态时候的操作。

3.使模块进入到用户识别模式,并在1:n识别成功的时候,调用主程序api处理识别结果。

4.放弃当前的操作内容,比如退出用户识别模式或者用户注册模式。

5.获取或者设置用户的虹膜采样数据,采样数据如下发到其他的设备,则该设备亦可以同样识别出该用户。获取虹膜模板主要用户注册后上传到云端进行保存。

6.删除用户模板。当用户取出虹膜后,需要将该用户的虹膜采样数据从此终端进行删除。

7.查找用户采样数据是否存在。

为了规范、并尽量使用更多的模块,用户的虹膜id被定义为24bit的数字类型。其作为用户属性,同微信openid保存在同一个数据库记录中。

本发明主要依托物联网和移动互联网技术,实现一套基于云端的基于虹膜识别的智能柜存取方案,用户在某个柜子上通过微信注册虹膜信息后,用户的虹膜数据信息上传到云端存储平台,以后商户下的所有柜子均可以使用柜子上的虹膜识别单元识别出该用户,实现虹膜取件功能。

实施例2

本实施例2是基于实施例1中微信智能柜控制系统的存件方法,如图2所以,该存件方法包括下述步骤:

s11、用户通过微信app扫描控制柜上的微信二维码,扫描二维码的信息通过微信开放平台接口被发送到云端管理系统,云端管理系统根据信息携带的openid和appid查询用是否存在用户对应的虹膜id;如果没有对应用户的虹膜id,则执行步骤s12-s19;如果有对应用户的虹膜id,则执行步骤s110-s115;

s12、用户没有使用过虹膜id,则分配一个数字类型的虹膜id给用户,并发出通知推送提醒用户注册;当用户需要注册时,点击通知推送连接进入到虹膜识别交互页面,提示用户虹膜注册需要了解的操作规范,用户点击按钮进入到注册页面;

步骤s12通过html5+websocket实现,我们的消息系统基于mqtt协议实现,此协议可以支持同时tcp(可支持ssl加密)、websocket两种方式接入。嵌入式储物系统和云端管理系统之间是通过tcp方式连接,而当用户使用微信同云端管理系统通信时,由于web不支持tcp只能以websocket方式连接到mqttbroker,出于安全考虑websocket的连接只能接收消息,而不能向外发布消息,发布消息仍然通过httpapi实现。

s13、点击获取验证码,云端管理系统将此消息推送到嵌入式储物系统,嵌入式储物系统会生成一个n位的数字随机码,并通过文字转声音tts技术播出此数字验证码到音箱;

s14、用户根据听到的语音验证码输入到页面的验证码输入框,js前端代码将内容以websocket+mqtt方式推送到终端验证,若验证码输入正确,执行查询,如果查找到当前用户的数据,以对话框提示当前使用用户;

s15、如果验证码输入不正确,将导致用户的websocket实时连接断开,无法完成后续操作;

s16、用户点击页面上的虹膜注册按钮启动虹膜注册过程,嵌入式终端通过音箱反馈用户的虹膜注册信息,所述虹膜注册信息为用户的眼睛信息或眼睛动作;

s17、当用户注册成功,则移动终端上实时收到推送信息,提示虹膜已经注册完成;

s18、成功完成虹膜注册的用户,终端将此用户的虹膜信息从模块下载到内存,并按照商户和虹膜id作为特征参数上传到云端管理系统,由于上传信息是通过云端下发的token进行验证的;

s19、注册完成后,重新扫描智能柜上的二维码,转入步骤s110;

s110、云端管理系统查询智能柜空闲队列是否有可用的箱子,如果有则分配一个,并将这个箱门划分到已使用队列,同时保存好该用户的openid、存入时间、锁地址、昵称和头像信息;

s11、将步骤s10中保存的信息作添加到日志数据库,以备管理员查询,推送微信通知给用户,提示其打开的柜门编号、存取时间、柜子存放位置信息;

s112、向云端管理系统推送开锁消息,开锁消息类型是存包,也附带了用户的openid、昵称、锁地址、锁状态检查时间;

s113、终端收到开锁请求后,通过云端管理系统提供的api查询用户openid的虹膜下载地址;

s114、当收到来自云端管理系统的url地址后,嵌入式储物系统启动一个线程,将用户的虹膜下载并保存到内存中;

s115、下载了虹膜采样数据后,主线程调用虹膜模块接口将此虹膜采样数据下发到虹膜硬件模块,完成存件流程。

作为本发明的另一种实施例,还包括下述步骤:

s116、如果用户不熟悉使用规范导致注册超时,音箱语音也有相应的提示信息。

作为本发明的另一种实施例,还包括下述步骤:

s117、用户如要关闭虹膜,可以通过个人中心的虹膜信息页面删除存储在云端的虹膜信息。

实施例3

本实施例3是基于实施例1中微信智能柜控制系统的取件方法,用户端的注册流程同实施例2,如图3所示,本实施例3中,该取件方法包括下述步骤:

s21、在智能柜的柜体上设计了一个按钮,并绑定到gpio端口,默认是低电平状态,当用户触动按钮引起电平变化时,嵌入式终端侦测到了此变化,从而触发取件操作;

s22、嵌入式储物系统通过tts语音提示用户已经进入到取件操作,用户将眼睛靠近虹膜模块;

s23、虹膜模块通过摄像头读取并分析用户虹膜提取特征值,和存件过程中下发存储的虹膜采样数据做1:n比对;

步骤s23具体为:

通过提取当前用户的虹膜特征码,数据约1024字节,同前面下发到数据库的所有用户特征码做比对,跳过所有比对结果低于阀值的结果。返回唯一的用户,并通过串口通知嵌入式储物系统其用户id。如果没有找到合适或者数据库为空则返回失败。

s24、如果比对失败,tts提示取件失败。

s25、如果比对成功,则返回当前识别用户的虹膜id,此虹膜id和云端管理系统有对应关系,嵌入式储物系统将此用户虹膜id上传到云端管理系统请求开锁;

s26、云端管理系统查询到虹膜id所对应的openid,进而在柜门使用队列找到了openid对应的柜子信息,云端管理系统向嵌入式储物系统推送开锁取件指令,并向用户推送通知提醒;

s27、如果没有找到步骤s25所对应的用户或者箱子,则向嵌入式终端应答没有找到,否则进入步骤s28;

s28、嵌入式储物系统收到了来自云端的取件指令,打开智能柜柜门,并向云端管理系统应答,用户取件成功,同时删除该用户的虹膜采样数据。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1