xinye668
级别: 略有小成
精华主题: 0
发帖数量: 90 个
工控威望: 224 点
下载积分: 8665 分
在线时间: 88(小时)
注册时间: 2013-08-29
最后登录: 2024-12-19
查看xinye668的 主题 / 回贴
楼主  发表于: 2018-10-25 21:51
各位大神,求教s7-300 PLC 怎样求一个字中间有多少个位是1,最好有梯形图
sanlihu
吉圆
级别: 论坛先锋
精华主题: 0
发帖数量: 1195 个
工控威望: 1740 点
下载积分: 7558 分
在线时间: 578(小时)
注册时间: 2012-08-31
最后登录: 2024-12-23
查看sanlihu的 主题 / 回贴
1楼  发表于: 2018-10-26 09:49
用1与每位相与,结果是1的相加
吉圆电气 QQ751673698
汪传福
苦逼的工控人!非标机械设计开发!!电话13689531809
级别: 工控侠客
精华主题: 0
发帖数量: 626 个
工控威望: 2514 点
下载积分: 704 分
在线时间: 168(小时)
注册时间: 2017-03-24
最后登录: 2024-01-13
查看汪传福的 主题 / 回贴
2楼  发表于: 2018-10-26 10:06
   有们判别指令
zqszk123
集百家之所长,融百家之所思,扬百家之所名!
级别: 论坛先锋
精华主题: 1 篇
发帖数量: 246 个
工控威望: 1067 点
下载积分: 585 分
在线时间: 123(小时)
注册时间: 2018-06-19
最后登录: 2023-04-03
查看zqszk123的 主题 / 回贴
3楼  发表于: 2018-10-26 10:40
WAND   
xinye668
级别: 略有小成
精华主题: 0
发帖数量: 90 个
工控威望: 224 点
下载积分: 8665 分
在线时间: 88(小时)
注册时间: 2013-08-29
最后登录: 2024-12-19
查看xinye668的 主题 / 回贴
4楼  发表于: 2018-10-26 14:15
leechonghua
级别: 论坛先锋
精华主题: 0
发帖数量: 762 个
工控威望: 1855 点
下载积分: 2307 分
在线时间: 1062(小时)
注册时间: 2011-06-01
最后登录: 2024-12-22
查看leechonghua的 主题 / 回贴
5楼  发表于: 2018-10-26 14:40
能否分散到4个寄存器后单独判断后采用CASE指令判断,然后相加。
sjbandmm
级别: 略有小成
精华主题: 0
发帖数量: 237 个
工控威望: 407 点
下载积分: 987 分
在线时间: 168(小时)
注册时间: 2008-08-23
最后登录: 2024-11-19
查看sjbandmm的 主题 / 回贴
6楼  发表于: 2018-10-28 22:04
有些PLC有专门统计一个区间内寄存器为ON的指令,而西门子300没有这个功能,需要自己编辑,可以用循环指令+位移指令实现:
1、ON数寄存器清零
2、检查字最低位(也可以最高位)是否为ON,如果为ON,寄存器+1
3、右移一位,再跳转到第二步
4、16次循环完成后得到ON位数
cvlsam
富士低压,POD(觸摸屏),PLC专卖
级别: VIP会员

精华主题: 3 篇
发帖数量: 6777 个
工控威望: 38380 点
下载积分: 4243 分
在线时间: 9538(小时)
注册时间: 2006-09-13
最后登录: 2024-12-23
查看cvlsam的 主题 / 回贴
7楼  发表于: 2018-10-29 14:40
引用
引用第6楼sjbandmm于2018-10-28 22:04发表的  :
有些PLC有专门统计一个区间内寄存器为ON的指令,而西门子300没有这个功能,需要自己编辑,可以用循环指令+位移指令实现:
1、ON数寄存器清零
2、检查字最低位(也可以最高位)是否为ON,如果为ON,寄存器+1
3、右移一位,再跳转到第二步
4、16次循环完成后得到ON位数


No,Sir,西门子300有这个功能,在标准库中的FC99(BITSUM)



Good Luck~
duanyang
级别: 略有小成
精华主题: 0
发帖数量: 240 个
工控威望: 355 点
下载积分: 815 分
在线时间: 735(小时)
注册时间: 2008-04-22
最后登录: 2024-12-22
查看duanyang的 主题 / 回贴
8楼  发表于: 2018-10-31 20:27
AT一下