论文部分内容阅读
随着我国经济的不断发展,高层建筑不断出现,电梯作为高层建筑中人员物资运输的重要工具,已经逐渐成为人们生活中不可或缺的一部分。同时伴随着人工智能相关技术产业的不断发展,语音、人脸、指纹等生物特征识别技术已经达到了商业化的标准,逐渐渗透进人们生活的方方面面,电梯控制系统智能化的条件已经成熟。但是,目前国内电梯厂商的电梯控制系统,存在着硬件性能低、软件可扩展性差等问题,这些问题严重阻碍了电梯智能化的发展。为了解决上述问题,本文设计并实现了一款基于STM32F105平台的电梯控制系统软件。本文对电梯功能需求进行分析,把电梯功能需求分成了三大类型,具体包括标准运行功能、故障处理功能和检修运行功能。标准运行功能主要包括运行控制,开关门控制以及异常保护。故障处理功能主要包括就近平层和紧急抱闸。检修运行功能主要包括点动运行和自动设置楼层信息。根据需求分析,本文首先定义了主控板输入输出接口,然后采用模块化思路进行电梯控制系统软件总体设计,本软件具体包括硬件抽象层、封装硬件抽象层接口的中间件层以及专注电梯控制逻辑的业务逻辑层。本文重点对中间件层和业务逻辑层进行设计与实现。中间件层设计的接口包括:CAN数据帧收发接口、RS485数据帧收发接口、GPIO电平控制接口、I2C读写EEPROM接口等。业务逻辑层根据功能需求,把电梯控制系统的运行模式分为标准运行模式、故障处理模式以及检修运行模式。标准运行模式通过待机状态、启动状态、运行状态、平层状态、开门状态和关门状态六种状态的切换,实现控制电梯运行。故障处理模式把故障分为三个等级,一级故障仅登记处理;二级故障就近平层处理;三级故障严重威胁乘客安全,紧急抱闸处理。检修运行模式分为检修运行状态和自学习状态,检修运行状态下电梯维护人员可以控制电梯点动运行,自学习状态下可以自动获取楼层信息。在电梯控制系统软件测试时,分别对中间件层接口进行单元测试,对业务逻辑层进行功能测试和性能及可靠性测试。在中间件层单元测试中,使用类GoogleTest框架,分别测试CAN数据帧的发送和接收,RS485数据帧的发送和接收以及I2C读写EEPROM等。在业务逻辑层测试中,测试标准运行模式实现的全集选功能、开关门功能和异常保护功能;测试故障处理模式实现的就近平层功能和紧急抱闸功能;测试检修运行模式实现的点动运行功能和自学习功能。测试结果表明,本文设计的电梯控制系统软件可满足对应的功能需求。