From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
07-24-2020 08:10 AM
@cyongjed wrote:
Hi Wiebe,
I have sat through the CLD exam and obtained my certification. Appreciate your efforts here!
Regards,
cyong
Excellent!
07-26-2020 06:32 AM
Thank you Bill, appreciate it!
07-27-2020 05:18 PM - edited 07-27-2020 05:22 PM
Hey everyone, this is my CLA trial for the Car Wash.
I did not finish it within the 4 hours for the test, and still missing some of the requirements. I left the requirements tag file in there so you all can see what was missing.
Any feedback is more than welcome.
Thanks in advance.
07-28-2020 02:23 AM
@rk__Tinelli wrote:
Hey everyone, this is my CLA trial for the Car Wash.
I did not finish it within the 4 hours for the test, and still missing some of the requirements. I left the requirements tag file in there so you all can see what was missing.
Any feedback is more than welcome.
Thanks in advance.
If I had to pick one, the thing I'd put in a class is the timer. It's the only thing you put in a (unfinished) function global.
I'd also simply wire the stop user event to each module. Why use a buffer for that?
These decisions are not really relevant, I think for CLA you can do as you like. It's just that mixing FG and OO is a bit funky to me.
You've implemented to much stuff. The config database, the error handler. That is not required. Simply make the modules, or even put some text somewhere that a module should be made. But do not implement the module. It's a waste of time, you do not get credit for it.
You don't need to implement a stop event buffer. Simply make a VI, and put the requirements in there. "This VI will buffer the stop event. It's a function global, initialized at startup, and used by each module.". Or even, on the main: " A functional buffer will distribute the stop user event. It will be initialized at start and read by each module. Close the buffer when the program finishes".
Put more time in the tagging. Each tag [Covers: ABC] should also have a small text explaining how it should work. I think this is tested automatically. It does not need to be a lot of text.
07-28-2020 11:18 AM
Hey wiebe@CARYA
Thanks for taking the time to check my solution.
Got your point about the implementation, maybe I'm leaving my developer side take over and do more implementation than necessary.
I didn't get your point about the Class timer you mentioned. Also can you explain what you meant about the use of the stop buffer?
I started my project using the Queue Message Handler Template, which gave me mos of the function for the user event. I wrapped it up in a API to all the modules to use.
07-28-2020 11:42 AM
@rk__Tinelli wrote:I didn't get your point about the Class timer you mentioned. Also can you explain what you meant about the use of the stop buffer?
It seems your timer is going to be a functional global. With the function enum...
FGs have downsides. For instance, if you want a 2nd timer, that's simply not possible if the timer is a FG.
If the FG has 3 functions, init, reset, and read (just as an example) a class timer would have 3 VIs: init, reset and read. But the data would not live in shift registers of a FG, but in the class's private data.
This would give you the complete re-usability of the timer. You could even make an array of timers.
Perhaps I'm wrong about your plans though.
@rk__Tinelli wrote:I didn't get your point about the Class timer you mentioned. Also can you explain what you meant about the use of the stop buffer?
I started my project using the Queue Message Handler Template, which gave me mos of the function for the user event. I wrapped it up in a API to all the modules to use.
The user event is just a reference that is created at the beginning. Not sure what the purpose of a FG is.
You get the same FG problems as mentioned before.
In stead of putting the user event in a FG, you can simply wire the user event reference to each module that you start. The module can then use it.
This saves one FG, but it also let's you see clearly which VIs use the user event. When things get more complicated, this can be a great help. With FGs, you'd always need a find all instances to give you this information.
I like my solutions to be as simple as they can be. A FG when a wire can be used is just complexity that is not needed. It's also what I don't like about frameworks\templates.
Pretty sure this is nothing to worry about for the CLA.
07-28-2020 05:38 PM
Got your point now, thanks for clarifying it.
Yeah I was planning to go for the Timer as a FG in my trial. Maybe it would be a good idea to thing of something different.
Maybe I could simplify the user-event library, giving me more time to the modules itself.
I'll probably take another trial tomorrow or the day after with the ATM or the Elevator Sample exams. I'll try to follow your recommendations and see how is goes, most likely I'll post my solutions here.
Thanks again for checking it out.
08-05-2020 04:38 PM
Hi Folks!
All feedback on the attached solution to the CLA ATM sample exam is highly appreciated!
Can I dump tags in the VI Documentation of the VI like I did in Error Handler - Console Error.vi and get credit since there are instructions for developers to complete this work? This would be my strategy if I run out of time.
Does this seem like a passing solution? Why/why not?
Where do you think I would lose the most points in this solution?
Any other feedback on this exam or general strategy tips will be well received 🙂
Have a great day,
Aaron
12-06-2020 12:39 AM
I would like to expose my Sprinkler exercise to review.
I consider that this exercise could be impacted by non-scalability of zones but, since the certification is coming, I consider expert feedback so critical.
Thanks to who can give me a feedback.
Giorgio.
12-06-2020 03:36 AM
Hi Girigo,
it will be good for you to upload your file as a compressed zip file for the sprinkler CLD Exam as it would be easier for other members to download and vet your code from there. I try opening your code but it was corrupted.....
Regards,
cyongjed