El sensor BNO085 és una tecnologia que ha adquirit molta popularitat en aplicacions relacionades amb la realitat augmentada (AR), la realitat virtual (VR) i els sistemes robòtics, entre d'altres àrees. Aquest petit però poderós dispositiu combina la funcionalitat d'un acceleròmetre, giroscopi i magnetòmetre en un sol xip, fet que el converteix en una eina indispensable per mesurar moviments i orientacions en tres dimensions de manera precisa.
Desenvolupat conjuntament per CEVA i Bosch, el BNO085 no és simplement una millora del seu predecessor BNO080, sinó que també corregeix algunes errades importants en el rendiment d'aquest últim, com a problemes amb el protocol SPI. El BNO085 incorpora a més una sèrie de millores que el fan ideal per a la seva utilització en dispositius que requereixen baix consum denergia i alta precisió en la captura de moviments, com els dispositius IoT, controladors de VR i robots mòbils.
Què és el BNO085?
El BNO085 és un sistema en paquet (System in Package o SiP) de 9 eixos dissenyat per habilitar el desenvolupament ràpid de dispositius habilitats amb sensors, des d'aplicacions de realitat augmentada fins a robòtica i internet de les coses (IoT). Compte amb un acceleròmetre, magnetòmetre i giroscopi, combinats amb un processador Arm Cortex M0+ de baix consum que executa el firmware SH-2, el qual gestiona les dades dels sensors i els fusiona per crear informació utilitzable.
El BNO085 està dissenyat per oferir una precisió extrema en el seguiment de moviments a 9 graus de llibertat (9DOF), una capacitat que inclou la detecció d'acceleració, velocitat angular i direcció del camp magnètic, entre altres paràmetres clau. A més, aquest sensor és capaç d'executar llibreries avançades proporcionades per CEVA, adaptant-se a diferents aplicacions, com ara els controladors de realitat virtual, on és important un baix consum d'energia i poca latència.
Diferències amb el BNO080
Una de les primeres preguntes en avaluar el BNO085 és com es diferencia del BNO080. A primera vista, tots dos dispositius semblen compartir els mateixos components de maquinari, però el diferenciador clau resideix al microprogramari. El BNO085 no només és una actualització del BNO080 sinó que soluciona problemes importants com un 'timeout' a SPI, que afectava negativament la funcionalitat del BNO080 en fer servir aquest protocol de comunicació. A més, el BNO085 és completament retrocompatible amb el codi i les infraestructures que originalment es van desenvolupar per al BNO080.
Pel que fa a les dades que proporciona, tots dos sensors són capaços de lliurar els tipus d'informació següents:
- Vector d'acceleració: Tres eixos dacceleració que inclouen tant la gravetat com el moviment lineal.
- Vector de velocitat angular: Tres eixos de rotació per mesurar la velocitat angular.
- Vector de camp magnètic: Tres eixos de detecció de camps magnètics a micro Tesla (uT).
- Vector d'orientació: Quatre punts quaternions que permeten obtenir dades precises per a la manipulació adequada de la rotació.
Característiques avançades del BNO085
Un dels majors avantatges del BNO085 resideix en la seva capacitat per realitzar fusió de sensors directament al dispositiu. Això significa que, en lloc de lliurar simplement els valors en brut d'acceleració, velocitat angular o camps magnètics, el sensor combina aquesta informació i lliura dades més útils, com ara vectors de gravetat i orientació.
A més dels sensors base, el BNO085 proporciona informes addicionals optimitzats per a diferents aplicacions, com a realitat virtual o augmentada. Aquests inclouen:
- Vectors de rotació optimitzats: Dissenyats específicament per a aplicacions a AR i VR, on és crucial una baixa latència i un baix consum d'energia.
- Informes de sensors calibrats i sense processar: El BNO085 pot lliurar simultàniament dades calibrades i sense calibrar dels sensors d'acceleròmetre, giròscop i magnetòmetre.
- Detecció d'estabilitat i classificació: Capaç de reconèixer quan un objecte està en repòs o en moviment constant.
- Detectors dimpacte i activitat: Inclou la detecció de passos, sacsejades, moviments significatius i classificació general dactivitats.
Aquests informes addicionals fan del BNO085 una opció ideal per a dissenyadors de productes que busquen dades precises i de fàcil integració per a dispositius portàtils, robots i controladors de realitat virtual.
Aplicacions principals
El BNO085 és versàtil i es pot utilitzar en una àmplia gamma d'aplicacions. Algunes de les més destacades inclouen:
- Realitat augmentada i virtual (AR/VR): Gràcies a la seva capacitat de fusió de sensors i baixa latència, el BNO085 és una opció excel·lent per als dispositius d'AR i VR que requereixen un seguiment precís del moviment i l'orientació.
- Robots mòbils: La combinació d'acceleròmetres i giroscopis el fan ideal per a robots que necessiten mesurar moviment en temps real, ja siguin aspiradores autònomes o drones.
- Internet de les Coses (IoT): La mida compacta i el baix consum d'energia el converteixen en una solució preferida per a dispositius IoT que requereixen informació de posicionament.
Altres aplicacions potencials inclouen el seguiment esportiu, dispositius de salut i benestar, i controladors de jocs. En general, qualsevol dispositiu que necessiti un mesurament precís de moviments en tres dimensions es pot beneficiar de l'ús d'aquest sensor.
Detalls tècnics i maquinari

El sensor BNO085 es presenta en una mida molt compacta, amb unes dimensions d'aproximadament 5,2mm x 3,8mm, cosa que el fa adequat per a aplicacions on l'espai és una consideració important. Dins aquest petit paquet, hi ha tots els sensors necessaris per realitzar els seus mesuraments, juntament amb un petit processador que maneja la fusió de dades.
Algunes plataformes, com Adafruit, han desenvolupat diferents versions d'aquest sensor perquè sigui més accessible i fàcil de fer servir en projectes DIY o educatius. Aquestes versions inclouen adaptacions en plaques de breakout que permeten la connexió directa a microcontroladors com Arduino o Raspberry Pi, oferint fins i tot reguladors de voltatge i connectors I2C per a una integració més directa.
Maneres d'operació
El BNO085 es pot configurar per operar en diverses maneres, depenent de les necessitats del projecte. Entre els modes més senzills i útils hi ha el mode UART-RVC. Aquest mode està dissenyat específicament per obtenir mesuraments calibrats de rumb i acceleració, cosa que el fa ideal per a aplicacions com els robots aspiradors. Aquest seria un mode simple però efectiu que permet obtenir dades útils amb un baix nivell de complexitat a la integració.
Aquest mode, juntament amb altres configuracions avançades, ho fan una opció difícil de superar quan es tracta d'oferir un sensor tot en un que maneja la fusió de dades sense necessitat de processadors externs o programari complex.
A més, per a aquells que vulguin utilitzar els modes més avançats, s'han desenvolupat biblioteques tant per a CircuitPython com per a Arduino, cosa que facilita la integració d'aquest sensor en projectes d'electrònica sense importar el nivell d'experiència de l'usuari.
En definitiva, el BNO085 és un sensor potent i versàtil que permet als desenvolupadors treballar amb dades de moviment i orientació de manera precisa i sense complicacions. Gràcies a les seves característiques avançades de fusió de sensors ia la seva capacitat per operar amb un consum energètic baix, aquest dispositiu és ideal per a una àmplia varietat d'aplicacions, des de dispositius portàtils fins a elements de robòtica i fins i tot sistemes de realitat augmentada i virtual.