Zum Inhalt springen
  • Das GSF wandelt Links in Affiliate Links um, um ggf. eine Provision erhalten zu können. Gerne nutzen bitte, danke! Mehr Infos, wie ihr das GSF unterstützen könnt, findet ihr im GSF Support Topic.

Open Source Prüfstandssoftware auf Basis von Arduino Mega und LabVIEW


Empfohlene Beiträge

Geschrieben
Am 20.12.2018 um 16:27 schrieb hanni-piston:

 

Ich verwende das Ardyno Shield in Verbindung mit dem Arduino Mega und LabVIEW ....

 

 

ardyno3-schematic-schem_orig.thumb.jpg.bc3fc4f24309ab431bf29c21d7ebf41b.jpg
 

finde den kleinen 3pF Kondensator nirgends inder der Ardyno Teileliste.
was ist das für welcher?

Geschrieben
Am 29.12.2016 um 22:51 schrieb chili023:

Hallo liebe Gemeinde, ich möchte hier unser Projekt vorstellen. Seit nun mehr 2 Jahren tüftel ich an einer sauberen Lösung, Leistung an Rollenprüfständen zu messen und die Ergebnisse in eine Datenbank zu speichern. So gut und stabil der GSF Dyno auch ist, er ist etwas Benutzerunfreundlich und es vergeht immer einige Zeit zwischen Messung und Leistungsdarstellung.

 

Hier möchte ich anmerken, das ich zu keiner Sekunde den GSF Dyno kritisieren möchte. Ich wünsche mir nur eine etwas professioneller ausschauenede Software für die Erstellung und Speicherung von Prüfstandsläufen.

Angefangen hat alles mit einem Atmega und einem einfachen C Programm. Viele Fehler und viele initiale Hürden habe ich alleine genommen, jedoch kam meine Entwicklung aus Zeitmangel (Test und Entwicklungszeit) zum erliegen.

Als ich mich nach einer Pause wieder mit dem Thema beschäftigt habe, kam nach kurzem Aufruf im Forum Wildstyler und Grua dazu.

Mit der Hilfe und unermüdlichen Gedult der Zwei ging alles mit sehr großen Schritten vorran.

 

Wildstyler übernahm den Großteil der Prüfstandstest und hat alles in kürzester Zeit getestet was wir ihm schickten. Hemmungslos hat er seine Elenor auf dem Prüfstand gequält bis die Kupplung (Partnerlink) weinte (und auch den Geist auf gab).

Grua hat die nummerische Umsetzung in Labview, Entwicklung der Oberfläche und Bedienung übernommen. Die Auswertung hat er so nahe am GSF Dyno gehalten wie möglich.

Unser gemeinsames Ziel ist eine stabile Software zur Verfühgung zu stellen die vom Forum frei benutzt und getestet werden kann. Wichtig ist uns allen Open Source.

Die Software läuft stabil und erzeugt wiederholbare Ergebnisse, sie ist aber noch nicht perfekt. Einige Features sollten noch implementiert werden.

Wir hoffen, das mit der gemeinsamen Hilfe des Forums eine gute und stabile Software auf dem Niveau eines AVL Prüfstands entsteht.

Nun genug des Gesülzes und zur Software.

 

Idee war es eine Microcontroller so zu programmieren, das er mit der Minimalkartschaltung benutzt werden kann.

Bei dem aktuellen Programm, handelt es sich um die Minimalausführung (nur Leistungsmessung) mit Debug Features.

Wenn sich genug Menschen finden bei denen diese Version gut funktioniert soll sie immer komplexer werden.

 

Messprinzip:

Arduino Mega angeschlossen and die Minimalkartschaltung.

Der Arduino bekommt in TTL (5V) die Impulse der Rolle und der Zündung. Diese gehen in den ICP4 und ICP5 (Pin 48 und Pin 49).

ICP steht für Input Capture Pin. Es ist wichtig das der Arduino nur 5V Signale bekommt. Das geht am einfachsten mit einem Optokoppler der auf die Unteschiedlichen Schaltkreise abgestimmt ist. So wa es uns möglich bei Wildstyler, Grua und mir drei unteschiedliche Prüfsysteme mit unserer Software/Hardware zu benutzen.

Dabei handelte es sich um:

12V / 16 Inkremente / leichte Rolle

9V / 24 Inkremente / schwere Rolle

5V/200 Inkremente / mittlere Rolle

 

Der Arduino hat die Aufgabe die Zeit zwischen zwei steigenden Flanken der beiden Eingänge zu messen und diese in einen Ringspeicher zu speichern. Die Werte werden dann über Serielle Schnitstelle zusammen mit der Übertragungszeit (Zeit zwischen zwei Übertragungen) an den PC/LabVIEW gesenden. LabVIEW berechnet dann die Leistung und stellt sie dar.

Zur Zeit senden wir mit ca 50Hz die Werte an den PC. Das hat sich als guter Wert herrausgestellt.

Kurz zum Arduino. Wir haben uns für den Arduino entschieden, da es ohne Vorkenntnisse möglich ist, ihn von jedem PC aus zu programmieren. Die USB Schnittstelle dient gleichermaßen als Programmierschnittstelle und Serielle Schnittstelle an den PC.

Die Daten der Rolle und der Zündung werden an Labview gesendet. Wir benutzen Labiew , da es nur noch 50€ als Home Version kostet und genau für solche Situationen entwickelt wurde. Eine Implementierung in Java oder C oder was auch immer ist natürlich auch möglich und ausdrücklich erwünscht. Labview ist nur das von uns genutzte Modul. Die Daten können wie gesagt beliebig verarbeitet werden.

 

Benötigt wird:

1x Arduino Mega

1x Labview 2014 oder neuer

1x Prüfstand mit Rollensensor

1x Minimalkartschaltung (nicht dringend notwendig wenn man weiss was man macht....)

 

Aufbau:

ACHTUNG Signale müssen aufbereitet bzw. auf 5V gebracht werden. Ich habe den LTV827S (Opptokoppler) mit 180 Ohm zwischen Signal und Eingang und 10kOhm am Ausgang gegen GND.

1. Zündungssignal aus Minimalschaltung an Pin 48

2. Rollensignal aus Sensor (oder Minimalschaltung) an Pin 49

 

Ablauf der Messung:

In Labview müssen die bekannten Daten von Zündung, Massenträgheit usw. eingetragen werden. Desweiteren muss der korrekte COM Port eingestellt werden.

1. das Programm starten. (Weisser Pfeil oben im Menu)

2. Rollen und Rolle auf konstante Drehzahl bringen.

3. Die Messung Starten (Großer Knopf mit Start)

3.1. Labview startet die Übersetzungsermittlung. Ist dieser Prozess fertig erscheint ein Grünes GO und es kann gemessen werden.

4. Vollgas

5. Vom Gas gehen

Nach erreichen der maximalen Drehzahl und Reduzierung der Drehzahl wird die Messung automatisch beendet. Die Messung wird gespeichert und die nächste Messung kann starten.

 

Still to come:

Wir sind gerade noch dabei einige Verbesserungen zu implementieren. Dazu gehören:

1. Implementierung eines BME280 für die Wetterdaten.

2. Implementierung eines Fussschalters für "Messungsstart" und "nächste Messung".

3. Implementierung von Lambdamessung

4. Implementierung von Temperaturmessung  ----> MAX31855 breakout ca. 15€

Ich möchte ausdrücklich nochmal darauf hinweisen, dass das Programm noch nicht perfekt ist und das vielleicht einige Lösungsansätze besser oder Prozessorfreundlicher gestaltet werden könnten.

Mit dieser Version möchten wir dem Forum eine stabile Basis zur Verfühgung stellen, auf die nun gemeinsam aufgebaut werden kann. Open Source heisst hier das Sprichwort.

 

Ich persönlich bin zur Zeit durch Hausrenovierung etwas stärker eingespannt, werde aber weiterhin an dem Programm arbeiten. Ich denke, das wir gemeiensam in kurzer Zeit eine sehr professionelle Software/Lösung zum messen von Leistung haben werden.

 

Ich möchte mich nochmal bei Wildstyler, BugHardcore und Grua bedanken. Ohne die Drei wäre die Software jetzt nicht da wo sie ist und das Projekt wäre wahrscheinlich in eine meiner Schubladen gelandet.

 

Das ganze Paket kann von GitHub runter geladen werden. Im Zip befinden sich alle Dateien und eine Docu. Alle neuen Entwicklungsstände werden dort veröffentlicht.

https://github.com/gruaGit/WildBugChilGru/releases

 

BME280 Bezugsquelle:

http://www.watterott.com/de/BME280-Breakout-Luftfeuchtigkeits-Druck-Tempertursensor

 

!---------------------------------EDIT--------------------

 

WildGruChil_Shield_v4 mit allen Anschlüssen für den BME280(wattenrott) und MAX31855 (adafruit) von wattenrott. 12V und 5V Variante

 

 

12V_v4_Board.PNG

 

 

!---------------------------------EDIT--------------------

 

 

Wildstyler.PNG

 

 

 

 

 

 

 

Am 29.12.2016 um 22:51 schrieb chili023:

Benötigt wird:

1x Arduino Mega

 

Hey Leute,........... bin neu hier bei euch und durch zufall beim googeln auf die Seite gekommem. Die Software werde ich auch mal an meinem Prüfstand testen..........hab aber noch paar Fragen an die Spezialisten.

Warum brauche ich einen Mega?.........der hat doch die gleiche Taktfreq. wie der Uno?

Das Visa Treiberpacket ist ca. 700MB groß.......brauche ich das alles?..........wofür ist Lifa_Base?

Gibts im Bereich Plz. 83xxx jemand der so einen Prüfstand in Betrieb hat? mfg

 

 

 

 

Geschrieben

 

vor 11 Stunden schrieb Mikuni Sepp:

 

 

Hey Leute,........... bin neu hier bei euch und durch zufall beim googeln auf die Seite gekommem. Die Software werde ich auch mal an meinem Prüfstand testen..........hab aber noch paar Fragen an die Spezialisten.

Warum brauche ich einen Mega?.........der hat doch die gleiche Taktfreq. wie der Uno?

Das Visa Treiberpacket ist ca. 700MB groß.......brauche ich das alles?..........wofür ist Lifa_Base?

Gibts im Bereich Plz. 83xxx jemand der so einen Prüfstand in Betrieb hat? mfg

 

 

 

 

Der MEGA hat zwei PINS an denen ISRs ausgeführt werden können.

Aber das hatten wir alles schon bitte mal das Thema lesen.

  • Like 1
Geschrieben

So habe jetzt mal alles eingebaut und die ersten Probeläufe absolviert. Soweit funktioniert das. Bei den ersten Test hatte ich Platine / Arduino neben / unterhalb des Prüfstands und für die Zündkabelklemme ein altes Fernsehantennenkabel genommen. Soweit keine Probleme / Ausfälle. (Blöd dabei war jetzt nur, das ich das Laptop ebenfalls sehr tief hinstellen mußte. Werde das mal mit einem längeren USB Kabel von Arduino zum Laptop probieren)

 

Drehzahlabnahme scheint soweit zu funktionieren. Habe Vergleichsmessungen mit der dem alten PC mit der bislang verwendeten Abnahme und GSF Software gemacht und mit dem neuen Rechner (aktuell habe ich alles parallel angeschlossen, so dass ich noch beide Systeme nutzen kann). Die ermittelten Drehzahlen bei Leistung und Drehmoment liegen alle sehr dicht beieinander, so Abweichungen zwischen 20 - 50 Umdrehung, im Bereich 6.000 U/min. Auch Kurvenverlauf, Leistung etc. der einzelnen Messungen liegt im normalen Bereich von Messtoleranzen und Schwankungen.

 

Was allerdings nicht plausibel ist, ist die unter der Leistungskurve angegebene v/max. Da messe ich z.B. einen Roller mit 20 PS, max. Drehzahl über 8.000 U/min, 3. Gang (Übersetzung 6,29 ermittelt hat er 6,33) und die v/max liegt bei verschiedenen Messungen zwischen 34 und 36 km/h. Wie kann das sein?

 

Was ich auch nicht verstehe, wie ermittelt die Software Getriebeübersetzung und Reifenumfang? Als Daten steht die Motordrehzahl über die Zündimpulsabnahme sowie die Geschwindigkeit des Hinterrades über die Rolle zur Verfügung. Daraus läßt sich die Gesamtübersetzung berechnen, aber wie kommt der auf den Reifenumfang?

  • Like 1
Geschrieben (bearbeitet)

solang du nicht die Getriebeübersetzung händisch eingeben willst, ist der Reifenumfang überflüssig.

für die kmh ist der Rollenumfang relevant.


die Drehzahlanzeige (Motor) wird übrigens von Haus aus bereits im Arduino relativ stark geglättet...
die anzeige am PC hinkt immer dem Motor hinterher,
desshalb bei gleichbleibender Drehzahl einmessen.

Ich habe mir meinen Sketch ein bissl umgemoddelt, und die glättung für das Zündsignal reduziert.
Dann ist auch die Drehzahlanzeige total direkt. und man kann auch während der Motor in Reso geht einmessen.
(bei drehmomentstarken Motoren macht das schon einen unterschied aufgrund des Reifenschlupfs bei Reso...)

Bearbeitet von Werner Amort
  • Like 1
Geschrieben
vor 12 Minuten schrieb Werner Amort:

solang du nicht die Getriebeübersetzung händisch eingeben willst, ist der Reifenumfang überflüssig.
 

 

Das ist ja auch mein Gedanke. Ich habe mir aber die Kurven, die ich mit der Zündabnahme eingemessen habe nachträglich noch mal mit der "Recalc"-Funktion angesehen und da stand dann ein Reifenumfang.

 

Beim Einmessen habe ich schon versucht die Drehzahl weitesgehend konstant zu halten. Das die V/max Angabe aber so daneben liegt, wenn alles andere plausibel ist, verstehe ich nicht.

Geschrieben

hab jetzt auch mal ein wenig getestet...........da es in der Werkstatt noch recht ungemütlich ist hab ich einen Teil am Prüfplatz erledigt und die nötigen(Rollen/Zündungs) Signale mit dem Impulsgen. erzeugt.

Damit es auch richtig genaue Messungen werden und die Hz auch noch bis zur 2. Kommastelle genau sind hab ich mir zu Kontrolle eine premium Counter besorgt

Testfall: Rolle 400mm mit 1 Impuls, Zündung 2 Takt

es gibt bei 10.00 Hz Abweichungen

Anzeige 41 Km/h in echt aber 45,21

 

bei 45Hz

Anzeige 199 Km/h in echt aber 203,4

 

Zündung10Hz

Anzeige 540 1/Min sollten aber 600 sein

bei 90 Hz

Anzeige 5340   sollten dann 5400 sein..........also alles nicht tragisch

Bei aggressiven schnell hochdrehenden Motoren(S1000RR oder CR250R) hinkt die Drehzahl Anzeige stark hinter her

das wurde aber auch bei der Rollendrehzahl festgestellt........es könnte evtl. bei einer grimmigen Motorleistung und einer zu leichten Rolle zu einem grösseren Messfehler kommen?......aber das müssen sich mal die Codeentwickler ansehen, da hab ich den A.....zu weit unten.

Die Übersetzungsermittung über Rolle/Zündung funktioniert gut

Mein Zifferblatt im LV hat manchmal Graphikfehler.......wenns Wärmer wird gehts weiter

count.jpg

Ziffblatt.PNG

Geschrieben

also der Arduino code arbeitet mit einem Ringspeicher.
dh er mitteld die frequenz der letzten 50 Impulse und schickt die zum PC.

für das Zündsignal mit 1 oder halt 2 p/n das eine zu starke Glättung...
so macht ein Motor mit 6000rpm zB 100Hz.
dh. die letzte halbe Sekunde wird bei Ringspeicher 50 gemittelt, dementsprechend hinkt auch der Zeiger hinterher.


wenn du jetzt, wie bei diesem versuchsaufbau auch an der Rolle nur 1p/n hast verhälts sich das dort ähnlich...


ich habe an meiner relativ großen Rolle (d400) einen Drehgeber mit 200p/n, da hat sich der Ringspeicher von 50 in der Praxis bewährt...
bei einer kleineren Rolle würde ich einen Drehgeber mit 100p/n wählen. und evt einen Ringspeicher von 25-30 oder so.

fürs Zündsignal habe ich einen Ringspeicher von 5, daf funkt top.

ich habe meinen Sketch ein bissl umgeschrieben um die Ringspeichergröße für Zünd und Rollensignal separat wählen zu können.

die txt gibts im anhang, I2C adresse vom BME280 wird anzupassen sein

MEGA_PSTfreq_BME280_v1_5_ringsize_gesplittet_korrekturfaktor_au.ino.txt

  • Thanks 1
Geschrieben (bearbeitet)

ich hab auch mal mit einen Oszyloskop Frequenzen vorgegeben

mein Sketch hätte auch einen Korrekturfaktor eingebaut...
war mir aber nicht sicher ob ich meinen Oszy mehr trauen kann als dem Arduino.
hab fahre momentan ohne Korrektur
 

frequenzen.png

 

man sieht auch, der Arduino steigt ab spätestens 15kHz aus. Drehgeber sollte also dementsprechend gewählt werden.

Bearbeitet von Werner Amort
Geschrieben

Mal eine ganz andere Frage: mein Prüfstand steht in einer unbeheizten Halle, sprich im Winter, wenn der eine Weile nicht benutzt wird, dann ist es auch im Prüfstandsraum fast so kalt wie draussen. Kann der Arduino und die Platine das ab und kann am Prüfstand bleiben oder sollte man den besser nicht am Prüfstand lassen?

Geschrieben

gestern kamen meine Boards aus Norwegen.

pcb.thumb.jpg.a1d7a96485cbf58b0dc79d58988b9f18.jpg

Erstmal testen

Wenn die Schaltung mit dem 555 Timer wirklich bei gewissen Zündungen Vorteile hat würd ich die gerne auf meinem Prüfstand mitintegrieren, gleichzeitig aber die Minimalkart erhalten.

also dass ich 2 Zangen am Prüfstand habe, und je nach Zündung mit der idealeren einmesse...

die Ardyno schaltung
ardyno3-schematic-schem_orig.thumb.jpg.f7e95f7d8c020529f01931d2d894196e.jpg
dazu wollte ich einfach einen weitern BC547 an Hall Engine RPM S und - anlöten und den dann mit dem TTL Signal von Minimalkart Schalten?

das müsste doch funktionieren?

Geschrieben (bearbeitet)

Ardyno Zündsignalerfassung bereit zum Test :-)
Das PCB passt eigentlich fast PlugandPlay

die 2 Drehzahlsignale gehen von beim Ardyno halt auf d2 und d3
da muss man die Pins weglassen und mit Kabelhein zu 48/49 fahrn...
bin gespannt ob die Schaltung was besser macht als die Minimalkart


 

ardyno-mega.jpg



@hanni-piston  ...

Bearbeitet von Werner Amort
  • Like 1
Geschrieben
Am 23.3.2018 um 13:11 schrieb Werner Amort:

Ḱleiner Blick über den Tellerrand
https://ardyno.weebly.com
https://sites.google.com/site/simpledyno/home

 

 

das Projekt ist teilweise recht ähnlich...
Rollendrehzahl und Zündimpuls wird auch über einen Arduino ausgewertet und an den PC Übertragen....

ardyno3-schematic-schem_orig.jpg

sie verwenden die Schaltung von Sportdevices mit dem BC547 und dem NE555
Rollengeber auch etwas mit NPN ausgang, wie wir halt auch...

evtl lad ich bei gelegenheit mal die Software und spiel ein bissl rum...

 


Wenn wer Bock hat mal Simple Dyno zu testen
hab mal aus Neugierde unseren Sketch ein wenig umgeschrieben, so dass ich mit Wildbugchillgru Hardware  Simple Dyno testen kann...

funktioniert am Ostyloskop alles hab aber den Stand grad unpässlich stehen und kann nicht testen.

muss aber dazusagen dass mir Simpledyno irgendwie nicht wirklich gefällt.
Eine Klimakorrektur fehlt komplett.
Eine Routine zum einmessen der Übersetzung ist auch nicht vorgesehn.
der gesamte Workflow, ist absolut nicht Praxisgerecht.

das einzige was mir gefällt ist die freie Konfigurierbarkeit von Zusatzanzeigen, welche an den Analogen Eingängen hängen.

so wie ich das verstehe funktioniert das mit den AnalogRead bei Simple Dyno im Gegensatz zu unserem Sketch desshalb weil die Interrupts nicht kontinuierlich ausgelesen werden.
sondern jeweils nur der Abstand von einem Interrupt zum nächsten anschließend dann Analogread.

Da arbeitet unser Sketch viel genauer, also für uns ist die Methode sicher keine Alternative.


Apropo Zusatzinstrumente...

Ich hätte grad Bock mit der Hardwareumsetzung für AFR Anzeige weiterzumachen.

der Plan wäre wäre einen 14point7 Spartan2 I2C an einen zweiten Arduino zu betreiben welcher dann den AFR wert an den Mega übergiebt.

hätte wer der Labview Jungs Bock das in Labview zu integrieren?

zum Anfang währe mir eine Live Anzeige ausreichend. cool wäre natürlich edie AFR Kurve mit aufm leistungsdiagramm



 

MEGA_PSTfreq_BME280-fuerSimpleDyno .ino.txt

Geschrieben
Am 10.2.2019 um 13:12 schrieb Werner Amort:

hätte wer der Labview Jungs Bock das in Labview zu integrieren?

Am Bock scheitert das nicht so richtig.

 

Tatsächlich steht das schon auf der ToDo-Liste.

Das letzte womit ich mich intensiver beschäftigt habe, war allerdings die Schleifen für die Kommunikation mit dem Arduino und die für die Rechnerei auseinander zu ziehen, damit das Programm schneller wird (unabhängige Schleifen können auf verschiedenen Prozessorkernen laufen). Das würde Kapazitäten für solche Spielereien frei machen. Dafür muss ich mich aber in die Melderfunktionen einarbeiten.

 

Den Sinn von AFR über Kurve seh ich allerdings nicht. Da Fährt man doch nur mit Hahn offen?

  • Like 2
Geschrieben (bearbeitet)
vor 59 Minuten schrieb BugHardcore:

Am Bock scheitert das nicht so richtig.

 

Tatsächlich steht das schon auf der ToDo-Liste.

Das letzte womit ich mich intensiver beschäftigt habe, war allerdings die Schleifen für die Kommunikation mit dem Arduino und die für die Rechnerei auseinander zu ziehen, damit das Programm schneller wird (unabhängige Schleifen können auf verschiedenen Prozessorkernen laufen). Das würde Kapazitäten für solche Spielereien frei machen. Dafür muss ich mich aber in die Melderfunktionen einarbeiten.

 


:thumbsup:aber du würdest dann schon immer mit 2 Arduinos arbeiten? also einer macht ausschließlich die Drehzahlen und ein anderer die Zusatzinformationen wie AFR oder EGT oder was auch immer?

 

 

vor 59 Minuten schrieb BugHardcore:

Den Sinn von AFR über Kurve seh ich allerdings nicht. Da Fährt man doch nur mit Hahn offen?

 



Die MMW Rolle vom Harald mit Sportdevices Software macht das auch so, Dynojets usw sowiso...

Der Harald meinte zu mir auch, wenn die Rolle schwer genug ist ist die Kurve schon interessant...
auch wenn ich fürn Anfang den AFR Wert live aufm Bildschirm voll ok fände langfristig wäre die Kurve schon cool.


btw.
heute ist mir ein kleiner Bug in unserem Sketch aufgefallen:

und zwar lässt sich der aktuelle Sketch (https://github.com/gruaGit/WildBugChilGru/blob/master/Arduino/MEGA_PSTfreq_BME280_v1/MEGA_PSTfreq_BME280_v1.ino )nur mit Arduino IDE 1.8.1 flashen. Hat man, wie ich, eine neuere Version installiert kommt beim kompilieren eine Fehlermeldung.
Grund ist die Namensgebung der Funktion zum auslesen des BME280.
DIe Funktion ist BME280() benannt, den Namen scheint aber die library zu verwenden, wodurch es zu Konflikten kommt.

Umzubenennen wäre also Zeile 122 von

void BME280()  


in von mir aus

void BME280read()  

sowie Zeile 268 von

 BME280(); 

entsprechend auch in

 BME280read(); 

 


 

 


 

 

 

 

Bearbeitet von Werner Amort
  • Like 2
Geschrieben
Am 28.1.2019 um 08:34 schrieb Werner Amort:

also der Arduino code arbeitet mit einem Ringspeicher.
dh er mitteld die frequenz der letzten 50 Impulse und schickt die zum PC.

für das Zündsignal mit 1 oder halt 2 p/n das eine zu starke Glättung...
so macht ein Motor mit 6000rpm zB 100Hz.
dh. die letzte halbe Sekunde wird bei Ringspeicher 50 gemittelt, dementsprechend hinkt auch der Zeiger hinterher.


wenn du jetzt, wie bei diesem versuchsaufbau auch an der Rolle nur 1p/n hast verhälts sich das dort ähnlich...


ich habe an meiner relativ großen Rolle (d400) einen Drehgeber mit 200p/n, da hat sich der Ringspeicher von 50 in der Praxis bewährt...
bei einer kleineren Rolle würde ich einen Drehgeber mit 100p/n wählen. und evt einen Ringspeicher von 25-30 oder so.

fürs Zündsignal habe ich einen Ringspeicher von 5, daf funkt top.

ich habe meinen Sketch ein bissl umgeschrieben um die Ringspeichergröße für Zünd und Rollensignal separat wählen zu können.

 

 

vor 3 Stunden schrieb Werner Amort:


heute ist mir ein kleiner Bug in unserem Sketch aufgefallen:

und zwar lässt sich der aktuelle Sketch (https://github.com/gruaGit/WildBugChilGru/blob/master/Arduino/MEGA_PSTfreq_BME280_v1/MEGA_PSTfreq_BME280_v1.ino )nur mit Arduino IDE 1.8.1 flashen. Hat man, wie ich, eine neuere Version installiert kommt beim kompilieren eine Fehlermeldung.
Grund ist die Namensgebung der Funktion zum auslesen des BME280.
DIe Funktion ist BME280() benannt, den Namen scheint aber die library zu verwenden, wodurch es zu Konflikten kommt.

Umzubenennen wäre also Zeile 122 von


void BME280()  


in von mir aus


void BME280read()  

sowie Zeile 268 von


 BME280(); 

entsprechend auch in


 BME280read(); 

 

 

Habe unseren originalen Sketch jetzt auch mal entsprechend erweitert auf jeweils eigenen Ringspeicher für Zündung und Rolle und so wie Werner vorinitialisiert:

Zündung Ringsize 5

Rolle Ringsize 50

 

Weiters die Umbenennung der Funktion BME280() auf BME280Read()

 

Kann das bitte wer testen, ich komme gerade nicht zum Prüfstand. Wenns läuft, mach ich ein neues Release draus.

MEGA_PSTfreq_BME280_v1_02.zip

  • Like 1
Geschrieben (bearbeitet)
vor 15 Minuten schrieb Werner Amort:

prüfstand geht bei mir grad auch net...
einen Mega und das Oszyloskop hätte ich aber nachher in der Wohnung...

wird getestet...:cheers:

Die Korrekturfaktoren, die du ohnehin ja auch nicht nutzt, habe ich nicht implementiert

Und  I2C adresse und deine Temperatur- und Luftdruck Korrekturwerte musst du wieder auf deine anpassen

Bearbeitet von grua
Geschrieben
Am 11.2.2019 um 19:27 schrieb grua:

 

 

Kann das bitte wer testen, ich komme gerade nicht zum Prüfstand. Wenns läuft, mach ich ein neues Release draus.

MEGA_PSTfreq_BME280_v1_02.zip

Hallo

Hab denn neuen Sketch gestern getestet, er läuft bei mir ohne Probleme. Hab aber momentan einen Problemfall auf der Rolle stehen wo ein vernünftiges Einmessen der Übersetzung kaum möglich ist, deshalb kann ich noch nicht so recht beurteilen ob jetzt etwas besser ist oder nicht.

Grüße

  • Like 1

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden
  • Wer ist Online   0 Benutzer

    • Keine registrierten Benutzer online.



×
×
  • Neu erstellen...

Wichtige Information