设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
控制专题
›
『数控/电机控制/运动控制/工业总线』
›
通过 PROFINET 数据记录库读取 S7-1200 的 IP 地址、MAC ...
返回列表
发新帖
通过 PROFINET 数据记录库读取 S7-1200 的 IP 地址、MAC 地址及 MRP 环状态
[复制链接]
91718
|
0
|
2024-8-9 22:48:32
|
显示全部楼层
|
阅读模式
1. 读取 IP 地址和 MAC 地址
使用 LPNDR_ReadGlobalInfo 函数块可以读取 PROFINET 设备的 IP 地址和 MAC 地址。
1-1 使用 TIA PORTAL V17 创建项目
使用 TIA PORTAL V17 创建一个新项目,组态 CPU S7-1200 与分布式 IO ET200SP ,设置 IP 地址,并确认设备名称后下载到 PLC 中,如图 1、2、3 所示。
图 1、在新项目中组态 S7-1200 和 ET200SP
图 2、设置 S7-1200 参数
图 3、设置 ET200SP 参数
1-2 编程调用 LPNDR_ReadGlobalInfo 函数块
通过库选项在全局库中打开 PROFINET 数据记录库,从库中调用 LPNDR_ReadGlobalInfo 函数块,如图 4 所示。
图 4、调用 LPNDR_ReadGlobalInfo 函数块
表 1、LPNDR_ReadGlobalInfo 引脚说明
参数
声明
数据类型
说明
execute
IN
Bool
读数据记录
hwId
IN
HW_IO
PROFINET 接口硬件标识符
mode
IN
Int
允许值:
1: 接口信息
2: MRP 信息
3: 端口信息
4:端口连接状态
5:端口统计
busy
OUT
Bool
命令执行中
done
OUT
Bool
命令执行完成
error
OUT
Bool
发生错误
status
OUT
Word
错误说明
DataRecord
IN_OUT
Version
将信息读取到的目标区域
根据“mode”参数选择数据类型声明目标区域
程序段 1 中,用于读取 CPU 1215C 的接口信息,因此 hwId 选择 PLC PROFINET 接口的硬件标识符;mode 选择 1,读取接口信息;DataRecord 选择数据类型为“LPNDR_typeInterfaceInformation”用于接收读取到的接口参数。
程序段 2 中,用于读取 ET200SP 的接口信息,因此 hwId 选择 ET200SP PROFINET 接口的硬件标识符;mode 选择 1 ,读取接口信息;DataRecord 选择数据类型为“LPNDR_typeInterfaceInformation”用于接收读取到的接口参数。
1-3 测试结果
分别触发程序段 1、程序段 2 中功能块的 execute 管脚,执行程序后在 DataRecord 管脚连接的变量中读取到相应的接口信息,如图 5 、6 所示。
图 5、读取 S7-1200 接口信息
图 6、读取 ET200SP 接口信息
2. 读取MRP环状态
使用 LPNDR_ReadMRPState 函数块可以读取 PROFINET 设备(MRP管理员)的 MRP 环的状态。
2-1 组态编程
使用 TIA PORTAL V17 创建一个新项目,组态 CPU S7-1200、分布式IO ET200SP 及 SCALANCE X204 IRT 交换机,网络视图如图 7 所示,并组态拓扑视图,如图 8 所示。
图 7、网络视图组态
图 8、拓扑视图组态
分别设置 S7-1200、ET200SP 及 SCALANCE X204 IRT 的介质冗余角色,将 S7-1200 与 ET200SP 设置为客户端,将 SCALANCE X204 IRT 设置为管理员,如图 9、10、11 所示。
图9、组态 S7-1200 为介质冗余客户端
图 10、组态 ET200SP 为介质冗余客户端
图 11、组态 SCALANCE X204 IRT 为介质冗余管理员
2-2 编程调用 LPNDR_ReadMRPState 函数块
编程调用 LPNDR_ReadMRPState 函数块,用于检测 MRP 环状态,如图 12 所示。
图 12、调用 LPNDR_ReadMRPState 函数块
表 2、LPNDR_ReadMRPState 引脚说明
参数
声明
数据类型
说明
execute
IN
Bool
读数据记录
hwId
IN
HW_IO
MRP 管理员接口硬件标识符
busy
OUT
Bool
命令执行中
done
OUT
Bool
命令执行完成
error
OUT
Bool
发生错误
mrpRingState
OUT
Word
MRP 环状态
status
OUT
Word
错误说明
2-3 测试结果
当 MRP 环连接闭合情况下,通过触发 execute 管脚执行 LPNDR_ReadMRPState 函数块,可以看到输出管脚 mrpRingState 为 1,说明 MRP 环为闭合状态,如图 13 所示。
当 MRP 环连接打开情况下,通过触发 execute 管脚执行 LPNDR_ReadMRPState 函数块,可以看到输出管脚 mrpRingState 为 0,说明 MRP 环为打开状态,如图 14 所示。
图 13、MRP 环闭合状态
图 14、MRP 环打开状态
-------------------END----------------
每天进步一点点
Make small but daily progress
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
mubai
回复楼主
返回列表
『数控/电机控制/运动控制/工业总线』
『机器视觉/AI/IoT/机器人论坛』
『高级语言/组态软件/触摸屏』
『操作系统xp/xin7/win10/linux』