Programmazione Offline

Programmazione Offline (o Programmazione Off-Line) significa poter programmare i robot al di fuori del loro ambiente di lavoro. La Programmazione Offline elimina i tempi di fermo macchina causati dalla programmazione in auto-apprendimento. La simulazione e la Programmazione Offline permettono di studiare i molteplici scenari di una cella di lavoro prima di organizzarne la produzione. Gli errori comuni durante la progettazione di una cella di lavoro possono essere previsti ed evitati in tempo utile.

La Programmazione Offline è la scela migliore per massimizzare il ritorno dell'investimento sui sistemi robotici e richiede strumenti di simulazione adeguati. Il tempo necessario all'adozione di nuovi programmi può essere ridotto da settimane ad un singolo giorno, permettendo la robotizzazione di produzioni a breve termine.

Programmazione Offline con RoboDK

La Programmazione Offline non ha limiti con RoboDK. RoboDK fornisce un'interfaccia grafica intuitiva per simulare e programmare robot industriali. RoboDK ti aiuta ad evitare le singolarità ed i limiti assi. Non è necessaria alcuna esperienza di programmazione. Maggiori informazioni sono disponibili nellasezione Programmazione Offlinedella documentazione.

Con l'API di RoboDK per Python puoi anche simulare e programmare robot utilizzando Python.Pythonè un linguaggio di programmazione che ti permette di lavorare velocemente e di integrare i tuoi sistemi in maniera più efficente. Python permette di esprimersi utilizzando meno righe di codice, in confronto ad altri linguaggi di programmazione, rendendolo intuitivo e più facile da imparare.

Maggiori informazioni sono disponibili nellasezione API per Pythondella documentazione. L'API di RoboDK è anchedisponibile per C#eMatlab.

Esempio di Programmazione Offline

from robolink import * # RoboDK's API from robodk import * # Math toolbox for robots # Start the RoboDK API: RDK = Robolink() # Get the robot (first robot found): robot = RDK.Item('', ITEM_TYPE_ROBOT) # Get the reference target by name: target = RDK.Item('Target 1') target_pose = target.Pose() xyz_ref = target_pose.Pos() # Move the robot to the reference point: robot.MoveJ(target) # Draw a hexagon around the reference target: for i in range(7): ang = i*2*pi/6 #ang = 0, 60, 120, ..., 360 # Calculate the new position around the reference: x = xyz_ref[0] + R*cos(ang) # new X coordinate y = xyz_ref[1] + R*sin(ang) # new Y coordinate z = xyz_ref[2] # new Z coordinate target_pos.setPos([x,y,z]) # Move to the new target: robot.MoveL(target_pos) # Trigger a program call at the end of the movement robot.RunCode('Program_Done') # Move back to the reference target: robot.MoveL(target)

Una volta che la simulazione ha prodotto gli effetti desiderati è molto semplice generare offline il programma robot (Programmazione Offline). Ad esempio, questo programma sarà generato per un robot ABB.

Robot Offline Programming result:

程序模块MOD_HexagonPath PROC HexagonPath () !generated by RoboDK for ABB IRB 1600ID-4/1.5 on 29/11/2014 17:42:31 ConfJ \On; ConfL \On; rdkTool.tframe:=[-4,0,371.3],[0.92387953,0,0.38268343,0]; MoveJ [[1010.634,-114.491,662.29],[0,0,1,0],[-1,0,-1,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj; MoveL [[810.634,-114.491,662.29],[0,0,1,0],[-1,0,-1,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj; MoveL [[910.634,58.715,662.29],[0,0,1,0],[0,-1,0,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj; MoveL [[1110.634,58.715,662.29],[0,0,1,0],[0,-1,0,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj; MoveL [[1210.634,-114.491,662.29],[0,0,1,0],[-1,0,-1,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj; MoveL [[1110.634,-287.696,662.29],[0,0,1,0],[-1,0,-1,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj; MoveL [[910.634,-287.696,662.29],[0,0,1,0],[-1,0,-1,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj; MoveL [[810.634,-114.491,662.29],[0,0,1,0],[-1,0,-1,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj; Program_Done; MoveL [[1010.634,-114.491,662.29],[0,0,1,0],[-1,0,-1,0],rdkExtax], rdkSpeed, rdkZone, rdkTool, \WObj:=rdkWObj; ConfJ \On; ConfL \On; ENDPROC ENDMODULE

机器人后置处理程序

Il Post Processor definisce come deve essere generato il programma robot. La conversione dei movimenti del simulatore in istruzioni robot specifiche è fatta dal Post Processor. Il Post Processor fornisce una completa flessibilità in modo da soddisfare esigenze specifiche.

RoboDK fornisce dei Post Processor per molteplici produttori di robot. I Post Processors possono essere facilmente creati o modificati. Maggiori informazioni sono disponibili nellasezione Post Processordella documentazione.

Privacy
OKOur website stores cookies as described in ourcookie statement.
By using our website you accept the use of cookies.