mi perplime l'ultrasonico in verticale
Da molteplici prove da me testè effettuate ho arguito una cosa importante: se il robot è fermo le misure sono "precise" e ripetibili (lo scarto, sebbene importante, è costante) e non è influenzato dall'orientamento del sensore.
Il tutto peggiora notevolmente quando il robot è in movimento: le misure diventano erranti ed aleatorie, spesso restituendo un errore di lettura che va correttamente gestito.
Ad esempio, se mi sto avvicinando in linea retta ad un ostacolo, le letture possono decrescere (come ci si aspetta) ma ci possono pure essere degli errori di lettura o addirittura dei valori in crescita dando l'impressione su due dati consecutivi che l'ostacolo si stia allontanando o che non sia più in vista.
Quindi se confronti i dati odometrici con quelli del sensore ti ritrovi dei valori sempre diversi anche ad ostacolo fermo, figurati se si sposta!!!
Finora l'approccio più ovvio che ho trovato è il cosiddetto "livello soglia": ovvero se la lettura è inferiore (ad esempio) ai 5 centimetri parte l'attacco. Il livello soglia va testato a seconda delle caratteristiche del robot con una serie di prove, in modo che non reagisca ad oggetti fuori dal campo o che reagisca solo quando ormai è troppo tardi

Qua mi sa che Glorfindel è un avversario da temere....
