2 Taster gleichzeitig abfragen

Alles rund um TX(T) und RoboPro, mit ft-Hard- und Software
Computing using original ft hard- and software
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
progli
Beiträge: 6
Registriert: 08 Nov 2014, 17:09
Kontaktdaten:

2 Taster gleichzeitig abfragen

Beitrag von progli » 10 Mär 2015, 20:13

Hallo zusammen,
ich hoffe meine Frage ist nicht zu dumm, aber wie kann ich in Robo Pro mehrere Taster gleichzeitig abfragen, ob sie von 0 (nicht gedrückt) nach 1 (gedrückt) gewechselt sind. In der Praxis stelle ich mir ein Spiel für meine Ft- Konsole (http://youtu.be/t688TPuqsdg) vor, bei dem 2 Spieler versuchen nach einem Signal möglichst schnell auf ihren Taster zu drücken. Derjenige der schneller ist gewinnt/ bekommt einen Punkt. Ich habe auch schon versucht mit "normalen" Elementen solch eine Abfrage zu realisieren, leider funktionierte das nicht, da die Taster dann nie "angenommen" wurden. Ein Bild davon seht ihr hier:
Bild

Ich danke schonmal im Voraus für Antworten/ Lösungen! :D

Benutzeravatar
DieTigerente
Beiträge: 36
Registriert: 03 Sep 2014, 17:59
Wohnort: irgendwo knapp über Koblenz

Re: 2 Taster gleichzeitig abfragen

Beitrag von DieTigerente » 10 Mär 2015, 20:47

Hallo,

Kannst du die Werte der Taster nicht einfach in verschiedenen Prozessen (also mit mehreren Startelementen) abfragen? :shock:
An der Integration ins Programm sollte sich dabei eigentlich wenig ändern.

Hoffe, das hilft (und hoffe, ich hab die Frage nicht falsch verstanden)

Viele Grüße,
TIGERENTE

Benutzeravatar
tobs9578
Beiträge: 142
Registriert: 01 Nov 2010, 13:23
Wohnort: Ellerstadt (nahe Ludwigshafen)

Re: 2 Taster gleichzeitig abfragen

Beitrag von tobs9578 » 10 Mär 2015, 21:19

Hallo progli,

ich weis nicht inwieweit du dich mit dem Programmieren auskennst.
Meine Lösung für dein Problem wäre wie folgt:

Ich würde zwei weitere Prozesse (wie DieTigerente es schon beschrieben hast) hinzufügen.
Dann würde ich eine lokale Variable nutzen um zu schauen, ob ein Taster gedrückt wurde und von welchem Spieler.

https://www.dropbox.com/s/bloilgksdduq9 ... t.png?dl=0

In deinem jetzigen Programmstück würde ich abfragen von wem gedrückt wurde und dementsprechend die Verzweigung schalten.

https://www.dropbox.com/s/buvd1e1jtnm0k ... 1.png?dl=0

Die lokale Variable Spieler musst du danach natürlich wieder auf 0 zurücksetzen ....
Zurzeit finde ich persönlich keine einfachere Lösung. Bitte korrigiert mich falls nötig.

Sorry bekomme die Bilder nicht direkt geladen.

Gruß Tobias

UMueller
Beiträge: 220
Registriert: 31 Okt 2010, 22:58

Re: 2 Taster gleichzeitig abfragen

Beitrag von UMueller » 10 Mär 2015, 21:29

Hallo,

ab Level 3 :

Programmelemente - Eingänge, Ausgänge : I1 und I3
an Operator and koppeln
und mit Verzweigung A>0 abfragen (ggf. J/N vertauschen)

Gruß Ulrich Müller

progli
Beiträge: 6
Registriert: 08 Nov 2014, 17:09
Kontaktdaten:

Re: 2 Taster gleichzeitig abfragen

Beitrag von progli » 12 Mär 2015, 20:18

Danke für die schnellen Antworten!
@ UMueller: So kann man aber nur abfragen ob einer und nicht welcher von beiden gedrückt wurde, oder?
@DieTigerente & tobs9578: ich habe das mal mit zwei Prozessen und so wie von dir tobs beschrieben versucht, allerdings hat Robo Pro anscheinend nicht gemerkt, dass die Variablen mit dem gleichen Namen zusammengehören, denn der Vergleich mit der festen Variablen ist immer gescheitert/ wurde immer wieder wiederholt...
Hat wer ne Idee was ich falsch mache/ was ich ändern kann?
Ich hatte die Variable "Spielen" weggelassen, da ich nicht wusste, wie ich sie mit dem = Element verbinde und was der Sinn von ihr ist. Ist das Weglassen vllt. ein Grund dafür?

Benutzeravatar
tobs9578
Beiträge: 142
Registriert: 01 Nov 2010, 13:23
Wohnort: Ellerstadt (nahe Ludwigshafen)

Re: 2 Taster gleichzeitig abfragen

Beitrag von tobs9578 » 12 Mär 2015, 20:59

Hallo Progli,

die Variable Spielen soll zusagen sagen, dass jetzt die nächste Runde gespielt werden soll.
Um das Verbindungsproblem zu lösen: Du musst das Häcken bei Dateneingang setzen in den Operator Einstellungen
Falls du es nicht hinbekommen solltest schaue ich die nächsten Rage nochmal.


Gruß Tobias

vleeuwen
Beiträge: 1560
Registriert: 31 Okt 2010, 22:23
Wohnort: Enschede (NL)
Kontaktdaten:

Re: 2 Taster gleichzeitig abfragen

Beitrag von vleeuwen » 12 Mär 2015, 23:39

With the fischertechnik controllers is it not possible to query sensors at the same time.
This because there is only one CPU available.
Also because of the anti-bounce there could be a little time difference between sensor observations.
Most of the time you will not notice it.
However in time critical closed control loops this could lead to instability.

progli
Beiträge: 6
Registriert: 08 Nov 2014, 17:09
Kontaktdaten:

Re: 2 Taster gleichzeitig abfragen

Beitrag von progli » 13 Mär 2015, 17:05

ok Tobs, werde das mal probieren
wenn irgendwer Zeit und Lust hat kann er auch mal versuchen, das direkt in die bestehende Datei einzufügen.
https://www.dropbox.com/s/6mz5z2gteu58n ... n.rpp?dl=0
Damit man das Programm versteht:
Bei dem Spiel leuchten immer die drei ersten Lampen in einem bestimmten Abstand und die Spieler müssen drücken, wenn sie meinen, das das Licht bei der letzten Lampe angekommen ist.
Die erste Lampe ist aus Belegungsgründen immer I8, die zweite I1, die dritte I2, und so weiter...

Benutzeravatar
Dirk Fox
ft:pedia-Herausgeber
Beiträge: 1833
Registriert: 01 Nov 2010, 00:49
Wohnort: Karlsruhe
Kontaktdaten:

Re: 2 Taster gleichzeitig abfragen

Beitrag von Dirk Fox » 15 Mär 2015, 00:52

Hallo progli,
progli hat geschrieben:... wie kann ich in Robo Pro mehrere Taster gleichzeitig abfragen, ob sie von 0 (nicht gedrückt) nach 1 (gedrückt) gewechselt sind.
eine programmiertechnisch elegante Variante ist, die "Werte" der Taster (I1, I2, I3, ...) mit Operatoren in einen Ergebniswert umzurechnen: I1+I2*2+I3*4+...
(Statt "*2" kannst Du auch "SHL 1" verwenden, statt "*4" "SHL 2".) Dann kannst Du das Ergebnis in einem Schritt auswerten: Du stoppst die Tasterauswertung, wenn der Wert > 0 ist, und erkennst anschließend am Zahlenwert, welcher Spieler der Gewinner ist.

Beste Grüße,
Dirk

lemkajen
Beiträge: 123
Registriert: 05 Sep 2011, 12:58
Wohnort: Rhede (NRW)

Re: 2 Taster gleichzeitig abfragen

Beitrag von lemkajen » 13 Apr 2015, 19:27

Moin,
auch wenn ich eigentlich nie etwas in RoboPro mache, hier mein theoretischer DigitalElektronik-Oldschool Ansatz:

- man nehme 2 (RS)FlipFlops (im zweifel muss man dieseselbst programmieren)
- jedes der 2 FF wird durch je einen der Taster angesteuert
- das als erstes durch Seinen Taster Gesetzte FlipFlop muss nun das andere FlipFlop blockieren, damit dieses nicht mehr durch "Seinen" Taster gesetzt werden kann... Dann noch eine Reset-Vorrichtung und gut iss.

ich stelle diese Variante mal zur Diskussion.. ;-) ich hoffe das ist nicht zuuuu theoretisch
Gruß
Jens
----
Jens Lemkamp

Antworten