240 likes | 265 Views
Explore the benefits and applications of LabVIEW for fast and efficient software development, featuring drag-and-drop GUI development, wide analysis libraries, and integration with control infrastructure. Learn about the extensive experience and support for LabVIEW, along with real-world examples and proposed frameworks. Discover the covered domains, building blocks, support resources, and future plans.
E N D
Rapid Application Development Environment based on LabVIEW A. Raimondo (AB/CO) ATC/ABOC Days, 21-23 January 2008
Why? A. Raimondo (AB/CO)
CO users applications domains • Beam Control JAVA • SCADA PVSS • Test & Development LabVIEW, MatLab, scripts, etc. Rapid Application Development Environment (RADE) A. Raimondo (AB/CO)
Test & Development applications characteristics • Short lifetime applications(i.e. specific analysis) • Punctually used applications (i.e. expert diagnostics) • Rapidly evolving applications (i.e. machine development) • Stand-alone systems (i.e. test facilities) A. Raimondo (AB/CO)
LabVIEW programming language our contribution Requirements • Fast programming • Rapid learning curve • Drag and drop GUI development • Wide range of analysis libraries • Light/independent environment • Integration with the control infrastructure A. Raimondo (AB/CO)
Other reasons for choosing LabVIEW • We have a deep experience (more then 10 years) • Supported by IT department • Commonly used in accelerators control in other labs: • LabVIEW is one of the main programming language used for accelerator control in ICALEPCS2007 presentations • A world wide LV Accelerator User Group has been set up by ORNL during ICALEPCS2007 • EPICS and Tango have made a LabVIEW interface to their environments, mainly for the same reasons (ease GUI development) A. Raimondo (AB/CO)
…and in AB? LabVIEW is widely used (with custom libraries made by AB groups) A. Raimondo (AB/CO)
Java GUI LV app Server app JAPC FESA 3rd party driver Equip. driver LabVIEW as equipment test tool Integration after test Equipment A. Raimondo (AB/CO)
Example in AB: Optical Interface Board Tester (CO) A. Raimondo (AB/CO)
LV app CMW CMW wrapper LabVIEW as specialist tool Java GUI Server app JAPC FESA Equip. driver Equipment A. Raimondo (AB/CO)
Example in AB: SPS Power Converter View (PO) A. Raimondo (AB/CO)
LV GUI LV2JAPC LabVIEW as GUI Java GUI Server app JAPC FESA Equip. driver Equipment A. Raimondo (AB/CO)
Example in AB: Bunch Shape Measurement (OP) A. Raimondo (AB/CO)
LV app SDDSlib LabVIEW as independent application Java GUI Server app JAPC SDDS FESA Equip. driver Equipment A. Raimondo (AB/CO)
Example in AB: Post Mortem Analysis (CO) A. Raimondo (AB/CO)
Proposed framework A. Raimondo (AB/CO)
Covered domains Test facilities Expert tools Machine development A. Raimondo (AB/CO)
Building blocks 2. Control Integration • Maintained interface libraries • CMW • RBAC • SDDS • DB • JAPC 1. Installation • Clear LabVIEW version policy • NFS installation for Linux • Windows TS installation 4. Development help • Defined GUI • Application templates • Configuration files • Training • Documentation 3. Support • Information Webpage • Mailing list • JIRA for issue tracking • User support A. Raimondo (AB/CO)
The framework Defined GUI Configuration files Application templates Documentation Training LabVIEW libs JAPC SDDS Support Data Bases A. Raimondo (AB/CO)
Workload Manpower for development: • 1.8 FTE (0.3 staff + 1.5 temporary) Planning: • May 2008 (GUI, templates and configuration) • July 2008 (training and documentation) Manpower for support: • 0.5 FTE/year A. Raimondo (AB/CO)
Domains not covered • Applications with operational requirements - structured database configuration - version and release management - continuous monitoring and logging • NI front-end software and drivers for accelerator control A. Raimondo (AB/CO)
ADE Questions? A. Raimondo (AB/CO)