Technical information

Programming - RMS Required Modules
45
RMS Enterprise - NetLinx Programmer’s Guide
Programming - RMS Required Modules
Overview
To implement the RMS Client there are a couple of modules that are required to be implemented in the NetLinx user program.
Example snippets are listed below but it is suggested that you read each related help topic for each RMS SDK component in full
detail to get a greater understanding of the purpose and usage for each component.
The RMS Client NetLinx Adapter Module is required to load the RMS Client into the NetLinx master and provide a NetLinx
virtual device to communicate with the RMS Client. The following code snippets can be included to load the RMS NetLinx
Adapter module.
This device will be the NetLinx virtual Device ID used to communicate with the RMS subsystem from NetLinx programming.
(Note this Device ID must exists in the Duet Device ID range.)
DEFINE_DEVICE
vdvRMS = 41001:1:0 // RMS Client (Duet Module)
DEFINE_START
// RMS Client - NetLinx Adapter Module
// This module includes the RMS client module
// and enables communication via SEND_COMMAND,
// SEND_STRINGS, CHANNELS, and LEVELS with the
// RMS Client.
DEFINE_MODULE 'RmsNetLinxAdapter_dr4_0_0' mdlRMSNetLinx(vdvRMS)
If you are incorporating the RMS Touch Panel user interfaces into your system, you will also need to include the RMS Client
Application User Interface module and additionally if you want the Touch Panels to show up as assets in the RMS system, you will
need an instance of the RMS Touch Panel Monitor module for each touch panel device. The following code snippets can be
included to load the client user interface and related touch panel monitoring modules.
DEFINE_DEVICE
dvTP1 = 10001:1:0 // Touch Panels
dvTP2 = 10002:1:0 // (must be port 1 for base device)
dvTP3 = 10003:1:0
dvTP1_RMS = 10001:7:0 // RMS Touch Panels
dvTP2_RMS = 10002:7:0 // (RMS uses port 7 by default)
dvTP3_RMS = 10003:7:0
DEFINE_VARIABLE
// RMS Touch Panel Array
VOLATILE DEV dvRMSTP[] =
{
dvTP1_RMS,
dvTP2_RMS,
dvTP3_RMS
}
// RMS Touch Panel Array -
// Base Device for System Keyboard handling
VOLATILE DEV dvRMSTP_Base[] =
{
dvTP1,
dvTP2,
dvTP3
}
DEFINE_START
// RMS GUI - User Interface Module
// This module is responsible for all the RMS
// user interface application logic. This
// includes help requests, maintenance requests,
// location hotlist, and server display messages.