CN110264641A - 一种基于fpga控制的储物柜及存物、取物方法 - Google Patents
一种基于fpga控制的储物柜及存物、取物方法 Download PDFInfo
- Publication number
- CN110264641A CN110264641A CN201910541080.4A CN201910541080A CN110264641A CN 110264641 A CN110264641 A CN 110264641A CN 201910541080 A CN201910541080 A CN 201910541080A CN 110264641 A CN110264641 A CN 110264641A
- Authority
- CN
- China
- Prior art keywords
- cabinet
- password
- fpga
- mainboard
- locker
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000004891 communication Methods 0.000 claims abstract description 8
- 235000011034 Rubus glaucus Nutrition 0.000 claims description 31
- 235000009122 Rubus idaeus Nutrition 0.000 claims description 31
- 238000011161 development Methods 0.000 claims description 30
- 240000007651 Rubus glaucus Species 0.000 claims description 28
- 238000001514 detection method Methods 0.000 claims description 22
- 239000000523 sample Substances 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000000151 deposition Methods 0.000 claims description 4
- 208000033748 Device issues Diseases 0.000 claims description 3
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 244000235659 Rubus idaeus Species 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F17/00—Coin-freed apparatus for hiring articles; Coin-freed facilities or services
- G07F17/10—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for means for safe-keeping of property, left temporarily, e.g. by fastening the property
- G07F17/12—Coin-freed apparatus for hiring articles; Coin-freed facilities or services for means for safe-keeping of property, left temporarily, e.g. by fastening the property comprising lockable containers, e.g. for accepting clothes to be cleaned
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Lock And Its Accessories (AREA)
Abstract
本发明公开一种基于FPGA控制的储物柜及存物、取物方法。该储物柜包括:FPGA主板、外接键盘、显示屏和多个储物柜主体;储物柜主体包括继电器、电磁锁、关门动作捕捉触发器和超声波探测装置;各个关门动作捕捉触发器的输出端均与FPGA主板的输入端连接;FPGA主板的输出端与各个继电器连接,各继电器连接在对应的电磁锁所在的回路中;FPGA主板与超声波探测装置双向通信连接;外接键盘的输出端与FPGA主板的输入端连接,FPGA主板的输出端与显示屏的输入端连接;FPGA主板用于生成开柜密码、控制打开柜门、判断柜子是否为空柜以及验证密码是否正确。本发明能够使用户在存放物品后无需携带任何解锁物品。
Description
技术领域
本发明涉及公共储物柜领域,特别是涉及一种基于FPGA控制的储物柜及存物、取物方法。
背景技术
随着社会公共服务业的发展,商场、学校、图书馆等场所需要大量的储物,以方便人们临时放置个人物品。现有的储物柜包括机械锁储物柜和条形码储物柜等。机械锁储物柜和条形码储物柜均需要用户携带对应的解锁物品,例如机械锁储物柜需要携带钥匙,而条形码储物柜需要携带条形码,虽然给用户提供了存储物品的便利,但同时却给用户增加了需携带解锁物品的负担,无法给用户提供无需携带物品的便利。
发明内容
本发明的目的是提供一种基于FPGA(Field-ProgrammableGateArray,现场可编程门阵列)控制的储物柜及存物、取物方法,使用户在存放物品后无需携带任何解锁物品。
为实现上述目的,本发明提供了如下方案:
一种基于FPGA控制的储物柜,包括:FPGA主板、外接键盘、显示屏和多个储物柜主体;
所述储物柜主体包括继电器、电磁锁、关门动作捕捉触发器和超声波探测装置;
各个所述关门动作捕捉触发器的输出端均与所述FPGA主板的输入端连接;所述FPGA主板的输出端与各个所述继电器连接,各所述继电器连接在对应的所述电磁锁所在的回路中;所述FPGA主板与所述超声波探测装置双向通信连接;
所述外接键盘的输出端与所述FPGA主板的输入端连接,所述FPGA主板的输出端与所述显示屏的输入端连接;
所述外接键盘用于将用户输入的开柜请求、记住密码的反馈和开柜密码输出给所述FPGA主板;
所述FPGA主板用于在用户输入开柜请求时检查是否有空柜,有空柜时生成开柜密码并输出到所述显示屏显示,无空柜时生成无空柜的提示信息并输出到所述显示屏显示;在用户输入记住密码的反馈时向对应的所述继电器发送通电信号使分配给用户的柜子的柜门打开;在获取到关门动作捕捉触发器发送的关门触发信号时向对应的超声波探测装置发送探测指令,并接收对应的所述超声波探测装置传回的探测信号,判断是否为空柜;在接收到开柜密码时,验证开柜密码是否正确,正确时向对应的所述继电器发送通电信号使柜子的柜门打开,错误时生成错误提示信息并输出到所述显示屏显示。
可选的,该储物柜还包括树莓派开发板;所述树莓派开发板通过GPIO管脚与所述FPGA主板连接;所述树莓派开发板通过路由器连接到无线网络;
所述树莓派开发板用于通过无线网络获取用户的存物请求以及用户的存物用户名和密码,并根据存储的各柜子的状态判断是否有空柜,有空柜时为用户分配柜子,向所述FPGA主板发送开启所分配的柜子的开柜请求并存储所述存物用户名和存物密码,无空柜时通过所述无线网络向用户反馈无空柜的提示信息;还用于通过无线网络获取用户的取物请求、取物用户名和密码,通过将所述取物用户名和密码与所述存物用户名和密码进行对比确定存物的柜子,并向所述FPGA主板发送开启所述存物的柜子的开柜请求;
所述FPGA主板还用于在接收到所述树莓派开发板发送的开柜请求后向对应的所述继电器发送通电信号从而使对应的柜子打开。
可选的,所述超声波探测装置包括第一超声波探测器和第二超声波探测器;所述第一超声波探测器和所述第二超声波探测器分别安装在柜子的相邻的两个侧面的中央;所述第一超声波探测器的探测方向与所述第二超声波探测器的探测方向垂直。
可选的,该储物柜还包括蜂鸣器;所述蜂鸣器的输入端与所述FPGA主板的输出端连接;
所述FPGA主板还用于统计所述开柜密码的连续错误次数,当所述连续错误次数达到预设次数时向所述蜂鸣器发送报警信号;所述蜂鸣器在接收到所述报警信号后发出报警。
本发明还公开一种基于FPGA控制的储物柜的存物方法,应用于一种基于FPGA控制的储物柜,所述储物柜包括:FPGA主板、外接键盘、显示屏和多个储物柜主体;所述储物柜主体包括继电器、电磁锁、关门动作捕捉触发器和超声波探测装置;各个所述关门动作捕捉触发器的输出端均与所述FPGA主板的输入端连接;所述FPGA主板的输出端与各个所述继电器连接,各所述继电器连接在对应的所述电磁锁所在的回路中;所述FPGA主板与所述超声波探测装置双向通信连接;所述外接键盘的输出端与所述FPGA主板的输入端连接,所述FPGA主板的输出端与所述显示屏的输入端连接;
所述存物方法包括:
获取用户通过所述外接键盘输入的开柜请求;
响应所述开柜请求,判断是否有空柜,得到第一判断结果;
若所述第一判断结果表示否,则生成无空柜的提示信息输出到所述显示屏;
若所述第一判断结果表示是,则随机分配一个空柜作为待存柜;
生成所述待存柜的开柜密码;
将所述开柜密码输出到所述显示屏显示;
响应用户通过所述外接键盘输入的记住密码的反馈,向所述待存柜对应的继电器发送通电信号,从而使所述待存柜对应的电磁锁打开所述待存柜;
响应所述关门动作捕捉触发器发送的关门触发信号,向所述待存柜内的超声波探测装置发出探测指令,使所述超声波探测装置发出超声波;
响应所述超声波探测装置回传的探测信号,判断所述待存柜是否为空柜,得到第二判断结果;
若所述第二判断结果表示是,则将所述待存柜标记为空柜并删除所述开柜密码;
若所述第二判断结果表示否,则存储所述待存柜的编号和所述开柜密码。
可选的,所述生成所述待存柜的开柜密码,具体包括:
根据公式计算伪随机数;其中R为伪随机数,C为所述FPGA主板的内置计数器的值,N为柜子的总数,为取模运算;
根据公式PW=R×N+No.生成所述开柜密码;其中PW为所述开柜密码,No.为所述待存柜的编号。
可选的,所述响应所述超声波探测装置回传的探测信号,判断所述待存柜是否为空柜,得到第二判断结果,具体包括:
在向待存柜内的超声波探测装置发出探测指令后,持续获取所述超声波探测装置回传的高电平信号;
响应所述超声波探测装置在接收到超声波回声后所回传的低电平信号;
在接收到所述低电平信号后计算所述高电平信号的持续时长;
根据所述持续时长计算所述超声波探测装置与探测物体之间的距离,得到探测距离;
将所述探测距离与空柜时的探测距离进行对比确定所述待存柜是否为空柜。
本发明还公开一种基于FPGA控制的储物柜的取物方法,应用于一种基于FPGA控制的储物柜,所述储物柜包括:FPGA主板、外接键盘、显示屏和多个储物柜主体;所述储物柜主体包括继电器、电磁锁、关门动作捕捉触发器和超声波探测装置;各个所述关门动作捕捉触发器的输出端均与所述FPGA主板的输入端连接;所述FPGA主板的输出端与各个所述继电器连接,各所述继电器连接在对应的所述电磁锁所在的回路中;所述FPGA主板与所述超声波探测装置双向通信连接;所述外接键盘的输出端与所述FPGA主板的输入端连接,所述FPGA主板的输出端与所述显示屏的输入端连接;
所述取物方法包括:
获取用户通过所述外接键盘输出的开柜密码;
验证所述开柜密码是否与存储的某一柜子的开柜密码一致,得到第三判断结果;
若所述第三判断结果表示否,则生成错误提示信息并将所述错误提示信息输出到所述显示屏显示;
若所述第三判断结果表示是,则向开柜密码所对应柜子的继电器发送通电信号,从而使所述开柜密码所对应柜子的电磁锁打开所述开柜密码所对应柜子;
响应所述关门动作捕捉触发器发送的关门触发信号,向所述开柜密码所对应柜子内的超声波探测装置发出探测指令,使所述超声波探测装置发出超声波;
响应所述超声波探测装置回传的探测信号,判断所述开柜密码所对应柜子是否为空柜,得到第四判断结果;
若所述第四判断结果表示是,则将所述开柜密码所对应柜子标记为空柜并删除所述开柜密码;
若所述第四判断结果表示否,则保留所述开柜密码。
根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明在存物时生成开柜密码,取物时通过开柜密码取物,从而使用户在将物品存入储物柜后只需要记住开柜密码即可,无需携带任何解锁物品。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1的基于FPGA控制的储物柜的装置连接关系图;
图2为本发明实施例2的基于FPGA控制的储物柜的存物方法的方法流程图;
图3为本发明实施例3的基于FPGA控制的储物柜的取物方法的方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于FPGA控制的储物柜及存物、取物方法,使用户在存放物品后无需携带任何解锁物品。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
实施例1:
图1为本发明实施例1的基于FPGA控制的储物柜的装置连接关系图。
参见图1,该基于FPGA控制的储物柜,包括:FPGA主板1、外接键盘2、显示屏3和多个储物柜主体;所述储物柜主体包括继电器4、电磁锁5、关门动作捕捉触发器6和超声波探测装置7。
各个所述关门动作捕捉触发器6的输出端均与所述FPGA主板1的输入端连接;所述FPGA主板1的输出端与各个所述继电器4连接,各所述继电器4连接在对应的所述电磁锁5所在的回路中;所述FPGA主板1与所述超声波探测装置7双向通信连接;所述外接键盘2的输出端与所述FPGA主板1的输入端连接,所述FPGA主板1的输出端与所述显示屏3的输入端连接。
所述外接键盘2用于将用户输入的开柜请求、记住密码的反馈和开柜密码输出给所述FPGA主板1。
所述FPGA主板1用于在用户输入开柜请求时检查是否有空柜,有空柜时生成开柜密码并输出到所述显示屏3显示,无空柜时生成无空柜的提示信息并输出到所述显示屏3显示;在用户输入记住密码的反馈时向对应的所述继电器4发送通电信号使分配给用户的柜子的柜门打开;在获取到关门动作捕捉触发器6发送的关门触发信号时向对应的超声波探测装置7发送探测指令,并接收对应的所述超声波探测装置7传回的探测信号,判断是否为空柜;在接收到开柜密码时,验证开柜密码是否正确,正确时向对应的所述继电器4发送通电信号使柜子的柜门打开,错误时生成错误提示信息并输出到所述显示屏3显示。
可选的,所述显示屏为七段数码管显示屏。
可选的,该储物柜还包括树莓派开发板8;所述树莓派开发板8通过GPIO管脚与所述FPGA主板1连接;所述树莓派开发板8通过路由器9连接到无线网络。
所述树莓派开发板8用于通过无线网络获取用户的存物请求以及用户的存物用户名和密码,并根据存储的各柜子的状态判断是否有空柜,有空柜时为用户分配柜子,向所述FPGA主板1发送开启所分配的柜子的开柜请求并存储所述存物用户名和密码,无空柜时通过所述无线网络向用户反馈无空柜的提示信息;还用于通过无线网络获取用户的取物请求、取物用户名和密码,通过将所述取物用户名和密码与所述存物用户名和密码进行对比确定存物的柜子,并向所述FPGA主板1发送开启所述存物的柜子的开柜请求;
所述FPGA主板1还用于在接收到所述树莓派开发板8发送的开柜请求后向对应的所述继电器4发送通电信号从而使对应的柜子打开。
可选的,所述超声波探测装置7包括第一超声波探测器和第二超声波探测器;所述第一超声波探测器和所述第二超声波探测器分别安装在柜子的相邻的两个侧面的中央;所述第一超声波探测器的探测方向与所述第二超声波探测器的探测方向垂直。
超声波探测装置用于探测柜子是否为空柜。本发明的柜子中的关门动作捕捉触发器捕捉到关门信号后,FPGA主板将向两个超声波探测器发送触发信号。而两个超声波探测器在收到关门触发信号后,将向FPGA主板返回一段高电平信号。在接收到回声之前,两个超声波探测器将持续向FPGA主板发送高电平信号;接收到回声后,超声波探测器向FPGA主板发送的信号变成低电平信号。FPGA主板按照高电平持续的时间可以计算出与超声波探测器最接近的物体与超声波探测器之间的距离,并根据该距离与空柜状态时的距离是否吻合来判断柜子内部是否存有物品。
本发明的超声波探测装置的设置打破了现有的智能存储柜按照两次开闭门操作(一次存物,一次取物)来回收柜子使用权的模式,可以在用户遗漏物品时为财物的安全性进行一定的保障,并且可以更好地利用空柜资源,防止占箱不用导致存储资源浪费的情况,且超声波探测装置作为空柜检测手段成本低,效果好,且无噪音无污染,绿色环保。
本发明使用双超声波探测器完成探测,以十字型结构布局超声波探测仪的探测路径(所述第一超声波探测器的探测方向与所述第二超声波探测器的探测方向垂直),可以使探测范围覆盖柜子底部各个角落,对柜中物品的检测精度可以达到1cm。
可选的,该储物柜还包括蜂鸣器10;所述蜂鸣器10的输入端与所述FPGA主板1的输出端连接;
所述FPGA主板1还用于统计所述开柜密码的连续错误次数,当所述连续错误次数达到预设次数时向所述蜂鸣器10发送报警信号;所述蜂鸣器10在接收到所述报警信号后发出报警。
本发明FPGA主板1生成密码的原理如下:
FPGA主板提供的时钟晶振可以产生100MHz的方波时钟信号。本发明在FPGA主板的内存中维护一个时钟计数器,对时钟信号的上升沿个数进行累加,并且在计数器的值达到阈值时清0并重新计数。用户需要获取一个空柜时,通过外接键盘输入存物请求,用户按下外接键盘上“取空柜”按钮(外接键盘通过串行信号管脚与FPGA主板连接),FPGA主板将得到一个8位的按键二进制编码,通过“按键编码-用户操作”译码器将8位串行信号转变成1位的请求开柜信号。收到请求开柜信号后,FPGA主板查看当前计数器的值,并对该值进行一次取模运算,得到一个伪随机数R。该伪随机数计算式为
其中,C为所述FPGA主板的内置计数器的值,N为柜子的总数,为取模运算。最后返回给用户的开柜密码为该伪随机数R与即将被开启的柜子编号共同确定的一个值,密码的计算式为
PW=R×N+No.
其中,PW为一个4位长的密码,每一位为0到9中的一个数字,No.为即将开启的柜子编号。生成的密码是与柜子编号有联系的一个数值,从而能保证柜子间的密码集不会相交,且对每一个柜子,每次生成的密码是其密码集中的某一个密码。密码集是一个柜子可能被分配到的所有密码的集合。生成的密码通过七段数码管显示屏回馈给用户。当PW的值为0000时,FPGA主板将重新获得一个计数器的值,再重复上述过程得到新的密码,直到该密码的值不为0000。返回给用户密码后,FPGA主板将把密码存储到内存中。当占用柜子的用户更换时,由于用户请求一个空柜的时间是随机的,FPGA主板内部维护的时钟计数器的值将是一个随机值,且0000被作为保留值不会成为返回给用户的密码,故新用户得到的密码有概率与之前的密码相同,该数值接近于0,即每次更换用户时,FPGA主板返回的密码几乎是不相同的。且FPAG主板内部会存储上一次分配给每个柜子的密码,当用户获取一个新柜子时,FPAG主板将执行如下操作以保障新密码与旧密码一定不相同:
检查新生成的动态密码与当前用户获得的柜子对应的上一次的密码是否相同,如果相同则会重新生成一个动态密码,否则将生成的新密码返回给用户。
本发明解决了传统密码锁密码单一死板的问题,安全性高。由密码生成的公式可知,使用本发明的储物柜同一时间不会出现存储的密码重复的情况,使得用户开启自己占用的柜子时无需记忆柜子编号,仅需记忆4位密码即可。当一个用户想通过随机猜测密码的手段恶意开启柜子时,会通过键盘输入一个随机的4位密码,每一位为0到9中的一个数字,然后按下键盘上的确认键请求FPGA主板检查密码的正确性。由于FPGA主板内部记录的密码个数等于当前已被占用的柜子数,且所有柜子共享同一个FPGA主板的控制,该用户一次随机开锁的概率仅为
0.01%×n
其中,n为已经被占用的柜子数。由该公式可知一次随机开锁的概率接近于0,即几乎不能通过猜测密码的方式一次开启柜子。
本发明支持网页存取物和键盘存取物两种模式。
当用户选择网页存取物时,流程如下:存物时,树莓派开发板通过网络获取用户的存物请求、用户的存物用户名和密码以及需要的柜子尺寸,根据与树莓派开发板内维护的柜子使用状态判断是否能够让用户成功执行本次操作(即判断用户需要的尺寸的柜子是否还有空柜),如果不能则在网页上显示错误信息告知用户,如果能则在树莓派开发板内存储用户相关信息并确定分配给用户的柜子编号,通过GPIO引脚将开启该柜子的请求信号发送给FPGA主板,FPGA向控制对应柜子的继电器发送通电信号,使继电器导通电磁铁所在的回路,电磁铁通电后,吸下锁头,柜门弹开。在用户关上柜门时,内置的关门动作捕捉触发器会被触发,将关门触发信号传回给FPGA主板,FPGA主板将驱动两个超声波探测器去检测柜子是否为空。如果为空,则FPGA主板通过GPIO管脚向树莓派开发板发送清空用户信息的信号,树莓派开发板接收到清空用户信息的信号后清除保存的该用户的存物用户名和密码;如果不为空,则FPGA主板利用GPIO管脚向树莓派开发板发送当前整个柜子系统的占用情况,每一个柜子占用一位,按照柜子编号从小到大进行排序,被使用为1,没被使用为0。树莓派开发板接收到占用情况的信号后更新自己的柜子使用情况列表。取物时,树莓派开发板通过网络获取取物用户名和密码,将获取的取物用户名和密码与自己内部保存的存物用户名和密码进行比对,如果有某一个柜子的存物用户名和密码和获取的取物用户名和密码匹配,则树莓派开发板通过GPIO管脚向FPGA主板发送开启对应柜子的信号,FPGA主板在接收到来自树莓派开发板的信号后向对应编号的柜子的继电器发送通电信号,由继电器控制电磁锁通电以开启对应柜子。当用户关闭柜子后,FPGA主板根据关门动作捕捉触发器传回的关门触发信号获知用户关门的行为,然后发送探测指令给被关闭的柜子内的超声波探测器,超声波探测器向FPGA主板反馈一段高电平信号,FPGA主板解析该高电平信号并判断柜子内是否存有物品,如果没有,则通过GPIO管脚向树莓派开发板发送清除用户信息的信号和柜子使用状态的信号,树莓派开发板更新存储的信息;反之,如果柜子不为空,则结束。
当用户选择键盘存取物时,流程如下:存物时,外接键盘获取用户的开柜请求和需要的柜子尺寸,并将用户输入的信息传入FPGA主板。FPGA主板检查对应尺寸的柜子是否有空柜,如果有则生成动态密码传递给显示屏,并确认分配给用户的柜子编号,并将动态密码存储起来;否则生成无空柜的提示信息传递给显示屏。如果显示密码,则等待用户在外接键盘上确认记住密码,FPGA主板在接收到记住密码的反馈信号后向对应柜子的继电器发送通电信号,继电器控制电磁锁通电以开启柜门。当用户关闭箱子后,关门动作捕捉触发器将关门触发信号发送给FPGA主板,FPGA主板向对应柜子的超声波探测器发送启动信号,并解析柜子是否为空柜,如果柜子为空柜,则清空FPGA主板中存储的动态密码,并向显示屏发送表示空的“Ep”信号;否则向显示屏发送表示成功的“ok”信号。取物时,FPGA主板会将从外接键盘接收到的开柜密码与存储的所有开柜密码进行匹配。如果有匹配成功的开柜密码,则向对应柜子的继电器发送通电信号,继电器控制电磁锁通电以开启柜门。如果没有能够匹配的密码,则FPGA内维护的输错次数加一,当输错次数连续累计达到三次时,FPGA就会驱动蜂鸣器报警,在一段时间后将输错次数置0并停止报警。当用户关闭箱子后,关门动作捕捉触发器将关门触发信号发送给FPGA主板,FPGA主板向对应柜子的超声波探测器发送启动信号,并解析柜子是否为空柜,如果柜子为空柜,则清空FPGA主板中存储的动态密码,并向显示屏发送表示空的“Ep”信号;否则向显示屏发送表示成功的“ok”信号。
本发明的树莓派开发板与FPGA主板实现用户网页存取物,树莓派开发板通过一组通用型输入输出接口(General-purpose input/output,GPIO)与FPGA主板相连,传输信息。在树莓派开发板上搭建用户开柜的网页服务器,通过路由器使得该网页能在网络中被访问到。用户需要先连接到WIFI中,通过浏览器扫描二维码进入网页服务器对应的网页,然后根据网页上的文字提示进行存取物操作。例如,用户希望存储一个书包,用户需要扫描二维码进入网页存取物功能首页,单击“存物”功能进入存物界面,用户会被提示输入存物用户名和密码,该存物用户名和密码对作为本次存物识别用户的凭证,在用户没有存物或者将所有物品取走时就会被FPGA主板清除。在用户输入完存物用户名和密码后,需要选择柜子尺寸,如果对应尺寸的柜子还有剩余,系统将会为用户随机分配一个未被占用的对应尺寸的柜子,用户即可存储书包。
本产品的FPGA主板和外接键盘实现用户键盘存取和管理员存取,外接键盘通过PS2接口与GPIO接口的转换板与FPGA主板相连。外接键盘作为输入设备捕获用户的操作,FPGA主板接受到来自外接键盘的输入后将该操作作出响应。用户可以选择不同的按键来实现不同的功能,如:取物、存物和管理员模式。对于用户随机猜测密码、恶意开启柜子的行为,FPGA主板根据判断输入密码连续错误的次数是否超过阈值来确认是否有这种恶意行为,且在检测到这种行为时,FPGA主板将驱动蜂鸣器示警。
本发明的FPGA主板与柜子主体中的超声波探测器共同实现空柜自检,超声波探测器通过一组GPIO接口与FPGA主板相接。当捕捉到一个关门操作或者有用户需要请求一个空柜时,需要使用到空柜自检。超声波探测器会在接受到自检启动信号时发送探测信号并捕捉返回时间,FPGA主板根据发送时间与接收时间之差计算出当前柜子的深度,并将该深度与柜子在没有放入东西时的深度进行比较,根据比较的结果判断是否有东西存入柜子中,FPGA主板相应地更新所有柜子整体的位图信息,以实时掌握所有柜子的状态。
本发明的实施例1具有以下技术效果:
1.本发明引入了FPGA主板搭配树莓派开发板作为控制中枢的方式,在实现与市面上智能存储柜相同功能的前提下,降低了成本。
2.相对于市面上的手工锁、静态密码锁、打印条形码、扫二维码等存取物品的方式,本发明的使用FPGA自动生成动态密码以及网页交互存取的多样控制方式场景适应性强、用户自主选择余地大。
3.本发明引入超声波探测器对箱子空/非空状态进行检测,减少市面上常出现的占箱不使用的情况,并且对于需要从大量物品中选出一部分带走的用户而言免去了反复存取物品导致的密码更换、柜子位置变换的问题,设计更加人性化。
4.本发明使用了电磁锁对柜体进行加固,牢固可靠,安全性强。
5.本发明设置了管理员存取模式,用于解决用户出现忘记密码、恶意占用箱子的问题,提高了系统健壮性。
实施例2:
实施例2公开一种基于FPGA控制的储物柜的存物方法,应用于实施例1中的基于FPGA控制的储物柜。
图2为本发明实施例2的基于FPGA控制的储物柜的存物方法的方法流程图。
参见图2,所述存物方法包括:
步骤201:获取用户通过所述外接键盘输入的开柜请求;
步骤202:响应所述开柜请求,判断是否有空柜,得到第一判断结果;
步骤203:若所述第一判断结果表示否,则生成无空柜的提示信息输出到所述显示屏;
步骤204:若所述第一判断结果表示是,则随机分配一个空柜作为待存柜;
步骤205:生成所述待存柜的开柜密码;
步骤206:将所述开柜密码输出到所述显示屏显示;
步骤207:响应用户通过所述外接键盘输入的记住密码的反馈,向所述待存柜对应的继电器发送通电信号,从而使所述待存柜对应的电磁锁打开所述待存柜;
步骤208:响应所述关门动作捕捉触发器发送的关门触发信号,向所述待存柜内的超声波探测装置发出探测指令,使所述超声波探测装置发出超声波;
步骤209:响应所述超声波探测装置回传的探测信号,判断所述待存柜是否为空柜,得到第二判断结果;
步骤210:若所述第二判断结果表示是,则将所述待存柜标记为空柜并删除所述开柜密码;
步骤211:若所述第二判断结果表示否,则存储所述待存柜的编号和所述开柜密码。
可选的,步骤205具体包括:
根据公式计算伪随机数;其中R为伪随机数,C为所述FPGA主板的内置计数器的值,N为柜子的总数,为取模运算;
根据公式PW=R×N+No.生成所述开柜密码;其中PW为所述开柜密码,No.为所述待存柜的编号。
可选的,步骤209具体包括:
在向待存柜内的超声波探测装置发出探测指令后,持续获取所述超声波探测装置回传的高电平信号;
响应所述超声波探测装置在接收到超声波回声后所回传的低电平信号;
在接收到所述低电平信号后计算所述高电平信号的持续时长;
根据所述持续时长计算所述超声波探测装置与探测物体之间的距离,得到探测距离;
将所述探测距离与空柜时的探测距离进行对比确定所述待存柜是否为空柜。
实施例3:
实施例3公开一种基于FPGA控制的储物柜的取物方法,应用于实施例1中的基于FPGA控制的储物柜。该实施例3的取物方法与实施例2的存物方法相对应。
图3为本发明实施例2的基于FPGA控制的储物柜的取物方法的方法流程图。
参见图3,所述取物方法包括:
步骤301:获取用户通过所述外接键盘输出的开柜密码;
步骤302:验证所述开柜密码是否与存储的某一柜子的开柜密码一致,得到第三判断结果;
步骤303:若所述第三判断结果表示否,则生成错误提示信息并将所述错误提示信息输出到所述显示屏显示;
步骤304:若所述第三判断结果表示是,则向开柜密码所对应柜子的继电器发送通电信号,从而使所述开柜密码所对应柜子的电磁锁打开所述开柜密码所对应柜子;
步骤305:响应所述关门动作捕捉触发器发送的关门触发信号,向所述开柜密码所对应柜子内的超声波探测装置发出探测指令,使所述超声波探测装置发出超声波;
步骤306:响应所述超声波探测装置回传的探测信号,判断所述开柜密码所对应柜子是否为空柜,得到第四判断结果;
步骤307:若所述第四判断结果表示是,则将所述开柜密码所对应柜子标记为空柜并删除所述开柜密码;
步骤308:若所述第四判断结果表示否,则保留所述开柜密码。
根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明在存物时生成开柜密码,取物时通过开柜密码取物,从而使用户在将物品存入储物柜后只需要记住开柜密码即可,无需携带任何解锁物品。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种基于FPGA控制的储物柜,其特征在于,包括:FPGA主板、外接键盘、显示屏和多个储物柜主体;
所述储物柜主体包括继电器、电磁锁、关门动作捕捉触发器和超声波探测装置;
各个所述关门动作捕捉触发器的输出端均与所述FPGA主板的输入端连接;所述FPGA主板的输出端与各个所述继电器连接,各所述继电器连接在对应的所述电磁锁所在的回路中;所述FPGA主板与所述超声波探测装置双向通信连接;
所述外接键盘的输出端与所述FPGA主板的输入端连接,所述FPGA主板的输出端与所述显示屏的输入端连接;
所述外接键盘用于将用户输入的开柜请求、记住密码的反馈和开柜密码输出给所述FPGA主板;
所述FPGA主板用于在用户输入开柜请求时检查是否有空柜,有空柜时生成开柜密码并输出到所述显示屏显示,无空柜时生成无空柜的提示信息并输出到所述显示屏显示;在用户输入记住密码的反馈时向对应的所述继电器发送通电信号使分配给用户的柜子的柜门打开;在获取到关门动作捕捉触发器发送的关门触发信号时向对应的超声波探测装置发送探测指令,并接收对应的所述超声波探测装置传回的探测信号,判断是否为空柜;在接收到开柜密码时,验证开柜密码是否正确,正确时向对应的所述继电器发送通电信号使柜子的柜门打开,错误时生成错误提示信息并输出到所述显示屏显示。
2.根据权利要求1所述的基于FPGA控制的储物柜,其特征在于,还包括树莓派开发板;所述树莓派开发板通过GPIO管脚与所述FPGA主板连接;所述树莓派开发板通过路由器连接到无线网络;
所述树莓派开发板用于通过无线网络获取用户的存物请求以及用户的存物用户名和密码,并根据存储的各柜子的状态判断是否有空柜,有空柜时为用户分配柜子,向所述FPGA主板发送开启所分配的柜子的开柜请求并存储所述存物用户名和存物密码,无空柜时通过所述无线网络向用户反馈无空柜的提示信息;还用于通过无线网络获取用户的取物请求、取物用户名和密码,通过将所述取物用户名和密码与所述存物用户名和密码进行对比确定存物的柜子,并向所述FPGA主板发送开启所述存物的柜子的开柜请求;
所述FPGA主板还用于在接收到所述树莓派开发板发送的开柜请求后向对应的所述继电器发送通电信号从而使对应的柜子打开。
3.根据权利要求1所述的基于FPGA控制的储物柜,其特征在于,所述超声波探测装置包括第一超声波探测器和第二超声波探测器;所述第一超声波探测器和所述第二超声波探测器分别安装在柜子的相邻的两个侧面的中央;所述第一超声波探测器的探测方向与所述第二超声波探测器的探测方向垂直。
4.根据权利要求1所述的基于FPGA控制的储物柜,其特征在于,还包括蜂鸣器;所述蜂鸣器的输入端与所述FPGA主板的输出端连接;
所述FPGA主板还用于统计所述开柜密码的连续错误次数,当所述连续错误次数达到预设次数时向所述蜂鸣器发送报警信号;所述蜂鸣器在接收到所述报警信号后发出报警。
5.一种基于FPGA控制的储物柜的存物方法,其特征在于,应用于一种基于FPGA控制的储物柜,所述储物柜包括:FPGA主板、外接键盘、显示屏和多个储物柜主体;所述储物柜主体包括继电器、电磁锁、关门动作捕捉触发器和超声波探测装置;各个所述关门动作捕捉触发器的输出端均与所述FPGA主板的输入端连接;所述FPGA主板的输出端与各个所述继电器连接,各所述继电器连接在对应的所述电磁锁所在的回路中;所述FPGA主板与所述超声波探测装置双向通信连接;所述外接键盘的输出端与所述FPGA主板的输入端连接,所述FPGA主板的输出端与所述显示屏的输入端连接;
所述存物方法包括:
获取用户通过所述外接键盘输入的开柜请求;
响应所述开柜请求,判断是否有空柜,得到第一判断结果;
若所述第一判断结果表示否,则生成无空柜的提示信息输出到所述显示屏;
若所述第一判断结果表示是,则随机分配一个空柜作为待存柜;
生成所述待存柜的开柜密码;
将所述开柜密码输出到所述显示屏显示;
响应用户通过所述外接键盘输入的记住密码的反馈,向所述待存柜对应的继电器发送通电信号,从而使所述待存柜对应的电磁锁打开所述待存柜;
响应所述关门动作捕捉触发器发送的关门触发信号,向所述待存柜内的超声波探测装置发出探测指令,使所述超声波探测装置发出超声波;
响应所述超声波探测装置回传的探测信号,判断所述待存柜是否为空柜,得到第二判断结果;
若所述第二判断结果表示是,则将所述待存柜标记为空柜并删除所述开柜密码;
若所述第二判断结果表示否,则存储所述待存柜的编号和所述开柜密码。
6.根据权利要求5所述的基于FPGA控制的储物柜的物品储存方法,其特征在于,所述生成所述待存柜的开柜密码,具体包括:
根据公式计算伪随机数;其中R为伪随机数,C为所述FPGA主板的内置计数器的值,N为柜子的总数,为取模运算;
根据公式PW=R×N+No.生成所述开柜密码;其中PW为所述开柜密码,No.为所述待存柜的编号。
7.根据权利要求4所述的基于FPGA控制的储物柜的物品储存方法,其特征在于,所述响应所述超声波探测装置回传的探测信号,判断所述待存柜是否为空柜,得到第二判断结果,具体包括:
在向待存柜内的超声波探测装置发出探测指令后,持续获取所述超声波探测装置回传的高电平信号;
响应所述超声波探测装置在接收到超声波回声后所回传的低电平信号;
在接收到所述低电平信号后计算所述高电平信号的持续时长;
根据所述持续时长计算所述超声波探测装置与探测物体之间的距离,得到探测距离;
将所述探测距离与空柜时的探测距离进行对比确定所述待存柜是否为空柜。
8.一种基于FPGA控制的储物柜的取物方法,其特征在于,应用于一种基于FPGA控制的储物柜,所述储物柜包括:FPGA主板、外接键盘、显示屏和多个储物柜主体;所述储物柜主体包括继电器、电磁锁、关门动作捕捉触发器和超声波探测装置;各个所述关门动作捕捉触发器的输出端均与所述FPGA主板的输入端连接;所述FPGA主板的输出端与各个所述继电器连接,各所述继电器连接在对应的所述电磁锁所在的回路中;所述FPGA主板与所述超声波探测装置双向通信连接;所述外接键盘的输出端与所述FPGA主板的输入端连接,所述FPGA主板的输出端与所述显示屏的输入端连接;
所述取物方法包括:
获取用户通过所述外接键盘输出的开柜密码;
验证所述开柜密码是否与存储的某一柜子的开柜密码一致,得到第三判断结果;
若所述第三判断结果表示否,则生成错误提示信息并将所述错误提示信息输出到所述显示屏显示;
若所述第三判断结果表示是,则向开柜密码所对应柜子的继电器发送通电信号,从而使所述开柜密码所对应柜子的电磁锁打开所述开柜密码所对应柜子;
响应所述关门动作捕捉触发器发送的关门触发信号,向所述开柜密码所对应柜子内的超声波探测装置发出探测指令,使所述超声波探测装置发出超声波;
响应所述超声波探测装置回传的探测信号,判断所述开柜密码所对应柜子是否为空柜,得到第四判断结果;
若所述第四判断结果表示是,则将所述开柜密码所对应柜子标记为空柜并删除所述开柜密码;
若所述第四判断结果表示否,则保留所述开柜密码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910541080.4A CN110264641B (zh) | 2019-06-21 | 2019-06-21 | 一种基于fpga控制的储物柜及存物、取物方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910541080.4A CN110264641B (zh) | 2019-06-21 | 2019-06-21 | 一种基于fpga控制的储物柜及存物、取物方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110264641A true CN110264641A (zh) | 2019-09-20 |
CN110264641B CN110264641B (zh) | 2021-05-14 |
Family
ID=67920295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910541080.4A Expired - Fee Related CN110264641B (zh) | 2019-06-21 | 2019-06-21 | 一种基于fpga控制的储物柜及存物、取物方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110264641B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783045A (zh) * | 2009-01-15 | 2010-07-21 | 中国移动通信集团安徽有限公司 | 一种自助寄存设备、系统和方法 |
CN104021607A (zh) * | 2014-05-30 | 2014-09-03 | 深圳市智莱科技有限公司 | 一种打开储物箱门的方法 |
JP2017199274A (ja) * | 2016-04-28 | 2017-11-02 | 株式会社寺岡精工 | 物品保管装置、物品保管装置の貨幣収容部、及び物品保管システム |
US20180040181A1 (en) * | 2016-08-04 | 2018-02-08 | Tiburon Lockers Inc. | Marking for authentication and access |
CN109727394A (zh) * | 2019-03-19 | 2019-05-07 | 郑世琪 | 一种基于数字图像处理技术的外卖保温取餐柜 |
CN109785530A (zh) * | 2018-12-14 | 2019-05-21 | 重庆锐锦科技有限公司 | 一种自助储存装置及其系统 |
-
2019
- 2019-06-21 CN CN201910541080.4A patent/CN110264641B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101783045A (zh) * | 2009-01-15 | 2010-07-21 | 中国移动通信集团安徽有限公司 | 一种自助寄存设备、系统和方法 |
CN104021607A (zh) * | 2014-05-30 | 2014-09-03 | 深圳市智莱科技有限公司 | 一种打开储物箱门的方法 |
JP2017199274A (ja) * | 2016-04-28 | 2017-11-02 | 株式会社寺岡精工 | 物品保管装置、物品保管装置の貨幣収容部、及び物品保管システム |
US20180040181A1 (en) * | 2016-08-04 | 2018-02-08 | Tiburon Lockers Inc. | Marking for authentication and access |
CN109785530A (zh) * | 2018-12-14 | 2019-05-21 | 重庆锐锦科技有限公司 | 一种自助储存装置及其系统 |
CN109727394A (zh) * | 2019-03-19 | 2019-05-07 | 郑世琪 | 一种基于数字图像处理技术的外卖保温取餐柜 |
Also Published As
Publication number | Publication date |
---|---|
CN110264641B (zh) | 2021-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7741969B2 (en) | Door entry security device with electronic lock | |
CN106233662A (zh) | 基于用户的接近来限制与计算设备的用户交互 | |
CN106652106A (zh) | 门锁的控制方法、装置及终端 | |
CN103093531B (zh) | 利用互联网控制的锁系统 | |
CN103617659A (zh) | 一种无线开锁方法 | |
CN113507914A (zh) | 基于机器学习的安全控制器 | |
KR20170116888A (ko) | 디지털 도어락 시스템 | |
Meenakshi et al. | Arduino based smart fingerprint authentication system | |
CN109882025A (zh) | 一种银行保险柜装置和银行保险柜控制系统 | |
CN106898061A (zh) | 智能门锁系统及其方法 | |
CN207198943U (zh) | 基于智能管理的指静脉身份识别门禁控制系统 | |
CN109035499A (zh) | 一种基于动态密码的电子密码锁认证方法 | |
CN109191718A (zh) | 防误操作的方法、具有误操作预警功能的储物装置及空间租用平台 | |
US20200051350A1 (en) | Auditable security system for secure enclosures | |
CN104574616A (zh) | 一种智能电子门锁控制方法及其装置 | |
KR20210056745A (ko) | 지능형 스마트 컨트랙트 제공방법 | |
JP4829799B2 (ja) | セキュリティシステムのホスト装置およびセキュリティ設定方法 | |
CN110388138A (zh) | 一种自动提醒用户更换解锁密码的方法、门锁系统及门锁 | |
CN110264641A (zh) | 一种基于fpga控制的储物柜及存物、取物方法 | |
CN206039670U (zh) | 一种智能触控锁及门 | |
CN206110872U (zh) | 一种智能门锁系统 | |
CN212624195U (zh) | 一种智能保险柜系统 | |
CN108986267A (zh) | 一种应用于电子密码锁控制的用户注册方法和系统 | |
JP2004062495A (ja) | サーバー | |
TWM557769U (zh) | 可提升資訊登入正確性的電子鎖與資訊登入系統 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210514 |