Simuleu i programeu braços robòtics industrials fàcilment amb una interfície intuïtiva i fàcil d'utilitzar. Podeu fer clic i arrossegar objectes per crear la vostra disposició i programar el vostre robot.
No cal experiència en programació per utilitzar el programari RoboDK.
Més informació sobre el programari RoboDKLa programació fora de línia (o programació offline) consisteix a programar robots fora de l'entorn de producció. La programació fora de línia elimina les aturades de producció causades per la programació a la planta.
La simulació i la programació fora de línia permeten estudiar diversos escenaris d'una cel·la de treball robotitzada abans de muntar la cel·la de producció. Els errors habituals en el disseny d'una cel·la de treball es poden preveure a temps.
La programació fora de línia és la millor manera de maximitzar el retorn de la inversió dels sistemes robòtics i requereix eines de simulació adequades. El temps d'adopció de nous programes es pot reduir de setmanes a un sol dia, cosa que permet robotitzar produccions de sèries curtes.
Accediu a l'API de RoboDK, l'API més avançada per programar braços robòtics.
Amb l'API de RoboDK podeu simular i programar qualsevol robot industrial amb el vostre llenguatge de programació i entorn de desenvolupament preferits.
L'API de RoboDK està disponible per a Python, C#/.Net, C++ i Matlab.
Un cop la simulació produeix l'efecte desitjat, podeu generar els programes del robot fora de línia amb només 2 clics (programació fora de línia).
RoboDK inclou més de 100 postprocessadors per generar programes per a més de 1400 robots i 80 fabricants de robots.
Com a exemple, es generarà el programa següent per a un robot ABB.
MODULE MOD_HexagonPath PROC HexagonPath() ! Program generated by RoboDK for ABB IRB 1600ID-4/1.5 ConfJ \On; ConfL \On; tl.tframe:=[-4,0,371.3],[0.92387953,0,0.38268343,0]; MoveJ [[1010.6,-114.4,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl; MoveL [[810.6,-114.4,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl; MoveL [[910.6,58.7,662.2],[0,0,1,0],[0,-1,0,0],ex],sp,z1,tl; MoveL [[1110.6,58.7,662.2],[0,0,1,0],[0,-1,0,0],ex],sp,z1,tl; MoveL [[1210.6,-114.4,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl; MoveL [[1110.6,-287.6,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl; MoveL [[910.6,-287.6,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl; MoveL [[810.6,-114.4,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl; Program_Done; MoveL [[1010.6,-114.4,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl; ENDPROC ENDMODULE
# Dibuixa un hexàgon al voltant de l'objectiu 1
from robolink import * # RoboDK API
from robodk import * # Eines matemàtiques per a robots
# Inicia l'API de RoboDK:
RDK = Robolink()
# Obteniu el robot
robot = RDK.Item('', ITEM_TYPE_ROBOT)
# Obteniu l'objectiu de referència:
target = RDK.Item('Target 1')
target_pose = target.Pose()
xyz_ref = target_pose.Pos()
# Mou el robot a l'objectiu de referència:
robot.MoveJ(target)
# Dibuixa un hexàgon al voltant de l'objectiu de referència:
for i in range(7):
ang = i*2*pi/6 # Angle = 0,60,120,...,360
R = 200 # Radi
# Calcula la nova posició:
x = xyz_ref[0] + R*cos(ang) # nova coordenada X
y = xyz_ref[1] + R*sin(ang) # nova coordenada Y
z = xyz_ref[2] # nova coordenada Z
target_pose.setPos([x,y,z])
# Mou al nou objectiu:
robot.MoveL(target_pose)
# Activa una crida de programa al final del moviment
robot.RunInstruction('Program_Done')
# Torna a l'objectiu de referència:
robot.MoveL(target)