ffeasy user manual - softing · softing ffeasy-modbus – user’s manual introduction conn. pin #...

56
FFeasy-Modbus User’s Manual Version 2.30 Date: October 26, 2010 Softing Industrial Automation GmbH Richard-Reitzner-Allee 6 D-85540 Haar Phone (++49) 89 45656-0 Fax (++49) 89 45656-399 © Copyright 2010 by Softing Industrial Automation GmbH All rights reserved.

Upload: others

Post on 23-Oct-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

  • FFeasy-Modbus

    User’s Manual

    Version 2.30

    Date: October 26, 2010

    Softing Industrial Automation GmbH Richard-Reitzner-Allee 6 D-85540 Haar Phone (++49) 89 45656-0 Fax (++49) 89 45656-399

    © Copyright 2010 by Softing Industrial Automation GmbH All rights reserved.

  • © 2010 SOFTING Industrial Automation GmbH

    No part of this document may be reproduced (printed material, photocopies, microfilm or other method) or processed, copied or distributed using electronic systems in any form whatsoever without prior written permission of SOFTING Industrial Automation GmbH.

    The producer reserves the right to make changes to the scope of supply as well as changes to technical data, even without prior notice. A great deal of attention was made to the quality and functional integrity in designing, manufacturing and testing the system. However, no liability can be assumed for potential errors that might exist or for their effects. Should you find errors, please inform your distributor of the nature of the errors and the circumstances under which they occur. We will be responsive to all reasonable ideas and will follow up on them, taking measures to improve the product, if necessary.

    We call your attention to the fact that the company name and trademark as well as product names are, as a rule, protected by trademark, patent and product brand laws.

    All rights reserved.

    Page 2 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual Terms and Abbreviations

    Table of Contents

    Terms and Abbreviations 6 1 References 7 2 Introduction 8 2.1 Fieldbus Interface Board (FBK-2/HW) 8 2.1.1 Overview 8 2.1.1.1 Microcontroller 9 2.1.1.2 Fieldbus controller 9 2.1.1.3 Fieldbus 9 2.1.1.4 Serial Interface 10 2.1.1.5 Jumpers 10 2.1.1.6 Connectors 10 3 FFeasy-Modbus Concept 12 3.1 Overview 12 3.2 Modbus Master 12 3.2.1 Access Modes 12 3.2.1.1 Acyclic Write 13 3.2.1.2 Acyclic Read 13 3.2.1.3 Cyclic Write 13 3.2.1.4 Cyclic Read 13 3.2.2 Communication Strategy 13 3.2.3 Timing Requirements 13 3.2.4 Request Categories 14 3.2.5 Request Lists 14 3.2.6 Request Priorities 15 3.2.7 Procedures during Device Start-Up 15 4 FFeasy-Modbus Configuration Setup 17 4.1 Function Block Layout 17 4.1.1 FFeasy-Modbus TB 17 4.2 DD Adjustments 18 4.2.1 Adjusting Manufacturer ID information 19 4.2.2 Adjusting Device Type information 19 4.2.3 Adjusting Device Revision information 19 4.2.4 Adjusting DD Revision information 20 4.2.5 Adjusting Channel information 20 4.2.6 Adjusting Unit Codes List for XD_SCALE Parameter of AI FBs 20

    V 2.30 Page 3 of 56

  • Softing FFeasy-Modbus – User’s ManualTerms and Abbreviations

    4.2.7 Adjusting Process Value Parameters information 21 4.2.8 Adjusting Process Value Units information 21 4.2.9 Adjusting Generic Parameters information 22 4.3 Device identification data handling 23 4.4 General Precautions for FF 23 5 FFeasy-Modbus Configuration Download 25 5.1 Generation Process 25 5.1.1 Generation Tool Overview 25 5.1.2 Executable files generation 25 5.2 Download Process 32 5.2.1 Overview 32 5.2.2 Flash Programming of .mot file 32 5.2.3 Downloading .bin file 32 6 APPENDIX A: FFeasyGen-Modbus Messages Description 33 7 APPENDIX B: FF Unit Codes Description (ordered by value) 38

    Page 4 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual Terms and Abbreviations

    Table of Figures

    Fig 2-1: Block Diagram of the Softing FBK 2 Hardware.......................................................................... 9 Fig 2-2: Location of the connectors X1 and X2 on the Softing FBK-2/HW ........................................... 11 Fig 3-1: Request Lists............................................................................................................................ 15 Fig 3-2: Data Path during Start of the FD Software .............................................................................. 16 Fig 5-2: Option on saving configuration template.................................................................................. 26 Fig 5-3: Lowering Security Level to Medium ......................................................................................... 26 Fig 5-4: Enable Macros when opening configuration template ............................................................. 27 Fig 5-5: Conversion .XLS to .CSV – only active sheets conversion warning........................................ 27 Fig 5-6: Unhidden worksheets............................................................................................................... 27 Fig 5-7: Conversion .XLS to .CSV – feature loss warning .................................................................... 28 Fig 5-8: FFeasyGen calling convention (Console Variant).................................................................... 28 Fig 5-9: Successful generation process (Console Variant) ................................................................... 29 Fig 5-10: Unsuccessful generation process (Console Variant) ............................................................. 29 Fig 5-11: FFeasyGen calling convention (GUI Variant) ........................................................................ 30 Fig 5-12: Successful generation process (GUI Variant) ........................................................................ 31 Fig 5-13: Clearing error messages (GUI Variant) ................................................................................. 31 Fig 5-14: Unsuccessful generation process (GUI Variant).................................................................... 31

    V 2.30 Page 5 of 56

  • Softing FFeasy-Modbus – User’s ManualTerms and Abbreviations

    Terms and Abbreviations

    AI Analog Input CFF Capability File Format CPU Central Processing Unit CSV Comma Separated Value DD Device Description DP Decentralized Peripheries EEPROM Electrically Erasable Read Only Memory FB Function Block FBK Fieldbus interface Kit FD Field Device FF Foundation Fieldbus FSK Frequency Shift Keying GUI Graphical User Interface GSD Gerätestammdatei MM Modbus Master LAS Link Active Scheduler LM Link Master MAU Medium Attachment Unit RB Resource Block SK Starter Kit SDK Software Development Kit TB Transducer Block VBA Visual BASIC for Applications

    Page 6 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual References

    1 References

    /1/ GenerateVFD - FF Functional Description Rev. 4.24; Softing AG, Sep-08, 2009

    /2/ Foundation Fieldbus Specifications 2008.3

    /3/ MODBUS APPLICATION PROTOCOL SPECIFICATION V1.1b, December 28, 2006

    /4/ MODBUS over Serial Line Specification and Implementation Guide V1.02, December 20, 2006

    /5/ FFeasy-Modbus Configuration Template User’s Manual V2.30, Softing AG, July-20, 2010

    V 2.30 Page 7 of 56

  • Softing FFeasy-Modbus – User’s ManualIntroduction

    2 Introduction

    With its FBK-2 hardware Softing provides a universal interface board for Foundation Fieldbus. Its serial interface allows easy connection to existing Modbus-RTU devices to enhance them with a fieldbus network interface. The FBK-2 hardware provides an asynchronous serial interface to communicate with Modbus devices on TTL signal level as well as a 3.15VDC and 6.3 VDC power supply, sourcing a maximum of 16 mA supply current.

    The FFeasy-Modbus system comprises the FD SW, a configuration template, a .bin/.mot generation tool and a tool for downloading the configuration file over filedbus.

    The FFeasy-Modbus FD SW allows connecting arbitrary Modbus transmitter devices. This firmware sets up a standard FF function block application with one Resource Block (RB), four Analog Input (AI) Function Blocks and one Analog Input Transducer Block (FFeasy-Modbus TB). The AI TB will provide 25 generic parameters which a customer (referred as user hereafter within this document) may use for his own application. The use of the generic parameter can be defined by the user via a configuration data sheet which will be downloaded to the device.

    A default DD is also included to be able to integrate the device into a Host system.

    The FFeasy-Modbus comes with an already completed conformance certificate, which can be referred to during the final registration. Also included is a statement of conformance for the Physical Layer, which applies to the FBK-2 hardware. Additionally, a pre-certification for device registration is available.

    The user will just has to generate his customized mapping table and adapt the device description to his needs. To register the device, the user will have to request a Manufacturer ID from FF and follow a simplified registration process.

    2.1 Fieldbus Interface Board (FBK-2/HW)

    2.1.1 Overview

    The apparatus FFeasy-Modbus is a communication interface from an industrial intrinsic-safe fieldbus Foundation Fieldbus according to IEC 61158-2 Type 1 to an intelligent field device, for instance, to a sensor. According to FISCO this apparatus is a field device.

    The fieldbus interface board contains all hardware components required to run the according protocol software and the Modbus master, which is connected to the Fieldbus system through the Modbus mapping software.

    The Renesas low-power CPU M16C operated at 4MHz (default) provides sufficient processing power at a current consumption of less than 10 mA.

    Page 8 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual Introduction

    Fig 2-1: Block Diagram of the Softing FBK 2 Hardware

    Digital Unit

    Microcontroller M16C

    Fieldbuscontroller

    UFC100

    MAU

    medium attachment unit

    Protection,

    F

    I2C memory interface

    Jumper

    configurable IO

    DI/DO/AI/AO

    6.3V

    Power Output

    3.15V

    Power Output

    Serial Interface

    M16C programming and debug interface

    X2

    Fieldbus

    IEC61158-2 H1

    Fieldbus Foundation

    X1

    The block diagram gives an overview of the hardware components the Fieldbus interface board consists of. The Modbus protocol is run on an asynchronous serial interface of the M16C using the standard TTL level signals of the CPU.

    2.1.1.1 Microcontroller

    The CPU used for FBK-2/HW is a Renesas M16C62P operated at 4MHz (default) - Renesas Type: M30626FJPGP. The CPU has 512kB internal Flash and 31kB internal SRAM. Additionally, the FBK-2 provides 512kB external SRAM and 8kB non-volatile FRAM.

    2.1.1.2 Fieldbus controller

    The Fieldbus controller used is Aniotek UFC100-F1.

    2.1.1.3 Fieldbus

    The FBK-2 board is powered from Fieldbus with 9V up to 32V. The physical layer is according to IEC 61158-2 type 1 voltage mode, 31,25kBit/s. The rated current of FBK-2/HW is selectable out of In = 10mA / 13mA / 18mA / 26mA from which the FBK-2/HW needs about 10mA and the available current for the application board is max. 3mA / 8mA / 16mA.

    See ATEX certificate for definition of the electrical values.

    For FFeasy-Modbus, the rated default current is set to In = 26mA in order to allow a broad range of Modbus devices drawing up to 16mA being supported. However, the current can be selected by device configuration.

    V 2.30 Page 9 of 56

  • Softing FFeasy-Modbus – User’s ManualIntroduction

    2.1.1.4 Serial Interface

    UART0 of the microcontroller is accessible on connector X1.This interface may be configured by software to I2C, SPI or UART (default).The serial interface is NOT galvanically isolated.

    The Modbus Protocol is using 3V CMOS level UART character format 8O1 and the supported baud rates are 1200Bd, 2400Bd, 4800Bd, 9600Bd, 19200Bd and 38400Bd.

    2.1.1.5 Jumpers

    Fieldbus conformance testing requires to incorporate a way to activate a simulate mode. This may be achieved by wiring this signal to an external jumper or switch. The signal is available on the FBK-2/HW connector.

    Signal #NV_ERASE and #HW_LOCK are also available on the connector. However, for FFeasy-Modbus #HW_LOCK is not used.

    These signals #NV_ERASE; #SIM_EN and #HW_LOCK are internally pulled.

    Signals must be pulled to GND if used.

    2.1.1.6 Connectors

    Fieldbus (X2) – polarity independent.

    Conn. Pin # Signal Name Description

    Fieldbus connector

    X2 1 FB_P IEC H1 network

    X2 2 FB_N IEC H1 network

    X2 3 Nc not connected

    X2 4 Nc not connected

    User interface (X1)

    Conn. Pin # Signal Name Description Dir Programming Port for M16C62 X1 1 VCCS 3 - 3.3V

    used for programmer/debugger do not use to supply application specific board

    Power (In)

    X1 2 BUSY M16C /CTS0 Out X1 3 SCLK M16C CLK1 In X1 4 RXD M16C RXD1 In X1 5 CE /WR I/O X1 6 EPM M16C /Hold I/O X1 7 GND GND Ground X1 8 RESET M16C /RESET In X1 9 CNVSS M16C CNVss In X1 10 TXD M16C TXD1 Out Serial Interface and IO X1 11 Modbus RXD RXD0 In X1 12 Modbus TXD TXD0 Out X1 13 P61 CLK0 Out

    Page 10 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual Introduction

    Conn. Pin # Signal Name Description Dir X1 14 P60 DI, DO, RTS/CTS I/O X1 15 P104 AI, DI, DO, #INT4 I/O X1 16 P93 AO, DI, DO, SCL6(M16C65) I/O X1 17 P100 AI, DI, DO, SDA6(M16C65) I/O X1 18 3V_OUT 3.15V power supply to application specific HW Power X1 19 GND GND Jumper X1 20 #SIM_EN SIM_ENABLE (internal pull-up) In X1 21 #HW_LOCK HW_LOCK (internal pull-up) In X1 22 #NV_ERASE NV_ERASE (internal pull-up) In I2C Interface for EEPROM X1 23 SDA SDA2 (Memory) I/O X1 24 SCL SCL2 (Memory) Out X1 25 GND GND X1 26 GND GND X1 27 GND GND X1 28 VEXT_OUT 6.3V power supply to application specific HW

    No DC load allowed during booting until switching to specific rated current

    Power Out

    The following image shows the position of the connectors X1 and X2 on the FBK 2 board.

    Fig 2-2: Location of the connectors X1 and X2 on the Softing FBK-2/HW

    V 2.30 Page 11 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Concept

    3 FFeasy-Modbus Concept

    3.1 Overview

    The FFeasy-Modbus is intended to set up a Modbus-to-FF gateway with as less effort as possible.

    The FFeasy-Modbus FD SW will further provide a Modbus interface to connect a Modbus-RTU device via UART interface with the FBK-2/HW. The FD SW function block application will consist of a standard resource block, four standard analog input function blocks and a customized analog input transducer block (FFeasy-Modbus TB). The FD SW will be fix implemented and FF certified.

    The FFeasy-Modbus TB will provide 25 generic parameters for user’s own application. The use of the generic parameter can be defined by the user via a configuration table which will be downloaded to the device. Additionally, the TB will provide the special parameter MODBUS_TUNNEL allowing the user to access any Modbus registers directly to read/write values (e.g. if the amount of generic parameters is too small, or any other user specific needs).

    One central component of such a gateway (besides the fieldbus protocol components) is the Modbus Master, which initiates and controls the communication with the Modbus device. The built-in Modbus master acts as a single master, i.e. is not able to deal with a secondary master, as it controls completely the access to the serial interface.

    The Modbus Master supports a sub range of functions as defined by /6/. For standard communication these functions are sufficient to read and write parameters in a Modbus device. Supported functions are:

    • Read Holding Registers (function code 03)

    • Read Input Registers (function code 04)

    • Write single Register (function code 06)

    • Write multiple Registers (function code 16)

    The big advantage of FFeasy-Modbus is that the FD SW implementation is fix and thus FF pre-certified. User will only need to generate the own device description and run a simplified FF certification. Requesting the Manufacturer ID from FF and finally registering the device will be also the user’s responsibility.

    3.2 Modbus Master

    This chapter gives an overview of the Modbus master process and specifies the interface between the Modbus master and the mapping component in the FFeasy-Modbus TB.

    3.2.1 Access Modes

    Parameters in FF devices may be accessed in 4 different ways:

    • acyclic write,

    • acyclic read,

    • cyclic write,

    • cyclic read

    Page 12 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual FFeasy-Modbus Concept

    Cyclic data are process values, which have to be handled with highest priority to provide exact timeliness for control process using these data. Configuration parameters normally are treated as acyclic data.

    Since cyclic data handling must have higher priority and the function blocks must be able to process up-to-date values, but are not able to wait for the execution of certain Modbus queries, the process data are transferred between the Modbus device and the FBK gateway with fixed priority in background. The Modbus master therefore executes in a scheduled way a list of Modbus queries used for process data exchange. Handling of acyclic data is inserted in between, also controlled by the scheduler.

    3.2.1.1 Acyclic Write

    For acyclic write requests the response over the fieldbus network is not sent before the access has completed. Unfortunately, some host systems implement very short response timeouts for such requests (down to 400 ms). In order to process these requests properly and in time, it is useful to run the Modbus interface at a higher baud rate, if possible. Recommended communication speeds would be 4800 to 38400 Baud.

    3.2.1.2 Acyclic Read

    For acyclic read requests the Modbus command mapping implements some kind of data caching, i.e. data has not to be read out from the Modbus device, but only from local objects on the FFeasy-Modbus side. This cache is initialized at device start-up, when Modbus queries delivering data to mapped parameters are issued, and when the Modbus device report a change of its internal configuration (e.g. due to user interaction on a local display) by setting the configuration changed flag in the device status byte within any Modbus response.

    3.2.1.3 Cyclic Write

    The process values as computed from the FF output blocks are passed to the local Modbus database and, controlled by the Modbus scheduler, transferred to the Modbus device as soon as possible, but ‘in-time’ anyway.

    3.2.1.4 Cyclic Read

    Similar as for the cyclic write requests, the Modbus scheduler makes sure that all process data is requested from the Modbus device in-time and provided for further processing in the local Modbus database.

    3.2.2 Communication Strategy

    Since the Modbus communication will (in most cases) run at a lower speed as the fieldbus network, a strategy must be implemented, which guarantees, that the control process using the fieldbus network is able to deal with data of determined quality and age. Thus it is of high importance, that the Modbus communication for process data runs in a safe and deterministic way.

    3.2.3 Timing Requirements

    The Modbus communication has to meet the following timing requirements:

    1. In one macro cycle (for FF) each process value shall be transferred at least once.

    2. Acyclic write requests shall complete, if ever possible, within 400 ms in order to avoid timeout error handling of certain host systems.

    V 2.30 Page 13 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Concept

    From these requirements it is possible to evaluate the (from device to device different) minimum control cycle time (for FF: MIN_CYCLE_T). It depends on the number of process values mapped to cyclic objects within the FF transducer block, and on the Modbus communication speed.

    The minimum cycle time is configurable within the configuration template provided by Softing.

    If acyclic communication is pending, after one cyclic request one acyclic request shall be handled. These statements allow computing the ‘Min Cycle Steps (MCS)’ parameter, which defines the maximum number of Modbus queries, which are executable in one control cycle. It serves as base for the Modbus master to control the communication timing.

    3.2.4 Request Categories

    The Modbus master component divides requests into four categories, in order to meet the timing requirements as described in the previous chapter:

    • Acyclic Write requests – AW

    • Cyclic Write requests – CW

    • Cyclic Read requests – CR

    • Initial Read requests – IR

    • Regular Read requests – RR

    This separation is done only by the MODB component; the Modbus device will just receive different Modbus queries (in the order as scheduled by the MM).

    3.2.5 Request Lists

    The lists containing the requests to the Modbus device are of two types:

    • Lists with requests of the same request category

    • Main request list to the Modbus device

    Page 14 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual FFeasy-Modbus Concept

    MM

    AW CR/W RR

    Main Request List

    IR

    Fig 3-1: Request Lists

    All requests of the same category are managed in one list. The MM transfers the requests from these lists into the Main Request List according to its scheduling scheme. The list for the acyclic write requests has de facto just a size of one entry, as all requests are immediately entered into the main list.

    The entries in the lists contain completely prepared and formatted Modbus queries. When one reply from the Modbus device is received, the next request can be sent immediately without any delay for the Modbus command shaping. This will result in a quick and effective execution of the Modbus communication.

    3.2.6 Request Priorities

    The most important rule to be met is that each process value has to be updated at least once within one macro cycle. The MM now has the task to fill the main request list according to these scheduling rules:

    1. All process values (resp. the complete lists CW and CR) should to be processed within the MCS period

    2. If there is an AW request, it has to be inserted immediately to the main list. If the last request has also been of AW category, there must be one cyclic request in between.

    3.2.7 Procedures during Device Start-Up

    For internal block configuration parameters the FD database contains the cached data from the Modbus device, so that for read access of parameters it is not necessary to run any Modbus communication. Since these data from the Modbus device are not stored non-volatile in the DEV component, before starting the fieldbus communication the DEV component has to update its database with the values from the Modbus device.

    V 2.30 Page 15 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Concept

    Fig 3-2: Data Path during Start of the FD Software

    Fieldbus Network

    Modbus Master

    FF Application

    FF Protocol

    Stack

    Modbus Device

    3. step

    1. step 2. step

    To set up the Modbus communication, MM requests a so called INIT schedule.

    The INIT schedule contains all the Modbus queries needed for FD database update. The Initial list based on the configuration tables downloaded to FFeasy-Modbus device. When there is no Modbus query configured to be part of the Init list, Modbus communication won’t be started at all.

    Step 1 of the start-up phase is issued when the Modbus master was able to set up proper communication with the Modbus device through the INIT schedule. MM requests now the operational schedule containing the device specific cyclic and regular queries. The Cyclic and Regular lists are based on the configuration tables downloaded to FFeasy-Modbus device.

    When all queries of the Init list are processed, the FD database is up to date and the parameters now may be communicated via the fieldbus. This is indicated by clearing the XD_ERROR parameter of the Transducer Block (Step 2).

    Now host systems can start normal interaction with the device, process data can be communicated via the fieldbus (Step 3).

    Page 16 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual FFeasy-Modbus Configuration Setup

    4 FFeasy-Modbus Configuration Setup

    4.1 Function Block Layout

    The FFeasy-Modbus function block application consists of one RB, four AI FBs and one according AI TB (hereafter named FFeasy-Modbus TB).

    The AI FBs are required to provide analog process values, as generated by the Modbus transmitter, into the fieldbus network. The FFeasy-Modbus TB propagates the values over one of the 5 available channels (Primary Value channel, Secondary Value channel, Tertiary Value channel, Quaternary Value Channel and Simulation Value Channel).

    Note: when there is no Modbus Device connected to FFeasy-Modbus device, there is a constant value (SIMULATION_VALUE) available within FFeasy-Modbus TB to simulate the propagation of a process value to an AI FB. In this case Simulation Value Channel will have to be used.

    All Modbus specific parameters are isolated in the FFeasy-Modbus TB.

    4.1.1 FFeasy-Modbus TB

    The FFeasy-Modbus TB contains beneath its standard parameters (which include the main process value named PRIMARY_VALUE) some additional parameters, which contain information from the Modbus device. These parameters are listed here in GenVFD (a tool developed by Softing to simplify development of Function Block application, see /1/) notation.

    The use of last 25 parameters (namely generic parameters) can be defined by a user via a configuration data sheet which will be downloaded to device.

    Parameter Name Acc. Rights (R / RW)

    Parameters Type Size (bytes)

    PV_UNIT Read/Write UNSIGNED16 2 SECONDARY_VALUE STATUS VALUE

    Read-only FLOAT_S UNSIGNED8 FLOATING_POINT

    5

    SV_UNIT Read/Write UNSIGNED16 2 TERTIARY_VALUE STATUS VALUE

    Read-only FLOAT_S UNSIGNED8 FLOATING_POINT

    5

    TV_UNIT Read/Write UNSIGNED16 2 QUATERNARY_VALUE STATUS VALUE

    Read-only FLOAT_S UNSIGNED8 FLOATING_POINT

    5

    QV_UNIT Read/Write UNSIGNED16 2 SIMULATION_VALUE Read/Write FLOAT_S

    UNSIGNED8 FLOATING_POINT

    5

    COMM_STATE Read-only UNSIGNED8 1 MODBUS_TUNNEL Read/Write MODBUS_TUNNEL_S

    UNSIGNED8 UNSIGNED16 UNSIGNED32 FLOATING_POINT UNSIGNED8

    12

    GENERIC_FLOAT_PARAM_1 Read/Write FLOATING_POINT 4 GENERIC_FLOAT_PARAM_2 Read/Write FLOATING_POINT 4 GENERIC_FLOAT_PARAM_3 Read/Write FLOATING_POINT 4 GENERIC_FLOAT_PARAM_4 Read/Write FLOATING_POINT 4 GENERIC_FLOAT_PARAM_5 Read/Write FLOATING_POINT 4

    V 2.30 Page 17 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Configuration Setup

    Parameter Name Acc. Rights (R / RW)

    Parameters Type Size (bytes)

    GENERIC_FLOAT_PARAM_6 Read/Write FLOATING_POINT 4 GENERIC_FLOAT_PARAM_7 Read/Write FLOATING_POINT 4 GENERIC_FLOAT_PARAM_8 Read/Write FLOATING_POINT 4 GENERIC_FLOAT_PARAM_9 Read/Write FLOATING_POINT 4 GENERIC_FLOAT_PARAM_10 Read/Write FLOATING_POINT 4 GENERIC_USIGN16_PARAM_1 Read/Write UNSIGNED16 2 GENERIC_USIGN16_PARAM_2 Read/Write UNSIGNED16 2 GENERIC_USIGN16_PARAM_3 Read/Write UNSIGNED16 2 GENERIC_USIGN16_PARAM_4 Read/Write UNSIGNED16 2 GENERIC_USIGN16_PARAM_5 Read/Write UNSIGNED16 2 GENERIC_USIGN16_PARAM_6 Read/Write UNSIGNED16 2 GENERIC_USIGN16_PARAM_7 Read/Write UNSIGNED16 2 GENERIC_USIGN16_PARAM_8 Read/Write UNSIGNED16 2 GENERIC_USIGN32_PARAM_1 Read/Write UNSIGNED32 4 GENERIC_USIGN32_PARAM_2 Read/Write UNSIGNED32 4 GENERIC_USIGN32_PARAM_3 Read/Write UNSIGNED32 4 GENERIC_USIGN32_PARAM_4 Read/Write UNSIGNED32 4 GENERIC_USIGN32_PARAM_5 Read/Write UNSIGNED32 4 GENERIC_STRINGV_PARAM_1 Read/Write OCTET_STRING 32 GENERIC_STRINGV_PARAM_2 Read/Write OCTET_STRING 32

    When there is no configuration table downloaded to FFeasy-Modbus device it will not be possible to write any of the process values units and generic parameters. FF write requests on generic parameters will be negatively responded.

    Generic parameters will be writeable only after a valid configuration has been downloaded to FFeasy-Modbus device and the generic parameters access rights are adjusted within DD (see §4.2.9 Adjusting Generic Parameters information).

    4.2 DD Adjustments

    The FFeasy-Modbus device description is split in three files

    • ffeasy-modbus.ddl: Contains a generic device description with definition of all blocks (resource block 2, analog input block, transducer block) and all of their parameters (generic parameter descriptions are part of this file too) as well as device identification data.

    • ffeasy-modbus_std.h: Contains placeholders for general definitions (e.g. label and help string for standard block parameter, channel definitions)

    • ffeasy-modbus_defs.h: Contains placeholders for all user configurable items of the device description (e.g. label and help string for TB generic parameter)

    The header files (e.g. ffeasy-modbus_std.h and ffeasy-modbus_defs.h) must be included in the DDL file.

    The user needs to adapt in most cases only ffeasy-modbus_defs.h. Following items can be modified within this file:

    • Manufacturer ID label and value.

    • Device Type label and value.

    Page 18 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual FFeasy-Modbus Configuration Setup

    • Device Revision value.

    • DD Revision value.

    • Unit Codes list for XD_SCALE parameter of AI FBs.

    • Process Value parameters label and help text strings.

    • Process Value Unit parameters label and help text strings.

    • Unit Codes list for Process Value Unit parameters.

    • Process Value Unit parameters access rights (read-only or read-write).

    • Channels label and help text strings.

    • Generic parameters label and help text strings.

    • Generic parameters access rights (read-only or read-write).

    • Generic parameters type (integer or enumeration).

    4.2.1 Adjusting Manufacturer ID information

    MANUFACTURER_ID_VALUE: 24-bit unsigned integer value that uniquely identifies the Manufacturer of the field device, as registered by the Fieldbus Foundation.

    MANUFACTURER_ID_LABEL: String text to identify Manufacturer ID.

    Example: #define MANUFACTURER_ID_VALUE 0x1E6D11

    #define MANUFACTURER_ID_LABEL "|en|Softing AG"

    4.2.2 Adjusting Device Type information

    DEVICE_TYPE_VALUE: 16-bit unsigned integer value that uniquely identifies the type of device being described, as defined by the Manufacturer.

    DEVICE_TYPE _LABEL: String text to identify Device Type.

    Example: #define DEVICE_TYPE_VALUE 0x0084

    #define DEVICE_TYPE_LABEL "|en|FBK2 FFEasy-Modbus"

    4.2.3 Adjusting Device Revision information

    DEVICE_REVISION_VALUE: 8-bit unsigned integer value that uniquely identifies the revision level of the field device, as defined by the Manufacturer.

    Example: #define DEVICE_REVISION_VALUE 1

    V 2.30 Page 19 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Configuration Setup

    4.2.4 Adjusting DD Revision information

    DD_REVISION_VALUE: 8-bit unsigned integer value that uniquely identifies the revision level of this Device Description for the field device, as defined by the Manufacturer.

    Example: #define DD_REVISION_VALUE 1

    4.2.5 Adjusting Channel information

    LBL_CHANNEL_1: Label string for Channel 1.

    HLP_CHANNEL_1: Help text string for Channel 1.

    LBL_CHANNEL_2: Label string for Channel 2.

    HLP_CHANNEL_2: Help text string for Channel 2.

    LBL_CHANNEL_3: Label string for Channel 3.

    HLP_CHANNEL_3: Help text string for Channel 3.

    LBL_CHANNEL_4: Label string for Channel 4.

    HLP_CHANNEL_4: Help text string for Channel 4.

    LBL_CHANNEL_5: Label string for Channel 5.

    HLP_CHANNEL_5: Help text string for Channel 5.

    Example: #define LBL_CHANNEL_1 "|en|Modbus Primary Value"

    #define HLP_CHANNEL_1 "|en|Channel 1 - Modbus Primary Value"

    4.2.6 Adjusting Unit Codes List for XD_SCALE Parameter of AI FBs

    For adjusting the unit codes list of the AI FBs XD_SCALE parameter the following define is available:

    FFEASY_XD_SCALE_UNIT_CODES_ENUM

    Type of the list is ENUMERATED(2) and shall contain FF unit codes.

    Users can define their own unit codes list instead of the default list as provided by Softing (__UNITS_CODES1 and __UNITS_CODES2). The unit codes list definition must be according to FF Device Description Language Specification, chapter ‘Enumeration types’.

    The standard FF unit code definitions have the following notation _UNIT_CODE_XXXX where XXXX represents the unit code value as defined in TN-016 Standard Tables. APPENDIX B: FF Unit Codes Description (ordered by value) at the end of this document provides a complete list of the FF unit codes.

    The unit codes within an enumeration list must be separated by a comma.

    Example: #define FFEASY_XD_SCALE_UNIT_CODES_ENUM _UNIT_CODE_1000, \

    _UNIT_CODE_1001, \

    _UNIT_CODE_1002, \

    Page 20 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual FFeasy-Modbus Configuration Setup

    _UNIT_CODE_1003

    4.2.7 Adjusting Process Value Parameters information

    For any of the four process value parameters the label and help strings may be adjusted by means of following defines:

    LBL_PRIMARY_VALUE: Label string for Primary Value.

    HLP_PRIMARY_VALUE: Help string for Primary Value.

    LBL_SECONDARY_VALUE: Label string for Secondary Value.

    HLP_SECONDARY_VALUE: Help string for Secondary Value.

    LBL_TERTIARY_VALUE: Label string for Tertiary Value.

    HLP_TERTIARY_VALUE: Help string for Tertiary Value.

    LBL_QUATERNARY_VALUE: Label string for Quaternary Value.

    HLP_QUATERNARY_VALUE: Help string for Quaternary Value.

    Example: #define LBL_PRIMARY_VALUE "|en|Primary Value"

    #define HLP_PRIMARY_VALUE "|en|Primary value as delivered by the MODBUS device"

    4.2.8 Adjusting Process Value Units information

    For any of the four process value unit parameters the label string, help string, unit codes list and parameter access rights can be adjusted:

    LBL_PV_UNIT: Label string of the primary value unit parameter.

    HBL_PV_UNIT: Help string of the primary value unit parameter.

    PV_UNIT_ENUM: Unit code list of the primary value unit parameter. Type of the list is ENUMERATED(2) and shall contain FF unit codes.

    HANDLING_PV_UNIT: Access rights of the primary value unit parameter.

    Similar defines are available also for SV_UNIT, TV_UNIT and QV_UNIT parameters.

    When a process value unit has read-only access right the user must use “READ” for HANDLING_..._UNIT.

    When a process value unit has read-write access right the user must use “READ & WRITE” for HANDLING_..._UNIT.

    Users can define their own unit codes list instead of the default list as provided by Softing (__UNITS_CODES1 and __UNITS_CODES2). The unit codes list definition must be according to FF Device Description Language Specification, chapter ‘Enumeration types’.

    The standard FF unit code definitions have the following notation _UNIT_CODE_XXXX where XXXX represents the unit code value as defined in TN-016 Standard Tables. APPENDIX B: FF Unit Codes Description (ordered by value) at the end of this document provides a complete list of the FF unit codes.

    The unit codes within an enumeration list must be separated by a comma.

    V 2.30 Page 21 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Configuration Setup

    Example: #define LBL_PV_UNIT "|en|PV Unit"

    #define HLP_PV_UNIT "|en|Unit of the primary value as delivered by the MODBUS device"

    #define PV_UNIT_ENUM _UNIT_CODE_1000, \

    _UNIT_CODE_1001, \

    _UNIT_CODE_1002, \

    _UNIT_CODE_1003

    #define HANDLING_PV_UNIT READ & WRITE

    4.2.9 Adjusting Generic Parameters information

    For any of the 25 generic parameters the label string, help string and parameter access rights can be adjusted:

    (*) LBL_GENERIC_type_PARAM_x: Label string of the generic parameter.

    (*) HLP_GENERIC_type_PARAM_x: Help text string of the generic parameter.

    (*) HANDLING_GENERIC_type_PARAM_x: Access rights of the generic parameter.

    (*) By type it is intended one of FLOAT, USIGN16, USIGN32 or FLOAT.

    ‘x’ refers to the generic parameter number of a certain type (1 to 10 for FLOAT generic parameters, 1 to 8 for USIGN16 generic parameters, 1 to 8 for USIGN32 generic parameters and 1 to 2 for STRINGV generic parameters).

    When a generic parameter has read-only access right the user must use “READ” for HANDLING_GENERIC_type_PARAM_x.

    When a generic parameter has read-write access right the user must use “READ & WRITE” for HANDLING_GENERIC_type_PARAM_x.

    Example: #define LBL_GENERIC_USIGN16_PARAM_1 "|en|Generic USIGN16 Parameter 1"

    #define HLP_GENERIC_USIGN16_PARAM_1 "|en|Parameter not used. No device configuration downloaded"

    #define HANDLING_GENERIC_USIGN16_PARAM_1 READ

    Additionally, for any USIGN16 and USIGN32 parameter the user may configure also the parameter type.

    By default, the type of all USIGN16 generic parameters is UNSIGNED_INTEGER(2) and the type of all USIGN32 generic parameters is UNSIGNED_INTEGER(4).

    These definitions are in accordance with FF Device Description Language Specification, chapter ‘Type-Variable Attribute’.

    However, beside the Arithmetic data types mentioned above, the user may choose ENUMERATED type for any of the USIGN16 and USIGN32 parameter thus allowing defining only desired values and a text displayed instead of a number within a Host system using the DD. When the enumerated type is used, definition of the type must be in concordance with FF Device Description Language Specification, chapter ‘Enumeration types’.

    Example:

    Page 22 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual FFeasy-Modbus Configuration Setup

    Definition of a parameter of arithmetic type: #define TYPE_GENERIC_USIGN16_PARAM_1 UNSIGNED_INTEGER (2);

    Definition of a parameter of enumerated type: #define ENUM_GENERIC_USIGN16_PARAM_1 {0,"|en|˚C","|en|1st value unit"},\

    {1,"|en|˚K","|en|2nd value unit"},\ {2,"|en|˚F","|en|3rd value unit"}

    #define TYPE_GENERIC_USIGN16_PARAM_1 ENUMERATED(2) {ENUM_GENERIC_USIGN16_PARAM_1}

    Note: user must additionally take care that the “;” character should be placed at the end of generic parameter type definition only in case the arithmetic type is used. For enumerated type the “;” character must not be present at the end of generic parameter type definition.

    4.3 Device identification data handling

    The DD binary which is used by a host system is generated using a tool of the Fieldbus Foundation, the Tokenizer, where the above mentioned .ddl file is used as input for the Tokenizer. The Tokenizer generates for each parameter description a unique identifier, which has to be referenced by the object descriptions (OD) inside the FF device.

    The Member ID and Item ID are part of the symbol file (.sym), as result of the .ddl file tokenizing process. The symbol file must not be changed by user (user must not delete of add any parameter to the .ddl file.

    The naming convention for the DD file is: DDRR.FFO and DDRR.SYM, where DD indicates the device revision and RR the DD revision. The Manufacturer ID and the Device Type are contained in the file to refer to the real device.

    It must be ensured that the Manufacture ID, Device Type, Device Revision and DD Revision are always consistent in both DD binary and FFeasy-Modbus device firmware.

    Therefore the Device Identification Table data configurable by user within the configuration template must be reflected also in the DD binary. When these data are inconsistent, the FF host system will not be able to properly display the FFeasy-Modbus device data.

    4.4 General Precautions for FF

    Before a FF device will start operation, it has to be configured properly. In general this is done by a configuration tool like National Instrument’s ‘Fieldbus Configuration Tool’ or by the device and system configuration dialogues of a FF host system. The tools will integrate the device into a system wide distributed application and will download a proper configuration data set, which derives from that application, to the device (e.g. the network connections required for accessing data in the device, the Function Block Schedule, the Link Objects for the process data communication etc).

    Additionally, some parameters within the AI Function Block have to be set correctly before the block may switch to auto mode:

    • The CHANNEL parameter has to be set from its default value ‘Uninitialized’ to a value providing the proper connection to the TB. For the FFeasy-Modbus application 5 channels can be selected (Modbus Primary Value, Modbus Secondary Value, Modbus Tertiary Value, Modbus Quaternary Value, Simulation Value). The label of these 5 channels is configurable by user, by updating ffeasy-modbus_defs.h

    • The UNIT component of the parameter XD_SCALE must be set to a value which should match the channel unit code.

    V 2.30 Page 23 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Configuration Setup

    • The L_TYPE parameter has to be set from its default value ‘Uninitialized’ to a proper value. In most cases, the value ‘Indirect’ will work fine. If the value for L_TYPE is set to ‘Direct’ then the values for XD_SCALE and OUT_SCALE must be identical.

    When channel ‘Modbus Primary Value’ is selected the PV of AI Function Block displays the primary process value of the connected sensor.

    When channel ‘Modbus Secondary Value’ is selected the PV of AI Function Block displays the secondary process value of the connected sensor.

    When channel ‘Modbus Tertiary Value’ is selected the PV of AI Function Block displays the tertiary process value of the connected sensor.

    When channel ‘Modbus Quaternary Value’ is selected the PV of AI Function Block displays the quaternary process value of the connected sensor.

    When channel ‘Simulation’ is selected the SIMULATION_VALUE of FFeasy-Modbus TB is used as PV of AI Function Block.

    Page 24 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual FFeasy-Modbus Configuration Download

    5 FFeasy-Modbus Configuration Download

    5.1 Generation Process

    5.1.1 Generation Tool Overview

    The purpose of the generation tool (FFeasyGen-Modbus) is to convert the textual configuration file into .mot (Motorola SRec format) and .bin (binary) executable files which can be downloaded to FBK2.

    The generation tool performs some error checking of the configuration file and logs them in a user readable text format. Details about the possible errors detected by the generation tool are described in this document within APPENDIX A: FFeasyGen-Modbus Messages Description.

    There is no installation needed for the generation tool. The delivered FFeasyGen-Modbus.exe has to be copied to a user-defined PC folder. It is recommended that a new folder is created for the generation tool, because when FFeasyGen-Modbus is executed a folder will be created to store the generation process log file (FFeasyGen-Modbus.log). The log file folder will be created in the same directory were the executable file is located. The name of this folder is ‘logs’.

    The generation tool runs only on Windows XP platforms. There are two variants available, one which runs in console mode, and one with GUI.

    The generation tool does not run on Windows 9x/NT/2000 platforms.

    There are no special requirements to be met in regards to the CPU speed, RAM memory and disk space required.

    5.1.2 Executable files generation

    FFeasyGen-Modbus uses as input the configuration file in .CSV format (Comma Separate Value).

    As the configuration template provided by Softing is a Microsoft Office Excel document, the user must save the configuration template as .CSV file before executing the generation tool.

    The generation tool needs only one input for generation of the executable files. This input is the name of the .CSV file.

    Converting configuration file from .XLS to .CSV

    The configuration .XLS file has to be converted into CSV format, by storing the configuration as CSV file. Conversion to CSV format can be done by one of two below described methods.

    Automatic conversion:

    With the configuration template provided by Softing a VBA script is implemented to convert .XLS to .CSV with each ‘save’ command on the configuration template. On ‘Save’ action, the user will be asked if a conversion .XLS to .CSV is desired additionally to saving the actual content of the configuration template.

    V 2.30 Page 25 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Configuration Download

    Fig 5-2: Option on saving configuration template

    When ‘Yes’ option is selected first a save of the actual configured data is performed, then a save to .CSV format of the configuration tables will be performed. The .CSV file will be stored at the same location where the .XLS file is located and will have the same name as the .XLS file.

    When ‘No’ option is selected save of the actual configured data is performed without saving the configuration tables to a .CSV file.

    The VBA script implemented in the configuration template performs the conversion to .CSV format only for ‘Save’ actions, but not for ‘Save As’ actions. ‘Save As’ will only save the .XLS file to a different name.

    To make use of VBA script, before opening the configuration template the Security Level for macros will have to be lowered to ‘Medium’ (recommended) or ‘Low’. This can be done from Excel menu ‘Tools’ -> ‘Macro’ -> ‘Security’.

    Fig 5-3: Lowering Security Level to Medium

    If the Security Level was set to Medium, when configuration template is opened, the user will be notified that the .XLS file contains macros. At this point the user must select ‘Enable Macros’ so that the ‘Save Configuration as CSV’ button is functional.

    Page 26 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual FFeasy-Modbus Configuration Download

    Fig 5-4: Enable Macros when opening configuration template

    If the Security Level was set to Low, macros are allowed to run without being prompted to the user. Care must be taken, since other Excel documents which will be opened after lowering the Security Level to ‘Low’ might contain unsafe macros. Thus it is recommended to set Security Level to ‘Medium’ level rather than ‘Low’.

    Manual conversion:

    Within Softing’s configuration template there is a hidden worksheet (‘Summary’). This worksheet groups the data from the four individual configuration tables (Device Identification, Modbus Commands Mapping, Modbus Device Status and Modbus Scheduling Settings) in one sheet for conversion to .CSV format.

    The reason is that Microsoft Office Excel can convert only one document sheet, the active sheet, to a .CSV document.

    Fig 5-5: Conversion .XLS to .CSV – only active sheets conversion warning

    For manual conversion .XLS to .CSV, the user must first unhide ‘Summary’ worksheet before proceeding with conversion. Unhide a worksheet can be performed from ‘Format’ menu, ‘Sheet’ submenu.

    Fig 5-6: Unhidden worksheets

    Once the ‘Summary’ worksheet was unhidden, the user may proceed with manual conver-sion from .XLS to .CSV format. This can be done in menu ‘File’ ‘Save As’. Within the opened ‘Save As’ window, select ‘CSV (Comma Delimited)’ as ‘Save as type’ and Save it.

    V 2.30 Page 27 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Configuration Download

    When the message above is displayed, click ‘OK’ to continue with the conversion process.

    When a Microsoft Excel file is saved in other format (here .CSV), some of the formatting, data, and other features might be lost. This will cause a new message box as follows.

    Fig 5-7: Conversion .XLS to .CSV – feature loss warning

    At this point click ‘Yes’ button to finish the conversion process.

    As the .CSV file is now available, the next step to generate the executable .mot and .bin files is to execute FFeasyGen-Modbus.exe.

    The only input needed by the generation tool for creation of the executable files is the CSV filename (including path).

    It is not mandatory that the CSV file is in the same folder as FFeasyGen-Modbus.exe. However in this case the full path to the CSV file is required.

    The generation tool can be used in both Windows Console and GUI variants.

    FFeasyGen-Modbus Windows Console Variant

    Steps to follow for executable file generation

    1. Open windows console.

    2. Enter folder where FFeasyGen-Modbus.exe is located.

    3. Execute generation tool by passing the CSV file as input.

    Example:

    Fig 5-8: FFeasyGen-Modbus calling convention (Console Variant)

    After Step 3 was performed the .mot and .bin files are generated in the same folder as the .CSV file location. The windows console will indicate that the executable files were successfully created or not as well as the location of the .mot and .bin files.

    At first execution of FFeasyGen-Modbus a folder ‘logs’ is created within the folder of the generation tool. This folder always contains the log file of the latest generation tool execution, no matter of the generation was successful or with errors.

    Page 28 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual FFeasy-Modbus Configuration Download

    When the configuration could not be converted properly, the generation tool will list the error reasons both to the console window and the generation tool log file. .mot and .bin files will not be generated in this case. This will also be indicated on the console widow and in the log file.

    Examples:

    1. Successful generation process (.CSV file is error free).

    Fig 5-9: Successful generation process (Console Variant)

    2. Unsuccessful generation process (.CSV file with error).

    Fig 5-10: Unsuccessful generation process (Console Variant)

    FFeasyGen-Modbus Windows GUI Variant

    Steps to follow for executable file generation

    1. Enter folder where FFeasyGen-Modbus.exe is located.

    2. Execute generation tool without passing any CSV file as input.

    3. Select the .CSV file to be converted to .bin and .mot. The ‘Browse’ button can be used for easy access to the desired .CSV file.

    4. Once the .CSV file is selected generation process can be started by a mouse click on ‘Generate’ button.

    Example:

    V 2.30 Page 29 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Configuration Download

    Fig 5-11: FFeasyGen-Modbus calling convention (GUI Variant)

    Only if generation process has completed without errors, the .bin and .mot files will be created. These files will be found in the same folder where the .CSV file used is located.

    The ‘Log Messages’ window will display information about the correctness of the generation process. This window will display the generation information in both cases, if the generation process completed successfully or with errors.

    All messages will also be stored in the log file, located in ‘Logs’ folder. ‘Logs’ folder is located in the FFeasyGen-Modbus.exe root folder.

    The ‘Clear’ button within GUI allows clearing the content of the ‘Log Messages’ window

    Examples:

    1. Successful generation process (.CSV file is error free).

    Page 30 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual FFeasy-Modbus Configuration Download

    Fig 5-12: Successful generation process (GUI Variant)

    At this point if ‘Clear’ button is pressed, the ‘Log Messages’ window is cleared.

    Fig 5-13: Clearing error messages (GUI Variant)

    2. Unsuccessful generation process (.CSV file with error).

    Fig 5-14: Unsuccessful generation process (GUI Variant)

    APPENDIX A: FFeasyGen-Modbus Messages Description provides a description of the errors detectable by Softing’s Generation Tool.

    V 2.30 Page 31 of 56

  • Softing FFeasy-Modbus – User’s ManualFFeasy-Modbus Configuration Download

    The generation tool error log file displays only the result of the latest generation process.

    If there are several errors within CSV file, all of them will be recorded in the log file.

    5.2 Download Process

    5.2.1 Overview

    When a correct CSV configuration file is used as input for generation tool, as a result of the generation process two loadable files will be available:

    1. A Motorola SRec file. This file will have the same name as the name of the CSV file and the file extension will be .mot

    2. A Binary file. This file will have the same name as the name of the CSV file and the file extension will be .bin

    These two files will contain the configuration data to be downloaded to FFeasy-Modbus devices. Same raw data is present in both file. Only the executable file format is different.

    5.2.2 Flash Programming of .mot file

    The .mot file can be downloaded to the FBK-2 by a Flash Programming Tool suitable to Renesas M16C microcontroller family.

    When a .mot file is programmed to the FBK-2, the user must ensure that only segment 0x00F000 – 0x00FFFF is reprogrammed (i.e. not entire Flash must be erased!).

    Download of .mot file has been tested by Softing for:

    • Renesas’s FDT 4.0 Release 00 (Flash Development Toolkit)

    • Renesas’s FoUSB V.2.12 (Flash Over USB)

    5.2.3 Downloading .bin file

    The .bin file can be downloaded to FBK-2 over the fieldbus with Softing’s P-Tool (not yet available).

    Page 32 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual APPENDIX A: FFeasyGen-Modbus Messages Description

    6 APPENDIX A: FFeasyGen-Modbus Messages Description

    Message Description General error/warning messages There is no .csv file selected, please select one. FFeasyGen-Modbus.exe was called without any CSV file as input. The file has a wrong extension type (only .csv files can be processed by this tool).

    FFeasyGen-Modbus.exe was called with an input file having other extension than ‘.csv‘. The generation tool accepts only CSV files as input for generation process.

    The selected file has more lines than the template provided by Softing

    In the CSV file used as input for generation tool, one or more lines were added to any of the 6 configuration tables. Note: The configuration template layout must not be enhanced in any way by a user (e.g. no line or column must be added or deleted).

    The selected file has less lines than the template provided by Softing

    In the CSV file used as input for generation tool, one or more lines were from one of the 6 configuration tables. Note: The configuration template layout must not be enhanced in any way by a user (e.g. no line or column must be added or deleted).

    Error on line xyz: The line contains a wrong number of entries.

    In the CSV file used as input for generation tool, more fields (commas) were detected on any of the 6 configuration tables. Note: Device Identification table has 6 fields. Modbus Interface Definition table has 4 fields. Modbus Commands Mapping table has 16 fields. Modbus Device Status table has 13 fields. Modbus Unit Codes Mapping table has 2 fields. Modbus Scheduling Settings has one field.

    Device Identification Table related error/warning messages Error on line 3: The Manufacturer ID is out of range or not allowed.

    The CSV file used as input for generation tool contains a wrong value in Manufacturer ID field. This could happen in case value set for Manufacturer ID is within 0x000000 and 0x0000FF range (according to FF these are restricted values).

    Error on line 3: The HEX value contains illegal characters.

    The CSV file used as input for generation tool contains an illegal character (hex digit) on Manufacturer ID or Device Type field. Allowed hex digits are: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F This error message comes also with and additional error message to indicate whether the Manufacturer ID or Device Type is bad. Example: when Manufacturer ID contains other character than a hex digit following message will be displayed too: “Error on line 3: Bad input value for Manufacturer ID.”

    Error on line 3: The HEX value must contain always ‘0’ on first position.

    The CSV file used as input for generation tool has a Manufacturer ID or Device Type value wrongly defined. The Manufacturer ID and Device Type field values must always be preceded by ‘0x’.

    Error on line 3: The HEX value must contain always ‘x’ on second position.

    The CSV file used as input for generation tool has a Manufacturer ID or Device Type value wrongly defined. The Manufacturer ID and Device Type field values must always be preceded by ‘0x’.

    Error on line 3: Value of Device Type is out of range.

    In the CSV file used as input for generation tool the Device Type field contains a value higher than maximum allowed (0xFFFF).

    V 2.30 Page 33 of 56

  • Softing FFeasy-Modbus – User’s ManualAPPENDIX A: FFeasyGen-Modbus Messages Description

    Warning on line 3: PD tag contains more than 16 characters. String will be truncated to 16 characters.

    In the CSV file used as input for generation tool the PD Tag field contains a string with more than 16 characters. The generation tool will store only the first 16 characters of the PD Tag. This is only a warning message. In this case the .bin and .mot files will be generated, unlike in the case of error messages when the executable files are not generated.

    Warning on line 3: PD Tag string has less than 16 characters. Remaining PD Tag characters were filled with '_'.

    In the CSV file used as input for generation tool the PD Tag field contains a string with less than 16 characters. The generation tool will automatically add ‘_’ characters in the .bin and .mot files. This is only a warning message. In this case the .bin and .mot files will be generated.

    Warning on line 3: the PD Tag string contains ' ' (space) characters. ' ' characters in the PD Tag string might lead to possible problem with Host Systems.

    In the CSV file used as input for generation tool the PD Tag field contains ‘ ‘ (space) characters. These characters might lead to possible integration with some Host Systems. A ‘_’ character might be used instead. This is only a warning message. In this case the .bin and .mot files will be generated.

    Error on line xyz: Selected value for Power Consumption is incorrect (allowed values are 10mA, 13mA, 18mA, 26mA).

    In the CSV file used as input for generation tool the selected maximum current drawn by FBK2 board was set to other value than the accepted ones (10mA, 13mA, 18mA or 26mA).

    Modbus Interface Definition table related error/warning messages Error on line 18: Modbus Slave Address field contains no data

    In the CSV file used as input for generation tool, Modbus Slave Address field is blank.

    Error on line 18: Modbus Baud Rate field contains no data

    In the CSV file used as input for generation tool, Modbus Baud Rate field is blank.

    Error on line 18: Selected Modbus Baud Rate is higher than the maximum allowed value (38400)

    In the CSV file used as input for generation tool, Modbus Baud Rate field contains a value higher than 38400.

    Error on line 18: Parity field contains no data In the CSV file used as input for generation tool, Parity field is blank.

    Error on line 18: Selected Modbus Parity value is invalid (allowed values are ODD, EVEN and NONE).

    In the CSV file used as input for generation tool, Parity field is set to other value than NONE, ODD or EVEN

    Error on line 18: Register Order field contains no data

    In the CSV file used as input for generation tool, Register Order field is blank.

    Error on line 18: Selected Register Order value is invalid (allowed values are Low, Low String 1:1, High and High String 1:1).

    In the CSV file used as input for generation tool, Register Order field is set to other value than Low, Low String 1:1, High or High String 1:1

    Modbus Commands Mapping table related error/warning messages Error on line xyz: The default value is out of range. In the CSV file used as input for generation tool, the value set for

    ‘Default Value’ field is not within the range defined by values of ‘Lower Range’ and ‘Upper Range’. This error will be displayed only if ‘Range Check’ field is set to TRUE. If FALSE there is no need to check the default value against the lower/upper range.

    Error on line xyz: The value set for the upper range is smaller than the value set for lower range.

    In the CSV file used as input for generation tool, the value set for ‘Upper Range’ field is smaller than the value set for ‘Lower Range’ field. This error will be displayed only if ‘Range Check’ field is set to TRUE.

    Warning on line xyz: The Default Value string is longer than the maximum allowed size of the parameter (32). String will be truncated to parameter's maximum size.

    In the CSV file used as input for generation tool, the Default Value field contains more than 32 characters. The generation toll will store only the first 32 characters to Default Value. This message applies only to the 2 generic STRINGV parameters.

    Page 34 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual APPENDIX A: FFeasyGen-Modbus Messages Description

    Warning on line xyz: The Default Value string is longer than the configured parameter length. String will be truncated to configured parameter length.

    In the CSV file used as input for generation tool, the Default Value field contains more character than the configured Parameter Length. The generation toll will store to Default Value only a number of characters as defined in Parameter Length field. This message applies only to the 2 generic STRINGV parameters.

    Error on line xyz: Bad input value for Parameter Used.

    In the CSV file used as input for generation tool, the Parameter Used field is set to other value than Yes or No

    Error on line xyz: Bad input value for Parameter Access.

    In the CSV file used as input for generation tool, the Parameter Access field is set to other value than Read or Read/Write

    Error on line xyz: Bad input value for Mode Check OOS.

    In the CSV file used as input for generation tool, the Parameter Used field is set to other value than Yes or No

    Error on line xyz: Bad input value for Modbus Start Register.

    In the CSV file used as input for generation tool, the Modbus Start Register field contains a non decimal value.

    Error on line xyz: Bad input value for Number of Modbus Registers.

    In the CSV file used as input for generation tool, the Number of Modbus Registers field contains a non decimal value.

    Error on line xyz: Bad input value for Modbus Read Function Code.

    In the CSV file used as input for generation tool, the Modbus Read Function Code field is set to other value than 03, 04 or ‘’(blank).

    Error on line xyz: Bad input value for Register Type. In the CSV file used as input for generation tool, the Register Type field is set to other value than Initial, Regular, Initial & Regular or ‘’(blank).

    Error on line xyz: Bad input value for Unit Conversion.

    In the CSV file used as input for generation tool, the Unit Convert field is set to other value than Yes or No.

    Warning on line xyz: There is no Modbus Read Function Code selected but a Modbus Start Register is configured. A Modbus query will not be created.

    In the CSV file used as input for generation tool, the Modbus Start Register field is set to a value higher than 0, but there is no Modbus Read Function Code defined. This warning message only informs that parameter on line xyz will not be able to be updated with values from Modbus Slave. Writing of parameter on line xyz will be possible.

    Warning on line xyz: There is no Modbus Read Function Code selected but a Number of Modbus Registers is configured. A Modbus query will not be created.

    In the CSV file used as input for generation tool, the Number of Modbus Registers field is set to a value higher than 0, but there is no Modbus Read Function Code defined. This warning message only informs that parameter on line xyz will not be able to be updated with values from Modbus Slave. Writing of parameter on line xyz will be possible.

    Warning on line xyz: There is no Modbus Read Function Code selected, but a Modbus query is configured to one of the Initial or Regular lists. A Modbus query will not be created.

    In the CSV file used as input for generation tool, the Register Type field is set to a value different than blank, but there is no Modbus Read Function Code defined. This warning message only informs that parameter on line xyz will not be able to be updated with values from Modbus Slave. Writing of parameter on line xyz will be possible.

    Error on line xyz: The selected number of registers is too small compared to parameter length.

    In the CSV file used as input for generation tool, there is a mismatch between the value set for Number of Modbus Registers field and the value set for Parameter Length. If the configured Number of Modbus Registers is too small compared to the Parameter Length value of parameter at line xyz will be badly updated with value from Modbus Slave. Example: For FLOAT parameter the needed number of Modbus registers must be 2. Selecting 1 as needed number of Modbus registers will result in an incorrect value for the parameter when read over Modbus.

    V 2.30 Page 35 of 56

  • Softing FFeasy-Modbus – User’s ManualAPPENDIX A: FFeasyGen-Modbus Messages Description

    Error on line xyz: The selected number of registers is too high compared to parameter length.

    In the CSV file used as input for generation tool, there is a mismatch between the value set for Number of Modbus Registers field and the value set for Parameter Length. If the configured Number of Modbus Registers is too small compared to the Parameter Length value of parameter at line xyz will be badly updated with value from Modbus Slave.

    Error on line xyz: Value of Modbus Start Register overlaps the value of Modbus Start Register at line zyx.

    In the CSV file used as input for generation tool, the Modbus Start Register field value at line xyz is wrongly defined. Generation tool detects that the selected register address overlaps with the Modbus register definition for parameter at line zyx.

    Warning on line xyz: Parameter has Read and Write access rights, but function code is 04 (Read Input Register). A FF write request on this parameter will not result in a Modbus query.

    In the CSV file used as input for generation tool, the Modbus Read Function Code is set to 04 (Read IREG) and parameter at line xyz is configured with Read/Write access rights. This warning only informs that a FF write request on parameter xyz will not be possible to be performed due to the fact the Modbus Start Register refers to an Input Register.

    Warning on line xyz: Parameter has Read-Only access rights, and mapped to a Register that it is not part of Initial or Regular Modbus query list.

    In the CSV file used as input for generation tool, the parameter at line xyz is configured with Read access rights, a Modbus Start Register is defined the Register Type field is blank, therefore Modbus query will not be part of Initial or Regular list and parameter will not be updated with the value from Modbus Slave.

    Device Status table related error/warning messages Error on line xyz: Bad input value for Register X. In the CSV file used as input for generation tool, the Register X

    field (X = 1 to 6) contains a non decimal value. Error on line xyz: Bad input value for Function Code Register X.

    In the CSV file used as input for generation tool, the Function Code Register X field (X = 1 to 6) is set to other value than 03, 04 or ‘’(blank).

    Warning on line xyz: There is no Function Code selected for Register X. A Modbus query will not be created.

    In the CSV file used as input for generation tool, the Register X field (X = 1 to 6) value is different than 0, but the Function Code Register X field is blank. A Modbus query to retrieve the device status information will not be created.

    Error on line xyz: Bad input value for Register X Value.

    When this message is received it means that in the CSV file used as input for generation tool, a wrong value was set for Register X (X = 1 to 6). The 6 bit mask fields for any of the 13 predefined status codes should be represented as a HEX value (e.g. 0x0041). If the value is not entered in this format this message will be displayed. This error message will also come with one or more of the following messages, depending on the way status byte was filled: ‘The HEX value must contain allways '0' on the first position.’

    ‘The HEX value must contain allways 'x' on the second position.’ ‘The HEX value contains illegal characters.’ (note: valid HEX digits are: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F)

    Error on line xyz: Value of Register X conflicts with the value of Register Y at line zyx.

    In the CSV file used as input for generation tool, there is a conflict in the way the bit masks were filled for Register X and Register Y. The error message appears only for the first 8 predefined status codes (‘Set PV status to Bad’ to ‘Set QV status to Uncertain’). The bit masks for each of the 6 Registers must be configured according to the description provided within ‘Configuration Template User’s Manual’.

    Page 36 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual APPENDIX A: FFeasyGen-Modbus Messages Description

    Warning on line xyz: Value of Register X conflicts with the value of Register Y at line zyx.

    In the CSV file used as input for generation tool there is a conflict in the way the bit masks were filled for Register X and Register Y. The error message appears only for the last 5 predefined status codes (‘Set XD_ERROR to Calibration Error’ to ‘Set XD_ERROR to I/O Failure’). The bit masks for each of the 6 Registers must be configured according to the description provided within ‘Configuration Template User’s Manual’.

    Warning on line xyz: There is no Function Code selected for Register N, but a Register address is defined. A Modbus query will not be created.

    In the CSV file used as input for generation tool there is no function code configured for Register N (N = 1 …6), but a register address is selected (the register address cell is different than blank). In order to retrieve the device status information data, both Register N address and Function Code Register N have to be configured.

    Warning on line xyz: There is no Function Code selected for Register N, but a device status information bitmask is defined. A Modbus query will not be created.

    In the CSV file used as input for tool there is no function code configured for Register N (N = 1 …6), but a device information bit mask is defined (other than 0x0000). In order to retrieve the device status information data, both Register N address and Function Code Register N have to be configured.

    Unit Codes Mapping table related error/warning messages Error on line xyz: End of Modbus Unit Codes Mapping Table not detected. At least last line should have both Modbus Unit Code and FF Unit Code set to 0.

    In the CSV file used as input for generation tool, the generation tool was not able to detect end of Unit Codes Mapping table. Generation tool will store the Modbus Unit Code and the according FF Unit Code until value 0 is found for both fields.

    Modbus Scheduling Settings table related error/warning messages - No specific message

    V 2.30 Page 37 of 56

  • Softing FFeasy-Modbus – User’s ManualAPPENDIX B: FF Unit Codes Description (ordered by value)

    7 APPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1000. K Kelvin 1001. ˚C degree Celsius 1002. ˚F degree Fahrenheit 1003. ˚R degree Rankine 1004. r radian 1005. ˚ degree 1006. ‘ minute 1007. ‘’ Second 1008. gon gon (or grade) 1009. rev revolution 1010. m meter 1011. Km kilometer 1012. cm centimeter 1013. mm millimeter 1014. μm micrometer 1015. nm nanometer 1016. pm picometer 1017. Å angstrom 1018. ft feet 1019. in inch 1020. yd yard 1021. mile mile 1022. nautical mile nautical mile 1023. m² square meter 1024. km² square kilometer 1025. cm² square centimeter 1026. dm² square decimeter 1027. mm² square millimeter 1028. a are 1029. ha hectare 1030. in² square inch 1031. ft² square feet 1032. yd² square yard 1033. mile² square mile 1034. m³ cubic meter 1035. dm³ cubic decimeter 1036. cm³ cubic centimeter

    Page 38 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual APPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1037. mm³ cubic millimeter 1038. L liter 1039. cl centiliter 1040. ml milliliter 1041. hl hectoliter 1042. in³ cubic inch 1043. ft³ cubic feet 1044. yd³ cubic yard 1045. mile³ cubic mile 1046. pint pint 1047. quart quart 1048. gallon US gallon 1049. ImpGal Imperial gallon 1050. bushel bushel 1051. bbl barrel 1052. bbl (liq) barrel liquid 1053. SCF standard cubic foot 1054. s second 1055. ks kilosecond 1056. ms millisecond 1057. μs microsecond 1058. min minute 1059. h hour 1060. d day 1061. m/s meter per second 1062. mm/s millimeter per second 1063. m/h meter per hour 1064. km/h kilometer per hour 1065. knot knot 1066. in/s inch per second 1067. ft/s feet per second 1068. yd/s yard per second 1069. in/min inch per minute 1070. ft/min feet per minute 1071. yd/min yard per minute 1072. in/h inch per hour 1073. ft/h feet per hour 1074. yd/h yard per hour 1075. MPH miles per hour

    V 2.30 Page 39 of 56

  • Softing FFeasy-Modbus – User’s ManualAPPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1076. m/s² meter per second per second 1077. Hz hertz 1078. THz terahertz 1079. GHz gigahertz 1080. MHz megahertz 1081. kHz kilohertz 1082. 1/s per second 1083. 1/min per minute 1084. rev/s revolutions per second 1085. RPM revolutions per minute 1086. r/s radian per second 1087. 1/s² per second per second 1088. kg kilogram 1089. g gram 1090. mg milligram 1091. Mg megagram 1092. t metric ton 1093. oz ounce 1094. lb pound (mass) 1095. STon short ton 1096. LTon long ton 1097. kg/m³ kilograms per cubic meter 1098. Mg/m³ megagrams per cubic meter 1099. kg/dm³ kilograms per decimeter 1100. g/cm³ grams per cubic centimeter 1101. g/m³ grams per cubic meter 1102. t/m³ metric tons per cubic meter 1103. kg/L kilograms per liter 1104. g/ml grams per milliliter 1105. g/L grams per liter 1106. lb/in³ pounds per cubic inch 1107. lb/ft³ pounds per cubic foot 1108. lb/gal pounds per US gallon 1109. STon/yd³ short tons per cubic yard 1110. degTwad degrees Twaddell 1111. degBaum hv degrees Baume heavy 1112. degBaum lt degrees Baume light 1113. degAPI degrees API 1114. SGU specific gravity units

    Page 40 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual APPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1115. kg/m kilograms per meter 1116. mg/m milligrams per meter 1117. tex tex 1118. kg-m² kilogram square meter 1119. kg-m/s kilogram meter per second 1120. N newton 1121. MN meganewton 1122. kN kilonewton 1123. mN millinewton 1124. μN micronewton 1125. kg-m²/s kilogram square meter per second 1126. N-m newton meter 1127. MN-m meganewton meter 1128. kN-m kilonewton meter 1129. mN-m millinewton meter 1130. Pa pascal 1131. GPa gigapascal 1132. MPa megapascal 1133. kPa kilopascal 1134. mPa millipascal 1135. μPa micropascal 1136. hPa hectopascal 1137. bar bar 1138. mbar milibar 1139. torr torr 1140. atm atmospheres 1141. psi pounds per square inch 1142. psia pounds per square inch absolute 1143. psig pounds per square inch gauge 1144. g/cm² gram per square centimeter 1145. kg/cm² kilogram per square centimeter 1146. inH2O inches of water 1147. inH2O (4°C) inches of water at 4°C 1148. inH2O (68°F) inches of water at 68°F 1149. mmH2O millimeters of water 1150. mmH2O (4°C) millimeters of water at 4°C 1151. mmH2O (68°F) millimeters of water at 68°F 1152. ftH2O feet of water 1153. ftH2O (4°C) feet of water at 4°C

    V 2.30 Page 41 of 56

  • Softing FFeasy-Modbus – User’s ManualAPPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1154. ftH2O (68°F) feet of water at 68°F 1155. inHg inches of mercury 1156. inHg (0°C) inches of mercury at 0°C 1157. mmHg millimeters of mercury 1158. mmHg (0°C) millimeters of mercury at 0°C 1159. Pa-s Pascal second 1160. m²/s square meter per second 1161. P poise 1162. cP centipoise 1163. St stokes 1164. cSt centistokes 1165. N/m newton per meter 1166. mN/m millinewton per meter 1167. J joule 1168. EJ exajoules 1169. PJ petajoules 1170. TJ terajoules 1171. GJ gigajoules 1172. MJ megajoules 1173. kJ kilojoules 1174. mJ millijoules 1175. Wh watt hour 1176. TWh terawatt hour 1177. GWh gigawatt hour 1178. MWh megawatt hour 1179. kWh kilowatt hour 1180. cal calorie 1181. kcal kilocalorie 1182. Mcal megacalorie 1183. Btu British thermal unit 1184. decatherm decatherm 1185. ft lb 1186. W watt 1187. TW terawatt 1188. GW gigawatt 1189. MW megawatt 1190. kW kilowatt 1191. mW miliwatt 1192. μW microwatt

    Page 42 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual APPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1193. nW nanowatt 1194. pW picowatt 1195. Mcal/h megacalorie per hour 1196. MJ/h megajoule per hour 1197. Btu/h British thermal unit per hour 1198. hp horsepower 1199. W/(m-K) watt per meter kelvin 1200. W/(m²-K) watt per square meter kelvin 1201. m²-K/W square meter kelvin per watt 1202. J/K joule per kelvin 1203. kJ/K kilojoule per kelvin 1204. J/(kg-K) joule per kilogram kelvin 1205. kJ/(kg-K) kilojoule per kilogram kelvin 1206. J/kg joule per kilogram 1207. MJ/kg megajoule per kilogram 1208. kJ/kg kilojoule per kilogram 1209. A ampere 1210. kA kiloampere 1211. mA milliampere 1212. μA microampere 1213. nA nanoampere 1214. pA picoampere 1215. C coulomb 1216. MC megacoulomb 1217. kC kilocoulomb 1218. μC microcoulomb 1219. nC nanocoulomb 1220. pC picocoulomb 1221. A-h ampere hour 1222. C/m³ coulomb per cubic meter 1223. C/mm³ coulomb per cubic millimeter 1224. C/cm³ coulomb per cubic centimeter 1225. kC/m³ kilocoulomb per cubic meter 1226. mC/m³ millicoulomb per cubic meter 1227. μC/m³ microcoulomb per cubic meter 1228. C/m² coulomb per square meter 1229. C/mm² coulomb per square millimeter 1230. C/cm² coulomb per square centimeter 1231. kC/m² kilocoulomb per square meter

    V 2.30 Page 43 of 56

  • Softing FFeasy-Modbus – User’s ManualAPPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1232. mC/m² millicoulomb per square meter 1233. μC/m² microcoulomb per square meter 1234. V/m volt per meter 1235. MV/m megavolt per meter 1236. kV/m kilovolt per meter 1237. V/cm volt per centimeter 1238. mV/m millivolt per meter 1239. μV/m microvolt per meter 1240. V volt 1241. MV megavolt 1242. kV kilovolt 1243. mV millivolt 1244. μV microvolt 1245. F farad 1246. mF millifarad 1247. μF microfarad 1248. nF nanofarad 1249. pF picofarad 1250. F/m farad per meter 1251. μF/m microfarad per meter 1252. nF/m nanofarad per meter 1253. pF/m picofarad per meter 1254. C-m coulomb meter 1255. A/m² ampere per square meter 1256. MA/m² megampere per square meter 1257. A/cm² ampere per square centimeter 1258. kA/m² kiloampere per square meter 1259. A/m ampere per meter 1260. kA/m kiloampere per meter 1261. A/cm ampere per centimeter 1262. T tesla 1263. mT millitesla 1264. μT microtesla 1265. nT nanotesla 1266. Wb weber 1267. mWb milliweber 1268. Wb/m weber per meter 1269. kWb/m kiloweber per meter 1270. H henry

    Page 44 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual APPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1271. mH millihenry 1272. μH microhenry 1273. nH nanohenry 1274. picoH picohenry 1275. H/m henry per meter 1276. μH/m microhenry per meter 1277. nH/m nanohenry per meter 1278. A-m² ampere square meter 1279. N-m²/A newton square meter per ampere 1280. Wb-m weber meter 1281. Ohm Ohm 1282. GOhm gigaOhm 1283. MOhm megaOhm 1284. kOhm kiloOhm 1285. mOhm milliOhm 1286. μOhm microOhm 1287. S siemens 1288. kS kilosiemens 1289. mS millisiemens 1290. μS microsiemens 1291. Ohm-m Ohm meter 1292. GOhm-m gigaOhm meter 1293. MOhm-m megaOhm meter 1294. kOhm-m kiloOhm meter 1295. Ohm-cm Ohm centimeter 1296. mOhm-m milliOhm meter 1297. μOhm-m microOhm meter 1298. nOhm-m nanoOhm meter 1299. S/m siemens per meter 1300. MS/m megasiemens per meter 1301. kS/m kilosiemens per meter 1302. mS/cm millisiemens per centimeter 1303. μS/mm microsiemens per millimeter 1304. 1/H per henry 1305. sr steradian 1306. 1306 W/sr 1307. W/(sr-m²) watt per steradian square meter 1308. W/(m²) watt per square meter 1309. lm lumen

    V 2.30 Page 45 of 56

  • Softing FFeasy-Modbus – User’s ManualAPPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1310. lm-s lumen second 1311. lm-h lumen hour 1312. lm/m² lumen per square meter 1313. lm/W lumen per watt 1314. lx lux 1315. lx-s lux second 1316. cd candela 1317. cd/m² candela per square meter 1318. g/s gram per second 1319. g/min gram per minute 1320. g/h gram per hour 1321. g/d gram per day 1322. kg/s kilogram per second 1323. kg/min kilogram per minute 1324. kg/h kilogram per hour 1325. kg/d kilogram per day 1326. t/s metric ton per second 1327. t/min metric ton per minute 1328. t/h metric ton per hour 1329. t/d metric ton per day 1330. lb/s pound per second 1331. lb/min pound per minute 1332. lb/h pound per hour 1333. lb/d pound per day 1334. STon/s short ton per second 1335. STon/min short ton per minute 1336. STon/h short ton per hour 1337. STon/d short ton per day 1338. LTon/s long ton per second 1339. LTon/min long ton per minute 1340. LTon/h long ton per hour 1341. LTon/d long ton per day 1342. % percent 1343. % sol/wt percent solids per weight 1344. % sol/vol percent solids per volume 1345. % stm qual percent steam quality 1346. % plato percent plato 1347. m³/s cubic meter per second 1348. m³/min cubic meter per minute

    Page 46 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual APPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1349. m³/h cubic meter per hour 1350. m³/d cubic meter per day 1351. L/s liter per second 1352. L/min liter per minute 1353. L/h liter per hour 1354. L/d liter per day 1355. ML/d megaliter per day 1356. CFS cubic feet per second 1357. CFM cubic feet per minute 1358. CFH cubic feet per hour 1359. ft³/d cubic feet per day 1360. SCFM standard cubic feet per minute 1361. SCFH standard cubic feet per hour 1362. gal/s US gallon per second 1363. GPM US gallon per minute 1364. gal/h US gallon per hour 1365. gal/d US gallon per day 1366. Mgal/d mega US gallon per day 1367. ImpGal/s Imperial gallon per second 1368. ImpGal/min Imperial gallon per minute 1369. ImpGal/h Imperial gallon per hour 1370. ImpGal/d Imperial gallon per day 1371. bbl/s barrel per second 1372. bbl/min barrel per minute 1373. bbl/h barrel per hour 1374. bbl/d barrel per day 1375. KW/m² kilowatt per square meter 1376. mW/m² milliwatt per square meter 1377. μW/m² microwatt per square meter 1378. pW/m² picowatt per square meter 1379. Pa-s/m³ pascal second per cubic meter 1380. N-s/m newton second per meter 1381. Pa-s/m pascal second per meter 1382. B bel 1383. dB decibel 1384. mol mole 1385. kmol kilomole 1386. mmol millimole 1387. μmol micromole

    V 2.30 Page 47 of 56

  • Softing FFeasy-Modbus – User’s ManualAPPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1388. kg/mol kilogram per mole 1389. g/mol gram per mole 1390. m³/mol cubic meter per mole 1391. dm³/mol cubic decimeter per mole 1392. cm³/mol cubic centimeter per mole 1393. L/mol liters per mole 1394. J/mol joule per mole 1395. kJ/mol kilojoule per mole 1396. J/(mol-K) joule per mole kelvin 1397. mol/m³ mole per cubic meter 1398. mol/dm³ mole per cubic decimeter 1399. mol/L mole per liter 1400. mol/kg mole per kilogram 1401. mmol/kg millimole per kilogram 1402. Bq becquerel 1403. MBq megabecquerel 1404. kBq kilobequerel 1405. Bq/kg becquerel per kilogram 1406. kBq/kg kilobecquerel per kilogram 1407. MBq/kg megabecquerel per kilogram 1408. Gy gray 1409. mGy milligray 1410. rad rad 1411. Sv sievert 1412. mSv millisievert 1413. rem rem 1414. C/kg coulomb per kilogram 1415. mC/kg millicoulomb per kilogram 1416. R röntgen 1417. 1/J-m³ 1418. e/V-m³ 1419. m³/C cubic meter per coulomb 1420. V/K volt per kelvin 1421. mV/K millivolt per kelvin 1422. pH pH 1423. ppm parts per million 1424. ppb parts per billion 1425. ppt parts per thousand 1426. degBrix degrees Brix

    Page 48 of 56 V 2.30

  • Softing FFeasy-Modbus – User’s Manual APPENDIX B: FF Unit Codes Description (ordered by value)

    Value Display Description 1427. degBall degrees Balling 1428. proof/vol proof per volume 1429. proof/mass proof per mass 1430. lb/ImpGal pound per Imperial gallon 1431. kcal/s kilocalorie per second 1432. kcal/min kilocalorie per minute 1433. kcal/h kilocalorie per hour 1434. kcal/d kilocalorie per day 1435. Mcal/s megacalorie per second 1436. Mcal/min megacalorie per minute 1437. Mcal/d megacalorie per day 1438. kJ/s kilojoules per second 1439. kJ/min kilojoules per minute 1440. kJ/h kilojoules per hour 1441. kJ/d kilojoules per day 1442. MJ/s megajoules per second 1443. MJ/min megajoules per minute 1444. MJ/d megajoules per day 1445. Btu/s British thermal units per second 1446. Btu/min British thermal units per minute 1447. Btu/day British thermal units per day 1448. μgal/s micro US g