干簧开关用于许多现实生活中的应用,如磁性门开关、笔记本电脑、智能手机等。在本文中,我们将了解干簧开关,并指导您将干簧开关与Arduino连接。
干簧开关
干簧开关基本上是一种电气开关,当磁场靠近它时会起作用。它是由W.B. Ellwood于1936年在贝尔实验室发明的。它由两个小金属片组成,在真空下保存在玻璃管内。在典型的磁簧开关中,两个金属片将由铁磁材料制成,并覆盖有铑或钌,以延长使用寿命。当开关周围存在磁场时,开关将被激活。
两个金属件的玻璃外壳可保护它们免受污垢、灰尘和其他颗粒的侵害。干簧开关可以在任何环境中操作,例如存在易燃气体的环境或腐蚀会影响开路开关触点的环境。
有两种类型的磁簧开关。
常开簧片开关
常闭簧片开关
在常开磁簧开关中,开关在没有磁场的情况下断开,在有磁场的情况下闭合。在磁场存在下,玻璃管内的两个金属触点相互吸引而接触。
在常闭磁簧开关中,开关在没有磁场的情况下闭合,在有磁场的情况下打开。
干簧开关的应用
用于电话交换机
在笔记本电脑中,如果盖子合上,则使屏幕进入睡眠状态
用于防盗报警系统中的门窗传感器
所需组件
Arduino Uno
干簧开关
电阻
发光二极管
磁铁
连接线
Arduino 干簧开关电路图
干簧开关与Arduino的工作原理
阿杜伊诺Uno是一款基于ATmega328p微控制器的开源微控制器板。它具有 14 个数字引脚(其中 6 个引脚可用作 PWM 输出)、6 个模拟输入、板载稳压器等。Arduino Uno具有32KB闪存,2KB的SRAM和1KB的EEPROM。它的工作时钟频率为16MHz。 Arduino Uno支持串行,I2C,SPI通信,用于与其他设备通信。下表显示了Arduino Uno的技术规格。
微控制器 ATmega328p 工作电压 5V 输入电压 7-12V(推荐) 数字 I/O 引脚 14 模拟引脚 6 闪存 32KB SRAM 2KB 电丙胺 1KB 时钟速度 16兆赫为了将干簧开关与Arduino连接,我们需要构建一个分压器电路,如下图所示。开关断开时Vo为+5V,闭合时Vo为0V。我们在这个项目中使用常开簧片开关。开关在有磁场的情况下闭合,在没有磁场的情况下打开。
代码说明
本文末尾给出了此Arduino簧片开关项目的完整代码。代码被分成有意义的小块,并在下面解释。
在代码的这一部分中,我们必须定义连接到Arduino的干簧开关和LED的引脚。干簧开关连接到Arduino的数字引脚4,LED通过限流电阻连接到Arduino的数字引脚7。变量“reed_status”用于保存簧片开关的状态。
int LED = 7;
int reed_switch = 4;
int reed_status;
在代码的这一部分中,我们必须设置连接LED和簧片开关的引脚的状态。引脚编号 4 设置为输入,引脚编号 7 设置为输出。
void setup()
{
pinMode(LED, OUTPUT);
pinMode(reed_switch, INPUT);
}
接下来,我们必须读取簧片开关的状态。如果等于 1,则开关打开,LED 熄灭。如果等于 0,则关闭开关,我们必须打开 LED。此过程每秒重复一次。此任务由以下代码的这一部分完成。
void loop()
{
reed_status = digitalRead(reed_switch);
if (reed_status == 1)
digitalWrite(LED, LOW);
else
digitalWrite(LED, HIGH);
delay(1000);
}免责声明:文章内容来自互联网,本站不对其真实性负责,也不承担任何法律责任,如有侵权等情况,请与本站联系删除。
转载请注明出处:将干簧开关与Arduino连接的教程-干簧开关原理 https://www.yhzz.com.cn/a/6455.html