湖南嘉普云自动化设备有限公司

全国热线电话:

18390808297
联系我们CONTACT US
  • 联系:湖南嘉普云自动化设备有限公司
  • 邮箱:296915869@qq.com
  • 厂址:湖南省长沙市天心区暮云街道
相关文章Relevant Articles
相关新闻Relevant News
产品详情PRODUCT ARTICLE
首页 > 产品中心 > 西门子PLC > S7-300模块 > 西门子6ES79538LM310AA0
西门子6ES79538LM310AA0
产品名称:

西门子6ES79538LM310AA0

更新时间:

2021-11-23

产品描述: 西门子6ES79538LM310AA0
6ES7953-8LM31-0AA0
SIMATIC S7,微型存储卡 用于 S7-300/C7/ET 200, 3,3V Nflash,4 MByte

湖南嘉普云自动化设备有限公司

《销售态度》:质量保证、诚信服务、及时到位!
《销售宗旨》:为客户创造价值是我们永远追求的目标!
《服务说明》:现货配送至全国各地含税(16%)含运费!
《产品质量》:原装正品,*!
《产品优势》:专业销售 薄利多销 信誉好,口碑好,价格低,货期短,大量现货,服务周到!


一.简述:
软件冗余又称软冗余,和S7-400 H硬件冗余系统相对应,顾名思义是用户使用程序来完成 PLC 系统的冗余功能,可以应用于对主备系统切换时间为秒级的控制系统中,硬件平台一般是S7-300/400, 是Siemens 实现提高系统可用性的一种低成本解决方案,这种PLC软冗余方案已在国内外很多行业和项目中使用。而WinAC RXT 从版本2008起,也开始支持软冗余功能,其原理和编程方式与S7-300/400的软冗余方式基本相同。它不仅能有效提升系统的可用性,又可借助主流PC实现高性能多任务运算,同时具有良好的开放性,是一种高性价比的方案。


分别在两台PC中的OB35中实现冗余数据同步:

西门子6ES79538LL310AA0

添加相应的故障处理块:OB80, OB82,OB83,OB85,OB86,OB122等。在OB86中调用FC102“SWR_DIAG”

1.应用概述
SIMOTION通信函数_xsend与_xreceive适合SIMOTION之间通过MPI-MPI接口、PROFIBUS-PROFIBUS间的数据交换,通信数据大为200个字节,SIMOTION也可以通过调用通信函数_xsend与_xreceive实现与S7-300/400 PLC(在PLC中调用SFC65 X_SEND与SFC66 X-REV)MPI接口间的数据交换,由于受到PLC通信区的限制,大通信数据为64个字节。

西门子6ES79538LM310AA0

    图10: 参数赋值

    ADDRESS:
    结构体数据类型,结构体元素参考表3:

    表3 _xsend函数ADRESS参数结构体数据

     

    结构体元素名称数据类型单元
    deviceId元素 IDUSINT-
    remoteSubnetIdLength通信方subnet ID占用字节的长度USINT-
    remoteStaddrLength通信方站地址占用字节的长度USINT-
    nextStaddrLength路由器占用字节的长度USINT-
    remoteSubnetId 通信方subnet IDARRAY [0..5] OF USINT-
    remoteStaddr通信方站地址ARRAY [0..5] OF USINT-
    nextStaddr路由器地址ARRAY [0..5] OF USINT-

    deviceId:使用的接口,1表示D435 X126接口,2表示D435 X136接口,本例中选择2。
    remoteSubnetIdLength:预留参数,MPI通信中无意义,缺省为0,设置为0。

    remoteStaddrLength:MPI、PROFIBUS通信设置为1。

    nextStaddrLength:预留参数,MPI通信中无意义,,缺省为0,设置为0。

    remoteSubnetId:预留参数,MPI通信中无意义,缺省为0。

    remoteStaddr:数组类型,在remoteStaddr[0]中赋值通信方的MPI地址,其它元素无意义,本例中S7-300 MPI地址为4,可以使用MOVE(LAD)指令赋值。

    nextStaddr:预留参数,MPI通信中无意义,缺省为0。

    MESSAGEID:
    UDINT数据类型,定义发送报文的标识符,本例中定义为6,在PLC接收块参数REQ_ID可以读出。
    NEXTCOMMAND:
    枚举数据类型,元素中包括“IMMEDIATELY ”和“WHEN_COMMAND_DONE”,
    “IMMEDIATELY”:下一个命令同步执行。
    “WHEN_COMMAND_DONE”:命令执行或失败后执行下一个命令,异步执行。
    例子程序中使用“WHEN_COMMAND_DONE”。

    COMMANDID:
    COMMANDID数据类型,可以跟踪命令的状态。

    DATA:
    数组数据类型,发送数据缓存区,必须为200个字节。

    DATALENGTH:
    UDINT数据类型,发送数据的长度,本例中发送为10个字节。

    OUT:
    DINT数据类型,函数调用返回值,包含通信状态。

    在程序receive中调用_xreceive函数接收数据,与PLC编写方式相似,将接收函数_xreceive拖曳到LAD网络中,如图11所示:



    图11: _xreceive函数块

    调用_xreceive函数
    函数_xreceive的输入参数MESSAGEID、COMMANDID和NEXTCOMMAND与_xsend函数输入参数意义相同,发送与接收函数的参数MESSAGEID必须相同,本例中_xreceive输入参数定义的数据包标识符为8,与PLC发送块参数REQ_ID定义的标识符必须相同。
    _xreceive函数的输出变量 “OUT”为结构体数据类型,元素参考表4:

    表4 _xreceive函数OUT参数结构体数据

     

    结构体元素名称数据类型单元
    functionResult函数调用的返回值DINT-
    dataLength接收数据的长度(字节数)UDINT-
    data接收数据区ARRAY [0..199] OF BYTE-

    functionResult:
    函数调用的返回值,可以判断接收状态,数据类型为 DINT。
    dataLength:
    接收数据的长度(字节数),大长度为200个字节,数据类型为 UDINT。
    Data:
    数据接收区,大长度为200个字节,在编程中定义的接收区必须大于数据发送区,数据类型为数组。

    通信参数赋值完成之后,将整个程序进行编译,如果需要在线监控通信程序,必须在编译程序之前进行配置,如图12所示,点击程序单元,本例中为“MPI”,右键进入属性界面,点击菜单“Compiler”选择“Permit program status”选项,这样经过编译之后,程序可以在线监控。


    图12: 配置程序在线监控

    通信程序编写和编译完成后,将程序放置到D435的执行系统中调用(程序只有被调用才能执行),如图13所示:


    图13: 调用通信程序

    本例中将通信程序放置于“BackgroundTask”运行(循环运行)。将整个项目编译后,联机下传通信程序。

    4.2 PLC侧编程
    调用发送程序块
    PLC侧调用SFC65用于数据发送,发送程序参考图14程序:



    图14: PLC中调用发送程序

    SFC65的参考解释如下,
    REQ:
    发送请求,为1时发送。
    CONT:
    相当于SIMOTION发送函数_xsend 参数“COMMUNICATIONMODE”,为0时通信完成之后释放连接资源,为1时通信完成之后占用连接资源。
    DEST_ID:
    通信方的MPI地址,本例中SIMOTION的MPI地址为2。
    REQ_ID:
    相当于SIMOTION发送函数_xsend 参数“MESSAGEID”,定义发送报文的标识符,在接收块中除接收到数据外,本例中与函数_xreceive中参数MESSAGEID定义必须相同。
    SD :
    发送区,以指针的格式,本例中将DB1中DBB0 以后10个字节作为发送区,大为76个字节。
    RET_VAL:
    发送块返回值。
    BUSY :
    为1时,端口占用,发送中止。
    PLC侧调用发送块,在SIMOTION中需要调用函数_xreceive接收。

    调用接收程序块
    PLC侧调用SFC66用于接收数据,接收程序参考图15程序:


    图15: PLC中调用接收程序

    SFC65的参考解释如下,
    EN_DT:
    为1使能接收功能。
    RET_VAL :
    接收块返回值。
    REQ_ID:
    接收数据包的标识符,本例中接收SIMOTION _xsend函数MESSAGEID参数定义的报文的标识符6。在SIMOTION中,接收、发送函数MESSAGEID参数为输
    入参数,发送和接收的报文标识符必须提前定义,在PLC中发送块REQ_ID参数为输入参数,接收块REQ_ID参数为输出参数,识别接收数据包的标识符。
    NDA :
    接收到新的数据包时产生脉冲信号。
    RD:
    接收区,本例中接收SIMOTION发送的10个字节,并将接收的数据存储于DB2中DBB0以后的10个字节中。
    将PLC中的通信程序编译下传到PLC中,通信建立。


    5.状态监控
    在SCOUT联机状态中,点击程序单元如“MPI”,然后点击“Symbol browser”标签,可以监控“MPI”程序单元中定义的全局变量,如发送数据区、接收区等。如图16所示:


    图16: 监控SIMOTION侧通信变量

    在STEP7中打开变量监控表同样可以对数据发送区、接收区进行监控,如图17所示:


    图17: 监控PLC侧通信变量

    6.示例程序
    示例程序参考文档附件程序,名称为Mpitest.rar。(示例程序使用STEP7 V5.4和SCOUT V4.0编写)

     

     

    西门子6ES79538LM310AA0

                            相关产品RELATED PRODUCT
                            18390808272
                            地址:湖南省长沙市天心区暮云街道
                            Copyright© www.hunanjiapuyun.com 湖南嘉普云自动化设备有限公司

                            版权所有:湖南嘉普云自动化设备有限公司

                            备案号:湘ICP备18017785号-6 技术支持:化工仪器网