Zufälliger Start

Jericho

Level-1
Beiträge
9
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute,

ich habe ein Problem mit der Aufgabe im Anhang. Ich bekomm einfach keinen Baustein hin der den zufälligen start steuert.
Vielleicht hat einer eine Idee oder kann mir zeigen wie ich so etwas selber schreibe.

Gruß Jericho

P.S: Schreibe mit Step 7 und stiz schon seit über einer Woche dran. Langsam dreh ich durch. :confused:
 

Anhänge

  • Aufgabe Reaktionstester.doc
    66,5 KB · Aufrufe: 52
Zum Erzeugen einer Zufallszahl können Sie die Systemfunktion SFC64 "TIME_TCK" verwenden. Bilden Sie von der Systemzeit den Absolutwert und führen Sie anschließend eine ganzzahlige Division mit der Obergrenze als Divisor durch. Ermitteln Sie den durch diese Operation entstandenen Divisionsrest. Diese Zahl können Sie dann als Zufallszahl weiter verwenden.

Siehe auch: http://www.sps-forum.de/showthread.php?t=12655
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Zufällig..

Hallo,
wieviele Lampen sind es denn?
Zufallsgeneratorfunktion kann man z.B. in der OSCAT Bibliothek finden.
Oder man lässt ein Schieberegister(BYTE z.B.) immer laufen, und beim Start nimmt man die momentane Bitposition als Lampenausgang..Die restliche Sachen sind reine Programmierarbeit:Timer, Vergleiche usw.

V.
 
Es geht ja nicht nur darum das die 4 Lampen zufällig aufleuchten sollen sondern das es erst zwischen 3 bis 10s starten soll.
 
Hast du dir meinen Beitrag mal durchgelesen?

Nimm doch in deinem Fall einfach mal den Divisor 8 und addiere nach der Operation immer 3 dazu. Wenn du als Rest immer zwischen 0 und 7 bekommst, solltest du somit am Ende einen "Zufallswert" zwischen 3..10 haben...
 
Hmm hab ich da irgendwie einen Denkfehler. Wenn ich die Systemzeit als DInt betrachte komm ich da meist in die tausender Bereiche. Und dann durch 8 ergibt auch nicht viel weniger:rolleyes::confused:
 
Guten Morgen

Also um mich noch mal zu Wort zu melden... ich habs immer noch nicht hingekriegt.

Um mal vorne weg zu greifen ich mach das hier seit 3 wochen (also SPS'en) und hab aber auch keine Vorkenntnisse im programmieren. Mach das als praktikum in vorbereitung auf mein Studium und hab halt die aufgabe bekommen und jetzt mach mal!

Ich hab in den Hilfethemen versucht eure tipps nachzulesen aber wenig oder so gut wie gar nix gefunden. (z.B. zu divisor) :confused: auch das oscat hat mir nicht weiter geholfen.

Ich erwarte keine Lösung aber wie wär's wenn hier eure Antwort mit ein paar programmierschritten erweitert. Das würde mir echt mehr helfen.

Bitte hab verständnis und gedult:rolleyes:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
ich denke eYe meint nicht divisor und damit eine division sondern die modulo-funktion (im kop: mod_di). also den divisionsrest errechnen.
bsp:
15 mod 8 = 7
9 mod 8 = 1
8 mod 8 = 0
8001 mod 8 = 1

dann rechnest du noch 3 drauf und du hast eine zahl von 3..10.

ps: übernehme keine gewähr, bin auch noch relativ neu auf dem gebiet. :)
 
Zurück
Oben