background image

 

 

Deep Sea Electronics Plc 

 
 
 

GenComm Communications Protocol for use with 550,555, 

5210 and 5220 controllers. 

 

 
 
 

Author - A.D.Manton 

 
 

Author of GenComm V1.29 - G.Middleton 

 
 
 
 

深圳市威华特科技有限公司

                  

www.wellfut.com     0755-27153030       13537855559                                    

                                            

 
 
 
 
 
 
 
 
 
 

 

Summary of Contents for 5220

Page 1: ...Sea Electronics Plc GenComm Communications Protocol for use with 550 555 5210 and 5220 controllers Author A D Manton Author of GenComm V1 29 G Middleton 深圳市威华特科技有限公司 www wellfut com 0755 27153030 13537855559 ...

Page 2: ...55xGenComm1_29 www wellfut com 0755 27153030 0755 27732300 2 This page is intentionally blank ...

Page 3: ...es 11 Sentinel values for instrumentation 12 Function 16 Write Multiple Registers 13 Query message 13 Normal response message 13 Exception response message 13 EXCEPTION RESPONSES 14 Exception response message 14 Extended exception codes 15 LANGUAGE CODES 18 Language codes 18 MODBUS REGISTERS DEFINED 22 Index of Register Pages 23 GENCOMM PAGE 0 COMMUNICATIONS STATUS INFORMATION 24 Registers 24 Pass...

Page 4: ...ENTATION 41 Registers 41 GENCOMM PAGE 8 ALARM CONDITIONS 42 Registers 42 Alarm condition codes 44 Interrogating the alarm status 45 EXAMPLE Calculating alarm string addresses 45 EXAMPLE Displaying alarm strings 46 GENCOMM PAGE 11 DIAGNOSTIC GENERAL 47 Registers 47 55x control module buttons 47 GENCOMM PAGE 12 DIAGNOSTIC DIGITAL INPUTS 48 Registers 48 Digital input codes 48 EXAMPLE Testing digital ...

Page 5: ...COMM PAGE 20 VARIOUS STRINGS 54 Registers 54 GENCOMM PAGE 24 IDENTITY STRINGS 55 Registers 55 GENCOMM PAGE 26 STATE MACHINE NAME STRINGS 56 Registers 56 GENCOMM PAGE 28 STATE MACHINE STATE STRINGS 57 Registers 57 GENCOMM PAGES 32 TO 95 ALARM STRINGS 58 Registers 58 ...

Page 6: ... Indicates a procedure or practice which could result in injury to personnel or loss of life if not followed correctly DEEP SEA ELECTRONICS PLC own the copyright to this manual which cannot be copied reproduced or disclosed to a third party without prior written permission Deep Sea Electronics plc reserve the right to change the GenComm standard at any time and without notice S C A D A Supervisory...

Page 7: ... used to provide this isolation between the 55x and 52xx range of control modules and the Personal Computer connected to the module Using the P810 interface has another advantage in that the operating range of the communication link is increased to over 100m Maximum RS232 cable length is 15m RS232 description Defined officially as the interface between data terminal equipment and data communicatio...

Page 8: ...xx series modules Communication protocol description Once all the pieces of equipment are connected together RS232 RS485 or other they must both speak in the same electronic language to enable each piece of equipment to understand each other These languages are called protocols A simple protocol is ASCII American Standard Code for Information Interchange which is simply the transmission of data as...

Page 9: ...g on a single line It must not be ignored as this may lead to the concatenation of words 15 In this standard the term ASCII character refers to an 8 bit character following the sub set of Unicode from 0 to 255 it does not refer to any other published standard of character representation to avoid the ambiguities in such standards 16 This document describes GenComm version 1 xx future upgrades of th...

Page 10: ...at is defined in this standard as contain some unimplemented bits must return a normal response the unimplemented bits will contain the unimplemented value from the table below A request for a register that is defined in this standard as unimplemented will return the unimplemented value from the table below A request for a register that is defined as reserved in this standard will return extended ...

Page 11: ...ndicate it is not valid 2 bit named digital input output code 3 Unimplemented input output 4 bit alarm condition codes 0xF Unimplemented alarm 4 bit LED colour code 0xF Unimplemented LED 16 bit unsigned any scale 0xFFFF The largest number 16 bit signed any scale 0x7FFF The largest positive number 32 bit unsigned any scale 0xFFFFFFFF The largest number 32 bit signed any scale 0x7FFFFFFF The largest...

Page 12: ... range 0xFFFC Transducer fault 0xFFFB Bad data 0xFFFA High digital input 0xFFF9 Low digital input 0xFFF8 Reserved 16 bit signed any scale 0x7FFF Unimplemented 0x7FFE Over measurable range 0x7FFD Under measurable range 0x7FFC Transducer fault 0x7FFB Bad data 0x7FFA High digital input 0x7FF9 Low digital input 0x7FF8 Reserved 32 bit unsigned any scale 0xFFFFFFFF Unimplemented 0xFFFFFFFE Over measurab...

Page 13: ...assword or a string must be performed by a single message not by multiple ones This avoids the possibility of a value being partly current and partly old data Query message Byte Field name Notes 0 Slave address 1 Function code 16 2 First register address high byte 16 bit register address 3 First register address low byte 4 Number of registers to write high byte 16 bit number of registers must be i...

Page 14: ...ddress of the register that caused the exception or to 0 if inappropriate This allows precise identification of the cause when reading or writing multiple registers 5 The extended exception code and address must both be read by a single message reading them individually would meaningless as they would each refer to different messages 6 Extended exception codes 1 255 can be generated by any slave d...

Page 15: ... be returned as both functions 3 and 16 must be implemented 2 3 Register not defined The register specified is not defined in this standard and is not recognised as a manufacturer specific register no actions were taken 2 4 Register not implemented The register specified is defined in this standard but not implemented on this slave device no actions were taken This will never be returned by functi...

Page 16: ...s for example a start attempt when a shutdown alarm is present 1 9 Insufficient privilege An operation was attempted without sufficient privilege such as writing when the read only password has been entered 6 10 Slave device too busy The slave device was too busy to perform the operation try it again later if it is still required Note that it may not be possible to read the extended exception code...

Page 17: ...eturned by a hub only The specified satellite state is Error 259 32767 Reserved Reserved for future use in this standard 1 2 32767 65535 Manufacturer specific error An error occurred in a manufacturer specific operation either using register pages 128 255 or functions other than 3 and 16 The meaning of these exception codes is manufacturer specific any software not knowing the meaning for a partic...

Page 18: ...ommercial political reasons may demand Language codes Primary language Sub language Primary language code Sub language code Language code Neutral Neutral 0x00 0x00 0x0000 Arabic Saudi Arabia 0x01 0x01 0x0401 Iraq 0x02 0x0801 Egypt 0x03 0x0C01 Libya 0x04 0x1001 Algeria 0x05 0x1401 Morocco 0x06 0x1801 Tunisia 0x07 0x1C01 Oman 0x08 0x2001 Yemen 0x09 0x2401 Syria 0x0A 0x2801 Jordan 0x0B 0x2C01 Lebanon...

Page 19: ...Costa Rica 0x05 0x140A Panama 0x06 0x180A Dominican Republic 0x07 0x1C0A Venezuela 0x08 0x200A Colombia 0x09 0x240A Peru 0x0A 0x280A Argentina 0x0B 0x2C0A Ecuador 0x0C 0x300A Chile 0x0D 0x340A Uruguay 0x0E 0x380A Paraguay 0x0F 0x3C0A Bolivia 0x10 0x400A El Salvador 0x11 0x440A Honduras 0x12 0x480A Nicaragua 0x13 0x4C0A Puerto Rico 0x14 0x500A Finnish Standard 0x0B 0x01 0x040B French Standard 0x0C ...

Page 20: ...tandard 0x1D 0x01 0x041D Finland 0x02 0x081D Thai Standard 0x1E 0x01 0x041E Turkish Standard 0x1F 0x01 0x041F Urdu Standard 0x20 0x01 0x0420 Indonesian Standard 0x21 0x01 0x0421 Ukrainian Standard 0x22 0x01 0x0422 Byelorusian Standard 0x23 0x01 0x0423 Slovenian Standard 0x24 0x01 0x0424 Estonian Standard 0x25 0x01 0x0425 Latvian Standard 0x26 0x01 0x0426 Lithuanian Standard 0x27 0x01 0x0427 Classi...

Page 21: ...439 Maltese Standard 0x3A 0x01 0x043A Sami Lapland Standard 0x3B 0x01 0x043B Scots Gaelic Standard 0x3C 0x01 0x043C Reserved 0x3D 0x043D Malay Standard 0x3E 0x01 0x043E Brunei Darussalam 0x02 0x083E Reserved 0x3F 0x043F Reserved 0x40 0x0440 Swahili Standard 0x41 0x01 0x0441 Reserved 0x42 0x1FF Custom languages 0x200 0x3FF 0x0200 0x03FF Custom language English for pumps 0x20 0x00 0x0200 ...

Page 22: ...d in this document in order to avoid confusion 2 A letter S in the bits sign column indicates a signed value using two s compliment arithmetic all others are unsigned Any master software MUST implement the signed unsigned status of a register 3 A double number in the bits sign column indicates a bit within a register of a specific size e g 16 16 is the most significant bit and 1 16 is the least si...

Page 23: ...ccumulated Instrumentation Read write 8 Alarm conditions Read only 9 10 Reserved 11 Diagnostic general Read only 12 Diagnostic digital inputs Read only 13 Diagnostic digital outputs Read only and read write 14 Diagnostic LEDs Read only and read write 15 Diagnostic Reserved 16 Control registers Read only and write only 17 19 Reserved 20 Various strings Read only 24 Identity strings Read only 26 Sta...

Page 24: ...lemetry alarm flag before the connection is broken or the dial out will be repeated 6 The meaning of the password status is shown in the table below 7 If the password status is 0 no valid password then it is not possible to read the extended exception information 8 If the number of satellite sockets is 1 32 the unit is a hub otherwise it is not A hub with 8 sockets for example returns a value of 8...

Page 25: ...Page0 6 3 printf Control Module open Full Access else HandleExceptionResponse NOTE In the example above If Read Page0 SUCCESS reads the data from GenComm Page0 and tests the response packet to make sure the data received is valid ie not an exception response The function HandleExceptionResponse would normally be written to ignore errors for a short period of time to allow for possible poor data tr...

Page 26: ...ed and easier to enter via a limited user interface than alphanumeric strings 3 The password is written into register 32 and its ones compliment written into register 33 with a single function 16 write multiple registers to set the current password status 4 The password status in the communications status information page indicates which level of access has been granted when the password times out...

Page 27: ... first This is necessary to simplify the message filtering mechanism needed in the hub but is not a problem if the hub is used to provide security to the satellites as intended Registers These are a mixture of read write R W and write only W registers Register offset Name Min value Max value Scale factor Units Bits sign R W 0 Current slave ID 1 247 16 R W 1 Site identity code 0 65534 16 R W 2 Devi...

Page 28: ...55xGenComm1_29 28 Baud rate Code Rate Code Rate 0 110 7 9600 1 150 8 14400 2 300 9 19200 3 600 10 28800 4 1200 11 38400 5 2400 12 57600 6 4800 13 99 Reserved ...

Page 29: ...te to RS485 communications you must ensure Link500Plus is correctly configured to allow you to adjust them Load the Comms Config from the module This item can be found on the Setup Module Comms Config Basic Comms page within Link500Plus Ensure RS485 enabled is selected This can be found on the Setup Setup this software page within Link500Plus Ensure the modem mode is set to No modem This item can ...

Page 30: ...es match is the password acted on If the password correctly matches the Write password stored within the module then the Password status register will indicate this An example of how to test the Password Status register is given in the section headed GenComm Page 0 NOTE Register 33 must be the ones complement often called bitwise inversion of Register 32 to correctly log on to the Control Module I...

Page 31: ...ger a transmission and contents of the messages are not defined in this standard 8 The SMS message centre number and recipient number are in the same format as the other modem control strings and are only used when the SMS system is activated by the SMS enable flag their use is not defined in this standard Registers These are all read write registers Register offset Name Min value Max value Scale ...

Page 32: ...ce for the specified number of retries If connection has not been established wait for the delay between repeat cycles and then repeat the cycle If connection is made and broken without clearing the telemetry alarm flag then repeat the previous sequence 3 As mode 2 but the first dialling string will be used for the specified number of retries then the second string will be used etc 4 As mode 2 but...

Page 33: ... that a dial out is required the logic behind this is product specific It can only be cleared by a system control function 9 The telemetry alarm flag on a hub is only set if the hub itself has a problem and can only be cleared by a system control function It is edge triggered i e once it is cleared it will not be set unless the internal error is cleared and then happens again An example of a situa...

Page 34: ...ive No Yes 13 16 Electrical trip alarm active No Yes 12 16 Warning alarm active No Yes 11 16 Telemetry alarm flag Not active Active 10 16 Satellite telemetry alarm flag Not active Active 9 16 No font file No Yes 8 16 Unimplemented 0 0 1 16 7 16 7 S M 1 status 0 3 16 16 15 16 S M 2 status 0 3 14 16 13 16 S M 3 status 0 3 12 16 11 16 S M 4 status 0 3 12 16 11 16 Reserved Reserved Reserved Reserved 8...

Page 35: ...erator unless the mains fails 3 Test on load mode Test on load mode means start the engine generator With some control units it will also be necessary to press the start button before such a manual start is initiated Transfer the load to the generator when it is available regardless of the mains condition This mode is only provided on automatic mains failure units 4 Auto with manual restore mode A...

Page 36: ...hen the state machine changes state and this is indicated by the status changing from 0 to 1 when the state string is read the status will change back from 1 to 0 Polling the State Machine status register on a regular basis enables you to see when the module changes state If the response from the state machine you interrogate indicates that the state of the module has changed you must then read th...

Page 37: ...onal status of the control system For instance checking that no alarms are present and that the controller is in the AUTO mode see example above can be used to inform the monitoring system that the controller is ready should it be required to start the set upon a mains failure For details of how to use this information to detail the exact alarms that are active on the system see the example follow...

Page 38: ...il pressure 0 10000 1 KPa 16 1 Coolant temperature 50 150 1 DegC 16 S 2 Reserved 3 Fuel level 0 130 1 16 4 Charge alternator voltage 0 40 0 1 V 16 5 Battery voltage 0 40 0 1 V 16 6 Engine speed 0 6000 1 RPM 16 7 Generator frequency 0 70 0 1 Hz 16 8 9 Generator L1 N voltage 0 18 000 0 1 V 32 10 11 Generator L2 N voltage 0 18 000 0 1 V 32 12 13 Generator L3 N voltage 0 18 000 0 1 V 32 14 15 Generato...

Page 39: ... values from a basic instrumentation module will return an unimplemented response Phase rotation codes Code Meaning 0 Indeterminate the voltage on one or more phase is insufficient to measure the rotation 1 L1 leads L2 which leads L3 2 L3 leads L2 which leads L1 3 Phase error two or more phase inputs are in phase 4 65534 Reserved 65535 Unimplemented EXAMPLE Displaying engine coolant temperature Th...

Page 40: ... watts 99 999 999 99 999 999 1 W 32S 2 3 Generator L1 VA 0 99 999 999 1 VA 32 4 5 Generator L2 VA 0 99 999 999 1 VA 32 6 7 Generator L2 VA 0 99 999 999 1 VA 32 8 9 Generator total VA 0 99 999 999 1 VA 32 10 11 Generator L1 VAr 0 99 999 999 1 VAr 32 12 13 Generator L2 VAr 0 99 999 999 1 VAr 32 14 15 Generator L2 VAr 0 99 999 999 1 VAr 32 16 17 Generator total VAr 0 99 999 999 1 VA 32 18 Generator p...

Page 41: ...9 x109 0 1 KVAr hour 32 16 17 Number of starts 0 99999 32 18 255 Reserved NOTE Positive KW hours negative KW hours KVA hours and KVAr hours values can only be read from a 550 or 555 module fitted with the Power measurement option This is also sometimes referred to as Enhanced instrumentation Attempting to read these values from a basic instrumentation module will return an unimplemented response N...

Page 42: ...tor low voltage 0 15 9 16 12 16 Generator high voltage 0 15 5 16 8 16 Generator low frequency 0 15 1 16 4 16 4 Generator high frequency 0 15 13 16 16 16 Generator high current 0 15 9 16 12 16 Generator earth fault 0 15 5 16 8 16 Generator reverse power 0 15 1 16 4 16 5 Air flap 0 15 13 16 16 16 Oil pressure sender fault 0 15 9 16 12 16 Coolant temperature sender fault 0 15 5 16 8 16 Reserved 0 15 ...

Page 43: ...16 16 16 Multiset communications MSC data error 0 15 9 16 12 16 Multiset communications MSC ID error 0 15 5 16 8 16 Multiset communications MSC failure 0 15 1 16 4 16 15 Engine management bus error 0 15 13 16 16 16 Unimplemented 15 15 9 16 12 16 Unimplemented 15 15 5 16 8 16 Unimplemented 15 15 1 16 4 16 16 32 Unimplemented 15 15 33 127 Reserved 128 Number of Digital inputs 0 128 16 129 Digital in...

Page 44: ...larm Active string 4 Electrical trip alarm Active string 5 7 Reserved 8 Inactive indication no string None An indication that does not require a message to be displayed when inactive 9 Inactive indication displayed string Inactive string An indication that requires a message to be displayed when inactive dual indication input type 10 Active indication Active string 11 14 Reserved 15 Unimplemented ...

Page 45: ...kNumber InActiveStringAddress AlarmGenCommPage 256 AlarmRegisterOffset ActiveStringAddress InActiveStringAddress 32 This may seem very complicated for what appears to be a simple operation monitoring alarm conditions but means you only read the large block of data containing alarm block status and alarm text strings when it is required to do so EXAMPLE Calculating alarm string addresses Register O...

Page 46: ...ing true if shutdown warning electrip readpage8 for x 0 x 131 x alarm1 page8 x 15 if alarm1 2 alarm1 3 alarm1 4 showstring page 31 x 256 register 224 alarm2 page8 x 4 15 if alarm2 2 alarm2 3 alarm2 4 showstring page 31 x 256 register 160 alarm3 page8 x 8 15 if alarm3 2 alarm3 3 alarm3 4 showstring page 31 x 256 register 96 alarm4 page8 x 12 15 if alarm4 2 alarm4 3 alarm4 4 showstring page 31 x 256...

Page 47: ...the last control module button that was pressed Ie returned value of 416 indicates that the last button pressed was the Start button This does not necessarily mean that the button is being pressed now To read what mode the module is currently in read the value of Control Mode from GenComm page3 Module control buttons Button Description Button Number Stop Reset 420 Start when in Man Test mode 416 M...

Page 48: ...lemented 0 3 13 16 14 16 Unimplemented 0 3 11 16 12 16 Unimplemented 0 3 9 16 10 16 Unimplemented 3 3 7 16 8 16 Unimplemented 3 3 5 16 6 16 Unimplemented 3 3 3 16 4 16 Unimplemented 3 3 1 16 2 16 2 15 Reserved 16 16 Number of auxiliary digital inputs 0 128 16 17 Auxiliary inputs 1 16 Open Closed 16 NOTE Currently only Auxiliary digital inputs 1 to 9 are supported These correspond directly to the d...

Page 49: ... 6 16 Reserved 3 16 4 16 Reserved 1 16 2 16 1 15 Reserved 3 3 16 16 Number of digital outputs 0 128 16 17 Digital output 1 16 De energised Energised 16 18 Digital output 17 32 De energised Energised 16 NOTE Digital outputs 1 4 correspond directly to 550 555 module relay outputs 1 to 4 on terminal numbers 6 7 18 19 or 52xx relay outputs 1 to 3 on terminals 6 7 8 Digital outputs 5 6 correspond to 55...

Page 50: ...or Generator available These states cannot be directly read via GenComm To achieve this it is possible to configure a module relay LED or expansion output with the required control source then poll this output to see if it becomes active NOTE You can configure an expansion output to perform a certain task even if you do not connect an expansion 157 relay expansion or 548 LED expansion to the modul...

Page 51: ...t register 4 from a 550 555 module will return 15 unimplemented Registers These are all read only registers Register offset Name Min value Max value Bits Sign 0 Number of LEDs 0 128 16 1 LED 1 0 15 13 16 16 16 LED 2 0 15 9 16 12 16 LED 3 0 15 5 16 8 16 LED 4 0 15 1 16 4 16 2 LEDs 5 8 0 15 16 3 LEDs 9 12 0 15 16 4 LEDs 13 16 0 15 16 5 LEDs 17 20 0 15 16 6 LEDs 21 24 0 15 16 7 LEDs 25 28 0 15 16 8 L...

Page 52: ... Illegal value written to register and have no affect 4 Function 34 reset alarms is not the same as function 7 The former resets any alarm condition codes that can be reset The latter simulates a button which may or may not exist on the control unit if it does not exist it will have no affect If all alarm condition codes are able to be reset the shutdown electrical trip and warning alarm active fl...

Page 53: ...tore mode 35704 5 Start engine if in manual or test modes 35705 6 Mute alarm 35706 7 Reset alarms 35707 8 Transfer to generator 35708 9 Transfer to mains 35709 10 31 Reserved 35710 35731 32 Telemetry start if in auto mode 35732 33 Cancel telemetry start in auto mode 35733 34 Reset alarms 35734 35 Clear telemetry alarm flag 35735 36 Lock the user controls 35736 Does not lock mute lamp test or the i...

Page 54: ...The manufacturer string and model string must not be used to identify a particular product as they may change from one unit to the next e g a manufacturer may change its name in some way 3 The remaining strings can be used in a status display 4 The contents of these strings will never change while the slave device is operating so a copy can be held by the master to minimise traffic Registers These...

Page 55: ... the site and unit to be identified 3 The contents of these strings will never change while the slave device is operating so a copy can be held by the master to minimise traffic Registers These are read only registers Register offset Name Bits 0 Identity string 1 512 32 Identity string 2 512 64 Identity string 3 512 96 Identity string 4 512 128 Identity string 5 512 160 Identity string 6 512 192 I...

Page 56: ...chines that are implemented in a particular slave device 3 The contents of these strings will never change while the slave device is operating so a copy can be held by the master to minimise traffic 4 Reading the string for a unimplemented state machine will return 32 spaces Unicode 0x0020 Registers These are read only registers Register offset Name Bits 0 S M 1 name string 512 32 S M 2 name strin...

Page 57: ...y attempt to read part of a string will return extended exception 13 Block violation 4 Up to 3 complete consecutive strings can be read with a single query limited only by the packet size limitations of Modbus 5 Reading a string causes the corresponding state machine status code in the generating set status information page to change to 0 6 A string can be read regardless of the state machine stat...

Page 58: ...Page Register offset Name Bits 32 0 Emergency stop inactive string 512 32 Emergency stop active string 512 64 Low oil pressure inactive string 512 96 Low oil pressure active string 512 128 High coolant temperature inactive string 512 160 High coolant temperature active string 512 192 Reserved 512 224 Reserved 512 33 0 Under speed inactive string 512 32 Under speed active string 512 64 Over speed i...

Page 59: ...2 128 Low fuel level inactive string 512 160 Low fuel level active string 512 192 High fuel level inactive string 512 224 High fuel level active string 512 39 0 Generator failed to close inactive string 512 32 Generator failed to close active string 512 64 Mains failed to close inactive string 512 96 Mains failed to close active string 512 128 Generator failed to open inactive string 512 160 Gener...

Page 60: ... Bus live active string 512 128 Scheduled run inactive string 512 160 Scheduled run active string 512 192 Bus phase rotation wrong inactive string 512 224 Bus phase rotation wrong active string 512 45 0 Priority selection error inactive string 512 32 Priority selection error active string 512 64 MSC data error inactive string 512 96 MSC data error active string 512 128 MSC ID error inactive string...

Page 61: ...Only Digital inputs 1 6 are present on the 5210 5220 modules NOTE Fuel level is not available on models 550 555 NOTE Some strings may not be present in the module type you are currently connected to For instance strings relating to mains monitoring are only present on the 555 module ...

Reviews: