Skip to content
Matthias Faessler edited this page Mar 20, 2018 · 16 revisions

RPG Quadrotor GUI

We provide a quadrotor GUI which looks as follows:

gui

Namespace and Connecting

This gui can be launch as it is done in our basic simulation launch file. We typically give every quadrotor a unique name and launch all quadrotor related nodes in a quad namespace to avoid interference between different quadrotors. The quadrotor namespace needs to be set in the gui but should be loaded correctly already if the nodes are launched as in the basic simulation launch file. If the quad namespace is correct, press the Connect button to have the gui connecting.

Once the GUI is connected you should see some feedback appearing below.

Autopilot Commands

Below the namespace, you have some buttons available to directly command the quadrotor. Check out the Overview and Concepts page for more details what is happening behind the scenes once you use these buttons.

  • The Arm Bridge has technically nothing to do with the autopilot but with whatever bridge is used. The bridge is the node that receives control commands from the autopilot and communicates them to a low level flight controller (e.g. SBUS bridge or RPG Rotors Interface). By arming the bridge you allow it to actually send commands to the low level controller. This has to be pressed only once and is a safety feature.
  • The Start button makes the quadrotor take off from the ground if the frame id of the state estimate is not vision and makes the quadrotor to go to a hover state if the frame id is vision.
  • The Force Hover button forces the autopilot go to a hover state. If necessary, it will first break the quadrotor's velocity down to go smoothly to hover.
  • The Land button makes the quadrotor land and switch off its propellers if its height is close to zero if the frame id of the state estimate is not vision. It will make the quadrotor go down "infinitely" if the frame id is vision.
  • The Off button switches the motors of at any time it is pressed. So be careful when using this during flight, the quadrotor might drop out of the sky if it is pressed unintentionally.
  • The Go To Pose button makes the autopilot fly the quadrotor fly to the position specified by the X, Y, and Z coordinates with the specified Heading in degrees.
Feedback

Below the buttons, you get feedback from the autopilot which helps you knowing what the system is doing.

  • The Autopilot Status provides the autopilot's state which is among the states defined here, it tells you how many trajectories the autopilot has in its queue and how long their total execution still lasts. Finally, it tells you what control command delay is set and how long the control computation took (This is typically way below a millisecond for the position controller).
  • The Low-Level Status provides information from the low level controller which is published by the used bridge. It tells you the battery voltage as well as the battery state and the low level control mode as defined in the LowLevelFeedback message.
  • The State Estimate provides the information about the frame id which the autopilot uses to apply different behaviours. It also provides the estimated position, velocity, orientation, and body rates.
  • The Reference State provides information about the current reference state that is used, together with the state estimate, to compute the control commands in the autopilot. It tells you the reference position, velocity, acceleration (from a reference trajectory, i.e., without gravity), and heading.

Gamepad

We are using Logitech F710 Gamepads to command quadrotors manually. For the gamepad to work as intended it requires a joy_node and a manual_flight_assistant to be started as it is e.g. the case in our basic simulation launch file. The gamepad needs to be set to XInput and then the inputs are mapped as follows:

gamepad

Usage on Real Quadrotors

How to use a Taranis Remote Control

This requires a Taranis remote control to be set up as explained on the RC Setup page.

Clone this wiki locally