Hallo,
ich experimentiere gerade mit einem Getriebe-Encodermotor herum und teste die 2 Impulsausgänge des Motors am ftduino.
Der Motor hat eine Übersetzung von 35:1 und generiert jeweils 11 Impulse pro Umdrehung der Motorwelle. Die Nenndrehzahl beträgt 170 Upm am Getriebeausgang.
Daraus ergeben sich 11 * 35 * 170 = 65.450 Impulse pro Minute. Das heißt es werden ca. 1.090 Impulse/Sek. ausgegeben. Wenn man jeden Flankenwechsel zählt sind es sogar 2.180 Impulse/Sek. Normal sollte das der Ftduino schaffen aber die Impulsfrequenz ist auf 1 KHz per Software in der ftduino Library beschränkt. Dort gibt es eine Definition '#define COUNTER_FILTER 250' wodurch die max. Abtastrate auf 1 KHz eingestellt wird.
Wenn ich es richtig verstanden habe, sollte ein Wert von 25 die mögliche Abtastfrequenz verzehnfachen.
Muss dazu die ftduino Library geändert werden oder kann man auch irgendwie extern die Definition von COUNTER_FILTER abändern?
Viele Grüße
Claus
ftduino Messintervall der Zähleingänge zu lang
Forumsregeln
Bitte beachte die Forumsregeln!
Bitte beachte die Forumsregeln!
Re: ftduino Messintervall der Zähleingänge zu lang
Das war einfacher als ich dachte. Ich habe die Quelldatei ftduino.cpp im Editor geöffnet und den Wert für COUNTER_FILTER auf 25 geändert.
Ich hatte nicht damit gerechnet, dass beim compilieren eines Sketches die includierte ftduino Library neu compiliert wird wenn sie geändert wurde.
Komisch finde ich, das man eine .cpp Datei nicht in der Arduino IDE ändern kann (oder doch?) sondern einen externen Editor benutzen muss.
Auf jeden Fall werden jetzt auch bei höchster Drehzahl alle Impulse der Counter gezählt.
Ich hatte nicht damit gerechnet, dass beim compilieren eines Sketches die includierte ftduino Library neu compiliert wird wenn sie geändert wurde.
Komisch finde ich, das man eine .cpp Datei nicht in der Arduino IDE ändern kann (oder doch?) sondern einen externen Editor benutzen muss.
Auf jeden Fall werden jetzt auch bei höchster Drehzahl alle Impulse der Counter gezählt.
Re: ftduino Messintervall der Zähleingänge zu lang
Hallo Claus,
die Arduino-IDE öffnet nur Arduino-Projekte, deren Hauptdatei (.ino Endung) in einem gleichnamigen Ordner liegen muss, daher ging das nicht.
Beim manuellen Ändern der Library musst du daran denken, dass deine Änderungen bei einem Update überschrieben werden.
vg
Jan
die Arduino-IDE öffnet nur Arduino-Projekte, deren Hauptdatei (.ino Endung) in einem gleichnamigen Ordner liegen muss, daher ging das nicht.
Beim manuellen Ändern der Library musst du daran denken, dass deine Änderungen bei einem Update überschrieben werden.
vg
Jan
Meine 3D-Designs für fischertechnik: www.printables.com/social/202816-juh www.thingiverse.com/juh
- MasterOfGizmo
- Beiträge: 2724
- Registriert: 30 Nov 2014, 07:44
Re: ftduino Messintervall der Zähleingänge zu lang
Du kannst die ftduino.cpp und .h auch einfach in das Verzeichnis Deines Projektes kopieren und dort dann mit der IDE verändern. Dann betrifft das auch nur dieses Projekt und ist von Updates nicht betroffen.
Arduino für fischertechnik: ftDuino http://ftduino.de, ftDuino32 http://ftduino.de/32
Re: ftduino Messintervall der Zähleingänge zu lang
Guter Tipp, dann kann man für jedes Projekt die Libraries individuell anpassen ohne das Original zu verändern.
COUNTER_FILTER hat anscheinend Einfluss auf die serielle Kommunikation. Ist der Wert zu gering stört das laufende Programm auf dem ftduino den Monitor und das Upload funktioniert nicht mehr.
COUNTER_FILTER hat anscheinend Einfluss auf die serielle Kommunikation. Ist der Wert zu gering stört das laufende Programm auf dem ftduino den Monitor und das Upload funktioniert nicht mehr.