RoboSoccer Gruppe A6 - WS 17/18: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(103 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:HowTo]]
'''Autor:''' [[Benutzer:Marie Henning| Marie Henning]] [[Benutzer:Hagen Heuer| Hagen Heuer]] [[Benutzer:Kristina Kokojew| Kristina Kokojew]]
 
== Einleitung ==
In der Lehrveranstaltung Informatik, welches ein Informatikpraktikum beinhaltet, haben wir als Gruppen von jeweils 3 Personen, folgende Aufgabenstellung bekommen:                     
Es soll ein NXT Lego Roboter zusammengebaut und programmiert werden. Der Roboter soll am Ende des Semesters an einem RoboSoccer Turnier teilnehmen und gegen andere Roboter in einer 1 gegen 1 Situation spielen.
 
→ zurück zum Hauptartikel: [[RoboSoccer_WS_17/18|Informatikpraktikum WS 17/18]]


'''Autor:''' [[Benutzer: Kristina Kokojew|Marie Henning, Hagen Heuer, Kristina Kokojew]]


== Einleitung ==
===Teammitglieder===
In der Lehrveranstaltung Informatik, welches ein Informatikpraktikum beinhaltet, haben wir als Gruppen von jeweils 3 Personen, folgende Aufgabenstellung bekommen:  
:'''Kristina Kokojew'''
Es soll ein NXT Lego Roboter zusammengebaut werden und programmiert werden. Die Hauptaufgabe des Roboters ist Fußball mit Gegnern spielen zu spielen.
:*Wiki-Artikel
:*Quelltext verfasst
:*Fotos erstellt


Dieser Artikel ist aus der Kategorie [[RoboSoccer_WS_17/18|Informatikpraktikum WS 17/18]]
:'''Marie Henning'''
:*Programmablaufplan
:*Plakat erstellt
:*Quelltext verfasst
:*Video erstellt


'''Teammitglieder'''
:'''Hagen Heuer'''
:Kristina Kokojew
:*Roboter konstruiert
:*ddsdas
:*Roboter als 3D Modell konstruiert
:*Quelltext verfasst


:Marie Henning
'''→ Alle Teammitglieder haben zu gleichen Teilen an dem Projekt mitgewirkt.'''
:*dssds


:Hagen Heuer
:*dsdssd


== Inhalt ==
===Erkenntnisse===
===Erkenntnisse===
In diesem Praktikum wird Ihnen beigebracht den Roboter mit folgenden Programmen zu programmieren:
Lego Mindstorms EV3
Lego Mindstorms NXT 2.0
Bricx Command Center


Werte, die man aus den Sensoren bekommt grafisch in einem mechatronischen System zu programmieren und dort auswerten zu lassen.
In diesem Praktikum werden folgende Inhalte erlernt:
Die Ergebnisse der Einzelpraktika werden durch kleine Präsentationen dem Professor im Team vorstellen zu lasen.
:Mit folgenden Programmen zu programmieren:
:Lego Mindstorms EV3
:Lego Mindstorms NXT 2.0
:Bricx Command Center.
 
Die Sensorwerte grafisch in einem mechatronischen System zu programmieren und dort auswerten zu lassen.
Die Ergebnisse der Einzelpraktika werden durch kleine Präsentationen dem Professor im Team vorgestellt.
Jedes Einzelpraktikum muss nachhaltig dokumentiert werden. Das jeweilige Praktikum hat eine Deadline bis zu der die Aufgaben komplett bearbeitet werden müssen. Dafür muss ein gutes Projektmanagement und eine gute Zeiteinteilung herrschen.
Jedes Einzelpraktikum muss nachhaltig dokumentiert werden. Das jeweilige Praktikum hat eine Deadline bis zu der die Aufgaben komplett bearbeitet werden müssen. Dafür muss ein gutes Projektmanagement und eine gute Zeiteinteilung herrschen.
Am Ende wird das ganze Praktikum in einen Wiki-Artikel bzw. wissenschaftliche Arbeit zusammengefasst. Diese wird noch mit einem Imagefilm und einem Werbeposter beschmückt.
Am Ende wird das ganze Praktikum in einen Wiki-Artikel bzw. wissenschaftliche Arbeit zusammengefasst. Diese wird noch mit einem Imagefilm und einem Werbeposter beschmückt. Darüber hinaus lernt man mit einer Versionsverwaltungssoftware SVN zu arbeiten, da dort alle Ergebnisse und Zwischenarbeiten hochgeladen werden können, besteht die Möglichkeit das alle Teammitglieder gleichzeitig drauf zu greifen können und bearbeiten können.


Man lernt in einer Versionsverwaltungssoftware SVN zu arbeiten, da dort alle Ergebnisse und Zwischenarbeiten geladen werden.
== Roberry ==
 
 
 
 
===Plakat===
 
[[Datei:PlakatRoberry.pdf|links|mini|Plakat <ref> Eigenes Foto </ref>]]
 
===Video von Roberry===
 
https://www.youtube.com/watch?v=r7_JxQZtLIs&t=5s


===Schritt-für-Schritt-Anleitung===
===Schritt-für-Schritt-Anleitung===


*'''Aufbau des Roboters'''
*'''Aufbau des Roboters'''
:PDF...
:[[Datei:Bauanleitung_Roberry.pdf|Bauanleitung]]


*'''Spielkonzept'''
*'''Spielkonzept'''
:Bilder (PAP)...


*'''Programm'''
[[Datei:task_main.png|links|mini|Task Main <ref> Eigenes Foto </ref>]] [[Datei:Ballsuchen.png|rechts|mini|Ball suchen <ref> Eigenes Foto </ref>]]
:jsohjdl...
[[Datei:Ballgreifen.png|links|mini|Ball greifen <ref> Eigenes Foto </ref>]] [[Datei:Ausrichten.png|rechts|mini|Ausrichten <ref> Eigenes Foto </ref>]]
[[Datei:Schiessen.png|links|mini|Schießen <ref> Eigenes Foto </ref>]]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
===Hardware===
 
====Die Sensoren====


===Sensoren:===
*'''Ultraschallsensor:'''
*'''Ultraschallsensor:'''
:Der Ultraschallsensor ist der modernste und komplexeste Sensor des NXT Kits. Dazu sendet der Sensor Schallwellen aus mit einer Frequenz (in der Regel etwa 40 kHz), diese :reflektiert, so nimmt der Empfänger diese war. Mithilfe des gemessenen Zeitversatzes kann die Entfernung berechnet werden. Es können keine Messungen unter 3 cm durchgeführt :werden. Dies ist auf das Problem der Laufzeit der Schallwelle zurückzuführen. Messungen bis 20 cm in einem Winkel von -8° bis +30° sind relativ genau. Da der Empfänger auf :der linken Seite und der Sender auf der rechten Seite angebracht ist, sind die Messungen links weniger genau als rechts.
 
[[Datei:Ultraschall-Sensor.jpg|rechts|mini|Ultraschall Sensor <ref> Eigenes Foto </ref>]]
 
:Der Ultraschallsensor ist der modernste und komplexeste Sensor des NXT Kits. Dazu sendet der Sensor Schallwellen aus mit einer Frequenz (in der Regel etwa 40 kHz), diese werden reflektiert und von dem Empfänger wahrgenommen. Mithilfe des gemessenen Zeitversatzes kann die Entfernung berechnet werden. Es können keine Messungen unter 3 cm durchgeführt werden. Dies ist auf das Problem der Laufzeit der Schallwelle zurückzuführen.  
:Messungen bis 20 cm in einem Winkel von -8° bis +30° sind relativ genau, da der Empfänger auf der linken Seite und der Sender auf der rechten Seite angebracht ist, sind die Messungen links weniger genau als rechts.
:Der Messbereich liegt zwischen 20 und 80 cm. Die Abweichung liegt unter 8 %, ein zufriedenstellender Wert für einen Sensor dieser Art.
:Der Messbereich liegt zwischen 20 und 80 cm. Die Abweichung liegt unter 8 %, ein zufriedenstellender Wert für einen Sensor dieser Art.


:Quelle: https://www.generationrobots.com/blog/de/2017/03/ultraschallsensoren-fur-kollisionvermeidung/
[[Datei:Messbeispiele Ultraschallsensor.PNG|rechts|mini|Messbeispiele <ref> https://www.generationrobots.com/blog/de/2017/03/ultraschallsensoren-fur-kollisionvermeidung/ </ref>]]
 
 
 
 
 
 
 
 
 
 
 
 
 
 


*'''Infrarotsensor:'''
*'''Infrarotsensor:'''


[[Datei:Infrarot-Sensor.jpg|rechts|mini|Infrarot Sensor<ref> Eigenes Foto </ref>]]
[[Datei:Infrarot-Sensor.jpg|rechts|mini|Infrarot Sensor <ref> Eigenes Foto </ref>]]


:Wie sein Name schon sagt, ist der Sensor in der Lage, Infrarot-Lichtquellen aufzuspüren. Zudem kann er auch Sonnenlicht oder IR-Licht beispielsweise aus TV-Fernsteuerungen, :aber auch den Infrarot-Ball von HiTechnic mit dem der Roboter Fußball spielen kann. Was für unser Fußballspiel sehr wichtig ist.
:Dieser Sensor ist in der Lage, Infrarot-Lichtquellen aufzuspüren. Er ist auch zudem in der Lage Sonnenlicht oder IR-Licht, welches beispielsweise aus TV-Fernsteuerungen zu empfangen, aber auch den Infrarot-Ball von HiTechnic mit dem der Roboter Fußball spielen kann. Was für unser Fußballspiel sehr wichtig ist.
:Dieser Lichtsensor basiert auf zwei Erkennungsmodi:
:Dieser Lichtsensor basiert auf zwei Erkennungsmodi:
:Modulierter Modus (AC Mode) – Erkennt moduliertes Infrarotlicht, d. h. aus künstlichen Quellen wie Fernsteuerungen bzw. dem IR-Ball. Der Sensor kann nur Rechtecksignale mit :1200 Hz erkennen.
:Modulierter Modus (AC Mode) – Erkennt moduliertes Infrarotlicht, d.h. aus künstlichen Quellen wie Fernsteuerungen bzw. dem IR-Ball. Der Sensor kann nur Rechtecksignale mit 1200 Hz erkennen.
:Nicht modulierter Modus (DC Mode) – Erkennt nicht modulierte Infrarot-Lichtquellen, z. B. Umgebungslicht oder Feuer.
:Nicht modulierter Modus (DC Mode) – Erkennt nicht modulierte Infrarot-Lichtquellen, z. B. Umgebungslicht oder Feuer.
:Dieser Sensor ist in der Lage Beeinträchtigung durch Störsignale zu reduzieren, dabei ist seine spezifische Formgebung sehr hilfreich. Die integrierte Signalverarbeitung :versetzt ihn in die Lage, lediglich das gewünschte Signal zu empfangen.
:Dieser Sensor ist in der Lage Beeinträchtigungen durch Störsignale zu reduzieren, dabei ist seine spezifische Formgebung sehr hilfreich. Die integrierte Signalverarbeitung versetzt ihn in die Lage, lediglich das gewünschte Signal zu empfangen.
:Die Signalstärken werden in verschiedenen Richtungen rund um den Sensor zugeordnet. So erhält der Roboter genaue Richtungsanweisungen:
:Die Signalstärken werden in verschiedenen Richtungen rund um den Sensor zugeordnet. So erhält der Roboter genaue Richtungsanweisungen:


:https://www.generationrobots.com/de/401172-nxt-irseeker-v2-infrarot-sensor-für-nxt-und-ev3-mindstorms-.html
[[Datei:Infrarot.PNG|links|mini|Richtungsanweisungen <ref> https://www.generationrobots.com/de/401172-nxt-irseeker-v2-infrarot-sensor-für-nxt-und-ev3-mindstorms-.html </ref>]]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
[[Datei:Tastsensor.JPG|rechts|mini|Tastsensor <ref> Eigenes Foto </ref>]]
 
 
 


*'''Tastsensor:'''
*'''Tastsensor:'''
:Der Tastsensor ist der einfachste aller NXT-Sensoren, weil er nur zwei verschiedene Werte liefert: gedrückt oder nicht gedrückt bzw. 1 oder 0. Der Taster wird mithilfe :einer Feder geöffnet. An dem Taster wird eine Versorgungsspannung von 4,3V angelegt und der Ausgang des Tasters wird zu dem Kontroller zurückgeführt. Er ist jedoch auch :einer der wichtigsten bei Wettbewerben, da er sehr leicht und effektiv eingesetzt werden kann, Hindernisse zu erkennen und diesen auszuweichen.
 
:Der Tastsensor ist der einfachste aller NXT-Sensoren, weil er nur zwei verschiedene Werte liefert: gedrückt oder nicht gedrückt bzw. 1 oder 0. Der Taster wird mithilfe einer Feder geöffnet. An dem Taster wird eine Versorgungsspannung von 4,3V angelegt und der Ausgang des Tasters wird zu dem Kontroller zurückgeführt. Er zählt zu den wichtigsten Sensoren für Wettbewerbe, da er sehr leicht und effektiv eingesetzt werden kann, Hindernisse zu erkennen und diesen auszuweichen.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


*'''Kompasssensor:'''
*'''Kompasssensor:'''
[[Datei:Kompass-Sensor.jpg|rechts|mini|Kompass Sensor <ref> Eigenes Foto </ref>]]
:Dieser Sensor misst das Erdmagnetfeld und berechnet damit einen Steuerkurs für den Roboter.
:Dieser Sensor misst das Erdmagnetfeld und berechnet damit einen Steuerkurs für den Roboter.
:Der Sensor führt 100 Messungen pro Sekunde durch und übermittelt eine Zahl zwischen 0 und 359, die den Winkel zum Nordpol ausdrückt.  
:Der Sensor führt 100 Messungen pro Sekunde durch und übermittelt eine Zahl zwischen 0 und 359, die den Winkel zum Nordpol ausdrückt.  
Zeile 80: Zeile 278:




#*Programmabläufe
#*Bill of Material


#Fazit
#*Verbesserungsvorschläge
àein Programm auswählen und damit sich richtig einarbeiten
àmehr Punkte für das Praktikum geben
àZeit auf Punkteverteilung passt nicht (sehr Zeitaugwendig)


====Die Motoren====
:Der NXT-Roboter besitzt 3 Servomotoren. Zwei Motoren sind für die Steuerung des Roboters zuständig und ein weiterer für die Roboterarme.
:Servomotoren sind spezielle Elektromotoren, die durch die Kontrolle der Winkelposition ihrer Motorwelle sowie der Drehgeschwindigkeit und der Beschleunigung arbeiten. Solche Motoren haben einen zusätzlichen Sensor zur Bestimmung ihrer Position. Dieser Soll-Winkelpositionswert wird dem Servoregler übermittelt. Dieser Regler regelt den Motor dann mit dem entsprechendem Reglerkreis an. Dies bezeichnet man als Servoantrieb. Durch die zwei Servoantriebe wird der Roboter gesteuert.
:Der kleine Servomotor wurde speziell für die Roboterarme, Greifer und Riemenscheiben entwickelt. Er verfügt über ein Rotationssensor, mit dem man die Drehzahl und die Geschwindigkeit präzise steuern kann.


[[:Kategorie:HowTo|"https://campusapp01.hshl.de/course/view.php?id=8296"]].
====Der Brick====


#Quellen
:Der Brick ist das Steuerungszentrum (das Gehirn) des Roboters. Dieser ist in der Lage Informationen mit Ihrem PC, Mac oder PDA auszutauschen, sowie mit anderen NXT-Robotern über USB oder Bluetooth zu kommunizieren. Dieser enthält einen 32-Bit-Mikroprozessor ARM7, 1 USB 2.0 Anschluss, 4 Sensoreingänge, 3 Ausgangsports für Aktoren, 4 Steuerungstasten, ein integrierten Lautsprecher mit 8Khz und ein Matrix-Bildschirm mit 60x100 Pixel N & B. Das Steuerungszentrum benötigt 6 R06-Batterien oder eine wiederaufladbare NXT-Batterie um zu funktionieren.
#*Bücher:
BRG_Kepler_Tutorial_NXC




#*Links:
== Zusammenfassung ==
https://www.generationrobots.com/blog/de/2017/03/ultraschallsensoren-fur-kollisionvermeidung/
https://www.generationrobots.com/de/401172-nxt-irseeker-v2-infrarot-sensor-für-nxt-und-ev3-mindstorms-.html
https://www.generationrobots.com/de/401186-kompasssensor-für-lego-mindstorms-nxt.html
http://insidescan.de/roboag/LEGO/Den%20NXT%20intelligent%20steuern.pdf


:Das Projekt wurde entwickelt um einen ersten Einblick in die C-Programmierung zu geben. Man kann damit gut, erste Erfahrungen in der Roboterprogrammierung sammeln. Der Gestaltung des Roboters sind keine Grenzen gesetzt, man kann sich kreativ austoben. Dadurch sammelt man auch erste Erfahrungen in der Konstruktionstechnik. Beim Zusammenarbeiten werden die organisatorischen Fähigkeiten und die Teamfähigkeit der Studenten auf die Probe gestellt.




#Korrektur/Rückmeldungen
== Ausblick ==


Was wir verbessern würden:
Die Zeiteinteilung:
:Das Projekt ist sehr Zeitaufwendig, vor allem um sich in die vielen unterschiedlichen Programme einzuarbeiten.
:Lösungsvorschlag: Vielleicht nur mit NXT 2.1 und Bricx Command Center arbeiten.
Aufgabenstellung: Wünschenswert wäre, wenn die Aufgaben, speziell bei den theoretischen Fragen, genauer gestellt werden.


== Literaturverzeichnis ==
<references />


=== Unterabschnitt ===
:https://www.generationrobots.com/blog/de/2017/03/ultraschallsensoren-fur-kollisionvermeidung/
# Nutzen Sie Aufzählungen
#* mit verschiedenen Schachtelungen
#* und so weiter
# zweite Ebene
#* mit erneuter Unterebene


=== Bilder ===
:https://www.generationrobots.com/de/401172-nxt-irseeker-v2-infrarot-sensor-für-nxt-und-ev3-mindstorms-.html
Bauen Sie Bilder ein, am besten mit darin gekennzeichneten Stellen, die Sie dann im Text erklären.
[[Datei:RetroGameStation_HSHL_Messe.jpg|rechts|mini|Beispielbild mit Quelle <ref> Eigenes Foto </ref>]]


=== Tabellen ===
:https://www.generationrobots.com/de/401186-kompasssensor-für-lego-mindstorms-nxt.html
Eine tolle Tabelle ist hier dargestellt.
{| class="mw-datatable"
! style="font-weight: bold;" | Spalte 1
! style="font-weight: bold;" | Spalte 2
! style="font-weight: bold;" | Spalte 3
|-
| blabla
| sowieso
| sowieso
|-
| test
| sowieso
| test1
|}


=== Formatierung ===
:BRG_Kepler_Tutorial_NXC.pdf
Nutzen Sie zur Formatierung Beispiele, z. B. aus dem weltbekannten Wikipedia selbst (das ist die gleiche Syntax!) oder anderer Hilfeseiten wie z. B. <ref> [http://meta.wikimedia.org/wiki/Help:Editing/de Hilfeseite des Wikimedia-Projekts] </ref>.


== Zusammenfassung ==
:https://www.generationrobots.com/de/401186-kompasssensor-für-lego-mindstorms-nxt.html
Was ist das Ergbnis?
Das Ergebnis dieses Artikels ist eine Vorlage, mit der Nutzer des Wikis schnell und leicht eigene Artikel verwirklichen können. Diese Vorlage ist Bestandteil der Anleitungen aus [http://193.175.248.171/wiki/index.php/Kategorie:HowTo den How-To's].


:https://de.wikipedia.org/wiki/Lego_Mindstorms_NXT


== Ausblick ==
:https://de.wikipedia.org/wiki/Servomotor
Was kann/muss noch verbessert werden?


:https://www.generationrobots.com/de/401342-lego-mindstorms-nxt-servomotor-mit-integriertem-rotationssensor.html


== Literaturverzeichnis ==
:https://www.generationrobots.com/en/401259-lego-mindstorms-nxt-intelligent-brick.html
<references />




Zeile 156: Zeile 331:
Hier können Nutzer oder kritische Leser (meist Professoren) Verbesserungen fordern/vorschlagen.
Hier können Nutzer oder kritische Leser (meist Professoren) Verbesserungen fordern/vorschlagen.


→ zum SVN: [[https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Gruppen/Gruppen_WS1718/A6| SVN A6]]


→ zurück zum Hauptartikel: [[RoboSoccer_WS_17/18|Informatikpraktikum WS 17/18]]
→ zurück zum Hauptartikel: [[RoboSoccer_WS_17/18|Informatikpraktikum WS 17/18]]

Aktuelle Version vom 3. Januar 2020, 15:08 Uhr

Autor: Marie Henning Hagen Heuer Kristina Kokojew

Einleitung

In der Lehrveranstaltung Informatik, welches ein Informatikpraktikum beinhaltet, haben wir als Gruppen von jeweils 3 Personen, folgende Aufgabenstellung bekommen: Es soll ein NXT Lego Roboter zusammengebaut und programmiert werden. Der Roboter soll am Ende des Semesters an einem RoboSoccer Turnier teilnehmen und gegen andere Roboter in einer 1 gegen 1 Situation spielen.


→ zurück zum Hauptartikel: Informatikpraktikum WS 17/18


Teammitglieder

Kristina Kokojew
  • Wiki-Artikel
  • Quelltext verfasst
  • Fotos erstellt
Marie Henning
  • Programmablaufplan
  • Plakat erstellt
  • Quelltext verfasst
  • Video erstellt
Hagen Heuer
  • Roboter konstruiert
  • Roboter als 3D Modell konstruiert
  • Quelltext verfasst

→ Alle Teammitglieder haben zu gleichen Teilen an dem Projekt mitgewirkt.


Erkenntnisse

In diesem Praktikum werden folgende Inhalte erlernt:

Mit folgenden Programmen zu programmieren:
Lego Mindstorms EV3
Lego Mindstorms NXT 2.0
Bricx Command Center.

Die Sensorwerte grafisch in einem mechatronischen System zu programmieren und dort auswerten zu lassen. Die Ergebnisse der Einzelpraktika werden durch kleine Präsentationen dem Professor im Team vorgestellt. Jedes Einzelpraktikum muss nachhaltig dokumentiert werden. Das jeweilige Praktikum hat eine Deadline bis zu der die Aufgaben komplett bearbeitet werden müssen. Dafür muss ein gutes Projektmanagement und eine gute Zeiteinteilung herrschen. Am Ende wird das ganze Praktikum in einen Wiki-Artikel bzw. wissenschaftliche Arbeit zusammengefasst. Diese wird noch mit einem Imagefilm und einem Werbeposter beschmückt. Darüber hinaus lernt man mit einer Versionsverwaltungssoftware SVN zu arbeiten, da dort alle Ergebnisse und Zwischenarbeiten hochgeladen werden können, besteht die Möglichkeit das alle Teammitglieder gleichzeitig drauf zu greifen können und bearbeiten können.

Roberry

Plakat

Datei:PlakatRoberry.pdf

Video von Roberry

https://www.youtube.com/watch?v=r7_JxQZtLIs&t=5s

Schritt-für-Schritt-Anleitung

  • Aufbau des Roboters
Datei:Bauanleitung Roberry.pdf
  • Spielkonzept
Task Main [2]
Ball suchen [3]
Ball greifen [4]
Ausrichten [5]
Schießen [6]



























































Hardware

Die Sensoren

  • Ultraschallsensor:
Ultraschall Sensor [7]
Der Ultraschallsensor ist der modernste und komplexeste Sensor des NXT Kits. Dazu sendet der Sensor Schallwellen aus mit einer Frequenz (in der Regel etwa 40 kHz), diese werden reflektiert und von dem Empfänger wahrgenommen. Mithilfe des gemessenen Zeitversatzes kann die Entfernung berechnet werden. Es können keine Messungen unter 3 cm durchgeführt werden. Dies ist auf das Problem der Laufzeit der Schallwelle zurückzuführen.
Messungen bis 20 cm in einem Winkel von -8° bis +30° sind relativ genau, da der Empfänger auf der linken Seite und der Sender auf der rechten Seite angebracht ist, sind die Messungen links weniger genau als rechts.
Der Messbereich liegt zwischen 20 und 80 cm. Die Abweichung liegt unter 8 %, ein zufriedenstellender Wert für einen Sensor dieser Art.
Messbeispiele [8]








  • Infrarotsensor:
Infrarot Sensor [9]
Dieser Sensor ist in der Lage, Infrarot-Lichtquellen aufzuspüren. Er ist auch zudem in der Lage Sonnenlicht oder IR-Licht, welches beispielsweise aus TV-Fernsteuerungen zu empfangen, aber auch den Infrarot-Ball von HiTechnic mit dem der Roboter Fußball spielen kann. Was für unser Fußballspiel sehr wichtig ist.
Dieser Lichtsensor basiert auf zwei Erkennungsmodi:
Modulierter Modus (AC Mode) – Erkennt moduliertes Infrarotlicht, d.h. aus künstlichen Quellen wie Fernsteuerungen bzw. dem IR-Ball. Der Sensor kann nur Rechtecksignale mit 1200 Hz erkennen.
Nicht modulierter Modus (DC Mode) – Erkennt nicht modulierte Infrarot-Lichtquellen, z. B. Umgebungslicht oder Feuer.
Dieser Sensor ist in der Lage Beeinträchtigungen durch Störsignale zu reduzieren, dabei ist seine spezifische Formgebung sehr hilfreich. Die integrierte Signalverarbeitung versetzt ihn in die Lage, lediglich das gewünschte Signal zu empfangen.
Die Signalstärken werden in verschiedenen Richtungen rund um den Sensor zugeordnet. So erhält der Roboter genaue Richtungsanweisungen:
Richtungsanweisungen [10]









Tastsensor [11]



  • Tastsensor:
Der Tastsensor ist der einfachste aller NXT-Sensoren, weil er nur zwei verschiedene Werte liefert: gedrückt oder nicht gedrückt bzw. 1 oder 0. Der Taster wird mithilfe einer Feder geöffnet. An dem Taster wird eine Versorgungsspannung von 4,3V angelegt und der Ausgang des Tasters wird zu dem Kontroller zurückgeführt. Er zählt zu den wichtigsten Sensoren für Wettbewerbe, da er sehr leicht und effektiv eingesetzt werden kann, Hindernisse zu erkennen und diesen auszuweichen.









  • Kompasssensor:
Kompass Sensor [12]
Dieser Sensor misst das Erdmagnetfeld und berechnet damit einen Steuerkurs für den Roboter.
Der Sensor führt 100 Messungen pro Sekunde durch und übermittelt eine Zahl zwischen 0 und 359, die den Winkel zum Nordpol ausdrückt.
Der Sensor verfügt über zwei Modi:
Im Lesemodus übermittelt der Sensor jedes Mal einen Wert, wenn er vom intelligenten Lego Mindstorms NXT-Stein einen Lesebefehl erhält.
Im Kalibriermodus kann der Sensor so eingestellt werden, dass er störende Magnetfelder des Roboter-Elektromotors, der Batterien usw. neutralisiert
Die Werte können als relative oder absolute Werte angezeigt werden. Das erleichtert die Programmierung, wenn der Roboter einer bestimmten Richtung folgen soll.





Die Motoren

Der NXT-Roboter besitzt 3 Servomotoren. Zwei Motoren sind für die Steuerung des Roboters zuständig und ein weiterer für die Roboterarme.
Servomotoren sind spezielle Elektromotoren, die durch die Kontrolle der Winkelposition ihrer Motorwelle sowie der Drehgeschwindigkeit und der Beschleunigung arbeiten. Solche Motoren haben einen zusätzlichen Sensor zur Bestimmung ihrer Position. Dieser Soll-Winkelpositionswert wird dem Servoregler übermittelt. Dieser Regler regelt den Motor dann mit dem entsprechendem Reglerkreis an. Dies bezeichnet man als Servoantrieb. Durch die zwei Servoantriebe wird der Roboter gesteuert.
Der kleine Servomotor wurde speziell für die Roboterarme, Greifer und Riemenscheiben entwickelt. Er verfügt über ein Rotationssensor, mit dem man die Drehzahl und die Geschwindigkeit präzise steuern kann.

Der Brick

Der Brick ist das Steuerungszentrum (das Gehirn) des Roboters. Dieser ist in der Lage Informationen mit Ihrem PC, Mac oder PDA auszutauschen, sowie mit anderen NXT-Robotern über USB oder Bluetooth zu kommunizieren. Dieser enthält einen 32-Bit-Mikroprozessor ARM7, 1 USB 2.0 Anschluss, 4 Sensoreingänge, 3 Ausgangsports für Aktoren, 4 Steuerungstasten, ein integrierten Lautsprecher mit 8Khz und ein Matrix-Bildschirm mit 60x100 Pixel N & B. Das Steuerungszentrum benötigt 6 R06-Batterien oder eine wiederaufladbare NXT-Batterie um zu funktionieren.


Zusammenfassung

Das Projekt wurde entwickelt um einen ersten Einblick in die C-Programmierung zu geben. Man kann damit gut, erste Erfahrungen in der Roboterprogrammierung sammeln. Der Gestaltung des Roboters sind keine Grenzen gesetzt, man kann sich kreativ austoben. Dadurch sammelt man auch erste Erfahrungen in der Konstruktionstechnik. Beim Zusammenarbeiten werden die organisatorischen Fähigkeiten und die Teamfähigkeit der Studenten auf die Probe gestellt.


Ausblick

Was wir verbessern würden: Die Zeiteinteilung:

Das Projekt ist sehr Zeitaufwendig, vor allem um sich in die vielen unterschiedlichen Programme einzuarbeiten.
Lösungsvorschlag: Vielleicht nur mit NXT 2.1 und Bricx Command Center arbeiten.

Aufgabenstellung: Wünschenswert wäre, wenn die Aufgaben, speziell bei den theoretischen Fragen, genauer gestellt werden.

Literaturverzeichnis

https://www.generationrobots.com/blog/de/2017/03/ultraschallsensoren-fur-kollisionvermeidung/
https://www.generationrobots.com/de/401172-nxt-irseeker-v2-infrarot-sensor-für-nxt-und-ev3-mindstorms-.html
https://www.generationrobots.com/de/401186-kompasssensor-für-lego-mindstorms-nxt.html
BRG_Kepler_Tutorial_NXC.pdf
https://www.generationrobots.com/de/401186-kompasssensor-für-lego-mindstorms-nxt.html
https://de.wikipedia.org/wiki/Lego_Mindstorms_NXT
https://de.wikipedia.org/wiki/Servomotor
https://www.generationrobots.com/de/401342-lego-mindstorms-nxt-servomotor-mit-integriertem-rotationssensor.html
https://www.generationrobots.com/en/401259-lego-mindstorms-nxt-intelligent-brick.html


Korrektur/Rückmeldungen

Hier können Nutzer oder kritische Leser (meist Professoren) Verbesserungen fordern/vorschlagen.

→ zum SVN: [SVN A6]

→ zurück zum Hauptartikel: Informatikpraktikum WS 17/18