Inst ToolsInst ToolsInst Tools
  • Courses
  • Automation
    • PLC
    • Control System
    • Safety System
    • Communication
    • Fire & Gas System
  • Instrumentation
    • Design
    • Pressure
    • Temperature
    • Flow
    • Level
    • Vibration
    • Analyzer
    • Control Valve
    • Switch
    • Calibration
    • Erection & Commissioning
  • Interview
    • Instrumentation
    • Electrical
    • Electronics
    • Practical
  • Q&A
    • Instrumentation
    • Control System
    • Electrical
    • Electronics
    • Analog Electronics
    • Digital Electronics
    • Power Electronics
    • Microprocessor
  • Request
Search
  • Books
  • Software
  • Projects
  • Process
  • Tools
  • Basics
  • Formula
  • Power Plant
  • Root Cause Analysis
  • Electrical Basics
  • Animation
  • Standards
  • 4-20 mA Course
  • Siemens PLC Course
Reading: Modbus Function Codes and Addresses
Share
Notification Show More
Font ResizerAa
Inst ToolsInst Tools
Font ResizerAa
  • Courses
  • Design
  • PLC
  • Interview
  • Control System
Search
  • Courses
  • Automation
    • PLC
    • Control System
    • Safety System
    • Communication
    • Fire & Gas System
  • Instrumentation
    • Design
    • Pressure
    • Temperature
    • Flow
    • Level
    • Vibration
    • Analyzer
    • Control Valve
    • Switch
    • Calibration
    • Erection & Commissioning
  • Interview
    • Instrumentation
    • Electrical
    • Electronics
    • Practical
  • Q&A
    • Instrumentation
    • Control System
    • Electrical
    • Electronics
    • Analog Electronics
    • Digital Electronics
    • Power Electronics
    • Microprocessor
  • Request
Follow US
All rights reserved. Reproduction in whole or in part without written permission is prohibited.
Inst Tools > Blog > Control Systems > Modbus Function Codes and Addresses

Modbus Function Codes and Addresses

In this article, you will learn the Modbus communication protocol function codes and address range with examples.

Last updated: November 9, 2022 9:34 am
Editorial Staff
Control Systems
No Comments
Share
4 Min Read
SHARE

A listing of commonly-used Modbus function codes appears in the following table.

Contents
Modbus Function CodesModbus AddressesModbus Example

Modbus Function Codes

Modbus Code

Live data inside of any digital device is always located at some address within that device’s random-access memory (RAM).

The Modbus “984” addressing standard defines sets of fixed numerical addresses where various types of data may be found in a PLC or other control device.

Modbus Addresses

The absolute address ranges (according to the Modbus 984 scheme) are shown in this table, with each address holding 16 bits of data:

Modbus Address Range

Note how all the Modbus address ranges begin at the number one, not zero as is customary for so many digital systems.

For example, a PLC with sixteen analog input channels numbered 0 through 15 by the manufacturer may “map” those input registers to Modbus addresses 30001 through 30016, respectively.

Modbus Example

While this fixed addressing scheme was correct for the original PLCs developed by Modicon, it almost never corresponds directly to the addresses within a modern Modbus master or slave device.

Manufacturers’ documentation for Modbus-compatible devices normally provides Modbus “mapping” references so technicians and engineers alike may determine which Modbus addresses refer to specific bit or word registers in the device.

In some cases, the configuration software for a Modbus-compatible device provides a utility where you may assign specific device variables to standard Modbus register numbers.

An example of a Modbus variable mapping page appears in this screenshot taken from the configuration utility for an Emerson Smart Wireless gateway, used to “map” data from variables within WirelessHART radio-based industrial field instruments to Modbus registers within the gateway device where other devices on a wired network may read that data:

Emerson Smart Wireless gateway

As you can see here, the primary variable within temperature sensor TT-101 (TT-101.PV) has been mapped to Modbus register 30001, where any Modbus master device on the wired network will be able to read it.

Likewise, the secondary variable within level switch LSL-78 (LSL-78.SV) has been mapped to Modbus register 30041.

It is important to note that Modbus registers are 16 bits each, which may or may not exactly fit the bit width of the device variable in question. If the device variable happens to be a 32-bit floating point number, then two contiguous Modbus registers must be used to hold that variable, only the first of which will likely appear on the Modbus mapping page (i.e. the Modbus map will only show the first Modbus register of that pair).

If the device variable happens to be a boolean (single bit), then it is likely only one bit within the 16-bit Modbus register will be used, the other 15 bits being “wasted” (unavailable) for other purposes.

Details such as this may be documented in the manual for the device performing the Modbus mapping (in this case the Emerson Smart Wireless Gateway), or you may be forced to discover them by experimentation.

© 2019-2021 by Tony R. Kuphaldt – under the terms and conditions of the Creative Commons Attribution 4.0 International Public License
Don't Miss Our Updates
Be the first to get exclusive content straight to your email.
We promise not to spam you. You can unsubscribe at any time.
Invalid email address
You've successfully subscribed !

Continue Reading

Troubleshooting a 4-20mA Current loop
What is Interposing Relay in a PLC System ?
What is Data Acquisition? – Elements and Components
4-wire Transmitters Current Loops
How to Avoid Bad Grounds ?
Problem in Water Level Control System
Share This Article
Facebook Whatsapp Whatsapp LinkedIn Copy Link
Share
Leave a Comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Stay Connected

128.3kFollowersLike
69.1kFollowersFollow
210kSubscribersSubscribe
38kFollowersFollow

Categories

Explore More

Speed Control of Ship Electrical Motor Propulsion
Limit Controls : High Limit & Low Limit Functions
Types of Cables used in Industrial Automation
What is a Network Connector? – Types of Connectors
Difference Between Single Pair Ethernet and Traditional Ethernet
Centrifugal Compressor Start Permissive and Interlocks
What we need to Know before Tune a PID Controller ?
Recognizing an Over-Tuned PID Controller by Phase Shift

Keep Learning

Explain how this is an example of Ratio Control?

Questions on Ratio Control System

PID Tuner

Free PID Controller Gains Tuning Tool

Difference between Analog Signal and Digital Signal

What are Analog and Digital Signals? Differences, Examples

Create a Project in LabVIEW

How to Create a Project in LabVIEW?

What is Open Telemetry?

What is Open Telemetry? – Principles and Benefits

Difference between Router, Switch, and Hub

Difference between Router, Switch, and Hub

List of 100 Questions Related to Distributed Control Systems (DCS)

List of 100 Distributed Control Systems Questions (DCS)

LED Stumps in Cricket

How do LED Stumps in Cricket Work?

Learn More

Vibration Sensor

Vibration Probes Questions and Answers

Electrical Machines Questions and Answers

Reluctance Motor Quiz

Capacitance Type Level Transmitter Working Principle

Capacitance Level Transmitter Animation

Choke Input Filter Operation

Choke Input Filter Operation

Signal Isolator

What is a Signal Isolator? Principle, Advantages, Disadvantages

Power Electronics Objective Questions

Single Phase Voltage Source Inverter MCQ

Mathematical Models of Physical Systems

Differential Equations of Physical Systems & Dynamics of Robotic Mechanisms

Use of Regions in SCL Language

Use of Regions in SCL Language

Menu

  • About
  • Privacy Policy
  • Copyright

Quick Links

  • Learn PLC
  • Helping Hand
  • Part Time Job

YouTube Subscribe

Follow US
All rights reserved. Reproduction in whole or in part without written permission is prohibited.
Welcome Back!

Sign in to your account

Username or Email Address
Password

Lost your password?