1、分别衫芦有1、2、3、4、5共计5个开关点,暂且定义为I0.0--I0.4,分别对应输出点Q0.0--Q0.4。
2、当这5个开关点无顺序依次接通时,相对应的输出点高塌世按照先来后到,排队的形式进戚肢行输出,同时输出不超过两个。
3、等这两个输出保持30秒以后断开,重新再检测这5个开关点的闭合状态,再按照排队的形式输出先接通开关点对应的输出点。
PLC一进一出才走输出的程序,其实是一个初级的排队控制程序,可以通过以下的简单程序实现:1. 创建两个计时器,分别为T1、T2,用于衡纯卜控制进入队列和出队列。
2. 创建一个用于控制队列长度的计数器,用于记录当前队列中的数量。
3. 为进出队列分别定义一个触点I1和I2。
4. 创建一个输出Q1,用于在出队列时输出信号。
下面是具体的程序流程:
主程序:
- 开始时,初始化计数器CT0值为0,将T1、T2复位,并将输出Q1初始值设为0。
- 若I1触点被触发,则T1开始计时。在T1计时结束之前,如果I2触点被触发,则不做处理。若计时器T1计时结束,队列长度增加1,计数器CT0加1,并清零计时器T1。
- 若I2触点被触发,则T2开始计时。在T2计时结束之前,裤昌如果I1触点被触发,则不做处理。若计时器T2计时结束,队列长度减1,计数器CT0减1,并清零计时器T2。
- 若队列中有物体,则输出Q1为咐穗1,否则Q1为0。
- 继续执行主程序。
程序结束。
需要注意的是,该程序只适用于简单的一进一出排队控制,对于具体的场景需求,程序可能需要进行修改。
什么方式排序?如果按照时间先后的话容易,就是先选择的先执行一堆栈形式或者直接用计时器内的数字大小排序,如果按照字母顺序排序plc不太擅长做这个工作,倒是有多种方法一种是查表(最省事),一种是自己先把26个字母排序(歌曲名字比较长,很费劲)然后在具体的歌名与这个排序进行比较(最费事),第三种按照冒泡法去比较这个也比较复杂欢迎分享,转载请注明来源:内存溢出
评论列表(0条)