LabVIEW nella robotica industriale: i vantaggi della programmazione LabVIEW per i sistemi integrati di robotica, visione e misura.

14.40 – 15.10 Sala 2

Francesco Romanò

Chi siamo?

 


 

La missione è nel logo Il nostro miglio prodotto è il know-how Dalle consulenze ai sistemi Applicazioni robotiche basate su visione 2D/3D Alliance Member di National Instruments

Robotica e Machine Vision: un mercato in crescita

Crescita della presenza della visione artificiale nel mondo della robotica Nuove aree di impiego della robotica „leggera‟ Assenza di standardizzazione dei protocolli di comunicazione

• •

Robotica e Machine Vision: integrazione stretta
• Applicazioni robotiche che non fanno uso di visione generalmente richiedono una programmazione non evoluta

• Applicazioni robotiche semplici possono essere programmate direttamente da „teaching box‟
• Quando la visione è presente, la programmazione diventa più complessa (missioni dinamiche, ...)
• In celle robotiche la visione non va pensata come un „add-on‟ aggiunto al robot ma come un elemento da cui partirà per la progettazione della cella.

Tipologie di Robot, payload e dimensioni
• SCARA: 4-assi • Antropomorfi: 6 o più assi (robot di servizio) • Delta Robot: veloci e meno accurati, a volte sono considerati come semplici manipolatori • Range: payload da 1 a 1.000 kg

L’essenza dell’integrazione visione e robotica: demo
• Acquisizione di una immagine • Estrazione del profilo • Download su robot della traiettoria ed esecuzione

'flexible manufacturing‘ - 1 cosa e perché
• I cambiamenti del mercato e dell‟economia hanno ripercussioni sulla produzione industriale • Richieste e metodi di produzione stanno cambiando:
– Lotti piccoli di produzione – „time to market‟ da confinare – Costi di produzione da ridurre per mantenere quote di mercato

• Flessibilità verso velocità di produzione
– – – –

Tempo ciclo: cosa come interpretarlo? Progettare per la velocità Progettare per la flessibilità Progettare per la semplicità d‟impiego

Immagini: courtesy of Automatismi Brazzale and Cabur

'flexible manufacturing‘ - 2
• La robotica ha sempre più necessità di realizzare cicli complesse e non ripetitivi. • Spesso la robotica ha bisogno di vedere! • La visione può essere usata per:
– Localizzare un componente – Realizzazione controllo qualità sulle parti

• Controlli in-process al posto che a fine linea

Un esempio di codice LabVIEW con visione e robotica
Selezione algoritmo di visione Abilitazione del controllo qualità Prelievo e deposizione

Tipologia alimentatore

Tipologia robot

Scelta del sistema di visione come gestore dell’alimentatore

Perché l’esigenza degli integratori di usare robot differenti

 

Facendo un‟analogia, nel mondo della visione esistono standard di comunicazione (come CCIR, RS170, IEEE 1394 Firewire, CameraLink, GigE, …) uniformemente riconosciuti Robot di differenti marche non condividono lo stesso linguaggio di programmazione Spesso integratori ed utilizzatori vivono con la presenza simultanea di diverse marche
 

Scelta basata su dimensioni / payload / caratteristiche tecniche Scelta imposta dall‟utilizzatore

 

Le funzionalità di base dei robot sono simile e riconducibili a comandi standard Con LabVIEW può esser costruito un layer di astrazione

Tre esempi di programmazione robotica testuale
Kuka code example
1 2 3 INI
'!TITLE "Test Pick&Place"

Denso code example
PROGRAM TEST_PICKPLACE

Mitsubishi code example
10 SERVO ON 20 OVRD 100 30 HOPEN 1 40 DLY 0.5 ' Open the gripper.

PTP HOME Vel= 100 % DEFAULT

GRIPPER_OPEN () ; Open the gripper TAKEARM

4
5 6 7 8 9 10 11
12

PTP P_PICK_UP Vel= 100 % P_PICK_UP Tool[1] Base[0] ; Move 100 mm above the pick position. MOTOR ON
CALL GRIPPER OPEN LIN_REL {Z -100} ; Move to the pick position.
APPROACH P,P_PICK,100, S=100 GRIPPER_CLOSE () ; Close the gripper

LIN_REL {Z +100} ; Move 100 mm position. pick position. above the

MOVE L, P_PICK, S=50

' Open the gripper 50 MOV P_PICK,100 ' Move 100 mm above the pick position. 60 OVRD 50 ' Move to the pick 70 MVS P_PICK

' Move 100 mm above the pick position.

' Move to the pick position. ' Close the gripper.

PTP P_PLACE_UP Vel= 100 % P_PLACE_UP Tool[1] Base[0] ; Move 100 mm HCLOSE 1place the gripper CALL GRIPPER_CLOSE 80 above the' Close position.
DEPART P,100, S=100 LIN_REL {Z -100} ; Move to the place position. the pick position. 90 DLY 0.5 ' Move 100 mm above

100 OVRD 100 GRIPPER OPEN () ; Open the gripper APPROACH P,P_PLACE,100, S=100 ' Move 100 mm above the place position.

LIN_REL {Z +100} ; Move 100 mm MOVE theP_PLACE, S=50 above L, place position.
position.

110 MVS,100 ' Move to the place 120 MOV P_PLACE,100 ' Open the gripper 130 OVRD 50 ' Move 100 mm above 140 MVS P_PLACE 150 HOPEN 1 160 DLY 0.5 170 OVRD 100 180 SERVO OFF

' Move 100 mm above the pick position. ' Move 100 mm above the place position.

PTP HOME Vel= 100 % DEFAULT
CALL GRIPPER_OPEN DEPART P,100, S=100 the place position. MOTOR OFF GIVEARM END

' Move to the place position. ' Open the gripper.

Realizzazione di un layer di astrazione: come gestire differenti famiglie di robot
• Un comando è essenzialmente identico a prescindere dal brand robotico • Comandi di alto livello generici sono tradotti in specifici protocolli facendo uso di plug-in

Comando

Protocollo LabVIEW di alto livello
Denso Mitsubishi Kuka Protocol Protocol Protocol Staubli Protocol XYZ Protocol

Robot Controller

Integrazione di visione e robotica: i punti focali

• • • • • • • •

Procedure di calibrazione che convertano il mondo pixel in un sistema di riferimento „ingegnerizzato‟ (sostanzialmente un mondo espresso in mm)
Calibrazione relativa tra il sistema robotico ed il sistema di riferimento della videocamera Gestione del parco prodotti Procedure di manutenzione: preventive, ordinarie e straordinarie Interfaccia utente e gestione delle anomalie Comunicazione con periferiche: vibratori, nastro step, nastro + CT, vassoi (AnyFeed) … Accesso alla macchina per le operazioni di manutenzione (anche da remoto) Comunicazione con l‟unità di supervisione (ad es. cRIO / PLC / …) Gestione dei “fuori ciclo”: apertura riparistica, pressione dell‟emergenza e conseguenti riavvii del ciclo produttivo

Punti focali dell’integrazione in LabVIEW:
funzioni e strumenti per una programmazione robotica di alto livello
• Il maggior valore è dato dalla possibilità di combinare differenti tecnologie e periferiche sotto la medesima piattaforma: LabVIEW
– – Robotica, visione, alimentatori (nastrini, vassoi, pallet, ..) data acquisition & measurements, interfaccia utente, protocolli industriali standard, web services, …. Multipiattaforma: Windows, Linux, MacOS, RT OS, FPGA, …


– – –

Prestazioni superiori
Sviluppo accelerato Interfaccia semplificata Strumenti di alto livello (calibrazione di immagine, strumenti per la robotica, …)

In applicazioni complesse c‟è la possibilità di avere la visione come „master‟ della propria applicazione

'flexible manufacturing‘ - 4 software meglio integrato
• La macchine necessitano di essere riconfigurate dall‟utente finale • Il sw di visione e robotica necessita di facili interfacce d‟uso • L‟integrazione di visione e robotica si devo occupare anche delle procedure dell‟istallazione, della calibrazione, della manutenzione. • Tutto ciò può essere ottenuto con una stretta integrazione nell‟ambiente LabVIEW della robotica.

'flexible manufacturing‘ - 2 robotica
• Le macchine di assemblaggio hanno bisogno di produrre componenti differenti:
– – – – – – – quantomeno prodotti simili Viene richiesto di limitare le configurazioni meccaniche Operatori non qualificati Riconfigurabili e riutilizzabili per futuri prodotti Controllo qualità in-process Carico ed alimentazione di parti Assemblaggio di componenti

• Assemblaggio flessibile automatico: • Macchine per la manipolazione e l‟assemblaggio flessibili e riconfigurabili • Modularità elevata • La risposta è: più robotica

Sign up to vote on this title
UsefulNot useful