nlb2001
级别: 略有小成
精华主题: 0
发帖数量: 96 个
工控威望: 237 点
下载积分: 577 分
在线时间: 65(小时)
注册时间: 2013-02-03
最后登录: 2024-09-14
查看nlb2001的 主题 / 回贴
楼主  发表于: 2015-09-24 13:11
各位大侠:
      
       本人要做一个程序:有11个空位,有一个运搬车随机向着11个空位中放工件。只要这11个空位中没有工件的位置就可以随机放置工件,一次放一个。
   我想的是空位中有工件就是0,在0~11空位中中(最大)随便找一个不是0的位置放工件,得用什么指令啊??
   先随机选一个位置,在和0比较,是0的话就再重复随机选择,再和0比较,不是0的话就选择这个。
   0~11的范围怎么定,得用子程序吗
   脑汁绞尽求帮助啊!!!!!
叫我某某
级别: 略有小成
精华主题: 0
发帖数量: 231 个
工控威望: 376 点
下载积分: 10034 分
在线时间: 256(小时)
注册时间: 2015-04-17
最后登录: 2023-11-22
查看叫我某某的 主题 / 回贴
1楼  发表于: 2015-09-24 14:04
用比较指令啊,11个空位比较,大于0就放
nlb2001
级别: 略有小成
精华主题: 0
发帖数量: 96 个
工控威望: 237 点
下载积分: 577 分
在线时间: 65(小时)
注册时间: 2013-02-03
最后登录: 2024-09-14
查看nlb2001的 主题 / 回贴
2楼  发表于: 2015-09-24 16:30
比较的话每次都从第一个开始比,那么后面的就没有机会放工件了啊
njaolian
新年快乐,恭祝大家出门捡钱包。凡是捡到钱包的,分我一半,哈哈
级别: VIP会员
精华主题: 2 篇
发帖数量: 452 个
工控威望: 2333 点
下载积分: 1981 分
在线时间: 210(小时)
注册时间: 2010-11-10
最后登录: 2024-10-30
查看njaolian的 主题 / 回贴
3楼  发表于: 2015-09-24 16:47
我说个我的思路,计数器利用刷新时间不停加,到11清零再从0开始继续加,如果需要取料送的时候,先把0-11的值定下来,进行比较,看看现在取得的数字满不满足可以搬运产品放,如果不满足,加1再判断,再不满足,再加1(满11从0开始加1),这样可以做到理论上的随机送料,我的思路,仅供参考
nlb2001
级别: 略有小成
精华主题: 0
发帖数量: 96 个
工控威望: 237 点
下载积分: 577 分
在线时间: 65(小时)
注册时间: 2013-02-03
最后登录: 2024-09-14
查看nlb2001的 主题 / 回贴
4楼  发表于: 2015-09-25 14:29
大哥给稍微详细点说说呗,小弟初学没能理解
john42tw
级别: 网络英雄
精华主题: 0
发帖数量: 1276 个
工控威望: 6107 点
下载积分: 52058 分
在线时间: 1120(小时)
注册时间: 2012-04-24
最后登录: 2024-09-30
查看john42tw的 主题 / 回贴
5楼  发表于: 2015-09-25 15:17
引用
引用楼主nlb2001于2015-09-24 13:11发表的 在一定范围内随机取用 怎么遍啊 求助啊!!! :
各位大侠:
      
       本人要做一个程序:有11个空位,有一个运搬车随机向着11个空位中放工件。只要这11个空位中没有工件的位置就可以随机放置工件,一次放一个。
   我想的是空位中有工件就是0,在0~11空位中中(最大)随便找一个不是0的位置放工件,得用什么指令啊??
   先随机选一个位置,在和0比较,是0的话就再重复随机选择,再和0比较,不是0的话就选择这个。
.......

基本上工控的設計都要有一個規則,極少會用到隨機。
否則會造成極大的困擾。

至於你的問題:
1.由工位1 開始比較,遇 0 放置。
2.依順序向後比較,遇 0 放置。
3.以時間秒,個位數比較,遇 0 放置。
4.以亂數比較,遇 0 放置。
fan1990
级别: 探索解密
精华主题: 0
发帖数量: 15 个
工控威望: 116 点
下载积分: 751 分
在线时间: 8(小时)
注册时间: 2015-09-24
最后登录: 2020-06-08
查看fan1990的 主题 / 回贴
6楼  发表于: 2015-09-25 15:39
没有说随机的,放料一定得定义一个规则,从1到11去询问,轮询
谁满足条件,就去谁那里放,1不满足,就去询问2,以此类推
94072890
级别: 略有小成
精华主题: 0
发帖数量: 160 个
工控威望: 311 点
下载积分: 8359 分
在线时间: 76(小时)
注册时间: 2013-11-29
最后登录: 2024-10-25
查看94072890的 主题 / 回贴
7楼  发表于: 2015-09-26 14:50
为什么偏要随机呢,你可以设定一个顺序,像楼上那种说话可以
nlb2001
级别: 略有小成
精华主题: 0
发帖数量: 96 个
工控威望: 237 点
下载积分: 577 分
在线时间: 65(小时)
注册时间: 2013-02-03
最后登录: 2024-09-14
查看nlb2001的 主题 / 回贴
8楼  发表于: 2015-09-28 16:37
我也想了几天了,查遍互联网!!
我是这样做的,PLC好像没有真正的 随机数。
所以我利用时间,每次触发信号肯定不会一样,所以利用用触发时间的秒数除以6,基本上可以等到10个结果,这样基本上可以做到随机放置工件了。
不过还有一个问题,就是如果放工件的位置为满工件,就不能放了还得重新选择,是不是得用到子程序的调用什么的啊,又是一个新的问题…………………………