LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

From post-processing to real-time: the fastest way?

Hello!
I've developed a navigation system with a post-processing approach. The industry is really interested in this product but requires a real-time demonstrator. All scripts are in Matlab code and the hardware has an RS232 output.

As I don't have a background in computer science but I'm using Labview for data aquisition, any hint to help me building a RT system is more than welcome!

-Should I have to translate all script into C or C++?

-Does Labview automatically manage the buffer priority?

- Which is the best way to start solving this challenge ??????

I thank you very much in advance for your help!

Best regards,

Quentin Ladetto

==============================================
==
Quentin Ladetto,

Geodetic Engineering Laboratory
Swiss Federal Institute of Technology (EPFL)
EPFL-TOPO, GR-Ecublens, CH-1015 Lausanne, Switzerland

Tel: ++ 41 21 693 27 56
Fax: ++ 41 21 693 57 40

E-mail at: mailto:Quentin.Ladetto@epfl.ch
Internet at: http://dgrwww.epfl.ch/TOPO/personnes/qlo/
================================================
0 Kudos
Message 1 of 2
(3,196 Views)
LabVIEW running in Windows supports Matlab script nodes, which allow you to embed Matlab script directly into a LabVIEW diagram; however, this requires that the Matlab engine also be running in the Windows operating system.

The real-time operating system used by LabVIEW RT does not support the Matlab engine and consequently does not support Matlab script nodes. However, if you translate the script into C, you might be able to run it under the real-time operating system via a code interface node or call library function in LabVIEW. The code interface node allows you to link to external C code, which has been compiled into a LabVIEW sub-routine, while the call library function links DLLS to LabVIEW.

We do not yet officially "support" the use of call library nodes or
code interface nodes in the real-time environment, but I do know that customers are doing it and have been successful. The reason we do not officially support these nodes is because there is currently no way to debug the compiled external code from within the LabVIEW environment, and we also do not publish a comprehensive list of all supported functions.

Hint: The real-time operating system supports a significant subset of the Win32 API and I would imagine most (if not all) of the ANSI C library. Again, this is not officially supported yet, but it is possible in many cases.

To answer your other questions, LabVIEW allows the user to establish code priority, which is fully respected by the real-time operating system we use. As for RS-232, this is a handshaking protocol and is therefore not a capable of "real-time" performance. When performing instrument control via RS-232 or GPIB, we recommend a multithreaded application, which confines the instrument control to a separate lower pr
iority thread, allowing the time-critical code to operate in its own high priority thread.
Message 2 of 2
(3,196 Views)