查看“第三十七课--Microduino 控制继电器开关/zh”的源代码
←
第三十七课--Microduino 控制继电器开关/zh
跳转至:
导航
、
搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
{{Language|Lesson_37--Microduino_Control_Relay}} {| style="width: 800px;" |- | ==目的== 本教程将教大家如何使用继电器来控制一个相对大电流的电器(本例用的是从旧的VCD里卸下的光驱电机) ==设备== *'''[[Microduino-Core]]''' *'''[[Microduino-FT232R]]''' *其他硬件设备 **面包板跳线 一盒 **面包板 一块 **直流电器 一个 **按键 一个 **NPN晶体管 一个 **10k 欧姆电阻 一个 **1k 欧姆电阻 一个 **二极管 一个 **电池盒 一个 **USB数据连接线 一根 '''继电器介绍:''' 当输入量(如电压、电流、温度等)达到规定值时,使被控制的输出电路导通或断开的电器。可分为电气量(如电流、电压、频率、功率等)继电器及非电气量(如温度、压力、速度等)继电器两大类。具有动作快、工作稳定、使用寿命长、体积小等优点。广泛应用于电力保护、自动化、运动、遥控、测量和通信等装置中。 继电器是一种电子控制器件,它具有控制系统(又称输入回路)和被控制系统(又称输出回路),通常应用于自动控制电路中,它实际上是用较小的电流去控制较大电流的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。 [[File:第三十七课-继电器.jpg|600px|center|thumb]] 大多数的继电器如上图所示,有5个引脚的,有6个引脚的,本教程使用的是5个引脚的,它们之间的区别就在于6个引脚继电器有两个com引脚,接电路的时候你接哪个都可以,5个引脚继电器只有一个com引脚,下面来介绍几点起的引脚: 如上图中间的黄色示意图,把继电器的底部引脚冲这你。 NC 是 Normal Closed NO 是 Normal Open COM 是 Common ==原理图== [[File:第三十七课-Microduino控制继电器开关原理图.jpg|600px|center|thumb]] 其中: 继电器线圈一端接 +5V,线圈的另一端 (蓝线) 接到 NPN 晶体管的集极 (Collector) 把整流二极管并联到线圈上,注意整流二极管有方向性,有标示的一端要朝向电源(本例中如果没有整流二极管,就以发光二极管代替) NPN 晶体管的发射极 (Emitter) 接到 GND,然後基极 (Base) 串联一个 1k 电阻连接Microduino 的 pin 13 电机正极 (紅線) 接到继电器 NO 端,负极 (黑线) 接到 GND 另外用一个相对大的电源正极接线到继电器的COM端(本教程使用的是两个18650电池串联产生7.4V电压) 最后,把按钮的一支脚接到+5V,另一只脚接到pin2同时接一个10K的电阻接到GND,这样就完成了 ==程序== <source lang="cpp"> /* * 用继电器控制电机 */ 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秒 } } </source> ==调试== 步骤一:把代码复制到IDE中,编译 步骤二:电路连接如下图: [[File:第三十七课-Microduino控制继电器开关连接图.jpg|600px|center|thumb]] 步骤三:运行代码 步骤四:按下开关,看电机是否转动。 ==结果== 按下开关,继电器处于Normal Open(NO)状态,电机转动,再按下按钮开关,继电器切换回Normal Closed(NC)状态,电机停止 ==视频== http://v.youku.com/v_show/id_XNjc5OTAyNDky.html
该页面使用的模板:
模板:Language
(
查看源代码
)
模板:Nmbox
(
查看源代码
)
返回至
第三十七课--Microduino 控制继电器开关/zh
。
导航菜单
个人工具
创建账户
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
Welcome
首页
创客大赛
大赛详情
3D打印
安装月球车
图形化编程
操控月球车
升级月球车
编程工具下载
软件下载
Arduino
Processing
Mixly
Scratch
模块套件
Microduino 102
mCookie 102
mCookie 202
mCookie 302
IBC
其他
应用套件
四轴飞行器
平衡车
小车CUBE
音乐播放器
刷卡音乐播放器
wifi气象站
彩虹音乐触摸灯
分贝检测仪
迎门汇报
LED点阵时钟
LED点阵屏幕
硬件
mCookie
Sensor
Microduino
MicroWrt
MicroNux
MicroRobot-Core
MicroRobot-CoreESP
ideaBoard
ideaBox
MicroMV
MicroAI
帮助
常见问题
帮助
工具
链入页面
相关更改
特殊页面
页面信息