Robot 6-Axis/tr

Bu makale, standart 6 Eksenli endüstri robot simülasyonunu FreeCAD'e getirmekle ilgilidir.

John J. Craigs kitabında "Robotiğe Giriş" bölümünde de açıklandığı gibi Denavit-Hartenberg Parametre sistemini izlemektedir.

Kinematik
Bu, aşağıdaki tabloya yol açar:

Kuka robotları, çizilen L-Konumunda tüm eksenleri 0'a sahip olmadığından, eksen 2 ve 3 ' ü, 90° değiştirmek zorundayız

Veri sayfasında, eksen hakkında ek bilgi bulabilirsiniz:



Bu, tam tabloya götürür:

Görsel gösterim
FreeCAD, kinematik tablodan kaba bir görsel üretebilir. Ancak gerçeğe daha yakın olmak istiyorsanız, simülasyon için robot şeklinde bir VRML dosyası kullanabilirsiniz. Örneğin. Kuka, model VRML dosyaları için sunar. FreeCAD'de belirli robotun oluşturulması sırasında VRML dosyası yüklenir. FreeCAD'in ekseni hareket ettirebilmesi için VRML dosyasını düzenlememiz ve FreeCAD'in bulabileceği ve üzerinde değişiklik yapabileceği özel dönüşüm düğümleri eklemeniz gerekir.

Yine örnek Kuka KR 16 ile gösterilmiştir. 1. satırdan başlayarak:

# # #{ #} Transform {   #rotation 1 0 0 -1.5707963 #scale .001 .001 .001 children [           DEF AOBJ_0001_000_TRAFO Transform {              children [ ... Bu dosyanın Tecnomatix adında bir robot simülasyon yazılımı ile verildiğini görüyorsunuz. Bu bildirimi kaldırın ve bu dosyayı alacağınız bir URL'yi girin, çünkü Tecnomatix dosya içeriğinde telif hakkı yoktur. Bu sadece bir dönüştürücü! Öncelikle Arka Plan düğümünü kaldırıyoruz. Ardından, modeli mm ve dik Z'ye getirmek için dönme ve ölçek düğümünü kaldırın.
 * 1) VRML V2.0 utf8
 * 1) This VRML97 file was exported using eM-Workplace
 * 2) (c) Tecnomatix Technologies GmbH & Co. KG
 * 3)     Heisenberg-Bogen 1
 * 4)     D-85609 Aschheim-Dornach
 * 5)     GERMANY
 * 1) Background
 * 1)   skyColor   [0.752941 0.752941 0.752941]

Sonunda: ] }  ] }   ] }   ] } #{ #}
 * 1) ROUTE SENS_04_OBJ.rotation_changed TO AXIS_04_OBJ.rotation
 * 2) ROUTE SENS_27_OBJ.rotation_changed TO AXIS_27_OBJ.rotation
 * 3) ROUTE SENS_32_OBJ.rotation_changed TO AXIS_32_OBJ.rotation
 * 4) ROUTE SENS_44_OBJ.rotation_changed TO AXIS_44_OBJ.rotation
 * 5) ROUTE SENS_46_OBJ.rotation_changed TO AXIS_46_OBJ.rotation
 * 6) ROUTE SENS_49_OBJ.rotation_changed TO AXIS_49_OBJ.rotation
 * 7) DEF AnySIMTimer TimeSensor
 * 1)   cycleInterval 1.000000
 * 2)   loop          TRUE

TimeSensor ve 6 güzergahını yorumlayın. Bu 6 çizgi size robotun asıl ekseninin nerede olduğuna dair bir ipucu verir! Sizi o yere getiren "AXIS_04_OBJ" için ilk arama: ...    Transform { rotation 1 0 0 1.570796 children [ DEF SENS_04_OBJ-0001 CylinderSensor {           diskAngle 1.570796 minAngle -3.228859 maxAngle 3.228859 offset   0.000000 }      DEF FREECAD_AXIS1 Transform { rotation 0 1 0 0 children [ DEF AXIS_04_OBJ-0001 Transform {        children [        Transform { rotation 1 0 0 -1.570796 children [ DEF AOBJ_0001_003_TRAFO Transform {              rotation 1.000000 0.000000 0.000000 3.141593 translation -600.000000 500.000000 300.000000 children [ ... Bu düğümün tanımının tam üstüne satır eklemek zorundasınız. "DEF FREECAD_AXIS1 Transform { rotation 0 1 0 0 children [" bu da FreeCAD'in ekseni hareket ettirmesi için bir çapa.

Şimdi FREECAD_AXIS2,  FREECAD_AXIS3 , FREECAD_AXIS4 , FREECAD_AXIS5  ve  FREECAD_AXIS6  için de aynısını yapın. Dosyanın sonundaki kapanış parantezlerini unutmayın, işte bitti!

Robotu başlatarak VRML'yi yükleyebilirsiniz: App.activeDocument.addObject("Robot::RobotObject","Robot") App.activeDocument.Robot.RobotVrmlFile = "C:/_Projekte/FreeCAD0.9_build/mod/Robot/Lib/Kuka/kr16.wrl" size bu sonucu vermeli:

KR 210
Data sheet

KR 500
Data sheet