xinye668
级别: 略有小成
精华主题: 0
发帖数量: 90 个
工控威望: 224 点
下载积分: 8665 分
在线时间: 87(小时)
注册时间: 2013-08-29
最后登录: 2024-05-04
查看xinye668的 主题 / 回贴
楼主  发表于: 2018-10-25 21:51
各位大神,求教s7-300 PLC 怎样求一个字中间有多少个位是1,最好有梯形图
sanlihu
吉圆
级别: 论坛先锋
精华主题: 0
发帖数量: 1183 个
工控威望: 1727 点
下载积分: 7531 分
在线时间: 574(小时)
注册时间: 2012-08-31
最后登录: 2024-05-05
查看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 分
在线时间: 87(小时)
注册时间: 2013-08-29
最后登录: 2024-05-04
查看xinye668的 主题 / 回贴
4楼  发表于: 2018-10-26 14:15
leechonghua
级别: 论坛先锋
精华主题: 0
发帖数量: 762 个
工控威望: 1854 点
下载积分: 2305 分
在线时间: 1052(小时)
注册时间: 2011-06-01
最后登录: 2024-04-23
查看leechonghua的 主题 / 回贴
5楼  发表于: 2018-10-26 14:40
能否分散到4个寄存器后单独判断后采用CASE指令判断,然后相加。
sjbandmm
级别: 略有小成
精华主题: 0
发帖数量: 236 个
工控威望: 406 点
下载积分: 985 分
在线时间: 167(小时)
注册时间: 2008-08-23
最后登录: 2024-04-22
查看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 篇
发帖数量: 6738 个
工控威望: 37093 点
下载积分: 8740 分
在线时间: 9390(小时)
注册时间: 2006-09-13
最后登录: 2024-05-07
查看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
发帖数量: 231 个
工控威望: 345 点
下载积分: 791 分
在线时间: 674(小时)
注册时间: 2008-04-22
最后登录: 2024-05-07
查看duanyang的 主题 / 回贴
8楼  发表于: 2018-10-31 20:27
AT一下