电梯控制柜故障诊断系统数据库的设计与实现
1 引 言 电梯控制系统故障诊断系统是一个动态的系统,需要实时的采集数据,并对数据进行分析;同时为了增加数据采集卡的灵活性,需要对数据采集卡与电梯控制系统端口采取灵活的对应关系。因此,在电梯控制系统故障诊断系统中,需要进行数据库的设计,以方便地管理所需要的各种数据。 2 电梯控制柜故障诊断系统结构 该故障诊断系统以工控机为主机,他主要功能是通过软件模拟电梯运行现场的各种信号,对电梯控制柜的端口状态进行监测。利用5块研祥的PCL-722直接和工控机的总线相连,通过软件设置各个通道的I/O状态,配合相应的输入/输出端口板直接与电梯控制柜的端口相连,完成数据的实时采集和发送。采集的实时数据传输到故障诊断系统的数据库中,由故障诊断系统根据现场的实时数据对电梯控制柜当前的状态进行监控和诊断。系统的结构图如图1所示。 3 数据库的分析与设计 电梯控制柜故障诊断系统数据库功能分析: (1)数据采集卡的端口位与电梯控制系统端口的对应关系 在电梯控制系统故障诊断系统中,工控机与电梯控制系统端口之间的数据采集/发送采用并行方式,每一个电梯控制系统端口对应数据采集卡的一个位。如何快速的找到每个电梯控制系统端口对应的数据采集卡位是相当的重要,而且为了接线和以后修改的方便,这种对应关系采用动态的对应关系。
(2)电梯控制系统的端口基本信息 包括电梯控制系统的端口编号、端口功能说明、端口的当前值。 (3)电梯控制系统的当前状态 通过对数据采集卡采集过来的电梯控制系统端口值按照外召上、外召下、楼层显示、当前电梯位置、门状态、运行/停止状态等分类,确定电梯控制系统的当前状态。 将电梯控制系统当前状态与正常运行时候的状态按照状态空间转移法进行比较,如果出现故障,则进行故障诊断。记录下故障发生的时间、现象和可能的故障原因。同时,故障信息具有按时间或者电梯控制系统编号进行删除的功能。 (5)测试结果的管理 电梯控制系统根据自动测试时选择的项目进行运行,将个功能测试的结果和总的电梯控制系统测试结果保存下来。同时以前的测试结果能根据电梯控制系统编号进行查看和删除功能。 (6)生成测试结果报表和故障信息报表 将电梯控制系统当前测试的结果和故障信息以报表形式打印显示出来,便于项目的管理。 在电梯控制系统故障诊断系统数据库的逻辑设计中,采用的是ER模型。 ER模型的作用是描述某一组织的概念模型,ER模型主要由3个组件组成: ①实体(entity) 客观存在并可相互区分的事物。 在电梯控制系统故障诊断系统的数据库中,实体主要有:数据采集卡信息、电梯控制系统基本信息、电梯控制系统测试结果信息实体、测试故障信息实体等。 ②关系(relation) 独立的实体相互之间的关系。如:电梯控制系统端口与数据采集卡的关系。关系通过主键和外键来描述,用于维护参照完整性。实体之间的关系虽然复杂,但抽象以后,可以把他们归结为3类: 一对一联系(1∶1) 对于实体集A中的每一个实体,实体集B中至多有1个实体同他联系。我们把这种关系定义为1∶1。如电梯控制系统端口与数据采集卡的位是一对一的关系。 一对多联系(1∶N) 对于实体集A中的每一个实体,实体集B中有n(n≥0)个实体同他联系。反之,对于实体集B中的每一个实体,实体集A中至多有1个实体同他联系。例如:一个班级有很多学生,而每个学生只能在一个班级中。在电梯控制系统故障诊断系统数据库中,电梯控制系统基本信息和电梯控制系统故障信息就是这种一对多的联系,故障信息中包括了很多电梯控制系统的故障信息。 多对多联系(N∶N) 对于实体集A中的每一个实体,实体集B中有n(n≥0)个实体同他联系。反之,对于实体集B中的每一个实体,实体集A中也有m(m≥0)个实体同他联系。如:电梯控制系统状态与电梯控制系统端口信息就是多对多的联系。在电梯控制系统状态中,有多个端口的值信息;而多个端口的值又属于多个状态。 ③属性(attribute) 实体所具有的特征。如数据采集卡的卡地址、端口地址、位地址等。 图2是电梯控制系统故障诊断系统数据库实体及其联系图。
4 数据库的管理与维护 在电梯控制系统故障诊断系统中,我们用Access2000建立了相关的数据库和表;在主程序中,用VB语言通过DAO方式来对数据库进行操作和管理。 (1)数据库中数据的添加 因为我们的故障诊断系统是一个实时的系统,需要和数据库交互的数据很多,但如果实时经常的访问数据库,将使程序的运行速度变慢,而电梯控制系统端口的数据变化是一个缓慢的过程,所以在实际处理的时候,我们虽然是实时对数据进行采集,但如果没有发现主要端口(包括显示、召唤、功能输入信号、方向、开关门信号等)数据变化,则只将该状态记录一次,当记录到一定数量后再一起写进实时数据库。 下面的程序为实时故障数据库中添加故障的程序代码:
ret.Close (2)数据库中数据的删除 动态数据库中的数据将随着测试次数的增多而越来越大,为了防止数据的溢出,对于除控制柜故障信息表和控制柜测试结果表之外,其余的表在每次测试完成退出程序的时候,将所有的内容全部删除。 (3)数据的查询 在电梯控制系统故障诊断系统中,可以通过输入控制柜编号或者测试日期进行查询,方便测试者和领导对测试记录和控制柜故障记录的跟踪。 (4)数据报表的显示 在电梯控制系统故障诊断系统中,主要有2个数据报表:一个是电梯控制系统测试结果报表,另外一个是电梯控制系统故障显示报表。数据报表的目的是显示当前测试的结果和故障原因,或者是查询以前测试过的某一个控制柜编号的测试情况。测试结果报表的界面如图3所示。
5 结 语 该数据库投入使用以来,运行状况良好,能满足电梯控制柜故障诊断系统对数据库的使用要求,受到了用户的好评。 |