MobiFlight Community Support

Welcome to the forum for MobiFlight! Feel free to reach out to the community in case you have questions, issues or just want to share great ideas or details about your latest home cockpit project.

You like MobiFlight? Donate via PayPal and support the MobiFlight development. Thanks! 

Go to page 1Go to page 012Go to page 2Go to page 2
Avatar
FlightUnder
Posts: 18
Hey,

Wie stelle ich den Encoder richtig ein, z.B für Altitude, HDG, aktuell läuft der ENcoder eigentlich gut, nur im FSX (zum testen) läuft die Einstellung ziemlich nach wenn ich am Encoder drehe.
2018-04-25 13:12
Avatar
Hannes
From: Austria
Posts: 158
Supporter
Hallo, wenn du damit meinst, dass der Wert verzögert aktualisiert wird, dann kontrolliere in den MF Einstellungen ob ein Debugmodus aktiviert ist. Dieser verursacht jedenfalls Verzögerungen.
www.modellbau-technik.at
hannes.dobersberger@modellbau-technik.at
2018-04-25 13:15
Avatar
FlightUnder
Posts: 18
Es gibt Momente....:-/ Vielen Dank, das war das Problem.

Allerdings bin ich irgendwie nicht zufrieden mit der Einstellung unter Weitere Option- Setze Wert $-(+) 600

Was für ein genauen Wert muss ich da eintragen?

Das Drehen fühlt sich immer noch nicht so richtig an.

EDIT:
habe es jetzt mal in xPlane 11 getestet. Es fühlt sich so an als würden manche Rastungen verschluckt werden, sprich, ich drehe z.B 20 Rasten, aber registriert nur 5-10 davon.
[Last edited by FlightUnder, 2018-04-25 13:45]
2018-04-25 13:25
Avatar
StephanHo
From: EDDG, Germany
Posts: 1525
Supporter
Hi,

dreh doch den Encoder mal langsam und achte darauf, wann bzw. nach wie vielen Rastungen eine Reaktion erfolgt.

Meist gibt es folgendes Ergebnis:

1 Reaktion bei 1 Rastung
1 Reaktion bei 2 Rastungen
1 Reaktion bei 4 Rastungen

Wie gesagt, langsam drehen. Wenn du nur 5 Reaktionen bei 20 Rastungen hast, hast du einen 1:4 Encoder, bei 10 Reaktionen bei 20 Rastungen einen 1:2 Encoder.
Für Mobiflight steht ein Update an, bei dem man das Rast-/Tastverhältnis des Encoders einstellen kann. Dann bekommt man bei jeder Rastung eine Reaktion.

Was meinst du mit "weitere Option"? Welchen Offset möchtest du denn einstellen? Dieser Wert wird bei jeder Reaktion hochgezählt bzw. heruntergezählt, je nachdem ob du den Encoder rechts oder links herum drehst.
Grüße,
Stephan
2018-04-25 19:40
Avatar
FlightUnder
Posts: 18
Oh dann muss ich mal langsam drehen und zählen, hat 20 Rastungen, mit dem Update wäre das klasse.

Was ich meine ist das hier im Rot Umrahmten:



Da habe ich nirgends einen genauen Wert finden können. je höher der Wert umso flüssiger/besser kann ich z.B HDG einstellen.

Ich bedanke mich.
2018-04-26 08:02
Avatar
StephanHo
From: EDDG, Germany
Posts: 1525
Supporter
Grüße,
Stephan
2018-04-26 11:46
Avatar
FlightUnder
Posts: 18
Ok, jetzt verstehe ich das offset.


EDIT:
Ok, sobald ich 5V auch anshcließe (lese ich nirgends das ich 5V ebenfalls anschließen muss) habe ich alle 2 Takte einen Puls.


[Einmal drehen habe ich 30 Rastungen, laut Beschreibung hat der Encoder 20 Pulse pro Umdrehung. Wären also alle 2 Rastungen ein Puls. (1:2) Das Problem ist, das ich mal 2-3 komplette umdrehungen brauche bis ein Puls kommt, manchmal nur 10 Rastungen. Irgendwie registriert er nicht die 30 Rastungen beziehungsweise verschluckt den überwiegenden Teil. Habe alle 4 Encoder ausprobiert, bei allen 4 das gleiche. somit denke ich mal, liegt der Fehler bei mir.]
[Last edited by FlightUnder, 2018-04-26 19:48]
2018-04-26 19:25
Avatar
StephanHo
From: EDDG, Germany
Posts: 1525
Supporter
Sorry, was hast du für einen Encoder?

Normalerweise bedarf es keines 5V-Anschlusses. Die Pins vom MEGA sind standardmäßig auf pullup gestellt. Deshalb braucht man auch bei Encodern, die mit 5V versorgt werden sollen, diese 5V eben nicht.

Normalerweise hat ein Encoder drei Anschlüsse. An den mittleren kommt GND (Masse) und die beiden anderen gehen jeweils zu den Pins des MEGA.
Über den Standard-pullup des MEGA liegen die Pins und somit auch die Leitungen in der Zeit, wo die Leitungen "offen" sind, also kein Impuls kommt, auf 5V.
Mit Drehen des Encoders werden die Pulse erzeugt, indem die Pins auf GND gezogen werden, was dann ausgewertet wird.

Schau mal dieses Schaltbild, das ist mit externen Pullup-Widerständen, die man bei Mobiflight aber nicht braucht. Also einfach weglassen.
http://www.hobbytronics.co.uk/arduino-tutorial6-rotary-encoder
Grüße,
Stephan
2018-04-27 09:24
Avatar
FlightUnder
Posts: 18
Hallo StephanHO,
Danke für deine Hilfe.

Solche habe ich:
https://www.ebay.de/itm/Sonderposten-Arduino-Drehregler-Drehgeber-Rotary-Encoder-Push-button-KY-040/232437929944?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2060353.m2749.l2649

EDIT:
habe mal den test gemacht, den Regler direkt angelötet ohne die verbindungen über die Platine, auch hier der effekt, erst sobald die 5V anliegen funktioniert er einwandfrei.
[Last edited by FlightUnder, 2018-04-27 21:10]
2018-04-27 15:17
Avatar
StephanHo
From: EDDG, Germany
Posts: 1525
Supporter
Hi FlightUnder,

also ich benutze Encoder, die keine zusätzliche Spannungsversorgung benötigen. Normalerweise braucht auch ein Encoder, der an MF angeschlossen wird, keine Pullup-Widerstände.

Wenn bei dir alle 2 Detents ein Puls kommt, hast du einen 2:1-Encoder. Bei dem brauchst du bei MF gar nicht erst versuchen, die beiden Tabs für das schnelle Drehen zu konfigurieren. Das schaffst du nur mit einem Motor auf der Encoderachse ;)

Der Hinweis von Hannes war ebenfalls gut. Es ist aber noch nicht geklärt, warum bei eingeschaltetem Debug-Modus Impulse verloren gehen.
Hingegen sollte bei normalem Drehen kein Impuls verloren gehen.

Als Tip kann ich dir nur mit auf den Weg geben, mal einen anderen Encoder zu versuchen. Gängig sind die der Fa. ALPS. Einfach mal in der Bucht suchen.
Grüße,
Stephan
2018-04-28 12:31
Avatar
FlightUnder
Posts: 18
Hey,

Ich habe jetzt den Regler mal abgelötet. Warum auch immer funktioniet es nun einwandfrei. Ich verstehe nicht wieso ich direkt den Regler verbinde (Während er noch auf der Platine sitzt) und es gibt wieder das Problem, aber sobald er komplett ab ist, geht es. Egal, nun habe ich den verdacht auf die zwei 10K Widerstände, diese werde ich überbrücken und schauen wie es dann ist, somit hat sich das Problem, gelöst.

Vielen Dank für die tolle kompetente Hilfe.:thumbup:
2018-04-28 14:40
Avatar
FlightUnder
Posts: 18
Habe jetzt die Regler von der Platine abgelötet. Obwohl ich die Widerstände überbrückt habe wollte es nicht so wie es soll. Nun allerdings hat sich das Problem gelöst :)
2018-04-28 18:36
Avatar
StephanHo
From: EDDG, Germany
Posts: 1525
Supporter
Oh oh,

das kann aber ganz übel enden!

Die Widerstände fungieren als Pullup und haben auf der einen Seite 5V und auf der anderen Seite den Pegel, der von den Pins des MEGA kommt.
Überbrückst du nun die Widerstände, liegt an den Pins permanent 5V an.
Am Encoder liegen dies 5V ebenfalls an den beiden Steuerleitungen. Da an der Mitte GND liegt, kommt es unweigerlich zu einem satten Bratz, wenn du am Encoder drehst.
In jedem Fall zerstörst du damit den Encoder. Wenn du die 5V vom MEGA nimmst, geht die Spannungsversorgung unweigerlich in die Knie!
Das nennt man einen klassischen Kurzschluß!
Verfolge mal den Stromweg von dem Schaltbild, das ich weiter oben verlinkt habe. Dann sollte es deutlich werden.
Übrigens: wenn du zu den aktiven Pullup-Widerständen des MEGA weitere Widerstände als Pullup parallel schaltest, so greift hier das 1. Kichhofsche Gesetz, wonach bei einer Parallelschaltung von Widerständen der Gesamtwiderstand kleiner ist, als der kleinste Widerstand. Elektrisch betrachtet hätten dann deine Pullups einen Gesamtwiderstand von weniger als 5kOhm. Nicht zwingend bedeutend, aber es führt zu einem doppelten Stromfluß. Unnötige Stromfresser sollten aber an einem Microcontroller vermieden werden.

Hingegen die Widerstände auszulöten wäre ein probates Mittel. Ich sagte weiter oben, daß die Eingänge des MEGA durch die Firmware von MF bereits als Eingang mit 10 kOhm Pullup-Widerständen fungieren. Insofern reicht es völlig aus, die zwei Leitungen des Encoders zum MEGA zu verdrahten und den mittleren Anschluß auf GND.

Du siehst, auch mit überbrückten Widerständen konnte dein Encoder nicht funktionieren. Mich wundert, daß er deine Aktion überlebt hat...
Grüße,
Stephan
2018-04-29 00:49
Avatar
FlightUnder
Posts: 18
Hallo,

Soweit funktioniert nun alles. Was Probleme bereitet ist noch das einstellen der Höhe. Diese soll in 100er Schritten folgen. ALlerdings tut sich da nix, manchmal, springt die ANzeige dann auf 14999 .
2018-05-02 19:30
Avatar
StephanHo
From: EDDG, Germany
Posts: 1525
Supporter
Hi,

wie hast du denn den offset konfiguriert?

Interessant dabei deine Transform bzw. Wertezeile. Ich vermute, es handelt sich um einen Rundungsfehler. Versuch doch mal round(${+-*/}[deine Werte],0)

Schreib's mal hier rein. Hier wurden schon ganze Kuhherden vom Eis geholt ;)

EDIT: Rechenzeichen in Formel
[Last edited by StephanHo, 2018-05-05 10:55]
Grüße,
Stephan
2018-05-03 07:40
Go to page 1Go to page 012Go to page 2Go to page 2