中国自动化学会专家咨询工作委员会指定宣传媒体
免费注册 登录 广告服务 | 客服中心
您现在所在的是:

人机界面

抖音 西门子减速电机 德嘉 台达 英威腾 泓格论坛 西门子 我和LOGO!有个约会 FLIR红外热像论坛 【有奖活动】英威腾 “Ni美国国家仪器 “PLC发展趋势大讨论”活动圆满结束 cc-link图文征集活动 西门子SMART LINE V3
工控论坛首页 人机界面 → 浏览主题: ENCO编码指令谁帮我理下思路
发表新帖 回复该主题
回帖:5个,阅读:134 [上一页] [1] [下一页]
* 帖子主题:

ENCO编码指令谁帮我理下思路

分享到
1046
管杀不管填
文章数:137
年度积分:299
历史总积分:1046
注册时间:2006/1/25
发站内信
发表于:2019/9/18 23:35:47
#0楼
  ENCO查了资料是这个意思:ENCO指令的输入字是一个16位二进制数,ENCO的功能是将这个二进制数从0位到15位依次检查每一位的值,一旦遇到某一位的值为“1”,就将该位的位号写入输出中。比如输入为1001 0100 0100 0000,那么输出为“6”(见图),因为从低位向高位逐个检查,在二进制数的第6位出现了“1”。
我好像理解了,我试着用PLC实际模拟,上例中是对的,然后试了IN中试入10#4(0100);10#7(0111);按上面意思,1出现在第2位和第0位,PLC中模拟出来OUT是10#2和10#0,我PLC中模拟出来是对的。但为什么IN中输入10#12(00010010),IN中输入10#100(000100000000),模拟出来两个结果都是2,为什么结果不是1和8呢,倒着数过来(00010010)和(000100000000)中的1不是出现在第1位和第8位吗。
[此贴子已经被作者于2019/9/18 23:39:54编辑过]
4059
蜀中之首
文章数:2735
年度积分:2542
历史总积分:4059
注册时间:2018/5/27
发站内信
发表于:2019/9/19 7:28:06
#1楼
以下是引用管杀不管填2019/9/18 23:35:47的发言:
  ENCO查了资料是这个意思:ENCO指令的输入字是一个16位二进制数,ENCO的功能是将这个二进制数从0位到15位依次检查每一位的值,一旦遇到某一位的值为“1”,就将该位的位号写入输出中。比如输入为1001 0100 0100 0000,那么输出为“6”(见图),因为从低位向高位逐个检查,在二进制数的第6位出现了“1”。
我好像理解了,我试着用PLC实际模拟,上例中是对的,然后试了IN中试入10#4(0100);10#7(0111);按上面意思,1出现在第2位和第0位,PLC中模拟出来OUT是10#2和10#0,我PLC中模拟出来是对的。但为什么IN中输入10#12(00010010),IN中输入10#100(000100000000),模拟出来两个结果都是2,为什么结果不是1和8呢,倒着数过来(00010010)和(000100000000)中的1不是出现在第1位和第8位吗。
[此贴子已经被作者于2019/9/18 23:39:54编辑过]

为什么?
1.ENCO是人机界面指令,还是PLC指令?
2.PLC,谁家PLC
3.按文字描述,IN中输入10#12(00010010),是不是应该这样 10#12(00001100),IN中输入10#100(000100000000),是不是应该这样10#100(01100100
971
hwjtxf
文章数:502
年度积分:677
历史总积分:971
注册时间:2018/3/29
发站内信
发表于:2019/9/19 10:48:08
#2楼
10#12(00001100)从右向左数  “1”出现在2位
10#100(01100100)从右向左数  “1”出现在2位
没毛病 你换算错误啦
1046
管杀不管填
文章数:137
年度积分:299
历史总积分:1046
注册时间:2006/1/25
发站内信
发表于:2019/9/19 22:07:08
#3楼
回复 #2楼 hwjtxf
谢谢指点
1046
管杀不管填
文章数:137
年度积分:299
历史总积分:1046
注册时间:2006/1/25
发站内信
发表于:2019/9/19 22:07:22
#4楼
回复 #1楼 蜀中之首
谢谢,换算错误了
2379
415150043
文章数:730
年度积分:158
历史总积分:2379
注册时间:2010/6/7
发站内信
2015【逛工博】(三)
发表于:2019/9/19 22:46:01
#5楼
三菱PLC的FX3U级以上有这指令,解码指令。简单的说就是源数据起始第一位bitON,操作数结果为1,第二位bitON,操作数结果为2,以此解码,源数据长度由关键字确定,长度=2的(关键字)次方。比如关检字是3,BIT长度就是连续的8位,特别注意的BIT位中始终要有一位有ON,要不然PLC会报错。看看这样说对你理解有帮助没?
工控学堂推荐视频:

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 中华工控网 Copyright©2019 Gkong.com, All Rights Reserved

280.8