HowTo: Arduino Mühlentimer


Bedienung
Drehimpulsgeber links/rechts um Dose/Time/Factor hoch/runter zählen
Select-Taster Drehimpulsgeber (oder separater Taster), drücken um Time/Factor zu ändern oder Setup-Menü auszuwählen
Start-Taster drücken, ausgewählte Zeit startet bzw. stoppt (Restzeit bleibt stehen)
Optional: Taster 1er direkt, die Zeit für 1er startet und wird angezeigt
Optional: Taster 2er direkt, die Zeit für 2er startet und wird angezeigt

Beschreibung der Funktionen
Grundsätzlich gibt es zwei Arten den Timer zu nutzen, direkte Zeiteinstellung der Dose oder von einander über den Faktor abhängig.    

Für die Funktion der direkten Zeiteinstellung (FaktorSetupActiv=0) gilt, es werden immer die Zeiten für jede Dose einzeln direkt eingestellt. Es gibt kein Setup Menü für den Faktor und man kann wählen ob man die Funktion Leer mahlen möchte und welche Dose's man benützt.

Die Variante mit Faktoren (FaktorSetupActiv=1) sieht wie gefolgt aus. Man hat wie vorher die Zeiteinstellungen pro Dose. Nur hat man nun ein Setup Menü wo man die Faktoren für die jeweilige Dose einstellen kann., wie diese zueinander stehen. Ändert man nun eine Zeit, egal bei welcher Dose, werden die Zeiten anhand der Faktoren für alle Dose neu berechnet. Stimmen die Faktoren zu meinen Sieben, ändere ich somit bei einem Bohnenwechsel nur in einer Dose, und alle anderen passen auch wieder. Auch hier habe ich die Möglichkeit die Leermahl-Funktion und meine verwendeten Dose's zu wählen.
        
Für beide Varianten kann man noch optional zwei Taster mit anschließen, die beim drücken dann Dose 1 oder Dose 2 automatisch starten. Das LCD zeigt dann das dementsprechende an. Natürlich kann der Vorgang durch erneutes drücken unterbrochen werden. Für diese zusätzliche Funktion kann man den Start-Taster zu einem direkt Nachmahlen Taster machen (solange der Start-Taster gedruckt wird, wird gemahlen). Dann gibt es noch die Nachmahlfunktion (Add Grinding) die in jeder Variante vorhanden ist. Diese befindet sich im Menü zwischen höchster und niedrigster Dose.

Funktion Leermahlen
beim ersten Einschalten geht's auf "Leermahlen" danach auf die letzte genützte Dose
drück man Start, wird leergefahren und danach springt er auf die letzte genützte Dose
macht man nichts und dreht am Drehgeber (egal ob links/recht) springt er auf die letzte genützte Dose

Auswahl der zu verwendenden Dose's im Programm
alle Dose halten die Restzeit beim stoppen -> ändern der Dose (Drehimpulsregler) setzt die Zeit zurück
die Anordnung der Dose im Menü ist wie folgt, abhängig von denen die gewählt sind


Laden von Default-Werten in den EEProm
wenn man das erste mal den Sketch in den Arduino lädt, ist der EEProm natürlich leer und es werden bei den Zeit und Faktoren "nan" angezeigt, dafür kann man hinterlegte Default-Werte laden, auch nützlich falls der Arduino Werte mal verliert oder ein "scheiss" reinschreibt. Im Add Grinding Menü den Start- und Select-Taster gleichzeitig drücken und wieder loslassen, danach bitte einen Reset am Arduino durchführen. Nun sollten überall Startwerte drinstehen und man kann seine eingeben
Wichtig, das muss man auch beim wechsel von direkter Zeiteinstellung auf Faktor Setup und umgekehrt tun

Die Mahlgradanzeige ist momentan nur experimentell vorhanden bzw. freischaltbar.

ALLE EINSTELLBAREN OPTIONEN SIND DIREKT AM ANFANG IM PROGRAMM ERKLÄRT


Der Zusammenbau
Es muss keine Platine geäzt oder gelötet werden, da es sich bei allem um fertige Platinen bzw. Bauteile handelt. Man muss nur alle Bauteil nach dem Steckbrett-Plan verkabeln (am besten löten) und den Sketch einspielen.


Benötigte Teile
    Arduino Nano
    Relais-Platine (wichtig, mit Optokoppler und Transistor)
    2x Taster
    Drehimpulsgeber (gibt es auch mit Taster)
    LCD HD47780 1602 Display mit I2C Adapter
    Netzteil 5V DC mit mind. 300mA
    etwas dünne Kabel bzw. Einzeladern mind. 0,14²
    evtl. Gehäuse um alles einzubauen

Optionale Teile
    für 1er und 2er Direktmahlung zwei zusätzliche Taster
    für Mahlgradverstellung zusätzlich 10-Gang Poti mit 10KOhm und 5KOhm Vorwiderstand

Schaltung
    http://www.schafhof24.de/arduino_timer/hardware_timer_v301_Steckplatine.jpg
    http://www.schafhof24.de/arduino_timer/hardware_timer_v301.fzz
    http://www.schafhof24.de/arduino_timer/Flussdiagramm_Timer.png

Nötige Software
    Arduino Entwicklungsumgebung: http://arduino.cc/en/Main/Software
    Software für Schaltplan: http://fritzing.org/download/
    Mühlentimer Sketch: http://www.schafhof24.de/arduino_timer/Board_Timer_V310.zip (PW über PN im Forum anfragen)
    Benötigte Librarys: http://www.schafhof24.de/arduino_timer/arduino_libraries_mühlentimer.zip

FAQ
    Für Fragen, Änderungen, Bugfixing und Verbesserungen ,
    bitte unten genannten Link ins Kaffee-Netz Forum nutzen oder direkt michael@schafhof24.de

Link zur Kaffee-Netz Diskussion
    http://www.kaffee-netz.de/m-hlen/76011-timer-f-r-m-hle-mit-einem-arduino...