Drehgeber mit Thorstens Platine


#1

Hallo zusammen,
da Samoth´s Lösung leider für mich nichts ist und ich Thorstens Platine verwenden will, habe ich für mich folgende Lösung gefunden:

Der Drehgeber (KY-040) ist auf DI5 und DI6 (CLK und Data) angeschlossen.
Zusätzlich müssen noch die Biblotheken “ClickEncoder” und “TimerOne” installiert werden.
Alle 1000ms wird der Status des Drehgebers ausgewertet. Der Wert zählt ohne Prellen sauber hoch bzw. runter. Start/Stopp wird über den integrierten Taster des Drehgebers gemacht.
Die Shortcuts funktionieren auch (gestestet habe ich nur den Start und Vor)

Den Sketch hab ich bei Github hochgeladen.

Gruß Ullergr

Edit: Ich habe mir gerade überlegt, alle 1000ms kann es gar nicht sein. Das wären ja alle Sekunde.
Den Drehgeber kann man schön flott drehen und er zählt ohne Probleme mit. Bei einen sehr starken ruck fehlen ein paar Signale wird aber trotztem lauter oder leider. Das finde ich aber gut. Ich will nicht dass meine Kinder von “Min nach Max” in einem Ruck drehen können.


Vorstellung: Zebra Box
#2

Danke, ich werde mit das mal ansehen. Ich hatte schon abgeschrieben, die Platine verwenden zu können, da ich unbedingt einen Drehregler einbauen möchte. Wenn beides zusammen geht, ist es ja umso besser.


#3

Hallo Ullergr,

in welcher Zeile finde den Code, welcher das Verhalten beim Press auf den Impulsgeber regelt? Du hattest was von Start/Stopp geschrieben. Im Code finde ich nur die neue Reglung der Lautstärke 586-608.

Danke Dir und Grüße


#4

Super Sache, ich schau mir das auch mal an.


#5

In einem Kommentar erwähnst du Pololu und Mosfets. Sind außer dem Drehgeber und dem Standardtonuino noch weitere Bauteile nötig?

Die großflächigen Anpassungen machen ein diff leider schwierig. Reichen die Codestellen bzgl. Clickencoder, timer1 und die timerIsr()? Du hast einige zusätzliche delays im Code verteilt, sind diese ebenfalls nötig?

Kann es sein, das du beim Konstruktor vom Encoder den Button-Pin vergessen hast, oder ist STEPS irritierend benannt? Wenn ich dich Doku richtig gelesen habe, ist Parameter 3 der Button und Parameter 4 sind die Steps.

Ist auf jedenfalls eine spannende Alternative!


#6

Hallo Michel,
den Drucktaster des Encoders anstelle des “orginalen” Tasters anschließen.
Die Bibliothek Clickencoder könnte es aber auch. Aber da es ja schon im orginalen vorgesehen ist habe ich dieses genommen.
Gruß Uli


#7

Hallo derda17,
man benötigt keine anderen Bauteile nur den Encoder selbst. Es prellt nichts.
Hab ich was von Pololu und Mosfet geschrieben? Kann mich grad nicht erinnern. Komme aber gar nicht richtig dazu mich um das ganze zu kümmern, da im privaten Umfeld sehr viel los ist. Das ganze geht nebenher. Zudem bin ich nicht der Held im Programmieren.
Ich habe das Beispiel von Clickencoder genommen, den Taster rausgelöscht und so angepasst dass es funktioniert. Es gibt bestimmt noch Sachen die man verbessern bzw. kürzen kann.
Zusätzliche Delays hab ich jetzt nicht reingemacht.
Falls du was optimieren kannst /willst, fühle dich frei.
Gruß Uli


#8

Prima, dann habe ich alle notwendigen Teile da. Mal sehen, ob ich im Laufe der Woche Zeit finde, das auszuprobieren.


#9

Hallo Ullergr,

danke für die schnelle Information.
Nochmal kurz zu deiner Belegung.
Ist das so richtig?
Platine = KY040
D5 = CLK
D6 = Data
A0 = SW (und den alten Pausebutton damit ersetzt)
GRD = GRD
+5V = +

Viele Grüße und auf das der Stress bei dir weniger wird. (-:


#10

Ich muss zu meiner Schande gestehen, dass ich deine Änderungen mit dem Tonuino-Master verglichen habe, nicht mit dem DEV-Branch im Tonuino-git. Da sind die Änderungen auch wesentlich übersichtlicher und eindeutiger.


#11

Ja das passt so.
Falls die Drehrichtung falsch ist drehst du einfach die CLK mit DATA.
Gruß Uli


#12

Hallo,
kann mir jemand sagen wie ich die ClickEncoder Bibo einbinde?

Nutze Arduino 1.8.8
Dort unter Werkzeuge --> Bibliotheken Verwalten
Typ: Alle Thema: Alle
Suche nach ClickEncoder

Das ergibt keine Treffer.
Hat jemand eine Idee?


#13

Manuell einbinden war die Lösung…