LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Using a remote device (tablet, phone, etc) to provide a user-interface for LabVIEW

With the recent introduction of Data Dashboard for LabVIEW (https://decibel.ni.com/content/docs/DOC-19387) I thought I would re-examine the various methods of using a remote device to provide a user-interface for LabVIEW. In my case, I want to use three in-wall iPads spread around my house to provide the user interface for an upcoming home automation system programmed in LabVIEW. There are also other applications I have in mind for using a remote device to provide a user-interface for LabVIEW.

 

So, on the weekend I searched the web for the various products that provide such a facility. I was surprised by the number of methods - and I probably didn't get them all!

 

Firstly, the ideal solution would be one that fulfils the following requirements:

1) Client can be a standard web browser without any plug ins (eg HTML5 + SVG)

2) Minimal coding (and only at the server/LabVIEW side)

3) Inexpensive

4) Client able to have push buttons, indicators, images and graphs

5) Fast and efficient

 

Here are the products that I've found so far:

 

Product

Detail

Price

Remote Devices

Note

TouchOSC

https://decibel.ni.com/content/docs/DOC-12289, http://hexler.net/software/touchosc

$4.99

iPhone, iPad, iPod Touch

 

TouchOSC for Android

http://hexler.net/software/touchosc-android

free

Android

 

VIRemote

http://throwlab.com/VIremote/index.html

$20.99

iPhone, iPad, iPod Touch

 

VIRemote Free

 

free

iPhone, iPad, iPod Touch

 

LabVIEW Web Services

http://zone.ni.com/devzone/cda/tut/p/id/7350

free

?

 

LabSockets

http://decibel.ni.com/content/docs/DOC-14226

free

Any web browser

 

HTML5 & SVG

See Note 1

free

Any web browser

1

Data Dashboard for LabVIEW

https://decibel.ni.com/content/docs/DOC-19387

free

iPad, Android Tablet

 

LabVIEW Web UI Builder

http://zone.ni.com/devzone/cda/tut/p/id/11602

$1,499

Any web browser

2

 

Notes:

 

1) http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Support-for-HTML5-and-SVG-in-Web-Publishing-Tool/idi-p...

2) Price is $1,499 + $300/year

 

I would be interested to hear from anyone who has used any of these products and to comment about how easy they are to use and how many of the 5 requirements it fulfils. Also, if anyone knows of another product, please let us know. Once I have this information (and play with some myself), I'll put together a summary.

Message 1 of 34
(9,935 Views)

Hi,

 

Data Dashboard for LabVIEW is the newest thing from National Instruments for iOS.  I have personally used it on an iPad and it runs great.  The only limitation you will have is the current release of Data Dashboard only lets you monitor variables.  You will not be able to have push buttons, numerical controls, etc.  Using LabVIEW Web UI Builder will allow you to monitor variables as well as have pushbuttons to control certain parameters.  You have to option of trying Web UI builder for free.

 

Another thing you may try is using a desktop client on the iPads.  This will allow you to control your desktop/laptop computer with you iPad.  You could create and run the VI on your computer and then use a remote desktop application on the iPad to control the front panel.  I have used these applications on my personal iPad and it is just like having my desktop on my iPad.

 

Regards,

 

Greg H.

Applications Engineer
National Instruments
0 Kudos
Message 2 of 34
(9,831 Views)

Trivial, but true: VNC-based remote control works fine on both iPad and Android. And it is platform-independent. I use an iPad and an Android phone to control a LabVIEW program running on Linux.

 

Sergey

0 Kudos
Message 3 of 34
(9,811 Views)

Hi Greg,

 

Yes, I look forward to the next release of Data Dashboard for LabVIEW, which will hopefully have controls ans well as indicators and runs on an iPhone. LabVIEW Web UI Builder is way outside my price range.

 

When you say desktop clients, are you talking about VNC-based clients? You mentioned you've used these applications. Can you tell me which one/s?

 

Hi Sergey,

 

Although the VNC-based remote controls are versatile, for my aplciations, I just want to present a user interface. Something that fulfils aparticualr requiremnt. Just like when a web page is accessed. Everythign is well formated and at hand. NI's Data Dashboard for LabVIEW looks like it will do all this, in due course.

 

Regards,

Vito

0 Kudos
Message 4 of 34
(9,749 Views)

Hi Vito,

 

The desktop clients I have used are VNC based.  The one I am currently using to run my desktop from my iPad is Desktop Connect by Antecea Inc.  I know there are several other ones available in the app store though.  If you are simply trying to display and interact with the front panel, the VNC clients will work although they provide way more funtionality.  However, since you stated Web UI builder is to costly, the VNC clients are relatively inexpensive. 

 

Regards, 

 

Greg H.

 

Applications Engineer
National Instruments
0 Kudos
Message 5 of 34
(9,698 Views)

Review of TouchOSC

 

TouchOSC uses the open, well-documented OSC protocol (basically the next version MIDI). The example code works well. As for any method, if working in a corporate environment you need to get around the issue of firewalls.

 

The remote/Client front panel has to be separately written. This is easily done.

 

There are a collection of 13 controls/indicators as follows: LED, Label, Push Button, Toggle Button, XY Pad, Fader/Rotary, Encoder, Battery, Time, Multi-Toggle, Multi-XY, Multi-Push and Multi-Fader (see http://hexler.net/docs/touchosc-controls-reference for details). The LED and Label are indicators. The rest are controls, however you can write to the controls. The problem with writing to controls is that a Client user can move the control that you intended as an indicator. It would be possible, in turn, to write straight back to the “control”, but the jerking operation may be disconcerting to users.

 

The LabVIEW code is very easy to understand and minimalistic. The protocol sends short human-readable messages (except for the value component which is straight binary).

 

Match to selection criteria:

1) Client can be a standard web browser without any plug ins? No (however an OSC client is probably available for most remote devices)

2) Minimal coding (in LabVIEW): No (front panel needs to be created on Client)

3) Inexpensive? Yes

4) Client able to have push buttons, indicators, images and graphs? No (images and graphs not possible)

5) Fast and efficient? Yes

 

In summary, TouchOSC is a quick to implement, simple, inexpensive and efficient method of providing a user interface with good controls, but effectively limited to just two indicators – LED and Label. For many remote user-interfaces this product is sufficient and simple.

Message 6 of 34
(9,668 Views)

Review of VIremote

 

VIremote works well and presents the VI block diagram on the remote device. Anything placed on the front panel magically appears on the remote device. As for any method, if working in a corporate environment you need to get around the issue of firewalls.

 

The example code is a bit complex. I image this could be refined to have a VIremote Open.vi, “your code” and a VIremote Close.vi.

 

One thing that surprises me is that VIremote was introduced about  2 years ago, but has not caught on and hasn’t been elaborated with user documentation.

 

It’s difficult to work out what the message protocol is or the implementation method. I suspect it uses the same method as LabSockets in that it performs a screenscrape of the LabVIEW front panel.

 

Match to selection criteria:

1) Client can be a standard web browser without any plug ins? No

2) Minimal coding (in LabVIEW): Yes

3) Inexpensive? Yes

4) Client able to have push buttons, indicators, images and graphs? Yes

5) Fast and efficient? No (not sure and willing to update this if anyone has some info)

 

In summary, VIremote is quick to implement and inexpensive. It is however (currently) somewhat complex and there are some concerns about its efficiency. It is very versatile in that anything on a VI front panel is perfectly rendered on the Client. With some better promotion, support and user documentation, this product could be a real winner.

Message 7 of 34
(9,667 Views)

I believe that LabVIEW Web UI Builder would need to communicate with a browser that had the MS Silverlight plug-in installed. That would count out using IPads and iPhones.

0 Kudos
Message 8 of 34
(9,628 Views)

Thanks Roger. I'll update the table when I wrap up this topic.

0 Kudos
Message 9 of 34
(9,602 Views)

Review of LabVIEW Web Services

 

After spending two hours trying to get the example to work, I gave up. Reading the forums show similar problems. And in my case, I was using localhost! Has anyone got the examples to work? What did you think?

 

However, reading http://zone.ni.com/devzone/cda/tut/p/id/7350 told me enough about how it works and how good it is.

 

The Server won’t run on a Macintosh. The Client “requires expertise in a text-based language to develop a user interface to interpret and display information”. And the client cannot be on an iPhone or iPad (or Android I suspect).

 

If one of my criteria was ease of getting the example to work it would have failed miserably. However, I’ll keep to the five criteria originally listed.

 

Match to selection criteria:

1) Client can be a standard web browser without any plug ins? No

2) Minimal coding (in LabVIEW): No (Client side programming required)

3) Inexpensive? Yes

4) Client able to have push buttons, indicators, images and graphs? No (not without a lot of work)

5) Fast and efficient? Yes (I imagine that there is little network traffic required.)

 

In summary, LabVIEW Web Services needs a lot of work to get going, only runs on a limited Servers and Clients and requires a Client side browser plug-in. Not very appealing.

0 Kudos
Message 10 of 34
(9,523 Views)