observatory_guitalens.yml 4.84 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 enumarate 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-refractor
            _file: device_SkyWatcher_L80_snxx1.yml
            
        - DEVICE: 
            _name: Celestron-C11
            _file: device_Celestron_C11_sn974234.yml
            
        - DEVICE: 
            _name: ZWO-ASI1600MMPro
            _file: device_ZWO_ASI1600MM_snxx1.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 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-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
                    
                - AGENT_DEVICE:
                    _computer: MainComputer
                    _name: mount
                    _path: private/plugin/agent_devices
                    _device: AstroMecCA-TM350
                    _protocol: private/plugin/agent_devices/mount_protocol.py

                - AGENT_DEVICE:
                    _computer: None
                    _name: optic_up
                    _path: ~
                    _device: Celestron-C11
                    
                - AGENT_DEVICE:
                    _computer: MainComputer
                    _name: camera_up
                    _path: private/plugin/agent_devices
                    _device: FLI-Kepler4040
                    _protocol: private/plugin/agent_devices/camera_protocol.py

                - 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