第三十七课--Microduino 控制继电器开关/zh
Language | English |
---|
目的本教程将教大家如何使用继电器来控制一个相对大电流的电器(本例用的是从旧的VCD里卸下的光驱电机) 设备
继电器介绍: 当输入量(如电压、电流、温度等)达到规定值时,使被控制的输出电路导通或断开的电器。可分为电气量(如电流、电压、频率、功率等)继电器及非电气量(如温度、压力、速度等)继电器两大类。具有动作快、工作稳定、使用寿命长、体积小等优点。广泛应用于电力保护、自动化、运动、遥控、测量和通信等装置中。 继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。 大多数的继电器如上图所示,有5个引脚的,有6个引脚的,本教程使用的是5个引脚的,它们之间的区别就在于6个引脚继电器有两个com引脚,接电路的时候你接哪个都可以,5个引脚继电器只有一个com引脚,下面来介绍几点起的引脚: 如上图中间的黄色示意图,把继电器的底部引脚冲这你。 NC 是 Normal Closed NO 是 Normal Open COM 是 Common
原理图其中:
程序/*
* 用继电器控制电机
*/
const int buttonPin = 2; // 按钮(pushbutton)
const int relayPin = 13; // 继电器(Relay)
int relayState = 0; // 继电器状态
void setup()
{
Serial.begin(9600); // 开启 Serial port, 波特率 9600 bps
pinMode(buttonPin, INPUT); // 把 buttonPin 设置成 INPUT
pinMode(relayPin, OUTPUT); // 把 relayPin 设置成 OUTPUT
}
void switchRelay()
{
if (relayState == 0)
relayState = 1; // 把继电器状态改为 ON
else
relayState = 0; // 把继电器状态改为 OFF
digitalWrite(relayPin, relayState); // 切换开关
Serial.print("Relay status: "); // 串口输出继电器状态
Serial.println(relayState);
}
void loop()
{
int buttonState;
// 读取按钮状态
buttonState = digitalRead(buttonPin);
// 检查按钮是否按下(pressed)
// 有的話,buttonState 會是 HIGH
if (buttonState == HIGH) {
switchRelay(); // 切换继电器开关
delay(500); // 延迟0.5秒
}
}
调试步骤一:把代码复制到IDE中,编译 步骤二:电路连接如下图: 步骤三:运行代码 步骤四:按下开关,看电机是否转动。 结果按下开关,继电器处于Normal Open(NO)状态,电机转动,再按下按钮开关,继电器切换回Normal Closed(NC)状态,电机停止 视频 |