Introduction to application messages – Echelon Neuron C User Manual

Page 130

Advertising
background image

118

How Devices Communicate Using Application Messages

Introduction to Application Messages

Application messages are used for creating a proprietary interface (that is, non-

interoperable) to a device. The same mechanism used for application messaging
can also be used to create foreign-frame messages (for proprietary gateways) and

explicitly addressed network variable messages.
There is one interoperable use for application messages, and that is the
L

ON

W

ORKS

file transfer protocol (LW-FTP). This protocol is used to exchange

large blocks of data between devices or between devices and tools, and can also be

used to implement configuration files.

As described in previous chapters, functional blocks, network variables, and

configuration properties are used for creating an open interoperable interface to a
device. A device interface can include both an interoperable portion and a

proprietary portion. For example, a device can implement a proprietary interface

for use solely during manufacturing, and an interoperable interface for use in the
field.
The content of an application message is defined by a proprietary message code

that is sent as part of the message. This code is followed by a variable-sized data
field. The same message code can have one byte of data in one instance and 25

bytes of data in another instance.
You can use a request/response service with application messages to enable an
application on one device to cause an application on another device to respond to

it. The request/response mechanism is similar to a network variable poll. When

a network variable is polled, the application scheduler on the polled device
provides the most recent value for that network variable, without intervention of

(or knowledge by) the application program. When an application message is sent
with the request service, the application program on the remote device takes

some action as a result of receiving the request message, and then provides a new

value for its response. The request/response service can also be used to
implement remote procedure calls, because it provides a way for an application

on one device to cause an action on another device.
Application messages use less EEPROM table space than network variables, but
performing the equivalent tasks using application messages always consumes

more code space than using network variables because of the amount of support

code built-in to the Neuron firmware for network variables. In addition, using
application messages is a more complicated way of accomplishing such a task.

You must explicitly build, send, and receive application messages. Message
attributes such as service type, authentication, and priority are defined during

compilation or at run-time, and are not configurable by a network tool after

device installation (however, these attributes can be set on a message-by-
message basis).
Application messages do allow for transfer of data that would not fit into a

network variable. A network variable can accommodate up to 31 bytes of data.
Application messages allow for up to 228 bytes of data to be transmitted within

one message. However, large messages cannot pass through most L

ON

W

ORKS

routers, because routers are typically configured for messages with smaller
amounts of data.

Advertising