Monokot Server 1.x
  • What is Monokot Server?
  • Quickstart
  • 🐸Basics
    • Supported OS and Hardware
    • Installation
    • Licensing
    • OPC UA
      • UA TCP Endpoint
      • UA Settings
      • Client Certificates
      • Aliases
      • Access to Object Settings
      • Troubleshooting
    • Security Certififcate
    • Users & Roles
    • Administrator GUI
      • Event Log
      • Users in Monokot Server Administrator
      • Roles in Monokot Server Administrator
    • Startup Parameters
  • 🦊Tags & Devices
    • Devices
      • Diagnostics
      • Devices in the Monokot Server Administrator
    • Tags
      • Parameters
      • Change Trigger
      • Tags in Monokot Server Administrator
        • Go Online
        • Group Action
        • Import & Export
    • Modbus Connectivity
      • Parameters
      • Addressing
      • Diagnostics
    • Siemens Connectivity
      • Parameters
      • Addressing
      • Access to DBs area in S7-1200/S7-1500
    • IEC 60870-5-104 Connectivity
      • Parameters
      • Addressing
      • Time Conversion
      • Diagnostics and Commands
    • OPC UA Connectivity
      • Parameters
      • Addressing
      • Diagnostics
      • How to: Importing OPC UA items
      • How to: Pulling Security Certificate
    • InfluxDB Connectivity (Connector)
      • Parameters
      • Addressing
      • Query Result and Data Mapping
      • Diagnostics
      • How to: Configure for InfluxDB 2.x
    • SNMP Connectivity
      • Parameters
      • Addressing
      • UDP Considerations
  • 🐺Time Series & Stores
    • Stores
      • Backlog
      • Diagnostics
      • Stores in Monokot Server Administrator
    • Time Series
      • Parameters
      • Deadband
      • Sampling
      • Last Sample Repeat
      • Time Series in Monokot Server Administrator
        • Group Action
        • Import & Export
    • InfluxDB Connectivity (Store)
      • Parameters
      • Addressing
      • Data Structure
      • About Metadata
      • Diagnostics
      • How to: Configure for InfluxDB 2.x
    • PostgreSQL Connectivity
      • Parameters
      • Addressing
      • Database Design
      • Data Compression
    • REST Connectivity
      • Parameters
      • Addressing
      • Message Script
      • RestRequestMessage
      • DataContext
      • TimeSeries
  • 🐻Scripts
    • Overview
    • Expression
      • Parameters
      • Import & Export
      • Go Online
    • Programming Examples
      • How to: Calculate Arithmetic Mean
      • How to: DoNothing
      • How to: Writing to Tag
      • How to: Inverting Bits
      • How to: Execute SQL
      • How to: Run Ping
      • How to: Do Simulation
      • How to: String Formatting
      • How to: OPC UA Method
      • How to: Initialize Device Settings from File
    • API
      • Bundle
      • BundlePair
      • Context
      • DataMap
      • DataMapPair
      • DataTriggerInfo
      • Expression
      • MosCrypto
      • MosDirectories
      • MosFiles
      • MosOdbc
      • MosOdbcReader
      • MosProcess
      • MosProcessExecuteResult
      • MosText
      • MosUtils
      • ValueState
Powered by GitBook
On this page
  1. Tags & Devices

Devices

Device is a driver used for interacting with an external data source (a PLC, sensor, database, etc.) in read and write modes.

Subdevice represents a child element of the device and works with the same communication channel as the parent device. Each subdevice has a specific priority with which it will access the communication channel. Highest priority value means that the subdevice will gain access first. The parent device always has the highest priority.

The concept of a device and subdevice allows for working with Modbus TCP/Modbus RTU interface converter (in bridge mode) if there is more than one node in the RTU network.

The current version of the server includes a set of drivers for:

  • Modbus TCP, Modbus RTU over TCP and Modbus RTU/ASCII (cyclic driver).

  • S7 protocol for Siemens S7-300/S7-400/S7-1200/S7-1500/Sinamics over Ethernet (cyclic driver).

  • Simple Network Management Protocol v1 and v2c (cyclic driver).

  • InfluxDB connector (represents time series fields as OPC UA items, cyclic driver).

  • IEC 60870-5-104 TCP/IP Master (event-oriented driver).

  • OPC UA Client (access to external OPC UA servers).

Cyclic driver perform reading and writing are performed cyclically at certain time intervals. The time interval depends on the update rate of tags associated with the driver and its settings.

As well as executing cyclic polling protocols, all drivers are also ‘block’ polling drivers. The ‘block’ polling is used to achieve maximum data reading performance. For example:

  • The Modbus driver reads data by organizing them into 120-byte blocks, which is much more efficient than reading one register at a time

  • The SNMP driver reads blocks consisting of 25 OIDs, which is much more efficient than reading one OID at a time

The maximum size of the block can be changed in the device settings. By default, maximum allowed values are used.

After generating the blocks, the device groups them by update rate and device-specific characteristics. For example, the Siemens driver polls several addresses with the same update rate of 500 ms, of which two (address A and address C) belong to DB1, and the third (address B) belongs to DB20. With this configuration, the driver will create two blocks:

  • 1st block (addresses A and C with 500ms update rate)

  • 2nd block (address B with 500ms update rate)

In case the tag with address C has an update rate of 100 ms, the driver will create three block groups:

  • 1st block (address A with 500ms update rate)

  • 2nd block (address B with 500ms update rate)

  • 3rd block (address C with 100ms update rate)

All operations on generating blocks and block groups are performed by the driver automatically without any user intervention.

To improve polling performance, several devices can be created to connect to the same data source. In this case, the source is polled asynchronously. This method is only suitable if the target data source is able to handle multiple connections at the same time.

Unlike the cyclic driver, the event-oriented driver does not send periodic requests to the device, but only initiates data transfer; most of the time it listens to the information channel analyzing the received traffic. During the traffic analysis, the driver queues the values for each tag associated with the driver. Note that in the case of event-oriented driver, the tag’s Update Rate determines what frequency the tag value queue will be processed with.

PreviousStartup ParametersNextDiagnostics

Last updated 2 years ago

🦊