35
ENTWICKLUNG EINER CAD- SCHNITTSTELLE FÜR DIE MATLABKK- VISUALIZATION TOOLBOX

Entwicklung einer CAD-Schnittstelle für die MatlabKK - Visualization Toolbox

  • Upload
    lenore

  • View
    50

  • Download
    0

Embed Size (px)

DESCRIPTION

Entwicklung einer CAD-Schnittstelle für die MatlabKK - Visualization Toolbox. MatlabKK-visualization toolbox. Ermöglicht Visualisierung von Roboterarmen Unterscheidet zwischen 3 Objekttypen:. Roboterarme Umweltobjekte Parts. Implementierte Roboterarme. Kawasaki FS003N. - PowerPoint PPT Presentation

Citation preview

Entwicklung einer CAD-Schnittstelle fr die MatlabKK-Visualization Toolbox

Entwicklung einer CAD-Schnittstelle fr die MatlabKK- Visualization ToolboxMatlabKK-visualization toolboxErmglicht Visualisierung von Roboterarmen

Unterscheidet zwischen 3 Objekttypen:

Roboterarme Umweltobjekte PartsImplementierte Roboterarme KUKA KR3 Kawasaki FS003N

Die Surf-funktionVordefinierte MATLAB-Funktion um 3D-Objekte zu visualisieren

surf ( x, y, z )

Beispiel: Wrfel mit Loch

x- und y-Werte bilden Punktelinie auf der z-Ebene

Punktelinien werden verbunden

4

Grundlage fr MATLABKK-Visualization Toolbox

Steuert die Roboterarme

Befehle sind mit den realen Steuerbefehlen der KUKA- und Kawasaki-Roboterarme identisch

Muss in einer anderen MATLAB-Instanz ausgefhrt werden

KK-Robotic-toolboxKommunikation zwischen den beiden ToolboxenBenutzt TCP/IP

Entweder IP-Adresse oder localhost

Jeder Client oder Server ist eine Matlab-Instanz

AbfolgeVisualisierungs-RechnerControl-Rechner1VirtualRobot.create('Kawasaki', 40000, [0, 0, 0, 0, 0, 0])

2r1=robot('open', 'Kawasaki', 'tcpip', 'localhost', 40000)3VirtualRobot.start_all4VirtualRobot.place_env('table', [0 -500 0 0 0 0]);VirtualRobot.place_env('base', [200 -450 400 0 0 0], [0,1,0]);VirtualRobot.place_env('base', [-200 -450 400 0 0 0], [0,1,0]);VirtualRobot.place_env('base', [0 -450 400 0 0 0], [0,1,0]);VirtualRobot.place_part('test_tube', [200 -450 425 0 0 0], [1,0,0]);VirtualRobot.place_part('test_tube', [-200 -450 425 0 0 0], [1,0,0]);view(45,45);zoom(2);

5load waypoints;6rmove(r1, waypoints);7robot(r1, 'close')8VirtualRobot.delete_all

Video

Nachteile der visualisierungAufwendige ModellierungUmgestaltung ist unbersichtlichAusschneiden-Funktion fehlt

?Wie kann man das Verbessern?Verbesserungsmglichkeiten

CAD-FormatBeschreibungIGES(.igs)Initial Graphics Exchange SpecificationDaten werden in einzelnen Flchenkrpern dargestelltNeben den Datenpunkten werden auch die Zuordnungen der Flchen bentigt

STL(.stl)Surface Tesselation LanguageDatenpunkte (Vertices) werden in einzelnen Dreiecken dargestelltJedem Dreieck wird ein Richtungsvektor zugeordnet

VRML(.wrl)Virtual Reality Modeling LanguageDatenpunkte werden als Knoten dargestelltKann vom Webbrowser gelesen werden

STEP(.stp)Standard for the exchange of product model dataLeichter Austausch zwischen verschiedenen Programmen mglichSehr groe Dateien, da sehr viele Informationen gespeichert werdenBesteht aus Punkten, Linienbezeichnungen, Richtungsvektor,

VDA-FS(.vda)Verband der Automobilindustrie FlchenschnittstelleErmglicht Austausch von Geometrieinformationen zwischen CAD-ProgrammenZeichnungen knnen nicht bertragen werden

Export der CAD-DateienSTL-Format gewhlt, weil:

Umfangreiche Untersttzung durch kommerzielle und Open Source Programme (Art of Illusion, Blender, Meshlab, Wings3D, )Keine zustzliche Toolbox notwendigTypisches Datenformat im Bereich des Rapid Prototypings

Roboterarme Umweltobjekte PartsModellierung der cad-ObjekteRoboterarme bestehen aus mehreren Armteilen und mssen auch aus mehreren CAD-Dateien bestehen !

Beispiel einer Modellierung eines Zweigelenk-RoboterarmsBesteht aus 3 Teilen:BasisDreharmGreifarm

Basis

Dreharm

Greifarm

Import der STL-DateienBestehen aus mehreren Dreiecken

Jedem Dreieck ist ein Richtungsvektor zugeordnet

STL-Dateien knnen 2 Formate haben:

ZeileASCII-FormatBinr-Format1solid NameName2 facet normal [Normalenvektor]Anzahl der Dreiecke3 outer loop [Normalenvektor]4 vertex [Punkt 1] [Punkt 1]5 vertex [Punkt 2] [Punkt 2]6 vertex [Punkt 3] [Punkt 3]7 endloop Interner Zhler8 endfacetEndeendsolid NameendDie STL_Read-funktionZeileASCII-FormatBinr-Format1solid NameName[Typ, Koordinaten, Faces, Color] = STL_read (filename)Endung .stl nicht vergessen!Unterscheidung, ob die STL-Datei ASCII- oder Binr-Format hat:Prfung, ob in der ersten Zeile das Wort solid steht:

- true: ASCII-Format- false: Binr-FormatArbeitet jede Zeile der Datei ab

Wenn Anfangsbuchstabe einer Zeile v ist, wird nach dem Wort die 3 Zahlen als Koordinate abgespeichert

Nach dem Lesen der Datei wird jeder Koordinate ein Face zugeordnetStl_read (ASCii-format)ZeileASCII-Format1solid Name2 facet normal [Normalenvektor]3 outer loop4 vertex [Punkt 1]5 vertex [Punkt 2]6 vertex [Punkt 3]7 endloop8 endfacetEndeendsolid Name

Jedes Dreieck besteht aus 50 Bytes

Die ersten 12 Bytes bilden den Richtungsvektor

Byte 13 bis 48 werden als die 3 Koordinaten bernommen

Nach dem Lesen wird jeder Koordinate ein Face zugeordnet

Byte 49 und 50 bilden ZhlerStl_read (binr-format)ZeileBinr-Format1Name2Anzahl der Dreiecke3 [Normalenvektor]4 [Punkt 1]5 [Punkt 2]6 [Punkt 3]7 Interner Zhler8Endeend[Typ, Koordinaten, Faces, Color] = STL_read (filename)

importierte Werte

- Seitenlnge: 10 mm- Koordinatenursprung im SchwerpunktFunktionBewertung

plot3Visualisiert LinienUngeeignet, da nur Linien dargestellt werden knnen

fill3Visualisiert FlchenUngeeignet, da nur Flchen dargestellt werden knnen

meshgridVisualisiert 3D-GitternetzUngeeignet, da Flchen ausgefllt werden mssen

surfVisualisiert Gitternetz und fllt dieses mit FlchenGeeignet, da 3D-Objekte modelliert werden knnen

patchVisualisiert Dreiecke Geeignet, da 3D-Objekte aus den Dreiecken zusammengesetzt werden knnenVisualisierung der Importierten Werte-> Nur surf- und patch-Funktion geeignetKriterienSurf-FunktionPatch-FunktionAufrufp = surf (x, y, z);set(p, 'Facecolor',Color)p = patch('Vertices',Koordinaten, 'Faces',Faces,'Facecolor',Color)

UmstellungKoordinaten mssen anhand der Faces neu angeordnet werden und in x, y und z unterteilt werden

Nicht erforderlichVisualisierung

Bentigte ZeitUmstellung der Werte: 1.521sVisualisierung: 0.025s

Visualisierung: 0.0081sFazit- Visualisierung fehlerhaft- Mehr Zeit bentigt- Umstellung der Werte aufwendig+ Korrektes Visualisieren + Weniger Zeitaufwand+ Keine Umstellung notwendig

Video

Vorher Nachher

Fragen?