Session 1 Introduction What is RADE Technology Palette Tools Template Combined Example How to get RADE Questions? RADE Applications EN-ICE-MTA 2
Session 2 “Hands On RADE” Exercises: ◦ JAPC ◦ Logging DB access ◦ Generic DB access ◦ CMW ◦ RBAC ◦ SDDS 3 RADE Applications EN-ICE-MTA
LabVIEW programming language Integration with the control infrastructure our contribution Fast programming Rapid learning curve Drag and drop GUI development Wide range of analysis libraries Light/independent environment 4 RADE Applications EN-ICE-MTA
Short development time applications (e.g. specific analysis) Punctually used applications (e.g. expert diagnostics) Rapidly evolving applications (e.g. machine development) Applications for stand-alone systems (e.g. test facilities) 5 RADE Applications EN-ICE-MTA
Building blocks 1. Installation Clear LabVIEW version policy NFS installation for Linux Windows TS installation Application server RADE installer 2. Control Integration Maintained interface libraries - CMW- PLC - RBAC- RADAR - SDDS- DIP - DB - JAPC 6 RADE Applications EN-ICE-MTA
RADE for expert diagnostics Java GUI JAPC Server app Equip. driver FESA Equipment LV app CMW+RBAC 7 RADE Applications EN-ICE-MTA
SPS Power Converter View 8 RADE Applications EN-ICE-MTA
RADE for machine development Java GUI JAPC Server app Equip. driver FESA Equipment LV GUI 9 RADE Applications EN-ICE-MTA
Bunch Shape Measurement (BE-OP) 10 RADE Applications EN-ICE-MTA
RADE for stand-alone systems Java GUI JAPC Server app Equip. driver FESA Equipment SDDSLogging DBLV app 11 RADE Applications EN-ICE-MTA
Post Mortem Analysis (BE-OP) 12 RADE Applications EN-ICE-MTA
4. Development help Defined GUI Application templates Configuration files Documentation (edms) Training (cta) RADE Events (indico) Building blocks 3. Support InfoWebpage ( Mailing list User support 1. Installation Clear LabVIEW version policy NFS installation for Linux Windows TS installation Application server RADE installer 2. Control Integration Maintained interface libraries - CMW- PLC - RBAC- RADAR - SDDS- DIP - SQL - JAPC 13 RADE Applications EN-ICE-MTA
The framework Training Support LabVIEW Defined GUI Application templates Configuration files Documentation Data Bases SDDS JAPC libs 14 RADE Applications EN-ICE-MTA
15 RADE Applications EN-ICE-MTA
16
RADE Applications EN-ICE-MTA 17
CERN Database connections ◦ SQL plus ◦ Java DB query ◦ Java DB signal extraction Live data from the front-ends ◦ CMW Wrapper ◦ JAPC Offline data from the front-ends ◦ SDDS Authentication and Authorization ◦ RBAC RADE Applications EN-ICE-MTA 18
Tools SQL plus Java DB Query Java DB Signal Extraction RADE Applications EN-ICE-MTA 19
DB VI Java ServerSQL+ OS? WindowsLinux Sw LabVIEW Oracle 20 RADE Applications EN-ICE-MTA
21 RADE Applications EN-ICE-MTA
Query DB access parameters 22 RADE Applications EN-ICE-MTA Table
23 RADE Applications EN-ICE-MTA
Query User input 24 RADE Applications EN-ICE-MTA Table DB access parameters
25 RADE Applications EN-ICE-MTA
26 Dedicated DB query tool to extract signals from the database
RADE Applications EN-ICE-MTA 27
Tools CMW Wrapper JAPC RADE Applications EN-ICE-MTA 28
CMW Wrapper Provides GET, SET and Subscription possibilities for any RDA supported device; Both Windows and Linux platform supported; Based on standard LabVIEW design: “Open, Use, Close”. 29 RADE Applications EN-ICE-MTA
CMW VIs User VIs DLL based on CMW for C++ FESA class instances sync, async subscription CMW Wrapper CMW Wrapper 30 RADE Applications EN-ICE-MTA
CMW functions palette 31 RADE Applications EN-ICE-MTA
CMW binary palette 32 RADE Applications EN-ICE-MTA
Example GET 33 RADE Applications EN-ICE-MTA
Example with new VIs 34 RADE Applications EN-ICE-MTA
Example SET 35 RADE Applications EN-ICE-MTA
Example SET with new VIs 36 RADE Applications EN-ICE-MTA
Subscription example 37 RADE Applications EN-ICE-MTA
Code 38 RADE Applications EN-ICE-MTA
JAPC Provides GET, SET and Subscription possibilities for any JAPC supported device; Both Windows and Linux platform supported; Based on object oriented representation. 39 RADE Applications EN-ICE-MTA
Architecture JAPC 40 RADE Applications EN-ICE-MTA
JAPC functions palette 41 RADE Applications EN-ICE-MTA
JAPC Example GET 42 RADE Applications EN-ICE-MTA
JAPC example get 43 RADE Applications EN-ICE-MTA
Tool SDDS RADE Applications EN-ICE-MTA 44
Self Describing Data Sets is a way of storing and working with data SDDS is based on two concepts : the use of self describing data files and the use of a set of programs that operate on such files. SDDS files are used to store Post Mortem and similar event data 45RADE Applications EN-ICE-MTA
Header Data 46RADE Applications EN-ICE-MTA
47RADE Applications EN-ICE-MTA
48RADE Applications EN-ICE-MTA
PM server LOGGING DB LSA DB LHC-LAYOUT DB 49RADE Applications EN-ICE-MTA
50RADE Applications EN-ICE-MTA
Tool RBAC RADE Applications EN-ICE-MTA51
RBAC Both Windows and Linux (SLC4) platform supported Returns all fields from “TokenClass” (A1) definition Can be used to authorize and authenticate RDA driven front ends Typical LabVIEW design: “open, use, close” 52 RADE Applications EN-ICE-MTA
Inside RBAC RBAC communication principle Authentication: 1.User requests to be authenticated. 2.RBAC authenticates user via NICE user name and password or CERN certificate 3.RBA returns token to Application Authorization (in progress): 4.Application sends token to CMW when connecting. 5. CMW/FEC verifies token signature once, and uses the credentials for every subsequent request 6. CMW checks access map for role, location, application, mode 53 RADE Applications EN-ICE-MTA
Toolkit Content “Create Token” – Generates the token ID trough calling: tokenMap[Count++] = new RBAC::TokenClass(appNameIn,userNameIn,passWordIn); – Password is suppressed – Token ID is used to retrieve all token fields 54 RADE Applications EN-ICE-MTA
Toolkit Content “Get all token fields” 55 RADE Applications EN-ICE-MTA
Toolkit Content “Get Binary token” – A binary representation of all the token fields 56 RADE Applications EN-ICE-MTA
Toolkit Content “Destroy Token” – Destroys the token based upon Token ID 57 RADE Applications EN-ICE-MTA
Toolkit Content “Clear all tokens” – Clears memory of all tokens created 58 RADE Applications EN-ICE-MTA
Typical design Typical LabVIEW design: “open, use, close” 59 RADE Applications EN-ICE-MTA
60 RADE Applications EN-ICE-MTA
61 RADE Applications EN-ICE-MTA
Combined example: “RADAR” 62 RADE Applications EN-ICE-MTA
RADAR The RADAR toolkit makes use of the JAPC free query database tool and the CMW Wrapper, and creates a connection to the various front ends driving the CERN accelerators 63 RADE Applications EN-ICE-MTA
Part 1 database extraction The FESA Class browser connects to the CO public database and retrieves all the requested settings based upon class name or front end name Get settings based on Front end name or FESA class name 64 RADE Applications EN-ICE-MTA
Design 65 RADE Applications EN-ICE-MTA
Code 66 RADE Applications EN-ICE-MTA
Part 2 live data Uses the settings retrieved from the FESA class browser to establish the connection 67 RADE Applications EN-ICE-MTA
Main View 68 RADE Applications EN-ICE-MTA
Code 69 RADE Applications EN-ICE-MTA
70
RADE Applications EN-ICE-MTA 71
End of Part 1 Questions? 72 RADE Applications EN-ICE-MTA All examples from this presentation is available from: ~/RADE/LV-Intermediate-2/