Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 E-ELT M1 Local Control System Network and LCU Prototyping Motivation Requirements Design Test setup Results
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 Motivation Verify the feasibility of the E-ELT M1 LCS design. 500 Hz M1 figure loop rate. Measurement data (ES and PACT) from each of the 798 segment subunits arrive separately at loop rate. Communication via UDP multicast/unicast on switched ethernet, 10Gbps bandwidth at the control room and multi core processing architecture.
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 E-ELT M1 Figure Loop The so-called M1 figure loop coordinates all segment subunits to form and maintain the M1 shape. The main function of the M1 LCS is to provide a reliable deterministic infrastructure to collect edge sensor (ES) and position actuators (PACT) sensor readings and to distribute PACT references.
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014
M1 figure loop sequence for one single position sample
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 Prototype Requirements Generate a stable synchronization multicast message. Receive, decode and store 798 M1 segments positions (ES and PACT). Control algorithm computation with the measurements form the previous cycle. Send all the segments reference points resulting from the previous computation. Do consistency and error checking, i.e. detect any data loss or timing violation. Together with networking infrastructure should: Provide low latency and SYNC jitter below 10 usec. Support sustained traffic of 1.3M packets/sec (app. 1.1Gbps on the CR side). Guarantee reporting and/or recovery on power or cabling fault. Non-figure loop traffic must be possible with minimal effect on control data latency
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 M1LCU Software Design
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 VxWorks 6.9 running on multi core (2x4) Intel server. Dual 10Gb network interface. 1 st NIC port for M1 MEAS / SYNC receive and REF send. 2 nd NIC port for SYNC UDP packets send (opt). Standard sockets for UDP sending (multicast/unicast). VxWorks MUX API for M1 data collection. Message queues used only for large data passing between tasks and synchronization. Simulated data processing (floating point math). Configuration and Implementation highlights
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 Data types and timing
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 Test setup
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 Results Two tNet task daemons, tNet1 collecting data (via muxBind), crashes after up to 6 hours due to current dependencies bewteen tNet0 and tNet1. Busy time per cycle: 1.34 ms
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 Two tNet deamons but only tNet0 is used, data collection using MUX API, separate task for the SYNC transmission. Busy time per cycle: 1.85 ms Results
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 Startup: 15 – 20 secs for network steady No packet loss during long term tests (weeks). Control only traffic: no jitter larger than 20usec. Recovery from topology change on spec (power/cable loss) SYNC Jitter at the CR switch: Total time hrs Total loop cycles cycles Max Jitter19 us Above 10 us count284 periods (1.4 parts-per-million) Above 15 us count79 periods (0.39 parts-per-million) Results
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 SYNC Jitter, exclusive traffic, multicast set point destinations filename = myr1_sync_time_ _2.dat Max Jitt: usec Above 10usec count: 25.0 Above 15usec count: 5.0 Above 20usec count: 0.0 Total time: hrs Results
Javier Argomedo (ESO/DoE/CSE) - Instrument Control Systems 2014 SYNC Jitter seen from M1LCU Results