Robot Workbench/tr: Difference between revisions
Renatorivo (talk | contribs) (Created page with "Robot Workbench") |
(Updating to match new version of source page) |
||
(36 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
|||
[[Image:KukaKR16FreeCAD.jpg|right|400px]] |
|||
{{Docnav |
|||
|[[Reverse Engineering Workbench|Reverse Engineering Workbench]] |
|||
|[[Ship Workbench|Ship Workbench]] |
|||
|IconL=Workbench_Reverse_Engineering.svg |
|||
|IconR=Workbench_Ship.svg |
|||
}} |
|||
[[Image:Workbench_Robot.svg|240px|center]] |
|||
The robot workbench is a tool to simulate industrial grade [[6-Axis Robot]]s, like e.g. [http://kuka.com/ Kuka]. |
|||
{{Caption|align=center|The FreeCAD Robot Workbench Icon}} |
|||
You can do following tasks: |
|||
{{VeryImportantMessage|The FreeCAD Robot Workbench is unmaintained. Please mention on the FreeCAD forum if you have an interest in maintaining this workbench.}} |
|||
* set up a simulation environment with a robot and work pieces |
|||
* create and fill up trajectories |
|||
* decompose features of an CAD part to a trajectory |
|||
* simulate the robot movement and reachability |
|||
* export the trajectory to a robot program file |
|||
== Giriş == |
|||
An examples you can find here: |
|||
[http://www.freecad-project.de/svn/ExampleData/Examples/RobotSimulation/ Example files] or try |
|||
the [[Robot tutorial]]. |
|||
<div class="mw-translate-fuzzy"> |
|||
== Tools == |
|||
[[Robot Workbench/tr|Robot Tezgahı]], [http://kuka.com/ Kuka] gibi bir standart [[Robot_6-Axis|6 eksenli endüstriyel robot]] 'u simüle etmek için kullanılan bir araçtır. |
|||
Here the principal commands you can use to create a robot set-up. |
|||
</div> |
|||
Aşağıdaki görevleri yapabilirsiniz: |
|||
=== Robots === |
|||
* Bir robot ve iş parçaları ile bir simülasyon ortamı kurun. |
|||
The tools to create and manage the 6-Axis robots |
|||
* Hareket yörüngelerini oluşturun ve doldurun. |
|||
* Bir CAD parçasının özelliklerini bir yörüngeye ayırın. |
|||
* Robot hareketini simüle edin ve mesafeye ulaşın. |
|||
* Yörüngeyi bir robot program dosyasına aktarın. |
|||
Başlamak için [[Robot tutorial/tr|Robot klavuzunu]] deneyin ve [https://github.com/FreeCAD/FreeCAD_sf_master/blob/master/src/Mod/Robot/RobotExample.py RobotExample.py] örneğindeki programlama arayüzünü görün. |
|||
* [[Image:Robot_CreateRobot.png|30px]] [[Robot_CreateRobot|Create a robot]]: Insert a new robot into the scene |
|||
* [[Image:Robot_Simulate.png|30px]] [[Robot_Simulate|Simulate a trajectory]]: Opens the simulation dialog and let you simulate |
|||
* [[Image:Robot_Export.png|30px]] [[Robot_Export|Export a trajectory]]: Export a robot program file |
|||
* [[Image:Robot_SetHomePos.png|30px]] [[Robot_SetHomePos|Set home positon]]: Set the home position of an robot |
|||
* [[Image:Robot_RestoreHomePos.png|30px]] [[Robot_RestoreHomePos|Restore home positon]]: move the robot to its home position |
|||
{{TOCright}} |
|||
=== Trajectories === |
|||
[[Image:Robot_Workbench_example.jpg|600px]] |
|||
Tools to creat and manipulate trajectories. There are two kinds, the parametric and non parametric ones. |
|||
== Araçlar == |
|||
Burada bir robot kurulumu oluşturmak için kullanabileceğiniz temel komutlar. |
|||
* [[Image:Robot_CreateTrajectory.png|30px]] [[Robot_CreateTrajectory|Create a trajectory]]: Insert a new robot into the scene |
|||
* [[Image:Robot_SetDefaultOrientation.png|30px]] [[Robot_SetDefaultOrientation|Set the default orientation]]: Set the orientation way-points gets created by default |
|||
* [[Image:Robot_SetDefaultValues.png|30px]] [[Robot_SetDefaultValues|Set the default speed parameter]]: set the defaults for way-point creation |
|||
* [[Image:Robot_InsertWaypoint.png|30px]] [[Robot_InsertWaypoint|Insert a waypoint]]: Insert a way-point from the current robot position into a trajectory |
|||
* [[Image:Robot_InsertWaypointPre.png|30px]] [[Robot_InsertWaypointPre|Insert a waypoint]]: Insert a way-point from the current mouse position into a trajectory |
|||
=== Robotlar === |
|||
6 Eksenli robotları oluşturma ve yönetme araçları |
|||
* [[Image:Robot_Edge2Trac.png|30px]] [[Robot_Edge2Trac|Create a trajectory out of edges]]: Insert a new object which decompose edges to a trajectory |
|||
* [[Image:Robot_TrajectoryDressUp.png|30px]] [[Robot_TrajectoryDressUp|Dress-up a trajectory]]: Let you override one or more properties of a trajectory |
|||
* [[Image:Robot_TrajectoryCompound.png|30px]] [[Robot_TrajectoryCompound|Trajectory compound]]: create a compound out of some single trajectories |
|||
* [[Image: Robot_CreateRobot.png | 30px]] [[Robot_CreateRobot/tr |Robot Oluştur]]: Sahneye yeni bir robot yerleştirin |
|||
== Scripting == |
|||
* [[Image: Robot_Simulate.png | 30px]] [[Robot_Simulate/tr | Robot Simülasyon]] : Simülasyon iletişim kutusunu açar ve simüle etmenizi sağlar |
|||
This section is generated out of: http://sourceforge.net/p/free-cad/code/ci/master/tree/src/Mod/Robot/RobotExample.py |
|||
* [[Image: Robot_Export.png | 30px]] [[Robot_Export/tr| Robot Dışa aktar]]: Bir robot program dosyasını dışa aktarın |
|||
You can use this file directly if you want. |
|||
* [[Image: Robot_SetHomePos.png | 30px]] [[ Robot_SetHomePos/tr | Ana konum ayarla]]: Bir robotun ana konumunu ayarlayın |
|||
* [[Image: Robot_RestoreHomePos.png | 30px]] [[Robot_RestoreHomePos | Ana konuma dön]]: robotu ana konumuna getirir. |
|||
=== Yörüngeler === |
|||
Example how to use the basic robot class Robot6Axis which represents a 6-axis |
|||
Yörüngeleri oluşturmak ve değiştirmek için araçlar. Parametrik ve parametrik olmayan iki tür vardır. |
|||
industrial robot. The Robot module is dependent on Part but not on other modules. |
|||
It works mostly with the basic types Placement, Vector and Matrix. So we need |
|||
only: |
|||
from Robot import * |
|||
from Part import * |
|||
from FreeCAD import * |
|||
=== Basic robot stuff === |
|||
create the robot. If you do not specify another kinematic it becomes a Puma 560 |
|||
rob = Robot6Axis() |
|||
print rob |
|||
accessing the axis and the Tcp. Axes go from 1-6 and are in degree: |
|||
Start = rob.Tcp |
|||
print Start |
|||
print rob.Axis1 |
|||
move the first axis of the robot: |
|||
rob.Axis1 = 5.0 |
|||
the Tcp has changed (forward kinematic) |
|||
print rob.Tcp |
|||
move the robot back to start position (reverse kinematic): |
|||
rob.Tcp = Start |
|||
print rob.Axis1 |
|||
the same with axis 2: |
|||
rob.Axis2 = 5.0 |
|||
print rob.Tcp |
|||
rob.Tcp = Start |
|||
print rob.Axis2 |
|||
Waypoints: |
|||
w = Waypoint(Placement(),name="Pt",type="LIN") |
|||
print w.Name,w.Type,w.Pos,w.Cont,w.Velocity,w.Base,w.Tool |
|||
generate more. The trajectory always finds automatically a unique name for the waypoints |
|||
l = [w] |
|||
for i in range(5): |
|||
l.append(Waypoint(Placement(Vector(0,0,i*100),Vector(1,0,0),0),"LIN","Pt")) |
|||
create a trajectory |
|||
t = Trajectory(l) |
|||
print t |
|||
for i in range(7): |
|||
t.insertWaypoints(Waypoint(Placement(Vector(0,0,i*100+500),Vector(1,0,0),0),"LIN","Pt")) |
|||
see a list of all waypoints: |
|||
print t.Waypoints |
|||
del rob,Start,t,l,w |
|||
=== working with the document === |
|||
<div class="mw-translate-fuzzy"> |
|||
Working with the robot document objects: |
|||
==== Parametrik olmayan yörüngeler ==== |
|||
first create a robot in the active document |
|||
* [[Image: Robot_CreateTrajectory.png | 30px]] [[Robot_CreateTrajectory/tr |Yörünge oluştur]]: Sahneye yeni bir boş yörünge nesnesi ekler |
|||
if(App.activeDocument() == None):App.newDocument() |
|||
* [[Image: Robot_SetDefaultOrientation.png | 30px]] [[Robot_SetDefaultOrientation/tr | Varsayılan yönlendirmeyi ayarla]]: Oryantasyon yol noktalarını varsayılan olarak oluşturulacak şekilde ayarlayın |
|||
* [[Image: Robot_SetDefaultValues.png | 30px]] [[Robot_SetDefaultValues/tr|Varsayılan değerleri ayarla]] Yol noktası oluşturma için varsayılan değerleri ayarlayın. |
|||
App.activeDocument().addObject("Robot::RobotObject","Robot") |
|||
* [[Image: Robot_InsertWaypoint.png | 30px]] [[Robot_InsertWaypoint/tr| Bir yol noktası ekleyin]]: Geçerli robot konumundan bir yörüngeye bir yol noktası ekleyin |
|||
Define the visual representation and the kinematic definition (see [[6-Axis Robot]] and [[VRML Preparation for Robot Simulation]] for details about that) |
|||
* [[Image: Robot_InsertWaypointPre.png | 30px]] [[Robot_InsertWaypointPre/tr | Bir yol noktası ekle]]: Geçerli fare konumundan bir yörüngeye bir yol noktası ekleyin |
|||
App.activeDocument().Robot.RobotVrmlFile = App.getResourceDir()+"Mod/Robot/Lib/Kuka/kr500_1.wrl" |
|||
</div> |
|||
App.activeDocument().Robot.RobotKinematicFile = App.getResourceDir()+"Mod/Robot/Lib/Kuka/kr500_1.csv" |
|||
start positon of the Axis (only that which differ from 0) |
|||
App.activeDocument().Robot.Axis2 = -90 |
|||
App.activeDocument().Robot.Axis3 = 90 |
|||
retrieve the Tcp position |
|||
pos = FreeCAD.getDocument("Unnamed").getObject("Robot").Tcp |
|||
move the robot |
|||
pos.move(App.Vector(-10,0,0)) |
|||
FreeCAD.getDocument("Unnamed").getObject("Robot").Tcp = pos |
|||
create an empty Trajectory object in the active document |
|||
App.activeDocument().addObject("Robot::TrajectoryObject","Trajectory") |
|||
get the Trajectory |
|||
t = App.activeDocument().Trajectory.Trajectory |
|||
add the actual TCP position of the robot to the trajectory |
|||
StartTcp = App.activeDocument().Robot.Tcp |
|||
t.insertWaypoints(StartTcp) |
|||
App.activeDocument().Trajectory.Trajectory = t |
|||
print App.activeDocument().Trajectory.Trajectory |
|||
insert some more Waypoints and the start point at the end again: |
|||
for i in range(7): |
|||
t.insertWaypoints(Waypoint(Placement(Vector(0,1000,i*100+500),Vector(1,0,0),i),"LIN","Pt")) |
|||
t.insertWaypoints(StartTcp) # end point of the trajectory |
|||
App.activeDocument().Trajectory.Trajectory = t |
|||
print App.activeDocument().Trajectory.Trajectory |
|||
=== Simulation === |
|||
To be done..... |
|||
=== Exporting the trajectory === |
|||
The trajectory is exported by Python. That means for every control cabinet type there is a post-processor |
|||
Python module. Here is in detail the Kuka post-processor described |
|||
from KukaExporter import ExportCompactSub |
|||
ExportCompactSub(App.activeDocument().Robot,App.activeDocument().Trajectory,'D:/Temp/TestOut.src') |
|||
and that's kind of how it's done: |
|||
for w in App.activeDocument().Trajectory.Trajectory.Waypoints: |
|||
(A,B,C) = (w.Pos.Rotation.toEuler()) |
|||
print ("LIN {X %.3f,Y %.3f,Z %.3f,A %.3f,B %.3f,C %.3f} ; %s"%(w.Pos.Base.x,w.Pos.Base.y,w.Pos.Base.z,A,B,C,w.Name)) |
|||
==== Parametrik yörüngeler ==== |
|||
== Tutorials == |
|||
* [[Image: Robot_Edge2Trac.png | 30px]] [[Robot_Edge2Trac | Kenarlardan bir yörünge oluşturun]]: Kenarları yörüngeye çeviren yeni bir nesne yerleştirin |
|||
* [[6-Axis_Robot|6-Axis_Robot]] |
|||
* [[Image: Robot_TrajectoryDressUp.png | 30px]] [[Robot_TrajectoryDressUp | Bir yörüngeyi giydir]]: Yörüngenin bir veya daha fazla özelliğini geçersiz kılmanıza izin verir |
|||
* [[VRML Preparation for Robot Simulation|VRML Preparation for Robot Simulation]] |
|||
* [[Image: Robot_TrajectoryCompound.png | 30px]] [[Robot_TrajectoryCompound | Trajectory ...]]: Bazı tek yörüngelerin dışında bir bileşik oluşturun |
|||
== Betik == |
|||
{{docnav|Arch Module|Macros}} |
|||
<div class="mw-translate-fuzzy"> |
|||
[[Category:User Documentation]] |
|||
Robot yer değiştirmelerini modellemek için kullanılan işlevlerin açıklaması için [[Robot API example/tr|Robot API örneği]] bölümüne bakınız. |
|||
</div> |
|||
== Kılavuzlar == |
|||
* [[Robot 6-Axis/tr | Robot 6 Eksen]] |
|||
* [[VRML Preparation for Robot Simulation/tr| Robot Simülasyonu için VRML Hazırlığı]] |
|||
<div class="mw-translate-fuzzy"> |
|||
<languages/> |
|||
{{docnav/tr|[[FEM Module/tr|FEM tezgahı]]|[[Standard Menu/tr|Standart Menü]]}} |
|||
{{Robot Tools navi/tr}} |
|||
{{Userdocnavi/tr}} |
|||
[[Category:Workbenches/tr]] |
|||
</div> |
|||
{{Robot Tools navi}} |
|||
{{Userdocnavi}} |
|||
[[Category:Workbenches]] |
Revision as of 21:05, 13 February 2020
The FreeCAD Robot Workbench Icon
The FreeCAD Robot Workbench is unmaintained. Please mention on the FreeCAD forum if you have an interest in maintaining this workbench.
Giriş
Robot Tezgahı, Kuka gibi bir standart 6 eksenli endüstriyel robot 'u simüle etmek için kullanılan bir araçtır.
Aşağıdaki görevleri yapabilirsiniz:
- Bir robot ve iş parçaları ile bir simülasyon ortamı kurun.
- Hareket yörüngelerini oluşturun ve doldurun.
- Bir CAD parçasının özelliklerini bir yörüngeye ayırın.
- Robot hareketini simüle edin ve mesafeye ulaşın.
- Yörüngeyi bir robot program dosyasına aktarın.
Başlamak için Robot klavuzunu deneyin ve RobotExample.py örneğindeki programlama arayüzünü görün.
Araçlar
Burada bir robot kurulumu oluşturmak için kullanabileceğiniz temel komutlar.
Robotlar
6 Eksenli robotları oluşturma ve yönetme araçları
- Robot Oluştur: Sahneye yeni bir robot yerleştirin
- Robot Simülasyon : Simülasyon iletişim kutusunu açar ve simüle etmenizi sağlar
- Robot Dışa aktar: Bir robot program dosyasını dışa aktarın
- Ana konum ayarla: Bir robotun ana konumunu ayarlayın
- Ana konuma dön: robotu ana konumuna getirir.
Yörüngeler
Yörüngeleri oluşturmak ve değiştirmek için araçlar. Parametrik ve parametrik olmayan iki tür vardır.
Parametrik olmayan yörüngeler
- Yörünge oluştur: Sahneye yeni bir boş yörünge nesnesi ekler
- Varsayılan yönlendirmeyi ayarla: Oryantasyon yol noktalarını varsayılan olarak oluşturulacak şekilde ayarlayın
- Varsayılan değerleri ayarla Yol noktası oluşturma için varsayılan değerleri ayarlayın.
- Bir yol noktası ekleyin: Geçerli robot konumundan bir yörüngeye bir yol noktası ekleyin
- Bir yol noktası ekle: Geçerli fare konumundan bir yörüngeye bir yol noktası ekleyin
Parametrik yörüngeler
- Kenarlardan bir yörünge oluşturun: Kenarları yörüngeye çeviren yeni bir nesne yerleştirin
- Bir yörüngeyi giydir: Yörüngenin bir veya daha fazla özelliğini geçersiz kılmanıza izin verir
- Trajectory ...: Bazı tek yörüngelerin dışında bir bileşik oluşturun
Betik
Robot yer değiştirmelerini modellemek için kullanılan işlevlerin açıklaması için Robot API örneği bölümüne bakınız.
Kılavuzlar
Robot
- Trajectories, non parametric: Create a trajectory, Set default orientation, Set default values, Insert waypoint, Insert waypoint (mouse)
- Trajectories, parametric: Create a trajectory from edges, Dress-up trajectory, Trajectory compound
User documentation
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
- Hubs: User hub, Power users hub, Developer hub
Robot
- Trajectories, non parametric: Create a trajectory, Set default orientation, Set default values, Insert waypoint, Insert waypoint (mouse)
- Trajectories, parametric: Create a trajectory from edges, Dress-up trajectory, Trajectory compound
User documentation
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
- Hubs: User hub, Power users hub, Developer hub