Download presentation
Presentation is loading. Please wait.
Published byStephany Dennis Modified over 6 years ago
1
How to Integrate LabVIEW Applications into a Tango Control System
Tango Meeting – ONERA – Toulouse – France N. Leclercq – Synchrotron SOLEIL
2
About this talk… Aim Part 1 : Part 2 : overview of a work in progress
main motivation: turning a LabVIEW application into a Tango device server Part 1 : foundations & core components of the proposed solution how to write a Tango device in LabVIEW: the laborious way Nicolas Leclercq - Synchrotron SOLEIL Part 2 : solution enhancement on LabVIEW side how to write a Tango device in LabVIEW: the magical way Birgit Ploetzeneder – ELI Beamlines
3
Problem & Solution The problem The current offer The solution
how to integrate subsystems delivered with a LabVIEW interface into a TANGO control system? The current offer the Tango binding for LabVIEW: a pure client platform :-( the DataSocket approach: very limited solution, works but doesn’t scale well The solution add server support to the existing Tango binding for LabVIEW 100% native [no indirection, no intermediate protocol]
4
Tango Bindings for LabVIEW [Vis library] Client VIs
Tango Bindings for LabVIEW [C++ shared library] Client API Client API Tango Core [C++ shared library]
5
Tango Bindings for LabVIEW [Vis library] Client VIs Server VIs
Tango Bindings for LabVIEW [C++ shared library] Client API Server API Tango Core [C++ shared library] Client API Server API
6
LabVIEW Application w/ Tango interface
Tango Bindings for LabVIEW [Vis library] Client VIs Server VIs Tango Bindings for LabVIEW [C++ shared library] Client API Server API Tango Core [C++ shared library] Client API Server API
7
The LabVIEW Server API [main VIs]
Starting up Handling client requests Shutting down
8
The LabVIEW Server API [impl. pattern]
9
The LabVIEW Server API [main VIs]
Cmd ArgIn & ArgOut Get/Set Attr Value Misc.
10
Supported Tango features
So far, support for Tango 9 minus {Pipes, DevEncoded} Pipes support to be studied [e.g. mapping? LV Cluster?] Almost everything configured via POGO e.g. default prop. value, polling, … one exception: inheritance mechanism [to be implemented] Everything taken in charge by the Tango kernel e.g. [write,read]_attributes, events, …
11
Demo: let’s rewrite TangoTest in LabVIEW
Step 1 1.1 - open POGO, 1.2 - define the device interface 1.3 - the generate the XMI file (and nothing else) Step 2 register your device into the Tango database Step 3 specify the path to the XMI file [repository] dedicated PathToPogoXmiFile class property Step 4 implement the device in LabVIEW using the provided VIs done!
12
Thanks! Any question?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.