Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Industrial Control Engineering ADE Rapid Application Development Environment based on LabVIEW."— Presentation transcript:

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

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

3 Industrial Control Engineering EN-ICE-MTA labview.support@cern.ch

4 Industrial Control Engineering Why was RADE developed?

5 Industrial Control Engineering The Origin 10.000+ Magnets 1750 Circuits 13000+ Tests

6 Industrial Control Engineering The Challenge

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

8 Industrial Control Engineering x RAD (rapid application development) concept: - Develop products faster and in higher quality than with traditional methods  Gathering requirements  Prototyping  Defer design improvements to the next release  Less formality in reviews and communication  Re-use of software components

9 Industrial Control Engineering Example Data Analysis Application: To analyse power aborts in LHC circuits Data from Logging DB Developed in 3 days

10 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

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

12 Industrial Control Engineering RADE 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 Java

13 Industrial Control Engineering RADE Applications EN-ICE-MTA RADE Palette

14 Industrial Control Engineering RADE Applications

15 Industrial Control Engineering RADE Applications

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

17 Industrial Control Engineering Coping With Large Applications

18 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  Dedicated templates LabVIEW Large Application Requirements

19 Industrial Control Engineering Source Control

20 Industrial Control Engineering Distribution RADE Installer

21 Industrial Control Engineering Project Generator

22 Industrial Control Engineering Typical design Create, Use & Destroy

23 Industrial Control Engineering State Machine Template

24 Industrial Control Engineering Development help  RADE design patterns and templates  LabVIEW Guides: cern.ch/enice/RADE-Guides cern.ch/enice/RADE-Guides  Code review: make LabVIEW code beautiful

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

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

27 Industrial Control Engineering RADE today

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

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

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

31 Industrial Control Engineering LabVIEW & RADE Support  labview.support@cern.ch labview.support@cern.ch  cern.ch/labview  cern.ch/rade Thank you for your attention !

32 Industrial Control Engineering Outline RADE Applications EN-ICE-MTA  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

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

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

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

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

37 Industrial Control Engineering JAPC or CMW? JAPC

38 Industrial Control Engineering RADE Applications EN-ICE-MTA RIO: Basics 1. 2. 3.

39 Industrial Control Engineering Get data from front-end

40 Industrial Control Engineering Set data to front-end

41 Industrial Control Engineering Subscription to front-end data  Put operation.vi in a loop  Check for timeout and error

42 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

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

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

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

46 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 1.2.3. 4.

47 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 1.2.3. 4.

48 Industrial Control Engineering What is wrong with this VI? Quiz 3 RADE Applications EN-ICE-MTA

49 Industrial Control Engineering This VI is correct. Quiz 3 RADE Applications EN-ICE-MTA

50 Industrial Control Engineering Outline RADE Applications EN-ICE-MTA  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

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

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

53 Industrial Control Engineering RADE 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

54 Industrial Control Engineering RADE 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

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

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

57 Industrial Control Engineering RADE Applications EN-ICE-MTA Query to Database

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

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

60 Industrial Control Engineering RADE Applications EN-ICE-MTA Search signal names

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

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

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

64 Industrial Control Engineering Outline RADE Applications EN-ICE-MTA  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

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

66 Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA 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

67 Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA 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).

68 Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA 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.

69 Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA 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.

70 Industrial Control Engineering SDDS RADE Applications EN-ICE-MTA 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.

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

72 Industrial Control Engineering Outline RADE Applications EN-ICE-MTA  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

73 Industrial Control Engineering Outline RADE Applications EN-ICE-MTA  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

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

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

76 Industrial Control Engineering RADE Applications EN-ICE-MTA Non-NI LabVIEW Communities: www.openg.orgwww.openg.org – Forum and wiki www.lavag.orgwww.lavag.org – Forum and file repository You’d like to have something more in the MTA palette? -> Let us know OpenG community Non-NI LabVIEW community Several green “time-saving” VIs Many polymorphic VIs → build executable to improve performance

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

78 Industrial Control Engineering RADE Applications EN-ICE-MTA OpenG Use case: Variants containing generic data.

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

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

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

82 Industrial Control Engineering RADE Applications EN-ICE-MTA OpenG Use case: Array to cluster The one shipped with LabVIEW “You have connected two clusters of different content.”

83 Industrial Control Engineering RADE Applications EN-ICE-MTA OpenG Use case: Array to cluster The cluster size needs to be adjusted Interesting OpenG VI

84 Industrial Control Engineering RADE Applications EN-ICE-MTA 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!

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

86 Industrial Control Engineering RADE Applications EN-ICE-MTA OpenG Use case: Array manipulation Remove Duplicates From 1D Array Filter 1D Array

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

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

89 Industrial Control Engineering RADE Applications EN-ICE-MTA OpenG Use case: Array manipulation Search 1D array Sort array

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

91 Industrial Control Engineering RADE Applications EN-ICE-MTA 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.

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

93 Industrial Control Engineering RADE Applications EN-ICE-MTA OpenG Use case: Wait/delay OpenG Additional functionalities: Wait on Error? Abort (optional) Also “Wait Until Next ms Multiple” LabVIEW

94 Industrial Control Engineering RADE Applications EN-ICE-MTA The right size front panel without effort ! Fit front panel to largest decoration MTA-lib: Application Control

95 Industrial Control Engineering www.cern.ch/rade

96 Industrial Control Engineering Questions

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

98 Industrial Control Engineering Distributed Architecture System I/O


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

Similar presentations


Ads by Google