Forum: Analoge Elektronik und Schaltungstechnik Spannung und Strom in Abhängigkeit eines variablen Widerstands und limitierter Leistung


von Nano (Gast)


Angehängte Dateien:

Lesenswert?

Ich habe mir mal zwei 3d Plots erstellt, die die Spannung bzw. den Strom 
in Abhängigkeit eines variablen Widerstands aufzeigen, dessen 
Verlustleistung maximal 5 W und dessen Maximalspannung maximal 1000 V 
betragen darf.

Das wollte ich euch nicht vorenthalten, vielleicht möchte so etwas auch 
mal jemand ansehen, daher poste ich das hier mal.


Wer sich das in Gnuplot direkt selber ansehen möchte, der kann sich den 
Code weiter unten in eine Textdatei kopieren und dann diese mit Gnuplot 
mit dem Befehl "Load "textdatei"" laden.

Wer eine andere Darstellung möchte, der kann den Eintrag "set pm3d at b"
entfernen oder einfach in gnuplot dies mit "set pm3d" überschreiben und 
dann mit einem "replot" neu ausgeben.

Wer das ganze an einem Widerstand sehen möchte, der eine höhere Leistung 
verträgt, der muss einfach die z Achse mit dem Befehl "set zrange[0:5]"
ändern. Die 5 stehen für 5 W, wer 9 W haben will, trägt einfach eine 9 
ein.


Ich finde auf jeden Fall, das ist recht Interessant, das ganze mal im 
Verhältnis zu sehen um sich das grafisch sehr schön vorstellen zu 
können.
Leider ist so ein normaler 2d Bildschirm in der Darstellung von 
dreidimensionalen Darstellungen begrenzt, so dass man von dem ganzen nur 
einen 3d Eindruck erhält, wenn man die Perspektive mit der Maus 
verändert, aber vielleicht hat jemand einen 3d Monitor oder einen VR 
Helm it dem man das besser darstellen kann, sofern das von gnuplot 
überhaupt unterstütz wird.

Ob gnuplot auch Anaglyphenbilder für rot-grün bzw. rot-blau Brillen 
erstellen kann, weiß ich nicht. Es wäre aber sicher interessant, falls 
das gehen sollte.



Code für das Spannungsdiagramm:
1
#!/usr/bin/gnuplot -persist
2
#
3
#    
4
#      G N U P L O T
5
#      Version 5.0 patchlevel 3    last modified 2016-02-21 
6
#    
7
#      Copyright (C) 1986-1993, 1998, 2004, 2007-2016
8
#      Thomas Williams, Colin Kelley and many others
9
#    
10
#      gnuplot home:     http://www.gnuplot.info
11
#      faq, bugs, etc:   type "help FAQ"
12
#      immediate help:   type "help"  (plot window: hit 'h')
13
# set terminal qt 0 font "Sans,9"
14
# set output
15
unset clip points
16
set clip one
17
unset clip two
18
set bar 1.000000 front
19
set border 31 front lt black linewidth 1.000 dashtype solid
20
set zdata 
21
set ydata 
22
set xdata 
23
set y2data 
24
set x2data 
25
set boxwidth
26
set style fill  empty border
27
set style rectangle back fc  bgnd fillstyle   solid 1.00 border lt -1
28
set style circle radius graph 0.02, first 0.00000, 0.00000 
29
set style ellipse size graph 0.05, 0.03, first 0.00000 angle 0 units xy
30
set dummy x, y
31
set format x "% h" 
32
set format y "% h" 
33
set format x2 "% h" 
34
set format y2 "% h" 
35
set format z "% h" 
36
set format cb "% h" 
37
set format r "% h" 
38
set timefmt "%d/%m/%y,%H:%M"
39
set angles radians
40
set tics back
41
unset grid
42
set raxis
43
set style parallel front  lt black linewidth 2.000 dashtype solid
44
set key title "" center
45
set key inside right top vertical Right noreverse enhanced autotitle nobox
46
set key noinvert samplen 4 spacing 1 width 0 height 0 
47
set key maxcolumns 0 maxrows 0
48
set key noopaque
49
unset label
50
unset arrow
51
set style increment default
52
unset style line
53
unset style arrow
54
set style histogram clustered gap 2 title textcolor lt -1
55
unset object
56
set style textbox transparent margins  1.0,  1.0 border
57
unset logscale
58
set logscale y 10
59
set offsets 0, 0, 0, 0
60
set pointsize 1
61
set pointintervalbox 1
62
set encoding default
63
unset polar
64
unset parametric
65
unset decimalsign
66
set view 65, 327, 1, 1
67
set samples 100, 100
68
set isosamples 40, 40
69
set surface 
70
unset contour
71
set cntrlabel  format '%8.3g' font '' start 5 interval 20
72
set mapping cartesian
73
set datafile separator whitespace
74
unset hidden3d
75
set cntrparam order 4
76
set cntrparam linear
77
set cntrparam levels auto 5
78
set cntrparam points 5
79
set size ratio 0 1,1
80
set origin 0,0
81
set style data points
82
set style function lines
83
unset xzeroaxis
84
unset yzeroaxis
85
unset zzeroaxis
86
unset x2zeroaxis
87
unset y2zeroaxis
88
set xyplane relative 0.5
89
set tics scale  1, 0.5, 1, 1, 1
90
set mxtics default
91
set mytics default
92
set mztics default
93
set mx2tics default
94
set my2tics default
95
set mcbtics default
96
set mrtics default
97
set xtics border in scale 1,0.5 mirror norotate  autojustify
98
set xtics  norangelimit autofreq 
99
set ytics border in scale 1,0.5 mirror norotate  autojustify
100
set ytics  norangelimit autofreq 
101
set ztics border in scale 1,0.5 nomirror norotate  autojustify
102
set ztics  norangelimit autofreq 
103
unset x2tics
104
unset y2tics
105
set cbtics border in scale 1,0.5 mirror norotate  autojustify
106
set cbtics  norangelimit autofreq 
107
set rtics axis in scale 1,0.5 nomirror norotate  autojustify
108
set rtics  norangelimit autofreq 
109
unset paxis 1 tics
110
unset paxis 2 tics
111
unset paxis 3 tics
112
unset paxis 4 tics
113
unset paxis 5 tics
114
unset paxis 6 tics
115
unset paxis 7 tics
116
set title "" 
117
set title  font "" norotate
118
set timestamp bottom 
119
set timestamp "" 
120
set timestamp  font "" norotate
121
set rrange [ * : * ] noreverse nowriteback
122
set trange [ * : * ] noreverse nowriteback
123
set urange [ * : * ] noreverse nowriteback
124
set vrange [ * : * ] noreverse nowriteback
125
set xlabel "Spannung (V)" 
126
set xlabel  font "" textcolor lt -1 norotate
127
set x2label "" 
128
set x2label  font "" textcolor lt -1 norotate
129
set xrange [ 0.00000 : 1000.00000 ] noreverse nowriteback
130
set x2range [ * : * ] noreverse nowriteback
131
set ylabel "Widerstand (Ohm)" 
132
set ylabel  font "" textcolor lt -1 rotate by -270
133
set y2label "" 
134
set y2label  font "" textcolor lt -1 rotate by -270
135
set yrange [ 0.100000 : 250000. ] noreverse nowriteback
136
set y2range [ * : * ] noreverse nowriteback
137
set zlabel "Leistung (W)" 
138
set zlabel  font "" textcolor lt -1 norotate
139
set zrange [ 0.00000 : 5.00000 ] noreverse nowriteback
140
set cblabel "" 
141
set cblabel  font "" textcolor lt -1 rotate by -270
142
set cbrange [ * : * ] noreverse nowriteback
143
set paxis 1 range [ * : * ] noreverse nowriteback
144
set paxis 2 range [ * : * ] noreverse nowriteback
145
set paxis 3 range [ * : * ] noreverse nowriteback
146
set paxis 4 range [ * : * ] noreverse nowriteback
147
set paxis 5 range [ * : * ] noreverse nowriteback
148
set paxis 6 range [ * : * ] noreverse nowriteback
149
set paxis 7 range [ * : * ] noreverse nowriteback
150
set zero 1e-08
151
set lmargin  -1
152
set bmargin  -1
153
set rmargin  -1
154
set tmargin  -1
155
set locale "de_DE.UTF-8"
156
set pm3d implicit at s
157
set pm3d scansautomatic
158
set pm3d interpolate 1,1 flush begin noftriangles noborder corners2color mean
159
set palette positive nops_allcF maxcolors 0 gamma 1.5 color model RGB 
160
set palette rgbformulae 7, 5, 15
161
set colorbox default
162
set colorbox vertical origin screen 0.9, 0.2, 0 size screen 0.05, 0.6, 0 front bdefault
163
set style boxplot candles range  1.50 outliers pt 7 separation 1 labels auto unsorted
164
set loadpath 
165
set fontpath 
166
set psdir
167
set fit brief errorvariables nocovariancevariables errorscaling prescale nowrap v5
168
GNUTERM = "qt"
169
set pm3d at b
170
splot x*(x/y) title "Abhaengig von Spannung"
171
#    EOF

Code für das Stromdiagramm:
1
#!/usr/bin/gnuplot -persist
2
#
3
#    
4
#      G N U P L O T
5
#      Version 5.0 patchlevel 3    last modified 2016-02-21 
6
#    
7
#      Copyright (C) 1986-1993, 1998, 2004, 2007-2016
8
#      Thomas Williams, Colin Kelley and many others
9
#    
10
#      gnuplot home:     http://www.gnuplot.info
11
#      faq, bugs, etc:   type "help FAQ"
12
#      immediate help:   type "help"  (plot window: hit 'h')
13
# set terminal qt 0 font "Sans,9"
14
# set output
15
unset clip points
16
set clip one
17
unset clip two
18
set bar 1.000000 front
19
set border 31 front lt black linewidth 1.000 dashtype solid
20
set zdata 
21
set ydata 
22
set xdata 
23
set y2data 
24
set x2data 
25
set boxwidth
26
set style fill  empty border
27
set style rectangle back fc  bgnd fillstyle   solid 1.00 border lt -1
28
set style circle radius graph 0.02, first 0.00000, 0.00000 
29
set style ellipse size graph 0.05, 0.03, first 0.00000 angle 0 units xy
30
set dummy x, y
31
set format x "% h" 
32
set format y "% h" 
33
set format x2 "% h" 
34
set format y2 "% h" 
35
set format z "% h" 
36
set format cb "% h" 
37
set format r "% h" 
38
set timefmt "%d/%m/%y,%H:%M"
39
set angles radians
40
set tics back
41
unset grid
42
set raxis
43
set style parallel front  lt black linewidth 2.000 dashtype solid
44
set key title "" center
45
set key inside right top vertical Right noreverse enhanced autotitle nobox
46
set key noinvert samplen 4 spacing 1 width 0 height 0 
47
set key maxcolumns 0 maxrows 0
48
set key noopaque
49
unset label
50
unset arrow
51
set style increment default
52
unset style line
53
unset style arrow
54
set style histogram clustered gap 2 title textcolor lt -1
55
unset object
56
set style textbox transparent margins  1.0,  1.0 border
57
unset logscale
58
set logscale y 10
59
set offsets 0, 0, 0, 0
60
set pointsize 1
61
set pointintervalbox 1
62
set encoding default
63
unset polar
64
unset parametric
65
unset decimalsign
66
set view 65, 327, 1, 1
67
set samples 100, 100
68
set isosamples 40, 40
69
set surface 
70
unset contour
71
set cntrlabel  format '%8.3g' font '' start 5 interval 20
72
set mapping cartesian
73
set datafile separator whitespace
74
unset hidden3d
75
set cntrparam order 4
76
set cntrparam linear
77
set cntrparam levels auto 5
78
set cntrparam points 5
79
set size ratio 0 1,1
80
set origin 0,0
81
set style data points
82
set style function lines
83
unset xzeroaxis
84
unset yzeroaxis
85
unset zzeroaxis
86
unset x2zeroaxis
87
unset y2zeroaxis
88
set xyplane relative 0.5
89
set tics scale  1, 0.5, 1, 1, 1
90
set mxtics default
91
set mytics default
92
set mztics default
93
set mx2tics default
94
set my2tics default
95
set mcbtics default
96
set mrtics default
97
set xtics border in scale 1,0.5 mirror norotate  autojustify
98
set xtics  norangelimit autofreq 
99
set ytics border in scale 1,0.5 mirror norotate  autojustify
100
set ytics  norangelimit autofreq 
101
set ztics border in scale 1,0.5 nomirror norotate  autojustify
102
set ztics  norangelimit autofreq 
103
unset x2tics
104
unset y2tics
105
set cbtics border in scale 1,0.5 mirror norotate  autojustify
106
set cbtics  norangelimit autofreq 
107
set rtics axis in scale 1,0.5 nomirror norotate  autojustify
108
set rtics  norangelimit autofreq 
109
unset paxis 1 tics
110
unset paxis 2 tics
111
unset paxis 3 tics
112
unset paxis 4 tics
113
unset paxis 5 tics
114
unset paxis 6 tics
115
unset paxis 7 tics
116
set title "" 
117
set title  font "" norotate
118
set timestamp bottom 
119
set timestamp "" 
120
set timestamp  font "" norotate
121
set rrange [ * : * ] noreverse nowriteback
122
set trange [ * : * ] noreverse nowriteback
123
set urange [ * : * ] noreverse nowriteback
124
set vrange [ * : * ] noreverse nowriteback
125
set xlabel "Strom (A)" 
126
set xlabel  font "" textcolor lt -1 norotate
127
set x2label "" 
128
set x2label  font "" textcolor lt -1 norotate
129
set xrange [ 0.00000 : 5.00000 ] noreverse nowriteback
130
set x2range [ * : * ] noreverse nowriteback
131
set ylabel "Widerstand (Ohm)" 
132
set ylabel  font "" textcolor lt -1 rotate by -270
133
set y2label "" 
134
set y2label  font "" textcolor lt -1 rotate by -270
135
set yrange [ 0.100000 : 250000. ] noreverse nowriteback
136
set y2range [ * : * ] noreverse nowriteback
137
set zlabel "Leistung (W)" 
138
set zlabel  font "" textcolor lt -1 norotate
139
set zrange [ 0.00000 : 5.00000 ] noreverse nowriteback
140
set cblabel "" 
141
set cblabel  font "" textcolor lt -1 rotate by -270
142
set cbrange [ * : * ] noreverse nowriteback
143
set paxis 1 range [ * : * ] noreverse nowriteback
144
set paxis 2 range [ * : * ] noreverse nowriteback
145
set paxis 3 range [ * : * ] noreverse nowriteback
146
set paxis 4 range [ * : * ] noreverse nowriteback
147
set paxis 5 range [ * : * ] noreverse nowriteback
148
set paxis 6 range [ * : * ] noreverse nowriteback
149
set paxis 7 range [ * : * ] noreverse nowriteback
150
set zero 1e-08
151
set lmargin  -1
152
set bmargin  -1
153
set rmargin  -1
154
set tmargin  -1
155
set locale "de_DE.UTF-8"
156
set pm3d implicit at s
157
set pm3d scansautomatic
158
set pm3d interpolate 1,1 flush begin noftriangles noborder corners2color mean
159
set palette positive nops_allcF maxcolors 0 gamma 1.5 color model RGB 
160
set palette rgbformulae 7, 5, 15
161
set colorbox default
162
set colorbox vertical origin screen 0.9, 0.2, 0 size screen 0.05, 0.6, 0 front bdefault
163
set style boxplot candles range  1.50 outliers pt 7 separation 1 labels auto unsorted
164
set loadpath 
165
set fontpath 
166
set psdir
167
set fit brief errorvariables nocovariancevariables errorscaling prescale nowrap v5
168
GNUTERM = "qt"
169
set pm3d at b
170
splot x**2*y title "Abaengig von Strom"
171
#    EOF

von Patrick J. (ho-bit-hun-ter)


Lesenswert?

Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

von BobDylan (Gast)


Lesenswert?

Nano schrieb:
> Ich habe mir mal zwei 3d Plots erstellt, die die Spannung bzw. den Strom
> in Abhängigkeit eines variablen Widerstands aufzeigen, dessen
> Verlustleistung maximal 5 W und dessen Maximalspannung maximal 1000 V
> betragen darf.

Ja, saumäßig interessant! Jetzt weiß ich sogar in 3D, dass ein Poti für 
5W und Vmax 1000V nicht kaufbar ist. Wohl noch nicht mal in Schina. 
(Oder doch..? Man weiß es nicht...)

Aber hübsch sind die Bilder. Ohne Frage. Sogar in 2D. Überflüssig 
allerdings auch. Und das sogar in 1D.

Grüßerlein.

von Joe F. (easylife)


Lesenswert?

LMAO.
2000 Zeile Code für das Ohm'sche Gesetz. Wenn das keine Würdigung ist.

von Mod (Gast)


Lesenswert?

Und jetzt noch die Temperaturdrift mit Abbilden :-)

von Mani W. (e-doc)


Lesenswert?

Wer braucht so etwas?

Als Wandbild für das Technikerklo vielleicht...

Was ist der Nutzen für das tägliche Leben?


URI hat es schon geahnt - es ist alles zu kompliziert...

von Yalu X. (yalu) (Moderator)


Lesenswert?

Joe F. schrieb:
> LMAO.
> 2000 Zeile Code für das Ohm'sche Gesetz. Wenn das keine Würdigung ist.

Solche Monster kommen heraus, wenn man die Plots mit "save" speichert,
da Gnuplot dann sämtliche Parameter (auch diejenigen, die ihren
Defaultwert beibehalten) in die Datei schreibt. Beschränkt man sich auf
das, was man tatsächlich geändert, werden die Skripte deutlich kürzer:

Leistung(Widerstand, Spannung):
1
set xlabel "Spannung (V)" 
2
set xrange [0:1e3]
3
set ylabel "Widerstand (Ohm)" 
4
set yrange [0.1:25e4]
5
set logscale y
6
set zlabel "Leistung (W)" 
7
set zrange [0:5]
8
set view 33,315
9
set isosamples 40
10
set pm3d at b
11
splot x*(x/y) title "Abhaengig von Spannung"


Leistung(Widerstand, Strom):
1
set xlabel "Strom (A)" 
2
set xrange [0:5]
3
set ylabel "Widerstand (Ohm)" 
4
set yrange [0.1:25e4]
5
set logscale y
6
set zlabel "Leistung (W)" 
7
set zrange [0:5]
8
set view 52,326
9
set isosamples 40
10
set pm3d at b
11
splot x**2*y title "Abhaengig von Strom"


Oder das erste Skript für Schreibfaule:
1
se xl"U/V" 
2
se xr[0:1e3]
3
se yl"R/Ω" 
4
se yr[.1:25e4]
5
se log y
6
se zl"P/W" 
7
se zr[0:5]
8
se vi 33,315
9
se is 40
10
se pm at b
11
sp x**2/y t"P(U,R)"

Mani W. schrieb:
> Wer braucht so etwas?

Gute Frage ;-)

von Nano (Gast)


Lesenswert?

BobDylan schrieb:
> Nano schrieb:
>> Ich habe mir mal zwei 3d Plots erstellt, die die Spannung bzw. den Strom
>> in Abhängigkeit eines variablen Widerstands aufzeigen, dessen
>> Verlustleistung maximal 5 W und dessen Maximalspannung maximal 1000 V
>> betragen darf.
>
> Ja, saumäßig interessant! Jetzt weiß ich sogar in 3D, dass ein Poti für
> 5W und Vmax 1000V nicht kaufbar ist. Wohl noch nicht mal in Schina.
> (Oder doch..? Man weiß es nicht...)

Naja, eigentlich habe ich mir am Anfang normale Widerstände angesehen, 
die gibt es der 5 W Klasse durchaus mit einer Maximalspannung von 1000 V 
und dann bin ich auf die Idee gekommen, das Diagramm noch vom Widerstand 
abhängig zu machen.

von Nano (Gast)


Lesenswert?

Patrick J. schrieb:
> Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Als Dateianhang gehen nur JPG und PNG, so steht es jedenfalls dran.
Ich bin auch davon ausgegangen, dass der Code mit Scrollbalken versehen 
wird, wenn er zu lange wird, dem war aber nicht so.

Eine Alternative wäre gewesen, wenn ich es auf Pastebin oder ähnliches 
ausgelagert hätte, aber da weiß man nie, wie viele Monate das dann noch 
verfügbar ist.

von Stefan F. (Gast)


Lesenswert?

> Als Dateianhang gehen nur JPG und PNG, so steht es jedenfalls dran.

Na dann gehe noch mal zum Deutsch-Unterricht. Ich zittiere:

"Bitte das JPG-Format nur für Fotos und Scans verwenden!"

Das heisst, das JPG Format soll man nur für Fotos und Scans verwenden, 
nicht für andere Dokumente.

"Zeichnungen und Screenshots im PNG- oder GIF-Format hochladen."

Das heisst, das man Zeichnungen und Screenshots im PNG oder GIF Format 
hochladen soll.

Bei beiden Sätzen geht es darum, daß man keinen Speicherplatz durch 
unnötig große Dateien wegen ungeeignetem Kompressionsalgorithmus 
verwenden soll.

Wo hast du jetzt gelesen, daß andere Dateiformate nicht zugelassen sind?

von Nano (Gast)


Lesenswert?

Stefan U. schrieb:
> Wo hast du jetzt gelesen, daß andere Dateiformate nicht zugelassen sind?

Davon gehe ich aus, wenn nur von Bilddateien geredet wird, txt Dateien 
nicht explizit erwähnt werden und ein Forum sicherlich nicht auch noch 
zur Virenschleuder werden will.
Aber es wäre sicherlich mal interessant zu versuchen, EXE und sonstigen 
Binärdateien mit Programmcode upzuloaden.

von Hp M. (nachtmix)


Lesenswert?

Stefan U. schrieb:
> Na dann gehe noch mal zum Deutsch-Unterricht. Ich zittiere:
>
> "Bitte das JPG-Format nur für Fotos und Scans verwenden!"

Wer sollte zum Deutschkurs gehen?

von Yalu X. (yalu) (Moderator)


Lesenswert?

Nano schrieb:
> Stefan U. schrieb:
>> Wo hast du jetzt gelesen, daß andere Dateiformate nicht zugelassen sind?
>
> Davon gehe ich aus, wenn nur von Bilddateien geredet wird, txt Dateien
> nicht explizit erwähnt werden

Selbstverständlich dürfen nicht nur Bilddateien angehängt werden. Bei
diesen werden aber oft ungeeignete Dateiformate verwendet, weswegen
hierzu ein expliziter Hinweis steht.

Längere Quellcodedateien sollten sogar als Anhang gepostet werden, da
dies die Übersichtlichkeit der Beiträge bewahrt und einen einfachen
Downloaden des Quellcodes ermöglicht.

> und ein Forum sicherlich nicht auch noch zur Virenschleuder werden
> will.

Bei reinen Text- (und damit auch Quellcodedateien) ist die Gefahr
unerkannter Viren nicht sehr groß.

von Stefan F. (Gast)


Lesenswert?

Wenn auf der Verpackung einer SD Karte steht, daß sie ca. 4.000 
Musikstücke oder 16.000 Fotos speicher kann, heisst das doch auch nicht, 
daß man darauf nichts anderes speichern kann.

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
Noch kein Account? Hier anmelden.