本申请要求于2016年11月25日提交的中国专利申请No.201611059241.9、2016年12月14日提交的中国专利申请No.201611153363.4、2016年12月14日提交的中国专利申请No.201611155484.2,以及2016年12月14日提交的中国专利申请No.201611151128.3的优先权。上述申请中的每一个通过引用方式被整体且明确地包含于此。
具体实施方式
以下描述是为了使本领域的普通技术人员能够实施和利用本申请并且该描述是在特定的应用场景及其要求的环境下提供的。显然,对于本领域的普通技术人员来讲,可以对所公开的实施例作出各种改动,并且在不偏离本申请的原则和范围的情况下,本申请中所定义的普遍原则可以适用于其他实施例和应用场景。因此,本申请并不限于所描述的实施例,而应该被给予与权利要求一致的最广泛的范围。
这里使用的术语仅用于描述特定示例性实施例,而不是限制性的。如本申请使用的单数形式“一”、“一个”及“该”可以同样包括复数形式,除非上下文明确提示例外情形。还应当理解,如在本申请中,术语“包括”、“包含”仅提示存在所述特征、整体、步骤、操作、组件和/或部件,但并不排除存在或添加一个或以上其他特征、整体、步骤、操作、组件、部件和/或其组合的情况。
根据以下对附图的描述,本申请的这些和其他的特征、特点以及相关结构元件的功能和操作方法,以及部件组合和制造经济性,可以变得更加显而易见,这些附图都构成本申请说明书的一部分。然而,应该清楚地理解,附图仅用于说明和描述,并不旨在限制本申请的范围。应当理解的是,附图并不是按比例绘制的。
应当理解,这里使用的术语“系统”、“引擎”、“单元”和/或“模块”是用于区分升级中的不同级别的不同组件、元件、部件、部分或组件的一种方法。然而,如果它们实现相同的目的,则可以通过其他表达来替换这些术语。
应当理解的是,当单元、发动机或模块被称为“接通”、“连接到”或“耦合到”另一个单元、发动机或模块时,除非上下文另有明确说明,它可以直接与其他单元、发动机、模块或中间单元接通、连接或耦合、通信。在本申请中,术语“和/或”可包括任何一个或以上相关所列条目或其组合。
本申请中使用了流程图用来说明根据本申请的一些实施例的系统所执行的操作。应该清楚地理解,流程图的操作可以不按顺序实现。相反,操作可以以相反的顺序或同时实现。此外,可以将一个或以上其他操作添加到流程图中。可以从流程图中省略一个或以上操作。
本申请中使用的定位技术可以基于全球定位系统(GPS)、全球导航卫星系统(GLONASS)、罗盘导航系统(COMPASS)、伽利略定位系统、准天顶卫星系统(QZSS)、无线保真(WiFi)定位技术等或其任意组合。上述定位技术中的一种或以上可以在本申请中互换使用。
本申请涉及用于控制锁的系统和方法。锁可以基于与安全系统相关的信息用来保护设备(例如,自行车、门)。系统可以执行方法以接收关闭锁的请求。系统可以执行方法以驱动控制装置来关闭锁。所述控制装置可以驱动锁的锁紧机制朝特定位置移动,在所述特定位置时锁处于关锁状态。在锁紧机制朝特定位置移动期间,系统可以执行方法获取锁的运行信息,并确定锁的运行信息是否满足与锁的运行有关的条件。响应于锁的运行信息是否满足条件的确定结果,系统可以执行方法以驱动控制装置打开或关闭锁。
图1是根据本申请的一些实施例示出的示例性安全系统100的示意图。安全系统100可以包括服务器110、网络120、一个或以上终端设备130、设备140、存储器150、定位设备160和锁170。安全系统100可以通过实施本申请中公开的方法和/或过程来通过锁170来保护设备140。在一些实施例中,待保护的设备140可以是自行车共享系统中的自行车。自行车共享系统可以提供自行车共享服务,允许用户使用自行车进行骑行。当用户完成骑行并且想要返回自行车时,用户可以将自行车留在允许自行车停放的任何区域并锁定自行车。然后,自行车可以为下一个用户做好准备。
服务器110可以与终端设备130、设备140和/或锁170通信,以提供安全系统100的各种功能。在一些实施例中,服务器110可以经由,例如网络120,从终端设备130接收与设备140相关联的请求。例如,服务器110可以经由,例如网络120,从终端设备130接收锁住设备140的请求。又例如,设备140可以是自行车共享系统中的自行车,并且该请求可以是借用(或租赁)自行车的服务请求。服务请求可以包括与骑行和/或自行车有关的订单信息,包括例如自行车类型、出发地点、目的地、里程、路线等,或其任何组合。服务请求还可以包括与用户(例如,用户帐户信息)和/或终端设备130有关的信息(例如,终端设备130的位置)。
服务器110还可以向终端设备130、设备140和/或锁170发送信息。例如,服务器110可以向设备140和/或锁170发送锁住设备140的指令、解锁设备140的指令,和/或与设备140相关的信息(例如,指示设备140是否处于锁住状态的信息)。
在一些实施例中,设备140可以是自行车共享系统中的自行车。服务器110可以响应于从终端设备130接收的服务订单以确定一个或以上自行车,并且将与一个或以上自行车有关的信息发送到终端设备130,包括例如一个或以上自行车的位置、骑乘者的费用(例如,骑车的总费用、骑车的每小时费率)等,或其组合。服务器110还可以基于从终端设备130、自行车和/或存储器150获取的历史数据来确定热点区域。热点区域可以是自行车需求量大的区域。历史数据可以包括在一个区域中搜索自行车的次数。历史数据还可以包括与历史服务订单有关的数据(例如,自行车在区域中已经被使用的次数)。历史数据还可以包括用户经由终端设备130提供的信息(例如,在用户提交的某些区域中放置更多自行车的建议)。服务器110还可以提供服务费管理。服务器110可以基于月度会员、季度会员、季节(例如,春季、夏季)会员、年度会员或每次乘车的费用来确定乘车的成本。
在一些实施例中,服务器110可以是单个服务器,也可以是服务器组。服务器组可以分别是经由一个接入点连接到网络120的集中式服务器组或经由一个或以上接入点连接到网络120的分布式服务器组。在一些实施例中,服务器110可以本地连接到网络120或者与网络120远程连接。例如,服务器110可以经由网络120访问存储在终端设备130、设备140和/或存储器150中的信息和/或数据。又例如,存储器150可以用作服务器110的后端数据存储。在一些实施例中,服务器110可以在云平台上实施。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
在一些实施例中,服务器110可以包括处理引擎112。处理引擎112可以处理与在本申请中执行一个或以上功能相关的信息和/或数据。例如,处理引擎112可以处理锁170的运行信息以确定锁的状态。在一些实施例中,处理引擎112可包括一个或以上处理单元(例如,单核处理引擎或多核处理引擎)。仅作为示例,处理引擎112可以包括中央处理单元(CPU)、专用集成电路(ASIC)、专用指令集处理器(ASIP)、图形处理单元(GPU)、物理运算处理单元(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、控制器、微控制器单元、精简指令集计算机(RISC)、微处理器等或其任意组合。
网络120可以促进信息和/或数据的交换。在一些实施例中,安全系统100的一个或以上组件(例如,服务器110、终端设备130、设备140、存储器150或锁170)可以经由网络120将信息和/或数据发送到安全系统100中的另一个组件。例如,服务器110可以经由网络120从存储器150访问和/或获取多个设备140的数据。又例如,服务器110可以经由网络120向终端设备130发送指示设备140是否被锁住的消息。作为又一示例,定位设备160可以经由网络120将定位信息发送到终端设备130。
在一些实施例中,网络120可以为任意形式的有线或无线网络,或其任意组合。仅作为示例,网络120可以包括缆线网络、有线网络、光纤网络、远程通信网络、内部网络、互联网、局域网络(LAN)、广域网络(WAN)、无线局域网络(WLAN)、城域网(MAN)、公共交换电话网络(PSTN)、蓝牙网络、紫蜂网络、近场通信(NFC)网络等或其任意组合。在一些实施例中,网络120可以包括一个或以上网络接入点。例如,网络120可以包括有线或无线网络接入点,例如基站和/或互联网交换点120-1、120-2.......,安全系统100的一个或以上组件可以通过它们连接到网络120以交换数据和/或信息。
在一些实施例中,用户可以是终端设备130的所有者。终端设备130可以从用户接收输入,并且经由网络120将与输入有关的信息发送到服务器110。终端设备130还可以经由网络120从服务器110接收信息。例如,终端设备130可以从与设备140有关的用户接收到服务器110的输入,和/或从服务器110接收信息或指令。仅作为示例,用户可以在他或她未能锁住设备140时输入维护服务请求。终端设备130可以被配置用于将维护服务请求发送到服务器110。
在一些实施例中,设备140可以是自行车共享系统中的自行车。终端设备130可以被配置用于向服务器110发送服务请求以用于搜索终端设备130的位置附近的自行车。服务器110可以根据服务请求确定终端设备130的位置附近的一个或以上自行车(例如,自行车的位置、自行车的数量)。服务器110还可以经由网络120将所确定的一个或以上自行车有关的信息发送到终端设备130。所确定的一个或以上自行车的信息可以显示在与电子地图相关联的终端设备130上。终端设备130可以从用户接收输入,所述输入指示从终端设备130上显示的自行车中被选择的自行车,其可以被发送到服务器110。终端设备130还可以提供步行导航,用于引导用户到所选自行车的位置。又例如,终端设备130可以从用户接收用于预订自行车的输入并将该信息发送到服务器110。作为又一示例,终端设备130可以将用户提供的反馈信息发送到服务器110。反馈信息可以包括自行车的状态(例如,是否需要修理自行车的任何部分)、改进建议等。
在一些实施例中,终端设备130可以包括移动设备130-1、平板计算机130-2、膝上型计算机130-3、车载设备130-4等或其任意组合。在一些实施例中,移动设备130-1可以包括智能家居设备、可穿戴设备、智能移动设备、虚拟现实设备、增强现实设备等,或其任意组合。在一些实施例中,智能家居设备可以包括智能照明设备、智能电器控制设备、智能监控设备、智能电视、智能摄像机、对讲机等,或其任意组合。在一些实施例中,可穿戴设备可以包括智能手环、智能鞋袜、智能眼镜、智能头盔、智能手表、智能服装、智能背包、智能配件等,或其任意组合。在一些实施例中,智能移动设备可以包括智能电话、个人数字助理(PDA)、游戏设备、导航设备、销售终端(POS)等,或其任意组合。在一些实施例中,虚拟现实设备和/或增强型虚拟现实设备可以包括虚拟现实头盔、虚拟现实眼镜、虚拟现实眼罩、增强现实头盔、增强现实眼镜、增强现实眼罩等,或其任意组合。例如,虚拟现实设备和/或增强现实设备可以包括Google GlassTM、Oculus RiftTM、HololensTM、GearVRTM等。在一些实施例中,车辆130-4中的内置设备可以包括内置计算机、内置车载电视、内置平板电脑等。在一些实施例中,终端设备130可以包括信号发送器和被配置的信号接收器,用于与定位设备160通信以定位用户和/或终端设备130的位置。例如,终端设备130可以向定位设备160发送指令以定位用户和/或终端设备130的位置。
设备140可以包括任何需要被保护的设备。示例性设备140可包括自行车、汽车、门、窗户、橱柜、抽屉、包装、保险箱、行李箱等,或其任何组合。锁170可以被配置用于锁住设备140。锁170可包括用于实现其功能的机构的任何组合。锁170可以是机械锁或电子锁。设备140和锁170可以是彼此机械连接的单独部件。例如,设备140和锁170可以是单独的部件,并且锁170可以安装在设备140上。附加地或替代地,设备140和锁可以形成整体设备。关于锁170的细节可以在本申请的其他地方找到(例如,图4至11及其相关描述)。
设备140和/或锁170可以与服务器110、网络120、终端设备130和/或定位设备160通信。例如,设备140和/或锁170可以经由网络120将设备140和/或锁170的状态信息发送到服务器110。状态信息可以包括设备140的位置、设备140的锁住/解锁状态、设备140的电池电量、锁170的运行信息等,或其组合。服务器110可以基于状态信息来监视设备140。又例如,设备140和/或锁170可以从终端设备130和/或服务器110接收指令(例如,锁住/解锁设备140的指令)。作为又一示例,设备140可以包括信号发送器和信号接收器(例如,设备140的GPS组件),其被配置用于与定位设备160通信以定位设备140的位置。
在一些实施例中,设备140可以是自行车。自行车可以是任何类型的自行车,包括,例如独轮车、自行车、三轮车、双人自行车、摩托车、电动自行车、助动车等。自行车的颜色不是限制性的。仅作为示例,自行车车身的颜色可以是黄色。在一些实施例中,自行车可包括锁170。自行车和/或锁170可以用唯一符号标识。唯一符号可包括条形码、快速响应(QR)代码、包括字母和/或数字的序列号等,或其任何组合。例如,可以通过终端设备130的移动应用程序或终端设备130的相机(如果有的话)扫描锁170的QR码和/或自行车的QR码来获取锁170的标识(ID)。仅作为示例,可以通过iPhone的相机扫描自行车的QR码来获取锁170的ID。
存储器150可以储存数据和/或指令。所述数据可以包括与用户、终端设备130、设备140等有关的数据。仅作为示例,设备140可以是自行车共享系统的自行车。与用户相关的数据可以包括用户档案,包括例如,用户的姓名、用户的移动号码、用户的ID号、用户的类型(例如,年卡用户、季卡用户或月卡用户)、用户的使用记录(例如,骑行时间、成本)、用户的信用评级、历史路线、账户余额等。与自行车相关的数据可以包括自行车的服务条件(非活动状态、预订状态、骑行、处于维护状态、处于丢失状态)、自行车的位置、自行车的类型(例如,独轮车、自行车、三轮车、双人自行车、摩托车、电动自行车)等。在一些实施例中,存储器150可以存储从终端设备130和/或设备140获取的数据。例如,存储器150可以存储与终端设备130相关联的日志信息。在一些实施例中,存储器150可以储存服务器110用来执行或使用以完成本申请中描述的示例性方法的数据和/或指令。
在一些实施例中,存储器150可包括大容量存储器、可移动存储器、易失性读写存储器、只读存储器(ROM)等或其任意组合。示例性的大容量存储器可以包括磁盘、光盘、固态磁盘等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、内存卡、压缩盘、磁带等。示例性易失性读写存储器可以包括随机存取存储器(RAM)。示例性RAM可包括动态随机存取存储器(DRAM)、双倍数据速率同步动态随机存取存储器(DDRSDRAM)、静态随机存取存储器(SRAM)、晶闸管随机存取存储器(T-RAM)和零电容随机存取存储器(Z-RAM)等。示例性只读存储器可以包括只读存储器(MROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、光盘只读存储器(CD-ROM)和数字多功能磁盘只读存储器等。在一些实施例中,所述存储器150可在云平台上实现。仅作为示例,云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
定位设备160可以确定与诸如一个或以上的终端设备130或设备140(例如,自行车)等对象相关联的信息。例如,定位设备160可以确定终端设备130和/或设备140的当前时间和当前位置。在一些实施例中,定位设备160可以是全球定位系统(GPS)、全球导航卫星系统(GLONASS)、罗盘导航系统(COMPASS)、北斗导航卫星系统、伽利略定位系统、准天顶卫星系统(QZSS)等。信息可包括对象的位置、高度、速度或加速度、和/或当前时间。该位置可以是坐标的形式,例如纬度坐标和经度坐标等。定位设备160可以包括一个或以上的卫星,例如卫星160-1、卫星160-2和卫星160-3。卫星160-1至160-3可以独立地或联合地确定上述信息。定位设备160可以经由网络120将上述信息发送到终端设备130或设备140。
在一些实施例中,安全系统100的一个或以上组件可以经由网络120访问存储在存储器150中的数据和/或指令。在一些实施例中,存储器150可以作为后端存储器直接连接到服务器110。在一些实施例中,安全系统100的一个或以上组件(例如,服务器110、终端设备130或设备140)可以具有访问存储器150的权限。在一些实施例中,当满足一个或以上条件时,安全系统100的一个或以上组件可以读取和/或修改与用户和/或设备140有关的信息。例如,服务器110可以在完成自行车骑行之后读取和/或修改一个或以上用户的信息。
在一些实施例中,设备140可以是自行车共享系统的自行车。可以通过在终端设备130上启动自行车共享服务的移动应用程序、请求自行车服务、或通过终端设备130输入查询(例如,搜索自行车)等方式来发起安全系统100的一个或以上组件之间的信息交换。服务请求的对象可以为任何产品。在一些实施例中,该产品可以包括食品、医药、商品、化学产品、电器、衣物、小汽车、房屋、奢侈品等或其任意组合。在一些其他实施例中,产品可以包括服务产品、金融产品、知识产品、互联网产品等或其任何组合。互联网产品可以包括个热销产品、网页产品、移动互联网产品、商业热销产品、嵌入式产品等或其任意组合。移动互联网产品可以用于移动终端的软件、程序、系统等或其任意组合。移动终端可以包括平板计算机、手提计算机、移动电话、个人数字助理(PDA)、智能手表、POS设备、车载计算机、车载电视、可穿戴设备等或其任意组合。例如,产品可以是在计算机或移动电话上使用的任一软件和/或应用。该软件和/或应用程序可以与社交、购物、交通、娱乐、学习、投资等,或其任意组合相关。在一些实施例中,与运输有关的系统软件和/或应用程序可以包括出行软件和/或应用程序、车辆调度软件和/或应用程序、地图软件和/或应用程序等。
本领域普通技术人员将理解,当安全系统100的元件执行时,该元件可以通过电信号和/或电磁信号执行。例如,当终端设备130处理诸如做出决定、解锁设备140等任务时,终端设备130可以在其处理器中操作逻辑电路以处理这样的任务。当终端设备130将查询信息(例如,与设备140的位置有关的信息)发送到服务器110时,终端设备130的处理器可以生成编码该查询的电信号。然后,终端设备130的处理器可以将电信号发送到输出端口。若终端设备130经由有线网络与服务器110通信,则输出端口可物理连接至电缆,其进一步将电信号传输给服务器110的输入端口。如果终端设备130经由无线网络与服务器110通信,则终端设备130的输出端口可以是一个或以上天线,其将电信号转换为电磁信号。类似地,设备140和/或锁170可以通过其处理器中的逻辑电路的操作来处理任务,并且经由电信号或电磁信号从服务器110接收指令和/或服务命令。在电子设备,例如终端设备130、设备140、锁170和/或服务器110中,当其处理器处理指令、发出指令、和/或执行动作时,所述指令和/或动作通过电信号来进行。例如,当处理器从存储介质(例如,存储器150)检索数据(例如,多个用户的档案)时,它可以将电信号发送到存储介质的读取设备,其可以在存储介质中读取结构化数据。该结构化数据可以以电信号的形式经由电子设备的总线传输至处理器。此处,电信号可以指一个电信号,一系列电信号和/或至少两个不连续的电信号。
图2是根据本申请的一些实施例示出的计算机设备200的示例性硬件和/或软件组件的示意图。计算设备200可以是通用计算机或专用计算机。计算设备200可用于实现如本文所述的安全系统100的任何组件。例如,服务器110的处理引擎112和/或终端设备130可以通过其硬件、软件程序、固件或其组合在计算设备200上实现。尽管为了方便仅示出了一种这样的计算机,但是本文所述的与安全系统100相关的计算机功能可以在多个类似平台上以分布式方式实现,以分配处理负载。
例如,计算设备200可以包括连接到与其连接的网络(例如,网络120)的通信端口250,以促进数据通信。计算设备200还可以包括处理器220,用于执行程序指令以执行本文描述的服务器110的功能。示例性的计算机平台可以包括一个内部通信总线210、不同形式的程序存储器和数据存储器,例如,磁盘270、只读存储器(ROM)230或随机存取存储器(RAM)240,用于存储由计算机处理和/或传输的各种各样的数据文件。示例性的计算机平台也可以包括储存于只读存储器230、随机存取存储器240和/或其他类型的非暂时储存介质中的供处理器220执行的程序指令。本申请的方法和/或流程可以以程序指令的方式实现。计算设备200还包括输入/输出260,其支持计算机、用户和其中的其他组件之间的输入/输出。计算设备200也可以通过网络通信接收编程和数据。
仅仅为了说明,计算设备200只描述了一个中央处理单元和/或处理器。然而,需要注意的是,本申请中的计算设备200可以包括多个CPU和/或处理器,因此本申请中描述的由一个CPU和/或处理器实现的操作和/或方法也可以共同地或独立地由多个CPU和/或处理器实现。例如,计算设备200的CPU和/或处理器可以执行步骤A和步骤B。如在另一示例中,步骤A和步骤B也可以由计算设备200中的两个不同的CPU和/或处理器联合或单独地执行(例如,第一处理器执行步骤A并且第二处理器执行步骤B,或第一和第二处理器共同执行步骤A和B)。
图3是示出移动设备300的示例性硬件和/或软件组件的示意图,在该移动设备300上可以根据本申请的一些实施例实现终端设备。如图3所示,移动设备300可以包括通信模块310、显示器320、图形处理单元(GPU)330、处理器340、输入/输出350、内存360和存储器390。在一些实施例中,任何其他合适的组件,包括但不限于系统总线或控制器(未示出),也可包括在移动设备300内。在一些实施例中,移动操作系统370(如,iOSTM、AndroidTM、WindowsPhoneTM)和一个或以上应用程序380可以从存储器390加载到内存360中以便由CPU340执行。应用程序380可以包括浏览器或用于从服务器110发送、接收和呈现与设备140的状态有关的信息(例如,设备140的位置)的任何其他合适的应用程序。用户与信息流的交互可以通过输入/输出350实现,并通过网络120提供给服务器110和/或安全系统100的其他组件。在一些实施例中,用户可以经由移动设备300借用(或租用)设备140(例如,自行车)。用户还可以经由移动设备300控制设备140的锁170。例如,用户可以经由移动设备300输入关锁指令。
图4是根据本申请的一些实施例示出的需要保护的设备140的硬件和/或软件组件的示意图。设备140可包括锁170、处理设备420、通信端口430、状态检测装置440、控制装置450、障碍检测装置460、电源470和计时装置480。
锁170可以被配置用于保护设备140。例如,设备140可以是自行车,锁170可以被配置为锁住自行车一个或以上的车轮。在一些实施例中,锁170可以被配置用于将自行车安全固定到一个固定物体,例如自行车锁柱或支架。锁170可包括用于实现其功能的机构的任何组合。例如,锁170可包括机械锁或电子锁。
在一些实施例中,锁170可包括锁紧机制。锁紧机制可包括锁舌、螺栓、锁芯等。锁紧机制可以沿预定的路径移动。锁170的状态可随锁紧机制的移动而改变。例如,锁紧机制可以在第一位置和第二位置之间移动。当锁紧机制处于第一位置时,锁170可具有关锁状态。当锁紧机制处于第二位置时,锁170可具有开锁状态。
处理设备420可以获取与设备140一个或以上组件,包括例如锁170的相关的信息和/或指令。处理设备420还可以处理信息和/或指令。附加地或替代地,处理设备420可以基于所获取的和/或处理的信息和/或指令控制设备140的其他组件的运行。在一些实施例中,处理设备420可包括获取模块、控制模块和处理模块。关于处理设备420的细节可以在本申请的其他地方找到(例如,图5及其相关描述)。
在一些实施例中,处理设备420可以包括但不限于中央处理器(CPU)、专门应用集成电路(ASIC)、专用指令处理器(ASIP)、物理处理器(PPU)、数字信号处理器(DSP)、现场可编程逻辑门阵列(FPGA)、可编程逻辑设备(PLD)、处理器、微处理器、控制器、微控制器等中的一种或几种的组合。
通信端口430可以促进与安全系统100的其他组件,包括例如设备140、终端设备130和/或服务器110之间的通信。通信端口430可以利用各种无线技术,诸如蜂窝通信技术(例如,GSM、CDMA、2G、3G、4G)、短程无线电通信技术(例如,蓝牙、NFC、射频(RF)、Zigbee)、窄带物联网(NB-IoT)、低功率广域网(LPWAN)(如LoRa)等。
状态检测装置440可以确定锁170的状态。状态检测装置440可包括第一开关。状态检测装置440可以通过确定锁紧机制的至少一部分是否物理连接至第一开关来确定锁170的状态。响应于锁紧机制的至少一部分是物理连接至第一开关的确定结果,状态检测装置440可以确定锁170处于关锁状态。另一方面,响应于锁紧机制的至少一部分不是物理连接至第一开关的确定结果时,状态检测装置440可以确定锁不在关锁状态(即在开锁状态)。
附加地或替代地,状态检测装置440可以包括第二开关。状态检测装置440可以通过确定锁紧机制的至少一部分是否物理连接至第二开关来确定锁170是否处于关锁状态。响应于锁紧机制的至少一部分是物理连接至第二开关的确定结果时,状态检测装置440可以确定锁170处于开锁状态。
控制装置450可以控制锁170。例如,响应于来自服务器110和/或终端设备130的指令控制装置450可以打开锁170(即,释放设备140)和关闭(即,锁住设备140)。在一些实施例中,控制装置450可以通过控制锁170的锁紧机制的运动来控制锁170的状态。例如,控制装置450可以使锁紧机制朝向某个位置(例如,对应于锁170的关锁状态的第一位置、或者对应于锁170开锁状态的第二位置)移动,以使锁170处于不同的状态。在一些实施例中,控制装置450可包括马达、蜗轮和蜗杆。关于控制装置450的细节可以在本申请的其他地方找到(例如,图9和相关描述)。
障碍检测装置460可以确定在第一位置和第二位置之间锁紧机制的路径中是否存在障碍物。障碍检测装置460可包括信号发射设备和信号接收设备。信号发射设备可以向信号接收设备发射信号。信号可包括红外光,紫外光、激光、可见光等,或其任何组合。在一些实施例中,信号发射设备可以安装在对应于锁170的开锁状态的第二位置处或附近,信号接收器可以安装在对应于锁170关锁状态的第一位置处或附近。或者,信号发射设备可以安装在第一位置中或附近,信号接收器可以安装在第二位置中或附近。
基于信号接收设备是否从信号发射设备接收信号的确定结果,障碍检测装置460可以确定锁紧机制的路径中是否存在障碍物。当障碍物出现在锁紧机制在第一位置和第二位置之间的路径时,它可以完全或部分地阻止信号传输到信号接收设备。当信号接收设备接收不到信号或接收到弱信号时,障碍检测装置460可以确定在锁紧机制的路径中存在障碍物。障碍检测装置460可以在信号接收设备接收到信号或强信号时确定不存在障碍物。
在一些实施例中,障碍检测装置460可以是包括红外发射器和红外接收器的红外设备。红外发射器可以向红外接收器发射红外光。当红外线接收器接收不到红外光或接收到弱红外光时,障碍检测装置460可以确定在锁紧机制的路径中存在障碍物。当红外线接收器接收红外光或强红外光时,障碍检测装置460可以确定不存在障碍物。
电源470可以为设备140的组件(例如,通信端口430、状态检测装置440、控制装置450和障碍检测装置460)的运行提供电力。电源470可包括由太阳能、动能(例如,在设备140的骑行期间,电池可被充电)、风能、机械能等充电的电池。在一些实施例中,电源470可以是18650电池。
计时装置480可以向处理设备420提供参考时间。在一些实施例中,计时装置480可包括时钟芯片和晶体振荡器。晶体振荡器可以跟踪当前时间,时钟芯片可以将当前时间发送到处理设备420。当前时间可以用作处理设备420的参考时间。
在一些实施例中,设备140可以包括一个或以上其他组件,例如定位模块(例如,GPS设备)、显示器、移动组件(例如,踏板、车轮)、齿轮组件(例如,自行车链条)、制动组件(例如,制动器),警告组件(例如,铃)等,或其任何组合。在一些实施例中,一个或以上组件可以集成在一个组件中。例如,处理设备420、通信端口430、状态检测装置440、控制装置450、障碍检测装置460、电源470和计时装置480中的任何一个可以集成到锁170。
应当注意的是,以上对设备140的描述是出于说明的目的而提供的,而不是旨在限制本申请的范围。对于本领域普通技术人员来说,在不背离本申请原则的前提下,可以对上述方法及系统的应用进行各种形式和细节的变化和修改。然而,这些变化和修改亦落于本申请的范围内。
图5是根据本申请的一些实施例所示的示例性处理设备420的框图。处理设备420可以包括获取模块510、控制模块520、处理模块530和传输模块540。每个模块都可以是用于执行下述操作的硬件电路、一组存储于一个或以上存储媒体的指令和/或该硬件电路和一个或以上存储媒体的组合。
获取模块510可以被配置以获取信息和/或指令。信息和/或指令可以与设备140的一个或以上组件,例如锁170相关。例如,该信息可以包括运行信息(例如,锁170的状态)和/或锁170的定位信息、时间信息。该指令可包括关闭锁170的请求,中止关闭锁170的请求等,或其任何组合。
获取模块510可以经由通信端口430和网络120从安全系统100的一个或以上组件(例如,存储器150、服务器110、终端设备130)获取信息和/或指令。另外或替代地,获取模块510可从设备140的一个或以上组件,例如状态检测装置440、障碍检测装置460等,或其任何组合获取信息和/或指令。
控制模块520可以控制设备140的一个或以上组件的操作。例如,控制模块520可以驱动状态检测装置440以确定锁170的状态。又例如,控制模块520可以驱动障碍物检测装置460以检测在锁紧机制的路径中是否存在障碍物。
处理模块530可以被配置为处理与设备140的一个或以上组件相关的信息。例如,处理模块530可以处理与锁170有关的信息,例如运动信息、定位信息、障碍物检测的结果、状态检测的结果、时间信息等,或其任何组合。处理模块530可以处理信息并确定锁170的运行。例如,处理模块530可以基于时间信息和/或运行信息确定是否需要关闭或打开锁170。
传输模块540可以被配置为向安全系统100的其他组件(例如服务器110、终端设备130)传输信息和/或指令。例如,传输模块540可以将指示锁170状态的消息发送到终端设备130。
在一些实施例中,处理设备420可包括一个或以上其他模块。例如,处理设备420可以包括存储模块,用于存储由上述模块生成的数据。在一些实施例中,所描述的一个或以上模块可以集成到处理引擎112中。附加地或替代地,处理引擎112可以包括与处理设备420相似的一个或以上模块,其被配置用于执行本申请中公开的处理设备420的至少一部分功能。
应当注意的是,以上对处理设备420的描述是出于说明的目的而提供的,而不是旨在限制本申请的范围。对于本领域普通技术人员来说,在不背离本申请原则的前提下,可以对上述方法及系统的应用进行各种形式和细节的变化和修改。然而,这些变化和修改亦落于本申请的范围内。
图6是根据本申请的一些实施例示出的用于关闭锁的示例性过程的流程图。过程600可以由安全系统100执行。例如,过程600可以作为一组在存储器(例如,存储器150和/或设备140的存储器)中存储的指令(例如,应用程序)实现。在一些实施例中,过程600的至少一部分可以由处理引擎112(例如,在图2中示出的计算设备200中实现)或设备140的处理设备420执行。为了说明的目的,将以在处理设备420上实施过程600为例展开描述。
在601中,处理设备420(例如,获取模块510)可以获取关闭锁的请求。在一些实施例中,锁可以是设备140的锁170。锁170可包括锁紧机制,例如锁舌、螺栓、锁芯等。锁紧机制可沿预定路径移动。锁170的状态可随锁紧机制的移动而改变。例如,锁紧机制可以在第一位置和第二位置之间移动。当锁紧机制处于第一位置时,锁170可具有关锁状态。当锁紧机制处于第二位置时,锁170可具有开锁状态。
获取模块510可以从安全系统100的一个或以上组件(例如,服务器110、终端设备130)获取关闭锁的请求。例如,获取模块510可以从终端设备130获取关闭锁170的请求。关闭锁170的请求可以由用户(例如,其上安装有锁170的设备140的所有者、其上安装有锁170的设备140的借用者)经由终端设备130输入。为简洁起见,其上安装有锁170的设备140被称为本文中的设备140。
附加地或替代地,获取模块510可以从处理模块530获取关闭锁170的请求。处理模块530可以根据诸如当前时间、锁170的运行信息、设备140的运行信息等或其任何组合来生成关闭锁170的请求。例如,处理模块530可以根据当前时间生成关闭锁170的请求。基于当前时间生成关闭锁170的请求的相关细节可以在本申请的其他地方找到(例如,图8和相关描述)。
又例如,处理模块530可根据锁170或设备140停留在一个地方的时长生成关闭锁170的请求。设备140的定位组件可以收集设备140的定位信息。处理模块530可以基于定位信息确定锁170或设备140停留在某个位置时的时长。例如,当时长超过阈值时,处理模块530可以生成关闭锁170的请求。
在602中,处理设备420(例如,控制模块520)可以驱动状态检测装置440以确定锁170是否锁上(即,处于关锁状态)。如图4所描述,状态检测装置440可以第一开关。状态检测装置440可以通过确定锁紧机制的至少一部分是否物理连接至第一开关的来确定锁170是否处于关锁状态。响应于锁紧机制的至少一部分是物理连接至第一开关的确定结果时,状态检测装置480可以确定锁170处于关锁状态。响应于锁紧机制的至少一部分不是物理连接至第一开关的确定结果时,状态检测装置440可以确定锁170不处于关锁状态。关于状态检测装置440的细节可以在本申请的其他地方找到(例如,图4和相关描述)。
状态检测装置440可以向处理设备420(例如,处理模块530)发送关于锁170是否处于关锁状态的确定结果。当确定锁170处于关锁状态的结果时,可以终止过程600。当确定锁170未处于关锁状态的结果时,过程600可以继续进行到603。
在603中,处理设备420(例如,控制模块520)可以驱动障碍物检测装置460以检测锁紧机制在第一位置和第二位置之间的路径中是否存在障碍物。在一些实施例中,障碍检测装置460可包括信号发射设备和信号接收设备,其被配置用于执行与图4描述有关的障碍物检测。关于障碍检测装置460的细节可以在本申请的其他地方找到(例如,图4和相关描述)。
障碍检测装置460可以向处理设备420(例如,处理模块530)发送关于锁紧机制的路径中是否存在障碍物的确定结果。
在604中,处理设备420(例如,处理模块530)可以基于从障碍检测装置460接收到的障碍物检测结果,确定锁紧机制在第一位置和第二位置之间的路径中是否存在障碍物。在锁紧机制的路径中没有障碍物的结果下,过程600可以进行到606。另一方面,在锁紧机制的路径中存在障碍物的结果下,过程600可以进行到605。
在605中,处理设备420可以生成障碍物的警告。例如,控制模块520可以驱动锁170或设备140的警报设备(图中未示出)以产生警报以警告障碍物。警报可以包括声音、振动、光等,或其任何组合。替代地或另外地,传输模块540可以经由通信端口430和网络120将消息传输到用户的终端设备130(例如,设备140的所有者、设备140的借用者)。该消息可以指示锁紧机制的路径中存在障碍物。消息可以是文本消息,语音消息、电话呼叫、图像消息等,或其任何组合。
附加地或替代地,传输模块540可以将消息发送到服务器110。该消息可进一步包括与锁170(或设备140)有关的信息,例如,设备140的ID、设备140的位置信息。服务器110可以确定靠近锁170(或设备140)的维护站,并将维护站的信息发送到锁170(或设备140)。锁170(或设备140)可以反过来将消息发送到维护站。或者,传输模块540可以直接将消息传输到安全系统100的维护站和/或维护人员。
在606中,处理设备420(例如,控制模块520)可以驱动控制装置450以使锁紧机制朝向第一位置移动,使得锁170可以处于关锁状态。在一些实施例中,控制装置450可包括马达、蜗轮和蜗杆。马达可以驱动蜗轮沿某个方向旋转,这可以使蜗杆旋转。蜗杆的旋转可以使锁紧机制朝向第一位置移动,以使锁170锁住。和控制装置450相关的细节可以在本申请的其他地方找到(例如,图4和9及其相关描述)。
在607中,处理设备420(例如,获取模块510)可以在锁紧机制向第一位置移动期间获取锁170的运行信息。锁170的运行信息可包括驱动控制装置450关闭锁170的次数、关闭锁170的时长、和/或中止关闭锁170的请求等,或其任何组合。获取模块510可以从安全系统100的存储器获取运行信息,例如存储器150、锁170的存储器或设备140(图中未示出)。
在608中,处理设备420(例如,处理模块530)可以确定锁170的运行信息是否满足与锁170的运行有关的条件。例如,运行信息可以是驱动控制装置450关闭锁170的次数。条件可以是所述次数等于或超过阈值数。当控制装置450的驱动次数等于或超过阈值数时,处理模块530可以确定运行信息满足条件。又例如,运行信息可以是关闭锁170的时长。条件可以是关闭锁170的时长等于或超过阈值时长。当关闭锁170的时长等于或超过阈值时长时,处理模块530可以确定运行信息满足条件。作为又一示例,条件可以是在锁紧机制向第一位置的移动期间是否获取中止关闭锁170的请求。中止请求可以通过诸如获取模块510和/或通信端口430来获取。当锁紧机制在向第一位置移动期间获取中止请求时,处理模块530可以确定运行信息满足条件。在一些实施例中,中止请求可以由用户经由终端输入(将结合图7进行描述)。
关闭锁170的条件(例如,阈值数和/或阈值时长)可以手动设置或者根据不同情况由安全系统100的一个或以上组件(例如,处理模块530)确定。处理设备420(例如,控制模块520)可以基于关于锁170的运行信息是否满足条件的确定结果,驱动控制装置450以使锁紧机制移动到第一位置或第二位置。例如,在得到确定运行信息满足条件的结果时,过程600可以进行到609。另一方面,在得到确定操作不满足条件的结果时,过程600可以进行到610。
在609中,处理设备420(例如,控制模块520)可以驱动控制装置450以使锁紧机制移动到第二位置以使锁170处于开锁状态。步骤609可以类似于步骤606,这里不再重复其详细描述。
在610中,处理设备420(例如,控制模块520)可以驱动状态检测装置440以确定锁170是否处于关锁状态。状态检测装置440可以将状态检测的结果发送到处理设备420。步骤610可以类似于步骤602,这里不再重复其详细描述。
在611中,处理设备420(例如,处理模块530)可以基于从状态检测装置440接收的状态检测的结果来确定锁170是否处于关锁状态。在得到锁170处于关锁状态的确定结果时,可以终止过程600。另一方面,在得到锁170未处于关锁状态的确定结果时,过程600可以进行到606,直到运行信息满足条件、或者锁170处于关锁状态。例如,处理设备420可以再次执行步骤604以驱动控制装置450以使锁紧机制朝向第一位置移动。获取模块510可以更新锁170的运行信息,例如驱动控制装置450关闭锁170的次数、关闭锁170的时长,或其任何组合。此外,处理模块530可以确定更新的运行信息是否满足条件。在得到更新的运行信息满足条件的确定结果时,过程600可以进行到步骤609以使锁可以处于开锁状态。另一方面,在得到更新的运行信息不满足条件的确定结果时,过程600可以进行到步骤610。
在一些实施例中,过程600可以通过一个或以上附加操作和/或没有一个或以上所讨论的操作来完成。例如,可以省略步骤602至605的一个或以上步骤。过程600可以在没有状态检测和/或障碍物检测的情况下进行到步骤606。附加地或替代地,可以省略步骤610或611。在处理设备420确定运行信息不满足608中的条件之后,该过程可以再次进行到606。
又例如,在状态检测装置440在步骤602或步骤611检测到锁170处于关锁状态之后,传输模块540可以经由通信端口430和网络120向用户(例如,设备140的所有者、设备140的借用者)的终端设备130发送消息。该消息可以指示锁170处于关锁状态。
作为又一示例,响应于锁的运行信息满足608中的条件的确定结果,传输模块540可以发送指示锁170是打开还是关闭的另一消息到安全系统100的一个或以上组件。当处理模块530确定锁的运行信息满足条件时,传输模块540可以向用户(例如,设备140的所有者、设备140的借用者)的终端设备130发送指示锁170打开的消息。附加地或替代地,当处理模块530确定控制装置450关闭锁的驱动次数等于或超过阈值数、或在步骤608中关闭锁170的时长等于或超过阈值时长,传输模块540可以将消息传输给维护站、维护人员和/或服务器110。该消息可以指示锁170处于开锁状态并且可能发生故障。该消息还可以包括锁170(或设备140)的信息,例如,设备140的ID、设备140的位置信息。该消息可以类似于与步骤605描述有关的消息,并且这里不再重复详细描述。
应当注意以上对过程600的描述仅用于说明,而不是用于限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的变化和修改。然而,这些变化和修改不会背离本申请的范围。
图7是根据本申请的一些实施例示出的用于关闭锁的示例性过程的流程图。在一些实施例中,过程700可以是过程600的实施例,其中关闭锁170的请求是从终端设备130获取而来。
过程700可以由安全系统100执行。例如,过程700可以实现为存储器(例如,存储器150和/或设备140的存储器)中存储的一组指令(例如,应用程序)。在一些实施例中,过程700的至少一部分可以由处理引擎112(例如,由图2中示出的计算设备200中实现)或设备140的处理设备420来执行。为了说明的目的,将以在处理设备420上实施过程700为例展开描述。
在701中,处理设备420(获取模块510)可以经由,例如网络120从终端设备130获取关闭锁170的请求。锁170可以类似于结合步骤601描述的锁,并且这里不再重复其详细描述。
关闭锁170的请求可以由用户(例如,设备140的所有者、设备140的借用者)经由终端设备130输入。在一些实施例中,用户可以经由终端设备130输入关闭锁170的请求。例如,用户可以按下安装在终端设备130中的应用中的用于关闭锁170的键、发出终端设备130接收的声音、使用终端设备130扫描特定的QR码,等等。在一些实施例中,用户可以在关闭锁170的过程期间(例如,如步骤601所描述的,在锁紧机制向第一位置移动的期间)保持按住关闭锁170的键。用户可以在关闭锁170的过程中通过释放关闭锁170的按键来终止输入关闭锁的请求,并且如果用户终止输入,则锁170将不会被锁住。
在702中,处理设备420(例如,控制模块520)可以驱动障碍物检测装置460以检测锁紧机制在第一位置和第二位置之间的路径中是否存在障碍物。障碍检测装置460可以将障碍物检测结果发送到处理模块530。关于障碍检测装置460的细节可以在本申请的其他地方找到(例如,图4及其相关描述)。
在703中,处理设备420(例如,处理模块530)可以基于从障碍物检测装置460接收的障碍物检测结果来确定锁紧机制的路径中是否存在障碍物。在获得锁紧机制的路径中存在障碍物的结果时,过程700可以进行到704。另一方面,在获得锁紧机制的路径中没有障碍物结果的情况下,过程700可以进行到705。
在704中,处理设备420(传输模块540)可以经由通信端口430和网络120将指示锁紧机制的路径中存在障碍物的消息发送到终端设备130。消息可以是文本消息、语音消息、图像消息、电话呼叫等。
在705中,处理设备420(例如,控制模块520)可以驱动控制装置450以使锁紧机制向第一位置移动,以使得锁170可以处于关锁状态。步骤705可以类似于本申请中其他地方描述的步骤606,并且这里不再重复其详细描述。
在706中,处理设备420(例如,处理模块530)可以确定在锁紧机制向第一位置的移动期间是否获取了中止关闭锁170的请求。在得到获取了中止请求的确定结果时,过程700可以进行到710。另一方面,在得到未获取中止请求的确定结果时,过程700可以进行到707。中止请求可以由用户经由终端设备130输入并且由通信端口430和/或获取模块510获取。在一些实施例中,用户可以经由终端设备130输入中止请求。例如,用户可以按下安装在终端设备130中的应用中的用于中止关闭锁170的键、发出由终端设备130接收的声音、使用终端设备130扫描特定的QR码,等等。在一些实施例中,使用者可以在锁紧机制朝向第一位置移动期间保持按下关闭锁170的键。用户可以在锁紧机制向第一位置移动期间通过释放关闭锁170的键来输入中止请求。
在707中,处理设备420(例如,控制模块520)可以驱动状态检测装置440以确定锁170是否处于关锁状态。在一些实施例中,步骤707可以在步骤706之后的某个时间执行。例如,状态检测装置440可以在控制模块520驱动控制装置450以使锁紧机制向第一位置移动30秒后确定锁170是否处于关锁状态。步骤707可以类似于步骤610,这里不再重复其详细描述。
在708中,处理设备420(例如,处理模块530)可以基于来自状态检测440的状态检测的结果来确定锁170是否处于关锁状态。在锁170处于关锁状态的结果时,过程700可以进行到709。在锁170未处于关锁状态的结果时,过程700可以进行到710。
在709中,传输模块540可以经由通信端口430和网络120将指示锁170关闭的消息发送到终端设备130。消息可以是文本消息、语音消息、电话呼叫、图像消息、声音等。
在710中,传输模块540可以经由通信端口430和网络120将指示锁170被打开的消息发送到终端设备130。该消息可以是文本消息、语音消息、电话呼叫、图像消息、声音等。
在一些实施例中,过程700可以通过一个或以上附加操作和/或没有一个或以上所讨论的操作来完成。例如,可以省略步骤702、704、706、709或710的一个或以上步骤。又例如,过程700可以包括与图6描述相关的一个或以上附加操作。在一些实施例中,处理设备420可以在705之后实施步骤607至609。在一些实施例中,处理设备420可以在705之后实施步骤605以生成障碍物的警告。
应当注意的是,以上对过程700的描述仅用于说明,而不是旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的修改和变动。然而,这些修改和变动不会背离本申请的范围。
图8是根据本申请的一些实施例示出的用于生成关锁指令的示例性过程的流程图。在一些实施例中,可以根据过程800执行步骤601。过程800可以由安全系统100执行。例如,过程800可以实现为存储在存储器(例如,存储器150和/或设备140的存储器)中的一组指令(例如,应用程序)。在一些实施例中,过程600的至少一部分可以由处理引擎112(例如,由图2中示出的计算设备200中实现)或设备140的处理设备420执行。为了说明的目的,将处理设备420上的过程800的实现描述为示例。
在801中,处理设备420(获取模块510)可以从计时装置480获取参考时间间隔。参考时间可以是与特定事件相关的时间点。例如,参考时间可以是获取模块510接收借用(或租借)设备140的请求或者用户经由终端设备130输入的返还设备140的请求的时间点。
在一些实施例中,计时装置480可包括时钟芯片和晶体振荡器。晶体振荡器可以跟踪当前时间,且时钟芯片可以将当前时间发送到处理设备420。例如,参考时间可以是当获取模块510接收到的由用户经由终端设备130输入的返回设备140的请求的时间点。当获取模块510接收到返回设备140的请求时,时钟芯片可以将当前时间发送到处理设备420,并且当前时间可以进一步用作处理设备420的参考时间。
在802中,处理设备420(例如,处理模块530)可以基于参考时间确定当前时间。处理模块530可以在从计时装置480接收到参考时间之后开始计时,以确定当前时间。例如,当获取模块510从用户接收到返回设备140的请求时,时钟芯片可以将当前时间(即,参考时间)发送到处理设备420,且处理模块530可以在收到参考时间后开始计时,并基于已流逝的时间连续或定期更新当前时间。仅作为示例,当获取模块510接收到返回设备140的请求时,时钟芯片可以将当前时间,下午3:00发送到处理设备420,处理模块530可以开始计时。处理模块530还可以在10分钟过去后更新当前时间,如下午3:10。
在803中,处理设备420(例如,处理模块530)可以确定当前时间是否满足关闭锁170的条件。关闭锁170的条件可以手动设置或者由安全系统100的一个或以上组件(例如,处理模块530)根据不同情况确定。例如,所述条件可以是当前时间在特定的时段内的。仅作为示例,所述条件可以是当前时间在从凌晨01:00到早上6:00的时段内。如果当前时间在特定时段内,则处理模块530可以确定满足关闭锁170的条件。如果当前时间不在特定时段内,则处理模块530可以确定不满足关闭锁170的条件。特定时期可以是任何合适的时期。在一些实施例中,特定时段可以是大多数用户(例如,设备140的借用者)不可能使用设备140的时段。例如,该特定时段可以是凌晨01:00至凌晨6:00、凌晨2:00至凌晨3:00等。附加地或替代地,所述条件可以是当前时间与参考时间之间的差等于或超过阈值时长。当当前时间与参考时间之间的差等于或超过阈值时长时,处理模块530可以确定满足关闭锁170的条件。当当前时间与参考时间之间的差小于阈值时长时,处理模块530可以确定不满足关闭锁170的条件。例如,参考时间可以是当获取模块510接收到的由用户经由终端设备130输入的返还设备140的请求的时间点,且处理模块530可以在获取模块510接收到返回设备140的该请求的特定阈值时长之后确定满足条件。阈值时长可以是任何合适的值,例如30分钟、1小时或2小时。
在得到当前时间满足条件的确定结果时,过程800可以进行到804。在得到当前时间不满足条件的确定结果时,过程800可以进行到802以更新当前时间。此外,处理模块530可以确定更新的当前时间是否满足关闭锁170的条件。在确定更新的当前时间满足条件的结果时,过程800可以进行到步骤804。在获取更新的当前时间不满足条件的确定结果时,过程800可以再次进行到802。
在804中,处理设备420(例如,处理模块530)可以生成关闭锁170的指令。处理模块530可以将该指令发送到安全系统100的一个或以上组件。例如,处理模块530可以发送控制装置450的指令以驱动控制装置450来关闭锁170。附加地或替代地,如本申请中其他地方步骤601所描述的,处理模块530可以将指令发送到获取模块510。
在一些实施例中,过程800可以通过一个或以上附加操作来完成,和/或没有一个或以上所讨论的操作。例如,可以省略步骤801和802。处理设备420可以周期性地(例如,每10分钟)从计时装置480获取当前时间,并且确定当前时间是否满足在803中关闭锁170的条件。
应当注意的是,以上对过程800的描述仅用于说明,而不是旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的修改和变动。然而,这些修改和变动不会背离本申请的范围。
图9是根据本申请的一些实施例示出的示例性锁的示意图。锁900可以是本申请中其他地方描述的锁170的实施例(例如,图4至8及其相关描述)。在一些实施例中,锁900可以被配置用于将设备140(例如,自行车)固定到例如锁柱或支架的固定物体上。锁900可以包括用于实现本申请中描述的功能的任何组合机构。
在一些实施例中,锁900可包括处理设备420、电源470、锁紧机制910、控制装置和状态检测装置。
处理设备420可以处理与本申请中图4至8其他地方所描述的执行一个或以上功能相关的信息和/或指令。处理设备420还可以基于已获取的和/或处理的信息和/或指令来控制锁900的其他组件(例如,控制装置、状态检测装置)的运行。在一些实施例中,处理设备420可以是电路板。
电源470可以向锁900(例如,处理设备470、控制装置、状态检测装置)的部件提供电力。在一些实施例中,电源470可以是18650电池。
锁紧机制910可包括锁舌、螺栓、锁芯等。锁紧机制910可以沿预定路径移动。可以随着锁紧机制910的移动而改变锁900的状态。例如,如图9所示,当锁紧机制910的一端处于位置B时,锁900可具有关锁状态。当锁紧机制910的末端不在位置B(例如,在位置A)时,锁900可以具有开锁状态。
在一些实施例中,本申请中其他地方所述的锁紧机制910的第一位置可以在位置B。本申请中其他地方所述的锁紧机制910的第二位置可以是除位置B之外的任何位置。例如,第二位置可以是位置A。
控制装置可以控制锁紧机制910的运动以控制锁900的状态(即,打开或关闭锁900)。控制装置可包括马达920、蜗轮930和蜗杆940。马达920可以驱动蜗轮930沿某个方向旋转,这可以使蜗杆940旋转。蜗杆940的旋转可以使锁紧机制向特定位置移动。
例如,马达920可以驱动蜗轮930在第一方向上旋转,这可以使蜗杆940沿图9中的逆时针方向旋转。蜗杆940的旋转还可以经由齿轮啮合使锁紧机制910向位置B移动。又例如,马达920可以驱动蜗轮930沿第一方向的相反方向旋转,这可以使蜗杆940沿图9中的顺时针方向旋转。蜗杆940的旋转还可以使锁紧机制910朝向位置A移动。在一些实施例中,马达920可以是直流马达。
状态检测装置可以确定锁900的状态。状态检测装置可包括第一开关950和第二开关960。第一开关950可以被配置用于检测锁900是否处于关锁状态。当锁紧机制910的至少一部分是物理连接至第一开关950时,状态检测装置可以确定锁900处于关锁状态。在一些实施例中,第一开关950可包括弹簧条,其可具有第一触点。当锁紧机制910的至少一部分是物理连接至第一开关950的第一触点时,状态检测装置可以确定锁900可以处于关锁状态。
第二开关960可以被配置用于确定锁900是否处于开锁状态。当锁紧机制910是物理连接至第二开关960时,状态检测装置可以确定锁900处于开锁状态。在一些实施例中,第二开关960可包括弹簧条,其可包括第二触点。当锁紧机制910是物理连接至第二开关960的第二触点时,状态检测装置可以确定锁900处于开锁状态。
在一些实施例中,锁900可仅包括第一开关950和第二开关960中的一个。例如,锁900可以仅包括第一开关950。当锁紧机制910是物理连接至第一开关950(或第一开关950的第一触点)时,锁900处于关锁状态。当锁紧机制910未物理连接至第一开关950(或第一开关950的第一触点)时,状态检测装置可以确定锁900处于开锁状态。
应当注意的是,图9中所示的锁900仅用于说明,而非旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出各种各样的修改和改动。然而,这些修改和改动不会背离本申请的范围。
图10A和10B是根据本申请的一些实施例示出的示例性锁的示意图。除了某些部件或特征之外,锁1000可以类似于锁900。
锁1000可以包括障碍物检测装置,所述障碍物检测装置被配置用于确定在位置A和B之间的锁紧机制910的路径中确定是否存在障碍物。障碍检测装置可包括信号发射设备1010和信号接收设备1020。信号发射设备1010可以向信号接收设备1020发射信号。信号可包括红外光、紫外光、激光、可见光等,或其任何组合。在一些实施例中,信号发射设备1010可以是红外发射器,信号接收设备1020可以是红外接收器。
信号发射设备1010可以安装在对应于锁1000的关锁状态的位置B上或附近。信号接收设备1020可以安装在对应于锁1000的开锁状态的位置A上或附近。或者,信号发射设备1010可以安装在位置A上或附近,且接收设备1020可以安装在位置B上或附近。
如图10A所示,如果在位置A和B之间的锁紧机制910的路径中不存在障碍物,则信号发射设备1010发射的信号可以由信号发射设备1010接收。如果信号接收设备1020接收到信号发射设备1010发射的信号,则障碍检测装置可以确定不存在障碍物。
如图10B所示,障碍物(例如,障碍物1030)存在于锁紧机制910的路径中时,它可以完全或部分地阻挡信号。如果信号接收装置1010没有接收信号或者接收到弱信号,则障碍检测装置可以确定在锁紧机制910的路径中存在障碍物。
在一些实施例中,锁900或锁1000可包括一个或以上附加组件和/或没有一个或以上所讨论组件的。例如,可以省略状态检测装置和/或障碍检测装置。又例如,处理设备420和/或电源470可以集成到其上安装有锁900或锁1000的设备(例如,自行车)中。
应当注意的是,图9至图11中所示的示例用于说明,而不是旨在限制本申请的范围。对于具有本领域普通技能的人员,可以以各种方式组合或转换步骤。在理解该过程之后可以进行各种修改和改动。然而,那些变化和修改不可脱离本申请的主旨和范围。
上文已对基本概念做了描述,显然,对于阅读此申请后的本领域的普通技术人员来说,上述发明披露仅作为示例,并不构成对本申请的限制。虽然此处并未明确说明,但本领域的普通技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。例如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特性。因此,应当强调并注意的是,本说明书中在不同位置两次或以上提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本申请的一个或以上实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域的普通技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的过程、机器、产品或物质成分合,或其中任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微代码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“单元”、“模块”或“系统”。此外,本申请的各方面可以采取体现在一个或以上计算机可读介质中的计算机程序产品的形式,其中计算机可读程序代码包含在其中。
计算机可读信号介质可能包含一个内含有计算机程序代码的传播数据信号,例如在基带上或作为载波的一部分。此类传播信号可以有多种形式,包括电磁形式、光形式等或任何合适的组合。计算机可读信号介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通信、传播或传输供使用的程序。位于计算机可读信号介质上的程序代码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、射频等,或任何上述介质的组合。
本申请各部分操作所需的计算机程序代码可以用任意一种或以上程序设计语言编写,包括面向对象程序设计语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化程序设计语言如C程序设计语言、VisualBasic、Fortran2103、Perl、COBOL2102、PHP、ABAP,动态程序设计语言如Python、Ruby和Groovy,或其他程序设计语言等。该程序代码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种场景下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN)、或连接至外部计算机(例如通过因特网)、或在云计算环境中,或作为如SoftwareasaService(SaaS)的服务使用。
此外,除非权利要求中明确说明,处理的元素或序列的列举顺序、或数字、字母、其他名称的使用,并非用于限定本申请所述的流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,尽管上述各种组件的实现可以体现在硬件设备中,但它也可以仅实现为软件解决方案,例如,安装在现有服务器或移动设备上。
类似地,应当理解的是,在本申请实施例的上述描述中,各种特征有时被分组在单个实施例、图片或其描述中以使本申请合理化,有助于理解一个或以上的不同的发明实施例的。然而,本申请的该方法不应被理解为反映要求保护的对象需要比每个权利要求中明确列举的对象具有更多特征的意图。相反,发明的主体应具备比上述单一实施例更少的特征。
一些实施例中使用了描述数量、属性的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本申请一些实施例中用于确定其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的记录将在可行范围内尽可能精确。
本文中提及的所有专利、专利申请、专利申请公布和其他材料(如论文、书籍、说明书、出版物、文件、事物和/或类似的东西)均在此通过引用的方式全部并入本文以达到所有目的,与上述文件相关的任何起诉文档记录、与本文件不一致或冲突的任何上述文件或对迟早对与本文件相关的权利要求书的广泛范畴有限定作用的任何上述文件除外。举例来说,如果存在与任何材料相关联的描述、定义和/或术语的使用和与本文件相关联的术语之间存在任何不一致或冲突,则以本文件的描述、定义和/或使用的术语以为准。
最后,应当理解的是,本申请中所述实施例仅用以说明本申请实施例的原则。其他的变形也可能属于本申请的范围。因此,作为示例而非限制,本申请实施例的替代配置可视为与本申请的教导一致。相应地,本申请的实施例不仅限于本申请明确介绍和描述的实施例。下述描述是为了使本领域具有通常知识者能制造和使用本申请,并且该描述是在特定的应用场景及其要求的背景下提供的。对于本领域的普通技术人员来讲,对本申请披露的实施例进行的各种修改是显而易见的,并且本文中定义的通则在不背离本申请的精神及范围的情况下,可以适用于其他实施例及应用。因此,本申请不限于所示的实施例,而是符合与权利要求一致的最广泛范围。