Zufallszahlen mit S7

Zuviel Werbung?
-> Hier kostenlos registrieren
Den Link kenn ich.

Allerdings kann man innerhalb einer gewissen Zeit nur eine Zahl erzeugen. Ich benötige mehrere Zufallszahlen im selben Augenblick. Den Timeclicker zu verwenden hat den Nachteil dass kurz hintereinander erzeugte Zahlen sich immer ähneln.
 
King Diamond schrieb:
Den Link kenn ich.

Allerdings kann man innerhalb einer gewissen Zeit nur eine Zahl erzeugen. Ich benötige mehrere Zufallszahlen im selben Augenblick. Den Timeclicker zu verwenden hat den Nachteil dass kurz hintereinander erzeugte Zahlen sich immer ähneln.

ich frag mal einfach ganz blöd:
wofür brauch ich sowas in einer steuerung?

mfg
 
Blöde Frage, blöde Antwort:

Auf einem Laufband sollen Produkte zur Prüfung nach Zufallsprinzip
ausgewählt werden.
(Spezielle Lebensmittelvorschrift).
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Volker,

ich habe auch schon einmal Zufallszahlen benötigt,
zur Datenkonsistenzprüfung für ein selbst geschriebenes Protokoll zwischen einer S7-CPU und WinCC.

Dabei konte ich die "Timeticks" verwenden, da die Zufallszahlen für meine Anwendung "zufällig" genug waren. An eine andere Methode wäre ich jedoch auch interessiert.

Gruß Flinn
 
Geht nicht

Hallo Leute,

echte Zufallszahlen kann man ohne zusatz Hardware nicht erzeugen.
Was aber geht, ist eine mathematische Funktion die eine scheinbar zufällige Zahl liefern. Z.B sind die Nachkommastellen von "PI" zwar vorhersagbar aber statistisch soweit mir bekannt, immer gleichverteilt.
Das heist, das über eine unendlich lange Zahlenreihe die Anzahl der NULLEN genauso groß ist wie die 1 bis 9'er.
Wenn dir mathmatische verfahren nicht ausreichen, brauchst du
eine Hardware dafür. Ob es sowas für die S7 gibt weis ich allerdings
nicht.
 
Zufallszahlen können durch folgende Formel erzeugt werden:
Code:
V[n+1]=(A*V[n]+B) modulo M
"Numerical Recipes", eine Sammlung numerischer Algorithmen, nannte als Beispielwerte:
A=1664525
B=1013904223
M=2^32

Die damit erzeugten Zufallszahlen sind nach den Masstaeben der Mathematiker von schlechter Qulität, dürften aber für Deine Anwendung reichen, insbesondere wenn du den Startwert V[0] von der Zeit abhängig machst.
Ein besserer Algorithmus ist als "Mersenne Twister" bekannt und wird für die Zufallszahlengeneratoren einiger Programmiersprachen verwendet. Möglicherweise ist aber der Aufwand für ein SPS-Programm zu hoch. Ansonsten einfach mit Google nach diesem Begriff suchen. Es gibt Beispielprogrammein etlichen Programmiersprachen.
 
Zurück
Oben