PROFINET模块的运行机理
- runtime启动后,PROFIENT模块以组件的形式被运行时加载;
- 初始化IO驱动时也需要对PROFINET模块进行初始化;
- CODESYS IDE上位机软件配置模块参数后,会将配置的相关参数下载到PROFINET模块中;
- 完成参数配置后,runtime将周期性与PROFINET模块交互数据。
CODESYS IDE上位机编程软件中的输入/输出数据区,通过IO驱动模板中读输入、写输出函数,来和CODESYS runtime的缓冲区实现交互;
CODESYS runtime的缓冲区则通过内部通信来与PROFINET模块进行数据交互。
设计思想
基于CODESYS的PROFINET模块开发包括两点:编写PROFINET模块的设备描述文件,编写IO驱动并编译成*.so库文件。
- 设备描述文件:需要将PROFINET IO设备的参数,以组件及其参数的形式进行定义,形成一个xml文件;
- 驱动程序:基于CODESYS的驱动程序设计的重点内容,包括:
- 需要安装运行时IoDrv开发模板;
- 描述PROFINET IO模块的数据结构;
- 正确调用设计的PROFINET接口;
- 设计供CODESYS运行时调用的的内部接口
PROFINET模块数据结构设计
IO驱动程序的前提是设计正确描述PROFIENT模块的数据结构。
IO驱动内部接口设计
PROFINET模块的接口程序需要供CODESYS的运行时程序框架调用,接口包括以下四个部分:
- 模块初始化,顾名思义;
- 配置模块参数,负责解析模块组件中的参数,并下载参数到模块中
- 向PROFINET模块发送数据
- 从PROFINET模块接收数据
结论
基于CODESYS实现PROFINET模块的IO驱动,需要在CODESYS运行时开发包的基础上,编写PROFINET模块的设备描述文件和IO驱动程序。
标签:驱动程序,IO,参数,CODESYS,模块,PROFINET From: https://www.cnblogs.com/ChenMichael/p/17585839.html