Table des matières:
Vidéo: Raspberry Pi - Tutoriel Java de l'accéléromètre 3 axes ADXL345 : 4 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
L'ADXL345 est un petit accéléromètre mince, ultrabasse consommation, à 3 axes avec une mesure haute résolution (13 bits) jusqu'à ±16 g. Les données de sortie numériques sont formatées en complément à deux de 16 bits et sont accessibles via l'interface numérique I2 C. Il mesure l'accélération statique de la gravité dans les applications de détection d'inclinaison, ainsi que l'accélération dynamique résultant d'un mouvement ou d'un choc. Sa haute résolution (3,9 mg/LSB) permet de mesurer des changements d'inclinaison inférieurs à 1,0°. Voici la démonstration avec raspberry pi en utilisant du code java.
Étape 1: Ce dont vous avez besoin.
1. Framboise Pi
2. ADXL345
3. Câble I²C
4. Bouclier I²C pour Raspberry Pi
5. Câble Ethernet
Étape 2: Connexions:
Prenez un shield I2C pour raspberry pi et poussez-le doucement sur les broches gpio de raspberry pi.
Connectez ensuite l'une des extrémités du câble I2C au capteur ADXL345 et l'autre extrémité au blindage I2C.
Connectez également le câble Ethernet au pi ou vous pouvez utiliser un module WiFi.
Les connexions sont montrées dans l'image ci-dessus.
Étape 3: Coder:
Le code java pour ADXL345 peut être téléchargé depuis notre référentiel GitHub - Dcube Store
Voici le lien pour le même:
github.com/DcubeTechVentures/ADXL345
Nous avons utilisé la bibliothèque pi4j pour le code java, les étapes pour installer pi4j sur raspberry pi sont décrites ici:
pi4j.com/install.html
Vous pouvez également copier le code d'ici, il est donné comme suit:
// Distribué avec une licence libre-arbitre.
// Utilisez-le comme vous le souhaitez, à profit ou gratuitement, à condition qu'il rentre dans les licences de ses œuvres associées.
// ADXL345
// Ce code est conçu pour fonctionner avec le mini module ADXL345_I2CS I2C disponible dans Dcube Store.
importer com.pi4j.io.i2c. I2CBus;
importer com.pi4j.io.i2c. I2CDevice;
importer com.pi4j.io.i2c. I2CFactory;
importer java.io. IOException;
classe publique ADXL345
{
public static void main(String args) lève une exception
{
// Créer un bus I2C
I2CBus Bus = I2CFactory.getInstance(I2CBus. BUS_1);
// Obtenir le périphérique I2C, l'adresse I2C du périphérique est 0x53(83)
Périphérique I2CDevice = Bus.getDevice (0x53);
// Sélectionnez le registre de débit de bande passante
// Mode normal, Débit de sortie = 100 Hz
device.write(0x2C, (octet)0x0A);
// Sélection du registre de contrôle de puissance
// Désactiver la mise en veille automatique
périphérique.write(0x2D, (octet)0x08);
// Sélection du registre de format de données
// Autotest désactivé, interface 4 fils, pleine résolution, plage = +/-2g
périphérique.write(0x31, (octet)0x08);
Thread.sleep(500);
// Lecture de 6 octets de données
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
octet données = nouvel octet[6];
data[0] = (byte)device.read(0x32);
data[1] = (octet)device.read(0x33);
data[2] = (octet)device.read(0x34);
data[3] = (byte)device.read(0x35);
données[4] = (octet)périphérique.read(0x36);
data[5] = (octet)device.read(0x37);
// Convertir les données en 10 bits
int xAccl = ((données[1] & 0x03) * 256 + (données[0] & 0xFF));
si(xAccl > 511)
{
xAccl -= 1024;
}
int yAccl = ((données[3] & 0x03) * 256 + (données[2] & 0xFF));
if(yAccl > 511)
{
yAccl -= 1024;
}
int zAccl = ((données[5] & 0x03) * 256 + (données[4] & 0xFF));
if(zAccl > 511)
{
zAccl -= 1024;
}
// Sortie des données à l'écran
System.out.printf("Accélération dans l'axe X: %d %n", xAccl);
System.out.printf("Accélération dans l'axe Y: %d %n", yAccl);
System.out.printf("Accélération dans l'axe Z: %d %n", zAccl);
}
}
Étape 4: Candidatures:
L'ADXL345 est un petit accéléromètre mince à très faible consommation d'énergie à 3 axes qui peut être utilisé dans les combinés, l'instrumentation médicale, etc. Son application comprend également les appareils de jeu et de pointage, l'instrumentation industrielle, les appareils de navigation personnels et la protection des disques durs (HDD).
Conseillé:
Contrôle de mouvement avec Raspberry Pi et LIS3DHTR, accéléromètre à 3 axes, utilisant Python : 6 étapes
Contrôle de mouvement avec Raspberry Pi et LIS3DHTR, Accéléromètre 3 axes, Utilisation de Python : La beauté nous entoure, mais généralement, nous devons nous promener dans un jardin pour le savoir. - RumiEn tant que groupe instruit que nous semblons être, nous investissons la grande majorité de notre énergie à travailler avant nos PC et nos téléphones portables. Par conséquent, nous laissons fréquemment notre bien-être
Accéléromètre à 3 axes, ADXL345 avec Raspberry Pi en utilisant Python : 6 étapes
Accéléromètre à 3 axes, ADXL345 avec Raspberry Pi à l'aide de Python : Pensez à un gadget qui peut vérifier le point auquel votre tout-terrain est incliné pour s'attarder. Ne serait-ce pas agréable dans le cas où quelqu'un est réglé alors qu'il y a une possibilité de basculement ? Évidemment oui. Ce serait vrai
Interfaçage du capteur gyroscope 3 axes BMG160 avec Raspberry Pi : 5 étapes
Interfaçage du capteur gyroscope à 3 axes BMG160 avec Raspberry Pi : Dans le monde d'aujourd'hui, plus de la moitié des jeunes et des enfants aiment le jeu et tous ceux qui en sont friands, fascinés par les aspects techniques du jeu, connaissent l'importance de la détection de mouvement dans ce domaine. Nous avons également été étonnés par la même chose et
Module accéléromètre 3 axes LIS2HH12 : 10 étapes (avec photos)
Module accéléromètre 3 axes LIS2HH12 : ce Instructable est considéré comme un niveau débutant avec une certaine expérience avec le logiciel arduino et la soudure. Le module LIS2HH12 est fabriqué par Tiny9. Tiny9 est une nouvelle entreprise qui se lance dans la vente de modules de capteurs pour les bricoleurs, les entreprises ou les inventeurs. Là
Préliminaire* SPI sur le Pi : Communiquer avec un accéléromètre 3 axes SPI à l'aide d'un Raspberry Pi : 10 étapes
Préliminaire* SPI sur le Pi : communiquer avec un accéléromètre 3 axes SPI à l'aide d'un Raspberry Pi : guide étape par étape sur la façon de configurer Raspbian et de communiquer avec un périphérique SPI à l'aide de la bibliothèque SPI bcm2835 (PAS de bit frappé !) C'est toujours très préliminaire… J'ai besoin d'ajouter de meilleures images de connexion physique et de travailler sur une partie du code maladroit