Drehwertgeber / Drehwinkelgeber

Ersatz- und Fremdteile, Modifikationen, etc.
Special Hints - Spare- & foreign parts, Modifications, etc.

Moderator: Jan3D

Forumsregeln
Bitte beachte die Forumsregeln!
juh
Beiträge: 557
Registriert: 23 Jan 2012, 13:48

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von juh » 20 Nov 2019, 09:28

Schau mal ins Datenblatt, der Chip kann tatsächlich auf analog *oder* PWM konfiguriert werden, ersteres erledigt ein 12bit D/A. Ich habe das Signal nicht genauer angesehen, aber nehme schon an, dass da eine "echte" analoge Spannung rauskommt. pulsIn() hat in jedem Fall keine sinnvollen Flanken entdeckt.

Ob man (theoretisch) ein PWM Signal auch verlässlich analog einlesen könnte? Keine Ahnung, gefühlsmäßig würde ich erwarten, dass es da noch eine Glättungskomponente braucht.

lg
Jan
Meine fischertechnik Designs für den 3D-Druck: https://www.thingiverse.com/juh/designs

NBGer
Beiträge: 277
Registriert: 02 Aug 2013, 18:26
Wohnort: Nürnberg

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von NBGer » 20 Nov 2019, 11:31

juh hat geschrieben:
20 Nov 2019, 09:28
Schau mal ins Datenblatt, der Chip kann tatsächlich auf analog *oder* PWM konfiguriert werden, ersteres erledigt ein 12bit D/A. Ich habe das Signal nicht genauer angesehen, aber nehme schon an, dass da eine "echte" analoge Spannung rauskommt. pulsIn() hat in jedem Fall keine sinnvollen Flanken entdeckt.

Ob man (theoretisch) ein PWM Signal auch verlässlich analog einlesen könnte? Keine Ahnung, gefühlsmäßig würde ich erwarten, dass es da noch eine Glättungskomponente braucht.

lg
Jan
ok...da bin ich auch nicht so ganz sattelfest! ich bin davon ausgegangen, dass per PWM eine analoge Spannung simuliert wird. Bei einem Motortreiber für einen DC-Motor wird ja auch nichts anderes gemacht, oder? Ob man glätten muß, hängt wahrscheinlich von der Frequenz ab (unabhängig vom Duty).
Die Auswertung eines PWM-Signals wäre aber schon aufwändiger, oder? Ich müsste ja die Pulse pro Zeiteinheit zählen bzw. die Dauer messen. Das geht ja wahrscheinlich nur mit entsprechender Hardware-Unterstützung.

Oder..anstatt Vermutungen anzustellen....schaue ich doch mal ins Datenblatt! :D :D

juh
Beiträge: 557
Registriert: 23 Jan 2012, 13:48

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von juh » 20 Nov 2019, 11:58

Ja, aber output ist halt nicht input. Beim Ansteuern eines DC Motors per PWM spielt die Glättung des Signals wohl keine große Rolle (bin auch kein Profi) aufgrund der "Trägheit" der Magnetspulen des Motors, so denke ich mir das naiv.

Beim Input braucht eine Analogmessung beim Arduino nach meiner Erinnerung ca 0,1ms, die Frequenz des PWM Signals beim AS5600 ist aber nicht höher als 1000 Hz (Fig. 9 im Datenblatt), ein Impuls wäre also mind. 10 mal länger als die Analogmessung, das kann ohne Glättung oder softwareseitige Mittlung mehrerer (dann eher digitaler) Messungen wohl nicht gut gehen.

In jedem Fall wäre aber eine PWM Messung auch kein großes Problem. pulseIn() wäre das einfachste, blockiert aber. Alternativ per Interrupt nicht blockierend.

lg
Jan

PS: Ich merke gerade, ich weiß gar nicht, ob Du auch Arduinos benutzt, wie es da beim TX(T) aussieht, weiß ich nicht.
Meine fischertechnik Designs für den 3D-Druck: https://www.thingiverse.com/juh/designs

NBGer
Beiträge: 277
Registriert: 02 Aug 2013, 18:26
Wohnort: Nürnberg

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von NBGer » 20 Nov 2019, 12:17

juh hat geschrieben:
20 Nov 2019, 11:58

PS: Ich merke gerade, ich weiß gar nicht, ob Du auch Arduinos benutzt, wie es da beim TX(T) aussieht, weiß ich nicht.
ja, Arduino. Ich hatte noch nie einen fischertechnik controller!
...ganz ehrlich, ist mir zu groß, zu unflexibel und vor allem zu teuer!
hab mir diese Woche nochmal 2 Arduino Mega je 11.99 € bestellt! :)

laut Beschreibung hat der TXT aber 4 schnelle Zähleingänge: Digital, Frequenz bis 1kHz, sollte also auch per PWM gehen

juh
Beiträge: 557
Registriert: 23 Jan 2012, 13:48

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von juh » 28 Nov 2019, 00:09

So, das Gehäuse ist fertig. War etwas knifflig, da die Platine Anschlüsse auf zwei Seiten hat, was die Anbaumöglichkeiten einschränkt.

Bild

Ich habe die Testaufbauten für das Potis analog nachgebaut. Der Teststand zeigt, dass exakte Winkel und Linearität darauf angewiesen sind, dass die Magnetachse exakt zentral zum Sensor-chip ausgerichtet ist. Daher bin ich mit dem Design noch nicht ganz zufrieden. Weniger fehleranfällig wäre es, wenn der Magnet mit ins Gehäuse integriert wird, das würde allerdings die Flexibilität einschränken.

Der Test mit dem PID-Arm (s. Video) zeigt aber klar die Vorteile. Der kontaktlose Sensor eliminiert den Reibungswiderstand des Potis und macht die Sache wesentlich geschmeidiger und agiler.

https://www.thingiverse.com/thing:3992842

lg
Jan
Meine fischertechnik Designs für den 3D-Druck: https://www.thingiverse.com/juh/designs

NBGer
Beiträge: 277
Registriert: 02 Aug 2013, 18:26
Wohnort: Nürnberg

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von NBGer » 28 Nov 2019, 01:09

super Sache!

In welchem Modus betreibst Du den Sensor jetzt? Hat PWM Vorteile in der Genauigkeit gegenüber Analog?
Braucht man den zweiten Anschluss nur für's Parametrieren oder auch für den laufenden Betrieb?

Und noch ne Frage:
Du hast doch schon ein Loch im Gehäuse mittig zum Sensor. Ist es so gedacht, dass man damit den Magneten zentrieren kann?

juh
Beiträge: 557
Registriert: 23 Jan 2012, 13:48

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von juh » 28 Nov 2019, 07:57

Bisher habe ich nur den vorkonfigurierten Analogmodus verwendet. Das scheint mir für die meisten ft-Zwecke ausreichend genau und spart einem den frickeligen JST-Stecker. Einen Vorteil von PWM sehe ich beim Arduino nicht, eher Nachteile, da man dafür in der Regel Interrupts brauchen wird. Die Genauigkeit habe ich aber noch nicht verglichen, kann mir aber auch da keinen Vorteil vorstellen.

I2C habe ich noch nicht getestet. Vorteil wäre hier, dass man die digitalen Messwerte in voller 12-bit Auflösung abgreifen kann und nicht den Umweg über D/A (Chip) und A/D (Arduino) Wandler gehen muss, das sieht man gut im Blockdiagramm in fig. 2 des Datenblatts. Ob der Genauigkeitsgewinn in den üblichen ft-Anwendung eine Rolle spielt? Ich glaube eher nicht. Gleiches gilt für den konfiguierbaren Winkelbereich. Eine Auflösung von 360°/1024 scheint mir für unsere Zwecke ausreichend.

Interessant bei I2C sind noch Feinheiten wie Filter und Hysterese, die Signalglättung und Jitter-Unterdrückung bei Stillstand bieten, habe ich aber auch noch nicht getestet.

Fazit zu I2C: kann sich lohnen und interessant sein, das Modul ist aber auch gut ohne einzusetzen und funktioniert dann im Prinzip genau wie das Poti, außer dass man auf 5V festgelegt ist und halt die vollen 360° bekommt.

Ja, das Loch ist zum Zentrieren gedacht, ist aber etwas frickelig den Magneten entsprechend zu montieren. Wie gesagt, da wäre eine integrierte Lösung wahrscheinlich besser, die erzwingt dann aber einen deutlich klobigeren Formfaktor.

lgj
Meine fischertechnik Designs für den 3D-Druck: https://www.thingiverse.com/juh/designs

juh
Beiträge: 557
Registriert: 23 Jan 2012, 13:48

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von juh » 05 Mär 2020, 16:43

Kleiner Nachtrag zum AS5600, v.a. falls Richard hier noch mitliest:

Inzwischen gibt es ein zweites Modul, bei dem der I2C-Anschluss nicht erst nachgerüstet werden muss, sondern bereits breadboardkompatibel rausgeführt wurde:

https://de.aliexpress.com/item/4000507199893.html

lg
Jan
Meine fischertechnik Designs für den 3D-Druck: https://www.thingiverse.com/juh/designs

juh
Beiträge: 557
Registriert: 23 Jan 2012, 13:48

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von juh » 01 Mai 2021, 19:58

Und noch ein kleiner Nachtrag:

Das Board ist für 5V konfiguriert, die gehen dann auf einen internen Spannungswandler, der Chip selbst läuft mit 3,3V. Wenn man die Pins 1 und 2 des Chips kurzschließt (vgl. Datenblatt, Fig. 13), überbrückt man den Spannungswandler und kann das Modul dann auch mit 3,3V (aber nicht mehr mit 5V) betreiben.

Außerdem habe ich inzwischen den I2C Modus probiert, er lohnt sich v.a. wenn der ADC-Wandler des µC nicht besonders genau oder linear ist (wie bei den ESPs) ist, die höhere Auflösung (12 statt 10 bit) dürfte in der Praxis eine geringere Rolle spielen. Nett auch, dass man per I2C die Präsenz eines Magneten und die Stärke des Magnetfelds auslesen kann.

vg
Jan
Meine fischertechnik Designs für den 3D-Druck: https://www.thingiverse.com/juh/designs

voxbremen
Beiträge: 19
Registriert: 16 Mai 2017, 10:20

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von voxbremen » 02 Mai 2021, 14:25

Noch ein kleiner Hinweis zu dem AS5600: Bei meinen über Aliexpress bestellten AS5600 Sensoren waren die mitgelieferten (!) Magnete nicht diametral polarisiert, entsprechend konnte ich erst keine vernünftigen Ergebnisse bekommen. Mit den korrekten Magneten funktioniert es. Vielleicht spart der Hinweis ja dem einen oder anderen unnötiges "Debugging".
VG, Volker

juh
Beiträge: 557
Registriert: 23 Jan 2012, 13:48

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von juh » 02 Mai 2021, 16:51

Hallo Volker,

danke für die Warnung, hatte gar nicht gesehen, dass die jetzt in Kombi angeboten werden. Aber Aliexpress-Bestellungen haben ja öfter mal diesen Wundertüten-Charme...

Im Prinzip kann man einen axial magnetisierten Magneten natürlich auch so anbringen (und bei meinem Gehäuse ggf. die Rückseite verwenden), aber diametral ist in den meisten Fällen natürlich sinnvoller:

Bild

vg
Jan
Meine fischertechnik Designs für den 3D-Druck: https://www.thingiverse.com/juh/designs

voxbremen
Beiträge: 19
Registriert: 16 Mai 2017, 10:20

Re: Drehwertgeber / Drehwinkelgeber

Beitrag von voxbremen » 05 Mai 2021, 13:14

Hallo Jan,

ja, tatsächlich passt der "falsche" Magnet sogar ganz gut in den Kabelhalter
magnet.jpg
magnet.jpg (73.99 KiB) 122 mal betrachtet
.
Aber auf Dauer sind die diametralen 4mm Magnete natürlich eine bessere Lösung.

Vg, Volker

Antworten