磁簧开关已用于许多现实生活中的应用中,例如电磁门开关,笔记本电脑,智能手机等。在本文中,我们学习了磁簧开关,并指导您将磁簧开关与Arduino接口。
簧片开关
簧片开关基本上是一种 电子 开关,当磁场靠近它时便会操作。它是WB Ellwood在1936年的钟声实验室发明的。它由两个小金属片组成,这些小金属片在真空下保持在玻璃管内。在典型的簧片开关中,两个金属片将由铁磁材料制成,并用铑或钌覆盖,以延长其使用寿命。当开关周围存在磁场时,开关将被激活。
两个金属件的玻璃外壳可以保护它们免受灰尘,灰尘和其他颗粒的侵害。磁簧开关可在任何环境下操作,例如存在易燃气体的环境或腐蚀会影响开关断开触点的环境。
簧片开关有两种。
- 常开簧片开关
- 常闭簧片开关
在常开簧片开关中,开关在没有磁场的情况下打开,在有磁场的情况下关闭。在磁场的作用下,玻璃管内的两个金属触点相互吸引,形成接触。
在常闭簧片开关中,开关在没有磁场的情况下关闭,在有磁场的情况下打开。
磁簧开关的应用
- 用于电话交换
- 在笔记本电脑中,如果合上盖子,则可使屏幕进入睡眠状态
- 用于防盗报警系统的门窗传感器
所需组件
- Arduino Uno
- 簧片开关
- 电阻器
- LED
- 磁铁
- 连接线
Arduino簧片开关电路图
簧片开关与Arduino的配合使用
Arduino Uno是基于ATmega328p微控制器的开源微控制器板。它具有14个数字引脚(其中6个引脚可用作PWM输出),6个模拟输入,板载稳压器等。Arduino Uno具有32KB闪存,2KB SRAM和1KB EEPROM。它的时钟频率为16MHz。Arduino Uno支持用于与其他设备通信的串行,I2C,SPI通信。下表显示了Arduino Uno的技术规格。
微控制器 |
ATmega328p |
工作电压 |
5伏 |
输入电压 |
7-12V(推荐) |
数字I / O引脚 |
14 |
模拟引脚 |
6 |
快闪记忆体 |
32KB |
SRAM |
2KB |
EEPROM |
1KB |
时钟速度 |
16兆赫 |
要将簧片开关与Arduino接口,我们需要构建一个分压器电路,如下图所示。开关断开时,Vo为+ 5V;开关闭合时,Vo为0V。我们在这个项目中使用了一个 常开的簧片开关 。开关在有磁场的情况下关闭,在无磁场的情况下打开。
代码说明
本文末尾给出了该Arduino簧片开关项目的完整代码。该代码分为多个有意义的小块,并在下面进行说明。
在这部分代码中,我们必须定义引脚,在引脚上连接簧片开关和连接到Arduino的LED。簧片开关连接到Arduino的数字引脚4,LED通过限流电阻连接到Arduino的数字引脚7。变量 “ reed_status” 用于保存 磁 簧开关的状态。
内置LED = 7; int reed_switch = 4; int reed_status;
在代码的这一部分中,我们必须设置连接LED和簧片开关的引脚的状态。引脚号4设置为输入,引脚号7设置为输出。
void setup() { pinMode(LED,OUTPUT); pinMode(reed_switch,输入); }
接下来,我们必须阅读簧片开关的状态。如果等于1,则开关断开并且LED熄灭。如果等于0,则开关闭合,我们必须打开LED。每秒重复此过程。此任务通过以下代码的这一部分完成。
void loop(){reed_status = digitalRead(reed_switch); 如果(reed_status == 1)digitalWrite(LED,LOW); 否则digitalWrite(LED,HIGH); 延迟(1000); }
因此,正如您所看到的,将Reed Switch与Arduino一起使用非常容易。