Industrial Control Engineering ADE Rapid Application Development Environment based on LabVIEW.

Slides:



Advertisements
Similar presentations
Cookies, Sessions. Server Side Includes You can insert the content of one file into another file before the server executes it, with the require() function.
Advertisements

LabVIEW Introduction Alan Jennings.
CS320n –Visual Programming LabVIEW Foundations. Visual ProgrammingLabVIEW Foundations2 What We Will Do Today Hand back and review the midterm Look at.
PC Applications Course LabVIEW: Laboratory Virtual Instrument Engineering Workbench Graphical Programming Easy to use Faster Development Time.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
LabVIEW Basic I with RADE introduction A. Raimondo (EN/ICE)
Industrial Control Engineering Industrial Controls in the Injectors: "You (will) know that they are here" Hervé Milcent On behalf of EN/ICE IEFC workshop.
Rapid Application Development Environment based on LabVIEW A. Raimondo (AB/CO) ATC/ABOC Days, January 2008.
TIBCO Designer TIBCO BusinessWorks is a scalable, extensible, and easy to use integration platform that allows you to develop, deploy, and run integration.
Agenda Adaptation of existing open-source control systems from compact accelerators to large scale facilities.
Infinity-project.org Engineering education for today’s classroom The Infinity Project SM LabVIEW for The Infinity Project.
Course contents 1.Labview basics – virtual instruments, data flow, palettes 2.Structures – for, while, case,... – editing techniques 3.Controls&Indicators.
Linux Operations and Administration
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
Tips and Tricks to Speed LabVIEW Development Useful Nuggets to Save You Time ni.com/labviewzone.
Overview of SQL Server Alka Arora.
LabVIEW an Introduction
Industrial Control Engineering PXI software support and accelerator integration.
W. Sliwinski – eLTC – 7March08 1 LSA & Safety – Integration of RBAC and MCS in the LHC control system.
Each VI has 2 Windows Front Panel User Interface (UI) –Controls = Inputs –Indicators = Outputs Block Diagram Graphical Code –Data travels on wires from.
Design of Bio-Medical Virtual Instrumentation Tutorial 3.
Software Engineering 2003 Jyrki Nummenmaa 1 CASE Tools CASE = Computer-Aided Software Engineering A set of tools to (optimally) assist in each.
Data Acquisition Data acquisition (DAQ) basics Connecting Signals Simple DAQ application Computer DAQ Device Terminal Block Cable Sensors.
Drag and Drop Display and Builder. Timofei B. Bolshakov, Andrey D. Petrov FermiLab.
LabVIEW in 3 Hours. What is Test & Measurement? Keypad Functionality Keypad Functionality LCD Testing LCD Testing Sound Quality Sound Quality Acoustic.
Web Server Administration Chapter 7 Installing and Testing a Programming Environment.
An Introduction to Designing and Executing Workflows with Taverna Katy Wolstencroft University of Manchester.
Making LabVIEW look like an IOC Kay-Uwe Kasemir, LANL May 2002.
11 CORE Architecture Mauro Bruno, Monica Scannapieco, Carlo Vaccari, Giulia Vaste Antonino Virgillito, Diego Zardetto (Istat)
Selected Topics in Software Engineering - Distributed Software Development.
An Introduction to Designing and Executing Workflows with Taverna Aleksandra Pawlik materials by: Katy Wolstencroft University of Manchester.
Creating Graphical User Interfaces (GUI’s) with MATLAB By Jeffrey A. Webb OSU Gateway Coalition Member.
Session 1 Introduction  What is RADE  Technology  Palette  Tools  Template  Combined Example  How to get RADE  Questions? RADE Applications EN-ICE-MTA.
Industrial Control Engineering ADE Rapid Application Development Environment based on LabVIEW.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
F Drag and Drop Controls Display and Builder (Synoptic Display) Timofei Bolshakov, Andrey Petrov Fermilab Accelerator Controls Department March 26, 2007.
Presented by Vishy Grandhi.  Architecture (Week 1) ◦ Development Environments ◦ Model driven architecture ◦ Licensing and configuration  AOT (Week 2)
Floyd, Digital Fundamentals, 10 th ed EET 2259 Unit 9 Arrays  Read Bishop, Sections 6.1 to 6.3.  Homework #9 and Lab #9 due next week.  Quiz #5 next.
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
Differences Training BAAN IVc-BaanERP 5.0c: Application Administration, Customization and Exchange BaanERP 5.0c Tools / Exchange.
Prepared by: Zorin Evgeny Today, everybody wants a dashboard. Like many newcomers to the technology scene, dashboards are sexy. Stephen Few, Information.
Programming Configuration Files in LabVIEW David Thomson Systems Integrator Original Code Consulting National Instruments Alliance Member Research Scientist.
Connecting LabVIEW to EPICS network
Industrial Control Engineering ADE Rapid Application Development Environment based on LabVIEW 1.
Institute for the Protection and Security of the Citizen HAZAS – Hazard Assessment ECCAIRS Technical Course Provided by the Joint Research Centre - Ispra.
Institute for the Protection and Security of the Citizen HAZAS – Hazard Assessment ECCAIRS Technical Course Provided by the Joint Research Centre - Ispra.
EPICS and LabVIEW Tony Vento, National Instruments
DIAMON Project Project Definition and Specifications Based on input from the AB/CO Section leaders.
Sources, Targets and Interactions LabVIEW and the LHC.
Advanced Task Engine Doing Cool Stuff with Cool stuff!
The MA section of AB/CO FirstEvent Welcome ! RADE Information Event Adriaan Rijllart (AB/CO) 2 Outline 10:00 The context 10:15 Introduction to RADE 10:35.
BE – RF CLEX TBM Cooling System Software Perspective (DAQ and analysis) A. Zelios, BE - RF1 A. Zelios A. Vamvakas.
Industrial Control Engineering ADE Rapid Application Development Environment.
Introduction to Core Database Concepts Getting started with Databases and Structure Query Language (SQL)
MEH108 - Intro. To Engineering Applications KOU Electronics and Communications Engineering.
Excel Services Displays all or parts of interactive Excel worksheets in the browser –Excel “publish” feature with optional parameters defined in worksheet.
Industrial Control Engineering Session 1 Introduction  What is RADE  Technology  Palette  Tools  Template  Combined Example  How to get RADE 
ADE Alessandro Raimondo (ICE/MTA) ICE workshop, 23 th April 2009.
Wednesday NI Vision Sessions
LabVIEW Core I with RADE introduction EN/ICE/MTA.
LHC Post Mortem Workshop - 1, CERN, January 2007 (slide 1/52) AB-CO Measurement & Analysis Present status of the individual.
ADE today Adriaan Rijllart EN-ICE-MTA RADE workshop, Adriaan.
LabVIEW and the LHC.
ADE Rapid Application Development Environment based on LabVIEW
Improving Scilab’s Xcos User Interface
ADE today RADE workshop, Adriaan EN-ICE-MTA.
ADE Rapid Application Development Environment based on LabVIEW
Training Module Introduction to the TB9100/P25 CG/P25 TAG Customer Service Software (CSS) Describes Release 3.95 for Trunked TB9100 and P25 TAG Release.
EET 2259 Unit 9 Arrays Read Bishop, Sections 6.1 to 6.3.
Presentation transcript:

Industrial Control Engineering ADE Rapid Application Development Environment based on LabVIEW

Industrial Control Engineering Outline  MTA  Why RADE?  The challenge  Coping with large applications  RADE today  Hands On session

Industrial Control Engineering EN-ICE-MTA

Industrial Control Engineering Why was RADE developed?

Industrial Control Engineering The Origin Magnets 1750 Circuits Tests

Industrial Control Engineering The Challenge

Industrial Control Engineering The Challenge Linux Windows Mac GPN TN DB CMW RBAC Timing Files PLC DAQ

Industrial Control Engineering RAD(E) RAD(E) (rapid application development) is a concept that products can be developed faster and of higher quality through:  Gathering requirements  Prototyping  Defer design improvements to the next release  Less formality in reviews and communication  Re-use of software components

Industrial Control Engineering The Scope Short development time applications Rapidly evolving applications Punctually used applications Stand-alone systems

Industrial Control Engineering  Fast programming  Rapid learning curve  Drag and drop GUI development  Wide range of analysis libraries  Light/independent environment  Integration with CERN infrastructures LabVIEW Initial Requirements

Industrial Control Engineering RADE Applications EN-ICE-MTA11 RADE Palette

Industrial Control Engineering Training Support LabVIEW TemplatesConfiguration filesDocumentation DB Files JAPC libs PLCCMWJava The Framework

Industrial Control Engineering 13RADE Applications EN-ICE-MTA LabVIEW user application LabVIEW C/C++ shared lib Java Server SDDS PLC MTA-lib RBACRIO SQL TGM ALARM eLogBook RADE Core Technology

Industrial Control Engineering RADE Applications

Industrial Control Engineering 15 RADE Applications

Industrial Control Engineering Coping With Large Applications

Industrial Control Engineering  Fast programming  Rapid learning curve  Drag and drop GUI development  Wide range of analysis libraries  Light/independent environment  Integration with CERN infrastructures  Source control and distribution  Instance generation  Dedicated templates LabVIEW Large Application Requirements

Industrial Control Engineering Source Control

Industrial Control Engineering Distribution RADE Installer

Industrial Control Engineering Project Generator

Industrial Control Engineering Typical design Create, Use & Destroy

Industrial Control Engineering Dedicated Templates

Industrial Control Engineering Development help  Design patterns and templates in RADE  LabVIEW Guides  Code review: make LabVIEW code beautiful

Industrial Control Engineering EN-ICE-MTA & & Hardware Software PXI CompactRIO LabVIEW TestStand DIAdem and other NI products

Industrial Control Engineering LabVIEW support  LabVIEW installation problems  When to contact us?   cern.ch/labview

Industrial Control Engineering Outline RADE Applications EN-ICE-MTA26  MTA  Why RADE?  The challenge  Coping with large applications  RADE today  Hands On session

Industrial Control Engineering RADE today

Industrial Control Engineering Present domains of use… Accelerator Improvements Test facilities Expert tools

Industrial Control Engineering LabVIEW for CERN  Developing applications for CERN  Providing access to CERN infrastructure with RADE

Industrial Control Engineering  RADE has become adult  Copes with the classical software development challenges  Enables LabVIEW to be used for accelerator applications Thank you for your attention ! Conclusion

Industrial Control Engineering Outline RADE Applications EN-ICE-MTA31  MTA  Why RADE?  The challenge  Coping with large applications  RADE today  Hands On session  RIO: Live data from the front-ends  SQL: CERN Database connections  SDDS: Offline data from the front-ends  RBAC: Role based access control  MTAlib and OpenG toolkits

Industrial Control Engineering RADE Applications EN-ICE-MTA32 RADE Input/Output (RIO) Live data from the front-ends

Industrial Control Engineering What is RIO? CERN front-ends JAPC RADE Input/Output (RIO) Client applications

Industrial Control Engineering What is RIO? CERN front-ends JAPC RADE Input/Output (RIO) Client applications

Industrial Control Engineering RADE Applications EN-ICE-MTA35 RIO: Basics

Industrial Control Engineering JAPC or CMW? JAPC

Industrial Control Engineering Get data from front-end  URL of device + Cycle  Data type

Industrial Control Engineering Set data to front-end  URL of device + Cycle  Data type

Industrial Control Engineering Subscription to front-end data  Set URL, Cycle and Data type in open.vi  Put operation.vi in a loop  Check for timeout and error

Industrial Control Engineering RIO data types Field nameField data type DDouble BoolBoolean C2D300String [ ] I642D300I64 [ ] [ ] C1D300String Japc2Lv_T2-abcopm02/Mixed: Field name in LV = field name of device Field type in LV = field type of device

Industrial Control Engineering Additional configurations of RIO operations paramDescription.viabortSubscription.vi setFilter.vi RBACNewToken.vi RBACTokenInfo.vi

Industrial Control Engineering Goal: Implement GET/SET operations for CERN device using RIO Toolkit. RADE Applications EN-ICE-MTA42 Exercise Get and Set data on a CERN device

Industrial Control Engineering Goal: Implement subscription to data from CERN device. RADE Applications EN-ICE-MTA43 Exercise Subscribe to data from device

Industrial Control Engineering The device “PR.GSQDN1/CCV” has the following fields:  lambdaX: I32  data: Double  msg: String Which of the following Data Type is not correct? Quiz 1 RADE Applications EN-ICE-MTA

Industrial Control Engineering The device “PR.BPM/Setting” has the following fields:  bucketBBB: I32[ ]  bucketSelect: I16  gain: I32 Which of the following Data Type is not correct? Quiz 2 RADE Applications EN-ICE-MTA

Industrial Control Engineering What is wrong with this VI: Quiz 3 RADE Applications EN-ICE-MTA46

Industrial Control Engineering This VI is correct: Quiz 3 RADE Applications EN-ICE-MTA47

Industrial Control Engineering Outline RADE Applications EN-ICE-MTA48  MTA  Why RADE?  The challenge  Coping with large applications  RADE today  Hands On session  RIO: Live data from the front-ends  SQL: CERN Database connections  SDDS: Offline data from the front-ends  RBAC: Role based access control  MTAlib and OpenG toolkits

Industrial Control Engineering RADE Applications EN-ICE-MTA49 SQL CERN Database Connections

Industrial Control Engineering RADE Applications EN-ICE-MTA50 Query to Database

Industrial Control Engineering LHC Logging and Measurement databases 51RADE Applications EN-ICE-MTA

Industrial Control Engineering RADE Applications EN-ICE-MTA52 LHC Logging and Measurement databases Extracts statistics for a signal data:

Industrial Control Engineering RADE Applications EN-ICE-MTA53 Search signal names

Industrial Control Engineering Goal: Extract signal data from LHC Logging DB using the SQL_MA.vi RADE Applications EN-ICE-MTA54 Exercise Extract data from LHC Logging DB

Industrial Control Engineering Which VI is used to execute SQL queries for CERN databases?  SQL.vi Quiz 4 RADE Applications EN-ICE-MTA55 Where can we find it in the RADE palette?  RADE -> SQL

Industrial Control Engineering How to extract signal data from LHC logging Database?  SQL-MA.vi -> lhclog Quiz 5 RADE Applications EN-ICE-MTA56

Industrial Control Engineering Outline RADE Applications EN-ICE-MTA57  MTA  Why RADE?  The challenge  Coping with large applications  RADE today  Hands On session  RIO: Live data from the front-ends  SQL: CERN Database connections  SDDS: Offline data from the front-ends  RBAC: Role based access control  MTAlib and OpenG toolkits

Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA58 Offline data from the front ends

Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA59 Offline data from the front ends Each SDDS data file consists of an ASCII header describing the names and types of the data stored in the file. The data follows after the header, and may be in ASCII or binary. SDDS Header SDDS Body

Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA60 Offline data from the front ends SDDS files are used to store Post Mortem and similar event data Our SDDS library has the capability to read such files (not write).

Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA61 Offline data from the front ends The palette consists of two parts, which are used independently. SDDS Express SDDS Advanced Express: Reads the SDDS file and displays it graphically. Advanced: Intended for applications that doesn’t display graphs. Less overhead.

Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA62 Offline data from the front ends SDDS Express SDDS_Open_Files: Reads the file path and outputs the header info and signal names. SDDS_Select:Used to select the signals. Default behaviour is a popup window. Can be omitted completely to use all available signals. SDDS_Read: Reads the signals selected and outputs the data. SDDS_Display:Formats the data so that it can be easily be displayed in a graph.

Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA63 Offline data from the front ends Manual signal selection Signals can be selected without user interaction. Wire signals as a constant and disable the popup dialogue. One signal type can be displayed per SDDS_Display VI.

Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA64 Post Mortem Browser PM Server Logging DB LSA DB LHC-Layout DB

Industrial Control Engineering Outline RADE Applications EN-ICE-MTA65  MTA  Why RADE?  The challenge  Coping with large applications  RADE today  Hands On session  RIO: Live data from the front-ends  SQL: CERN Database connections  SDDS: Offline data from the front-ends  RBAC: Role based access control  MTAlib and OpenG toolkits

Industrial Control Engineering 66RADE Applications EN-ICE-MTA RBAC Provides a level of security for accessing sensitive equipment The underlying architecture is developed by controls middleware (CMW) Both Windows and Linux platforms are supported Role Based Access Control

Industrial Control Engineering RBAC RADE Applications EN-ICE-MTA67 Role Based Access Control

Industrial Control Engineering 68RADE Applications EN-ICE-MTA The token is stored by a numeric reference Valid until expired or destroyed Don’t store your password on the block diagram: Enter your password in a GUI at startup of your application RBAC Usage

Industrial Control Engineering Outline RADE Applications EN-ICE-MTA69  MTA  Why RADE?  The challenge  Coping with large applications  RADE today  Hands On session  RIO: Live data from the front-ends  SQL: CERN Database connections  SDDS: Offline data from the front-ends  RBAC: Role based access control  MTAlib and OpenG toolkits

Industrial Control Engineering MTA-lib RADE Applications EN-ICE-MTA70

Industrial Control Engineering RADE Applications EN-ICE-MTA71 LabVIEW Community pages (non-NI): – Forum and wiki – Forum and file repository Let us know if there is something you’d like to see in our MTA-palette. OpenG community One of the few non-NI LabVIEW communities Offers several green, time-saving VIs Many polymorphic VIs, build executable to improve speed.

Industrial Control Engineering MTA-lib: Data Palette RADE Applications EN-ICE-MTA72 Variants: Container that can contain different data types. Great for generic programming, but can add overhead.

Industrial Control Engineering RADE Applications EN-ICE-MTA73 OpenG Use case: Variants containing generic data. This is the case for basic numeric types and strings.

Industrial Control Engineering RADE Applications EN-ICE-MTA74 OpenG Use case: Variants with run-time types. What about arrays? Retrieves the array type.

Industrial Control Engineering RADE Applications EN-ICE-MTA75 OpenG Use case: Variants with run-time types. What about clusters? Notice the variant to data usage.

Industrial Control Engineering RADE Applications EN-ICE-MTA76 OpenG Use case: Variants with run-time types. Live demo of the VI. Quick look at the application control palette.

Industrial Control Engineering RADE Applications EN-ICE-MTA77 OpenG use case: Array to cluster Let’s have a look at the one shipped with LabVIEW “You have connected two clusters of different content.”

Industrial Control Engineering RADE Applications EN-ICE-MTA78 OpenG Use case: Array to cluster The cluster size needs to be adjusted This OpenG VI looks interesting…

Industrial Control Engineering RADE Applications EN-ICE-MTA79 OpenG Use case: Array to cluster Array size can now vary without manual intervention. Displaying it as a cluster. What happens if the array size doesn’t match the cluster? A runtime error. Conclusion: Use a typedef cluster!

Industrial Control Engineering MTA-lib: Array Palette RADE Applications EN-ICE-MTA80

Industrial Control Engineering RADE Applications EN-ICE-MTA81 OpenG Use case: Array manipulation Conditional Auto-Indexing Tunnels Remove Duplicates From 1D Array Filter 1D Array Note: this feature has been built into loops in LabVIEW 2012.

Industrial Control Engineering RADE Applications EN-ICE-MTA82 OpenG Use case: Array manipulation Delete elements from array (polymorphic) 1D 2D

Industrial Control Engineering RADE Applications EN-ICE-MTA83 OpenG Use case: Array manipulation Index array elements (polymorphic) 1D 2D

Industrial Control Engineering RADE Applications EN-ICE-MTA84 OpenG Use case: Array manipulation Search 1D array Sort array (Polymorphic)

Industrial Control Engineering MTA-lib: String Palette RADE Applications EN-ICE-MTA85

Industrial Control Engineering RADE Applications EN-ICE-MTA86 Multi-line string to array OpenG Use case: String array constant 1D String array to string - Basically array to spreadsheet Combining string and array tools.

Industrial Control Engineering MTA-lib: Time Palette RADE Applications EN-ICE-MTA87

Industrial Control Engineering RADE Applications EN-ICE-MTA88 OpenG Use case: Wait/delay Instead: Additional functionality: - Boolean input that specifies if it should wait when there is an error. - Occurrence reference for aborting (optional). Also comes in as “wait until next ms multiple”.

Industrial Control Engineering

Industrial Control Engineering Questions

Industrial Control Engineering What is RADE? RADE Applications EN-ICE-MTA91 JAPC Databases

Industrial Control Engineering Distributed Architecture System I/O