基于CAN总线/RS485接口的双层网络远程抄表系统设计

发布者:代码律动最新更新时间:2015-07-15 来源: eepw关键字:CAN总线  RS485接口  双层网络  远程抄表系统 手机看文章 扫描二维码
随时随地手机看文章
1.引言

目前我国普遍采用户用计量仪表即水表、电表、燃气表、热表(四表)安装在用户室内, 抄表人员走家串户,手工抄表采集数据,然后结算的计量收费方式。为了有效解决入户抄表收费存在的诸多弊端, 我国从90年代初开始研制全电子式电能表,并且取得了一定的成果。目前已研制出多种远程抄表系统,常用的有用基于电力线载波的抄表系统,基于RS-485总线的抄表系统等。
基于电力线载波的抄表系统,减少了系统由于布线带来的成本,但是由于信号和强电在同一根线上传输,传输过程中不可避免地存在强电场的干扰,信号的可靠性受到影响,而且随着传输距离的增大,信号的衰减较快,影响了抄表数据的可靠性;基于RS-485的抄表系统是较为理想的一种远程抄表系统,它采用的是主从式的通信方式,任何时候只允许一个节点向网络发送数据,所以RS-485多采用主从结构的命令型通信方式来防止数据通讯故障,数据通信时必须由主节点接收到管理主机的命令,然后由主节点向各个从节点传达命令,从节点的数据依次送至主节点,最后再由主节点将各从节点的数据发送至管理主机。从数据通信过程可以看出,如果主节点出现故障,则整个系统会陷入瘫痪状态。另外,随着居民区的用户的不断扩大,要求抄表系统现场数据通信距离也随之增加,由于采用485总线在9600bps下能达到的最远传输距离小于1200米,因而需要增加一个或多个中继以实现数据的较远发送和接收。因为485为半双工通信,中继器在工作中必须判断网络数据流向,所以中继器的结构复杂,导致增加了系统成本,降低了系统的可靠性。
CAN(Controller Area Network)是控制器局域网的简称它是德国Bosch公司在1986年开发的一种串行数据通信总线。CAN网络上的节点不分主从,任一节点均可在任意时刻主动地向网络上其他节点发送信息,通信方式灵活,利用这一特点可方便地构成多机备份系统,CAN采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级较低的节点会主动地退出,而最高优先级的节点可不受影响地继续传输数据,从而节省了总线冲突的仲裁时间。
针对它们各自的特点,我们采用符合国际标准ISO 11898的CAN总线技术和目前仪表和自动化装置常用的RS-485总线构成双层网络结构,这种网络结构有效地解决了系统的建设成本高、数据管理困难、可靠性不高以及可扩展性能差等问题。
2.系统的总体设计框架
本系统采用双层网络的构架,见图1。


目前我国四表普遍安装在户内,工作环境不算恶劣,所以本系统低层网络采用 RS-485总线。它具有结构简单、成本低廉、对布线要求不高的特点;而且RS-485总线在9600bps下最远传输距离可以达到1200米,完全能够完成一栋楼家用控制器与集中控制器远程通讯的距离需求;再加上它们之间的通讯数据量小,数据结构简单,所以RS-485总线能够可靠地完成低层数据采集的需要。高层网络采用兼容性能好、可靠性能高、数据传输速度快、传输距离远(在5000bps时传输距离10km)的CAN总线。CAN总线采用短帧结构,传输时间短,受干扰概率低;有CRC校验和出错标定能力;而且具有故障节点自动脱离CAN总线等功能,特别适合所处环境恶劣,数据交换较频繁的集中控制器与管理中心计算机之间的通信。
系统由家用控制器、集中控制器、管理中心主机组成二级分布式监控式系统。家用控制器以单片机为核心,能接收耗能表(四表)送出的脉冲信号,并且进行计数、数据处理、保存数据、发送用户信息和显示用户状态信息等功能,为了提高可靠性,配有独立的备用电源供电。集中控制器可对一定数量的家用控制器进行集中管理,将各家用控制器采集到的数据传送至管理中心,同时为了保证用户信息的安全,将采集到的数据进行备份处理,同样它也有备用电源可在停电时继续给控制器供电。一般情况下,一栋楼配置一个集中控制器。小区管理中心主机通过运行远程抄表管理软件来处理下位机传送来的数据信息,例如进行统计、交费管理、报表、网络事故报警等操作。为了降低系统的设计成本,RS-485与CAN皆采用价格低廉的双绞线连接。
3. CAN总线的通信协议
3.1 CAN总线上的电平
CAN总线具有两种逻辑状态:隐性或显性。在隐性状态下VCANL和VCANH被固定于平均电压电平,Vdiff近似为零。显性状态以大于最小阈值的差分电压来表示。
显位(0):VCANH 3.5V,VCANL 1.5V
隐位(1):VCANH 2.5V,VCANL 2.5V
3.2 总线仲裁
仲裁期间,每个进行发送的节点都将其发送的位电平与监控总线电平进行比较,任何发送一个隐性位而监视到一个显性位电平的节点立即变成接收器,而不破坏总线上的任何信息,等到总线空闲时,再重新发送报文。报文标识符的二进制数值越低,其优先级越高。
3.3 CAN总线的报文格式
CAN技术规范定义了CAN报文格式。CAN定义了四种不同的帧,数据帧、远程帧、出错帧、超载帧。
数据帧的组成格式见图2。

帧起始:1个显位,标志帧的开始。
仲裁场:由标志符和远程发送请求位(RTR)组成。
控制场:数据长度码和两个保留位。
数据场:包括0 ~8个字节,每个字节8位。
CRC:CRC序列与CRC界定符。
应答场(ACK):应答间隙与应答界定符。
远程帧的组成格式和数据帧类似包括帧起始、仲裁场、控制场、CRC和应答场,与数据帧相反,远程帧的RTR位是隐位,远程帧不存在数据场。
出错帧由两个不同的场组成,第一个场由来自各站的错误标志叠加得到,第二个场是出错界定符。
超载帧包括两个位场,超载标志和超载界定符。
帧间空间包括间歇场和总线空闲场。
4. 集中抄表器的硬件设计
4.1集中抄表器的硬件设计
由于底层采用的是RS-485,而网络上层采用的是CAN总线协议,这就要求集中抄表器不但具有数据采集、数据备份,而且应该具有协议转换的网桥功能。CAN与RS-485总线转换网桥的设计原理图见图3。[page]

 


网桥的微控制器采用TI的MSP430F449,它负责整个网桥的监控任务。CAN控制器接口电路由CAN通信控制器SJA1000和CAN总线收发器82C250组成,为了提高系统的可靠性和抗干扰能力,可以在SJA1000和82C250之间增加光耦合电路。RS-485总线端所使用的是内部具有光耦合的差动收发器MAX1480。网桥中设计的LED,可用于网桥上的上电指示,总线收发状态及故障情况指示,网桥的看门狗采用了一片X25045。X25045除了具有看门狗和上电复位功能外,内部还集成了512个字节的串行EEPROM,用于保存网桥参数配置等信息。网桥的配置可通过CAN总线或RS-485总线实现,通过网桥的适当配置可以很方便的实现报文的过滤。
4.2集中抄表器的软件设计
网桥总线数据的接受均采用中断的方式,在主监控中实现数据的发送,内存采用FIFO机制管理。
由于RS-485总线与CAN总线是两种不同的总线形式。相互进行数据通讯时,需要进行协议转换。CAN总线标准具有物理层和数据链路层协议,以帧为单位进行数据通信,而且每帧均携带相应的ID标志符,而RS-485本质上是一个物理标准,以字节为单位进行数据通信,不带有任何其它附属信息,其格式完全由用户自己定义。所以在考虑设计RS-485帧格式时,应该参考CAN总线的帧格式。具体设计RS-485帧格式时可以参考以下格式:


第一个字段为地址字段,占用一个字节,作为RS-485子网的多机通信地址用。在RS-485网络中,只能采用一主多从的方式进行通信,网络中必须有一个主控节点,在此网桥为主控节点,通过查询点名的方式进行通信。第二到第四字段与CAN报文中的同名字段定义相同,实际上这三个字段是一个完整的CAN报文。网桥在进行转发时只需要将这三个字段构成的CAN报文发送即可,使网桥中的协议转换更为容易实现。最后的校验字段可用于网桥接受报文时的校验,以保证数据的可靠。软件设计流程见图4。

 

主监控程序根据接受缓冲区中是否有报文,决定数据是否发送以及发送给谁。如果接
受CAN子网数据缓冲区中有报文则向RS-485子网转发,如果接受RS-485子网数据缓冲区有数据则向CAN子网转发。由于CAN报文和自定义的RS-485报文的帧格式长度不同,在转发报文时,要进行帧格式的转换。在转发报文后,要对相应的FIFO缓冲区进行参数调整。另外在主监控程序中,如上位机对网桥有状态请求或网桥本身有故障,网桥可以向上位机返回本机状态。该功能便于系统的故障定位,管理中心计算机通过运行远程抄表管理软件可以提前发现系统故障,增强了系统的可维护性。
5.结束语
由CAN总线和RS-485总线组成的双层网络结构,有效地实现了户用计量仪表和远程管理计算机的有效数据通讯。它们无论在硬件连线,还是软件编程都具有很好的兼容性。在实验室条件下,通过系统运行检验表明,系统运行平稳,可靠性较高,实现了高效率的远程数据采集和集中管理。

关键字:CAN总线  RS485接口  双层网络  远程抄表系统 引用地址:基于CAN总线/RS485接口的双层网络远程抄表系统设计

上一篇:采用MAx487,光耦TLP521组成的RS485中继器电路
下一篇:内置RS-485/RS-422接口的UART

推荐阅读最新更新时间:2024-05-02 23:48

基于单片机的高精度温湿度监控系统
引言 一个高效的温湿度自动监控系统对各行业进行科学有效的管理,保障工作环境温湿度恒定,降低能源损耗是非常必要的。传统的温湿度远程监控系统如RS一485总线在数据传输过程中存在着数据传输速率低、实时性差,对所采集的实时数据不能进行分析、节点加入或者离开网络要重新配置等问题,而温湿度传感器检测过程中湿度受温度影响而导致测量误差大、校准和标定复杂、互换性和长期稳定性差等。 因此,本文提出一种基于CAN总线高精度温湿度监控系统,不仅可以提高系统的传输速率和实时性,而且也可以提升系统温湿度采集的准确度。 1 系统的整体结构 图1 温湿度监控系统的总线分布式结构 CAN Bus(Controller Area Ne
[单片机]
基于单片机的高精度温湿度监控<font color='red'>系统</font>
基于CAN总线的电力抄表系统设计
CAN总线简介 CAN为多主方式工作,网络上任一节点均可以在任意时刻主动向网络上其他节点发送信息;CAN网络上的节点信息分成不同的优先级,可满足不同的实时要求;CAN采用非破坏性总线仲裁技术;CAN只需通过报文滤波即可实现点对点、一点对多点及全局广播等几种方式传送接收数据;CAN的直接通信距离最远可达10km(速率5kbit/s以下),通信速率最高可达1Mbit/s(此时通信距离最长为40m);CAN的每帧信息都有CRC校验及其他检错措施,保证了数据出错率极低;CAN的通信介质可为双绞线、同轴电缆或光缆,选择灵活。 系统方案设计 系统由以下部分组成:脉冲电度表、电量采集器、CAN转换器、调制解调器、上位机。系统的结
[单片机]
关于CAN总线的基础
文章来源于Digikey 车载网络允许微控制器和发动机控制单元 (ECU) 处理器与传感器、执行器、指示器、显示器以及彼此进行通信。 车载网络的网络带宽取决于所支持的功能。 通常,基本的车身和舒适应用程序可以在低总线带宽下工作,而动力传动系统和底盘应用需要更多的带宽,安全功能使用中等带宽,信息娱乐应用程序使用高带宽,而高级驾驶员辅助系统(ADAS)需要非常高的带宽。 此外,车载网络可以使用多种网络架构,每种架构都与一组功能需求相匹配。经典的车载网络是CAN总线。 CAN总线功能和结构 CAN 已存在约三十年,并且仍在不断发展。 ISO 11898 标准中描述了经典的 CAN 总线。 它支持高达 1 兆位每秒 (Mb
[汽车电子]
关于<font color='red'>CAN总线</font>的基础
基于S3C6410的CAN总线接口扩展方案
  本文介绍了一种基于S3C6410的CAN总线接口扩展方案,通过SPI接口对CAN接口进行扩展,并给出具体的硬件电路。重点研究了WINCE系统下独立CAN控制器MCP2515的驱动程序。结合CAN总线技术规范和MCP2515的特点设计了相关的软件代码,编写了CAN流接口驱动程序,实验结果表明,在WINCE系统下能够较好实现CAN总线的通信。   CAN是博世公司开发的一种串行通讯总线,主要是为解决现代汽车中不断增加的电子器件相互间的信息交换问题。CAN总线的数据通信在工业应用中相比其他总线在可靠性、实时性和灵活性等方面具有较大优势,凭借其优良的性能及独特的设计,在嵌入式开发中有着广泛的应用。随着现代汽车电子网络化的不断发展,车载
[单片机]
基于S3C6410的<font color='red'>CAN总线</font><font color='red'>接口</font>扩展方案
技术文章—CAN总线分支过多或过长问题的五种解决方案
摘要:CAN总线作为可靠性、稳定性最高的总线之一,在工业现场、汽车电子、轨道交通等行业都有广泛的应用。但是在实际使用CAN总线中还是会遇到一些问题,今天我们就总线分支过长/过多引起的总线问题进行深入的剖析。 CAN总线的布线受现场环境、产品形状等因素的影响,可能导致现场布线中出现总线的分支过长/过多等现象,某系统中A、B(AB各有120电阻)一条CAN线上挂有CDEF等节点,若将C支线延长100m,则F全部关闭,系统会报错,去掉100m延长线,F任意状态系统都不会报错。 当总线支线过长,上升沿和下降沿产生台阶现象,当台阶正好处于0.5V逻辑识别阈值附近时,容易导致位宽度失调,从而使接收节点接收错误,针对此类错误给出
[物联网]
技术文章—<font color='red'>CAN总线</font>分支过多或过长问题的五种解决方案
基于CAN总线的汽车CAN节点测试仪设计
  CAN通讯程序包括SJA1000芯片的初始化、接收数据和发送数据。测试仪上电后进行SJA1000的初始化,该操作必须正确可靠,这是接收数据和发送数据的前提。根据SJA1000的手册,设计 代码如下: writesja1000(MODADDR, 0x09);    //设置方式寄存器,进入复位操作以初始化 writesja1000(CDRADDR, 0x88);    //设置时钟分频寄存器,选PeliCAN模式 writesja1000(AMR0ADDR, AMR0 );    //设置接收屏蔽寄存器0 writesja1000(AMR1ADDR, AMR1);    //设置接收屏蔽寄存器1
[嵌入式]
基于DSP2812的带式输送机多路温度检测系统设计
  0 引言   带式输送机是煤矿最理想的高效连续运输设备,与其他运输设备(如机车类)相比,具有输送距离长、运量大、连续输送等优点,而且运行可靠,易于实现自动化和集中化控制,尤其对高产高效矿井,带式输送机已成为煤炭开采机电一体化技术与装备的关键设备。由于煤矿井下环境恶劣,带式输送机设备易损坏,一旦输送带与滚筒之间发生打滑及输送带温度升高会严重威胁井下人员生命安全,目前国内对输送带温度精确检测问题一直没有得到很好解决。   随着DSP芯片技术与新型非接触式红外温度传感器技术的不断发展以及总线控制系统(FCS)逐渐取代传统集散控制系统(DCS)为设计一种新型井下带式输送机温度检测系统提供了可能。本系统采用TMS320F2812作为
[模拟电子]
为何车载空调压缩机CAN总线通讯需要采用隔离方案?
炎炎夏日,车内空调系统的稳定可靠运行显得尤为重要。本文将为您介绍如何通过总线隔离避免因通信不畅引起的车载空调故障。 为什么要用隔离 从能源种类来看,目前公路上的车型主要可以分为两类,一类是使用传统汽油、柴油作为燃料的车辆,另一类是使用电池的新能源车。这两类车型的车载空调系统有什么区别呢?传统的燃油车辆,空调压缩机是由发动机直接将动能传递给空调压缩机,而新能源车的空调压缩机则是由车内的电池驱动的。 图1 动力电池 将新能源汽车的动力电池驱动压缩机需要几个步骤,首先要将直流电转化为交流电(逆变),然后调整交流电频率使其能稳定驱动压缩机中的电机,该部分的功能部件在车辆中以空调驱动单元存在。说到高压、逆变、变频、
[汽车电子]
为何车载空调压缩机<font color='red'>CAN总线</font>通讯需要采用隔离方案?
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved