0
点赞
收藏
分享

微信扫一扫

raspberryPi_继电器模块(relay)+风扇模块(fan)连接原理图/硬件调试


文章目录

  • ​​继电器模块型号和样式​​
  • ​​样式1:​​
  • ​​双侧图​​
  • ​​样式2:​​
  • ​​DC/IN 引脚介绍​​

  • ​​使用继电器​​
  • ​​继电器接入单片机​​
  • ​​测试负载接入继电器​​
  • ​​风扇的可用性调试​​
  • ​​注意​​
  • ​​测试代码​​
  • ​​触发电平​​
  • ​​code (new)​​
  • ​​code(old)​​
  • ​​测试继电器模块可用性​​
  • ​​Fritzing 接线图​​
  • ​​关于继电器的内部线路​​
  • ​​总结​​
  • ​​引脚​​
  • ​​对于电路的理解​​

  • ​​硬件模块调试​​

继电器模块型号和样式

  • 型号:jqc-3ff-s-z

样式1:

raspberryPi_继电器模块(relay)+风扇模块(fan)连接原理图/硬件调试_git

双侧图

raspberryPi_继电器模块(relay)+风扇模块(fan)连接原理图/硬件调试_单片机_02

  • 指示灯侧(vcc/gnd/in)
    该侧也是接入单片机的一侧
  • 负载侧
    该侧是接入负载以及电源的一侧

样式2:

raspberryPi_继电器模块(relay)+风扇模块(fan)连接原理图/硬件调试_git_03

DC/IN 引脚介绍

DC(direct current)直流电(可以由单片机提供或者外接电源)
DC+:直流电正极
DC-:直流电负极
IN:接入单片机信号控制引脚

使用继电器

继电器接入单片机

测试负载接入继电器

raspberryPi_继电器模块(relay)+风扇模块(fan)连接原理图/硬件调试_单片机_04
图中风扇部分电路(继电器负载部分)所标注的GND/5V 可以通过外接电源供电;也可以直接在单片机上的某对GND/VCC上。


风扇的可用性调试

  • 风扇需要足够的电压来驱动,一般就接在5v(vcc/gnd)
  • 但是风扇可以产生反电动势,对单片机可能造成损害,所以一般其中的一个管脚接在继电器的负载部分(您可以通过led等来调试继电器的可用性)
  • 风扇的负极是黑色(GND)/红色接入正极(vcc)

注意

  • 小风扇区分正负极(反接无效)
  • ethernetW5100 堆叠时:不要压地过紧(可以那个卡片隔一隔,容易造成异常的电路问题)

测试代码

触发电平

编写此段代码是,我用的继电器是电平触发闭合NO;
以具体情况为准

code (new)

int pinRelay = 5; //管脚D3连接到继电器模块的信号脚(TX)

void setup()
{
// 为了提供串口显示,需要设置baud
Serial.begin(9600);
Serial.println("start test the electric relay the circuit...");
// 这一步不能忘记
pinMode(pinRelay, OUTPUT); //设置pinRelay脚为输出状态
//注意电压问题,3.3v的引脚需要直接插入,如果被公用可能导致电压不足导致无法闭合继电器
}

void loop()
{
int timeHigh = 3000;
int timeLow = 1000;

Serial.println("pull pinRelay High time(ms):");
Serial.println(timeHigh);
digitalWrite(pinRelay, HIGH); //输出HIGH电平,继电器模块闭合
delay(timeHigh); //维持指定秒的高电平

Serial.println("pull pinRelay Low time(ms):");
Serial.println(timeLow);
digitalWrite(pinRelay, LOW); //输出LOW电平,继电器模块断开
delay(timeLow); //维持指定秒数的低电平


}

raspberryPi_继电器模块(relay)+风扇模块(fan)连接原理图/硬件调试_单片机_05

code(old)

int pinRelay = 12; //管脚12连接到继电器模块的信号脚(根据自己接线,需求、喜好可以调整)

void setup()
{
// 为了提供串口显示,需要设置baud
Serial.begin(9600);
Serial.println("start test the electric relay the circuit");
pinMode(pinRelay, OUTPUT); //设置pinRelay脚为输出状态
}

void loop()
{
Serial.println("close the circuit (3secondes...)");
digitalWrite(pinRelay, HIGH); //输出HIGH电平,继电器模块闭合

delay(3000); //等待3秒
Serial.println("try to broke the circuit(3secondes...)");
digitalWrite(pinRelay, LOW); //输出LOW电平,继电器模块断开

delay(3000); //等待3s
}
  • 图片上的是一块Ethernet W5100.下面被盖着一个arduino uno;
    raspberryPi_继电器模块(relay)+风扇模块(fan)连接原理图/硬件调试_引脚_06
    raspberryPi_继电器模块(relay)+风扇模块(fan)连接原理图/硬件调试_继电器模块_07

测试继电器模块可用性

  • led灯
  • 小风扇

两者许多相似的特性,都可以测试继电器可用性,但以上都有·极性·区分。

  • 一定要​​插到位​​,其次旋紧螺丝要旋的足够紧!!!
  • 确保足够的电压,如果是用3.3v作为电源正极,那么请让继电器独占(最好直接插在单片机上),5v口允许的话,用5v;

Fritzing 接线图

  • 6条线实现测试
    raspberryPi_继电器模块(relay)+风扇模块(fan)连接原理图/硬件调试_git_08

关于继电器的内部线路

继电器模块的的使用方法、引脚说明、内部结构

  • NC即常闭端(normal close);
  • COM即公共端(common);
  • NO即常开端(normal open)
    用的比较经常的时NO、COM组合(有时候也用NC,COM组合)
    NO和COM谁接入负载(比如led灯、小风扇)的正极,谁接。。
    负载的正极记为LoadP(ostive),负极记为LoadN(egative);
    当NO,COM,LoadP,LoadN构成闭合回路时,想让负载工作,这就需要由正极和负极在个回路中出现,同时还要符合负载的接入方向,负载才可以工作
    此外,NC,COM哪个接入vcc/gnd,哪个接入负载的某一极没有必须的规定
  • 如果负载的正极(LoadP)接入vcc,那么NO或COM与LoadN对接,对应剩下的COM或NO接入单片机的某个GND即可(单片机的vcc/GND在这一部分中充当电源(电池)的角色
  • 继电器的另一端和单片机的vcc/gnd,以及一个控制引脚相连,这样单片机可以通过继电器模块来控制NO的闭合或(NC开路(断路))

总结

引脚

  • 理论上,非要接入单片机不可的引脚只有1个(IN),其余的引脚可以通过外界电源来代替单片机的vcc/gnd;
  • 但是实际操作中也确实如此
  • (如果vcc/gnd接入到的外接电源,继电器将常态闭合)
  • 而负载部分的电路则完全可以由外部电源供电。

对于电路的理解

分为两部分(相对独立,但又有联系)

  1. 继电器接入单片机
  2. 负载接入继电器
  • 在接入继电器之前(指继电器与负载接入的那部分COM所在侧),我们就应该明确要选用的电源,一般为了方便,可以直接使用单片机的vcc/gnd来作为接入继电器接入负载的电源角色;
  • 所以可以由如下流程
  • 选定并接入vcc/gnd
  • 构想电流走向(可以预先设计电路图,这是个良好的习惯,对于熟练的人,行动之前心中也会过一遍电流走向;)这可以让接线过程更加流畅,出更少的问题


硬件模块调试

异常的原因:

  • 程序问题
  • 模块问题
  • 线路逻辑
  • 电源电压问题(多模块之间都要检查)
    调试手段
  • 灯泡代替法(比如检查继电器负载)
  • 试触法(检查模块是否损坏)(对于简单模块,直接让直接接触gnd/vcc(3.3/5v)来排查


举报

相关推荐

5V继电器模块详解(STM32)

0 条评论