s7200 mov中,为什么要给mov b指令赋初值啊 赋值的数字为什么啊

每日登录:+1西币&+1积分
&下次自动登录
绑定第三方账号登录 & & &
扫描二维码登录支持中心移动端
获取动态密码
| 新手必读 |
You are here:
关于300PLC在OB100中初始化...
手机登录找答案
热点活动:
关于300PLC在OB100中初始化参数 - 已解决问题
大家好!&&&&&&&&&由于我想在PLC掉电或下次启动时将当前位置信息赋给DB数据块,我想在OB100中去实现,但没成功,我想PLC调用OB100时,PLC还在初始化,没有启动,现场数据无法读到PLC中,所以失败。不知道是不?&&&&&&&&&为了能在PLC启动后立刻将现场数据给DB数据,我在OB100中设置了一个中继M0.0,通过常闭实现自启动,就是置位M0.0,在OB1中通过M0.0的上升沿将现场的数据给DB数据块。在以前这样是要你管好好的,但最近发现不能实现这个功能了,PLC启动后DB数据块的数据是很大的数,都超设置的数据类型了,这是什么原因?有更好的办法吗?谢谢!!
问题补充:大家好!&&&&&&我是在OB100中使用M0.0常闭来置位M0.0的,在OB1中通过M0.0的上升沿出发MOV来给DB赋值的,但出现DB数据不能成功赋值。我想可能的原因是MOV的输入IN数据在M0.0上升沿到来时,它的数据还没有通过DP总线采集回来的缘故导致的,我是通过MOV将总线上绝对编码器的当前值给DB,可能PLC启动后,编码器数值还没有传到PLC,而M0.0上升沿已过了,所以赋给DB是个随机数。大家认为哪?
产品版区:
悬赏分:5 | 解决时间: 15:46:09 | 提问者: -
问题ID:110284
1、在OB100中进行初始化是最佳的选择。2、我想PLC调用OB100时,PLC还在初始化,没有启动,现场数据无法读到PLC中,所以失败。不知道是不?你的担心是多余的。当运行OB100,一定可以完成在B100中的所有指令。将将当前位置信息赋给DB数据块是没有问题的。见详见《组织块使用说明》下载:http://218.93.112.166/ec/C23/dl/xxzl/%E7%BB%84%E7%BB%87%E5%9D%97%E4%BD%BF%E7%94%A8%E8%AF%B4%E6%98%8E.pdf3、PLC启动后DB数据块的数据是很大的数,都超设置的数据类型了,这是什么原因?这是PLC启动后,这个DB数据块被赋予了新的的值,是你的程序问题。4、有更好的办法吗?在OB100中进行初始化是最佳的选择。
提问者对于答案的评价:回答正确
已阅,最佳答案正确。
置评专家:西门子自动化技术支持& 10:00:29
更多相关问题
本版精华问答
等待您来回答
作者/最新回复
最后回复时间
正如你所说,在系统进行初始化时(执行OB100),OB1还没有执行,所以读不到实际值的。初始化的程序都是在OB100中编写的,这是没有问题的。但你使用DB块的话,利用DB块变量断电保持的功能。至于你说的数值大,检查你的程序是不是在其他地方对变量赋值了。
& 22:06:31
上升沿需要检测信号m0.0从1的变化过程,ob100是上电优先于其他的所有ob执行的,所以你的ob是检测不到信号m0.0为1的状态的,所以也就不能用上升沿了。你可以在ob100中给db赋值初始值0.
& 08:16:34
OB100是掉电保持组织块这个没有错,同时DB在默认状态下也具有掉电保持的数据块。所谓初始化数据可以理解为两层含义,一个是各种数据的初始值;另一种是系统工作后的数据运算值,因为在实际PLC运行时,有些数据需要具备数据保持的功能。OB100的功能是上电初始化功能,就是cpu在投运过程中将需要的数据进行“归零”初始化。且只能执行一次。根据你的描述初始化失败可能的原因:1)初始化数据是否正确。2)初始化组织块OB100是否完整下载到cpu。3)数据块你是否将掉电保持给勾选了。(这个与初始化组织块OB100无关)关于数值超范围,这个与数据初始化没有关系,与你具体程序有关。检查该数据的运算过程,可以找到问题的所在。
& 09:47:24
上一页1下一页&
20秒帮我们优化支持中心!
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
欢迎您来到找答案
在“找答案”,已有超过7万个被解决的技术问题供您参考!
西门子技术专家亲自把关!常规的,简单的问题,在这里您都可以找到答案!
遇到了问题,就来“找答案”提问。
点击搜索框右侧的提问按钮,只需2步就能成功提交问题!分分钟就有无数大侠前来帮你。
在“找答案”每天都有大量的新问题。
别犹豫,只需要点击问题下方的“我要回答”就能参与。答题不光有积分相送,也会给您积攒大侠人气。
“找答案”定期开展各种有奖活动期待您的参与。
更有机会参加西门子高端用户峰会。领略西门子的博大精深!关于S7-200中的I_BCD指令_百度知道
关于S7-200中的I_BCD指令
然后再用SEG显示七段数码管,因为我觉得不管什么数在PLC中应该都是以二进制的形式存在的吧。求大神告诉我1下,直接将C1加在SEG指令的IN上不可以吗,为什么一定要这样呢,比如说将计数器的当前值转换成BCD吗再赋值给中间寄存器一直对S7-200中的数据转换指令不是很理解,我想不通啊- -~虽然我还没试过
提问者采纳
%D%A哥们,你仅仅要移动4个字节:%D%A上面是以C7- 200的块传送指令为例子BMB。200的移动指令比较多,VB101? %D%A回答,32767到-32768%D%A追问,一个双字都包含多少个二进制位在来编程序,VB103的值2,双字对双字移,字对字移,VB100、PLC压入存储区的字节次序问题,存储区应该有FFFF这么大,1个字节,为什么用的是块传送呀。你首先一定要明白1个字,VB20,4,也就是10进制是65535(无符号的),有符号的自然是一半了,我还是不明白。(实在不懂就看一下编程手册,movd不行吗你的问题有两种可能1。W是字,VB102,
为什么VB后面的数字传送出去变了我编过一次西门子200的程序。但是不太清楚你问的是什么,PLC中字节序是高位在前、你可能在别处改变过VB100,执行后VB20-VB23中的数据被传送到VB100-VB103,还有存储的次序
我是想问为什么要特地将1个数通过转换指令转换为二进制再赋值,不是也有在编程的时候直接将1个十进制的数传送进寄存器的情况吗,比如我把&3&MOV进MB0,它不是直接自己变成二进制的了吗?
提问者评价
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁s7200中,为什么要给mov b指令赋初值啊 赋值的数字为什么啊_百度知道
s7200中,为什么要给mov b指令赋初值啊 赋值的数字为什么啊
望采纳。。,不同的程序根据不同的需要。。,给定的数据也都不一样这个赋值的数字都是根据需要给出的
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁PLC MOV_B 指令解释_百度知道
PLC MOV_B 指令解释
baidu?为什么检测的时候都用这种指令://e.jpg" />这两个代表什么具体实际的含义://e.baidu.jpg" esrc="/zhidao/pic/item/4b90f739beb0edb451f://a.baidu,怎么检测报警.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><a href="http.jpg" esrc="http://a.com/zhidao/wh%3D450%2C600/sign=87e8e80e1e4c510fae91ea1eb90f739beb0edb451f://e.baidu./zhidao/wh%3D450%2C600/sign=76f32e03e4fe/acd5fb5c9ea14cebf14?具体的不是说字节传送指令.hiphotos用S7-200编写立体车库时<a href="http.hiphotos?谢谢大神.hiphotos
提问者采纳
第二个图 我认为是VB14中保存的是错误码..第一个图明显报错了 字节传送指令的输出只能是 VB MB SB . 不能是SW
.,根据不同的错误码给用户&#47, 很多情况下都可能出错
谢谢师傅!我想再问一下16#08什么意思?MOV_B运行怎么样的过程?小白不懂莫怪!
MOV_B 就是赋值指令,往VB14中写入16#进制的08 B占1个字节 8位 16#08 也就是1000,你监测下v14.0--v14.7 ,哪个位被置1了
提问者评价
其他类似问题
为您推荐:
mov的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁西门子PLC指令MOV-B传送指令_百度知道
西门子PLC指令MOV-B传送指令
IN是AC2 OUT 200
是西门子的指令
我有更好的答案
out 不可能是200的
是不是写错了!
其他类似问题
为您推荐:
您可能关注的推广
西门子plc的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 初值定理 的文章

 

随机推荐