Servomotor einstellen

noxx

Member
Moin,

bin von Kohle auf Gas umgestiegen, das WLANTHERMO immer
gerne genutzt.
Nun soll er am Weber Genesis seinen Dienst tun, bin aber nicht
sicher wie man den Servo (MG995) genau einstellt. Gibt es eine Anleitung?

1751386644175.png

Mir sind Werte nicht ganz klar...

Regler:
1751386986900.png
 

s.ochs

BOFH
Teammitglied
Admin
Du kannst die Grenzwerte entweder als Prozentwert (0 - 100) oder in Mikrosekunden (550 - 2250) eingeben. Mikrosekunden werden dann wieder umgerechnet angezeigt (die kann man sich nicht so gut merken).

Verfahren solltest du nur zwischen Min und Max. Am besten gibst du mal im Pitmaster-Modus "manuell" einen Pitmasterwert von 50 vor. Der Servo sollte nun irgendwo zwischen Min / Max positioniert sein. Nun gibst du 100 vor und schaust, wo der Servo hinfährt (aktuelle Grenze 60 %, von maximal 2250 us). Fährt der Servo nicht komplett bis Max, erhöhst du die obere Grenze. Fährt der Servo in die falsche Richtung, dann tauschst du Min und Max (also bei Min der höhere Wert). Gleiches machst du mit der unteren Grenze. Du lässt den Servo manuelle auf einen Pitmasterwert von 0 fahren (von 100 oder 50 kommend) und schaust dir an, wo er mit der aktuellen Grenze landet.
Die voreingestellten 30 % bzw. 60 % sind absichtlich etwas enger gewählt, damit du zwischen Min / Max liegst du dich dann nach "außen" annähern kannst.

Im Wiki steht auch nochmal was dazu: https://github.com/WLANThermo-nano/WLANThermo_ESP32_Software/wiki/Pitmaster
 
Zuletzt bearbeitet:

s.ochs

BOFH
Teammitglied
Admin
Je nachdem welche Temperaturen du regeln willst (nur L&S oder auch höher) und wie viele Brenner im Einsatz sind, würde ich ggf. die obere Grenze nicht komplett auf "Max" einstellen. Gasgrills heizen meist sehr schnell auf. Wenn der Regler da nicht mitkommt, verbleibt ein schwingendes Verhalten in der Regelkurve. Mit weniger max. Leistung kann man das in der Regel ganz gut ausgleichen. Vermutlich musst du auch die PID-Werte vom Regler etwas an deinen Grill anpassen.
 

noxx

Member
hmm, ok.... irgendwas stimmt da dann nicht
zu erst so eingestellt
1751395625429.png
Gasregler wäre nun mittig

Mehr als 50 kann ich nicht einstellen, geht immer auf 50 zurück
Bei 0 bewegt der sich um ca 30 Grad
 

noxx

Member
Geht nun auch mit 100.....
nach Neustart

zwischen 0 und 100 fährt der ca 100 grad ab, vielleicht ein paar mehr....


1751433962953.png

1751434114765.png
 
Zuletzt bearbeitet:

s.ochs

BOFH
Teammitglied
Admin
Soweit ich weiß, gibt es den MG995 als 90° und 180° Version.
Der Verfahrweg sollte dir aber eigentlich reichen.
 

noxx

Member
per Hand drehe ich den um ca 270°.
Hätte erwartet das 0 SPmin dann Anschlag Links und 100 SPmax Anschlag Rechts
vom Servo ist.... und ich mit SPmin / SPmax rumspielen muss, bis ich knappe unter
Gas Max und Knapp über Gas Min bin (~170° in meinem Fall)
 

s.ochs

BOFH
Teammitglied
Admin
Typischerweise liegen die Grenzen der Pulsweitenmodulation (PWM) für Servos im Bereich von 1000 bis 2000 Mikrosekunden (us). Über diese Mikrosekunde-Grenzen hinaus fährt er nicht, auch wenn mechanisch möglich.

Stell mal bitte SPmin auf 0% (entspricht 550 us), dreht der Servo dann noch etwas weiter in diese Richtung? Wenn nicht ist die untere Mikrosekunde-Grenze des Servo bereits erreicht. Bis zur oberen Grenze (100 % / 2250 us) scheint der Servo ja problemlos zu fahren.

Ich habe einen MG995R von AZ-Delivery hier, dieser verfährt zwischen den Grenzwerten SPmin 0 % (550 us) und SPmax 100 % (2250 us) einen Winkel von ca. 170 °. Jeder Servo ist da aber ein bisschen anders.

Wenn du den Eindruck hast, dass dein Servo auch über die voreingestellten Grenzen (550 / 2250 us) hinaus noch verfahren könnte, lässt der Code es zu diese Mikrosekunde-Grenzen zu verändern. Dafür musst du in den Recovery-Mode. Dort exportierst du dir die Einstellungen. Im runtergeladenen txt-File suchst du nach "servoDcMin" und "servoDcMax". Du kannst die untere Grenze maximal auf 400 us und die obere auf maximal 2600 us setzen. Gespeichertes txt-File dann wieder importieren und neu starten. Nach der Änderung entspricht 0 % dann dem neuen "servoDcMin" und 100 % dem neuen "servoDcMax" in den SP-Werten. Aber vorsicht: sobald die gewählte Grenze über dem liegt, was der Servo verfahren kann, wird die Grenze nicht mehr sauber angefahren.
 

s.ochs

BOFH
Teammitglied
Admin
Ich habe gerade einen kleinen Bug im Webinterface gefunden: wenn du die us-Grenzwerte über den Recovery-Mode individuell geändert hast, solltest du bei den SP-Werten nur mit Prozentwerten arbeiten. Du weißt nach der Änderung ja, was 0 und 100 % in Mikrosekunden entspricht.
Gibt man us-Werte ein, werden diese auf die alten Grenzwerte gemappt, was keinen Fehler ergibt, aber einem auch nichts bringt bzw. ggf. nur verwirrt.
 
Oben Unten