基于AT89C51单片机和总线技术实现电表抄表模块的设计

出处:现代电子技术 发布于:2020-11-10 14:12:40

  在我国随着一户一表的推广、城网和农网的改造、国家为了打破电力供应垄断局面而引入竞争政策的逐步深入和提高用电管理水平等等都需要发展自动抄表(Automatic Meter Reading,AMR)技术;同时,对住宅安全的重视也需要发展远程自动抄表系统;另外,这也是网络和计算机技术迅速发展的必然。目前我国已经有多家有实力的公司投入到自动抄表系统的研制工作,但是大部分是采用485串行总线,进行通讯。由于该总线在实际工程中存在2个问题:

  (1)通信数据收发的可靠性问题;

  (2)在多机通信方式下,一个节点的故障(如死机),往往会使得整个系统的通信框架崩溃,而且给故障的排查带来困难。

  本文所设计的基于LonWorks技术的电表抄表模块成功地解决了以上2个问题。

  2系统组成

  表头采样模块主处理器选用AT89C51单片机,完成电表脉冲信号采样、度数计算和反馈连动。抄表采集器由AT89C51作为主处理器与MCl43150Neuron芯片构成的Host-based节点作为系统的次站与LON网络连接。采用的Neuron芯片是MCl43150,其片内有3个CPU,即:介质访问CPU,网络CPU,应用CPU。他们与片内存储器、网络通信接口、定时器、I/O口驱动电路通过16b地址总线和8 b数据总线相连。Neuron芯片有11个可编程的I/O引脚,并提供4类共34种I/O对象。通过引脚的不同配置,为外部硬件提供灵活的接口,实现不同的I/O对象。这4类I/O对象为:直接I/O、并行I/O、串行I/O和计时器/计数器I/O对象。

  本设计将Neuron芯片工作方式配置为从B方式,具体为100~107与AT89C51的P0~P7口相连,经此通道AT89C51的管理信息和实时数据通过LonWorks网可以上位监控计算机以及其他LonWorks节点相互传输。系统结构图1所示。

 

  3 表头采集模块的硬件设计

  电表表头模块的主处理器选用AT89C51单片机。表头采集模块主要负责采集能源对应的数字量(脉冲信号),由主CPU进行处理,将相应的数据信号保存分时发送给抄表采集器,通过收发器,将相应电表的信号送到LON总线。

  本表头采集模块主要有以下部分实现:

  (1)信号采样电路

  目前,市场上的电表基本上为脉冲电表,即输出标准脉冲信号。以本系统调试采用的单相电子式电能表为例。电表输出的脉冲信号送到采集模块,经过光电耦合器开关(如图2),进行信号隔离,再通过74LSl4加以整形,然后送到单片机的外部中断INT0(P3.2)脚,引起CPU产生  外部中断。采用中断方式实现实时计数,排除了漏计的可能。

  (2)数据保存

  当有采样信号引起中断,计数器工作,当脉冲计数到3 200时,产生  写操作,将前一地址单元值加1保存到当前地址。存储器采用可在线电擦除的E2PROM28C17,作者经过巧妙构思,在读时将28C17当作程序存储器,写时当作外部RAM,工作性能非常稳定,读写操作从未出现差错。本系统中定义28C17的地址编码为7800H~7FFFH,2kB寻址。

  (3)日历时钟电路

  采样模块需要对系统能进行分时计数功能,所以需要实时时钟,以完成定时产生中断、分时显示、获取时间和日期等功能,具体选用美国Dallas公司生产的实时时钟芯片DSl2887。DSl2887是一个实时时钟的完整子系统,其集成度高,内部包含有1个锂电池、1个石英晶振和1个写保护电路。本系统采用DSl2887作为实时时钟芯片,AS,DS,R/W分别与89C51的ALE,RD,WR连接,用P2.6作为片选信号,所以DSl2887的高位地址为#0BFH,低8位决定着内部单元的地址。

  (4)断电处理

  当出现费用超支时,系统能进行自动断电处理。基本原理图如图3所示。当上位机端发现某用户费用超支时,发出断电指令给89C51,89C51通过给端口置零,经反相后,送至8050的B极,引起继电器动作,开关吸合,此时相当于送往电表的开关处于截止状态,系统断电。图中Q1,Q2构成达凌顿管。

  (5)显示模块

  本系统还可以提供液晶显示器(使用12232点阵液晶屏,提供汉显),做到实时显示功能,能在抄录某时期内、某用户电能表计数器窗口累计的全位示数。

  (6)其他部分

  本系统模块还设有空余I/O口作为预留按键接口,费用报警功能。

  4 抄表采集器的硬件设计

  抄表采集器的硬件设计主要包括处理器电路、AT89C51与MCl43150Neuron芯片之间的通信扩展、232串口通信电路、电源电路等。

  4.1 主CPU及其外围扩展电路

  主CPU采用常规单片机89C51,接有l片28C64E2PROM作为在线可电擦除存储器,保存各采样模块送来的数据信号。还包括复位电路、时钟电路、外部RAM扩展、232串口通信电路、电源电路等。

  4.2 主CPU和MCl43150Neuron芯片之间的通信接口的设计

  本抄表采集模块采用HOST-BASED结构,主CPUAT89C51和从处理器MCl43150Neuron芯片之间的通信实现采用从B方式。一般来说,并行接口可配置成Neuron芯片工作在主、从A或从B方式,2个Neuron芯片以主、从A方式接口;而Neuron芯片同非Neuron芯片以从B方式接口,非Neuron芯片充当主机,Neuron芯片工作在从B方式,进行握手联络来控制指令的执行。主从机交换数据期间Neuron芯片暂停应用程序的执行过程。每次  多可交换255B数据。这种并行I/O接口对象方式用在快速交换数据的场合是非常有用的。Neuron芯片能充当外部处理器的协处理器,产生一个网桥、网关或路由器。说明了Neuron芯片在并行接口对象时的典型应用。从B方式属于并行I/O对象,本系统使用MCl43150Neuron芯片的所有11只脚,其中MCl43150的I/O0~I/O7是8b双向数据线,I/O8~I/O10是3b控制信号线。借助令牌传递/握手协议,实现MCl43150Neuron芯片与主处理器之间的双向数据传输。相对主CPU而言,MCl43150Neuron芯片相当于一个有着8 b数据线、3b控制线的并行I/O设备。

  在主CPU的地址空间,作者把3150芯片当作2个寄存器,一个是读、写数据寄存器,另一个是控制寄存器。主机通过对这2个寄存器的访问实现主机与3150芯片之间的数据传输。控制寄存器的  位有效位(通过IO0读取),就是握手HS位,主机通过对控制寄存器的访问获得3150芯片反馈的握手应答。3150芯片接收IO8作为片选信号CS,接收IO9以确信主机的读、写操作,接收IO10作为寄存器的选择输入A0(A0是主机地址总线的  有效位)。出现下列2种情况时,IO0~IO7构成双向数据总线:

  (1)CS维持低,IO10为高,R/W为低;

  (2)CS维持低,IO10为低,R/W为高或低。

  如果CS维持低,IO10为高,R/W为高,IO0输出的是给主机的握手应答信号。另外,在从B方式中,主机要监视HS的状态。可能有这样一种情况,从机未能及时设置好HS状态,而此时主机已经在线并轮询HS。为避免在这种情况下主机读取HS的无效状态,本系统在HS引脚上加上了上拉电阻,如图4所示。

  4.3 Lon网络接口

  作者采用了支持FTT-10A自由拓补双绞线收发器的Control Module作为采集器与LonWorks总线的接口。FTT-10A收发器主体是一个隔离变压器,该变压器集成了一个78kb/s差分曼彻斯特编码通信收发器。FTT-10A收发器能自动检测5M,10M或20M三种时钟频率,他在未加电时呈现高阻状态,不会影响网络通信,是常用的收发器之一。FTT-10A收发器提供了与神经元通信芯片接口和网络接口的引脚。

  4.4 其他电路设计

  本采集器的硬件部分设计还包括电源、抗干扰设计等,工业现场的环境一般来说较为恶劣,存在多种干扰。为保证通讯的准确无误,延长硬件使用寿命,本智能适配器除采用通常的供电和接地抗干扰措施外,主要是要避免和消除来自网络介质的静电泄放和电磁干扰。印刷电路板设计中应提供一个导人大地的通道,还要不致引起整个PCB电压的升降,具体采用火花放电隙和箝位二极管来实现。

  5 结 语

  本系统充分利用了Echelon公司的一系列产品和工具,完成了抄表采集模块的硬件设计,并实现了单片机与神经元芯片的并行通信。经多次实验测试证明该模块具有较高的可靠性。并且该模块已经在我校数字化实验室进行安装调试,取得了良好的效果。


版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

非常感谢您使用维库电子市场网,欢迎向阿库提出宝贵的意见。您的参与是维库提升服务的动力!意见一经采纳,就有感恩红包奉上哦!

联系人:

联系方式:

建议或问题:

按住滑块,拖拽到最右边
>>