Asee peer logo

Factory Automation Emulator Design Using Object Oriented Programming

Download Paper |


1997 Annual Conference


Milwaukee, Wisconsin

Publication Date

June 15, 1997

Start Date

June 15, 1997

End Date

June 18, 1997



Page Count


Page Numbers

2.194.1 - 2.194.4



Permanent URL

Download Count


Request a correction

Paper Authors

author page

Vincent Allen

author page

Bruce E. Segee

Download Paper |

NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract

Session 1559

Session 1559

Factory Automation Emulator Design Using Object-Oriented Programming

Bruce Segee, Vincent Allen University of Maine

Abstract Development of a factory automation emulator for a complex material handling system having multiple interconnected conveyor belts can be a difficult task. Our goal was to develop a factory wide emulator that would mimic the actions of all conveyor belts, photosensors, barcode readers, diverter arms, motors, other actuators, and even the operators. The emulator would move virtual totes of partially finished product through all phases of assembly causing the programmable logic controllers (PLC’s) and PC’s to believe they are controlling the real factory and routing real totes. Our solution was an object-oriented software emulator written in C++. Development of the software involved breaking the automation system into multiple zones. Multiple zones allow the software programmer to focus on only a small number of inputs and outputs for a given zone, thus reducing the overwhelming task to one that is more simple. Each zone is represented by a software module, or C++ object, that has an input function, an output function, and an update function. These functions allow objects to enter a zone, leave a zone, as well as update position within a zone, respectively. Combining the zone modules with a graphical representation of the system resulted in an effective, real-time emulation tool. With a small group of programmers at a variety of different skill levels, the development of the software took only a few weeks. 1. Introduction An emulator was needed to test code developed for controlling an automated goods delivery system before installing it in a factory. A small amount of time spent on an emulator would greatly reduce the time spent debugging the software on site. The purpose of the emulator was to emulate all aspects of the factory right down to an operator working on a tote. Most importantly it had to emulate totes moving throughout the system as well as emulate all hardware, i.e., the photosensors, barcode scanners, actuators, diverter arms, and motors. Before discussing the framework of the emulator, some background of the conveyor system and hardware must be covered. The factory has multiple lines of many operator stations. Totes of partially assembled product are stored in storage areas located overhead. Each of the storage areas consists of many, gravity fed, columns that can hold up to four totes each. A circular conveyor belt, also located overhead, is used to move totes from a storage area on one line to a storage area on another line. A series of belts are responsible for moving totes from the operator stations back to storage. Other miscellaneous conveyor belts are used for entering totes into the system, routing them to areas where defective product can be dealt with, and exiting totes from the system. Each of these different belts and gravity fed rollers can be implemented in an emulator as a separate zone. Each operator station is a zone. Each storage column makes up a zone and an

Allen, V., & Segee, B. E. (1997, June), Factory Automation Emulator Design Using Object Oriented Programming Paper presented at 1997 Annual Conference, Milwaukee, Wisconsin. 10.18260/1-2--6566

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 1997 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015