Installation and Operation Manual
X-DPT-DeviceNet-SLA5800-SLAMf-Series-RevB-PC-eng
Part Number: 541B200AAG
March, 2015
16
Section 4 - Configuration
Brooks DeviceNet PCs
4.1.2. The “Inferred” Data Type
It is difficult to talk about I/O Assemblies without talking about Data Type
since both are tied very closely together (For more detailed explanation on
Data Type, see section below “Data Type”).
The Assembly Object is a collection of parameters/attributes. The purpose
being that one can move a grouping of data to many attributes at one time as
opposed to using individual messages to get or set each attribute. A difficulty
occurs when one or more of the attributes in the Assembly have a
changeable or dynamic data type. For example, the attribute Pressure in the
S-Analog Sensor object has data type that is dependent on the value of
attribute Data Type within the same object.
The Assembly objects defined in the PC device profile are considered static,
meaning that the number of bytes defined in the Assembly is the number of
bytes that will be transferred, no more, no less.
Example
:
S-Analog Sensor object’s Data Type (Pressure Sensor Data Type
parameter) is configured to REAL and Assembly object Instance 1 is used to
retrieve the Pressure data. The size of data type REAL is 4 bytes and
therefore Pressure will be reported as 4 bytes, but Assembly Instance 1
reports Pressure as 2 bytes. A data size mismatch/conflict has occurred.
When a data size mismatch occurs, the Master device usually indicates this
condition with an error.
The solution is to force the Data Type attribute (Pressure Sensor Data Type
parameter) to match the “inferred” data type of the Assembly instance. A
mechanism is in place such that if an Assembly object has been assigned to
an I/O Connection AND the I/O Connection becomes active (transitions to
the Established state), the attribute/parameter that defines the data type for
the particular object will be forced automatically to the inferred data type of
the Assembly.
Example
:
In the example above, attribute Data Type (Pressure Sensor Data Type
parameter) of the S-Analog Sensor Object will be changed to INT (same as
the Assembly), enforcing the data size match between the Pressure data and
the Assembly instance.
NOTE:
While the I/O Connection is active, the Data Type parameter/attribute will
have “get only” accessibility, effectively locking out any means of modifying
the attribute, including the establishment of another I/O Connection, until the
original I/O Connection is terminated.