12-15-2014 10:45 AM
I'm getting ready for an upcoming CLD exam and would appreciate feedback on my version of the sample ATM exam.
12-15-2014 02:47 PM
Not bad in general:
writing data to a control is better done with a local than a p-node and tunnels belong on the sides of structures there was no reason to wire to the bottom of that case structure
the biggest hit though:
Lets play a game of "How many things can you find wrong in this picture?" Guys- let the OP play before you chime in.
12-15-2014 03:42 PM
1) "Get Account Holders Balance.vi" not used and should have been been removed from the project and the file deleted
2) "Get Accound Holders Name.vi" and "Update Account Holders Balance.vi" not used and should have been deleted
3) "Automatic Teller Machine_State.ctl" should have been saved to the "Controls" folder
4) "Read Account Info.vi" & "Save Account Info.vi" should have been saved to the "SubVIs" directory
How am I doing so far?
12-15-2014 03:59 PM
@LesPeters wrote:
1) "Get Account Holders Balance.vi" not used and should have been been removed from the project and the file deleted
2) "Get Accound Holders Name.vi" and "Update Account Holders Balance.vi" not used and should have been deleted
3) "Automatic Teller Machine_State.ctl" should have been saved to the "Controls" folder
4) "Read Account Info.vi" & "Save Account Info.vi" should have been saved to the "SubVIs" directory
How am I doing so far?
Fairly good. Personally I don't care what the structure is like on disk (for small projects) but the virtual folders should always exist and populated with the correct vis. Dependancies should all collapse nicely into Vi.lib, User.lib and Instr.lib (perhaps a few others) Project Items in dependancies is a very bad habit! Don't do it in public!
01-19-2015 12:52 PM
This is my first attempt at the CLD practice exams. I chose the car wash for my first one.
A couple of things:
- I spent 30 to 40 minutes getting the state machine set up. I forgot that it can be a pain to copy files over from another project. I need some practice here.
- No error handling state. Do I need more error handling than the general error handler at the end?
- Although I got most of the car wash working, I was unhappy with how i did the slider vs. car position. I think i need to figure a better way to do this next time. The first step is sometimes broken if the slider isn't in the entry position.
- Do I need to break the car wash state into subvi's?
- Any other thoughts?
Regardless, I did way better than I thought I was going to as I documented what I thought I needed and finished a working program in the 4 hour time period.
01-19-2015 01:46 PM
Some general comments:
A few tweaks to thought process and you'll do better
01-19-2015 07:09 PM
Ezags,
The only thing I would add to Jeff's list is to watch out for wires that end up meandering through the BD, this was most noticable at the end of the Car Wash State. You would almost definitely lose points for having those wires like that.
01-19-2015 10:09 PM
I do have too mention.... I do have a job during the day. Like many who post to this board! If we don't criticize it you did that part right! I consider it more important to tell you where I felt you need to improve. This is not a forum to ask for ego-stroking! Honestly, a close to pass fail! Error handling and, your CLD will have a file IO component the sample missed. The timing component will be similar! Xvis will not "cut the muster"
You have some understanding and a lot of resources available. Do use them!
01-19-2015 10:35 PM - edited 01-19-2015 10:36 PM
@Jacobson-ni wrote:
Ezags,
The only thing I would add to Jeff's list is to watch out for wires that end up meandering through the BD, this was most noticable at the end of the Car Wash State. You would almost definitely lose points for having those wires like that.
If you use subVIs, it will save you from a lot of what Jacobson wrote about. The main reason is every time you enlarge your workspace to cram more code into your block diagram, you stretch wires in all sorts of strange ways. If - as is most likely - you are doing this inside a case structure, all the wires in the other cases get stretched, too. You can even end up with the dreaded wires running behind objects and structures. Which I saw in a couple of places. Big frowns for that kind of stuff. But make sure the subVIs make sense. Resist making subVIs from existing code. Instead, make a subVI with a purpose in mind. It will have a specific function; usually, it will correspond directly to a paragraph in the requirements. (Then the documentation becomes easy. Just copy the paragraph as your subVI description and there you go.)
You don't have to go crazy with the subVIs, but they will sure help you organize your block diagram - and your thoughts.
01-20-2015 03:14 AM
Good points: Documentation
not using subVIs is another major negative point. Using subVIs shows your ability to modularise code, the abscence ...
1 to 2 subVIs is usually enough for the CLD
@Jeff: was there a private message complaining about your feedback as I can't see any complaints about your fully justified feedback on here?
@Ezags: if you did indeed complain about getting some feedback which might actually help you to pass your CLD I would recommend you have a look at some of the feedback that I have given on this forum. I'm usually ruthless. I don't see a point in telling people that they are ready when they are not. It's just going to de-moralise you when you don't pass and it's costing you or your company money. The actual exam is VERY stressful and you will do worse than the sample exams. If you can't score an estimate 33-35/40 in a mock exam you will likely fail the real thing.