Pocket Quadrocopter von HobbyKing

b.enedikt

Erfahrener Benutzer
2020 ist der maximale MAXTHROTTLE-Wert. Alles höhere gibt Buffer-Überlauf und entsprechend lustige Resultate.
Dein Gyro-Werte sind zu hoch. Das führt zu Überkompensation und reduziert den maximalen Output.
Ich würde sämtliche Werte in den ersten beiden Zeilen (Roll/Pitch) halbieren. 3.3/0.03/33 sind gute Werte.
Ich wette nen Propeller dass es dann besser geht ;)
 

cesco1

Erfahrener Benutzer
2020 ist der maximale MAXTHROTTLE-Wert
2023 um genau zu sein.

Damit fliegt er auch, aber wie im Bild zu sehen geht das gas nicht auf 100 Prozent.
Das problem beim integrierten empfänger ist dass dieser die mitte nach 1480 und max nach 1870 verschiebt. Du kannst da bei der taranis weit über 2000 gehen, ankommen tut nur 1870.

Achte nicht auf input, achte darauf dass du bei der motorenanzeige nahe an 2023 rankommst. Das ist der output. Falls das nicht gelingt musst du code ändern. Ist einfach, rccommand *= 1.1; oder so.
 
Zuletzt bearbeitet:

cesco1

Erfahrener Benutzer
in config.h machst du das rein:
Code:
    #define THROTTLE_BOOST    // Boost throttle by 12% for micro_mwc
in multiwii.cpp hinter " rcCommand[THROTTLE] = lookupThrottleRC[tmp2].... " das:
Code:
    #if defined(THROTTLE_BOOST)      
      rcCommand[THROTTLE] += (rcCommand[THROTTLE]>>3) - 137;
    #endif

-------------------

Etwas anderes ist noch die automatische gasrücknahme bei starken korrekturen abzuschwächen. Das ist in output.cpp:
Code:
motor[i] -= maxMotor - MAXTHROTTLE;
ändern auf:
Code:
motor[i] -= (maxMotor - MAXTHROTTLE)>>1;
-------------------

Mein copter braucht das nicht. Das ist ein geared wltoys, der schwebt mit der korrektur schon bei 1/3 gas. Und bei vollgas sackt der 500mah lipo unter 3.3V -> vbat warnung geht an.
 
Zuletzt bearbeitet:

Elo

Erfahrener Benutzer
in config.h machst du das rein:
Code:
    #define THROTTLE_BOOST    // Boost throttle by 12% for micro_mwc
in multiwii.cpp hinter " rcCommand[THROTTLE] = lookupThrottleRC[tmp2].... " das:
Code:
    #if defined(THROTTLE_BOOST)      
      rcCommand[THROTTLE] += (rcCommand[THROTTLE]>>3) - 137;
    #endif

Super,

genau das hat dem kleinen Giftzwerg gefehlt.

Ich danke dir

Michael
 

Hovy

Neuer Benutzer
Hallo zusammen,

ich habe neuerdings Problem mit meinem HK Pocket Quad.
Vorab, er ist schon etwas in die Jahre gekommen und hat einige Abstürze / Reparaturen hinter sich.
Im Schwebeflug ohne dass ich Gas gebe, ändert sich kurzzeitig die Drehzahl aller Motoren und er hüpft in der Luft.
Auch im Rundflug macht er dies – was sehr unangenehm ist, wenn er mal so ein Meter hoch und runter hüpft.
Zuerst dachte ich, dass es die Motoren sind – aber die habe ich gestern ausgetaucht, was aber nichts brachte.
Die Motoren können es im Grunde auch nicht sein, da er dabei ja nie ausbricht, also immer alle gleich viel mehr drehen.


Hat jemand eine Idee was ich machen könnte oder ist die Elektronik jetzt so angeschlagen, dass er reif für den Friedhof ist?


Viele Grüße
Georg
 

meute

Erfahrener Benutzer
Hallo,

ich habe heute den Pocket Quad v1.1 an meine neue Taranis gebunden.
Dazu habe ich wieder den "Andrew bind code for pocketquad" mit Arduino geflasht.

Damals habe ich zum Flashen Arduino 1.0.5 verwendet.
Heute habe ich versucht mit Arduino 1.6.6 und mit Arduino 1.0.6 zu flashen.
Aber bei beiden kam ein Fehler wegen einer Reinitialisierung der Zeile 35 "int i = 0;".

Mit Arduino 1.0.5 ging es aber zum Glück ohne Probleme.

Weiß jemand, warum sich der "Pocket_Quad_Bind_Code.ino"-Sketch mit den neuen Arduino-Versionen nicht flashen lässt?


Gruß
meute

P.S. Hier ist der Inhalt der "Pocket_Quad_Bind_Code.ino":
Code:
// Code-based Spektrum satellite receiver binding for the HobbyKing Pocket Quad
// Andrew L.
// [email protected]

// Notes: 
// 1) The Spektrum satellite receiver comes into the Pocket Quad processor AT32U4 on digital pin 0 (RX) 
// 2) Current MultiWii code supports binding via GUI, however the PocketQuad does not give 
//    the AT32U4 control over the Spektrum satellite receiver power or ground so the MultiWii code as written will never work.
// 3) The MultiWii code could be made to work if anyone can figure out how to detect when something is plugged into pin 0
// 3) The code below is a workaround for people that do not have a Spektrum receiver handy to externally bind the satellite receiver with

// Directions:
// 1) Copy, paste this code into a new Arduino sketch
// 2) Examine the Bind Mode Table below and modify the #define SPEK_BIND_PULSES # to correspond to the mode you would like (I use 2 [1024/22ms] with my DX6I)
// 3) Make sure that Leonardo is set as the board type and that the correct serial port is selected
// 4) Upload this sketch to the PocketQuad over USB
// 5) Unplug the USB cable, then plug in again to reset power
// 6) The satellite receiver should drop into bind mode, proceed as normal from here to bind to your radio
// 7) Once the satellite receiver is successfully bound, open your MultiWii code in Arduino and upload to the PocketQuad over USB
// 8) Your system should be ready to fly.

// Bind Mode Table:
// 2 low pulses: DSM2 1024/22ms 
// 3 low pulses: no result
// 4 low pulses: DSM2 2048/11ms
// 5 low pulses: no result
// 6 low pulses: DSMX 22ms
// 7 low pulses: no result
// 8 low pulses: DSMX 11ms

// Enter your desired number of low pulses 
#define SPEK_BIND_PULSES 2

// Counter Variable
int i = 0;

void setup()
{ 
  
pinMode(0, OUTPUT);

digitalWrite(0, HIGH);
delayMicroseconds(116);

while(i < SPEK_BIND_PULSES) 
{ 
digitalWrite(0, LOW); 
delayMicroseconds(116);
digitalWrite(0, HIGH);
delayMicroseconds(116);
i++;
}

pinMode(0, INPUT);

// End of Setup
}

void loop()
{

}
 

schuerni

Erfahrener Benutzer
Kleiner Tip dabei, zum Programmieren, erst recht wenns ums armen geht, die Props abmontieren!!!! :)
Mein rechter Zeigefinger weiss warum, der hat jetzt nen hübschen kleinen Reissverschluss...
:) gruss
 
FPV1

Banggood

Oben Unten