University ofApplied Sciences FH Brandenburgots.fh-brandenburg.de/downloads/scripte/ams/2014...
Transcript of University ofApplied Sciences FH Brandenburgots.fh-brandenburg.de/downloads/scripte/ams/2014...
Aufbau und BedienungAufbau und Bedienung
Ingo Boersch (Harald Loose)
University of Applied Sciences
AMS - Aufbau und Bedienung 1I. Boersch, FH Brandenburg, 14.10.2014
FH Brandenburg
Übungsgruppen
• heute (KI-Labor):
– Übung 1: 10:30 Uhr
– Übung 2: 12:15 Uhr
• Aktiv teilnehmen (passiv genügt nicht für spätere praktische Aufgabe)
• Zusätzliche Termine sind fast immer möglich
AMS - Aufbau und Bedienung 2I. Boersch, FH Brandenburg, 14.10.2014
• Zusätzliche Termine sind fast immer möglich
Welche Komponenten benötigt einautonomes mobiles System ?
AMS - Aufbau und Bedienung 3I. Boersch, FH Brandenburg, 14.10.2014
P 2/3 als technisches System
Grundgerät:
• Primitives Fahrzeug mit zwei angetriebenen Rädern und einem passiven Stützrad
Aktoren:
• 2 DC-Motore mit untersetzendem Getriebe• 2 DC-Motore mit untersetzendem Getriebe
• Elektromechanischer Greifer
Sensorik:
• Encoder auf der Abtriebswelle der Motore
• 8 Ultraschallsender/empfänger
• Angetriebene Kamera mit integrierter Bild(vor)verarbeitung
• Kompass (P2)
• Laserscanner
AMS - Aufbau und Bedienung 4I. Boersch, FH Brandenburg, 14.10.2014
• Laserscanner
Steuerung (on board):
• PSOS und μP-Karten zur Umsetzung von Kommandos in Aktionen der Aktoren und zur Vorverarbeitung der Sensordaten
Externe Intelligenz (on client):
• ARIA + Module
Kommunikation
• Momentan ist WLAN die einzige Funkverbdingung
AMS - Aufbau und Bedienung 5I. Boersch, FH Brandenburg, 14.10.2014
• Momentan ist WLAN die einzige Funkverbdingung
• onBoard-EeePc ist über USB und weiter RS232 mit Sensorik/Aktorik verb.
• Grün: Normalbetrieb (gute WLAN-Wetterlage)
• Blau: Notverbindung statt WLAN: PC über USB-Kabel (PC wird somit statt Eee-PC direkt an die Sensorik-Aktorik-Schnittstelle verbunden), ebenso Video-Signal über Kabel
Komponenten des AMR
• Autonomer Mobile Roboter:
– Fahrzeug mit Firmware ARCOS (PSOS)
– Greifer, Sonar, Encoder
– PTZ mit Kamera (PTZ = Pan-Tilt-Zoom-Unit)
– Laserscanner Sick LMS 200
– Kompass (nur P2-CE)
– Eee-PC 1000H mit ARIA-System und WLAN
– AV-Giga-Link-Minisender
– 2xP3 mit Autodock-Vorrichtung
• Ladestation (verschieden P2, P3)
AMS - Aufbau und Bedienung 7I. Boersch, FH Brandenburg, 14.10.2014
• PC mit
– ARIA (MobileEyes, MobileSim, ARIA-Entwicklungssystem und Klassenbibliotheken)
– AV-Giga-Link-Empfänger
– Weitere Software: Doku, Visual Studio, OpenCV, …
Client-Server Environment
• MOBILEROBOTS platforms operate as the server: their microcontrollers handle the low-level details of mobile robotics, including maintaining the platform’s drive speed and heading, acquiring sensor readings, such as from the sonar, and managing attached accessories like the Gripperfrom the sonar, and managing attached accessories like the Gripper
• onboard-PC operates as the client: software running on a computer connected with the robot’s microcontroller via the HOST serial link and which provides the high-level, intelligent robot controls, including obstacle avoidance, path planning, features recognition, localization, navigation, and so on
AMS - Aufbau und Bedienung 8I. Boersch, FH Brandenburg, 14.10.2014
ARIA - Advanced Robotics Interface for Applications
ARIA is a programming library (SDK) for C++ programmers who want to access their MobileRobots or ActivMedia platform and accessories at either a high or low level. either a high or low level.
Features:
• handle the lowest-level details of client-server interactions, including networking and serial communications,
• command and server-information packet processing, cycle timing, and multithreading,
AMS - Aufbau und Bedienung 9I. Boersch, FH Brandenburg, 14.10.2014
processing, cycle timing, and multithreading,
• well as support of a variety of accessories and controls, such as a scanning laser-range finder, motion gyros, sonar, and many others
• Open source
Mainloop in ARIA: ArRobot Task Cycle
• Synchron oder asynchron zu
AMS - Aufbau und Bedienung 10I. Boersch, FH Brandenburg, 14.10.2014
asynchron zu Ihrem Roboter-Programm
Zusatzmodule zu ARIA
In addition to providing a complete robot and accessory API to developers, ARIA also serves as a foundation for other libraries:
• advanced navigation routines: ARNL, SONARNL • advanced navigation routines: ARNL, SONARNL
• communicate with the MobileEyes graphical display/control program, or for general communication over the network, you can use ArNetworking.
Other libraries are available as well for specialized purposes, including
• speech synthesis and recognition,
• audio stream recording, playback and network transmission, video image
AMS - Aufbau und Bedienung 11I. Boersch, FH Brandenburg, 14.10.2014
audio stream recording, playback and network transmission, video image capture, color tracking, etc.
ARNL
ARNL := Advanced Robot Navigation and Localization Software
“a comprehensive suite of client tools and applications by which you“a comprehensive suite of client tools and applications by which you
create, edit and use maps and floor plans for advanced robotics
applications, including sonar- and laser-based localization and
navigation.”
AMS - Aufbau und Bedienung 12I. Boersch, FH Brandenburg, 14.10.2014
ARNL
ARNL := Advanced Robot Navigation and Localization Software
4 Module:4 Module:
• BaseArnl: Infrastukture, Pfadplanung, Pfadfolgen
• Lokalisierung mit Sonar (SonArnl), Laserscanner (ARNL) und GPS (mOGS)
Hilfsprogramme:
• Zeichnen von Karten: Mapper3Basic
• besser Mapper3 zusätzlich Kartenerstellung (=Mapping)
ca. ca. ca. ca. 1000 Euro 1000 Euro 1000 Euro 1000 Euro pro Roboterpro Roboterpro Roboterpro Roboterclosedclosedclosedclosed sourcesourcesourcesourceSICK und SICK und SICK und SICK und
AMS - Aufbau und Bedienung 13I. Boersch, FH Brandenburg, 14.10.2014
• besser Mapper3 zusätzlich Kartenerstellung (=Mapping) aus aufgezeichneten Laserdaten und Odometriepositionen
SICK und SICK und SICK und SICK und HokuyoHokuyoHokuyoHokuyo
MobileEyes
• einfaches Mission Control System (MCS) mit (MCS) mit graphischer Oberfläche
• Missionserteilung und Monitoring
AMS - Aufbau und Bedienung 14I. Boersch, FH Brandenburg, 14.10.2014
Nicht bei uns: MobilePlanner- ein Mission Control System (MCS) für Lynx-Roboter
• Lynx: Logistik-Roboter von Adept für den kommerziellen Einsatz
• MobilePlanner = MobileEyes + Mapper + MissionsEditor zum Eintragen von Routen (Goallisten), Macros (Ziele, bedingte Tasks) in die Kartevon Routen (Goallisten), Macros (Ziele, bedingte Tasks) in die Karte
60
kg
AMS - Aufbau und Bedienung 15I. Boersch, FH Brandenburg, 14.10.2014Abb. aus Adept Technology, Inc. Adept Motivity User's Guide, online, 2013
MobileSim
• Simulator
AMS - Aufbau und Bedienung 18I. Boersch, FH Brandenburg, 14.10.2014
Zusammenfassung Software
• ARIA with ARNetworking,
• MobileSim,
• Mapper3-Basic,• Mapper3-Basic,
• ARNL: SonARNL, ARNL, mOGS, Mapper3
• einfaches MCS: MobileEyes
• Programmgruppe MobileRobots
• Die Installationen auf den Labor-PCs
werden auf den Originalzustand
AMS - Aufbau und Bedienung 19I. Boersch, FH Brandenburg, 14.10.2014
werden auf den Originalzustand
zurückgesetzt mit „Frische Roboter“
KI-Labor
Roboter Typ IP-Adresse
im WLAN
Anschaffungs-
Jahrim WLAN Jahr
Alfa P2-CE 172.16.18.19 1999
Romeo P2-CE 172.16.18.16 1999
Marvin P3-DX 172.16.18.17 2003
Sunny P3-DX 172.16.18.21 2003
Andrew P3-DX 172.16.18.22 2008
AMS - Aufbau und Bedienung 20I. Boersch, FH Brandenburg, 14.10.2014
Andrew P3-DX 172.16.18.22 2008
Stanley P3-DX 172.16.18.20 2008
Neu
P3 „von der Stange“?Wo sparen?
AMS - Aufbau und Bedienung 21I. Boersch, FH Brandenburg, 14.10.2014
Wo sparen?
Basiskomponenten P2-CE
• Beim P3-DX leicht verändert:Konsole auf der Seite
AMS - Aufbau und Bedienung 22I. Boersch, FH Brandenburg, 14.10.2014
Deck und Konsole am P3
Alle Roboter haben Schalter für das Einschalten
von Kamera und Laserscanner -> Strom sparenvon Kamera und Laserscanner -> Strom sparen
AMS - Aufbau und Bedienung 23I. Boersch, FH Brandenburg, 14.10.2014
Maße
• Length 44cm• Width 33cm• Height (body) 22cm• Body clearance 5.1cm
AMS - Aufbau und Bedienung 24I. Boersch, FH Brandenburg, 14.10.2014
Body clearance 5.1cm• Weight 9kg• Payload 20kg• Body 1.6mm CNC fabricated aluminum• Console & main deck 2.4mm CNC fabricated aluminum• Assembly Allen hex screws (metric)
Technische Daten P2 / P3
Mobility P2CE P3DX, 2003 P3DX, 2008
Drive wheels 2 solid rubber 2 pneumatic 2 foam-filled
Rear balancing caster 4-ply all-weather treadRear balancing caster 4-ply all-weather tread
Wheel diameter 16.5 cm 19.5 cm
Wheel width 3.7 cm 4.7 cm
Steering Differential
Gear ratio 19.7:1 38.3 : 1
Swing radius 26 cm 26.7cm
Turn radius 0 cm
Translate speed max 1.6 m/sec 1.4 m/sec
AMS - Aufbau und Bedienung 25I. Boersch, FH Brandenburg, 14.10.2014
Translate speed max 1.6 m/sec 1.4 m/sec
Rotational speed max 300 degrees/sec
Traversable step max 2 cm
Traversable gap max 8.9 cm
Traversable slope max 30% 25%
Traversable terrains wheelchair accessible
Technische Daten P2 / P3
Power
• Battery 3x12V lead-acid
• Charge 84 Wh / 252 watt-hr; hot-swappable• Charge 84 Wh / 252 watt-hr; hot-swappable
• Run time 8–10 hrs Recharge time 8 hrs / 6 hrs
• Run Time with PC - / 3-4 hrs
• Tiefentladung zerstört Blei-Akkus
• Bei spätestes 11.5 V abschalten, Roboter zum Ende immer ans Ladegerät
15
16
AMS - Aufbau und Bedienung 26I. Boersch, FH Brandenburg, 14.10.2014
8
9
10
11
12
13
14
15
Ausfahrt an der SV 00:00 00:12 00:31 01:10 01:12 01:58 02:18 02:51 03:06 03:14 04:05 04:24
R16R17R19R20R21
Inbetriebnahme
Inbetriebnahme des Fahrzeugs
1. Trennen von der Ladestation1. Trennen von der Ladestation
2. Einschalten (power rechts an der Seite)
3. Laser und/oder Kamera an- oder abschalten
P3
P2
AMS - Aufbau und Bedienung 27I. Boersch, FH Brandenburg, 14.10.2014
Technische Daten P2 / P3
Odometrische Sensoren
• high-resolution optical quadrature shaft encoder (Motorachse)
• P2: 39400 ticks per wheel revolution*
• P3: 76600 ticks per wheel revolution
A) Wie groß ist die Encoder-Auflösung beim P3 (Ticks pro Motordrehung)?
B) Wie viele Ticks pro mm beim P2?
AMS - Aufbau und Bedienung 28I. Boersch, FH Brandenburg, 14.10.2014
TPWR / Gear ratio = 76600 / 38.3 = 2000 ticks / axis revolution39400 / Umfang = 39400 / (195*pi)=76 ticks/mm
*(In der Doku oft auch 9,850 = ¼ TPWR)
Lsg
• TPWR / Gear ratio = 76600 / 38.3 = 2000 ticks / axis revolution
• 39400 / Umfang = 39400 / (165*Pi)=76 ticks/mm
AMS - Aufbau und Bedienung 29I. Boersch, FH Brandenburg, 14.10.2014
• PQE = Phase-Quadratur-Encoder
Fragen zu den Technischen Daten P2
• ? max. Vorschubgeschwindigkeit in km/h
1.6 m/s * 3600 s / 1h * 1 km / 1000m = 5.76 km/h• ? Umdrehungen des Rads je m
• ? Umdrehungen des Rads pro s bei vmax
• ? Umdrehungen des Motors pro m
� 1.6 m/s * 3600 s / 1h * 1 km / 1000m = 5.76 km/h
� 100 cm / (16.5 cm * 3.14) = 1.93
� 1.6 m * 1.93 / s * m = 3.1
� 1.93 * 19.7 = 38
AMS - Aufbau und Bedienung 30I. Boersch, FH Brandenburg, 14.10.2014
• ? Ticks der Encoder pro mm � 39400 / (165 mm * 3.14) = 76 / mm !!
Sonars
Front Ultrasonic: 8,
1 each side, 6 forward @ 20° intervals
Firing rate: 25 Hz (40 ms / sonar)Firing rate: 25 Hz (40 ms / sonar)
Ranges: 10 cm - 5 m
Genauigkeit: 1-2% => < 2 ... 5 cm
Ultraschall: 20 kHz - 1 GHz
Laufzeit: 0,6 ms - 30 ms
d = vS t mit vS ~ 340 m/s
AMS - Aufbau und Bedienung 31I. Boersch, FH Brandenburg, 14.10.2014
mit vS ~ 340 m/s
Messprinzip: Time of Flight (TOF)
Crosstalk beim Sonar – hier kein Problem
Crosstalk: Sensor empfängt ein Signal von einem anderen Sender
a. direkter Crosstalk – ist kein Problem, benachbarte Sensoren sind aus
b. indirekter Crosstalk – ist kein Problem, benachbarte Sensoren sind ausb. indirekter Crosstalk – ist kein Problem, benachbarte Sensoren sind aus
c. indirekter Crosstalk – theoretisch mgl., bisher beim P2/3 nicht beobachtet
AMS - Aufbau und Bedienung 32I. Boersch, FH Brandenburg, 14.10.2014
Problem: Totalreflexion des Sonars
Reale Messreihe zu b):
a) Ecke unsichtbar
Reale Messreihe zu b):
Winkel Sonar0 Sonar1
zur Wand
0 395 278116 400 2339
17 796 233219 852 232821 4910 2331
23 4910 2335
25 4910 2353
27 4910 812
b) Wand unsichtbar
c) Wand weit entfernt
AMS - Aufbau und Bedienung 33I. Boersch, FH Brandenburg, 14.10.2014
Nur bei bestimmten Abständen
Abb. a) und b) von Björn Lücke, Jonas Brüstel [AIS WS0708]Messreihe von Ralf Blümchen
27 4910 81230 4910 397
c) Wand weit entfernt
Problem: Sonarecho vom eigenen Gehäuse
• Lösung P2 Lösung P3
AMS - Aufbau und Bedienung 34I. Boersch, FH Brandenburg, 14.10.2014
Aufbau eines Sonars
AMS - Aufbau und Bedienung 36I. Boersch, FH Brandenburg, 14.10.2014
Laserscanner Sick LMS 200
Berührungslos arbeitendes Lasermesssystem,
das seine Umgebung zweidimensional abtastet.
Technische Daten:Technische Daten:
max. Reichweite / bei Remission 10%: 80 m /10 m
Scanbereich: max. 180°
Winkelauflösung: 0,25° / 0,5° / 1°
Ansprechzeit: 53 ms bis 13 ms
Auflösung/Systematischer Fehler: 10 mm, typ. +-15 mm
Datenschnittstelle: RS-232/RS-422; Schaltausgänge: 3 x PNP, typ. DC 24 V
AMS - Aufbau und Bedienung 37I. Boersch, FH Brandenburg, 14.10.2014
Datenschnittstelle: RS-232/RS-422; Schaltausgänge: 3 x PNP, typ. DC 24 V
Betriebsumgebungstemperatur: 0 bis +50 °C
Laserschutzklasse: 1 (augensicher), Schutzklasse: IP 65
Abmessungen (B x H x T): 155 x 210 x 156 mm3, Gewicht: 4,5 kg.
Leistungsaufnahme: 20 W.Aktivierbar und Deaktivierbar !
AMS - Aufbau und Bedienung 38I. Boersch, FH Brandenburg, 14.10.2014
SICK AG Waldkirch. TECHNISCHE BESCHREIBUNG LMS200/211/221/291, 2006
Greifer (P 2 Gripper)
Öffnung 21.5 cm / 20.5 cmOff floor 2.4 cm Abstand 11 cm
Hub 9 cm / 7 cm
AMS - Aufbau und Bedienung 39I. Boersch, FH Brandenburg, 14.10.2014
Hub 9 cm / 7 cmHubkraft 2 kg
Greifkraft 200 g - 2 kg (Taster + Verzögerungszeit) Finger 3.5 cm x 9.5 cmPolster 2 mm2 Lichtschranken zwischen den Fingern
PTZ Robotic Camera
AMS - Aufbau und Bedienung 40I. Boersch, FH Brandenburg, 14.10.2014
Pan-Tilt-Zoom Robotic Camera
Sony EVI-D31 (PAL)
Image Sensor 1/3" IT CCD
Effective Pixels 752(H) x 585(V)Effective Pixels 752(H) x 585(V)
Horizontal Resolution 450 TV lines
Vertical Resolution 400 TV lines
Lens 12X Zoom, f=5.4 - 64.8 mm;
F=1.8 - 2.7
Angle of View (H) 48.8 degrees (wide angle)
Angle of View (V) 37.6 degrees (wide angle)
Minimum illumination 7 lux / F1.8
AMS - Aufbau und Bedienung 41I. Boersch, FH Brandenburg, 14.10.2014
Minimum illumination 7 lux / F1.8
Pan Angle +-100 degrees; max 80 degrees / second
Tilt Angle +-25 degrees; max 50 degrees / second
Weight 1,200 g
Control RS232; VISCA™CONTROL PROTOCOL
Aktivierbar und Deaktivierbar !
Pan-Tilt-Zoom Robotic Camera
Sony EVI-D100P (PAL)
CCD Sensor 1/4" Super HAD CCD
Effective Pixels 752(H) x 582(V)Effective Pixels 752(H) x 582(V)
Horizontal Resolution 460 TV lines
Lens 10x opt. Zoom, f=3.1-31 mm;
F=1.8 - 2.9
Angle of View (H) 6.6-65° (wide angle)
Shortest Distance 100 mm (wide angle) - 600mm
Minimum illumination 3.5 lux / F1.8
Pan Angle +-100 degrees; max 300 degrees / second
AMS - Aufbau und Bedienung 42I. Boersch, FH Brandenburg, 14.10.2014
Pan Angle +-100 degrees; max 300 degrees / second
Tilt Angle +-25 degrees; max 125 degrees / second
Aktivierbar und Deaktivierbar !
Framegrabber DFG/USB2-lt
Eingänge : 1x Composite Video, 1x S-Video
Ausgang: USB2.0, unkomprimierter Bilddatenstrom
Pan-Tilt-Zoom Robotic Camera
Ausgang: USB2.0, unkomprimierter Bilddatenstromohne Audio
Video-Formate: PAL /CCIR, NTSC/RS-170
Max. Auflösung (PAL/CCIR): 768x576 (wir verwenden im BV-Server 320x240)
Übertragungsrate: 50 Halbbilder, 25fps
Pixel: 24 bit (8 bit je Farbe)
Treiber: VfW, WDM, DirectX
AMS - Aufbau und Bedienung 43I. Boersch, FH Brandenburg, 14.10.2014
• Unsere Kameras sind mit demS-Video-Eingang des Framegrabbersverbunden -> eventuell im VfW-Treiber umschalten
• S-Video-Kabel etwas locker !
• Anzeige des Videobilds mit Demoapplikation BV-Server.exe (=Bildverarbeitungsserver) oder vidcap32 oder ...
Kamerabilder
[1] [2]
AMS - Aufbau und Bedienung 44I. Boersch, FH Brandenburg, 14.10.2014
[1] Marcus Ehrlich, Patrick Pohlmann: Projektdokumentation DogBot, 2013[2] Conrad Goldschmidt, Maximilian Orlowski: Catbot – Dokumentation, 2013
[3] Rico Humpack,Tanja Leschke: Dokumentation Abschlussprojekt Finden und Greifen, 2013
[3]
Docking-Station: nur Stanley und Andrew
MobileEyes -> „Dock“ oder zu geringe Spannung bei „Autodock“1. Fahrt zum virt. Dockobjekt in der Karte2. Ausrichten in Richtung des Dockobjektes3. Einschalten pulsierender IR-LEDs (1.2 kHz) 3. Einschalten pulsierender IR-LEDs (1.2 kHz)
auf der Unterseite des Roboters4. Fahrt auf die Ladefläche mittels Dreieck 5. IR-Pulse schalten die Docking-Station ein6. Roboter senkt Ladekrallen und prüft Kontakt7. Bei Problemen: ab 4. oder 1. wiederholen8. Laden bis Zeit vorbei oder Schlussspannung
Ab
b. v
on
Ste
ve W
olt
er,
FH
Bra
nd
en
bu
rg, S
ep
tem
be
r 2
01
4
AMS - Aufbau und Bedienung 45I. Boersch, FH Brandenburg, 14.10.2014
virtuelles Dockobjekt
Kontaktfläche mit IR-Sensoren D
reie
cks-
Form
Ab
b. v
on
Ste
ve W
olt
er,
FH
Bra
nd
en
bu
rg, S
ep
tem
be
r 2
01
4
Docking-Station: nur Stanley und Andrew
MobileEyes -> „Dock“ oder zu geringe Spannung bei „Autodock“1. Fahrt zum virt. Dockobjekt in der Karte2. Ausrichten in Richtung des Dockobjektes3. Einschalten pulsierender IR-LEDs (1.2 kHz) 3. Einschalten pulsierender IR-LEDs (1.2 kHz)
auf der Unterseite des Roboters4. Fahrt auf die Ladefläche mittels Dreieck 5. IR-Pulse schalten die Docking-Station ein6. Roboter senkt Ladekrallen und prüft Kontakt7. Bei Problemen: ab 4. oder 1. wiederholen8. Laden bis Zeit vorbei oder Schlussspannung
Ab
b. v
on
Ste
ve W
olt
er,
FH
Bra
nd
en
bu
rg, S
ep
tem
be
r 2
01
4
AMS - Aufbau und Bedienung 46I. Boersch, FH Brandenburg, 14.10.2014
virtuelles Dockobjekt
Kontaktfläche mit IR-Sensoren D
reie
cks-
Form
Ab
b. v
on
Ste
ve W
olt
er,
FH
Bra
nd
en
bu
rg, S
ep
tem
be
r 2
01
4
IR-LEDIR-LED
Motor zum
Absenken
Kontaktkrallen
AMS - Aufbau und Bedienung 47I. Boersch, FH Brandenburg, 14.10.2014
IR-Empfänger
Foto: Steve Wolter, FH Brandenburg, September 2014,
Pioneer Electronic Compass Vector 2XG (nur P2)
The PSOS-derived heading relative to magnetic North gets reported as a 0-358 degree offset clockwise, ±2°.
Technische Daten
Accuracy 2°
Resolution 1°
Size 3,8 cm x 3,3 cm x 2,6 cm
Weigth 10 g
AMS - Aufbau und Bedienung 48I. Boersch, FH Brandenburg, 14.10.2014
Weigth 10 g
mechanically gimbaled
Dynamic tilt range 15°
Kompasskarte KI-Labor
• obere Kante sind die Schränke im KI-Labor
AMS - Aufbau und Bedienung 49I. Boersch, FH Brandenburg, 14.10.2014
• obere Kante sind die Schränke im KI-Labor
• Beobachtung: Magnetfeld zeitlich stabil, aber Ablenkung durch Roboter (Abb.) und Ort (+-10°)
Abb. von Seidel, Mühlberg, in LV AIS FH Brandenburg, 2003
Mainboard des P2
Electronics (basic onboard microcontroller)
Processor Siemens 8C166 (20 MHz)
Position inputs 4Position inputs 4
Sonar inputs 2x8 (multiplexed) 1x8 used
Digital I/O 16 logic ports
A/D 5 @ 0-5 VDC
Digital timer output 8 @ 1μsec resolution
Digital timer inputs 8 @ 1μsec resolution;
Comm port 2 RS-232 serial
AMS - Aufbau und Bedienung 50I. Boersch, FH Brandenburg, 14.10.2014
Comm port 2 RS-232 serial
FLASH PROM 32 KB; P2OS-encoded software
RAM 256 KB; user programmable
Power switches 1 main; 2 auxiliary
Mainboard des P3
• 44.2368 MHz Renesas SH2 32-bit RISC microprocessor with 32K RAM and128K FLASH
• 4 RS-232 serial ports (5 connectors) configurable from 9.6 to 115.2 • 4 RS-232 serial ports (5 connectors) configurable from 9.6 to 115.2 kilobaud
• 4 Sonar arrays of up to 8 sonar each
• 2 8-bit bumpers/digital input connectors
• Gripper/User I/O port with 8-bits digital I/O, analog input, and 5/12 VDC power
• Heading correction gyro port
• Tilt/roll sensor port
AMS - Aufbau und Bedienung 51I. Boersch, FH Brandenburg, 14.10.2014
Tilt/roll sensor port
• 2-axis, 2-button joystick port
• User Control Panel
• Microcontroller HOST serial connector
• Main power and bi-color LED battery level indicators
Konsole
Controls, Ports and Indicators
RESET pushbutton: Warm reboot
MOTORS pushbutton: MOTORS pushbutton: Motors/boot/self-tests, green LED indicator
RADIO Radio modem or Ethernet
Speaker Piezo
Serial comm port:
9-pin RS-232 with RCV and XMT LED indicators
LCD display
Systems status and messages (nur P2)an der Seite
AMS - Aufbau und Bedienung 52I. Boersch, FH Brandenburg, 14.10.2014
Systems status and messages (nur P2)
Main Power
Robot power On/Off, red LED indicator Console
Charge System power/battery recharge
an der Seite
Pioneer 2 Operating System (P2OS, ARCOS) Client-Server control architecture
Robot’s servers work to manage all
the low-level details of the mobile
robot’s systems. These include
RS232
robot’s systems. These include
operating the motors, firing the
sonar, collecting and reporting
sonar and wheel encoder data and
so on.
User Interface
how to communicate with and
AMS - Aufbau und Bedienung 53I. Boersch, FH Brandenburg, 14.10.2014
how to communicate with and
control your robot via the
Advanced Robot Control
and Operations Software (ARCOS)
client-server
interface
ARCOS client command packet protocol- vom Client zum Roboter (Server)
AMS - Aufbau und Bedienung 54I. Boersch, FH Brandenburg, 14.10.2014
For details see Pioneer 3 Operations Manual -Chapter 6, Table 7
ARCOS communication packet protocol- vom Roboter (Server) zum Client
• SIP = Server Information Paket
• wird kontinuierlich vom Roboter zum Client gesendet:Client gesendet:
Inhalt
Motors status; Wheel-encoder and optional gyro integrated coordinates, Orientation in angular units, Wheel velocities in millimeters per second, Battery charge in tenths of volts, Motor stall and bumper indicators, IO digital input states, Setpoint of the server’s angular position servo in degrees, sonar arraystatus, Electronic compass accessory heading in 2-degree units, Number of new sonar readings included in SIP, Sonar readings, Gripper state byte u.v.a
AMS - Aufbau und Bedienung 55I. Boersch, FH Brandenburg, 14.10.2014
in SIP, Sonar readings, Gripper state byte u.v.a
For details see Pioneer 3 Operations Manual - Chapter 6, Table 6
ActivMedia robots trapezoidal velocity profile
• Befehl: Fahre 95 cm
• Trapez-Kurve = Sollwerte
• Regelung: 50ms Zyklus, PID-Regler, Eingabe = Sollwerte, Ausgabe = PWM • Regelung: 50ms Zyklus, PID-Regler, Eingabe = Sollwerte, Ausgabe = PWM der Motoren
AMS - Aufbau und Bedienung 56I. Boersch, FH Brandenburg, 14.10.2014
Parameterfiles
Woher kennt das Clientprogramm die Anzahl der Sonarsensoren?
Client nimmt Verbindung zum Roboter auf Client nimmt Verbindung zum Roboter auf
� Roboter meldet sich mit Class (bei uns Pioneer) und Subclass
P3 melden sich als Subclass p3dx-sh oder p2d8+
P2 meldet sich als Subclass p2ce
AMS - Aufbau und Bedienung 57I. Boersch, FH Brandenburg, 14.10.2014
�Client lädt zur Subclass xxx die passende Parameterdatei params/xxx.p
• also p2ce.p oder p3dx-sh.p oder p2d8+.p
Parameterfile in ARIA – z.B. p3dx.p
Section General settings ;SectionFlags for General settings:
Class Pioneer ; general type of robot
Subclass p3dx ; specific type of robotSubclass p3dx ; specific type of robot
RobotRadius 250 ; radius in mm
RobotDiagonal 120 ; half-height to diagonal of octagon
RobotWidth 425 ; width in mm
RobotLength 511 ; length in mm of the whole robot
RobotLengthFront 210 ; length in mm to the front of the robot (if this is 0
RobotLengthRear 301 ; length in mm to the rear of the robot (if this is 0
Holonomic true ; turns in own radius
MaxRVelocity 500 ; absolute maximum degrees / sec
AMS - Aufbau und Bedienung 59I. Boersch, FH Brandenburg, 14.10.2014
MaxRVelocity 500 ; absolute maximum degrees / sec
MaxVelocity 2200 ; absolute maximum mm / sec
MaxLatVelocity 0 ; absolute lateral maximum mm / sec
HasMoveCommand false ; has built in move command
RequestIOPackets false ; automatically request IO packets
RequestEncoderPackets false ; automatically request encoder packets
SwitchToBaudRate 38400 ; switch to this baud if non-0 and supported on robot
Parameterfile in ARIA – z.B. p3dx.p
Section Conversion factors
;SectionFlags for Conversion factors:
AngleConvFactor 0.001534 ; radians per angular unit (2PI/4096)
DistConvFactor 1 ; multiplier to mm from robot unitsDistConvFactor 1 ; multiplier to mm from robot units
VelConvFactor 1 ; multiplier to mm/sec from robot units
RangeConvFactor 1 ; multiplier to mm from sonar units
DiffConvFactor 0.0056 ; ratio of angular velocity to wheel
Vel2Divisor 20 ; divisor for VEL2 commands
GyroScaler 1.626 ; Scaling factor for gyro readings
Section Accessories the robot has
;SectionFlags for Accessories the robot has:
AMS - Aufbau und Bedienung 60I. Boersch, FH Brandenburg, 14.10.2014
;SectionFlags for Accessories the robot has:
TableSensingIR false ; if robot has upwards facing table sensing IR
NewTableSensingIR false ; if table sensing IR are sent in IO packet
FrontBumpers false ; if robot has a front bump ring
NumFrontBumpers 5 ; number of front bumpers on the robot
RearBumpers false ; if the robot has a rear bump ring
NumRearBumpers 5 ; number of rear bumpers on the robot
Parameterfile in ARIA – z.B. p3dx.p
Section Sonar parameters
SonarNum 8 ; number of sonar on the robot
; SonarUnit <sonarNumber> <x position, mm> <y position, mm> <heading of disc, degrees>
SonarUnit 0 69 136 90SonarUnit 0 69 136 90
SonarUnit 1 114 119 50
SonarUnit 2 148 78 30
SonarUnit 3 166 27 10
SonarUnit 4 166 -27 -10
SonarUnit 5 148 -78 -30
SonarUnit 6 114 -119 -50
SonarUnit 7 69 -136 -90
AMS - Aufbau und Bedienung 61I. Boersch, FH Brandenburg, 14.10.2014
Section IR parameters
IRNum 0 ; number of IRs on the robot
; IRUnit <IR Number> <IR Type> <Persistance, cycles> <x position, mm> <y position, mm>
Parameterfile in ARIA – z.B. p3dx.p
Section Movement control parameters ; if these are 0 the parameters from robotflash will be used, otherwise these values will be used
;SectionFlags for Movement control parameters:;SectionFlags for Movement control parameters:
SettableVelMaxes true ; if TransVelMax and RotVelMax can be set
TransVelMax 0 ; maximum desired translational velocity for the robot
RotVelMax 0 ; maximum desired rotational velocity for the robot
SettableAccsDecs true ; if the accel and decel parameters can be set
TransAccel 0 ; translational acceleration
TransDecel 0 ; translational deceleration
RotAccel 0 ; rotational acceleration
AMS - Aufbau und Bedienung 62I. Boersch, FH Brandenburg, 14.10.2014
RotAccel 0 ; rotational acceleration
RotDecel 0 ; rotational deceleration
HasLatVel false ; if the robot has lateral velocity
LatVelMax 0 ; maximum desired lateral velocity for the robot
LatAccel 0 ; lateral acceleration
LatDecel 0 ; lateral deceleration
Parameterfile in ARIA – z.B. p3dx.p
Section GPS parameters
GPSPX 0 ; x location of gps receiver antenna on robot, mm
GPSPY 0 ; y location of gps receiver antenna on robot, mmGPSPY 0 ; y location of gps receiver antenna on robot, mm
GPSType standard ; type of gps receiver (trimble, novatel, standard)
GPSPort COM2 ; port the gps is on
GPSBaud 9600 ; gps baud rate (9600, 19200, 38400, etc.)
Section Compass parameters
CompassType robot ; type of compass: robot (typical configuration), or
; serialTCM (computer serial port)
CompassPort ; serial port name, if CompassType is serialTCM
AMS - Aufbau und Bedienung 63I. Boersch, FH Brandenburg, 14.10.2014
CompassPort ; serial port name, if CompassType is serialTCM
Parameterfile in ARIA – z.B. p3dx.p
Section Laser parameters
LaserType lms2xx ; type of laser
LaserPortType serial ; type of port the laser is onLaserPortType serial ; type of port the laser is on
LaserPort COM4 ; port the laser is on
LaserAutoConnect true ; if the laser connector should autoconnect this laser or not
LaserFlipped false ; if the laser is upside-down or not
LaserPowerControlled false ; if the power to the laser is controlled by serial
LaserMaxRange 0 ; Max range to use for the laser, 0 to use default
LaserCumulativeBufferSize 0 ; Cumulative buffer size to use for the laser, 0 to use default
LaserX 21 ; x location of laser, mm
LaserY 0 ; y location of laser, mm
AMS - Aufbau und Bedienung 64I. Boersch, FH Brandenburg, 14.10.2014
LaserY 0 ; y location of laser, mm
LaserTh 0 ; rotation of laser, deg
LaserZ 0 ; height of the laser off the ground, mm (0 means unknown)
LaserStartingBaudChoice 38400 ; StartingBaud for the sensor (leave blank for default, use this to have a larger StartingBaud)
LaserAutoBaudChoice ; AutoBaud for the sensor (leave blank for default, use this to have a larger units)
PioneerRobotModels.world.inc
Der Simulator kann verschiedene Robotermodelle, Laserscanner, Sonarsensoren usw. simulieren
Die Definition der SIMULIERTEN Roboter und Sensoren befindet sich im File Die Definition der SIMULIERTEN Roboter und Sensoren befindet sich im File MobileSim\PioneerRobotModels.world.inc
Beispiel: Definition eines P3DX für den Simulator im File PioneerRobotModels.world.inc
AMS - Aufbau und Bedienung 65I. Boersch, FH Brandenburg, 14.10.2014
Definition eines P3DX für den Simulatorin PioneerRobotModels.world.inc
# Model for a p3dx differential-drive robot base with sonar.define p3dx pioneer (
pioneer_robot_subtype "p3dx„# Speed profile:# Speed profile:
max_speed [1.0 0 1.74]accel [0.3 0 1.74] decel [0.3 0 1.74]# Body shape:
origin [-0.04465 0.0 0.0]size [0.511 0.4]polygons 1polygon[0].points 8polygon[0].point[0] [-0.12 0.2555] polygon[0].point[1] [0.12 0.2555]
AMS - Aufbau und Bedienung 66I. Boersch, FH Brandenburg, 14.10.2014
polygon[0].point[0] [-0.12 0.2555] polygon[0].point[1] [0.12 0.2555]polygon[0].point[2] [0.2 0.12] polygon[0].point[3] [0.2 -0.12]polygon[0].point[4] [0.12 -0.2555] polygon[0].point[5] [-0.12 -0.2555]polygon[0].point[6] [-0.2 -0.12] polygon[0].point[7] [-0.2 0.12]polygon[0].filled 1 ……
)
Definition eines P3DX für den Simulatorin PioneerRobotModels.world.inc
define p3dx pioneer ( …..# client protocol conversion factors
pioneer_distconv 0.485 pioneer_diffconv 0.0056pioneer_velconv 1.0pioneer_velconv 1.0# Sonar:
pioneerSonar (scount 8spose[0] [0.069 0.136 90] spose[1] [0.114 0.119 50]spose[2] [0.148 0.078 30] spose[3] [0.166 0.027 10]spose[4] [0.166 -0.027 -10] spose[5] [0.148 -0.078 -30]spose[6] [0.114 -0.119 -50] spose[7] [0.069 -0.136 -90]
)sicklms200( pose [0 0 0] )
AMS - Aufbau und Bedienung 67I. Boersch, FH Brandenburg, 14.10.2014
sicklms200( pose [0 0 0] ))define p3dx-noerr p3dx (
odom_error [0 0 0])
Definition eines Sonars für den Simulatorin PioneerRobotModels.world.inc
# Sonar array
define pioneerSonar ranger (
sview [0.1 5.0 30] # min (m), max (m), field of view (deg)sview [0.1 5.0 30] # min (m), max (m), field of view (deg)
ssize [0.01 0.04]
laser_return 0
blobfinder_return 0
fiducial_return 0
noise 0.0005 # sonar is pretty stable, actually
# If we use projection_type "closest" then you can get slightly
# more complex sonar behavior, which can be tuned with these parameters:
AMS - Aufbau und Bedienung 68I. Boersch, FH Brandenburg, 14.10.2014
# more complex sonar behavior, which can be tuned with these parameters:
#projection_type "closest"
#projection_res 6 # Test a sensor's field of view at a resolution of 6 degrees
#enable_throwaway 1
#throwaway_thresh 0.4 # Test range delta to consider throwing reading away
#throwaway_prob 0.8 # Probability of throwing a sensor reading away
Definition eines Lasersscanners für den Simulator in PioneerRobotModels.world.inc
# SICK LMS-200 laser rangefinder configured for 32m range
define sicklms200 laser (
range_min 0.0 range_max 32.767range_min 0.0 range_max 32.767
samples 181 fov 180.0
color "LightBlue„ size [0.155 0.15]
#height 0.195 # Uncomment to enable
laser_beam_height 0.08 # approx, it actually can vary a few cm in real life
laser_return 1 ranger_return 1
blobfinder_return 0 fiducial_return 0
noise 0.0075 # Adds uniform random number in [-0.0075, 0.0075] meters
AMS - Aufbau und Bedienung 69I. Boersch, FH Brandenburg, 14.10.2014
noise 0.0075 # Adds uniform random number in [-0.0075, 0.0075] meters
reading_angle_error 0.0007 # Adds uniform random number in [-0.0007,0.0007] radians
laser_return_rules 3
….
)
Definition eines Lasersscanners für den Simulator in PioneerRobotModels.world.inc
# SICK LMS-200 laser rangefinder configured for 32m range
define sicklms200 laser (…..
# Turn reflector values >1 to 1 if more than 30m away# Turn reflector values >1 to 1 if more than 30m awaylaser_return_rule[0].model_gt 1laser_return_rule[0].condition "outside_range"laser_return_rule[0].range 30laser_return_rule[0].detect 1# Turn reflector values >1 to 1 if more than 90deg awaylaser_return_rule[1].model_gt 1laser_return_rule[1].condition "outside_angle"laser_return_rule[1].angle 90laser_return_rule[1].detect 1
AMS - Aufbau und Bedienung 70I. Boersch, FH Brandenburg, 14.10.2014
laser_return_rule[1].detect 1# Turn reflector value 2 into 33 (the actual value the SICK returns to ARIA)laser_return_rule[2].model_eq 2laser_return_rule[2].detect 33
)
Arbeit mit ARIA-Demo
1. Starte MobileSim oder Roboter
(in MobileSim kann Karte und Robotertypgewählt werden)
2. Starte ARIA-Demo2. Starte ARIA-Demo
AMS - Aufbau und Bedienung 71I. Boersch, FH Brandenburg, 14.10.2014
Verbinde ARIA-Demo mit MobileSim auf dem gleichen Computer:
demo.exe
Verbinde ARIA-Demo mit MobileSim auf einem anderen Computer:
demo.exe –remotehost 192.168.1.32
Arbeit mit ARIA-Demo
demo.exe –remotehost 192.168.1.32
Starte ARIA-Demo auf Eee-PC, Verbindung zum Roboter an COM3:
demo.exe –rp com3
AMS - Aufbau und Bedienung 72I. Boersch, FH Brandenburg, 14.10.2014
ARIA-Demo Modi
AMS - Aufbau und Bedienung 73I. Boersch, FH Brandenburg, 14.10.2014
ARIA-Demo – Teleop mode
AMS - Aufbau und Bedienung 74I. Boersch, FH Brandenburg, 14.10.2014
ARIA-Demo – Sonar or Laser mode
AMS - Aufbau und Bedienung 75I. Boersch, FH Brandenburg, 14.10.2014
Arbeit mit MobileEyes
1. Starte MobileSim oder Roboter
(in MobileSim kann Karte und Robotertypgewählt werden)
2. Starte ARNL/arnlServer example server program2. Starte ARNL/arnlServer example server program
(ein ArNetworking-Serverprogramm)
AMS - Aufbau und Bedienung 76I. Boersch, FH Brandenburg, 14.10.2014
Arbeit mit MobileEyes
Starte MobileEyes
Verbinde mit IP des arnlServers
(localhost bei lokalem arnlServer(localhost bei lokalem arnlServer
auf Simulator)
AMS - Aufbau und Bedienung 77I. Boersch, FH Brandenburg, 14.10.2014
Übung
• Inbetriebnahme
• Remoteanmeldung
• Demo –Client starten• Demo –Client starten
• Teleop-Mode
• Sonar-Mode
• Laser-Mode
• Positions-Modus
• Camera-Mode
• Gripper-Mode
• Funk-Test
• Korrektes Abstellen
AMS - Aufbau und Bedienung 79I. Boersch, FH Brandenburg, 14.10.2014
• Korrektes Abstellen
• Kurz-Protokoll ins Moodle