• «
  • 1
  • 2
  • »
  • Pages: 2/2     Go
hstec2002
级别: 论坛先锋
精华主题: 0
发帖数量: 489 个
工控威望: 1892 点
下载积分: 8465 分
在线时间: 680(小时)
注册时间: 2021-05-05
最后登录: 2024-12-20
查看hstec2002的 主题 / 回贴
12楼  发表于: 2023-09-06 18:06
只能用类似的算法找到接近的数值,精准的用遍历是不可能的,绝对会超PLC的扫描时间。
QQ: 2845452345
1151847703
级别: 论坛先锋
精华主题: 0
发帖数量: 131 个
工控威望: 1335 点
下载积分: 1909 分
在线时间: 128(小时)
注册时间: 2016-11-17
最后登录: 2024-12-20
查看1151847703的 主题 / 回贴
13楼  发表于: 2023-09-08 09:38
图片:
还有个办法用随机,取余数,限制数字范围,余数结果给变址Z0,例如
D400:=D0Z0+D0Z1+D0Z2........;
当D400的值在目标范围内,将10个变址保存起来,
变址的编号得出寄存器,用随机总会有相等的时候,要注意下10组变址不能重复
如图
13008952337
级别: 探索解密
精华主题: 0
发帖数量: 118 个
工控威望: 174 点
下载积分: 686 分
在线时间: 49(小时)
注册时间: 2023-09-01
最后登录: 2024-12-15
查看13008952337的 主题 / 回贴
14楼  发表于: 2023-09-29 13:22
感觉你们思路错了,是十个和,而不是随机十个和,所以应该直接取最大的十个来比较,应该先把0-100以大到小排例,取前十比较,也就是先排例,再求和,再比较
susan1121
级别: 正式会员
精华主题: 0
发帖数量: 20 个
工控威望: 83 点
下载积分: 331 分
在线时间: 14(小时)
注册时间: 2021-12-06
最后登录: 2024-11-23
查看susan1121的 主题 / 回贴
15楼  发表于: 2023-10-16 22:36
使用FOR循环和Z变址寄存器,判断D0Z0的值是否在999范围内,判断是的话存入D200Z1中,同时Z1加1,判断完成后Z0加1
这样所有的数存入到d200-d209中
  • «
  • 1
  • 2
  • »
  • Pages: 2/2     Go