Skip to content

Latest commit

 

History

History
196 lines (125 loc) · 5.5 KB

README.md

File metadata and controls

196 lines (125 loc) · 5.5 KB

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

FlightGear GCS Interpreter

An Ground Control Stations interpreter for the FlightGear simulator.
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Installation
  3. Usage
  4. Flowchart
  5. Contributing
  6. License
  7. Contact
  8. See also

About The Project

This project is a Ground Control Stations interpreter for the FlightGear simulator. The commands to control the drone are given in a text file, the interpeter reads and executes the commands. The task is to make the drone take off and stable itself in the air automatically.

(back to top)

Design And Architecture

The Design and Architecture of the project are as follows:

  • Object-oriented programming

  • Command Pattern

  • Date access with O(1) time complexity

  • Threading

  • Singelton

  • Polymorphism

(back to top)

Installation

  • Clone the repo from https://github.com/RosenbergYehuda/FlightGear-GCS-Interpeter.git.
  • Download the simulator from FlightGear.org.
  • Copy the generic_small file from the repository and paste it in the protocol folder at the location of the FlightGear files on your system. for example: /usr/share/games/flightgear/Protocol.

(back to top)

Usage

  • Open your terminal and navigate to the cloned repository. then run make
  • run ./output
  • Lean back and chill while the drone will take off and stable itself in the air automatically.

(back to top)

Flowchart

graph TD;
    A[text file] --> B{Lexer};
    B --> C[CommandMap];
    B --> D[SymbolPathMap];
    C --> E[Command];
    E --> F[client];
    E --> G[Server];
    H[Drone] --> G;
    G --> I[(PathValueMap)];
    F --> H;
    
Loading

(back to top)

Contributing

Yehuda Z Rosenberg

(back to top)

License

The code is distributed under the MIT License. See LICENSE.txt for more information.

The Logo is distributed under the GNU General Public License. See for more information.

(back to top)

Contact

Yehuda Rosenberg

yehudazevr@gmail.com

Project Link: https://github.com/RosenbergYehuda/FlightGear-GCS-Interpeter

(back to top)

See also

https://wiki.flightgear.org/Main_Page

https://www.youtube.com/results?search_query=flightgear

(back to top)