mod_openopc...
A Frontend for OpenOPC
... well, yes, sort-of, but more. mod_openopc is a very nice, simple to use, command line utility for taking otherwise complex Open OPC routines, and automating them as System Services. You can launch READ, WRITE, or DAEMON instances as individual threads, each working off of presets to gather or write data to and from OPC Devices such as Programmable Logic Controllers.
Primary Use
For the most part, the primary use of mod_openopc is to run perpetual READ routines upon PLC's or OPC Devices and then log this information to MySQL database tables. From these tables, you may then use a HMI Display (or flesh out your own from a skeleton, such as S.E.E.R.) to display this data. mod_openopc can also be daemonized, that is it will sit and monitor a folder for a file system event, and then take the data from that file and perform a READ or WRITE routine based upon it. This allows mod_openopc to integrate well with 3rd party applications that may wish to READ or WRITE from an OPC device upon command.
mod_openopc is a tidy application, that is to say that it has built in maintenance routines for backing up the databases you wish, and for performing basic db maintenance on them. Once you've setup mod_openopc, you should not have to administer it -- it can run indefinately without human input, provided you do not suffer a power outage / network crash / or anything that would disable your communication network for such a time that mod_openopc would timeout.
mod_openopc can also be used to BRIDGE networks. For example, let's say you have some devices on an Ethernet network, others on a ModBUS network, and still others on a Data Highway Plus Network. Provided you have PC interface cards that you can install into a server so as to grant that server access to each of those networks, then mod_openopc can perform constant or scheduled messaging between any devices on those networks. It is the UUBER BRIDGE.
So what is it? Like a Historian?
It's a historian on steroids. It makes every other vendor's Historian application pale in comparison. It is the UUBER HISTORIAN -- and more! The databases maintained by mod_openopc are per your tailoring, per your spec, and per your 'flavor' (if you will). Store whatever you want, however you want, and as much of it as you want. There is no size limit. You are limited only by how much data your server can process, and how much hard disk space you have available (and, we suppose, how fast your network can communicate).
But What about Wonderware / ICONICS / and the like?
Yes, these HMI / SCADA suites have been around for 10, 15 years or more. If you need constant updates at a speed comparable to a Panelview Display Terminal (Operator Display at a Machine - less than 15 seconds - mod_openopc with a S.E.E.R. front end can only support a maximum of 15 to 30 second display screen updates based upon current technology), and you are not willing to take the time to write a simple PHP / HTML webpage front end, then by all means, go ahead and spend $5 to $10k on one of these packages.
But, if you want rock solid reliability, and the ability to distribute your HMI plant-wide, nation-wide, or WORLD-WIDE! then you need mod_openopc. By logging machine data at intervals down to every 15 seconds, mod_openopc keeps you up to date and in gear. Your custom PHP / HTML web-based HMI (such as using the S.E.E.R. skeleton) allows you to broadcast your HMI anywhere within your plant or around the world. You could setup a report generator that your company's CEO in Germany could use to analyze production data from your facility in Mexico!
If you, instead, would like to move away from the "distributed HMI" model, and simply use mod_openopc for a "one person can view the display at one computer terminal only" setup, which is what you get with the competition's software, then you're free to do so. You would simply have to localize Apache, MySQL, mod_openopc, S.E.E.R., a virtual guest running your OPC Server software, and wrap it into a high power gaming PC. Then, feasibly, you could update every few seconds, and achieve performance comparable to that of Wonderware / ICONICS / and the like, but without the price tag.
But Where do I Get It?
From this website. Simply go to the downloads section and grab the latest version:
HTTP://download.spinellicreations.com/mod_openopc
mod_openopc is licensed under the GNU GPL version 3 by Vince Spinelli for Sorrento Lactalis American Group (Lactalis USA). The license is available here -- HTTP://download.spinellicreations.com/mod_openopc/z_LICENSE.txt
The current working version is 2.1-0, build #23, and the revision history is available here -- HTTP://download.spinellicreations.com/mod_openopc/z_REVISION_HISTORY.txt
I NEED HELP!
README for mod_openopc is available here - full documentation and install guide:
HTTP://download.spinellicreations.com/mod_openopc/z_README_mod_openopc_doc-guide_2009-04-05.pdf
README for Open OPC is available here:
HTTP://download.spinellicreations.com/mod_openopc/z_README_openopc_doc-guide_v-1-1-6.pdf
What do I Need?
0- A copy of mod_openopc
1- A copy of Open OPC (this is included with the mod_openopc download)http://openopc.sourceforge.net
1- Any Linux OS with a 2.6 Kernel
2- Sun MicroSystems MySQL -- http://dev.mysql.com
3- GNU C Library -- http://www.gnu.org/software/libc
4- GNU Tar -- http://www.gnu.org/software/tar
5- Python for Linux -- http://www.python.org
5b- Python for Windows -- http://www.python.org/download/releases/2.5.4/
6- Python Remote Objects "PYRO" -- http://pyro.sourceforge.net
7- MySQL-Python -- http://mysql-python.sourceforge.net
|