做了个带速度控制的感应自动门程序


这是一个自己练习的项目,模拟带传感器的、带速度控制的单开自动门控制系统,含PLC编程、HMI界面制作、并完成仿真练习,最终启动、感应开门、自动关门、停止效果如下

要实现的功能

  • 启动后,门上方灯变亮,并进入自动检测状态,当传感器检测到信号后,系统进入开门控制阶段,先高速开门,当门要抵达高速开门限位后,进入慢速开门阶段,当门抵达开门限位后,停止开门,同时进入等待3s阶段,当时间达到后,进行关门操作;
  • 系统关门控制阶段,首先高速关门,当门要抵达高速关门限位后,进入慢速关门阶段,当门抵达关门限位后,停止关门,直到传感器检测到信号后再次动作;
  • 当关门过程中,传感器检测到信号,则执行关门控制流程;
  • 当系统处于高速运行阶段时,门动作中红灯进行闪烁提示;当处于低速运行阶段时,门动作中红灯常亮;并给开门和关门不同速度阶段分别给予指示灯提示
  • 当停止后,门上方指示灯变灰,不再检测信号,可将门设置为常开或常闭

难点

这是一个很容易忽略的地方,比如高速转低速的时候,捕捉到高速下降沿的,就转低速,这里就存在一个问题,因为这个信号只有一瞬间,假如后面传感器信号没了,就无法转低速了,所以必须要保证处于高速关门极限限位,所以在下降沿后面还要再加一个高速关门极限的常开,必须高带关门到达极限的时候,捕捉到下降沿信号才能转低速关门,相当于多做一个保险。比如还没到高速关门极限,关门过程中监测到有人了,高速关门电机也会断电,这时候要开门,而不能继续执行低速关门,这个保险的作用就在这里,防止高速关门断电不是因为到达极限,而是因为检测到有人而切断的

编程

i点有:启动、停止、传感器信号、高速关门极限、关门极限、高速开门极限、开门极限

Q点有:运行指示灯、红灯、限位灯、电机

M点:存储位,用于临时存储数据的,门位置

程序段1,启动后,运行指示灯自保

程序段2,传感器检测到有人后,运行中,并且没有到达高速极限,高速开门电机运行并自保

程序段3,高速开门电机下降沿,发出脉冲信号,如果运行中,并且没有到达开门极限,低速开门电机运行并自保

程序段4,到达开门极限,运行中,等待5秒结束,等待时间前面要再加个传感器信号的常闭,如果检测到信号,就断开计时,后面要执行开门操作

程序段5,5秒等待后就要执行关门了,如果运行中,并且没有到达高速关门极限,传感器又没有信号的话,就启动高速关门电机并自保

程序段6,高速关门电机下降沿,发出脉冲信号,如果运行中,并且没有到达关门极限,低速关门电机运行并自保

程序段7,高速的时候红灯闪烁,用1赫兹控制通断,低速的时候红灯常亮

程序段8,4个电机常开对应4个指示灯线圈

程序段9-12,速度控制,有一个门水平位置的变量,用10赫兹加上ADD和SUB函数来做速度控制,开门就用ADD做累加,关门就用SUB减

程序段13-16,用比较操作,对比门位置是否到达对应极限位置

HMI

没啥难的,无非就是绑定变量,启动停止绑定事件,按下置位位,释放复位位,运行指示灯是一张图片,绑定一个可见性动画,背景是一张图片,门也是一张图片,绑定门位置变量


文章作者: 沐华
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 沐华 !