基于51单片机智能排插的设计与实现

控制/MCU

1878人已加入

描述

摘要:顺应节能减排、环保的时代潮流,在不更换旧家用电器的基础上,设计一款基于51 单片机控制的智能排插,赋予传统家电以遥控、定时开关、无待机功耗等功能,从而实现旧家电的节能减排和智能化目的。

  1 引言

  本文设计研发了一款基于51 单片机控制的节能环保的智能排插,旧一代的家电通过使用这个排插可以蜕变为智能化家电,具备遥控、定时开关、无待机功耗等功能,节约了家电更新换代的成本。该排插现场运行效果良好,符合一般用户需求,具有一定的推广应用价值。

  2 智能排插基本工作原理

  为方便用户使用,本设计将系统分成两部分:排插控制系统和排插遥控器系统(如图1、图2 所示),它们分别由一片AT89S52 单片机控制。在排插控制系统中,单片机通过无线接收模块接收遥控器的遥控命令、解码并进行相关操作;单片机通过控制与排插插孔相连的继电器来控制插孔的通断电。

  当然,插孔的通断电也可以通过手动开关按钮来操控。LED指示灯用于指示排插当前的工作状况。在排插遥控系统中,无线发射模块发送遥控指令,对排插进行定时开关或立即开关等远程操作。本系统采用成都市飞宇达实业有限公司生产的液晶显示模块FYD12864-0402B,内置ST7920 液晶控制器。该LCD用来显示遥控器人机交互界面。

  排插
图1 排插控制系统

  排插
图2 排插遥控系统

  3 智能排插硬件设计

  3.1 无线通讯模块与51 单片机接口及通讯技术

  3.1.1 无线收发模块与51 单片机硬件接口

  在排插系统中,为了降低生产成本,我们选用Atmel 公司的单片机AT89S52 为控制单元,采用PT2272 与PT2262 配对编、解码芯片构成无线通讯模块。无线发射模块和无线接收模块电路图如图3、图4 所示。

  排插
图3 无线发射模块电路图

  排插
图4 无线接收模块电路图

  图4 中,解码芯片PT2272 的17 脚(VT)为接收有效状态指示,它与排插控制系统上的单片机I/O口P3.2(INT0)相连;10~13 脚(D0~D3)为解码后的四个数据脚,它们分别与单片机I/O口P2.0~P2.3相连;1~8 脚为三态(VSS、VDD、空)编码脚;LM358的1 脚(RXD)输出的是解调后的方波信号。

  从逻辑分析仪采样结果分析得知,当PT2272 接收到有效编码数据时,VT 端会输出高电平。利用此特性,可以将单片机外部中断触发方式设置为下降沿触发,以无线接收模块接收到有效数据时VT 端的输出来驱动单片机外部中断。在外部中断处理程序中,接收遥控器发送过来的4 位数据,连续接收四次4 位数据为一次完整传输过程。

  3.1.2 无线收发模块工作原理

  无线发送模块由编码芯片PT2262 发出的编码信号:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272 接收到信号后,其地址码经过两次比较核对后,VT 脚才输出高电平,与此同时相应的数据脚也输出高电平。如果发送端一直按住按键,编码芯片会连续发射。当发射模块没有按键按下时,PT2262不接通电源,其17脚为低电平,则315MHz 的高频发射电路不工作;当有按键按下时,PT2262 得电工作,其17 脚输出经调制过的串行数据信号。在17 脚输出高电平期间,315MHz 的高频发射电路起振并发射等幅高频信号,在17 脚输出低平期间,315MHz 的高频发射电路停止振荡。故高频发射电路完全受控于PT2262 的17 脚输出的数字信号,因此,对高频电路的幅度监控(ASK 调制)相当于调制度为100%的调幅。

  3.1.3 无线收发模块间通讯协议

  排插控制系统与遥控器之间通过由PT2272 和PT2262 配对芯片构成的无线模块来收发数据。由于芯片性能限制关系,没有内置通讯时序以及协议,并且每次只能发送4 位二进制数据。因此我们自拟定通讯协议来进行复杂数据的通讯。我们拟定每发送四次4 位数据为一次完整通讯过程,具体操作如图5 所示,这里假设控制两个排插插孔的情况。

  排插
图5 无线收发模块间的通讯协议

3.2 排插系统硬件电路设计

  图6 是排插遥控器的电路图,由四个按键和一个FYD12864 液晶显示模块组成人机交互界面。四个按键的作用分别是:向上,向下,确认和取消。由于单片机对于无线模块干扰比较大,所以这里采用PC817进行光耦隔离。

  排插
图6 排插遥控器电路图

  图7 是排插控制器的电路图,由无线接收模块接收遥控器发送的数据,控制继电器通断电,继而控制排插的通断电。四个LED 色块指示排插的工作状况,两个按键可手动控制继电器。

  排插
图7 排插控制器电路图

  3.3 数据纠错功能

  由于环境中存在着干扰源,无线收发模块的通信必定会出现丢帧或误码的情况,故排插控制系统须具备一定的纠错功能。我们采取如下方式进行纠错处理:当排插控制系统接收到非完整数据时(完整数据为四次4 位数据),等待0.3s(数据保持时间)后,若仍未接收到有效数据,意味着通讯过程中出现数据帧丢失,此时将前面接收到的非完整数据帧从内存单元中删除,抛弃原数据等待下一次有效数据的传输。

  即接收程序只对有效匹配数据进行处理,非有效数据直接抛弃,这样做能有效地避免在通讯出现误码时,排插控制系统出现程序跑飞的情况。

  4 智能排插软件设计

  排插系统软件采用51 单片机C语言模块化编程,主要由主程序、遥控器操作程序、排插操作控制系统程序、液晶显示程序等组成。在此给出遥控器操作程序流程图和排插操作控制系统流程图(见图8、图9)。

  其他模块的流程图因为篇幅的原因,在此就不再赘述。

排插  
图8 遥控器操作程序流程图

  排插
图9 排插操作控制系统流程图

  5 结束语

  本系统利用51 单片机控制的排插,具有一定的创新性。遥控彻底关机,无待机耗电问题,环保省电。

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分