Challenge Summary
Welcome to the “NASA Ground Control Station - Safe2Ditch Design Challenge”! The scope of this challenge is to add a new feature to the NASA Ground Control Station (NGCS) for performing emergency landings. NGCS is a software that will safely be used for live flight operations, while also providing functionality for researching advanced algorithms and human-automation teaming concepts.
By building upon the foundation of a trusted open-source GCS software (QGroundControl), the NASA GCS can leverage existing safety and testing while adding experimental features. We have designed the NASA GCS in a previous challenge and now we’ll continue to build on that solution. Safety features are extremely important for flying drones. In the situation when a drone must land due to an emergency, a crash management system, Safe2Ditch, will play a key role.
Please read the challenge specifications carefully and let us know if you have any questions in the forums.
Note 1: This is one in a series of challenges for the same project. Jump in now to get a good start!
Note 2: As the previous design was built on Sketch, we will only allow Sketch and XD source files for this challenge. You will be expected to use those source files. For using XD, you can open the source files and work on them as usual due to their compatibility
Round 1
Submit your initial designs for checkpoint review. Feel free to add any screens which are necessary to explain your concept.- Plan View
- Add Ditch Sites (plan view)
- Remove Ditch Sites (plan view
Round 2
Submit your final designs plus checkpoint feedback implemented. Feel free to add any screens which are necessary to explain your concept.- Plan View
- Add Ditch Sites (plan view)
- Remove Ditch Sites (plan view)
- Safe2Ditch enabled (flight view)
- Ditch Sites Visualization (flight view)
- Ditch Site Details (flight view)
Challenge Objectives
- Desktop application for Windows 10 (however the application will work on all platforms)
- 6 screens to be designed
- The design will be based on the previous design for the NASA GCS software
- The design should be focused more towards touch interactions than desktop mouse interactions (similar to QGroundControl, that NGCS is based on)
- The UI is assumed to be viewed on the large size viewport specified (1920px x 1080px). Please consider that in your designs.
- Focusing on a single drone scenario only
Application Overview
- The purpose of this challenge is to add a new feature to NASA GCS, a crash management system. This feature, called Safe2Ditch, will land the vehicle safely in cases of an emergency.
- The user will have the ability to add and remove safe landing areas before the drone is launched.
- With current drone flights, a safety pilot is needed in case of emergency situations to land the drone. Going forward using Safe2Ditch, the drone will land automatically in a safe place.
Audience
- NASA employees who use drones for live flight operations, and to provide functionality necessary for researching advanced algorithms.
Persona
- Name: Mike
- Occupation: NASA drone researcher
- Goals:
- Get notification of an emergency situation and quickly see safe ditch sites for landing.
- Assess the situation and observe how the vehicle lands safely in an autonomous mode.
- Frustrations:
- When an emergency situation is met by a drone today, there must be a safety pilot to manually control the landing of the drone. This is needed to maintain safety for people and properties in the area.
- Employing the safety pilots is cost prohibitive and limits the usage of drones.
- The use of 2 separate tools to manage drone functions (NASA GCS and Safe2Ditch) is not convenient.
- Wants:
- A way to autonomously perform emergency management activities as a replacement to the human pilot
- The ability to define safe areas before the drone starts to fly
- Integrate Safe2Ditch with the NASA CGS
User Story
Mike is using the NASA Ground Control Station (which is based on an open source, QGroundControl software) to launch his drone, set up its trajectory and track it. QGroundControl (QGC) can run flight simulations with virtual drones or real drones.
Once the drone is launched, Mike can create waypoints to define a specific path or open a file to load a predefined path. He knows that the safety of both the drones and people are important. So, after creating the flight path, he will add ditch sites (safe areas) to land on the map view. Once the drone is launched, there could be issues with the vehicle - it can’t continue along his route or the battery is running down. In that case, Mike will rely on Safe2Ditch software to read the safe areas around the drone’s position and detect the best and next-best landing spaces. The vehicle will then automatically land at the best landing space.
Design Goals & Principles
- Base your design for this challenge on the previously designed NASA GCS
- Any elements newly added should look as they belong to the existing application (follow same design style)
- Keep in mind that the main OS for this is Windows 10, however the application will work on all platforms
- The design should be more focused on touch interactions than desktop mouse interactions (similar to QGroundControl)
Exploration Score
In terms of expectations, we would like to measure the concept against the following in the one to ten scales:
- Creativity: 3
- 1: barely new ideas
- 10: a utopic product with features not proven to be able to be fully implemented
- Aesthetics: 8
- 1: low-fidelity design, wireframe or plain sketch
- 10: top-notch finished looking visual design
- Exploration: 1
- 1: strictly follow an existing reference or production guideline
- 10: open to alternative workflows/features not listed here that would help the overall application
- Branding: 7
- 1: don’t care at all about the branding just functionality
- 10: without a properly branded product there is no success
Glossary
GCS = Ground Control Station is a control software for Unmanned Aerial Vehicles (UAVs also named drones). The hardware includes the Human-Machine Interface, computer, telemetry, video capture card and aerials for the control, video and data links to the UAV. You can see some examples here
NGCS = NASA Ground Control Station
QGC = QGroundControl - is an open-source software that provides full flight control and mission planning for drones. NASA Ground Control Station will be built on it to leverage existing safety while adding experimental features.
Waypoint trail = represents the vehicle flight plan and consists of several points with coordinates where the drone will fly through
Safe2Ditch = it’s a crash management system that will stay on the drone as a small onboard processor. Its role it’s to detect safe ditches and automatically land.
Ditch sites = safe areas to land in case of an emergency such as battery running low or important vehicle issues that prevent it from continuing along the flight path
Site = refers to location/ position of a drone landing area in this context
Vehicle = it’s used for referring to a drone in this challenge
Background
Note: This is background information for your understanding. You do NOT need to design how the connection is happening. Only design the required screens listed below.
The NASA Ground Control Station is built upon the foundation of a trusted open-source GCS software (QGroundControl), to leverage existing safety and testing while adding experimental features. QGroundControl (QGC) is an open-source GCS that provides full flight control and mission planning for drones. The software is designed to provide a single codebase that can run across multiple OS platforms and devices. We are going to focus on Windows 10 OS.
Another open-source GCS software that is similar to QGC, and can be referenced for implementation ideas, is ArduPilot Mission Planner. Mission Planner is only mentioned here for reference. It will not be integrated with the NASA GCS.
QGC doesn’t have simulation capabilities built in now. However, in order to do simulations we use the ArduPilot Mission Planner to get the vehicle running, and then connect with QGC to track all data. To set up your vehicle, follow the steps from this video.
We have recently run a challenge to design the NGCS interface and add ICAROUS feature to detect and avoid collisions. In this challenge we are focusing on the Safe2Ditch mechanism to perform emergency landing for a single drone scenario only. Safe2Ditch runs on the computer on the vehicle and it keeps track of safe areas to land while the vehicle is flying around its route. It knows where safe areas are and in case of an emergency situation, when it has to execute a landing it will pick the best location based. As we approach the location, it will use its camera to detect if there’s any movement in the area and if there is, it will go to the next best location.
This sketch explains the Safe2Ditch mechanism.
As the previous design was built on Sketch, we will only allow Sketch and XD source files for this challenge. You will be required to use and build on these original source files. For using XD, you can open the source files and work on them as usual due to their compatibility. Download from here the source file from the previous challenge.
Screens Requirements
1. Plan View
The Plan View is the display where the user will create the flight path using several waypoints. Here is a screenshot of how this page looks in QGroundControl and all of the controls it must include.
In addition to this, when Safe2Ditch is enabled, we will need to see this represented in the interface as well. Similar to ICAROUS, Safe2Ditch should be displayed in its own widget as active/inactive.
Note: Safe2Ditch should be displayed as a READ ONLY state indicator. The user must see an indication that it is active or not active. The user will have no control over this from their interface. They will not be able to toggle it on / off. (This will be done using some messages to the vehicle, but it’s out of scope of this challenge).
The user should have options to add and remove ditch sites on the map. Tapping on a specific ditch site would display additional information about that ditch site (see the last screen in the list).
If Safe2Ditch is enabled, but the user has not created any safe ditch site, the system should give a notification/warning when saving the plan view.
2. Add Ditch Sites (plan view)
When the Safe2Ditch is enabled in the NCGS, the user will have access to a button for adding new ditch sites to the plan view. He will click on the map and a popup will display. The popup will include a few parameters to be completed to define the specific ditch site:
- Name of the ditch site
- Latitude (in degrees)
- Longitude (in degrees)
- Altitude of the site (in meters above takeoff location). Note: altitude is measured from sea level and this will show the difference between takeoff point altitude and Safe2Ditch site altitude.
- Radius of site (represented as a circle, measured in meters)
- Reliability of the site (from 0 to 100) - this is the percentage that a site will be usable and intruder free, how safe it is to land.
After adding ditch sites on the plan view, the user may save the flight path and the safe ditch areas. There should be an uploading progress bar to show progress as the waypoints and safe areas data is being sent to the drone. Then, a confirmation message should display noting that the upload was successfully completed and the vehicle received the data.
3. Remove Ditch Sites (plan view)
When the Safe2Ditch is enabled in the NGCS, the user will have access to a button to remove ditch sites from the map. We’re looking to your creativity on how to best do this - either a list with buttons to remove individually, tap the map to remove, your choice. The interface should display a confirmation message of successful removal.
4. Safe2Ditch enabled (flight view)
When the drone is flying with Safe2Ditch enabled and the flight goes smoothly, the user will need to see an indication that Safe2Ditch is active. The map view will look the same as in the sample screen. In this case, the user interface on the ‘Fly View’ should have a button to request all of the available ditch sites from Safe2Ditch. Pressing this button should send a message to the vehicle asking for that data. This button is in case of malfunction or some error in the system. It will probably not be used often since the NGCS should already know the available ditch sites before takeoff.
5. Ditch Sites Visualization (flight view)
If there is a potential emergency situation such as low battery or issue with the vehicle, the drone will not be able to follow the predefined route any longer. Then NGCS will receive messages from Safe2Ditch about the issue, along with a list of safe ditches sites noting the best site and next-best site (message example: “Emergency auto-landing activated”). All of these ditch sites should display on the map view as circles, polygons, icons or other representations. The best and next-best sites should be indicated with different colors, icons, or text. Tapping on the ditch site will display additional information about it.
During normal flight operations, Safe2Ditch will send updated ditch site data for individual sites, indicating that the site is either the best site or the next-best site. All ditch sites should be shown during normal flight operations (including best site and next best site), but they should be displayed in a way that doesn’t clutter the screen or distract the user. If Safe2Ditch determines that there is an emergency, then the ditch sites should become more prominent on the display. We’re looking forward to your ideas for this. Based on the position of the drone, the best site and next-best site can change quickly.
6. Ditch Site Details (flight view)
The user can tap on a ditch site to see its details such as:
- Name of the ditch site
- Site Type - This indicator shows if the site is the first best site or next best site to land or any other from the list (this parameter is defined as 0 - best site, 1 - next best site, 2 - all other sites). This is a parameter sent from the drone as read only, that’s why it’s missing when adding a new safe ditch site in plan view.
- Latitude (in degrees)
- Longitude (in degrees)
- Altitude of the site (in meters above takeoff location). Note: altitude is measured from sea level and this will show the difference between takeoff point altitude and Safe2Ditch site altitude.
- Radius (represented as a circle, measured in meters)
- Reliability of the site (from 0 to 100) - this is the percentage that a site will be usable and intruder free, how safe it is to land.
Assets
- You can find all assets mentioned above in this Google Drive folder.
Branding Guidelines
- Follow the NASA branding for colors only and logo
- Use the NASA Logo from here
- Fonts: use same fonts as in the provided source files
- Icons: try to keep the look and feel close to what we have now for our current design to keep the consistent look and feel and avoid any safety issues.
Size
Desktop: 1920px x 1080px (width x height)
Stock Photos and Icons
- Photos are not allowed in this challenge
- Icons: you can only use icons that are free (based on Topcoder icons policy) without giving attribution or design the icons yourself. If the icons are not free, we will ask them to be fixed in the final fixes.
- Fonts: use same fonts as in the provided source files
Marvel Prototype
- Upload your screens to Marvel App.
- Send your marvel app request to keyla. blue1@gmail.com or ask in the forums
- Include your Marvel app URL as a text file in your final submission. Label it “MarvelApp URL”.
Final Deliverables
- An archive called Source.zip file to include:
- All original source files created in Sketch and XD.
- An archive called Submission.zip file to include:
- All your design files in PNG or JPG format
- MarvelApp link for review and to provide feedback
- Your declaration files to include any notes about fonts usage, photo and icon declaration and link to your Marvel project
- Create a JPG preview file of 1024 x 1024 px
Please read the challenge specification carefully and watch the forums for any questions or feedback concerning this challenge. It is important that you monitor any updates provided by the client or Studio Admins in the forums. Please post any questions you might have for the client in the forums.