Skip to content

Localisation

Hrisabh Yadav edited this page Nov 14, 2025 · 1 revision

Localisation.h

Localization system for position tracking using various positioning technologies.

Enumerations

localisation_type

typedef enum {
    UWB,        // Ultra-Wideband positioning
    WHYCON,     // WhyCon visual positioning
    VICON       // Vicon motion capture system
} localisation_type;

Localisation Class

Global instance: Localisation

void Localisation.init(localisation_type localisation)

Initializes localization system with specified type.

Parameters:

  • localisation - Type of localization system (UWB, WHYCON, VICON)

int16_t Localisation.get(axis_e AXIS)

Gets position data from localization system.

Parameters:

  • AXIS - Axis to get position for (X, Y, Z)

Returns: Position coordinate for specified axis

Usage Example

// Initialize UWB localization
Localisation.init(UWB);

// Get current position
int16_t posX = Localisation.get(X);
int16_t posY = Localisation.get(Y);
int16_t posZ = Localisation.get(Z);

Monitor_Print("Position X: ", posX);
Monitor_Print("Position Y: ", posY);
Monitor_Print("Position Z: ", posZ);

// Position-based navigation
int16_t targetX = 500;  // 50cm
int16_t errorX = targetX - posX;

if (abs(errorX) > 50) {
    // Adjust position
    setDesiredAngle(AG_ROLL, errorX / 10);
}

Clone this wiki locally