Linux Programmable Controller (LPC) - A PLC for Linux
Recent News
April 11, 2001
Version 0.0.7.4 is now available for download. This has many problem fixes, and the logic engine has been added. In the next day or so I will get the
test platform mentioned below up and ready for use.
March 13, 2001
A copy of version 0.0.7.2 is now available for download. This version now includes IO and web clients. Features of this release include,
- Java based web client for control and access
- Java based HMI
- Driver for a DAS08 board (analog, 8255 digital and counter IO)
- Devicenet master
- More up to date documentation
February 20, 2001
I have uploaded a sneek peek version (0.0.7.0) of the new LPC.
It includes some basic IO, documentation, example programs, etc.
Please feel free to download and try it.
Please note that two Devicenet drivers are included, but they are not ready for largescale usage yet.
Many of the components in the previous versions have not been ported over yet, please be patient.
NOTE: Documentation for the new version is in the software and must be downloaded
January 23, 2001
The Devicenet scanner is now working for polled IO (I am testing with an AB flexio rack, and an armor block). I have been working on documenting the new programming
architecture that is also working. Expect a release early next week that has most of the functionality of the older release - some modules will have to be converted.
December 31, 2000
I have been making good headway into adding the IEC programming languages, but they are also driving a change (for the better) in the central
controller. I will now be delaying the introduction of the languages to allow me to incorporate threads and multitasking into the central
controller. The new architecture will allow IEC programs to be compiled as libraries and linked (dynamically) while the LPC is running.
This should make the program execution very fast, and consume less memory.
December 20, 2000
The core logic engine of the LPC is being rewritten to support the IEC 61131 programming model. It should initially allow structured text (ST) and instruction list (IL) programs. My goal is to have a functional prototype in release 0.0.7 in early January (although I might do a prerelease sooner). By the end on January I would like to have a stable alpha version 0.0.8 that can be tested by others, and by early February to have a beta version 0.0.9. By the end of February I want to have a stable 1.0 release. The final release will include the features listed below. The features marked with an asterisk are under development, those without are already done.
Old News
December 10, 2000
The Devicenet scanner is on hold for a few days until some documentation and new hardware arrives. In the interrim I have decided to fix the programming model. I expect by the end of this week (with luck) to be able to run basic IEC 61131 programming structures, such as structured text. Pretty soon I'll have to move to version 0.7. The current releases are moving quickly towards a stable 0.1 release! The current test platform has been running since Nov., 18 without fail, consuming 31,158 cpu minutes. The memory size is 1,844K (no memory leaks), and it still responds over the network without problem.
December 3, 2000
I have been working on a couple of fronts. One is to develop a devicenet scanner based upon the SSTech 5136-DNP scanner card. The other is to clean up the programming structure to make it more mature, including non-global variables, and delayed instructions.
November 18, 2000
Some small bugs have been fixed, and a Java programming interface has been added. It is still crude, but it shows the basics of editing ladder logic via a browser. It uses swing, so those with older browsers might need to upgrade or install the swing library from www.javasoft.com.
November 6, 2000
A Java HMI is avaiable for review. It is simple (and buggy) but is does remote interaction and will show images, and use colors. It will be used as the based for the Java based programming tool that should be out in release 0.0.6.3 in a week or two. To use it click on the Java interface below. Some simple additions have also been made to the Java client program.
October 13, 2000
Version 0.0.6.2 is now available. It includes a java client and a much improved Telnet server (Windows users may still have small telnet problems - use the Java interface).
October 7, 2000
Version 0.0.6.1 has been released to fix a minor bug that would occur if a telnet session was not ended properly (ie, the telnet client was killed). This revision should work on newer kernels 2.1 or better.
October 6, 2000
Version 0.0.6 has been released. It has enhanced communication abilities, and is uses XML for data communication. Some thing such as the X-windows interface are broken, but will be fixed soon. The name has been changed to the Linux Programmable Controller (LPC).
Oct., 6, 2000
Version 0.0.6 has been released. It has enhanced communication abilities, and is uses XML for data communication. Some thing such as the X-windows interface are broken, but will be fixed soon. The name has been changed to the Linux Programmable Controller (LPC).
Sept., 2, 2000
I am working on developing a network capable version, with a java programming tool.
I expect to have the prototype version 0.0.6 (I had a couple of internal versions)
ready in late September. The PLC will communicate with XML file format over a telnet
type TCP/IP socket connection. This will simplify the interface to local and remote programming and
monitoring packages. The PLC now also supports some DAQ cards, and a serial interface.
I will also be converting the I/O model from 'IO numbers' to variables. This will make
the programming more portable between different user's experiences.
Mar., 2000
The screen capture below is from the X-windows based interface