LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Security System CLD Example Solution Review

Can someone give me a critique on my solution?  I'll be taking the CLD exam in a few weeks and I need all the help I can get.  I've been studying this forum, Peter A. Blume's The LabVIEW Style Book, and the the Style Checklist in the online help to get insight on app development and style. 

 

I used a state machine with an event structure in the "Idle" state.  Is that considered an "excessive" use of a structure.   I also have the following concerns:

  • I'm worried about the fact that I had to use property nodes to change LED color.
  • There's a coercion dot when passing a cluster reference to a subVI.
  • Would I be penalized for using an invoke node to initialize controls?
  • Should the functionality in "Decode Switches" be put into a subVI?

 

I thought I was finished after 4 hours, but then I noticed I missed the log file requirement and had to go back.  That took me a little while longer and a big design change.

 

I plan to go over the style checklist myself and do a self evaluation, but I guess another set of eyes wouldn't hurt.

 

My solution is attached as a project for LV 8.2.1 or above.

 

Thanks for any advice you can give.

 

Arvont Hill

0 Kudos
Message 1 of 3
(3,158 Views)

Hi Arvont,

 

I have two comments:

 

1. You can get rid of a coercion dot  if you create a control by clicking on a Zone Status Indicators green wire, then cut the control from the front diagram (Ctrl+X) and paste into front diagram of Set Zone vi. Once you do that you will realize you don't have to navigate to more specific class because you will have the reference you want.

2. I don't know if your program is required to work as a standalone executable. If it does, then you will have a problem with your Log Event vi. Specifically, the  Current VI path won't give you same path as in development version and you need to do one more Strip Path if the code runs as executable.

 Good luck!

Serge 

Message 2 of 3
(3,141 Views)

Thanks Serge,

 

Your solution worked.  I also forgot that I could manipulate a new property node from the Application palette to whatever Class and property I need which also removes the coercion dot and the need for the navigate to specific class VI.

 

I agree with your comment on the Log Event VI, and I'll investigate more.

 

Arvont 

0 Kudos
Message 3 of 3
(3,134 Views)