Guten Tag,
ich möchte für einen Test eine virtuelle Glühbirne programmieren. Sie soll in Abhängigkeit von der Zeit aufleuchten.
Also die Helligkeit von 0% bis 100 % soll in umgekehrter Abhängig von der Zeit (von 1 Sekunde bis 10 Sekunden) stehen.
Der errechnete Wert soll ein Zähler sein mit dem ich die Helligkeit hochrechnen möchte indem er einen bestimmten Wert immer wieder addiert und so auf 100% kommt.
z.b in kleinen Schritten zählt, wenn die Zeit lang ist und großen Schritten bei kurzer Zeit.
Wie berechnet man so etwas? Habe schon bei Wikipedia nachgesehen, aber finde mich mit den ganzen Formeln nicht zurecht. In Mathe war ich nicht so gut ;-(
Danke, und Grüße Sven
Hallo Sven,
Helligkeit (wird linear immer dunkler) [%] h=100 … 0 in Abhängigkeit der Zeit [sec] t=0…T mit Anzahl Zeitschritten i=1…n.
Helligkeit zum beliebigen Zeitpunkt t h=(T-t)/T*100
Aufsummierung in Zeitschritten z=T/n mit h(0)=100 und i=1…n
h(i)= h(i-1)- 100/n mit Zeitpunkt t(i)=i*z
Gruß Klaus
Lieber Klaus,
vielen Dank für Deine schnelle Antwort. Aber wie wende ich das jetzt an?
Wenn die Lampe in 6 s von 0% auf 100% kommen soll, wie errechne ich da ganz
pragmatisch den Wert des Teilschritts.
Der ist natürlich abhängig von der Taktfrequenz des Computers, aber sagen wir
mal er macht 20 Schritte pro Sekunde.
Danach gebe ich 5 Sekunden oder 1 Sekunde in das Interface ein und die Lampe
soll automatisch die bestimmte Zeit leuchten.
Du musst Dir vorstellen es ist eine Abbildung von einer Glühbirne und darunter
ein Feld wo man die Zeit eintragen kann. Der Wert 0-100 regelt den Alphawert der
Abbildung.
Liebe Grüße Sven
Hallo Sven,
Helligkeit (wird linear immer dunkler) [%] h=100 … 0 in
Abhängigkeit der Zeit [sec] t=0…T mit Anzahl Zeitschritten
i=1…n.
Helligkeit zum beliebigen Zeitpunkt t h=(T-t)/T*100
Aufsummierung in Zeitschritten z=T/n mit h(0)=100 und i=1…n
h(i)= h(i-1)- 100/n mit Zeitpunkt t(i)=i*z
Gruß Klaus
Hi Sven,
ich würde gerne helfen, aber ich verstehe die Frage nicht wirklich. Kannst du vielleicht die offizielle Aufgabenstellung geben?
Viele Grüße
Hallo Sven,
meine Leistungen in Mathe waren auch immer sehr sehr bescheiden.
Vielleicht finde ich aber doch was brauchbares.
Ich möchtee nochmals nachhaken.
Meist Du?:
wenn man 10 Sekunden zur Verfügung hat so
zählt der Counter von 10 hinunter bis 1.
Bei jedem Schritt erhöht sich die Inttensität der Leuchtkraft um 10% bis diese dann wenn der Counter 1 erreicht hat auf 100% angestiegen ist.
(10 Schritte: 10,9,8,7,6,5,4,3,2,1)
Hat man nur 5 Sekunden zur Verfügung, so Beginnte der Counter von 5 zu zählen undd die Leutenintensität erhöht sich bei jedem Abwärtsschritt des Counters um 20%.
Wenn der Counter dann bei 1 angelagt ist, dann hat die Lichtintesität 100% erreicht (in 5 Schritten 5,4,3,2,1)
Meinst du daas so?
Lass von Dir hören ob ich alles richtig verstanden habe.
viele Grüße,
Martin
Hallo Sven,
kann Dir leider nicht weiterhelfen. Die Aufgabenstellung ist mir unklar.
Gruß Klaus.
Hallo,
entschuldigt bitte, ich habe die Lösung selbst gefunden. War ganz einfach.
Ich hoffe es funktioniert.
Das Problem war:
Ich habe ein Interface. Darauf sieht man eine Glühbirne. Die ist aus.
Darunter ist ein Feld. Da möchte ich einen Zeitwert in Sekunden eintragen.
Die Glühbirne soll dann in dieser Zeit Ihre maximale Helligkeit erreichen.
Z.B. trage ich den Wert 6 ein und drücke auf Start, dann soll die Glühbirne in 6
Sekunden ihre maximale Helligkeit erreichen und sich dann abschalten.
Sie beginnt langsam aufzuleuchten. Nach 3 Sekunden hat sie 50% der maximalen
Helligkeit erreicht nach 6 Sekunden ist sie auf 100%
Trage ich den Wert 1 ein dann läuft der Prozess in 1 Sekunde ab.
Ich habe das jetzt so angelegt, dass die Abbildung der Glühbirne über den
Alphawert (Transparenz) geregelt wird.
Also, über dem Bild von der dunklen Glühbirne liegt eine helle. Ist ihr Alphawert 0,
dann sieht man sie nicht. Ist der Alphawert 100, dann ist sie vollständig abgebildet
und scheint zu leuchten.
Den Alphawert möchte ich nun mit einem Wert i, von 0 auf 100 hoch zählen.
z.B.
i=1 - in 1er Schritten 0, 1, 2, 3, 4,…100.
i= 3 - in 3er Schritten 0, 3, 6, 9,…100.
usw.
Mein Computer hat eine Taktfrequenz von ca. 20 Schritten pro Sekunde. (Das
muss ich noch genau herausbekommen)
Das heißt,
bei i = 1,
Zeit (t) = 100/i x 20
i = 100/ t x 20
Liebe Grüße Sven