EV3: Permanente Überwachung durch den FArbsensor

grafische Programmiersprachen für den EV3/NXT.
NXT-G, Robolab, LabView und was noch so schön bunt ist...

Moderator: Moderatoren

benson
Mindstormsfreund
Mindstormsfreund
Beiträge: 8
Registriert: 3. Dez 2017 07:58
Kontaktdaten:

EV3: Permanente Überwachung durch den FArbsensor

Beitragvon benson » 7. Dez 2017 18:40

Hallo, ich bin Anfänger und hab' da mal ne Frage:

Der fahrende EV3 soll eine Aktion ausführen, wenn ein Gegenstand näher als x cm an ihn herantritt. ABER: Wenn der FArbsensor die FArbe 2Schwarz" erkennt, soll er rückwärts fahren. Der FArbsensor soll also während einer Endlosschleife permanent eingreifen können, kurz rückwärts fahren, umdrehen und wieder auf ein Infrarotsignal reagieren.

Frage: Wie bekomme ich das hin, dass das EV3 Programm PERMANENT unterbrochen werden kann, sobald die FArbe "Schwarz" erkannt wird - auch, wenn er gerade ein längeres Programm abarbeitet?

Für Vorschläge bin ich Dankbar. LG, Michael

Lok24
Mindstormsfreund
Mindstormsfreund
Beiträge: 7
Registriert: 6. Dez 2017 11:41

Re: EV3: Permanente Überwachung durch den FArbsensor

Beitragvon Lok24 » 7. Dez 2017 19:02

Hallo,

Dazu müsste man das "längere" Programm näher kennen.
Du hättest also am Anfang den Sensor in einer Schleife im Entfernungsmodus, wenn x unterschritten wird startet "Aktion", aber für die Unterbrechung muss er im Farbmodus sein...das klingt irgendwie nicht gut.

Generell gibt es die Möglichkeit, Programme/Schleifen zu unterbrechen, Du findest sie in der (sehr guten) Hilfe unter "Schleifen-Interrupt-Block", auch mit Beispielen. Mit zwei Sensoren kann ich mir das vorstellen.
Falls das nicht ganz klar ist, kann ich es auch ausführlicher erklären.

benson
Mindstormsfreund
Mindstormsfreund
Beiträge: 8
Registriert: 3. Dez 2017 07:58
Kontaktdaten:

Re: EV3: Permanente Überwachung durch den FArbsensor

Beitragvon benson » 8. Dez 2017 09:12

HAllo Lok24, vielen Dank schon mal für die Antwort. Leider funktioniert auch ein Interrupt nicht, während gerde ein anderer Block für einen Motor läuft. Zu besseren Veranschaulichung meines Problems findest Du hier mein Programm: http://benson.de/temp/bensonsumo1-1-2ok.ev3.
Es geht darum, einen leicht abgewandelten Treck3R zum Sumo Kämpfer umzubauen. Er soll auch während einer Attacke nach Erkennen des Gegners sofort zurückziehen, wenn die schwarze Randmarkierung erreicht ist. Das macht er leider mit dem angehängten Programm nicht :( . Hast Du da noch nen Tip für mich? VG, Benson

Lok24
Mindstormsfreund
Mindstormsfreund
Beiträge: 7
Registriert: 6. Dez 2017 11:41

Re: EV3: Permanente Überwachung durch den FArbsensor

Beitragvon Lok24 » 8. Dez 2017 10:33

Hallo,

danke für da Programm.
Das kann so nicht funktionieren, da die geregelten Motoren erst fertig laufen, bevor die äußere Schleife wieder durchlaufen wird und die Farbe abgefragt wird.

Du hast keinen Schleifen-Interrupt-Block eingebaut!

Leider sind meine sechs mindstorms-Modelle noch im Keller und verpackt, weil wir erst am Montag von der Ausstellung in Abtsgmünd zurückgekommen sind, deswegen kann ich derzeit nichts testen, aber ich hoffe, dass ich die bald auspacke und dann auch mit meinem Tripod testen kann, ich melde mich wieder.

benson
Mindstormsfreund
Mindstormsfreund
Beiträge: 8
Registriert: 3. Dez 2017 07:58
Kontaktdaten:

Re: EV3: Permanente Überwachung durch den FArbsensor

Beitragvon benson » 8. Dez 2017 11:27

Danke, Lok24 für die schnelle Antwort. Stimmt, den Interrupt hatte ich wieder ausgebaut, weil der im derzeit gebauten Konstrukt leider auch keinen Erfolg brachte :-( Freue mich über weitere Tipps ... to be continied :-)

Lok24
Mindstormsfreund
Mindstormsfreund
Beiträge: 7
Registriert: 6. Dez 2017 11:41

Re: EV3: Permanente Überwachung durch den FArbsensor

Beitragvon Lok24 » 8. Dez 2017 15:29

Hallo,

so, ich habe meinen Robot jetzt gefunden.

Ich vermute Du hast den Fehler begangen, den Schleifen-Interrupt in die Schleife zu packen.
Wenn aber in der Schleife der Motor 10se dreht und dann der Interrupt kommt, wird die Schleife erst nach 10 sec verlassen.

Du solltest zwei Programme parallel(!) laufen lassen, indem Du einfach am Start auf zwei Blöcke verzweigst.

Im oberen Teil haben wir erstmal Deine Schleife 01, damit der Robot immer weiter läuft. Darin liegt eine zweite Schleife 99, darin ist Deine Funktion "Annähern". Und diese Schleife kann man abbrechen.
Sie prüft am Anfang die Variable "stop", nur dann tut sich was.


Der Zweig unten läuft zeitlich parallel dazu, auch in einer Schleife 02. Hier wird der Farbsensor abgefragt, bei "schwarz" setzt er die Variable "stop" auf wahr, dann beendet er die Schleife 99.
Die beginnt zwar sofort wieder neu, aber da "Stop" gesetzt ist durchläuft er den oberen Zweig der Bedingung und macht nichts.

Ich habe zu Demo-Zwecken im unteren Programm mal die Motoren gestoppt und warte nach dem Ende von "schwarz" noch 4 Sec.
Da kannst Du Deine Befehle einbauen.

Ich hoffe, das ist ungefähr, was Du brauchst
Ich empfehle das Buch von Terry Griffin "Programmieren lernen mit EV3", da wird wirklich alles von Anfang an bis zu komplexen Dingen erklärt.

Bild

benson
Mindstormsfreund
Mindstormsfreund
Beiträge: 8
Registriert: 3. Dez 2017 07:58
Kontaktdaten:

Re: EV3: Permanente Überwachung durch den FArbsensor

Beitragvon benson » 8. Dez 2017 23:21

Vielen Dank, Lok24. HAbe gerade eine ähnliche Lösung unter https://www.us.lego.com/en-us/mindstorm ... 030cf4b631 gefunden ... kam bisher gar nicht auf die Idee, zwei Programmeoder Schleifen parallel laufen zu lassen, scheint mir aber nah an einer Lösung zu sein :-) ... teste das morgen oder in den kommenden Tagen mal an und werde berichten. Vielen Dank auch für die Buchempfehlung, schaue ich mir ebenfalls an. Schönes Wochenende Dir!

benson
Mindstormsfreund
Mindstormsfreund
Beiträge: 8
Registriert: 3. Dez 2017 07:58
Kontaktdaten:

Re: EV3: Permanente Überwachung durch den FArbsensor

Beitragvon benson » 9. Dez 2017 09:43

YES!! Klappt hervorragend!! Jetzt kann ich prima weiterprogrammieren. Vielen Dank nochmal :-)! :yeah:

Unbenannt.JPG


Zurück zu „grafische Programmiersoftware“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 10 Gäste

Lego Mindstorms EV3, NXT und RCX Forum : Haftungsauschluss