Language - LabVIEW: Difference between revisions

From Phidgets Support
No edit summary
Line 117: Line 117:


==Common Problems and Solutions/Workarounds==
==Common Problems and Solutions/Workarounds==
===Issue: Events can occasionally cause issues, especially when there are multiple of the same type of event in a single vi.===
In other words, if you open 2 Interface Kits and have a sensor change event for each one your system can behave unpredictably.  To solve this issue you have to stop using events and simply poll the device.  Events work similarly to polling in LabVIEW anyway and should not cause substantial performance changes to your application.


Note that Phidgets do not always work cleanly in Labview.  Sometimes they do not appear, sometimes they work veeerrryyy slowly.  No known fixes yet, hopefully soon.
Note that Phidgets do not always work cleanly in Labview.  Sometimes they do not appear, sometimes they work veeerrryyy slowly.  No known fixes yet, hopefully soon.

Revision as of 19:40, 20 June 2012


LabVIEW, developed by National Instruments is dataflow programming language for data processing.


Introduction

Template:LanguageSupport

Quick Downloads

Template:QuickDownloads

Getting started with LabVIEW

If you are new to writing code for Phidgets, we recommend starting by running, then modifying existing examples. This will allow you to:

  • Make sure your libraries are properly linked
  • Go from source code to a test application as quickly as possible
  • Ensure your Phidget is hooked up properly

Windows (2000/XP/Vista/7)

Description of Library Files

LabVIEW programs on Windows depend on the following two items, The installers in the Quick Downloads section put only the phidget21.dll into your system. You will need to manually put the Phidget LabVIEW library onto your system:

  • phidget21.dll contains the actual Phidget library, which is used at run-time. By default, it is placed in C:\Windows\System32.
  • Phidgets LabVIEW library contains the Phidget library for LabVIEW. You need to place the library into your LabVIEW functions palette. Instructions are explained in the Write Your Own Code section.

If you do not want to use our installer, you can download the phidget21.dll and manually install it where you want; refer to our Manual Installation Instructions.

We include instructions for LabVIEW 2011 on using our examples and writing your own code.

Use Our Examples

To run the examples, you first download the examples found in the Quick Downloads section and unpack them into a folder. Here, you will find the examples folder, which contains vi programs for all the devices. Each vi example demonstrate the usage of a few of the device's properties. To get a broader understanding of the device, you should take a look at all the vi examples inside the directory for your device. The source file will be named the same as the software object for your device. If you are not sure what the software object for your device is, find your Phidget on our webpage, and then check the API documentation for it.

1. Inside the examples folder, navigate to the directory for your device.

2. Open up any .vi of your choice in LabVIEW. In this section, the Sensor to Output Example.vi of the PhidgetInterfaceKit examples will be used.

Front Panel

You will see the front panel of the example. The front panel shows the user interface of the vi program.

3. Next, let us take a look at the block diagram by navigating to Window → Show Block Diagram.

Block Diagram

The block diagram shows the logic of the application.

Block Diagram

4. The only thing left to do is to run the examples! Navigate to Operate → Run.

Run

5. The application will run.

Run

You can determine that your device is connected to your application if you see the indicator for attached turn green and the correct serial number is displayed. These features are available in most of the example vis we provide.

6. When you are ready to terminate the application, click on the Stop button to release the hold on the device. Please keep in mind that the application may not terminate properly if you stop it by clicking on Operate → Stop.

Once you have the LabVIEW examples running, we have a teaching section below to help you follow them.

Write Your Own Code

When you are building a project from scratch, or adding Phidget function calls to an existing project, you'll need to add the Phidget LabVIEW library to your development environment. To begin:

1. Navigate to Tools → Advanced → Edit Palette Set to modify the functions palette.

Edit Function Palette

2. The functions palette will show up. Right click an empty area, and select Insert → Subpalette.

Insert Function Palette

3. Next, select Link to a directory.

Link to a library

4. Make sure you have the Phidget LabVIEW library and examples in the Quick Downloads section downloaded and extracted. After extracting, you will find the Phidgets folder. In LabVIEW, browse to the Phidgets folder, and select Current Folder.

Select Phidgets library

This will load the Phidget LabVIEW library into the functions palette. You can find all the functions that pertain to Phidgets inside the Phidgets palette.

Phidgets LabVIEW Library

5. Click on Save Changes in the Edit Controls and Functions Palette Set window.

Save Function Palette

The project now has access to the Phidget function calls and you are ready to begin coding.

The same teaching section which describes the examples also has further resources for programming your Phidget.

Follow the Examples

By following the instructions for your operating system and compiler above, you probably now have a working example and want to understand it better so you can change it to do what you want.

Since LabVIEW is a graphical language, the best way to get the 'code snippets' you need is to take them from our examples. The best way to find what blocks exist and how to use them is probably to switch between the block diagram view and the GUI view between examples that apply to you. This will allow you to use pieces from our examples to create your own LabVIEW application.

Your main reference for writing LabVIEW code will be our LabVIEW API information, with syntax for all of our functions:

Template:UsingAPhidgetInCodeGeneral

If you are really getting in to using Phidgets, you probably want our more general programming resources as well. Although these are focused on the text-based languages that we support (C++, Java, etc), the concepts remain the same on how Phidgets are used within code. Our General Phidget Programming page gives more information about:

Of course, most of these concepts are covered using block flow within LabVIEW, but knowing the general order of operations can help you structure your code.

Common Problems and Solutions/Workarounds

Issue: Events can occasionally cause issues, especially when there are multiple of the same type of event in a single vi.

In other words, if you open 2 Interface Kits and have a sensor change event for each one your system can behave unpredictably. To solve this issue you have to stop using events and simply poll the device. Events work similarly to polling in LabVIEW anyway and should not cause substantial performance changes to your application.

Note that Phidgets do not always work cleanly in Labview. Sometimes they do not appear, sometimes they work veeerrryyy slowly. No known fixes yet, hopefully soon.