Programmazione offline
con RoboDK

Simulare e programmare facilmente bracci robotici industriali utilizzando un'interfaccia intuitiva e facile da usare. È possibile fare clic e trascinare gli oggetti per creare il layout e programmare il robot.

Non è richiesta esperienza di programmazione con il software RoboDK.

Per saperne di più sul software RoboDK

Programmazione offline

Programmazione offline (o programmazione fuori linea) significa programmare i robot al di fuori dell'ambiente di produzione. La programmazione offline elimina i tempi di fermo della produzione causati dalla programmazione in officina.

La simulazione e la programmazione offline consentono di studiare diversi scenari di una cella di lavoro robotizzata prima di impostare la cella di produzione. Gli errori comunemente commessi nella progettazione di una cella di lavoro possono essere previsti in tempo.

La programmazione offline è il modo migliore per massimizzare il ritorno sull'investimento per i sistemi robotici e richiede strumenti di simulazione adeguati. Il tempo per l'adozione di nuovi programmi può essere ridotto da settimane a un solo giorno, consentendo la robotizzazione della produzione a bassa tiratura.

API robotica

Accedere all'API RoboDK, l'API più avanzata per la programmazione di bracci robotici.

Con l'API RoboDK è possibile simulare e programmare qualsiasi robot industriale utilizzando il linguaggio di programmazione e l'ambiente di sviluppo preferiti.

L'API di RoboDK è disponibile per Python, C#/.Net, C++ e Matlab.

Ulteriori informazioni sull'API RoboDK

Processori di post-produzione

Una volta che la simulazione produce l'effetto desiderato, è possibile generare i programmi del robot offline con soli 2 clic (programmazione offline).

RoboDK include oltre 100 post processor per generare programmi per più di 1200 robot e 80 produttori di robot.

Per saperne di più sui post-processor

A titolo di esempio, viene generato il seguente programma per un robot ABB.

Risultato della programmazione offline di un robot ABB IRC5:

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

Esempio di programma che utilizza l'API di RoboDK

# Disegnare un esagono intorno al bersaglio 1
from robolink import *    # RoboDK API
from robodk import *      # Toolbox matematico per robot
 
# Avviare l'API RoboDK:
RDK = Robolink()
 
# Recuperare il robot
robot = RDK.Item('', ITEM_TYPE_ROBOT)
 
# Ottenere il riferimento al bersaglio:
target = RDK.Item('Target 1')
target_pose = target.Pose()
xyz_ref = target_pose.Pos()
 
# Spostare il robot verso il bersaglio di riferimento:
robot.MoveJ(target)
 
# Disegnare un esagono intorno al bersaglio di riferimento:
for i in range(7):
    ang = i*2*pi/6 # Angolo = 0,60,120,...,360
    R = 200        # Raggio
    
    # Calcolare la nuova posizione:
    x = xyz_ref[0] + R*cos(ang) # nuova coordinata X
    y = xyz_ref[1] + R*sin(ang) # nuova coordinata Y
    z = xyz_ref[2]              # nuova coordinata Z
    target_pose.setPos([x,y,z])
    
    # Spostarsi sul nuovo bersaglio:
    robot.MoveL(target_pose)
 
# Attivazione di una chiamata di programma alla fine del movimento
robot.RunInstruction('Program_Done')
 
# Tornare al bersaglio di riferimento:
robot.MoveL(target)