12-04-2014 09:15 AM
@Blokk wrote:
For fun, I did the boiler exam example (could not finished, but almost in 4 hours).
I made a mistake, and I said, ok, lets go with Queued state machine + Events. I have created a very very complicated design.
Ok, lets see the provided solution. I started to bang my head to the table 😄 Totally beautiful and simple state machine, no Events. Small and neat...
Hehe, lesson learned, do not use screw driver when you need a hammer...
It also has to do with how comfortable you are with the use of the tools. Some people have done beautiful solutions using a QMH, it might be overkill, but if that is what they use on their day to day work, they might be faster using that design pattern. Others have done it using a simple state machine with an Idle state that handles the events. This is specially true if you start with one of the Project Templates you can use by clicking on the Getting Started Window Create Project>>Templates.
These Project Templates ship with LabVIEW, so they are available for your use as a springboard the day of the test. There is one for a state machine and there is one for a QMH.
12-05-2014 07:51 AM
huhh, pretty cold day in Münich 🙂 I am just after the CLD exam. I have to say the task which I got was NOT harder compared to the example exams 🙂
I followed the following strategy: to save time, I skipped the FILE read and data parsing subVI in the beginning, but I commented why ("feature to be added later, only if I have enough time at the end") and how I would do it (file load and data parsing into my array of typdef cluster).
I finished the code and documented every part (icons, labels, descriptions, tipstrips, and so on...).
In the task, there were two possible user actions which could PAUSE an ongoing action (I mean the main action cycle of the system). I did not have time to integrate one of these 2 functions, so this feature is missing (but I have documented about this missing feature, noting that either I need an FGV or an additional state in the state machine in order to get this feature work).
Otherwise, the main features of the system work (as much as I had time to test it), it goes through timed cycles, displays info (counting down and showing Step X of Y), can be aborted any time, also checks for errors (and initiates a proper shutdown cycle if error happens or stop button pushed).
So at least I managed to avoid a broken arrow at the end. 🙂
And it was fun! In January I will get the result, and I will see my points...
An additional advice if you do CLD in Münich: do not eat the famous "schweinshaxe" the night before the exam! 😄