上海朕锌电气设备有限公司

免费会员·8年
您现在的位置: 上海朕锌电气设备有限公司>>西门子PLC>>S7-300>> 6ES73225FF000AB0西门子模块6ES73225FF000AB0
6ES73225FF000AB0西门子模块6ES73225FF000AB0
参考价: 面议
具体成交价以合同协议为准
  • 6ES73225FF000AB0 产品型号
  • 西门子/SIEMENS 品牌
  • 代理商 厂商性质
  • 上海市 所在地

访问次数:207更新时间:2017-06-26 11:21:27

联系我们时请说明是智能制造网上看到的信息,谢谢!
免费会员·8年
人:
郑鑫

扫一扫访问手机商铺

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

西门子模块6ES73225FF000AB0

6ES7322-5FF00-0AB0

SIMATIC S7-300,数字输出 SM 322,电位隔离, 8 DA,AC 120/230V,2A, mit 单组/通道 和 auswählbarem 故障模式, 1x 40极

SIEMENS西门子上海朕锌电气设备有限公司

:郑鑫 :

www.zhenxindianqi。。cn

工作 (同步)

1. 概述
在现场应用中,很多仪表和设备仅支持Modbus RTU的通讯协议,第三方仪表可以做Modbus主站或从站,西门子的通讯模块CP341 / CP441-2 通过Dongle(硬件狗)可以扩展该协议,S7-200 集成的口可以支持自由口通讯,通过指令库也可以方便的实现Modbus RTU通讯。本文以S7-200作为Modbus 主站,CP341作为Modbus 从站,实现Modbus RTU通讯,阐述两者在通讯方面的设置和注意事项。


2. 软件环境

2.1 STEP7 V5.4 SP4
用于编写 S7-300/400程序,此软件需要从西门子购买,本文档中的300的程序是使用Step7 V5.4 SP4的软件编写。

2.2 CP PTP Param V5.1 SP11
串行通讯模板的驱动程序,安装此驱动后才能对PtP模板进行参数配置,并在Step7中集成通讯编程需要使用的功能块。此驱动随购买模板一起提供,也可以从以下的链接下载27013524

2.3 CP PTP Modbus Slave V3.1 SP7
CP341或CP441-2用于Modbus从站时,需要安装此驱动协议,但安装之前必须先安装PtP Driver,此驱动可以在购买Modbus Dongle时选择购买,也可以从以下的链接下载27774276

2.4 STEP7 Micro/WIN V4.0 SP6
用于S7-200编程的软件,本文档中的200的程序是使用Step7 Micro/win 的软件编写。此软件可以从西门子下载中心免费下载,也可以从以下的链接下载。
http://www.ad.siemens.com.cn/download  自动化系统>>S7-200>>软件,文档编号S0002。

2.5 Toolbox_V32-STEP 7-Micro WIN 32 Instruction Library
S7-200实现Modbus RTU功能,可以使用Modbus的指令库,要使用西门子的标准指令库,必须先安装指令库的软件包 Instruction Library,安装后,可以在Step 7-Micro/WIN软件的库中找到Modbus相关的指令,该软件包可以从以下的链接下载。http://www.ad.siemens.com.cn/download  自动化系统>>S7-200>>软件,文档编号S0010。


3. 硬件列表和接线

3.1 硬件列表

S7-300从站CPU315-2DP6ES7 315-2AG10-0AB0
CP341 RS422/4856ES7 341-1CH01-0AE0
Dongle6ES7 870-1AB01-0YA0
PC 适配器(USB)6ES7 972-0CB20-0XA0
S7-200主站CPU 224XP6ES7 214-2BD23-0XB0

表1 硬件设备

3.2 硬件接线

3.2.1 接口定义
S7-200的通讯口为RS485物理口(9针口),CP341是RS422/485的接口类型(15针口),两种设备的接口引脚的示意图如下所示,更详细的信息可以参考CP341及S7-200通信接口的手册。


图1 S7-200 CPU通信口引脚定义

 


图2 S7-300 CP341 RS422/485 通讯口引脚定义

3.2.2 接线示意图


图3 硬件结构和接线示意图


4. 组态设置和编程

4.1 S7-200做Modbus主站的设置
S7-200 CPU上的通信口在电气上是标准的RS-485半双工串行通信口,此串行字符通信的格式:1个起始位;7/8位数据位;1位奇/偶/无校验;1停止位。通信波特率可以设置为1200、2400、4800、9600、19200、38400、57600或112500,符合这些格式的串行通讯设备可以和S7-200进行自由口通讯,Modbus RTU指令库就是使用自由口编程实现的。

4.1.1 Modbus RTU主站库

使用Modbus 主站指令库时需要注意的几点:

  • 需要S7-200的编程软件是 Micro/WIN V4.0 SP5及以上版本;
  • Modbus RTU 主站库对CPU的版本有要求,CPU 的版本必须为 2.00 或者 2.01(即订货号为 6ES721*-***23-0BA*);
  • Modbus主站可读/写的zui大数据量为120个字(指每一个 MBUS_MSG 指令);
  • Modbus 主站库支持Port0和Port1(从站库只支持Port0口),本例中用Port0;
  • 使用Modbus 库时必须对库存储区进行分配,见下图设置,而且分配的空间不能和程序中其它空间冲突,否则编译调用会报错。


图4 库存储区设置

  • Modbus主站库支持的功能码和地址对应关系:
     
    Modbus 地址读 / 写Modbus 从站须支持的功能
    00001~09999功能1:读输出点
      数字量输出功能5:写单个输出点
     功能15:写多个输出点
    10001~19999功能2:读输入点
      数字量输入
    30001~39999功能4:读输入寄存器
      输入寄存器
    40001~49999功能3:读保持寄存器
      保持寄存器功能6:写单个寄存器
     功能16:写多个寄存器

    表2需要从站支持的功能

4.1.2 S7-200 Modbus主站编程
编程时,使用SM0.0调用MBUS_CTRL完成主站的参数初始化,详细见下表,参数的说明也可以从子程序的局部变量表中找到。


图5 Modbus RTU 主站初始化

图中各参数含义如下

编号符号/含义说                   明
aEN / 使能必须保证每一扫描周期都被使能(使用SM0.0)。
bMode / 模式为1时使能为Modbus协议;为0时恢复为PPI协议。
cBaud / 波特率支持的通讯波特率为1200,2400,4800,9600,19200,38400,57600,115200。
dParity / 校验校验方式选择:0=无校验;1=奇校验,2=偶校验。
eTimeout / 超时主站等待从站响应的时间,以毫秒为单位,典型的设置值为 1000毫秒,允许设置的范围为1-32767。这个值必须设置足够大以保证从站有时间响应。
fDone / 完成位初始化完成,此位会自动置1。
gError / 错误位初始化错误代码。

表3

调用 Modbus RTU 主站读写子程序MBUS_MSG,发送一个Modbus 请求。


图6 调用Modbus RTU 主站读写子程序

图中各参数含义如下

编号符号/含义说                   明
aEN / 使能同一时刻只能有一个读写功能使能。
bFirst / 读写请求位 每一个新的读写请求必须使用脉冲触发。
cSlave / 从站地址可选择的范围1–247。
dRW / 读写操作位0=读, 1=写。
eAddr / 读写从站的数据地址选择读写的数据类型:
00001 至 0xxxx - 开关量输出
10001 至 1xxxx - 开关量输入
30001 至 3xxxx - 模拟量输入
40001 至 4xxxx - 保持寄存器。
fCount / 数据的个数通讯的数据个数(位或字的个数)。
gDaptPtr / 数据指针如果是读指令,读回的数据放到这个数据区中;
如果是写指令,要写出的数据放到这个数据区中。
hDone / 完成位读写功能完成位。
iError / 错误代码只有在Done位为1时,错误代码才有效。

表4

从上图中可见,S7-200作为Modbus RTU主站,波特率9.6Kb/s,偶校验,连接从站的站地址是3,数据存储区为VB2000开始的区域。

4.2 CP341 做Modbus 从站的硬件组态

4.2.1 硬件组态


图7 S7-300侧硬件组态

4.2.2 设置Modbus参数


图8 消息桢字符结构

按照上述操作设置参数,从上图可以看出,本例中的传输波特率9.6Kb/s,1位起始位,8位数据位,偶校验位,1位停止位,从站站地址是3,主从通讯设备的字符帧格式和波特率等参数设置需要*。


图9 RS422/485 接口组态

RS422/485接口只能一个有效,接口的选择只需要组态而不需要在硬件上短接。

4.2.3 Modbus驱动的下载
当配置好Modbus通信的参数后,保存前需要向CP341下载Modbus Slave的驱动,一旦下载完成后无需再次下载。
需要注意的是,在下载驱动时(可以在无Dongle情况下下载),需要将CPU停机,然后下载,操作过程如下所示。


图10 下载Dongle时,需要CPU停机

 


图11 从站驱动下载后结果

4.2.4 CP341做Modbus从站的编程
从Step7 软件下的EXAMPLE目录中,找到项目名“zXX21_05_PtP_Com_MODSL”的项目,打开,然后将Modbus通讯模块FB80传递到用户项目中,打开路径如下所示。


图12 Modbus Slave 例程打开路径

OB1中调用FB80编程如下:


图13 FB80程序块调用

CP卡初始化正常后,CP_START,CP_START_FM和CP_START_OK为1信号,否则CP_START_ERROR为1,同时可以从ERROR_NR察看错误信息,也可以在硬件组态中在线后的CP341的诊断缓冲区察看详细的错误信息,错误信息对照和处理方式可以参考
《S7-300以用于PtP CP Modbus 协议RTU格式S7的可装载驱动程序为从站》的手册。

FB80的各参数含义如下

LADDR硬件组态中CP341的起始逻辑地址,本例中为256
START_TIMER初始化超时定时器,本例中为T120
START_TIME初始化定时器时间,本例中为5S
OB_MASKI/O访问错误屏蔽位,本例中为True(I/O访问错误已屏蔽)
CP_STARTFB初始化使能位,本例中为M0.0
CP_START_FMCP_START 初始化的上升沿位,本例中为M0.1
CP_NDR从CP卡写操作位,本例中为m0.2
CP_START_OK初始化完成且无错误,本例中为M0.3
CP_START_ERROR初始化完成,但有错误,本例中为M0.4
ERROR_NR错误号,本例中为MW2
ERROR_INFO错误信息,本例中为MW4

表5


5. 通讯测试
Modbus RTU格式通信协议是以主从的方式进行数据传输的,在传输的过程中主站是主动方,即主站发送数据请求报文到从站,从站返回响应报文。Modbus 系统间的数据交换是通过功能码来控制的,以下对现场常用的功能码进行分类测试,关于功能码的详细信息请参考手册。

5.1 FC01/05/15功能码
CP341从站的通讯区域配置


图14 FC01/05/15 参数组态界面

FC01、FC05、FC15对应的数据区为位输出,数据的传递以位为单位,可以读写操作,用户地址区为0xxxx,Modbus地址在信息传递中从0开始。如上图,左边为信息传递地址(地址区不能冲突),右边对应的是S7-300的数据区。例如左边信息传递地址从0 ~ 7对应用户地址区为00001 ~ 00008,对应S7-300的M10.0 ~ M10.7,并且以此为例说明FC01功能码的通讯。
S7-200主站程序调用


图15 功能码FC01使用

S7-200主站,用功能码FC01读取从站8点数字量输出,接收的数据存放在VB2000开始的区域,测试截图结果如下。


图16 FC01功能码数据交换

5.2 FC02功能码
CP341从站的通讯区域配置


图17 FC02 参数组态界面

FC02对应的数据区为位输出,数据的传递以位为单位,只读操作,用户地址区为1xxxx,Modbus地址在信息传递中从0开始,如上图,左边为信息传递地址(地址区不能冲突),右边对应的是S7-300的数据区。例如左边信息传递地址从0 ~ 7对应用户地址区为10001 ~ 10008,对应S7-300的M20.0 ~ M20.7,并且以此为例说明FC02功能码的通讯。
S7-200主站程序调用


图18 功能码FC02使用

S7-200主站,用功能码FC02读取从站8点数字量输入,接收的数据存放在VB2000开始的区域,测试截图结果如下。


图19 FC02功能码数据交换

5.3 FC03/06/16 功能码
CP341从站的通讯区域配置


图20 FC03/06/16参数组态界面

FC03/06/16 对应的数据区为寄存器,数据的传递以字为单位,可以读写操作,用户地址区为4xxxx,Modbus地址在信息传递中从0开始。如上图,左边为信息传递地址,右边对应的是S7-300的数据区,左边传输地址不可改,右边只对应一个数据区。例如用户地址
区为40001 ~ 40004,对应S7-300数据区为DB1.DBW0 ~ DB1.DBW6,并且以此为例说明
FC03功能码的通讯。
S7-200主站程序调用


图21功能码FC03使用

S7-200主站,用功能码FC03读取从站4个字寄存器,接收的数据存放在VB2000开始的区域,测试截图结果如下。

西门子模块6ES73225FF000AB0
图22 FC03功能码数据交换


5.4 FC04 功能码
CP341从站的通讯区域配置


图23 FC04参数组态界面

FC04对应的数据区为寄存器输入,数据的传递也以字为单位,只读操作,用户地址区3xxxx,Modbus地址在信息传送中从0开始。如上图,左边为信息传递地址,右边对应的是S7-300的数据区,左边传输地址不可改,右边只对应一个数据区。例如用户地址区为30001 ~ 30004,对应S7-300数据区为DB1.DBW0 ~ DB1.DBW6,并且以此为例说明FC04功能码的通讯。
S7-200主站程序调用


图24功能码FC04使用

S7-200主站,用功能码FC04读取从站4个字输入寄存器,接收的数据存放在VB2000开始的区域,测试截图结果如下。


图25 FC04功能码数据交换

5.5 Limits 栏


图26 Limits 参数组态界面

对于写功能码FC05、06、15、16,可以禁用或限制访问相关S7-300存储区,即使用这些功能码时,S7-300存储区需要在设定的zui小和zui大的范围之间,如果访问的区域超出这个范围,则访问会被拒绝,同时输出报错误信息。


6. 总结
本文档以S7-200为主站和CP341为从站简单介绍了Modbus RTU通讯,关于通讯的组态设置,编程以及常用功能码的使用,其具体的使用可以作为西门子串行通讯模块与第三方的仪表、设备等进行串行通信的参考。

1 概述
S7-1200 与 S7-300 之间的以太网通信方式比较多,可以采用ISO on TCP、TCP和 S7 的方式进行通信。在S7-1200 CPU 中采用ISO on TCP和TCP这两种协议进行通信所使用的指令是相同的,都使用 T-block ( TSEND_C, TRCV_C, TCON, TDISCON, TSEN, TRCV ) 指令编程。S7-300 CPU一侧如果使用的是CPU集成的PN接口,连接不在STEP7的NetPro中建立连接,而是使用西门子提供的OPEN IE 的方式来实现。
本文主要介绍了如何实现在S7-1200 和S7-300 CPU集成PN口之间的ISO on TCP通信,包括通信的基本步骤、配置及编程等内容。具体的实现方法有多种,比如在S7-1200中可以使用不带连接的通信指令(TCON, TDISCON, TSEN, TRCV),也可以使用带连接的通信指令(TSEND_C, TRCV_C);在S7-300中可以采用功能块编程的方式来实现,也可以使用Open Communication Wizard工具(OPEN IE向导)的方式来建立OPEN IE的通信。
为了方便理解,本文在S7-1200中使用不带连接的通信指令TCON, TDISCON, TSEN, TRCV,在S7-300侧通过功能块编程的方式来实现。
关于S7-1200和S7-300 OPEN IE通信的文档可以登录西门子自动化与驱动集团的下载中心,:http://www.ad.siemens.com.cn/download/ ,根据如表1提供的文档编号搜索并下载相关文档。

文档编号中文标题
A0426西门子 S7-1200 PLC 技术参考Version 1.5
A0416S7-1200与S7-300 的以太网TCP 及ISO on TCP通信
A0421如何实现两个S7-1200 CPU之间的以太网通信
A0415通过S7协议实现S7-1200 与S7-300的通信
A0414S7-1200基本以太网通信使用指南
A0284使用西门子PLC集成的PN口实现S5 兼容通信使用入门
A0345使用 Open Communication Wizard 建立开放式 ISO on TCP 通信
A0346使用 Open Communication Wizard 建立开放式 UDP 通信
A0347使用 Open Communication Wizard 建立开放式 TCP 通信
A0344S7-300和S7-400集成PN口的S7通信
A0334PN CPU/CP的开放式通讯-Open IE

表1 下载中心文档列表

2 软硬件及所要完成的通信任务

2.1硬件设备

实验的硬件设备:
1、S7-1200 CPU,CPU1212 AC/DC/RLY(6ES7 212-1BD30-0XB0)
2、S7-300 PN CPU,CPU317-2PN/DP(6ES7 317-2EH13-0AB0 V2.6.7)
3、PC机(带以太网卡)
4、SCALANCE X216交换机,S7-1200、S7-300和PC通过交换机互连起来
5、TP以太网电缆

2.2 软件环境

1、STEP7 Basic V10.5 SP2
2、STEP7 V5.4 SP5
3、通信所需的功能块,请参见附件提供的例程 ”Sample_1 ( 50 KB ) ” 或参考下载中心文档:《A0284 使用西门子PLC集成的PN口实现S5 兼容通信使用入门》提供的程序。下载链接:80490650

2.3 所要完成的通信任务
本例中所要完成的通信任务定义为:
1、 将S7-1200的发送数据块DB3里的8个字节数据发送到S7-300的DB3中。
2、 将S7-300 DB3里接收到的8个字节数据再发送到S7-1200的接收数据块DB4中。


3 S7-1200 CPU的组态编程

3.1创建新项目

1、打开STEP 7 Basic 软件并新建项目
在STEP 7 Basic 的 “Portal View”中选择“Create new project”创建一个新项目,项目名称为“GS_ISO”。


2、添加硬件并命名PLC
然后进入 “Project view”,在“Project tree” 下双击 “Add new device”,在对话框中选择所使用的S7-1200 CPU(6ES7 212-1BD30-0XB0)添加到机架上,设备名为 PLC_1,如图1所示。


图1 添加新的PLC站

为了编程方便,我们使用 CPU 属性中定义的时钟位,定义方法如下:
在“Project tree> PLC_1 > Device configuration” 中,选中 CPU ,然后在下面的属性窗口中,“Properties > System and clock memory” 下,将系统位定义在MB1,时钟位定义在MB0,如图2所示。程序中我们主要使用 M0.3,它是以2Hz 的速率在0和1之间切换的一个位,可以使用它去自动激活发送任务。


图2 系统和时钟存储器

3、为 S7-1200 CPU的PROFINET 通信口分配以太网地址
在 “Device View”中点击 CPU 上代表PROFINET 通信口的绿色小方块,在下方会出现PROFINET 接口的属性,在 “Ethernet addresses”下分配IP 地址为 192.168.0.2 ,子网掩码为255.255.255.0,如图3所示。


图3为 S7-1200 CPU的PROFINET 接口分配IP地址

3.2调用并配置通信指令

1、在 PLC_1 的 OB1 中调用 “TCON”通信指令
进入“Project tree > PLC_1 > Program blocks > OB1” 主程序中,从右侧窗口 “Instructions > Extended Instructions > Communications” 下调用 “TCON” 指令,并选择 “Single Instance” 生成背景 DB块,如图4所示。


图4 调用TCON指令

2、定义PLC_1 的 “TCON” 连接参数
PLC_1 的 TCON 指令的连接参数需要在指令下方的属性窗口“Properties > Configuration > Connection parameter”中设置,如图5所示。

连接参数说明:

End point

:选择通信伙伴,这里选择“unspecified”

Address

:通信伙伴S7-300站的IP地址“192.168.0.3”

Connection type

:选择通信协议为ISO on TCP

Connection ID

:连接的地址 ID 号,这个 ID 号在后面的编程里会用到

Connection data

:创建连接时,系统会自动生成本地的连接 DB 块,所有的连 接数据都会存在这个 DB 块中。

                                 

:选择本地 PLC_1作为主动连接,S7-300 CPU作为被动连接

Address details

:设定 TSAP 地址这里本地设置成“PLC_1”, TSAP ID自动为“50.4C.43.5F.31”,伙伴方设置成不设置TSAP(ASCII),设置TSAP ID 为“E0.02.50.4C.43.5F.31”。


图5 “TCON” 指令的连接参数

3、分配 “TCON” 的块参数
在指令下方的属性窗口“Properties > Configuration > block parameter”中设置,可以根据需要自己为“TCON” 块相应的输入输出参数。好参数的块,如图6所示。其中M8.0作为启动连接的触发位,连接ID = 1与连接参数里面的设置相同。


图6 “TCON” 的块参数

4、在 PLC_1 的 OB1 中调用 “TSEND” 发送通信指令
首先创建一个发送数据块,通过 “Project tree > PLC_1 > Program blocks > Add new block”,选择 “Data block” 创建 DB 块,选择寻址,点击“OK”键,如图7所示。


图7 创建一个发送数据块DB3

打开创建的发送数据块,在数据块中定义发送数据区为 8个字节的数组,如图8所示。


图8 创建发送数据区

然后在OB1 中调用“TSEND”发送通信指令,并为“TSEND”参数。使用M0.3( 2Hz 的时钟脉冲)上升沿激活发送任务,发送数据区为P# DB3.DBX0.0 BYTE 8,连接 ID = 1与连接参数里面的设置相同,发送长度LEN=8。分配好参数的“TSEND”块如图9所示。


图9 调用“TSEND”发送通信块

5、在 PLC_1 的 OB1 中调用“TRCV”接收通信指令
同样,先创建一个接收数据块DB4 ,如图10所示。“TRCV”接收通信指令的调用方法与“TSEND” 发送通信指令的调用方法相同,M8.1作为接收指令的使能位,如图11所示。


图10创建接收数据区

 


图11 调用“TRCV”接收通信块

6、在 PLC_1 的 OB1 中调用 “TDISCON”通信指令
zui后,为了断开通信链接,我们需要调用“TDISCON”通信指令,如图12所示。


图12 调用“TDISCON”通信块

3.3下载程序
至此,S7-1200侧的组态和编程都已经完成,可以在项目编译无错误后,直接下载到S7-1200 CPU中,并启动CPU的运行。


4 S7-300 CPU的组态编程
S7-300带PN接口的CPU支持ISO on TCP通信功能,通过该集成以太网接口组态ISO on TCP通信时,只能使用开放式通信的功能块,这些的功能块可以在STEP7 “ 通讯块”的 “标准库 ”中找到,如图13所示。


图13 S7-300 CPU通信指令库

库中提供了下列通信功能块:
´> FB 65 "TCON",用于建立连接,连接时需要UDT65来提供参数
> FB 66 "TDISCON",用于终止连接
> FB 63 "TSEND",用于发送数据到S7站点、S5站点、PC站或者第三方设备
> FB 64 "TRCV" 用于从S7站点、S5站点、PC站或者第三方设备接收数据

要通过CPU 的 集成PN 接口实现开放的ISO on TCP通信,不能在Netpro网络组态中直接建立连接,必须通过程序每个连接的参数。用于通信的FB标准功能块,请参见附件提供的例程 ”Sample_1 ( 50 KB ) ” 或参考下载中心文档《A0284 使用西门子PLC集成的PN口实现S5 兼容通信使用入门》提供的例程。下载链接:80490650

从附件提供的例程 ”Sample_1 ( 50 KB ) ” 中将把需要的程序块拷贝到新建的项目中,包括:
> UDT 65 "TCON_PAR",存放用户通信参数
> FB420 "SET_ISO_ENDPOINT" ,用于修改UDT65内通信对象参数
> FC21, 被FB420调用
随后,使用通信功能块 FB65 "TCON"、FB66 "TDISCON"、FB63 "TSEND" 和 FB64 "TRCV" 完成程序的编写。

4.1创建新项目

1、打开STEP7,新建一个项目
2、在项目中插入一个SIMATIC 300的站
3、组态硬件,插入一个CPU317-2PN/DP的CPU,并为PN接口分配IP地址“192.168.0.3”,如图14所示。同时,在CPU的“Cycle/Clock Memory”属性页中MB0为时钟存储器,在程序中可以使用M0.3(2Hz 的时钟脉冲)去自动激活发送任务,如图15所示。


图14为PN接口分配IP地址

 


图15设置时钟存储器字节

4.2编写通信程序

1、从样例程序中拷贝通信所需的块
从附件提供的sample_1 ( 50 KB ) 例程中把需要的FB420、FC21与UDT65程序块拷贝到新创建的项目中,如图16所示。


图 16

2、生成数据块
在程序中创建一个DB块,块号不限(本例为DB101),在块中建立变量DB_VAR,类型为UDT65,如图17所示。


图17

3、生成并调用FB块
首成一个FB块(本例为FB400),在FB400静态变量区建立一个结构“T_TSAP“,包含如下变量,并为变量分配初始值,如图18所示。
1) LOC_RACK_SLOT (BYTE)= B#16#2 表示有两个前导字符 0xE0 (CPU31x-2PN/DP 或者 CPU319-3PN/DP规定)和 0x02(CPU槽号)
2) LOC_TSAP(STRING14)= 本地用户定义的ASCII字符'PLC_1' (注意要与S7-1200侧设置保持*)。
3) REM_RACK_SLOT(BYTE)= B#16#0 不使用两个前导符。
4) REM_TSAP (STRING16)= 远程用户定义的ASCII字符'PLC_1' (注意要与S7-1200侧设置保持*)。


图18

然后在生成的FB400中调用FB420,如图19所示。


图19

其中参数的含义如下:
1)ID: 连接ID,与S7-1200里的设置保持*
2)DEV_ID:用于本PLC型号(注意不是通信对方)
DEV_ID = B#16#1本PLC型号为 IM151-8 PN/DP CPU
DEV_ID = B#16#2本PLC型号为CPU31x-2PN/DP或IM154-8 CPU
DEV_ID = B#16#3本PLC型号为CPU319-3PN/DP
DEV_ID = B#16#5本PLC型号为CPU41x-3PN/DP
3)ACTIVE: 主动或是被动建立连接,通信双方必须一个主动,一个被动,本例中S7-300侧为被动方。
4)T_TSAP: 静态变量区的结构变量,用于ISO ON TCP 通信的TSAP地址
5)IP_ADDR1 ... IP_ADDR4: 通信伙伴的IP地址,即S7-1200的IP地址192.168.0.2
6)CON_DB: 用UDT65生成的变量,即DB101

4、在OB1中调用发送和接收功能块
在OB1中先调用FB400功能块,为其背景数据块DB400,如图20所示。


图20

然后再在OB1中依次调用通信功能块FB65、FB64、FB63、FB66。其中发送和接收功能块FB64、FB63的数据区都为DB3,建立DB3如图21所示。关于块的使用请参考STEP7的在线帮助或相关文档说明。


图21

FB65 “TCON”,建立连接功能块,如图22所示。通过输入参数 "REQ"一个上升沿来建立连接。 “ID” 为连接ID,“CONNECT” 参数填写用 UDT65 生成的变量, 连接建立后会一直保持,直到调用FB66 "TDISCON" 断开连接、CPU停止或者断电。其中CONNECT为通过UDT65生成的DB块,即DB101, ID = 1。通过M8.0启动作业,执行连接的建立。


图22

FB64 “TRCV”,接收功能块,如图23所示。"TRECV" EN_R始终为TRUE, ID 填写连接ID,”DATA” 填写接收数据区,输出参数 "NDR" 用于表示新的数据已经收到,输出参数 "LEN" 表示接收的数据长度。本例中连接ID = 1。DB3作为接收数据块,接收数据的字节长度为8,接收作业通过M8.1使能。


图23

FB63 “TSEND”,发送功能块,如图24所示。连接ID = 1。DB3为发送数据块,发送字节长度为8,发送作业通过M0.3触发。"TSEND" 发送请求依靠输入参数"REQ"的上升沿来实现,如果“BUSY”位为true时不要触发"REQ"。输出参数 "DONE", "ERROR" 和 "STATUS" 用于评估工作的情况。


图24

FB66 “TDISCON”,取消连接功能块,如图25所示。可以根据需要取消ID=W#16#1的连接,作业通过M8.2使能。


图25

4.3下载程序
S7-300侧的组态和编程都完成后,直接下载到S7-300 CPU中,并启动CPU的运行。


5 监控通信结果
对S7-1200和S7-300都组态和编程后,下载所有组态及程序并搭建好网络后,首先在在S7-1200中将M8.0置位为1,然后再在S7-300中将M8.0置位为1,两个站的“TCON” 被激活,建立两个站之间的ISO on TCP连接。
连接正常建立后,即可以进行数据的交换。在S7-1200和S7-300站中将 ”TRCV” 功能块的EN_R置位为1,使能接收,监控通信结果如图26所示。
通过监控结果可以看到,S7-1200中发送数据块DB3的8个字节数据被发送到S7-300站的DB3中,同时,S7-300的DB3中接收到的数据又被发送到S7-1200的接收数据块DB4中。


图26 在线监控通信结果

电源模块    
6ES7 407-0DA02-0AA0    电源模块(4A)
6ES7 407-0KA02-0AA0    电源模块(10A)
6ES7 407-0KR02-0AA0    电源模块(10A)冗余
6ES7 407-0RA02-0AA0    电源模块(20A)
6ES7 405-0DA02-0AA0    电源模块(4A)
6ES7 405-0KA02-0AA0    电源模块(10A)
6ES7 405-0RA01-0AA0    电源模块(20A)
6ES7 971-0BA00    备用电池
CPU    
6ES7 412-3HJ14-0AB0    CPU 412-3H; 512KB程序内存/256KB数据内存
6ES7 414-4HM14-0AB0    CPU 414-4H; 冗余热备CPU 2.8 MB RAM
6ES7 417-4HT14-0AB0    CPU 417-4H; 冗余热备CPU 30 MB RAM
6ES7 400-0HR00-4AB0    412H 系统套件包括 2 个CPU、1个H型*机架、2个电源、2个1M 存储卡、4个

同步模块、2根同步电缆,以及4个备用电池(PS407 10A)
6ES7 400-0HR50-4AB0    412H 系统套件包括 2 个CPU、1个H型*机架、2个电源、2个1M 存储卡、4个

同步模块、2根同步电缆,以及4个备用电池(PS405 10A)
6ES7 412-1XJ05-0AB0    CPU412-1,144KB程序内存/144KB数据内存
6ES7 412-2XJ05-0AB0    CPU412-2,256KB程序内存/256KB数据内存
6ES7 414-2XK05-0AB0    CPU414-2,512KB程序内存/512KB数据内存
6ES7 414-3XM05-0AB0    CPU414-3,1.4M程序内存/1.4M数据内存 1个IF模板插槽
6ES7 414-3EM05-0AB0    CPU414-3PN/DP 1.4M程序内存/1.4M数据内存 1个IF模板插槽
6ES7 416-2XN05-0AB0    CPU416-2,2.8M程序内存/2.8M数据内存
6ES7 416-3XR05-0AB0    CPU416-3,5.6M程序内存/5.6M数据内存 1个IF模板插槽
6ES7 416-3ER05-0AB0    CPU416-3PN/DP 5.6M程序内存/5.6M数据内存 1个IF模板插槽
6ES7 416-2FN05-0AB0    CPU416F-2,2.8M程序内存/2.8M数据内存
6ES7 416-3FR05-0AB0    CPU416F-3PN/DP,5.6M程序内存/5.6M数据内存
6ES7 417-4XT05-0AB0    CPU417-4,15M程序内存/15M数据内存
内存卡    
6ES7 955-2AL00-0AA0    2 X 2M字节 RAM
6ES7 955-2AM00-0AA0    2 X 4M字节 RAM
6ES7 952-0AF00-0AA0    64K字节 RAM
6ES7 952-1AH00-0AA0    256K字节 RAM
6ES7 952-1AK00-0AA0    1M字节 RAM
6ES7 952-1AL00-0AA0    2M字节 RAM
6ES7 952-1AM00-0AA0    4M字节 RAM
6ES7 952-1AP00-0AA0    8M字节 RAM
6ES7 952-1AS00-0AA0    16M字节 RAM
6ES7 952-1AY00-0AA0    64M字节 RAM
6ES7 952-0KF00-0AA0    64K字节 FLASH EPROM
6ES7 952-0KH00-0AA0    256K字节 FLASH EPROM
6ES7 952-1KK00-0AA0    1M字节 FLASH EPROM
6ES7 952-1KL00-0AA0    2M字节 FLASH EPROM
6ES7 952-1KM00-0AA0    4M字节 FLASH EPROM
6ES7 952-1KP00-0AA0    8M字节 FLASH EPROM
6ES7 952-1KS00-0AA0    16M字节 FLASH EPROM
6ES7 952-1KT00-0AA0    32M字节 FLASH EPROM
6ES7 952-1KY00-0AA0    64M字节 FLASH EPROM
开关量输入模板    
6ES7 421-7BH01-0AB0    开关量输入模块(16点,24VDC)中断
6ES7 421-1BL01-0AA0    开关量输入模块(32点,24VDC)
6ES7 421-1EL00-0AA0    开关量输入模块(32点,120VUC)
6ES7 421-1FH20-0AA0    开关量输入模块(16点,120/230VUC)
6ES7 421-7DH00-0AB0    开关量输入模块(16点,24V到60VUC)
开关量输出模板    
6ES7 422-1BH11-0AA0    开关量输出模块(16点,24VDC,2A)
6ES7 422-1BL00-0AA0    32点输出,24VDC,0.5A
6ES7 422-7BL00-0AB0    32点输出,24VDC,0.5A,中断
6ES7 422-1FH00-0AA0    16点输出,120/230VAC,2A
6ES7 422-1HH00-0AA0    16点输出,继电器,5A
模拟量模块    
6ES7 431-0HH00-0AB0    16路模拟输入,13位
6ES7 431-1KF00-0AB0    8路模拟输入,13位,隔离
6ES7 431-1KF10-0AB0    8路模拟输入,14位,隔离,线性化
6ES7 431-1KF20-0AB0    8路模拟输入,14位,隔离
6ES7 431-7QH00-0AB0    16路模拟输入,16位,隔离
6ES7 431-7KF00-0AB0    8路模拟输入,16位,隔离,热电偶
6ES7 431-7KF10-0AB0    8路模拟输入,16位,隔离,热电阻
6ES7 432-1HF00-0AB0    8路模拟输出,13位,隔离
功能模板    
6ES7 450-1AP00-0AE0    FM450-1计数器模板
6ES7 451-3AL00-0AE0    FM451定位模板
6ES7 452-1AH00-0AE0    FM452电子凸轮控制器
6ES7 453-3AH00-0AE0    FM453定位模板
6ES7 455-0VS00-0AE0    FM455C闭环控制模块
6ES7 455-1VS00-0AE0    FM455S闭环控制模块
6DD1 607-0AA2    FM 458-1DP快速处理系统
6ES7 953-8LJ20-0AA0    用于FM458-1DP 基本模板 512KByte(MMC)
6ES7 953-8LL20-0AA0    用于FM458-1DP 基本模板 2MByte(MMC)
6ES7 953-8LM20-0AA0    用于FM458-1DP 基本模板 4MByte(MMC)
6DD1 607-0CA1    EXM 438-1 I/O扩展模板
6DD1 607-0EA0    EXM 448 通讯扩展模板
6DD1 607-0EA2    EXM 448-2 通讯扩展模板
6DD1 684-0GE0    SC64连接电缆
6DD1 684-0GD0    SC63连接电缆
6DD1 684-0GC0    SC62连接电缆
6DD1 681-0AE2    SB10端子模块
6DD1 681-0AF4    SB60端子模块
6DD1 681-0EB3    SB61端子模块
6DD1 681-0AG2    SB70端子模块
6DD1 681-0DH1    SB71端子模块
6DD1 681-0AJ1    SU12端子模块
6DD1 681-0GK0    SU13端子模块
通讯模板    
6ES7 440-1CS00-0YE0    CP440通讯处理器
6ES7 441-1AA04-0AE0    CP441-1通讯处理器
6ES7 441-2AA04-0AE0    CP441-2通讯处理器
6ES7 963-1AA00-0AA0    RS232C接口模板
6ES7 963-2AA00-0AA0    20mA接口模板
6ES7 963-3AA00-0AA0    RS422/485接口模板
6ES7 870-1AA01-0YA0    可装载驱动 MODBUS RTU 主站
6ES7 870-1AB01-0YA0    可装载驱动 MODBUS RTU 从站
6GK7 443-5FX02-0XE0    CP443-5基本型通讯处理器,支持Profibus-Fms协议
6GK7 443-5DX04-0XE0    CP443-5扩展型通讯处理器,支持Profibus-DP协议
6GK7 443-1EX11-0XE0    CP443-1 以太网通讯处理器
6GK7 443-1EX41-0XE0    CP443-1 高级以太网通讯处理器
附件    
6ES7 960-1AA04-0XA0    冗余系统同步模板(新)近距离同步(10米以内)
6ES7 960-1AB04-0XA0    冗余系统同步模板(新)远程同步模板(10米到10公里,用同长度的光缆)
6ES7 960-1AA04-5AA0    冗余系统光纤连接电缆(1米)(新)
6ES7 960-1AA04-5BA0    冗余系统光纤连接电缆(2米)(新)
6ES7 960-1AA04-5KA0    冗余系统光纤连接电缆(10米)(新)
6ES7 833-1CC01-0YA5    S7F系统可选软件包
6ES7 833-1CC00-6YX0    F运行*
6ES7 197-1LA03-0XA0    Y-LINK 
6ES7 492-1AL00-0AA0    前连接器
6ES7 400-1TA01-0AA0    主板(18槽)
6ES7 400-1JA01-0AA0    主板(9槽)
6ES7 400-1TA11-0AA0    主板(18槽)铝板
6ES7 400-1JA11-0AA0    主板(9槽)铝板
6ES7 401-2TA01-0AA0    CR2主板(18槽)
6ES7 400-2JA00-0AA0    UR2-H主板(18槽)
6ES7 400-2JA10-0AA0    UR2-H主板(18槽)铝板
6ES7 403-1TA01-0AA0    ER1机架(18槽)
6ES7 403-1JA01-0AA0    ER2机架(9槽)
6ES7 403-1TA11-0AA0    ER1机架(18槽)铝板
6ES7 403-1JA11-0AA0    ER2机架(9槽)铝板
6ES7 460-0AA01-0AB0    IM460-0
6ES7 461-0AA01-0AA0    IM461-0
6ES7 468-1AH50-0AA0    连接电缆  (0.75米)
6ES7 468-1BB50-0AA0    连接电缆 (1.5米)
6ES7 461-0AA00-7AA0    终端器
6ES7 460-1BA01-0AB0    IM460-1
6ES7 461-1BA01-0AA0    IM461-1
6ES7 468-3AH50-0AA0    468-3连接电缆  (0.75米)
6ES7 468-3BB50-0AA0    468-3连接电缆 (1.5米)
6ES7 460-3AA01-0AB0    IM460-3
6ES7 461-3AA01-0AA0    IM461-3
6ES7 468-1BF00-0AA0    468-1连接电缆(5米)
6ES7 468-1CB00-0AA0    468-1连接电缆(10米)
6ES7 468-1CC50-0AA0    468-1连接电缆(25米)
6ES7 468-1CF00-0AA0    468-1连接电缆(50米)
6ES7 468-1DB00-0AA0    468-1连接电缆(100米)
6ES7 461-3AA00-7AA0    终端器
6ES7 463-2AA00-0AA0    IM463-2接口模块
6ES7 964-2AA04-0AB0    IF-964 DP接口模块



会员登录

×

请输入账号

请输入密码

=

请输验证码

收藏该商铺

X
该信息已收藏!
标签:
保存成功

(空格分隔,最多3个,单个标签最多10个字符)

常用:

提示

X
您的留言已提交成功!我们将在第一时间回复您~
产品对比 二维码

扫一扫访问手机商铺

对比框

在线留言