Robot KUKA

RoboDK supporta tutti i controller per robot KUKA dal KRC2, inclusi KUKA KRC3 e KRC4. Questa documentazione è basata su controller KRC4. Sul controller robot KRC4 viene eseguito il sistema operativo Microsoft Embedded Windows 7. I controllori precedenti, come il KRC2, eseguono Windows 95. Il teach pendant del robot visualizza un "HMI" il quale è un programma che KUKA ha sviluppato per esser eseguto su windows e la sua interfaccia deve essere utilizzata per manipolare il robot.

Le sezioni successive dimostrano operazioni tipiche utilizzando un teach pendant KUKA per preparare un nuovo programma in RoboDK e trasferirlo al robot.

Trasferire un programma robot

Seguire questi passaggi per ottenere un programma da una chiavetta USB:

1.Inserire la chiavetta USB nel controller robot (è molto più veloce della connessione sul teach pendant)

2.Se non vediamo la chiavetta USB dobbiamo entrare in modalità Administrator

3.Seleziona il file dalla chiavetta USB

4.Seleziona Edit➔Copy

5.Seleziona una cartella nell'unità KRC

6.Seleziona Edit➔Paste

Robots KUKA - Figura 1Robots KUKA - Figura 2

Comportamento del Post Processore

Quando generi programmi robot per controllori KUKA KRC puoi definire i sistemi di coordinate ($BASE) e gli utensili ($TOOL) utilizzando le stesse coordinate inserite in RoboDK, oppure sistemi di coordinate e utensili numerati.

Per impostazione predefinita, RoboDK esporta la posa completa (valori XYZABC) del tuo utensile e del sistema di coordinate nello stesso modo in cui li hai inseriti in RoboDK. Il codice seguente mostra un esempio di quanto generato da RoboDK per un programma robot SRC per KUKA:

; ---- Setting tool (TCP) ----------

; TOOL_DATA[3]={FRAME: X 116.058,Y 0.0,Z 219.481,A 0.0,B 60.0,C 0.0}

$TOOL = {FRAME: X 116.058,Y 0.0,Z 219.481,A 0.0,B 60.0,C 0.0}

; $TOOL=TOOL_DATA[3]

; ----------------------------------

 

; ---- Setting reference (Base) ----

; BASE_DATA[1]={FRAME: X 640.289,Y -290.0,Z 0.0,A 90.0,B 0.0,C 0.0}

$BASE = {FRAME: X 640.289,Y -290.0,Z 0.0,A 90.0,B 0.0,C 0.0}

; $BASE = BASE_DATA[1]

; ----------------------------------

In alternativa, se preferisci collegare il tuo utensile (variabile $TOOL) e il tuo sistema di coordinate (variabile $BASE) a utensili e sistemi di riferimento numerati, puoi modificare le seguenti variabili nel tuo post processore:

FRAME_INDEX: Imposta questa variabile su True per collegare il tuo sistema di coordinate a un sistema di riferimento base numerato. Assicurati che il tuo sistema di riferimento abbia un numero nella tua stazione RoboDK, come mostrato nell'immagine seguente.

TOOL_INDEX: Imposta questa variabile su True per collegare il tuo utensile a un utensile numerato. Assicurati che il tuo utensile abbia un numero nella tua stazione RoboDK, come mostrato nell'immagine seguente.

Robots KUKA - Figura 3

Inizia un programma robot

Seguire questi passaggi per iniziare un programma robot su un controllore KUKA KRC:

1.Seleziona un programma dalla memoria KRC

2.Seleziona Select sullo schermo

3.Seleziona il pulsante "R"(in cima) e Reset program

4.Inizia un programma selezionando il pulsante verde "Play" sul teach pendant

Robots KUKA - Figura 4Robots KUKA - Figura 5

Ottenere il TCP

I seguenti passaggi permettono la creazione o la modifica del robot tool (TCP, conosciuto anche come $BASE in KUKA KRC):

1.Seleziona MENU➔Start-up➔Calibrate➔Tool

2.Seleziona un tool e modifica o ottieni le posizioni X,Y,Z del TCP

Robots KUKA - Figura 6Robots KUKA - Figura 7


Ottieni i giunti robot

I prossimi passaggi permettono di ottenere i giunti robot:

1.Seleziona MENU➔Display➔Actual position

2.Selezione la modalità Joints e utilizza la colonna di sinistra per ottenere i giunti del robot

Robots KUKA - Figura 8Robots KUKA - Figura 9

Modalità Administrator

Alcune sezioni del menu necessitano dei diritti "Administrator". I seguenti passaggi permettono di entrare in modalità "Administrator":

1.Seleziona MENU➔Configuration➔User group

2.Seleziona Administrator (o altro)

3.Immetti la password se richiesta (la password di default è "kuka")

Robots KUKA - Figura 10Robots KUKA - Figura 11


Driver RoboDK per KUKA

I driver robot forniscono un'alternativa alla programmazione Offline (dove un programma è generato e poi trasferito al robot per la sua esecuzione). Con i driver robot, è possibile iniziare una simulazione direttamente sul robot (Programmazione Online). Più informazioni disponibili nella sezione Driver Robot.

Una connessione fra RoboDK e il robot KUKA può esser stabilita per muovere il robot in automatico da un PC connesso utilizzando RoboDK. Ciò permette di utilizzare l'opzione di RoboDK Run on robot per programmazione online e debug. La connessione può esser stabilita tramite una connessione Ethernet standard (TCP/IP).

Se non utilizzi una versione recente di RoboDK potresti stare utilizzando il driver legacy (apikuka, basato sul progetto KUKAVARPROXY). Per utilizzare il driver attuale, assicurati che il driver kukabridge sia selezionato nella sezione Più opzioni della finestra Connessione al Robot.

Robots KUKA - Figura 12

Seguire questi passaggi per impostare i driver RoboDK per KUKA:

1.Ottieni l'ultimo file di installazione di C3 Bridge (eseguibile c3setup) da questo link.

2.Utilizzando l'HMI di KUKA, copia il file di installazione c3setup.exe sul desktop del tuo controller o in una cartella del sistema di controllo.

3.Connetti un mouse (opzionale, ma consigliato).    
È possibile collegare dispositivi USB al teach pendant o al controller (non è richiesto il riavvio).     
In alternativa, è possibile stabilire una connessione desktop remota.
Questi passaggi possono anche essere eseguiti utilizzando il touch screen del teach pendant e la tastiera virtuale.

4.Utilizzando l'applicazione KUKA HMI è possibile aprire il menù principale utilizzando il pulsante KUKA, in alto a sinistra dello schermo:

a.KUKAConfigurazioneGruppo utenti scegli Expert (password: kuka)

b.KUKAAvvioServizioMinimizza HMI (verrà visualizzata la schermata di Windows)

5.Individua il file c3setup-X.Y.Z.exe copiato in precedenza (dove X.Y.Z è la versione di rilascio di Kukabridge, ad es. 1.7.1) ed eseguilo. Segui le istruzioni del programma di installazione.

6.Consenti la porta 7000 (o un'altra porta se la 7000 è occupata, vedi la nota seguente) per la comunicazione TCP/UDP (questo passaggio non è necessario sui controllori KUKA KRC2):

a.Ripristina l'HMI.

b.KUKAAvvioConfigurazione di reteAvanzate

c.NATAggiungi portaPorta numero 7000

d.Imposta i protocolli consentiti: tcp/udp

7.Avvia il C3 Bridge Server dal collegamento sul desktop o dalla voce nel Menu Start (puoi saltare questo passaggio se hai selezionato Avvia C3 Bridge Server nell'ultimo passaggio dell'installazione).

8.Per avviare automaticamente il C3 Bridge Server all'avvio del sistema, copia il collegamento dell'applicazione dal desktop alla cartella Esecuzione automatica del Menu Start.

Il C3 Bridge Server è ora pronto. Puoi lasciare questo programma in esecuzione. Questo server ti permette di scambiare i valori delle variabili globali tra il sistema di controllo KUKA e il PC remoto, scaricare e caricare programmi KRL, controllare l'esecuzione dei programmi KRL e altro ancora.

La configurazione del sistema di controllo può essere completata in due modi: automaticamente, utilizzando la modalità interattiva del driver kukabridge (solo KRC4), oppure manualmente, modificando i file del sistema di controllo del robot tramite l'HMI di KUKA. Vediamo entrambi gli approcci.

Cambiare il numero di porta del C3 Bridge Server

Il C3 Bridge Server memorizza le proprie impostazioni nel Registro di sistema di Windows. Segui questi passaggi per cambiare la porta di rete:

9.Termina il C3 Bridge Server.

10.Apri l'Editor del Registro di sistema e vai a HKEY_CURRENT_USER\SOFTWARE\C3 Bridge Interface.

11.Cambia il valore della chiave NetworkTcpPort con un valore diverso da 7000 (ad esempio, 7001).

12.Avvia nuovamente il C3 Bridge Server e ripeti il passaggio 6 della sezione precedente (apri l'accesso alla porta appropriata).

Le versioni più recenti del C3 Bridge Server (1.7.1 e successive) supportano opzioni da riga di comando. In particolare, la porta del server può essere modificata eseguendo l'applicazione con il parametro -tcpPort. Ad esempio:

c3bridge.exe -tcpPort 7001

Configurazione automatica tramite script

Lo script KUKA_Auto_Configuration.py nella cartella C:\RoboDK\Library\Scripts può essere utilizzato per eseguire la configurazione automatica del sistema di controllo KUKA. In questo caso, la stazione RoboDK corrente deve contenere almeno un robot KUKA con l'indirizzo IP e la porta corretti nella finestra Connessione al Robot. Lo script può essere richiamato dal menu StrumentiEsegui Script oppure con la scorciatoia da tastiera Shift+S.

Robots KUKA - Figura 13

Configurazione automatica

Prerequisiti: RoboDK versione 5.5.2 o successiva, sistema operativo Windows, percorso di installazione C:\RoboDK.

13.Apri una shell dei comandi con AVVIOTutti i programmi AccessoriPrompt dei comandi           
oppure AVVIOEsegui cmd.

14.Vai nella cartella C:\RoboDK\bin e avvia kukabridge.exe eseguendo i seguenti comandi:

c:

cd C:\RoboDK\bin

..\api\Robot\kukabridge.exe

15.Ora KUKA Bridge Driver è in esecuzione in modalità interattiva.

16.Stabilisci una connessione con il sistema di controllo digitando CONNECT <indirizzo IP del robot> <porta> <numero di assi del robot>, ad es:

CONNECT 172.1.1.10 7000 6

17.Se l'operazione ha successo, vedrai il seguente output:

SMS:Connecting

Connected

SMS:Working...

SMS:Ready

18.Richiedi la posizione articolare corrente del robot digitando il comando CJNT:

CJNT

SMS:Working...

JNTS 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000 0.00000

SMS:Ready

19.Esegui la configurazione automatica con il comando CONFIGURE FORCE:

CONFIGURE FORCE

SMS:Working...

Requesting robot program state

Current robot program state is #P_FREE

Reading current configuration ($config.dat)

Read complete, updating configuration

Adding definition of variable COM_ACTION

Adding definition of variable COM_ACTCNT

Adding definition of variable COM_ROUNDM

Adding definition of variable COM_VALUE1

Adding definition of variable COM_VALUE2

Adding definition of variable COM_VALUE3

Adding definition of variable COM_VALUE4

Adding definition of variable COM_E6AXIS

Adding definition of variable COM_FRAME

Adding definition of variable COM_POS

Adding definition of variable COM_E6POS

Configuration lines have been updated: 11 added, 0 removed, 0 updated, 659 total

Checking existence of old backup file ($config.bak)

Old backup file exists, deleting it

Creating new backup file ($config.bak)

Backup completed, writing new configuration

New configuration was successfully written

Checking existence of program file (RoboDKsync543.src)

Program file does not exists

Writing program file to robot system

Configuration is complete

SMS:Ready

Robots KUKA - Figura 14

20.Ora il tuo robot è pronto per funzionare: non devi fare altro che selezionare ed eseguire il programma RoboDKsyncVER.src (dove VER è la versione del programma di sincronizzazione, ad es. 543).

21.Nota: Utilizza sempre le versioni più recenti di RoboDKsync e Kukabridge per evitare problemi di compatibilità.

Configurazione manuale

I prossimi passaggi permettono di impostare manualmente il programma principale che gestirà i movimenti del robot:

22.Aggiungi la dichiarazione delle seguenti variabili globali:          
Per far ciò, localizza e modifica il file “KRC:\R1\SYSTEM\$CONFIG.DAT” tramite l'HMI di KUKA. La cartella “KRC:\R1\” può anche essere raggiunta dal drive C:\ al seguente percorso Windows: “C:\KRC\ROBOTER\KRC\”.

INT COM_ACTION=0

INT COM_ACTCNT=0

REAL COM_ROUNDM=0

REAL COM_VALUE1=0

REAL COM_VALUE2=0

REAL COM_VALUE3=0

REAL COM_VALUE4=0

DECL E6AXIS COM_E6AXIS

DECL FRAME COM_FRAME

DECL POS COM_POS

DECL E6POS COM_E6POS

23.Copia il programma KUKA SRC RoboDKsyncVER.src nella cartella KRC\R1\PROGRAM. Il suffisso VER nel nome del file indica la versione del programma (ad esempio, RoboDKsync543.src).

24.Avvia manualmente il programma RoboDKsyncVER.src per far sì che il robot sia in ascolto dei comandi provenienti dal computer.

Se il programma RoboDKsyncVER.src non è in esecuzione, RoboDK sarà comunque in grado di leggere i giunti del robot se il C3 Bridge Server è in esecuzione nel controller del robot.

Driver legacy per KUKA (Kukavarproxy)

Il driver legacy per KUKA si chiama apikuka e viene utilizzato insieme a KUKAVARPROXY. Questa soluzione è ormai obsoleta e RoboDK ne sta dismettendo il supporto. Se desideri utilizzare questo driver, assicurati che sia selezionato nella sezione Più opzioni della finestra Connessione al Robot.

Seguire questi passaggi per impostare il driver legacy per KUKA:

25.Connettere un mouse (opzionale, ma fortemente raccomandato)    
È possibile inserire una chiavetta USB nel teach pendant del controller (riavvio non necessario)    
In alternativa, è possibile stabilire una connessione desktop remota
Questi passaggi possono anche essere effettuati utilizzando il touch screen e la tastiera virtuale

26.(opzionale) Connettere una tastiera e/o uno schermo esterno (DVI)

27.Riavvia il controller se uno schermo esterno viene utilizzato

Se uno schermo esterno viene utilizzato con un mouse e una tastiera, lo schermo mostrerà un login KukaUser. Inserire le seguenti credenziali:

user:                kukauser        (o KukaUser)  
password:       68kuka1secpw59

Robots KUKA - Figura 15

28.Utilizzando l'applicazione KUKA HMI è possibile aprire il menù principale utilizzando il pulsante KUKARobots KUKA - Figura 16 in cima allo schermo:

a.Robots KUKA - Figura 17KUKA➔Configuration➔User group➔ scegli Administrator (password: kuka)

b.Robots KUKA - Figura 18KUKA➔Start-up➔Service➔Minimize HMI (verrà visualizzata la schermata windows)

29.Copia la cartella KUKAVARPROXY sul Desktop (o da qualche parte nel controller PC)

30.Sblocca la porta 7000 del server KUKAVARPROXY (HMI):

a.Seleziona l'HMI

b.Robots KUKA - Figura 19KUKA➔Start-up➔Network configuration➔Advanced

c.NAT➔Add port➔Porta numero 7000

d.Protocolli permessi: tcp/udp

31.Avvia il programma KUKAVARPROXY.EXE sul controllore robot (in Windows)

32.(raccomandato) I prossimi passaggi permettono di avviare automaticamente il driver sul controllore robot al riavvio:

a.Creare una scorciatoia del file KUKAVARPROXY.EXE

b.Seleziona Windows START➔All programs➔Right click startup➔Open

c.Incolla la scorciatoia nella cartella startup

Il server KUKAVARPROXY è ora pronto. È sicuro lasciare il programma aperto tutto il tempo. Il server permette la comunicazione delle variabili globali dal controller KUKA al PC remoto.

I prossimi passaggi servono a impostare il programma principale che gestirà i movimenti del robot:

1.Aggiungi una dichiarazione delle seguenti variabili:          
Per far ciò, localizza e modifica il file “KRC\R1\STEU\$config.dat” (o in “KRC\R1\System\$config.dat” per controllori KRC2). La cartella “KRC\R1\” può anche essere aperta dal drive C:\ nella seguente cartella WIndows: “C:\KRC\ROBOTER\KRC\”.

INT COM_ACTION=0

INT COM_ACTCNT=0

REAL COM_ROUNDM=0

REAL COM_VALUE1=0

REAL COM_VALUE2=0

REAL COM_VALUE3=0

REAL COM_VALUE4=0

DECL E6AXIS COM_E6AXIS

DECL FRAME COM_FRAME

DECL POS COM_POS

DECL E6POS COM_E6POS

2.Copia il programma KUKA SRC RoboDKsyncVER.src nella cartella KRC\R1\PROGRAM. Il suffisso VER nel nome del file indica la versione del programma (ad esempio, RoboDKsync543.src).

3.Avvia manualmente il programma RoboDKsyncVER.src per far sì che il robot sia in ascolto dei comandi provenienti dal computer.

Se il programma RoboDKsyncVER.src non è in esecuzione, RoboDK sarà comunque in grado di leggere i giunti del robot se il programma KUKAVARPROXY è in esecuzione nel controller del robot.

Risoluzione dei problemi

Questa sezione spiega come determinare, diagnosticare e risolvere i problemi che potresti riscontrare quando utilizzi i driver robot KUKA con RoboDK.

Verifica della disponibilità della porta 7000

Per risolvere i problemi relativi alla porta 7000 devi accedere al gruppo utenti Expert sul controller KUKA.

33.KUKAConfigurazioneGruppo utenti scegli Expert (password: kuka)

34.KUKAAvvioServizioMinimizza HMI (verrà visualizzata la schermata di Windows)

35.Apri una shell dei comandi con AVVIOTutti i programmi AccessoriPrompt dei comandi           
oppure AVVIOEsegui cmd

36.Richiedi un elenco di tutte le connessioni e le porte in ascolto utilizzando il comando:

netstat -a -b -n -o -p TCP | findstr :7000

37.Se la risposta non contiene alcuna stringa, la porta 7000 è libera e può essere utilizzata per il funzionamento del driver. I passaggi successivi possono essere saltati.

38.Se la risposta al comando del passaggio 4 è simile alla seguente:

TCP    0.0.0.0:7000           0.0.0.0:0              LISTENING       1840

39.L'ultimo numero nella riga precedente è l'identificativo del processo (PID). Può essere utilizzato per ottenere informazioni sul nome del processo con il seguente comando (utilizza il tuo numero al posto di 1840):

tasklist /fi "PID eq 1840"

40.Il risultato del comando tasklist contiene informazioni sul processo in ascolto sulla porta 7000. Output di esempio:

Image Name                     PID Session Name        Session#    Mem Usage

========================= ======== ================ =========== ============

c3bridge.exe                  1840 Console                    1      5,912 K

41.Se la porta è occupata dai processi KukavarProxy.exe o c3bridge.exe, il sistema è pronto per funzionare con il driver selezionato. Se la porta è occupata da un'altra applicazione, è necessario terminarla oppure cambiare il numero di porta del C3 Bridge Server.

Disinstallazione del driver legacy

Se hai utilizzato KUKAVARPROXY e desideri passare a C3 Bridge Server, non è richiesta alcuna procedura di disinstallazione specifica. Riduci a icona l'HMI di KUKA, chiudi KUKAVARPROXY e assicurati che non venga caricato automaticamente all'avvio del sistema (nessuna scorciatoia in AVVIOTutti i programmiEsecuzione automatica). Non è necessario eliminare il file eseguibile di KUKAVARPROXY.

Errore di configurazione

Le procedure di configurazione automatica o manuale del sistema di controllo potrebbero non riuscire. Questo è dovuto il più delle volte all'impossibilità di sovrascrivere il file $config.dat. Questo file può essere modificato solo da un utente con privilegi avanzati (expert). Una condizione aggiuntiva è l'arresto di tutti gli interpreti: robot e submit. Per arrestare l'interprete del robot è sufficiente annullare qualsiasi programma selezionato, oppure non selezionare alcun programma se il sistema di controllo è stato appena caricato. Per annullare l'interprete submit, utilizza l'HMI come mostrato nelle immagini seguenti per i sistemi KRC2 e KRC4, rispettivamente:

Se il file $config.dat rimane bloccato anche dopo aver arrestato tutti gli interpreti, puoi arrestare completamente l'esecuzione della parte software del sistema di controllo del robot. Nel sistema KRC2, fai clic sull'area rettangolare accanto agli indicatori di stato (S I R) e fai clic sul pulsante Exit:

Nel sistema KRC4, fai clic sull'icona verde del robot nell'area di notifica e seleziona Stop KRC:

Dopo aver arrestato il software di controllo, il file C:\KRC\ROBOTER\KRC\R1\System\$config.dat può essere modificato con un qualsiasi editor di testo. Esegui un riavvio del sistema operativo per applicare le modifiche.

Assi esterni

Dovresti poter utilizzare il driver e il post processore con i controllori robot KUKA anche se disponi di assi esterni come una tavola rotante. Ti consigliamo di utilizzare un sistema di coordinate numerato oppure un sistema di coordinate con la corretta definizione macchina già impostata sul tuo controller robot.

I seguenti file del tuo controller robot KUKA ti aiuteranno a comprendere come è strutturato il sistema KUKA:

42.KRC\R1\System\$config.dat

43.KRC\R1\System\bas.src

44.KRC\R1\Mada\$machine.dat

Se disponi di una tavola rotante, la posizione dell'origine della tavola dovrebbe essere definita in una variabile MACHINE_DEF del file config.dat. Chiunque abbia installato il sistema dovrebbe aver fornito un esempio per generare un programma che utilizza una tavola rotante sincronizzata basata sulla funzione BAS.

Per esempio, quando richiami la funzione BAS nel tuo file SRC utilizzando il flag ex_BASE e un determinato indice, come l'indice 9:

BASE_DATA[9] = {FRAME: X 0, Y 0, Z 0, A 0, B 0, C 0}

BAS(#ex_BASE,9)

Stai indicando che vuoi utilizzare l'indice 9 del tuo MACHINE_FRAME_DAT. Dovresti anche controllare le definizioni BAS ed EX_BASE per vedere a quale indice macchina (MACH_IDX) fa riferimento il tuo controller per impostazione predefinita. L'array BASE_DATA definito appena prima di richiamare la funzione BAS nel tuo file SRC potrebbe essere semplicemente l'offset del tuo attrezzo montato sulla tavola rotante.

Potrebbe essere necessario modificare manualmente la variabile $BASE con il tuo post processore o driver affinché corrisponda all'origine della tua tavola rotante, se disponi di una tavola rotante sincronizzata con il tuo braccio robotico.

Per esempio, se disponi dell'indice 9 di BASE_DATA, dovresti utilizzare il seguente codice con il tuo driver.

  ;--------

  ; Sostituisci questa definizione di $BASE con le 2 righe seguenti

  ;    per far funzionare il driver KUKA RoboDKSynch con gli assi esterni:

  ; $BASE = {FRAME: X 0, Y 0, Z 0, A 0, B 0, C 0} ; Commenta questa riga

  BASE_DATA[9] = {FRAME: X 0, Y 0, Z 0, A 0, B 0, C 0}

  BAS(#ex_BASE,9)

  ; la funzione BAS ex_BASE si collega a un indice MACHINE_DEF fisso

  ;   visibile nella funzione BAS

 

  ; Le due righe precedenti sono equivalenti alle seguenti,

  ;   se la funzione BAS utilizza l'indice 2 per la definizione della macchina

  ; BASE_DATA[9] = {FRAME: X 0, Y 0, Z 0, A 0, B 0, C 0}

  ; $BASE=EK(MACHINE_DEF[2].ROOT,MACHINE_DEF[2].MECH_TYPE,BASE_DATA[9])

  ;--------

$BASE=EK(EX_AX_DATA[1].ROOT,EX_AX_DATA[1].EX_KIN,EX_AX_DATA[1].OFFSET)

Per il post processore potresti sostituire la riga precedente nella funzione setFrame del tuo post processore per utilizzare questa definizione di $BASE, se vuoi tenere conto dell'offset tra la tavola rotante e il tuo attrezzo:

$BASE=EK(MACHINE_DEF[2].ROOT, MACHINE_DEF[2].MECH_TYPE, {%s})' % self.pose_2_str(pose)

In alternativa, quando utilizzi il driver puoi isolare il sistema di coordinate seguendo la procedura descritta di seguito (in modo da non dover far corrispondere perfettamente la cinematica dei tuoi assi esterni in RoboDK).

Per esempio, per poter utilizzare il driver RoboDK per impostazione predefinita, la cinematica dei tuoi assi esterni definita nel controller del robot dovrebbe corrispondere alla cinematica creata in RoboDK. Inoltre, se disponi di una tavola rotante, il punto di origine della tavola dovrebbe corrispondere alla posizione della tavola definita in RoboDK.

Segui questi passaggi per utilizzare il driver con un sistema di coordinate noto:

45.Seleziona StrumentiOpzionischeda Driver.

46.Seleziona l'opzione Fornisci coordinate cartesiane rispetto al riferimento.

Robots KUKA - Figura 20

47.Sostituisci la variabile $BASE del tuo file di programma RoboDKsync.src con il sistema di coordinate che desideri utilizzare.

Per esempio, se vuoi utilizzare il sistema di riferimento base numero 5, il file RoboDKsync.src dovrebbe avere questo aspetto (la prima riga è commentata, dovresti trovarla intorno alla riga 25):

; $BASE = {FRAME: X 0,Y 0,Z 0,A 0,B 0,C 0}

$BASE = BASE_DATA[5]

Questo sistema di coordinate deve essere stato definito nel controller robot KUKA e RoboDK non sovrascriverà questo valore.

Calibrazione del robot

Puoi utilizzare RoboDK per calibrare robot KUKA già calibrati da KUKA con l'opzione Absolute Accuracy. Tuttavia, devi assicurarti di disattivare questa opzione nel controller del robot KUKA. Quando calibri un robot KUKA già calibrato da KUKA con l'opzione Absolute Accuracy, è importante disattivare questa opzione per poterlo calibrare con RoboDK.

Per disattivare l'Absolute Accuracy di KUKA devi impostare la variabile DEACTIVATE_ABS_ACCUR su TRUE. Puoi trovare questa variabile nel file KRC:\STEU\MADA\$custom.dat (intorno alla riga 73).

Puoi verificare che l'opzione absolute accuracy di KUKA sia stata disattivata correttamente spostando il robot in una posizione nota (ad esempio, muovi gli assi del robot reale e in RoboDK nella posizione home) e assicurandoti che la posizione cartesiana visualizzata dal controller del robot corrisponda alla stessa posizione cartesiana visualizzata da RoboDK.