上升沿的困惑.docxVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
上升沿的困惑 **多日的雾霾在今天终于有所缓解,今天天气不错挺风 和日丽的,所以心情也格外不错。早早的来到公司,坐到自 己的工位上翻开电脑,登陆平台……一切准备工作就绪准 备开始迎接新一天case的挑战。 叮铃铃……。”喂。您好这里是西门子热线您需要咨询 什么技术问题。” 客户:“工程师您好。我想咨询一下关于S7-200 Modbus 通信的问题” 早晨第一个case是S7-200的Modbus通信,这个在我 们的Micro Win软件里面添加一个专用的Modbus指令库, 对应需要读取或者写入的地址,通过Done位的轮询就能实 现通信的功能。想到这里于是就对客户说 “您如果希望使用S7-200plc开展Modbus通信,可以 添加一个库文件,并且我们有相关的样例程序,您可以参考 一下J 客户说:“我已经查看过你们的样例程序了。但是对于 你们的样例程序有一些地方没有看懂,您能帮我解释一下吗”我说:“好的,您尽管说您没看懂的地方” 客户说「你们的Modbus主站样例程序大致分三个局部, 第一个网络是状态的位的复位 第二个局部是主站CTRL 功能块的使用第三局部是MSG指令的使用 CTRL和MSG指令时通过Done这个完成位来实现程序的 轮询的这个没错吧: 于是忙对客户说:“您说的都没错” 客户说:“那我就有一个疑问了。如果是使用Done问来 触发下一个网络开展轮询触发,那么是不是CTRL的Done位 来触发第一个MSG指令。然后第一个MSG指令触发第二个 MSG…….” 我说:“没错” 客户说:“但是你们样例程序的网络顺序可不是这样的 啊。你们样例的第一个网络是初始化复位操作,但是第二个 网络不是CTRL指令,而是CTRL指令的Done位通过上升沿 触发MSG使能端,第三个网络才是CTRL指令” 按照你刚刚给我描述的顺序关系不是应该先写CTRL指 令。再编写CRTL指令的Done位触发MSG使能端。然后编写 MSG指令……” (咋一听客户的描述没有问题。似乎按照他说的可能更 符合Modbus指令执行的逻辑关系,于是我就翻开了 Modbus 通信的样例程序看了起来,但是看了一会问题出现了) 我对客户说:“您按照您说的逻辑关系编过程序吗?程 序能正确执行吗? ” 客户说:“我还真的按照我自己的想法编写了一段程序, 但是确实没有成功完成数据的发送“ 我对客户说:“问题就出现在这个Done位触发下一个指 令的方式上。这个程序里是通过上升沿来触发下一个指令的 如果是按照您的那种方式编程,这个上升沿是不能被捕 捉到的。换句话说按照您说的那种方式编程,程序是不能顺 序执行的,执行到M0.0之后就结束了。单纯的查看程序不 直观,您可以按照我说的稍微修改一下这段程序。在上升沿 语句后面加上一个置位Q0. 0的操作。这样方便您在CPU上 和状态表中监控执行结果。比照一下这两种编程的结果您就 清楚了。” 之所以会出现运行结果的不同都是由于上升沿造成的, 按照客户描述的编程逻辑M0.0位会在第二个网络中被置位 为1当程序执行到第三个网络的时候需要有上升沿才会触发 MO. 1和Q0. 0的置位操作,但是由于M0. 0已经变为了 1无法 再捕捉到上升沿所以程序也就无法继续执行。相反如果是按 照样例程序中编写的那样。在第二个网络执行的时候M0.0 还是0.当执行到第三个网络的时候M0.0变为1,捕捉到上 升沿。因此程序可以继续顺序执行。

文档评论(0)

136****3519 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档