MiniBots: scacchiere robotiche open-source con ESP32-C3 per un esercito di pedine autonome
Uno sviluppatore hardware noto online come 3DprintedLife ha svelato un progetto di robotica a sciame open-source che trasforma ogni singolo pezzo degli scacchi in un micro-robot autonomo, capace di navigazione indipendente, comunicazione wireless e auto-localizzazione. Il sistema, battezzato MiniBots, affronta una delle sfide principali nella miniaturizzazione e integrazione hardware.
L’architettura interna di un MiniBot
Ogni pezzo MiniBot è costruito attorno a un PCB customizzato, progettato per inserirsi all’interno di un guscio stampato in 3D. Al centro dello stack elettronico c’è un modulo ESP32-C3, scelto per il suo ingombro ridotto e le capacità wireless integrate. Questo modulo single-core gestisce le operazioni firmware principali e i loop di controllo di basso livello.
Per il movimento, ogni micro-robot utilizza due motori passo-passo ultra-miniaturizzati PMO8-2, ciascuno accoppiato a un driver integrato dedicato. Questi minuscoli motori azionano ruote in miniatura tramite attrito diretto, permettendo al pezzo di ruotare e spostarsi con precisione sulla superficie liscia della scacchiera. L’alimentazione è affidata a una batteria LiPo da 170 mAh nascosta alla base.
Coordinamento a sciame
Per coordinare i movimenti di 32 robot indipendenti simultaneamente, il sistema utilizza una gerarchia di controllo a due livelli. Un modulo hub centrale funge da controller master, utilizzando il protocollo wireless a bassa latenza ESP-NOW per comunicare direttamente con ogni pezzo. La scheda principale dell’hub, anch’essa basata su ESP32-C3, si collega a un Raspberry Pi tramite collegamento seriale. Il Raspberry Pi gestisce il coordinamento di alto livello e gli script di esecuzione in Python.
Auto-localizzazione elettromagnetica
La sfida più complessa del progetto è il posizionamento. La soluzione finale utilizza un sistema di tracciamento elettromagnetico specializzato: una serie di elettromagneti di scansione è incorporata direttamente sotto la superficie della scacchiera, mentre ogni MiniBot è dotato di un magnetometro interno che misura le fluttuazioni del campo magnetico locale.
Grazie alla sincronizzazione precisa tramite ESP-NOW, la scacchiera attiva gli elettromagneti in una finestra temporale sequenziale. Mentre gli elettromagneti si attivano, il magnetometro all’interno del pezzo registra le intensità del campo variabili. Il software di bordo esegue un algoritmo di triangolazione, permettendo al robot di calcolare le sue coordinate precise rispetto alle sorgenti magnetiche attive.
Stato del prototipo
Un prototipo a pezzo singolo ha dimostrato con successo la validità degli algoritmi di movimento e posizionamento, ma scalare il concetto a uno sciame completo di 32 pezzi presenta sfide di debugging in corso. Durante i test strutturali, lo sviluppatore ha notato che l’architettura single-core dell’ESP32-C3 introduce piccoli bug di temporizzazione nel firmware di localizzazione, che richiederanno modifiche software minori in un aggiornamento futuro.