Entwurf einer agentenorientierten Softwarestrukturfür einen RehabilitationsroboterChristian Martens2000Forschungsberichtedes Fachbereichs Elektrotechn
1. Einleitung11 EinleitungDie künftige Entwicklung der Bevölkerungsstruktur in Deutschland läßt einen enormen Zu-wachs an älteren, alleinstehenden un
6 Systementwurf91stellen. Werden Kommandos oder Zielnachrichten an den Zentralserver gesendet, erzeugtdieser automatisch einen Task-Baum. Dem Programm
6 Systementwurf92Grip ObjectMoveGripper toObjectMove constantDistanceGripDetect MarkMove with VisualServoingImage Error?MoveGripper toObjectGoal reach
6 Systementwurf93In der Abbildung ist auf oberster Ebene das Ziel „Greife Objekt“ zu erkennen. Die Verbin-dung zum nächsten Ziel gibt an, daß dieses e
6 Systementwurf94hervorzurufen. Für die eben beschriebene Situation können Ausnahmebehandlungen instal-liert werden, die beim Auftreten einer Ausnahme
6 Systementwurf95Symbolic PlannerInterpreterKnowledge BaseResourceConstraintsEnvironment ModelPlan LibraryAgendaTask NetInterface: skill activation, d
6 Systementwurf96gung stehen. Ist dies der Fall, werden diese als belegt gekennzeichnet und die mit dem Ver-halten verbundene Konfiguration gestartet.
6 Systementwurf97Abbildung 6-8 SMARTSOFT Server mit zugehörigem Serverobjekt [Sch99c]Einen besonders wichtigen Aspekt der Serverschnittstelle stellt s
6 Systementwurf98kontinuierlich ablaufender Prozesse in der deliberativen Ebene verantwortlich sind. Eine de-taillierte Beschreibung zu RAOs findet si
6 Systementwurf99• Die streng eingehaltene Schichtenarchitektur sorgt für eine überschaubare Systemstruktur.• Der an eine Wissensbasis angeknüpfte S
6 Systementwurf100Skill-LayerSkill-LibaryEnvironmentSequencerReactive ActionOperator (RAO)Sensor-SkillBlock 1Block 2Block nActuator-Skill...Reactive A
1. Einleitung2gationssystems für einen Elektrorollstuhl. Das Navigationssystem soll behinderte Personenbei der komplizierten Steuerung des Rollstuhls
6 Systementwurf101erneuten Aktivieren des Autonomous-mode ein sofortiges Weiterarbeiten mit dem Systemmöglich ist.• Die Elemente zur Verwaltung der A
6 Systementwurf102ConnectionClientConnect( ServerName)DisconnectionServerClientIDSend( Data, ClientID, MessageName )DataReply := ServerDataReceive( &a
6 Systementwurf103Server ProcessMain-ThreadMessage-Handler 1IPC-Message-RouterIPCSTICommunicationKernelMessage-Handler 2...Message-Handler XClient Pro
6 Systementwurf1046.2.3.1 Der Interpreter und die AgendaWie Abbildung 6-9 entnommen werden kann, besteht der Sequencer aus einer Agenda, in derauszuf
6 Systementwurf105 IsActivatedRAO := TRUE ENDIF ELSE IF( actRAO.GetCurrentState() = FINISHED ) InterpretTheResult
6 Systementwurf106Reactive Action Instance (RAI) bezeichnet, unterschieden. Der Operator legt die Schnittstellezur deliberativen Ebene fest und kontro
6 Systementwurf107Durch den Aufruf der Methode Start() eines RAO-Objektes im Sequencer wird ein Thread, imfolgenden als RAO-Start-Thread bezeichnet, a
6 Systementwurf108Zu Beginn ändert der RAO-Start-Thread den neu eingenommenen Zustand des RAO-Objektes auf ACTIVE und signalisiert anschließend seine
6 Systementwurf109RAO StatesINITACTIVEentry/ Start RAO-StartThreadRAI_STARTEDdo/ m_RAI.GetResult( )FINISHEDSTOPPEDINITACTIVEentry/ Start RAO-StartThre
6 Systementwurf110Es ist zu erkennen, daß die Methode Start() lediglich in den Zuständen Init und Finished eineAuswirkung hat und jeweils den Übergang
1. Einleitung3Als Entwurfshilfsmittel sind agentenorientierte Methoden einzusetzen. Dazu sind die in derLiteratur aufgeführten agentenorientierten Ans
6 Systementwurf111RAO RAO-StartThread RAIActivation of RAOSequencerRAI-StartThreadnew( )Start( )RAI(Name )Create( )CheckResourcesCreate()Create Skill-
6 Systementwurf112Wie bereits mit der Pseudocodedarstellung in Abbildung 6-15 auf Seite 102 ausführlich dar-gestellt ist, wird im RAO-Start-Thread das
6 Systementwurf113RAO RAO-StartThread RAIActivation of RAOSequencerRAI-StartThreadnew( )Start( )RAI(Name)Create( )CheckResourcesCreate()Create Skill-N
6 Systementwurf114nach der Beendigung einer Operation das Ausführungsergebnis (Success, Stopped, Failure)zurückgeliefert wird. In allen anderen Fällen
6 Systementwurf115Neben den bereits vorgestellten Komponenten Interpreter, Agenda, Betriebsmittelliste, RAOund RAI sind in der obigen Abbildung zwei n
6 Systementwurf116code dargestellte RAI-Start-Threads verdeutlicht die Vorgänge aus Sicht der RAI. Die Aus-führungen schließen mit Entwurfshinweisen a
6 Systementwurf117Abbildung 6-20 Konzeptionelle Darstellung eines Skill-Netzwerkes mit den zugehörigen SchnittstellenUm einen direkten Datenaustausch
6 Systementwurf118Skill-ServerMain-ThreadMessage-RouterSkill 1Message-RouterSkill 2Message-RouterSkill XIPC-Message-RouterClient-Object 1Skill 1Skill
6 Systementwurf119Ausnutzung von Polymorphie75 nach einem festen Ablaufschema innerhalb des zugehörigenSkill-Threads angesprochen werden. Die Struktur
6 Systementwurf120SkillServerSkillServer(ServerName, CallerName)~SkillServer()RegisterEvent(SkillHandle)ReserveSkill(SkillName, pSkillHandle)Start(Ski
1. Einleitung4Zum Abschluß der Arbeit faßt Kapitel 8 die Untersuchungsergebnisse bezüglich der agen-tenorientierten Basisarchitektur zusammen und lief
6 Systementwurf121Ist das aufrufende Programm, im Normalfall der RAI-Start-Thread, an einem Ereignis desSkills interessiert, so wird dies über den Auf
6 Systementwurf122Create Skill-Network and waitfor Network-EventlEvent-Receiver-ThreadMessage-RouterSensor-SkillAdmin-ObjectSensor-SkillRAI-Start-Thre
6 Systementwurf123legt der RAI-Start-Thread die Anzahl der Clients fest, die an den Sensordaten interessiertsind. Diese Anzahl wird ebenfalls im Admin
6 Systementwurf124Admin-ObjectSensor-SkillMessage-RouterSensor-SkillMessage-RouterActor-SkillSensor-Skill-ThreadAdmin-ObjectActor-SkillActor-Skill-Thr
6 Systementwurf125Nach erfolgreichem Verbindungsaufbau beginnt der Sensor-Skill-Thread mit der Datenakqui-sition. Hierzu wird die Methode Work() des l
6 Systementwurf126 BlockClient.SetDataSrc( Block1Handle, {SensSkillHandle} ) BlockClient.SetDataSrc( Block2Handle, {SensSkillHandle} ) ActClient.Se
6 Systementwurf127• Regelungen unter harten EchtzeitbedingungenSensoren und Aktoren, die unter harten Echtzeitbedingungen kooperieren müssen, um eine
6 Systementwurf128Abbildung 6-27 Aufbau eines Sensor-Skill-Servers für den parallelen ZugriffDer zugehörige Skill-Server ist in diesem Fall dafür vera
6 Systementwurf129• Ein Block zur Berechnung der Roboterarmstellgröße, der ein Event generiert, wenn derBildfehler innerhalb eines vorgegebenen Inter
6 Systementwurf130 BlockServer.Stop( BlockHandle ) VisionServer.Stop( VisionHandle )END GripObject RAI-StartThreadAbbildung 6-28 RAI-Start-Thread zu
2 Beschreibung der Rehabilitationsroboter FRIEND und EASY52 Beschreibung der Rehabilitationsroboter FRIEND undEASYIn diesem Kapitel wird der aktuelle
6 Systementwurf131Wie bereits bei den Entwurfshinweisen in Kapitel 6.2.4.7 erwähnt, ist für den User-controlled-mode eine direkte Steuerung des Robote
6 Systementwurf1326.3.3 Aufteilung in DienstleistungsserverDas folgende Verteilungsdiagramm veranschaulicht die Systemaufteilung in separate Re-chenp
7 Implementierung1337 ImplementierungDie Aufgabe der Implementierung ist die Umsetzung der im Entwurf spezifizierten Software-komponenten in ein oder
7 Implementierung134empfehlen, um die Anpassungsarbeiten bei einer Portierung der Software auf einige wenigeModule zu reduzieren.7.2 Implementierung
7 Implementierung135 ENDIF WHILE( NOT Ende ) IF( Result = Success ) THEN RobotServer.Start( ConstMoveRobotAndGripHandle, SINGLE ) ENDIF R
7 Implementierung1367.2.1 Implementierung der MarkendetektionDas dem Algorithmus zur Markendetektion zugrunde liegende Prinzip ist die in der folgend
7 Implementierung137Abbildung 7-3 Bildaufnahme mit Interlaced Technik (links) und Progessive-Scan Technik (rechts) [Ste99]Beim Interlaced-Verfahren we
7 Implementierung138Abbildung 7-4 Links: Szene als Grauwertbild; Rechts: Biniarisiertes Grauwertbild mit Schwelle S = 96Das Ergebnis der Blobsuche ist
7 Implementierung139Abbildung 7-5 Links: Ergebnis der Blobsuche; Rechts: Ergebnis nach RechteckfilterNach dem Passieren des Rechteckfilters ist die An
7 Implementierung140Die Werte Smax und Smin dienen der Bestimmung eines Suchschlauches, der, ausgehend vomgrößten Blob in der Liste, schrittweise um j
2 Beschreibung der Rehabilitationsroboter FRIEND und EASY6Kern aus der Software ViaVoice (IBM) gebildet wird, kann der Benutzer über ein sogenann-tes
7 Implementierung141Hier ist insbesondere der Wert von Smin nach unten zu korrigieren, da beispielsweise beimVerdrehen der Markenfläche gegenüber der
7 Implementierung142Hintergrund gesucht. Theoretisch müßte ein derartiges Muster ein bimodales Grauwerthisto-gramm nach sich ziehen, aus welchem leich
7 Implementierung143Diese Richtung wird zusammen mit dem ermittelten Schwellwert S*, der eine Markendetekti-on ermöglicht hat, für den folgenden Detek
7 Implementierung144(a) Ausgangsszene (b) Biniarisierung mit Schwelle 60(c) Ergebnis Blobsuche (d) Ergebnis Rechteckfilter
7 Implementierung145(e) Biniarisierung mit Schwelle 126 (f) Ergebnis nach Suche im NachbarschaftsgraphenAbbildung 7-9 Auswirkungen der Biniarisierungs
7 Implementierung146Dem Flußdiagramm kann entnommen werden, daß der Block ein Event generiert, wenn derBildfehler eine Schwelle MIN unterschreitet. An
7 Implementierung147Ein weiterer Punkt ist die eingeschränkte Funktionalität des Visual-Servoing Verfahrens imSystem FRIEND. Wie in Kapitel 4.3 darges
8 Zusammenfassung und Ausblick1488 Zusammenfassung und AusblickIn diesem Kapitel wird die in dieser Arbeit entworfenene Basisarchitektur für das Gesa
8 Zusammenfassung und Ausblick149• die Verwaltung von Betriebsmitteln in der Ausführungsebene,• die Aufteilung der reaktiven Ebene in mehrere betrie
8 Zusammenfassung und Ausblick150parallelen Sensorzugriff und zum anderen einen dynamischen Wechsel beim Zugriff auf dieseBetriebsmittel. So könnte ku
2 Beschreibung der Rehabilitationsroboter FRIEND und EASY7Roboter-ControllerMANUS-Hardware-ControllerBefehlsinterpreterCANVorprogrammierteBewegungsabl
Literatur151Literatur[3T-96] “3T A User Guide” Metrica Inc. Robotics and Automation Group NASA Johnson SpaceCenter Houston, TX 77058 February 13, 1996
Literatur152[Bre88] Bremer, H. “Dynamik und Regelung mechanischer Systeme” Teubner StudienbücherMechanik 1988, ISBN 3-519-02369-5[Bre97] Brenner, W.;
Literatur153Coordination for the Autonomous Grasping of Unknown Objects” in Schmidt, G.; Hanebeck,U.; Freyberger, F. (Hrsg.) Informatik aktuell “Auton
Literatur154[Hec95] Heck, H “Ein frei konfigurierbares System zur aufgabenorientierten Offline-Programmierung von Robotern – Konzeption und Realisieru
Literatur155[Krä96b] Krämer, B. J. “Software Engineering II – Konstruktion verteilter Systeme Kurseinheit 5:Software-Architektur und Verhaltensmodelli
Literatur156[Pau82] Paul, R. P. “Robot Manipulators: Mathematics, Programming and Control” The MIT PressCambridge 1982[Pfe99] Pfeiffer, R. “Understand
Literatur157Sytems 1998 http://www.cs.wustl.edu/~schmidt/ACE.html[Tan95] Tannenbaum, A. S. “Verteilte Betriebssysteme” Prentice Hall 1995, ISBN 9-7839
Anhang158AnhangA Unified Modeling LanguageDie Anwendung objektorientierter Prinzipien gilt heute als Stand der Technik von Software-Systemen. Die met
Anhang159krete Ausprägung einer Klasse als Speicherabbild mit einer Belegung der Variablen zur Lauf-zeit stellt ein Objekt dar.Wird eine Klasse ledigl
Anhang160Objekt 1Objekt 2nachricht()antwort()[x>0] nachricht()antwort()Bedingung* nachricht()antwort()Iterationasynchrone nachricht()A.2 Elemente e
2 Beschreibung der Rehabilitationsroboter FRIEND und EASY8Abbildung 2-4 Die Mensch-Maschine-Schnittstelle von FRIEND im benutzergeführten ModusIn der
Anhang161Ein Zustandsdiagramm verfügt immer über einen Eintrittspunkt (start) und in den meistenFällen auch über einen Austrittspunkt (stop). Ausgehen
Abkürzungsverzeichnis162AbkürzungsverzeichnisACEAdaptive Communication EnvironmentSoftwarepaket zur plattformunabhängigen Entwicklung von Multitasking
Abkürzungsverzeichnis163DOFDegrees of freedomAnzahl der mechanischen Freiheitsgrade eines mechanischen Systems. Einmechanischer Freiheitsgrad ist eine
Abbildungsverzeichnis164AbbildungsverzeichnisABBILDUNG 2-1 DER REHABILITATIONSROBOTER FRIEND...
Abbildungsverzeichnis165ABBILDUNG 6-6 TCA TASK-BAUM KORRESPONDIEREND ZUR AUFGABE "GREIFE OBJEKT" ... 92ABBILDU
2 Beschreibung der Rehabilitationsroboter FRIEND und EASY9Abbildung 2-5 Der Rehabilitationsroboter EASYZur Bewegung des Rollstuhls ist der Rechner übe
2 Beschreibung der Rehabilitationsroboter FRIEND und EASY10Der aktuelle Ansatz, der hier verfolgt und an dem zur Zeit geforscht wird, ist der Einsatz
1. EinleitungFehler! Textmarke nicht definiert.Fachbereich ElektrotechnikLehrgebieteAllgemeine und Theoretische ElektrotechnikProf. Dr.-Ing. R. Pregla
3 Softwareagenten113 SoftwareagentenDer Begriff des Agenten hat in den letzten Jahren stark an Popularität gewonnen. Er kenn-zeichnet eine äußere Sic
3 Softwareagenten12diesen beiden Bereichen ist die Einführung intelligenter Softwareagenten die Antwort zurLösung der folgenden, exemplarisch aufgelis
3 Softwareagenten13Neben diesen als grundlegend bezeichneten [Jen95] Eigenschaften können weitere Merkmaleaufgeführt werden, die besonders in speziell
3 Softwareagenten14(4) Die Fähigkeit zur Verallgemeinerung (Abstraktion) und zur Spezialisierung (d.h. zurAnwendung allgemeiner Zusammenhänge auf kon
3 Softwareagenten15Die Frage nach der Interpretation der Definition 1 reduziert sich somit auf die Frage derZweckmäßigkeit [Mül96]. Eine Betrachtung d
3 Softwareagenten16hinreichende Bedingung für die Erzeugung intelligenter Handlungen ist. Dabei ist die Reali-sierung des physischen Mediums unerhebli
3 Softwareagenten17Es ergeben sich somit die beiden folgenden Aufgaben:• Analyse der aktuellen Situation.• Entwicklung einer Strategie und die Erste
3 Softwareagenten18holds( Table( A ), S1 )holds( Table( B ), S1 )Zur Vermeidung inkonsistenter Situationsbeschreibungen, wie holds( Table( A ), S1 ) ∧
3 Softwareagenten19spiegelt sich im sogenannten Frameproblem wider. Gilt in einer Situation S2 beispielsweiseholds( Table( B ), S2 ), so ist mit den b
3 Softwareagenten20Eine Situation wird formal durch eine Menge von Fakten beschrieben, wie z. B.:S = { Table( A ), Table( B ), Clear( A ), Clear( B )
Forschungsbericht 1/2000Entwurf einer agentenorientierten Softwarestrukturfür einen RehabilitationsroboterChristian Martens2000Zur Veröffentlichung em
3 Softwareagenten21Es gilt S0 = { Clear( A ), Table( A ), Clear( B ), Table( B ), Clear( C ); Table( C ) }.Ausgangssituation: Der Wurzelknoten des Suc
3 Softwareagenten22Aus Sicht der Psychologie können menschliche Handlungen vorhergesagt werden, wenn dieEinstellung des Menschen gegenüber einer besti
3 Softwareagenten23ten ausgeführt werden können. Aus diesem Grund bilden die Umwelt und der Agent nichtde-terministische Systeme, die durch verzweigte
3 Softwareagenten24notwendige Berechnungsdauer möglich. In einer dynamischen Umgebung müßte die Ent-scheidung zur Ausführung einer Handlung vom aktuel
3 Softwareagenten25erhält. Somit ist für die Komplexität des Verhaltens des Agenten nicht sein interner Aufbausondern die Umgebung verantwortlich. Ent
3 Softwareagenten263.3.1 Deliberative Agenten – Das BDI-ModellAls Vertreter deliberativer Agenten wird in diesem Kapitel die Architektur basierend au
3 Softwareagenten27steme für den Einsatz in dynamischen Umgebungen ungeeignet sind. Der BDI-Interpreterverwendet drei dynamische Datenstrukturen (jewe
3 Softwareagenten28steht eine Schichtenarchitektur mit zunehmender Komplexität und Spezialisierung in den hö-heren Schichten. Die Architektur unterstü
3 Softwareagenten29Die in den Kreisen I und S der obigen Abbildung befindlichen Zahlenwerte stellen die vomSystementwerfer festgelegte Dauer (in [s])
3 Softwareagenten30In der Kompetenzebene 1 wird ein zielloses Umherfahren des Roboters realisiert. Das Ver-halten aus Ebene 0 wird dabei zur Kollision
Fernuniversität Gesamthochschule HagenFachbereich ElektrotechnikLG DatenverarbeitungstechnikUniversität BremenFachbereich ElektrotechnikInstitut für A
3 Softwareagenten31grenzzyklisches Verhalten der Agenten zur Folge hatte. Dieses, auch als „sprunghaft“ be-zeichnetes Verhalten, kann durch ein zyklis
3 Softwareagenten32Als Vertreter hybrider Agenten wird im folgenden die Interrrap-Architektur von Müller vor-gestellt [Mül96]. Weitere für diese Arbei
3 Softwareagenten33Aus den allgemein gehaltenen Überzeugungen werden Situationen abgeleitet, die für denAgenten konkret von Interesse sind. Damit bild
3 Softwareagenten34SZ PSSZ PSSZ PSWissensbasis KontrolleinheitKooperativePlanungsschichtLokalePlanungsschichtVerhaltensbasierteSchichtSensoren Kommuni
3 Softwareagenten35schreibung erst nach dem Vorliegen dieser Anforderungen sinnvoll ist, wird für eine vertie-fende Betrachtung hybrider Agentenarchit
3 Softwareagenten36transformator (mvr-Aufgabentransformator) für einen Industrieroboter vorgestellt und dessenArchitektur durch MAS beschrieben.Allgem
3 Softwareagenten37WerkstattleitsystemAufgabentransformatorreaktivWissensbasis +NachrichtenmanagerAgentKameraAgentGreifplanerAgentWegplanerAgentMontag
3 Softwareagenten38nente zur Systemzerlegung bezeichnet (z. B. [Pag95;Bal96]) und mit dem Begriff Agent sindim Bezug auf intelligente Schlußfolgerunge
4 Autonomes Greifen unbekannter Gegenstände394 Autonomes Greifen unbekannter GegenständeNicht nur im Bereich der Rehabilitationsrobotik, sondern in d
4 Autonomes Greifen unbekannter Gegenstände40ErfassungVor-verarbeitungSegmenta-tionMerkmals-extraktionKlassifika-tionVorwissenAbbildung 4-1 Die fünf S
2ErklärungHiermit versichere ich, daß ich die vorliegende Arbeit selbständig verfaßt und keine anderenals die angegebenen Quellen und Hilfsmittel benu
4 Autonomes Greifen unbekannter Gegenstände41PC mit Frame-GrabberCCD-ChipKameraBeleuchtunganalogesVideosignalDarstellung desdigitalisierten BildesFram
4 Autonomes Greifen unbekannter Gegenstände42Der CCD-Chip besteht aus einer C x R Matrix von lichtempfindlichen MOS-Kondensatoren,in denen sich Ladung
4 Autonomes Greifen unbekannter Gegenstände43≤≤<≤=MaxGWf(x,y)für SMaxGWSf(x,y)MinGW fürMinGWyxg ),(( 4.2 )Üblicherweise wird dem minimalen G
4 Autonomes Greifen unbekannter Gegenstände44zusammengefaßt werden. Damit ergibt sich die Zuordnungsvorschrift der linearen lokalenOperatoren zu:∑∈∗=⇔
4 Autonomes Greifen unbekannter Gegenstände45Vertreter dieser Gruppe ist die zweidimensionale Diskrete Fourier-Transformation (DFT). Einmöglicher Anwe
4 Autonomes Greifen unbekannter Gegenstände46Mittels Schwellwertverfahren wird versucht, eine derartige Schwelle automatisiert in das Hi-stogramm zu l
4 Autonomes Greifen unbekannter Gegenstände47schreibung an dieser Stelle verzichtet werden. Detaillierte Beschreibungen zu diesen Verfah-ren sind in [
4 Autonomes Greifen unbekannter Gegenstände4801 654326543210ColRowStreak Nr. Row Start = Col Length113222433244432562311212345BereichNr.StreaksRLC Ber
4 Autonomes Greifen unbekannter Gegenstände49beispielsweise eine Banane einen größeren Kompaktheitswert als ein Apfel auf, wie dies inder folgenden Ab
4 Autonomes Greifen unbekannter Gegenstände50MarkeBlobAbbildung 4-8 Schnabeltasse mit aufgeklebter MarkeIn den genannten Arbeiten ist die Marke mit vi
KurzfassungDiese Diplomarbeit beschäftigt sich mit dem Entwurf eines Softwaregerüstes für einen Reha-bilitationsroboter. Das Softwaregerüst deckt Anfo
4 Autonomes Greifen unbekannter Gegenstände514.3 Das Visual-Servoing Verfahren zur Regelung des RobotergreifersUnter Visual-Servoing wird allgemein d
4 Autonomes Greifen unbekannter Gegenstände52verstanden, der die drei zur Rotation des Koordinatensystems {K} notwendigen Winkel (Ori-entierungskoordi
4 Autonomes Greifen unbekannter Gegenstände53OxRxKOKOK+⋅=( 4.8 )Kommt es zu längeren Transformationsketten, wird diese Form der Darstellung sehr schne
4 Autonomes Greifen unbekannter Gegenstände54ist, ob ein unterlagerter Positionsregelkreis für den Roboter zum Einsatz kommt (Look-and-Move) oder die
4 Autonomes Greifen unbekannter Gegenstände554.3.3 Das LochkameramodellDie aus dem Bild extrahierten Blobmittelpunktskooordinaten werden zu einem sog
4 Autonomes Greifen unbekannter Gegenstände56{C}{S}{I}Hauptpunkt (u0/v0)Brennweite fKameralinsexyzvuPunkt:Cx,Rxoptische AchsePixelgröße Sx, Sy{R}xy
4 Autonomes Greifen unbekannter Gegenstände57Abbildung 4-12 Lochkameramodell [Scr98]Der gesuchte funktionale Zusammenhang ergibt sich auf Basis dieses
4 Autonomes Greifen unbekannter Gegenstände58=zyxCCCCCCCCωωωω( 4.18 )=zCyCxCCCCCC&&&&( 4.19 )Der rotatorische Gesc
4 Autonomes Greifen unbekannter Gegenstände59Die Größe der Marke a wird dabei aus der Fläche bestimmt, welche durch die vier Blobmit-telpunktskoordina
4 Autonomes Greifen unbekannter Gegenstände60Die Matrix K~ ist eine Zusammenfassung der Transformationsbeziehung von Sensor- in Bild-bereichskoordina
4Inhalt1 EINLEITUNG...
4 Autonomes Greifen unbekannter Gegenstände61den Verstärkungen des klassischen Reglers, werden aber in jedem Schritt adaptiert. In[Grä99a] wurde gezei
4 Autonomes Greifen unbekannter Gegenstände62{R}{G‘}{C‘}HGC''{G}{C}HGCCHCCC~ bzw. '∆GHRRGbzw. 'HRGAbbildung 4-14 Transformationsb
4 Autonomes Greifen unbekannter Gegenstände63gilt [Wlo92]. HRG' ist die homogene Matrix, welche die Lage von {G} nach Ausführung derLageänderung
4 Autonomes Greifen unbekannter Gegenstände641. Ausgangssituation2. Drehung von {G} um die z-Achse von {R} mit dem WinkelYAW3. Drehung von {G'} u
4 Autonomes Greifen unbekannter Gegenstände65Mit dem vom Roboter-Controller gelieferten YPR-Werten läßt sich somit die gesuchte Rota-tionsmatrix RRG a
5 Analyse der Anforderungen665 Analyse der AnforderungenZiel der Analyse ist es, Beschreibungen des existierenden und des geplanten Systems zu fin-de
5 Analyse der Anforderungen67ständig „in Anspruch nehmen“. Dies hat zur Folge, daß viele Einzelanwendungen auf derHardwareplattform entstehen. Diese l
5 Analyse der Anforderungen68beim Auffinden unbekannter Gegenstände), die zur Bearbeitung komplexerer Aufgaben be-nötigt werden. Es wird bei der Einbe
5 Analyse der Anforderungen69• Disketten wechseln• Schublade öffnen• Pflanzen begießen• Getränk einschenken• Essen• Medizin einnehmen• Trinken•
5 Analyse der Anforderungen70können, stehen in diesem Modus zur Verfügung. Es wird die höchstmögliche Flexibilität an-geboten, die Durchführung bereit
5.2.3 Systemverhalten bei der Kommandoausführung...775.2.4 Systemverhalten in
5 Analyse der Anforderungen71• Nachführen eines Gegenstandes am Mund oder Kopf des Benutzers (Essen, Trinken, Me-dizin einnehmen, elektrisch Rasieren
5 Analyse der Anforderungen72Entwicklungsschrittes (z. B. der Integration eines neuen ASV) ein voll funktionsfähiger Pro-duktprototyp zur Verfügung.Au
5 Analyse der Anforderungen73• Der geforderte flexible Einsatz des Gesamtsystems erfordert die Realisierung mehrererASV, die einer übergeordneten Ebe
5 Analyse der Anforderungen74meidende Konfigurationssteuerung zusammen mit dem bildbasierten Greifvorgang, darf dieZeiten der Regelungstakte nicht ver
5 Analyse der Anforderungen75• die Markendetektion durchführen,• die Sicht der Kamera und die Ergebnisse der Bildverarbeitungsschritte anzeigen und
5 Analyse der Anforderungen76• es für eine vollständige Beschreibung des Systemverhaltens unumgänglich ist, Kompo-nenten einzuführen, die eventuell n
5 Analyse der Anforderungen77Der User-controlled-mode startet mit der direkten Ansteuerung des Roboterarms durch denBenutzer. Wird das Kommando „Objek
5 Analyse der Anforderungen78Object visibleUserDlg:HMIImgProcView:Image-ProcessingViewImgProcSrv:Image-ProcessingServerdisplay-camera-image( GripperCa
5 Analyse der Anforderungen79Abbildung 5-3 Sequenzdiagramm für den Vorgang – Suchen eines Gegenstandes –Zur besseren Übersicht wurde das zyklische Anz
5 Analyse der Anforderungen80display( "gripping successful" )object-gripped( )UserDlg:HMIImgProcView:Image-ProcessingViewImgProcSrv:Image-Pr
6
5 Analyse der Anforderungen81(1) Nichtblockierende Entgegennahme von Roboterbefehlen(2) Möglichkeit zur Benachrichtigung des aufrufenden Programmteils
6 Systementwurf826 SystementwurfIm Entwurf von Software geht es um zentrale Entscheidungen, wie die Software die Anforde-rungen aus der Anforderungss
6 Systementwurf83Vorgehensweisen zum Erreichen des Teilziels. Die folgende Definition eines RAP in LISP-Notation verdeutlicht den Aufbau:(define-RAP (
6 Systementwurf84Das in einem allgemeinen RAP zum Erreichen des Teilziels aufgebaute Task-Netz setzt sichaus instanziierten RAPs (primitiv oder allgem
6 Systementwurf85Weltmodells der Erfolgs- bzw. Zieltest durchgeführt. Ist dieser erfolgreich, kann die demRAP zugeordnete Task ebenfalls aus der Agend
6 Systementwurf866.1.2 3-Tier Architecture (3T)3T ist eine weitere Mehrschichtenarchitektur eines hybriden Agenten, die bereits erfolgreichin mehrere
6 Systementwurf87• Reaktive Ebene (Skill Manager)Diese Ebene ist direkt mit den Sensoren und Aktoren des Roboters verbunden. Gegen-stand der Betracht
6 Systementwurf88• Die Bereitstellung einer Initialisierungsfunktion, die beim Systemstart einmalig aufgeru-fen wird.• Die Ausstattung mit je einer
6 Systementwurf89(exception handling) werden im folgenden detaillierter beschrieben, da mit ihnen bereits vieleAnforderungen aus Kapitel 5.1 abgedeckt
6 Systementwurf90jeweils zur Untersuchung an den Zentralserver angemeldet werden (Vereinfachte Evalua-tionsmöglichlichkeit).• Durch die Bereitstellun
Commentaires sur ces manuels