The software determines how the unmanned aircraft system performs the mission, interacts with the payload, processes data, and communicates state to the ground loop.
AERIS develops specialized software for new and existing UAS: onboard services, mission logic, payload controls, data processing, ground applications and integration interfaces.
Onboard software
The onboard software loop connects the flight controller, computing modules, sensors, payload, communications and other systems of the device.
Depending on the project, development may include:
- data exchange services between onboard components;
- payload control;
- equipment condition monitoring;
- collection and synchronization of telemetry;
- data processing directly on board;
- control of operating modes of individual subsystems;
- diagnostics and event recording.
Mission software
The mission level determines the sequence of system actions within the framework of a specific application task. This takes into account the route, stages of work, payload status, available resources and events that occur during the flight.
For specialized projects, AERIS develops mission logic for a specific operating scenario.
- fulfillment of specified mission stages;
- payload mode control;
- processing events and transition conditions between stages;
- control of application task execution;
- recording results and system status;
- interaction with ground software.
Payload Control
Cameras, thermal imaging systems, lidars, measuring instruments, dosing equipment and other modules require their own control logic and data exchange.
The software circuit determines the operating modes of the payload, synchronization with the state of the device, recording the results and transmitting information to other UAS components.
If necessary, automatic startup, stop, mode switching and equipment status monitoring scenarios are implemented depending on the mission stage.
Onboard data processing
Transferring the full amount of data to ground is not available in all configurations. High camera resolution, multiple sensor channels and limited communication bandwidth make onboard processing a distinct part of the architecture.
Depending on the task on board, the following can be performed:
- preliminary data filtering;
- highlighting significant events;
- image and video stream analysis;
- processing of measurement results;
- generation of reduced data sets for transmission;
- local storage of information until mission completion.
Computer Vision and AI
For tasks related to environmental analysis, onboard software can use computer vision and machine learning algorithms.
Their use is determined by the requirements of the project: object detection, scene analysis, classification of observations, assessment of the state of the environment, or preparation of data for further solution of a mission problem.
The computing architecture is selected taking into account the required performance, processing latency, power consumption and available platform resources.
Ground software
The ground loop provides access to the UAS status, mission parameters, payload, and performance results.
AERIS develops specialized operator interfaces and service applications for tasks where the capabilities of standard platform software are insufficient.
Functionality may include:
- preparing and loading missions;
- display of device status;
- payload control;
- work with telemetry;
- viewing and exporting results;
- equipment diagnostics;
- maintaining flight and event logs;
- system configuration management.
Integration with autopilot
Custom software often works in conjunction with an existing flight controller. To do this, a set of available data, control commands and interaction conditions between the mission level and the flight stabilization system is determined.
Within the framework of the project, exchange interfaces with the autopilot, mode control modules, telemetry processors and synchronization tools with external onboard components can be developed.
Interfaces and protocols
UAS typically includes equipment from several manufacturers with different hardware and software interfaces. For their joint work, software adapters, drivers and data exchange services are created.
Depending on the configuration, the project may include work with:
- CAN and CAN FD;
- Ethernet;
- UART and serial interfaces;
- USB;
- network APIs;
- telemetry protocols;
- proprietary equipment interfaces in the presence of documentation and access from the manufacturer.
Telemetry and logging
For operation, diagnostics and testing, it is important to maintain the operating history of the system. The software can record flight parameters, the state of computing modules, payload operation, errors and significant events.
The composition of the logged data is determined by the task of the project and the capabilities of the equipment used. For test systems, advanced logging of synchronized streams can be optionally used for subsequent analysis.
Software loop reliability
Onboard software operates under conditions of limited computing resources, unstable communications, changes in the availability of individual devices, and stringent requirements for response time.
When designing, the following are taken into account:
- monitoring the status of software components;
- equipment failure handling;
- limiting the influence of secondary functions on critical processes;
- recovery after restarting individual services;
- version and configuration control;
- logging errors for subsequent diagnostics.
Development for an existing platform
Specialized software can be created for an already operating UAS. In this case, the available platform interfaces, autopilot capabilities, computing resources and manufacturer limitations are first analyzed.
Once the available level of integration is determined, a software architecture is created that is compatible with the existing system and the required payload.
Development for AERIS platforms
For proprietary AERIS platforms, the software is developed in conjunction with the hardware architecture. This allows computational resources, sensor placement, energy constraints, and mission modes to be taken into account at the level of the original UAS configuration.
The software outline of a particular platform is determined by its purpose and stage of development. Some of the technologies and internal mechanisms of AERIS relate to the company’s own research base and are not disclosed as part of the open description of services.
Software testing
Verification begins with individual components and interfaces. Next, the software modules are combined into a target configuration and tested together with the equipment.
Depending on the project, the program may include:
- module and integration checks;
- working with simulators and recorded data streams;
- Hardware-in-the-Loop testing;
- bench tests with target equipment;
- testing on a ground platform;
- flight testing of functions dependent on the real UAS mode.
What does the customer get?
The composition of the result is fixed at the stage of problem formulation and depends on the level of development.
The project may include:
- source program code in the agreed volume;
- assembled software components;
- description of architecture and interfaces;
- configuration files;
- deployment instructions;
- materials on operation and diagnostics;
- results of the inspections carried out;
- subsequent support and development of the software package.
The AERIS approach
UAS software is designed taking into account the physical architecture of the device, the capabilities of the equipment and the conditions of a specific mission. This allows software functions to be linked to real platform constraints already at the design stage.
For each project, the boundaries of responsibility of software components, data requirements, critical interfaces and verification procedures are determined. This structure simplifies further development of the system, replacement of equipment and diagnostics in operation.