09-21-2007 12:46 PM
09-21-2007 01:16 PM
09-21-2007 01:27 PM - edited 09-21-2007 01:27 PM
@Bairoa wrote:
I think it would be to NI's benefit to allow a LabVIEW application to run on a web server, where clients would not first need to download a run-time module and restart their computer.
We recently programmed a demonstration application for a client that wanted to host it on a web server for use by hundreds of its customers. The "download run-time and restart" requirement squelched the deal, however, so we will not be developing the application any further in LabVIEW, if at all. We don't really have the expertise in-house to develop in .NET or Java, so it is likely that another developer will get the contract.
Too bad, because NI would have been able to sell a good number of server simultaneous-access licenses. And my company would have kept a sweet programming contract....
Ted Anderson
Well, I think it is not really feasable. Any of these technics and every other one you didn't mention like Flash, ASP, etc does require it's own runtime. Just because it is installed in a lot of client machines already does not mean that you will not have to make sure it is and take actions if it isn't. Also some of these like .Net will be limited to Windows clients only if you are not a Geek and want to go through the hassles of using Mono (and possibly Wine) which I'm sure is no option for a commercial application.
Why the LabVIEW runtime would need a system restart is a bit miraculous to me but it's probably some dependancy on the huge underlying technology around the network variable engine, and other similar things, which I think NI could quite easily decouple from the LabVIEW kernel so that it is not really a hard dependancy at all. It is not a technology I would consider so important that no LabVIEW application could exist without it especially for web served applications. In fact I have until now not used the network variable or datasocket at all and still created some heavily networked applications so far.
Rolf Kalbermatter
Message Edited by rolfk on 09-21-2007 08:30 PM
09-21-2007 01:27 PM
09-21-2007 02:07 PM
Rolf wrote
In fact I have until now not used the network variable or datasocket at all and still created some heavily networked applications so far.
GO Rolf!
We have an expression used often in our office, "We don't need no stinking shared varaibles!"
I have to confess that I do use datasockets. They are a nice way to get at the FP I/O without knowing the IP address at development time.
RE:THe download for web-access
That download is a rather amazing chunk of code. It effectively moves the GUI updates to the viewers machine and only passes the required data updates.
Ben
09-21-2007 02:17 PM - edited 09-21-2007 02:17 PM
@Ben wrote:
I have to confess that I do use datasockets. They are a nice way to get at the FP I/O without knowing the IP address at development time.
RE:THe download for web-access
That download is a rather amazing chunk of code. It effectively moves the GUI updates to the viewers machine and only passes the required data updates.
Well, the remote debugging is simply a smart extension to that
As to FP acess, I've used the old style Fieldpoint VIs which used strings to create FP tags and that worked equally well with my own poor mans tag engine that could be configured at runtime.
The new VISA like Fieldpoint VIs are just as easy in that respect at least when used with LabVIEW 8.2. I provide a string based configuration file and the string gets then automatically translated into a Fieldpoint resource just as what happens with VISA resources. No need to hardwire Fieldpoint variable names at all. And the IP address is inherently encoded in that Fieldpoint IO point name through the according .iak file.
And the resulting code works equally well on my development machine accessing the Fieldpoint IO points over the network as well as on a CompactFieldpoint RT controller. Just switch the target and execute it.
Rolf Kalbermatter
Message Edited by rolfk on 09-21-2007 09:19 PM
09-21-2007 02:24 PM
HI Rolf,
I may be wrong but I BELEIVE the FP units server their I/O via a datasocket server that runs on the FP unit. That is why I confessed that I do use datasockets.
Ben
09-21-2007 02:37 PM
@Ben wrote:
HI Rolf,
I may be wrong but I BELEIVE the FP units server their I/O via a datasocket server that runs on the FP unit. That is why I confessed that I do use datasockets.
Ben
I'm not sure about the exact details either but I believe the FP network IO talks rather a protocol that NI calls or at least used to call Logos and DS is strictly spoken a subset of that.
Rolf Kalbermatter
09-21-2007 03:33 PM
09-21-2007 03:44 PM