IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 单片机遥控开关系统设计(结构原理、电路、程序) -> 正文阅读

[嵌入式]单片机遥控开关系统设计(结构原理、电路、程序)

本设计提出了一种基于单片机的遥控开关系统。通过对样机的测试结果表明,本系统采用单片机进行遥控系统的应用设计,具有编程灵活多样,操作码个数可随意设定等优点。一般设备系统采用专用的遥控编码及解码集成电路。此方案具有制作简单,容易等特点,但由于功能键数及功能受到特定的限制,只适合用于某一专用电器产品的应用,应用范围受到限制。而本系统消除了此问题,智能化大大提高。通过对样机的调试运行,节能效果很好,具有极其广泛的应用价值和应用前景。

1 引言

随着电子技术的飞速发展,新型大规模遥控集成电路的不断出现,遥控技术有了日新月异的发展。遥控装置的中心控制部件已从早期的分立元件、集成电路逐步发展到现在的单片微型计算机,智能化程度大大提高。近年来,遥控技术在工业生产、家用电器、安全保卫以及人们的日常生活中使用越来越广泛。

本论文是基于单片机设计了一个智能化的遥控开关系统。该系统用AT89C2051单片机作为控制芯片,制作一个遥控器,键盘采用行列式操作,按键中断扫描方式提高了CPU效率。遥控器发射器采用红外线脉冲个数编码,根据脉冲个数来确定是哪个按键按下,并发射相应的信号来控制电灯调光,无键按下时处于低功耗空闲方式状态。另一个单片机控制系统能被遥控操作,通过软件解码实现对一个电灯的调光,以及对继电器的控制功能。

2 系统的结构组成和工作原理

用单片机制作一个红外遥控器,可以分别控制8个控制继电器开关,和一个电灯开关,并且可以对电灯进行亮度的调光控制。

红外发射部分结构图如下图2.1所示

当按下遥控按钮时,单片机产生相应的控制脉冲,由红外发光二极管发射出去。

红外接收部分结构如下图2.2所示:

采用红外遥控不影响周边环境的、不干扰其他电器设备。由于其无法穿透墙壁,故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰;电路调试简单,只要按给定电路连接无误,一般不需任何调试即可投入工作;编解码容易,适合进行多路遥控。

3 硬件电路设计

3.1 遥控发射器电路设计

电路主要由AT89C2051单片机、行列式操作键盘、低功耗空闲方式控制电路、红外发射电路电源等部分组成。

遥控电路的主芯片采用美国ATMEL公司的AT89C2051Flash单片机。它是一个低电压,高性能CMOS8位单片机,片内含2KB的可反复擦写的只读Flash程序存储器和128字节的随机存取收据(RAM);2.7~6V的电源使用电压、两个16位定时器∕计数器;6个中断源、15条I∕O引线;1个精密模拟比较器以及片内振荡器和时钟电路;直接LED驱动输出以及空闲和掉电方式等功能。遥控器采用两节1.5V电池串联提供3V电源供电,在遥控系统设计中,片内模拟比较器接口只是作普通I∕O运用。

行列式操作键盘又称为矩阵式键盘。用I∕O线组成行、列结构,按键设置在行列的交点上,行列线分别连接到按键开关的两端,键盘中有无按键按下是由列线送入扫描字、行线读入行线状态来判断的。为了提高CPU效率,同时也为了节约电池电源能量,遥控器采用按键中断扫描方式。无键按下时,单片机处于低耗空闲待机方式,有键按下时触发外部中断实现查键及执行键功能程序。

AT89C205l的CPU有2种节电工作方式,即空闲方式和掉电方式,遥控器采用空闲节电工作方式。当CPU执行完置IDL=1(PCON.0=1)指令后,系统进入空闲工作方式,这时内部时钟不向CPU 提供,而只供给中断、串行口、定时器部分。遥控器退出低功耗空闲方式电路由IN4148二极管组成“与”门实现。当有键按下时,由“与”门触发外部中断1发生中断,单片机退出空闲工作方式,进入键盘和红外发射程序,结束后又进入低功耗空闲方式待机。在使用过程中单片机基本上处于空闲工作方式,功耗相当低,从而为使用电池电源提供了保障。

红外线发射和指示灯电路利用遥控器信息码由AT89C2051单片机的定时器1调制成38.5kHz红外线载波信号,由P3.5口输出,经过三极管9013放大,由红外线发射管发送。电阻R1的大小可以改变发射距离,按键的操作指示灯使用一个LED发光二极管。定时器1按照方式2工作,即设置自动8位重装模式。在用作定时器时,在每个机器周期计算器加1,所以可以把它看成累加机器周期,1个机器周期包括12个振荡周期,则计数频率为振荡频率的十二分之一。当M1M0为10时,定时器∕计数器工作于方式2。在此方式下,设置了一个8位的计数器,并自动恢复初值的功能,以T1为例,将TL1作为计数器,将TH1作为寄存器使用,存放计数初值。当TL1作增1计数至溢出时,除了把溢出标志位TF1置1外,同时还将TH1中的计数初值送入TL1中,使TL1又重新从初值开始计数。而TH1中的计数初值由软件编程置入,在常数重装入的过程中,TH1保持不变。在方式2中,T0和T1的操作功能完全相同,可自由选择使用。

3.2 遥控接收器电路设计

接收控制系统主要由AT89C52单片机、电源电路、红外接收电路、50Hz交流过零检测电路、电灯调光控制电路、控制继电器电路等部分组成。

单片机AT89C52有40个引脚,32个外部双向输入∕输出(I∕O)端口,同时内含2个外中断口,3个16位定时器∕计数器,6个中断源、低功耗空闲和掉电方式,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微机处理器和Flash存储器结合在一起,特别是可以反复擦写的Flash存储器可有效地降低开发成本。控制系统采用5V电源电压,外接12MHz晶振。

电源电路由桥式整流、电容滤波、7805稳压器及电源指示灯组成。交流电经过桥式整流变成直流电,再经过电容滤波,7805集成稳压器稳压成为稳定的+5V电源,用一个发光二极管指示灯指示电源状态。

红外遥控接收器集成了模块化,一般为三个引脚,输出为检波整形过的方波信号。红外接收电路如图3.1所示,接收器前端红外滤光片去除可见光使红外光通过。监测器红外光敏二极管,使器件构成最大受光区。在放大器端增加电滤波,消除低频干扰和高频干扰。数据检测一般用峰值监测器,通用信号比较器电路,输出新电平去处理器。

交流电过零检测电路如图3.2所示。过零检测电路主要由两个NPN型三极管组成,Q1的基极过一200K电阻进行限流,电阻另一端为被检测端,经过全桥整流后为全波,一周期内可以触发两次。被检测端为经过变压器后整流得到的,此处电源主要供给AT89C52用,电路设计中仅有输入和输出端的电解电容滤波,考虑高频杂波最好加入104/50V的钽电容而使得电源更干净,更好的防止干扰。在桥后串一二极管是为防止电源反接,一般在CPU电路板上。

可控硅电灯调光控制电路设计原理图如图3.3所示。电灯调光是由可控硅的导通角控制的。AT89C52产生可控硅控制的移相脉冲,移相角的改变实现导通角的改变,即当移相角较大是,可控硅的导通角较小,分布在电灯上的电压较低,电等较暗;当移相角较小时,可控硅的导通角较大,分布在电灯上的电压较高,电灯很亮;当导通角不为0时,电灯即可发光;当导通角为0时,电灯熄灭。当AT89C52的P0.0位为低电平时,9012三极管导通,三极管电极电流驱动光电耦合器导通,使可控硅的G极产生脉冲信号触发可控硅导通;当AT89C52的P0.0位为高电平时,9012三极管截止,则光电耦合器和可控硅都处于截止状态。

本设计有八路控制继电器电路,在红外接收原理图上只画出一路控制继电器电路。图3.4为HK4100F继电器驱动电路原理图,三极管Q5的基极B接到AT89C52单片机的P0.7口,三极管的发射极E接到继电器线圈的一端,线圈的另一端接到+5V电源VCC上;继电器线圈两端并接一个二极管IN4148,用于吸收释放继电器线圈断电时产生的反向电动势,防止反向电势击穿三极管Q5及干扰其他电路;R14和发光二极管LED9组成一个继电器状态指示电路,当继电器吸合的时候,LED9点亮,这样就可以直观的看到继电器状态了

4.1 遥控发射器的程序设计

4.1.1初始化程序和主程序

初始化程序流程图如4.1所示。初始化程序主要是设置P1口和P3口为高电平状态复位,关P3.5口遥控输出,设置堆栈指针SP为#70H,关闭总中断源,设置中断优先级IP,选择定时器∕计数器1和设置工作方式为2的自动8位重装载模式。方式2是8位定时器/计数器,晶体振荡器频率为12MHZ,则机器周期为f/12=12/12=1μs。计数功能计数初值X=28—计数值(计数值=T×f/12)。

?主程序流程图如4.2所示。主程序部分首先调用初始化程序,再进入主程序循环状态。在循环中主要有两个任务,即调用键盘程序和进入低功耗空闲待机方式。系统完成键盘查询程序后即进入空闲节点方式,直到外部中断1中断或硬件复位而退出,CPU再次转向循环部

?在发射程序中,首先要装入发射脉冲个数,第一个码间隔即起始码为3ms时,开高频定时中断调制(P3.7端口设为高电平)。然后设置软件陷阱,提高单片机的可靠性,以免出现死机现象,在进行循环指令,第一个码间隔3ms完成既R0为0时码距间隔为1ms,如果之后脉冲个数为零,这时取反,关高频中断调制即P3.7为低电频,系统退出发射程序。如果脉冲个数还有则再循环发射。P3.7端口取反为低电频时工作指示灯开,高电频时指示灯关。在程序中调用500ms的延时程序是确保遥控器发射的准确性。发射程序流程图如下4.3所示。

4.2 遥控接收器的程序设计

初始化程序流程图如图4.4所示。初始化程序部分主要使系统进入复位初始化的状态值。具体是:P1、P2、P3口置位设置为高电平状态,使之成为输入口。选择工作寄存器区,设置堆栈指针SP,设置中断优先级IP,开外部中断0和定时器1,开总中断允许。设置导通角为零的延时值,并设置电灯默认熄灭的标志位。

主程序部分首先调用初始化程序,再进入主程序循环状态。在循环中主要任务是50Hz交流电过零检测,如果是过零则调用延时子程序,发开导通角脉冲,调用延时256μs程序,然后关脉冲并返回过零检测状态。图4.5为主程序流程图。

5 性能指标

调试后系统性能指标测试如下:

1最大遥控距离:10m;

2最大接收角:90度;

3遥控器发射时工作电流:8mA;

4遥控器静态电流:0.6mA;

5调光控制系统最大输出电压(5档调光):交流200V;

6调光控制系统最慢输出电压(1档调光):交流50V;

7调光控制系统停止输出电压:0V;

8继电器正常工作。

采用红外遥控方式时,距离、角度等使用效果受一顶的限制,如果采用调频或调副发射接受,则发射距离会更远,接受将不受角度的影响。本单片机遥控编码及解码方案适合一切需要应用到遥控的电器系统,是自行设计带遥控功能的控制系统的首选理想方案。

6 结束语

随着遥控技术的使用越来越广泛,智能化控制已成为一种趋势。本设计提出了一种基于单片机的遥控开关系统。通过对样机的测试结果表明,本系统采用单片机进行遥控系统的应用设计,具有编程灵活多样,操作码个数可随意设定等优点。一般设备系统采用专用的遥控编码及解码集成电路。此方案具有制作简单,容易等特点,但由于功能键数及功能受到特定的限制,只适合用于某一专用电器产品的应用,应用范围受到限制。而本系统消除了此问题,智能化大大提高。通过对样机的调试运行,节能效果很好,具有极其广泛的应用价值和应用前景。

【学习交流群586269249】

【网盘免费资料包,大家需要的自行领取】:

嵌入式物联网 stm32 c/c++、QT Linux资料包【华清远见发放资料包】http://makerschool.mikecrm.com/7ADq4jq【下方分享一些免费教程资料,大家感兴趣的可以看下】

智能多彩rgb床头灯

stm32-点亮一盏led

程序、进程、线程

STM32单片机之GPIO开发

STM32-按键消抖

一小时轻松搞定CoAP连接协议

带你彻底搞懂NB-IoT开发

手把手教你做一个语音控制智能灯

(stm32直流电机驱动)

超声波雷达测距仪

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-08-06 11:00:44  更:2022-08-06 11:02:49 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 23:46:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码