Motoren und Motorengruppen#
Einführung#
Motors and motor groups control how parts of a robot move. A motor controls one configured Smart Motor, while a motor group controls two configured Smart Motors together so they move in tandem. Motors and motor groups can be used to raise an arm, turn a claw, spin a wheel, or move another part of a build. Two motors can work together as a drivetrain to move and turn the whole robot.
Jeder Motor wird im Gerätefenster konfiguriert. Je nach Konfiguration können die Motornamen und Drehrichtungen variieren. Ein kundenspezifischer Roboter kann andere Motornamen oder Drehrichtungen verwenden.
Standardmäßig dreht sich ein Motor im Vorwärtsmodus gegen den Uhrzeigersinn und im Rückwärtsmodus im Uhrzeigersinn. Wenn im Gerätefenster die Drehrichtung eines Motors auf Umkehrung eingestellt ist, werden diese Richtungen vertauscht.
Es gibt viele Möglichkeiten, Motoren und Motorgruppen zu codieren. Nachfolgend finden Sie eine Liste aller Motoren- und Motorgruppenblöcke:
Aktionen – Motoren und Motorgruppen anhalten und drehen.
Motor drehen — Dreht einen Motor oder eine Motorgruppe unendlich lange vorwärts oder rückwärts.
spin motor for — Dreht einen Motor oder eine Motorgruppe über eine bestimmte Distanz.
Motor in Position drehen — Dreht einen Motor oder eine Motorgruppe in eine bestimmte Position.
Motor stoppen — Stoppt die Drehung eines Motors oder einer Motorgruppe.
Einstellungen – Motor- und Motorgruppeneinstellungen anpassen.
Motorposition festlegen — Ändert die aktuelle Position des Motors oder der Motorgruppe auf einen neuen Wert.
Motorgeschwindigkeit einstellen — Gibt einem Motor oder einer Motorgruppe die gewünschte Drehgeschwindigkeit vor.
Motorstopp einstellen — Legt fest, wie ein Motor oder eine Motorgruppe zum Stillstand kommt: durch Bremsen, Auslaufen oder Halten.
Maximales Drehmoment des Motors einstellen — Legt fest, wie stark ein Motor oder eine Motorgruppe beim Drehen drücken darf.
set motor timeout — Legt fest, wie viele Sekunden ein Motor oder eine Motorgruppe versucht, eine Bewegung abzuschließen.
Werte – Motor- und Motorgruppenstatus prüfen.
Motor ist fertig — Meldet, ob der Motor oder die Motorgruppe die Bewegung beendet hat.
Motor dreht sich — Meldet, ob sich der Motor oder die Motorgruppe dreht.
Motorposition — Gibt die aktuelle Position des Motors oder der Motorgruppe an.
Motorgeschwindigkeit — Gibt an, wie schnell sich der Motor oder die Motorgruppe dreht.
Motorstrom — Zeigt an, wie viel elektrischer Strom der Motor oder die Motorgruppe verbraucht.
Aktionen#
Spinmotor#
Der Drehmotor-Stapelblock lässt einen Motor oder eine Motorgruppe endlos vorwärts oder rückwärts drehen. Der Motor oder die Motorgruppe dreht sich so lange, bis eine andere Aktion ausgelöst wird, z. B. eine Drehung in eine andere Richtung oder ein Stopp.
drehe [Motor1 v] [vorwärts v]
Parameter |
Beschreibung |
|---|---|
Motor |
Der zu drehende Motor oder die Motorgruppe. Wählen Sie einen der im Gerätefenster konfigurierten Motoren aus. |
Richtung |
Die Drehrichtung des Motors bzw. der Motorgruppe. Standardmäßig stehen die Optionen vorwärts und rückwärts zur Verfügung. Die Drehrichtung kann je nach Motorkonfiguration variieren. |
Beispiel
wenn gestartet
[Spin the motor forward, then stop.]
drehe [Motor1 v] [vorwärts v]
warte (1) Sekunden
stoppe [Motor1 v]
Spinmotor für#
Der Drehmotor für Stapelblock versetzt einen Motor oder eine Motorgruppe in Rotation über eine bestimmte Strecke. Die Rotation erfolgt relativ zur aktuellen Position des Motors oder der Motorgruppe. Das Projekt wartet, bis der Motor oder die Motorgruppe ihre Rotation abgeschlossen hat, bevor der nächste Block im Stapel ausgeführt wird.
drehe [Motor1 v] [vorwärts v] für (90) [Grad v] ▶
Parameter |
Beschreibung |
|---|---|
Motor |
Der zu drehende Motor oder die Motorgruppe. Wählen Sie einen der im Gerätefenster konfigurierten Motoren aus. |
Richtung |
Die Drehrichtung des Motors bzw. der Motorgruppe. Standardmäßig stehen die Optionen vorwärts und rückwärts zur Verfügung. Die Drehrichtung kann je nach Motorkonfiguration variieren. |
Distanz |
Die Strecke, die der Motor oder die Motorgruppe zurücklegt. Gradangaben erfolgen mit ganzen Zahlen. Umdrehungen können mit ganzen Zahlen oder Dezimalzahlen angegeben werden. |
Einheit |
Die Entfernungseinheit: Grad oder Umdrehungen. |
und warte nicht |
Wählen Sie den Pfeil ( ▶ ), um den Block zu erweitern und und warten Sie nicht anzuzeigen, damit der nächste Block im Stapel sofort ausgeführt wird. |
Beispiel
wenn gestartet
[Spin the motor forward once, then reset.]
drehe [Motor1 v] [vorwärts v] für (90) [Grad v] ▶
drehe [Motor1 v] [rückwärts v] für (90) [Grad v] ▶
Drehmotor in Position#
Der Spin-Motor-Position-Stapelblock dreht einen Motor oder eine Motorgruppe in eine bestimmte Position.
Die Position eines Motors oder einer Motorgruppe gibt an, wie weit er sich gedreht hat, gemessen in Grad oder Umdrehungen. Eine Umdrehung entspricht 360 Grad. Zu Beginn eines Projekts ist die Motorposition auf 0 Grad eingestellt. Die Motorposition kann auch mit dem Block Motorposition festlegen eingestellt werden.
Positionswerte sind absolut. Das bedeutet, dass die Drehrichtung von der aktuellen Position des Motors bzw. der Motorgruppe abhängt.
drehe [Motor1 v] zu Position (90) [Grad v] ▶
Parameter |
Beschreibung |
|---|---|
Motor |
Der zu drehende Motor oder die Motorgruppe. Wählen Sie einen der im Gerätefenster konfigurierten Motoren aus. |
Position |
Der Positionswert, bis zu dem sich der Motor oder die Motorgruppe dreht. Gradangaben verwenden ganze Zahlen. Umdrehungen können ganze Zahlen oder Dezimalzahlen sein. |
Einheit |
Die Positionseinheit: Grad oder Umdrehungen. |
und warte nicht |
Wählen Sie den Pfeil ( ▶ ), um den Block zu erweitern und und warten Sie nicht anzuzeigen, damit der nächste Block im Stapel sofort ausgeführt wird. |
Beispiel
wenn gestartet
[Spin the motor, then put the motor at half of a rotation.]
drehe [Motor1 v] [vorwärts v]
warte (2) Sekunden
drehe [Motor1 v] zu Position (180) [Grad v] ▶
Motor stoppen#
Der Motorstopp-Block stoppt sofort den ausgewählten Motor oder die ausgewählte Motorgruppe.
stoppe [Motor1 v]
Parameter |
Beschreibung |
|---|---|
Motor |
Der zu stoppende Motor oder die zu stoppende Motorgruppe. Wählen Sie aus den im Gerätefenster konfigurierten Motoren aus. |
Beispiel
wenn gestartet
[Stop the motor after 1 second.]
drehe [Motor1 v] [vorwärts v]
warte (1) Sekunden
stoppe [Motor1 v]
Einstellungen#
Motorposition einstellen#
Die Position eines Motors oder einer Motorgruppe wird in Grad oder Umdrehungen gemessen. Eine Umdrehung entspricht 360 Grad. Der Block „Motorposition festlegen“ ändert die aktuelle Position des Motors oder der Motorgruppe auf einen neuen Wert.
Hat sich ein Motor beispielsweise um 180 Grad gedreht, wird durch Einstellen der Position auf 0 Grad diese Position von 180 auf 0 Grad zurückgesetzt. Anschließend kann sich der Motor basierend auf diesem neuen Wert in verschiedene Positionen drehen.
setze [Motor1 v] Position auf (0) [Grad v]
Parameter |
Beschreibung |
|---|---|
Motor |
Der Motor oder die Motorgruppe, deren Position festgelegt werden soll. Wählen Sie aus den im Fenster „Geräte“ konfigurierten Motoren aus. |
Position |
Der für den Motor oder die Motorgruppe einzustellende Positionswert. Grad werden als ganze Zahlen angegeben. Umdrehungen können als ganze Zahlen oder Dezimalzahlen angegeben werden. |
Einheit |
Die Positionseinheit: Grad oder Umdrehungen. |
Beispiel
wenn gestartet
[Spin the motor to the new 0 position.]
setze [Motor1 v] Position auf [180] [Grad v]
drehe [Motor1 v] zu Position [0] [Grad v] ▶
Motorgeschwindigkeit einstellen#
Der Motorgeschwindigkeit einstellen-Block legt die Drehzahl eines Motors oder einer Motorgruppe fest. Ein höherer Prozentwert beschleunigt die Drehung, ein niedrigerer Prozentwert verlangsamt sie.
Jedes Projekt beginnt standardmäßig damit, dass jeder Motor mit 50 % Drehzahl läuft.
Hinweis: Eine höhere Drehzahl lässt den Motor schneller drehen, kann aber die Präzision verringern. Eine niedrigere Drehzahl lässt den Motor langsamer drehen, kann aber die Präzision erhöhen.
setze [Motor1 v] Geschwindigkeit auf (50) [% v]
Parameter |
Beschreibung |
|---|---|
Motor |
Der Motor oder die Motorgruppe, deren Drehzahl eingestellt werden soll. Wählen Sie aus den im Gerätefenster konfigurierten Motoren aus. |
Geschwindigkeit |
Die Drehzahl des Motors bzw. der Motorgruppe. Prozent verwendet ganze Zahlen von 0 % bis 100 %. U/min verwendet ganze Zahlen von 0 bis 127. |
Einheit |
Die Geschwindigkeitseinheit: % oder rpm (Umdrehungen pro Minute). |
Beispiel
wenn gestartet
[Spin forward at the default velocity.]
drehe [Motor1 v] [vorwärts v] für (90) [Umdrehungen v] ▶
[Spin slower.]
setze [Motor1 v] Geschwindigkeit auf (20) [% v]
drehe [Motor1 v] [rückwärts v] für (90) [Umdrehungen v] ▶
[Spin faster.]
setze [Motor1 v] Geschwindigkeit auf (100) [% v]
drehe [Motor1 v] [vorwärts v] für (90) [Umdrehungen v] ▶
Motorstopp einstellen#
Der Motorstopp-Block legt fest, wie ein Motor oder eine Motorgruppe zum Stillstand kommt: durch Bremsen, Auslaufen oder Halten.
setze [Motor1 v] Stopp auf [Bremsen v]
Parameter |
Beschreibung |
|---|---|
Motor |
Der Motor oder die Motorgruppe, für die das Stoppverhalten festgelegt werden soll. Wählen Sie aus den im Fenster „Geräte“ konfigurierten Motoren aus. |
Stoppverhalten |
So stoppt der Motor bzw. die Motorgruppe:
|
Wenn dieser Block nicht verwendet wird, betätigt der Motor beim Anhalten die Bremse.
Maximales Drehmoment des Motors einstellen#
Das Drehmoment ist eine Drehkraft. Es zeigt an, wie stark ein Motor beim Drehen drücken oder ziehen kann.
Der set motor max torque-Block legt das maximale Drehmoment fest, das ein Motor oder eine Motorgruppe verwenden darf.
Ein höherer Prozentsatz ermöglicht es dem Motor oder der Motorgruppe, stärker zu drücken, beispielsweise beim Anheben eines schweren Gegenstands. Ein niedrigerer Prozentsatz begrenzt die maximale Schubkraft des Motors oder der Motorgruppe. Dies kann den Roboter schützen, falls der Motor blockiert oder seinen maximalen Bewegungsbereich erreicht.
Jedes Projekt beginnt standardmäßig mit einem Drehmoment von 50 % für jeden Motor.
setze [Motor1 v] Maximaldrehmoment auf [50] %
Parameter |
Beschreibung |
|---|---|
Motor |
Der Motor oder die Motorgruppe, für die das maximale Drehmoment eingestellt werden soll. Wählen Sie aus den im Gerätefenster konfigurierten Motoren aus. |
Drehmoment |
Das maximale Drehmoment, das der Motor oder die Motorgruppe von 0 % bis 100 % nutzen kann. |
Beispiel
wenn gestartet
[Spin the motor at the default torque.]
drehe [Motor1 v] zu Position (200) [Grad v] ▶
warte (0.5) Sekunden
[Spin at a lower torque.]
setze [Motor1 v] Maximaldrehmoment auf (20) %
drehe [Motor1 v] zu Position (0) [Grad v] ▶
warte (0.5) Sekunden
[Spin at the maximum torque.]
setze [Motor1 v] Maximaldrehmoment auf (100) %
drehe [Motor1 v] zu Position (200) [Grad v] ▶
Motor-Timeout einstellen#
Der Motor-Timeout festlegen-Block bestimmt, wie viele Sekunden ein Motor oder eine Motorgruppe versucht, eine Bewegung abzuschließen. Gelingt dies nicht, bricht der Motor oder die Motorgruppe den Versuch ab und fährt mit dem nächsten Block im Stapel fort. Dadurch wird verhindert, dass der Motor oder die Motorgruppe bei einer Bewegung hängen bleibt.
setze [Motor1 v] Zeitlimit auf (1) Sekunden
Parameter |
Beschreibung |
|---|---|
Motor |
Der Motor oder die Motorgruppe, für die das Timeout festgelegt werden soll. Wählen Sie aus den im Gerätefenster konfigurierten Motoren aus. |
Zeit |
Die Anzahl der Sekunden, die der Motor oder die Motorgruppe versuchen kann, eine Bewegung abzuschließen. Dies kann eine ganze Zahl oder eine Dezimalzahl sein. |
Beispiel
wenn gestartet
[Spin the motor forward for 1 second, then reset it.]
setze [Motor1 v] Zeitlimit auf (1) Sekunden
drehe [Motor1 v] [vorwärts v] für (5) [Umdrehungen v] ▶
drehe [Motor1 v] zu Position (0) [Grad v] ▶
Werte#
Der Motor ist fertig.#
Der boolesche Block Motor beendet meldet, ob der Motor oder die Motorgruppe ihre Bewegung abgeschlossen hat. Dies kann genutzt werden, um den Zeitpunkt anderer Aktionen basierend auf der Bewegung des Motors oder der Motorgruppe zu steuern.
Wahr — Der Motor bzw. die Motorgruppe hat ihre Bewegung beendet.
Falsch — Der Motor bzw. die Motorgruppe bewegt sich noch.
Dieser Block arbeitet mit den folgenden Motion-Blöcken zusammen, die den Parameter und nicht warten haben: Motor drehen für und Motor drehen zu Position.
<[Motor1 v] abgeschlossen?>
Parameter |
Beschreibung |
|---|---|
Motor |
Der Motor oder die Motorgruppe, die melden soll, ob die Bewegung abgeschlossen ist. Wählen Sie einen der im Gerätefenster konfigurierten Motoren aus. |
Beispiel
wenn gestartet
[Drive forward until the motor is done spinning.]
drehe [Motor1 v] [vorwärts v] für (200) [Grad v] ◀ und nicht warten
für immer
wenn <[Motor1 v] abgeschlossen?> dann
Fahren stoppen
sonst
fahre [vorwärts v]
Der Motor dreht sich#
Der boolesche Block Motor dreht sich meldet, ob sich der Motor oder die Motorgruppe dreht. Dies kann genutzt werden, um den Zeitpunkt anderer Aktionen basierend auf der Bewegung des Motors oder der Motorgruppe zu steuern.
Wahr — Der Motor bzw. die Motorgruppe dreht sich.
Falsch — Der Motor bzw. die Motorgruppe dreht sich nicht.
Dieser Block arbeitet mit den folgenden Motion-Blöcken zusammen, die den Parameter und nicht warten haben: Motor drehen für und Motor drehen zu Position.
<[Motor1 v] dreht?>
Parameter |
Beschreibung |
|---|---|
Motor |
Der Motor oder die Motorgruppe, deren Drehzustand gemeldet werden soll. Wählen Sie einen der im Gerätefenster konfigurierten Motoren aus. |
Beispiel
wenn gestartet
[Move forward while the motor is spinning.]
drehe [Motor1 v] [vorwärts v] für (200) [Grad v] ◀ und nicht warten
solange <[Motor1 v] dreht?>
fahre [vorwärts v]
Ende
Fahren stoppen
Motorposition#
Die Position eines Motors oder einer Motorgruppe wird in Grad oder Umdrehungen gemessen und gibt an, wie weit er sich gedreht hat. Eine Umdrehung entspricht 360 Grad. Der Block „Motorposition“ meldet die aktuelle Position des Motors oder der Motorgruppe.
Zu Beginn eines Projekts wird die Motorposition auf 0 Grad eingestellt. Dreht sich der Motor eine volle Umdrehung vorwärts, beträgt die Position 360 Grad bzw. eine Umdrehung. Dreht sich der Motor in die andere Richtung, ist die Position negativ.
([Motor1 v] Position in [Grad v])
Parameter |
Beschreibung |
|---|---|
Motor |
Der Motor oder die Motorgruppe, deren Position gemeldet werden soll. Wählen Sie aus den im Gerätefenster konfigurierten Motoren aus. |
Einheit |
Die Einheit, in der die Motorposition angegeben werden soll: Grad oder Umdrehungen. |
Beispiel
wenn gestartet
[Display the motor's position after spinning.]
drucke ([Motor1 v] Position in [Grad v]) auf Bildschirm ◀ und Cursor in nächste Zeile
drehe [Motor1 v] [vorwärts v]
warte (1) Sekunden
drucke ([Motor1 v] Position in [Grad v]) auf Bildschirm ▶
stoppe [Motor1 v]
Motorgeschwindigkeit#
Der Motorgeschwindigkeits-Reporterblock gibt an, wie schnell sich der Motor oder die Motorgruppe dreht, entweder als Prozentsatz von -100% bis 100% oder als Umdrehungen pro Minute (U/min) von -127 bis 127.
([Motor1 v] Geschwindigkeit in [% v])
Parameter |
Beschreibung |
|---|---|
Motor |
Der Motor oder die Motorgruppe, deren Drehzahl gemeldet werden soll. Wählen Sie aus den im Gerätefenster konfigurierten Motoren aus. |
Einheit |
Die Einheit, in der die Motordrehzahl angegeben werden soll: % oder rpm (Umdrehungen pro Minute). |
Beispiel
wenn gestartet
[Display the motor's velocity from spinning.]
drucke ([Motor1 v] Geschwindigkeit in [rpm v]) auf Bildschirm ◀ und Cursor in nächste Zeile
drehe [Motor1 v] [vorwärts v]
warte (1) Sekunden
drucke ([Motor1 v] Geschwindigkeit in [rpm v]) auf Bildschirm ▶
stoppe [Motor1 v]
Motorstrom#
Der Motorstrom-Reporterblock meldet, wie viel elektrischer Strom der ausgewählte Motor oder die ausgewählte Motorgruppe verbraucht, gemessen in Ampere von 0,0 bis 1,2 A. Strom ist die Menge an Elektrizität, die durch den Motor oder die Motorgruppe fließt.
Ein höherer Stromwert bedeutet, dass der Motor oder die Motorgruppe mehr Strom verbraucht. Dies kann vorkommen, wenn der Motor oder die Motorgruppe etwas Schweres anhebt, gegen ein Hindernis drückt oder versucht, sich aus einer Blockade zu bewegen.
Dies kann genutzt werden, um zu überprüfen, ob der Motor oder die Motorgruppe während einer Bewegung überlastet ist. Bleibt der Stromfluss hoch, kann der Motor sich erwärmen oder weniger effizient arbeiten.
([Motor1 v] Strom in [amps v])
Parameter |
Beschreibung |
|---|---|
Motor |
Der Motor oder die Motorgruppe, deren Stromstärke gemessen werden soll. Wählen Sie den im Fenster „Geräte“ konfigurierten Motor aus. |
Einheit |
Die Einheit, in der der Strom gemessen wird: Ampere. |
Beispiel
wenn gestartet
[Display the motor's current from spinning.]
setze Druckgenauigkeit auf [0.01 v] auf Bildschirm
drucke ([Motor1 v] Strom in [amps v]) auf Bildschirm ◀ und Cursor in nächste Zeile
drehe [Motor1 v] [vorwärts v]
warte (1) Sekunden
drucke ([Motor1 v] Strom in [amps v]) auf Bildschirm ▶
stoppe [Motor1 v]