PLC Simulator

PLCdev is your home for quality simulators for Programmable Logic Controllers from Allen Bradley, GE Fanuc, Siemens, Modicon, Mitsubishi, Omron, Automation Direct and anything else you're using. We specialize in making PLC test boards to simulate your control environment so that you can debug your programs on your desk or in the field. And if that wasn't enough we offer educational materials, articles and tips for the novice to the advanced programmer. We invite you to register so that you can receive timely updates to PLCdev. Thanks for coming and visit again soon!

Review of AutomationDirect's DirectSOFT5 Programming Software

I've been a consistent user of DirectSOFT for the last six years so I was very interested to check out AutomationDirect's new release of DirectSOFT5.  This is both an overview of the new features and a review as to their usefulness.  We’ll start with some first impressions like new icons, toolbars, themes and dockable views and then discuss the important internal changes with IBoxes.  There have also been significant moves made in how Automation Direct packages and sells DirectSOFT which should factor into whether to upgrade or not.

( categories: )

Impressive Student Control Projects

Lately I've run across some very cool PLC control projects done by university students that I'd like to share.

Assitive Technology

A couple of examples come from the Introduction to Programmable Logic Controllers in a Mechanical Engineering Instrumentation Course taught at the University of Alabama. It sounds like a really neat hands on environment for some practical learning about PLCs and control systems. The document outlines development of a PLC test stand for the class using an Automation Direct DL205 PLC with several pneumatic cylinders, solenoid valves, proximity sensors, pressure regulators, DC power supplies which are mounted on a peg board.

The really fun part comes with two of the senior projects. In practice they are great examples of assistive technology. One is a page turning device using an Automation Direct DL05 and parts that were scavanged from an old dot matrix printer.

The Anatomy of a Relay

The very first programmable logic controllers were designed to replace relays.  PLCs have changed a lot since then, but as an artifact of time some of the terms used in PLC programming still relate to relays, namely a "coil" and "contact".  In typical computer programming these would be strange terms but they make perfect sense in an industrial automation sense seeing that the relay has (and still does) form a vital role in controls.  Following is an attempt to dissect a relay and understand how it works.  All though simple in nature I hope it will be appreciated how important it is to understand this most basic of components.

Ladder Logic for a High Flow Totalizer

Sometimes there are limitations in dealing with very large values in a PLC. Floating point numbers (real numbers) often come to the rescue but in certain cases their precision can actually have adverse effects. These problems were mentioned in our article "Getting the Point about Floating Point Numbers".

Take for instance a totalizer that deals with very large values.  With one calculation the error is negligible but keeps adding them up and it starts to become significant.  Being off by even 1 m3/hr after an hour is 60 m3/hr.

Getting the Point about Floating Point Numbers

The Freedom of Floating Point 

Floating point numbers (also known as 'real numbers') give a certain freedom in being able to represent both very large and very small numbers in the confines of a 32 bit word (that's a double word in our PLCs).  Up until this point the range of numbers we were able to represent with a double word would be from 0 to 4,294,967,295.  Floating point on the other hand allows a representation of 0.0000000000000001 as well as +/-1,000,000,000,000.  It allows for such large numbers that we can even keep track of the US national debt.

Rockwell Automation's Retroincabulator!

Warning: this is from the humor department. 

I think this is a must see by any automation professional. 

Rockwell Automation's Retroincabulator (video at

( categories: )

Using Ladder Logic for Gray Code Conversion

If your PLC does not support Gray code to binary conversion then it can be quite a trick developing the ladder logic to do it. First, you might want to double check that this instruction is not buried deep down somewhere in your manual. Here's a couple of PLCs that all ready have a Gray code to binary converter.


The Black and White of Gray Code

Gray code (named after it's inventor Frank Gray) is a sequence of binary numbers where only one bit changes at a time.  Marching through the integer sequence then only requires flipping one bit at a time which in certain applications drastically reduces any errors.  In standard binary many digits can change at once, for instant when going from 7 to 8 (0111 to 1000) there are four bits changing state. 

It's a fact of life that a PLC input can turn ON quicker then it can turn OFF.  We're talking milliseconds here but with equally fast scan times it can generate a wrong reading when using normal binary methods.  With Gray code you can be assured that only one bit is going to change.  Anymore then that one bit changing and there is something wrong. 

The ABCs of BCD

Binary Coded Decimal (BCD) is a number code that makes all those 1s and 0s in the computer easier for humans to read. In BCD the digits 0 through 9 are stored as 4 bits (a.k.a. a nibble). Thus in a 16-bit word you can have four digits (16 bit word / 4 BCD bits = 4 digits).  The figure below demonstrates how to convert a binary number to it's BCD equivalent.


01-10 binary to BCD by fours