beautypg.com

Mfc010 modbus data model, 1 mfc010 register structure, Mfc010 register structure – KROHNE MFC 010 C Converter User Manual

Page 35

background image

MFC010 Interface Manual

33

7.

MFC010 Modbus Data Model

7.1

MFC010 Register Structure

The register s tructure f or t he M FC010 begi ns w ith r egister 1001 in al l r egister t ypes ( Discrete O utput,

Discrete Input, Input Register and H olding Register). T he different variable types (integer, float, double

etc) have been arranged into groups of the same data type spread over the entire permitted register

address range.

It is not permissible, within this implementation of the MFC010 Modbus interface, to retrieve registers

containing different data types within the same request t elegram. A ttempts t o ac hieve t his w ill be

responded to with an “Illegal Data Address” exception error (See Section 5.6 on page 22).

Large gaps hav e been l eft bet ween t hese gr oups of dat a t ypes i n or der t o per mit ex pansion of the

MFC010 interface and compatibility with future high performance converters.

Data variables which require more than one register (e.g. a 4 byte “Float” requires two 2 byte registers to

transmit it) will occupy the number of consecutive registers needed to hold the variable. For example if a

floating point variable is contained in Register 3001, this will also fill register 3002. For this reason any

attempt t o r ead 3002 di rectly w ill be r esponded t o w ith an “Illegal Data Address” exception error ( See

Section 5.6 on page 22). This is the same for both Long Integers (which also require 2 consecutive 2 byte

registers to hold 4 bytes) and Double Precision Floating Point Numbers (which require 4 c onsecutive 2

byte registers to hold the 8 byte format of the Double Float).

In addition, when accessing these multi-register variables, the user must request the correct multiple of

registers. i .e. w hen ac cessing F loating P oint and Long i nteger v ariables, the number of registers

requested must be a multiple of 2, and when requesting Double Precision floating point variables the

number of registers requested must be a multiple of 4. Requesting variables with the incorrect multiple of

registers will again result in an “Illegal Data Address” exception error (See Section 5.6 on page 22). For

example if a request was made to a group of floating point variable register locations but only 3 registers

were requested, then the exception error would be returned.

Some of t he f ollowing r egisters ar e pr otected by t he “Service” password to prevent accidental or un-

authorised changes to key configuration values, specifically the sensor calibration settings, these registers

are indicated by the following symbol.

.

For details on t he operation and de -activation of the Service Password see section 8.5. Similarly, some

registers are protected by a Custody Transfer Password for use when the MFC010 is used in Custody

transfer applications, see section 8.9 on page 78. These registers are indicated by the

CT

symbol.

Holding registers marked

RO

are “Read Only”.

The following is a summary of the MFC010 register structure, the details of which are explained in the

following sections.