Contents
Beginner

PLC Programming Computational Mathematical Instructions – MOD | Modulo

By
Vladimir Romanov
|
November 12, 2018
Table of Contents

Introduction

The MOD, also known as the modulo, is an instruction which allows the user to calculate the remainder produced by a division of two integers. This instruction is not frequently used in ladder logic programming but is very useful for calculating the remainder of a ratio, production excess, and several other parameters. The instruction takes three registers as operands. The first two are the dividend and the divisor. The result is stored in this third register which is labeled as the destination.

This instruction can be found in situations which require one to find the leftovers of a batch, how the performance of a piece of machinery is or any other situation which relies on a notion of a remainder.

Example & Usage of MOD

Here’s a real-world scenario of a MOD instruction:

  1. A CompactLogix L24ER Allen Bradley PLC is used to control a process.
  2. In rung 0, a MOD  instruction is used to compute the modulo of an integer System_DINT[0] and System_DINT[1] and store the result in the integer System_DINT[2].
  3. Since the value of the first double integer is set to 200 and the second one to 43, the modulo evaluates to 26. In other words, 200 / 43 = 4 with a remainder of 26.
  4. In rung 1, a MOD  instruction is used to compute the modulo of an integer System_REAL and System_REAL and store the result in the float System_REAL[2].
  5. Since the value of the first double integer is set to 200.22 and the second one to 10, the modulo evaluates to 0.22. In other words, 200.22 / 10 = 20 with a remainder of 0.22.
  6. In rung 2, a MOD  instruction is used to compute the modulo of a system which calculates the remainder of a production run. “Source A” is set to the total number of cases produced while “Source B” has the count of products per case. By calculating the modulo, we can figure out if we’ve filled all cases or we have leftover product.

Programming example in Studio 5000:

MOD Modulo Instruction RSLogix 500 5000 Studio Tutorial Ladder Logix Programming

Outcome:

The MOD instruction will compute the remainder of a division of two integers or floats. In the first two examples, we’re calculating two remainders which evaluate to 28 and 0.22 respectively. These calculations can be confirmed through a simple calculator. The last rung is used to figure out if we have any leftover product. A simple example would be the production if 1023 bottle of beer while each case holds 25 bottles. Simple math allows us to evaluate a modulo of 23 which should be utilized to complete the run.

The MOD instruction is not something you’d see on a regular basis in ladder logic but can be very useful in niche situations.

Data Types Allowed for MOD

The MOD can be used to compare two values of identical types or mismatching types such as float and integer. These value can be INTs or FLOATs.

  • Integer – You may specify each operand to be of “Integer” type.
  • Float – You may specify each operand to be of “Float” type.

Video Tutorial

Got a question or comment?

Related Tutorials

Beginner

How to Build an Allen Bradley PLC Trainer Kit for PLC Training at Home

The best way to learn PLC programming is to get hands-on experience. However, as many are trying to learn how to program these devices before landing a job, it becomes crucial to invest in your own hardware in order to accelerate the learning process. That being said, a PLC programmer will face three challenges when it comes to building an effective PLC trainer.

April 10, 2020
|
By
Vladimir Romanov
Beginner

Photo Eye Sensor | How to Wire a Photoelectric Sensor into a CompactLogix Allen Bradley PLC

Learn how to work with photoelectric sensors, understand the basics, how to wire them, how to tie them into various PLCs and field devices and lastly how to troubleshoot them.

April 24, 2020
|
By
Vladimir Romanov
Beginner

PLC Programming | How to Read Ladder Logic

Learn the basics of Ladder Logic, one of the top 5 most popular types of PLC programming languages used in manufacturing environments.

April 7, 2020
|
By
Vladimir Romanov