observatory_guitalens.yml 4.92 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: Guitalens
    
    # === 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 enumerate the components.
        
        - DEVICE: 
            name: AstroMecCA_TM350
            file: device_Astromecca_TM350_sn001.yml
            
        - DEVICE: 
            name: PLC_meteo
            file: device_Raspberry_MiFe_sn004.yml
            # Describe here the configuration of the device in operation
            network_interface_index: 0
            network_ip: 192.168.0.2
            
        - DEVICE: 
            name: SkyWatcher_ED80
            file: device_SkyWatcher_ED80_snxx1.yml
            
        - DEVICE: 
            name: Celestron_C11
            file: device_Celestron_C11_sn974234.yml
            
        - DEVICE: 
            name: ZWO_ASI1600MMPro
            file: device_ZWO_ASI1600MMPro_sn91C0f0405080900.yml
            
        - DEVICE: 
           name: FLI_Kepler4040
           file: device_FLI_Kepler4040_sn2821221.yml
            
        - DEVICE: 
           name: FLI_KeplerGPS
           file: device_FLI_KITS_sn0x1.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 infile)
           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_prototype
            home: "GPS 2.0375 E 43.6443484725 136.9"
            horizon:
                type: ALTAZ
                line: [ [0,0], [360,0] ]
                
            DATABASE:
                computer: MainComputer
                file: pyros/docker/.env
                    
            AGENTS:
            
                - AGENT_DEVICE:
                    computer: MainComputer
                    name: plc
                    path: private/plugin/agent_devices
                    device: PLC_meteo
                    protocol: private/plugin/agent_devices/plc_protocol.py
                    is_real: False
                    
                - AGENT_DEVICE:
                    computer: MainComputer
                    name: mount
                    path: private/plugin/agent_devices
                    device: AstroMecCA_TM350
                    protocol: private/plugin/agent_devices/mount_protocol.py
                    is_real: False

                - AGENT_DEVICE:
                    computer: None
                    name: optic_up
                    path: ~
                    device: Celestron_C11
                    is_real: False
                    
                - AGENT_DEVICE:
                    computer: MainComputer
                    name: camera_up
                    path: private/plugin/agent_devices
                    device: FLI_Kepler4040
                    protocol: private/plugin/agent_devices/camera_protocol.py
                    is_real: False

                - AGENT:
                    computer: MainComputer
                    name: majordome
                    path: ~
            
            TOPOLOGY:
            
                SECURITY:
                    name: PLC
                    COMPONENT_AGENTS:
                        - WeatherStation: plc
                        - BuildingCover: plc

                MOUNT:
                    name: TM350_prototype
                    COMPONENT_AGENTS:
                        - MountPointing: mount
                    
                CHANNELS:
                              
                    - CHANNEL:
                        name: OpticalChannel_up
                        COMPONENT_AGENTS:
                            - OpticImager: optic_up
                            - DetectorSensor: camera_up
                            - DetectorShutter: camera_up
                            - DetectorTimer: camera_up

                CHANNEL_GROUPS:
                    
                    logic: 'or' # opt
                    GROUPS:
                        - GROUP:
                            logic: 'and' # opt
                            channels:
                                - OpticalChannel_up