Regelung eines unstabilen, unlinearen Systems verbessern (Schweben)

OP #2251472
Lesenswert?

Hallo.
Ich möchte gerne meine PD Regelung verbessern.
Es geht um einen schwebender Magneten.
Der Magnet wird von einer Spule oberhalb angezogen und die Position wird 
mit einem HAL815 Magnetfeldsensor ermittelt.
Der Sensor ist linear, das Magnetfeld der Spule jedoch nicht (zum 
Strom).
Hier mal ein kleines Video (Sorry für die schlechte Qualität):
http://www.youtube.com/watch?v=nk9W2f4kyww

Zuerst erhöhe ich den Sollwert (der Magnet sinkt) und dann minimier ich 
den Sollwert bis der Magnet anfängt zu schwingen. Dann gehe ich wieder 
etwas tiefer und danach höher bis er oben gegen knallt.

Ich möchte den regelbaren Bereich erhöhen, sodass der Magnet etwas höher 
Schweben kann und dass ich ihn vielleicht sogar sanft absetzen kann.

Hier die Regelung (Bascom):
1
'|---------------------------PD-Regelung: Berechnen---------------------------|'
2
Sub Regelung_berechnen()
3
    'Weil der Sensor die halbe Spannung in einer Richtung angibt
4
    Istwert = Istwert - 512
5
    'Der Wert geht bis 512, die Pulsweitemodulation arbeitet aber bis 255
6
    '--> Wert durch 2 teilen
7
    Shift Istwert , Right , 1
8

9
    'Proportionalanteil ausrechnen
10
    Regeldifferenz = Istwert - Sollwert
11
    P = Kp * Regeldifferenz
12

13
    'Differentialanteil ausrechnen
14
    'Es wurde auf Ta verzichtet
15
    D = Regeldifferenz - Regeldifferenz_alt
16
    D = Kd * D
17

18
    'Alte Regeldifferenz speichern
19
    Regeldifferenz_alt = Regeldifferenz
20

21
    'Anteile zusammenrechnen
22
    Stellgroesse = P + D
23
End Sub

Die Variablen sind globale Variablen und der Istwert wurde mittels 
"Istwert = Getadc(0)" gemessen.
Die Zykluszeit beträgt ca. 300μs.

Währen der Laufzeit kann ich per RS232 kommunizieren und alle Werte 
abfragen falls es jemandem helfen könnte.

Könnt ihr mir vielleicht helfen, die Regelung zu verbessern?

Danke

Denny
Angehängte Dateien:
Persönliche Seite #2251640
Lesenswert?

Hallo Denny,

> Der HAL815 sitzt genau in der Senkrechten zum Mittelpunkt der Spule in
> dem Aluminiumblock (An der Stelle 0,5cm dick).

>> die Position wird
>> mit einem HAL815 Magnetfeldsensor ermittelt.


Dann misst Du damit wohl nicht die Position de MAgneten sondern die 
Staerke des Magnetfeldes, welches sich ja aus dem des MAgneten + dem der 
Spule zusammensetzt....oder sehe ich das falsch?

> Ich habe doch einen P-Anteil!?

Ooops....meine natuerlich I Anteil!




Gruss

Michael
Gast #2251667
Lesenswert?

Denny Weinberg schrieb:
> Der HAL815 sitzt genau in der Senkrechten zum Mittelpunkt der Spule in
> dem Aluminiumblock (An der Stelle 0,5cm dick).
>
> Ich habe doch einen P-Anteil!?

Aber hast Du auch I-Anteil? Ich bin zwar kein Spezialist für
Regelungstechnik, aber alle komplizierten Regelungsprobleme
erfordern einen PID-Regler. Wobei ich davon ausgehe, das
wenigstens der P- und der I-Anteil über Potis einstellbar
sein sollte.
Gruss
Harald

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren