Firefly Eindhoven - Localization - Ultrasound: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
Line 14: Line 14:


===Re-using the previous setup===
===Re-using the previous setup===
To re-use a previous setup, it suffices to only physically set it up according to its last configuration, turn on the beacons and plug in the modem to a laptop, as the modem stores its settings and the stationary beacon map in its memory. The beacons will then automatically be waken by up by the modem and the system will start functioning as before if all goes well. However, make sure all beacons are in appropriate mode (power switch on, DFU switch off, switches are found on the beacon itself) and are all charged.


====Dashboard====
====Dashboard====

Revision as of 13:47, 23 May 2018

This page discusses the Ultrasound system manufactured and distributed by Marvelmind Robotics [1]. The working principle of the system will briefly be discussed followed by a user manual on the system.

Working principle

The Ultrasound system by Marvelmind consists of small (~7cmx7cm) beacons (recognized by the 5 ultrasound transmitters on top) and a modem (~3cmx3cm). For the system to work, one should assign at least 2 (2D location estimation) or 3 (3D location estimation) beacons to be stationary. The stationary beacons function as an anchor point in the world and the positions of these beacons need to be known as accurately as possible (+- 3 cm) for good results. Mobile beacons (i.e. non-stationary beacons, also called hedge beacons) can then be triangulated given the distances to each stationary beacon and the location of these stationary beacons in the world frame. This is done by transmitting an ultrasound signal from the mobile beacon. This signal is then received by the stationary beacons, which then determine the range to the mobile beacon by an algorithm created by Marvelmind. These distances are send to the modem through radio with a predefined radio profile. The modem then triangulates the mobile beacons based on these distances.

Multiple beacons are served sequentially, meaning that the rate at which the system functions is some base rate divided by the amount of beacons. On their website, Marvelmind advertises a base rate of 40 hertz. However, after experimenting with the beacons, changing settings such that the system should perform optimally and consulting the Marvelmind help desk, the maximum base rate was found to be 25 Hz under optimal conditions. These optimal conditions included the beacons being no more than 2 meter apart, setting this as upper bound in the software and communicating with the highest radio profile, which are all the tunable parameters to change the rate according to the manual, help desk and YouTube videos. Creating some decent spacing between the beacons to cover an appropriate flying area decreases this base rate to 18 hertz. Selecting a radio profile with an acceptable noise level decreases the base rate to 12 hertz for a single beacon. Therefore, to localize 3 drones with 3 beacons (no rotation), a rate of 3 to 4 hertz is achieved.

User manual

Installation

This documentation will not focus on installing the dashboard (graphical software tool to view beacon output, change the configuration and settings) and the drivers for the modem. The instructions on how to do this can be found at [2]. The dashboard can be downloaded at [3].

Setting up the system through Dashboard

Possible example setup

Re-using the previous setup

To re-use a previous setup, it suffices to only physically set it up according to its last configuration, turn on the beacons and plug in the modem to a laptop, as the modem stores its settings and the stationary beacon map in its memory. The beacons will then automatically be waken by up by the modem and the system will start functioning as before if all goes well. However, make sure all beacons are in appropriate mode (power switch on, DFU switch off, switches are found on the beacon itself) and are all charged.

Dashboard

C

Python

Possible problems and solutions

Software

  • Link to code repository