求教S7-200传送指令的使用问题(将BCD码传送到Q映像寄存器中) 点击:1944 | 回复:16



可子----王者之师

    
  • 精华:1帖
  • 求助:2帖
  • 帖子:2帖 | 21回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2012年4月02日
发表于:2012-04-18 17:19:17
楼主
求助帖20分-已结帖

各位师傅你们好 在学习西门子200plc编程时遇到了点问题 请你们帮忙指点一下  

我想把一个二位的整数(例如15)转换成二进制BCD码 然后发送到Q映像寄存器中 实现对小灯的亮灭控制

我编写了下面的程序

LD     SM0.1

MOVW   15, VW0
IBCD   VW0
将15这个整数转换成了2进制的BCD 传送到了VW0中0000 0000 0001 0101 然后就不知道怎么编了
我想把后面VB1中的 0001 0101的每一位分别传送到Q0.0 Q0.1 ...Q0.7中 以便得到下表中的结果

 Q0.0

 Q0.1
 Q0.2
 Q0.3

Q0.4

 Q0.5
 Q0.6
 Q0.7
请问我应该怎么编写呢 如果我的方法不对 请给予正确的方法 十分感谢 答案中请附带STL的程序或梯形图程序 谢谢



楼主最近还看过



飞行1111

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 3回
  • 年度积分:0
  • 历史总积分:33
  • 注册:2012年4月10日
发表于:2012-04-18 17:36:11
1楼

工控不过如此啊,尽然没人会!

可子----王者之师

  • 精华:1帖
  • 求助:2帖
  • 帖子:2帖 | 21回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2012年4月02日
发表于:2012-04-18 17:45:22
2楼
引用 飞行1111 的回复内容: 工控不过如此啊,尽然没人会!


我该说什么呢 你这话说的 学习 学习

可子----王者之师

  • 精华:1帖
  • 求助:2帖
  • 帖子:2帖 | 21回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2012年4月02日
发表于:2012-04-18 17:47:18
3楼
说明一下 程序和那个表格无关 表格只是怕你们不理解我的意思 为了方便才进去说明的 不要理解错了 

liby0107

  • 精华:0帖
  • 求助:0帖
  • 帖子:8帖 | 10回
  • 年度积分:0
  • 历史总积分:76
  • 注册:2009年2月16日
发表于:2012-04-18 18:50:17
4楼

晕,这话说得,直接将VB1用MOVB指令传送到QB0中就可以啊

hujiamiao1990

  • 精华:0帖
  • 求助:14帖
  • 帖子:22帖 | 202回
  • 年度积分:0
  • 历史总积分:762
  • 注册:2011年8月01日
发表于:2012-04-18 19:01:18
5楼
LD     SM0.1
MOVW   15, VW0
MOVW   VW0, VW2
IBCD   VW2
MOVW   VW2, VW4
SLW    VW4, 8
MOVW   2#10111101, VW6
MOVW   VW6, VW8
SLW    VW8, 8
MOVW   VW4, VW10
XORW   VW8, VW10
MOVW   VW10, QW0

可子----王者之师

  • 精华:1帖
  • 求助:2帖
  • 帖子:2帖 | 21回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2012年4月02日
发表于:2012-04-18 19:59:44
6楼
回复内容:
对:liby0107关于晕,这话说得,直接将VB1用MOVB指令传送到QB0中就可以啊内容的回复:


恍然大悟啊 其实就是这么回事 突然一下没转过来弯 再请教一个问题 Q0.0----Q0.7这八个还需要再编写程序吗 是不是直接接线就可以控制了?  

陈石头

  • 精华:33帖
  • 求助:2帖
  • 帖子:434帖 | 9288回
  • 年度积分:0
  • 历史总积分:54989
  • 注册:2008年3月07日
发表于:2012-04-18 20:16:50
7楼
引用 可子----王者之师 的回复内容:回复内容:对:liby0107关于晕,这话说得,直接将VB1用MOVB指令传送到QB0中就可以啊内容的回复:恍然大悟啊 其实就是这么回事 突然一下没转过来弯 再请教一个问题 Q0.0----Q0.7这八个还需要再编写程序吗 是不是直接接线就可以控制了?  



直接接线就可以了

可子----王者之师

  • 精华:1帖
  • 求助:2帖
  • 帖子:2帖 | 21回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2012年4月02日
发表于:2012-04-18 20:28:33
8楼
回复内容:
对:陈石头关于引用 可子----王者之师 的回复内容:回复内容:对:liby0107关于晕,这话说得,直接将VB1用MOVB指令传送到QB0中就可以啊内容的回复:恍然大悟啊 其实就是这么回事 突然一下没转过来弯 再请教一个问题 Q0.0----Q0.7这八个还需要再编写程序吗 是不是直接接线就可以控制了?   直接接线就可以了 内容的回复:


谢谢哈

可子----王者之师

  • 精华:1帖
  • 求助:2帖
  • 帖子:2帖 | 21回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2012年4月02日
发表于:2012-04-18 20:49:50
9楼

如果将两位数 改为单位数 是不是在传送前加一步移位指令就可以实现了啊

可子----王者之师

  • 精华:1帖
  • 求助:2帖
  • 帖子:2帖 | 21回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2012年4月02日
发表于:2012-04-18 20:51:27
10楼
请问 如果将题中的两位数15 改为单位数5 是不是只要在传送前加一步移位指令 就可以实现了啊

电工九段

  • 精华:2帖
  • 求助:9帖
  • 帖子:60帖 | 1381回
  • 年度积分:0
  • 历史总积分:5582
  • 注册:2006年4月29日
发表于:2012-04-18 22:01:59
11楼
15和表格不对应的,高低位反了。

可子----王者之师

  • 精华:1帖
  • 求助:2帖
  • 帖子:2帖 | 21回
  • 年度积分:0
  • 历史总积分:42
  • 注册:2012年4月02日
发表于:2012-04-19 15:06:28
12楼
回复内容:
对:电工九段关于15和表格不对应的,高低位反了。 内容的回复:


我晕 高低位弄反了?  这还了得 不是那样一一对应分配的吗?

电工九段

  • 精华:2帖
  • 求助:9帖
  • 帖子:60帖 | 1381回
  • 年度积分:0
  • 历史总积分:5582
  • 注册:2006年4月29日
发表于:2012-04-19 16:10:26
13楼

传15的话,不是Q0.3 0.5 0.7亮。而是Q0.0 0.2 0.4亮。

你换个数就行了呗。

fuwakuaipao

  • 精华:0帖
  • 求助:8帖
  • 帖子:8帖 | 59回
  • 年度积分:0
  • 历史总积分:364
  • 注册:2012年9月06日
发表于:2012-09-25 14:09:12
14楼

引用 hujiamiao1990 的回复内容:LD     SM0.1MOVW   15, VW0MOVW   VW0, VW2IBCD   VW2MOVW   VW2, VW4SLW    VW4, 8MOVW   2#10111101, VW6MOVW   VW6, VW8SLW    VW8, 8MOVW   VW4, VW10XORW   VW8, VW10MOVW   VW10, QW0



怎么拿仿真软件仿真一塌糊涂呀!! 求大神明示vw2、vw4、vw6、vw8、vw10的值??

 

阳正

  • 精华:0帖
  • 求助:8帖
  • 帖子:15帖 | 151回
  • 年度积分:0
  • 历史总积分:391
  • 注册:2006年3月08日
发表于:2012-10-18 14:56:40
15楼
数位是从右往左数的。是Q0.0 0.2 0.4亮

新人上路11

  • 精华:0帖
  • 求助:1帖
  • 帖子:1帖 | 3回
  • 年度积分:0
  • 历史总积分:5
  • 注册:2013年2月22日
发表于:2013-02-22 11:06:23
16楼
回复内容:
对:电工九段关于 传15的话,不是Q0.3 0.5 0.7亮。而是Q0.0 0.2 0.4亮。你换个数就行了呗。 内容的回复:

老师您好,我是学习西门子S7-200PLC的新手,我现在想做个程序想请您帮忙解答下,

用BCD码通过PLC控制10个灯,灯显示以下几组

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

,老师能不能帮忙编下梯形图,谢谢


热门招聘
相关主题

官方公众号

智造工程师