Toptech MultiLoad II Manual
Hide thumbs Also See for MultiLoad II:
Table of Contents

Advertisement

M
M
C
o
m
m
C
o
m
m
M
M
M
M
M
u
M
u
u
l
t
i
L
o
u
l
t
i
L
o
u
n
i
c
a
t
i
u
n
i
c
a
t
i
I
n
c
l
u
d
i
n
I
n
c
l
u
d
i
n
M
u
l
t
i
L
o
M
u
l
t
i
L
o
u
l
t
i
L
o
a
d
u
l
t
i
L
o
a
d
u
l
t
i
L
o
a
d
u
l
t
i
L
o
a
d
l
t
i
L
o
a
d
I
l
t
i
L
o
a
d
I
Part # 6077
Firmware Version 3/4.31.38
February 2018
a
d
I
I
a
d
I
I
o
n
s
G
u
o
n
s
G
g
:
g
:
a
d
I
I
a
d
I
I
I
I
S
M
P
I
I
S
M
P
I
I
S
C
S
I
I
S
C
S
I
M
o
b
i
l
e
I
M
o
b
i
l
e
i
d
e
u
i
d
e

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the MultiLoad II and is the answer not in the manual?

Questions and answers

Summary of Contents for Toptech MultiLoad II

  • Page 1 Part # 6077 Firmware Version 3/4.31.38 February 2018...
  • Page 2 Toptech Systems, Inc. Disclaimer Toptech Systems assumes no responsibility for damages resulting from installation or use of its products. Toptech Systems will not be liable for any claims of damage, lost data, or lost time as a result of using its products.
  • Page 3: Table Of Contents

    Table of Contents CHAPTER 1 PROTOCOL SPECIFICATION ..................... 7 ............................7 EFINITIONS ............................ 8 MITH ROTOCOL ..........................8 ROOKS ROTOCOL ..........................8 ANIELS ROTOCOL -RTU P ........................9 ODBUS ROTOCOL 1.5.1 Read Holding Registers (fn=3) ......................9 1.5.2 Write Single Registers (fn=6)......................9 1.5.3 Loopback/Maintenance (fn=8) ......................
  • Page 4 6.15 : ......................... 70 EQUEST LARMS 6.16 : ......................71 EQUEST OMPONENT LARMS 6.17 : ........................72 EQUEST ETER LARMS 6.18 : ........................73 EQUEST DDITIVE LARMS 6.19 : ......................... 74 EQUEST AMPLER LARMS 6.20 :........................75 EQUEST LARMS 6.21 : ........................
  • Page 5 7.2.17 114 - Real-Time Preset Total Mass Totalizers ................138 7.2.18 120 - Real-Time Sampler Total Gross Totalizers ..............138 129 – FCM Low Level Meter Status ..................139 7.2.19 133 – FCM IO Access ....................... 139 7.2.20 134 – Discrete Parameter Security settings ................140 7.2.21 135 –...
  • Page 6 8.3.2 Monitor Load During Delivery ......................170 ........................ 170 ND OF ATCH ROCESSING 8.4.1 Ending a Batch on MultiLoad ......................170 ..................... 171 ND OF RANSACTION ROCESSING 8.5.1 Ending a Transaction on MultiLoad ....................171 ......................171 HUTDOWN OF OFTWARE CHAPTER 9 DATA COMMUNICATION NOTES AND RECOMMENDATIONS ...........
  • Page 7: Chapter 1 Protocol Specification

    Chapter 1 – Protocol Specification CHAPTER 1 ROTOCOL PECIFICATION The MultiLoad auto-detects four low level computer protocols for host communications. Smith Protocol Brooks Protocol Daniels Modbus-RTU Protocol Modbus- TCP/IP Protocol Note: All unknown or not allowed signal or code sequences are rejected and have no impact on the software or measurement data.
  • Page 8: Smith Protocol

    Chapter 1 – Protocol Specification MITH ROTOCOL The Smith protocol is compatible with devices from Smith Meter, such as the Accuload I and Accuload II mini- computer modes of operation. Using this protocol, MultiLoad accepts data in the format: data A1 and A2 are the last two digits of the unit address in the RCU configuration.
  • Page 9: Modbus -Rtu Protocol

    Chapter 1 – Protocol Specification -RTU P ODBUS ROTOCOL The Modbus-RTU protocol has been implemented to be as compatible as possible with the original published Modicon Modbus-RTU standard. Note: The Modbus protocol allows parameter register access only as defined by the explicit mapping in this manual.
  • Page 10: Loopback/Maintenance (Fn=8)

    Chapter 1 – Protocol Specification 1.5.3 OOPBACK AINTENANCE Note: only loopback of command supported. Diagnostic Diagnostic Quiet Time FN=8 Data MSB Data LSB CRC1 CRC2 Quiet Time Code MSB Code LSB Diagnostic Diagnostic Quiet Time FN=8 Data MSB Data LSB CRC1 CRC2 Quiet Time...
  • Page 11: Modbus Register Map Summary

    ERVICES EGISTER Not all commands native to the MultiLoad II have corresponding mapping to Modbus registers. The Extended Services register was implemented as a way to support sending and receiving native Multiload II commands across the Modbus RTU interface. Any native command listed can be sent to the MultiLoad via the extended Services Register.
  • Page 12: Modbus -Tcp/Ip Protocol

    Chapter 2 –MultiLoad Responses -TCP/IP P ODBUS ROTOCOL The Modbus-TCP/IP protocol has been implemented to be as compatible as possible with the original published Modbus-TCP/IP standard v1.0b. Note: The Modbus protocol allows parameter register access only as defined by the explicit mapping in this manual.
  • Page 13: Read Holding Registers (Fn=3)

    Chapter 2 –MultiLoad Responses Since Modbus addressing has been implemented in various ways over the years, to avoid confusion in this manual, the Modbus Holding Register addresses listed are the value in the register address field in the message. If it is necessary to know the formal Modbus Holding Register address, simply add 40001 to the register addresses listed in the manual.
  • Page 14: Error Responses (Fn= +128)

    Chapter 2 –MultiLoad Responses Next Next Register … Register Register Register Number Number FN=16 Start Start MBAP Register Register (+128 if Registers Registers error) 1.6.5 = +128) RROR ESPONSES Error MBAP FN+128 Subcode Error Sub codes are: 1 = Invalid Function Code. Indicates that the use of an invalid or unimplemented function has been attempted.
  • Page 15: Modbus Register Map Summary

    ERVICES EGISTER Not all commands native to the MultiLoad II have corresponding mapping to Modbus registers. The Extended Services register was implemented as a way to support sending and receiving native Multiload II commands across the Modbus TCP/IP interface. Any native command listed can be sent to the MultiLoad via the extended Services Register.
  • Page 16: Chapter 2 Multiload Command Responses

    Chapter 2 –MultiLoad Responses CHAPTER 2 ULTI OMMAND ESPONSES <command_status> <rcu_status> <card_status> <command specific response data> For MultiLoad to acknowledge a message two conditions must be met. First the message must fit the Message Framing Protocol with a valid LRC, BCC or CRC. Second, the address specified in the first two characters of the command must match the configured MultiLoad address.
  • Page 17 Chapter 2 –MultiLoad Responses REMOTE_AUTH_PRESET7 = 'g', REMOTE_AUTH_PRESET8 = 'h', REMOTE_AUTH_PRESET9 = 'i', REMOTE_AUTH_PRESET10 = 'j', REMOTE_AUTH_PRESET11 = 'k', REMOTE_AUTH_PRESET12 = 'l', REMOTE_AUTH_PRESET13 = 'm', REMOTE_AUTH_PRESET14 = 'n' } rcu_status; Modbus: Read Only Register=7000, Len=1, Character (rcu_status) enum CARD_NOT_INSERTED =’0’, CARD_INSERTED =’1’, CARD_SECOND_INSERTED...
  • Page 18: Chapter 3 Query Command

    Chapter 3 – Query Command CHAPTER 3 UERY OMMAND Query Command => Response => 0?0XXXX Where: XXXX = 4 digit hexadecimal number with bits representing the rcu_status as: union unsigned int value; struct unsigned char rcu_trans_header:1; unsigned char proving_mode:1; unsigned char power_up:1; // indicated system has been powered on unsigned char configured:1;...
  • Page 19: Chapter 4 Function Commands

    Chapter 4 – Function Commands CHAPTER 4 UNCTION OMMANDS FREBOOT Performs a software reboot of the MultiLoad RCU. FFACTORY Restores all MultiLoad registers to factory defaults. FUPDATEAPPFLASH = Updates the Flash with an uploaded image (req. W&M and a valid image) Modbus: Supported through Modbus Extended Services Registers.
  • Page 20 Chapter 4 – Function Commands FPccc…. Send ccc… characters to the attached printer port (if defined). FCLEARPROD Clear all product definitions (500 register) except for the 000-Unknown Product definition. FCLEARID Clear Access ID and PIN database. FCLEARCUSTOM Clears all custom logic entries. FCLEARAUDITLOG Clear Audit Log Messages stored in Multiload.
  • Page 21: Chapter 5 Terminal Commands

    Chapter 5 – Terminal Commands CHAPTER 5 ERMINAL OMMANDS Ts… Where: s… = Any text string to display. Display string may contain one or more terminal escape commands. ERMINAL SCAPE OMMANDS <ESC><Terminal Escape Command and parameters > Where Terminal Escape Commands are: Authorize Transaction: Authorize MultiLoad Transaction.
  • Page 22 Chapter 5 – Terminal Commands Custom 1 = 0x09 (Not available) Custom 2 = 0x0a (Not available) Custom 3 = 0x0b (Not available) Custom 4 = 0x0c (Not available) Custom 5 = 0x0d (Not available) Flash 1 = 0x0e Flash 2 = 0x0f Example: To display a green word ‘Hello’...
  • Page 23 Chapter 5 – Terminal Commands < Unlock the Display > Lock the Display Turn Character Echo On Turn Asterisk Echo On arcwh Draw Progress Box Where: r = (character) 0x20 + Top Text Row Position (0 = top, 15 = bottom) c = (character) 0x20 + Left Text Column Position (0 = left, 39 = right) w = (character) 0x20 + Width in Text Columns h = (character) 0x20 + Height in Text Rows Down...
  • Page 24 Chapter 5 – Terminal Commands Black = 0x00 Blue = 0x01 = 0x02 Magenta = 0x03 Green = 0x04 Cyan = 0x05 Yellow = 0x06 White = 0x07 Custom 0 = 0x08 (Not available) Custom 1 = 0x09 (Not available) Custom 2 = 0x0a (Not available) Custom 3...
  • Page 25 Chapter 5 – Terminal Commands Custom 1 = 0x09 (Not available) Custom 2 = 0x0a (Not available) Custom 3 = 0x0b (Not available) Custom 4 = 0x0c (Not available) Custom 5 = 0x0d (Not available) Flash 1 = 0x0e Flash 2 = 0x0f hrcwhaaaaaaaa Display Graphic Cache Where:...
  • Page 26: Chapter 6 Meter Commands

    Chapter 6 – Meter Commands CHAPTER 6 ETER OMMANDS UTHORIZE RESET RODUCT AND RESET OLUME MAMpppaiiivvvvvvvvvcc Where: ppp = The specified zero-based preset or load arm number (000-011). A = Authorize bit, 0 = Cancel Authorization, 1 = Authorize. Iii = Product Index (500 register) for the authorized product. Vvvvvvvvv = Preset volume.
  • Page 27: Batch Complete

    Chapter 6 – Meter Commands Note: The Host will still need to send a MEB command for each preset that reaches a PRESET_END_OF_BATCH state. Modbus: Write Only Register=7044, Len=1, 16-Bit Integer (any value) ATCH OMPLETE MBCppp Where: ppp = The specified zero-based preset or load arm number (000-011). When a BC command is received, the preset flow will stop and the batch will be marked as complete.
  • Page 28: Preset Message

    Chapter 6 – Meter Commands RESET ESSAGE MPMpppssssssssssddddddddddddddddddddddddddddddddddddddd Where: ppp = The specified zero-based preset or load arm number (000-011). Ssssssssss = 10 Character Message. Ddddddddddddddddddddddddddddddddddddddd = 39 Character Detail Message. Displays a message for the particular preset. A detail message will be displayed when the preset is selected. Driver and acknowledge and clear the message by pressing CLR key.
  • Page 29: Request Status & Preset Alarms

    Chapter 6 – Meter Commands 6.10 R & P EQUEST TATUS RESET LARMS MRSpppxxxxyyyyzzzzaaaa => RSppp… (Requested parameters as listed below). Where: ppp = The specified zero-based preset or load arm number (000-011). Xxxx = Optional response configuration bits #0 in hexadecimal as: union unsigned int value;...
  • Page 30 Chapter 6 – Meter Commands yyyy = Optional response configuration bits #1 in hexadecimal as: union unsigned int value; struct unsigned int preset_status_0:1; unsigned int preset_status_1:1; unsigned int preset_status_2:1; unsigned int meter_status_0:1; unsigned int meter_status_1:1; unsigned int meter_status_2:1; unsigned int component_status_0:1; unsigned int component_status_1:1;...
  • Page 31 Chapter 6 – Meter Commands zzzz = Optional response configuration bits #2 in hexadecimal as: union unsigned int value; struct unsigned int meter_batch_gross_del_whole:1; //Mass unsigned int meter_gross_flow_rate:1; // Mass unsigned int component_current_relative_density_tenthous:1; unsigned int component_current_bsw_hund:1; unsigned int component_current_api_gravity_tenths 1; unsigned int component_batch_bsw_hund:1; unsigned int component_batch_api_gravity_tenths:1;...
  • Page 32 Chapter 6 – Meter Commands unsigned int unused_14:1; unsigned int unused_15:1; } flags; } query_3; (default value 0x0000.) Defaults are compatible with previous Multiload MRS replies. To query for preset information only use: MRSppp03ff To query for preset pressure only use: MRSppp0080 To query for additive delivered only use: MRSppp8000 RS = Request Status Response ppp = The specified zero-based preset or load arm number (000-011).
  • Page 33 Chapter 6 – Meter Commands Query 0 and 1 Responses: wwww= preset state in hexadecimal as: enum PRESET_IDLE PRESET_LOW_FLOW PRESET_HIGH_FLOW PRESET_1ST_TRIP PRESET_2ND_TRIP PRESET_FINAL_TRIP PRESET_START PRESET_ALARM PRESET_COMPLETE PRESET_NOT_AUTH PRESET_WAIT_TMS = 10, PRESET_AUTH = 11, PRESET_PRESET = 12, PRESET_DISABLED = 13, PRESET_STOP = 14, PRESET_REMOTE_MSG = 15,...
  • Page 34 Chapter 6 – Meter Commands xxxx= preset status #0 in hexadecimal as: union unsigned int value; struct unsigned char preset_enabled:1; // preset is enabled unsigned char preset_host_enabled:1; // preset enabled by host unsigned char authorized:1; // preset available for use unsigned char flow_active:1;...
  • Page 35 Chapter 6 – Meter Commands yyyy= preset alarms in hexadecimal as: union unsigned int value; struct unsigned char preset_fcm_com:1; // one or more FCMs that are required for PRESET status or signals are in com error. Unsigned char preset_permissive:1; // preset permissive not active but preset is authorized to load.
  • Page 36 Chapter 6 – Meter Commands qqqqqqqqq= preset quantity in whole units ddddddddd = delivered gross quantity in whole units ddddddddd = delivered net quantity in whole units Note: if the Use Hundredths W&M RCU parameter is enabled, the gross and net quantity value will have an implied two decimal places. Sddddd = signed batch average temp in tenths or hundredths sddddd = signed batch average pressure in tenths or hundredths dddddd = depending on API table selected,...
  • Page 37 Chapter 6 – Meter Commands per meter(5): ddddddddd = meter delivered gross quantity in whole units Note: if the Use Hundredths W&M RCU parameter is enabled, the gross quantity value will have an implied two decimal places. Ddddd = meter gross flow rate in whole units Modbus : Where: p = preset (0-11), m = meter (0-4) Read Only Register=4192+p*5+m, Len=2, 32-Bit Integer (ddddddddd (gross))
  • Page 38 Chapter 6 – Meter Commands per component(8): ddddddddd = delivered gross quantity in whole units ddddddddd = delivered net quantity in whole units Note: if the Use Hundredths W&M RCU parameter is enabled, the gross and net quantity value will have an implied two decimal places. Sddddd = signed component batch average temp in tenths or hundredths sddddd = component batch average pressure in tenths or hundredths dddddd = depending on API table selected,...
  • Page 39 Chapter 6 – Meter Commands Read Only Register=5716+p*8+c, Len=2, 32-Bit Integer (sddddd (component current density)) Read Only Register=6292+p*8+c, Len=2, 32-Bit Integer (sddddd (component current relative density)) Read Only Register=6484+p*8+c, Len=2, 32-Bit Integer (sddddd (component current bsw)) Read Only Register=6676+p*8+c, Len=2, 32-Bit Integer (sddddd (component current api gravity)) NOT AVAILABLE Len=2, 32-Bit Integer (sdddd (component average api gravity)) Read Only Register=6868+p*8+c, Len=2, 32-Bit Integer (ddddddddd (gross))
  • Page 40 Chapter 6 – Meter Commands per additive(16): ddddddddd = delivered quantity in thousands Modbus : Where: p = preset (0-11), a = additive (0-11) Read Only Register=5908+p*16+a, Len=2, 32-Bit Integer (ddddddddd (delivered quantity in thousands)) per sampler(20) ddddddddd = sampler batch gross delivered in thousandths ddddddddd = sampler batch current target...
  • Page 41 Chapter 6 – Meter Commands Query 1 Responses: xxxx= preset status #0 in hexadecimal as: union unsigned int value; struct unsigned char preset_enabled:1; // preset is enabled unsigned char preset_host_enabled:1; // preset enabled by host unsigned char authorized:1; // preset available for use unsigned char flow_active:1;...
  • Page 42 Chapter 6 – Meter Commands xxxx= preset status #1 in hexadecimal as: union unsigned int value; struct unsigned char program_clear_errors:1; // command to clear errors unsigned char remote_clear_errors:1; // command to clear errors unsigned char driver_clear_errors:1; // command to clear errors unsigned char clearing_errors:1;...
  • Page 43 Chapter 6 – Meter Commands xxxx= preset status #2 in hexadecimal as: union unsigned int value; struct unsigned char permissive_out:1; // preset permissive output status unsigned char load_interrupted:1; // has loading been interrupted unsigned char clearing_batch:1; // batch in process of clearing unsigned char alt_high_flow:1;...
  • Page 44 Chapter 6 – Meter Commands Per meter(6): xxxx= meter status #0 in hexadecimal as: union unsigned int value; struct unsigned char program_clear_errors:1; // command to clear errors unsigned char remote_clear_errors:1; // command to clear errors unsigned char driver_clear_errors:1; // command to clear errors unsigned char clearing_errors:1;...
  • Page 45 Chapter 6 – Meter Commands xxxx= meter status #1 in hexadecimal as: union unsigned int value; struct unsigned char unused1_0:1; // future use unsigned char unused1_1:1; // future use unsigned char unused1_2:1; // future use unsigned char unused1_3:1; // future use unsigned char unused1_4:1;...
  • Page 46 Chapter 6 – Meter Commands xxxx= meter status #2 in hexadecimal as: union unsigned int value; struct unsigned char unused2_0:1; // future use unsigned char unused2_1:1; // future use unsigned char unused2_2:1; // future use unsigned char unused2_3:1; // future use unsigned char unused2_4:1;...
  • Page 47 Chapter 6 – Meter Commands Per component(8): xxxx= component status #0 in hexadecimal as: union unsigned int value; struct unsigned char program_clear_errors:1; // command to clear errors unsigned char remote_clear_errors:1; // command to clear errors unsigned char driver_clear_errors:1; // command to clear errors unsigned char clearing_errors:1;...
  • Page 48 Chapter 6 – Meter Commands xxxx= component status #1 in hexadecimal as: union unsigned int value; struct unsigned char blend_ready:1; // component blend ready unsigned char blend_complete:1; // component blend complete unsigned char flush_ready:1; // component flush ready unsigned char flush_complete:1; // component flush complete unsigned char sequential_delivery:1;...
  • Page 49 Chapter 6 – Meter Commands xxxx= component status #2 in hexadecimal as: union unsigned int value; struct unsigned char unused2_0:1; // future use unsigned char unused2_1:1; // future use unsigned char unused2_2:1; // future use unsigned char unused2_3:1; // future use unsigned char unused2_4:1;...
  • Page 50 Chapter 6 – Meter Commands Per additive(16): xxxx= additive status #0 in hexadecimal as: union unsigned int value; struct unsigned char program_clear_errors:1; // command to clear errors unsigned char remote_clear_errors:1; // command to clear errors unsigned char driver_clear_errors:1; // command to clear errors unsigned char clearing_errors:1;...
  • Page 51 Chapter 6 – Meter Commands xxxx= additive status #1 in hexadecimal as: union unsigned int value; struct unsigned char permissive_out:1; // permissive out output status unsigned char feedback_status:1; // additive feedback input status unsigned char wm_clear_errors:1; // command to clear errors unsigned char unused1_3:1;...
  • Page 52: Request Tank Status & Tank Alarms

    Chapter 6 – Meter Commands xxxx= additive status #2 in hexadecimal as: union unsigned int value; struct unsigned char unused2_0:1; // future use unsigned char unused2_1:1; // future use unsigned char unused2_2:1; // future use unsigned char unused2_3:1; // future use unsigned char unused2_4:1;...
  • Page 53 Chapter 6 – Meter Commands unsigned int unused_8:1; unsigned int unused_9:1; unsigned int unused_10:1; unsigned int unused_11:1; unsigned int unused_12:1; unsigned int unused_13:1; unsigned int unused_14:1; unsigned int unused_15:1; } flags; } query_0; (default value 0x0000.) union unsigned int value; struct unsigned int tank_status_0:1;...
  • Page 54 Chapter 6 – Meter Commands unsigned int unused_8:1; unsigned int unused_9:1; unsigned int unused_10:1; unsigned int unused_11:1; unsigned int unused_12:1; unsigned int unused_13:1; unsigned int unused_14:1; unsigned int unused_15:1; } flags; } query_2; union unsigned int value; struct unsigned int unused_0:1; unsigned int unused_1:1;...
  • Page 55 Chapter 6 – Meter Commands TANK_UNLOAD_LOAD = 3, } tank_state;...
  • Page 56 Chapter 6 – Meter Commands xxxx= tank status #0 in hexadecimal as: union unsigned int value; struct unsigned char high_high_level:1; // high high level alarm unsigned char high_level:1; // high level alarm unsigned char low_level:1; // low level alarm unsigned char low_low_level:1; // low low level alarm unsigned char bypass_alarm:1;...
  • Page 57 Chapter 6 – Meter Commands yyyy= tank alarms in hexadecimal as: union unsigned int value; struct unsigned char tank_fcm_com:1; // one or more FCMs that are required for TANK status or signals are in com error. Unsigned char high_high_level:1; // Tank High High Level Alarm Unsigned char high_level:1;...
  • Page 58 Chapter 6 – Meter Commands unsigned char unused0_12:1; unsigned char unused0_13:1; unsigned char unused0_14:1; unsigned char unused0_15:1; } flags: } tank_status_0;...
  • Page 59 Chapter 6 – Meter Commands xxxx= tank_status #1 in hexadecimal as: union unsigned int value; struct unsigned char program_clear_errors:1; // command to clear errors unsigned char remote_clear_errors:1; // command to clear errors unsigned char driver_clear_errors:1; // command to clear errors unsigned char clearing_errors:1;...
  • Page 60: Request Sampler Status & Sampler Alarms

    Chapter 6 – Meter Commands xxxx= tank_status #2 in hexadecimal as: union unsigned int value; struct unsigned char unused2_0:1; // future use unsigned char unused2_1:1; // future use unsigned char unused2_2:1; // future use unsigned char unused2_3:1; // future use unsigned char unused2_4:1;...
  • Page 61 Chapter 6 – Meter Commands unsigned int unused_7:1; unsigned int unused_8:1; unsigned int unused_9:1; unsigned int unused_10:1; unsigned int unused_11:1; unsigned int unused_12:1; unsigned int unused_13:1; unsigned int unused_14:1; unsigned int unused_15:1; } flags; } query_0; (default value 0x0000.) union unsigned int value;...
  • Page 62 Chapter 6 – Meter Commands unsigned int unused_7:1; unsigned int unused_8:1; unsigned int unused_9:1; unsigned int unused_10:1; unsigned int unused_11:1; unsigned int unused_12:1; unsigned int unused_13:1; unsigned int unused_14:1; unsigned int unused_15:1; } flags; } query_2; union unsigned int value; struct unsigned int unused_0:1;...
  • Page 63 Chapter 6 – Meter Commands SS_SAMPLE = 2, } sampler_state;...
  • Page 64 Chapter 6 – Meter Commands xxxx= sampler_status #0 in hexadecimal as: union unsigned int value; struct unsigned char program_clear_errors:1; // command to clear errors unsigned char remote_clear_errors:1; // command to clear errors unsigned char driver_clear_errors:1; // command to clear errors unsigned char clearing_errors:1;...
  • Page 65 Chapter 6 – Meter Commands yyyy= sampler alarms in hexadecimal as: union unsigned int value; struct unsigned char sampler_fcm_com:1; // one or more FCMs that are required for Sampler status or signals are in com error. unsigned char sampler_permissive:1; // Sampler permissive Alarm unsigned char unused02:1;...
  • Page 66 Chapter 6 – Meter Commands unsigned hi_limit:1; // sampler high limit input unsigned char alarm_out:1; unsigned char authorized:1; unsigned char permissive:1; unsigned char permissive_out:1; } flags: } sampler_status_0;...
  • Page 67 Chapter 6 – Meter Commands xxxx= sampler_status #1 in hexadecimal as: union unsigned int value; struct unsigned char unused1_0:1; unsigned char unused1_1:1; unsigned char unused1_2:1; unsigned char unused1_3:1; unsigned char unused1_4:1; unsigned char unused1_5:1; unsigned char unused1_6:1; unsigned char unused1_7:1; unsigned char unused1_8_15:8;...
  • Page 68 Chapter 6 – Meter Commands xxxx= sampler_status #2 in hexadecimal as: union unsigned int value; struct unsigned char unused2_0:1; // future use unsigned char unused2_1:1; // future use unsigned char unused2_2:1; // future use unsigned char unused2_3:1; // future use unsigned char unused2_4:1;...
  • Page 69: Request Smp Status & Preset Alarms

    MSSpppxxxxyyyyzzzz => SSppp… (Requested parameters as listed above). The MSS command for the MultiLoad II SMP, is identical to the MRS command but only returns 1 component instead of 8, 1 meter instead of 4, and 2 additives instead of 16 additives in the response.
  • Page 70: Request Bay Alarms

    Chapter 6 – Meter Commands unsigned char sampler_alarm:1; // a sampler level alarm currently exists for this preset unsigned char configuration_error:1; // preset configuration has invalid data, check message log for details } flags; } preset_alarms; Modbus: Write Only Register=7082+ppp, Len=1, 16-Bit Integer (yyyy) 6.15 R EQUEST LARMS...
  • Page 71: Request Component Alarms

    Chapter 6 – Meter Commands unsigned char unused13:1; unsigned char deadman:1; //deadman alarm active unsigned char unused15:1 unsigned char power_fail:1 // if a hardware reboot flags get set unsigned char unused17-31:1; } flags; unsigned int value; } bay_alarms; Modbus: Read Only Register=7094, Len=1, 16-Bit Integer (xxxx) 6.16 R EQUEST OMPONENT...
  • Page 72: Request Meter Alarms

    Chapter 6 – Meter Commands Unsigned char component_api_table:1; // API VCF table error unsigned char component_back_pressure:1; // if current flowrate falls below fallback minimum rate during pressure control unsigned char unused10:1; unsigned char unused11:1; unsigned char unused12:1; unsigned char unused13:1; unsigned char unused14:1;...
  • Page 73: Request Additive Alarms

    Chapter 6 – Meter Commands Unsigned char low_flow:1; // flow rate was below low_flow_alarm_rate for low_flow_alarm_time seconds while attempting to flow. Unsigned char excess_flow:1; flow rate above excess_flow_alarm_rate. Unsigned char quad_encoding:1; // max_quad_errors were received. Unsigned char density_error:1; // density signal not valid or density < alarm_low_density density >...
  • Page 74: Request Sampler Alarms

    Chapter 6 – Meter Commands unsigned char additive_fcm_com:1; // one or more FCMs that are required for ADDITIVE status or signals are in comm error. Unsigned char additive_permissive:1; // additive permissive not active but additive is authorized to load. Unsigned char additive_under_add:1; // recipe additive needed is under actual additive delivered...
  • Page 75: Request Tank Alarms

    Chapter 6 – Meter Commands union unsigned int value; struct unsigned char sampler_fcm_com:1; // one or more FCMs that are required for Sampler status or signals are in comm error. unsigned char sampler_permissive:1; // sampler permissive not active but sampler is authorized to load.
  • Page 76: Remote Transaction Data

    Chapter 6 – Meter Commands unsigned char unused15:1; unsigned char unused16:1; unsigned char unused17:1; unsigned char unused18:1; unsigned char unused19:1; unsigned char unused20:1; unsigned char unused21:1; unsigned char unused22:1; unsigned char unused23:1; unsigned char unused24:1; unsigned char unused25:1; unsigned char unused26:1; unsigned char unused27:1;...
  • Page 77: Start Preset Flow

    Chapter 6 – Meter Commands Read Only Register=N/A 6.22 S TART RESET MMSppp Where: ppp = The specified zero-based preset or load arm number (000-011). Starts flow for the particular preset. A message is placed into the Message Log when this command is executed.
  • Page 78: Chapter 7 Register Operations

    Chapter 7 – Register Operations CHAPTER 7 EGISTER PERATIONS Read Register Command => Response R<register/sub-registers> => <status><register/sub-registers><register value(s)> R004 => 0?00004000000001 R104021000001 => 0?0104021000001000000020 R999 => 1?0999 (invalid register!) Update Register Command => Response U<register/sub-registers><register value(s)> => <status><register/sub-registers> U004000000001 => 0?0004 U104021000001000000020 =>...
  • Page 79: Generic Registers

    Chapter 7 – Register Operations ENERIC EGISTERS 7.1.1 EGISTER YPES All registers are read and updated as positive integers even when values expressed are non-positive or fractional. In some cases a several values are concatenated bit-wise to form the register value. “unsigned int”...
  • Page 80 Chapter 7 – Register Operations +1234.5 12345 +0.0 +0.1 +3276.7 32767 -3276.8 32768 -0.1 65535 “signed div100” – Signed numeric value with 2 decimal places. Numeric Value Register Value +123.45 12345 +0.00 +0.01 +327.67 32767 -327.68 32768 -0.01 65535 “signed div1000” – Signed numeric value with 3 decimal places. Numeric Value Register Value +12.345...
  • Page 81 Chapter 7 – Register Operations GALLONS = 0, LITRES = 1, CUBIC_METERS = 2, TONNES = 3, KILOGRAMS = 4, GRAMS = 5, POUNDS = 6, BARRELS = 7, NO_MEASURE = 8, LITERS = 9, DECALITERS = 10, “api table name” – Enumerated api table name values. Enum{ // Enumerated Value Register Value...
  • Page 82 Chapter 7 – Register Operations = ’201’, TABLE_TEC_ETH_B40 = ’202’, TABLE_TEC_ETH_E40 = ‘203’, TABLE_TEC_ETH_E100 = ’204’, TABLE_BIO_PTB =’205’, TABLE_ETH_BRAZIL =’206’, TABLE_HYDRO_BRAZIL TABLE_2004_6A = 1000, TABLE_2004_6B = 1001, TABLE_2004_6C = 1002, TABLE_2004_6D = 1003, TABLE_2004_6X = 1004, TABLE_2004_24A = 1008, TABLE_2004_24B = 1009, TABLE_2004_24C = 1010,...
  • Page 83 Chapter 7 – Register Operations TABLE_2007_53E = 1062, TABLE_2007_54E = 1063, TABLE_2007_59E = 1064, TABLE_2007_60E = 1065, TABLE_ASTM_D1555 = 1080 Note: Register value is still an integer value not an ascii char. For example, to specify TABLE_54, the ascii value of ‘A’ or 65 would be the register value, not the character’A’. “fcm address”...
  • Page 84 Chapter 7 – Register Operations Example #1: to specify analog input port number A04, fcm_number 1, 4-20mA signal, enabled, (0,1,0000,000100,00001) the numeric value of the bit-wise concatenation of these four different FCM addressing parameters would be 0x8081 = 32897. “language” – Enumerated language values. enum{ // Enumerated Value Register Value...
  • Page 85 Chapter 7 – Register Operations “meter type” – Enumerated meter type values. enum{ // Enumerated Value Register Value METER_TYPE_VOLUME_PULSE_INPUT = 0, METER_TYPE_MASS_PULSE_INPUT = 1, METER_TYPE_VOLUME_ANALOG_INPUT = 2, METER_TYPE_KROHNE_INPUT = 3, METER_TYPE_MICROMOTION_INPUT “totalizer” – Totalizer selection parameter. This type is a bit-wise concatenation of five totalizer selection parameters that is expressed as a single register value.
  • Page 86 Chapter 7 – Register Operations BUCKET_NONCAPTIVE = 2, // NONCAPTIVE CARD-READER SLOT_CAPTIVE = 3 // CAPTIVE CARD-READER SLOT_NONCAPTIVE = 4 // NONCAPTIVE CARD-READER IBUTTON = 5 // iBUTTON BUCKET_DUAL_NONCAP = 6 // NONCAPTIVE CARD-READER SLOT_DUAL_NONCAP = 7 // NONCAPTIVE CARD-READER “processing mode”...
  • Page 87 Chapter 7 – Register Operations “pressure type” Select pressure type parameter enum{ // Enumerated Value Register Value PSIG = 1, // PSIG = 2, // KPA = 3 // “additive type” Select additive type parameter enum{ // Enumerated Value Register Value SOLENOID_WITH_METER = 1, PISTON_WITH_NORM_FEEDBACK...
  • Page 88 Chapter 7 – Register Operations “Alarm to Host Mode” Select if the alarm needs to be send to the host Enum{// Enumerated Value Register Value DISABLED = 0, ENABLED “Mass Measures” Select the UOM of Mass Enum{// Enumerated Value Register Value NO_MASS_MEASURES = 0, MASS_POUNDS...
  • Page 89 Chapter 7 – Register Operations “Decimal Mark” Select which decimal is used in each screen Enum{// Enumerated Value Register Value DECIMAL_MARK_TYPE_DECIMAL = 0, DECIMAL_MARK_TYPE_COMMA “Flow Rate Mode” Select which rate is used in each screen Enum{// Enumerated Value Register Value FLOW_RATE_MODE_MINUTES = 0, FLOW_RATE_MODE_HOURS...
  • Page 90 Chapter 7 – Register Operations PARITY_ODD PARITY_EVEN “Stop Bits” Select the number of stop bits for serial communication Enum{// Enumerated Value Register Value STOP_BITS_1 STOP_BITS_2 “Multidrop” Select which Multidrop mode to use Enum{// Enumerated Value Register Value MULTIDROP_SINGLE MULTIDROP_MULTI MULTIDROP_2WIRE “Communication Type”...
  • Page 91: Rcu Level Configuration Registers

    Chapter 7 – Register Operations SECURITY_COMPLEXITY_TYPE_ALL “Display Load Type” Select how the total amount of product being loaded will be displayed on the screen. Enum{// Enumerated Value Register Value DISPLAY_LOAD_TYPE_DISABLED DISPLAY_LOAD_TYPE_GROSS DISPLAY_LOAD_TYPE_NET DISPLAY_LOAD_TYPE_MASS “SCS Display Type” Select when the SCS Prompts will be displayed, either before or after the load. Enum{// Enumerated Value Register Value...
  • Page 92 Chapter 7 – Register Operations Modbus Default Prefix Register Description Data Type Protection Register Value Value Value Len=2 R / U Display Hundredths disable/enable Disabled General 1058 R / U Use Hundredths disable/enable Disabled W & M 1060 R / U W&M Density Lock disable/enable Disabled...
  • Page 93 Chapter 7 – Register Operations Modbus Default Prefix Register Description Data Type Protection Register Value Value Value Len=2 R / U Startup Keypad Locked disable/enable Disabled General 1132 R / U Screen Brightness Percent 10000 10000 General 1134 R / U W&M Key FCM# fcm address Disabled...
  • Page 94: Bay Level Configuration Registers

    Chapter 7 – Register Operations 100 – B 7.1.3 EVEL ONFIGURATION EGISTERS Modbus Default Register Access Register Description Data Type Value Value Value Protection Len=2 R / U 100000 Number Bay Presets unsigned int General 1200 R / U 100001 Number of FCMs unsigned int General...
  • Page 95: Preset Level Configuration Registers

    Chapter 7 – Register Operations 101 – P 7.1.4 RESET EVEL ONFIGURATION EGISTERS Note: ppp = The specified zero-based preset or load arm number (000-011). Modbus: The Modbus Preset Index Register sets the ppp index, Read/Write Register=996, Len=1, 16-Bit Integer Modbus Default Register...
  • Page 96 Chapter 7 – Register Operations Modbus Default Register Prefix Register Description Data Type Value Value Value Protection Len=2 R / U 101033ppp Blnd Adj Dev Vol unsigned int 65535 General 1466 R / U 101034ppp Blnd Adj Time unsigned int 65535 General 1468...
  • Page 97 Chapter 7 – Register Operations Modbus Default Register Prefix Register Description Data Type Value Value Value Protection Len=2 R / U 101070ppp BSW 2 Offset signed div 10 -3.00 3.00 General 1540 R / U 101071ppp Oil Density unsigned div 10 99999 General 1542...
  • Page 98 Chapter 7 – Register Operations Modbus Default Register Prefix Register Description Data Type Value Value Value Protection Len=2 R / U 101107ppp Unused General R / U 101108ppp Recipe Output Bit 0 FCM# fcm address Disabled General R / U 101109ppp Recipe Output Bit 1 FCM# fcm address...
  • Page 99: Meter Level Configuration Registers

    Chapter 7 – Register Operations 102 – M 7.1.5 ETER EVEL ONFIGURATION EGISTERS Note: ppp = The specified zero-based preset or load arm number (000-011). mmm = The specified zero-based meter number (000-005). Modbus: The Modbus Preset Index Register sets the ppp index, Read/Write Register=996, Len=1, 16-Bit Integer The Modbus Meter Index Register sets the mmm index, Read/Write Register=998, Len=1, 16-Bit Integer Modbus Default...
  • Page 100 Chapter 7 – Register Operations Modbus Default Register Prefix Register Description Data Type Value Value Value Protection Len=2 R / U 102031pppmmm Excess Flow Alarm Time unsigned div 1000 65535 General 1662 R / U 102032pppmmm Analog Valve No Flow mA unsigned div 1000 0.000 20.000 0.000...
  • Page 101 Chapter 7 – Register Operations Modbus Default Register Prefix Register Description Data Type Value Value Value Protection Len=2 R / U 102068pppmmm Relative Density @ High Value unsigned div10000 0.0000 4.0000 1.2000 W & M 1694 R / U 102069pppmmm Relative Density Offset signed div10000 -0.3000 0.3000 0.0000...
  • Page 102 Chapter 7 – Register Operations Modbus Default Register Prefix Register Description Data Type Value Value Value Protection Len=2 R / U 102110pppmmm Alarm Low API Gravity unsigned div10 -1000 11000 General 1820 R / U 102111pppmmm Alarm High API Gravity unsigned div10 -1000 11000 11000...
  • Page 103: Component Level Configuration Registers

    Chapter 7 – Register Operations 103 – C 7.1.6 OMPONENT EVEL ONFIGURATION EGISTERS Note: ppp = The specified zero-based preset or load arm number (000-011). ccc = The specified zero-based component number (000-007). Modbus: The Modbus Preset Index Register sets the ppp index, Read/Write Register=996, Len=1, 16-Bit Integer The Modbus Component Index Register sets the ccc index, Read/Write Register=997, Len=1, 16-Bit Integer Modbus Register...
  • Page 104 Chapter 7 – Register Operations Modbus Register Prefix Register Description Data Type Min Value Max Value Default Value Protection Len=2 R / U 103031pppccc Fallback Decrease Rate unsigned int 9999 General 1862 R / U 103032pppccc Fallback Retry Min Pressure unsigned div100 999999 General...
  • Page 105 Chapter 7 – Register Operations Modbus Register Prefix Register Description Data Type Min Value Max Value Default Value Protection Len=2 R / U 103068pppccc Unused General 1936 R / U 103069pppccc Unused General 1938 R / U 103070pppccc Unused General 1940 R / U 103071pppccc Output Pulse FCM# fcm address...
  • Page 106: Additive Level Configuration Registers

    Chapter 7 – Register Operations 104 – A 7.1.7 DDITIVE EVEL ONFIGURATION EGISTERS Note: ppp = The specified zero-based preset or load arm number (000-011). aaa = The specified zero-based additive number (000-0015). Modbus: The Modbus Preset Index Register sets the ppp index, Read/Write Register=996, Len=1, 16-Bit Integer The Modbus Additive Index Register sets the aaa index, Read/Write Register=999, Len=1, 16-Bit Integer Modbus Register...
  • Page 107 Chapter 7 – Register Operations Modbus Register Prefix Register Description Date Type Min Value Max Value Default Value Protection Len=2 R / U 104036pppaaa Over Add Alrm # Inj unsigned int 65535 Conditional 2072 R / U 104037pppaaa Check Add Tol Time unsigned int 65535 Conditional...
  • Page 108: 108 -Trace Level Configuration Registers

    Chapter 7 – Register Operations 108 –T 7.1.8 RACE EVEL ONFIGURATION EGISTERS “Modbus Trace Level” Select the trace level for outgoing Modbus communications Enum{// Enumerated Value Register Value MODBUS_TRACE_LEVEL_DISABLED MODBUS_TRACE_LEVEL_BASIC MODBUS_TRACE_LEVEL_ADVANCED Modbus Register Prefix Register Description Date Type Min Value Max Value Default Value Protection Len=2 R / U 108000...
  • Page 109: 111 -Tank Level Configuration Registers

    Chapter 7 – Register Operations Modbus Register Prefix Register Description Date Type Min Value Max Value Default Value Protection Len=2 R / U 110007 Com1 SSL Port (7011) disable/enable Disabled General R / U 110008 Com2 Port(7002) disable/enable Enabled General R / U 110009 Com2 SSL Port (7012)
  • Page 110: 115 -Sampler Level Configuration Registers

    Chapter 7 – Register Operations R / U 111006ttt Tank Low Low Level FCM# fcm address Disabled General R / U 111007ttt Tank Level Bypass FCM# fcm address Disabled General R / U 111008ttt Active Tank FCM# fcm address Disabled General R / U 111009ttt Alarm Out FCM#...
  • Page 111 Chapter 7 – Register Operations R / U 116004 Minimum Password Length unsigned int General R / U 116005 Max Retry Attempts unsigned int 65535 General R / U 116006 Lockout Duration in Minutes unsigned int 65535 General R / U 116007 Password History Storage unsigned int...
  • Page 112: 117 -Report Level Configuration Registers

    Chapter 7 – Register Operations 7.1.13 117 –R EPORT EVEL ONFIGURATION EGISTERS Note: rrr = The specified zero based report type (000= Transaction Report, 001= Sample Pot Report, 002= Meter Report). Modbus Register Prefix Register Description Date Type Min Value Max Value Default Value Protection Len=2 R / U 117000rrr...
  • Page 113: Custom Logic Definitions Registers

    Chapter 7 – Register Operations 7.1.14 105 – C USTOM OGIC EFINITIONS EGISTERS R105iiiii => 0?0105iiiiittttt… U105105iiiiittttt… => 0?0105 Where: iiiii = The specified zero-based custom logic index (0000-1023). Note: For Modbus, the Modbus Custom Logic Index Register sets the iiii index. Modbus: Read/Write Register=296, Len=1, 16-Bit Integer (iiiii) ttttt = Custom Logic Type as: enum custom_logic_type...
  • Page 114 Chapter 7 – Register Operations SD_CARD_WRITE_CFG = 39, // run time totalizer values PRESET_TOTALIZER_RT = 40, COMPONENT_TOTALIZER_RT= 41, METER_TOTALIZER_RT = 42, ADDITIVE_TOTALIZER_RT = 43, SAMPLER_TOTALIZER_RT = 44, // run time resetable totalizer values PRESET_RTOTALIZER_RT = 50, COMPONENT_RTOTALIZER_RT=51, METER_RTOTALIZER_RT = 52, ADDITIVE_RTOTALIZER_RT = 53, SAMPLER_RTOTALIZER_RT = 54,...
  • Page 115 Chapter 7 – Register Operations ANALOG_OUT_MONITOR = 162, //RTD = 170, //Alarm Output Levels BAY_RT_ALARM = 180, PRESET_RT_ALARM = 181, COMPONENT_RT_ALARM = 182, METER_RT_ALARM = 183, ADDITIVE_RT_ALARM = 184, TANK_RT_ALARM = 185, SAMPLER_RT_ALARM = 186, // Allow Inputs from FCM outputs or External Communication INTERNAL_INPUT = 190, EXTERNAL_INPUT...
  • Page 116 Chapter 7 – Register Operations rrrrr –Rcu Real Time Parameter Type as custom_logic_rcu_real_time_prompt[] = {"Proving Mode"}, // 00000 {"W&M Key"}, // 00001 {"Program Key"}, // 00002 {"Card Inserted"}, // 00003 {"Hour" //00004 {"Minute" //00005 {"Seconds" //00006 {"Year" //00007 {"Month" //00008 {"Day"...
  • Page 117 Chapter 7 – Register Operations {"Permissive 4"}, // 00010 {"Permissive 5"}, // 00011 {"Permissive 6"}, // 00012 {"Permissive 7"}, // 00013 {"Deadman Input" }, // 00014 {"Deadman Output" }, // 00015 {"Deadman Bypass" }, // 00016 {"Total Volume" }, // 00017 {"Start Trans"...
  • Page 118 Chapter 7 – Register Operations {"Relative Dens" }, // 00025 {"API Gravity" // 00026 {"BSW" // 00027 {"Alt. High Flow"} // 00028 {"Preset Volume"} // 00029 {"Flush Remain" } // 00030 {"Auth Prod Idx" } // 00031 {"Product Idx" // 00032 {"Lead Component"...
  • Page 119 Chapter 7 – Register Operations {"CTL" // 00023 {"CPL" // 00024 {"Fallback Ceil"} // 00025 {"Avg Temperature"} // 00026 {"Avg Pressure" } // 00027 {"Avg Density" // 00028 {"Avg Relative" } // 00029 {"Avg API Gravity"} // 00030 {"Unauth Gross" } // 00031 {"Unauth Net"...
  • Page 120 Chapter 7 – Register Operations {"Pressure" // 00018 {"Density" // 00019 {"Relative Dens" }, // 00020 {"API Gravity" // 00021 {"Gross Creep Del"}, // 00022 {"Volume Preset"}, // 00023 ppppp – Zero-based preset number (00000-00011). lllll = Zero based meter number (00000-00003). Modbus: Read/Write Register=298, Len=1, 16-Bit Integer (rrrrr) Modbus: Read/Write Register=299, Len=1, 16-Bit Integer (ppppp) Modbus: Read/Write Register=300, Len=1, 16-Bit Integer (lllll)
  • Page 121 Chapter 7 – Register Operations Modbus: Read/Write Register=298, Len=1, 16-Bit Integer (rrrrr) Modbus: Read/Write Register=299, Len=1, 16-Bit Integer (ppppp) Modbus: Read/Write Register=300, Len=1, 16-Bit Integer (lllll) If type -= SAMPLER_RT, rrrrrppppplllll Where: rrrrr – Sampler Real Time Parameter Type as custom_logic_sampler_real_time_prompt[] (“Clearing Errors”), // 00000...
  • Page 122 Chapter 7 – Register Operations ppppp – Zero-based preset number (00000-00011). lllll = Zero based sampler number (00000-00015). Modbus: Read/Write Register=298, Len=1, 16-Bit Integer (rrrrr) Modbus: Read/Write Register=299, Len=1, 16-Bit Integer (ppppp) Modbus: Read/Write Register=300, Len=1, 16-Bit Integer (lllll) If type -= BAY_RT_ALARM, rrrrrppppp Where: rrrrr –Bay Real Time Alarm Parameter Type as custom_logic_bay_real_time_alarm_prompt[] =...
  • Page 123 Chapter 7 – Register Operations {"*ADD ALARM" // 00007 {"*MTR STOP" // 00008 {"*OVERRUN" // 00009 {"*EXCESS FL" // 00010 {"*BSW" // 00011 {"*TANKLEVEL"} // 00012 {"*DIVERT"}, // 00013 {"*SAMPELR" }, // 00014 {"*INVCONFIG"} // 00015 ppppp – Zero-based preset number (00000-00011). Modbus: Read/Write Register=298, Len=1, 16-Bit Integer (rrrrr) Modbus: Read/Write Register=299, Len=1, 16-Bit Integer (ppppp) If type -= COMPONENT_RT_ALARM, rrrrrppppplllll...
  • Page 124 Chapter 7 – Register Operations {"*FCM CONF" // 00002 {"*FCM WDT" // 00003 {"*FCM TMOUT" // 00004 {"*VALVE FLT" // 00005 {"*LOW FLOW" // 00006 {"*EXCESS FL" // 00007 {"*QUAD ENC" // 00008 {"*DENSITY" // 00009 {"*RTD ERROR" // 00010 {"*VALVE CTL"...
  • Page 125 Chapter 7 – Register Operations If type -= ALWAYS_FALSE or ALWAYS_FALSE, (No Further Parameters) If type -= ASSIGN or NOT, xxxxx Where: xxxxx = Custom logic index (0000-1023). Modbus: Read/Write Register=298, Len=1, 16-Bit Integer (xxxxx) If type -= any other valid type, xxxxxyyyyy Where: xxxxx = Custom logic index (0000-1023).
  • Page 126 Chapter 7 – Register Operations Modbus: Read/Write Register= 300, Len=1, 16-Bit Integer (lllll) If type -= PRESET_TOTALIZER_RT, rrrrrppppp Where: rrrrr – Preset Totalizer Real Time Parameter Type as custom_logic_preset_totalizer_real_time_prompt[] {"GrossTotalizer" } // 00001 {"NetTotalizer" } // 00002 {"MassTotalizer" } // 00003 {"AuthGrossTot"...
  • Page 127 Chapter 7 – Register Operations {"RBckflwGrossTot"} // 00009 ppppp – Zero-based preset number (00000-00011). lllll = Zero based meter number (00000-0005). Modbus: Read/Write Register=298, Len=1, 16-Bit Integer (rrrrr) Modbus: Read/Write Register=299, Len=1, 16-Bit Integer (ppppp) Modbus: Read/Write Register= 300, Len=1, 16-Bit Integer (lllll) If type -= COMPONENT_TOTALIZER_RT, rrrrrppppplllll Where: rrrrr –...
  • Page 128: Custom Logic Value Registers

    Chapter 7 – Register Operations {"GrossTotalizer" } // 00000 {"AuthGrossTot" } // 00001 {"UnauthGrossTot" } // 00002 {"CreepGrossTot" } // 00003 {"RGrossTotalizer"} // 00004 {"RAuthGrossTot" } // 00005 {"RUnauthGrossTot"} // 00006 {"RCreepGrossTot" } // 00007 ppppp – Zero-based preset number (00000-00011). lllll = Zero based additive number (00000-00015).
  • Page 129 Chapter 7 – Register Operations U200aabbccddeeff => 0?0200 Where: aabb = BOL Line and Position Number for the BOL Number ccdd = BOL Line and Position Number for the Card Number eeff = BOL Line and Position Number for the Company Modbus: Read/Write Register=350, Len=1, 16-Bit Integer (aa) Read/Write Register=351, Len=1, 16-Bit Integer (bb)
  • Page 130 Chapter 7 – Register Operations ee = BOL Position Number for the Product Net Volume ff = BOL Position Number for the Product Average Temp gg = BOL Position Number for the Product Preset Number hh = BOL Position Number for the Product Gravity/Density ii = BOL Position Number for the Product Pressure jj = BOL Position Number for the Product Alarm kk = BOL Position Number for the Compartment Number...
  • Page 131 Chapter 7 – Register Operations Mass Positions are not available via Modbus protocol R300iiill => 0?0300iiill… U300iiill… => 0?0300iiill Where: iii = BOL Literal Line Index (0-29) Note: For Modbus, the Modbus Custom Logic Index Register sets the iii index. Modbus: Read/Write Register=417, Len=1, 16-Bit Integer (iii) ll = BOL Line Number …...
  • Page 132: Transaction Archive Registers

    Chapter 7 – Register Operations 7.1.17 800 – T RANSACTION RCHIVE EGISTERS R005 => 0?0BBBBB Where: BBBBB = BOL Transaction Number of Current or Last Transaction completed. Modbus: Read Only Register=48, Len=1, 16-Bit Integer R800BBBBII => 0?0800BBBBII… (or) R800BBBBIIII => 0?0800BBBBIIII… Where: BBBB = BOL Transaction Number Note:...
  • Page 133 Chapter 7 – Register Operations Read/Write Register=7842, Len=25, Characters (bbbb) Read/Write Register=7867, Len=25, Characters (cccc) Read/Write Register=7892, Len=25, Characters (dddd) Read/Write Register=N/A, Len=25, Characters (eeee) if BOL Detail Line Index > 00, IIBBBBppptthhhccccccgggggggggnnnnnnnnnttttddddmmrrrrssssssttttuuuuuuvvvvvww wxxxxxxxxzzzzzzzzzaaaaabbbbbbccccccddddd (or) IIIIBBBBppptthhhccccccgggggggggnnnnnnnnnttttddddmmrrrrssssssttttuuuuuuvvvvvww wxxxxxxxxxzzzzzzzzzaaaaabbbbbbccccccdddddeeeeee II (or) IIII = BOL Detail Line Index BBBB = BOL Transaction Number ppp = Preset Number tt = Detail Type,...
  • Page 134: Special Purpose Registers

    Chapter 7 – Register Operations ddddd = Gravity or Density or Relative Density eeeeee = average pressure in hundredths Modbus: Read/Write Register=7810, Len=1, 16-Bit Integer (ppp) Read/Write Register=7811, Len=1, 16-Bit Integer (tt) Read/Write Register=7812, Len=6, Characters (cccccc) Read/Write Register=7818, Len=2, 32-Bit Integer (ggggggggg) Read/Write Register=7820, Len=2, 32-Bit Integer (nnnnnnnnn) Read/Write Register=7822, Len=1, 16-Bit Integer (ttttt) Read/Write Register=7823, Len=1, 16-Bit Integer (dddd)
  • Page 135: Fcm Poll Rate

    Chapter 7 – Register Operations DD = Day (01-32) HH = Hours (00-23) MM = Minutes (00-59) SS = Seconds (00-59) Note: Update will only occur if new time is different from current time by number of seconds specified by R014 (Min Time Change Secs).
  • Page 136: Ip Host

    Chapter 7 – Register Operations U073DDD.DDD.DDD.DDD => Where: DDD.DDD.DDD.DDD = IP Gateway Modbus: Read/Write Register=054, Len=2, 32-Bit Integer (4 8-bit numbers) 074 – IP H 7.2.9 R074 => 0?0074DDD.DDD.DDD.DDD U074DDD.DDD.DDD.DDD => Where: DDD.DDD.DDD.DDD = IP Host Modbus: Read/Write Register=056, Len=2, 32-Bit Integer (4 8-bit numbers) 7.2.10 076 –...
  • Page 137: Network Printer Number Of Copies

    Chapter 7 – Register Operations ‘1’ = 8 Data Bits P = Parity ‘0’ = None ‘1’ = Odd ‘2’ = Even T = Stop Bits ‘1’ = 1 Stop Bit ‘2’ = 2 Stop Bits A = Port Assignment ‘0’...
  • Page 138: Real-Time Preset Total Net Totalizers

    Chapter 7 – Register Operations Note: if the Use Hundredths W&M RCU parameter is enabled, the preset, meter and component gross quantity values will have an implied two decimal places. AAAAAAAAA… = Additive Total Gross Totalizers in Thousands, (16 additives, 9 digits per totalizer.) Modbus: Where: p = preset (0-11), m = meter (0-4), c = component (0-7), a=additive (0-15)
  • Page 139: Fcm Low Level Meter Status

    (no offset added) if FCM port number is 10, sttttt Where: sttttt = Temp in Hundreds from Toptech RTD Module, FCM II or I/O Board (no offset added) Note: All Temps in C or F depending on Register R100003 ("Temps in F").
  • Page 140: Discrete Parameter Security Settings

    Chapter 7 – Register Operations Modbus: Supported through Modbus Extended Services Registers. U133fffpppd => 0?0133fff Where: fff = FCM number (000-031). ppp = FCM port number (0-35) d = Set new state of digital port (‘0’ – Off, ‘1’ – On) Note: States commanded with R133 are OR’d with any other functionality already assigned to the port) 7.2.21 134 –...
  • Page 141: Access Parameter Security Settings

    Chapter 7 – Register Operations Not Supported U135rrrs => 0?0135rrr Where: rrr = generic register numbered function s = Set security level (0-9) this can be formatted with up to 8 leading zeroes. Communications Network Alarms Custom Logic Access ID Date Time Trace Alibi Labels...
  • Page 142: 140 -Current Latitude/Longitude Position Registers (Multiload Mobile Only)

    Chapter 7 – Register Operations 7.2.24 140 –C URRENT ATITUDE ONGITUDE POSITION EGISTERS ULTI OBILE R140 => 0?0140+lllllllll+ooooooooo Where: +lllllllll = Current Latitude Position. +ooooooooo = Current Longitude Position. Note: Latitude format (S 90 to N 90) is: if Latitude >= 0 then "N" else "S" integer_degrees = abs(Latitude) / 60000 float_minutes = (abs(Latitude) % 60000) / 1000 Note: Longitude format (180 E to 180 W) is:...
  • Page 143: External Preset Display Register

    Chapter 7 – Register Operations Where: ppp = The specified zero-based preset or load arm number (000-011). NNNNNNNNNN = 10 Character Preset Name CCC… = Component Product Index (500 register) for each component (8 component indices, 3 digits per index.) AAA…...
  • Page 144: Product Definition Registers

    Chapter 7 – Register Operations 7.2.29 500 - P RODUCT EFINITION EGISTERS R500iii => 0?0500iiiHCCCCCCLLLLLLLLLLLLLLLLLLLLLLLLLDDDDDDDDDDCCCPPPPP…AAAPPPPP… U500iiiHCCCCCCLLLLLLLLLLLLLLLLLLLLLLLLLDDDDDDDDDDCCCPPPPP…AAAPPPPP… => Where: iii = The specified zero based product index (000-099). Note: For Modbus, the Modbus Product Definition Index Register sets the iii index. Modbus: Read/Write Register=2200, Len=1, 16-Bit Integer (iii) H = Hazard Index (standalone use only).
  • Page 145: Modbus Device Database

    Chapter 7 – Register Operations (For example 0000000000000001 = Sample Batch Access is enabled) rrrr = Driver Authorized Product Index (0 means All products, anything else is the index into the list of the 100 product recipes) Modbus: Read/Write Register=2301, Len=2, 32-Bit Integer (cccccccc) Read/Write Register=2303, Len=1, 16-Bit Integer (pppp) Read/Write Register=2304, Len=1, 16-Bit Integer (mm) Read/Write Register=2305, Len=1, 16-Bit Integer (l)
  • Page 146: Configurable Language Prompts

    Chapter 7 – Register Operations nnnnnnnnnnnnnnn = Site Name (15 Characters Padded) +lllllllll = Site Latitude Position. +ooooooooo = Site Longitude Position. Note: An Update to index 0 will clear the entire list. Note: Latitude format (S 90 to N 90) is: if Latitude >= 0 then "N"...
  • Page 147: Bay Alarm Messages

    Chapter 7 – Register Operations 7.2.34 710 - B LARM ESSAGES R710iii => 0?0710iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrttttt U710iiilllllssssssssssssssssssssssssssssss => U710iiilllllsssssssssssssssssssssssssssssscccccppppprrrrr => U710iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrttttt => U710iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrtttttmmmmmmmmmnnnnn => Where: iii = Alarm Index with defaults as: struct alarm_def factory_bay_alarm[31] = {"*BAY FCM" , AUTO_CLEAR}, // 710000 {"*GROUND ", AUTO_CLEAR}, // 710001 {"*VRU ", AUTO_CLEAR}, // 710002...
  • Page 148 Chapter 7 – Register Operations enum AUTO_CLEAR = 0, DRIVER_CLEAR = 1, REMOTE_CLEAR = 2, PROGRAM_CLEAR = 3, WM_CLEAR = 4 }promoted_alarm_level; rrrrr = Reset Mode as: enum AUTH_TRANS = 0, CLEAR_PROMOTED = 1, TIME_2_MIN = 2, TIME_5_MIN = 3, TIME_15_MIN = 4, TIME_30_MIN = 5, TIME_60_MIN = 6,...
  • Page 149: Preset Alarm Messages

    Chapter 7 – Register Operations 7.2.35 711 - P RESET LARM ESSAGES R711iii => 0?0711iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrttttt U711iiilllllssssssssssssssssssssssssssssss => U711iiilllllsssssssssssssssssssssssssssssscccccppppprrrrr => U711iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrttttt => U711iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrtttttmmmmmmmmmnnnnn => Where: iii = Alarm Index with defaults as: struct alarm_def factory_preset_alarm[31] = {"*PRE FCM" , AUTO_CLEAR}, // 711000 {"*PRE PERM"...
  • Page 150 Chapter 7 – Register Operations enum AUTO_CLEAR = 0, DRIVER_CLEAR = 1, REMOTE_CLEAR = 2, PROGRAM_CLEAR = 3, WM_CLEAR = 4 }promoted_alarm_level; rrrrr = Reset Mode as: enum AUTH_TRANS = 0, CLEAR_PROMOTED = 1, TIME_2_MIN = 2, TIME_5_MIN = 3, TIME_15_MIN = 4, TIME_30_MIN = 5, TIME_60_MIN = 6,...
  • Page 151: Meter Alarm Messages

    Chapter 7 – Register Operations 7.2.36 712 - M ETER LARM ESSAGES R712iii => 0?0712iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrttttt U712iiilllllssssssssssssssssssssssssssssss => U712iiilllllsssssssssssssssssssssssssssssscccccppppprrrrr => U712iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrttttt => U712iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrtttttmmmmmmmmmnnnnn => Where: iii = Alarm Index with defaults as: struct alarm_def factory_meter_alarm[31] = {"*MTR FCM" , AUTO_CLEAR}, // 712000 {"*MTR PERM"...
  • Page 152 Chapter 7 – Register Operations Note: Up to 30 UTF-8 bytes to represent a max of 10 characters. ccccc = Promotion Count (00000=no promotion) ppppp = Promoted Alarm Level as: enum AUTO_CLEAR = 0, DRIVER_CLEAR = 1, REMOTE_CLEAR = 2, PROGRAM_CLEAR = 3, WM_CLEAR = 4 }promoted_alarm_level;...
  • Page 153: Component Alarm Messages

    Chapter 7 – Register Operations Read/Write Register=cannot be accessed, Len=1, 16-Bit Integer (ttttt) Read/Write Register=cannot be accessed, Len=1, 16-Bit Integer (mmmmmmmmm) Read/Write Register=cannot be accessed, Len=1, 16-Bit Integer (nnnnn) 7.2.37 713 - C OMPONENT LARM ESSAGES R713iii => 0?0713iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrttttt U713iiilllllssssssssssssssssssssssssssssss => U713iiilllllsssssssssssssssssssssssssssssscccccppppprrrrr =>...
  • Page 154 Chapter 7 – Register Operations Note: Up to 30 UTF-8 bytes to represent a max of 10 characters. ccccc = Promotion Count (00000=no promotion) ppppp = Promoted Alarm Level as: enum AUTO_CLEAR = 0, DRIVER_CLEAR = 1, REMOTE_CLEAR = 2, PROGRAM_CLEAR = 3, WM_CLEAR = 4 }promoted_alarm_level;...
  • Page 155: Additive Alarm Messages

    Chapter 7 – Register Operations Read/Write Register=cannot be accessed, Len=1, 16-Bit Integer (ttttt) Read/Write Register=cannot be accessed, Len=1, 16-Bit Integer (mmmmmmmmm) Read/Write Register=cannot be accessed, Len=1, 16-Bit Integer (nnnnn) 7.2.38 714 - A DDITIVE LARM ESSAGES R714iii => 0?0710iiilllllsssssssssssssssssssssssssssssscccccppppprrrrrttttt U714iiilllllssssssssssssssssssssssssssssss => U714iiilllllsssssssssssssssssssssssssssssscccccppppprrrrr =>...
  • Page 156 Chapter 7 – Register Operations ssssssssssssssssssssssssssssss = Alarm Message (prefix with an *) Note: Up to 30 UTF-8 bytes to represent a max of 10 characters. ccccc = Promotion Count (00000=no promotion) ppppp = Promoted Alarm Level as: enum AUTO_CLEAR = 0, DRIVER_CLEAR = 1, REMOTE_CLEAR = 2, PROGRAM_CLEAR = 3,...
  • Page 157: Sampleralarm Messages

    Chapter 7 – Register Operations Read/Write Register=2598, Len=1, 16-Bit Integer (ppppp) Read/Write Register=2599, Len=1, 16-Bit Integer (rrrrr) Read/Write Register=cannot be accessed, Len=1, 16-Bit Integer (ttttt) Read/Write Register=cannot be accessed, Len=1, 16-Bit Integer (mmmmmmmmm) Read/Write Register=cannot be accessed, Len=1, 16-Bit Integer (nnnnn) 7.2.39 716 - S AMPLER LARM...
  • Page 158: Tankalarm Messages

    Chapter 7 – Register Operations enum AUTH_TRANS = 0, CLEAR_PROMOTED = 1, TIME_2_MIN = 2, TIME_5_MIN = 3, TIME_15_MIN = 4, TIME_30_MIN = 5, TIME_60_MIN = 6, TIME_3_HOURS = 7, TIME_6_HOURS = 8, TIME_12_HOURS = 9, TIME_24_HOURS = 10, }alarm_count_reset_mode; ttttt = Alarm_to_host as enum REMOTE = 0,...
  • Page 159 Chapter 7 – Register Operations {"*LLEVEL", AUTO_CLEAR}, // 715003 {"*LLLEVEL", AUTO_CLEAR}, // 715004 {"*TK VALVE", AUTO_CLEAR}, // 715005 Note: For Modbus, not available. lll = Alarm Level as: enum AUTO_CLEAR = 0, DRIVER_CLEAR = 1, REMOTE_CLEAR = 2, PROGRAM_CLEAR = 3, WM_CLEAR = 4 }alarm_level;...
  • Page 160: Read Event Log Message Queue

    Chapter 7 – Register Operations REMOTE = 0, LOCAL =1, }alarm_to_host_mode_type Note: only permissive names can be changed, iii=1. Mmmmmmmmm = Fcm Output Address Nnnnn = Batch Alarm Mask for Alibilog Enum{ DISABLED = 0, ENABLED = 1 } Modbus: Not available.
  • Page 161: Current Driver Card Number

    Chapter 7 – Register Operations yymmdd = Year, Month, and Day of log message hhmmss = Hour, Minute, and Second of log message …. = Text of log message (max length 80 characters) Modbus: Supported through Modbus Extended Services Registers 7.2.44 950 - C URRENT RIVER...
  • Page 162: Current Driver Card Data

    Chapter 7 – Register Operations ‘D’ = Enter ‘E’ = CLR Modbus: Read Only Register=2850, Len=1, Character (c) 7.2.48 962 - C URRENT RIVER R962 => 0?0962sss… Where: sss… = Driver card data string. For HID 26-bit Prox Cards, 0=yy=0000000=xxxxxxxx=01 – Card number that was read from the card. Where: yy is the facility number (00-99) xxxxxxxx is the card number (00000000-00065535).
  • Page 163: Bitmap Graphic Cache

    Chapter 7 – Register Operations 7.2.49 998 – B ITMAP RAPHIC ACHE R998aaaaaaaa => 0?0998aaaaaaaad… Where: aaaaaaaa = 8 character hexadecimal cache offset start value. Cache size = 16MB, Cache offset values = 0x00000000 - 0x00ffffff Two pixels per cache byte. Note: Graphics Cache is in volatile memory.
  • Page 164: Chapter 8 Communication Trace Example

    Chapter 8 – Communication Trace Example CHAPTER 8 OMMUNICATION RACE XAMPLE The following is an example of a typical communication session with MultiLoad starting with host system startup, driver card in, transaction authorization, batch authorization, end of batch processing, and host system shutdown.
  • Page 165: Update Preset Definitions

    Chapter 8 – Communication Trace Example Sent:(U5000270000900Red Dye REDDYE 02710000000000000000000000000000000000000000000000000000000000000260000000000000000000000 00000000000000000000000) Received: (000) Sent:(U5000280000500Winter Additive WINADD 02810000000000000000000000000000000000000000000000000000000000000270000000000000000000000 00000000000000000000000) Received: (000) Modbus: For each recipe: Fn=0x06, Write Recipe Index to Register 2200 Fn=0x16, Write Recipe Data to Registers 2201 … 2267 (both writes can be done at the same time with one Fn=0x16 command) 8.1.3 PDATE...
  • Page 166: Transaction Authorization

    Chapter 8 – Communication Trace Example Sent:(FPOWERUP) Received:(000) logmsg_queued bit is set Modbus: Fn=0x06, Write 0 to Register 7012 Sent:(R910) Received: (00091000010515153200REGAINED COMMUNICATION WITH HOST.) host_up bit is clear Modbus: Fn=0x03, Read Registers 2600 ... 2685 Sent:(FHOSTUP) Received: (000) Modbus: Fn=0x06, Write 0 to Register 7013 RANSACTION UTHORIZATION...
  • Page 167: Authorize A Transaction On Multiload

    Chapter 8 – Communication Trace Example ...(some time later)... Sent:(Q) Received: (041CA18) Modbus: Fn=0x03, Read Register 7002 -> (0xC61A) ...(some time later)... Fn=0x03, Read Register 7002 -> (0xCA1A) Get driver input and terminating key Sent:(R960) Received: (0419601111) Sent:(R961) Received: (041961D) Modbus: Fn=0x03, Read Registers 2850 ...
  • Page 168: Batch Authorization

    Chapter 8 – Communication Trace Example 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000) Sent:(R112001) Received: (0001120010000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000) Sent:(R112002) Received: (0001120020000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000) Sent:(R112003) Received: (0001120030000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000) Sent:(R112004) Received: (0001120040000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0000) Modbus: Fn=0x03, Read Registers 3000 … 3006 (Preset Gross Totalizers) Fn=0x03, Read Registers 3144 …...
  • Page 169 Chapter 8 – Communication Trace Example Sent:(Q) Received: (0a1C61A) ...(some time later)... Sent:(Q) Received: (0a1CA1A) Modbus: Fn=0x03, Read Register 7002 -> (0xC61A) ...(some time later)... Fn=0x03, Read Register 7002 -> (0xCA1A) Get driver input and terminating key Sent:(R960) Received: (0a19601 ) Sent:(R961) Received: (0a1961D) Modbus: Fn=0x03, Read Registers 2850 ...
  • Page 170: Monitor Load During Delivery

    Chapter 8 – Communication Trace Example Status no longer request for remote authorization Sent:(Q) Received: (0T1CA3A) Modbus: Fn=0x03, Read Register 7000 -> T 8.3.2 ONITOR URING ELIVERY Sent:(MRS000) Received: (0T1RS0000001001F0000000001000000000015+0022400113000000015+00224000000000+0000000000000 0+00000000000000+00000000000000+00000000000000+00000000000000+00000000000000+000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000) Sent:(MRS001) Received: (0T1RS001000000070000000000000000000000+0000000000000000000+00000000000000+0000000000000 0+00000000000000+00000000000000+00000000000000+00000000000000+00000000000000+000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000) Sent:(MRS002) Received: (0T1RS002000000070000000000000000000000+0000000000000000000+00000000000000+0000000000000 0+00000000000000+00000000000000+00000000000000+00000000000000+00000000000000+000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...
  • Page 171: End Of Transaction Processing

    Chapter 8 – Communication Trace Example Fn=0x03, Read Registers 4084 … 4091 (Preset Net Volumes) Etc… Send end batch command to allow MultiLoad to clear batch totals. Sent:(MEB000) Received: (0T1) Modbus: Fn=0x06, Write Register 7069 When preset state returns to PRESET_IDLE, prompting for next batch can begin again. ND OF RANSACTION ROCESSING...
  • Page 172: Chapter 9 Data Communication Notes And Recommendations

    DROPPED OMMUNICATIONS Toptech Systems has specialized hardware that will support multi-dropping of devices on a single RS-232 communication line. This is accomplished by tri-stating or disconnecting the transmitter of a device when it is not transmitting on the communications line. This is similar to the RS-485 multi-dropping method. Due to the tri-stating of the transmitters, the transmit circuit is 'floating' when no device is transmitting.
  • Page 173: Optical Isolation

    AC circuits be protected with optical isolation devices. The RS-232 to RS-485 converters that Toptech supplies provide this isolation. We also provide an RS-232 optical isolation device for RS-232 lines. Similar devices are available from Black Box Corporation and Burr-Brown. One isolation device must be installed on each data communications line.
  • Page 174: Chapter 10 Parameter Access Security

    Chapter 9 – Data Communication Notes and Recommendations CHAPTER 10 ARAMETER CCESS ECURITY This topic provides introduction and communication methods for utilizing Multiloads parameter security feature. 10.1 U NDERSTANDING NEW USER AND ECURITY EATURES The discussion below describes new features of Multiload. It may be beneficial to have an active MultiLoad of version x.31.22 or later available.
  • Page 175 Chapter 9 – Data Communication Notes and Recommendations Comm, Network, Alarms, Custom Logic, Access ID’s, Date & Time, Trace, Alibi Labels, Hazard Labels, Prompts, BOL, SD Card, Host, Factory Defaults. Access Security levels Much like that of a user having an assigned security level with a potential rights limitation on what parameters they can change, there are other sources outside of a user that has ability to modify parameters.

Table of Contents

Save PDF