风筝
发表于: 2019-9-4 22:51:27 | 显示全部楼层

电磁阀(Solenoid Valve)是许多过程自动化系统中非常常用的执行机构。电磁阀有许多类型,例如,可用于打开或关闭水或气体管道的电磁阀,以及用于产生线性运动的电磁柱塞。我们大多数人都会遇到一种非常常见的电磁阀应用是叮咚门铃。门铃内部有一个柱塞式电磁线圈,当交流电源通电时,上下移动一个小杆。该杆将撞击位于电磁阀两侧的金属板,以产生舒缓的叮咚声。它还可用作车辆的起动器或喷水灭火系统中的阀门。


在本篇文章中,我们将详细介绍如何使用Arduino开发板控制电磁阀。


电磁阀是如何工作的?

电磁阀是一种将电能转换为机械能的装置。它的线圈缠绕在导电材料上,这种装置起到电磁铁的作用。电磁铁相对于天然磁铁的优点在于,当需要通过激励线圈时可以打开或关闭电磁铁。因此,当线圈通电时,根据法拉第定律,载流导体在其周围具有磁场,因为导体是线圈,磁场足够强以磁化材料并产生线性运动。

Solenoid-Valve.png


其工作原理类似于继电器,其内部有一个线圈,通电时,将导电材料(活塞)拉入其中,从而允许液体流动。当断电时,它使用弹簧将活塞推回到先前位置,并再次阻止液体流动。


在此过程中,线圈需要大量电流并产生滞后问题,因此不可能通过逻辑电路直接驱动电磁线圈。这里我们使用12V电磁阀,它通常用于控制液体流量。电磁阀在通电时需要700mA的连续电流,峰值接近1.2A,因此在为这种特殊的电磁阀设计电磁阀驱动电路时,我们必须考虑这些因素。


需要的组件

●     Arduino UNO开发板

●     电磁阀

●     IRF540 MOSFET

●     按钮

●     电阻(10k,100k)

●     二极管1N4007

●     面包板

●     连接导线


电路原理图

使用Arduino控制电磁阀的电路图如下:

Circuit-Diagram-for-controlling-a-Solenoid-Valve-with-Arduino.png


编程代码说明

在本文的末尾处给出了Arduino控制电磁阀的完整代码。在这里,我们将解释一下程序,以了解项目的工作过程。


首先,我们将数字引脚9定义为电磁阀的输出引脚,数字引脚2和3定义为按钮的输入引脚。

  1. void setup() {
  2.      pinMode(9, OUTPUT);
  3.      pinMode(2, INPUT);
  4.      pinMode(3, INPUT);
  5. }
复制代码

loop()函数中,根据数字引脚2和3的状态打开或关闭电磁阀,这些引脚连接到两个按钮以打开和关闭电磁阀。

  1. void loop() {
  2. if(digitalRead(2)==HIGH)
  3. {
  4.      digitalWrite(9,HIGH);
  5.      delay(1000);
  6. }
  7. else if(digitalRead(3)==HIGH)
  8. {
  9.      digitalWrite(9,LOW);
  10.      delay(1000);
  11. }
  12. }
复制代码

Arduino控制电磁阀

将完整的代码上传到Arduino开发板后,您可以通过两个按钮打开和关闭电磁阀。电磁阀还连接了一个LED用于指示状态。

Circuit-Hardware-for-controlling-a-Solenoid-Valve-with-Arduino.jpg


当按下按钮1时,Arduino开发板向MOSFET IRF540的栅极发送一个HIGH电平,栅极端子连接在Arduino的第9个引脚上。由于IRF540是一个N沟道MOSFET,因此当其栅极变为高电平时,它允许电流从漏极流向源极,从而打开电磁阀。


类似地,当我们按下按钮2时,Arduino向MOSFET IRF540的栅极发送一个LOW电平,使得电磁阀关闭。


代码

以下是本文使用的完整代码: main.rar (225 Bytes, 下载次数: 161)

跳转到指定楼层
wufalei@126.com
发表于: 2019-12-22 21:58:23 | 显示全部楼层

您好,请教您一下。我打算链接3个24伏的电磁阀,用您图中的IRF540 MOSFET这个可以吗?网上很多人说用续电器。我实在是不太懂这个。另外,电磁阀上的二极管,我应该怎么注意方向。谢谢了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 705 | 回复: 1492



手机版|

GMT+8, 2024-11-24 04:38 , Processed in 0.050613 second(s), 6 queries , Gzip On, MemCache On. Powered by Discuz! X3.5

YiBoard一板网 © 2015-2022 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表