Skip to content

Omron Fins

Introduction

The Fins Omron MQTT Asset Connector is a specialized Flux Asset designed for seamless integration within the Coreflux ecosystem. It acts as a bridge, connecting FINS protocol-based devices, such as PLCs (Programmable Logic Controllers) from Omron, with a MQTT client. This facilitates real-time data exchange and management, leveraging the MQTT Broker's robust capabilities within the Coreflux platform. The connector primarily serves system integrators, application developers, and IoT device manufacturers who are looking to enhance interoperability and streamline data communication across their IoT solutions.

By embedding the Fins Omron MQTT Asset Connector into their systems, users can effortlessly manage and configure their FINS devices via the Coreflux HUB. This setup not only simplifies the integration of diverse IoT assets but also guarantees secure and efficient data traffic through Cloud Coreflux's deployment capabilities, including support for WebSocket over SSL Port and MQTT over TLS Port. Aimed at optimizing operational efficiency and easing the configuration process, this connector is an essential tool for industry professionals seeking to exploit the full potential of the Coreflux architecture without compromising on simplicity or functionality.

Features and Benefits

The Fins Omron MQTT Asset Connector serves as a bridge, enabling seamless communication between FINS protocol-based devices and MQTT clients. This connector is designed to integrate devices easily within the Coreflux ecosystem, leveraging the lightweight MQTT protocol for efficient data exchange. Its key features and advantages include:

Seamless Integration: The connector simplifies the integration process of FINS devices into the Coreflux ecosystem or any MQTT-compatible system. This breaks down the barriers between different protocols, allowing for more straightforward network architectures and easier management of devices.

Real-time Data Exchange: It enables real-time data exchange between devices and the MQTT broker. This feature ensures that data from the operational environment is readily available for analysis, monitoring, and decision-making, contributing to quicker response times and more informed decisions.

Operational Efficiency: By facilitating swift and reliable data exchange, the connector enhances operational efficiency. It reduces the need for manual data handling and complex integrations, allowing systems to communicate directly with each other. This reduction in manual intervention and the streamlining of processes save time and resources.

Flexibility and Scalability: The use of MQTT as a transport protocol offers flexibility and scalability. MQTT is known for its lightweight overhead and efficient delivery mechanisms, making it ideal for a wide range of devices, from high-powered industrial equipment to low-power IoT sensors. This means the connector can easily adapt to the changing scale and requirements of projects.

Enhanced Security: Given the importance of security in data communication, especially in industrial environments, the connector supports the inherent security features of MQTT. This includes the use of TLS/SSL for encryption, ensuring that data exchanged between FINS devices and MQTT clients is protected against unauthorized access.

Reduced Development Time: Developers have noted that the connector significantly reduces the time and effort required to connect FINS devices to a MQTT client. This benefit arises from the connector’s ability to abstract the complexity of the FINS protocol and MQTT, providing a straightforward way to achieve connectivity without deep protocol expertise.

Prerequisites

To use the Fins Omron MQTT Asset connector effectively, ensure you have the following prerequisites:

  • A Coreflux Central account for managing your IoT devices and data.
  • Coreflux MQTT Broker is recommended for optimal compatibility with the Fins Omron MQTT Asset connector, although other MQTT brokers may also work.
  • A MQTT Client, such as MQTT Explorer, for monitoring and interacting with MQTT messages.
  • Coreflux Hub installed and configured, serving as the central point for your IoT infrastructure within the Coreflux ecosystem.
  • Software dependencies related to the protocol of the connector (besides MQTT) need to be addressed. This includes any libraries or frameworks necessary for the Fins Omron protocol.
  • Hardware that is compatible with the Fins Omron protocol to ensure seamless communication between the device and the MQTT Asset connector.

Asset Installation

To install the Fins Omron MQTT Asset connector in the Coreflux environment, the setup process can be executed either through the Coreflux HUB for a UI-driven approach or directly through the MQTT broker for users preferring command-line operations. Below is the outline of both methods:

Using Coreflux Hub:

  1. Access the Coreflux HUB on a Linux or Windows device. The HUB serves as the central interface for the Coreflux ecosystem.
  2. Navigate to the asset installation section within the Coreflux HUB UI.
  3. Follow the UI prompts to install the desired assets. For assistance on getting started with your first asset installation, refer to the guide available at Getting Started with Your First Asset.
  4. The installation process through the HUB will handle the necessary configurations and set up the Fins Omron MQTT Asset connector seamlessly.

Without Using Coreflux Hub:

If you're opting to proceed without utilizing the Coreflux Hub, these steps focus on using the MQTT broker directly for asset installation.

  1. Connect to the Coreflux MQTT Broker using your preferred MQTT client.
  2. Login with your Coreflux account credentials by publishing to the $SYS/Coreflux/Command topic with the payload: -L myname@mydomain.com password.
  3. To check your available assets, publish the -l command to the $SYS/Coreflux/Command topic. This action retrieves a list of assets, indicating how many you have available and how many are currently utilized (e.g., coreflux_fins2mqtt 2/3).
  4. Install an asset by publishing the -I coreflux_fins2mqtt command to the $SYS/Coreflux/Command topic. This executes the installation of the Fins Omron MQTT Asset connector.
  5. Upon successful installation, a message will be received on the $SYS/Coreflux/Command/Output topic indicating the successful installation of your Fins Omron MQTT Asset connector, including the version and asset GUID.

Ensure your MQTT client is configured to interact effectively with the Coreflux MQTT Broker, and follow any prompts or documentation for any additional configuration that may be required for your specific client.

Asset Configuration

MQTT Parameters Configuration

Parameter Description Required Example
Port MQTT broker port Yes 1883
Address IP address of the MQTT broker Yes 127.0.0.1
IsAnonymous If the connection is anonymous Yes false
Username Username for MQTT broker (if not anonymous) No ``
Password Password for MQTT broker (if not anonymous) No ``
EnableTLS If TLS is enabled for the connection Yes false
EnableDebugTopic If debug topics are enabled Yes true
DebugTopic MQTT topic for debugging purposes Yes fins2mqtt/DebugTopic

FINS Parameters Configuration

Parameter Description Required Example
Address IP address of the Omron device Yes 192.168.100.201
Port Port for FINS protocol Yes 9600
LocalNode Local node address Yes 176
RemoteNode Remote node address Yes 201
Timeout Timeout for FINS communication in seconds Yes 2
Retries Number of retries for FINS communication Yes 5
Polling Polling interval in milliseconds Yes 200

Example JSON Configuration

{
  "MQTTParameters": {
    "Port": 1883,
    "Address": "127.0.0.1",
    "IsAnonymous": false,
    "Username": "",
    "Password": "",
    "EnableTLS": false,
    "EnableDebugTopic": true,
    "DebugTopic": "fins2mqtt/DebugTopic"
  },
  "FINSParameters": {
    "Address": "192.168.100.201",
    "Port": 9600,
    "LocalNode": 176,
    "RemoteNode": 201,
    "Timeout": 2,
    "Retries": 5,
    "Polling": 200
  },
  "Tags": [
    {
      "Name": "BoolExample",
      "WriteDirection": 1,
      "MQTTTopic": "exampleTopic/bool",
      "MQTTQoS": 0,
      "MQTTRetain": false,
      "DataAddress": 400,
      "BitAddress": 6,
      "DataType": 0,
      "MemoryType": 0,
      "StringSize": 0
    },
    {
      "Name": "IntExample",
      "WriteDirection": 1,
      "MQTTTopic": "exampleTopic/int",
      "MQTTQoS": 0,
      "MQTTRetain": false,
      "DataAddress": 420,
      "BitAddress": 6,
      "DataType": 2,
      "MemoryType": 0,
      "StringSize": 0
    },
    {
      "Name": "RealExample",
      "WriteDirection": 1,
      "MQTTTopic": "exampleTopic/real",
      "MQTTQoS": 0,
      "MQTTRetain": false,
      "DataAddress": 410,
      "BitAddress": 6,
      "DataType": 8,
      "MemoryType": 1,
      "StringSize": 0
    },
    {
      "Name": "StringExample",
      "WriteDirection": 1,
      "MQTTTopic": "exampleTopic/string",
      "MQTTQoS": 0,
      "MQTTRetain": false,
      "DataAddress": 500,
      "BitAddress": 6,
      "DataType": 11,
      "MemoryType": 1,
      "StringSize": 0
    }
  ]
}

Tags

Tag Parameters Explanation

Parameter Description Required Example
Name The name of the tag Yes BoolExample
WriteDirection The direction of data flow Yes 1 (ToMQTT)
MQTTTopic The MQTT topic to publish or subscribe to Yes exampleTopic/bool
MQTTQoS Quality of Service for MQTT Yes 0
MQTTRetain Retain flag for MQTT messages Yes false
DataAddress The address of the data in the Omron device Yes 400
BitAddress The bit address (for bit-specific data types) Yes 6
DataType The type of data Yes 0 (BOOL)
MemoryType The memory area of the Omron device Yes 0
StringSize Size of the string (for string data types) Yes 0

Write Direction Parameter detail

WriteDirection Value Description
0 - ToAll Data is read from the Omron device and published to the MQTT topic, and data received on the MQTT topic is written to the Omron device.
1 - ToMQTT Data is read from the Omron device and only published to the MQTT topic.
2 - ToFINS Data received on the MQTT topic is only written to the Omron device.

DataType Parameter detail

DataType Value Data Type
0 BOOL
1 BYTE
2 INT
3 UINT
4 DINT
5 UDINT
6 LINT
7 ULINT
8 REAL
9 LREAL
10 ASCII
11 String

Example JSON for Tag Configuration

Remember that the config should be together with the tags.

{
  "Tags": [
    {
      "Name": "BoolExample",
      "WriteDirection": 1,
      "MQTTTopic": "exampleTopic/bool",
      "MQTTQoS": 0,
      "MQTTRetain": false,
      "DataAddress": 400,
      "BitAddress": 6,
      "DataType": 0,
      "MemoryType": 0,
      "StringSize": 0
    },
    {
      "Name": "IntExample",
      "WriteDirection": 1,
      "MQTTTopic": "exampleTopic/int",
      "MQTTQoS": 0,
      "MQTTRetain": false,
      "DataAddress": 420,
      "BitAddress": 0, // Updated according to standard use case, assuming BitAddress not used for INT
      "DataType": 2,
      "MemoryType": 0,
      "StringSize": 0
    },
    {
      "Name": "RealExample",
      "WriteDirection": 1,
      "MQTTTopic": "exampleTopic/real",
      "MQTTQoS": 0,
      "MQTTRetain": false,
      "DataAddress": 410,
      "BitAddress": 0, // Updated according to standard use case, assuming BitAddress not used for REAL
      "DataType": 8,
      "MemoryType": 1,
      "StringSize": 0
    },
    {
      "Name": "StringExample",
      "WriteDirection": 1,
      "MQTTTopic": "exampleTopic/string",
      "MQTTQoS": 0,
      "MQTTRetain": false,
      "DataAddress": 500,
      "BitAddress": 0, // Assuming BitAddress not applicable for String
      "DataType": 11,
      "MemoryType": 1,
      "StringSize": 0
    }
  ]
}

Note: This JSON provides an example of how to configure four different tags ("BoolExample", "IntExample", "RealExample", and "StringExample") with varying data types to be read from an Omron device and published to specific MQTT topics.

Saving the Configuration

Instructions for properly saving the final configuration for the Fins Omron MQTT Asset connector via coreflux_fins2mqtt are detailed below. Ensuring the accuracy of this process is crucial for the connector to function as expected. The focus here is on the payload that needs to be sent for managing and controlling assets via the MQTT protocol. Please ensure you are logged in and have an asset installed before proceeding.

Save configuration: To save your configuration, use the following command format. Replace <asset_guid> with your asset's unique identifier and <configuration> with your JSON configuration details.

-assetConfigSave <asset_guid> <configuration>

To find your asset GUID, consult the $SYS/Coreflux/Assets topic.

Example:

-assetConfigSave 64b569da-7941-4398-9565-e63f3e6c5e04 (provide the json here)

Check if the configuration was saved (optional): After saving your configuration, you may optionally verify that the configuration has been successfully saved by loading it. Use the command below, replacing <asset_guid> with your asset's unique identifier.

-assetConfigLoad <asset_guid>

Following these steps with attention to detail is fundamental to ensure that the connector runs smoothly and as intended.