Mesure d’accélération à l’aide de BMA250 et Arduino Nano (3 / 4 étapes)

Étape 3: Arduino Code pour la mesure de l’accélération :

Permet de démarrer avec l' arduino code maintenant.

Lorsque vous utilisez le module détecteur avec l’arduino, nous incluons la bibliothèque Wire.h. Bibliothèque « Fils » contient les fonctions qui facilitent la communication i2c entre le capteur et la carte arduino.

Le code entier arduino est donné ci-dessous pour la commodité de l’utilisateur :

 #include<Wire.h> // BMA250 I2C address is 0x18(24)#define Addr 0x18 void setup(){// Initialise I2C communication as MASTER Wire.begin(); // Initialise Serial Communication, set baud rate = 9600 Serial.begin(9600);// Start I2C Transmission Wire.beginTransmission(Addr); // Select range selection register Wire.write(0x0F); // Set range +/- 2g Wire.write(0x03); // Stop I2C Transmission Wire.endTransmission();// Start I2C Transmission Wire.beginTransmission(Addr); // Select bandwidth register Wire.write(0x10); // Set bandwidth 7.81 Hz Wire.write(0x08); // Stop I2C Transmission Wire.endTransmission(); delay(300);} void loop(){ unsigned int data[0]; // Start I2C Transmission Wire.beginTransmission(Addr); // Select Data Registers (0x02 − 0x07) Wire.write(0x02); // Stop I2C Transmission Wire.endTransmission(); // Request 6 bytes Wire.requestFrom(Addr, 6); // Read the six bytes // xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb if(Wire.available() == 6) { data[0] = Wire.read(); data[1] = Wire.read(); data[2] = Wire.read(); data[3] = Wire.read(); data[4] = Wire.read(); data[5] = Wire.read(); } delay(300); // Convert the data to 10 bits float xAccl = ((data[1] * 256.0) + (data[0] & 0xC0)) / 64; if (xAccl > 511) { xAccl -= 1024; } float yAccl = ((data[3] * 256.0) + (data[2] & 0xC0)) / 64; if (yAccl > 511) { yAccl -= 1024; } float zAccl = ((data[5] * 256.0) + (data[4] & 0xC0)) / 64; if (zAccl > 511) { zAccl -= 1024; } // Output data to the serial monitor Serial.print("Acceleration in X-Axis :"); Serial.println(xAccl); Serial.print("Acceleration in Y-Axis :"); Serial.println(yAccl); Serial.print("Acceleration in Z-Axis :"); Serial.println(zAccl) ; } 

Dans la bibliothèque de fils Wire.write() et Wire.read() est utilisé pour écrire les commandes et lire la sortie du capteur. Serial.Print() et Serial.println() sont utilisées pour afficher la sortie du capteur sur le serial monitor de l’arduino IDE.

La sortie du capteur est montrée dans l’image ci-dessus.

Articles Liés

Mesure d’accélération à l’aide de BMA250 et framboise Pi

Mesure d’accélération à l’aide de BMA250 et framboise Pi

BMA250 est un petit, léger, ultra basse puissance, accéléromètre 3 axes avec mesure de haute résolution (13 bits) à jusqu'à ±16 g. sortie numérique données sont au format 16-bit twos complément et est accessible via I2C interface numérique. Itmeasure
Mesure de l’accélération à l’aide de H3LIS331DL et Arduino Nano

Mesure de l’accélération à l’aide de H3LIS331DL et Arduino Nano

H3LIS331DL, un accéléromètre linéaire de 3 axes de haute performance de faible puissance est appartenant à la famille de « nano », avec interface numérique I²C. H3LIS331DL a échelles complet sélectionnables de l'utilisateur de ±100g/±200g/±400g et il
Mesure de champ magnétique à l’aide de HMC5883 et Arduino Nano

Mesure de champ magnétique à l’aide de HMC5883 et Arduino Nano

Le HMC5883est une boussole numérique conçue pour la détection magnétique champ faible. Cet appareil possède une gamme large de champ magnétique de +/-8 Oe et un taux de rendement de 160 Hz. Le capteur HMC5883 inclut les pilotes de sangle démagnétisat
Mesure de la température à l’aide de STS21 et Arduino Nano

Mesure de la température à l’aide de STS21 et Arduino Nano

STS21 capteur de température numérique offre une performance supérieure et une empreinte peu encombrant. Il fournit des signaux calibrés, linéarisées en format numérique, de I2C. Fabrication de ce capteur est basée sur la technologie CMOSens, qui att
Mesure de l’accélération à l’aide de H3LIS331DL et framboise Pi

Mesure de l’accélération à l’aide de H3LIS331DL et framboise Pi

H3LIS331DL, un accéléromètre linéaire de 3 axes de haute performance de faible puissance est appartenant à la famille de « nano », avec interface numérique I²C. H3LIS331DL a échelles complet sélectionnables de l'utilisateur de ±100g/±200g/±400g et il
Mesure de l’accélération à l’aide de H3LIS331DL et la particule Photon

Mesure de l’accélération à l’aide de H3LIS331DL et la particule Photon

H3LIS331DL, un accéléromètre linéaire de 3 axes de haute performance de faible puissance est appartenant à la famille de « nano », avec interface numérique I²C. H3LIS331DL a échelles complet sélectionnables de l'utilisateur de ±100g/±200g/±400g et il
Mesure de l’humidité à l’aide de HYT939 et Arduino Nano

Mesure de l’humidité à l’aide de HYT939 et Arduino Nano

HYT939 est un capteur d'humidité numérique qui fonctionne sur le protocole de communication I2C. L'humidité est un paramètre essentiel quand il s'agit de systèmes médicaux et laboratoires, donc afin d'atteindre ces objectifs, que nous avons essayé d'
Pression de mesure à l’aide de CPS120 et Arduino Nano

Pression de mesure à l’aide de CPS120 et Arduino Nano

CPS120 est une haute qualité et capteur de pression absolue capacitive faible coût avec pleine compensation de sortie. Il consomme très moins d'énergie et se compose d'un ultra petit Sensor(MEMS) de Micro-électro-mécaniques pour la mesure de la press
Lumière d’intensité de calcul à l’aide de BH1715 et Arduino Nano

Lumière d’intensité de calcul à l’aide de BH1715 et Arduino Nano

Hier que nous avons travaillé sur l'écran LCD affiche et tout en travaillant sur eux, nous avons réalisé l'importance du calcul de l'intensité lumineuse. L'intensité lumineuse est importante non seulement dans le domaine physique de ce monde, mais il
Température et humidité suivi à l’aide de SHT25 et Arduino Nano

Température et humidité suivi à l’aide de SHT25 et Arduino Nano

Nous avons récemment travaillé sur divers projets nécessitant la surveillance de l'humidité et température, et puis nous avons réalisé que ces deux paramètres jouent effectivement un rôle essentiel d'avoir une estimation de l'efficacité de fonctionne
Surveillance de la température à l’aide de MCP9808 et Arduino Nano

Surveillance de la température à l’aide de MCP9808 et Arduino Nano

MCP9808 est un module numérique très précise de la température capteur ± 0,5 ° C I2C mini. Elles s'incarnent avec user - registres programmable qui facilitent les applications de détection de température. La MCP9808 sonde de température haute précisi
Rampes de Galileo : exploration de vitesse et accélération avec marbre et plans inclinés

Rampes de Galileo : exploration de vitesse et accélération avec marbre et plans inclinés

Cette expérience s'ensuit Galileo plan incliné expérimenter d'instruction de vitesse et d'accélération de boules coulaient sur un plan incliné. Galileo utilisé des boules de laiton et de cloches, montés sur un plan incliné, on peut utiliser des bille
En savoir plus sur l’accélération avec Rocket voitures !

En savoir plus sur l’accélération avec Rocket voitures !

Un moteur de fusée miniature, tubes de stylo, une roue chaude et un peu de colle chaude sera le parfait aide pour en savoir plus sur l'accélération !Étape 1: matériauxL'essentiel :-Hot roue voiture, ou une voiture de valeur égale (solide, pas un prod
Plus Open Source Science - déterminer l’accélération gravitationnelle

Plus Open Source Science - déterminer l’accélération gravitationnelle

j'irai à travers un processus qui vous permettra de déterminer l'accélération due à la pesanteur. J'utilise cette activité avec mes élèves de physique de lycée. Dans le passé, nous avons fait une activité similaire à l'aide d'un porte photo disponibl