Beruflich Dokumente
Kultur Dokumente
com
Overview
www.bloomy.com
General Objectives
Readability
Readable = user-friendly and maintainable
Robustness
Robust = reliable and bug-free
www.bloomy.com
Controls
Use succinct, intuitive labels Indicate units in parentheses or use free labels Enter descriptions or online help where further text is needed Use transparent background
www.bloomy.com
www.bloomy.com
www.bloomy.com
www.bloomy.com
SubVI Panel Layout Use default appearance for most objects and text
Avoid using many colors, fonts Consider default gray panel with 13-point application font
Size panel adequately, but less than full screen Keep things neat, intuitive, and symmetric
www.bloomy.com
SubVI Example
www.bloomy.com
Icon/Connector Icon
Intuitive text or graphic 10-point small fonts Color-coding for icons of related subVIs
Connector pane
Controls assigned to left terminals, indicators assigned to right Refnum/task ID assigned to top left and right terminals Error cluster assigned to bottom left and right terminals Default values in parenthesis in owned label Priority used where appropriate
www.bloomy.com
Icon/Connector Examples
Nonconforming Conforming
www.bloomy.com
Block Diagram
General
Leave the background color white Set all control labels visible Liberally document with free labels Limit diagram to one 1024 x 768 screen Avoid overlapping objects
www.bloomy.com
Wiring Techniques
Apply
Left-to-right data flow Straight wires
Align objects prior to wiring together
Avoid
Overlapping or obstructed wires
www.bloomy.com
Wiring Example
www.bloomy.com
Diagram Architectures
www.bloomy.com
www.bloomy.com
Use enumerated or string for case selector Poll user interface events in No Event, Default frame or in separate event structure in parallel loop Use intuitive state names Include Initialize and Shutdown states
www.bloomy.com
www.bloomy.com
Nonconforming Example
www.bloomy.com
Conforming Example
www.bloomy.com
Consider desired response to GUI for determining state granularity Consider applicability of queues
www.bloomy.com
Inefficient I/O
www.bloomy.com
www.bloomy.com
Clusters
Group related data into clusters Follow front-panel text guidelines Consider saving as strict type definition Avoid nesting clusters and arrays beyond two levels Always use bundle and unbundle by name
www.bloomy.com
www.bloomy.com
www.bloomy.com
Error Handling
All VIs must trap and report any I/O-related errors that might occur
Trapping is facilitated by propagation of error cluster I/O functions include DAQ, file I/O, instrument I/O, communication Reporting methods include dialog prompt or log to file
www.bloomy.com
www.bloomy.com
www.bloomy.com
www.bloomy.com
Documentation
Use guidelines to document VIs Use LabVIEW custom printing options to create a function reference manual Include specification and/or basic operating instructions to complete documentation
www.bloomy.com
Conclusion
www.bloomy.com
About Bloomy Controls Test, measurement, automation, and control specialists since 1991 Systems integration, software development, and training provider NI Select Integrator and Certified Training Center
3 Certified LabVIEW Architects 8 Certified LabVIEW Developers 1 Certified TestStand Architect 2 Certified TestStand Developers 8 Certified Professional Instructors
www.bloomy.com
www.bloomy.com