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

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

3天内不再提示

应用在复费率电能表中的红外通信接口的应用方案

电子设计 来源:电子产品世界 作者:邱玉春;李文俊 2021-06-15 16:17 次阅读

在许多基于单片机的应用系统中,系统需要实现遥控功能,而红外通信则是被采用较多的一种方法。一般市场上的遥控器协议简单、保密性不强、抗干扰能力较弱。这里,我们介绍一种基于字节传输的红外遥控系统,可以适合于各种复杂的应用场合。

红外通信的基本原理

红外通信的基本原理是发送端将基带二进制信号调制为一系列的脉冲串信号,通过红外发射管发射红外信号。常用的有通过脉冲宽度来实现信号调制的脉宽调制(PWM)和通过脉冲串之间的时间间隔来实现信号调制的脉时调制(PPM)两种方法。本系统采用的为脉时调制方法。数据比特的传送仿照不带奇偶校验的RS232通信,首先产生一个同步头,然后接着8位数据比特,如图1所示。

硬件电路设计

复费率电能表系统可分为手持遥控器和复费率电能表两部分。手持遥控器为发射部分,其基本电路如图2所示。采用塑封的SE303ANC-C发射二极管,波长为940nm。CPU按照协议规定导通或截止发射二极管,从而产生特定频率的发射信号,这里选用的频率为38.9kHz。复费率电能表红外接收部分的基本电路如图3所示。接收管采用日本光电公司PIC-12043,其接收频率为37.9kHz,它直接将37.9kHz的调制信号解调为基带信号,提供给接收CPU。该芯片接收灵敏度高,性能稳定。其基本工作过程为:当接收到37.9kHz信号时,输出低电平,否则输出为高电平。电能表部分采用的是51系列单片机,以中断方式检测接收信号。这里的非门对接收信号起整形作用。

软件设计

发射部分的程序相对来说非常简单,主要是产生不同时间间隔的37.9kHz脉冲串信号去控制发射管的通断。在发射端,CPU不断扫描键盘,一旦发现有键按下,即启动发射子程序将相应的数值发送出动。在我们的设计中,采用的是4×4的小键盘,正好和0~F编码对应,为了提高可靠性,采用最简单的纠错编码——将每位数重复发送一次,即和键盘数字对应的编码为00~FF。这样,一个键值要发送8比特。接收端接收满8比特信号后,再进行纠错处理,不正确的编码认为无效。收足规定的号码后,即调用号码分析程序进行处理。当每收到一个脉冲串信号后即启动一个定时器。下次中断发生时,通过定时器的计数值判断是0还是1。如果定时器溢出,则清除本次接收的号码,恢复到接收初始状态。接收部分的基本程序流程如图4所示。

在程序设计时,应该注意MCU的中断方式采用下边沿触发;接收端通过T0计数值来判断发送比特,一般采用硬判决,即取0和1比特时宽的平均值为判决门限A,当T0值大于A时判接收信号为0,小于A时判为1。

复费率电能表中的红外接收程序如下(MCU为Intel 8052,采用C语言编写):

#include

#include

#include

#pragma OPTIMIZE(5,SPEED)

sbit RECV=“P3”^3;

bdata unsigned char SIGN, RECVBYTE;

sbit RECVBG=“SING”^0;

sbit US1AT=SIGN^6;

sbit RECVBITO=“RECVBYTE”^0;

unsigned char RECVBIT;

//-------------------------------------

timer0() interrupt 1 //entrance: 8*n+3=0Bh;

{

IE=“0”×8d; //1(EA)0(X)0(X)0(X)_1(ET1)1(EX1)0(ET0)1(EX0)

Recvbg=“0”;

}

//--------------------------------------

EX_

INT1() interrupt 2 //接收红外信号

{

TCON=“0”×45; //0(TF1)1(TR1)0(TF0)1(TR0)_0(IE1)1(IT1)0(IE0)1(IT0)

If(RECVBG==0) {RECVBG=1;

RECVBIT=“8”;

}

else{ RECVBYTE=“RECVBYTE”<<1;

if(TH0<=4)RECVBIT0=1;

else RECVBIT0=0;

RECVBIT--;

if(RECVBIT==0) { RECVBG=“0”;

US1AT=1;

}

}

TH0=0;

TL0=0;

TCON=“0”×55; //0(TF1)1(TR1)0(TF0)1(TR0)_0(IE1)1(IT1)0(IE0)1(IT0)

IE=“0”×8f; //Enable the timer0 interrupt

}

//----------------------------------------------------

void main() {

RECVBYTE=“0”;

SIGN=“0”;

TMOD=“0”×11;

TCON=“0”×55;//0(TF1)1(TR1)0(TF0)1(TR0)_0(IE1)1(IT1)0(IE0)1(IT0)

IP=“0”×00;

IE=“0”×8d; //1(EA)0(X)0(X)0(X)_1(ET1)1(EX1)0(ET0)1(EX0)

//基本循环程序

while(1){

if(US1AT==1) { //红外接收处理

}

}

}

结语

以上设计方案在复费率电能表中应用后,效果良好,达到了设计要求。整个系统外围元件少,调试方便;软件工作量也较小。如果应用来传送大量数据时,还可以根据需要改变相应的编码形式,提高数据传送速率。

责任编辑:gt

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

    关注

    6001

    文章

    43970

    浏览量

    620785
  • 接口
    +关注

    关注

    33

    文章

    7635

    浏览量

    148454
  • 遥控器
    +关注

    关注

    18

    文章

    814

    浏览量

    64229
收藏 人收藏

    评论

    相关推荐

    电能表RS485通讯接口专用6KVAC高隔离防静电DC/DC电源模块

    能满足电力行业标准(DL) DL/T614-2007规定的6KVAC高隔离和8KV抗静电保护的需要,同时还具有输出自恢复过载短路保护功能。以保护多费率电能表因通讯线路短接、接口产生静
    发表于 11-03 11:19

    电能表的分类以及命名规则

    、电子式电能表的分类、命名规则1、电子电能表的分类:单相电子式普通型电能表DDS单相电子式费率电能表
    发表于 11-12 21:24

    电能计量模块的术语讲解

    电表,TW费率等。10、多功能由测量单元和数据处理单元等组成,除计量有功与无功电能量外,还具有分时、测量需量等二种以上功能,并具有显示
    发表于 11-12 21:28

    电子电能表红外.AVR

    电子电能表红外.AVR
    发表于 04-05 14:52

    费率电能表 锂电池的使用一般应考虑哪些因素

    费率电能表,锂电池的正确使用方法一般应考虑哪些因素?首先,铿电池的选择应考虑是否环保,是否适用于长期储备短时放电电流的产品,温度范围、使用寿命、电池容量、储备时的自放电率、电池电压
    发表于 06-19 10:17

    常用的电能表主要分为哪些

    的数量,还指示用户在一个电费结算周期中,指定时间间隔内平均最大功率的电能表。4、有功电能表。用于测量有功电量。5、费率电能表
    发表于 05-23 15:52

    请问电能表有哪些类型及型号含义?

    电能表、最大需量表、标准电能表费率分时电能表、预付费电能表(分投币式、磁卡式、电卡式)、损耗
    发表于 05-24 15:11

    基于PIC单片机的费率电能表时钟误差分析仪系统

    1 前言 随着社会的发展,用电量增大,为提高用电效率,改善用电量不均衡的现象,国内各省市的电力部门己开始全面推出了,计量单位对费率电能表检定的任务越来越繁重[1-2]。时钟的准确性是分时计量最重
    发表于 10-17 11:39

    STM32三相电能表电能参量怎么计算?

    电能表作为电能计量的基本设备,受到国家电力部门的长期重视,电能表生产企业更是不遗余力地寻求设计与开发性能俱佳且成本更低的解决方案。目前国内的电能表
    发表于 08-29 07:10

    怎么实现基于upd78f0485单片机实现单相付费率电能表设计?

    怎么实现基于upd78f0485单片机实现单相付费率电能表设计?
    发表于 05-18 06:42

    电能表是什么?

    对于用电量计量工具使用电能表,也称为电度。早期的电能表使用机械感应线原理,由于它本身功耗、精度以及不易联网,现在逐步被电子电路取代。下面的电能表
    发表于 07-05 07:12

    一款三相预付费复费率电能表的设计

    本文设计了一款以FM2307 专用芯片为核心实现的三相预付费复费率电能表,具体介绍了硬件的四大模块及其接口设计和软件的实现。该表能实现红外、RS485 和IC 卡
    发表于 09-22 10:21 24次下载

    一款三相预付费复费率电能表的设计

    本文设计了一款以FM2307 专用芯片为核心实现的三相预付费复费率电能表,具体介绍了硬件的四大模块及其接口设计和软件的实现。该表能实现红外、RS485 和IC 卡
    发表于 12-16 14:44 32次下载

    单相复费率电能表应用笔记

    本文档内容介绍了单相复费率电能表应用笔记。
    发表于 09-13 14:57 7次下载
    单相复<b class='flag-5'>费率</b><b class='flag-5'>电能表</b>应用笔记

    三相四线多费率远程电能表

    三相四线多费率远程电能表
    发表于 09-15 15:07 27次下载
    三相四线多<b class='flag-5'>费率</b>远程<b class='flag-5'>电能表</b>