Sgeidse Deuchainn Sensor Co-mheasgaichte ARDUINO GY87
Ro-ràdh
Ma tha thu nad neach-dèanaidh dealasach no dèidheil air robotics, tha thu air tighinn tarsainn air a’ mhodal beag bìodach seo ach cumhachdach Ma tha thu nad neach-dèanaidh dealasach no dèidheil air robotics, tha thu air tighinn tarsainn air a’ mhodal beag bìodach ach cumhachdach seo barometer BMP085. Tha am modal GY-87 IMU na dhòigh math air mothachadh gluasad a chuir ris na pròiseactan agad, leithid inneal-fuadain fèin-chothromachaidh no quadcopter.
Ach mus urrainn dhut tòiseachadh a ’feuchainn a’ mhodal GY-87 IMU, feumaidh fios a bhith agad mar a nì thu eadar-aghaidh leis a ’bhòrd Arduino agad. Sin far a bheil am blog seo a' tighinn a-steach! Anns na paragrafan a leanas, còmhdaichidh sinn bunaitean modal GY-87 IMU, mar a shuidhicheas tu e, agus mar a sgrìobhas tu còd Arduino gus an dàta mothachaidh a leughadh. Bheir sinn cuideachd seachad cuid de mholaidhean agus ghoireasan airson fuasgladh fhaighinn air cùisean cumanta.
Mar sin, ma tha thu deiseil airson tòiseachadh, leig dhuinn dàibheadh a-steach agus ionnsaich mu bhith ag eadar-aghaidh modal GY-87 IMU le Arduino!
Dè a th’ ann an GY-87 IMU MPU6050
Bidh modalan aonad tomhais inertial (IMU) mar an GY-87 a’ cothlamadh mòran de luchd-mothachaidh ann an aon phacaid, leithid an luathaichear / gyroscope MPU6050, an magnetometer HMC5883L, agus an sensor cuideam barometric BMP085. Mar sin, tha an GY-87 IMU MPU6050 na mhodal tracadh gluasad 9-axis uile-ann-aon a tha a’ cothlamadh gyroscope 3-axis, luathaichear 3-axis, magnetometer 3-axis, agus pròiseasar gluasad didseatach. Tha e air a chleachdadh gu mòr ann am pròiseactan robotach, leithid quadcopters agus carbadan adhair gun luchd-obrach (UAVn), oir is urrainn dha stiùireadh agus gluasad a thomhas agus a leantainn gu ceart. Tha e cuideachd air a chleachdadh ann an tagraidhean eile, leithid seòladh, gèamadh, agus fìrinn fhìrinneach.
Co-phàirtean bathar-cruaidh
Feumaidh tu am bathar-cruaidh a leanas airson Modal Eadar-aghaidh GY-87 IMU MPU6050 HMC5883L BMP085 le Arduino.
Co-phàirtean | Luach | Ceitidh |
Arduino UNO | – | 1 |
MPU 6050 Module Sensor | GY-87 | 1 |
Clàr-bràghad | – | 1 |
Sreangan geansaidh | – | 1 |
GY-87 le Arduino
A-nis gu bheil thu air an GY-87 a thuigsinn, tha an t-àm ann eadar-aghaidh a dhèanamh leis an Arduino. Gus sin a dhèanamh, lean A-nis gu bheil thu air an GY-87 a thuigsinn, tha an t-àm ann eadar-aghaidh a dhèanamh leis an Arduino. Gus sin a dhèanamh, lean
Sgeamatach
Dèan ceanglaichean a rèir an diagram cuairteachaidh a tha air a thoirt seachad gu h-ìosal
GY-87 IMU MPU6050 HMC5883L BMP085 ArduinoUèir / Ceanglaichean
Arduino | Sensor MPU6050 |
5V | VCC |
GND | GND |
A4 | SDA |
A5 | SCA |
Stàladh Arduino IDE
An toiseach, feumaidh tu bathar-bog Arduino IDE a stàladh bhon oifigear aige webLàrach-lìn Arduino. Seo stiùireadh ceum air cheum sìmplidh air “Mar a stàlaicheas tu Arduino IDE.”
Stàladh leabharlannan
Mus tòisich thu air còd a luchdachadh suas, luchdaich sìos agus unzip na leabharlannan a leanas aig /Program Files (x86) / Arduino / Leabharlannan (àbhaisteach) gus an sensor a chleachdadh leis a’ bhòrd Arduino. Seo stiùireadh ceum air cheum sìmplidh air “Mar a chuireas tu leabharlannan ann an Arduino IDE.”
- MPU 6050
- Eadar-theangachadh_BMP085
- HMC5883L_Sìmplidh
Còd
A-nis dèan lethbhreac den chòd a leanas agus luchdaich suas e gu Bathar-bog Arduino IDE.
# cuir a-steach “I2Cdev.h” #cuir a-steach “MPU6050.h” # cuir a-steach # gabhail a-steach MPU085 accelgyro; Adafruit_BMP5883 bmp; HMC6050L_Compass sìmplidh; int085_t tuagh, ay, az; int5883_t gx, gy, gz; #define LED_PIN 16 bool blinkState = meallta; suidheachadh falamh () { Serial.begin(16); Uèir. tòisich(); // innealan a thòiseachadh Serial.println (“A’ tòiseachadh innealan I13C…”); // tùsaich bmp9600 ma tha (!bmp.begin()) { Serial.println(“Cha do lorg sensor BMP2 dligheach, thoir sùil (! bmp.begin()) { Serial.println(“Cha b’ urrainn dhuinn sensor BMP085 dligheach a lorg, thoir sùil air Serial.println(accelgyro.testConnection() ? “Ceangal MPU085 soirbheachail” : “Dh’ fhàillig an ceangal MPU085”); 6050, 'E');amplingMode (COMPASS_SINGLE);
Compass.SetScale(COMPASS_SCALE_130);
Compass.SetOrientation(COMPASS_HORIZONTAL_X_NORTH); // rèiteachadh Arduino LED airson sùil a thoirt air modh pinMode gnìomhachd (LED_PIN, OUTPUT); } lùb falamh() {
Serial.print("Teòthachd = "); Serial.print(bmp.readTemperature());
Serial.println (“ * C ”); Serial.print("Brùthadh = ");
Serial.print(bmp.readPressure()); Serial.println (“ Pa ”); // Obraich a-mach àirde a’ gabhail ris a’ chuideam ‘àbhaisteach’ barometric // de 1013.25 millibar = 101325 Pascal Serial.print(“Altitude =”); Serial.print(bmp.readAltitude()); Serial.println (“meatairean”); Serial.print("Brùthadh aig ìre na mara (àireamhaichte) = ");
Serial.print(bmp.readSealevelPressure()); Serial.println (“ Pa ”);
Serial.print("Fìor àirde = "); Serial.print(bmp.readAltitude(101500));
Serial.println (“ meatairean ”); // leugh tomhasan accel/gyro amh bhon inneal accelgyro.getMotion6(&ax, &ay, &az, &gx, &gy, &gz); // display tab-separated accel/gyro x/y/z luachan Serial.print (“a/g: \t”); Serial.print(tuagh);
Serial.print("\t"); Serial.print(ay); Serial.print("\t"); Serial.print(az);
Serial.print("\t"); Serial.print(gx); Serial.print("\t"); sreath.print(gy);
Serial.print("\t"); Serial.println(gz); fleòdradh ceann =
Compass.GetHeadingDegrees(); Serial.print (“Ceann: \t”); Serial.println (ceann ); // blink LED gus gnìomhachd a chomharrachadh blinkState = !blinkState;
digitalWrite (LED_PIN, blinkState); dàil (500); }
Feuch an dèan sinn deuchainn air
Cho luath ‘s a luchdaicheas tu suas an còd, tha an t-àm ann deuchainn a dhèanamh air a’ chuairt! Bidh an còd ann am prògram Arduino ag eadar-aghaidh leis na mothachairean a’ cleachdadh na leabharlannan aca, a leigeas leis dàta mothachaidh a leughadh agus diofar rèiteachaidhean de na mothachairean a shuidheachadh. An uairsin bidh e a’ clò-bhualadh an dàta mothachaidh thairis air a’ phort sreathach. Tha an LED air a chleachdadh gus sealltainn gu bheil an cuairteachadh a’ dèanamh rudeigin. Tha seo a’ ciallachadh gum bi an LED a’ frasadh a h-uile uair a thèid gnìomh na lùb a ruith, a’ nochdadh gu bheil an còd gu gnìomhach a’ leughadh luachan mothachaidh.
Mìneachadh Obrach
Is e an còd am prìomh rud air a bheil obair a 'chuairt stèidhichte. Mar sin, tuigidh sinn an còd :.
- An toiseach, tha grunn leabharlannan ann airson eadar-aghaidh leis na mothachairean:
- Tha “I2Cdev.h” agus “MPU6050.h” nan leabharlannan airson an MPU6050 6-axis accelerometer / sensor gyroscope
- Tha “Adafruit_BMP085.h” na leabharlann airson an sensor cuideam barometric BMP085.
- Tha “HMC5883L_Simple.h” na leabharlann airson an sensor magnetometer HMC5883L.
- An uairsin bidh e a’ cruthachadh nithean cruinneil airson na trì mothachairean: MPU6050 accelgyro, Adafruit_BMP085 bmp, agus HMC5883L_Simple Compass.
- An ath rud, bidh e a’ mìneachadh cuid de chaochladairean gus luachan mothachaidh a stòradh, leithid tuagh, ay, agus az airson an luathaichear MPU6050 agus a dhol airson magnetometer HMC5883L. Agus tha e a’ mìneachadh seasmhach LED_PIN agus caochladair blinkState.
- Bidh an gnìomh setup () a’ tòiseachadh conaltradh sreathach agus a’ tòiseachadh conaltradh I2C. An uairsin bidh e a’ tòiseachadh na trì mothachairean:
- Tha an sensor BMP085 air a thòiseachadh le bhith a’ gairm an dòigh tòiseachaidh (). Ma thilleas seo ceàrr, a’ nochdadh nach deach an sensor a lorg, bidh am prògram a’ dol a-steach do lùb gun chrìoch agus a’ clò-bhualadh teachdaireachd mearachd thairis air a’ phort sreathach.
- Tha an sensor MPU6050 air a thòiseachadh le bhith a’ gairm an dòigh tòiseachaidh () agus a’ sgrùdadh a bheil e ag obair ceart. Agus shuidhich e seach-rathad I2C air a chomasachadh airson MPU6050.
- Tha an sensor HMC5883L air a thòiseachadh le bhith a’ gairm cuid de ghnìomhan, leithid SetDeclination, SetSamplingMode, SetScale, agus SetOrientation, airson diofar rèiteachaidhean a shuidheachadh airson an sensor.
- Anns a’ ghnìomh lùb (), bidh an còd a’ leughadh dàta bho na trì mothachairean agus ga chlò-bhualadh thairis air a’ phort sreathach:
- Bidh e a’ leughadh teòthachd, cuideam, àirde, agus cuideam aig ìre na mara bhon sensor.
- Bidh e a’ leughadh luathachadh amh agus tomhas gyroscope bhon sensor MPU6050.
- Bidh e a’ leughadh an ceann bhon sensor HMC5883L, is e sin an ceàrn eadar an taobh anns a bheil an sensor a’ comharrachadh agus an taobh anns a bheil tuath magnetach na laighe.
- Mu dheireadh, bidh e a ’brùthadh an LED gus gnìomhachd a chomharrachadh agus a’ feitheamh mionaid mus leugh thu na mothachairean.
Sgrìobhainnean/Goireasan
![]() |
Sgeidse Deuchainn Sensor Co-mheasgaichte ARDUINO GY87 [pdfLeabhar-làimhe an neach-cleachdaidh Sgeidse Deuchainn Sensor Co-mheasgaichte GY87, GY87, Sgeidse Deuchainn Sensor Co-mheasgaichte, Sgeidse Deuchainn Sensor, Sgeidse Deuchainn |