Hallo, ich habe vor in nächster Zeit mit Vektorgrafik auf einem Analog-Oszi zu spielen. Kennt dazu jemand nach welchem Algorithmus man Grafiken wie diese erzeugen kann? (ganz nach unten scrollen) http://forum.arcadecontrols.com/index.php?topic=68094.40 Hat jemand andere Quellen für andere coole Grafiken, egal ob abstrakt oder nicht? (Bin selber nicht künstlerisch begabt, selber zeichnen ist also nicht drin) Vor Jahren z.B. hatten wir einen Arb-Generator in der Firma der - an ein Oszi angeschlossen - eine Manga-Figur als Testbild hatte. Viele Grüße,
Schau mal unter Lissajous Figuren nach. Evtl mit variabler Phase/Frequenz.
Ein schönes Beispiel, das hier im Forum glaube ich schon genannt wurde: http://www.youtube.com/watch?v=J1ylMJwfLmM Die Bildinfo steckt wirklich in der Musik :)
:
Bearbeitet durch User
> Schau mal unter Lissajous Figuren nach Das was ich darunter kenne sieht nicht so aus. > Ein schönes Beispiel Nett, aber soweit ich sehe ohne Quellen bzw. Algorithmen zur Erzeugung?
Was ist denn jetzt dein Verständnisproblem? Wenn du die zwei Eingänge eines Oszilloskops im XY-Betrieb hast, besorgt der X-Eingang die Auslenkung in horizontaler Richtung, der Y-Eingang die Auslenkung in vertikaler Richtung. Wie beim XY-Diagramm in der Tabellenkalkulation. Wenn du GARKEINE Vorstellungen hast, was soll der Aufwand?
Lorenz-Attraktor
1 | float x,y,z,xn,ynn,zn,r,b,s,dt; |
2 | |
3 | //Startkoordinaten
|
4 | x=10.0f; |
5 | y=20.0f; |
6 | z=30.0f; |
7 | |
8 | //Simulationsparameter
|
9 | r=28.0f; |
10 | b=8.0/3.0f; |
11 | s=10.0f; |
12 | dt=0.01f; |
13 | |
14 | while(1) |
15 | {
|
16 | xn = x + dt * s * (y - x); |
17 | ynn = y + dt * (x * (r - z) - y); |
18 | zn = z + dt * (x * y - b * z ); |
19 | |
20 | x=xn;y=ynn;z=zn; |
21 | |
22 | DAC_SetChannel1Data(DAC_Align_12b_R,(int16_t)(x*50.0f)+2048); |
23 | DAC_SetChannel2Data(DAC_Align_12b_R,(int16_t)(y*50.0f)+2048); |
24 | |
25 | }
|
Läuft mit 1.6 MHz Updaterate auf STM32F4 (Fliesskomma single cycle in Hardware), mit einer 8-Bit-Krücke wird das nichts. Ich habs auf einem STM32F4-Discovery getestet.
Martin schrieb: > Lorenz-Attraktor Funktioniert super auch in Octave
1 | close all |
2 | clear all |
3 | x=10; |
4 | y=20; |
5 | z=30; |
6 | r=28; |
7 | b=8/3; |
8 | s=10; |
9 | dt=0.01; |
10 | |
11 | for i=1:1e6 |
12 | xn(i) = x + dt * s * (y - x); |
13 | yn(i) = y + dt * (x * (r - z) - y); |
14 | zn(i) = z + dt * (x * y - b * z ); |
15 | x=xn(i);y=yn(i);z=zn(i); |
16 | i=i+1; |
17 | end
|
18 | |
19 | plot3(xn,yn,zn); |
asd schrieb: > ich habe vor in nächster Zeit mit Vektorgrafik auf einem Analog-Oszi zu > spielen. Kennt dazu jemand nach welchem Algorithmus man Grafiken wie > diese erzeugen kann? (ganz nach unten scrollen) > http://forum.arcadecontrols.com/index.php?topic=68094.40 Das ist doch langweilig. Wenn schon, dann doch gleich sowas: http://www.jogis-roehrenbude.de/Leserbriefe/Scope-Clock/setup-front.jpg Gruss Harald
Harald Wilhelms schrieb: > Das ist doch langweilig. Wenn schon, dann doch gleich sowas: > http://www.jogis-roehrenbude.de/Leserbriefe/Scope-Clock/setup-front.jpg Ich kombiniere beides. Die Oszi-Uhr, die nebenbei die ganzen hässlichen Spannungen für die Röhre erzeugt, und ein STM32F4-Board, das Chaos rechnet. Ein Umschalter dazwischen und beides ist nutzbar.
Ein weiterer Kandidat wäre der Chua-Oszillator. http://jamesnsears.com/archive/ecechua.htm http://de.wikipedia.org/wiki/Chua%E2%80%99s_Circuit Übrigens lässt sich auch der Lorenz-Attraktor analog aufbauen: http://frank.harvard.edu/~paulh/misc/lorenz.htm
Rössler-Attraktor: http://www.eevblog.com/forum/projects/t20347/ Video analoger Lorenz-Attraktor: http://www.eevblog.com/forum/chat/analog-integrator-lorenz-attractor/msg142977/#msg142977
Folgende Funktion stimmt zwar auch nicht ganz mit der Vorlage überein, passt aber schon recht gut:
wobei
Mit was hast du das Bild erzeugt? Ich suche schon des längeren ein Plot-Programm mit Helligkeitsabstufungen, eben wie bei Bildröhren. (je länger ein Punkt an einer Stelle verweilt, desto heller ist er)
Lukas K. schrieb: > Mit was hast du das Bild erzeugt? Mit Gnuplot 4.7, zu der es allerdings noch kein offizielles Release gibt. Diese Version erlaubt es erstmals, für die Farbe der zu plottenden Kurve einen 4-Byte-Wert anzugeben, bei dem das höchstwertige Byte der Alpha-Wert ist. Um das osziähliche Verhalten zu erreichen, habe ich die Kurve als Einzelpunkte (dots) mit hoher Sampledichte (2E6) und mit hohem Alpha-Wert (0xf4) plotten lassen:
1 | set samples 2E6 |
2 | plot x(t), y(t) with dots linecolor rgb "#f477ff77" |
Yalu X. schrieb: > 4-Byte-Wert anzugeben, bei dem das höchstwertige Byte der > Alpha-Wert ist. Cool, danke für den Tipp! Damit hat Gnuplot Matlab endlich wieder überholt.
Yalu X. schrieb: > Mit Gnuplot 4.7, zu der es allerdings noch kein offizielles Release > gibt. Kannst du vielleicht dein komplettes GNUplot 4.7 Beispiel posten? Sieht ja wirklich herrlich aus dein erzeugter Plot.
Perfekt, danke. Ich konnte dein Beispiel reproduzieren. Eine tolle Möglichkeit, die da geschaffen wurde. Hoffentlich findet sich diese Option bald auch in der neusten Version von Octave wieder.
Martin schrieb: > Lorenz-Attraktor > Läuft mit 1.6 MHz Updaterate auf STM32F4 (Fliesskomma single cycle in > Hardware), mit einer 8-Bit-Krücke wird das nichts. Natürlich wird das auch was mit einer sog. "8-Bit-Krücke". Nur den GANZ SCHLECHTEN Ingenieuren der Materialschlachtenbummlerklasse ist das nicht klar... Denn die sind nichtmal in der Lage, eine "so gut wie nötig"-Lösung auch nur zu definieren, geschweige denn, diese mit schmalen Resourcen funktionsfähig umzusetzen. 1,6MHz Update-Rate, nur um auf einer CRT ein Bild zu erzeugen, dessen einziger Zweck ist, von Menschen angesehen zu werden. So blöd kann man doch garnicht sein, oder geht das doch?! Scheinbar schon...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.