Skip to main content

profinet

Connect to PROFINET IO devices for real-time industrial Ethernet communication with deterministic cycle times.

Overview

The profinet node provides connectivity to PROFINET IO devices for real-time industrial Ethernet communication. It operates as an IO Controller, exchanging cyclic process data with PROFINET IO devices such as distributed I/O modules, drives, and sensors with deterministic cycle times as low as 1ms.

IRT/RT
Modes
1ms
Min Cycle
IO
Controller
Ring
Topology

PROFINET Architecture

IO Controller

The master device (PLC/EdgeFlow) that controls data exchange, manages device configuration, and monitors IO device status.

EdgeFlow acts as this

IO Device

Field devices such as distributed I/O modules, sensors, actuators, and drives that exchange process data cyclically.

Connected devices

IO Supervisor

Engineering and diagnostic station for configuration, commissioning, and monitoring of the PROFINET network.

Optional

Properties

Property Type Required Default Description
interface string Yes - Network interface (e.g., eth0, enp0s3)
deviceName string Yes - PROFINET device name (station name)
cycleTime number No 32 IO cycle time in milliseconds (1-512)
slot number Yes - Module slot number in the device
subslot number No 1 Subslot number within the module
watchdog number No 5000 Communication watchdog timeout in ms

Inputs

Write IO Data
{
  "payload": {
    "slot": 1,
    "subslot": 1,
    "data": [0x00, 0xFF, 0x00, 0x3C]
  }
}
Read Device Status
{
  "payload": {
    "action": "status",
    "deviceName": "sensor-module-1"
  }
}

Outputs

Cyclic IO Data
{
  "payload": {
    "device": "sensor-module-1",
    "slot": 1,
    "subslot": 1,
    "data": [0x00, 0x1A, 0x00, 0x3C],
    "iops": "good",
    "iocs": "good"
  },
  "status": "connected",
  "cycleCount": 15234
}
Device Status
{
  "payload": {
    "device": "sensor-module-1",
    "state": "DATA_EXCHANGE",
    "connected": true,
    "cycleTime": 32,
    "uptime": 86400
  }
}

Use Cases

Motion Control

Synchronize multi-axis servo drives with deterministic cycle times for precise positioning in CNC machines and robots.

Distributed IO

Connect remote I/O modules across the factory floor for digital and analog signal acquisition and control.

Drive Control

Interface with PROFINET-compatible variable frequency drives for speed, torque, and position control applications.

Safety Systems

Integrate with PROFIsafe devices for functional safety applications including emergency stops and light curtains.

Example: Read Distributed IO Module

Cyclically read process data from a PROFINET IO device.

[
  {
    "id": "profinet-io",
    "type": "profinet",
    "interface": "eth0",
    "deviceName": "sensor-module-1",
    "cycleTime": 32,
    "slot": 1,
    "subslot": 1
  },
  {
    "id": "parse-data",
    "type": "function",
    "func": "msg.payload.temperature = (msg.payload.data[0] * 256 + msg.payload.data[1]) / 10; msg.payload.pressure = (msg.payload.data[2] * 256 + msg.payload.data[3]) / 100; return msg;"
  },
  {
    "id": "monitor",
    "type": "debug",
    "name": "Process Data"
  }
]

Tips & Best Practices

Dedicated Interface: Use a dedicated Ethernet interface for PROFINET. Do not share the interface with other network traffic.

GSDML Files: Import the device GSDML file to properly configure slots, subslots, and expected IO data structure.

Watchdog Timer: Set an appropriate watchdog timeout. If the controller stops communicating, the device will enter a safe state.

Network Topology: PROFINET supports star, line, and ring topologies. Ring topology provides redundancy with media redundancy protocol (MRP).

Related Nodes