ARDUINO GY87 Ua ke Sensor Test Sketch
Taw qhia
Yog hais tias koj yog ib tug avid maker los yog ib tug neeg nyiam neeg hlau, koj tau hla no me me tsis tau haib module Yog hais tias koj yog ib tug avid maker los yog ib tug neeg nyiam neeg hlau, koj tau hla no me me tsis tau haib module BMP085 barometer. GY-87 IMU module yog ib txoj hauv kev zoo los ntxiv qhov kev xav ntawm koj cov haujlwm, xws li tus kheej ntsuas tus kheej lossis lub quadcopter.
Tab sis ua ntej koj tuaj yeem pib sim nrog GY-87 IMU module, koj yuav tsum paub yuav ua li cas cuam tshuam nws nrog koj lub rooj tsav xwm Arduino. Qhov ntawd yog qhov blog no tuaj! Hauv kab lus hauv qab no, peb yuav hais txog cov hauv paus ntawm GY-87 IMU module, yuav teeb tsa li cas, thiab yuav sau li cas Arduino code los nyeem cov ntaub ntawv sensor. Peb tseem yuav muab qee cov lus qhia thiab cov peev txheej los daws cov teeb meem tshwm sim.
Yog li, yog tias koj npaj txhij pib, cia peb dhia dej thiab kawm txog kev cuam tshuam GY-87 IMU module nrog Arduino!
GY-87 IMU MPU6050 yog dab tsi
Inertial ntsuas ntsuas (IMU) modules xws li GY-87 muab ntau lub sensors rau hauv ib pob, xws li MPU6050 accelerometer/gyroscope, HMC5883L magnetometer, thiab BMP085 barometric siab sensor. Li no, GY-87 IMU MPU6050 yog ib qho 9-axis motion tracking module uas ua ke nrog 3-axis gyroscope, 3-axis accelerometer, 3-axis magnetometer, thiab digital motion processor. Nws tau siv ntau hauv cov haujlwm neeg hlau, xws li quadcopters thiab lwm yam tsheb tsis muaj neeg tsav dav hlau (UAVs), vim tias nws tuaj yeem ntsuas thiab taug qab kev taw qhia thiab kev txav chaw. Nws kuj yog siv rau hauv lwm yam kev siv, xws li navigation, gaming, thiab virtual reality.
Hardware Components
Koj yuav xav tau cov khoom siv nram qab no rau Interfacing GY-87 IMU MPU6050 HMC5883L BMP085 Module nrog Arduino.
Cheebtsam | Tus nqi | Qty |
Arduino UNO | – | 1 |
PIB 6050 Sensor Module | GY-87 | 1 |
Khoom noj khoom haus | – | 1 |
Jumper Hlau | – | 1 |
GY-87 nrog Arduino
Tam sim no koj tau nkag siab GY-87, nws yog lub sijhawm los cuam tshuam nrog Arduino. Ua li ntawd, ua raws Tam sim no koj tau nkag siab GY-87, nws yog lub sijhawm los cuam tshuam nrog Arduino. Ua li ntawd, ua raws
Schematic
Ua kev sib txuas raws li daim duab qhia hauv qab no
GY-87 IMU MPU6050 HMC5883L BMP085 ArduinoKev sib txuas / kev sib txuas
Arduino | MPU6050 Sensor |
5V | VCC |
GND | GND |
A4 | SDA |
A5 | SCA |
Txhim kho Arduino IDE
Ua ntej, koj yuav tsum nruab Arduino IDE Software los ntawm nws cov nom website Arduino. Nov yog cov lus qhia yooj yim-ib-kauj ruam ntawm "Yuav ua li cas rau nruab Arduino IDE."
Txhim kho Libraries
Ua ntej koj pib uploading code, download tau thiab unzip cov tsev qiv ntawv hauv qab no ntawm /Program Files (x86)/Arduino/Libraries (default) thiaj li siv lub sensor nrog Arduino board. Nov yog cov lus qhia yooj yim-ib-kauj ruam ntawm "Yuav ua li cas Ntxiv Cov Tsev Qiv Ntawv hauv Arduino IDE."
- PIB 6050
- Adafruit_BMP085
- HMC5883L_Simple
Code
Tam sim no luam cov cai hauv qab no thiab xa mus rau Arduino IDE Software.
#include “I2Cdev.h” #include “MPU6050.h” #include # suav nrog MPU085 accelgyro; Adafruit_BMP5883 bmp; HMC6050L_Simple Compass; int085_t ax, ay, az; int5883_t gx, gy, gz; #define LED_PIN 16 bool blinkState = cuav; void setup() { Serial.begin(16); Hlau.begin(); // initialize li Serial.println(“Initializing I13C devices…”); // initialize bmp9600 yog (!bmp.begin()) { Serial.println(“Tsis tuaj yeem nrhiav tau BMP2 sensor, kos (!bmp.begin()) { Serial.println(“Tsis tuaj yeem nrhiav qhov siv tau BMP085 sensor, check Serial.println(accelgyro.testConnection() ? "MPU085 kev twb kev txuas ua tiav" : "MPU085 kev twb kev txuas tsis ua hauj lwm"); accelgyro.setI6050CBypassEnabled(true); // teeb bypass hom rau rooj vag rau hmc6050L // initialize hmc2l Compassation(5883.Set. 5883, 'E'); Compass.SetSamplingMode(COMPASS_SINGLE);
Compass.SetScale(COMPASS_SCALE_130);
Compass.SetOrientation(COMPASS_HORIZONTAL_X_NORTH); // teeb tsa Arduino LED rau kev txheeb xyuas cov haujlwm pinMode(LED_PIN, OUTPUT); } void loop() {
Serial.print(“Tub = “); Serial.print(bmp.readTemperature());
Serial.println("*C"); Serial.print(“Pressure = “);
Serial.print(bmp.readPressure()); Serial.println(“Pa”); // xam altitude assuming 'standard' barometric // siab ntawm 1013.25 millibar = 101325 Pascal Serial.print(“Altitude = “); Serial.print(bmp.readAltitude()); Serial.println("meters"); Serial.print(“Nias ntawm sealevel (xws li) = “);
Serial.print(bmp.readSealevelPressure()); Serial.println(“Pa”);
Serial.print(“Real altitude = “); Serial.print(bmp.readAltitude(101500));
Serial.println("meter"); // nyeem raw accel/gyro ntsuas los ntawm ntaus ntawv accelgyro.getMotion6(&ax, &ay, &az, &gx, &gy, &gz); // tso saib tab-sib cais accel/gyro x/y/z qhov tseem ceeb Serial.print(“a/g:\t”); Serial.print(ax);
Serial.print(“\t”); Serial.print(ay); Serial.print(“\t”); Serial.print(az);
Serial.print(“\t”); Serial.print(gx); Serial.print(“\t”); Serial.print(gy);
Serial.print(“\t”); Serial.println(gz); ntab heading =
Compass.GetHeadingDegrees(); Serial.print("Heading: \t"); Serial.println(heading ); // ntsais LED qhia txog kev ua blinkState = !blinkState;
digitalWrite(LED_PIN, blinkState); ncua (500); }
Cia peb sim
Thaum koj upload cov code, nws yog lub sij hawm los ntsuam xyuas lub Circuit Court! Cov cai hauv Arduino program cuam tshuam nrog cov sensors siv lawv cov tsev qiv ntawv, uas tso cai rau nws nyeem cov ntaub ntawv sensor thiab teeb tsa ntau yam kev teeb tsa ntawm cov sensors. Tom qab ntawd nws luam tawm cov ntaub ntawv sensor hla qhov chaw nres nkoj serial. LED yog siv los qhia tias Circuit Court ua ib yam dab tsi. Qhov no txhais tau hais tias lub LED ntsais txhua lub sij hawm lub voj muaj nuj nqi khiav, qhia tias cov cai yog nquag nyeem sensor qhov tseem ceeb.
Kev piav qhia ua haujlwm
Cov cai yog qhov tseem ceeb ntawm qhov kev ua haujlwm ntawm Circuit Court. Yog li, cia peb nkag siab cov cai:.
- Ua ntej, nws suav nrog ntau lub tsev qiv ntawv los cuam tshuam nrog cov sensors:
- "I2Cdev.h" thiab "MPU6050.h" yog cov tsev qiv ntawv rau MPU6050 6-axis accelerometer/gyroscope sensor
- "Adafruit_BMP085.h" yog lub tsev qiv ntawv rau BMP085 barometric siab sensor.
- "HMC5883L_Simple.h" yog lub tsev qiv ntawv rau HMC5883L magnetometer sensor.
- Tom qab ntawd nws tsim cov khoom thoob ntiaj teb rau peb lub sensors: MPU6050 accelgyro, Adafruit_BMP085 bmp, thiab HMC5883L_Simple Compass.
- Tom ntej no, nws txhais qee qhov sib txawv los khaws cov txiaj ntsig ntawm qhov ntsuas, xws li ax, ay, thiab az rau lub accelerometer ntawm MPU6050 thiab mus rau lub taub hau rau lub magnetometer ntawm HMC5883L. Thiab nws txhais lub LED_PIN tas li thiab qhov sib txawv ntawm blinkState.
- Lub teeb () muaj nuj nqi pib kev sib txuas lus serial thiab pib I2C kev sib txuas lus. Tom qab ntawd nws pib pib peb lub sensors:
- Lub BMP085 sensor yog pib los ntawm kev hu pib () txoj kev. Yog tias qhov no rov qab tsis tseeb, qhia tias tsis tuaj yeem pom lub sensor, qhov kev zov me nyuam nkag mus rau lub voj tsis kawg thiab luam tawm cov lus yuam kev hla qhov chaw nres nkoj serial.
- Lub MPU6050 sensor yog pib los ntawm kev hu rau tus txheej txheem initialize() thiab xyuas seb nws puas ua haujlwm raug. Thiab nws teeb lub I2C bypass enabled rau MPU6050.
- HMC5883L sensor yog pib los ntawm kev hu rau qee qhov haujlwm, xws li SetDeclination, SetSamplingMode, SetScale, thiab SetOrientation, rau kev teeb tsa sib txawv rau lub sensor.
- Hauv lub voj () muaj nuj nqi, cov cai nyeem cov ntaub ntawv los ntawm peb lub sensors thiab luam tawm nws tawm ntawm qhov chaw nres nkoj serial:
- Nws nyeem qhov kub, siab, qhov siab, thiab siab ntawm hiav txwv theem los ntawm lub sensor.
- Nws nyeem raw acceleration thiab gyroscope ntsuas los ntawm MPU6050 sensor.
- Nws nyeem cov nqe lus los ntawm HMC5883L sensor, uas yog lub kaum sab xis ntawm cov kev taw qhia uas lub sensor yog taw tes thiab cov kev taw qhia uas sib nqus sab qaum teb.
- Thaum kawg, nws ntsais lub LED los qhia txog kev ua haujlwm thiab tos ib pliag ua ntej rov nyeem cov sensors.
Cov ntaub ntawv / Cov ntaub ntawv
![]() |
ARDUINO GY87 Ua ke Sensor Test Sketch [ua pdf] Tus neeg siv phau ntawv GY87 Combined Sensor Test Sketch, GY87, Ua ke Sensor Test Sketch, Sensor Test Sketch, Test Sketch |