Introduction: Getting Started With LabVIEW
LabVIEW is a really powerful programming language and software that was developed by National Instruments as a way for engineers and scientists to easily code, debug, and communicate to their hardware either in a research lab, industrial setting or even just at home.
This instructable is an introduction into LabVIEW 2014 and the basics on how to get started making a project, building your own VI's and communicating with your hardware.
Step 1: Blank VI or Blank Project?
When you first open up LabVIEW and click "Create Project" it will send you to a list of options of projects, etc to create.
The two main options you'll want to decide between are the blank VI and blank project. Whats a VI, you ask? VI stands for Virtual Instrument - it is a batch of code that is specific to one operation among the many that can be in a full project. LabVIEW has a library of pre-coded VI's, code structures such as for and while loops, and hundreds more.
Blank VI's are great for a simple start. For example, if you're trying to blink an LED using the chipKIT WF32, a blank VI will work just fine.
Blank projects allow you a lot more flexibility. Rather than opening straight into a blank VI, you'll get a list of devices, VI's and build specifications. From here you can add new targets and devices, create new VI's and manipulate what VIs are under what devices.
So it depends entirely on your familiarity and how comfortable you are in the LabVIEW environment. You can always add your VI to a new project, so you're never limited by your choice.
For our instructable's sake, we'll assume you went the blank VI route.
Step 2: Front Panel
When you open your blank VI, it'll open two windows - a front panel and block diagram.
The front panel is a visual representation and helpful tool for user inputs and measurements from the code. Each module on the front panel has a corresponding block or section of code that is created and can be found in the block diagram.
If you right click anywhere in the front panel, LabVIEW has pre-loaded front panel modules. You'll see numeric, boolean, graphs, arrays and many more control choices.
Highlight any of the modules to delete, replace, or move them around the front panel.
Step 3: Block Diagram
The block diagram is where all the magic happens. If you right click, you'll see there are hundreds of VIs and libraries to choose from.
We tie the code blocks together with what structures called wires.
One of my favorite secrets to the block diagram is what is called Context Help. Hit Ctrl+H and it will pop up a small window that gives a little summary of anything you mouse over. It explains the input wires and output wires.
There are also hundreds of example projects LabVIEW has uploaded, accessible right from the application. From the top tool bar, click Help -> Find Examples. From here you'll find sample code on hopefully anything you want to get started with.
Another one of my favorite things about LabVIEW is that it auto checks for broken code. The arrow in the upper left corner of both your block diagram and your front panel will be broken if your code has errors - click the arrow for LabVIEW to show you where the errors are coming from. Once your code has no errors, the arrow will no longer be broken and you can go ahead and run your code by clicking the arrow.
Next to the run arrow is a light bulb, this is my favorite tool for debugging - its called highlight execution. If you have the light bulb selected and run your code, LabVIEW will walk you through where it is in running the code and will show you any errors that pop up.
Step 4: LabVIEW MakerHub
LabVIEW MakerHub is a website of LabVIEW users that is full of open source community projects, tutorial videos on how to get started with programming boards like the Raspberry Pi and the BeagleBone Black, and forums to post and answer questions regarding LabVIEW.
The LabVIEW community is overflowing with members wanting to help each other get started as well as advance knowledge of those currently using LabVIEW.
Good luck and happy programming!