Finally, here is a version that:
So, the "beta" categorization is no longer relevant and the project uses semantic versioning from now on.
Proper logging messages and error handling
Decouple execution from programming and parsing
Systematic integration test (blackbox)
5 years later, at last a version that:
-Can compile in a linux kernel > 2.6
-Has an autotools based installation and configuration system
-Works with simulated hardware.
-Can produce Doxygen docs.
-Code is -mostly- readable.
Hopefully the next version will be sooner ;)
It took a good 8 months, but i finally got a chance to revisit this project since i got to actually deploy version 1.3 with Ladder on a real industrial application-rollerway control!
That meant:A. I got to do yet another debugging overhaul, and removed a series of minor, but annoying bugs that made PLCemu practically unusable.
Ladder diagrams now work, and work well.
B. I got the chance to finish the implementation of a second language! Now PLCemu supports IEC-61131-3 compatible
Instruction List. It still has known bugs, and doesn't implement subroutines.... read more
after massive debugging and testing, v1.3 beta is available. the editor now is OK, and LD works far better than before. multiple branches etc. work fine.
also, operators [,],) for set, reset and negate coil have been added. (check help file and website)
LD (with memory stack) and everything else planned has been implemented and (should) work as intended, passing to BETA stage.
Please Feel free to test and submit bugs!
Yet Another Massive debug.
Fixed Makefile for comedi, &compiled & tested plcemu with comedi 0.7.76 on a 2.6.18 kernel, works fine! :)
LD language _kind of_ works. It BASICALLY works, but as the memory stack is not properly implemented _yet_, do not expect _every_ and _any_ Ladder diagram to work correctly. However, you can -sort of- program in Ladder now.
Up next: Instruction List.
i had forgotten some debug related code in the release, which would make it not work as expected.
please download again, or wait for the next version which will (hopefully) include LD...
fixed C API, which should now work
Everything except LD parser should now work fine.
this is a buggy alpha version for testing purposes
LD language is not working.