In the world of modern automation, PLC device interface is typically achieved by utilizing MMI (Man/Machine Interface) systems. These programmable products supply a great user interface, often incorporating a touch screen, that is both easy to program and use. Sometimes, the MMI may even include an “ODBC“ interface to record a production value or upload a recipe. This general interface scenario was not the focus for PLCIO. Instead, PLCIO was developed specifically to meet the interface needs of more sophisticated computer systems (normally Unix/Linux based) that have larger databases. These systems typically collect significant amounts of data and synchronize data and events across a wide array of equipment.
Celebrating 30 years of PLCIO
PLCIO was born from the need to provide a simple, but effective communications interface to talk to I/O devices. Our primary objective was to abstract the application and communications layers so that someone programming the business and database logic would not have to worry about the communication details.
PLCIO does not require any custom hardware or specialized drivers. It supports Ethernet and serial protocols.
Easy learning curve
PLC communications protocol experience is not required.
Source code distribution
PLCIO is setup for maximum flexibility, maintainability and integration, now and in the future.
In the past, systems used for warehouse management, ASRS (Automated Storage and Retrieval System) control, material handling, and scientific monitoring/processing were often made overly complex because of PLC interface needs.
Developers had limited and expensive interface options such as the AB Pyramid Integrator, (the nearly obsolete) INTERCHANGE, a bridge through an MMI computer, or worse, a sophisticated protocol specification that had to be developed, debugged, and implemented from scratch. It was this dilemma that provided impetus for the design and development of PLCIO.
One of the key design factors for PLCIO was to make a really simple C language API that had enough abstraction from the PLC so that it could work with any brand or model. The end result was a basic (yet extremely functional) programming interface that needed only a minimum amount of application code to get it up and running.
Originally designed for HP-UX and Interactive Unix, the latest version of PLCIO supports a POSIX compliant API, making the library run equally well on Linux, QNX, HP-UX, AIX, Sun, and other operating systems. The library is fully extensible, and features sample programs, web CGI extensions, and optional / configurable soft points that allow the programmer to abstract terms like “N21:55“ or “40350“ to something more meaningful -- like “PROD_COUNT_A“. The soft point design also enables one application to talk to multiple, different architectures.
We distribute PLCIO software as source code (although we do require acceptance of a minimal Non-Disclosure Agreement). Source distribution makes OS upgrades and extensibility very easy to manage. Since the systems that typically implement PLCIO don't change overnight (they are definitely not the MMI of the week), source distribution allows you to minimize future system upgrade risk and at the same time get the most out of PLCIO features.