单片机控制电磁阀程序分析

嵌入式设计应用

132人已加入

描述

  电磁阀

  电磁阀(Electromagnetic valve)是用电磁控制的工业设备,是用来控制流体的自动化基础元件,属于执行器,并不限于液压、气动。用在工业控制系统中调整介质的方向、流量、速度和其他的参数。电磁阀可以配合不同的电路来实现预期的控制,而控制的精度和灵活性都能够保证。电磁阀有很多种,不同的电磁阀在控制系统的不同位置发挥作用,最常用的是单向阀、安全阀、方向控制阀、速度调节阀等。

  电磁阀工作原理

  电磁阀里有密闭的腔,在不同位置开有通孔,每个孔连接不同的油管,腔中间是活塞,两面是两块电磁铁,哪面的磁铁线圈通电阀体就会被吸引到哪边,通过控制阀体的移动来开启或关闭不同的排油孔,而进油孔是常开的,液压油就会进入不同的排油管,然后通过油的压力来推动油缸的活塞,活塞又带动活塞杆,活塞杆带动机械装置。这样通过控制电磁铁的电流通断就控制了机械运动。

  单片机

     单片机控制电磁阀简单电路

单片机

   GPIO=1的时候,光耦导通,电磁阀吸合;GPIO=0的时候,光耦截至,电磁阀断开;如果需要相反的逻辑,只要去掉驱动光耦的三极管即可;如果这个参数驱动不了BU408,减小R1即可;

  最关键就是GPIO上电的状态;保证GPIO上电的时候电磁阀不工作;

  如果BU408不合适,可以换TIP117这样的达林顿管。

  下面是一个用stc89c52单片机对电磁阀进行一些简单控制的程序

  #include

  sbit a=P1^0;//下开关

  sbit b=P1^1;//上升

  sbit c=P1^2;//下降

  sbit d=P1^3;//上线位

  sbit e=P1^4;//下限位

  void main()

  {

  a=1;// 上开关 常开

  b=1;// 上升 常开

  c=1;// 下降 常开

  d=1;// 上限位开关 常开

  e=1;// 下限位开关 常开

  while(1) //循环

  {

  if(a==0) // 判定上开关闭合 执行语句

  {

  a=1; //断开开关信号 依旧执行 下降 直到碰到下限位开关

  c=0; // 2 启动下降

  }

  if(e==0) // 4碰到下限位开关启动

  {

  e=1; // 下限位信号保持 依旧执行 上升

  c=1; // 2断开下降电磁阀

  b=0; // 1一直启动上升电磁阀 直到碰到上限位开关

  } //

  if(d==0) // 3碰到上限位开关

  {

  P1=0xff; // 断开所有

  }

  }

  }

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分