Mit welchem Arduino soll ich anfangen? Drehzahlregelung Verbrennungsmotor

Hallo @ ALL,

ich bin die Neue hier und möchte mich kurz vorstellen;

Petra aus der Umgebung von Wien, in der IT tätig seit vielen Jahren,
leider wenig Erfahrung mit C+ und deren Derivaten.

Aber dafür habe ich eine nette Herausforderung, die ich vielleicht mit Eurer Hilfe
und einem Arduino lösen kann.

Ich würde gerne eine Pumpe steuern,
die je nach Belastung immer mit der gleichen Drehzahl laufen soll.
Es gibt eine Möglichkeit die Drehzahl zu messen, einfach an dem Pickup das den Zündeitpunkt steuert.
Praktisch so etwas wie ein Signal für einen Drehzahlmesser.

Verarbeiten im Arduino .... ?

Ausgeben auf einen Servo der die Drosselklappe bedient.
Die Drehzahl wird mechanisch vorgewählt,
die voreingestellte Drehzahl soll dann gehalten werden

Und jetzt meine Fragen;

was, welches Set kaufe ich?
(wenn erlaubt hier einen Link einzustellen ->
https://www.amazon.de/gp/product/B01ILR6AX4/ref=ox_sc_act_title_1?smid=AZF7WYXU5ZANW&psc=1)
Gab es schon einmal ein ähnliches Projekt, wo ich ein wenig abschauen kann?

Danke schon mal für die guten Tipps

Petra P.
:slight_smile:

PetraPAUL:
ich bin die Neue hier

Schön! Alte haben wir hier schon :slight_smile:

PetraPAUL:
was, welches Set kaufe ich?

Das von Dir anvisierte Set ist natürlich ein reichhaltiges Sammelsurium. Meiner Meinung nach aber viel zu umfangreich, um einzusteigen. Für das gleiche Geld bekommst Du auch ein Original (meiner Erfahrung nach qualitativ erste Sahne, Fernost-Zeug ist nicht selten für die Tonne oder muss nachgearbeitet werden), dazu ein Steckbrett und ein paar Teile, die Du für Dein Vorhaben tatsächlich benötigst (gleich in der richtigen Dimensionierung und Qualität).

Ich habe mir für den Einstieg vor gut fünf Jahren ein Set gekauft, das zwar relativ umfangreich war (aber ich hatte zunächst auch kein konkretes Ziel), bei dem sich aber herausstellte, dass es allerbilligster Müll war (nie wieder Franzis', nie nie nie!) - und gleich das erste Codebeispiel im Handbuch war fehlerhaft.

Gruß

Gregor

Hallo Gregor,

danke für die schnelle Antwort.

Bitte ein bissl konkreter.
Was, wo, welche Teile sind das die du in deinem Post erwähnst.

Bitte wenn möglich ein paar Links, wie geschrieben ich bin die Neue
und muss diese Dinge erst verinnerlichen.

Danke und LG
Petra P.

PetraPAUL:
Bitte ein bissl konkreter.
Was, wo, welche Teile sind das die du in deinem Post erwähnst.

Für das was Du vorhast, wirst Du neben dem Arduino einen Transistor brauchen und natürlich eine Energiequelle, die genug Energie für die Pumpe liefern kann. Was für ein Transistor Du brauchst, hängt von der Pumpe ab, die Du steuern möchtest. Welche Spannung (Volt) benötigt diese und welchen Strom (Ampére) zieht sie?
Die Geschwindigkeit kannst Du wahrscheinlich per PWM (Pulsweitenmodulation) steuern (braucht nur einen PWM-fähigen Pin und die richtige Ansteuerung [das ist dann Software]).
Für den Einstieg in C++ kannst Du zunächst die Beispiele in der Arduino-IDE ansehen/durcharbeiten. Für kleine Tests und Spielereien brauchst Du evtl. noch eine LED (idealerweise eine mit eingebautem Vorwiderstand für 5 V). Wien ist ja nun kein kleines Kaff - da wird es hoffentlich einen Elektronikladen geben (ich kaufe gerne da, wo ich dem Verkäufer ggf. in den Hintern treten kann) - und billiger als im Versand ist es manchmal außerdem.

Zum ersten Querlesen kannst Du Dich auch mal durch meine Textereien klicken. Da ist recht simples Zeug dabei.

Gruß

Gregor

Hab diesen Post abgetrennt.

Ich kann mir kaum Vorstellen daß eine Pumpe wechselnde Belastung hat.

Bitte erklähr Dein Projekt genauer.

Du willst den Vergaser eines Benzin-Verbrennungsmotors steuern damit die Drehzahl konstant bleibt. Was ist dann mit der Pumpe?

Die Drehzahl wird mechanisch vorgewählt,

Wie mechanisch? über ein Drehpoti?

Grüße Uwe

welcher Arduino? -> zum Anfangen einen Uno
Set? -> sehe ich nicht so eng, ein Ultraschallsensor, ein Servo, ein Motörchen, paar LEDs, Steckbrett (oder sogar zwei), Kabel ... wenn du sonst noch wenig Bauteile zu Hause rumliegen hast, dann "passt das schon". Ob du da jetzt ein paar EUR gegenüber einem ausgewählten Einzelkauf mehr ausgibst, ist imho bei 30 EUR nicht sooo relevant. Auf alle Fälle kannst mit den gezeigten Teilen mal ein wenig rumspielen und kannst einfach mal ein Wochenende drauf los spielen (besser drauf los lernen).

Zum konkreten Projekt, braucht es mal eine genaue Angabe deiner "Pumpe" was du da wirklich hast. Produktlink (bitte lies in den Forenhilfe nach wie man einen anklickbaren Link setzt) bzw. Datenblatt, dann kann man dir besser helfen.

Hi

Eine Drehzahl-Regelung gab's schon vor hundert Jahren am Verbrenner, allerdings mechanisch und hatte nur zum Ziel, daß die Gurke im Stand nicht ausgeht.

Wie genau muß die Drehzahl eingehalten werden?
Bei einer Pumpe - ist es Da nicht sinnvoller, den Förderstrom konstant zu halten?

Wenn Du mit dem, was Du wirklich machen willst, nicht rausrücken willst (Mars-Rover oder ähnlich geheime Projekte), wirst Du Dir ggf. P-I-D-Regler anschauen wollen, gibt's auch als Lib und für Arduino.

Als Anfänder-Arduino sehe ich einen Uno auch als geeignet, da das Groh der Beispiele auf Diesen zielt.
Wenn Dein Interesse einzig diese eine Spielerei ist, solltest Du Abstand von dem Set nehmen - Das ist wirklich zum 'Spielen' da, die einzelnen Sensoren (teilweise auch nur teuer verkauftes Gelump) kennen zu lernen.
Erinnere mich an einen Spannungsteiler (2 Widerstände und eine 3er Schraubklemme), Die für teures Geld z.B. auf eBay verkauft werden.

MfG

Hallo Leute,

also mal danke, dass ihr euch die Zeit nehmen könnt & wollt.

Zu dem Projekt;
Die Pumpe ist ein kleiner stationärer Motor von Honda. Sogar mit einer kleinen Lichtmaschine,
also 12 Volt sind im System vorhanden. Nur noch Benzin einfüllen …
Damit wird eine Pumpe angetrieben, die alle möglichen Flüssigkeiten transportieren soll.
Quasi eine Güllepumpe, aber wir wollen damit andere, unterschiedliche Flüssigkeiten bewegen.

Nachdem aber dieses Zeug nicht immer die gleiche Viskosität hat (wie Gülle ja auch),
und dadurch der Motor praktisch in die Knie gehen würde ist die Abhilfe einfach mehr Gas geben.
Damit man da nicht manuell nachregeln muss, einfach mit einem Servo die Drosselklappe bedienen.
Die Drosselklappe hat eine Feder, sodass sie von alleine wieder in die Standgasstellung zurückläuft.
Die Mechanik dazu ist auf jeden Fall die leichteste Übung.

Und so stelle ich mir das vor;
die Startdrehzahl wird an einem (vorhandenen) Gashebel eingestellt,
dann den "Arduino-Drehzahlregler" einschalten und die Drehzahl wird gehalten.

Wird die Viskosität jetzt dichter, der Motor geht in die Knie, gibt der "Drehzahlregler" mehr Gas,
wird die Visko dünner gibt der "Drehzahlregler" weniger Gas.

That's it.

Über die Ansteuerung von Servos habe ich schon diverses gefunden, was mir jetzt noch fehlt ist eine Möglichkeit,
die Drehzahl des Motors auszulesen. Das dann im Arduino verarbeiten und den entsprechenden Befehl an den Servo schicken.

In den letzten Tagen war ich auch nicht untätig, so habe ich nach den diversen Möglichkeiten gesucht
und bei Alibaba aus China einige Drehzahlregler für Generatoren gefunden.
Kosten so ca. € 60,- aufwärts.
Der Preis schreckt mich da nicht ab, aber von allen die ich angeschrieben habe,
hab ich nicht eine einzige Antwort bekommen.
Und eine Handvoll von den Dingern zu bestellen auf gut Glück, das wollte ich nicht,
zurückschicken ist ja bei Amazon doch deutlich einfacher.

So, jetzt kennt ihr mein "Geheimnis".
Danke schon mal an Alle die mir mit ihren Ideen weiterhelfen können.

Petra P.
aus der nahen Umgebung von Wien
8)

Hi
Je nach dem, wie oft die Erkennung stattfindet, gibt's zwei Arten der Drehzahl-Messung:

  • Impulse für eine bestimmte Zeit zählen
    Hat den Nachteil, daß man schon einige Impulse braucht, um eine Aussage treffen zu können, was nun wirklich los ist.
    Bei wenigen Impulsen muß ich so sehr lange zählen - in der Zeit schwankt die Drehzahl, da ich nicht drauf reagiere, sondern noch zähle.
    Je langsamer die Impulse kommen, desto schlechter ist dieser Weg.
    Bei sehr schnellen Impulsen kann ich 100ms zählen und sehe trotzdem eine recht genaue Drehzahl (eben in 1/10tel Sekunden bei 100ms), wenn ich hier EINS mehr oder weniger zähle, sind Das aber immerhin 10 Umdrehungen die Sekunde/60 Umdrehungen die Minute - genauer wird Das nicht.

-Zeit zwischen den Impulsen messen
Daraus lässt sich ebenfalls die Drehzahl berechnen.
Wenn ich zwischen zwei Impulsen eine Sekunde habe, werden's wohl ~ 60 Impulse die Minute werden.
Wenn's aber eine ms mehr oder weniger wird sind's 0,06 Umdrehungen pro Minute mehr/weniger - Das kann man schon recht genau berechnen.
Bei schnellen Signalen ist zwischen den Signalen recht wenig 'Zeit', somit hat man hier weniger 'Auflösung' - vorzugsweise für langsame Signale.

Welcher Weg bei Dir besser ist, wirst Du durchrechnen oder versuchen müssen - Du hast ja auch nicht unendlich Zeit auf die Drehzahl-Änderung zu reagieren.

Wie ich Dir schon oben schrieb, wird Dich P-I-D interessieren - Das ist ein Regeler, Der die Differenz auf Null ausregeln und möglichst schnell auf Soll kommen kann - die Einstellung ist dort etwas pienzig, aber einen Tod muß man sterben.
Der bekommt auch Deine erfasste IST-Drehzahl vorgesetzt und entscheidet, was das Servo nun machen soll.

Wie ebenfalls geschrieben konnten Das schon die alten Dampfmaschinen rein mechanisch - Du könntest Dir somit die anfällige Elektronik (in der Nähe eines Otto-Motor wirst Du Störungen durch die Zündung bekommen) und das Servo durch 'wenn es noch da ist, funktioniert es'-Technik ersetzen.

Aber, da Du ja hier gelandet bist, habe ich auch NIchts gegen ein per Arduino gesteuertes Servo zur Regelung der Drehzahl eines Verbrenner-Motor - im Gegenteil, klingt interessant.

MfG

PetraPAUL:
... in der IT tätig seit vielen Jahren,
leider wenig Erfahrung mit C+ und deren Derivaten.

Hier ist C++, also OOP möglich, prozedural geht aber auch.

Möglicherweise fällt Dir der Umstieg leichter, wenn Du Dir den Arduino als Server vorstellst, weshalb die Schleife loop möglichst blockadearm, durchlaufen werden möchte. Alle Beispiele, die mit delay funktionieren, darfst Du dann auf millis umschreiben, Deine erste Herausforderung bezogen auf die Software.

Mein erstes Set kam von Funduino mit ordentlicher Qualität. Allerdings hatte ich auch keinen konkreten Plan. Dir würde ich ein eher gezieltes Vorgehen empfehlen. Ein originaler UNO unterstützt dieses Forum und ist daher eine gute Anschaffung. Eine Bastelkiste mit Widerständen und Kabeln, LEDs, ein Steckbrett, ein Labornetzteil, ein Multimeter und ggf. ein Logicanalyser darf ich bei so einem Vorhaben voraussetzen, oder?

Ein StepDown von 12V auf 5V könnte sinnvoll sein.

Zu Einkaufsmöglichkeiten in Wien kann ich nichts sagen, ich war schon mal mit dem Nachtzug im Schlafwagen da, hatte ich gewonnen. Als Bastler kaufe ich auch bei aliexpress einen Mega2560 pro, muß man aber wegen Zoll und dergleichen aufpassen. Den kann man ohne Header schön löten, gut für stationäre Aufbauten. Bei Platzmangel darf es auch der Nano strong sein.

Ein Händler zun Fragen und in den Hintern treten habe ich leider nicht in der Nahe, könnte aber auch eine gute Wahl sein. Hängt stark vom Typen hinter dem Tresen ab.

Die eigentliche Problematik dürfte aber die Sensorik sein, denn ein Zündfunke zusammen mit Elektronik dürfte immer zu Störungen führen.

Möglicherweise möchtest Du auch was anzeigen? Ein 20X4 Zeichen LCD mit I2C-Schnittstelle könnte eine gute und einfach zu programmierende Wahl sein.

Ob ein Feedback Servo Dir im Projekt nützt, kann ich nicht so richtig einschätzen, würde Dir aber die Position des Potis als Spannungswert liefern. Der Arduino kann das auswerten und in eine Position des Servos umrechnen. Könnte mit auf die Einkaufsliste.

Wenn Du hier im Forum nach "agmue anleitung" suchst, stößt Du auf hoffentlich hilfreiche Texte. Fragen sind erlaubt :wink:

Alle Links dienen nur der Illustration und sind keine Kaufempfehlungen!

Hallo,

also meinst du mit den Begriffen Pumpe und Motor ein und dasselbe? Dann rede bitte nur von Motor. Nicht noch zusätzlich von Pumpe. Das verwirrt nur.

Ich fasse zusammen. Du möchtest die Drehzahl vom Motor erfassen und dann mittels eines Servos den Vergaser des Motors regeln. Das wars? Wenn ja, dann brauchst du kein Starterset. Arduino Uno, Hallsensor ein, zwei Magneten, passenden Servo für die Drosselklappe, der muss gegen die Feder arbeiten können. Je länger der Servoarm umso weniger Kraft.

Dann erstmal paar Bsp. der IDE durchgehen und verstehen. Sich mit millis vertraut machen. Dann kannste dich erstmal mit der Drehzahlerfassung beschäftigen. Danach würde ich vorschlagen sich getrennt mit dem Servo zubefassen. Mit Poti das Servo regeln. Wenn alles verstanden ist überlegst du dir wie du nun dein Programm aufbaust für die Vergasersteuerung.

wenn Honda - Motor dann gehe ich mal von einem 4Takter Benzin-Motor aus (konkreten Produktlink hast du leider nicht gesetzt). Also sollte eine Drehzahlmessung direkt vom Unterbrecher bzw. Zündspule möglich sein.

Starker, zuverlässiger Servo aus dem Modellbau der das Gas betätigt, Drehzahl direkt von der Motor-Elektrik messen, ziemlich sicher mit einem Spannungsteiler, evtl. mit einem Optokoppler vom Motor-Stromkreis trennen.

Projet scheint mir Überschaubar.

Wenn du in der IT tätig bist, dann soltest du mit den mitgebrachten Beispielen aus der IDE gut zurechtkommen.
Beispiel für Servo-Ansteuerung ist auch dabei.

postmaster-ino:
wirst Du Dir ggf. PID-Regler anschauen wollen, gibt's auch als Lib und für Arduino.

Nicht so trivial wie eine Heizungsregelung, aber auch machbar.
Aber mach mindestens 4 Projekte draus:

  • Drehzahlmessung
  • Ansteuerung Gashebel
  • Regelung
  • Stabiler Aufbau

Die Mechanik dazu ist auf jeden Fall die leichteste Übung.

Seh' ich anders: Die ersten 3 Teile sind nur Spaß, ob es tatsächlich brauchbar wird, hängt am mechanischen Aufbau. Viel Spaß und Erfolg :slight_smile:

Verbrenner sind meist nicht schön zu regeln.
Liegt an ihren Eigenheiten.

Aber grundsätzlich dürfte das möglich sein.

Naives Konzept:
Die Servo Lib, klar für den Servo.
pulseIn() für die Zeit zwischen 2 Zündungen.
Die PID Lib, wenn es denn nötig ist.

Und fertig ist das Gebräu.

Ein geübter könnte das in ca einem Tag zum laufen bekommen.
Wenn du erst noch ein paar C++ Grundlagen lernen musst, kann es etwas länger dauern.
Aber die jeweiligen Beispiel geben schon viel her und lassen sich recht leicht kombinieren.

Testen würde ich mit einem UNO.
Das fertige Dingen mit einem Pro Mini bauen.
Fest verlötet.
Auf jeden Fall, einen mit Resonator, oder besser einen Eigenbau, ganz ohne externen Oszillator.
Denn ein Quarz wird schnell tot geschüttelt.

Hallo Leute,

erstmal danke für die super Infos.
Das ist jetzt so viel, dass ich das erstmal sortieren muss.

Noch ein paar Details;
was für ein Honda Motor das ist weiß ich nicht genau.
Nur so viel, 12 Volt Lichtmaschine und Batterie, Elektrostarter, 2 Zylinder, irgendwas um die 10 PS,
Vergaser. Antrieb per Riemenscheibe.

Es gibt einen Anschluss für einen Drehzahlmesser, zu dem Motor gibt es ein Armaturenbrett.
Der Motor läuft mit Drehzahlen von ca. 700 bis runde 4000, also genug Impulse.
Der Ansatz 4 Projekte daraus zu machen gefällt mir.

Noch was zu mir; von IDE habe ich keine Ahnung, "C" ist gefühlt 1000 Jahre her.
Meine IT ist die Infrastruktur, und Administration. Server, Routing, Internet, etc...
Früher auch HTML. Ich hoffe ich bin noch lernfähig, mal sehen wo das hingeht.
Auf jeden Fall werde ich hier weiterlesen und weiterschreiben, euch informieren.

Das erste ist die Bestellung dieses Teiles, es sei denn ihr habt etwas anderes, besseres für mich.

Danke, bis dann
Petra P.

Das erste ist die Bestellung dieses Teiles, es sei denn ihr habt etwas anderes, besseres für mich.
ARDUINO UNO REV 3: Amazon.de: Computer & Zubehör

Ja, ist ein orginaler Arduino. Ich habe andere Lieblingsverkäufer, weil man da einen Ansprechpartner hat; Amazon ist so anonym.

Eine Liste findest Du: Authorized Distributors

Grüße Uwe

Meine IT ist die Infrastruktur, und Administration. Server, Routing, Internet, etc…

Deine Aufgabe kann locker mit einem “normalen” Arduino ( 8bit Controller auf atmega328 Basis = mit welchem Arduino soll ich anfangen) gelöst werden.
Dieser hat insgesamt 2048 byte RAM ( 0,002 MB ), was völlig ausreicht. Aber natürlich überhaupt nichts mit deinem Beruf zu tun hat.

Hallo Uwe,
wenn der offizielle Arduino-Verkäufer in Österreich electronics.semaf.at/arduino keinen Arduino anbietet, kann man da schlecht kaufen.

Ich hätte ja in D Funduino vorgeschlagen, aber Wien ist halt arg weit weg von Nordhorn. Versand 7,90 €!

Sonst bin ich auch Kunde bei EXPTECH, aber auch weit weg in Saarbrücken. Versand 16,66 €!

Bei KomputerDe sind wir dann schon bei einem DFRduino UNO R3, aber günstiger. Versand 6,00 €

Bei Watterott ist der Wattuino Uno auch nicht auf Lager.

Unbekannt war mir bislang Paradisetronic aus Berlin auch mit einem NoName UNO für 8,50 € bei 6,00 € Versand.

Da muß man halt auf Amazon vertrauen :frowning: :wink:

Ich halte den UNO für OK.
Es ist DAS Einstiegsmodell, in die Arduino Welt.

Vielleicht nicht die billigste Variante, aber darauf muss ja auch nicht der Fokus liegen.

Hallo,

für ein Original und in Österreich wäre vielleicht Reichelt nicht falsch. (Versand schon einkonfiguriert)

Ich weiß nicht ob in Österreich auch paydirekt verfügbar ist. Dann sollte der Versand bei Reichelt kostenfrei sein, zumindenstens in Deutschland.