Re: [foxboro] Word-Swaping on Modbus Interface Micro I/A (32-bit IEEE-Floating Point)

Rolf,

My recollection is that you bring the 32 bits in on Integer Inputs One =
and Two of the CALC.  Then you break out the individual bits and =
multiply them by the IEEE specified values and sum the results. =
Basically a time consuming ordeal for the first signal that you process, =
then copy for the other signals.

You might be very wise to purchase the work from an application engineer =
who has already done the task. (I have not done it.) I suspect you would =
be looking at 2-3 days to do the work yourself as it is very complex and =
needs to be tested.

Terry

-----Message d'origine-----
De=A0: foxboro-bounce@xxxxxxxxxxxxx =
[mailto:foxboro-bounce@xxxxxxxxxxxxx] De la part de =
rolf.reber@xxxxxxxxxxxxxx
Envoy=E9=A0: February 14, 2006 8:53 AM
=C0=A0: foxboro@xxxxxxxxxxxxx
Objet=A0: Re: [foxboro] Word-Swaping on Modbus Interface Micro I/A =
(32-bit IEEE-Floating Point)

Steve,

thanks, but my Real value is 32-bit IEEE-754 Floating Point format, =
lik=3D
e
this:



Decimal Value Entered: 12.34


Single precision (32 bits):


Binary:=3DA0=3DA0=3DA0=3DA0=3DA0Status: normal
|-------------+--------------------------------------------------------=3D=

--+------------------------------------------------|
|             |                                                        =
=3D
  |                                                |
|    Bit 31   |                                                        =
=3D
  |                                                |
|   Sign Bit  |                       Bits 30 - 23                     =
=3D
  |                   Bits 22 - 0                  |
|      0      |                      Exponent Field                    =
=3D
  |                   Significand                  |
|     0: +    |                         10000010                       =
=3D
  |           1 .10001010111000010100100           |
|     1: -    |       Decimal value of exponent field and exponent     =
=3D
  |        Decimal value of the significand        |
|             |                       130 - 127 =3D3D 3                  =
=3D
    |                    1.5425000                   |
|             |                                                        =
=3D
  |                                                |
|             |                                                        =
=3D
  |                                                |
|-------------+--------------------------------------------------------=3D=

--+------------------------------------------------|




Hexadecimal: 414570A4=3DA0=3DA0Decimal: 12.340000



The FRIN Block read it in the right way, if the Modbus-Words are in =
the=3D

right order. But it isn't in my case.

Regards

Rolf Reber
____________________________________
EMS-CHEMIE AG
Business Unit EMS-SERVICES
Abt. Anlagenbau / Prozessleitsysteme
Reichenauerstrasse
CH-7013 Domat/Ems

Phone: +41 (0) 81 / 632 71 49
Fax:      +41 (0) 81 / 632 74 04
mailto: rolf.reber@xxxxxxxxxxxxxx
http://www.emsservices.ch


|---------+---------------------------->
|         |           steve.shimp@exxon|
|         |           mobil.com        |
|         |           Sent by:         |
|         |           foxboro-bounce@fr|
|         |           eelists.org      |
|         |                            |
|         |                            |
|         |           14.02.2006 14:21 |
|         |           Please respond to|
|         |           foxboro          |
|         |                            |
|---------+---------------------------->
  =
>--------------------------------------------------------------------=3D
-----------------------------------------------------------------------=3D=

-------|
  |                                                                    =
=3D
                                                                       =
=3D
       |
  |       To:       foxboro@xxxxxxxxxxxxx                              =
=3D
                                                                       =
=3D
       |
  |       cc:                                                          =
=3D
                                                                       =
=3D
       |
  |       bcc:                                                         =
=3D
                                                                       =
=3D
       |
  |       Subject:  Re: [foxboro] Word-Swaping on Modbus Interface =
Micr=3D
o I/A                                                                  =
=3D
       |
  =
>--------------------------------------------------------------------=3D
-----------------------------------------------------------------------=3D=

-------|




Rolf,

We have done this with RIN blocks on a Modbus interface.  The "trick" =
i=3D
s to
use 2 separate RIN blocks for each 16-bit word.  Then use a CALC block =
=3D
to
manipulate the two values from the RIN blocks to determine the =
original=3D

value.

For example, there is a value transmitted over the Modbus interface =
tha=3D
t is
67098.2 originally.  The words are transmitted such that the first =
word=3D
 is
the low order bits and the second word is the high order bits.  The =
fir=3D
st
word is pulled into a RIN block that has an MGAIN value of 0 (zero).  =
T=3D
he
second word is pulled into a RIN block that has a MGAIN value of 1000
(based upon the documentation of the Modbus sending device and how the
interface is designed).  The RIN blocks are therefore "reading" 98.2 =
fo=3D
r
the low order and 67000 for the high order.  Pull these RIN blocks =
into=3D
 a
CALC block and simply add them together.

Hope this helps.


Steve Shimp
Maintenance & Systems Engineer
ExxonMobil Paulsboro Lube Plant
phone: 856.224.5059      cell: 609.820.8501      fax: 856.224.5030
email:  steve.shimp@xxxxxxxxxxxxxx

foxboro-bounce@xxxxxxxxxxxxx wrote on 02/14/2006 08:00:55 AM:

>
> Hi List,
>
> our I/A-System is Unix V6.4 and Micro I/A V6.2.5 with 2 Modbus =
serial=3D

> Interfaces attached. I would like to read/write data from/to a =
Modbus=3D

> Device (Brabender weighing unit) with FRIN /FROUT blocks. But the =
two=3D

16bit
> Modbus Words for a real value are in wrong order.  Example: Value =
12.=3D
34
in
> the Modbus Adresses 47200 and 47201 (Value Hex 70A4 4145) will be
displayed
> on FoxView as 4017238209...................... How can I change the =
O=3D
rder
> of the Modbus Adresses to 47201 and 407200 (Value Hex 4145 70A4) on =
t=3D
he
> I/A-System? There is no way to change it on the Modbus Device!
>
> Thanks for helping,
>
> Regards
>
> Rolf Reber
> ____________________________________
> EMS-CHEMIE AG
> Business Unit EMS-SERVICES
> Abt. Anlagenbau / Prozessleitsysteme
> Reichenauerstrasse
> CH-7013 Domat/Ems
>
> Phone: +41 (0) 81 / 632 71 49
> Fax:      +41 (0) 81 / 632 74 04
> mailto: rolf.reber@xxxxxxxxxxxxxx
> http://www.emsservices.ch



_______________________________________________________________________=3D=


This mailing list is neither sponsored nor endorsed by Invensys =
Process=3D

Systems (formerly The Foxboro Company). Use the info you obtain here =
at=3D

your own risks. Read =
http://www.thecassandraproject.org/disclaimer.html=3D


foxboro mailing list:             =
http://www.freelists.org/list/foxboro=3D

to subscribe:         =
mailto:foxboro-request@xxxxxxxxxxxxx?subject=3D3Djo=3D
in
to unsubscribe:      =
mailto:foxboro-request@xxxxxxxxxxxxx?subject=3D3Dlea=3D
ve


=3D


=20
=20
_______________________________________________________________________
This mailing list is neither sponsored nor endorsed by Invensys Process
Systems (formerly The Foxboro Company). Use the info you obtain here at
your own risks. Read http://www.thecassandraproject.org/disclaimer.html
=20
foxboro mailing list:             http://www.freelists.org/list/foxboro
to subscribe:         =
mailto:foxboro-request@xxxxxxxxxxxxx?subject=3Djoin
to unsubscribe:      =
mailto:foxboro-request@xxxxxxxxxxxxx?subject=3Dleave
=20
 
 
_______________________________________________________________________
This mailing list is neither sponsored nor endorsed by Invensys Process
Systems (formerly The Foxboro Company). Use the info you obtain here at
your own risks. Read http://www.thecassandraproject.org/disclaimer.html
 
foxboro mailing list:             http://www.freelists.org/list/foxboro
to subscribe:         mailto:foxboro-request@xxxxxxxxxxxxx?subject=join
to unsubscribe:      mailto:foxboro-request@xxxxxxxxxxxxx?subject=leave
 

Other related posts: