Devices Nodes (Reference) represent physical devices or PLCs in the communication network, with each node containing one or more communication points mapped to device addresses.
Device Nodes provide:
Each node maps to a specific device (PLC, RTU, controller) accessible through its parent channel.
Property | Description | Example |
---|---|---|
Name | Node identifier | PLC_Line1 |
Channel | Parent communication channel | ModbusTCP_Channel |
PrimaryStation | Main device address | 192.168.1.10:502 |
BackupStation | Redundant device address | 192.168.1.11:502 |
SyncDate | Last import timestamp | 2024-03-15 14:30:00 |
SyncStation | Import source details | IP:Port:Slot |
SyncSettings | Import configuration used | Auto-detect, L5K file |
Description | Node documentation | Line 1 Main PLC |
Protocol-specific addressing:
Automatic failover configuration:
Source | Description | Supported Protocols |
---|---|---|
PLC Programs | Import from PLC files | ControlLogix, Siemens |
OPC Browse | Discover OPC servers | OPC DA/UA |
Online Discovery | Scan network devices | Modbus, BACnet |
CSV Import | Bulk configuration | All protocols |
See → Importing PLC Addresses for detailed instructions
Channel
??? Node (Device)
??? Point 1
??? Point 2
??? Point Group
??? Point 3
??? Point 4
Channel: ModbusTCP_Main
Name: PLC_Tank_Farm
PrimaryStation: 192.168.1.100:502
BackupStation: 192.168.1.101:502
Description: Tank farm controller
Channel: EthernetIP_Channel
Name: CLX_Line1
PrimaryStation: 192.168.1.50;1;0
SyncSettings: L5K Import
Description: Line 1 ControlLogix
Channel: OPCUA_Channel
Name: OPC_Server1
PrimaryStation: opc.tcp://server:4840
SyncDate: 2024-03-15
Description: Main OPC UA Server
Monitor configuration imports:
Node offline:
Import failures:
Communication errors:
Points not updating:
Monitor node health:
csharp
// Node status
bool isOnline = @Device.Node.NodeName.IsOnline;
// Station active
string activeStation = @Device.Node.NodeName.ActiveStation;
// Communication stats
int successCount = @Device.Node.NodeName.SuccessCount;
int errorCount = @Device.Node.NodeName.ErrorCount;
// Last sync
DateTime syncTime = @Device.Node.NodeName.LastSync;