用PythonPi实现门禁系统-场景

原创 2017年01月03日 10:18:55

分布式智能控制系统中,我们介绍了控制逻辑组件。该组件可以完成智能控制的功能。但控制逻辑组件存在一个问题:它不具备基于个体识别然后据此进行管控的能力,控制逻辑组件并不关心参与者是谁,它对所有人都是一视同仁的,因此控制逻辑组件是无法用来进行门禁管控的。

为了实现门禁控制,我们将具有个体识别能力的识别点、基于角色的权限管理和一个事件驱动的控制逻辑组件组装到一起就成为一个场景。和控制逻辑相比,场景具有针对特别的人来执行不同功能的能力。它包括:

  • 个体识别,根据卡片或生物特征对场景中的参与者进行个体识别

  • 权限管理,根据识别出的个体进行基于角色的权限裁决

  • 控制逻辑,实现具体的控制功能

由于控制逻辑是基于状态机的事件驱动,因此将权限裁决可视为出现特定事件,这样控制逻辑不需做任何修改即可引用。

考虑到一个应用场景中可能会存在多个识别点(如进出都需要刷卡的门禁),所以个体权限的裁决是和识别点的位置相关的,比如要求单向行进的参观路径上,游客是不允许后向出门的,但工作人员则可以,所以游客角色在反向(门后,相当于行进方向)的识别点是没有权限开门的,在正向(门前)的识别点是有权限开门的;而工作人员角色则不管正反向都有开门的权限。

考虑到传统门禁系统人员和角色只能单一映射会限制智能控制系统随动业务系统的管控能力,所以允许一个人可以映射为多个角色,但由于控制系统的特点,只要在这些角色中有一个在识别点得到了授权许可即视为有通过权限并终止后继的检查。

在上述的实现中意味着:默认没有授权,只有显式的将某角色在某识别点的出现绑定为某特殊事件才是一个特定的授权。但这个所谓的授权也并不就一定意味着开门动作。比如,在很多的资金交接区域,开门是一个有很多约束前提的动作,如需双门互锁(一个封闭的资金交接区域有两道门,各自有门禁管控,两门只能同时打开一道)、远程确认(刷卡得到授权后还需保安通过视频进行确认并在安保中心按下同意按钮才能开门,单一刷卡或远程按下按钮都不能开门)等等。

从双门互锁、远程确认这些功能我们可以看到状态机相比产生式在控制领域的优势:

  • 状态机的输入源只是发出一个事件,无论要实现的功能有多复杂,它就是简单的发出一个事件通知

  • 复杂些的功能都是一系列连贯的动作,对状态机来说这是天然的,而产生式是平行的条件检测,哪个满足执行哪个,执行路径难以控制

  • 我们想象的智能系统要具备随动环境变化而变化,这就可能经常需要对各种复杂功能进行调整、升级与新增。状态机可以通过图上作业,甚而我们在有了足够的积累之后,可以开发图形化的辅助设计工具来帮助分析、自动推导来降低设计难度。但产生式的功能是分布在非常多的规则中的,这些规则的彼此平行,需要非常强的专家知识来提供帮助

====================================================================================================

关注我的公众号及时获取推送的最新文章

公众号

版权声明:本文为博主原创文章,未经博主允许不得转载。

用PythonPi实现门禁系统-模式识别

模式识别听起来很高大上,其实就是特征识别。人类对事物的识别过程其实就是提取特征、根据特征对事物进行分类的过程,然后人类就可以将这类事物的特点与规律套用到这个事物上。我们在门禁课程中曾提出过一个双人开门...
  • jxandrew
  • jxandrew
  • 2017年01月09日 11:05
  • 340

用PythonPi实现门禁系统-示例

和分布式智能控制系统类似,首先实现了Python接口的API,基于图形界面的管理界面以后视情况提供。先看示例的接线图:这个示例是用树莓派的spi接口连接了一个rc522读卡器,以15号gpio口连接了...
  • jxandrew
  • jxandrew
  • 2017年01月12日 13:27
  • 720

用PythonPi实现门禁系统-概述

门禁系统是安保系统中最常用的安全防护系统之一。和控制系统相关的主要包括如下部分: 门控制器,这也就是通用的控制模型中的裁决器,一般都直接集成了前端信号、动作执行的接线端子。一般分为单门或双门,多个门控...
  • jxandrew
  • jxandrew
  • 2016年12月26日 16:50
  • 403

用PythonPi实现门禁系统-功能实现

在考虑如何用PythonPi来实现门禁功能时,我们首先要梳理有多少状态变量: 出门按钮,有开关两个状态 读卡器,有读到有效卡号(即有权限在本场景中使用)与未读到 电锁,有开关两个状态 自动锁门定时器,...
  • jxandrew
  • jxandrew
  • 2017年01月16日 13:37
  • 329

用PythonPi实现门禁系统-权限管控

对门禁系统来说,权限就是是否许可某人通过某门。从控制的角度来说,就是读入一个卡号,决定是否开锁或采取其它动作。智能控制系统首先是一个信息系统,信息系统中的权限是对信息资源的管控,按信息流动的方向有两种...
  • jxandrew
  • jxandrew
  • 2016年12月29日 10:47
  • 453

(JAVA)门禁系统

1,问题描述 试题编号: 201412-1 试题名称: 门禁系统 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述   涛涛最近要负责图书馆的管理工作,需要记录下每天读者的到访...
  • u010707315
  • u010707315
  • 2017年05月17日 13:51
  • 621

PythonPi门禁课程-概述

门禁系统是安保系统中最常用的安全防护系统之一。和控制系统相关的主要包括如下部分:门控制器也就是通用的控制模型中的裁决器,一般都直接集成了前端信号、动作执行的接线端子。一般分为单门或双门,多个门控制器可...
  • jxandrew
  • jxandrew
  • 2016年12月30日 11:57
  • 473

JAVA门禁系统

Door.java package com.handson.sys; public class Door { public final static String OPEN = "门已开启...
  • u012332009
  • u012332009
  • 2014年12月03日 17:14
  • 4055

基于树莓派的门禁系统

这几天黑客松比赛, 在大神的带领下稳稳地落幕了, 虽然是第二次参加这个活动了, 但是这一次才是我尽全力的去做自己的东西, 这里也感谢xx大牛的指导 。 也不废话了, 直接上图吧 ...
  • baidu_28138887
  • baidu_28138887
  • 2015年05月26日 18:22
  • 2886

51单片机项目 门禁系统

/** * 项目名:门禁系统 * 文件名:main.h */ #ifndef _MAIN_H #define _MAIN_H sbit RELAY_PIN = P0^4; sbit BUZZ...
  • qq_21411985
  • qq_21411985
  • 2015年05月19日 22:25
  • 978
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:用PythonPi实现门禁系统-场景
举报原因:
原因补充:

(最多只允许输入30个字)