Getting started with the SWARM Simulation Platform
These brief instructions will help you get started with the simulator. The other topics in this help provide additional information and detail about working with other aspects of this platform.
Building a Simulation
Welcome to the SWARM Developer System Cloud Version!
1. Start a SWARM RDS Server by Signing up for an account
We have a number of servers readily available on Amazon Web Services (AWS).
To get started, you will need to create an account at (www.swarmsim.io)[https://www.swarmsim.io].
2. Start the Server
Once you have logged in, you will see a green button on the dashboard at the bottom of the screen that says: "Cloud Server Manager".
Click that button and you will be taken to the main server management page.
Next, you will be able to select an environemnt to deploy and request a server. The process takes between 30 seconds and 1 minute to start.
You will then see the following screen, providing an IP address of the server to use in the following steps.
You can restart the system and turn it off when you are finished. If you do not submit a Simulation for an hour,
the system will automatically turn off.
3. Install and Prepare Your Environment
Please follow the guide for installation in [Installation Guide](mydoc_installation.md).
2. Install Your License Key
In the welcome email you received, please put the file labelled `LicenseKey.json` in
the `settings` folder in the root of the `SWARM-RDS-Client` repository.
3. Set Up Your Simulation
Look at the following file, as shown below, in the `settings` folder called `DefaultSimulationSettings.json`.
You can leave everything as it is above. This configuration will run a simulation with a
single agent with a single camera, returning to you a tar file containing the images
collected and a set of flight logs.
**Note** This file, along with the Trajectory you define, will be validated before submission.
4. Define Your Trajectory
You will need to set the set of points you want to fly. This can be done by modifying the file called `DefaultTrajectory.json` in the `settings` folder. Each point must have
the five fields as shown below and you are defining points in North, East and Down (NED).
5. Run the SWARM Developer Client
In another terminal, run the following command: `python3 main.py --map-name SWARMHome --ip-address IP_ADDRESS`. The IP_ADDRESS is the IP address provided when you started the SWARM RDS Server.
The system will validate your settings file and trajectory file to ensure they are valid and will run properly. Once you have submitted, you will see the following messages in the terminal.
6. View Your Simulation
View the Streaming output by going to any web browser and typing `IP_ADDRESS` where IP_ADDRESS is the IP address provided in the Welcome email, then click
start to view the stream. This is a fully interactive client that will allow you to control the camera. (Hit `F1` to view options!)
7. Collect and View the Data
Once the simulation has been completed, it will ask if you want to collect data from the
server. Enter 'Y'. This will start the download process.
8. View Your Data
Untar the tarball file by running `tar -xzvf data/example_data.tar.gz`. This will print out what files were collected. You can go to the `data` directory to see the files.
[titlepage]: titlepage.html
[tocpage]: tocpage.html
[index]: index.html
[roadmap]: roadmap.html
[mydoc_installation]: mydoc_installation.html
[mydoc_getting_started]: mydoc_getting_started.html
[px4_tutorial]: px4_tutorial.html
[custom_algorithm_gui]: custom_algorithm_gui.html
[custom_algorithm_cli]: custom_algorithm_cli.html
[developing_with_rds]: developing_with_rds.html
[data_collect_gui]: data_collect_gui.html
[data_collect_cli]: data_collect_cli.html
[mydoc_features]: mydoc_features.html
[pytorch]: pytorch.html
[currently_supported]: currently_supported.html
[environment_list]: environment_list.html
[environment_control]: environment_control.html
[multi_level]: multi_level.html
[swarm_core_api]: swarm_core_api.html
[swarm_firmware_api]: swarm_firmware_api.html
[sensors]: sensors.html
[algorithms]: algorithms.html
[pub_sub]: pub_sub.html
[configuration]: configuration.html
[px4_configuration]: px4_configuration.html
[ros_configuration]: ros_configuration.html
[swarm_classes]: swarm_classes.html
[mydoc_api_doc_index]: mydoc_api_doc_index.html
[mydoc_faq]: mydoc_faq.html
[mydoc_hyperlinks.html#automatedlinks]: mydoc_hyperlinks.html#automatedlinks
[mydoc_hyperlinks.html#bookmarklinks]: mydoc_hyperlinks.html#bookmarklinks
[mydoc_pages.html#someIdTag]: mydoc_pages.html#someIdTag
[index]: index.html