登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:如何实现只要有信号输入,过5秒就输出呢?

点击:3128 回复:55

但是PLC的信号是上位机发送过来的,而且信号还是不定时发过来的;这样能实现吗?我是用上位机处理信息,如果处理的信息是不行的,这样才发个信号给PLC,让PLC驱动气缸动作的。
16-11-16 22:57
不良品剔除啊?这个有许多现成的样例的。一般的方法就像26楼用移位指令就可以了,如果不能理解的话还有一个麻烦点的方法:用一个计数器和几个定时器,像七楼cvlsam版的方法,x0接通一次,c0计数 一次,c0=1,M0置位,T0计时,c0=2,M1置位,T1计时,依次类推
16-11-16 23:02
输入的信号不是0,就是1,那用管是那来的呢?主要是要注意其能维持多长时间,如你0.1秒采集一次,如果输入只维持0.05秒,那你就不能采集到了,就算输入信号能保持0.1秒,也不一定能采集到。必须大于0.1秒。
另外,还有影响采集频率的是你要求的延时精度,如果说5.1秒,和4.9秒没关系的,那0.1秒就没问题。
如果你要求4.95和5.05秒之间的,那就要0.05秒或更高速的采集周期。
最后修改:2016/11/16 23:14:40
16-11-16 23:04
很久以前做过的不良品剔除,不过不是延时5秒,好像是计数延迟,你可以参考一下
附件 111_1479307860798.jpg
16-11-16 23:06
上位机是检测到次品才会发信号,如果一直采集的话,不是次品不是没有信号去采集吗
16-11-16 23:21
大概意思懂了不过图片的程序看不见哈哈哈
16-11-16 23:23
将当前数据存入寄存器,再根据位置决定位移个数,检测目标寄存器数据大于0就吹
16-11-16 23:29
有次品就输入1,否则输入0。对吧。
那输出是延时后5秒,输出1,如没有次品则一直是输出0,对吧。
那个移位不停地移啊,就让其移。
反正结果是有次品输入1后,5秒就输出一个1出来。
不是次品怎会没信号采集呢,采集到0呀,并且延时5秒输出0呀。
最后修改:2016/11/16 23:33:46
16-11-16 23:32
个人想法是  假如输出时间为一秒   就用五个定时器  输入入信号发生一次就加一  与定时器输入信号比较当大于等于一时 第一个定时器开始计时   大于等于二时第二个定时器开始计时   后面三个就仿照 这两个就行  当定时器有输出时  就减一同时复位 用定时器的输出来驱动一个中间继电器  来给输出置位 同时清零输出定时器
16-11-17 07:37
好像可以,我试下能不能实现。还没写过定期采集信号的程序。
16-11-17 07:50

上一页 下一页

工控新闻

更多新闻资讯