西门子S7 300与S7 200的DP通讯的疑问

单位有一个 315-2DP 的 CPU 需要通过 EM 277 与一台国产的触摸屏建立通讯,大致的工作原理是首先让触摸屏与S7 200建立通讯,然后再让S7 200 与 S7 300 建立 DP通讯,将S7 200的数据传输到S7 300的CPU。小弟经过啃了几天相关资料后,对S7 300 与 S7 200 的 DP通讯 有了一定的了解,但是始终有一个问题没有搞明白。                 

    资料上所举出的例子大多是单个数据的(1个W,或者1个B)传输,以8 Bytes Out / 8 Bytes In(即8字节输出 / 8字节输入)为例:S7 300侧的接收地址为PIB10~PIB17,发送地址为PQB10~PQB17,S7 200侧的接收地址为VB100~VB107,发送地址为VB108~VB115。则其数据传输的模式为:                 

    VB100 ←← PQB10        VB108 →→ PIB0                
       VB101 ←← PQB11        VB109 →→ PIB1              
       VB102 ←← PQB12        VB110 →→ PIB2                
       VB103 ←← PQB13        VB111 →→ PIB3                
       VB104 ←← PQB14        VB112 →→ PIB4                
       VB105 ←← PQB15        VB113 →→ PIB5                
       VB106 ←← PQB16        VB114 →→ PIB6                
       VB107 ←← PQB17        VB115 →→ PIB7                 

        这样就可以在S7 200中编写程序将数据赋值到S7 200的VB100~VB107区域,再将该区域的数据传输到S7 300侧。对于数据较少的程序来说,8 Bytes可以满足需要了,比方说:要把S7 200的MB18的值传送给S7 300的MB18,应在S7 200的程序中,用MOVB指令将MB18传送到VB108~VB115的某一个字节,例如VB112,通过通讯,VB112的值传送给了S7 300的 IB4,再在S7 300的程序中将 IB4 的值传送给MB18。                

       也就是说,S7 200中的数据必须与发送区域VB108~VB115的某一个字节(或是字)一一对应,才能保证准确地发送到S7 300的接收区域。假如S7 200中只有8个字节的数据需要传输,这样做当然可以,但是如果所需传输的数据很多,这时应该怎么办呢?                    

      我们所用的触摸屏上面需要组态近50个输入框,输入的数据都是用字WORD来存储的,也就是说有50个W的数据需要传送到S7 300,且必须和S7 300里的DB数据相一一对应。可是EM 277的通讯方式里面最大的就是32W IN / 32W OUT的,即32个字的输入 / 32个字的输出。假如S7 200的发送区域是VW1032~VW1063,也只能保证32个W的数据一一对应的传输,剩余的数据应该怎么传输呢?像我们这样的情况应该如何处理呢?

最佳答案

1、你的理解是正确的。S7 300与S7 200(EM277)的DP通讯是通过地址映射来实现数据交换的。可以参考:
见《西门子S7-200与S7-300进行PROFIBUS通信图解》连接:
http://www.gongkong001.com/News/4934.html
《西门子S7-200与S7-300之间的通讯》下载:
http://www.ad.siemens.com.cn/download/SearchResult.aspx?searchText=A0148

http://space.cechina.cn/infosharedownload.aspx?id=366
2、如果所需传输的数据很多,这时应该怎么办呢?      
这时要应用EM277的分时分批传送功能了,详见:
    <EM277数据区中设置标志位,分时分批传送>
http://plc.jdzj.com/article/2010-2-5/15555-1.htm

http://www.gongkong.com/webpage/solutions/200901/2009011614060900001.htm

提问者对于答案的评价:
非常感谢!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc165036.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月10日 上午11:57
下一篇 2017年6月10日 上午11:58

相关推荐

  • TP277辐射超标

    使用TP277屏在做EMC向外辐射时超标,该怎么解决? 最佳答案 辐射解决方法:无非就是接地、屏蔽、滤波。接地线尽可能短,接地面积越大越好。辐射干扰信号是否从一些孔洞散发出来,注意…

    自动化系统综合 2020年11月1日
  • 比值控制问题 !急!!急!!

    请问有没有一种功能块能够实现一个输入两个输出,而这两个输出是实行比值控制的,随着输入值的变化一个输出值增大的同时另一个输出就会减小;一个输入值的减小另一个输入值就会增大,两个输出是…

    自动化系统综合 2020年11月1日
  • S7-300 CP343-1 V1.2

    WIN7 64  系统  STEP7 V5.5 SP2+HF1  K5.5.2.1&nbs…

    自动化系统综合 2017年6月13日
  • 如何把1到10递增写入寄存器VW100

    不用外界模拟量,就一台CPU222 PLC一台,从1不断写入VW100,一直到10,梯形图怎么写啊,不用模拟量能实现吗? 问题补充:你好,工控少年的程序可以实现,但是我有…

    自动化系统综合 2020年11月1日
  • S7与WINCCFLEXIBLE

    我的CPU是315-2DP的,现在有一个方案想咨询一下各位大大的意见; 系统点数很多,且分得很散,准备用EM200M,三个作为从站。它们跟主站的距离在100M到300M内…

    自动化系统综合 2020年11月1日
  • PROTOOL中如何测试项目?

    我的系统是中文XP-SP2,第一次使用和安装PROTOOL CS和RT V60 AISA。当前是新建个项目并存储和编译后,“文件–测试–启动运行系…

    自动化系统综合 2021年7月5日
  • 热电偶整定问题

    我的热电偶输出的是mV信号,是不是双极性不知道,但是我输出的工程范围是-100到1000度,请教如果是双极性时0度的时候输入值是零吗?要怎么整定直接用105怎么结果是错的非常的大 …

    自动化系统综合 2020年10月31日
  • 适配器(RS232)6ES7 972-0CA23-0XA0

    PCAdapter(RS232) 6ES7 972-0CA23-0XA0是不是带光电隔离的,如果不带此功能,加什么样的RS232光电隔离器,不加光电隔离器是否会…

    自动化系统综合 2020年10月31日
  • 400和梅尔绝对值编码器 通讯

    用400CPU和德国梅尔的 绝对值编码器DP通讯,通讯状态都是正常的,也可以读出数值,但是在现场转动编码器的时候其中一个编码器数值是不变化或者是变化很少。但把这个编码器拿…

    自动化系统综合 2020年11月1日
  • 铁淦氧磁环限制di/dt的工作原理是什么?

    为什么说它可以限制电流变化率?电流过大,磁环会饱和,但是饱和是饱和,怎么可以限制过电流呢? 最佳答案 磁环相当于电感的铁芯,被套住的导线相当于电感的半匝线圈,整体就是电感 提问者对…

    自动化系统综合 2020年11月1日