Copter ist nur in Bodennähe stabil

Status
Nicht offen für weitere Antworten.

crabtack

Neuer Benutzer
#1
Hallo!

Ich arbeite gerade an einem Quadrocopter.

Folgende Komponenten:

-Robbe Roxxy 2827-35 760kV
-4S Akku 3000mAh
-KISS ESC 18A
-WARTHOX frame mit 20cm Armen
-Flightcontroll ist selbst entwickelt mit Atxmega128A1U und MPU-6000 als Gyro+ACC

Die Bilder sind nicht mehr ganz Aktuell.
Mittlerweile hat der Copter eine Ordentliche Akkuhalterung aus Aluminium, die auch die Kunststofffüße ersetzt.
IMG_0544.JPG IMG_0549.JPG

Jedenfalls habe ich nun das Problem, dass der Copter nur in Bodennähe (so bis 20cm) stabil fliegt, lässt sich auch gut steuern.
Wenn ich ihn aber weiter steigen lasse, dann neigt er sich erst stark in eine Richtung und kippt dann um.
woran kann das prinzipiell liegen?

Die PID wird mit 1KHz ausgeführt und ist folgendermaßen aufgebaut:
Code:
int16_t PID::Compute(int16_t error)
{
	
	//errSum += (error); //Integralanteil
	
	if ((errSum + error/prescaler) > Imax) //errsum begrenzen
	errSum = Imax;
	
	else if ((errSum + error/prescaler) < Imin)
	errSum = Imin;
	else
	errSum += (error /prescaler);
	
	float dErr = (error - lastErr); //Differentialanteil
	
	lastErr = error;
	
	return (int16_t)(((error * kp) + (errSum * ki) + dErr * kd)/10);// + (dErr / kd));
	
}
Die Parameter sind Folgende:

kp = 0.05
ki = 0.004
kd = 0.06
Imax = 30000
Imin = -30000
prescaler = 100

Hat jemand eine Idee, woran das Problem liegen könnte?

Ich habe übrigens alles so definiert, dass der Kreis nicht 360°, sondern 65535° hat.

Ich wäre für Hilfe sehr dankbar.

mfg
Olaf
 

crabtack

Neuer Benutzer
#3
Hi!
Danke für die Antwort!

Bisher habe ich die PID nur in einem Gestell, wo er sich jeweils um eine Achse drehen kann und in der Hand eingestellt.
Wenn ich ihn aufhänge, sehe ich das Risiko, dass das Seil in den Rotoren verfangen könnte.
Oder gibt es da eine bessere Möglichkeit?

mfg
Olaf
 
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten