Initial Design

Architecture

Initial Drone architecture will be using a Service containing N acyclic tasks to be triggered, all data signals will travel via the Service Agent layer to and from the UAV and the Ground Station.

Architecture design for Drone – Click on image to open full size version

Real time tasks will cross communicate but no acyclic task will communicate with a real time task. Services will be received via the Interface Rx component and decompiled into there corresponding tasks to be executed by the Interface Rx component. All data signals will be transmitted by the Interface Tx component.


Hardware

Initial design is separated into UAV and Ground Station Systems. The UAV System features five distinct hardware sub-systems:

  1. Flight Control
  2. Autonomous Flight
  3. Power Management
  4. Communication
  5. Camera (First Person View)
Hardware design for Drone & Ground station – Click on image to open full size version

The Camera (FPV) System will not be connected to the Arduino Mega 2560 Microcontroller and has a dedicated transmission interface, therefore this system requires no software development and no software solution will be designed.


Software

Initial Software Design contains eighteen system components:

  1. General Systems
    1. System Mode – Manage System Mode of software (Standby, Manual, Automatic)
  2. Flight Control System
    1. IMU – Interface to IMU chipset
    2. Motor – Interface to Motors
    3. PID – Calculate error from data read from IMU component
    4. Flight Control System – Manage Aerodynamic Profile and append with data from PID component and control Motor Speeds
    5. PWM Convertor – Convert calculated aerodynamic profile into power commands for the motors.
  3. Communication
    1. Interface Rx – Recieve external data signals sent by Pilot / Operator (Manual, Automatic, Flight Plan, X, Y, Z Orientation, Activate Automated Flight)
    2. Interface Tx – Transmit data signals to Ground Station (Telemetry XYZ, Abort Flight Message, Power Status Message, GPS Position)
  4. Automated Flight System
    1. Automated Flight System – Manage all Automated Sub Systems
    2. Route Guidance – Manage a list of Points to be flown in an automated Route, detect capture of points and calculate aerodynamic profile to travel between points
    3. Flight Plan – Stores all points to be flown in automated Route
    4. GPS – Interface to Global Positioning System
    5. Feasibility – Reads Wind Speed, Remaining Power, Present Position of Drone and calculates the feasibility of flight – aborts flight if not feasible.
    6. Pressure – Interface to Wind Pressure Sensor
    7. Obstacle Awareness System – Reads Ultrasonic Sensor data and compares data against Safety proximity profile, when profile exceeded obstacle is detected, a new point is calculated in the automated route and the drone flies to the new point to avoid the obstacle.
    8. Ultrasonic – Interface to Ultrasonic Sensors
  5. Power Management System
    1. Power Management – Reads Battery Amplitude and aborts flight if amplitude is too low
    2. Amplitude Sensor – Interface to Amplitude Sensor
Software design for Drone – Click on image to open full size version

Identified in the Software Design process are six real time cyclic tasks and six acyclic tasks:

  1. Acyclic Task
    1. Set System Mode Manual
    2. Set System Mode Automatic
    3. Upload Flight Plan
    4. Activate Automated Flight
    5. Set Roll, Pitch, Yaw, Thrust Aerodynamic Profile
    6. Abort Flight
  2. Cyclic Realtime Task
    1. Power Management
    2. GPS
    3. Route Guidance
    4. Feasability
    5. Obstacle Awareness
    6. Flight Control Behaviour