03-10-2018 05:43 AM
Hello,
I would like to know a good Documnetacion of a project in Labview that is recently implemented to be able to base some example and complete the existing documentation in the project of my company.
I hope you can help me.
Thanks
03-10-2018 08:15 AM
I'm a great believer in Documentation, preferably begun no later than when you start to develop your LabVIEW code (best, of course, is before you begin any coding). I strongly recommend two useful tools:
Think about how you want to organize your Documentation. I usually start by Describing the Problem or Task, which might also involve a description of the Hardware or Third-Party Software that needs to be incorporated. There should also be a section discussing Requirements that the Project needs to meet.
What Design Decisions need to be made? What are the considerations that dictate how you make them? The Reader should be able to see the logic behind your choices -- he or she might not agree with them (we all have our prejudices), but your logic should be clear. An example from a recent Document of mine was my description of the Folder/File Structure I employed for the Data Files -- I chose a simple hierarchical Folder Format that had a short Unique Name, a 3-digit numeric suffix for each set of data collected under this Name, with individual Stations (there were up to 24 simultaneous tests being run having an additional 2-digit suffix for the Folder where the specific Station files were stored, leading to a path of the form
\\<Server>\BSTest-002\BSTest-002-03\BSTest-002-03.hedr for the "Header" file for the third Station, second Run of Experiment BSTest). As you can see, I often use my own unique 4-letter Extensions to distinguish the various "flavors" of data files. This makes creating subsequent Analysis or Data Processing routines to deal with the Data able to easily find the files that they need once they are pointed at the root of the File Structure hierarchy.
The best advice, however, is Start Documenting Early, and Document Often. I would say that you should spend at least 20% of your effort (if not more!) in producing Documentation, and definitely should do it as or before you are creating the LabVIEW code.
Bob Schor
03-13-2018 04:41 AM
03-13-2018 05:50 AM
When I started learning LabVIEW, I was in almost the same situation. I inherited a complex Real-Time routine with 160 TypeDefs, 625 VIs, and 12 LLB (containing numerous VIs and Typedefs). None of the VIs or Types were documented. Many of the larger ones had block diagrams that took up to 20 screens to visualize. And it didn't work all that well.
I was tasked with maintaining it, fixing the features that "didn't quite work", and possibly "making it better". What I did was to "Start Over", re-designing the entire Project. I should say that the original code was written in LabVIEW 7.0, which preceded DAQmx and the LabVIEW Project environment, but both were available by the time I began my redesign.
Documentation was a key part of the redesign process. So was using Version Control (TortoiseSVN) and writing test routines as I went. The final product involved about 880 VIs (there were three Support Libraries to handle three slightly-different Versions, depending on the hardware being used) and 150 TypeDefs, with nothing hidden in LLBs. Every VI was documented, and the entire Project was the subject of numerous (10 Word and 32 LaTeX) White Papers, many developed before or during the Coding Process.
This was definitely not an easy process, but it was much quicker and far more productive than attempting to "patch" and repair the design flaws of the original system (we accidentally "did that experiment" -- a talented BME student was using a version of the original code in another lab, and, working together, we "improved" (and documented as we went) some of the sub-systems, but it was still riddled with flaws and barely maintainable).
Bob Schor