新闻
6SL3264-1EA00-0HA0现货西门子代理
2024-05-17 03:19  浏览:10
6SL3264-1EA00-0HA0现货西门子代理西门子S7-300和S7-200SMART以太网通信(图文)



    S7 通信是 S7 系列 PLC 基于 MPI、 PROFIBUS、 ETHERNET 网络的一种优化的通信协议, 主要用于 S7-300/400PLC 之间的通信。 S7-200 SMARTPLC V2.0 版本支持 SMART PLC 之间的PUT/GET 通讯, 经过测试发现 S7-300/400 集成的 PN 口与 S7-200 SMART PLC 之间的 PUT/GET通讯也是可以成功的, 但是需要 S7-300/400 侧编程调用 PUT/GET 指令。 S7-300/400 集成 PN口调用的功能块的调用如图 1、 图 2 所示。


S7-400


S7-300

描述

简要描述

SFB 14

FB 14

读数据

单边编程读访问。

SFB 15

FB 15

写数据

单边编程读访问。

表 1

     


图 1 调用通信项目功能块  



图 2调用通信系统功能块

   要通过 S7-300/400 CPU 的集成 PROFINET 接口实现 S7 通信, 需要在硬件组态中建立连
接。
1、 硬件及网络组态
CPU 采用 1 个 314-2PN/DP, 1 个 S7-200 SMART PLC 使用以太网进行通信。
在 STEP7 中创建一个新项目 , 项目名称为 S7-300-SMART。 插入 1 个 S7-300 站, 在硬件组态中插入 CPU 314-2 PN/DP。

1.1 硬件组态

1.1.1 新建项目

首先单击新建项目,名称和存储位置可以自己选择和更改,然后点击确认。如图 3 所示。

 


图 3新建项目

1.1.2 建立SMATC  300站点。

首先在导航窗口空白处(或者选择项目)右键选择插入对象,再选择SMATC  300站点。如图4 所示



图4 创建 SMATC  300站点

1.1.3硬件配置   

双击右窗口硬件进入硬件配置窗口。具体配置如图5-19所示。

注意:硬件组态的硬件参数必须要和实际的硬件参数相同,否则PLC不能正常工作。出现异常报警。


图5 进入硬件配置窗口



图6 硬件配置窗口


图7选择机架

注:(可以右击选择添加或者直接双击进行添加)以下的硬件配置将不予说明。



图8 选择电源



图9  选择CPU

注:由于314 C-2 PN\DP比较特殊,自带两个以太网PN接口,所以组态时会弹出以太网接口属性设置窗口。在IP地址栏,键入IP地址,如果使用路由器,选择使用路由器,键入路由器地址,如果是所以普通交换机选择不使用路由器(普通的交换机没有IP地址),设置完后点击新建,进入子网属性设置。如图10所示。



图10 以太网接口属性设置

直接选择确定。如图11所示。



图11 子网属性设置

以太网接口属性设置完后,可以在子网栏看到Ethernet(1)的子网。如图12所示。



图12

双击CPU硬件属性,设置时间脉冲存储器。选择周期/时间存储器,勾选时间存储器,在存储字节区键入自定义存储区(这个存储区是自定义的,由用户自定义进行设置),如图13-14所示。



图13  CPU硬件属性窗口



图14设置时间脉冲存储器

设置DI\DO输入输出模块I\O地址。双击DI\DO,在地址属性窗口把系统默认勾选去除,在开始栏键入自定义地址。如图15-16所示。



图15 进入设置DI\DO输入输出模块属性窗口




图16设置DI\DO输入输出模块I\O地址

硬件配置完毕后,点击保存并编译,然后会提示是否变更保存到SMATIC300(1)站点,选择是,创建系统数据。然后关闭硬件配置主窗口。如图17-19所示。



图17



图18保存并编译



图19创建系统数据

1.1.4  网络配置

打开“ NetPro” 设置网络参数, 选中 CPU 314-2PN/DP, 在连接列表中建立新的连接。 步
骤如图 20-27 所示。



图 20双击CPU 314-2PN/DP



图 21双击连接

选择CPU 314-2PN/DP,右键选择插入新连接。如图22所示.



图 22 插入新连接

连接伙伴选择(未指定),站点(未指定),连接类型选择S7连接。然后点击应用进入S7连接属性设置窗口。如图23所示。

(英文版选择(选择 Unspecified 站点, 选择通讯协议 S7 connection, 点击 Apply))



图 23插入新连接

本地连接端点选择,勾选建立主动连接,块参数设置,自定义本地ID,默认是1,连接路径栏不用修改,伙伴栏在[Industrial  Etherent (工业以太网)]栏键入SMART S7-200 SMART 的IP地址。然后点击地址详细信息,

(英文版选择在弹出的 S7 connection 属性对话框中, 勾选 Establish an active connection, 设置
Partner address:192.168.0.2(S7-200 SMART PLC IP 地址))



图 24 S7连接属性设置

本地栏信息和S7子网ID信息不需要修改,只需要在伙伴栏机架/插槽栏,把插槽号改为1。然后点击确认。如图25所示。

(英文版选择点击 Address Details , 再弹出来的对话框设置 Partner 的 Slot 为 1, 如图 8 所示。点击 OK 即可关闭该对话框)


图 25 修改伙伴插槽号

设置完成后能在信息栏看到设置的信息。如图26所示。



图26 配置完成后信息

网络组态创建完成后, 需要编译, 如图 27 所示。



图 27  编译和保存网络组态

网络组态编译无错, 鼠标先点击 CPU 314-2PN/DP , 然后点击下载按钮下载网络组态, 步骤如图 28 所示。



图 28 下载网络组态
2 软件编程
     可以通过系统功能块SFB14 "GET"\FB 项目功能块14 "GET", 从远程 CPU 中读取数据。
     S7-300: 在 REQ 的上升沿处读取数据。 在 REQ 的每个上升沿处传送参数 ID、 ADDR_1 和 RD_1。
      在每个作业结束之后, 可以分配新数值给 ID、 ADDR_1 和 RD_1 参数。S7-400: 在控制输入 REQ 的上升沿处启动 系统数据块SFB。 在此过程中, 将要读取的区域的相关指针(ADDR_i) 发送到伙伴 CPU。 远程伙伴返回此数据。 在下一个 SFB/FB 调用处, 已接收的数据被复制到组态的接收区(RD_i) 中。 必须要quebaotongguo参数 ADDR_i 和 RD_i 定义的区域在长度和数据类型方面要相互匹配。
     通过状态参数 NDR 数值为 1 来指示此作业已完成。 只有在前一个作业已经完成之后, 才能重新激活读作业。 远程 CPU 可以处于 RUN 或 STOP 工作状态。 如果正在读取数据时发生访问故障, 或如果数据类型检查过程中出错, 则出错和警告信息将通过 ERROR 和 STATUS 输出表示。
     通过使用 SFB/FB 1515项目功能块 "PUT", 可以将数据写入到远程 CPU。
     S7-300: 在 REQ 的上升沿处发送数据。 在 REQ 的每个上升沿处传送参数 ID、 ADDR_1 和 SD_1。在每个作业结束之后, 可以给 ID、 ADDR_1 和 SD_1 参数分配新数值。
      S7-400: 在控制输入 REQ 的上升沿处启动 SFB。 在此过程中, 将指向要写入数据的区域(ADDR_i)的指针和数据(SD_i) 发送到伙伴 CPU。 远程伙伴将所需要的数据保存在随数据一起提供的地址下面, 并返回一个执行确认。 必须要quebaotongguo参数 ADDR_i 和 SD_i 定义的区域在编号、 长度和数据类型方面相互匹配。
     如果没有产生任何错误, 则在下一个 SFB/FB 调用时, 通过状态参数 DONE 来指示, 其数值为 1。 只有在后一个作业完成之后, 才能再次激活写作业。 远程 CPU 可以处于 RUN 或 STOP模式。 如果正在写入数据时发生访问故障, 或如果执行检查过程中出错, 则出错和警告信息将通过 ERROR 和 STATUS 输出表示。
    打开 SIMATIC 314 C 2-PN/DP 的 OB1, 在 OB1 中依次调用项目功能块FB14,项目功能块FB15 如图29、 图 30 所示。

通过SFB/FB14\15块"GET"从远程CPU中读取数据描述:

可以通过SFB/FB 15"GET",从远程CPU中读取数据。

S7-300: 在REQ的上升沿处读取数据。在REQ的每个上升沿处传送参数ID、ADDR_1和RD_1。在每个作业结束之后,可以分配新数值给ID、ADDR_1和RD_1参数。

S7-400: 在控制输入REQ的上升沿处启动SFB。指向要读取区域的相关指针(ADDR_i)将被发送到伙伴CPU。

远程伙伴返回此数据。

在下一个SFB/FB项目功能块调用处,已接收的数据被复制到组态的接收区(RD_i)中。

必须要quebaotongguo参数ADDR_i和RD_i定义的区域在长度和数据类型方面要相互匹配。

通过状态参数NDR数值为1来指示此作业已完成。

只有在前一个作业已经完成之后,才能重新激活读作业。

远程CPU可以处于RUN或STOP工作状态。

如果正在读取数据时发生访问故障,或如果数据类型检查过程中出错,则出错和警告信息将通过ERROR和STATUS输出表示。


图29  系统功能块SFB 14

参数

声明

数据类型

存储区

描述

REQ

INPUT

BOOL

I、 Q、 M、 D、 L

控制参数请求,在上升沿激活数据交换。

ID

INPUT

WORD

M、 D、 常数

寻址参数ID(自定义本地ID格式W#16#? ,具体ID看S7连接属性中的块参数信息)

NDR

OUTPUT

BOOL

I、Q、M、D、L

NDR状态参数:

0:作业还未启动或仍然处于激活状态。

1:作业已成功完成。

ERROR

OUTPUT

BOOL

I、 Q、 M、 D、 L

ERROR和STATUS状态参数,出错显示:

ERROR=0

STATUS的数值:0000H:既不是警告也不是出错

不等于0000H:警告,STATUS提供详细信息。ERROR = 1产生一个错误。STATUS给出了关于错误类型的详细信息。关于错误类型的详细信息。

STATUS

OUTPUT

WORD

I、 Q、 M、 D、 L

故障代码

S7-300:
ADDR_1

IN_OUT

ANY

S7-300:M、 D

从S7-200 SMART的数据地址中读取数据; V 区数据对应 存储区。

(指针,指向伙伴CPU中要被读取的区域)。

S7-400:
ADDR_i
(1 ≤i ≤
4)

IN_OUT

ANY

S7-400:I、 Q、 M、 D、
T、 C

从S7-200 SMART的数据地址中读取数据; V 区数据对应数据存储区。(指针,指向伙伴CPU中要被读取的区域)。

S7-300:
RD_1

IN_OUT

ANY

S7-300: M、 D

本站接收数据存储地址

(指针,指向本地CPU中用于输入读取数据的区域)。

S7-400:
RD_i
(1 ≤i ≤
4)

IN_OUT

ANY

S7-400 I、 Q、
M、 D、 T、 C

本站接收数据存储地址

(指针,指向本地CPU中用于输入读取数据的区域)。

注意:如果使用ANY指针访问一个数据块,则必须要指定该数据块(例如:P# DB10.DBX5.0 Byte 10)

只允许使用下列数据类型:BOOL (不允许:位域)、BYTE、CHAR、WORD、INT、DWORD、DINT、REAL、COUNTER、TIMER。

注意:如果使用ANY指针访问一个数据块,则必须要指定该数据块(例如:P# DB10.DBX5.0 Byte 10)。

 

表2 系统功能块SFB 14 参数说明

通过SFB/FB 15"PUT"向远程CPU写入数据描述:

通过使用SFB/FB 15"PUT",可以将数据写入到远程CPU。

S7-300: 在REQ的上升沿处发送数据。在REQ的每个上升沿处传送参数ID、ADDR_1和SD_1。在每个作业结束之后,可以给ID、ADDR_1和SD_1参数分配新数值。

S7-400: 在控制输入REQ的上升沿处启动SFB。指向即将写入的区域和数据(SD_i)的指针(ADDR_i)将被发送到伙伴CPU。

远程伙伴将所发送的数据保存在随数据一起提供的地址下面,并返回一个执行确认。

必须要quebaotongguo参数ADDR_i和SD_i定义的区域在数量、长度和数据类型方面要相互匹配。

如果没有发生错误,则在下一次SFB/FB调用时通过状态参数DONE设为值1来指示。

只有在后一个作业完成之后,才能再次激活写作业。

远程CPU可以处于RUN或STOP模式。

如果正在写入数据时发生访问故障,或如果执行检查过程中出错,则出错和警告信息将通过ERROR和STATUS输出表示。



图 30系统功能块SFB 15

 

参数

声明

数据类型

存储区

描述

REQ

INPUT

BOOL

I、 Q、 M、 D、 L

控制参数请求,在上升沿激活数据交换。

ID

INPUT

WORD

M、 D、 常数

寻址参数ID(自定义本地ID格式W#16#? ,具体ID看S7连接属性中的块参数信息)。

DONE

OUTPUT

BOOL

I、Q、M、D、L

DONE状态参数:

0:作业还未启动或仍然在运行。

1:作业已经无错地执行完毕。

ERROR

OUTPUT

BOOL

I、 Q、 M、 D、 L

ERROR和STATUS状态参数,出错显示:

ERROR=0

STATUS的数值:0000H:既不是警告也不是出错。

不等于0000H:警告,STATUS提供详细信息。ERROR = 1出错。STATUS提供关于错误类型的详细信息。

STATUS

OUTPUT

WORD

I、 Q、 M、 D、 L

故障代码。

S7-300:
ADDR_1

IN_OUT

ANY

S7-300:M、 D

从本地的数据地址中读取数据发送到S7-200 SMART V 区数据对应存储区。

(指针,指向本地CPU中包含了要发送的数据的区域。)。

S7-400:
ADDR_i
(1 ≤i ≤
4)

IN_OUT

ANY

S7-400:I、 Q、 M、 D、
T、 C

(指针,指向本地CPU中包含了要发送的数据的区域。)

S7-300:
RD_1

IN_OUT

ANY

S7-300: M、 D

本站发送数据存储地址

(指针,指向本地CPU中包含了要发送的数据的区域。)。

S7-400:
RD_i
(1 ≤i ≤
4)

IN_OUT

ANY

S7-400 I、 Q、
M、 D、 T、 C

本站发送数据存储地址

(指针,指向本地CPU中包含了要发送的数据的区域。)。

 

表3 系统功能块SFB 15参数说明

故障信息

下表包含了所有SFB/FB 14/SFB/FB 15特有的出错信息,这些信息可以通过参数ERROR和STATUS输出表示。

注:用红色标注字体的是SFB/FB 15和SFB/FB 14的不同之处,代表SFB/FB 15参数,以此区分。除标注部分参数不一样外,其它故障信息均一致。。

故障信息

ERROR

STATUS

(十进制)

注解

0

11

警告:

1由于前一个作业还没有结束,所以不能执行新作业。

2正在以较低优先级处理此作业。

0

25

通讯已经启动。作业正在处理。

1

1

通讯故障,例如:

1没有装载连接描述(本地或远程)

2连接被中断(例如:电缆断线、CPU关闭、或CP处于STOP模式)

3没有建立到通讯伙伴的连接

4 FB无法在S7-400 CPU上运行

5此外对于S7-300:超出并行作业/背景的大数目

1

2

来自伙伴设备的否定确认。无法执行该函数。

1

4

接收区指针RD_i( SD_i)中出错,包括数据长度或数据类型。

1

8

在伙伴CPU上发生访问出错。

1

10

不能访问本地用户存储区(例如,访问一个已经删除的数据块)

1

12

当调用SFB时:

1.指定了一个不属于SFB 14 (SFB 15)的背景数据块。

2没有指定任何背景数据块,而是指定了一个共享数据块。3.没有找到任何背景数据块(从PG中装载新背景数据块)。

1

20

S7-400:没有足够的工作存储器可用。如果仍然有足够的总工作存储器可用,则解决方案是压缩工作存储器。

H系统:在更新期间不能进行SFB的次调用,因为正在创建工作存储器中的通讯缓冲区。同样地,在更新期间不能改变工作存储器。S7-300:

超出并行作业/背景的大数目

CPU在RUN模式(要求CPU或CP进行从STOP到RUN的切换)时,背景超载。

当次调用时可以

 

1

27

CPU中没有用于此功能块的功能代码(仅对于S7-300

表4  SFB/FB 14/SFB/FB 15故障信息

 

数据一致性:

如果遵守了下面的要点,则能保证数据接收处于一致性状态:

在启动其它作业之前,评估当前正在使用的接收区RD_i /( SD_i)部分。

2.1程序编写

在主窗口导航中双击S7程序,如图31所示。



图31 进入程序编写窗口

双击块,会弹出组织块属性窗口,名称、符号名、符号注释、创建语言可以自定义进行修改。修改后点击确认。如图32-33。


图32 组织块窗口



图33 设置组织块属性

 

程序编写,Alt+F9,然后键入SFB14,调用系统功能块SFB14,背景数据块名称键入DB14,然后会弹出背景数据块DB14不存在,是否要生成,点击是生成背景数据块DB14。然后键入参数,如图34-37所示。



图34调用系统功能块SFB14



图35 创建背景数据块 DB14


图36 生成背景数据块 DB14

键入参数



图37键入参数

Alt+F9,然后键入SFB14,调用系统功能块SFB15,背景数据块名称键入DB15,然后会弹出背景数据块DB15不存在,是否要生成,点击是生成背景数据块DB15。如图38-41所示。



图38调用系统功能块SFB15



图39 创建背景数据块 DB15



图40 生成背景数据块 DB15

键入参



图41 键入参数

接收发送程序编写,如图42所示。



图42 接收发送程序

下载站点硬件网络组态配置以及程序下载,如图43-46所示。



图43


图44



图45


 

SMART S7- 200 SMART PLC只需要进行IP地址设置以及编写数据转换程序。如图51-52所示。

200 SMART以太网 IP地址设置,在导航窗口双击系统块,点击通信,在以太网端口参数设置中勾选IP地址数据固定为下面的值,不能通过其它方式更改,然后键入自定义的IP地址。子网掩码不需要修改。然后点击确定。

注:这个IP地址要和S7连接属性设置中的伙伴以太网IP地址保持一致,否则不能进行通信。



图51系统块通信设置



图52数据转换程序



相关新闻
联系方式
公司:湖南西控自动化设备有限公司
姓名:徐嘉泉(先生)
职位:经理
手机:17838383235
地区:湖南-长沙
地址:中国(湖南)自由贸易试验区长沙片区开元东路1306号开阳智能制造产业园(一期)4#栋301
QQ:3305575995
微信:17838383235
拨打电话
微信咨询
请卖家联系我