Teilchen Photon - MPU-6000 6-Axis Motion-Tracking-Sensor Tutorial (3 / 4 schritt)

Schritt 3: Code:


Der Partikel-Code für MPU-6000 kann heruntergeladen werden von unserem Github Repository-ControlEverythingCommunity

Hier ist der Link für das gleiche:

https://github.com/ControlEverythingCommunity/MPU-...

Das Datenblatt des MPU-6000 finden Sie hier:

https://S3.amazonaws.com/controleverything.Media/c...

Wir haben zwei Bibliotheken für Partikel Code verwendet die application.h und spark_wiring_i2c.h sind. Spark_wiring_i2c Bibliothek ist erforderlich, um die I2C Kommunikation mit dem Sensor zu erleichtern.

Sie können auch kopieren Sie den Code von hier, es ist wie folgt gegeben:

Mit einer freien Lizenz vertrieben.

Verwenden Sie es wie Sie wollen, profitieren oder frei, vorausgesetzt, es passt in die Lizenzen für die damit verbundenen arbeiten.

MPU-6000

Dieser Code dient zur Arbeit mit dem MPU-6000_I2CS I2C-Mini-Modul von ControlEverything.com zur Verfügung.

https://www.controleverything.com/Content/Accelor...

#include < application.h >

#include < spark_wiring_i2c.h >

MPU-6000 I2C Adresse ist 0x68(104)

#define Addr 0x68

Int xGyro = 0, yGyro = 0 zGyro = 0 xAccl = 0, yAccl = 0, zAccl = 0;

void setup()

{

Variable setzen

Particle.Variable ("i2cdevice", "MPU-6000");

Particle.Variable ("xAccl", xAccl);

Particle.Variable ("yAccl", yAccl);

Particle.Variable ("zAccl", zAccl);

Particle.Variable ("xGyro", xGyro);

Particle.Variable ("yGyro", yGyro);

Particle.Variable ("zGyro", zGyro);

I2C Kommunikation als Master zu initialisieren

Wire.Begin();

Initialisieren, seriellen Kommunikation, eingestellte Baudrate = 9600

Serial.Begin(9600);

I2C Übertragung starten

Wire.beginTransmission(Addr);

Wählen Sie Gyroskop-Konfigurations-register

Wire.Write(0x1B);

Volle Maßstabsbereich = 2000 Dps

Wire.Write(0x18);

I2C Übertragung stoppen

Wire.endTransmission();

I2C Übertragung starten

Wire.beginTransmission(Addr);

Wählen Sie Beschleunigungsmesser-Konfigurations-register

Wire.Write(0x1C);

Volle Maßstabsbereich = +/-16g

Wire.Write(0x18);

I2C Übertragung stoppen

Wire.endTransmission();

I2C Übertragung starten

Wire.beginTransmission(Addr);

Wählen Sie Energieverwaltung registrieren

Wire.Write(0x6B);

PLL mit xGyro Bezug

Wire.Write(0x01);

I2C Übertragung stoppen

Wire.endTransmission();

Delay(300);

}

void loop()

{

unsigned Int Daten [6];

I2C Übertragung starten

Wire.beginTransmission(Addr);

Wählen Sie Datenregister

Wire.Write(0x3B);

I2C Übertragung stoppen

Wire.endTransmission();

6 Byte an Daten anfordern

Wire.requestFrom (Addr, 6);

Lesen Sie 6 Byte an Daten

Wenn (Wire.available() == 6)

{

Daten [0] = Wire.read();

Daten [1] = Wire.read();

Daten [2] = Wire.read();

Daten [3] = Wire.read();

Daten [4] = Wire.read();

Daten [5] = Wire.read();

}

Delay(800);

Konvertieren Sie die Daten

xAccl = ((Daten [1] * 256) + data[0]);

Wenn (xAccl > 32767)

{

xAccl = 65536;

}

yAccl = ((Daten [3] * 256) + data[2]);

Wenn (yAccl > 32767)

{

yAccl = 65536;

}

zAccl = ((Daten [5] * 256) + data[4]);

Wenn (zAccl > 32767)

{

zAccl = 65536;

}

Delay(800);

I2C Übertragung starten

Wire.beginTransmission(Addr);

Wählen Sie Datenregister

Wire.Write(0x43);

I2C Übertragung stoppen

Wire.endTransmission();

6 Byte an Daten anfordern

Wire.requestFrom (Addr, 6);

Lesen Sie 6 Byte an Daten

Wenn (Wire.available() == 6)

{

Daten [0] = Wire.read();

Daten [1] = Wire.read();

Daten [2] = Wire.read();

Daten [3] = Wire.read();

Daten [4] = Wire.read();

Daten [5] = Wire.read();

}

Delay(800);

Konvertieren Sie die Daten

xGyro = ((Daten [1] * 256) + data[0]);

Wenn (xGyro > 32767)

{

xGyro = 65536;

}

yGyro = ((Daten [3] * 256) + data[2]);

Wenn (yGyro > 32767)

{

yGyro = 65536;

}

zGyro = ((Daten [5] * 256) + data[4]);

Wenn (zGyro > 32767)

{

zGyro = 65536;

}

Delay(800);

Ausgabedaten-Dashboard

Particle.Publish ("Beschleunigung in X-Achse:", String(xAccl));

Particle.Publish ("Beschleunigung in Y-Achse:", String(yAccl));

Particle.Publish ("Beschleunigung in z-Achse:", String(zAccl));

Delay(1000);

Particle.Publish ("X-Achse der Drehung:", String(xGyro));

Particle.Publish ("Y-Achse der Drehung:", String(yGyro));

Particle.Publish ("z-Achse der Drehung:", String(zGyro));

Delay(1000);

}

In Verbindung stehende Artikel

HackerBoxes 0006: Internet der Dinge (IoT) Projekte mit dem Teilchen Photon

HackerBoxes 0006: Internet der Dinge (IoT) Projekte mit dem Teilchen Photon

Hacker Internet of Things! In diesem Monat Abonnenten HackerBoxes arbeiten mit Photon IoT Spanplatten zur Steuerung von Geräten über das Internet, sammeln Sensor Daten über das Internet, speichern Daten in der Cloud und vieles mehr.Diese Instructable
Messung der Beschleunigung mit H3LIS331DL und Teilchen Photon

Messung der Beschleunigung mit H3LIS331DL und Teilchen Photon

H3LIS331DL, gehört ein stromsparende Hochleistungs 3-Achs lineare Beschleunigungsmesser, der "Nano"-Familie, mit digitalen I²C serielle Schnittstelle. H3LIS331DL hat Benutzer wählbare voller Schuppen von ±100g/±200g/±400g und es ist für die Mess
Beschleunigungsmessung mit BMA250 und Teilchen Photon

Beschleunigungsmessung mit BMA250 und Teilchen Photon

BMA250 ist eine kleine, dünne, Frequenzverschiebungen Power, 3-Achsen-Beschleunigungssensor mit hoher Auflösung (13 Bit) Messung an bis zu ±16 g. digitaler Ausgang, die Daten formatiert ist, wie 16-Bit zweit ergänzen und durch digitale I2C Schnittste
Magnetfeldmessung mittels HMC5883 und Teilchen Photon

Magnetfeldmessung mittels HMC5883 und Teilchen Photon

Die HMC5883 ist ein digitaler Kompass, konzipiert für die Low-Bereich magnetische Abtastung. Dieses Gerät hat einen breite Magnetfeld-Bereich von +/-8 Oe und eine Ausgabe in Höhe von 160 Hz. Der HMC5883 Sensor enthält automatische Entmagnetisierung G
Glückskeks-Teller mit Teilchen Photon, thethings.iO & Twitter

Glückskeks-Teller mit Teilchen Photon, thethings.iO & Twitter

In diesem instructable gehen wir zu bauen und Programm, das eine tolle Glückskeks Teller, mit der Teilchen Photon mit thethings.iO über Mqtt und Twitter über API-Anforderungen verbunden.Gewünschte Funktionalität:-Jedes Mal, wenn die Taste (angeschlos
Facebook-Seite gefällt Theken-Display (mit Teilchen Photon)

Facebook-Seite gefällt Theken-Display (mit Teilchen Photon)

Ich wollte einen kleinen Stand zu machen, der in Echtzeit die Anzahl der Likes eines Freundes Pizza Restaurant Facebook-Seite, anzeigen konnte um ihm bieten eine Möglichkeit zum Laden seiner Kunden zu fördern, die Lage, natürlich auch gerne seine Sei
Manipit - IRONMAN JARVIS-ähnliche Hand Motion-Tracking mit bemalten Handschuhe

Manipit - IRONMAN JARVIS-ähnliche Hand Motion-Tracking mit bemalten Handschuhe

Note(May, 12, 2015) ***Wenn Sie das Video aus der eingebetteten Datei können nicht, Sie können es sehen hier!!********************************Haben Sie den Film gesehen "Iron Man"?In dem Film manipuliert Tony virtuelle Objekte durch seine Handbe
Altoids Mini Motion-Tracker

Altoids Mini Motion-Tracker

aktualisiert 29. Nov.: zusätzliche Basisstation mod Anleitung!Wer in der Grundschule in den 2000er Jahren wohl war kannte jemanden, der eines dieser SpyGear Tracker Systeme hatten. In der Tat, wenn Sie einen hätten, waren Sie wohl das coolste Kind in
Erhalten begonnen mit der Teilchen Photon

Erhalten begonnen mit der Teilchen Photon

Hallo Kollegen Macher! Heute werde ich Sie zu einem kleinen winzigen Produkt zeigen werden, die einen Schlag in IoT packen können. Heute arbeiten wir mit dem Teilchen Photon.Hier sind die Angaben:Partikel-P0 WiFi-ModulBroadcom BCM43362 WLAN-chipSTM32
Mechanischen Arm - Pyduino + Leap Motion Tracking Hand

Mechanischen Arm - Pyduino + Leap Motion Tracking Hand

Hallo!In diesem Tutorial zeige ich Ihnen die Jungs und Mädels, wie man eine Hand tracking mechanischen Arm mit einem Sprung-Motion-Controller, Arduino Gerät, ein paar Motoren, einige Balsaholz, Büroklammern, Heißkleber und ein kleines Python-Code zu
Teilchen Photon Home-Alarm-System

Teilchen Photon Home-Alarm-System

Hier ist mein erster instructable! Seit drei Jahren traf ich Arduino. Ich habe versucht, verschiedene DIY-Projekte, aber ich habe nicht Post einer vor. Machen eine Alarmanlage kann nicht scheinen, ein komplexes Projekt, aber wenn Elektronik nur Ihr H
Fernbedienungsrelais mit Teilchen Photon

Fernbedienungsrelais mit Teilchen Photon

Partikel (formal Spark) haben ihre neue Linie von erschwinglichen WiFi-fähige Mikrocontroller Plattformen veröffentlicht: The Photon. Dies ist der Nachfolger des Spark Core und Maßnahmen auf eine winzige 37 x 21 mm Stellfläche. Ich habe ein paar Gart
Einführung in die Teilchen Photon und IoT

Einführung in die Teilchen Photon und IoT

1. genießen Sie meine erste Instructable2. Ich bin, aber niedrigen Freshman, Anwärter auf eine tolle Programmierer sein, also bitte, keine hasserfüllte Kommentare (ich glaube wirklich nicht, ich muss erwähnen, dass die Community hier sehr schön ist)3
Motion-Tracker mit PIRs, Arduino und ein Servo

Motion-Tracker mit PIRs, Arduino und ein Servo

das ist meine Motion-tracking-Kopf mit vier PIRs (Passive Infrarot-Sensoren), ein Arduino Uno-Board und ein Servo.Es ist eine einfache Möglichkeit, den Eindruck zu erwecken, dass der Kopf (birdy) tatsächlich Bewegung folgt.Es ist ein sehr einfaches P