Seite 1 von 1

Zufallsgenerator mit dem txt controller

Verfasst: 22 Sep 2018, 23:10
von Wolfgang/FischerTec
Hey!
Ich arbeite derzeit an einer slot-machine und würde gerne wissen, wie ich mit robo pro (txt controller) einen Motor für eine zufällige Anzahl an Sekunden, welche maximal 20 sein darf, machen kann.

Also wie gesagt, soll es in robo pro gemacht werden.
Ich bin da noch nicht so erfahren. Der Motor ist ein roter Encoder.
MfG
Wolfgang

Re: Zufallsgenerator mit dem txt controller

Verfasst: 23 Sep 2018, 07:55
von elektrofuzzis
Hallo Wolfgang,

schau mal bei github vorbei:https://github.com/elektrofuzzis/FTLibraries.

Wir haben Dir mal auf die Husche eine Bibliothek für RoboPro mit der Funktion RandomWait geschrieben. Zur Benutzung die Bibliothek und Dein Programm in RoboPro öffnen. In Deinem Programm links auf die Elementgruppen gehen. Ganz unten Geladene Programme, RandomWait anclicken. Jetzt hast Du unten die Funktion RandomWait. Einfach in Deinen Quelltext ziehen. An den Eingang gibst Du die maximal gewünschte Wartezeit in ms. In Deinem Beispiel also 20000. Geht bis maximal 32,767 Sekunden.

Viel Spaß,

die Elektrofuzzis

Re: Zufallsgenerator mit dem txt controller

Verfasst: 23 Sep 2018, 10:01
von Wolfgang/FischerTec
Vielen dank!

Bei fragen schreibe ich hier einfach nochmal.

MfG
Wolfgang

Re: Zufallsgenerator mit dem txt controller

Verfasst: 23 Sep 2018, 15:11
von Wolfgang/FischerTec
Danke, aber wie bind ich das jetzt in mein Programm ein? Ich muss ja irgendwie den motor mit der anzahl der sekunden verbinden...

Re: Zufallsgenerator mit dem txt controller

Verfasst: 23 Sep 2018, 15:45
von elektrofuzzis
Hallo Wolfgang,

Motor einschalten, RandonWait aufrufen und dabei
Die max. Dauer in ms als Parameter mitgeben. Für 20s
also 20000. Das kannst Du über eine Konstante machen.

Gruß

Stefan

Re: Zufallsgenerator mit dem txt controller

Verfasst: 23 Sep 2018, 16:24
von Wolfgang/FischerTec
Ja aber ich möchte es ja in ein Programm einbinden....

Re: Zufallsgenerator mit dem txt controller

Verfasst: 23 Sep 2018, 16:34
von elektrofuzzis
Wenn Du eine Funktion aus einer Bibliothek
verwendest, kopiert RoboPro den Code
einfach in deinen Quelltext.

Einfach wie oben beschrieben die Funktion
rüberziehen.

Re: Zufallsgenerator mit dem txt controller

Verfasst: 23 Sep 2018, 16:39
von Wolfgang/FischerTec
Keine Ahnung wie du es meinst...

Re: Zufallsgenerator mit dem txt controller

Verfasst: 23 Sep 2018, 18:07
von elektrofuzzis
Die RoboPro Bibliotheken sind etwas speziell in der Bedienung.

Als erstes musst Du Dein Programmierlevel einstellen. Im Menüsystem Level auswählen und auf "Level 5: Objekte" stellen.

Bibliothek wie ein normales Programm öffnen. Deinen Quelltext parallel öffnen.
Aus Deinem Quelltext heraus links oben im der Elementgruppen den untersten Punkt "Geladene Programme" anckicken.
Darunter findest nun Du die RandomWait-Bibliothek. Diese anclicken.

Nun sind links unten in den Programmelementen verschiedene Funktionen. Die unterste ist die RandomWait-Funktion.
Wie jedes normale RoboPro Codeelement in Dein Programm übernehmen.

Dabei kopiert RoboPro den Bibliothekscode in Dein Programm. Anschließend brauchst Du die Bibliothek nicht mehr.

Oberhalb der RandomWait in Deinem Programm schaltest Du den Motor ein. Dies verbindest Du ganz normal über die blauen Linien mit dem RandomWait (obere blaue Linie).
An die untere blaue Linie verbindest Du ein Motor-Aus-Kommando.

Jetzt musst Du nur noch die maximale Zeit einstellen. Dazu wechselst Du links oben in den Elementgruppen auf Programmelemente/Variable, Timer.
Im Fenster links unten (Programmelemente) brauchst Du die Konstante. Das ist das dritte Element, der gelbe Kasten mit der "0".
Den gelben Ausgang der Konstante verbindest Du mit dem gelben Eingang T von RandomWait. Per Rechtsclick auf die Konstante kannst Du jetzt 20000 einstellen.

Klingt kompliziert, wenn man es einmal gemacht hat, ist es fast logisch :-)

Viel Spaß,

Stefan

Re: Zufallsgenerator mit dem txt controller

Verfasst: 23 Sep 2018, 18:14
von Wolfgang/FischerTec
Danke 8-)..

Re: Zufallsgenerator mit dem txt controller

Verfasst: 27 Nov 2018, 22:20
von Flywheel
Hallo,
ich habe versucht, den Zufallsgenerator Randomwait in die Bibliothek aufzunehmen. Es erscheinen aber immer folgende 3 Fehlermeldungen:
- expected: END_TAG'cvg' got START_TAG'roboexpert at line 7
- CVG parsing error:"expected:cvg'at line 7
- template I/O handler failed loading from stream
Was ist da zu tun?
Vorab schon einmal vielen Dank für Eure Hilfe.
Flywheel

Re: Zufallsgenerator mit dem txt controller

Verfasst: 27 Nov 2018, 22:32
von elektrofuzzis
Hi,

welche RoboPro Version nutzt Du? Hast Du die Datei bei GitHub im Rawmode oder als ZIP heruntergeladen? ZIP geht besser...

Gruß

Stefan

Re: Zufallsgenerator mit dem txt controller

Verfasst: 28 Nov 2018, 08:41
von Flywheel
Hallo Stefan,
vielen Dank für die schnelle Antwort.
Du warst auf der richtigen Spur: Ich hatte noch Version 4.2.3 installiert. Nach dem Update auf 4.2.4 läuft es.
Nochmals Dank.
Flywheel

Re: Zufallsgenerator mit dem txt controller

Verfasst: 28 Nov 2018, 17:30
von vleeuwen
This is typical a problem that can be easily resolved with the creation of a RoboPro SLI element in C/C++.
TXT firmware >= 4.4.3

Re: Zufallsgenerator mit dem txt controller

Verfasst: 28 Nov 2018, 22:17
von elektrofuzzis
Super dass es funktioniert ! Viel Spass damit!