S7-1200项目中配置PROFINET X2接口操作步骤

在安全系统中f-cpu之间可以借助 pn/pn coupler 模块进行控制器之间的安全相关的通信。通信通过两个安全应用程序块进行,即senddp块用于发送数据,而rcvdp块用于接收数据。这些块由用户在f-cpu相应的安全程序中调用,以故障安全的方式将 16 个数据类型为 bool 的数据和 2 个数据类型为 int 的数据或者 1 个数据类型为 dint(s7-1200、s7-1500)的数据发送至另一 f-cpu。
在本例程中,将cpu1513f-1pn作为一个 io 控制器,cpu1215fc作为另一个 io 控制器,通过 pn/pn coupler(v4.2)实现两个cpu的安全相关的通信。cpu1513f在安全程序中使用f应用程序块senddp进行发送,cpu1215fc在安全程序中用rcvdp进行接收,以安全方式一次传送16个bool型数据和2个int型数据。注意:必须在安全程序开始时调用rcvdp,必须在安全程序结束时调用senddp。
示例中使用的软硬件环境
硬件:
cpu1513f-1pn 6es7 513-1fl02-0ab0,v2.8.3
cpu1215fc dc/dc/dc 6es7 215-1af40-0cb0,v4.4.1
pn/pn coupler 6es7 158-3ad10-0xa0,v4.2.0
软件:
step7 professional v16 update2
step7 safety v16
1.第一种情况(同一项目中操作)
这种情况下两个cpu 使用 step7 v16 在一个项目中操作,详细步骤如下。
1.1 使用 step7 v16 创建项目加入 s7-1500和s7-1200 站
使用 step7 v16 创建一个新项目,并通过“添加新设备”分别组态 s7-1500和s7-1200 站,选择对应型号 cpu,创建各自的pn/ie子网,设置各自的 ip 地址,并确认设备名称。
本示例中cpu151f设备名称是plc_1,cpu1215fc设备名称是plc_2。如图 1 所示。
图 1 在新项目中创建两个plc 站
1.2 配置pn/pn coupler
在“硬件目录”中找到 pn/pn coupler,确认订货号,选择版本,拖入到“网络视图”中,如图 2 所示。
图 2 在项目中拖入pn coupler v4.2版本
图 3 将pn coupler profinet接口 x1连接到cpu1513f的profinet接口
图 4 组态pn coupler profinet接口x1部分的ip地址和设备名称
图 5 组态pn coupler profinet接口x2部分的ip地址和设备名称
注意:安全通信时要使用固定格式的传输区类型,这里是cpu1513f向cpu1215fc发送数据,所以要选择输出长度12个字节的类型。
图 6 组态pn coupler 地址映射
两个cpu在同一个项目中,系统自动在pn coupler profinet接口x2的plc_2侧自动生成了一个匹配的传输区“profisafe输入/输出 12字节/6字节”,如图 7 所示。
注意:最好使用系统自动分配的io地址,如果要进行修改,要保证传输区分配的输入地址和输出地址的起始地址相同。
图 7 pn coupler 地址映射信息
图 8 传输区在两个cpu的地址分配情况
1.3 分配pn/pn coupler设备名称
鼠标左键点中pn coupler 左侧x1网络接口,按住鼠标拖拽连接到cpu1513f的profinet接口,这样pn coupler的profinet接口x1就连接到pn/ie_1子网,分配io控制器为plc_1,如图 3 所示。然后设置x1接口的ip地址和设备名称,如图 4 所示。。
同样方法将pn coupler的profinet接口x2拖向cpu1215fc的profinet接口,网络会显示连接到pn/ie_2子网,自动分配io控制器为plc_2。pn coupler的左下角会显示“多重分配”字样,然后设置x2接口的ip地址和设备名称。如图 5 所示。
在pn coupler属性界面中“转换映射”创建“传输区_1”,类型选择“profisafe输入/输出 6字节/12字节”,如图 6 所示。
将两个安全cpu都编译下载后,还需要在线分配pn coupler设备名称后profinet通信才能正常,而且由于pn coupler的profinet网口有两个,要分别进行操作。
在前面的组态配置中cpu1513f连接的是pn couler上profinet接口x1网络,所以在实际的网线连接时要将cpu1513f的profinet网线插入到pn coupler左侧总线适配器的网口上。同样,cpu1215fc的网线应该插入到pn coupler右侧总线适配器的网口上。
图 9 pn coupler模块面板图
以cpu1513f侧操作为例,介绍分配设备名称操作。首先要保证计算机的网线连接到pn coupler上profinet接口x1网络中。使用鼠标右击pn coupler左侧,弹出的对话框中选择分配设备名称,如图 10 所示。
图 10 鼠标右击左侧,打开分配设备名称界面
进入分配设备名称界面后,点击“更新列表”会显示出网络中的可访问节点。核对mac地址与pn coupler上面印刷的mac address 1相同,确保是pn coupler上的profinet x1接口。点击“分配名称”,如图11所示。
图 11 分配设备名称操作
操作成功后,在状态栏会显示“确定”,如图 12所示。
图 12 分配设备名称操作完成
采用同样的步骤,对pn coupler的profinet接口x2分配设备名称,完成后网络视图在线后状态显示通信正常,如图13。
注意:这时计算机的网线要连接到pn coupler上profinet接口x2网络中,而且使用鼠标右击pn coupler右侧,核对mac地址时要与pn coupler上面印刷的mac address 2相同。
图13 硬件组态在线状态
1.4 编程、下载
安全相关的通信除了要进行硬件组态外,还要使用专门的安全通信程序块完成数据的发送和接收。
在cpu1513f程序块中添加f-db,命名“senddata”建立16个bool类型和2个int类型变量,作为发送数据。在cpu1215fc程序块中添加f-db,命名“rcvdata”建立16个bool类型和2个int类型变量用于接收数据,如图14。
图 14 cpu1513f中的发送数据块结构
图 15 cpu1215fc中的接收数据块结构
示例中是cpu1513f向cpu1215fc发送数据,所以在cpu1513f的安全主程序fb1中调用senddp数据发送功能块,注意参数dp_dp_id和laddr参数的填写,指令所在位置如图16。
图 16 指令所在位置
laddr参数需要到pn coupler x1接口部分的属性中查找“传输区_1”的系统常数,如图17。
图 17 查找pn coupler x1接口配置的传输区_1的系统常数
cpu1215fc的安全主程序fb1中调用rcvdp数据接收功能块,参数dp_dp_id要与cpu1513f的senddp一致,如图16。
图 18 cpu1215fc中的接收功能块dp_dp_id要与cpu1513f中的发送功能块一致
laddr参数需要到pn coupler x2接口部分的属性中查找“传输区_1”的系统常数,如图19。
图 19 查找pn coupler x2接口配置的传输区_1的系统常数
示例中cpu1513f向cpu1215fc发送了2个int类型的数据,如果要发送dint类型的数据,只需要将要发送的数据地址填写在senddp功能指令的输入参数sd_di_00处,同时在输入参数dintmode=1就可以。
这时cpu1215fc就可以在rcvdp功能指令的输出参数rd_di_00处接收到dint数据。注意:不能同时传送int和dint类型的数据。
将两个plc的程序进行编译,然后分别下载到plc。
1.5 通讯测试
检查无错误后,分别给两个站点新建监控表,对数据进行监控,如图 20 所示。
图 20 通信测试
1.6 发生通信错误时的处理
如果发生通信错误,发送方(senddp指令)会置位输出参数 error 和 subs_on =1,同时在输出参数diag处显示有关所发生通信错误类型的信息。
接收方(rcvdp 指令)会将输入参数 subbo_xx 和 subi_xx 或 subdi_00所指定的故障安全值替代到对应输出,同时置位输出error和 subs_on =1,在输出参数diag处显示有关所发生通信错误类型的信息。
图 21 senddp/rcvdp 指令的diag的结构说明
当不再检测到通信错误时,rcvdp 指令会置位输出参数ack_req = 1,这时在输入参数 ack_rei 处输入上升沿进行确认,安全数据传递才会恢复。
图 22 通信错误及确认的时序图
在本示例中,为了演示通信错误的确认过程,故意制造了一个通信错误。
1、将cpu1513f切换到停止模式,cpu1215fc中的rcvdp指令置位输出error和 subs_on =1,同时在输出参数diag处显示信息16#10。
图 23 cpu1215fc rcvdp指令报错
2、根据diag的提示信息,查找故障原因,将cpu1513f切换到运行模式后,错误排除。rcvdp指令置位输出ack_req =1,请求重新集成。
图 24 cpu1215fc rcvdp指令请求确认
3、对rcvdp指令的输入参数ack_rei置位,对发送数据的重新集成进行确认后,数据传递恢复。
图 25 cpu1215fc rcvdp指令进行确认
2.第二种情况(不在同一项目中操作)
如果两个cpu是分开在两个tia项目中,只需要将pn coupler的两个profinet接口的配置分开来操作就可以了。即,在cpu1513f的项目中配置pn coupler上的profinet x1接口,在cpu1215fc的项目中配置pn coupler上的rpofinet x2接口。
对于安全通信程序块senddp/rcvdp的调用和参数填写,与前面在同一个项目中的操作是完全相同的。
2.1 s7-1500 项目中配置profinet x1接口
创建一个新项目,并通过“添加新设备”组态 s7-1500 站,在网络视图中配置pn coupler。鼠标左键点中pn coupler 左侧x1网络接口,按住鼠标拖拽连接到cpu1513f的profinet接口,这样pn coupler的profinet接口x1就连接到cpu1513f。然后设置x1接口的ip地址和设备名称,操作方法与前面的都是相同的,只是不需要再对pn coupler上的profinet x2接口进行配置。之后在“转换映射”中创建“传输区_1”,在profinet接口[x1]下面,类型选择“profisafe输入/输出 6字节/12字节”,如图 21 所示。
图 26 在s7-1500项目中配置profinet接口[x1]
2.2 s7-1200 项目中配置profinet x2接口
创建一个新项目,并通过“添加新设备”组态 s7-1200 站,在网络视图中配置pn coupler。鼠标左键点中pn coupler 左侧x2网络接口,按住鼠标拖拽连接到cpu1215fc的profinet接口,这样pn coupler的profinet接口x1就连接到cpi1215fc上。然后设置x2接口的ip地址和设备名称,操作方法与前面的都是相同的,只是不需要再对pn coupler上的profinet x1接口进行配置。之后在“转换映射”中创建“传输区_1”,在profinet接口[x2]下面类型选择“profisafe输入/输出 12字节/6字节”,如图 22 所示。
图 27 在s7-1200项目中配置profinet接口[x2]


Vishay推出新型汽车级IHLP大电流电感器,高度仅为 7.0mm
曝第三代哈弗H6将率先搭载1.5T+DHT130油电混动系统
IIC China 2012深圳展上拆解什么?
红米总经理表示红米Note 7 Pro会拍出不逊于3000元旗舰手机的照片
我国成功发射天通一号02星
S7-1200项目中配置PROFINET X2接口操作步骤
通过采用PLC和变频器相结合实现多电机随动控制系统的设计
云网融合是新型信息基础设施的核心
Intel微处理器外壳与内核曝光(图文)
异步电机速度估计-混合模型磁链观测器法
Mystic无人机主打人工智能科技,早鸟售价 479 美元起
国星光电子公司风华芯电“高耐压T0封装大功率器件”等三项产品获“2023年广东省名优高新技术产品”称号
无线充电装置!10小时可充满Model S
云知声暂时退场后,智能语音赛道的未来在哪?
利用谷歌语音识别技术记录信息,将大大提高医生工作效率
中国移动已经成为了中国5G建设的主力军
Intel响应式零售传感器推动传统零售新变革
东风启辰和奥动联合推动广州换电出租车
日本电产理德推出半导体高速检测装置“NATS-1000” ―6in1 IGBT 全球范围内高水平的检测速度―
中国北斗导航全面挤压GPS 不再受制于美国