COMMUNICATIONS GUIDE

RS485 INTERFACE (MODBUS RTU)

Master Request Transmission:

SLAVE ADDRESS: 1 byte

FUNCTION CODE: 1 byte

DATA: variable number of bytes depending on FUNCTION CODE

CRC: 2 bytes

Slave Response Transmission:

SLAVE ADDRESS: 1 byte

FUNCTION CODE: 1 byte

DATA: variable number of bytes depending on FUNCTION CODE

CRC: 2 bytes

SLAVE ADDRESS: This is the first byte of every transmission. This byte represents the user- assigned address of the slave device that is to receive the message sent by the master. Each slave device must be assigned a unique address and only the addressed slave will respond to a transmission that starts with its address. In a master request transmission the SLAVE ADDRESS represents the address of the slave to which the request is being sent. In a slave response transmission the SLAVE ADDRESS represents the address of the slave that is sending the response.

FUNCTION CODE: This is the second byte of every transmission. Modbus defines function codes of 1 to 127.

DATA: This will be a variable number of bytes depending on the FUNCTION CODE. This may be Actual Values, Setpoints, or addresses sent by the master to the slave or by the slave to the master.

CRC: This is a two byte error checking code.

Error Checking

The RTU version of Modbus includes a two byte CRC-16 (16 bit cyclic redundancy check) with every transmission. The CRC-16 algorithm essentially treats the entire data stream (data bits only; start, stop and parity ignored) as one continuous binary number. This number is first shifted left 16 bits and then divided by a characteristic polynomial (11000000000000101B). The 16 bit remainder of the division is appended to the end of the transmission, MSByte first. The resulting message including CRC, when divided by the same polynomial at the receiver will give a zero remainder if no transmission errors have occurred.

If a MM300 Modbus slave device receives a transmission in which an error is indicated by the CRC-16 calculation, the slave device will not respond to the transmission. A CRC-16 error indicates than one or more bytes of the transmission were received incorrectly and thus the entire transmission should be ignored in order to avoid the MM300 performing any incorrect operation.

The CRC-16 calculation is an industry standard method used for error detection. An algorithm is included here to assist programmers in situations where no standard CRC-16 calculation routines are available.

CRC-16 Algorithm

Once the following algorithm is complete, the working register “A” will contain the CRC value to be transmitted. Note that this algorithm requires the characteristic polynomial to be reverse bit ordered. The MSBit of the characteristic polynomial is dropped since it does not affect the value of the remainder. The following symbols are used in the algorithm:

—>: data transfer

A: 16 bit working register

MM300 MOTOR MANAGEMENT SYSTEM – COMMUNICATIONS GUIDE

3

Page 7
Image 7
GE MM300 manual Error Checking, CRC-16 Algorithm

MM300 specifications

The GE MM300 is a robust and versatile controller designed primarily for industrial automation applications. Built to tackle the demands of modern manufacturing environments, this controller offers a range of features that contribute to its popularity among engineers and operators.

One of the standout features of the GE MM300 is its scalability. The device can be easily configured to meet the needs of both small and large systems. Its modular architecture allows users to add or remove components based on the specific requirements of their applications, facilitating a more tailored approach to automation.

The MM300 supports various communication protocols, including Ethernet/IP, Modbus TCP, and more, ensuring seamless integration with a variety of devices and systems. This feature significantly enhances interoperability, allowing users to connect the controller to existing infrastructure without extensive reconfiguration.

In terms of processing power, the MM300 is equipped with a high-performance processor that can handle complex tasks with ease. With advanced data handling capabilities, it supports real-time data processing, enabling faster decision-making and improving overall operational efficiency. This capability is particularly beneficial for applications requiring precise control and monitoring.

Moreover, the GE MM300 boasts a user-friendly interface, featuring an intuitive programming environment that simplifies the development of control applications. This includes an integrated development environment (IDE) and support for popular programming languages, making it accessible for both seasoned programmers and those new to automation technologies.

The device is designed to operate in challenging industrial conditions, featuring a rugged construction that ensures durability and longevity. Its ability to withstand extreme temperatures, vibrations, and other environmental stressors enhances its reliability in demanding applications, which is crucial for minimizing downtime in production processes.

Security is another critical aspect of the GE MM300. The controller incorporates advanced security features to protect against unauthorized access and cyber threats, helping organizations ensure the integrity of their operations.

In summary, the GE MM300 stands out due to its scalability, versatile communication options, high processing capabilities, user-friendly programming environment, rugged design, and security features. These characteristics make it a reliable choice for industries seeking to enhance their automation processes and improve overall efficiency. Whether for small-scale or large-scale applications, the MM300 provides a comprehensive solution to meet the evolving needs of modern manufacturing.