Behind the scenes: protecting the world’s largest machine
The Large Hadron Collider (LHC) recreates the conditions right after the Big Bang on a miniature scale by accelerating and colliding two beams of microscopic particles travelling at 99.9999991% of the speed of light. To produce these collisions, the LHC sends two beams of protons or other positively charged heavy ions around the circular tunnel in opposite directions. Superconducting magnets that operate in a superfluid helium bath at just 1.9 K (-271°C) control the trajectory of LHC beams. The total energy in each beam at full power is 350 MJ, approximately the energy in a 400-tonne train travelling at 150 km/h and enough energy to melt 500 kg of copper.
With such high energies involved, any stray particles that deviate from the beam core can cause severe damage to the machine. An LHC critical control system ensures that any such stray particles are eliminated before they damage the machine. This system consists of an array of devices called collimators.
The collimator control system synchronously positions more than 500 motors to micrometre precision and reads from nearly 1300 resolvers and linear variable differential transformers (LVDTs) to verify in real time the position of each axis. CERN engineers designed a control system based on National Instruments LabVIEW software and the NI programmable automation controller platform, PXI, to achieve the high reliability, redundancy, strict timing constraints and compactness for the limited space available underground. PXI systems, which also offer a dual-core processor to achieve required performance, can be synchronised using an external or internal clock signal. Because the motion control is based on the system clock, for the 27 km long CERN LHC, the ability to synchronise systems is critical.
For increased reliability, CERN divided the collimator control system between two PXI systems, one for controlling the stepper motors and reading from resolvers and a second for reading from LVDT sensors. If the PXI system controlling the motors fails, CERN can still determine the position of the collimators using the LVDTs, and if the PXI system reading from the LVDTs fails, CERN can bring the collimators to a known safe position.
LHC collimators
The LHC collimators consist of several layers of jaws that absorb stray particles. Each jaw is made of a pair of 1 m blocks of graphite, copper or tungsten. For optimal operation, jaw positioning accuracy is required to be one-tenth of the beam core diameter, resulting in the required accuracy of 20 µm. Also, the jaws need to be positioned to a precise angle with respect to the particle beam trajectory. To achieve accurate positioning, CERN mounts two stepper motors at either end of each face of the jaw. Because any vibration during motion can damage the fragile blocks, the two motors on each block are synchronised to within 1 ms. Finally, CERN must synchronise all 500 motors in the LHC collimator network to within 10 ms distributed over the 27 km circumference of the LHC. This challenging specification was exceeded — in the final implementation all the motors are synchronised to within 100 µs.
Due to the high level of radiation expected in the proximity of the collimators, no electronics can be embedded in the collimators. As a result, CERN equips each motor with a resolver read at 400 Hz and each block of the jaw with an LVDT read at 1 kHz. CERN also uses LVDTs to measure the distance between two jaws within the same collimator. Overall, the LHC collimators include 500 resolvers and 700 LVDTs.
CERN controls each collimator with reconfigurable I/O modules mounted in separate NI PXI systems. In the standard configuration, one PXI system controls up to 15 stepper motors mounted on three different collimators through a 20-minute motion profile to accurately and synchronously align the graphite blocks, and a second chassis checks the real-time positioning of the same collimators.
In a given collimator, both PXI chassis run LabVIEW Real-Time on the controller for reliability and LabVIEW FPGA on the reconfigurable I/O devices in the peripheral slots to perform the collimator control. CERN used the NI SoftMotion Development Module and NI reconfigurable modules to create a custom motion controller with millisecond synchronisation throughout the 27 km of the LHC.
LHC collimator motion control system
The LHC collimator motion control system includes the functions necessary to precisely control the stepper motors for up to three collimators and to verify that the movement has been executed as expected by reading the positions from resolvers mounted directly on the motor shaft.
The motion control system is responsible for the following five tasks:
- Pre-processing the commands received from the LHC central control system;
- Formatting data to be sent to the central control system, including acknowledgement of commands received and notifications of end of action;
- Generating trajectory set points to be transferred to the FPGA motion controller so it can react to the commands within 10 ms;
- Interpolating movement profiles sent by the LHC central control system to make them smoothly executable by the controller and ensure that all axes of the same collimator are synchronised to 1 ms;
- Generating interlocks if an unexpected condition is detected.
Hardware
Each collimator uses a reconfigurable I/O card, based on a 3M gate FPGA, providing eight analog inputs, eight analog outputs and 96 digital inputs/outputs. All inputs/outputs are completely reprogrammable with LabVIEW. CERN uses digital outputs to send pulses to the step and direction inputs of a stepper motor drive and to read limit switches, interlocks and triggers, and analog inputs/outputs are used to read the output of the resolvers mounted on each motor.
CERN connects the digital inputs/outputs to NI C Series modules, which provide isolated outputs for direct connectivity. Analog signals are connected to the resolvers via CERN’s custom-made cards.
Software
On the real-time controller, a command listener waits for commands to be sent by the LHC central control system. The command listener has 1 ms cycle time and the highest priority to ensure a fast reaction time. Once a command is received, a trajectory generation task generates the motion profile. Concurrently, an acknowledgement is sent to the central control system. The trajectory generation task, which also runs on the real-time controller, calculates set points for each axis, taking into account the speed, acceleration and jerk specified for the motion profile. A new set point is generated every millisecond and sent to the control task running on the FPGA.
The control loop runs on the FPGA at 1 MHz and generates the step and direction signals to control each stepper motor based on the points received from the trajectory generator. This architecture ensures synchronisation among the axes within the same card at the microsecond level. A shared 10 MHz clock between all the PXI systems ensures millisecond synchronisation of the entire network. The I/O task runs on the FPGA with an update time of 5 ms for both the digital and analog signals. The analog signals received from the resolvers are also decoded on the FPGA to achieve a 400 Hz read rate. Concurrently, an interlock task checks for lost steps and generates an interlock in case of failure. Finally, FPGA status is read on the real-time processor with 1 ms cycle time to analyse the data if a failure occurs.
LHC collimator position survey system
The LHC collimator position survey system is responsible for verifying the actual jaw positions. The absolute position of the jaws is measured by an LVDT installed on each axis (two for each jaw). Two additional LVDTs measure the distance between different jaws of the same collimator. During the execution of a motion profile, the position readings are compared with threshold profiles previously sent by the LHC central control system. The position survey is performed at a rate of 100 Hz.
The position survey system is responsible for the following three tasks:
- Pre-processing the commands received from the LHC central control system including position check and protocol check;
- Preparing the minimum and maximum thresholds;
- Reading up to 21 LVDTs with 20 µm accuracy at a rate of up to 1 kHz.
Hardware
CERN uses two data acquisition cards with eight 16-bit, 250 kS/s simultaneous differential analog inputs to acquire from seven LVDTs on each collimator. The acquired data is transferred to the real-time controller via DMA. A reconfigurable I/O card with eight analog outputs is used to generate the feeding signals for the 21 LVDTs read by each PXI system.
Software
Similar to the motion control system, a command listener running on the real-time controller waits for commands to be sent by the LHC central control system. The command listener has 1 ms cycle time and the highest priority to ensure a fast reaction time. Once a command is received, the maximum and minimum thresholds are calculated for each axis. Concurrently, an acknowledgement is sent to the central control system.
A position readout and survey task runs on the real-time controller and reads signals from the LVDTs installed on the collimator. LVDT signals deliver position accuracies of a few micrometers and are computed every 1.5 ms.
Nipun Mathur is Product Manager, National Instruments.
Advanced robotics in tomorrow's factory
Addressing the production challenges of complexity, customisation and openness.
Cracking the nut: robotic automation at Freedom Fresh
SCARA robots from Shibaura Machine have found a place in helping to package macadamia nuts.
Food plant expansion sustained by central robotic palletising system
A palletising system with eight robotic cells has been installed at Unilever's food factory...