INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
I2C-Gyro und I2C-Kompass für Arduino Due gesucht
26.06.2015, 16:27
Beitrag #9
RE: I2C-Gyro und I2C-Kompass für Arduino Due gesucht
(26.06.2015 15:43)HaWe schrieb:  b) für den Kompass den echten Kompasswinkel.
Das scheint ziemlich schwierig zu sein, da die Dinger immer kalibriert werden müssen.

Zitat:wie sieht denn deine lib aus?
Hängt hier dran.


Angehängte Datei(en)
.zip  MPU6050.zip (Größe: 70,03 KB / Downloads: 20)

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.06.2015, 16:53 (Dieser Beitrag wurde zuletzt bearbeitet: 26.06.2015 16:55 von HaWe.)
Beitrag #10
RE: I2C-Gyro und I2C-Kompass für Arduino Due gesucht
OMG, ja, genau solche libs meinte ich ...
hast du dir das mal angesehen?
Diese Riesen-dump-memory Tabellen?
Und da werden ja noch weitere Irrsinns-Libs #included, bis runter zu i2cdev.h ...

neeneenee.

Ich will einfach nur selber alle paar ms ein paar Register auslesen, und da müssen dann die Werte drin stehen.

Es gab wohl mal einen Kompass bei Watterott, den (edit : ) HMC6352 , mit integrierter Neigungs-Kompensation.
Der scheint die Daten bereits vernünftig aufbereitet zu liefern, das schafft sogar das Fischertechnik-Bildchen-Programm, die auszulesen. Wenn ichs richtig sehe, gibt es den aber gar nicht mehr - oder ?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.06.2015, 17:01 (Dieser Beitrag wurde zuletzt bearbeitet: 26.06.2015 17:02 von Thorsten Pferdekämper.)
Beitrag #11
RE: I2C-Gyro und I2C-Kompass für Arduino Due gesucht
(26.06.2015 16:53)HaWe schrieb:  Diese Riesen-dump-memory Tabellen?
Die brauchst Du nicht, wenn Du den integrierten DMP nicht benutzt. Für Dich reicht MPU6050.h. Schau Dir mal das Beispiel MPU9150_raw (oder so) an.

(26.06.2015 16:53)HaWe schrieb:  Der scheint die Daten bereits vernünftig aufbereitet zu liefern,
"Scheint" ist wahrscheinlich richtig. Es wäre tatsächlich mal interessant, einen ordentlich kalibrierten Kompass zu haben.

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.06.2015, 17:19
Beitrag #12
RE: I2C-Gyro und I2C-Kompass für Arduino Due gesucht
(26.06.2015 17:06)t.a.f.k.a.Z. schrieb:  @Thorsten:
kennst Du dieses Teil ?
http://de.manu-systems.com/CMPS11.shtml
Nein, das kannte ich noch nicht. Stolzer Preis, aber wenn es das hält, was es verspricht, dann muss ich demnächst doch mal wieder meinen Quadcopter reaktivieren.
Hier gibt's auch einen Beispielsketch:
http://www.hobbytronics.co.uk/cmps11-tilt-compass

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.06.2015, 17:35 (Dieser Beitrag wurde zuletzt bearbeitet: 26.06.2015 17:39 von HaWe.)
Beitrag #13
RE: I2C-Gyro und I2C-Kompass für Arduino Due gesucht
da sind doch auch schon wieder diese ominösen
#include "I2Cdev.h"
#include "MPU6050.h"
mit drin.

Nee, ich will diesen Krempel nicht!
Nur Wire !
Nur Register auslesen! So wie der HMC6352 (oder vergleichbare).

Er berechnet intern alles was nötig ist, außerdem ist der HMC6352 kompensiert und zeigt auch bei Schieflage die richtige Richtung an, und er ist selbstkalibrierend!

Also kennt wer einen, der wie der HMC6352 funktioniert, vielleicht ein direkter Nachfolger von Hitachi?
Welche Befehle sind z.B. für den CMPS11 nötig?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.06.2015, 17:38
Beitrag #14
RE: I2C-Gyro und I2C-Kompass für Arduino Due gesucht
@HaWe: Schau doch mal, was tafkaZ geschrieben hat...

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.06.2015, 17:50 (Dieser Beitrag wurde zuletzt bearbeitet: 26.06.2015 17:53 von HaWe.)
Beitrag #15
RE: I2C-Gyro und I2C-Kompass für Arduino Due gesucht
ah, ich hatte den Sketch nicht gefunden.
Jetzt schon, da steht dann zwar die 10er Version - wird aber dann wohl genauso funktionieren.

Und da steht zwar Magnetischer Kompass mit Neigungsausgleich - aber einen Gyro scheint der ja auch zu haben, oder?

Code:
/****************************************************************
*                  Arduino CMPS10 example code                  *
*                    CMPS10 running I2C mode                    *
*                    by James Henderson, 2012                   *
*****************************************************************/
#include <Wire.h>
#include <SoftwareSerial.h>

#define ADDRESS 0x60                                          // Defines address of CMPS10

#define LCD_RX              0x02                              // RX and TX pins used for LCD0303 serial port
#define LCD_TX              0x03
#define LCD03_HIDE_CUR      0x04
#define LCD03_CLEAR         0x0C
#define LCD03_SET_CUR       0x02

SoftwareSerial lcd03 =  SoftwareSerial(LCD_RX, LCD_TX);      // Defines software serial port for LCD03

void setup(){
  Wire.begin();                                               // Conects I2C
  lcd03.begin(9600);
  lcd03.write(LCD03_HIDE_CUR);
  lcd03.write(LCD03_CLEAR);
}

void loop(){
   byte highByte, lowByte, fine;              // highByte and lowByte store high and low bytes of the bearing and fine stores decimal place of bearing
   char pitch, roll;                          // Stores pitch and roll values of CMPS10, chars are used because they support signed value
   int bearing;                               // Stores full bearing
  
   Wire.beginTransmission(ADDRESS);           //starts communication with CMPS10
   Wire.write(2);                              //Sends the register we wish to start reading from
   Wire.endTransmission();

   Wire.requestFrom(ADDRESS, 4);              // Request 4 bytes from CMPS10
   while(Wire.available() < 4);               // Wait for bytes to become available
   highByte = Wire.read();          
   lowByte = Wire.read();            
   pitch = Wire.read();              
   roll = Wire.read();              
  
   bearing = ((highByte<<8)+lowByte)/10;      // Calculate full bearing
   fine = ((highByte<<8)+lowByte)%10;         // Calculate decimal place of bearing
  
   display_data(bearing, fine, pitch, roll);  // Display data to the LCD03
  
   delay(100);
}

void display_data(int b, int f, int p, int r){    // pitch and roll (p, r) are recieved as ints instead oif bytes so that they will display corectly as signed values.
  
  lcd03.write(LCD03_SET_CUR);                     // Set the LCD03 cursor position
  lcd03.write(1);  
  lcd03.print("CMPS10 Example V:");
  lcd03.print(soft_ver());                        // Display software version of the CMPS10
  
  delay(5);                                       // Delay to allow LCD03 to proscess data  
  
  lcd03.write(LCD03_SET_CUR);
  lcd03.write(21);  
  lcd03.print("Bearing = ");                      // Display the full bearing and fine bearing seperated by a decimal poin on the LCD03
  lcd03.print(b);                              
  lcd03.print(".");
  lcd03.print(f);
  lcd03.print("  ");

  delay(5);

  lcd03.write(LCD03_SET_CUR);                     // Display the Pitch value to the LCD03
  lcd03.write(41);
  lcd03.print("Pitch = ");
  lcd03.print(p);
  lcd03.print(" ");

  delay(5);
  
  lcd03.write(LCD03_SET_CUR);                     // Display the roll value to the LCD03
  lcd03.write(61);
  lcd03.print("Roll = ");
  lcd03.print(r);
  lcd03.print(" ");
}

int soft_ver(){
   int data;                                      // Software version of  CMPS10 is read into data and then returned
  
   Wire.beginTransmission(ADDRESS);
   // Values of 0 being sent with write need to be masked as a byte so they are not misinterpreted as NULL this is a bug in arduino 1.0
   Wire.write((byte)0);                           // Sends the register we wish to start reading from
   Wire.endTransmission();

   Wire.requestFrom(ADDRESS, 1);                  // Request byte from CMPS10
   while(Wire.available() < 1);
   data = Wire.read();          
  
   return(data);
}

bei
http://www.roboter-teile.de/Oxid/Navigat...MPS11.html
nur knapp 28 EUR !
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.06.2015, 18:02
Beitrag #16
RE: I2C-Gyro und I2C-Kompass für Arduino Due gesucht
(26.06.2015 17:50)HaWe schrieb:  Und da steht zwar Magnetischer Kompass mit Neigungsausgleich - aber einen Gyro scheint der ja auch zu haben, oder?
Ja. ...und ein Beschleunigungssensor. Die werden für den Neigungsausgleich benutzt, man kann aber auch die Rohdaten lesen. Pitch und Roll gibt's auch gleich noch dazu. Irgendwo habe ich sogar noch die Temperatur gesehen.

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Gyroskop/Kompass Sensor AlphaRay 9 407 10.10.2016 14:41
Letzter Beitrag: AlphaRay
  Ing. gesucht bergfrei 3 492 20.05.2016 13:43
Letzter Beitrag: bergfrei
  dfplayer auf die schnelle gesucht... Tozupi 1 527 27.10.2015 20:05
Letzter Beitrag: Tozupi
  Empfehlung gesucht für I2C-GPS-Sensor, auch für Google Maps HaWe 19 2.222 27.07.2015 14:29
Letzter Beitrag: DaniDD
  Elektroniker gesucht bergfrei 11 1.399 19.07.2015 08:04
Letzter Beitrag: Scherheinz
  Tip für Relaisschiene 220 V gesucht Home38 32 2.775 16.07.2015 12:05
Letzter Beitrag: Home38
  LCD Anzeige für Arduino Mega2560 an Arduino Due? DaniDD 1 808 03.06.2015 12:16
Letzter Beitrag: DaniDD
  Arduino Pin mit anderem Arduino auslesen - geht das? Gelegenheitsbastler 8 3.225 08.05.2015 20:49
Letzter Beitrag: Bitklopfer
  Empfehlung für 3D IMU (Gyro) ? HaWe 0 486 06.03.2015 11:07
Letzter Beitrag: HaWe
  Platine mit ca. 200-300 (z.B. 16x16) Tastern gesucht HaWe 6 1.657 25.01.2015 21:27
Letzter Beitrag: HaWe

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste