基于单片机和CAN总线的电梯控制设计

时间:2022-03-05 01:11:01

基于单片机和CAN总线的电梯控制设计

【摘要】本文以两个51单片机、CPLD技术、CAN通信控制器SJA1000设计了基于CAN技术的电梯主控制器,以优化系统结构、合理分配任务和提高系统的可靠性为目的,详细阐述了电梯控制系统主控器的硬件电路设计原理和软件流程。硬件电路具有高速的数据处理能力、模块化的软件设计,方便地提供了系统的维护和修改功能,成功完成了电梯控制系统的主控制器设计。

【关键词】单片机;CAN总线;CPLD技术;电梯控制

1.引言

电梯控制系统是一个相当复杂的逻辑控制系统,现有国内的电梯控制系统大多数采用PLC作为电梯的控制核心,对每层楼进行点对点控制,进一步加大了电梯控制工作的复杂性。

单片机为核心的分布式智能电梯控制系统主控制器,可以有效地提高系统的可靠性,实时性和软件编程的灵活性。主控制器是电梯的核心,不但要保证整个系统的稳定运行,而且要在极短的时间内对系统所有的任务进行响应。

本设计是基于单片机技术和CAN总线技术的主控制器软硬件设计,应用于电梯,使得电梯的控制更加稳定安全。串行通信被现场总线技术取代后使得通信更快、可靠性更高,大大提高了电梯控制系统的实时性。

2.系统设计

2.1 CAN总线介绍

CAN(Controller Area Network Bus)总线即控制器局域网络总线。CAN总线是BOSCH公司在现代汽车中首先推出的一种多主机局域网,它具有极高的可靠性,独特灵活的设计和低廉的价格,现在被广泛应用于工业现场控制、智能大厦、交通工具、信号环境控制等领域。CAN总线与其他几种现场总线比较而言,是易于实现和价格最低的一种,十分适合我国的国情。目前电梯井道系统中,主要采取并行通信,上行和下行的电缆很多,安装和调试也比较麻烦,而采用CAN总线比通常的并行通信大大节省了电缆数量,给电梯安装、调试、维护都带来了极大方便。

2.2 SJA1000简介

SJA1000是CAN总线控制器,是PHILIPS公司的82C200控制器的替代品,实现了CAN的物理层和数据链接路层的大部分,用户只须对SJA1000初始化和对CAN总线上的数据进行收发即可,使用起来更加方便快捷。其具有BASICAN和PELICAN两种工作模式,本系统工作在PELICAN模式,它支持CAN2.0协议规定的所有功能,能接收和发送扩展帧报文(29位标识符),增强错误处理能力,在确认报文正确后予以应答,可完成CAN总线协议的物理层和数据链路层的所有功能,可向所有节点广播信息,也支持多主从节点相互通信。

2.3 系统硬件结构图

控制器不仅要完成复杂的逻辑控制,还要实现数据通信、数据处理、安全监测及实时响应的功能。

根据这一特点,本系统采用双单片机和CPLD的控制策略。其中一个单片机用来完成数据的实时处理、运算和响应、输入/输出信号的处理、电源监控及数据的非易失性保存;另一单片机完成与控制系统中其他微处理器之间的CAN局域网数据通信;双CPU保证了系统的实时性。

CPLD是应用广泛的专用集成电路,具有集成度高、工作速度快、和在线编程方便等特性,在系统中用于实现可编程I/O口的扩展、片内时序逻辑电路和组合逻辑电路设计、输入缓冲、输出驱动及产生其他器件的片选信号;CPLD通过片内可编程数据交换模块发送输入端口状态信息到单片机,接收单片机发出的控制信息,对于系统中部分输入、输出逻辑关系直接在CPLD中由可编程逻辑处理模块完成。系统的具体结构图如图1所示。

图1 电梯控制器的硬件结构图

图2 电梯主控制器控制原理图

3.系统硬件设计

电梯控制系统电路设计主要包括4个部分:主控制器、轿箱控制电路、呼梯电路以及控制器之间的通信方式。

主控制器是电梯控制系统的主要部分,负责整个电梯的运行控制。轿箱控制电路,主要完成人机交互功能。呼梯电路,每一层楼都有的呼叫装置,给出每一楼层的呼叫请求信息,并且显示电梯当前运行状态。控制器之间的通信方式,主控制器、轿箱控制器和呼梯控制器之间采用CAN总线进行通信。各控制器之间只需一对双绞线通过网络拓扑结构连接即可,安装及其方便。本文主要介绍主控(下转第33页)(上接第31页)制器的设计方法,主控制器的控制原理图如图2所示。

图3 电梯工作服务程序流程图

4.系统软件设计

由于电梯控制系统的软件设计较为复杂,因此采用模块化结构设计思想,根据执行不同的功能设计不同的软件模块,程序设计采用子程序和分支程序自上而下的编程方法,再用自底向上、逐步综合的设计思想编制整个系统的应用程序,配合硬件完成控制系统的全部功能。正常工作模块包括开门子程序、关门子程序、查呼梯子程序、消号保号子程序、定时中断服务程序、显示子程序、状态输入子程序、给定子程序、减速自程序等。具体流程图如图3所示。

除了正常工作服务程序以外,电梯控制器的主程序还应包括控制器初始化程序、故障慢车处理程序、检修服务程序、消防服务程序。

控制器通电后,程序开始执行,首先开中断,执行初始化程序后,判断电梯处于何种工作状态进入相应的服务子程序。初始化主要完成的工作是:控制器初始化函数,完成寄存器的配置和接口模块的时钟控制;光电编码器初始化函数,完成正交编码信号计数模式,计数方向的设置等;I/O初始化函数主要是根据初始情况设置I/O口的输入输出状态,使电梯达到一个比较稳定安全的状态。

如果进入检修服务程序,这时CPU主要完成跟踪显示楼层位置、切断快车、并禁止响应各层的呼梯信号。如果进入消防服务程序,CPU主要完成消防运行。此时如电梯正在运行,上行时立即减速停车换下行方向启动返回基站。若电梯停在某层,立即下行返回基站。下行时直接返回基站。消防运行时不响应各楼层的呼梯信号,只按轿厢内指令执行。

当检测显示电梯不在平层位置时,执行故障慢车处理程序。如果在平层位置则记忆显示楼层,开门消号,然后查呼梯确定运行方向。首先是按顺向截车原则确定是否应维持原运行方向,并用逐层查询法查电梯运行的前方各层是否有呼梯要求。如果有则程序保证在锁门后电梯按原来方向继续运行,如果没有则根据内选优先原则由内选信号来确实新的运动方向。如果不是以上情况则控制器进入正常工作服务程序。

5.本文小结

本文以两个51单片机、CPLD技术、CAN通信控制器SJA1000设计了基于CAN技术的电梯主控制器,以优化系统结构、合理分配任务和提高系统的可靠性为目的,详细阐述了电梯控制系统主控器的硬件电路设计原理和软件流程。硬件电路具有高速的数据处理能力、模块化的软件设计,方便地提供了系统的维护和修改功能,成功完成了电梯控制系统的主控制器设计。另外,系统采用复杂可编程逻辑器件CPLD可以具有静态可重复编程和动态在系统重构的特点,这样硬件设计和软件设计一样可以通过编程来修改,使得电子系统设计的灵活性和即用性大大提高。

另外,在很多环境下,由于电梯乘客的客流量比较大,单电梯已不能满足需要,而需要采用2台、4台或者多台电梯构成电梯群来提供服务。这样的群技术就越来越受到人们的关注,成为目前电梯发展的一个方向。基于单片机和CAN总线的电梯主控制器及轿厢控制器等的设计为群控技术的实现提供了先决条件。本文采用的是8位单片机作为主控制器,我们也可以设计其他以16位单片机、ARM单片机作为控制器的电梯控制系统。

参考文献

[1]武汉美.单片机应用技术与实践[M].北京:九州出版社,2011.

[2]王晓明.电动机的单片机控制[M].北京:北京航空航天出版社,2007.

[3]王自珍,殳国华.基于Proteus单片机仿真的舵机控制设计[J].电气自动化,2013,35(4).

作者简介:苏红卫(1982―),女,山东济南人,研究生,江苏商贸职业学院讲师。

上一篇:引起电容器开口三角电压保护跳闸故障的主要因... 下一篇:刘庄煤矿物联网设备管理系统设计