I gradi di libertà (DoF, Degrees-of-Freedom) in ambito elettronico sono un concetto cruciale per comprendere le capacità di movimento e orientamento di un dispositivo in uno spazio tridimensionale. Sensori e sistemi di tracciamento permettono di interagire con l’ambiente circostante e di monitorare il movimento del dispositivo stesso.
Gli accelerometri, ad esempio, consentono di determinare i movimenti lineari del dispositivo sui tre assi x, y, z; i sensori di posizione forniscono informazioni sulla direzione e la posizione rispetto a un punto di riferimento. I giroscopi misurano la velocità angolare attorno ai tre assi mentre i magnetometri misurano il campo magnetico e sono spesso impiegati per determinare la direzione rispetto al campo magnetico terrestre.
Nei controller di gioco, nei droni, nei dispositivi per la realtà virtuale (VR) e aumentata (AR), la capacità di monitorare i movimenti e l’orientamento è fondamentale per garantire un’esperienza utente immersiva e interattiva. Nel caso dei dispositivi di input come le penne digitali, i gradi di libertà consentono di tracciare in modo preciso i movimenti dell’utente, facilitando l’interazione con il sistema.
Cos’è e come funziona D-POINT, la penna digitale a 6 gradi di libertà (DoF)
Su GitHub è appena spuntato l’interessante progetto di una penna digitale open source. Battezzata D-POINT, utilizza l’accoppiata tracking ottico-inerziale assicurando input a 6 gradi di libertà con bassa latenza, sensibilità alla pressione e precisione sub-millimetrica. La penna può essere utilizzata su qualsiasi superficie piana e funziona con webcam di fascia consumer.
Il corpo principale della penna è stato stampato in 3D ed è formato da due metà, combinabili tra loro. La penna contiene un sensore di forza, una batteria al litio che si ricarica tramite USB-C e una scheda di sviluppo basata su Arduino per la logica e il Bluetooth.
Il prototipo di penna digitale si serve di 8 marker ArUco. Si tratta di segnali visivi utilizzati anche nelle applicazioni di computer vision per la stima della posizione e dell’orientamento di oggetti o dispositivi all’interno di uno spazio tridimensionale. Sono particolarmente utilizzati nei sistemi di tracciamento e riconoscimento basati su fotocamera.
I sei gradi di libertà descrivono i possibili movimenti che la penna può compiere lungo le tre diverse direzioni o assi: lungo l’asse x (avanti e indietro), lungo l’asse y (sinistra e destra), lungo l’asse z (su e giù), rotazione intorno all’asse x, all’asse y e all’asse z.
Visual Pose Estimation (VPE)
La stima visuale della posa, o Visual Pose Estimation (VPE), è un processo che utilizza informazioni visive, spesso acquisite da una fotocamera o da un sistema di visione, per stimare la posizione e l’orientamento di un oggetto rispetto a un sistema di coordinate di riferimento. La tecnica è ampiamente utilizzata in contesti di computer vision, robotica, realtà aumentata e altri campi in cui è necessario conoscere la posizione e l’orientamento di oggetti o dispositivi all’interno di uno spazio tridimensionale.
Una fotocamera o un sistema di visione cattura un’immagine della scena in cui si trova l’oggetto di interesse. Questa immagine può contenere caratteristiche visive, come punti di riferimento o marker, che possono essere utilizzati per stabilire la posizione e l’orientamento dell’oggetto. I marker ArUco, citati in precedenza, sono utilizzati proprio come punti di riferimento noti.
Gli algoritmi di stima della posa calcolano la posizione e l’orientamento dell’oggetto rispetto alla fotocamera o al sistema di visione.
D-POINT si basa su un approccio in quattro fasi: in primis utilizza OpenCV, libreria software multipiattaforma per la visione artificiale, al fine di rilevare gli angoli di ciascun marker ArUco visibile sulla penna. Si passa poi a sfruttare un semplice modello di movimento 2D per stimare e correggere gli effetti del rolling shutter sulle posizioni osservate.
L’algoritmo PnP, abbreviazione di “Perspective-n-Point,” è quindi utilizzato per stimare la posizione e l’orientamento dell’oggetto in uno spazio 3D rispetto alla telecamera. Dato un insieme di punti 3D noti e le loro corrispondenti proiezioni 2D sulla fotocamera, l’algoritmo PnP stima la posa dell’oggetto rispetto alla telecamera.
Infine, servendosi delle informazioni raccolte, D-POINT calcola la posizione e l’orientamento della punta della penna rispetto alla superficie di disegno.
File di progettazione e codice sorgente disponibili per chi volesse realizzare la penna digitale intelligente
L’autore del progetto D-POINT spiega che il dispositivo è nato ai fini della discussione di una tesi di laurea. Al momento, quindi, non c’è nulla di “plug and play“: chiunque fosse interessato, può comunque utilizzare i file di progettazione e il codice sorgente pubblicati su GitHub per realizzare in proprio la penna 6 DoF e per migliorarla ulteriormente.