0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

电子设计 来源:现代电子技术 作者:王际业,林锦国, 2020-11-10 10:34 次阅读

作者:王际业,林锦国,程明,颜廷勇,郭志波

1 引 言

在我国随着一户一表的推广、城网和农网的改造、国家为了打破电力供应垄断局面而引入竞争政策的逐步深入和提高用电管理水平等等都需要发展自动抄表(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所示。

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

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

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19461

    浏览量

    231413
  • 单片机
    +关注

    关注

    6044

    文章

    44632

    浏览量

    639386
  • 总线
    +关注

    关注

    10

    文章

    2908

    浏览量

    88489
收藏 人收藏

    评论

    相关推荐

    基于AT89C51单片机的热能的设计

    基于AT89C51单片机的热能的设计
    发表于 08-14 11:40

    如何实现(电脑)PC单片机AT89C51的串行通信

    如何实现(电脑)PC单片机AT89C51的串行通信 在Windows95下使用串口API函数实现PC
    发表于 04-07 09:45 4672次阅读

    AT89C51单片机简介

    AT89C51单片机简介 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位
    发表于 11-12 08:39 2w次阅读
    <b class='flag-5'>AT89C51</b><b class='flag-5'>单片机</b>简介

    单片机AT89C51设计的数字钟

    单片机AT89C51设计的数字钟,(1).开机时,显示12:00:00的时间开始计时
    发表于 04-13 16:07 9956次阅读
    用<b class='flag-5'>单片机</b><b class='flag-5'>AT89C51</b>设计的数字钟

    基于AT89C51单片机的万年历设计与实现

    本文提出了一种基于AT89C51单片机的万年历设计方案,本方案以AT89C51单片机为主核心,与时钟芯片DS1302、按键、LED显示等模块
    发表于 05-28 10:46 844次下载
    基于<b class='flag-5'>AT89C51</b><b class='flag-5'>单片机</b>的万年历设计与<b class='flag-5'>实现</b>

    AT89C51单片机实现频率测量

    AT89C51单片机实现频率测量,参考资料。
    发表于 05-06 10:25 0次下载

    单片机AT89C51改造普通双桶洗衣

    单片机AT89C51改造普通双桶洗衣
    发表于 01-04 14:13 5次下载

    基于AT89C51单片机的电子表设计

    AT89C51 单片机的电子表设计
    发表于 06-21 09:13 57次下载

    AT89C51单片机技术详解

    ,俗称单片机。本文为您介绍基于AT89C51单片机技术详解、设计技巧、应用案例大全,仅供参考。 基于AT89C51的操控键盘的设计 本文以P
    发表于 10-16 11:48 17次下载

    基于AT89C51单片机的ADC0808程序

    这篇文章主要和大家讨论一下关于AT89C51单片机的ADC0808的介绍以及基于AT89C51单片机的ADC0808程序详解。
    发表于 11-21 11:17 3.1w次阅读
    基于<b class='flag-5'>AT89C51</b><b class='flag-5'>单片机</b>的ADC0808程序

    AT89C51单片机

    AT89C51单片机学习一、AT89S51单片机的I/O端口二、AT89S51单片机的中断系统 
    发表于 11-12 12:21 65次下载
    <b class='flag-5'>AT89C51</b><b class='flag-5'>单片机</b>

    基于AT89C51单片机与PC串口通讯仿真及代码

    基于AT89C51单片机单片机与PC串口通讯仿真仿真及代码
    发表于 05-05 10:30 4次下载

    基于AT89C51单片机之间双向通信仿真及代码

    基于AT89C51单片机单片机之间双向通信仿真及代码
    发表于 05-05 10:29 17次下载

    基于AT89C51单片机用8255实现接口扩展Proteus仿真及程序

    基于AT89C51单片机用8255实现接口扩展Proteus仿真及程序
    发表于 05-05 09:57 12次下载

    基于AT89C51单片机的点击转速测量

    电子发烧友网站提供《基于AT89C51单片机的点击转速测量.pdf》资料免费下载
    发表于 10-20 11:39 1次下载
    基于<b class='flag-5'>AT89C51</b><b class='flag-5'>单片机</b>的点击转速测量