基于CAN总线的大容量汉字火灾楼层显示器设计

发布者:MindfulBeing最新更新时间:2016-05-16 来源: eefocus关键字:CAN总线  大容量汉字  火灾楼层显示器 手机看文章 扫描二维码
随时随地手机看文章
  1 引言

  火灾楼层显示器作为火灾自动报警系统的重要组成部分,是一种安装在楼层或独立防火区中的数字式火灾报警显示装置。它通过报警总线与火灾报警控制器相连,处理并显示报警总线上的数据。火灾楼层显示器中的内置单片机将接收到的总线信息进行判断、分析和处理,将报警的探测器地址编号转换成相应的火警地点信息(例如房间号和房间类型等),连同火警类型一道通过液晶显示出来,同时发出声光报警信号,通知失火区域的人员。

  目前国内现有的火灾楼层显示器大都以51单片机作为MCU。因为ROM寻址空间所限,火灾楼层显示器大都只能显示火警所在楼层号和地址号,无法以直观的汉字信息提示情况各异的具体火警地点。如果将汉字信息通过总线分发到各个楼层显示器,巨大的通讯量又会给火警系统总线带来沉重负荷,导致整个火警系统效率低下,延误火警上报时机。本文提出了一种基于CAN总线的大容量汉字火灾楼层显示器,很好的解决了上述问题。

  2 火灾报警系统总体功能描述

  火灾报警控制系统中,中央火警控制器通过CAN总线和各个单元进行实时通讯并完成各项控制和报警功能。单元是火灾探测器、手动报警按钮、输入输出模块、楼层显示器等设备的总称。它们是系统终端,直接探测火灾信号,并通过通道上报给控制器,同时接收由各种通道转发控制器给单元的联动信息(启动输入输出模块控制的灭火装置)、显示信息(楼层显示器显示火灾信息)等。通道是回路模块、转接模块和总线控制盘等设备的总称。它们是控制设备和终端的通道,是拓扑网络构成的中继设备。火灾报警控制系统的总体结构和楼层显示器在系统的中的位置如图1所示。

  图1 火灾报警控制系统结构及楼层显示器所在位置显示

  3 系统功能及硬件描述

  3.1 汉字楼层显示器硬件设计方案

  如图2所示,汉字楼层显示器包括单片机及其外围电路,CAN总线模块, FLASH存储器,汉字液晶模块,UART接口,以及灯和按键,蜂鸣器。单片机可通过UART接收PC上传下来的汉字信息,存储到FLASH中作为地址信息的查询数据库。通过CAN控制器MCP2510和CAN总线驱动器PCA82C250组成的CAN通信模块和火灾报警控制器进行CAN总线通信。如果有火警发生,单片机将记录火警信息,查询FLASH得到火警发生的汉字地址信息,并在汉字液晶上滚动显示火警和信息查询结果。同时,发生火警时还可通过查询键快速查询火警信息,通过蜂鸣器报警,通过消音键消音,并点亮发光二极管报警。未发生火警时,通过自检键自检可以检查各个功能是否能正常工作。

  图2 汉字楼层显示器结构框图

  3.2 FLASH存储器电路设计

  FLASH选用的SST29SF040是SST公司推出的高速可编程闪存。它符合JEDEC标准,具有512K×8 Bits的存储结构;芯片擦除及写入的时间快,整片擦除只需70毫秒,段擦除只需18毫秒,字编程写入时间仅为14微秒;可靠性高,能够重复写100,000次,数据可以保存100年不丢失。

  SST29SF040的容量是512K Bytes,而51系列单片机的ROM直接寻址范围是64K Bytes,如果不加以处理而直接使用,将会浪费大量的存储空间。我们使用了一种分页存储方式,使得FLASH存储空间得以充分利用,大大扩充了单片机ROM寻址范围。按照每条汉字信息占用32个Bytes计算,理论上可以最大存储16384条火警地址信息,足以应付绝大多数复杂的工程环境。图3为存储器电路,最高位地址线A16-A18接单片机的P1.0-P1.2,因而FLASH存储器实现了8页,每页64K的外部存储结构。在每次读写FLASH时,将P1.0-P1.2赋不同的值即可实现不同的页选。假设page为待选取的页号变量(0-7),在Keil Cx51中通过下列语句即可实现读写前的选页操作:P1 = (P1 & 0xf8) | page;

 

  图3 FLASH存储器分页存储电路

  3.3汉字液晶显示模块设计

  我们选用金鹏电子公司的OJM2*8A汉字液晶模块作为显示设备。OJM2*8A中文液晶显示模块内含GB 2312的15*15点阵国标一、二级简体汉字和 8*8点阵及8*16点阵ASCII字符,用户输入GB2312区位码或ASCII码即可实现文本显示。每个汉字的区位码只占用两个字节,是原来汉字点阵所需存储单元的1/16。

  汉字液晶模块接口协议为请求/应答(REQ/BUSY)握手方式。应答BUSY高电平(BUSY =1)表示液晶模块忙于内部处理,不能接收用户命令;BUSY低电平(BUSY =0)表示液晶模块空闲,等待接收用户命令。发送命令到液晶模块可在BUSY =0后的任意时刻开始,先把用户命令的当前字节放到数据线上,接着发高电平REQ信号(REQ =1)通知液晶模块处理当前数据线上的命令或数据。液晶模块在收到外部REQ高电平信号后立即读取数据线上的命令或数据,同时将应答线BUSY 变为高电平,表明模块已收到数据并正在忙于对此数据的内部处理。此时用户对模块的写操作已经完成,用户可以撤消数据线上的信号并可作模块显示以外的其他工作,也可不断地查询应答线BUSY是否为低(BUSY=0 ?),如果BUSY=0,表明模块对用户的写操作已经执行完毕,可以再送下一个数据。如向模块发出一个完整的显示汉字的命令,包括坐标及汉字代码在内共需5个字节。模块在接收到最后一个字节后才开始执行整个命令的内部操作,因此最后一个字节的应答BUSY 高电平(BUSY =1)持续时间较长。对液晶模块写汉字时序图如图4所示。

  图4 对液晶模块写汉字时序图

  3.4 CAN总线通讯模块设计

  我们选择Microchip公司的MCP2510CAN控制器和Philips公司的PCA82C250CAN收发器构建CAN总线通讯模块。MCP2510支持CAN2.0A/B协议,可接收和发送2.0协议下的标准帧、扩展帧和远程帧。MCP2510拥有三个发送缓冲区和两个接收缓冲区,可以进行接收滤波和消息管理,防止过度发送和过度接收形成拥塞。其最大的优点是拥有传输速率可达5Mb/S的SPI端口,节省MCU端口,提高通信速度。Philips公司的82C250CAN总线收发器可与MPC2510无缝连接,它有高速模式,斜率控制模式和延时模式。经过多次的实验证实其工作在斜率控制模式下最为稳定,速度也能构满足系统10Kbps的传输速率。

  图5 CAN总线通信电路

  CAN总线通讯模块电路如图5所示,单片机通过I/O口直接和MCP2510的SPI口相连,用软件模拟实现SPI接口协议。PCA82C250作为MCP2510与物理CAN总线的接口。如果需要进一步提高系统的抗干扰能力,可在MCP2510和PCA82C250之间加一个光电隔离器。

  4 系统软件设计

 

  汉字楼层显示器软件功能主要是1.将串口发送下来的汉字信息文件写入FLASH存储。2.和火灾报警控制器进行CAN通信,如果发现有火警信息,则查找FLASH中的汉字地址信息,予以显示在汉字液晶上报警,如有多条火警信息,则滚动显示各条信息。

  图6 汉字楼层显示器软件流程图

  图6是汉字楼层显示器软件流程图。用page(值为0-7)表示读写的FLASH页,用count(值为0-65535)表示每页页内地址。其中page0-page6用来存储通过串口下载的汉字信息,page7用来存储接收到的火警等动态信息。一旦接收到新火警,即查询FLASH中相应的汉字信息,并在液晶上滚动显示。

  为了快速定位所查询的火警汉字地址信息,我们采用数组结构存储。尽管这样会因为实际火警地址不等长,而造成存储中出现一些空地址,存储效率不高,但是由于我们对数组的查找是一种可以直接定位的快速查找,不用采用链表之类的复杂数据结构,也避免了二分检索之类复杂的搜索算法。对于单片机而言,实质上是以比较小的空间为代价换来了比较高的时间效率,还是十分值得的。

  5 结语

  本文提出的基于CAN总线的大容量汉字火灾楼层显示器,较好的解决了现有火灾楼层显示器的缺陷。对大于51单片机ROM 64K寻址空间的数据存储需求,采取分页存储的访问方式可以很好的解决这个问题。通过在FLASH中存储大容量数据信息,可以避免因为CAN总线上通讯数据流量过大而导致火警不能及时传达,延误报警时机。而且FLASH中的汉字信息可以通过串口在线擦写,便于现场调试。目前产品已经投入实用,用户反应运行良好。

  参考文献

  [1] 朱明,王殊.一种基于CAN总线的大型火灾报警系统下位网络的设计与实现. 消防技术与产品信息,2003,(12):5~8

  [2] 王立峰,王晓平,耿庆波,彭熙伟. 基于CAN总线的客房通信控制器的设计.微计算机信息,2005,(16):3~7

  [3] 徐爱钧,彭秀华编著. Keil Cx51 V7.0单片机高级语言编程与uVision2应用实践. 电子工业出版社,2004

关键字:CAN总线  大容量汉字  火灾楼层显示器 引用地址:基于CAN总线的大容量汉字火灾楼层显示器设计

上一篇:基于现场总线控制技术的转炉煤气回收自控系统
下一篇:PCI总线接口设计及专用接口芯片的应用

推荐阅读最新更新时间:2024-05-03 00:23

基于CAN总线的网络化运动控制系统的研究
1、引言 运动控制系统是以机械运动的驱动设备—电动机为控制对象,以控制器为核心,以电力电子、功率变换装置为执行机构,在自动控制理论指导下组成的电气传动控制系统。在电气时代,电动机一直在现代化的生产和生活中起着十分重要的作用。在近年来,由于半导体制造设备等相关的电子制造设备市场大幅成长,而使得机器设备上的运动控制系统出现了以下几点技术需求: (1)多轴运动控制。机器设备因自动化程度提高而使得单一机器上所需要的轴数增多,一台设备上十几轴是常见的事情。在轴数变多后,如何协调各轴动作就是一个重要的课题。 (2)体积要小。由于厂房空间的限制,机器的体积要求越小越好,机器内控制器的体积也就被要求愈来愈小,相对的走线空间也
[单片机]
基于<font color='red'>CAN总线</font>的网络化运动控制系统的研究
基于CAN总线PC适配卡设计
引 言 分布式产业测控系统需要有现场总线来连接各现场设备及处理控制单元。CAN总线就是一种具有较高性能价格比、能满足分布式控制要求的现场总线,具有广泛的应用远景。它实际上是一种简化型网络结构,在构造单片处理器网络中极为有用。为了使上位机也能和CAN总线相连,使微机成为系统的上位机,增强控制系统的功能,从而进一步延伸CAN总线连通范围,就需要提供一个微机和CAN总线的接口。本文先容作者设计制作的一种CAN总线PCI适配器。 接口的硬件设计 PCI接口的实现 目前市面上有些CAN总线的适配器,但大多都是基于PC/104或者ISA总线,传输速度较慢,效率低下。作者在设计中使用高效的PCI总线,实现了数据的高速传输。与ISA总线相
[单片机]
基于<font color='red'>CAN总线</font>PC适配卡设计
CAN总线在电动汽车充电机上的应用
1  引言                      电动汽车 (ev)是由电机 驱动 前进的,而电机的动力则是来自可循环充电的电池 ,并且电动汽车对电池的工作特性的要求远超过了传统的电池系统,因此电动汽车电池系统电压高而且电流大,所以对电动汽车充电机的要求比较高 。                   电动汽车充电机需要能够在以分钟计算的时间内完成对电池的充电,而不是通常的以小时来计算。以一个电池容量为30kwh的电动汽车蓄电池来计算,如果在15分钟内将它充满,那么充电 功率 将达到120kw,假设电动汽车的充电电压在200~400v,那么相应的他的充电电流将会达到300a。如此大的充电电流,如果仅用单一的 电源模块 很难实现。
[嵌入式]
STM32之CAN总线例程
#include stm32f10x.h /* RCC时钟配置 */ void RCC_config(void) { ErrorStatus HSEStartUpStatus; /* RCC寄存器设置为默认配置 */ RCC_DeInit(); /* 打开外部高速时钟 */ RCC_HSEConfig(RCC_HSE_ON); /* 等待外部高速时钟稳定 */ HSEStartUpStatus = RCC_WaitForHSEStartUp(); if(HSEStartUpStatus == SUCCESS) { /* 设置HCLK = SYSCLK */ RCC_HCLKConfig(RCC_SYS
[单片机]
基于ARM微控制器AT91M40800和CAN总线的煤矸石分选系统设计
  引言   随着嵌入式技术的不断发展,高性能、低功耗、低价格的32位RISC芯片的ARM微控制器呈现出强劲的发展趋势,嵌入式系统和现场总线技术结合,结合二者的优点,为传统的选煤技术提供了新的改造方案。将嵌入式技术和现场总线技术相互融合,设计了一种新的煤块和矸石在线识别与自动分选系统。   煤矸石在线识别与自动分选系统   煤块和矸石在线识别与自动分选系统的原理框图如图1所示。根据选煤工艺要求,本系统主要由下面三大部分构成:      图1 煤矸石在线自动分选系统框图   (1)检测部分:由进料斗、输送带、CCD摄像头、图像数据采集电路等组成。开采出来的原煤常含有矸石,必须将矸石从传送带上挑选出来。CCD摄像头将
[单片机]
基于ARM微控制器AT91M40800和<font color='red'>CAN总线</font>的煤矸石分选系统设计
CAN总线网络应用例举
  前言   现场总线的工业过程智能自动化仪表和现代总线的开放自动化系统构成了新一代全开放自动化控制糸统的体系结构。   目前国际上公认的现场总线有10多种,各有其特点,并在一定范围内得刭应用。 其CAN总线网络是炙手可热的技术,目前它正在工业网络、医疗设备、轨道交通信号、楼宇控制及其它众多系统中得到应用。而本文要对CAN总线网络应用例举及其拓宽的现场总线控制系统(FCS)作其说明。   CAN总线网络   CAN采用多主工作方式,节点之间不分主从,但节点之间有优先级之分,通信方式灵活,可实现点对点、一点对多点及广播方式传输数据,无需调度。也就是说,它可向系统中的所有节点进行报文发送广播,即CAN系统中的每个节点均同时接
[嵌入式]
基于CAN总线的橡胶生产监测系统的开发
1 引言 在工业生产领域中往往对生产工艺要求严格。但是在实际生产现场有时候很难保证实际操作完全符合要求。例如橡胶的加工过程中,生产时间的控制非常重要。 在硫化和密炼等过程当巾,如果操作时问少于要求时间,将直接导致成品率降低,影响橡胶厂的效益。因此,必须对硫化和密炼的整个过程进行实时监测,对生产过程进行约束。但是在实际应用中往往生产厂区分散,组网困难。利用CAN总线组网能够满足上述要求。可以将整个工厂的硫化仪、密炼机等连接在一起组织成一个子网络,将各个子网络组成一个局域网,实现整个工厂设备的网络化和自动化。 2 系统介绍 2.1 CAN总线介绍 CAN总线是一种有效支持分布式控制的串行通信网络,是德国BOSCH公司从
[单片机]
基于<font color='red'>CAN总线</font>的橡胶生产监测系统的开发
基于MSP430单片机的CAN总线接口转换卡设计
1 引言 控制器局域网(Controller Area Network,简称CAN)是德国奔驰公司20世纪80年代为解决汽车众多控制设备与仪器仪表之间的数据交换开发的一种串行通信协议。它作为现场总线的一种广泛应用于各种工业现场,根据不同的需要或以主从方式、或以多主方式工作。CAN总线使用的通信介质为双绞线或其他电缆,传输速率可达lMb/s。 CAN总线与其他通信网的不同之处有二:一是报文传送中不包含目标地址,它是以全网广播为基础,各接收站根据报文中反映数据性质的标识符过滤报文,该收的收下,不该收的弃而不用。其好处是可在线上网下网、即插即用和多站接收;二是特别强化了对数据安全性的关注,满足控制系统及其他较高数据要求的系统需求。
[单片机]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved