Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Versnelling omzetten naar hoek van MPU6050 I2C-sensor

Componenten en benodigdheden

Arduino Nano R3
× 1
SparkFun Triple Axis Accelerometer en Gyro Breakout - MPU-6050
× 1

Apps en online services

Visuino - Grafische ontwikkelomgeving voor Arduino
Arduino IDE

Over dit project

Een tijdje geleden heb ik een tutorial gepost over hoe u MPU9250 versnellingsmeter, gyroscoop en kompassensor . kunt aansluiten naar Arduino Nano en programmeer het met Visuino om pakketgegevens te verzenden en weer te geven op een Scope en Visual Instruments.

De Versnellingsmeter stuurt X, Y, en Z versnelling krachten. Vaak moeten we de krachten echter omzetten in X, Y, Z 3D-hoek om de 3D-oriëntatie te bepalen van de sensor. Heel weinig mensen hebben om zo'n tutorial gevraagd, en eindelijk heb ik tijd gevonden om het te maken.

Sommige mensen vroegen ook hoe u MPU6050 accelerometer en gyroscoopsensor kunt aansluiten en gebruiken , dus besloot ik deze module te gebruiken voor de tutorial in plaats van de meer complexe en duurdere MPU9250 .

In deze zelfstudie laat ik u zien hoe eenvoudig het is om de MPU6050 versnellingsmeter en gyroscoopsensor aan te sluiten naar Arduino Nano , en programmeer het met Visuino om de Versnelling . te converteren in een 3D X, Y, Z-hoek .

Stap 1:Componenten

  • Eén Arduino compatibel bord (ik gebruik Arduino Nano, omdat ik er een heb, maar elke andere is prima)
  • Eén MPU6050-sensormodule voor acceleratiegyroscoop
  • 4 vrouw-vrouw jumperdraden

Stap 2:Sluit de MPU6050 Accelerometer en Gyroscoop aan op Arduino

  • Sluit 5V VCC-voeding aan (Rode draad ), Grond (Zwarte draad ), SCL (Gele draad ), en SDA (Groene draad ) naar de MPU6050-module (Afbeelding 1 )
  • Verbind het andere uiteinde van de aardingsdraad (Zwarte draad ) naar een Grond speld van de Arduino Nano bord (Afbeelding 2 )
  • Sluit het andere uiteinde van de 5V VCC-voedingsdraad aan (Rode draad ) naar de 5V powerpin van de Arduino Nano bord (Afbeelding 2 )
  • Sluit het andere uiteinde van de SDA-draad aan (Groene draad ) naar SDA/analoge pin 4 van de Arduino Nano bord (Afbeelding 3 )
  • Verbind het andere uiteinde van de SCL-draad (Gele draad ) naar SCL/analoge pin 5 van de Arduino Nano bord (Afbeelding 3 )
  • Afbeelding 4 laat zien waar de Grond . is , 5V Voeding, SDA/analoge pin 4 , en SCL/analoge pin 5 , pinnen van de Arduino Nano

Stap 3:Start Visuino en selecteer het Arduino-bordtype

Om te beginnen met het programmeren van de Arduino, heb je de Arduino IDE . nodig geïnstalleerd vanaf hier:http://www.arduino.cc/.

Zorg ervoor dat je 1.6.7 of hoger installeert, anders werkt deze tutorial niet!

De Visuino :https://www.visuino.com moet ook worden geïnstalleerd.

  • Start Visuino zoals op de eerste foto
  • Klik op de "Extra " knop op de Arduino component (Afbeelding 1 ) in Visuino
  • Als het dialoogvenster verschijnt, selecteert u Arduino Nano zoals getoond in Afbeelding 2

Stap 4:In Visuino:MPU9650 toevoegen en aansluiten en acceleratie naar hoekcomponenten

Eerst moeten we componenten toevoegen om de MPU6050-sensor te besturen en om de X, Y, Z-versnelling om te zetten in 3D X, Y, Z-hoek:

  • Typ "6050 " in het filtervak ​​van de Component Toolbox selecteer vervolgens de "Accelerometer Gyroscope MPU6000/MPU6050 I2C " component (Afbeelding 1 ), en zet het neer in het ontwerpgebied (Afbeelding 2 )
  • Typ "hoek " in het filtervak ​​van de Component Toolbox selecteer vervolgens de "Acceleration To Angle " component (Afbeelding 2 ), en zet het neer in het ontwerpgebied (Afbeelding 3 )
  • Klik in de "Uit " vak van de "Versnellingsmeter " doos met de X,Y, X versnellingspinnen van de AccelerometerGyroscope1 component om alle Out-pinnen tegelijk aan te sluiten (Afbeelding 3 )
  • Beweeg de muis over de "X " invoerpin van de "In " vak van de AccelerationToAngle1 onderdeel. De Visuino spreidt automatisch de draden zodat ze correct worden aangesloten op de rest van de pinnen (Afbeelding 3 )
  • Sluit de "Out . aan " pin van de AccelerometerGyroscope1 component naar de naar de "In " pin van de I2C kanaal van de Arduino component (Afbeelding 4 )

Stap 5:In Visuino:voeg pakketcomponent en 3 binaire analoge elementen toe en verbind ze

Om alle kanaalgegevens via de seriële poort van Arduino te verzenden, kunnen we de Packet-component gebruiken om de kanalen samen te bundelen en ze weer te geven in de Scope en Gauges in Visuino :

  • Typ "pakket " in het vak Filter van de Component Toolbox selecteer vervolgens de component "Sinus Analoge Generator" (Afbeelding 1 ), en zet het in het ontwerpgebied
  • Klap in de Objectinspector de "Hoofdmarkering . uit "eigendom (Afbeelding 2 )
  • Klik in de Object Inspector op de "... " knop (Afbeelding 2 )
  • Typ in de Bytes-editor enkele getallen, bijvoorbeeld 55 55 (Afbeelding 3 )
  • Klik op de OK-knop om de editor te bevestigen en te sluiten

Stap 6:In Visuino:voeg 3 binaire analoge elementen toe aan de pakketcomponent en verbind ze

Om alle kanaalgegevens via de seriële poort van Arduino te verzenden, kunnen we de Packet-component gebruiken om de kanalen samen te bundelen en ze weer te geven in de Scope en Gauges in Visuino :

  • Klik op de "Extra " knop van de Packet1 component (Afbeelding 1 )
  • In de "Elementen " editor selecteer de “Binaire Analoge ”-element en klik vervolgens 3 keer op de knop "" (Afbeelding 2 ) om 3 . toe te voegen Analoge elementen (Afbeelding 3 )
  • Klik in de "Uit " vak van de "Versnellingsmeter " Doos met de pinnen van de AccelerationToAngle1 component om alle Out-pinnen tegelijk te verbinden (Afbeelding 4 )
  • Beweeg de muis over de "In " pin van de "Elements.Analog(Binary)1 " element van het Packet1 onderdeel. De Visuino spreidt automatisch de draden zodat ze correct worden aangesloten op de rest van de pinnen (Afbeelding 4 )
  • Sluit de "Out . aan " uitvoerpin van de Packet1 component naar de "In " invoerpin van de "Serial[ 0 ] " kanaal van de "Arduino "component (Afbeelding 5 )

Stap 6:Genereer, compileer en upload de Arduino-code

  • In Visuino , Druk op F9 of klik op de knop die wordt weergegeven op Afbeelding 1 om de Arduino-code te genereren en de Arduino IDE te openen
  • In de Arduino IDE , klik op de Uploaden knop, om de code te compileren en te uploaden (Afbeelding 2 )

Stap 7:En speel...

U kunt de aangesloten en draaiende MPU6050-versnellingsmeter en gyroscoopsensor . zien op Afbeelding 1 .

  • In Visuino selecteer de seriële poort en klik vervolgens op de "Formaat: " vervolgkeuzelijst en selecteer Packet1 (Afbeelding 2 )
  • Klik op de "Verbinden " knop (Afbeelding 2 )
  • Als u de "Reikwijdte . selecteert " tabblad, ziet u de Scope die de X,Y,Z-hoeken . plot na verloop van tijd (Afbeelding 3 )
  • Als u de "Instrumenten . selecteert " tabblad, ziet u de Meters met dezelfde informatie (Afbeelding 4 )

Je kunt de sensor in actie zien op de Video .

Gefeliciteerd! Je hebt een Visuino . gemaakt project converteert Versnelling naar Hoek van MPU6050 versnellingsmeter en gyroscoopsensor .

Op Afbeelding 5 je kunt de volledige Visuino . zien diagram.

Ook bijgevoegd is de Visuino project, dat ik voor deze zelfstudie heb gemaakt. Je kunt het downloaden en openen in Visuino :https://www.visuino.com

Code

  • MPU6050AccelerationToAngleTutorial
MPU6050AccelerationToAngleTutorialArduino
Voltooi Visuino-project
Geen voorbeeld (alleen downloaden).

Productieproces

  1. Werking en toepassingen van de versnellingsmetersensor
  2. Optimaliseren van uiterst nauwkeurige kantel-/hoekdetectie:basisprincipes van de versnellingsmeter
  3. Raspberry Pi Temperature Logger
  4. BMP180 I2C digitale luchtdruksensor
  5. Stuur sensorgegevens van de ene Arduino naar de andere met Firebase
  6. CO2-monitoring met K30-sensor
  7. Hoe lang ben je?
  8. Capacitieve vingerafdruksensor met een Arduino of ESP8266
  9. Arduino Cloud Sensor Tower
  10. Bewegingssensor-waterpistool
  11. Mini-radar met Arduino