LabVIEW Interface for Arduino Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

What Arduino board should I buy?

I already have Labview, and would love to use an Arduino for data aquisition, I'm just not sure if labview will only work with specific boards? I would apreciate any help that you can offer.

0 Kudos
Message 1 of 13
(7,800 Views)

Hey,

LIFA (LabVIEW Interface for Arduino) is about to be replaced with LINX which provides more hardware options, ethernet / wifi support for some boards, and much more.  You can start using the LINX open beta by visiting the LINX forums on LabVIEWHacker.com here: https://www.labviewhacker.com/forums/viewforum.php?f=12.  The first thread in the forum contains setup instructions and download links for LINX.

Now to answer your questions the Arduino Uno and Mega 2560 are fully supported (if a bit untested in LINX).  I used the chipKIT uC32, Max32 and Uno32 when developing LINX so they are the most thourouly tested at this point.  In addition the chipKIT Max32 supports ethernet (using the chipkit network shield) and the uC32 supports Wifi (using the chipKIT wifi shield).   You can find the chipkits boards here: http://www.digilentinc.com/Products/Catalog.cfm?NavPath=2,892&Cat=18

Do you have any specific requirements such as number of IO pins, etc?

Thanks,

-Sam K

LabVIEW Hacker

Join / Follow the LabVIEW Hacker Group on google+

0 Kudos
Message 2 of 13
(4,082 Views)

The standard version of LIFA is only compatible with Arduino Uno.  By modifying the standard version of LIFA others have gotten LIFA to work with Arduino Leonardo, Arduino Due and Teensy 2.0.  However, the modification eliminates LIFA's support for stepper motors.

For data acquisition and if you are willing to use LINX or the serial interface capabilities of Labview then you could use any Arduino or Arduino compatible board.   For low cost and a maximum advertised data acquisition rate of 15 KHZ / (number of AD channels being used) use either an Arduino Uno or Leonardo.  Whereas with an Arduino Due or a Chipkit Max32 you can obtain data acquisition rates of 1000 KHz / (number of AD channels being used). 

Note, the maximum data acquisition rate of LIFA is limited to approximately 500 samples per second.  For higher data acquisition rates you will need to use LINX, the serial interface capabilities of Labview or Ethernet.

hrh1818

0 Kudos
Message 3 of 13
(4,082 Views)

Thank you both for the clarification. I do not have a specific project in mind, I am just looking to expand my knowlage of Labview. I see the Arduino as a resonably priced I/O interface. I probably don't need the capabilities of the Max32, but I like having those capabilities as an option. I have a yet to be determined senior design project next year, and would like to use Labview...

0 Kudos
Message 4 of 13
(4,082 Views)

Will the Max32 work Via USB? or is the Eathernet shield required?

0 Kudos
Message 5 of 13
(4,082 Views)

You can use USB with the Max32.

To clarify hrh1818's post above you will not chaive 1000KHz or even 15 KHz sample rates using the LINX software stack.  you can expect something closer to the range of ~300 Hz usin a chipKIt and USB, ~1KHz with chipkit+Ethernet and >10Khz using NI myRIO.

If you can afford the $250 myRIO-1900 price I highly recommend it over any of the others.  You can deploy code to myRIO and run it heaedlessly (the rest of the LINX devices must be tetherd to a desktop / laptop running labview), myRIO has WIFI, FPGA, tons of I/O, USB Host, and is an embedded Linux device (you can play with the Linux OS if you want to but don't have to).

http://sine.ni.com/nips/cds/view/p/lang/en/nid/211694

-Sam K

LabVIEW Hacker

Join / Follow the LabVIEW Hacker Group on google+

0 Kudos
Message 6 of 13
(4,082 Views)

Thank you for the update about the data acquisition speed of LINX.  It looks like if one needs higher data acquisition speeds than what LIFA or LINX  can provide the serial or Ethernet interface capability of Labview is required. 

hrh1818

0 Kudos
Message 7 of 13
(4,082 Views)

I'm not sure what you mean by:

It looks like if one needs higher data acquisition speeds than what LIFA or LINX  can provide the serial or Ethernet interface capability of Labview is required.

LINX uses VISA for serial communication and the LV TCP prims for ethernet communcation under the hood.  The reason sample rates are limited to 300-1000 Hz is a due to the way the LINX archecture works.  In order to keep the LabVIEW API simple each LINX VI sends a packet and waits for a response.  The device sits and waits, doing nothing until it receives a packet.  When it receives a packet it process it and sends a response.  This makes the LabVIEW side easy, but limites the total throughput compared to, for example, the chipKIT broadcasting analog sample data as fast as it can and LabVIEW receiving and processing the data.

LIFA and LINX were designed with easy of use and the most general use case in mind, as a result speed had to be sacraficed in some cases.

-Sam K

LabVIEW Hacker

Join / Follow the LabVIEW Hacker Group on google+

0 Kudos
Message 8 of 13
(4,082 Views)

Hello Sammy<

I mean don't use LIFA or LINX if one needs a higher data acquisition rates than they provide.  Instead use the serial interface capability of Labview to talk directly with an Arduino board to communicate at speeds up to 110,000 bits per second or approximately 11,000 bytes per second.  Or take the next step up and use the Ethernet capability of Labview to talk directly to an Arduino board's Ethernet shield at speeds of 10,000,000 bits per second or approximately1 megabyte per second.

LIFA and LINX are good products for getting up and running quickly with the set of application program interfaces they provide.  But when one runs into the limitations of LIFA or LINX other approaches can be used with Labview to overcome the limitations of LIFA or LINX. 

hrh1818

0 Kudos
Message 9 of 13
(4,082 Views)

hrh1818,

Yes, that is true.  Like I said LINX and LIFA were designed for the general use case and had to make sacrafices as a result.  If you want to optimize your specific application you can speed things up by creating a custom solution.  I doubt you'd ever actually be able to get 1MB/s of useful data with ethernet, but it should be faster than serial.

-Sam K

LabVIEW Hacker

Join / Follow the LabVIEW Hacker Group on google+

0 Kudos
Message 10 of 13
(4,082 Views)