采用单片机和MCP2510、MCP2551芯片设计集散型火灾报警控制系统

发布者:eta17最新更新时间:2023-08-10 来源: elecfans关键字:单片机  MCP2510  集散型 手机看文章 扫描二维码
随时随地手机看文章

随着经济建设的发展,社会对火灾报警控制系统的规模的要求越来越大,为了适应市场的需要,笔者利用CAN现场总线技术,设计出了一种集散型火灾报警控制系统,该系统结构灵活、使用方便,可满足大、中、小各种规模的火灾报警及消防控制的要求。CAN(Controller Area Network)即控制器区域网——一种有效的支持分布式控制和实时控制的串行通讯网络,由于其高性能、高可靠行,及独特的设计,越来越受到人们的重视,其总线规范已被ISO国际标准化组织制定为国际标准,并被公认为是最有前途的现场总线之一。本文主要介绍由MCP2510与MCP2551组成的CAN现场总线的在集散型火灾报警控制系统中的应用。


1、系统组成与工作原理概述

本文提出的基于CAN现场总线的集散型火灾报警控制系统的网络结构如图1所示,每个节点都以AT89C51单片机为节点控制器,MCP2510为总线控制器,MCP2551为总线收发器,其中,与控制台工作站相连接的节点被称为集中机,其余为区域机。在集中机中,所谓控制台工作站,就是一台PC机,单片机通过外部串行接口与控制台工作站交换信息。各个区域机分布在不同的地理位置上,独立地执行一个完整的任务。在本文系统中,一个区域机通过一种专门设计的探测器总线可以连接感烟、感光、感温等各种火警探测器,还可以借助适配器控制诸如喷水阀、卷帘门等各种消防设备以及各种声光报警设备,探测器总线上的设备通称为前端设备。利用CAN通信技术将区域机联网,管理人员在集中机上就可以观察各个部分的情况,便于管理和检测,随时可以了解到各区域机运行的是否正常,有无报警发生,也可以使各个区域机通过信息交互,实现资源共享,联防控制。每个区域机都是一个独立的基本报警控制单元,其功能与单独使用时的情况完全一样,它们从本区域机的探测器上采集数据,如有警情出现,在启动本区的有关消防设备的同时,通过CAN总线将报警信号传送给集中机,集中机再决定需要起动的由其它区域机管辖的有关消防设备,并通过CAN总线发出联动命令。另外,由于CAN总线是基于报文的,总线上的节点可以做到即插即用,因而系统的可扩展性比较好;并且,增删CAN总线上除集中机以外的任何一个节点,不会对其它的节点造成任何影响。

采用单片机和MCP2510、MCP2551芯片设计集散型火灾报警控制系统

图1中的MCP2510是Microchip公司为简化CAN总线的接口应用而专门设计的一种独立CAN控制器芯片,支持 CAN协议2.0A/2.0B,最大可编程波特率为1Mbps;MCP2551是Microchip公司生产的可容错的高速CAN总线收发器芯片,支持1Mbps的运行速率,可连接高达112个节点,适合12V和24V系统,管脚特性与MCP2510完全兼容。


2 、硬件电路与SPI接口技术

图2是本文系统节点进行CAN通信的硬件电路图,在原理图中,总线控制器MCP2510与总线收发器MCP2551直接相连,因为它们的管脚是完全兼容的,另外,考虑到系统总线速率比较低,所以使MCP2551的斜率电阻输入引脚RS悬空,选择最小斜率,这样,既可将RFI抑制到最小,又可简化线路设计。下面重点说明一下MCP2510与AT89C51的接口技术。

采用单片机和MCP2510、MCP2551芯片设计集散型火灾报警控制系统

图2 节点进行CAN通信的硬件接口电路

采用单片机和MCP2510、MCP2551芯片设计集散型火灾报警控制系统

MCP2510面向单片机有1个高速SPI接口(5Mhz),该接口由片选控制输入CS、移位脉冲输入SCK、串行数据输入S I和输出SO等4个引脚组成。AT89C51不具备标准的SPI接口,但是,可以利用UART接口与SPI接口通信。图3为AT89C51的UART接口工作在方式0,即移位寄存器方式时的工作时序图。AT89C51的UART有4种工作方式,按方式0工作时,串行数据从RXD输入或输出,TXD输出移位脉冲,每次发送或接收8位数据,波特率固定为时钟频率的1/12,即1个位周期对应1个机器周期,1个机器周期由12个时钟周期组成,等分为6个状态(S1~S6),每个状态又等分为2个相位P1、P2,因此1个机器周期的12个时钟周期可记为S1P1、S1P2、S2P1、……、S6P2。TXD输出的移位脉冲在每个机器周期的S3、S4和S5期间为低电平,而在其余时间为高电平。发送时,每个机器周期的S6P2输出数据,数据有效时间完全覆盖了TXD输出脉冲的负半周,显然,无论是在TXD的上升沿,还是下降沿,外设都可从RXD输入有效数据。接收时,每个机器周期的S5P2输入数据,显然,外设如果在TXD的下降沿输出数据,单片机就可接收到有效数据。因为MCP2510的SPI接口是在SCK的上升沿输入数据,在SCK的下降沿输出数据,所以,在电路图中,可以将TXD直接作为SCK的输入信号。MCP2510的SPI接口在读过程中,首先接收单片机发出的读命令和地址,这时,输出信号线SO处于高祖态,之后,在输出数据时,输入信号线SI的状态可为任意值。而在写过程中,SO始终处于高阻态。一个写过程或读过程的启动或结束,都是由片选信号CS控制的。根据SPI接口的这一工作机理,在电路图中,将MCP2510的SI和SO连接在一起,形成一个双向信号线,再与AT89C51的准双向数据线RXD连接在一起,实验结果证明,MCP2510与AT89C51的这种连接方式是完全正确的。因为在单片机应用领域,51系列单片机一直是主流产品,所以将其应用于CAN总线系统,无疑可以降低成本,缩短开发周期。


为了实现与MCP2510的SPI接口交互,单片机的UART接口选择方式0,采用12MHz晶振作为单片机的时钟频率,在方式0下,波特率固定为1Mbps。在图2所示的硬件电路的支持下,AT89C51就可按照普通移位寄存器的方式与MCP2510进行数据交互,对MCP2510进行写操作和读操作的汇编语言子程序从略。值得指出的是,因为SPI传输数据的顺序是先高位后低位,与UART传输数据的顺序相反,因此,编写单片机与MCP2510的接口程序时,对MCP2510的控制字、状态字以及寄存器地址,要进行二进制到排处理。例如,MCP2510的接收缓冲寄存器RXB0的首地址是01010110B,单片机读其中的内容时,写入单片机的串口缓冲寄存器SBUF的地址值应该是01101010B。


3 、MCP2510初始化

MCP2510的初始化包括设定可编程引脚功能、总线波特率以及接收过滤器与屏蔽器,以下主要介绍总线波特率以及接收过滤器与屏蔽器的初始化。


3.1 波特率初始化

MCP2510内含的波特率发生器由可编程预分频器、固定2分频器和位定时器级连而成,它使设计者可以方便地选择所需要的任何波特率。在位定时器中,MCP2510将一个位周期依次分割为同步段、传播段、相位缓冲段1和相位缓冲段2等4个时间段,每个时间段的长度都是输入信号周期TQ的整数倍,其中同步段固定为1TQ,其余3个时间段的长度都是可编程的。所谓波特率初始化,就是设置可编程预分频器和位定时器各可编程时间段的值,使其满足波特率的需要。


根据CAN技术协议,波特率为1Mbps时,通信距离为40m,波特率为5Kbps时,通信距离最远可以达到10Km。考虑到本文系统既可用作一个高层楼宇的火灾报警控制网络,又可用作一个单位内部多个仓库、车间等的火灾报警控制网络,所以通信距离应该在数千米以上,而所要传输的数据量不大,故可以选择较低的波特率。在实际应用中,笔者选择波特率为8Kbps。


本文系统选择12Mhz晶体振荡器为MCP2510提供时钟信号。根据位定时器中各个时间段的长度必须满足的约束条件,初始化传播段寄存器PRSEG=3,相位缓冲段1寄存器PHSEG1=4,相位缓冲段2寄存器PHSEG2=4;然后初始化预分频器BRP=49。从而可得总分频系数为(49+1)×2×[1+(3+1)+(4+1)+(4+1)]=1500,最终获得8Kbps的波特率。


3.2 过滤器与屏蔽器初始化

MCP2510具有完善的总线争用功能,可用于分布式系统,但是,在火灾报警控制系统中,因为集中机担负着对区域机的监管任务,所以本文系统采用了集中-分散控制方式,集中机不断地巡回查询区域机,在工作台上随时反映区域机工作的情况,为工作人员提供维护设备的依据。


MCP2510支持标准帧、扩展帧和远程帧,数据段长度为0-8个字节。器件对CAN总线上的数据接收是通过2个接收缓冲器、6个接收过滤器和2个接收屏蔽器的组合来实现的。CAN总线上的帧只有至少满足一个接收过滤器的条件才可被接收。为了说明过滤器与屏蔽器的初始化方法,这里首先介绍报文帧。本文系统只使用标准数据帧进行数据传输。标准数据帧的长度为44+8n位,其中11位ID段在本文系统中被分为两部分,高7位用来表示区域机的逻辑地址码,整个系统允许接入的区域机最多为50个,低4位用来表示报文类型码。集中机发送的报文帧如表1所示,区域机发送的报文帧如表2所示。8n位数据段可有可无,在表1中,只有选呼联动报文含有数据段,表示请求联动的设备号,在表2中,只有请求点名报文不含数据段,其余报文必须至少含有1个字节数据,用来表示区域机的逻辑地址码,其余数据用来表示故障、报警的探测器号和设备号,或区域机配置。


表1:集中机发送的报文帧

采用单片机和MCP2510、MCP2551芯片设计集散型火灾报警控制系统

表2:区域机发送的报文帧

采用单片机和MCP2510、MCP2551芯片设计集散型火灾报警控制系统

表1中的xx xxxx表示集中机要访问的区域机的逻辑地址码。表1的报文是发送给区域机的,表2的报文是发送给集中机的,报文能否被接收,要由MCP2510的过滤器来决定,因此,初始化时,集中机按从上到下的顺序将表2中的数据依次写入MCP2510的过滤器RXF1~RXF5,区域机在用本机的逻辑地址码代替表1中的xx xxxx之后,也按从上到下的顺序将表1中的数据依次写入MCP2510的过滤器RXF1~RXF5,未曾用到的过滤器RXF0被设置为全“1”,使其不接收总线上的任何有效报文。初始化时,在区域机方面,将2个接收屏蔽器都设置为全“1”,在集中机方面,将接收屏蔽器RXM1设置为全“1”,而将RXM0设置为101 1011 1010B,表示除集中机的过滤器RXF1的SID9、SID6、SID2和SID0等4位外,过滤器的其余所有位都参与信息过滤,这是因为上述4位与请求点名帧的ID码在跳变位置上的隐性位相对应,而请求点名帧容许多个区域机同时发送,从而由传输延迟引起的码间串扰,很可能使这些位的状态不确定。


4 、通信过程简介

集散型火灾报警控制系统的通信过程,也就是集中机对区域机循环进行的点名和查询过程。在点名阶段,集中机发送广播点名帧,区域机以请求点名帧响应,若接收到未被登录的区域机发出的请求点名帧,集中机进行选呼点名,区域机以配置帧响应;在查询阶段,集中机反复判断有无自检请求,若有自检请求,则对区域机逐个选呼自检,区域机以配置帧响应,自检结束,继续选呼查询,区域机以正常帧、或故障帧,或报警帧响应,在查询中若接收到报警信号,再根据需要发送选呼联动帧,区域机以正常帧确认。


5 、结束语

实验结果表明,因为MCP2510具有完善的现场总线管理机制和面向单片机的SPI接口,一方面简化了系统的软、硬件设计,另一方面使节点控制器摆脱了对网络通信的频繁干预,从而大大提高了系统的整体性能,与采用RS232等其它串行通信技术的集散型系统相比较,本文提出的基于CAN总线的集散型火灾报警控制系统具有较高的安全性、可靠性和实时性,可用于各种场合的火灾报警控制。

关键字:单片机  MCP2510  集散型 引用地址:采用单片机和MCP2510、MCP2551芯片设计集散型火灾报警控制系统

上一篇:基于555定时器和单片机的RC测量系统设计
下一篇:使用单片机设计实现键盘的资料和源代码概述

推荐阅读最新更新时间:2024-10-26 21:17

采用单片机MCP2510MCP2551芯片设计集散火灾报警控制系统
随着经济建设的发展,社会对火灾报警控制系统的规模的要求越来越大,为了适应市场的需要,笔者利用CAN现场总线技术,设计出了一种集散型火灾报警控制系统,该系统结构灵活、使用方便,可满足大、中、小各种规模的火灾报警及消防控制的要求。CAN(Controller Area Network)即控制器区域网——一种有效的支持分布式控制和实时控制的串行通讯网络,由于其高性能、高可靠行,及独特的设计,越来越受到人们的重视,其总线规范已被ISO国际标准化组织制定为国际标准,并被公认为是最有前途的现场总线之一。本文主要介绍由MCP2510与MCP2551组成的CAN现场总线的在集散型火灾报警控制系统中的应用。 1、系统组成与工作原理概述 本文提出
[单片机]
采用<font color='red'>单片机</font>和<font color='red'>MCP2510</font>、<font color='red'>MCP2551</font><font color='red'>芯片</font>设计<font color='red'>集散</font><font color='red'>型</font><font color='red'>火灾报警</font><font color='red'>控制系统</font>
一种基于CAN总线的集散火灾报警控制系统
随着经济建设的发展,社会对火灾报警控制系统的规模的要求越来越大,为了适应市场的需要,笔者利用CAN现场总线技术,设计出了一种集散型火灾报警控制系统,该系统结构灵活、使用方便,可满足大、中、小各种规模的火灾报警及消防控制的要求。CAN(Controller Area Network)即控制器区域网——一种有效的支持分布式控制和实时控制的串行通讯网络,由于其高性能、高可靠行,及独特的设计,越来越受到人们的重视,其总线规范已被ISO国际标准化组织制定为国际标准,并被公认为是最有前途的现场总线之一。本文主要介绍由MCP2510与MCP2551组成的CAN现场总线的在集散型火灾报警控制系统中的应用。 1、系统组成与工作原理概述   本
[工业控制]
一种基于CAN总线的<font color='red'>集散</font><font color='red'>型</font><font color='red'>火灾报警</font><font color='red'>控制系统</font>
一种基于CAN总线的集散火灾报警控制系统
  随着经济建设的发展,社会对火灾报警控制系统的规模的要求越来越大,为了适应市场的需要,笔者利用CAN现场总线技术,设计出了一种集散型火灾报警控制系统,该系统结构灵活、使用方便,可满足大、中、小各种规模的火灾报警及消防控制的要求。CAN(Controller Area Network)即控制器区域网——一种有效的支持分布式控制和实时控制的串行通讯网络,由于其高性能、高可靠行,及独特的设计,越来越受到人们的重视,其总线规范已被ISO国际标准化组织制定为国际标准,并被公认为是最有前途的现场总线之一。本文主要介绍由MCP2510与MCP2551组成的CAN现场总线的在集散型火灾报警控制系统中的应用。 1、系统组成与工作原理概述  
[安防电子]
一种基于CAN总线的<font color='red'>集散</font><font color='red'>型</font><font color='red'>火灾报警</font><font color='red'>控制系统</font>
DCS-2001集散控制系统在垃圾焚烧电厂中应用
近几年来.垃圾焚烧发电悄然进入了工控行业人士的视野。作为传统行业派生的新行业,它告别了垃圾添埋时代,进入了节约资源、清洁环保、再生能源的新世纪,垃圾焚烧目前越来越受到大家重视。我国的垃圾发电技术的发展还刚刚起步,大部分都是成套引进国外设备,成本极高。为了满足国内垃圾处理市场的迫切需求,实现垃圾焚烧技术的国产化势在必行。 垃圾焚烧发电的方式很多.主要有回转型焚烧炉、流化床焚烧炉和机械炉排焚烧炉等几种方式,我国使用的炉型以后两者居多。 广东东莞市区垃圾处理厂使用的是北京中科通用能源环保有限公司设计的循环流化床垃圾焚烧炉。它的控制系统是DCS一2001系统,这是一个垃圾焚烧电厂设备彻底国产化的工程实例。 1 焚烧电厂的组成 东莞市区垃圾
[嵌入式]
赛德-I DCS集散控制系统打造智能光伏电站
10月12日,太阳能光伏电站DCS集散控制系统应用及市场化推广技术交流研讨会在沪举行,本次会议邀请了行业技术专家、市场推广专家等业界人士,共同就赛德-1型DCS系统在太阳能光伏电站的应用和市场推广进行深入交流与探讨。 赛德-I型DCS集散控制是上海禅德智能公司专为太阳能光伏电站设计研发的一款智能化控制系统,拥有同行业领先水平的核心专利技术。据悉,该系统的应用将有效解决目前太阳能光伏电站只监不控的现象,大大提高太阳能光伏电站的发电量,为建设智能化太阳能光伏电站,促进中国太阳能光伏电站的市场化应用起到积极推动作用。 本次会议由上海禅德智能科技有限公司主办,上海太阳能科技有限公司协办。作为中海阳股份公司的控股子公司,上海禅德智能科技有
[新能源]
ABB AC800F 集散控制系统在煤化系统中的应用
   1 引言   青海某责任有限公司投资新建一个100 万吨/年焦化项目。由于地处高原,为了提高产率,保证系统持续的安全、稳定运行,在该公司选中了广泛使用的ABB AC800F 系统。ABB AC800F dcs 系统是基于工业IT(Industrial IT)的控制平台,它的工业自动化水平较高,采用开放的一体化控制器、最新技术和标准,具有信息总和,高工程效率,高级可升级的解决方案,开放的通讯,既插既用等特点。又同时具有开放的一体化控制器、全局化的数据管理系统,是世界领先的集dcs 和PLC 优点于一体自动化控制系统。   2 项目简介   该公司是一个集采矿、选矿、冶金、煤化工产业为一体的综合性大型民营独资企业集团
[嵌入式]
ABB AC800F 集散控制系统在煤化系统中的应用
1 引言   青海某责任有限公司投资新建一个100 万吨/年焦化项目。由于地处高原,为了提高产率,保证系统持续的安全、稳定运行,在该公司选中了广泛使用的ABB AC800F 系统。ABB AC800F dcs 系统是基于工业IT(Industrial IT)的控制平台,它的工业自动化水平较高,采用开放的一体化控制器、最新技术和标准,具有信息总和,高工程效率,高级可升级的解决方案,开放的通讯,既插既用等特点。又同时具有开放的一体化控制器、全局化的数据管理系统,是世界领先的集dcs 和PLC 优点于一体自动化控制系统。   2 项目简介   该公司是一个集采矿、选矿、冶金、煤化工产业为一体的综合性大型民营独资企业集团。为了适应恶
[工业控制]
ABB AC800F <font color='red'>型</font><font color='red'>集散</font><font color='red'>控制系统</font>在煤化系统中的应用
ABB AC800F 集散控制系统在煤化系统中的应用
1 引言   青海某责任有限公司投资新建一个100 万吨/年焦化项目。由于地处高原,为了提高产率,保证系统持续的安全、稳定运行,在该公司选中了广泛使用的ABB AC800F 系统。ABB AC800F dcs 系统是基于工业IT(Industrial IT)的控制平台,它的工业自动化水平较高,采用开放的一体化控制器、最新技术和标准,具有信息总和,高工程效率,高级可升级的解决方案,开放的通讯,既插既用等特点。又同时具有开放的一体化控制器、全局化的数据管理系统,是世界领先的集dcs 和PLC 优点于一体自动化控制系统。   2 项目简介   该公司是一个集采矿、选矿、冶金、煤化工产业为一体的综合性大型民营独资企业集团。为了
[工业控制]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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