1 / 52

Channel Configuration Management

Channel Configuration Management. Andreas Lüdeke Swiss Light Source, PSI. Introduction Design Implementation & Performance Usage & Outlook. Introduction. PC. User Interface. IOC. IOC. Input / Output Controllers. H W. HW. HW. Actors / Sensors. Introduction. PC. User Interface.

aerona
Télécharger la présentation

Channel Configuration Management

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Channel Configuration Management Andreas Lüdeke Swiss Light Source, PSI • Introduction • Design • Implementation & Performance • Usage & Outlook

  2. Introduction PC User Interface IOC IOC Input / Output Controllers HW HW HW Actors / Sensors

  3. Introduction PC User Interface IOC IOC Input / Output Controllers HW HW HW Actors / Sensors

  4. Introduction PC User Interface IOC IOC Input / Output Controllers HW HW HW Actors / Sensors

  5. Channels Introduction PC User Interface IOC IOC Input / Output Controllers HW HW HW Actors / Sensors

  6. a b c Introduction Configuration Client Applications • Display Configuration • Machine Model • ... • Channels PC IOC IOC HW HW HW

  7. a b c x y z Introduction Configuration Client Applications • Display Configuration • Machine Model • ... • Channels PC Server Applications • Channels • ... • Procedures • Hardware Configuration IOC IOC HW HW HW

  8. a b c x y z Introduction Configuration Client Applications • Display Configuration • Machine Model • ... • Channels PC Identical? Server Applications • Channels • ... • Procedures • Hardware Configuration IOC IOC HW HW HW

  9. „Ideal“ Design Configuration • Display Configuration • Machine Model • ... • Channels a Clients b c • Channels • ... • Procedures • Hardware Configuration x Server y z

  10. „Ideal“ Design Configuration Database • Display Configuration • Machine Model • ... • Channels a Clients b c • Channels • ... • Procedures • Hardware Configuration x Server y z

  11. API „Ideal“ Design Configuration Database • Display Configuration • Machine Model • ... • Channels a Clients b c • Channels • ... • Procedures • Hardware Configuration x Server y z

  12. API API API API API API „Ideal“ Design Configuration Database • Display Configuration • Machine Model • ... • Channels a Clients b c • Channels • ... • Procedures • Hardware Configuration x Server y z

  13. API API API API API API „Ideal“ Design Configuration Database • Display Configuration • Machine Model • ... • Channels a Clients b c • Channels • ... • Procedures • Hardware Configuration x Server y z

  14. „EPICS“ Design Configuration • Display Configuration • Machine Model • ... • Channels a Clients b c • Channels • ... • Procedures • Hardware Configuration x Server y z

  15. „EPICS“ Design Configuration Files • Display Configuration • Machine Model • ... • Channels g.adl a Clients h.alh b i.conf c • Channels • ... • Procedures • Hardware Configuration p.dbd x Server q.tmpl y r.subs z

  16. „EPICS“ Design Configuration Files • Display Configuration • Machine Model • ... • Channels g.adl a Clients h.alh b i.conf c • Channels • ... • Procedures • Hardware Configuration p.dbd x Server q.tmpl y r.subs z

  17. „EPICS“ Design Configuration Files • Display Configuration • Machine Model • ... • Channels g.adl a Clients h.alh b i.conf c • Channels • ... • Procedures • Hardware Configuration p.dbd x Server q.tmpl y r.subs z

  18. „EPICS“ Design Configuration Files • Display Configuration • Machine Model • ... • Channels g.adl a Clients h.alh b i.conf c • Channels • ... • Procedures • Hardware Configuration p.dbd x Server q.tmpl y r.subs z

  19. „EPICS“ Design Configuration Files • Display Configuration • Machine Model • ... • Channels g.adl a Clients h.alh b i.conf c • Channels • ... • Procedures • Hardware Configuration p.dbd x Server q.tmpl y r.subs z

  20. „EPICS“ Design Config. Files g.adl a Clients h.alh b i.conf c EPICS IOCs Server

  21. „EPICS“ Design Config. Files • GUI builder (medm/dm2k, ...) • Archiver • Save and Restore • Alarmhandler • Striptool • Inhouse build applications, ... g.adl a Clients h.alh b i.conf c EPICS IOCs Server

  22. „EPICS“ Design Config. Files • GUI builder (medm/dm2k, ...) • Archiver • Save and Restore • Alarmhandler • Striptool • Inhouse build applications, ... g.adl a Clients h.alh b i.conf c • EPICS „process database“: • channel = record + `.´ + field • Def. set of fields per record type • SLS naming convention: • record = device + `:´ + property EPICS IOCs Server

  23. „EPICS“ Design Config. Files g.adl a Clients h.alh b i.conf c EPICS IOCs Server

  24. „EPICS“ Design Config. Files Database g.adl a Clients h.alh b i.conf c EPICS IOCs Server

  25. „EPICS“ Design Config. Files Database g.adl a Clients h.alh b i.conf c service EPICS IOCs Server

  26. „EPICS“ Design Config. Files Database g.adl a Clients h.alh b i.conf c service EPICS IOCs Server provided channels

  27. „EPICS“ Design Config. Files Database g.adl a Clients parser h.alh b i.conf c service EPICS IOCs Server provided channels

  28. „EPICS“ Design Config. Files Database required channels g.adl a Clients parser h.alh b i.conf c service EPICS IOCs Server provided channels

  29. Design Summary • Service to upload record names and record types at boot time from each EPICS IOC to the oracle database. Also upload defined fields for each record type. • Parser to extract required channels from all „used“ configuration files for O(10) types of applications • Tables in the oracle database • Queries for the oracle database

  30. Service Implementation EPICS IOC Boot PC Database p.dbd, q.tmpl, r.subs startup.script

  31. Service Implementation EPICS IOC Boot PC Database p.dbd, q.tmpl, r.subs startup.script dbl Record Files

  32. Service Implementation EPICS IOC Boot PC Database p.dbd, q.tmpl, r.subs startup.script dbl Record Files rcmd

  33. Service Implementation EPICS IOC Boot PC Database p.dbd, q.tmpl, r.subs startup.script dbl Record Files rcmd db2odb

  34. Service Implementation EPICS IOC Boot PC Database p.dbd, q.tmpl, r.subs startup.script dbl Record Files rcmd db2odb

  35. Service Implementation EPICS IOC Boot PC Database p.dbd, q.tmpl, r.subs startup.script dbl Record Files rcmd db2odb dbd2odb

  36. Parser Implementation Config. Files Parser Database Launcher Configuration lcf2odb command lines

  37. Parser Implementation Config. Files Parser Database Launcher Configuration lcf2odb command lines xpv g.adl h.alh i.conf extract channels

  38. Parser Implementation Config. Files Parser Database Launcher Configuration lcf2odb command lines xpv g.adl h.alh i.conf extract channels

  39. Parser Implementation Config. Files Parser Database Launcher Configuration lcf2odb command lines xpv g.adl h.alh i.conf extract channels

  40. Parser Implementation Config. Files Parser Database Launcher Configuration lcf2odb command lines xpv g.adl h.alh i.conf extract channels

  41. Tables Just four database tables Application Config Channels • Filename • Macrovar • Device • Property • Field Application Config Files • Filename • Config File • Load Time • Load Date IOC Channels • Device • Property • Record Type • Load Time • Load Date • Deleted Time • Deleted Date Record Type Definition • Record Type • Field • Field Type

  42. Tables Just four database tables Application Config Channels • Filename • Macrovar • Device • Property • Field Application Config Files • Filename • Config File • Load Time • Load Date IOC Channels • Device • Property • Record Type • Load Time • Load Date • Deleted Time • Deleted Date Record Type Definition • Record Type • Field • Field Type

  43. Tables Just four database tables Application Config Channels • Filename • Macrovar • Device • Property • Field Application Config Files • Filename • Config File • Load Time • Load Date IOC Channels • Device • Property • Record Type • Load Time • Load Date • Deleted Time • Deleted Date Record Type Definition • Record Type • Field • Field Type

  44. Tables Just four database tables Application Config Channels • Filename • Macrovar • Device • Property • Field Application Config Files • Filename • Config File • Load Time • Load Date IOC Channels • Device • Property • Record Type • Load Time • Load Date • Deleted Time • Deleted Date Record Type Definition • Record Type • Field • Field Type

  45. Performance • Server • Tested on 2 simulation IOCs, each 16'000 records. • No boot-delay, dumped to files in 20 sec. • Upload from boot PC in less then 2 minutes. • Parser • Tested on all 592 used configuration files. • Access of 20660 different channels in total. • Complete parsing needs 4 minutes, incl. upload.

  46. Performance • Server • Tested on 2 simulation IOCs, each 16'000 records • No boot-delay, dumped to files in 20 sec. • Upload from boot PC in less then 2 minutes • Parser • Tested on all 592 used configuration files • Access of 20660 different channels in total • Complete parsing needs 4 minutes, incl. upload

  47. Usage: Sample Query • Detect all files with missing channels SELECT filename, macrovar, device, property, field FROM Application_Config_Channels acc WHERE not exists ( SELECT * FROM IOC_Channels ioc WHERE acc.device = ioc.device and acc.property = ioc.property and acc.field in ( SELECT field FROM Record_Type_Definition rt WHERE ioc.record_type = rt.record_type ) );

  48. Usage: Sample Query • Detect all files with missing channels SELECTfilename, macrovar, device, property, field FROMApplication_Config_Channels acc WHEREnot exists ( SELECT * FROM IOC_Channels ioc WHERE acc.device = ioc.device and acc.property = ioc.property and acc.field in ( SELECT field FROM Record_Type_Definition rt WHERE ioc.record_type = rt.record_type ) );

  49. Usage: Sample Query • Detect all files with missing channels SELECT filename, macrovar, device, property, field FROM Application_Config_Channels acc WHERE not exists ( SELECT * FROM IOC_Channels ioc WHERE acc.device = ioc.device and acc.property = ioc.property and acc.field in ( SELECT field FROM Record_Type_Definition rt WHERE ioc.record_type = rt.record_type ) );

  50. Usage: Sample Query • Detect all files with missing channels SELECT filename, macrovar, device, property, field FROM Application_Config_Channels acc WHERE not exists ( SELECT * FROM IOC_Channels ioc WHERE acc.device = ioc.device and acc.property = ioc.property and acc.field in ( SELECTfieldFROMRecord_Type_Definition rt WHERE ioc.record_type = rt.record_type ) );

More Related