Honeywell CM4 Operating Instructions Manual

Honeywell CM4 Operating Instructions Manual

Serial communication protocol
Hide thumbs Also See for CM4:

Advertisement

Quick Links

Operating Instructions
CM4 Serial Communication Protocol

Advertisement

Table of Contents
loading

Summary of Contents for Honeywell CM4

  • Page 1 Operating Instructions CM4 Serial Communication Protocol...
  • Page 2 Honeywell Analytics grants to the user, in exchange and in consideration for applicable fees, a license for the use of the CM4 protocol, the right to use and the CM4 protocol definition of which is supplied to you in a separate document.
  • Page 3: Table Of Contents

    Honeywell Analytics CM4 Protocol Manual Contents Introduction Overview Glossary Communication Port Set up Procedure Protocol Specifics Data and Packets Checksum (Check Character) ACK/NAK Handshake Protocol Packet Definition Packet Format Start Code Receiver Address Transmitter Address Length Command Data Checksum Date Format...
  • Page 4 Honeywell Analytics CM4 Protocol Manual Get K-Factor - 0x3E Get Pyrolyzer Temperatures - 0x42 Get Pump Limits - 0x43 Get Filter Life - 0x44 Get Floating Status - 0x45 Get One Alarm - 0x47 Configuration Set K-Factor - 0x50 30...
  • Page 5 Honeywell Analytics CM4 Protocol Manual v ii Rev. 2.4 (3/05)
  • Page 6: Introduction

    1200, 2400, 4800, 9600, and 19,200. Additional port settings are 8-bit, 1 stop bit, and no parity. The slave is identified by an address programmed into the CM4 monitor (selectable 1-255). If more than one CM4 monitor is used, each must have a unique address.
  • Page 7: Glossary

    A packet is made from many bytes of information. Protocol: The manner in which data is transferred and the format used for the transfer. CM4 protocol refers to the packets of transferred data the CM4 instrument recognizes. Slave: The MDA Scientific CM4 gas monitor. A network may have several slaves.
  • Page 8: Communication Port

    CM4 Protocol Manual Communication Port Access to the CM4 protocol is through the COM port. This port is a DB-9 female connector. This port is designed for bidirectional communications between the CM4 instrument and your equipment. Signals present at the port conform to RS-232, RS-422, or RS-485 specifications.
  • Page 9: Set Up Procedure

    Honeywell Analytics CM4 Protocol Manual Set up Procedure After the networking cabling has been connected to the slave, the slave must be configured to communicate. Baud rate, address, and protocol version are selectable. Configuration is performed with the following sequence: <PROGRAM>...
  • Page 10: Protocol Specifics

    Honeywell Analytics CM4 Protocol Manual Protocol Specifics The protocol has been designed for flexibility and efficiency. This byte-wise protocol communicates information by transferring bytes of data back and forth between master and slave. A group of bytes for each communication is called a packet.
  • Page 11: Checksum (Check Character)

    If all the data bytes are added together and this sum made into a byte, that byte could be called a check character, or more commonly referred to as a checksum. For the CM4 instrument, the checksum is the negated sum of all the bytes in the packet.
  • Page 12: Ack/Nak Handshake

    Honeywell Analytics CM4 Protocol Manual ACK/NAK Handshake Each slave (CM4) uses a handshake scheme between itself and the master. The simplest response back from the instrument is called an ACK (an abbreviation for ACKnowledge). When the slave receives a command packet...
  • Page 13: Protocol Packet Definition

    CM4 Protocol Manual Protocol Packet Definition Packet Format Two similar protocols are supported by CM4 software. The original protocol with a minimum packet length of five bytes is included for compatibility with previous software. Additionally, a new protocol with a minimum packet length of six bytes is included for greater robustness.
  • Page 14: Date Format

    Honeywell Analytics CM4 Protocol Manual Generic Data Formats Date Format 2 bytes Year: (7 bits) Month: (4 bits) Day: (5 bits) Year is based from 1980. 1989 would be 89 - 80 = 9. Time Format 2 bytes Hours: (5 bits)
  • Page 15: Generic Responses

    CM4 Protocol Manual Generic Responses The CM4 monitor will return generic responses to the equipment if there is not a specific response defined, or if there is a problem in the communication transactions. There are four generic responses. Each of these response packets are 5 bytes, and contain only the start byte, address, length command code, and checksum.
  • Page 16: Protocol Command Definition

    Command packet to instrument: Command Code (0x30) - 1 byte Response packet from instrument: Command Code (0x30) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Serial # - 2 bytes, product code 851 is assumed. Software Rev.
  • Page 17: Get Unit Status - 0X31

    Command packet to instrument: Command Code (0x31) - 1 byte Response packet from instrument: Command Code (0x31) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes General Status - 2 bytes bit 0: Current Operating mode...
  • Page 18 Honeywell Analytics CM4 Protocol Manual (Get Unit Status bit 13: Relay state 0x31, continued) 0 = De-energized 1 = Energized bit 14: Relay Latching state 0 = Non-latching 1 = Latching bit 15: Alarm Simulation state 0 = Unit not in alarm...
  • Page 19 Honeywell Analytics CM4 Protocol Manual (Get Unit Status Optics Cal Status - 1 byte 0x31, continued) bit 0: Optics have been calibrated 0 = Not Tested 1 = Tested bits 1-4: Optics test results 0x01 = Passed optics 1 0x02 = Passed optics 2...
  • Page 20: Get Idle Time - 0X32

    Command packet to instrument: Command Code (0x32) - 1 byte Response packet from instrument: Command Code (0x32) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Idle Time - 1 byte (0 disabled, 1-45 minutes) Status - 1 byte...
  • Page 21: Get Maintenance Dates - 0X34

    Command Code (0x34) - 1 byte Response packet from instrument: Command Code (0x34) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Last Power Down Date - 2 bytes Last Power Down Time - 2 bytes...
  • Page 22: Get Point Configuration - 0X35

    11 = Point 4 bits 2-7: Undefined Response packet from instrument: Command Code (0x35) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Point Status Flag - 1 byte bit 0: Point Enable/Disable bit 0 = Disabled...
  • Page 23: Get Alarm History - 0X36

    CM4 Time - 2 bytes # of Alarms - 1 byte (alarm data, up to 16 possible) CM4 Date of Alarm - 2 bytes CM4 Time of Alarm - 2 bytes Gas Abbr. 6 bytes Point # - 1 byte...
  • Page 24: Get Current Point Status - 0X37

    11 = Point 4 bits 2-7: Undefined Response Packet from instrument: Command Code (0x37) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes (If point is Disabled/Invalid/Locked out, fill with zeroes) MDA Gas Abbr. - 6 bytes (not null terminated)
  • Page 25: Get Twa Time - 0X38

    Command packet to instrument: Command Code (0x38) - 1 byte Response packet from instrument: Command Code (0x38) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes TWA time 1 - 2 bytes TWA time 2 - 2 bytes...
  • Page 26: Get The Number Of Gas Tables Available - 0X3A

    Command packet to instrument: Command Code (0x3A) - 1 byte Response packet: Command Code (0x3A) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes # of Gas Tables - 1 byte (1-255) Get Printer This command queries the unit for the printer Setup configuration.
  • Page 27: Get Gas Table Data - 0X3C

    Gas to table to retrieve - 1 byte (0-255) Response packet from instrument: Command Code (0x3C) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes (filled with zeroes if error) MDA Gas Abbr. - 6 bytes (not null...
  • Page 28: Get Fault History - 0X3D

    Command Code (0x3D) - 1 byte Response packet from instrument: Command Code (0x3D) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes # of faults - 1 byte (0-4 maximum) (fault data, maximum of four possible)
  • Page 29 Command Code (0x3E) - 1 byte Response packet from instrument: Command Code (0x3E) - 1 byte CM4 Date: - 2 bytes CM4 Time - 2 bytes K-Factor (x 1000) Point 1 - 2 bytes K-Factor (x 1000) Point 2 - 2 bytes...
  • Page 30 Temperatures four pyrolyzers, in integer degrees Celsius the 0x42 slave’s internal temperature. This is applies to a model CM4-P only and not to an ordinary CM4. Command Packet to slave: Command code (0x42) - 1 byte Response from slave: Command code (0x42) - 1 byte...
  • Page 31 Command Packet to slave: Command code (0x44) - 1 byte Response from slave: Command code (0x44) - 1 byte CM4 date - 2 bytes CM4 time - 2 bytes Internal filter life - 2 bytes External filter life - 2 bytes Status - 1 byte (alway Rev.
  • Page 32 Command Packet to Slave: Command code (0x45) - 1 byte Response from Slave: Command code (0x45) - 1 byte CM4 date - 2 bytes CM4 time - 2 bytes Status - 1 byte 0x01 - in monitor 0x02 - maintenance fault relay...
  • Page 33 Honeywell Analytics CM4 Protocol Manual 01: 0.0 < Concentration <AL1 10: AL1 <= Concentration < AL2 11: AL2 <= Concentration 0xC0 - (2 bits) current alarm level 0x45 00: no alarm 01: alarm level 1 active 10: alarm level 2 active...
  • Page 34 Command packet to slave: Command Code (0x47) - 1 byte Response packet from slave Command Code (0x47) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Alarm Date - 2 bytes Alarm Time - 2 bytes...
  • Page 35 Honeywell Analytics CM4 Protocol Manual Configuration These are the commands and responses that the and Directive CM4 system will support for remote control and Commands configuration. Set K-Factor This command configures the manual K-Factor 0x50 for a specific point. An individual point is given a K-Factor times 1000.
  • Page 36 0x04 = Point 3 alarms 0x08 = Point 4 alarms 0x10 = Faults Response packet from instrument: Command Code (0x51) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Status - 1 byte 0x00 = Alarms reset 0xff = Error...
  • Page 37 (bit 0). This configures the keypad and a new key code. The old key code must match the code currently programmed into the CM4 monitor for this command to succeed in changing the code. Command packet to instrument:...
  • Page 38 1-7: Undefined Key code - 2 bytes (valid 0000-9999) Response packet from instrument: Command Code (0x53) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Status -1 byte 0x00 = Saved and verified 0x01 = Key code invalid...
  • Page 39 1 = Put in Monitor or pull window bits 1-7: Undefined Response packet from instrument: Command Code (0x55) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Status - 1 byte 0x00 = Request Executed 0xff = Error...
  • Page 40 1 = Enabled bit 7: Undefined Response packet from instrument: Command Code (0x57) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Status Flag - 1 byte 0x00 = Printer programmed 0x01 = Invalid report format 0xff = Printer programming error Rev.
  • Page 41 0x08 = point 4 enabled bits 4-7: Undefined Response packet from instrument: Command Code (0x58) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Status - 1 byte 0x00 = Point enable updated and verified 0xff = Error, not saved...
  • Page 42 20 mA Full Scale - 2 bytes Point ID - 20 bytes Response packet from instrument: Command Code (0x59) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Status - 1 byte 0x00 = Point configured and...
  • Page 43 Command Code (0x5A) - 1 byte TWA Time - 2 bytes Command Code (0x5A) - 1 byte CM4 Date -2 bytes CM4 Time - 2 bytes Status - 1 byte 0x00 = Value saved and verified 0x01 = Hours Invalid...
  • Page 44 Idle Time - 1 byte (0 disabled, 1-45 minutes) Response packet from instrument: Command Code (0x5C) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Status - 1 byte 0x00 = Value saved and verified 0x01 = Value > 45...
  • Page 45 This command allows you to configure the unit to Time 0x5E a new time and date. Use this feature to synchronize the time and date between the remote equipment and multiple CM4 monitors. Command packet to instrument: Command Code (0x5E) - 1 byte New Date - 2 bytes...
  • Page 46 1 = Latching bits 2-7: Undefined Response packet from instrument: Command Code (0x5F) - 1 byte CM4 Date - 2 bytes CM4 Time - 2 bytes Status - 1 byte 0x00 = relays state set 0xff = Error, relays state not changed Rev.
  • Page 47 Command packet to instrument: Command Code (0x60) - 1 byte Response packet from instrument: Command Code (0x60) - 1 byte CM4 Date: - 2 bytes CM4 Time - 2 bytes Status - 1 byte 0x00 = Points unlocked 0xff = Error...
  • Page 48 This command saves a backup copy of the Configuration current configuration to nonvolatile memory in the 0x62 CM4 monitor. This configuration can be restored using the Restore Configuration command. Command packet to instrument: Command Code (0x62) - 1 byte Response packet from instrument:...
  • Page 49 4-7 unused (ignored by slave) Minimum window time (seconds) - 2 bytes Response from slave: Command code (0x65) - byte CM4 date 2 bytes CM4 time 2 bytes Status - 1 byte 0x00 packet accepted 0x01 time > 900 seconds, unacceptable 0x02 time <...
  • Page 50 Internal filter lifetime (days) - 2 bytes External filter lifetimes (days) - 2 bytes Response from instrument: Command code (0x66) - 1 byte CM4 date - 2 bytes CM4 time - 2 bytes Status - 1 byte 0x00 = packet accepted...
  • Page 51 During periods when the tape is saturated but prevented from advancing, the CM4 will continue to report the most recent concentration reading. Unfortunately it will not be able to detect any changes in concentration during this period because the tape is saturated.
  • Page 52 Your CM4 instrument will accept and process commands sent to it from your equipment. Responses The CM4 instrument will send a return communication for any message it receives at its address. Included in most response packets from the CM4 instrument are date and time stamps.
  • Page 53 Honeywell Analytics CM4 Protocol Manual Example Packets The following section contains examples of packets from a master to a slave and the slave’s responses. Protocol version 2 is used. The address of the slave is 1. All numbers are in hexadecimal.
  • Page 54 Honeywell Analytics CM4 Protocol Manual Example Packets (continued) The following section contains examples of packets from a master to a slave and the slave’s responses. Protocol version 1 is used. Master 40 01 05 28 92 Slave 40 00 05 20 9B...
  • Page 55 Honeywell Analytics CM4 Protocol Manual Example Packets (continued) Master 40 01 05 39 81 Slave 40 00 0B 39 22 A6 44 06 04 00 66 Master 40 01 05 3B 7F Slave 40 00 0A 3B 22 A6 44 09 1D 49...
  • Page 56 Honeywell Analytics CM4 Protocol Manual Example Packets (continued) Master 40 01 06 57 1B 47 Slave 40 00 0A 57 22 A6 44 A1 00 B2 Master 40 01 06 58 0D 54 Slave 40 00 0A 58 22 A6 44 A7 00 AB...
  • Page 57 CH-8610 Uster Switzerland Tel: +41 (0)44 943 4300 Fax: +41 (0)44 943 4398 gasdetection@honeywell.com Americas Honeywell Analytics Distribution, Inc. 405 Barclay Blvd. Lincolnshire, IL 60069 Tel: +1 847 955 8200 Toll free: +1 800 538 0363 Fax: +1 847 955 8208 detectgas@honeywell.com...

Table of Contents