180 likes | 268 Views
LSF - the LCU Server Framework easy creation of LCU applications with Object Oriented approach. P. Duhoux European Southern Observatory July 2002 TSW Tutorial. ATCS - the Initiator. Large number of new sub-systems
E N D
LSF - the LCU Server Frameworkeasy creation of LCU applications with Object Oriented approach P. Duhoux European Southern Observatory July 2002 TSW Tutorial
ATCS - the Initiator • Large number of new sub-systems • Control of standard devices (motors, signals, serial links, monitoring and background tasks) TSW Tutorial on LSF
LSF is a Framework • Fixed design and architecture • Improved code reuse thus reduced maintenance costs • Enforce VLT standards TSW Tutorial on LSF
LSF is for SW Devices • SW device must support Standard Commands at ACI and API level • Behavior of standard commands is defined once • Any number of specific commands may be added TSW Tutorial on LSF
LSF handles State & SubState • State machine is 100% LCC • State transitions are fully defined while additional behavior may be implemented • The concept of sub-state has been introduced that gives more precise information on the SW device status • Automatic and systematic restoration of DB configuration at Initialization • Monitoring activity allowed in any initialized state TSW Tutorial on LSF
LSF supports various devices • LSF supports many types of standard devices • All device types derive from the base device • New device types can be easily added TSW Tutorial on LSF
LSF imposes the SW architecture • Minimum behavior for all standard commands is provided • Additional behavior by means of user defined hooks • Table driven control • Monitoring of device state and sub-state TSW Tutorial on LSF
LSF imposes the DB structure • All classes are derived from the base class lsfDB_DEVICE • A SW device is a kind of SoftDev • Specificity is achieved by sub-classing TSW Tutorial on LSF
LSF database branch Run-time data Device types Device instances TSW Tutorial on LSF
LSF supports Overloading • Fixed thread of control for all standard commands with several hooks for additional behavior • sub-SW devices are always handled first TSW Tutorial on LSF
LSF schedules the Activities • The state and sub-state of a device are updated during the activities. • All devices of a type are processed simultaneously TSW Tutorial on LSF
LSF Base Device • Minimum classes forall the devices TSW Tutorial on LSF
LSF Devices • All device types are built on the same scheme • The device types are providing all minimum behavior as of the associated HW device TSW Tutorial on LSF
lsftpl - the Application Template 1 • Template application used both for tests and for the creation of new applications • Fully scalable to the needs of the new application • Provides implementation examples for most of the device types TSW Tutorial on LSF
<<cmm module>> lsftpl <<raw module>> app <<customized module>> app <<cmm module>> app LCU lsftpl - the Application Template 2 • The creation of a new module is based on 3 utilities: • lsfCreate: create an instance based on the template • lsfConfig: customize the module to the needs • lsfBackup: generate a DB backup file • It requires the edition of a couple of files prior to invoking lsfConfig lsfCreate app Edit some files lsfConfig app Build application Build WS & LCU environments Load on LCU Tune devices cmmArchive app lsfBackup TSW Tutorial on LSF
Maintenance & Tests • Core is implemented once in lsf • standard behavior can easily be modified/improved • all lsf-based applications updated at once • Minimum tat test provided with the template • only specific tests shall be implemented TSW Tutorial on LSF
LSF is a Standard • LSF has (shall) become the de-facto standard for all new LCU applications (INS excluded). • All new VLTI sub-systems are based on lsf: • ATCS • OPD, Transfer Optics (M16 and Temperature Sensors) • VCM • FINITO • Coudé • MACAO VLTI (RTC and ICS parts) • Future applications • PRIMA FSU and Metrology • SINFONI, CRIRES ??? TSW Tutorial on LSF
Conclusions • LSF has now been instantiated about 30 times in various configurations in the last 18 months. • Most of the maturity problems have been solved and it shows a good level of reliability • LSF re-inforces our standards • LSF allows the designer to concentrate on the application specific issues TSW Tutorial on LSF