Hallo Zusammen,
zum Testen habe ich zwei Rotary Encoder Module (ich finde die exakt
gleichen nicht mehr aber es handelt sich um etwa sowas:
https://de.aliexpress.com/item/32527999742.html?spm=a2g0o.productlist.0.0.47c09c46RuArwA&s=p&algo_pvid=9c215404-09b7-4b89-bb82-08c039749a8d&algo_expid=9c215404-09b7-4b89-bb82-08c039749a8d-13&btsid=3c33345c-443a-44b6-b0e9-23ee6a25595b&ws_ab_test=searchweb0_0,searchweb201602_1,searchweb201603_53
)
an einen NUCLEOF429ZI angeschlossen.
Nun machen die Knöpfe und Dreh-Encoder ab und zu was sie wollen. Beim
drücken der Knöpfe wird teilweise mehrfaches Drücken erkannt (diese
sollten ja eigentlich entprellt sein, zumindest sind auf den Dingern
hinten ne menge Widerstände, etc. was ich mir nur als Hardware zum
Entprellen erklären kann)
Beim Drehen der Encoder (auch bei sehr langsamen Drehen) kommt es
teilweise zum überspringen einiger Schritte. Steht im CNT-Register
zuerst 100, steht auf einmal 144 drin (in so einer Größenordnung in
etwa).
Zum Aufbau:
Es handelt sich um quadrature Encoder, jeder Rastpunkt hat folglich 4
Schritte zur Folge.
Bevor ich hier den ganzen Code etc. reinpacke, hat eventuell jemand
schon einen Ansatz, bzw. sind das typische Probleme?
Sollte irgendetwas hilfreich sein, bin ich selbstverständlich gerne
bereit dies zuzusenden!
MfG
RH schrieb:> Nun machen die Knöpfe und Dreh-Encoder ab und zu was sie wollen. Beim> drücken der Knöpfe wird teilweise mehrfaches Drücken erkannt (diese> sollten ja eigentlich entprellt sein, zumindest sind auf den Dingern> hinten ne menge Widerstände, etc. was ich mir nur als Hardware zum> Entprellen erklären kann)
Eventuell ist das, was du dir erklären kannst, doch nicht das, was das
Ding tatsächlich macht. Entprellschaltungen mit Widerständen sind -
unüblich.
Zur Klärung des Sachverhaltes gibt es daher Datenblätter, in denen
irgend jemand erklärt, wie er sich die Sache erklärt.
Und wenn dein Programm nachweislich so tut, als ob der Taster prellt,
dann ist entweder dein Programm fehlerhaft, oder der Taster prellt.
Ich sach mal, beides.
Oliver
das könnten Pullup/Pulldown Widerstände sein. Wieso glaubst du, das
diese zum entprellen sind? Wie ist denn dan die Beschaltung? Eine
schnelle Skizze hilft mehr als Prosa-Schaltpläne.
Den "ganzen Code" brauchst du ja nicht einzustellen, aber halt die
Einlese-Routine deines Encoders.
RH schrieb:> Bevor ich hier den ganzen Code etc. reinpacke, hat eventuell jemand> schon einen Ansatz, bzw. sind das typische Probleme?
Meine Glaskugel sagt, das typische Problem ist:
Der µC hat ca 1/2 Dutzend Timer mit in der Hardware eingebauten Graycode
Decodern.
Aber du legst es dir mit (Pin Change) Interrupts.
Oliver S. schrieb:> RH schrieb:>> Nun machen die Knöpfe und Dreh-Encoder ab und zu was sie wollen. Beim>> drücken der Knöpfe wird teilweise mehrfaches Drücken erkannt (diese>> sollten ja eigentlich entprellt sein, zumindest sind auf den Dingern>> hinten ne menge Widerstände, etc. was ich mir nur als Hardware zum>> Entprellen erklären kann)>> Eventuell ist das, was du dir erklären kannst, doch nicht das, was das> Ding tatsächlich macht. Entprellschaltungen mit Widerständen sind -> unüblich.>> Zur Klärung des Sachverhaltes gibt es daher Datenblätter, in denen> irgend jemand erklärt, wie er sich die Sache erklärt.>> Und wenn dein Programm nachweislich so tut, als ob der Taster prellt,> dann ist entweder dein Programm fehlerhaft, oder der Taster prellt.>> Ich sach mal, beides.>> Oliver
Es sind natürlich nicht nur Widerstände, deshalb das "etc.". Auf der
Rückseite sind ein paar Kondensatoren und Widerstände (bestimmt auch
Pull-Ups).
NichtWichtig schrieb im Beitrag #6132768:
> typischer Fall von RTFM
Ein Datenblatt ist leider nicht vorhanden. Die Rotary-Encoder habe ich
geschenkt bekommen.
Die Encoder sind über jeweils zwei Inputs und einem TIMER im Encoder
Modus konfiguriert. Im Prinzip liegt es ja sehr nahe, dass Sie einfach
nur schlecht entprellt sind und daher mehrere Drehzyklen erkannt werden.
Arduino Fanboy D. schrieb:> Meine Glaskugel sagt, das typische Problem ist:> Der µC hat ca 1/2 Dutzend Timer mit in der Hardware eingebauten Graycode> Decodern.> Aber du legst es dir mit (Pin Change) Interrupts.
So kompliziert sind die Encoder nicht. Es handelt sich wie oben im Link
zu sehen um ganz simple Drehknöpfe, die nur die jeweils richtigen
Flanken zum erkennen der Drehrichtung und des Drehimpuls erzeugen. Also
nichts mit absoluter Porsitionserkennung.
RH schrieb:> quadrature Encoder, jeder Rastpunkt hat folglich 4> Schritte zur Folge
Ähm, nö.
Ich bin beinah bereit zu wetten das jeder Rastpunkt entweder einen
logischen Step oder gar nur einen halben macht.
Jedenfalls bedeutet "quadrature" nicht "4 Impulse pro Step".
Und ohne zumindest ein Foto beider Seiten der Platine behaupte ich mal
das es sich nur um Pullups handelt, nicht um Entprellung.
RH schrieb:> zwei Rotary Encoder Module
Wie kommt man auf die Idee, so etwas zu kaufen ?
Da steht KEINERLEI Produkbeschreibung dabei. Katze im Sack.
RH schrieb:> diese sollten ja eigentlich entprellt sein,
Nein, sind sie nicht.
RH schrieb:> Die Encoder sind über jeweils zwei Inputs und einem TIMER im Encoder> Modus konfiguriert.
Der STM32F429 bietet ja Hardware-Quadrature-Decoder
> Im Prinzip liegt es ja sehr nahe, dass Sie einfach> nur schlecht entprellt sind und daher mehrere Drehzyklen erkannt werden.
Es spielt bei richtiger Auswertung von Encodern keine Rolle, ob sie
prellen.
Es liegt der Verdacht nahe, daß du sie, ebenso wie den pushbutton, nicht
richtig auswertest.
RH schrieb:> und einem TIMER im Encoder Modus
Ein dreifach Hoch auf die Salamitaktik!
Encoder ohne Schaltbild.
Ein Softwareproblem ohne Code.
Und so endet es dann hier auch für mich.
Hallo
NichtWichtig schrieb im Beitrag #6132768:
> typischer Fall von RTFM
Hast du schon jemals irgend ein Modul was vorwiegend für Bastler und
Tüftler gedacht ist in China in Massen zu geringsten Preisen produziert
und auch in kleinsten Mengen Versand wird selbst bezogen und aus der
Versandtasche geholt?
Man kann schon froh sein wenn überhaupt erwähnt wird um was es sich
handelt.
Schon den genauen Typ muss man selbst herausfinden falls der überhaupt
irgendwo erkennbar ist.
Ein Manual (Bedienungsanleitung, Datenblatt oder wenigsten Link dazu)?
lol
Man kann nur mit den groben Begriffen bzw. Bezeichnungen Googeln und
hoffen das irgendjemand sich die Arbeit gemacht hat mehr herauszufinden.
Ganz professionell ;-) vergleicht man dazu erstmal Abbildung und Fotos
von Modulen und hofft das Modul was man in der Hand hat den Modul
entspricht zu den es Daten gibt. Zumindest ist dies erschreckend oft der
Fall wenn auf den Modul nicht (nur) Silizium aufgelötet ist...
RFTM geht höchsten so das man sich umfassend informiert wie das Bauteil
auf den Modul generell zu Funktionieren hat und entsprechend sein
Programm (oder Hardware) ausgelegt oder in der Praxis einfach schon
existierende Programme oder die ach so "bösen" Sketche nutzt und schaut
ob die Module (Sensoren, Schalter, Geber...) so arbeiten wie sie es tun
sollten.
Das ist aber schon eine ganz andere Hausnummer als einfach mal in die
(nicht existente) Bedienungsanleitung aka Manual zu schauen.
So einfach ist es nicht, aber Hauptsache irgendwas in arroganter Art und
Weise in den Raum geworfen...
Das ist Vorbildlich, das ist Niveau wie wir es in Forum unbedingt
brauchen... (Oder doch nicht !?)
Gereon
Jens M. schrieb:> Und ohne zumindest ein Foto beider Seiten der Platine behaupte ich mal> das es sich nur um Pullups handelt, nicht um Entprellung.
Hier die Bilder der Vorder- und Rückseite.
Die Encoder habe ich über CubeMX folgen konfiguriert:
So wie sie dort konfiguriert sind beobachte ich momentan nur das
CNT-Register und kann die besagten Probleme feststellen.
Arduino Fanboy D. schrieb:> Ein dreifach Hoch auf die Salamitaktik!>> Encoder ohne Schaltbild.> Ein Softwareproblem ohne Code.>> Und so endet es dann hier auch für mich.
Wie ich am Anfang bereits erwähnt habe bin ich bereit alles hinzuzufügen
was benötigt wird. Da ich allerdings nicht weiß was wirklich von
Bedeutung ist, wollte ich nicht direkt den Beitrag mit unnötigem Zeug
schwämmen.
Michael B. schrieb:> Wie kommt man auf die Idee, so etwas zu kaufen ?
Ich ganricht, habe sie geschenkt bekommen.
Michael B. schrieb:> Da steht KEINERLEI Produkbeschreibung dabei. Katze im Sack.
Das ist aber Standard, nenne den TO und mir preislich faire(!)
Alternativen die letztendlich derartige Module (Platinenfarbe ist
eventuell anders und oft noch ein großes Logo zusätzlich aufgedruckt)
mit einer umfassenden und guten Produktbeschreibung anbieten.
Apotheken wie Adafruit, Conrad (Der dahinsiechende Patient wird ja
endlich bald erlöst sein min. 15 Jahre zu spät...) und selbst Reichelt
sind einfach keine Alternativen da diese unverschämte Preisaufschläge
von mehreren 100% nehmen.
Es bleibt für die meisten Bastler nur bei der Katze im Sack, da genau
die gleichen Katzen (eventuell nur etwas schön gemacht) ohne Sack nicht
nur etwas teurerer sind sondern das vielfache kosten.
Man braucht (will) ja nur selten ein Modul sondern viel verschiedene,
gerne auch mal auf Vorrat und da ist es schon ein Unterschied ob man für
ein bestimmtes Modul 1,29Euro inklusive Versand oder 4,99Euro ohne
Versand ausgibt - diese Unterschiede sind ganz Real und nicht erfunden
(Bitte jetzt nicht auf die genauen Werte schauen es ist nur das Prinzip
dahinter gemeint).
Gereon
Gereon schrieb:> Hast du schon jemals irgend ein Modul was vorwiegend für Bastler und> Tüftler gedacht ist in China in Massen zu geringsten Preisen produziert> und auch in kleinsten Mengen Versand wird selbst bezogen und aus der> Versandtasche geholt?
Das ist genau falschrum gedacht:
Weil "das Volk" solchen Schrott kauft, wird er gebaut.
Wenn man bei ebay LEDs kauft, steht mittlerweile in der Beschreibung
"Datenblatt liegt vor", aber es ist nicht verlinkt und man bekommt es
auch nicht auf Nachfrage: "Alles wichtige steht im Angebot".
Aber die meisten Leute haben keinen Plan von dem Zeug, kaufen es und
irgendwie tut das auch, also verkauft man es.
Gleiches mit den Modulen in der sog. "Arduno-Welt". Es gibt gut
Anbieter, die Pläne veröffentlichen, Datenblätter schreiben und support
leisten, und es gibt die "5 Boards mit Versand für 1,19€" wo man
hierzulande nicht mal einen der verbauten Chips bekommt, selbst ohne
Versand.
Aber der Kram wird gekauft, in Massen, und so sind selbst 10ct Gewinn
pro Stück profitabel.
also nicht "Die Händler sind alle Scheiße die liefern nix" sondern "Die
Händler reagieren auf das was der MArkt will. Die Händler die Dokumente
liefern verkaufen nix, also lassen sie's, und die die billigsten Ramsch
mit Gewinn produzieren können tun's".
Schließlich will jeder nur Geld.
Gereon schrieb:> So einfach ist es nicht, aber Hauptsache irgendwas in arroganter Art und> Weise in den Raum geworfen...> Das ist Vorbildlich, das ist Niveau wie wir es in Forum unbedingt> brauchen... (Oder doch nicht !?)
Danke! Ich habe allgemein schon des öfteren miterlebt wie hier im Forum
statt konstruktiver Kritik, bzw. Hilfe, nur negative Kommentare
abgelassen werden und sonst nichts. In einem Forum kann man ja nicht
erwarten, dass jeder Experte ist. Dazu kommt, dass jeder mal seine
ersten Schritte getan hat. Ich bitte ja nur um Hilfe für ein Problem bei
dem ich nicht weiter komme. Es ist keiner gezwungen hier seinen Senf
hinzuzugeben.
Gereon schrieb:> sind einfach keine Alternativen da diese unverschämte Preisaufschläge> von mehreren 100% nehmen.
Merket auf. :D
Was ist mit WEEE, Steuern, Zoll, Lagerhaltung in DE, Support, und dem
fehlenden Versandkostenbetrug durch die Chinapost?
Es gibt Produkte die man teuer verkauft weil man es kann, aber dieser
Kleinmist gehört nicht dazu.
Gereon schrieb:> da ist es schon ein Unterschied ob man für> ein bestimmtes Modul 1,29Euro inklusive Versand oder 4,99Euro ohne> Versand ausgibt
Dann bezahle mit deiner eigenen Zeit, kaufe billig und erstelle deine
notwendigen Unterlagen selber. Inklusive evtl. notwendiger Modifikation
an den Modulen (Stichwort DS3231 & Ladestrom in Knopfzelle z.B.).
Mach ich auch und fahre gut damit.
Aber bei bestimmten Sachen muss es auch mal Pololu oder Adafruit sein,
einfach weil die Schaltpläne und original-Chips liefern.
meine Erfahrungen mit Drehencodern sind diese:
Autoradio Grundig WKC Lautstärkeregelung macht was sie will.
Da es mal funktioniert hat, tippe ich auf Verschleiß in demselben.
Ausgelötet, Encoder aufgemacht, gereinigt, eingebaut, Funktion wieder
vorhanden. Aber nur für ein paar Monate, da fing das Spiel wieder von
vorn an. Dito jetzt Lüftersteuerung beim PKW. Bis man die gewünschte
Drehzahl des Propellers eingestellt hat, brauchts einige Umdrehungen.
Also Mist, diese Dinger. Das gleiche bei einem MP3 Player.
Bei drehintensiven Anwendungen würd ich als Frustschutz lieber zu einem
optisch abtastenden Encoder greifen, ähnlich dem Mausrad. Gibt es die
überhaupt?
Hallo
Jens M. schrieb:> Dann bezahle mit deiner eigenen Zeit, kaufe billig...
das mache ich auch, ich kann Datenblätter nutzen, kenne die meisten
Fallstricke und mir ist auch bekannt (bzw. weis wie man gezielt nach der
Information dazu sucht) was an Außenbeschaltung notwendig ist.
Aber ich bin schon "sehr" lange im Hobby, mein Beruf ist im E-Technik
Bereich, habe schon sehr viel in der "Vor Modulzeit" (als China
tatsächlich noch eine VR war ;-) und Japan in viel geringeren Maße das
China von heute) gebastelt (und geflucht, aber auch dadurch gelernt) und
könnte mir auch die teuren Anbieter leisten, was ich aber aus Prinzip
nicht mache, warum die so teuer sind (angeblich sein müssen) ist mir
ehrlich gesagt S...egal - überraschender weise muss ich auch für mein
Geld arbeiten und handele genauso wie es "Die Großen" vormachen und
nutze was der Markt und die augenblicklichen Möglichkeiten hergeben aus,
eigentlich sogar nicht mal maximal sondern nutze den ->etwas<- teuren
(das ist auch fair - er leistet dafür etwas und hat einen
Arbeitsaufwand) "deutschen Chinamann".
Und mit all den (erarbeiteten) Vorteilen die du und ich haben und auch
vermutlich bei dir ähnlichen oder sogar noch besseren finanziellen
Voraussetzungen greifen wir zur die für uns preiswertesten und
einfachsten Variante.
Und da soll ein Neuling, oft noch Schüler, der junge Erwachsene,
Berufsanfänger, frischer Familienvater (die frischen Familienmütter sind
im Hobby trotz allen Genderträumereien leider nur im Promillebereich
vertreten), derjenige der die erste "eigene" Wohnung bezieht, mäßig
bezahlte einfache Arbeiter oder Angestellte mit Lohnsteuerklasse 1 usw.
halt ein großer Teil die sich für diesen "Quatsch" ;-) interessiert in
die "Apotheke" gehen und aus lauter Fairness und Mitleid die horrenden
Preise bezahlen ?!
Doof müsste er (sie) sein, denn genau wie wir "alten Säcke" wissen auch
diese Menschen ganz genau oder sogar noch besser wie es die "Großen"
(Firmen, Konzerne, Unternehmen...) machen: Die gegeben Möglichkeiten
ausnutzen und sich nicht "vera..en" lassen selbst wenn es sich streng
genommen nicht um ein "vera...schen" handeln sollte sondern an den
Umständen liegt.
Gereon
Klaus B. schrieb:> Autoradio Grundig WKC Lautstärkeregelung macht was sie will.> Da es mal funktioniert hat, tippe ich auf Verschleiß in demselben.> Ausgelötet, Encoder aufgemacht, gereinigt, eingebaut, Funktion wieder> vorhanden. Aber nur für ein paar Monate, da fing das Spiel wieder von> vorn an. Dito jetzt Lüftersteuerung beim PKW. Bis man die gewünschte> Drehzahl des Propellers eingestellt hat, brauchts einige Umdrehungen.> Also Mist, diese Dinger. Das gleiche bei einem MP3 Player.
vaillant ecovit exclusiv vkk 226/4 RaumtempModul: der verbaute Bourns
PEC11S 9215F N0015 (den es natürlich nicht mehr zu kaufen gibt) springt
munter rauf und runter. "Devices are tested using standard noise
reduction" und die steht im Datenblatt, hätte man beachten sollen
https://www.bourns.com/docs/Product-Datasheets/PEC11R.pdf> Bei drehintensiven Anwendungen würd ich als Frustschutz lieber zu einem> optisch abtastenden Encoder greifen, ähnlich dem Mausrad. Gibt es die> überhaupt?
Ja.
NichtWichtig schrieb:> 2 Leitungen (plus Masse) lassen sich doch locker mit dem Scope> messen.
Richtig. Wenn es da auf beiden Kanälen bei Drehbewegung rauscht, obwohl
noch kein Quadraturübergang stattfand, lässt er sich nicht decodieren.