河南张先生
努力做事,诚信做人
级别: 家园常客
精华主题: 0
发帖数量: 672 个
工控威望: 955 点
下载积分: 3187 分
在线时间: 876(小时)
注册时间: 2009-04-25
最后登录: 2024-10-28
查看河南张先生的 主题 / 回贴
楼主  发表于: 2019-06-20 11:19


在自动上面时如何判断5个料位无料时的先后顺序,按顺序依次投料
hsqknx
级别: 工控侠客
精华主题: 0
发帖数量: 430 个
工控威望: 2445 点
下载积分: 503 分
在线时间: 731(小时)
注册时间: 2011-06-13
最后登录: 2024-12-21
查看hsqknx的 主题 / 回贴
1楼  发表于: 2019-06-20 12:53
先进先出
hsqknx
级别: 工控侠客
精华主题: 0
发帖数量: 430 个
工控威望: 2445 点
下载积分: 503 分
在线时间: 731(小时)
注册时间: 2011-06-13
最后登录: 2024-12-21
查看hsqknx的 主题 / 回贴
2楼  发表于: 2019-06-21 08:16
最简单的做法就是顺序走法,谁没料就给谁加料,然后再从头查起,顺控就能搞定的事,相当于通信轮询
hsqknx
级别: 工控侠客
精华主题: 0
发帖数量: 430 个
工控威望: 2445 点
下载积分: 503 分
在线时间: 731(小时)
注册时间: 2011-06-13
最后登录: 2024-12-21
查看hsqknx的 主题 / 回贴
3楼  发表于: 2019-06-21 10:20
这就是简单做法啊,

不然就用字移位自己写一个先进先出功能,把空的对应号初始化进连续字,计数,移出一个就计数减1,后来有空的号加在后面,并计数加1,同时可以排除已有的号,这样5个连续字就够了
hsqknx
级别: 工控侠客
精华主题: 0
发帖数量: 430 个
工控威望: 2445 点
下载积分: 503 分
在线时间: 731(小时)
注册时间: 2011-06-13
最后登录: 2024-12-21
查看hsqknx的 主题 / 回贴
4楼  发表于: 2019-06-23 18:04
引用
引用第11楼wangnaizhi于2019-06-21 08:39发表的  :

你这个是没有缓存的状态 如果出现你放料的过程中 其他的显示没有料 你的逻辑上就会有BUG

估计你没明白轮询怎么做
hsqknx
级别: 工控侠客
精华主题: 0
发帖数量: 430 个
工控威望: 2445 点
下载积分: 503 分
在线时间: 731(小时)
注册时间: 2011-06-13
最后登录: 2024-12-21
查看hsqknx的 主题 / 回贴
5楼  发表于: 2019-06-24 11:21
引用
引用第31楼wangnaizhi于2019-06-24 10:28发表的  :

不是说你轮询方式不可以做 只是轮询存在逻辑BUG 虽然现场这种BUG是不会影响实际使用  而且你找到一个没有料了以后 该怎么处理呢  不轮询了? 肯定还是要去轮询的 一直轮询 肯定需要就数据进行缓存 它这边对补料以外的其它仓位先后顺序数据需要进行缓存  或者你这边轮询机制需要进行合理设计



不纠结这玩意,其实用计时脉冲计数,然后找最大值就OK了,不用移位都行啊