Re: [foxboro] Word-Swaping on Modbus Interface Micro I/A (32-bit IEEE-Floating Point)
- From: "Doucet, Terrence" <tdoucet@xxxxxxxxxxxxxxxxxx>
- To: <foxboro@xxxxxxxxxxxxx>
- Date: Tue, 14 Feb 2006 09:07:24 -0500
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: