Hallo zusammen,
für ein Tuningprojekt mit Mikroprozessoranwendung an einem
Verbrennungsmotor, wird unter anderem eine Stroboskopapplikation
benötigt.
Getriggert von einem OT oder UT Hallsensor sollen Zeitflexibel
verzögerte Schaltimpulse mit flexibler Länge erzeugt werden.
Als erste Applikation soll die Stroboskopfunktion realisiert werden.
Rahmenbedingungen: Drehzahlen bis 20.000 U/min d.h. bis zu 333 Blitze /
Sekunde mit einer Blitzlänge > 0.0008 Millisekunden für eine Auflösung
von 1 Winkelgrad.
Die Stroboskop Applikation ist die einfachste, mit der diverse
Mechanische, Elektronische und Steuerungstechnische Themen aus dem
Vorhaben verifiziert werden können.
Frage: kann das mit Led Technik realisiert werden ? Welche Led's mit
geeigneter Schaltung sind hierfür erforderlich ? Kann das Vorhaben mit
PWM Funktionen oder mit extra hierfür zu erstellender Hard /
Softwareapplikation realisiert werden. Gibt es hierfür bereits
Musterlösungen, Teillösungen, Empfehlungen, auf denen man aufbauen Kann.
Bei voller Ausbaustufe sollen ein oder mehrere Sensorinformationen zu
Kennfelddaten führen, mit denen Aktoren angesteuert werden.
Schon jetzt vorab, vielen Dank für Eure fachliche Einschätzung und
Rückmeldung.
Gruß Klaus
Lerne einen beliebigen Mikrocontroller zu programmieren. Dafür ist
prinzipiell jeder geeignet.
Was die LEDs angeht: Ich denke, da sind nicht alle geeignet, aber es
sollte machbar sein. Da musst du mal selber Datenblätter durchsuchen. Am
ehesten wirst du wohl welche im Infrarot Bereich finden.
> Gibt es hierfür bereits Musterlösungen
Vermutlich nicht, das ist zu speziell.
> Kann das Vorhaben mit PWM Funktionen
Ja, ich würde das mit einem Timer machen.
Anfenger schrieb:> Schon jetzt vorab, vielen Dank für Eure fachliche Einschätzung und> Rückmeldung.
Das liest sich nach viel hingeschrieben und wenig nachgedacht. Wozu zur
Hölle sollen 333 Blitze/s gut sein? Was erwartet man sich davon? Welches
Auge soll da Unterschiede zeitlich auflösen? Was meint man, messen zu
wollen, wo nicht 33 oder gar 3 Blitze/s ausreichen?
Stefan ⛄ F. schrieb:> Lerne einen beliebigen Mikrocontroller zu programmieren. Dafür ist> prinzipiell jeder geeignet.Anfenger schrieb:> mit einer Blitzlänge > 0.0008 Millisekunden
Wenn die Dimension stimmt, 800ns, wird das eng mit dem µC.
Wenn ich aber 333 Hz durch 360° teile, komme ich auf 8,xx ms pro Grad,
da ist 1/10 Blitzdauer schon realistisch.
M.M.M schrieb:> Welches> Auge soll da Unterschiede zeitlich auflösen?
Keins. Das ist der Witz an einem Stroboskop: das Auge nimmt keine Folge
von Einzelblitzen wahr. Sondern es sieht ein stehendes Bild von einem
bewegten Bauteil. Wie viele Blitze pro Zeit benötigt werden und wie lang
ein einzelner Blitz werden darf richtet sich danach, wie schnell sich
die Welle dreht.
Anfenger schrieb:> Schon jetzt vorab, vielen Dank für Eure fachliche Einschätzung und> Rückmeldung.
Wie schon geschrieben wurde:
1) die Erzeugung der 800ns Steuersignale ist nicht ganz trivial.
Insbesondere dann nicht, wenn Sie noch mit einem externen Trigger
synchronisiert werden müssen (du willst die Welle ja in definierten
Winkelpositionen betrachten können). Mit einem schnellen µC der flexible
Counter/Timer hat (die z.B. auf deinen Trigger reagieren können) ist es
aber noch machbar.
2) die Treiberstufe für die LEDs wird für sub-µs Pulse auch nicht ganz
trivial. Ist aber ebenfalls noch machbar.
3) wenn dein Duty-Cycle nur 800ns/3ms = 0,026% beträgt, wird das
bisschen Licht, das von den LEDs kommt, dich enttäuschen. Du kannst bei
diesen geringen Duty-Cycles zwar eine gewisse Übersteuerung des
LED-Stroms einsetzen (also im Puls deutlich über den erlaubten
Dauerstrom gehen). Aber dieser Übersteuerung sind Grenzen gesetzt. Du
kannst z.B. nicht einfach das hundertfache des erlaubten Dauerstroms
verwenden (nicht mal annähernd). Und selbst wenn du es könntest, hättest
du immer noch nur 2,6% der normalen LED-Helligkeit. Damit wird die
gesamte erzeugte Lichtmenge sehr klein bleiben (bzw. du müsstest die
Zahl der verwendeten LEDs sehr hoch schrauben - dann hast du aber das
Licht über eine riesige Fläche verteilt und nicht auf deine Welle
konzentriert).
Speziell Punkt 3) ist der Grund, warum die meisten LED-Stroboskope kaum
was taugen. (Für einen Einsatz in einer dunklen Ecke mag es ausreichen).
Das sollte mit einer Serienschaltung von 3 Monoflops klappen. Der erste
bereitet nur die Impulse auf konstante (kurze) Länge auf. Der zweite
steuert die Verzögerung von Hallgeber zu Zündtrigger. Der dritte
Monoflop bestimmt die Leuchtdauer der LED.
Nun noch eine schnelle Endstufe mit Strombegrenzung und auf die LED.
Anfenger schrieb:> Welche Led's mit geeigneter Schaltung sind hierfür erforderlich
Moderne.
Superhelle, blau oder weiss, schaffen deine 800ns. Siehe
https://www.mikrocontroller.net/attachment/354428/ledtau.pdf
Aber wenn man nur 0.028% der Zeit leuchtet, muss es gnadenlos hell sein,
damit man im Schnitt überhaupt noch was sieht. Spezielle Blitzlicht-LEDs
sind in der Zeit massiv überbelastbar.
https://datasheet.octopart.com/LXCL-PWF3-Lumileds-datasheet-93105.pdf
Und bündeln per Linse nicht vergessen.
Als Elektronik tun es simple Monoflops, also Analogtechnik, die hat auch
nicht das Problem des Rasters von Digitaltechnik (ein 16MHz uC kann nur
Zeiten von 250ns, 500ns, 750ns, 1000ns erzeugen, keine 666 oder 300).
Hallo zusammen,
zuerst vielen Dank für Eure engagierten Rückmeldungen.
zu der Aussage:
MaWin schrieb:> ein 16MHz uC kann nur> Zeiten von 250ns, 500ns, 750ns, 1000ns erzeugen, keine 666 oder 300
da hätte ich noch gerne etwas Hintergrundwissen, um das zu verstehen.
Welche µC Plattform kann man die geplante Anwendung nutzen ?
Mir steht zur Zeit ein Raspi 3B+ zur verfügung, kann ich diesen für das
geplante Projekt nutzen um die Drehzahl zu messen, als auch die
Pulsvorgaben für das Stroboskop umzusetzen ?
Bin mir dabei schon im klaren, das ich hier wohl in Assembler
programmieren muss, wäre aber nicht das problem.
Hier Bitte ich um Eure Einschätzung.
Zum Stroboskopthema:
Für das Stroboskopthema gibt es bereits fertige Lösungen in der
Industrie beim Drucken, Stahlwalzen, Instandhaltung mit bis zu 300.000
FPM (Blitze / Min) teilweise mit Triggereingang, wobei offensichtlich
mehrere Led Blocks abwechselnd zum Einsatz kommen.
mit Xenon Blitzlampe ca. 850 Euro 30 - 125.000 FPM Testo Stroboskop
Datenblatt https://docs.rs-online.com/103f/0900766b8137b62a.pdf
mit Led Blitzlampe ca 640 Euro 30 - 300.000 FPM RHEINTACHO Stroboskop
RT-Strobe Pocket LEDhttps://www.svh24.de/rheintacho-stroboskop-rt-strobe-pocket-led-frequenzbereich-30-104054?cpkey=gYe-nwmEUwucIDgmrU5FLUX3vjYlH6yC1h9ajmDlaOk&adword=GoogleAds/DE/Smart_Shopping/Smartshopping_2020_Alle_Produkte&gclid=EAIaIQobChMIrv3dlqXo7AIVO4BQBh1yEAIKEAQYASABEgJR-PD_BwE
Die Lösungen übertreffen bei der Lichtstärke bei weitem die geplante
Anwendung, als auch das Budget.
Nach meiner Recherche kommen also Led COB's von LUMINUS LUXEON oder
Cree Xlamp in Frage
Interessanter Led Blitz mit Schaltungsvorschlag:
https://www.natur-foto-technik.de/LED-Blitz.html
Hierfür benötige ich allerdings eine flexible Spannungsquelle um die
richtige Spannung zu erproben wie seht Ihr die hierfür die Umsetzbarkeit
?
Kann man das erstmal auf einem Breadboard konzipieren ?
Gruß Klaus
Anfenger schrieb:> Mir steht zur Zeit ein Raspi 3B+ zur verfügung, kann ich diesen für das> geplante Projekt nutzen um die Drehzahl zu messen, als auch die> Pulsvorgaben für das Stroboskop umzusetzen
Eher gar nicht, du müsstest sein Linux runterschmeissen und ihn direkt
programmieren was mangels Dokumentation aber nicht geht. Immerhin
hättest du danach 0.01% von ihm ausgenutzt und 99.9% übrig.
Er taugt genau so wenig für Echtzeitaufgaben wie dein PC
>Drehzahlen bis 20.000 U/min d.h. bis zu 333 Blitze />Sekunde mit einer Blitzlänge > 0.0008 Millisekunden für eine Auflösung>von 1 Winkelgrad.
bei 360° : 333 Blitze/s => t.umdr = 3ms
bei 1° : t.wink = t.umdr/360 = 8,3 us
Hallo zusammen,
@MUCA: vielen Dank, ist mir doch glatt eine Stelle zuviel reingerutscht
:)
Aufgrund der vielen Zeitangaben, welche in den Beiträgen angegeben
wurden, basieren auf meinen Fehler im Eröffnungsbeitrag, mea culpa.
Als erste Applikation soll die Stroboskopfunktion realisiert werden.
Rahmenbedingungen: Drehzahlen bis 20.000 U/min d.h. bis zu 333 Blitze /
Sekunde mit einer Blitzlänge > 8 Mikrosekunden µs für eine Auflösung
von 1 Winkelgrad.
Für die exacte Ansteuerung ist also eine Timertick < 830 ns
Nanosekunden erforderlich (1/10 Grad bei 20.000 U/min)
Der kleinste Tastgrad ist also 8 µs / 3,008 ms für das Stroboskop.
zu der Aussage:
MaWin schrieb:> Problem des Rasters von Digitaltechnik (ein 16MHz uC kann nur> Zeiten von 250ns, 500ns, 750ns, 1000ns erzeugen, keine 666 oder 300).
da hätte ich noch gerne etwas Hintergrundwissen, um das zu verstehen.
Welche µC Plattform kann man die geplante Anwendung nutzen ?
Vom Raspi wurde mir ja bereits abgeraten.
Gruß Klaus
Prinzipiell kann das fast jeder uC machen (sofern nicht ein untaugliches
OS drüber läuft), besser noch wenn der ein paar Timer hat.
Grob, je mehr Hardware, desto schneller geht es.
Wenn es sein muss auch mit 10 oder 1 ns Auflösung.
MCUA schrieb:> Prinzipiell kann das fast jeder uC machen> Wenn es sein muss auch mit 10 oder 1 ns Auflösung.
1 ns entspricht 1 GHz. Die hat nicht fast jeder Mikrocontroller.
Ich hatte Anfangs auch "einen beliebigen Mikrocontroller" empfohlen,
hatte dabei aber nicht bedacht, wie kurz die Impulse sein sollen.
>1 ns entspricht 1 GHz. Die hat nicht fast jeder Mikrocontroller.
Nein, ein uC direkt nicht.
Aber wenn es sein muss, kann man das mit sep. Hardware auch erweitern.
(auch gibt es bei PIC24/33.. z.B. einige Typen mit rel. hoher Auflösung,
besser als bei AVR)
MCUA schrieb:> Prinzipiell kann das fast jeder uC machenStefan ⛄ F. schrieb:> 1 ns entspricht 1 GHz. Die hat nicht fast jeder Mikrocontroller.MCUA schrieb:> wenn es sein muss, kann man das mit sep. Hardware auch erweitern.
Ist jetzt nicht dein Ernst, oder?
Hallo zusammen,
vielen Dank für Eure Rückmeldungen.
Für meine Aufgabenstellung gibt es offensichtlich noch keinen passenden
µC.
Ich werde nun versuchen eine separate Schaltung für die
Umdrehungszeitmessung, als auch die Aktorimpulserzeugung mit einer
gemeinsamen schnellen Clock und Zählerbausteinen zu konzipieren.
Gibt es schnelle Zähler Ic's mit Takt und Triggereingang, wo das letzte
Zählergebnis abgreifbar ist, während eine aktuelle Zählung läuft.
Der µC hätte dann die Aufgabe, passend zur gemessenen Umdrehungszeit
die Wartezeit, als auch die Pulslänge für die Aktoren bereitszustellen,
das dürfte innerhalb von 3 Millisekunden machbar sein, oder schätze ich
das falsch ein ?
Mit der Bitte um Rückmeldung
Gruß Klaus
Anfenger schrieb:> Für meine Aufgabenstellung gibt es offensichtlich noch keinen passenden> µC.
das stimmt so nicht.
Deine ursprüngliche Forderung (800ns Pulse) war einigermaßen exotisch
und nicht ohne weiteres mit µC zu erfüllen.
Deine aktuelle Forderung ist 8µs Pulse. Freilaufend (ohne
Synchronisation mit der Welle) kann so ziemlich jeder µC erzeugen.
Das mit einem Trigger zu synchronisieren, so dass der Jitter der Pulse
im 10%-Bereich bleibt (also <=1µs), ist wiederum nicht ganz trivial.
Dein RaspPi ist dafür "zu mächtig": er wird sinnvollerweise mit einem
Betriebssystem betrieben. Das erleichtert viele Dinge, gleichzeitig kann
es aber unmöglich machen, Reaktionszeiten unter 1µs zu erreichen.
Aber es gibt natürlich schon andere µCs, die das hinkriegen. Ich hab
hier als Beispiel einen LPC1313 vor mir liegen (ein ARM Cortex M3). Wenn
ich den z.B. mit 50MHz laufen lasse, ist eine Timer-Auflösung von 20ns
möglich.
Ein hochauflösender Timer (32Bit) kann mit seinem Capture die
Periodendauer deiner Welle mit 20ns Auflösung messen (sehr viel feiner,
als du eigentlich brauchst). Der zweite hochauflösende Timer kann die
dazu synchrone PWM mit 8µS Pulsen liefern.
Wenn du ständig die Pulsposition nachregeln willst (weil die Welle nicht
perfekt gleichmäßig dreht), wird voraussichtlich letzlich die
Interrupt-Latenz bezüglich externem Trigger für den Jitter deiner
Pulspositon ausschlaggebend sein. Mit der oben genannten Konfiguration
solltest du mit geschickter Programmierung etwas in der Gegend von 20
Taktzyklen (400ns) erreichen können - wenig genug für eine Pulslänge von
8µs (für die zunächst genannten 800ns wäre es zu viel gewesen).
Anfenger schrieb:> Gibt es schnelle Zähler Ic's mit Takt und Triggereingang, wo das letzte> Zählergebnis abgreifbar ist, während eine aktuelle Zählung läuft.
Wenn es nicht per µC gemacht werden soll, könnte wahrscheinlich jedes
kleine FPGA das für dich erledigen. Oder fast jedes aktuelle CPLD
("aktuell" bedeutet hier nicht "neu entwickelt", sondern nur, dass es
noch gekauft werden kann).
Aber ich bleibe bei meiner Empfehlung: mach erst mal einen Testaufbau,
bei dem dir irgendein µC freilaufend 8µs-Pulse im 3ms-Raster erzeugt
(das kann praktisch jeder). Und schau dir damit an, ob dir die
Lichtstärke ausreicht. Deine Anforderungen sind inzwischen einen Faktor
10 entspannter gegenüber dem Eröffnungsbeitrag. Aber der Duty-Cycle ist
immer noch nur 0,2%. Und auch Blitz-LEDs sind nur begrenzt
übersteuerbar.
Als Led würde ich versuchen eine LE UW S2WP von OSRAM zu bekommen.
- 4 Chips
- Nennstrom pro Chip 1,4 A, max 5 A
in dieser Anwendung kann man den Chip voll ausreizen und mit 5A
bestromen.
Allerdings ist es nicht trivial einen kurzen Puls mit 5A und ca. 16V zu
erzeugen. Aber nicht unmöglich.
Die LED gibts bei Aliexpress. Es ist jedoch unklar welches Binning man
bekommt.
Anfenger schrieb:> Mit der Bitte um Rückmeldung
Ich habe mir ein wunderschönes Stroboskop gebaut, das im wesentlichen
auf einer ATxmega MCU basiert. Die einzelnen Funktionsblöcke sind:
1. Eine DDS-Synthese, die ein Sinus-Signal erzeugt und über den DAC der
MCU ausgibt.
2. Ein externes SC-Tiefpassfilter, dessen Takt entsprechend der Frequenz
des DDS-Signals nachgeführt wird, sorgt dafür, dass die Oberschwingungen
des Sinus hinreichend hochfrequent werden und so durch passive RC-Filter
eliminiert werden können.
3. Einer der beiden Komparatoren der MCU wandelt den Sinus in ein
Rechteck und erzeugt bei jeder steigenden Flanke ein Event-Signal.
4. Der Event triggert einen Timer, der sich im Single-Shot-Modus
befindet und so einen definierten Puls erzeugt. Bei 32 MHz wäre also die
kürzeste Pulsdauer 31µs. Realisiert habe ich jedoch nur min. 1% der
Signalperiode, was m.E. ausreichend ist.
5. Ein GPS-TCXO mit 16,368 MHz speist den Takteeingang der MCU. Deren
PLL verdoppelt den Takt und stellt ihn als Basis für die DDS-Synthese
und den Timer zur Verfügung.
Bilder des in zwei Versionen aufgebauten Geräts gibts auf meiner
Homepage:
https://www.dr-bosch.com/elektronik_messgeraete.php
Mit einem externen D-Flipflop (oder einer MCU mit XCL-Modul) und den
eventgesteuerten Zählern kann man auch wunderbar einen reziproken
Frequenzzähler bauen, dessen zeitkritische Operationen in Hardware durch
das Eventsystem der MCU gesteuert werden.
Merke, nicht immer ist eine extrem hoch-getaktete 32-Bit-CPU
erforderlich. Etwas Hirnschmalz und geniale Hardwarebaugruppen
funktionieren meist genauso gut :-)
Grüßle
Volker
P.S.: Es verwundert mich wirklich, dass sich hier kaum jemand mit dem
Eventsystem der xmega-, tiny0/1- oder mega0-Familien beschäftigt...
> Gibt es schnelle Zähler Ic's mit Takt und Triggereingang, wo das letzte> Zählergebnis abgreifbar ist, während eine aktuelle Zählung läuft.
Es gibt nichts, was mit TTL nicht geht. (PLD FPGA usw wurde auch
genannt, selbst das ist hier nichtmal nötig)
Du musst dir überlegen, wie fein die Auflösung sein muss.
(PIC24/33 auch schon genannt)
Schau dir mal das Datenblatt und Reference Manual vom STM32F334 an, denn
der hat einen besonders schnellen Timer:
"The high-resolution timer (HRTIM1) allows generating digital signals
with high-accuracy timings, such as PWM or phase-shifted pulses.
HRTIM1 timer is made of a digital kernel clocked at 144 MHz followed by
delay lines. Delay lines with closed loop control guarantee a 217 ps
resolution whatever the voltage, temperature or chip-to-chip
manufacturing process deviation. The high-resolution is available on the
10 outputs in all operating modes: variable duty cycle, variable
frequency, and constant ON time."
Hallo zusammen,
nochmals vielen Dank für Eure konstruktiven Beiträge.
Ich habe gelernt, das bei zu langer Belichtungszeit, das Objekt unscharf
wird, deshalb die begrenzung auf 8µs bei 1 Winkelgrad bei 20.000 U/min.
Bei kleineren Drehzahlen natürlich entsprechend länger.
Eine genaue untersuchung des Drehverhaltens der Welle, als auch weiterer
Komponenten ist mir wichtig, da ich davon ausgehe, das die Welle auch
bei höheren Drehzahlen unterschiedliche Drehwinkelgeschwindigkeiten
aufweisen kann.
Achim S. schrieb:> Deine Anforderungen sind inzwischen einen Faktor> 10 entspannter gegenüber dem Eröffnungsbeitrag. Aber der Duty-Cycle ist> immer noch nur 0,2%. Und auch Blitz-LEDs sind nur begrenzt> übersteuerbar.
Ich habe hierzu noch ein Verständnisproblem zum Duty-Cycle:
ich gehe davon aus, das die Bestromungszeit, von mir gewählte Pulszeit,
nicht ausreicht um die Led zum leuchten zu bringen.
Kann ich die Led auch mit einer kleinen Spannung vorsteuern, so das
diese noch kein oder wenig Licht emittiert und mit dem Spannungspuls den
benötigten Strom hinzuschalten ?
Mit der Bitte um Rückmeldung
Gruß Klaus
Anfenger schrieb:> Ich habe hierzu noch ein Verständnisproblem zum Duty-Cycle:> ich gehe davon aus, das die Bestromungszeit, von mir gewählte Pulszeit,> nicht ausreicht um die Led zum leuchten zu bringen.
Nein, das ist nicht das eigentliche Problem. Wenn du eine entsprechend
schnelle Stromquelle realisierst, dann leuchtet die LED auch schnell.
Das Problem ist, dass die gesamte Lichtenergie das Integral der
Lichtleistung über die Zeit ist. Und wenn die LED nur eine kurze Zeit an
ist, dann ist die gesamte verfügbare Lichtenergie auch gering.