observatory_tnc.yml 14.1 KB
# 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_sn001.yml

            - DEVICE: 
                name: Takahashi_Epsilon_180ED_002
                file: device_Takahashi_180ED_sn002.yml

            - DEVICE: 
                name: Takahashi_Epsilon_180ED_003
                file: device_Takahashi_180ED_sn003.yml
                
            - DEVICE: 
                name: Takahashi_Epsilon_180ED_004
                file: device_Takahashi_180ED_sn004.yml
                
            - DEVICE: 
                name: FLI_Kepler4040_001
                file: device_FLI_Kepler4040_sn28212x1.yml
                
            - DEVICE: 
                name: FLI_Kepler4040_002
                file: device_FLI_Kepler4040_sn28212x2.yml
                
            - DEVICE: 
                name: FLI_Kepler4040_003
                file: device_FLI_Kepler4040_sn28212x3.yml
                
            - DEVICE: 
                name: FLI_Kepler4040_004
                file: device_FLI_Kepler4040_sn28212x4.yml
                
            - DEVICE: 
                name: FLI_KeplerGPS_001
                file: device_FLI_KITS_sn2x1.yml

            - DEVICE: 
                name: FLI_KeplerGPS_002
                file: device_FLI_KITS_sn2x2.yml

            - DEVICE: 
                name: FLI_KeplerGPS_003
                file: device_FLI_KITS_sn2x3.yml

            - DEVICE: 
                name: FLI_KeplerGPS_004
                file: device_FLI_KITS_sn2x4.yml
                
            - DEVICE: 
                name: Optec_TFC19740_001
                file: device_Optec_TFC19740_sn001.yml

            - DEVICE: 
                name: Optec_TFC19740_002
                file: device_Optec_TFC19740_sn002.yml

            - DEVICE: 
                name: Optec_TFC19740_003
                file: device_Optec_TFC19740_sn003.yml

            - DEVICE: 
                name: Optec_TFC19740_004
                file: device_Optec_TFC19740_sn004.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
                
    # === 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 
                    
            AGENTS:
            
                # ============================================
                - AGENT_DEVICE:
                    name: AgentM
                    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_DEVICE:
                    name: optic_up1
                    computer: MainComputer
                    path: ~
                    device: Takahashi_Epsilon_180ED_001
                    is_real: False

                - AGENT_DEVICE:
                    name: focuser_up1
                    computer: MainComputer
                    path: private/plugin/agent_devices
                    device: Optec_TFC19740_001
                    is_real: False
                    
                - AGENT_DEVICE:
                    name: camera_up1
                    computer: MainComputer
                    path: private/plugin/agent_devices
                    device: FLI_Kepler4040_001
                    protocol: private/plugin/agent_devices/camera_protocol.py
                    is_real: False

                # ============================================
                - 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: AgentSP
                    computer: MainComputer
                    protocol: private/plugin/agent/AgentSP.py

                # SF07-PLN (for AK)
                - AGENT:
                    name: AgentScheduler
                    computer: MainComputer
                    protocol: private/plugin/agent/AgentScheduler.py

                # SF11-IPC (for AK)
                - AGENT:
                    name: AgentImagesProcessor
                    computer: MainComputer
                    protocol: private/plugin/agent/AgentImagesProcessor.py


            TOPOLOGY:
            
                SECURITY:
                    name: PLC
                    COMPONENT_AGENTS:
                        - WeatherStation: plc
                        - BuildingCover: plc

                MOUNT:
                    name: TM350
                    COMPONENT_AGENTS:
                        - MountPointing: mount
                    
                CHANNELS:
                              
                    - CHANNEL:
                        name: OpticalChannel_up1
                        COMPONENT_AGENTS:
                            - OpticImager: optic_up1
                            - DetectorFocuser: focuser_up1
                            - DetectorSensor: camera_up1
                            - DetectorShutter: camera_up1
                            - DetectorTimer: camera_up1

                    - CHANNEL:
                        name: OpticalChannel_up2
                        COMPONENT_AGENTS:
                            - OpticImager: optic_up2
                            - DetectorFocuser: focuser_up2
                            - DetectorSensor: camera_up2
                            - DetectorShutter: camera_up2
                            - DetectorTimer: camera_up2

                    - CHANNEL:
                        name: OpticalChannel_down1
                        COMPONENT_AGENTS:
                            - OpticImager: optic_down1
                            - DetectorFocuser: focuser_down1
                            - DetectorSensor: camera_down1
                            - DetectorShutter: camera_down1
                            - DetectorTimer: camera_down1

                    - CHANNEL:
                        name: OpticalChannel_down2
                        COMPONENT_AGENTS:
                            - OpticImager: optic_down2
                            - DetectorFocuser: focuser_down2
                            - DetectorSensor: camera_down2
                            - DetectorShutter: camera_down2
                            - DetectorTimer: camera_down2

                ALBUMS:
                
                    - ALBUM :
                        name: AlTogether
                        description: All channels
                        CHANNELS:
                            - OpticalChannel_down2
                            - OpticalChannel_down1
                            - OpticalChannel_up2
                            - OpticalChannel_up1
                            
                    - ALBUM :
                        name: TwoDown
                        description: Two channel of the down side
                        CHANNELS:
                            - OpticalChannel_down2
                            - OpticalChannel_down1
                    - ALBUM :
                        name: TwoUp
                        description: Two channel of the up side
                        CHANNELS:
                            - OpticalChannel_up2
                            - OpticalChannel_up1

                    - ALBUM :
                        name: Three
                        description: Two channel of the down side and one up side (2nd up)
                        CHANNELS:
                            - OpticalChannel_down2
                            - OpticalChannel_down1
                            - OpticalChannel_up2

                    - ALBUM :
                        name: 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