Herzberg Extensible Adaptive Real-time Toolkit (HEART) is a collection of libraries and other software that can be used to create different types of Adaptive Optics (AO) systems. Pixels can be received from Laser Guide Star (LGS) Wavefront Sensors (WFSs), high-order Natural Guide Star (NGS) WFSs, On-Instrument WFSs (OIWFSs) that are located in the science instruments, and on-detector guide windows (ODGW) from science imagers. These inputs are processed in real-time by HEART to compute commands to configure the deformable mirrors (DMs) and the tip-tilt stage (TTS), as well as offloading information to selected mechanisms in the RTC, in the telescope and in the client instruments. This paper will explore the internal structure of HEART. In particular, the concept of “blocks”, which are reusable software units from which an RTC can be composed, how “pipes” are used to combine blocks in a meaningful manner and ultimately how those pipes can be used to realize many different types of real-time controllers (RTCs) such as SCAO (Single Conjugate AO), Multi-Conjugate AO (MCAO), Multi-Object AO (MOAO), and Ground Layer AO (GLAO). HEART is currently being implemented for use in NFIRAOS (Near Field Infra-Red AO System) for TMT, GNAO (Gemini North Adaptive Optics system), GIRMOS (Gemini Infrared Multi-Object Spectrograph), GPI2.0 (Gemini Planet Imager upgrade) and REVOLT (Research, Experiment and Validation of adaptive Optics with a Legacy Telescope).
|