Project

General

Profile

Actions

Graphical User Interface (Reference guide)

The graphical interface use a collection of features (mapping, sensors monitoring, mission sending...) and ease their utilization by providing a visualization of the current state of the UAVs. It also provides tools to update mapping process and data process in real time.

Launching the graphical interface

Before launching the graphical interface, you need to have installed the nephelae_gui package. You can find the repository here.
You'll need also to create you own configuration file (this file is meant to load plugins, maps and scenarios). Everything you need to know about their creation can be found here.
Once its done, you can launch the graphical interface by doing make runserver command inside the root of the repository of nephelae_gui.

Accessing the graphical interface

The graphical interface takes form of a webpage, that can be accessed through the localhost port when the server is launched on your machine using your everyday web browser.

Note that the localhost can be replaced by 0.0.0.0 or 127.0.0.1 (localhost is just an alias).
If the server is running on another machine inside you network, you can replace the localhost part by the address of the machine on your network. For instance, if you want to connect to a distant server, you'll need first to know the address of the machine on your private network (let's say 192.168.0.251), you'll need to enter this in your web browser :

Either way, you should be welcomed, if successful, with this page :

If not, something is maybe not working with your server or network.

Navigating in the graphical interface

In this section we will overview all the pages of C.A.M.S. graphical interface and what you can do inside each of them.

Mapping page

The mapping page is one of the principal pages you will use when flying an UAV. This page shows the different UAVs flying represented by the markers of different colors (here, the UAV 200 is represented by the blue marker, and the trail is his done trajectory). The black box offers the possibility to change the altitude of the map (in meters) displayed and the time length of the trajectory buffer (in seconds). You can also update the wind map by sending manual samples to the database or by using the samples received by the UAV of your choice (select your UAV by changing the producer value). The tracked UAV follows the altitude of the selected UAV. Setting this to None let the user change the altitude manually. Finally the cloud data tick box shows the different centers and bounding boxes of each displayed cloud.

The value of the wind map is displayed in the footing note (in the bottom right corner).
You can select which map you want to show with this interface (that can be found just above the footing note).

Note that besides the UAV layer, only one map will be visible because of no transparency between map layers
For instance, if you select the gaussian processed map instead of the ground truth, something like this will be displayed.

Please do not use this page on multiple machines, because of the heavy need of memory.
From this page, it is also possible to add a cloud center, this center will update periodically with the wind and the predictions. The center is useful for the rosette pattern.
It is also possible to create new missions.

These missions can be accepted or rejected within the next page.

Mission validation page

The mission validation page is the page where you can accept or reject missions for specific UAVs. Each tile depicts which UAV is targeted and its mission and each parameter value for this mission. Clicking on reject destroys the miission without sending it to the autopilot. Clicking on accept sends the mission to the autopilot, and updates the time graph on the fleet page.

Fleet page

The fleet page is the page where you can see the state of each UAV at real-time. Each line of the box represent an attribute of the UAV and its value on the far right of the line. The green box represent the time the UAV spent in the different blocks.
For instance the value [6: 0:26] in the green box says that the UAV is currently flying in the block with id 6 (blocks are STANDBY, MISSION, LINE..., refer to your autopilot) since 26 seconds.
The ticking box in the black box shows more attributes of the UAV if set to true.
In the timeline chart, you can see every missions that are in the list of missions. If the list of missions is empty for an UAV, the line will not be displayed. Each cell of a line represent a mission with this scheme => id : missionName.
You can interact with the timeline chart and the list of missions with the buttons NEW MISSION, NEXT MISSION and END MISSION.
NEW MISSION opens the same mission creation menu that the one you can see in the mapping page. However, this time some of the fields are empty.
NEXT MISSION terminates the mission currently executed by the UAV (if it was executed), pop the mission out of the list of missions.
END MISSION terminates all missions and empty the list of missions.

Sensor data pages

There is two pages that are very similar :

Sensor 2D page

The sensor 2D page is a page that describe the samples sent by the UAVs during time (both static and in real-time, chosen by the user), displaying in 2 dimensions. Y axis is value and X axis is time. In this image, you can see the samples of humidity, vertical wind and temperature during time.
In the black box you can set time length of the trail (in seconds). Here, 60 seconds means that the samples displayed are the latest received in the 60 seconds (if the time was 460, you will be seeing samples between 400 and 460 seconds).
Setting streaming to false enables the static mode.
In this mode, you will chose a start buffer and an end buffer, the chart will stop updating peridocally. The start buffer sets the time where the chart begins, and the end buffer, where it ends. For instance setting start buffer to 90 and end buffer to 100 displays all the samples between t=90 and t=100.

Sensor 3D page

The sensor 3D page is a page that describe the samples sent by the UAVs during time (both static and in real-tine, chosen by the user), displaying it in 3 dimensions. This page works the same way the page sensor 2D works for most of it. The only changes are :
- Each sample is displayed in with the position it has been found (X, Y, Z) in meters. The color, normalized with each other sample, is associated with the value. To know the value of a sample, just hover on it, and a small tooltip will appear giving all the informations displayable about it.
- Only one chart can be displayed at a time. To select a chart, just change the value of view in the black box.

Vertical profiles page

The vertical profiles page is a page that describe the samples by the UAVs by its altitude (both static and in real-time, chosen by the user). It is the same as the sensors2D.png but instead of display value in Y axis and time in X axis, it displays value in X axis and altitude in Y axis.

Cloud analysis page

You can use this page to display static slice of any map you want. The map displayed can be chosen by changing the value contained inside the Map field.
A lot of parameters can be changed for the displaying of the slice :
- When scale is false, you can change X and Y axis meters (for instance setting X=1000 and Y=2000, when origin is 0,0 it will display X=-500:500 and Y=-1000:1000)
- When scale is true, only one slide will appear and it changes both X and Y axis in meters
- You can set the time of the slice by changing the time field
- You can set the altitude (in meters) by changing the altitude field.
- When no UAV is followed, the center is chosen by the user (X,Y).
- When a UAV is followed, the center of the map is set on the position of the UAV in X and Y. The UAV is displayed on the map.
- You can change the threshold of clusters for drawing bounding boxes, centers and contours by changing the threshold field value
- You can draw centers of clouds with the draw centers button
- You can draw contours of clouds with the draw contours button
- You can show the bounding boxes of clouds with the show boxes button

Monitor tracker page

For this page to work properly, you will need the Monitor plugin for the UAVs that uses a tracker.
The monitor tracker page is where you can manage the cloud center tracker of your UAV and changing its position, behavior and computation map.
The map on the left represents the computation map of the UAV and each point represent something (current position of the UAV, current position of the center tracker and previous position of the center tracker). Click on the map results by moving the tracker to a new position (the one you clicked on).
Note that the map will say "No data to display" when there is no tracker running for this UAV.
- Changing the UAV field value changes the UAV tracker (200 : tracker of the UAV 200, 201 : tracker of the UAV 201...)
- Setting nearest to true will automatically changes the position of the tracker and setting to the nearest cloud center. Setting it to false will prevent this behavior.
- Delta X and delta Y are the map slices in meters
- Stop tracking will stop the tracker.

Configuration database views page

The configuration database views can be used to change the parameters of the filters (also known as dataviews) during the flight.
Not all of the dataviews have parameters that can be changed, but the ones that can have their color in blue instead of grey. When clicking on a dataview, a popup will appear, similar to the ones used to create missions. You can, there, change the parameters to the one you need.
It is also possible to cut data that comes from a filter by clicking on a branch. A popup will appear, asking if you want to switch the state of the branch. (Blue => The data is flowing, Grey => The data will not be shown)
(Note that you can't do it for the ones that comes directly from the database)

Configuration maps page

The configuration map page can be used to change the parameters for map computation and display during flight. Note that you can also change the kernels parameters since they play a big part in map computation.
You can change the parameters of a map or a kernel by clicking on the associated button UPDATE MAP/KERNEL.
A popup will appear, similar to the ones you can find in configuration data views page.
You can, there, change the parameters to the one you need.

Updated by Rafael Bailon-Ruiz about 4 years ago · 6 revisions