继电器原理及应用

目录

前言

继电器

1.继电器配图

2.继电器原理图

3.继电器的使用

1-继电器的使用意义

2-继电器使用场景

继电器的简单使用

1.使用原理及接线

2.使用思考

3.代码实现

总结


前言

我们上节已经简单了解了震动传感器的使用(不懂的直接去看:震动传感器),本节来了解一下继电器(电子开关)的原理及使用。

继电器

1.继电器配图

2.继电器原理图

3.继电器的使用

1-继电器的使用意义

接在线圈两端的是两个输入脚,公共端、常开端、常闭端是三个输出脚。 公共端与常开端 组成常开开关,公共端与常闭端组成常闭开关。当线圈两端两个输入端加一个5V电压,则 公共端与常开端 闭合, 公共端与常闭端断开。接线前务必要搞清楚管脚。也可以用万用表量一个各脚间的电阻、验证一下。

从实用的角度来看,继电器的功能就是电气开关。 无论是近距离还是远距离,全都利用低功率信号来控制高功率电路。 继电器的固有设计有助于有效隔离低功率信号和高功率电路,通常称为电隔离。 这种隔离可确保用户的电气系统安全稳健地运行。

2-继电器使用场景

继电器的使用场景包括:

  1. 电磁继电器 :用于需要瞬时操作的场合,如家用电器、工业控制系统等。
  2. 固态继电器 :适用于高频率操作、低功耗和长寿命的场景,如自动化系统、光伏逆变器等。
  3. 混合继电器 :结合了电子和电磁的优势,常见于对电气信号有特殊要求的场合,如精密仪器、医疗设备等。

继电器的简单使用

1.使用原理及接线

想学习明白继电器很简单,只需要弄清两个问题:继电器的本质其实就是电子开关,怎么开怎么关弄清楚就可以了。

  1. 怎么控制"闭合"开关呢
  2. 怎么控制"断开"开关呢

我们使用的型号详细见该blog(继电器型号) 。

2.使用思考

现在我们就可以来写程序,完成震动控制警报的功能。

我们接线完成后,当震动传感器感受到震动时Do口会返回一个低电平,我们使用查询法检测这个低电平,如果检测到低电平我们就给继电器IN针脚所接的IO口一个低电平,低电平触发继电器(电子开关)此时继电器会导通NO和COM口。

3.代码实现

我们对比上节的代码稍做修改:

cpp 复制代码
#include <reg52.h>
#include <intrins.h>
 
sbit led1 = P3^7;
sbit virbrate = P3^3;//因为Do接到了P3.3口
 
void Delay2000ms()		//@11.0592MHz
{
	unsigned char i, j, k;
 
	_nop_();
	i = 15;
	j = 2;
	k = 235;
	do
	{
		do
		{
			while (--k);
		} while (--j);
	} while (--i);
}
 
 
void main()
{
	while(1)
	{
		if(virbrate == 0)
		{
			led1 = 0;
			Delay2000ms();
		}else{
			led1 = 1;
		}
	}
}

我们本节课不控制LED,而是控制继电器:

cpp 复制代码
#include <reg52.h>
#include <intrins.h>

sbit virbrate = P3^3;//因为Do接到了P3.3口
sbit switcher = P1^1;

void Delay2000ms()		//@11.0592MHz
{
	unsigned char i, j, k;

	_nop_();
	i = 15;
	j = 2;
	k = 235;
	do
	{
		do
		{
			while (--k);
		} while (--j);
	} while (--i);
}


void main()
{
	while(1)
	{
		if(virbrate == 0)
		{
			switcher = 0;
			Delay2000ms();
			switcher = 1;
		}else{
			switcher = 1;
		}
	}
}

此时我们的震动传感器检测到震动时,继电器就会导通NO和COM口,亮绿灯两秒,没检测到震动时亮红灯。

对其他电子元器件感兴趣的推荐看这个博主:爱上电路设计(继电器)

总结

我们本节主要了解了继电器的原理以及工作方式------当IN口输入为低电平的时候,接通NO和COM口并且亮绿灯。

本节收录于专栏:51单片机

相关推荐
睡美人的小仙女1272 小时前
Threejs加载环境贴图报错Bad File Format: bad initial token
开发语言·javascript·redis
rayufo2 小时前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
RANCE_atttackkk2 小时前
[Java]实现使用邮箱找回密码的功能
java·开发语言·前端·spring boot·intellij-idea·idea
缺点内向3 小时前
C#编程实战:如何为Word文档添加背景色或背景图片
开发语言·c#·自动化·word·.net
一起养小猫3 小时前
Flutter for OpenHarmony 实战:记账应用数据统计与可视化
开发语言·jvm·数据库·flutter·信息可视化·harmonyos
zhougl9963 小时前
Java 所有关键字及规范分类
java·开发语言
java1234_小锋3 小时前
Java高频面试题:MyISAM索引与InnoDB索引的区别?
java·开发语言
2501_944525544 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 支出分析页面
android·开发语言·前端·javascript·flutter
彷徨而立4 小时前
【C/C++】什么是 运行时库?运行时库 /MT 和 /MD 的区别?
c语言·c++
qq_417129254 小时前
C++中的桥接模式变体
开发语言·c++·算法