entwicklung einer cad-schnittstelle für die matlabkk - visualization toolbox
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 PresentationTRANSCRIPT
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?