虹科分享|基于Linux系统的PROFINET工业读码器方案

虹科PROFINET协议栈方案适用于从站设备开发,符合一致性Class A/Class B等级,满足市场上大部分产品开发需要,如读码器、编码器、远程I/O、传感器、阀门或机器人等设备。协议栈为用户的集成与开发,提供了通用的API函数接口和回调函数,相比于专用芯片方式,用户可以不用关注协议底层驱动实现逻辑,开发难度小、上手容易,用户可轻松、快速地与原有的设备进行集成。同时,虹科方案也提供配套的协议栈设计工具,可非常方便的实现协议栈配置与GSDML文件生成,加快产品上市时间。

一、PROFINET技术简介

PROFINET是PROFIBUS & PROFINET国际组织(PI)定义的开放式工业以太网标准,其为自动化通信领域提供了一个完整的网络解决方案,囊括了诸如实时以太网、运动控制、分布式自动化、故障安全以及网络安全等当前自动化领域的热点,并且作为跨供应商的技术,可以完全兼容工业以太网和现有的现场总线(如PROFIBUS)技术,保护现有投资。另外,PROFINET按照工业环境应用要求,划分了三种不同的通信方式,分别是TCP/IP 的标准通信、实时通信(RT)和同步实时通信(IRT),PROFINET 设备能够根据通信要求选择不同的通信方式。

二、工业读码器背景

工业读码器是一种用于读取条码信息的设备,通常用于工业生产线上的自动化控制和数据采集,它具有高速、高精度、高可靠性等特点,可以快速准确地读取产品信息,并将数据传输到计算机或其他设备上进行处理。作为流水线上集数据处理、条码/射频识别、通信传输为一体的智能化设备,工业读码器在工业制造、医疗检测、汽车零配件、仓储物流等领域广泛应用,可实现对产品的品质追踪、成本控制、生产统计、计件统计等目的,成为工业4.0发展中必不可少的一员。

三、Linux系统集成PROFINET实施方案

1、方案介绍

为了简化工业读码器的网络集成,市场上主流的工业读码器通常需要支持各类工业通信协议标准,如以太网、USB、RS-232、离散型 I/O、Modbus、EtherNet/IP、PROFINET等。同时,在工业读码器的产品开发中,随着工业4.0及边缘计算的发展,越来越多的采用Linux系统与PROFINET通信协议,因此本文将以虹科提供的基于Linux系统的PROFINET协议栈软件代码为例,实现一种支持PROFINET协议的工业读码器方案。

2、方案架构与优势

  • 虹科基于通用Linux系统的PROFINET协议栈方案无严格的硬件平台限制,如图中绿色虚线框中所示,用户可以在诸如瑞芯微rv11xx、TI AM180x、高通骁龙610或树莓派等适配了Linux系统的平台上移植该协议栈,通过调用协议栈提供的API函数接口和回调函数,可与工业读码器的应用程序快速进行集成。
  • 虹科PROFINET协议栈可与其他以太网协议共存,如https、tcp/ip等IT标准协议,为网络拓扑结构组网增加了灵活性,工业读码器即可与PLC控制器间传输实时性高的数据,同时也可以与后台应用程序间进行数据交互,实现对设备的远程管理与诊断。通过采用同一以太网网络,降低了安装,调试和维护的时间和成本
  • 相比于传统总线或串口等协议进行通讯,通信速率慢,数据传输不实时。采用PROFINET工业以太网技术来传输数据,加快了数据传输速度,缩小了数据延时,同时也增强了通信网络的抗干扰能力,确保数据可靠性和稳定性。

3、GSDML文件创建与PROFINET通讯测试

a)  GSDML文件创建

为了方便、轻松地进行协议栈配置,虹科PROFINET协议栈方案提供了一套ICC设计工具,用户可以方便、轻松地进行协议栈配置并生成从站设备的GSDML文件。该工具同时也支持虹科提供的其他工业通讯协议方案的从站描述文件生成,如EtherNet/IP、EtherCAT、CC-Link IE TSN、CANopen等。

b)  PROFINET通讯测试

  • 解压代码包后进入需要编译的工程,比如:/goal_pnio/01_simple_io/gcc/,输入命令:make select,选择运行平台;之后通过make命令编译工程

  • 查询Linux环境下可用的网络接口卡名称,Ubuntu下可通过ifconfig查询。根据查询到的网口名称,进入编译好的可执行文件类路径并运行,运行时注意定义网口,如:./goal_linux_x64.bin -i enx000ec65392ef

  • 通信演示以虹科配套仿真主站软件PROFINET Device Monitor为例,建立主从站连接后可进行IO数据收发测试,,由于01_simple_io实现的功能是将输出数据映射到输入,观察输入输出数据可看到数据区参数相同,可以验证从站正常接收到数据并回传。

可看到打印信息中提示AR关闭。

四、PROFINET协议栈方案

  • 我们提供的PROFINET协议栈可用于从站设备开发,符合一致性Class A与Class B并满足实时等级Class 1。
  • PROFINET协议栈由独立于硬件和与硬件相关的部分组成,这些部分通过消息队列进行通信。应用程序部分仅与PROFINET协议栈的硬件独立部分进行通信。
  • 在应用程序执行期间,PROFINET协议栈自动执行所有必要的通信任务,并借助回调函数将成功接收到的PROFINET IO消息通知应用程序。
  • 兼容性上,通过以下工业控制器的成功测试
    • 博世力士乐IndraControl L65
    • 西门子S7-1500
    • 西门子S7-300
    • Molex E- F2控制器卡
    • TwinCat
    • KW-软件控制器
    • Phoenix RFC 470S

结语

虹科PROFINET协议栈方案适用于从站设备开发,符合一致性Class A/Class B等级,满足市场上大部分产品开发需要,如读码器、编码器、远程I/O、传感器、阀门或机器人等设备。协议栈为用户的集成与开发,提供了通用的API函数接口和回调函数,相比于专用芯片方式,用户可以不用关注协议底层驱动实现逻辑,开发难度小、上手容易,用户可轻松、快速地与原有的设备进行集成。同时,虹科方案也提供配套的协议栈设计工具,可非常方便的实现协议栈配置与GSDML文件生成,加快产品上市时间。

 

了解虹科PROFINET协议栈方案更多信息,欢迎前往【虹科智能互联】官方网站:https://www.intelnect.com/tsn-hsr-prp-switch/

联系虹科工程师:https://tl-tx.dustess.com/Am0Dzfu6M0  

TEL:18922242268

更多推荐