02-20-2007 07:08 AM
02-21-2007 07:57 AM
I would be very interested in this as well as someone who is not sure exactly which template to use.
-- Matt
02-21-2007 08:29 PM
Hi Tom,
If you are using LabVIEW 8.0 or later, the templates give a description of
which types of applications can best utilize these structures. Outside of
this, there is nothing that has been created that helps pinpoint exactly what
template to use.
Please let me know if you have any further questions. Best of luck on
your application, and have a great day!!
02-26-2007 05:37 AM
OK,
Thanks Ching. I looked more closely at the descriptions for the design patterns after I read your note. They are good but intuitive -- they don't tell you anything more than can be deduced right from the name! I think it may be worth it to include a "This design pattern is better suited to X application when timing is critical but that design pattern is better if timing is not critical...." or if file management, test sequencing or any other key criteria is the most important, do a same sort of comparison.
Obviously each application and each programmer is different so there is no "right answer" as to the correct design pattern but I know some templates work better than others in different situations -- the queued message handler worked much better for me when designing a diagnostic CAN tool to send and receive specifically requested data from an ECU than the standard state machine. Although, I started designing with the standard state machine and didn't switch to the queued message handler until the code got to be very unmanageable! I could have finished it with the standard state machine -- but forget anyone else being able to figure out what was going on (the cases to go from state to state were getting very complicated). With the queued message handler and the ability to insert or add multiple next steps, the code became much easier to follow.
In the intermediate class, I was given a flow chart that served as a guide to how we chose our design pattern for our project but it was specific to the task for the class, something broader but similar could maybe serve as a good guide.
02-27-2007 04:36 PM
Hi Tom,
If you think that having a list of appropriate applications for a specific
template would be useful, you can submit a product suggestion here.
For more information on the different templates, please take a look at this presentation.
Since LabVIEW is used by a variety of industries, it is difficult to have
examples specific to each industry. That is why the descriptions are
currently so generic.
Please let me know if you have any further questions?
03-01-2007 11:00 AM
Thanks Ching,
The presentation you linked to is what I was looking for. I agree with you that it would be hard to specify design patterns for applications because of the diversity of programs that are written. i think the presentation does an excellent job in showing the pros and cons of each pattern.
03-01-2007 12:22 PM - edited 03-01-2007 12:22 PM
Message Edited by LabViewNubie on 03-01-2007 12:22 PM
03-01-2007 12:33 PM
When a state has more than one transision it can take and the condition required to take more than one of those transisions is true, we need a way to establish a priority for one over the other (Hmm Herman Melville would be proud of that sentance ).
By type casting the increment to each of the transistions the first "true" causes the while loop to terminate and the state transition occurs.
Ben
03-01-2007 12:50 PM
Thank you Ishmael...I mean, Ben! 😉
These state machines are pretty slick. Now only if my application was firing a ray gun...I would be set.
-- Matt