“第三十七课--Microduino 控制继电器开关/zh”的版本间的差异

来自Microduino Wikipedia
跳转至: 导航搜索
(Created page with "{{Language|Lesson_37--Microduino_Control_Relay}} {| style="width: 800px;" |- | ==目的== 本教程将教大家如何使用继电器来控制一个相对大电流的电器(...")
 
Pkj讨论 | 贡献
原理图
第43行: 第43行:
 
==原理图==
 
==原理图==
 
[[File:第三十七课-Microduino控制继电器开关原理图.jpg|600px|center|thumb]]
 
[[File:第三十七课-Microduino控制继电器开关原理图.jpg|600px|center|thumb]]
 +
 
其中:
 
其中:
  
    继电器线圈一端接 +5V,线圈的另一端 (蓝线) 接到 NPN 晶体管的集极 (Collector)
+
*继电器线圈一端接 +5V,线圈的另一端 (蓝线) 接到 NPN 晶体管的集极 (Collector)
 
 
    把整流二极管并联到线圈上,注意整流二极管有方向性,有标示的一端要朝向电源(本例中如果没有整流二极管,就以发光二极管代替)
 
  
   NPN 晶体管的发射极 (Emitter) 接到 GND,然後基极 (Base) 串联一个 1k 电阻连接Microduino 的 pin 13
+
*把整流二极管并联到线圈上,注意整流二极管有方向性,有标示的一端要朝向电源(本例中如果没有整流二极管,就以发光二极管代替)
  
   电机正极 (紅線) 接到继电器 NO 端,负极 (黑线) 接到 GND
+
*NPN 晶体管的发射极 (Emitter) 接到 GND,然後基极 (Base) 串联一个 1k 电阻连接Microduino 的 pin 13
  
   另外用一个相对大的电源正极接线到继电器的COM端(本教程使用的是两个18650电池串联产生7.4V电压)
+
*电机正极 (紅線) 接到继电器 NO 端,负极 (黑线) 接到 GND
  
   最后,把按钮的一支脚接到+5V,另一只脚接到pin2同时接一个10K的电阻接到GND,这样就完成了
+
*另外用一个相对大的电源正极接线到继电器的COM端(本教程使用的是两个18650电池串联产生7.4V电压)
  
 +
*最后,把按钮的一支脚接到+5V,另一只脚接到pin2同时接一个10K的电阻接到GND,这样就完成了
  
 
==程序==
 
==程序==

2014年3月6日 (四) 05:05的版本

Language English

目的

本教程将教大家如何使用继电器来控制一个相对大电流的电器(本例用的是从旧的VCD里卸下的光驱电机)

设备

  • Microduino-Core
  • Microduino-FT232R
  • 其他硬件设备
    • 面包板跳线 一盒
    • 面包板 一块
    • 直流电器 一个
    • 按键 一个
    • NPN晶体管 一个
    • 10k 欧姆电阻 一个
    • 1k 欧姆电阻 一个
    • 二极管 一个
    • 电池盒 一个
    • USB数据连接线 一根

继电器介绍:

   当输入量(如电压、电流、温度等)达到规定值时,使被控制的输出电路导通或断开的电器。可分为电气量(如电流、电压、频率、功率等)继电器及非电气量(如温度、压力、速度等)继电器两大类。具有动作快、工作稳定、使用寿命长、体积小等优点。广泛应用于电力保护、自动化、运动、遥控、测量和通信等装置中。

   继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。

第三十七课-继电器.jpg

大多数的继电器如上图所示,有5个引脚的,有6个引脚的,本教程使用的是5个引脚的,它们之间的区别就在于6个引脚继电器有两个com引脚,接电路的时候你接哪个都可以,5个引脚继电器只有一个com引脚,下面来介绍几点起的引脚:

如上图中间的黄色示意图,把继电器的底部引脚冲这你。

NC 是 Normal Closed

NO 是 Normal Open

COM 是 Common


原理图

第三十七课-Microduino控制继电器开关原理图.jpg

其中:

  • 继电器线圈一端接 +5V,线圈的另一端 (蓝线) 接到 NPN 晶体管的集极 (Collector)
  • 把整流二极管并联到线圈上,注意整流二极管有方向性,有标示的一端要朝向电源(本例中如果没有整流二极管,就以发光二极管代替)
  • NPN 晶体管的发射极 (Emitter) 接到 GND,然後基极 (Base) 串联一个 1k 电阻连接Microduino 的 pin 13
  • 电机正极 (紅線) 接到继电器 NO 端,负极 (黑线) 接到 GND
  • 另外用一个相对大的电源正极接线到继电器的COM端(本教程使用的是两个18650电池串联产生7.4V电压)
  • 最后,把按钮的一支脚接到+5V,另一只脚接到pin2同时接一个10K的电阻接到GND,这样就完成了

程序

/*
 * 用继电器控制电机
 */
 
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中,编译

步骤二:电路连接如下图:

第三十七课-Microduino控制继电器开关连接图.jpg

步骤三:运行代码

步骤四:按下开关,看电机是否转动。

结果

按下开关,继电器处于Normal Open(NO)状态,电机转动,再按下按钮开关,继电器切换回Normal Closed(NC)状态,电机停止

视频

http://v.youku.com/v_show/id_XNjc5OTAyNDky.html