5.1 非周期通讯
非周期通讯,顾名思义,表示这种通讯并不是在每个通讯周期都要进行的通讯,也叫做异步通讯或者非实时通讯。非周期通讯访问的数据叫做数据记录(record data)。一般情况下,以下三个名词表示的是一个意思
- 非周期通讯
- 异步通讯
- 读写数据记录
这类通讯都是由控制器(PLC)发起,分为读数据记录操作和写数据记录操作。非周期通讯的功能一般有
- 模块的初始化配置参数 - 例如:模拟量通道的选择(0-10V或4-20ma),网关的配置(串口波特率,modbus地址),这些参数定义在GSDML文件中,可以由用户在项目组态时配置。配置的值在设备建立连接时由控制器写入到设备数据记录中。
- 模块的运行或诊断参数 - 例如:变频器的输出功率,功率限幅或者诊断缓冲,这些参数通过控制器的控制程序不定期读取或写入,完成特定的控制工艺。
- PROFINET协议定义的标准数据记录 - 这类数据的操作由协议栈实现,并不需要额外的开发
- 配置通讯接口相关的参数(例如IRT参数)(index = 0x8030)
- 设备的识别维护信息例如(I&M)
- ModuleDiffBlock
PROFINET协议定义的部分标准数据记录
数据记录的寻址由以下参数指定
- API (0: 标准API 1 ... 0xFFFF 行规定义)
- slot (0 ... 0x7FFF)
- subslot (1 ... 0x7FFF)
- index ( 0..0x7FFF用户定义 ,8000 ... 0xAFFF, 0xB000 ... 0xBFFF 行规定义)
举例来说,设备的slot 1, subslot 1 是一个模拟量输入模块,我们可以定义一个参数控制通道的选择(0-10V或4-20ma),index为0x0008。控制器可以通过(API =0,slot = 1,subslot = 1,index = 0x0008)去读写这个参数。
协议栈中实现了一个示例数据记录的操作,在GSDML文件中定义的64Bytes数字量输入中
<!-- ================================== -->
<!-- 64 byte digital input -->
<!-- (param-rec, support PROFIenergy) -->
<!-- ================================== -->
<ModuleItem ID="ID_Mod_11" ModuleIdentNumber="0x00000030">
<ModuleInfo>…</ModuleInfo>
<VirtualSubmoduleList>
<VirtualSubmoduleItem … >
<IOData>…</IOData>
<RecordDataList>
<ParameterRecordDataItem Index="1" Length="4" TransferSequence="0">
<Name TextId="T_general_parameter"/>
<Const Data="0x30,0x01,0x56,0x78" ByteOffset="0"/>
</ParameterRecordDataItem>
</RecordDataList>
<ModuleInfo>…</ModuleInfo>
<PROFIenergy ProfileVersion="V1.1" EntityClass="Class3">…</PROFIenergy>
</VirtualSubmoduleItem>
</VirtualSubmoduleList>
</ModuleItem>
我们可以看到模块“64 bytes 输入“<RecordDataList></RecordDataList>定义了一个index=1 长度为4字节的数据记录,这里的参数是一组固定值"0x30,0x01,0x56,0x78"。也可以改变格式成为用户输入,这样在TIA Portal中就可以项目组态中配置这个参数了,具体的实现方式会在下一章中介绍。同理,模块“64 bytes 输出“也定义了一个index=1 长度为4字节的数据记录,参数值固定为"0x31,0x01,0x56,0x78"。
协议栈中,数据记录的读写操作分别对应PnUsr_cbf_rec_read和PnUsr_cbf_rec_write这两个回调函数。在PnUsr_cbf_rec_write中
...
根据传入的index执行不同的配置功能。index=1时,协议栈只是将接收的配置参数打印到串口终端。配置参数在设备建立连接时由PLC写入到设备数据记录中,在串口终端我们可以看到GSDML定义的数值已经写入到设备中。
文章来源:https://www.toymoban.com/news/detail-417575.html
两个打印信息分别对应 Slot 1的 “64 bytes 输入“和Slot 2的” 64 bytes 输出“。文章来源地址https://www.toymoban.com/news/detail-417575.html
到了这里,关于ERTEC200P-2 PROFINET设备完全开发手册(5-1)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!