self-described data - sdd status and plans · sdd implementation : database centric -data is stored...
TRANSCRIPT
![Page 1: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/1.jpg)
EPICS Collaboration meeting Fall 2012, SDD status and plans
Page 1
Self-Described Data - SDD status
and plans
Lana Abadie, ITER CODAC
![Page 2: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/2.jpg)
Page 2 EPICS Collaboration meeting Fall 2012, SDD status and plans
Context
- Big fusion device :
- 1 million EPICS PV,
- Several thousands of EPICS IOC
- Many services (BEAST, BEAUTY, etc )
- International collaboration
- Pieces of the tokamak built by different entities
- Interfaces with CODAC
- Standard and guidelines via PCDH
- CODAC core software
- Push the I&C designer/developer to follow our standards
- Ease the integration of all these pieces
- One key aspect is configuration management (via SDD toolkit)
Note : PCDH – Plant Control Design Handbook
Need to be
configured
Promote
CODAC
standards
![Page 3: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/3.jpg)
Page 3 EPICS Collaboration meeting Fall 2012, SDD status and plans
Static data
• Describe the configuration of plant system I&Cs (~
subsystem)
– Components and signals
– EPICS PVs (state, config and commands)
– Alarm tree and archived PVs, etc…
• Data is changed during maintenance phase not between
pulses
• Dynamic information is not stored in SDD
– Initial values
– Inclusion/exclusion of plant system I&Cs
– Pulse definition
• Objective 1 : allow I&C designer to design its CODAC
interface in term of EPICS PVs interfaces
• Objective 2: Generate as much as possible configuration files
Configuration management : SDD toolkit
![Page 4: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/4.jpg)
Page 4 EPICS Collaboration meeting Fall 2012, SDD status and plans
Challenges
• 3 EPICS PVs:
• SAMPLE:PLC-AI: ->read
from a PLC (DTYP + INP
fields, offset computation)
• SAMPLE:CALC -> keep
track that this PV requires
SAMPLE:PLC-AI
• SAMPLE:FC-DO -> write
to a NI PXI 6259 board
(DTYP and OUT fields)
DOL field linked to
SAMPLE:CALC
SDD model
ai
SAMPLE:PLC-AI
DTYP = “S7PLC” INP = “@PLC10/0 T=WORD”
SCAN = “I/O Intr”
calc
SAMPLE:CALC
INPA = “SAMPLE:PLC-AI” CALC= “A>10?1:0” SCAN=Passive
bo
SAMPLE:FC-DO
DTYP= “ni6259”
OUT=“#C2S5” DOL=“SAMPLE:CALC” SCAN=Passive
![Page 5: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/5.jpg)
Page 5 EPICS Collaboration meeting Fall 2012, SDD status and plans
I&C PROJECT
SDD offers different views of the plant
system I&C
Physical info: - List of components with
its signals - List of controllers with
I/O modules + location in cubicles/chassis
Functional info: - Control breakdown to
define I&C functions - EPICS PVs associated
with I&C functions
Control info: - Combine functional and
functional views
- Define deployment of PVs at IOC level (which controller)
- Supported I/O modules are in PCDH
Introduction
In v4, we will
add the
location view, i.e. order by
cubcile,
chassis,etc
![Page 6: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/6.jpg)
Page 6 EPICS Collaboration meeting Fall 2012, SDD status and plans
SDD minimizes development and
ensures consistency
I&C Project SDD
Translator
HMI screens (BOY)
Archive
server (BEAUTY)
config files
Alarm server (BEAST)
config files
EPICS files (database, autosave,
IOC startup)
PLC Datablocks
(S7)
Color code:
SDD Toolkit
CODAC services
Controllers
Validation:
- Consistency
- Completeness
- Naming convention
Introduction
All the
generated
files follows a
standard I&C
project
structure
![Page 7: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/7.jpg)
Page 7 EPICS Collaboration meeting Fall 2012, SDD status and plans
Configuration files (plans for v4 and v5)
• Generate breakpoint tables (v4)
• Generate SNL codes for COS support (v4)
• Generate files for fast control – SDN (v5)
• Generate files for fast experimental archiving - DAN(v5)
• Improve BOY HMI templates (v4)
• Improve validations (v4, v5)
• Improve support for new EPICS device support
declaration (v4)
SDD model
![Page 8: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/8.jpg)
Page 8 EPICS Collaboration meeting Fall 2012, SDD status and plans
Validation
• 3 levels of validation : objective minimize errors
– Level 1 : basic checks to make sure that your data is
consistent: e.g. we don’t allow saving a variable if name
already exists. Warnings are raised when there are invalid PVs
links
– Level 2: checks to ensure that we can generate configuration
files: e.g. if a variable has no record type, we complain
– Level 3: checks that you are complete and compliant with
ITER rules : e.g. naming convention
![Page 9: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/9.jpg)
Page 9 EPICS Collaboration meeting Fall 2012, SDD status and plans
SDD implementation : DATABASE CENTRIC
-Data is stored in a relational DB (PostgreSQL)
-SDD model lib to interact with SDD DB (Hibernate and
Spring)
-SDD Editor and SDD web app to enter config data
-SDD translator to generate config files
-SDD parser to retrofit data
-SDD sync to export/import I&C project into XML and
synchronize with PS Profile
- Excel import/export for mass data
![Page 10: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/10.jpg)
Page 10 EPICS Collaboration meeting Fall 2012, SDD status and plans
Workflow
![Page 11: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/11.jpg)
Page 11 EPICS Collaboration meeting Fall 2012, SDD status and plans
SDD editor SDD implementation
![Page 12: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/12.jpg)
Page 12 EPICS Collaboration meeting Fall 2012, SDD status and plans
![Page 13: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/13.jpg)
Page 13 EPICS Collaboration meeting Fall 2012, SDD status and plans
SDD web app SDD implementation
![Page 14: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/14.jpg)
Page 14 EPICS Collaboration meeting Fall 2012, SDD status and plans
Some statistics
![Page 15: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/15.jpg)
Page 15 EPICS Collaboration meeting Fall 2012, SDD status and plans
Export/Import your I&C project Export
1. Click on the I&C project name,
version
2. Click on Export to XML/Send to
Central (you need an IDM account)
3. Click on Download and specify where
to save the file
Import
1. Click on the config list
2. Click on XML Import/Import (for
central database)
3. Upload your XML file
4. Click on the small arrow to start the
loading
Create I&C Project
![Page 16: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/16.jpg)
Page 16 EPICS Collaboration meeting Fall 2012, SDD status and plans
Better support for card configuration
Click on of the I/O module
to get help for board
config such as asyn
reasons
![Page 17: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/17.jpg)
Page 17 EPICS Collaboration meeting Fall 2012, SDD status and plans
Get the list of asyn reasons supported by an
I/O module
![Page 18: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/18.jpg)
EPICS Collaboration meeting Fall 2012, SDD status and plans
Page 18
Functional variable’s neighborhood Click on one of the node to navigate
Get neighborhood view of one
PV, hide/unhide link types
![Page 19: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/19.jpg)
Page 19 EPICS Collaboration meeting Fall 2012, SDD status and plans
Adding/removing links
Add or remove link
![Page 20: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/20.jpg)
Page 20 EPICS Collaboration meeting Fall 2012, SDD status and plans
Debugging view
Get values of PVs while IOC
running
![Page 21: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/21.jpg)
Page 21 EPICS Collaboration meeting Fall 2012, SDD status and plans
Search variables You can add
or update
epics
attributes by
filtering your
PVs : e.g.
![Page 22: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/22.jpg)
Page 22 EPICS Collaboration meeting Fall 2012, SDD status and plans
List of template instances per template
![Page 23: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/23.jpg)
Page 23 EPICS Collaboration meeting Fall 2012, SDD status and plans
template support
![Page 24: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/24.jpg)
Page 24 EPICS Collaboration meeting Fall 2012, SDD status and plans
SDD Translator generates all configuration files
Alarm Configuration
Archive Configuration
Generated HMI
EPICS records
EPICS IOC files
STEP-7 files
Generate config files
![Page 25: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/25.jpg)
Page 25 EPICS Collaboration meeting Fall 2012, SDD status and plans
• CSS EPICS SNL (State Notation Language) editor is
used to develop SNL code
• Apache Maven (software project management) to build
I&C project, to start, stop, run and package EPICS
application and ioc-screen to access IOCs console
• Step 7 platform is used to develop PLC applications
• Labview FPGA is used to program and generate FPGA
codes
• SDD parser (based on ANTLR) reads back the I&C
project and parses only information which go to SDD
DB (e.g. no parsing of FPGA code or S7 PLC
application)
Development platform
![Page 26: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/26.jpg)
Page 26 EPICS Collaboration meeting Fall 2012, SDD status and plans
Development platform
![Page 27: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/27.jpg)
Page 27 EPICS Collaboration meeting Fall 2012, SDD status and plans
• Plans for v4 : a new editor
– We will add a new perspective (ECLIPSE RCP based) which
is maven editor
– Will be integrated with sdd-editor
– Main objective to develop code in the I&C project and import
configuration files directly to BEAST/BEAUTY
– Way of people keen on GUIs to avoid using CLIs
– Will allow to execute mvn clean, compile, run, access an IOC
console and execute db commands
– Next step (>4.0) is to allow remote run of IOCs (mainly for fast
controller as they have I/O modules)
Development platform
![Page 28: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/28.jpg)
Page 28 EPICS Collaboration meeting Fall 2012, SDD status and plans
SDD DB migration
The SDD DB schema changes from time to time at the
development stage. We provide a migration application
to migrate existing data to the new schema.
SDD DB and SVN
A I&C project consists of both configuration data stored in
the database and code (e.g. SNL, FPGA code) stored in
SVN. Tools based on Maven are provided to synchronize
the data between SDD DB and SVN on a project level.
These tools follow SVN concepts like import, check-out,
update.
Maintenance
![Page 29: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/29.jpg)
Page 29 EPICS Collaboration meeting Fall 2012, SDD status and plans
• Good progress
• SDD Toolkit is being used by external users.
• SDD Design to be completed
– Support SDN and DAN (later for 5.0)
– Improve validation
• Some improvements to be done on tools level
– More features
– Ensure scalability and modularity
– Provide utilities for integration (merging several I&C projects)
Conclusion
![Page 30: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/30.jpg)
Page 30 EPICS Collaboration meeting Fall 2012, SDD status and plans
BACKUP SLIDES
![Page 31: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/31.jpg)
Page 31 EPICS Collaboration meeting Fall 2012, SDD status and plans
![Page 32: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/32.jpg)
Page 32 EPICS Collaboration meeting Fall 2012, SDD status and plans
Specification of NI PXI-6259
AI Channels Channel : 32 Single-Ended Channels
/16 Differential Channels
Sample rate : 1.25Ms/s single channels
1Ms/s multi channels (all)
AO Channels Channel : 4
Update rate : 1.25Ms/s per each channel
Digital I/O Bidirectional Channel : 48
![Page 33: Self-Described Data - SDD status and plans · SDD implementation : DATABASE CENTRIC -Data is stored in a relational DB (PostgreSQL) -SDD model lib to interact with SDD DB (Hibernate](https://reader035.vdocuments.mx/reader035/viewer/2022070810/5f911cb6589b5b148a04a4be/html5/thumbnails/33.jpg)
Page 33 EPICS Collaboration meeting Fall 2012, SDD status and plans
Example of EPICS Template