Mohii
15.01.2022, 19:17

EV3 Programm Code Erklärung?

Hey,

Ich muss ein Projekt mit meiner Gruppe vorstellen im Fach Informatik.

Den Programm Code muss ich dann vorstellen und erklären, was jeder Block für eine Funktion hat (unten das Bild).

Ich bräuchte dann Hilfe und wil wissen was die einzelnen Blöcke können und was der Roboter macht.


[image]



1 vorhergehender Beitrag ist ausgeblendet

Alle anzeigen Immer alle anzeigen Beitragsbaum

Mohii
15.01.2022, 19:59

Als Antwort auf den Beitrag von Lok24

Re: EV3 Programm Code Erklärung?

Lok24 hat geschrieben:

Hallo,

am besten installierst Du Dir das Labview für EV3, dann findest Du mit F1 eine ausführliche Hilfe.

Das Bild ist leider sehr unscharf, aber ich glaube das macht nicht wirklich was sinnvolles.....In ganz vielen Werten steht einfach 0 drin?
Hast Du mal drei Bilder, eins vom Anfang, eins von der Schleife, eins von Ende? Danke.


Hey,
Es tut mir leid ich hab vergessen, dass das was ich gezeigt habe nur die Grundbausteine sind. Dahinter kommt noch was.
Und zu der Software, meine Datei ist eine .ev3 Ich hab das Programm von Lego Mindstorms installiert, es kann aber kann keine Datein mit solchen Endungen öffnen. Ich vermute mal, das wir an der Schule eine ältere Version vom Programm haben. Ich weiß jetzt nicht, wie ich die Datei aufmachen soll. Und BTW ich habe das Bild oben von der PowerPoint gescreenshotet



Lok24
16.01.2022, 10:09

Als Antwort auf den Beitrag von Mohii

Editiert von
Lok24
16.01.2022, 10:18

Re: EV3 Programm Code Erklärung?

Hallo,

Mohii hat geschrieben:

Und zu der Software, meine Datei ist eine .ev3 Ich hab das Programm von Lego Mindstorms installiert, es kann aber kann keine Datein mit solchen Endungen öffnen.

?!?!
Es gibt ein ganzes Rudel von Programm für LEGO Mindstorms.

Mohii hat geschrieben:
Ich vermute mal, das wir an der Schule eine ältere Version vom Programm haben.

Das Programm aus dem ScreenShot heißt LabView und hat mit den aktuellen Mindstorms Programmen nichts zu tun, auch die aktuelle mindstorms Hardware ist kein EV3 mehr.
Deswegen hatte ich geschrieben:
Lok24 hat geschrieben:
am besten installierst Du Dir das Labview für EV3, dann findest Du mit F1 eine ausführliche Hilfe.


Mohii hat geschrieben:
Es tut mir leid ich hab vergessen, dass das was ich gezeigt habe nur die Grundbausteine sind. Dahinter kommt noch was.
Und BTW ich habe das Bild oben von der PowerPoint gescreenshotet

Ja, aber man kann halt nichts erkennen.
Was erwartest Du denn als Hilfe hier?
Mit besseren Bildern können wir uns da mal entlanghangeln, oder ich kann das auch nachbauen.

Wer hat denn das Programm geschrieben?



Technicmaster0
16.01.2022, 15:24

Als Antwort auf den Beitrag von Mohii

Re: EV3 Programm Code Erklärung?

Die EV3 Software, mit der dieses Programm geschrieben wurde, kann hier heruntergeladen werden: https://www.lego.com/de-d...s/mindstorms/downloads
"Ausgelaufene LEGO® MINDSTORMS® EV3 Home Edition Software für PC und Mac" ist die entsprechende Version.
So, wie das Programm auf dem Screenshot ist, könnte man ohne Folgen grob die Hälfte der Blöcke entfernen. Die Schleife ist beispielsweise völlig unnötig, genau wie der "Schleifen-Interrupt". Die Variable wird auch nirgendwo genutzt.
Gibt es einen Parkour o.ä., den der Roboter abfahren soll?



Lok24
16.01.2022, 16:10

Als Antwort auf den Beitrag von Technicmaster0

Re: EV3 Programm Code Erklärung?

Technicmaster0 hat geschrieben:

Die EV3 Software, mit der dieses Programm geschrieben wurde, kann hier heruntergeladen werden: https://www.lego.com/de-d...s/mindstorms/downloads "Ausgelaufene LEGO® MINDSTORMS® EV3 Home Edition Software für PC und Mac" ist die entsprechende Version.

Genau die.
Technicmaster0 hat geschrieben:
So, wie das Programm auf dem Screenshot ist, könnte man ohne Folgen grob die Hälfte der Blöcke entfernen. Die Schleife ist beispielsweise völlig unnötig, genau wie der "Schleifen-Interrupt". Die Variable wird auch nirgendwo genutzt.

Doch, mit der Variablen wird die Anzeige am Display aktualisiert; allerdings wird sie bei jedem Schleifendurchlauf um 0 erhöht...
Und die Schleife wird verlassen bis der Sensor blau meldet. (Standard wäre "gelb")
Da in der Schleife ein Befehl mit unbestimmter Dauer läuft kann der Interrupt sinnvoll sein, denke ich.
Aber der allererste Block ist schon eher sinnlos, einen Timer auslesen, den ich nie gesetzt habe?
Alles merkwürdig.
Deswegen meine Frage wer das Programm geschrieben/ vorgegeben hat.



Technicmaster0
16.01.2022, 16:16

Als Antwort auf den Beitrag von Lok24

Re: EV3 Programm Code Erklärung?

Lok24 hat geschrieben:

Doch, mit der Variablen wird die Anzeige am Display aktualisiert; allerdings wird sie bei jedem Schleifendurchlauf um 0 erhöht...
Und die Schleife wird verlassen bis der Sensor blau meldet. (Standard wäre "gelb")
Da in der Schleife ein Befehl mit unbestimmter Dauer läuft kann der Interrupt sinnvoll sein, denke ich.
Aber der allererste Block ist schon eher sinnlos, einen Timer auslesen, den ich nie gesetzt habe?
Alles merkwürdig.
Deswegen meine Frage wer das Programm geschrieben/ vorgegeben hat.

Die Variable wird nie auf dem Display ausgegeben. Sie wird um 0,00irgendwas erhöht und dann wieder in die Variable geschrieben. Aber ein Display Block ist damit nicht verbunden.
Die Schleife selbst hat als Abbruchbedienung die Farben blau und gelb. Das sind genau die Farben, die der Schalter unterscheidet. Je nachdem, wo das Programm grad ist, wird bei gelb das obere ausgeführt oder die Schleife abgebrochen. Bei Blau wird nur abgebrochen. Das könnte man alles viel schöner machen.
Der Interrupt wird nur ausgeführt, wenn am Anfang des Schalters blau ist. Aber wie gesagt, dann wäre eh die Abbruchbedienung der Schleife da.
Vielleicht war das mit der Abbruchbedienung auch anders herum, dass die nur abgebrochen wird, wenn das nicht erfüllt ist. Aber dann bräuchte man den Schleifeninterrupt auch nicht.

Den ersten Block finde ich hingegen gar nicht so sinnlos. Man weiß ja nicht unbedingt, ob der Timer schon vor dem Programm läuft. Damit kann man quasi den Startwert auslesen. Es wäre natürlich einfacher, den Timer am Anfang zurückzusetzen.

Dass alles merkwürdig ist, da gebe ich dir recht. Sieht eher wie n automatisch generierter Code aus



Lok24
16.01.2022, 16:35

Als Antwort auf den Beitrag von Technicmaster0

Re: EV3 Programm Code Erklärung?

Technicmaster0 hat geschrieben:

Die Variable wird nie auf dem Display ausgegeben. Sie wird um 0,00irgendwas erhöht und dann wieder in die Variable geschrieben. Aber ein Display Block ist damit nicht verbunden.
links neben dem "+" Block? Stimmt, das steht nicht 0, da steht offenbar 0,000x, das ist hier aber nur zu entziffern, wenn ich das Bild erstmal mit Irfanview verbessere

Technicmaster0 hat geschrieben:
Die Schleife selbst hat als Abbruchbedienung die Farben blau und gelb. Vielleicht war das mit der Abbruchbedienung auch anders herum, dass die nur abgebrochen wird, wenn das nicht erfüllt ist.

Nein das stimmt schon so. Aber ein Schleifeninterrupt kann sinnvoll sein, um den Motor sofort zu stoppen - nur an der Stelle nicht ....

Technicmaster0 hat geschrieben:
Den ersten Block finde ich hingegen gar nicht so sinnlos. Man weiß ja nicht unbedingt, ob der Timer schon vor dem Programm läuft. Damit kann man quasi den Startwert auslesen. Es wäre natürlich einfacher, den Timer am Anfang zurückzusetzen.

Der Startwert ist 0....alle acht Timer starten beim Programmstart.

Technicmaster0 hat geschrieben:
Dass alles merkwürdig ist, da gebe ich dir recht. Sieht eher wie n automatisch generierter Code aus



Technicmaster0
16.01.2022, 16:46

Als Antwort auf den Beitrag von Lok24

Re: EV3 Programm Code Erklärung?

Lok24 hat geschrieben:

links neben dem "+" Block?

Da war ich wohl blind. Ich war davon überzeugt, dass das ein Motorblock sei...

Lok24 hat geschrieben:
Nein das stimmt schon so. Aber ein Schleifeninterrupt kann sinnvoll sein, um den Motor sofort zu stoppen - nur an der Stelle nicht ....

Dieses ganze Schalter-Schleife-Interrupt Konstrukt ergibt halt nicht viel Sinn.

Lok24 hat geschrieben:
Der Startwert ist 0....alle acht Timer starten beim Programmstart.

Vielleicht wollte die Lehrkraft beibringen, dass man sowas nicht erwarten darf. Sonst gibts später bei Low Level Sachen Probleme
Es ist allgemein eine gute Idee, sicher zu stellen, dass alle Initialzustände korrekt sind. Gilt ja auch für Variablendeklaration und Definition.



Mohii
16.01.2022, 19:22

Als Antwort auf den Beitrag von Technicmaster0

Re: EV3 Programm Code Erklärung?

[image]

Technicmaster0 hat geschrieben:
Lok24 hat geschrieben:
links neben dem "+" Block?

Da war ich wohl blind. Ich war davon überzeugt, dass das ein Motorblock sei...

Lok24 hat geschrieben:
Nein das stimmt schon so. Aber ein Schleifeninterrupt kann sinnvoll sein, um den Motor sofort zu stoppen - nur an der Stelle nicht ....

Dieses ganze Schalter-Schleife-Interrupt Konstrukt ergibt halt nicht viel Sinn.

Lok24 hat geschrieben:
Der Startwert ist 0....alle acht Timer starten beim Programmstart.

Vielleicht wollte die Lehrkraft beibringen, dass man sowas nicht erwarten darf. Sonst gibts später bei Low Level Sachen Probleme
Es ist allgemein eine gute Idee, sicher zu stellen, dass alle Initialzustände korrekt sind. Gilt ja auch für Variablendeklaration und Definition.



Mohii
16.01.2022, 19:24

Als Antwort auf den Beitrag von Mohii

Re: EV3 Programm Code Erklärung?

Mohii hat geschrieben:

[image]

Technicmaster0 hat geschrieben:
Lok24 hat geschrieben:
links neben dem "+" Block?

Da war ich wohl blind. Ich war davon überzeugt, dass das ein Motorblock sei...

Lok24 hat geschrieben:
Nein das stimmt schon so. Aber ein Schleifeninterrupt kann sinnvoll sein, um den Motor sofort zu stoppen - nur an der Stelle nicht ....

Dieses ganze Schalter-Schleife-Interrupt Konstrukt ergibt halt nicht viel Sinn.

Lok24 hat geschrieben:
Der Startwert ist 0....alle acht Timer starten beim Programmstart.

Vielleicht wollte die Lehrkraft beibringen, dass man sowas nicht erwarten darf. Sonst gibts später bei Low Level Sachen Probleme
Es ist allgemein eine gute Idee, sicher zu stellen, dass alle Initialzustände korrekt sind. Gilt ja auch für Variablendeklaration und Definition.


Hier wäre dann ein schärferes Bild davon

Also im Prinzip sollte der Roboter ein gelbes Viereck abfahren. Wenn er blau sieht dann biegt er nach links ab



Mohii
16.01.2022, 19:25

Als Antwort auf den Beitrag von Mohii

Re: EV3 Programm Code Erklärung?

Mohii hat geschrieben:

Mohii hat geschrieben:

[image]

Technicmaster0 hat geschrieben:
Lok24 hat geschrieben:
links neben dem "+" Block?

Da war ich wohl blind. Ich war davon überzeugt, dass das ein Motorblock sei...

Lok24 hat geschrieben:
Nein das stimmt schon so. Aber ein Schleifeninterrupt kann sinnvoll sein, um den Motor sofort zu stoppen - nur an der Stelle nicht ....

Dieses ganze Schalter-Schleife-Interrupt Konstrukt ergibt halt nicht viel Sinn.

Lok24 hat geschrieben:
Der Startwert ist 0....alle acht Timer starten beim Programmstart.

Vielleicht wollte die Lehrkraft beibringen, dass man sowas nicht erwarten darf. Sonst gibts später bei Low Level Sachen Probleme
Es ist allgemein eine gute Idee, sicher zu stellen, dass alle Initialzustände korrekt sind. Gilt ja auch für Variablendeklaration und Definition.


Hier wäre dann ein schärferes Bild davon

Also im Prinzip sollte der Roboter ein gelbes Viereck abfahren. Wenn er blau sieht dann biegt er nach links ab


Und jetzt bräuchte ich Hilfe und weiß nicht, wie ich die Blöcke da erklären soll



14 nachfolgende Beiträge sind ausgeblendet

Alle anzeigen Immer alle anzeigen

Gesamter Thread: