目前有个项目,现场有10个收集口,当收集口料满时会发出料满信号;每次只能一个收集口放料;
10个收集口会分为普通和VIP等级;当普通收集口根据料满信号的先后顺序排料;每次只能一个收集口放料;
但当VIP等级收集口放料时,普通收集口继续排队;VIP优先放料;
试过IFFO;但是因为是两个优先等级的;大家有没有什么思路?
目前有个项目,现场有10个收集口,当收集口料满时会发出料满信号;每次只能一个收集口放料;
10个收集口会分为普通和VIP等级;当普通收集口根据料满信号的先后顺序排料;每次只能一个收集口放料;
但当VIP等级收集口放料时,普通收集口继续排队;VIP优先放料;
试过IFFO;但是因为是两个优先等级的;大家有没有什么思路?
使用填表指令ATT依次写入数据,再使用FIFO指令先入先出执行。VIP级输入复位排序指令触发条件。是否可行
排序有优先级的情况下不就是优先级高的先排,这不就是最基本的,应用咋这么死呢
"工控哥2" 的回复,发表在2楼
对内容: 【排序有优先级的情况下不就是优先级高的先排,这不就是最基本的,应用咋这么死呢...】进行回复:
-----------------------------------------------------------------
是啊,但是如果用FIFO的话就没有这个优先了;其他语句能实现吗?
"clooer2000" 的回复,发表在1楼
对内容: 【使用填表指令ATT依次写入数据,再使用FIFO指令先入先出执行。VIP级输入复位排序指令触发条件。是否可行...】进行回复:
-----------------------------------------------------------------
那如果VIP触发的话,那之前排队的顺序就没有了恩爱,能否保留原排队顺序,如果VIP放料完后,继续执行顺序,同时普通级别的在VIP放料时,仍可继续排序
VIP一个排队序列,普通以个排队序列,分别检测序列是否有排队和当前是否排料;
主逻辑:是否有排料—是—排料结束—VIP不等于0=—VIP排料;
是否有排料—否—VIP不等于0—VIP排料;
是否有排料—是—排料结束—VIP=0—普通不等于0—普通排料;
是否有排料—是—排料结束—VIP=0—普通=0—不排料;
是否由排料—否—VIP=0—普通不等于0—普通排料;
是否有排料—否—VIP=0—普通=0—不排料。
主逻辑可根据上边的逻辑整合一下。
排队顺序逻辑:这个根据VIP和普通的数量,排料-1,满料+1即可。
引用 "sp41823784" 的回复,发表在4楼
内容: "clooer2000" 的回复,发表在1楼 对内容: 【使用填表指令ATT依次写入数据,再使用FIFO指令先入先出执行。VIP级输入复位排序指令触发条件。是否可行...】进行回复: ...
相当于在VIP执行时增加普通放料暂停,至于什么时候恢复暂停确定条件。这个不难吧
"clooer2000" 的回复,发表在7楼
对内容: 【相当于在VIP执行时增加普通放料暂停,至于什么时候恢复暂停确定条件。这个不难吧...】进行回复:
-----------------------------------------------------------------
这个不是很难,只是普通的还要继续排队,等到VIP的排序放完料后继续执行;这个用中断可以吗?FIFO的那个功能块以前没用过,不是很熟
843468620 文本不便描述
用二维数组,设立两个优先级,普通优先级的正常排序,高优先级的排在最前面。
普通排序条件增加中断条件,这个可以满足。你可以把FIFO指令块再熟悉下
"clooer2000" 的回复,发表在11楼
对内容: 【普通排序条件增加中断条件,这个可以满足。你可以把FIFO指令块再熟悉下...】进行回复:
-----------------------------------------------------------------
好的,我重新熟悉了一下
建立两个程序,一VIP的是否放料为条件进行跳转。
感谢求助者和答疑者对求助答疑板块的厚爱,赠人玫瑰,手留余香。
对于求助者要求:
1、请在一个月内自行结贴,把悬赏积分(如果设置积分悬赏求助)发放给答疑者;
2、如果在求助答疑过程中,自己已经有效解决问题,建议大家把解决问题方法在自己求助帖分享,有效分享可以获得50积分奖励。
谢谢分享,学习到了。。