Der Roboter existiert in einer bestimmten Umgebung (rechteckiges Schachbrettfeld). Zwischen einigen Zellen des Feldes können sich Wände befinden. Einige Zellen können übermalt werden (Abb. 3.11).
Der Roboter nimmt genau ein Feld des Feldes ein.
Durch die Befehle nach oben, unten, links und rechts bewegt sich der Roboter in die angegebene Richtung zu einer benachbarten Zelle. Wenn sich eine Wand auf dem Weg befindet, erfolgt eine Ablehnung - eine Nachricht wird ausgegeben, dass der nächste Befehl nicht ausgeführt werden kann.
Auf den Befehl zum Übermalen malt der Roboter die Zelle, in der er steht. Wenn die Zelle bereits übermalt wurde, wird sie erneut übermalt, obwohl keine sichtbaren Änderungen auftreten.
Der Roboter kann nur korrekt geschriebene Befehle ausführen. Wenn statt des Befehls aufschreiben, aufschreiben, dann wird der Roboter diese Eingabe nicht verstehen und sofort einen Fehler melden.
Ö
Fehler: 1 Syntax; 2. logisch
Situationsbeschreibungen werden in Textdateien eines speziellen Formats (.fil-Format) gespeichert.
Strom- die Situation, in der sich der Roboter gerade befindet (einschließlich Informationen über die Position des Roboters).
Beginnend- die Umgebung, in der der Roboter zu Beginn der Ausführung des Programms unter Verwendung des Roboters zwangsweise platziert wird.
Gebrauchsprozedur:
Fragen Startumgebung nach dem Zustand des Problems:
2. Geben Sie den Auftragnehmer an:
Menü einfügen → Roboter verwenden
3. Schreiben Sie einen Algorithmus zur Lösung des Problems.
4. Algorithmus ausführen (Menü Ausführung → Fortlaufend ausführen / F9)
Befehlssystem des Vollstreckers Roboter im KUMIR-System
Team |
Aktion |
hoch |
Der Roboter bewegt sich 1 Zelle nach oben |
Nieder |
Der Roboter fährt 1 Zelle nach unten |
Nach links |
Der Roboter bewegt sich 1 Zelle nach links |
Nach rechts |
Der Roboter bewegt sich 1 Feld nach rechts |
übermalen |
Der Roboter bemalt den Käfig, in dem er sich befindet |
richtig frei |
Der Roboter prüft die Erfüllung der entsprechenden einfach Bedingungen |
frei gelassen |
↓ |
frei von oben |
↓ |
von unten frei |
↓ |
die Zelle ist übermalt |
↓ |
der käfig ist sauber |
↓ |
Zyklische Algorithmen
Zyklus- Organisation der Wiederholung von Aktionen, während eine bestimmte Bedingung erfüllt ist .
Der Körper der Schleife ist eine Reihe von wiederholbaren Aktionen.
Kondition - boolescher Ausdruck (einfach oder komplex (zusammengesetzt))
Zyklustypen:
1.Zyklus „n-mal wiederholen“ 2. Zyklus „Tschüss“
nc n mal nc tschüss
... ... Schleifenkörper. ... Schleifenkörper
kts kts
Beispiel: nc tschüss richtig frei
Gesamtansicht des Zyklus „n-mal wiederholen:
n MAL WIEDERHOLEN
DAS ENDE
kts
Gesamtansicht des "bye"-Zyklus:
WÄHREND ZU TUN
DAS ENDE
Zusammengesetzte Bedingungen werden aus einer oder mehreren einfachen Bedingungen und Servicewörtern gebildet UND, ODER, NICHT.
Zusammengesetzte Bedingung A UND B(wobei A, B einfache Bedingungen sind) ist erfüllt, wenn jede der beiden darin enthaltenen einfachen Bedingungen erfüllt ist.
Lass A - frei von oben, V - rechts frei, dann die zusammengesetzte Bedingung A UND B- oben frei UND rechts frei.
Zusammengesetzte Bedingung A ODER B ist erfüllt, wenn mindestens eine der beiden darin enthaltenen einfachen Bedingungen erfüllt ist: freies Top ODER freies Recht
Zusammengesetzte Bedingung KEIN- erfüllt, wenn Bedingung A.
Beispiel: Sei A eine farbige Zelle (einfache Bedingung).
P Überprüfen der zusammengesetzten Bedingung NICHT A:
a) A - fertig, NOT A (NICHT übermalt) - nicht fertig.
b) A - nicht erledigt, NOT A (NICHT ausgefüllt) - erledigt.
Verzweigungsbefehl
Verzweigung - eine Form der Handlungsorganisation, bei der je nach Erfüllung oder Nichterfüllung einer bestimmten Bedingung entweder die eine oder andere Handlungsfolge ausgeführt wird.
Allgemeine Ansicht des IF-Befehls:
WENN DANN ANSONSTEN
DAS ENDE
In der Idolsprache:
Vollständige Verzweigung: Unvollständige Verzweigung:
wenn dann
wenn dann
ansonsten
alles alles
Helferalgorithmus- ein Algorithmus, der eine Teilaufgabe der Hauptaufgabe löst.
Im KUMIR-System werden Hilfsalgorithmen am Ende des Hauptprogramms (nach dem Servicewort con) werden zur Ausführung im Hauptprogramm namentlich aufgerufen.
V Umfragen und Aufgaben
1. Geben Sie alle Algorithmen der drei Teams an, die den Roboter von der Startposition in Zelle B bewegen.
Gibt es für diese Aufgabe einen Algorithmus, bei dem der Roboter:
a) zwei Schritte; b) vier Schritte; c) fünf Schritte; d) sieben Schritte?
Petya hat einen Algorithmus zusammengestellt, der den Roboter von Zelle A zu Zelle B transferiert und einige Zellen bemalt. Was sollte Kolya mit diesem Algorithmus machen, um einen Algorithmus zu erhalten, der den Roboter von B nach A transferiert und die gleichen Zellen ausfüllt?
7. Zwei Hilfsalgorithmen des Roboters sind bekannt.
Zeichnen Sie, was passiert, wenn der Roboter die folgenden grundlegenden Algorithmen ausführt:
ein) nts 5 mal Muster_1 Nach rechts; Nach rechts; |
B) nts 7 mal Muster_2 Nach rechts; Nach rechts |
v) Nach rechts; Nach rechts; Nach rechts hoch; hoch Nach rechts; Nach rechts; Nach rechts Nieder; Nieder |
G) Nach rechts; Nach rechts Nach rechts; Nach rechts |
8. Erstellen Sie Algorithmen, unter deren Kontrolle der Roboter die angezeigten Zellen malt:
9... Es ist bekannt, dass sich rechts neben dem Roboter eine Wand befindet. Erstellen Sie einen Algorithmus, unter dessen Kontrolle der Roboter eine Reihe von Zellen an die Wand malt und in seine ursprüngliche Position zurückkehrt.
10. Es ist bekannt, dass sich rechts neben dem Roboter eine ausgefüllte Zelle befindet.
MIT verlassen Sie den Algorithmus, nach dem der Roboter eine Reihe von Zellen bis zur gefüllten Zelle malt, und kehrt zu seiner ursprünglichen Position zurück.
11. Es ist bekannt, dass sich der Roboter in der Nähe des linken Eingangs zum horizontalen Korridor befindet.
12. Es ist bekannt, dass sich der Roboter irgendwo im horizontalen Korridor befindet. Keine der Zellen im Korridor ist übermalt.
Erstellen Sie einen Algorithmus, unter dessen Kontrolle der Roboter alle Zellen dieses Korridors übermalt und an seine ursprüngliche Position zurückkehrt.
13. In einer Reihe von zehn Zellen rechts vom Roboter werden einige Zellen übermalt.
MIT verlassen Sie den Algorithmus, der die Zellen malt:
a) unter jeder gefüllten Zelle;
b) über und unter jeder gefüllten Zelle.
14. Was können Sie über die Korrektheit des folgenden Fragments des Algorithmus sagen?
nc tschüss die Zelle ist übermalt
WENN richtig frei DANN
Nach rechts; übermalen
Zu
C
15. Schreiben Sie ein Programm, mit dem der Roboter Zelle B in alle drei Labyrinthe betreten kann.
16. Schreiben Sie ein Programm, nach dem der Roboter den Korridor von der unteren linken Ecke des Feldes nach oben rechts ablaufen kann. Der Korridor ist eine Zelle breit und erstreckt sich von links nach unten nach rechts oben. Ein Beispiel für einen möglichen Korridor ist in der Abbildung dargestellt.
Z
adachi GIA
Korridor 1. Der Roboter befindet sich irgendwo in einem vertikalen Korridor. Keine der Zellen im Korridor ist übermalt. Erstellen Sie einen Algorithmus, unter dessen Kontrolle der Roboter alle Zellen dieses Korridors übermalt und an seine ursprüngliche Position zurückkehrt.
ZU
NotwendigGegeben
oridor2. Der Roboter befindet sich im oberen Käfig eines schmalen vertikalen Korridors. Die Breite des Korridors beträgt eine Zelle, die Länge des Korridors kann beliebig sein.
Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen innerhalb des Korridors bemalt und den Roboter an seine ursprüngliche Position zurückbringt. Für das obige Bild sollte der Roboter beispielsweise die folgenden Zellen übermalen (siehe Bild):
Das endlose Feld hat eine lange horizontale Wand. Die Länge der Mauer ist unbekannt. Der Roboter befindet sich in einem der Käfige direkt über der Wand. Die Ausgangsposition des Roboters ist ebenfalls unbekannt. Eine der möglichen Positionen:
Notwendig
Gegeben
Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen über und neben der Wand malt, unabhängig von der Größe der Wand und der Ausgangsposition des Roboters. Für das obige Bild muss der Roboter beispielsweise die folgenden Zellen übermalen:
Die Endposition des Roboters kann beliebig sein. Beim Ausführen des Algorithmus sollte der Roboter nicht zerstört werden.
Das endlose Feld hat eine lange senkrechte Wand. Die Länge der Mauer ist unbekannt. Der Roboter befindet sich in einem der Käfige direkt rechts von der Wand. Auch die Ausgangsposition des Roboters ist unbekannt. Eine der möglichen Positionen des Roboters ist in der Abbildung dargestellt (der Roboter wird mit dem Buchstaben "P" bezeichnet): Schreiben Sie einen Algorithmus für die Arbeit, der alle an die Wand angrenzenden Zellen bemalt: links, von oben beginnend unbemalt und nach einem; rechts, beginnend mit dem unteren ausgefüllt und durch eins. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Für das obige Bild muss der Roboter beispielsweise die folgenden Felder ausfüllen (siehe Bild): Die Endposition des Roboters kann beliebig sein. Der Algorithmus muss das Problem für eine beliebige Wandgröße und eine beliebige gültige Startposition des Roboters lösen. Beim Ausführen des Algorithmus sollte der Roboter nicht zusammenbrechen.
Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen ausfüllt, die sich links von der vertikalen Wand und über der horizontalen Wand und neben ihnen befinden. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Für das obige Bild sollte der Roboter beispielsweise die folgenden Zellen übermalen (siehe Bild).
n Schreiben Sie einen Algorithmus für den Roboter, der die Zellen neben der Wand oben und unten malt, beginnend von links und nacheinander. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Zum Beispiel für die gegebene Abbildung a) Der Roboter muss die folgenden Zellen überstreichen (siehe Abb. B).
Die Endposition des Roboters kann beliebig sein. Der Algorithmus sollte das Problem für eine beliebige Wandgröße und jede gültige Startposition des Roboters lösen.
R | |||||
Das endlose Feld hat eine lange senkrechte Wand. Die Länge der Mauer ist unbekannt. Der Roboter befindet sich in einem der Käfige direkt links von der Wand. Auch die Ausgangsposition des Roboters ist unbekannt. Eine der möglichen Positionen des Roboters ist in der Abbildung dargestellt (der Roboter ist mit dem Buchstaben "P" gekennzeichnet):
alles links;
rechts, von oben beginnend unbemalt und durch eins.
B
1102_GIA2011
Das endlose Feld hat zwei horizontale Wände. Die Länge der Mauern ist unbekannt. Der Abstand zwischen den Wänden ist unbekannt. Der Roboter befindet sich über der unteren Wand des Käfigs, an dessen linker Kante. Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen ausfüllt, die sich über der unteren Wand und unter der oberen Wand und neben ihnen befinden. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Für das obige Bild muss der Roboter beispielsweise die folgenden Zellen übermalen (siehe Bild):
Die Endposition des Roboters kann beliebig sein. Der Algorithmus muss das Problem für eine beliebige Feldgröße und jede akzeptable Lage von Wänden innerhalb eines rechteckigen Felds lösen. Beim Ausführen des Algorithmus sollte der Roboter nicht zusammenbrechen.
V
1103_GIA_2011
Auf dem endlosen Feld befindet sich eine horizontale Wand. Die Länge der Mauer ist unbekannt. Eine vertikale Wand unbekannter Länge erstreckt sich auch vom rechten Ende der Wand nach unten. Der Roboter befindet sich über einer horizontalen Wand in einem Käfig an seinem linken Rand. Die Abbildung zeigt eine der Möglichkeiten, die Wände und den Roboter anzuordnen (der Roboter ist mit dem Buchstaben "P" gekennzeichnet).
Schreiben Sie einen Algorithmus für den Roboter, der alle Zellen ausfüllt, die sich über der horizontalen Wand und rechts von der vertikalen Wand und neben ihnen befinden. Der Roboter darf nur Zellen lackieren, die diese Bedingung erfüllen. Für das obige Bild sollte der Roboter beispielsweise die folgenden Zellen übermalen (siehe Bild).
Idol-Programm
Künstler Roboter
Wer ist Performer-Roboter?
- Stellen Sie sich ein kariertes Feld (wie ein Blatt eines karierten Notizbuchs) vor, auf dem sich ein Objekt befindet, das wir einen Roboter nennen. Mit speziellen Befehlen können wir diesen Roboter steuern - bewegen Sie ihn um die Zellen herum, malen Sie über die Zellen. Und in den meisten Fällen besteht unsere Aufgabe darin, ein solches Programm für den Roboter zu schreiben, mit dem er bestimmte Zellen übermalt.
Einrichten der Idol-Umgebung für den Performer-Roboter
- Das laufende Programm Idol sieht so aus.
Startumgebung des Roboters
- Bevor mit der Ausführung des Programms begonnen wird, muss die Startsituation für den Roboter-Performer eingestellt werden. Dies bedeutet, den Roboter in die gewünschte Position zu bringen, die Wände anzuordnen, die erforderlichen Zellen zu bemalen usw. Dieser Schritt ist sehr wichtig. Wenn Sie es ignorieren, funktioniert das Programm möglicherweise nicht richtig oder wird sogar abnormal beendet.
Drücken Sie Einrichtung bearbeiten
Künstler Roboter. Einfache Befehle.
- hoch
- Nieder
- Nach links
- Nach rechts
- übermalen
Das Ergebnis der Ausführung dieser Befehle ist aus ihrem Namen ersichtlich:
- nach oben - bewege den Roboter ein Feld nach oben
- nach unten – bewege den Roboter ein Feld nach unten
- left - bewege den Roboter ein Feld nach links
- rechts - bewege den Roboter ein Feld nach rechts
- Übermalen - Übermalen Sie die aktuelle Zelle (die Zelle, in der sich der Roboter befindet).
Beispiel für einen Algorithmus
- Zuerst müssen Sie den Satz schreiben:
- benutzen Roboter
Wenn Sie wissen, wie viele Zellen Sie übermalen müssen, lautet der Lösungsalgorithmus wie folgt!
Aufgabennummer 1
- Schreiben Sie ein Programm, um das folgende Problem zu lösen, wenn Sie wissen, wie viele Zellen Sie bemalen müssen
Fahrräder
- 1. Zyklus mit Zähler Es wird verwendet, wenn im Voraus bekannt ist, wie viele Wiederholungen durchgeführt werden müssen.
nts mal
…
kts
Hier müssen wir die Anzahl der Wiederholungen (Zahl) und die Befehle angeben, die wiederholt werden. Die Befehle, die in der Schleife wiederholt werden, heißen der Körper des Zyklus.
Aufgabennummer 2
- Schreiben Sie ein Programm, um das folgende Problem mit einer Zählerschleife zu lösen
- 2. Schleife mit Bedingung solange die Bedingung wahr ist - die Schleife wird ausgeführt, wenn falsch nicht wahr ist
- Der Executor Robot hat mehrere Bedingungen
frei von oben
von unten frei
frei gelassen
richtig frei
obere Wand
untere Wand
linke Wand
rechte Wand
- Partikel können verwendet werden: NICHT, UND, ODER
Bedingte Schleifenstruktur
nc tschüss richtig frei
Nach rechts
übermalen
kts
Aufgabennummer 3
- Schreiben Sie ein Programm, um das folgende Problem mithilfe einer bedingten Schleife zu lösen:
Aufgabennummer 4
- Schreiben Sie ein Programm, um das folgende Problem mit Hilfe von Bedingungsschleifen zu lösen:
Probleme lösen:
- 2. Der Roboter muss durch Überstreichen der Wände von der Startposition in die Endposition überführt werden
Aufgabennummer 5
- Auf dem endlosen Feld befindet sich eine horizontale Wand. Die Länge der Mauer ist unbekannt. Der Roboter befindet sich an seinem linken Ende oben auf der Wand. Die Abbildung zeigt die Position des Roboters relativ zur Wand (der Roboter ist mit dem Buchstaben "P" gekennzeichnet):
Antwort auf Aufgabe Nummer 5
- nts bis (unten frei)
übermalen
Der Zyklusbeginn (nts) und die Bedingung (noch nicht (frei von unten)) werden in eine Zeile geschrieben.
Entwurf wenn
- oben frei unten frei links frei rechts frei
- Diese Befehle können in Verbindung mit der Bedingung verwendet werden "wenn" das sieht so aus:
- wenn Kondition dann
- Befehlsfolge
- Um beispielsweise eine Zelle nach rechts zu verschieben, wenn rechts keine Wand ist, und die Zelle zu malen, können Sie den folgenden Algorithmus verwenden:
- wenn das Recht dann frei ist
- Nach rechts
- übermalen
Aufgabennummer 7
Die Länge der Mauern ist unbekannt.
Antwort auf Aufgabe Nummer 7
bis die Spitze frei ist
übermalen
Nach rechts
solange die Spitze frei ist
Nach rechts
während rechts frei ist
übermalen
Nach rechts
bis das Recht frei ist
übermalen
Nieder
während rechts frei ist
Nieder
bis das Recht frei ist
übermalen
Nieder
Aufgabennummer 8
Die Länge der Mauern ist unbekannt.
Jede Wand hat genau einen Durchgang, die genaue Lage des Durchgangs und seine Breite sind unbekannt.
Antwort auf Aufgabe Nummer 8
solange die Spitze frei ist
bis die Spitze frei ist
übermalen
solange die Spitze frei ist
bis die Spitze frei ist
übermalen
bis der Boden frei ist
übermalen
solange der Boden frei ist
bis der Boden frei ist
übermalen
Aufgabennummer 9
Die Länge der Mauern ist unbekannt.
Jede Wand hat genau einen Durchgang, die genaue Lage des Durchgangs und seine Breite sind unbekannt.
Antwort auf Aufgabe Nummer 9
solange der Boden frei ist
bis der Boden frei ist
übermalen
solange der Boden frei ist
bis der Boden frei ist
übermalen
bis die Spitze frei ist
übermalen
solange die Spitze frei ist
bis die Spitze frei ist
übermalen
Aufgabennummer 10
Die Länge der Mauern ist unbekannt.
Jede Wand hat genau einen Durchgang, die genaue Lage des Durchgangs und seine Breite sind unbekannt.
Antwort auf Aufgabennummer 10
solange die linke frei ist
bis frei
übermalen
solange die linke frei ist
bis frei
übermalen
bis das Recht frei ist
übermalen
während rechts frei ist
bis das Recht frei ist
übermalen
Aufgabennummer 11
Die Länge der Mauern ist unbekannt.
Jede Wand hat genau einen Durchgang, die genaue Lage des Durchgangs und seine Breite sind unbekannt.
Antwort auf Aufgabe Nummer 11
bis die Spitze frei ist
bis die Spitze frei ist
übermalen
solange der Boden frei ist
bis die Spitze frei ist
übermalen
Aufgabennummer 12
Es gibt eine Treppe auf dem endlosen Feld. Zuerst geht die Treppe von rechts nach links runter, dann von links nach rechts runter. Die Höhe jeder Stufe beträgt eine Zelle, die Breite beträgt zwei Zellen. Der Roboter befindet sich rechts von der obersten Sprosse der Treppe. Die Anzahl der Schritte nach links und die Anzahl der Schritte nach rechts ist unbekannt. Die Abbildung zeigt eine der Möglichkeiten, die Leiter und den Roboter zu platzieren (der Roboter ist mit dem Buchstaben "P" gekennzeichnet).
Antwort auf Aufgabe Nummer 12
Wir gehen von rechts nach links unter der Treppe hinunter, bis wir die Abzweigung der Treppe erreichen:
nts während unten ist kostenlos
Nieder
Nach links
Nach links
Wir gehen zum Ende der absteigenden Treppe hinunter und übermalen die notwendigen Zellen auf dem Weg:
nts noch nicht freigelassen
übermalen
Nach rechts
übermalen
Nach rechts
Nieder
Antwort auf Aufgabe Nr. 13
nts so weit links ist frei
übermalen
Nach links
hoch
nts noch nicht freigelassen
übermalen
hoch
Aufgabennummer 14
Das unendliche Feld hat ein von Wänden begrenztes Rechteck. Die Längen der Seiten des Rechtecks sind unbekannt. Der Roboter befindet sich in einem Rechteck. Die Abbildung zeigt eine der Möglichkeiten, die Wände und den Roboter anzuordnen (der Roboter ist mit dem Buchstaben "P" gekennzeichnet).
Antwort auf Aufgabe Nummer 14
während rechts frei ist
Nach rechts
solange die Spitze frei ist
hoch
übermalen
nts so weit links ist frei
Nach links
übermalen
Antwort auf Aufgabe Nummer 15
während rechts frei ist
übermalen
Nach rechts
solange der Boden frei ist
übermalen
Nieder
übermalen
bis (unten frei)
Nach links
Nieder
bis (rechts frei)
übermalen
Nieder
übermalen
Nach rechts
bis (oben frei)
übermalen
Nach rechts
Antwort auf Aufgabe Nummer 16
bis das Recht frei ist
übermalen
Nieder
übermalen
Nach rechts
bis die Spitze frei ist
übermalen
Nach rechts
solange die Spitze frei ist
hoch
während rechts frei ist
übermalen
Nach rechts
bis das Recht frei ist
übermalen
Nieder
Der gesamte Prozess besteht aus zwei Phasen: Montage und Programmierung. Der Bau eines guten Roboters erfordert Kenntnisse in der Mechanik. Um den Roboter für bestimmte Aktionen zu programmieren, müssen Sie die Sprache kennen, die das Motherboard oder der Programmblock verstehen. Schulkenntnisse in Informatik sind hier unabdingbar.
Wo bekommt man das Material?
Zuerst müssen Sie entscheiden, wie Sie den Roboter zusammenbauen möchten: aus vorgefertigten Bausätzen oder wählen Sie selbst Materialien aus. Der Vorteil des Bausatzes besteht darin, dass Sie nicht einzeln nach Teilen suchen müssen. Meistens können mehrere Geräte aus einem Set zusammengestellt werden.
Eine Struktur, die nicht aus einem vorgefertigten Set zusammengesetzt ist, wird als offenes System bezeichnet. Es hat auch seine Vorteile: Ihr Roboter wird ein Individuum und Sie selbst können das Design verbessern. Aber verbringen Sie definitiv mehr Zeit und Mühe.
Woraus besteht ein Roboter?
Gehäuse - Metall oder Kunststoff "Karosserie" an dem die restlichen Teile befestigt sind. Jeder Roboter hat eine Energiequelle - Batterien oder Akkus. Je nachdem, welche Aufgabe der Roboter ausführen soll, werden Sensoren ausgewählt: Sie können Farbe und Licht erkennen und auf Berührungen reagieren.
Um den Roboter in Bewegung zu setzen, braucht man Motoren. "Kopf" der gesamte Mechanismus - ein Motherboard oder ein Softwareblock. Mit ihrer Hilfe verbindet sich der Roboter mit einem Computer und erhält eine Reihe von Aufgaben.
Wie bringt man ihn dazu, etwas zu tun?
Damit ein Roboter eine Aktion ausführen kann, müssen Sie ein Computerprogramm erstellen. Die Komplexität dieses Schrittes hängt von der Montage ab. Wird der Roboter aus einem Lego Mindstorms- oder mBot-Set zusammengebaut, kommen auch Kinder mit ihrer Software zurecht.
Wenn Sie selbst einen Roboter bauen, müssen Sie die Grundlagen der Programmierung und die Sprache lernen, in der Sie das Programm schreiben werden, z. B. C++.
Warum kann es sein, dass der Roboter das Programm nicht abschließt?
Wenn er an einem neuen Ort ankommt, kann er sich verlaufen und das Programm falsch ausführen. Damit der Roboter alles richtig macht, müssen die Sensoren justiert werden. Beispielsweise kann eine zu helle Beleuchtung eine ausreichende Farberkennung verhindern. Je nach Untergrund, auf dem sich der Roboter bewegt, wird die Leistung der Motoren geregelt.
Kann ich in der Schule Bauen und Programmieren lernen?
Obwohl Robotik nicht auf dem Lehrplan der Schule steht, können Physik- und Informatiklehrer einem Kind das Zusammenbauen und Programmieren beibringen. In Belgorod haben einige Schulen Clubs, in denen Roboter hergestellt werden.
„Nach dem Unterricht bei Physik- und Informatiklehrern lernen wir Programmieren. Wir wissen bereits, wie man in LegoMindstorms und Robolab arbeitet ( Software für Roboter - ca. Hrsg.). Außerdem lernen wir manchmal, 3D-Zeichnungen von Teilen anzufertigen“, sagten die Schüler des Jugendinternats Belgorod Engineering und die Teilnehmer des „RoboFest-2018“. Anton Pershin und Dmitry Chernov.
Wo kann man neben der Schule Robotik-Ingenieur werden?
Die Ingenieurschule von BelSU hat eine Klasse, in der sie das Zusammenbauen und Programmieren von Robotern unterrichten. 2017 wurde in Belgorod das „Quantorium“ eröffnet, in dem Schülern ab neun Jahren Robotik beigebracht wird.
Um ein echter Robotik-Ingenieur zu werden, können Sie sich in der Robotik-Abteilung einschreiben. In Belgorod gibt es noch keine solchen Leute, aber in BSTU benannt nach Schuchow hat eine Abteilung für technische Kybernetik. Seine Studenten gewinnen Preise bei den Allrussischen Robotik-Wettbewerben.
Können Sie selbst lernen?
Ja. Es gibt viele Ressourcen im Internet, in denen Sie lernen können, was man baut und wie man einen Roboter programmiert.
Wird der Roboter nützlich sein?
Es kann an alltägliche Aufgaben angepasst und als Assistent im Haus verwendet werden. Im Internet gibt es viele Beispiele von Heimerfindern, die Roboter zum Backen von Pfannkuchen oder zum Putzen einer Wohnung herstellen.
Wie können Sie Ihren Erfolg bei der Herstellung von Robotern beweisen?
Nehmen Sie an Wettbewerben wie dem RoboFest teil. Je nach Alter und Richtung gibt es für sie unterschiedliche Nominierungen. Grundsätzlich hat jeder Robotertyp eine Schiene, auf der er Aufgaben ausführt: einen Würfel erobern oder eine Linie zeichnen. Es gibt auch statische Systeme, in denen Juroren die Präsentation des Projekts und die Arbeit der Mechanismen bewerten.
In der Regel kommen die Teilnehmer mit montierten Robotern zum Wettbewerb und verbringen während der Vorbereitung nur Zeit damit, die Sensoren zu kalibrieren und das Programm anzupassen.
Die Redaktion ist dankbar für die Mithilfe bei der Erstellung des Materials der Teilnehmer des "RoboFest-2018" Dmitry Agafonov, Dmitry Chernov, Anton Pershin und Danila Migrina.
Natalia Malykhina
Der Roboter-Darsteller verfügt über ein Befehlssystem. Erwägen einfache Roboterbefehle... Es gibt 5 davon:
hoch- bewege den Roboter ein Feld nach oben
Nieder- bewege den Roboter ein Feld nach unten
Nach links- bewege den Roboter ein Feld nach links
Nach rechts- bewege den Roboter ein Feld nach rechts
übermalen
Übung 1. Zeichnen Sie ein Quadrat mit einer Seite von 3 Zellen.
Einführung des Idols
Entfernen Sie das Symbol "|" und nennen unseren Algorithmus "Square" (neben dem Service-Wort Algen wir schreiben Platz)
übermalen
übermalen
übermalen
Führen Sie das Programm aus und sehen Sie, was passiert. Zum Starten drücken F9 oder die Schaltfläche in der Symbolleiste Führen Sie das Programm aus
Wenn Sie kein solches Roboterfenster haben, klicken Sie in der Symbolleiste auf „ Roboterfenster anzeigen"Oder im Robotermenü wählen Sie" Roboterfenster anzeigen". Wir machen weiter:
Nieder
übermalen
Nieder
übermalen
Dann gehen wir nach links und übermalen den unteren Rand des Quadrats.
Nach links
übermalen
Nach links
übermalen
Wir haben noch eine unbemalte Zelle. Lass uns darüber malen
hoch
übermalen
Alles ist fertig! Als Ergebnis sieht unser Programm so aus:
Roboter verwenden
Alg-Platz
übermalen
übermalen
übermalen
übermalen
übermalen
übermalen
übermalen
übermalen
Aufgabe 2.Verwenden von einfache Roboterbefehle, ein Programm schreiben, das einen Buchstaben zeichnet P, R, W, Sh, T, N.
Schleife mit Bedingung.
Der Executor Robot hat mehrere Bedingungen: oben frei unten frei links frei rechts frei obere Wand untere Wand
linke Wand rechte Wand
Aufgabe 3.
Zeichnen Sie mit einer bedingten Schleife eine vertikale Linie vom linken zum rechten Rand der Box. Anfangs befindet sich der Roboter in der oberen linken Ecke.
Der Quellcode für unser Roboterprogramm sieht in etwa so aus:
Roboter verwenden
Algen
früh
übermalen
nts so weit rechts ist frei
Nach rechts
übermalen
kts
con
Als Ergebnis der Ausführung dieses Programms sehen wir das folgende Bild:
Aufgabe 4.Schreiben Sie ein Programm, das unabhängig von seiner Größe einen Rahmen um den Arbeitsbereich des Roboters erstellt. Natürlich mit Bedingungsschleifen. Als Ergebnis sollte es so aussehen:
Wir haben gelernt, es um weitere Arbeit zu bitten. Kommen wir nun zum Kompilieren von Algorithmen für den Roboter mit einfachen Befehlen.
Wenn Ihnen die Informationen im Format von Video-Tutorials gefallen, bietet die Site ein Video-Tutorial.
Jeder Darsteller muss über ein Befehlssystem ( SKI — Executor-Befehlssystem). Befehlssystem des Vollstreckers- die Menge aller Befehle, die der Ausführende ausführen kann. Betrachten Sie als Beispiel einen trainierten Hund. Sie weiß, wie man einige Befehle ausführt - "Sitz", "Lie down", "In der Nähe" usw. Dies ist ihr Befehlssystem.
Einfache Roboterbefehle
Unser Roboter hat auch ein Befehlssystem. Heute werden wir überlegen einfache Roboterbefehle... Es gibt 5 davon:
- hoch
- Nach links
- Nach rechts
- übermalen
Das Ergebnis der Ausführung dieser Befehle ist aus ihrem Namen ersichtlich:
- hoch- bewege den Roboter ein Feld nach oben
- Nieder- bewege den Roboter ein Feld nach unten
- Nach links- bewege den Roboter ein Feld nach links
- Nach rechts- bewege den Roboter ein Feld nach rechts
- übermalen- Übermalen Sie die aktuelle Zelle (die Zelle, in der sich der Roboter befindet).
Diese Befehle können über die Tastatur geschrieben werden, oder Sie können Hotkeys verwenden (durch Drücken werden ihre Befehle automatisch eingefügt):
- nach oben - Flucht, nach oben (Pfeil nach oben)
- nach unten - Flucht, nach unten (Pfeil nach unten)
- links - Escape, Links (linker Pfeil)
- Rechts - Flucht, Rechts (Pfeil nach rechts)
- übermalen - Flucht, Raum (Raum)
Bitte beachten Sie, dass Sie die gewünschte Tastenkombination eingeben müssen nicht in unserer üblichen Weise! Wir sind es gewohnt, gleichzeitig Tasten zu drücken, aber hier brauchen wir sie. nacheinander drücken... Um beispielsweise einen Befehl nach oben einzugeben, müssen Sie Escape drücken, loslassen und dann den Aufwärtspfeil drücken. Dies muss in Erinnerung bleiben.
Wir sind nun bereit, den ersten Algorithmus für den Roboter zu schreiben. Ich schlage vor, einfach zu beginnen - zeichnen Sie ein Quadrat mit einer Seite von 3 Zellen. Gehen!
Wir starten das Idol, ihn. Kann ich mit dem Schreiben eines Programms beginnen? Natürlich nicht! Waren nicht! Wir machen es. Ich schlage vor, dieses zu verwenden:
Jetzt ist alles fertig. Wir beginnen, das Programm zu schreiben. Während sie so aussieht
Entfernen Sie das Symbol "|" und nenne unseren Algorithmus "Quadrat"
Ich schlage vor, ein Quadrat zu zeichnen, das sich im Uhrzeigersinn bewegt. Übermalen Sie zuerst die aktuelle Zelle mit dem Befehl übermalen... Dann machen wir einen Schritt nach rechts und übermalen den Käfig wieder. Und noch einen Schritt nach rechts und übermalen.
Versuchen wir, das Programm auszuführen und zu sehen, was passiert ist. Zum Starten drücken F9 oder die Schaltfläche in der Symbolleiste
Als Ergebnis sollten wir das folgende Bild sehen.
Wenn Sie kein solches Roboterfenster haben, klicken Sie in der Symbolleiste auf „ Roboterfenster anzeigen"Oder im Robotermenü wählen Sie" Roboterfenster anzeigen". Wir machen weiter.
Jetzt gehen wir nach unten und malen über die rechte Seite des Quadrats:
Nieder
übermalen
Nieder
übermalen
Dann gehen wir nach links und übermalen den unteren Rand des Quadrats.
Nach links
übermalen
Nach links
übermalen
Wir haben noch eine unbemalte Zelle. Lass uns darüber malen
hoch
übermalen
Alles ist fertig! Als Ergebnis sieht unser Programm so aus:
Roboter verwenden
Algen Platz
früh
übermalen
Nach rechts
übermalen
Nach rechts
übermalen
Nieder
übermalen
Nieder
übermalen