Skip to main content

Lektion 4: Codierung des Objektsensors

In der letzten Lektion haben Sie etwas über den Objektsensor gelernt und die Prozentwerte der Reflektivität von Scheiben und Würfeln ermittelt. Jetzt verwenden Sie diese Werte, um in VEXcode ein Projekt zu erstellen, das das Ausgangsförderband anhält, wenn der Objektsensor eine Scheibe erkennt.

In dieser Lektion werden Sie:

  • Konfigurieren Sie den Objektsensor in VEXcode.
  • Erfahren Sie, wie Sie Vergleichsoperatoren in VEXcode verwenden.
  • Erstellen Sie ein Projekt, um eine Scheibe mithilfe der Rückmeldung des Objektsensors vom Eingangsförderband zum Ausgangsförderband zu bewegen.

Am Ende dieser Lektion haben Sie auf Ihrem Projekt aus der vorherigen Lektion aufgebaut, um das Ausgangsförderband anzuhalten, wenn die Scheibe vom Objektsensor erkannt wird.

Grüne Scheibe auf dem Ausgangsförderband und unter dem Objektsensor.

Bearbeiten des Projekts

Sie beginnen mit der Bearbeitung Ihres Projekts aus der Aktivität „Einheit 4, Lektion 2“, um es für das Hinzufügen der Befehle für den Objektsensor vorzubereiten.

Öffnen Sie Ihr ProjektEinheit 4 Lektion 2 Aktivitätin VEXcode EXP oder erstellen Sie das hier gezeigte Projekt neu.

Benennen Sie das ProjektEinheit 4 Lektion 4.

Drei Blockstapel aus dem Projekt „Unit 4, Lektion 2“. Der erste Stapel lautet: „Beim Start Eingangsförderband 1 einlaufen lassen, 7 Sekunden warten und dann Eingangsförderband 1 stoppen.“ Drehen Sie anschließend das Transportband 2 vorwärts, warten Sie 4 Sekunden und stoppen Sie dann das Transportband 2. Drehen Sie zum Schluss das Ausgangsförderband 4 nach außen, warten Sie 2 Sekunden und stoppen Sie dann das Ausgangsförderband 4. Der nächste Stapel lautet: „Wenn der Stoßfänger von Signalturm 6 gedrückt wird, Arm 10 auf Steuerung gestoppt stellen.“ Das letzte Projekt lautet: „Wenn die Steuerung von Arm 10 stoppte, stelle Signalturm 6 auf Grün und aus und stelle dann Signalturm 6 auf Rot und blinkend.“ Stoppen Sie zuletzt das Eingangsband 1, das Transportband 2 und dann das Ausgangsband 4.

Konfigurieren Sie den Objektsensor in VEXcode, indem Sie das Gerätefenster öffnen undGerät hinzufügen auswählen.

Das Fenster „Geräte“ ist geöffnet und die Schaltfläche „Gerät hinzufügen“ ist hervorgehoben.

Wählen Sie 3-Draht, um die Liste der 3-Draht-Geräte zu öffnen.

Geräteoptionen im Gerätefenster mit dem rot hervorgehobenen 3-Draht-Symbol.

Wählen Sie dann denObjektsensor.

3 Kabelgeräteoptionen im Gerätefenster, wobei das Objektsensorsymbol rot hervorgehoben ist.

Wählen Sie Port Aund dannFertigum die Konfiguration abzuschließen.

Hinweis:Stellen Sie sicher, dass der Objektsensor an Port A des Brain angeschlossen ist.

Gerätefenster mit hervorgehobenem Port A für den Objektsensor.

Entfernen Sie die letzten beiden Blöcke im Projekt. Hierzu gehören der BlockWartenund der BlockStoppfür das Ausgangsförderband, wie in diesem Video gezeigt.

Videodatei

Fügen Sie dem Projekt einen BlockWarten bishinzu.

Der BlockWarten bisist ein Block, der wartet, bis eine Boolesche Bedingung als wahr gemeldet wird, bevor mit dem nächsten Block im Stapel fortgefahren wird.

Fortsetzung eines VEXcode-EXP-Stapels mit einem leeren „Warten bis“-Block, der am Ende hinzugefügt wird. Auf dem Stapel steht: „Beim Start Eingangsförderband 1 einlaufen lassen, 7 Sekunden warten und dann Eingangsförderband 1 stoppen.“ Drehen Sie anschließend das Transportband 2 vorwärts, warten Sie 5 Sekunden und stoppen Sie dann das Transportband 2. Drehen Sie zum Schluss das Ausgangsförderband 4 nach außen und warten Sie dann, bis …

Vergleichsoperatoren

Nachdem nun der BlockWarten biszum Projekt hinzugefügt wurde, muss die vom Block zu überprüfende Bedingung hinzugefügt werden. 

Zuvor haben Sie etwas über den vom Objektsensor gemeldeten Reflektivitätsprozentsatz gelernt und diese Werte in Ihrem technischen Notizbuch aufgezeichnet. In diesem Projekt müssen Sie das Ausgangsförderband solaufen lassen, bisdieser Wert über einem bestimmten Schwellenwertliegt. Mithilfe eines Schwellenwerts lässt sich bestimmen, ob ein Wert über, unter oder innerhalb eines akzeptablen Bereichs liegt. Mithilfe von Vergleichsoperatoren kann überprüft werden, ob die Reflektivität über einem bestimmten Wert oder über diesem Schwellenwert liegt.

Add a Greater than block to the hexagonal space of the Wait until block.

Der gerade hinzugefügte „Warten bis“-Block mit einem neuen Booleschen Parameter von 0 größer als 50.

Fügen Sie in die erste Öffnung des BlocksGrößer alseinen Block mit der Reflektivität ein.

Der „Warten bis“-Block enthält jetzt einen Block mit der Objektsensor-Reflektivität, der zum „Größer als“-Block hinzugefügt wurde. Der gesamte Block zusammen ergibt nun den Wert „Warten bis Objektsensor A Reflektivität in % größer als 50 ist.“

Der Blockgrößer alsvergleicht den ersten Wert mit dem zweiten. Der aktuelle Größer alsBlock im Projekt vergleicht den vom Objektsensor gemeldeten Reflektivitätsprozentsatz mit dem Parameter „50“, bevor der Boolesche Wert alsWahroderFalschdeklariert wird. 

Der „Warten bis“-Block mit hervorgehobenem Wert „Größer als“. Der gesamte Block zusammen ergibt nun den Wert „Warten bis Objektsensor A Reflektivität in % größer als 50 ist.“

Denken Sie über die Ziele dieses Projekts nach. Das Ausgangsförderband muss sich drehen, bis der Objektsensor ein Objekt erkennt, dann muss das Förderband anhalten. Die in der vorherigen Lektion gesammelten Werte können mit diesemGrößer alsBlock verwendet werden, um den Schwellenwert zu bestimmen, der überschritten werden muss, bevor das Projekt zum nächsten Block im Stapel wechselt.

Ändern Sie den zweiten Parameter des Blocksgrößer als“ in „9“. 

Diese Zahl basiert auf den in der Aktivität der vorherigen Lektion erfassten Werten. Die Reflektivität wurde mit 10 % angegeben, als sich die grüne Scheibe unter dem Objektsensor befand, daher sollte alles, was größer als% ist, alsRichtigangegeben werden.

Der „Warten bis“-Block mit dem hervorgehobenen und von 50 auf 9 geänderten Wert „Größer als“. Der gesamte Block zusammen ergibt nun den Wert „Warten bis Objektsensor A Reflektivität in % größer als 9 ist.“

Fügen Sie am Ende des Projekts einenStop-Block hinzu. Stellen Sie sicher, dass der Parameter auf „ExitConveyor4“ eingestellt ist.

Fortsetzung des VEXcode EXP-Stapels mit einer am Ende hinzugefügten Schaltfläche „Motor stoppen“ mit der Aufschrift „Ausgangsförderband 4 stoppen“. Auf dem Stapel steht: „Beim Start Eingangsförderband 1 einlaufen lassen, 7 Sekunden warten und dann Eingangsförderband 1 stoppen.“ Drehen Sie anschließend das Transportband 2 vorwärts, warten Sie 5 Sekunden und stoppen Sie dann das Transportband 2. Zum Schluss Ausgangsförderband 4 einlaufen lassen, warten, bis die Reflektivität des Objektsensors A in % größer als 9 ist, und dann Ausgangsförderband 4 stoppen.

Stellen Sie sicher, dass das Brain mit VEXcode verbunden ist, und laden Sie das Projekt herunter.

VEXcode EXP-Symbolleiste mit dem Download-Symbol in einem roten Feld zwischen den Symbolen „Brain“ und „Ausführen“.

Lesen Sie den Code und sagen Sie voraus, was die Förderbänder tun, wenn das Projekt ausgeführt wird. 

Notieren Sie Ihre Vorhersage in Ihrem technischen Notizbuch.

Der VEXcode-EXP-Stapel, zu dem der Stop-Motor-Block gerade hinzugefügt wurde. Der gesamte Stapel lautet: „Beim Start Eingangsförderband 1 einlaufen lassen, 7 Sekunden warten und dann Eingangsförderband 1 stoppen.“ Drehen Sie anschließend das Transportband 2 vorwärts, warten Sie 5 Sekunden und stoppen Sie dann das Transportband 2. Zum Schluss drehen Sie das Ausgangsband 4 nach außen, warten, bis die Reflektivität des Objektsensors A in % größer als 9 ist, und stoppen dann das Ausgangsband 4.

Stellen Sie sicher, dass eine grüne Scheibe auf dem Eingangsförderband platziert ist. Drücken Sie die Taste Check auf dem Brain, um das Projekt testweise auszuführen.

Beobachten Sie das Verhalten der Förderbänder im Verlauf des Projekts.

EXP Brain mit der Rauten-Kontrollkästchen-Schaltfläche in einem roten Feld zum Starten des Projekts „Einheit 4, Lektion 4“.

Drücken Sie die Taste x auf dem Gehirn, um das Projekt zu stoppen, wenn die Förderbänder fertig sind. Notieren Sie Ihre Beobachtungen in Ihrem technischen Notizbuch.

Haben sich die Förderbänder wie vorhergesagt bewegt? Wurde die grüne Scheibe wie vorgesehen auf das Ausgangsförderband verschoben? Warum oder warum nicht?

EXP Brain mit der Rauten-X-Schaltfläche in einem roten Feld zum Beenden des Projekts.

Überprüfung des Projekts

Lassen Sie uns den Projektablauf in diesem Projekt überprüfen, bei dem das Ausgangsförderband gestoppt wurde, als der Objektsensor die grüne Scheibe erkannte. Der BlockWarten bisunterbricht die Ausführung des Projekts, bis die darin enthaltene Bedingung als WAHR gemeldet wird. 

Diagramm, das den Logikfluss im VEXcode EXP-Projekt visualisiert. Ein Pfeil zeigt an, dass der Block „Warten bis“ gestartet wird, und ein zyklischer Pfeil zeigt an, dass der Block wartet, bis seine Bedingung erfüllt ist. Erst wenn die Reflektivität des Objektsensors A in % größer als 9 ist, wird der nächste Block ausgeführt.

Da es sich bei dem BlockSpinum einen Nicht-Warteblock handelt, kann die CTE-Arbeitszelle den Fördermotor weiterdrehen lassen, während sie die Werte vom Objektsensor und den Zustand der Reflektivität, die über 9 % liegt, überprüft. Wenn die Bedingung im BlockWarten bisalsWAHR“ gemeldet wird, bewegt sich das Projekt zum nächsten Block im Stapel und stoppt den Motor des Ausgangsförderbands.

Zu Ihrer Information

Eine andere Kombination von Blöcken kann in einem Projekt verwendet werden, um das Ausgangsförderband anzuhalten, wenn sich ein Objekt unter dem Objektsensor befindet. Der BlockErkennungsschwellefestlegen“ kann zu Beginn eines Projekts zum Festlegen der Schwelle verwendet werden, genau wie der BlockGrößer alsim oben erstellten Projekt. 

VEXcode EXP-Block „Erkennungsschwelle festlegen“ mit dem Text „Erkennungsschwelle des Objektsensors A auf 50 % festlegen“.

Sobald der Schwellenwert festgelegt ist, kann der Block „Boolescherkennt Objektin allen Blöcken mit sechseckigen Bereichen verwendet werden. Dieser Block meldet „TRUE“, wenn der durch den BlockErkennungsschwellefestlegen“ definierte Erkennungsschwellenwert erreicht wird, oder „FALSE“, wenn der Reflektivitätsprozentsatz unter diesem Schwellenwert liegt.

VEXcode EXP erkennt Objektblock mit dem Text „Objektsensor A erkennt Objekt?“.

Da der BlockErkenntObjektein Boolescher Block ist, passt er direkt in den BlockWarten bis.

Alternative Version des VEXcode EXP-Stapels, wobei der Boolesche Block „Warten bis“ in ein Erkennungsschwellenwertsystem geändert wurde. Der gesamte Stapel lautet nun: „Beim Start den Erkennungsschwellenwert des Objektsensors A auf 9 % einstellen.“ Als nächstes drehen Sie das Eingangsförderband 1 einwärts, warten 7 Sekunden und stoppen dann das Eingangsförderband 1. Drehen Sie anschließend das Transportband 2 vorwärts, warten Sie 5 Sekunden und stoppen Sie dann das Transportband 2. Drehen Sie anschließend das Ausgangsförderband 4 einwärts, warten Sie, bis Objektsensor A ein Objekt erkennt, und stoppen Sie dann das Ausgangsförderband 4.

Überprüfen Sie Ihr Verständnis

Bevor Sie mit der nächsten Lektion fortfahren, stellen Sie sicher, dass Sie die Konzepte dieser Lektion verstehen, indem Sie die folgenden Fragen in Ihrem technischen Notizbuch beantworten.

Überprüfen Sie Ihre Verständnisfragen > (Google Doc / .docx / .pdf )


Wählen Sie Weiter > , um mit der Aktivität „Alles zusammenfügen“ fortzufahren.