observatory_guitalens.yml 7.57 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:
        # === 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

            - 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

                
    # === 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: .database.env

            DEPENDENCIES:
            
                - DEPENDENCY:
                    computers: 
                        - MainComputer
                        - EtienneComputer
                    links:
                        - link:
                            type: git
                            name: guitastro_mount_astromecca
                            url: https://gitlab.irap.omp.eu/guitastrolib/guitastro_mount_astromecca
                            install: 
                                shell: /bin/sh
                                script: "guitastro/install/install.sh"
                        - link:
                            type: git
                            name: guitastro_camera_indi
                            url: https://gitlab.irap.omp.eu/guitastrolib/guitastro_camera_indi
                            install: 
                                shell: /bin/sh
                                script: "guitastro/install/install.sh"
                    
            AGENTS:
            
                - AGENT_DEVICE:
                    name: AgentM
                    computer: MainComputer
                    path: private/plugin/agent_devices
                    device: PLC_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: mount
                    computer: EtienneComputer
                    comm_access: "//./COM3" # parameters of the comm: support of the device, here only for serial comm
                    path: private/plugin/agent_devices
                    device: AstroMecCA_TM350
                    protocol: private/plugin/agent_devices/mount_protocol.py
                    is_real: False

                - AGENT_DEVICE:
                    name: optic_up
                    computer: None
                    path: ~
                    device: Celestron_C11
                    is_real: False
                    
                - AGENT_DEVICE:
                    name: camera_up
                    computer: MainComputer
                    path: private/plugin/agent_devices
                    device: FLI_Kepler4040
                    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
                

                - AGENT:
                    name: AgentScheduler
                    computer: MainComputer
                    protocol: private/plugin/agent/AgentScheduler.py


            
            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

                ALBUMS:
                
                    - ALBUM :
                        name: OpticalChannel
                        description: "Album with one channel"
                        CHANNELS:
                            - OpticalChannel_up

                LAYOUTS:

                    - LAYOUT:
                        name: OpticalChannel
                        description: Layout with one album
                        ALBUMS:
                            - OpticalChannel