# Schema file to check the syntax of this config file schema: schema_observatory-2.0.yml # Here is the description of the configuration of an observatory OBSERVATORY: name: TNC INVENTORY: # === Inventory of available devices # A device is a hardware with a maximum of one connection to drive it with a computer. # As a device can be shared with various units, it is defined at the observatory level. DEVICES: # Each device is defined by a specific configuration file that enumarates the components. - DEVICE: name: AstroMecCA_TM350 file: device_Astromecca_TM350_sn011.yml - DEVICE: name: TAROT_meteo file: device_Raspberry_TAROT_sn002.yml # Describe here the configuration of the device in operation network_interface_index: 0 network_ip: 192.168.0.20 - DEVICE: name: AstroMecaCA_CS100 # roof of the observatory file: device_Astromecca_CS100_sn001.yml # Describe here the configuration of the device in operation network_interface_index: 0 network_ip: 192.168.0.21 - DEVICE: name: Takahashi_Epsilon_180ED_001 file: device_Takahashi_180ED_sn2A3015.yml - DEVICE: name: Takahashi_Epsilon_180ED_002 file: device_Takahashi_180ED_sn2A3024.yml - DEVICE: name: Takahashi_Epsilon_180ED_003 file: device_Takahashi_180ED_sn2A3022.yml - DEVICE: name: Takahashi_Epsilon_180ED_004 file: device_Takahashi_180ED_sn2A3023.yml - DEVICE: name: FLI_Kepler4040_001 file: device_FLI_Kepler4040_sn3014521.yml - DEVICE: name: FLI_Kepler4040_002 file: device_FLI_Kepler4040_sn3024521.yml - DEVICE: name: FLI_Kepler4040_003 file: device_FLI_Kepler4040_sn3034521.yml - DEVICE: name: FLI_Kepler4040_004 file: device_FLI_Kepler4040_sn3044521.yml - DEVICE: name: FLI_KeplerGPS_001 file: device_FLI_KITS_sn2J5086174.yml - DEVICE: name: FLI_KeplerGPS_002 file: device_FLI_KITS_sn2J5086166.yml - DEVICE: name: FLI_KeplerGPS_003 file: device_FLI_KITS_sn2J5080516.yml - DEVICE: name: FLI_KeplerGPS_004 file: device_FLI_KITS_sn2J5079310.yml - DEVICE: name: Optec_TFC19740_001 file: device_Optec_TFC19740_sn1198.yml - DEVICE: name: Optec_TFC19740_002 file: device_Optec_TFC19740_sn1199.yml - DEVICE: name: Optec_TFC19740_003 file: device_Optec_TFC19740_sn1200.yml - DEVICE: name: Optec_TFC19740_004 file: device_Optec_TFC19740_sn1240.yml # === Inventory of available computers # A computer is a hardware of a virtual machine. # As a computer can be shared with various units, it is defined at the observatory level. COMPUTERS: - COMPUTER: name: MainComputer file: computer_XCY_X26A_snAA478.yml # Describe here the configuration of the computer in operation role: Main # Choice of the interface to connect the computer to the network (cf. _network_interfaces in _file) network_interface_index: 0 # IP attributed by the Router network_ip: 192.168.0.11 - COMPUTER: name: AKlotzPersoComputer file: computer_Dell_Precision5550_snLW2134IRC3.yml # Describe here the configuration of the computer in operation role: Main # Choice of the interface to connect the computer to the network (cf. _network_interfaces in _file) network_interface_index: 0 # IP attributed by the Router network_ip: 192.168.1.7 - COMPUTER: name: AKoralewskiPersoComputer file: computer_HP_EliteBook840_snKoralevski.yml # Describe here the configuration of the computer in operation role: Main # Choice of the interface to connect the computer to the network (cf. _network_interfaces in _file) network_interface_index: 0 # IP attributed by the Router network_ip: 192.168.1.7 - COMPUTER: name: EtienneComputer file: computer_XYZ_EP.yml # Describe here the configuration of the computer in operation role: Main # Choice of the interface to connect the computer to the network (cf.network_interfaces infile) network_interface_index: 0 # IP attributed by the Router network_ip: 192.168.0.11 - COMPUTER: name: IRAP_SERVER file: computer_hyperion2.yml # Describe here the configuration of the computer in operation role: Main # Choice of the interface to connect the computer to the network (cf.network_interfaces infile) network_interface_index: 0 # IP attributed by the Router network_ip: 192.168.0.12 - COMPUTER: name: astroguitaComputer file: computer_astroguita.yml role: Main network_interface_index: 0 # IP attributed by the Router network_ip: 192.168.0.13 # === Assembly of devices into units # A unit is a robotic telescope UNITS: - UNIT: name: TNC home: "GPS 2.0375 E 43.6443484725 136.9" horizon: type: ALTAZ line: [ [0,0], [360,0] ] DATABASE: computer: MainComputer file: .database.env DEPENDENCIES: - DEPENDENCY: computers: - MainComputer - AKlotzPersoComputer - AKoralewskiPersoComputer - EtienneComputer links: - link: type: git name: guitastro_device_astromecca url: https://gitlab.irap.omp.eu/guitastrolib/guitastro_device_astromecca install: shell: /bin/sh script: "guitastro/install/install.sh" - link: type: git name: guitastro_device_optec url: https://gitlab.irap.omp.eu/guitastrolib/guitastro_device_optec install: shell: /bin/sh script: "guitastro/install/install.sh" - link: type: git name: guitastro_device_indi url: https://gitlab.irap.omp.eu/guitastrolib/guitastro_device_indi install: shell: /bin/sh script: "guitastro/install/install.sh" MONITORING_DEVICES: - TAROT_meteo AGENTS: # ============================================ - AGENT_DEVICE: name: A_EnvMonitor computer: MainComputer path: private/plugin/agent_devices device: TAROT_meteo protocol: private/plugin/agent_devices/AgentM.py is_real: False # - AGENT_DEVICE: # name: AgentScheduler # computer: MainComputer # path: private/plugin/agent_devices # device: TAROT_meteo # protocol: private/plugin/agent_devices/plc_protocol.py # is_real: False - AGENT_DEVICE: name: mount computer: MainComputer path: private/plugin/agent_devices device: AstroMecCA_TM350 protocol: private/plugin/agent_devices/mount_protocol.py is_real: False - AGENT: name: plc computer: MainComputer path: private/plugin/agent_devices # ========== debut new # ============================================ # Agents of the channel up1 # ============================================ - AGENT_DEVICE: name: AD_focuser_up1 computer: MainComputer path: private/plugin/agent_devices device: Optec_TFC19740_001 is_real: False - AGENT_DEVICE: name: AD_camera_up1 computer: MainComputer path: private/plugin/agent_devices device: FLI_Kepler4040_001 protocol: private/plugin/agent_devices/camera_protocol.py is_real: False # SF11-IPC (for AKz) - AGENT: name: A_AgentImagesProcessor_tnc_up1_akz computer: AKlotzPersoComputer protocol: privatedev/plugin/agent/AgentImagesProcessor_tnc_up1.py # ========== fin new # ============================================ - AGENT_DEVICE: name: optic_up2 computer: MainComputer path: ~ device: Takahashi_Epsilon_180ED_002 is_real: False - AGENT_DEVICE: name: focuser_up2 computer: MainComputer path: private/plugin/agent_devices device: Optec_TFC19740_002 is_real: False - AGENT_DEVICE: name: camera_up2 computer: MainComputer path: private/plugin/agent_devices device: FLI_Kepler4040_002 protocol: private/plugin/agent_devices/camera_protocol.py is_real: False # ============================================ - AGENT_DEVICE: name: optic_down1 computer: MainComputer path: ~ device: Takahashi_Epsilon_180ED_003 is_real: False - AGENT_DEVICE: name: focuser_down1 computer: MainComputer path: private/plugin/agent_devices device: Optec_TFC19740_003 is_real: False - AGENT_DEVICE: name: camera_down1 computer: MainComputer path: private/plugin/agent_devices device: FLI_Kepler4040_003 protocol: private/plugin/agent_devices/camera_protocol.py is_real: False # ============================================ - AGENT_DEVICE: name: optic_down2 computer: MainComputer path: ~ device: Takahashi_Epsilon_180ED_004 is_real: False - AGENT_DEVICE: name: focuser_down2 computer: MainComputer path: private/plugin/agent_devices device: Optec_TFC19740_004 is_real: False - AGENT_DEVICE: name: camera_down2 computer: MainComputer path: private/plugin/agent_devices device: FLI_Kepler4040_004 protocol: private/plugin/agent_devices/camera_protocol.py is_real: False # ============================================ - AGENT: name: AgentMajordome computer: MainComputer path: ~ - AGENT: name: A_SCP_Manager computer: MainComputer protocol: private/plugin/agent/AgentSP.py # SF07-PLN (for AKz) - AGENT: name: AgentScheduler computer: MainComputer protocol: private/plugin/agent/AgentScheduler.py # SF10-CAL (for AKz) - AGENT: name: AgentImagesCalibrator computer: MainComputer # SF11-IPC (for AKz) - AGENT: name: AgentImagesProcessor computer: MainComputer - AGENT: name: AgentImagesProcessor_tnc_up1_ako computer: AKoralewskiPersoComputer protocol: privatedev/plugin/agent/AgentImagesProcessor_tnc_up1.py is_active: False - AGENT: name: AgentTriton computer: AKoralewskiPersoComputer protocol: private/plugin/agent/AgentTriton.py path: private/plugin/agent/triton is_active: False - AGENT_DEVICE: name: AgentDevicePLC_ako computer: AKoralewskiPersoComputer path: private/plugin/agent_devices device: TAROT_meteo protocol: private/plugin/agent_devices/AgentDevicePLC.py is_real: false - AGENT: name: A_EnvMonitor_ako computer: AKoralewskiPersoComputer protocol: private/plugin/agent/AgentM.py path: private/plugin/agent - AGENT: name: AgentTriton_akz computer: AKlotzPersoComputer protocol: private/plugin/agent/AgentTriton.py path: private/plugin/agent/triton # AgentSST no protocol so AgentSST doesn't start himself - AGENT: name: AgentSST1 computer: AKoralewskiPersoComputer - AGENT: name: AgentSST4 computer: astroguitaComputer - AGENT: name: AgentSST2 computer: AKlotzPersoComputer # Agents EP - AGENT: name: AgentImagesProcessor_tnc_up1_ep computer: EtienneComputer protocol: privatedev/plugin/agent/AgentImagesProcessor_tnc_up1.py is_active: True - AGENT: name: AgentSST3 computer: EtienneComputer is_active: True - AGENT: name: AgentTriton_ep computer: EtienneComputer protocol: private/plugin/agent/AgentTriton.py path: private/plugin/agent/triton is_active: True # Basic Agent (for EP, to test the Agent base class) - AGENT: name: AgentBasic computer: EtienneComputer protocol: private/plugin/agent/AgentBasic.py # Agents IRAP SERVER - AGENT: name: AgentSST_irap computer: IRAP_SERVER - AGENT: name: AgentImagesProcessor_tnc_up1_irap computer: IRAP_SERVER protocol: privatedev/plugin/agent/AgentImagesProcessor_tnc_up1.py is_active: False - AGENT: name: AgentTriton_irap computer: IRAP_SERVER protocol: private/plugin/agent/AgentTriton.py path: private/plugin/agent/triton is_active: False - AGENT_DEVICE: name: A_EnvMonitor_irap computer: IRAP_SERVER protocol: private/plugin/agent/AgentM.py path: private/plugin/agent_devices device: TAROT_meteo is_real: False is_active: True # Basic Agent (for EP, to test the Agent base class) - AGENT: name: AgentBasic_irap computer: IRAP_SERVER protocol: private/plugin/agent/AgentBasic.py is_active: True # Agents for astroguita - AGENT: name: AgentTriton computer: astroguitaComputer protocol: private/plugin/agent/AgentTriton.py path: private/plugin/agent/triton - AGENT_DEVICE: name: AgentDevicePLC_astroguita computer: astroguitaComputer path: private/plugin/agent_devices device: TAROT_meteo protocol: private/plugin/agent_devices/AgentDevicePLC.py is_real: false - AGENT: name: A_EnvMonitor_astroguita computer: astroguitaComputer protocol: private/plugin/agent/AgentM.py path: private/plugin/agent TOPOLOGY: SECURITY: name: PLC COMPONENT_AGENTS: - WeatherStation: plc - BuildingCover: plc MOUNT: name: TM350 COMPONENT_AGENTS: - MountPointing: mount CHANNELS: # ========== debut new - CHANNEL: name: OpticalChannel_up1 symbol: CH1 AGENTS: - AD_camera_up1 - AD_focuser_up1 - A_AgentImagesProcessor_up1_akz COMPONENTS: - Takahashi_Epsilon_180ED_001 fn_contexts: img_L0: root_dir: "data/images/" description: "pyros_img_L0" extension: ".fit" naming: "PyROS.img.1" img_L1: root_dir: "data/images/" description: "pyros_img_L1" extension: ".fits" pathnaming: "PyROS.img.1" # ========== fin new - CHANNEL: name: OpticalChannel_up2 symbol: CH2 AGENTS: - focuser_up2 - camera_up2 #- A_AgentImagesProcessor_up2_akz COMPONENTS: - Takahashi_Epsilon_180ED_002 fn_contexts: img_L0: root_dir: "data/images/" description: "pyros_img_L0" extension: ".fit" naming: "PyROS.img.1" img_L1: root_dir: "data/images/" description: "pyros_img_L1" extension: ".fits" pathnaming: "PyROS.img.1" - CHANNEL: name: OpticalChannel_down1 symbol: CH3 AGENTS: - focuser_down1 - camera_down1 #- A_AgentImagesProcessor_down1_akz COMPONENTS: - Takahashi_Epsilon_180ED_003 fn_contexts: img_L0: root_dir: "data/images/" description: "pyros_img_L0" extension: ".fit" naming: "PyROS.img.1" img_L1: root_dir: "data/images/" description: "pyros_img_L1" extension: ".fits" pathnaming: "PyROS.img.1" - CHANNEL: name: OpticalChannel_down2 symbol: CH4 AGENTS: - focuser_down2 - camera_down2 #- A_AgentImagesProcessor_down2_akz COMPONENTS: - Takahashi_Epsilon_180ED_004 fn_contexts: img_L0: root_dir: "data/images/" description: "pyros_img_L0" extension: ".fit" naming: "PyROS.img.1" img_L1: root_dir: "data/images/" description: "pyros_img_L1" extension: ".fits" pathnaming: "PyROS.img.1" ALBUMS: - ALBUM : name: Altogether symbol: ATG description: All channels CHANNELS: - OpticalChannel_down2 - OpticalChannel_down1 - OpticalChannel_up2 - OpticalChannel_up1 - ALBUM : name: TwoDown symbol: 2DN description: Two channel of the down side CHANNELS: - OpticalChannel_down2 - OpticalChannel_down1 - ALBUM : name: TwoUp symbol: 2UP description: Two channel of the up side CHANNELS: - OpticalChannel_up2 - OpticalChannel_up1 - ALBUM : name: Three symbol: 3A1 description: Two channel of the down side and one up side (2nd up) CHANNELS: - OpticalChannel_down2 - OpticalChannel_down1 - OpticalChannel_up2 - ALBUM : name: One symbol: ONE description: One up channel (first) CHANNELS: - OpticalChannel_up1 LAYOUTS: - LAYOUT: name: Altogether description: All 4 cameras working altogether in sync ALBUMS: - Altogether - LAYOUT: name: TwoTwo description: Two groups (TwoUp & TwoDown) with 2 cameras each ALBUMS: - TwoDown - TwoUp - LAYOUT: name: ThreeOne description: Two groups, one with 3 cameras ("Three") and one with 1 camera ("One") ALBUMS: - Three - One IMAGE_CALIBRATIONS: SERIES: - SERIE: when: dawn category: BI name: bias1 mount: TM350 target: "HADEC 12h 0d" CHANNELS: - CHANNEL: name: OpticalChannel_up1 filter: None shutter: closed nb_images: 5 exptime: 0 binning: (1,1) valid_level_mean_minmax: (10, 5000) - CHANNEL: name: OpticalChannel_up2 filter: None shutter: closed nb_images: 5 exptime: 0 binning: (1,1) valid_level_mean_minmax: (10, 5000) - CHANNEL: name: OpticalChannel_down1 filter: None shutter: closed nb_images: 5 exptime: 0 binning: (1,1) valid_level_mean_minmax: (10, 5000) - CHANNEL: name: OpticalChannel_down2 filter: None shutter: closed nb_images: 5 exptime: 0 binning: (1,1) valid_level_mean_minmax: (10, 5000) - SERIE: when: dawn category: DA name: dark100s mount: TM350 target: "HADEC 12h 0d" CHANNELS: - CHANNEL: name: OpticalChannel_up1 filter: None shutter: closed nb_images: 5 exptime: 100 binning: (1,1) valid_level_mean_minmax: (10, 5000) - CHANNEL: name: OpticalChannel_up2 filter: None shutter: closed nb_images: 5 exptime: 100 binning: (1,1) valid_level_mean_minmax: (10, 5000) - CHANNEL: name: OpticalChannel_down1 filter: None shutter: closed nb_images: 5 exptime: 100 binning: (1,1) valid_level_mean_minmax: (10, 5000) - CHANNEL: name: OpticalChannel_down2 filter: None shutter: closed nb_images: 5 exptime: 100 binning: (1,1) valid_level_mean_minmax: (10, 5000) - SERIE: when: dawn category: DA name: dark10s mount: TM350 target: "HADEC 12h 0d" CHANNELS: - CHANNEL: name: OpticalChannel_up1 filter: None shutter: closed nb_images: 5 exptime: 10 binning: (1,1) valid_level_mean_minmax: (10, 5000) - CHANNEL: name: OpticalChannel_up2 filter: None shutter: closed nb_images: 5 exptime: 10 binning: (1,1) valid_level_mean_minmax: (10, 5000) - CHANNEL: name: OpticalChannel_down1 filter: None shutter: closed nb_images: 5 exptime: 10 binning: (1,1) valid_level_mean_minmax: (10, 5000) - CHANNEL: name: OpticalChannel_down2 filter: None shutter: closed nb_images: 5 exptime: 10 binning: (1,1) valid_level_mean_minmax: (10, 5000) - SERIE: when: dawn category: FL name: flat mount: TM350 target: "HADEC 12h 0d" CHANNELS: - CHANNEL: name: OpticalChannel_up1 filter: None shutter: opened nb_images: 5 exptime: 1 binning: (1,1) valid_level_mean_minmax: (8000, 50000) - CHANNEL: name: OpticalChannel_up2 filter: None shutter: opened nb_images: 5 exptime: 1 binning: (1,1) valid_level_mean_minmax: (8000, 50000) - CHANNEL: name: OpticalChannel_down1 filter: None shutter: opened nb_images: 5 exptime: 1 binning: (1,1) valid_level_mean_minmax: (8000, 50000) - CHANNEL: name: OpticalChannel_down2 filter: None shutter: opened nb_images: 5 exptime: 1 binning: (1,1) valid_level_mean_minmax: (8000, 50000)