ERTEC200P-2 PROFINET设备完全开发手册(3-1)

3. 读写周期数据

PROFINET的基本通讯模型如下图:

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第1张图片

 Profinet 是基于标准以太网技术的应用层协议,支持4种类型的数据通道

标准通道:参数化及配置,读诊断数据,设备信息(I&M),资产信息 (AMR) ;(基于UDP、TCP)

RT通道:循环数据交换,报警 (直接第二层访问 )

IRT 通道: 周期的, 同步数据交换, 抖动<1μsec(直接第二层访问 )

TSN:循环数据交换和网络管理平面 (基于IEEE 802.x 和IEEE/IEC60802) (直接第二层访问 )

在控制应用中,主要使用的是循环数据交换,例如:通过输入数据(I)获得开关状态,获得驱动器的实时速度等;通过输出数据(Q)控制继电器输出,或者设定驱动器的速度。对于同步性能或通讯抖动的不同需求,周期/循环数据可以基于RT、IRT或者TSN。

PROFINET 使用生产者-消费者模型进行循环数据交换:

  • 生产者循环发送 IO 数据(更新时间),无需显式请求
  • 消费者在没有确认的情况下接收 IO 数据,并使用看门狗监控传入数据的周期
  • 控制器和设备同时是生产者和消费者(即使没有用户数据需要传输)

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第2张图片

接下来的部分介绍如何基于ERTEC200P-2实现对周期数据(IO数据)的处理。

3.1连接PN控制器

这里以PLC S7-1511作为控制器,按照下图连接设备

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第3张图片

PC的IP地址设为:192.168.1.100。用网线连接:PC的网口到PLC的X1-P1,PLC X1-P2 到EB200P-2的X1-P1。

由于默认的参考代码通过XHIF与单片机交换数据并更新输入数据,因此先把这部分代码屏蔽掉。按照如下方式修改usriod_main.c,屏蔽掉XHIF数据交换部分。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第4张图片

 按照上一节的方式重新编译、调试运行。(注意:每次开始新的调试运行时,一定要把之前的调试彻底停止,点击stop

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第5张图片

 确认新的固件运行起来之后( 串口调试终端输入‘?’),开始配置PLC。打开TIA Portal V16,并创建新项目“ERTEC_Test”

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第6张图片

 点击创建之后,打开项目视图

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第7张图片

如果之前没有导入EB200P-2的GSDML文件,需要导入GSDML文件。在“选项”中选择“管理通用站描述文件”。

 ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第8张图片

 选择安装包源路径为\Devkit47\contributions\GSDML文件夹,安装V2.4版本的GSDML文件。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第9张图片

 安装结束后进入“设备和网络”视图

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第10张图片

 

 在硬件目录中“Controllers”,双击添加相应型号的PLC CPU,这里用的是CPU1511-1 PN (订货号 6ES7 511-1AK01-0AB0),固件版本为V2.6。选择的PLC的订货号和固件版本号一定要与实际一致。如果不确定,对应的信息可以在“在线访问中”找到。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第11张图片

接着在目录中展开“其它现场设备” “PROFINET IO” “I/O” “SIEMENS AG” “DEVKIT” “ERTEC200P Evaluation Kit”,双击添加“Standard MRP,S2 redundancy,DR”。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第12张图片 

添加后,点击“未分配”,选择“PLC_1”,为设备分配控制器。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第13张图片

点击PLC深色部分,选择下方属性标签,在“PROFINET 接口” “以太网地址” 中设置PLC的IP地址为“192.168.1.15”,这里可以看到为PLC自动生成的设备名称是“plc_1”

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第14张图片

 

 双击展开ERTEC-DEVKit的配置界面,在插槽1 中加入“64 byte I”,在插槽2中加入““64 byte O”。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第15张图片

 

 选中ERTEC-DEVKIT深色部分,选择下方属性标签,在“PROFINET 接口” “以太网地址” 中设置IO设备的IP地址为“192.168.1.10”。这里可以看到自动生成的设备名称是“ertec-devkit”

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第16张图片

 为了PLC可以与设备建立连接,我们需要在线修改设备名称。在项目视图 “在线访问” “PC的LAN网卡” 下双击“更新可访问设备”(由于硬件不同,因此实际显示的网卡型号会与下图略有不同)。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第17张图片

 可以找到PROFINET设备如下图所示:

 其中,[08-00-06-02-01-10] 就是EB200P-2。双击打开“在线和诊断”,在“功能” “分配PROFINET设备名称” 中将设备的名称改为“ertec-devkit”。注意:在Profinet网络里,设备名称是设备的唯一标识,不是IP地址。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第18张图片

 选中左侧栏的PLC_1[CPU 1511-1 PN],在工具栏中选择编译下载PLC程序。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第19张图片

PLC程序下载运行后,如果配置正确可以在MobaXterm中显示:

 ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第20张图片

 在“设备和网络”中选择“在线”,可以看到PLC和模块工作正常。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第21张图片

 接下来我们测试一下过程数据是否正确。在项目视图中打开“PLC变量” “默认变量表”,

在变量表中按照下图添加Tag “InData0” 对应输入过程映像区地址 “%IB0”。需要注意的是模块的起始地址是由TIA软件自动分配的,可以在插槽配置中看到。如果用的S7-1200或者系统中已有其它I/O,模块对应的过程映像地址并不总是从‘0’开始。在工具栏中选择在线监视(眼镜形状的图标),可以看到第一个字节的值为0x11,这是协议栈默认的初始值。

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第22张图片

 

 在MobaXterm中,通过输入测试命令‘Q/q’,我们可以增加或者减小输入过程值。在这里输入‘Q’

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第23张图片

 回到TIA,可以看到监视值发生了相应的变化

ERTEC200P-2 PROFINET设备完全开发手册(3-1)_第24张图片

通过参考命令‘Q/q’对应的代码,我们就可以实现自己的过程值,比如数字量输入输出,模拟量输入输出。

 下一篇:周期读写的回调和API

你可能感兴趣的:(Profinet从站开发,Profinet)