Black Pearl Posted December 30, 2009 Report Share Posted December 30, 2009 Name: UML2LV State Machin Compiler Submitter: Black Pearl Submitted: 30 Dec 2009 File Updated: 03 Jan 2011 Category: *Uncertified* LabVIEW Version: 7.1 License Type: BSD (Most common) This is a toolkit to convert a state diagram designed with the editor dia into a LabVIEW state machine. Warning: This uses Scripting: So be aware of dragons, black holes, rusty nails and other monsters. I've only tested it in LV 7.1., got a crash every 2 hours... Bugs and workarounds in newer LV versions welcomed. Crashes in 8.5. Found the CAR (# 4CJFKTCS)). Edit: Fixed in V 1.0.1 Basic Operation *************** Create an uml Chart in Dia (it is OpenSource too). Compile it into a LabVIEW state machine (this will generate an enum based state machine with .vi and States.ctl for the TypeDefed Enum). Code the States. Getting started *************** * You will need to have several OpenG packages installed. Dependencies: appcontrol, file, variantconfig. In order to install these, you need to get the VI package manager from: http://jkisoft.com/vipm/download/ * For users of LV 7.x you need to get the TRefTraverse.llb from NI: http://decibel.ni.co...t/docs/DOC-5091 From 8.0 onward they are located under vi.lib\utility Propably you need to fix the linking from the main vi * You will need to download Dia: http://live.gnome.org/Dia Customizing *********** * In the Folder LV Scripting you will find the template 'State Machine Prototype Template.vit'. You can modify this within limits to change the state machine that will be generated. * There is a lot of Documentation with the Code: Check out the documentation folder with the 'Tree VIs' and the uml diagrams (they are surprisingly also made with dia) * If you have questions, ideas or found a bug, please do not hesitate to contact me! You can do so via PM on LavaG or via my private email on the BD of the About.vi V 1.0.1: * Fixed a bug in error handling (Error Handler Close.vi) * Workaround for the 8.5 crash * Support for changed Name of CaseSelect * Started to add support for StarUML Happy New Year Click here to download this file 1 Quote Link to comment
Black Pearl Posted January 9, 2010 Author Report Share Posted January 9, 2010 Roadmap (unsorted): * Extending the set of verification plugins * Loading/Parsing for StarUML/XMI * Creation of String based State Machines * Make it available for newer LV versions (see this scripting question) * Handling of orthogonal states * Converting Notes to Comments on BD * Converting Transition Events/Guards to whatever * Write an easy tutorial Felix 1 Quote Link to comment
SuperS_5 Posted December 18, 2010 Report Share Posted December 18, 2010 Hi, This looks really neat. How is the progress on the Roadmap? Quote Link to comment
SuperS_5 Posted December 18, 2010 Report Share Posted December 18, 2010 I looked through this tool. Looks interesting, but very similar to the state-chart module. I tried to use the "Replace - no attributes" method, but, it always failed for me in LV8.6. Replacing to "Replace" and the "Params" disappeared, but everything worked after that. Learning how it parses Dia took some experimented, but, worked great when I got used to it. It is definitely pretty quick, and that is one point against the state-chart module. Quote Link to comment
Black Pearl Posted December 18, 2010 Author Report Share Posted December 18, 2010 Thanks, I'll play around with Replace (instead of RepNoAttrib) next week. This is one of the main reasons that I have discontinued to work on this project, as I couldn't make it working in other LV versions. Felix Quote Link to comment
SuperS_5 Posted December 18, 2010 Report Share Posted December 18, 2010 It would be cool to work on this too. I guess the biggest question for me now is how would I participate? Quote Link to comment
Black Pearl Posted December 20, 2010 Author Report Share Posted December 20, 2010 It would be cool to work on this too. I guess the biggest question for me now is how would I participate? You are welcome. I'll send you a PM so we can discuss this in private. Felix Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.