CAN总线在停车场灯光智能控制系统中的应用2009-12-2915:42CAN(Controller达式AreaNetwork--控制器局域网)是一种有效支持分布式控制和实时控制的串行通信网络,具有可靠性高、成本低、配置灵活、数据传输距离远、数据传输速率快等优点,已经成为国际上应用最广泛的现场总线之一。目前大部分的地下停车场都需要大量的照明设备进行长期照明,采用传统的连续照明方式或声控照明方式很难实现照明的自动控制,且会造成巨大的能源浪费和设备损耗。国外虽然有类似的灯光智能控制系统,但价格很高,限制了它的广泛应用。本文提出了一种基于CAN总线技术开发的分布式停车场灯光智能控制系统,能够解决停车场内照明智能控制问题,降低停车场内的布线复杂度,减少安装费用并大大延长停车场内照明设备的使用寿命,具有良好的应用前景。1分布式停车场灯光智能控制系统的基本原理该智能控制系统的结构如图1所示。系统主要由上位机、CAN适配器、控制节点(包括出入口控制节点和现场控制节点)等部分构成,各节点间通过CAN总线进行通信。当有车辆进入停车场时,可以根据车牌号决定该车入库时的行车路线及车位,根据预定的行车路线,选择相应的照明控制方案。各现场控制节点检测各通道入口是否有车辆经过,当检测到过往车辆时,控制器打开车辆附近相关的照明回路,同时通过CAN总线向网络上的其他节点发布消息;其他节点根据接收到的消息以及事先预定的控制方案打开有关的照明回路。在出入口的控制节点可以实时监测并显示各个照明回路的开关状态。同时出入口节点也可根据需要进行手工控制,实现对停车场内每一个回路的开关控制,以应付一些紧急事件。为了让系统能够适应不同的使用环境,同时能够根据用户的需要随时改变照明方案,该系统采用现场可编程技术,可由上位机通过CAN总线,将各个节点的控制方案下载到各控制节点,实现照明方案的现场编辑、现场修改及现场下载。系统中CAN适配器的作用是将CAN总线上的命令通过串口或USB口传给上位机,也可以将上位机的命令转换成CAN命令发送给系统中的其它节点。2系统硬件设计控制节点按功能可以划分为不同的类型,但是其基本的结构相同。控制节点的电路结构如图2所示。主要由微控制器、CAN总线驱动器、外部存储器、串行接口、电源部分等组成。微控制器采用PHILIPS公司的P87C591,P87C591是一个单片8位高性能微控制器,具有片内CAN控制器,它采用了80C51指令集并成功的包括了Philips半导体SJA1000CAN控制器的Pelican功能(该模式支持具有很多新特性的CAN2.0B协议),同时该微控制器具有内置看门狗,内部程序存储器为16K字节。采用该控制器可以大大简化电路设计并节省应用空间。外部存储器的作用是存储从上位机下载下来的控制方案。外部存储器采用RAMTRON公司的FM25640。该芯片采用铁电存储技术,具有高速非易失的特性,采用SPI接口连接,容量是64K位。该芯片用于存储节点间的控制方案,同时也可以当作系统的缓冲区。继电器接口用于连接控制节点与照明回路,通过该接口控制节点可以控制照明设备的开关。串行接口电路采用标准RS-232接口芯片——MAX202,使用该接口可以使节点在无需连接网络的情况下也可以进行节点间互连关系的上传和下载,同时也可以当作调试的接口。8位拨码开关用于设定节点的逻辑地址,各个节点根据这个逻辑地址进行相互识别。3系统软件设计3.1上位机管理软件设计上位机管理软件实现的主要功能如下:1)系统控制方案的新建、修改、保存:用户可以通过管理软件建立并修改控制方案,或者将控制方案以文件形式保存,以备以后使用。2)系统控制方案的上传、下载:管理软件可以将网络中各个节点的所存储的控制方案上传到上位机,也可以将控制方案通过CAN总线下载到各个节点中去。3)实时监测系统各个回路的状态:系统通过CAN接口卡可以实时监测CAN总线上传送的各种命令,并可以在上位机上显示出各个回路的开关状态。4)控制系统各回路的开关状态:用户可以通过管理软件向系统中其它节点发送控制命令,控制系统中任意回路的开关。上位机管理软件采用组态技术和图形化编辑界面,用户可以通过组态方式或者通过表格方式建立、修改控制方案。管理软件也通过图形方式实时显示系统中各个回路的状态的。3.2控制节点的软件设计3.2.1控制节点软件实现功能控制节点软件实现的主要功能如下:1)系统的初始化:包括串口的初始化、CAN控制器的初始化、定时器的初始化以及系统主要变量的初始化。2)外部存储器资源的分配、管理:包括对FM25640读写的基本操作,以及建立在这些操作上的对节点控制方案的管理。3)CAN命令的发送、接收及解释:包括对其它节点发送的CAN命令的接收、识别、解释,以及相应的应答命令的发送。4)串口命令的发送、接收及解释:包括串口命令的接收、识别、解释,以及相应的应答命令的发送。5)传感器信号的检测:包括传感器组的连续检测,以及检测到信号时所进行的相应处理。6)照明回路的控制。7)定时器的管理。3.2.2控制节点软件工作流程控制节点的程序采用C51设计,这样可以大大简化程序设计的复杂度。控制节点的主程序框图如图3所示。在系统初始化后,程序循环查询传感器接口、串口和CAN接口。当检测到传感器有信号输出时,程序在打开附近的照明回路的同时也通过CAN总线向其他节点发送该传感器的信息。其余的控制节点一旦接收到该信息,便会查询存储在外部存储器中的控制方案信息,然后打开与该传感器相关联的照明回路,从而实现控制方案指定的照明方式。控制节点的CAN中断程序的框图如图4所示。当节点接收到一条CAN帧,中断处理程序读出该命令,并置CAN命令接收标志,等待命令处理子程序的处理。为了方便控制节点的安装与调试,在主程序中特别加入了串口处理程序。使用者可以通过发送串口命令测试控制节点的各项功能,也可以通过串口上传、下载控制方案。3.2.3现场可编程功能的实现为了实现该系统的现场可编程功能,每一个控制节点都应该存储本节点的照明回路与网络中其他节点的传感器的逻辑关系表。逻辑关系表的结构如下:照明回路传感器1234567100010102010000031000010上表表示节点的各个照明回路与系统中某一节点的的传感器(包括本节点)的互连关系。如果表项中对应值为1,则表示对应的照明回路与传感器相关联,一旦传感器有信号,相关的照明回路就会被打开。关系表中的各项的值可以随时改变,并通过上位机或串口重新下载到存储器中。假设网络中有N个控制节点,每一个节点中将会存储N-1张关系表,对应于网络中的其余N-1个节点。一旦某一节点在CAN上发送传感器消息,其余的节点接收到该消息后就会从对应于发出消息的节点的关系表中查找与该传感器关联的照明回路并打开这些回路。这样一旦有车辆进入停车场,该控制系统就会打开控制方案规定的所有的照明回路,实现照明的智能化。4结束语通过对系统软件、硬件的反复调试,该分布式灯光智能控制系统显示出了传统的停车场灯光控制系统无法比拟的优越性,可以有效减少小区地下停车场照明系统的安装和维护费用,具有良好的应用前景和推广价值。基于RS-485总线LED立面照明智能控制系统(转)2009-12-2815:47摘要文章介绍了基于现场总线LED立面照明的智能控制系统。该系统通过采用RS-485现场总线技术对立面照明实现编辑和控制。文章阐述了系统各组成部分的功能和实现方案,重点介绍了自定义的通信协议以及主站控制软件的构件设计。关键词RS-485串口灯光LED1前言目前,在我国各大城市地标性建筑物的夜景立面照明中,已开始大量运用节能、响应快、色彩艳丽的LED光源,除节能外,从夜景效果来看,可控制性强。变化丰富是LED光源与传统光源的最区别。因此,开发先进、可靠的控制系统成为发挥LED光源优势的关键。从国内的应用状况来看,目前市场多采用两种控制方式:内控与外控,应用还主要集中在简单的色彩变换上。因此,采用两种控制方式的LED项目与采用传统光源的项目相比,都存在同一个问题:照明效果的固定性。这种现象与LED产品的长寿命、多色彩、高响应度等特点相违背,不利于发挥LED的优势,严重影响了LED的推广。因此,我们以为,设计开发新型的控制方式,使LED夜景画面可随时更新,将极大地推动LED产业的发展。笔者通过对国家新材料行业生产力促进中心于2005实施的课题《半导体照明应用示范工程》中新型“LED灯光控制系统”的简要介绍,对该系统在设计过程中所涉及到的若干问题进行讨论,并从系统构架设计、通信协议设计、软件构架设计三个方面重点讨论此模式的特点及设计要点。2系统构架设计LED智能灯光控制系统是基于RS-485通信技术的现场总线,通过自定义通信协议在总线上外挂各类型控制器,并由主控统一管理的主从式总线型照明控制系统。它包括主控层、通信层、及LED灯具层,系统层次结构如下表所示。其中,主控层负责效果编辑、分析、存储、数据打包分配,从照明效果参数的设定和修改,到数据的查询,实现对LED灯具的管理;通信层通过自制定的通信协议与LED灯具层及主控层进行通信,完成数据拆包、校验、数据再分配等多步骤的数据处理;LED灯具层由N个灯具组成,核心为InterC51单片机组成的数据处理系统。系统拓扑结构如图1所示。通过工控PC机上的控制软件,并利用主、从站的MCS-51类型的单片机作为通信控制器。三层之间通过RS-485现场总线进行物理链路连接,通过由主站线程调度实现从站轮巡时间取得划分,实现在特定时间片内主到灯具XX之间的点对点通信。3通信协议设计通信协议的设计是系统设计的关键性问题,其信息帧的格式设计、链路建立方式、校验方法等设计都影响到系统的实时性与可靠性。下面就地址识别、帧设计、数据包设计、以及通信链路过程四个关键方面进行讨论。3.1地址识别地址识别可以采用数据包过滤的软件识别或采用特定硬件地址识别。地址识别方法的确定和软件识别算法的设计,将严重影响系统的正确性和可靠性。两种方法的选用,取决于系统的实时性要求和系统采用的硬件结构。本系统中所采用的MCS-51处理器专门为多机通信设计了一个专用SM2位,为此可以利用硬件识别,实现基于地址/数据帧的多机通信。3.2数据帧的设计本系统中按照以下格式发送。前8位为起始字节,接着为地址字节,接着为命令/数据字节,校验字节,最后为停止字节。帧格式如图2所示。此系统中的数据帧分为三部分:广播帧、地址帧。数据帧。广播帧是主控发给所有从控的信息帧,其实也可以归纳到地址帧内,但此时地址为广播地址,主要用于系统参数设置,时钟同步时用于检测计算延时等;地址帧的设计是用于地址识别和应答,一个主控可控制255个类别控制器,一个类别控制器又可以驱动255个LED灯具。数据帧主要是完成命令传送,参数传输等功能。3.3数据包的设计数据包的设计包括帧的组织方式,各种功能码设计、校验码设计以及数据设计问题。数据包格式如图3所示。功能由上下位机根据所需传输的参数类型、个数,以及系统对下位机功能设置情况而进行约定,有特殊字符代表特定的功能码如图4所示。其中校验码的生成取决于系统所采用的协议,在某一具体场所可以通过现场设置来选择。本系统采用的CRC校验码,生成多项式采用CRC-16,该多项式能全部检查出16位及以下的错误,对16位以上的漏检概率0.003%,完全满足系统的要求。3.4通信链路的过程由于现场环境复杂,该系统必须具有较好的抗干扰性。为了保证总线信号的传输不会出现延时、地址信号出错、指令信号跑飞等情况发生,通信采用主从应答方式和精确划分时间段的通信轮巡方式。通信链路主要过程如图5所示。主控首先发送类别控制器的地址帧作为握手信号,被寻址的类别控制器应答主控,建立链接。在判断地址符合后,主控就按照命令向从控制器传输适合的数据。4软件构架设计主控制软件采用模块化构架设计。通过灵活的软件构架设计、合理的功能模块设计来实现系统图形编辑的处理及管理。主站软件是在Windows2000、VC++6.0以及FLAHMX的环境下开发而成的。下面就软件构架的层次模型进行分析。