Hallo!
Hab da ein Problem. Suche nun schon ein paar Tag im www, bin bis jetzt aber leider noch nicht weiter gekommen. Ich habe einen Quadrokopter mit Flyduino Mega-Board, Flyduino 9DOF IMU und GPS-Modul auf Flyduino BOB. Software ist die Multiwii 2.1. Der Kopter fliegt so bis jetzt wunderbar, der Stable-Mode funktioniert auch. Wenn ich die Multiwiiconf an habe und der Quadro angeschlossen ist habe ich im Garten 7-8 Satelliten. Der Schalter für Position Hold wird in der Conf auch erkannt. Nur wenn ich mit dem Quadro fliege und den Schalter für Position Hold umlege passiert nix. Der Quadro driftet irgendwann weg und wenn ich nix mache is er irgendwann weg!!! Hab keine I²C Fehler.
Hier mal ein Ausschnitt aus meiner def.h
/**************************************************************************************/
/*********************** GPS **************************/
/**************************************************************************************/
/* GPS using a SERIAL port
only available on MEGA boards (this might be possible on 328 based boards in the future)
if enabled, define here the Arduino Serial port number and the UART speed
note: only the RX PIN is used, the GPS is not configured by multiwii
the GPS must be configured to output GGA and RMC NMEA sentences (which is generally the default conf for most GPS devices)
at least 5Hz update rate. uncomment the first line to select the GPS serial port of the arduino */
#define GPS_SERIAL 2 // should be 2 for flyduino v2. It's the serial port number on arduino MEGA
#define GPS_BAUD 115200
//#define GPS_PROMINI_SERIAL 57600 // Will Autosense if GPS is connected when ardu boots
/* I2C GPS device made with an independant arduino + GPS device
including some navigation functions
contribution from EOSBandi http://code.google.com/p/i2c-gps-nav/
You have to use at least I2CGpsNav code r33 */
//#define I2C_GPS
/* I2C GPS device made with an indeedent ATTiny[24]313 + GPS device and
optional sonar device. https://github.com/wertarbyte/tiny-gps/ */
/* get GPS data from Tiny-GPS */
//#define TINY_GPS
/* get sonar data from Tiny-GPS */
//#define TINY_GPS_SONAR
/* indicate a valid GPS fix with at least 5 satellites by flashing the LED? */
#define GPS_LED_INDICATOR
/* GPS data readed from OSD -- still need some more code to work */
//#define GPS_FROM_OSD
//#define USE_MSP_WP //Enables the MSP_WP command, which is used by WinGUI to display and log Home and Poshold positions
//Uncomment it if you are planning to use WinGUI - Will cost +208 bytes of Flash
//#define DONT_RESET_HOME_AT_ARM // HOME position is reset at every arm, uncomment it to prohibit it (you can set home position with GyroCalibration)
/* GPS navigation can control the heading */
#define NAV_CONTROLS_HEADING true // copter faces toward the navigation point, maghold must be enabled for it
#define NAV_TAIL_FIRST false // true - copter comes in with tail first
#define NAV_SET_TAKEOFF_HEADING true // true - when copter arrives to home position it rotates it's head to takeoff direction
/* Get your magnetic decliniation from here : http://magnetic-declination.com/
Convert the degree+minutes into decimal degree by ==> degree+minutes*(1/60)
Note the sign on declination it could be negative or positive (WEST or EAST) */
//#define MAG_DECLINIATION 3.96f //For Budapest Hungary.
#define MAG_DECLINIATION 0.0f
#define GPS_FILTERING // add a 5 element moving average filter to GPS coordinates, helps eliminate gps noise but adds latency comment out to disable
#define GPS_LOW_SPEED_D_FILTER // below .5m/s speed ignore D term for POSHOLD_RATE, theoretically this also removed D term induced noise commnent out to disable
#define GPS_WP_RADIUS 200 // if we are within this distance to a waypoint then we consider it reached (distance is in cm)
#define NAV_SLEW_RATE 30 // Adds a rate control to nav output, will smoothen out nav angle spikes
Muß ich sonst noch irgenwo was ändern? Habe ich was übersehen?? Bin da leider nicht so Fit drin!! Für Tipps währe ich sehr Dankbar!!
Gruß Chris
Hab da ein Problem. Suche nun schon ein paar Tag im www, bin bis jetzt aber leider noch nicht weiter gekommen. Ich habe einen Quadrokopter mit Flyduino Mega-Board, Flyduino 9DOF IMU und GPS-Modul auf Flyduino BOB. Software ist die Multiwii 2.1. Der Kopter fliegt so bis jetzt wunderbar, der Stable-Mode funktioniert auch. Wenn ich die Multiwiiconf an habe und der Quadro angeschlossen ist habe ich im Garten 7-8 Satelliten. Der Schalter für Position Hold wird in der Conf auch erkannt. Nur wenn ich mit dem Quadro fliege und den Schalter für Position Hold umlege passiert nix. Der Quadro driftet irgendwann weg und wenn ich nix mache is er irgendwann weg!!! Hab keine I²C Fehler.
Hier mal ein Ausschnitt aus meiner def.h
/**************************************************************************************/
/*********************** GPS **************************/
/**************************************************************************************/
/* GPS using a SERIAL port
only available on MEGA boards (this might be possible on 328 based boards in the future)
if enabled, define here the Arduino Serial port number and the UART speed
note: only the RX PIN is used, the GPS is not configured by multiwii
the GPS must be configured to output GGA and RMC NMEA sentences (which is generally the default conf for most GPS devices)
at least 5Hz update rate. uncomment the first line to select the GPS serial port of the arduino */
#define GPS_SERIAL 2 // should be 2 for flyduino v2. It's the serial port number on arduino MEGA
#define GPS_BAUD 115200
//#define GPS_PROMINI_SERIAL 57600 // Will Autosense if GPS is connected when ardu boots
/* I2C GPS device made with an independant arduino + GPS device
including some navigation functions
contribution from EOSBandi http://code.google.com/p/i2c-gps-nav/
You have to use at least I2CGpsNav code r33 */
//#define I2C_GPS
/* I2C GPS device made with an indeedent ATTiny[24]313 + GPS device and
optional sonar device. https://github.com/wertarbyte/tiny-gps/ */
/* get GPS data from Tiny-GPS */
//#define TINY_GPS
/* get sonar data from Tiny-GPS */
//#define TINY_GPS_SONAR
/* indicate a valid GPS fix with at least 5 satellites by flashing the LED? */
#define GPS_LED_INDICATOR
/* GPS data readed from OSD -- still need some more code to work */
//#define GPS_FROM_OSD
//#define USE_MSP_WP //Enables the MSP_WP command, which is used by WinGUI to display and log Home and Poshold positions
//Uncomment it if you are planning to use WinGUI - Will cost +208 bytes of Flash
//#define DONT_RESET_HOME_AT_ARM // HOME position is reset at every arm, uncomment it to prohibit it (you can set home position with GyroCalibration)
/* GPS navigation can control the heading */
#define NAV_CONTROLS_HEADING true // copter faces toward the navigation point, maghold must be enabled for it
#define NAV_TAIL_FIRST false // true - copter comes in with tail first
#define NAV_SET_TAKEOFF_HEADING true // true - when copter arrives to home position it rotates it's head to takeoff direction
/* Get your magnetic decliniation from here : http://magnetic-declination.com/
Convert the degree+minutes into decimal degree by ==> degree+minutes*(1/60)
Note the sign on declination it could be negative or positive (WEST or EAST) */
//#define MAG_DECLINIATION 3.96f //For Budapest Hungary.
#define MAG_DECLINIATION 0.0f
#define GPS_FILTERING // add a 5 element moving average filter to GPS coordinates, helps eliminate gps noise but adds latency comment out to disable
#define GPS_LOW_SPEED_D_FILTER // below .5m/s speed ignore D term for POSHOLD_RATE, theoretically this also removed D term induced noise commnent out to disable
#define GPS_WP_RADIUS 200 // if we are within this distance to a waypoint then we consider it reached (distance is in cm)
#define NAV_SLEW_RATE 30 // Adds a rate control to nav output, will smoothen out nav angle spikes
Muß ich sonst noch irgenwo was ändern? Habe ich was übersehen?? Bin da leider nicht so Fit drin!! Für Tipps währe ich sehr Dankbar!!
Gruß Chris