Inhaltsverzeichnis:

Künstliche Intelligenz für Ihren Roboter. - Gunook
Künstliche Intelligenz für Ihren Roboter. - Gunook

Video: Künstliche Intelligenz für Ihren Roboter. - Gunook

Video: Künstliche Intelligenz für Ihren Roboter. - Gunook
Video: Künstliche Intelligenz - Büchse der Pandora? | Prof. Dr. Thomas Villmann 2024, Juni
Anonim
Künstliche Intelligenz für Ihren Roboter
Künstliche Intelligenz für Ihren Roboter

Ihren Roboter zu bewegen und ihn zum Nachdenken zu bringen sind unterschiedliche Aufgaben. Beim Menschen werden feine Bewegungen vom Kleinhirn gesteuert, während Handlungen und Entscheidungen getroffen werden – vom großen Gehirn. Wenn Sie dies lesen, haben Sie wahrscheinlich bereits einen Roboter und können seine Hände, Beine oder Räder verwalten. Jetzt fügen Sie die nächste Stufe hinzu. Ich habe dieses Programm viele Jahre nach und nach entwickelt und es enthält jetzt viele Schlüsselelemente der künstlichen Intelligenz. Sie können es sogar als praktisches Lehrbuch für diese Spezialität verwenden. Eine Hilfedatei ist in der Distribution enthalten und Sie benötigen keine Internetverbindung, um auf einer Website zu surfen. Lesen Sie Theorie und sehen Sie sich verschiedene Anwendungsbeispiele an. Dann kannst du sie in die Tat umsetzen. Dies ist keine API. Vielmehr handelt es sich um eine komplette Entwicklungsplattform mit eingebetteter Programmiersprache. Wenn Sie es dennoch verlängern möchten, ist dies auch möglich. Eine typische Architektur wäre ein eigener Treiber zur Steuerung von Schrittmotoren und die Anbindung dieses Programms über TCP/IP. Heutzutage verwenden die meisten Anwendungen für die Robotersteuerung GUI (Graphical User Interface). Dieses System bietet NLI (Natural Language Interface). Eine solche Lösung hilft, Ihre Maschine intelligenter zu machen und den Weg zu einer vollständig autonomen Steuerung zu ebnen. Wenn Sie noch keine Robotik-Hardware haben, gibt es eine virtuelle Umgebung. Sie können verschiedene Objekte auf dem Bildschirm zeichnen und sie mit einem virtuellen Roboterarm manipulieren.

Schritt 1: Distribution herunterladen

Laden Sie WinNB von https://nbsite.000webhostapp.com herunter. Die Größe der Distribution beträgt ca. 1 - 2 MB. Das Programm sammelt und sendet keine Informationen über Ihren PC. Sie können auch von CNet oder einer anderen Softwaresammlung herunterladen. Sie prüfen und genehmigen jede neue Version.

Home>Windows Software>Entwicklertools>Interpreter & Compiler>Persönliche Wissensdatenbank NB

Von CNet herunterladen

Schritt 2: Installieren

Installieren Sie das Programm. Dies dauert 2 Minuten. Führen Sie einfach die heruntergeladene Datei aus und beantworten Sie die Fragen. Dieses Programm wurde unter verschiedenen Windows-Versionen getestet und sollte sicher unter Windows 2000, Windows XP und Windows 8 laufen. Die neuesten Versionen dieses Betriebssystems bieten einen verbesserten Schutz für Dateien und Verzeichnisse. In einige Verzeichnisse können Sie möglicherweise nicht schreiben, selbst wenn Sie der Administrator des PCs sind. Wenn Sie sich bei solchen Problemen nicht sicher sind, wird empfohlen, das Standardziel zu akzeptieren und im Stammverzeichnis von Datenträger C zu installieren. Das Programm verfügt über ein eingebettetes Hilfesystem, das auch unter den oben genannten Windows-Versionen getestet wurde. Wenn Sie Probleme beim Lesen der Hilfe haben, schreiben Sie mir per Support-E-Mail auf meiner Website und ich werde Ihnen Ratschläge geben, wie Sie damit umgehen können, oder eine andere Hilfedatei bereitstellen.

Schritt 3: Ausführen

Lauf
Lauf

Starte es. Dies ist ein Mehrzweckprogramm, das sogar über eine interne Datenbank verfügt, sodass Sie beispielsweise eine persönliche Bibliographie pflegen können. Derzeit werden wir seine natürliche Sprachschnittstelle verwenden. Klicken Sie auf das Menü Durchsuchen\Befehl\Notebook. Dadurch werden 3 Fenster auf dem Bildschirm erstellt. Sie werden unter verschiedenen Umständen für die Eingabe/Ausgabe verwendet.

Auf der rechten Seite sehen Sie das Fenster Beschreibung, das in der Regel der Ausgabe von Analyseelementen wie Attribut-Wert-Paaren oder Antworten zugeordnet ist, die das System auf Ihre Fragen generiert. Links - das Text- oder Grafikfenster, das integrale Daten wie einen Textblock oder ein Bild empfängt. Unten rechts befindet sich das Befehlsfenster, in dem Sie eine Abfrage oder ein ganzes Programm eingeben. Auch das Nachrichtenfenster unten links erhält kurze Benachrichtigungen auf Systemebene. Das Paradigma der Kommunikation ist einfach. Geben Sie Ihren Befehl in das entsprechende Fenster ein. Setzen Sie den Cursor vor den Satz und klicken Sie im Befehlsdialog auf GO. Vergessen Sie nicht, am Ende einen Punkt zu setzen. Diese Sprache hat ein gewisses Maß an Flexibilität, geht aber im Allgemeinen von grammatikalisch korrekten Sätzen aus.

Schritt 4: Machen Sie sich vertraut

Bekannt machen
Bekannt machen

Lesen Sie die Hilfe und verschaffen Sie sich einen Überblick über die Möglichkeiten dieses Programms. Diese Sprache ist eine Mischung aus 3 Paradigmen. 1. Verfahrensweise. In der Welt der Programmierung wäre der Schlüsselname Basic. 2. Deklarativ. Der Schlüsselname ist Prolog. 3. Natürliche Sprache. Es kann eine breite Palette von englischen Sätzen aufnehmen und mit ihnen eine bestimmte Semantik und Pragmatik (Aktionen) verbinden. Auf diese Weise können Sie eine lange Beschreibung von etwas schreiben und dann Fragen dazu stellen. Andernfalls können Sie ein Programm schreiben. Dies ist ein Interpreter (obwohl Sie auch Programme kompilieren können). Wenn Sie mehrere Befehle oder formale Funktionen hintereinander platzieren, führt das System diese wie einen normalen Algorithmus aus. Für die deklarative Programmierung müssen Sie einige Regeln und Fakten zusammenstellen. Schreiben Sie sie einfach nacheinander, setzen Sie den Cursor davor und klicken Sie auf GO. Die Arbeit des Dolmetschers stoppt am Ende des Textes oder wenn er auf den „Stopp“stößt. Operator. Beachten Sie, dass ein kompiliertes Programm in einer Wissensdatenbank auf der Festplatte gespeichert wird, wenn Sie den Computer ausschalten und das Programm dann erneut ausführen. Wenn Sie ein anderes Beispiel ausprobieren, ist es normalerweise erforderlich, das "Löschen-Wissen" zu verwenden. Operator. Es arbeitet im Einzelschrittmodus und erfordert keinen 'Stopp'. danach.

Schritt 5: Beispielanwendung erkunden

Entdecken Sie die Beispielanwendung
Entdecken Sie die Beispielanwendung

Untersuchen Sie die Beispielanwendung Verhalten. Um es auszuführen, wählen Sie den Text des Programms im Hilfefenster aus, kopieren ihn in die Zwischenablage, fügen ihn dann in den Befehlseditor ein und folgen den Anweisungen in den Kommentaren. Diese Anwendung implementiert einen Roboter, der in der virtuellen Welt von 2D-Objekten arbeitet.

Das Programm besteht aus mehreren Abschnitten.

Zuerst zeichnen wir die Umgebung.

#draw("Linie", 0, 5, 160, 5). % Boden.

#draw("Linie", 0, 95, 160, 95). % Decke.

#draw("Rechteck", "Gelb", 30, 5, 50, 25).

#draw("Ellipse", "grün", 10, 10, 70, 15).

#draw("Rechteck", "rot", 100, 5, 115, 35).

Dann - ein Roboterarm.

#draw("set_dot", "schwarz", 0.5).

% Arm.

#draw("Linie", 80, 95, 80, 75).

#draw("Linie", 80, 75, 60, 75).

#draw("Linie", 60, 75, 60, 65).

% Hand.

#draw("Linie", 45, 65, 75, 65).

#draw("Linie", 45, 65, 45, 40).

#draw("Linie", 75, 65, 75, 40).

Der nächste Block implementiert eine virtuelle Maschine.

block:"kompilieren zu" "Ziele".

_chng_operator wenn

_oper_bereit.

_move1(@Dir) wenn

#schneiden();

_drücken, wenn

_squeeze_dir("quetschen");

#schneiden();

_erweitern wenn

_squeeze_dir("erweitern");

#schneiden();

_chng_instruktion wenn

_bereit.

_gravitation1(@Type, @Num, @DY) wenn

_falls(@Typ, @Num, @DY).

_ascent(@Type, @Num, @DY) wenn

_jumps(@Typ, @Num, @DY).

#Warten().

Endblock: "kompilieren".

Die nächsten Regeln unterstützen elementare Anweisungen dieser Maschine.

merken Sie sich: _nsteps(14);

_chng_squeeze("quetschen");

Denken Sie daran: _instruction_runs

um zu quetschen.

Operatoren sind das, was den Benutzern ausgesetzt ist. Sie bestehen aus Anweisungen und anderen Operatoren.

_user_output("Farbe der Box angeben")

um die Kiste zu nehmen.

gehe zu @att1Attr @Obj;

Denken Sie daran: _operator("Griff");

Denken Sie daran: _operator("zu i p wechseln")

um @att1Attr @Obj zu nehmen.

Der letzte Abschnitt des Programms ist nicht zum Kompilieren bestimmt. Hier arbeiten Sie als Endbenutzer im Dolmetschermodus.

%************Verwendungszweck********************************.

%Dies ist ein komplexer Befehl, der mehrere Aktionen integriert.

Nehmen Sie die gelbe Kiste.

halt.

Schritt 6: Erkunden Sie die Robotik-Sandbox

Entdecken Sie die Robotik-Sandbox
Entdecken Sie die Robotik-Sandbox

Fahren Sie mit der komplizierteren Robotics Sandbox fort. In diesem Fall müssen Sie das Programm nicht aus der Hilfe kopieren. Das RSandbox-Verzeichnis enthält 2 Dateien: ROBO. SCP und ROBO_USE. SCP. SCP ist eine Abkürzung für Skript. Die erste ist für Entwickler, die zweite - für Endbenutzer. Diese Variante hat die komplexere Umgebung.

Physik erkunden. Der Manipulator kann einen Gegenstand aufnehmen, dann loslassen und er fällt zu Boden. Außerdem erklärt Sandbox, wie man den Schritt von der virtuellen in die reale Robotik macht. Dazu unterteilen Sie das Programm in 2 Module - den Prozessor und den Controller. Die zweite implementiert eine Low-Level-Servosteuerung. Die erste - maschinelle Intelligenz. Die beiden Module sind über TCP/IP verbunden. Führen Sie zwei Instanzen von WinNB auf verschiedenen oder demselben Computer aus. Verbinden Sie sie. Verwenden Sie im zweiten Fall localhost als IP-Adresse. Öffne ROBO. SCP im ersten Programm. Entkommentieren (löschen Sie '%') die folgende Zeile:

%erinnere dich: _use_controller.

Kompilieren und ausführen (virtuelle Maschine einschalten). Wechseln Sie nun zur zweiten Instanz. Es gibt noch eine weitere Datei im RSandbox-Verzeichnis - ROBO_CONTR. SCP. Öffnen Sie es im Befehlsfenster und kompilieren Sie es. Dieses Modul ist passiv und hat keinen Benutzerbereich. Jetzt können Sie im ersten Programm Befehle erteilen und sehen, wie der Roboter im anderen darauf reagiert.

Schritt 7: Fahren Sie mit Hardware fort

Es liegt an dir. Wenn Sie einen Roboter haben, warum versuchen Sie nicht, ihn über die bereits vorhandene Schnittstelle zu steuern? Dazu benötigen Sie anstelle des Controllers aus dem vorherigen Schritt einen eigenen Treiber. Bei Problemen mit der Verknüpfung von 2 Programmen können Sie mich gerne per E-Mail auf meiner Website kontaktieren.

Empfohlen: