Automazione industriale

download Automazione industriale

of 297

Transcript of Automazione industriale

UNIVERSIT DEGLI STUDI DI SIENA SEDE DI AREZZO

Corso di Laurea in Ingegneria dellAutomazione

Automazione IndustrialeANNO ACCADEMICO 2005-2006

Ing. Daniele Rapisarda

ANNO ACCADEMICO 2005-2006

Appunti del Corso

Obiettivi: Il corso fornisce conoscenze relative all'automazione di processi industriali ed alla robotica, con particolare attenzione all'automazione ON / OFF, alla pneumatica, ai controllori a logica programmabile ed alle loro applicazioni. Il corso sar arricchito da esercitazioni in laboratorio dove sar possibile sviluppare alcune delle applicazioni trattate Argomenti:L'automazione dei processi industriali. Cenni di robotica Il robot Adept Cobra 600 (manipolatore e controllo) Il linguaggio di programmazione V+ Circuiti combinatori e numerici. Automazione ON / OFF La Pneumatica Elementi introduttivi ai PLC Programmazione di PLC Il linguaggio a contatti. Esempi di applicazioni controllate mediante PLC Componentistica per l'automazione. Attuatori elettrici Sensori

Release: Febbraio 2006

I dc nie1 LAUTOMAZIONE DEI PROCESSI INDUSTRIALI ................................................................................... 4 1.1 INTRODUZIONE ................................................................................................................................................... 4 1.2 IL PROBLEMA DELLAUTOMAZIONE ................................................................................................................... 7 1.3 GLI AUTOMATISMI INDUSTRIALI ........................................................................................................................ 8 1.4 UN AUTOMATISMO: IL CORPO UMANO ............................................................................................................... 9 1.5 LA ROBOTICA ................................................................................................................................................... 10 1.5.1 La nozione di robot .................................................................................................................................. 10 1.5.2 Definizioni e classificazioni..................................................................................................................... 12 1.5.3 Struttura operativa gradi di libert ed architettura................................................................................ 15 1.5.4 Gradi di libert ........................................................................................................................................ 16 1.5.5 Architettura del braccio........................................................................................................................... 18 1.6 ROBOT INDUSTRIALI: CARATTERISTICHE E METODI DI TEST ........................................................................... 24 1.6.1 Verifica della precisione e ripetibilit di posizionamento ...................................................................... 25 1.7 EVOLUZIONE DEI SISTEMI DI AUTOMAZIONE ................................................................................................... 29 2 ESEMPIO DI MANIPOLATORE: ADEPT ROBOT COBRA 600 ............................................................ 31 2.1 IL MANIPOLATORE ............................................................................................................................................ 31 2.2 MODALIT OPERATIVE DEL ROBOT ................................................................................................................. 35 2.2.1 Modalit operativa manuale ................................................................................................................... 35 2.2.2 Modalit operativa automatica ............................................................................................................... 36 2.3 MODULO DI COMANDO PORTATILE MCP......................................................................................................... 36 2.4 STATI DEL ROBOT ............................................................................................................................................. 41 2.4.1 Stato World .............................................................................................................................................. 41 2.4.2 Stato Joint ................................................................................................................................................ 41 2.4.3 Stato Tool ................................................................................................................................................. 42 2.5 ROBOT LOCATIONS .......................................................................................................................................... 43 2.5.1 Transformations....................................................................................................................................... 44 2.5.2 Precision Points....................................................................................................................................... 49 2.6 VARIABILI PER IDENTIFICAZIONE DI "LOCATIONS" ......................................................................................... 50 2.6.1 Variabili per identificazione di matrici ("Array")................................................................................... 51 2.6.2 Come definire le variabili........................................................................................................................ 52 2.7 COMPOUND TRANSFORMATIONS (TRASFORMAZIONI COMPOSTE)................................................................... 53 2.8 ROBOT MOTIONS .............................................................................................................................................. 55 2.8.1 Procedural Motion................................................................................................................................... 56 2.9 ROBOT SPEED ................................................................................................................................................... 58 2.10 SOMMARIO DELLE ISTRUZIONI MOTION CONTROL....................................................................................... 59 2.11 IL CONTROLLER ADEPT MV......................................................................................................................... 66 2.12 DESCRIZIONE DEL SISTEMA DI CONTROLLO ................................................................................................. 75 2.12.1 Amplifier Control Section .................................................................................................................... 78 2.13 INTERCONNESSIONE HARDWARE DELLE SCHEDE SUL CONTROLLER ADEPT .............................................. 79 3 IL LINGUAGGIO DI PROGRAMMAZIONE V+........................................................................................ 80 3.1 CREAZIONE DI UN PROGRAMMA....................................................................................................................... 80 3.1.1 Robot Control Programs ......................................................................................................................... 81 3.1.2 General Programs ................................................................................................................................... 81 3.2 ORGANIZZAZIONE DI UN PROGRAMMA ............................................................................................................ 81 3.2.1 Logica computazionale multi-tasking..................................................................................................... 81 3.3 PROGRAM CONTROL ........................................................................................................................................ 82 3.3.1 Unconditional Branch Instructions ......................................................................................................... 82 3.3.2 Program Interrupt Instructions ............................................................................................................... 84 3.3.3 Logical (Boolean) Expressions................................................................................................................ 88 3.3.4 Conditional Branching Instructions ........................................................................................................ 90 3.3.5 Looping Structures................................................................................................................................... 94 3.4 SUMMARY OF PROGRAM CONTROL KEYWORDS ............................................................................................. 98 3.5 PRINCIPALI OPERAZIONI DI INPUT / OUTPUT.................................................................................................. 101 3.5.1 Terminal I/O .......................................................................................................................................... 101

3.5.2 Digital I/O.............................................................................................................................................. 112 3.6 EXAMPLE V + PROGRAMS .............................................................................................................................. 118 3.6.1 Introduction ........................................................................................................................................... 118 3.6.2 Pick and Place ....................................................................................................................................... 119 3.6.3 Menu Program....................................................................................................................................... 122 3.6.4 Teaching Locations With the MCP........................................................................................................ 124 3.6.5 Defining a Tool Transformation............................................................................................................ 125 3.6.6 Others..................................................................................................................................................... 127 4 SISTEMI NUMERICI E ALGEBRA DI BOOLE ....................................................................................... 129 4.1 SISTEMA NUMERICO DECIMALE ..................................................................................................................... 129 4.2 SISTEMA NUMERICO BINARIO ........................................................................................................................ 130 4.2.1 Le operazioni aritmetiche nel sistema binario ...................................................................................... 133 4.3 DISPOSITIVI BINARI ........................................................................................................................................ 138 4.4 ALGEBRA DI BOOLE ....................................................................................................................................... 139 4.5 TEOREMI FONDAMENTALI DELLALGEBRA DI BOOLE ................................................................................... 151 5 AUTOMAZIONE ON / OFF .......................................................................................................................... 156 5.1 PNEUMATICA .................................................................................................................................................. 156 5.1.1 Caratteristiche della pneumatica .......................................................................................................... 158 5.1.2 Il concetto di pressione.......................................................................................................................... 159 5.1.3 Cambiamento di stato dei gas ............................................................................................................... 161 5.1.4 Aria compressa ...................................................................................................................................... 162 5.2 I CILINDRI PNEUMATICI .................................................................................................................................. 163 5.2.1 Cilindri a semplice effetto...................................................................................................................... 164 5.2.2 Cilindri a doppio effetto......................................................................................................................... 166 5.2.3 Altre tipologie di cilindro ...................................................................................................................... 170 5.3 MOTORI PNEUMATICI ..................................................................................................................................... 173 5.4 LA TEORIA DEL VUOTO................................................................................................................................... 174 5.4.1 Grado di vuoto ....................................................................................................................................... 176 5.4.2 Generatore di vuoto ............................................................................................................................... 177 5.5 COMANDI PER ATTUATORI PNEUMATICI ........................................................................................................ 181 5.6 DISTRIBUTORI ................................................................................................................................................ 182 5.7 ELETTROPNEUMATICA ................................................................................................................................... 183 5.8 IL REL ........................................................................................................................................................... 185 5.9 SISTEMI DI CONTROLLO DIGITALI .................................................................................................................. 187 5.9.1 Circuiti combinatori e numerici ............................................................................................................ 187 6 ELEMENTI INTRODUTTIVI AI PLC ........................................................................................................ 195 6.1 PRINCIPIO DI FUNZIONAMENTO ...................................................................................................................... 199 6.2 LA PROGRAMMAZIONE DEI PLC .................................................................................................................... 203 6.3 LA PROGRAMMAZIONE IN DIAGRAMMA A REL (KOP)................................................................................. 205 6.3.1 Termini di base ...................................................................................................................................... 205 6.3.2 Creazione di un programma.................................................................................................................. 207 6.3.3 Aree di memoria..................................................................................................................................... 209 6.4 CODICE MNEMONICO ...................................................................................................................................... 212 6.4.1 Struttura della memoria di programma ................................................................................................ 212 6.5 ISTRUZIONI DEL DIAGRAMMA A REL ............................................................................................................ 213 6.5.1 LOAD e LOAD NOT .............................................................................................................................. 213 6.5.2 AND e AND NOT................................................................................................................................... 214 6.5.3 OR e OR NOT ........................................................................................................................................ 214 6.5.4 Combinazione di istruzioni AND e OR.................................................................................................. 215 6.5.5 OUTPUT e OUTPUT NOT.................................................................................................................... 215 6.5.6 Listruzione END ................................................................................................................................... 216 6.5.7 AND LOAD ............................................................................................................................................ 216 6.5.8 OR LOAD............................................................................................................................................... 218 6.5.9 Istruzioni di blocchi logici in serie ........................................................................................................ 218 6.5.10 Come codificare pi istruzioni .......................................................................................................... 220 6.5.11 Salti .................................................................................................................................................... 220 6.5.12 SET e RESET ..................................................................................................................................... 221 6.5.13 Istruzioni differenziali sul fronte di salita/discesa ............................................................................ 222 6.6 ISTRUZIONI NEL DIAGRAMMA A REL (PER PLC OMRON)............................................................................. 223 6.6.1 LOAD, LOAD NOT, AND, AND NOT, OR e OR NOT ......................................................................... 223 6.6.2 AND LOAD e OR LOAD ....................................................................................................................... 224 6.7 ISTRUZIONI PER IL CONTROLLO DEI BIT ......................................................................................................... 224 6.7.1 OUTPUT e OUTPUT NOT OUT e OUT NOT................................................................................... 224 6.7.2 SET e RESET SET e RSET.................................................................................................................. 225 6.7.3 DIFFERENTIATE UP e DOWN DIFU(13) e DIFD(14) ................................................................... 226 6.8 ISTRUZIONI PER TEMPORIZZATORI E CONTATORI .......................................................................................... 227 6.8.1 TIMER TIM......................................................................................................................................... 228 6.8.2 COUNTER CNT.................................................................................................................................. 229

6.9 ISTRUZIONI DI SCORRIMENTO ........................................................................................................................ 231 6.9.1 SHIFT REGISTER SFT(10)................................................................................................................ 231 6.10 ISTRUZIONI DI SPOSTAMENTO DATI ........................................................................................................... 232 6.10.1 MOVE MOV(21) ............................................................................................................................. 232 6.11 ISTRUZIONI DI COMPARAZIONE .................................................................................................................. 233 6.11.1 COMPARE CMP(20)...................................................................................................................... 233 6.12 ACCORGIMENTI DI PROGRAMMAZIONE...................................................................................................... 235 6.13 LA CONSOLE DI PROGRAMMAZIONE .......................................................................................................... 236 6.13.1 Funzionamento della console operativa............................................................................................ 238 6.13.2 Cancellazione della memoria ............................................................................................................ 239 6.13.3 Inserimento e cancellazione delle istruzioni ..................................................................................... 240 6.13.4 Inserimento o scrittura dei programmi ............................................................................................. 242 6.13.5 Verifica del programma..................................................................................................................... 244 6.14 ESEMPIO DI PROGRAMMAZIONE MEDIANTE CONSOLE ............................................................................... 245 6.14.1 Operazioni preliminari ...................................................................................................................... 245 6.14.2 Esempio.............................................................................................................................................. 246 6.14.3 Procedure di programmazione.......................................................................................................... 247 6.14.4 Verifica del programma..................................................................................................................... 250 6.14.5 Esecuzione del test in modalit MONITOR ...................................................................................... 251 6.15 ESEMPI APPLICATIVI DI PROGRAMMAZIONE PER PLC OMRON ................................................................. 252 7 ATTUATORI ELETTRICI............................................................................................................................ 270 7.1.1 7.1.2 7.1.3 7.1.4 8 Motori a corrente continua.................................................................................................................... 270 Motori "brushless" a magnete permanente ........................................................................................... 273 Motori a corrente alternata................................................................................................................... 273 Motori passo-passo................................................................................................................................ 274

I SENSORI NELLAUTOMAZIONE........................................................................................................... 278 8.1 SENSORI PER IL CONTROLLO DI MOVIMENTO E DI SPOSTAMENTO ................................................................. 279 8.1.1 Potenziometri ......................................................................................................................................... 279 8.1.2 Trasformatori differenziali variabili lineari (LVDT) ............................................................................ 281 8.1.3 Codificatori (encoder) ........................................................................................................................... 281 8.2 SENSORI DI PROSSIMIT ................................................................................................................................. 284 8.2.1 Sensori fotoelettrici (o sensori ottici) .................................................................................................... 284 8.2.2 Sensori a principio induttivo ................................................................................................................. 286 8.2.3 Sensori a principio capacitivo............................................................................................................... 287 8.2.4 Sensori a ultrasuoni............................................................................................................................... 287 8.2.5 Sensori magnetici a contatti reed .......................................................................................................... 288 8.3 SENSORI DI DEFORMAZIONE E DI FORZA ........................................................................................................ 289 8.3.1 Estensimetri ........................................................................................................................................... 290 8.3.2 Sensori tattili.......................................................................................................................................... 291 8.4 SENSORI DI VISIONE ....................................................................................................................................... 292

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

1

Capitolo

1 Lautomazione dei processi industriali1.1 Introduzione Il termine automazione entra nel vocabolario tecnico italiano agli inizi degli anni 60 dopo essere stato coniato negli Stati Uniti, dove appare il termine Automation per indicare i principali aspetti della rivoluzione organizzativa e gestionale in atto nei processi industriali ed in genere in qualsiasi processo tecnologico complesso. In senso pi ristretto, per automazione industriale si intende comunemente quellinsieme di teorie e tecniche operative utilizzate per progettare e realizzare nel campo industriale una progressiva sostituzione dellattivit umana con sistemi anche molto complessi di produzione, composti prevalentemente da macchine, dispositivi meccanici ed apparecchi elettrici. Si comprende come gli uffici di progettazione degli impianti industriali si debbano in quel periodo trasformare rapidamente. Per motivi storici essi erano, allepoca considerata, essenzialmente di cultura meccanica; mentre le nuove esigenze richiedono competenze non superficiali di elettrotecnica, elettronica, pneumatica, oleodinamica e, nei decenni successivi agli anni 60, anche di informatica. Si tratta quindi di una progettazione integrata, con forte contenuto di attivit interdisciplinari. Con laggettivo automatico si intende, come gi nel linguaggio comune, la propriet di qualsiasi apparato di perseguire in modo autonomo gli obiettivi assegnati, prendendo delle decisioni ed agendo di conseguenza. In un sistema automatico dunque riconoscibile un sistema delle decisioni (sistema di comando) ed un sistema di attuazione delle decisioni (sistema di potenza).

4

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Il sistema di comando comprende sempre un sistema sensoriale che rileva costantemente gli effetti delle decisioni. In campo industriale, il panorama delle realizzazioni estremamente vasto e variegato. Sulla base di una comune tecnologia meccanica, la moderna automazione industriale impiega tutte le altre tecnologie conosciute: Elettrica Elettronica A fluido: idraulica e pneumatica

Attualmente nell'industria manifatturiera assistiamo ad un continuo inserimento di automatismi capaci di sostituire l'uomo in alcune funzioni che gli sono proprie. A seconda delle funzioni umane sostituite si ottiene la classificazione dei corrispondenti tipi di sistemi di automazione. Nel settore specifico dell'automazione industriale dei processi di produzione, la necessit di operare secondo i principi della flessibilit di montaggio e della qualit di produzione in un contesto altamente produttivo, implica la richiesta di un qualcosa che va leggermente oltre il concetto di robot: la linea integrata. Per specificare tipologicamente il campo di interesse, si consideri un esempio semplificativo: quello di una stazione per la composizione automatica (montaggio e assemblaggio) di un gruppo meccanico. Fino ad ora, per le operazioni di montaggio, nelle industrie venivano prese in considerazione le seguenti due soluzioni: Montaggio automatico tramite macchina speciale monoscopo Montaggio manuale affidato ad operai qualificati

La prima soluzione un classico esempio di automazione dedicata. Ogni stazione di lavoro contraddistinta da una estrema specializzazione; si esegue una sola operazione in sequenza ed il moto controllato da un dispositivo specificatamente costruito e non riconvertibile. La messa a punto spinta fino all'ottenimento delle prestazioni desiderate e l'economicit della soluzione legata a produzioni in grande serie. L'uso dell'uomo in qualit di macchina operatrice entro una catena di montaggio, ampiamente menzionata come aspetto alienante dei tempi moderni. E' comunque una soluzione "flessibile" poich sfrutta le potenzialit umane attribuendo all'operatore compiti molto ampi, tali cio da includere: l'ispezione delle parti, la verifica di avanzamento del lavoro, la trasformazione, correzione ed adattamento dei componenti difettosi, il collaudo del gruppo ottenuto, ecc... La nuova soluzione, quella dell'automazione industriale flessibile, comincia ora ad imporsi con l'evoluzione post-tayloristica dell'organizzazione del lavoro. Qualunque sia il tipo di processo impiegato, produrre significa soprattutto trasformare, cio effettuare un cambiamento nello stato, nella forma e nella natura di un "oggetto" per conferirgli lo status di "bene".

5

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Per trasformare sono necessarie due cose: Energia spesa nella trasformazione Informazione utilizzata per pilotare l'impiego di energia

Negli ultimi anni, i sistemi di produzione hanno avuto una evoluzione determinata dall'ottimizzazione e dall'espansione di tali due componenti. Il superamento delle difficolt energetiche della produzione si attuato in tre fasi: 1. Impiego di macchine al posto del lavoro umano: fase della meccanizzazione 2. Sviluppo di nuovi processi fisici 3. Impiego di materiali tecnologicamente pi evoluti Il superamento delle difficolt organizzative ed informative della produzione si attuato nelle seguenti cinque fasi: 1. Divisione del lavoro 2. Alta concentrazione di manodopera 3. Produzione di massa 4. Automazione rigida 5. Automazione flessibile

6

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

L'automazione si inquadra quindi tra le soluzioni ai problemi organizzativi ed informativi della produzione e si propone di sollevare l'uomo dai compiti di conduzione, sincronizzazione e controllo delle macchine di produzione cercando contemporaneamente di migliorare il livello di efficienza delle stesse macchine e dei processi.

1.2 Il problema dellautomazione Stiamo assistendo oggi ad una progressiva emigrazione dei nostri processi produttivi pi importanti verso quei paesi a basso costo di manodopera. Forse non ci siamo ancora resi conto che, quando acquistiamo dei beni di consumo anche ad elevato contenuto tecnologico, nella maggior parte dei casi questi portano il marchio Made in Cina, Made in Korea, Made in Thailand. Per essere competitiva, in condizioni di mercato come quelle attuali, lindustria manifatturiera deve oggi produrre ad elevati livelli quantitativi e qualitativi. Gli obiettivi principali da raggiungere sono: Produrre a qualit costante Fornire le quantit che il mercato pu assorbire Migliorare la produttivit

In altri termini, importante mantenere una presenza sul mercato, ma anche seguirne levoluzione, come suggeriscono le moderne teorie legate alla fabbricazione flessibile. Lautomazione appare come una delle vie obbligatorie per conseguire gli obiettivi citati. Il grado di automazione di un sistema varia notevolmente in base alla natura del processo, alla sua complessit, alla conoscenza che se ne possiede ed agli obiettivi legati al progetto. Si possono distinguere almeno tre livelli di automatizzazione: -

Il livello di sorveglianza, che risponde ad esigenze di conoscenza tecnica edeconomica del processo controllato. Si tratta di una funzione passiva nei confronti del processo. Gli organi di controllo acquisiscono le informazioni, le analizzano e producono registrazioni e segnalazioni.

-

Il livello di guida operatore, che completa il precedente mediante elaborazioni pi

complesse delle informazioni ed offre ai gestori del processo gli elementi che consentono interventi di regolazione. -

Il livello di comando, che corrisponde allautomatizzazione completa di determinatefunzioni: dallacquisizione dei dati, al loro trattamento, al conseguente intervento sul processo. Luomo in questo caso escluso dalla gestione del processo, pu intervenire manualmente solo in caso di anomalie o interruzioni.

Anche lautomazione che interviene nellultimo dei tre livelli considerati pu essere di tipo diverso. Si hanno in particolare:

7

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

-

Lautomazione elementare, realizzata su una macchina semplice o su parte di unamacchina complessa. Si pu trattare per esempio di automatizzare le funzioni di sicurezza o di sorveglianza dei tempi morti o di posizionamento dei pezzi. Gli automatismi corrispondenti sono generalmente ideati dal costruttore degli impianti cui sono destinati.

-

Lautomazione intermedia, intersessa macchine pi complesse o un insieme dimacchine semplici. I comandi corrispondenti sono legati al funzionamento delle macchine. E questo il dominio tipico dellautomazione industriale.

-

Lautomazione integrata, riguarda infine un intero reparto o addirittura linterafabbrica. Si ha in questo caso una connessione tra comandi, dati di lavorazione e dati gestionali. Ne risultano sistemi automatizzati, noti come FMS, nei quali lintervento umano minimo.

Nella presente trattazione si prender in considerazione il livello di automazione intermedia, nel quale si collocano i controllori programmabili.

1.3 Gli automatismi industriali Gi automatismi industriali sono dei dispositivi che permettono alla macchina o agli impianti di funzionare automaticamente. Essi sono realizzati con lo scopo di risolvere dei problemi di natura tecnica, economica ed umana. Un automatismo ben progettato: Semplifica considerevolmente il lavoro delluomo che, liberato dalla presenza costante sulla macchina, pu dedicarsi ad altre attivit pi gratificanti; Elimina le fasi complicate, pericolose o indesiderabili, facendole eseguire dalla macchina; Facilita i cambiamenti di produzione permettendo il passaggio da una quantit o da un tipo di produzione ad un altro Migliora la qualit dei prodotti asservendo la macchina a criteri di fabbricazione ed a tolleranze che saranno ripetute nel tempo Accresce la produzione oltre che la produttivit; Aumenta la sicurezza del personale Controlla e protegge gli impianti e le macchine Lautomatismo interviene in tutti gli stadi delle operazioni industriali, in campi assai diversi, quali le industrie di trasformazione, di fabbricazione, di trasporto, nelle macchine utensili.. oltre che nel settore terziario.

8

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

1.4 Un automatismo: il corpo umano Il migliore automatismo il corpo umano ed impressionante la sua analogia con le diverse parti di un automatismo industriale. Il nostro corpo contiene un certo numero di organi che sono dotati di tutti gli elementi necessari al loro funzionamento: automatismo cardiaco, automatismo dei centri vasomotori e respiratori, automatismo dellintestino, automatismo midollare. Il funzionamento del nostro sistema nervoso dipende dal mondo esterno e le nostre cellule nervose entrano in attivit sotto linfluenza di eccitazioni preliminari che vengono a manifestarsi o che, grazie alla nostra memoria, si sono prodotte anteriormente. Queste eccitazioni provengono sia dallinterno del nostro organismo, quindi dai nostri organi, sia dal mondo esterno che ci circonda. Esse agiscono sulla superficie del nostro corpo e pi particolarmente su talune zone idonee alla ricezione di queste eccitazioni, gli organi stessi. Senso del tatto: ci fa conoscere le qualit palpabili dei corpi, per mezzo delle sensazioni tattili (contatto e pressione), termiche (caldo e freddo) e dolorose Senso della vista: funzione per mezzo della quale noi percepiamo la luce, i colori, la forma degli oggetti nello spazio, tramite gli occhi, che sono sensibili a certe radiazioni Senso delludito: grazie allorecchio ed al sistema uditivo noi percepiamo le vibrazioni, elementi che costituiscono i suoni Senso dellodorato: che permette di percepire gli odori Senso del gusto: che, per mezzo della lingua, acquisisce i sapori.

A questi sensi si aggiunge quello dellequilibrio che ci informa sulla posizione del nostro corpo rispetto alla terra e di numerose sensazioni interne che, provenienti da ricettori sparsi in tutti i nostri organi, tengono conto di tutte le variazioni che si generano. Per analogia con un automatismo industriale, i cinque sensi corrispondono ai rilevatori periferici ed, analogamente, i messaggi provenienti dai nostri organi sono gli ordini di esecuzione che lautomatismo deve rispettare per assicurare lo svolgimento delle differenti operazioni. Il cervello, che ha memorizzato le azioni da effettuare allapparire di questo o di quel messaggio, genera tramite i nervi, motori che comandano i muscoli, un movimento particolare o un insieme di movimenti.

9

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

1.5 La robotica La robotica ha radici culturali assai lontane e nell'ingenua concezione popolare veniva definita come quella scienza che studia macchine in grado di muoversi autonomamente ad imitazione dell'uomo. Lo stesso termine robot entrato nel vocabolario inglese all'inizio degli anni '20, con la traduzione della commedia di Karel Capek "R.U.R." (i robot universali di Rossum). Capek era cecoslovacco e nella sua lingua "robota" significa semplicemente "schiavo lavoratore". Nella commedia, i robot erano automi umanoidi costruiti da Rossum e da suo figlio con l'obiettivo di creare macchine obbedienti e al servizio dell'uomo. La storia si conclude purtroppo con i robot che uccidono gli uomini e assumono il controllo del mondo. Fortunatamente, dopo due decenni, negli anni '40, lo scrittore e divulgatore Isaac Asimov ci presenta i robot in maniera pi rispettosa dell'uomo che li costruisce descrivendoli infatti come macchine ingegnose e dotate di sofisticati circuiti di controllo tali da poter operare in obbedienza e senza conflitto al servizio dell'uomo. Ma robot antropomorfi, che parlano e che camminano sono, ancora oggi e forse per molto tempo ancora, sogni di pura fantascienza. Il concetto di robot industriale fu oggetto, nel 1954, di un brevetto riguardante un braccio meccanico controllato e destinato ad operare nelle fabbriche. Il primo robot industriale fu invece installato nel 1961 dalla Unimation Inc., importante azienda americana che ha svolto un ruolo di pioniere nel settore. Da allora migliaia e migliaia di robot sono stati introdotti nell'industria degli Stati Uniti, del Giappone e anche dell'Europa, ove l'Italia occupa una posizione avanzata. Risale agli anni '70 di questo secolo la formalizzazione di un campo disciplinare scientifico cui riconoscibile una propria autonomia e compiutezza. In questi anni sono stati formalizzati insegnamenti di robotica, in cui le nozioni, derivate da campi diversi, sono state coordinate con la coerenza propria di un settore di innovazione tecnologica la cui rilevanza applicativa fra le pi significative dell'ingegneria odierna.1.5.1 La nozione di robot

La presentazione della nozione "robot" si sviluppa secondo diverse angolazioni che spesso si appoggiano a concetti gi noti. In questa prospettiva i robot sono, per convenzione, macchine "intelligenti", capaci di sostituire l'uomo in alcune funzioni che ne caratterizzano la classificazione. L'antropomorfismo di queste macchine risiede in una specifica attitudine di reagire a classi di stimoli esterni e, quindi, nella possibilit: Di accogliere istruzioni al fine di essere educati allo svolgimento di prefissate operazioni Di scegliere gli interventi valutando l'esito delle operazioni in base alla conoscenza dello stato corrente

10

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Un dispositivo con i predetti attributi fa parte della produzione industriale attuale, costituito da un sistema meccanico in grado di interagire con il mondo esterno attraverso sensori ottici, tattili e di manipolazione governati da un calcolatore elettronico dotato di capacit di calcolo e di memoria. Secondo questa schematizzazione un robot viene definito come

sistema artificiale che interagisce con l'ambiente esterno e con le parti funzionali di se stesso, avendo la capacit di elaborare informazioni, per eseguire un compito di modifica che gli stato preordinato.In questa definizione si posto l'accento sulla capacit di elaborazione e di interazione e si tiene anche conto che il preordinamento dei compiti avviene con un trasferimento di informazioni non tutte note a priori, anzi, tipicamente da acquisire durante il ciclo di lavoro della macchina. Le attivit di interazione e di elaborazione sono svolte secondo quanto previsto da un programma che utilizza come ingresso delle informazioni ottenute da un sistema di sensori e che produce come uscita una modifica generata mediante un sistema di attuatori.

Il robot, inteso come sistema artificiale, un sistema capace di fornire un certo insieme di primitive, ovvero un certo numero di attivit elementari che possono essere eseguite automaticamente dall'unit stessa. Queste primitive possono essere considerate anche come le istruzioni macchina del robot; in parte, quelle dedicate all'elaborazione dell'informazione, sono coincidenti con le istruzioni macchina di un calcolatore, mentre quelle dedicate all'interazione con il mondo, costituiscono una serie estremamente diversificata di attivit peculiari della natura originale del robot.

11

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Le nozioni di robot, presentate fino a questo momento, sono svincolate da particolari realizzazioni e ci rappresenta sicuramente un vantaggio al fine di staccare le considerazioni, circa lo sviluppo futuro dei robot, da un'eccessiva dipendenza dalla morfologia e dalle esigenze applicative connesse. Indipendentemente quindi dalla tipologia possibile generalizzare la definizione ed evidenziare quei requisiti necessari ad una corretta individuazione del sistema robot in un contesto pi vasto di macchine automatiche operatrici.

1) Il robot multiscopoed progettato in modo relativamente indipendente dal lavoro a cui sar destinato contrariamente alle macchine automatiche tradizionali specializzate rispetto al prodotto ed alla lavorazione che ne caratterizza sia l'hardware che la logica di controllo ed il tipo di convenienza economica

2) Il robot flessibilee cio in grado di cambiare in tempi relativamente brevi il lavoro ed il ciclo operativo da eseguire.

3) Il robot ha la capacit di apprendere e memorizzaretramite la programmazione che gli impartisce le istruzioni per effettuare determinate operazioni.

1.5.2

Definizioni e classificazioni

Nonostante i robot industriali abbiano fatto la loro comparsa in ambienti produttivi negli anni '60, sono trascorsi quasi venti anni prima che venisse elaborata una definizione formale del termine "robot". Solo nel gennaio del 1980, dopo quasi due anni di delibera, la Robot Industries Association (RIA) statunitense pubblic la propria definizione ufficiale:

" un robot industriale un manipolatore riprogrammabile multifunzione concepito per spostare materiali, pezzi, attrezzi od altri oggetti specifici, attraverso movimenti variamente programmabili, ed impiegato per una quantit di compiti diversi".

12

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Come si vede, questa definizione appare ormai fortemente datata, cio ancorata allo sviluppo della robotica all'inizio degli anni ottanta dove i robot utilizzati erano ancora quelli di seconda generazione in fase di maturit. La definizione, infatti, non accenna assolutamente alla possibilit di interfacciare il robot con l'ambiente di lavoro, alla capacit dello stesso di controllare le apparecchiature con le quali sta lavorando o di sincronizzarsi con le stesse. N, tantomeno, fa menzione della sua capacit di reagire a dei cambiamenti che si verificano all'interno del processo da esso svolto. Recentemente stato pubblicato un Rapporto Tecnico dell' ISO TR 8373, dove il robot industriale viene definito come:

"manipolatore a molteplici gradi di libert, comandato automaticamente, riprogrammabile, multiscopo, fisso o mobile, destinato ad applicazioni di automazione industriale."Qui di seguito viene data una spiegazione dei termini utilizzati nella definizione sovrastante: Manipolatore: macchina il cui meccanismo costituito normalmente da una serie di segmenti con accoppiamento di rotazione (giunto rotoidale) e o di scorrimento relativo tra loro (giunto prismatico), avente lo scopo di afferrare e o movimentare oggetti (pezzi o utensili) generalmente con diversi gradi di libert. Pu essere comandata da un operatore, da un comando elettronico programmabile o da qualunque comando logico (sistema a camme, a logica cablata, ecc..) Riprogrammabile: i movimenti programmati o le funzioni ausiliarie possono essere variate senza modifiche fisiche Multiscopo: pu essere adattato ad una diversa applicazione con modifiche fisiche, cio con modifiche nella struttura meccanica o nel sistema di comando ad eccezione del cambio di cassette di programmazione, ROMs, ecc...

-

La classificazione dei robot industriali resa difficoltosa dall'estrema variet di realizzazioni e di punti di vista con i quali possono essere interpretate. Non esiste, a tutt'oggi, una classificazione universalmente accettata. Vari Enti di diversi Paesi hanno proposto le loro classificazioni che sono diventate standard solo nazionali. Vediamone alcuni esempi.

* JIRA ( Japanese Industrial Robots Association )1) manipolatori 2) robot sequenziali 3) robot ad apprendimento 4) robot a controllo numerico 5) robot intelligenti

13

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

* AFRI ( Association Franaise de Robotique Industrielle )1) manipolatori controllati da operatore 2) manipolatori a sequenza fissa o variabile 3) robot a programma 4) robot intelligenti

* SIRI ( Societ Italiana di Robotica Industriale )1) robot per alimentazione e scarico di macchine utensili 2) robot per saldatura a punti e per saldatura continua 3) robot per verniciatura 4) robot per montaggio ed assemblaggio 5) robot per misura automatica 6) robot per altre applicazioni

14

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

1.5.3

Struttura operativa gradi di libert ed architettura

Operativamente un robot esegue una serie di funzioni connesse con la sua struttura meccanica, i suoi sensori, l'ambiente in cui opera, i compiti da eseguire, il calcolatore di controllo, il software operativo e l'interazione con l'operatore. Sicuramente, tra questi, l'elemento che maggiormente caratterizza il robot nella propria funzionalit e nel pi indicato campo applicativo la struttura meccanica. La struttura meccanica generalmente utilizzata nei robot costituita da una catena articolata di elementi meccanici connessi tra loro mediante articolazioni (giunti, o joint) in modo da potersi muovere l'uno rispetto all'altro in maniera relativa e che possono essere connessi in serie, in parallelo o in forma mista.

Catena articolata di elementi meccanici connessi tra loro mediante articolazioni (giunti) collegati relativamente tra loro con accoppiamenti rotoidali o prismatici connessi in serie, parallelo o in forma mista.Esempio di catena cinematica aperta con elementi in serie ad accoppiamento rotoidale

Il collegamento cinematico pi comune rappresentato da una catena cinematica aperta con elementi in serie dove gli elementi della catena sono collegati tra loro con accoppiamenti rotoidali (moto relativo di rotazione) e prismatici (moto relativo di traslazione). L'elemento iniziale della catena cinematica viene chiamato telaio (se fisso) o supporto mobile (se mobile). L'elemento finale della catena cinematica viene chiamato estremit e pu essere una pinza per afferraggio, una pistola di verniciatura, una pinza di saldatura, un elemento di afferraggio, una pinza per montaggio, ecc.... I sistemi meccanici di manipolazione comprendono sia la struttura portante di un robot, sia la parte pi propriamente destinata alla presa. La struttura generale portante determina la capacit di movimento del robot, vincolando lo spazio che pu essere raggiunto dagli organi di presa della macchina e vincolando anche in larga parte i tipi delle traiettorie che possono essere eseguite nel moto tra due punti o in uno spostamento di lavoro.

15

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Problema di base di un sistema meccanico di tale tipo quello della scelta della catena cinematica e del tipo di coordinate cui il robot far riferimento. Tutto ci in stretta relazione con l'obiettivo di lavoro cui la macchina destinata. Ad esempio, catene di tipo polare, costituzionalmente pi semplici ma intrinsecamente pi imprecise, sono adatte a robot di caricamento, presa e verniciatura. Catene cinematiche cartesiane che conducono a strutture chiuse e vincolate, sono pi precise e meglio si prestano ad essere utilizzate in robot di montaggio o di misura. Legato naturalmente al problema della catena cinematica quello della scelta delle articolazioni e dei giunti, che dovrebbero risultare il pi possibile senza gioco e senza attrito. Interconnesso con il problema dell'architettura meccanica vi poi quello dei dispositivi di azionamento e di blocco e la scelta tra le diverse strategie di sistemazione remota dei motori o di sistemazione a bordo dei bracci. Queste scelte vengono fatte in funzione della dinamica del sistema e sono legate alla possibilit di costruire opportuni modelli di simulazione applicando anche tecniche di calcolo avanzate. Altro problema quello della realizzazione di una struttura possibilmente modulare per risolvere, con opportune aggregazioni, situazioni differenti. Nel campo dei sistemi meccanici destinati alla presa, occorre realizzare cinematismi atti ad effettuare la presa, la tenuta, la manipolazione ed il montaggio di elementi diversissimi tra loro per forma, dimensione, peso e stato della superficie. Una risoluzione generale del problema risulta impossibile ed necessario affrontare i diversi problemi secondo gruppi di classi. Strettamente connesso al problema dei cinematismi quello dell'azionamento e del controllo, e soprattutto l'esigenza di dotare gli organi di presa di sensori in grado di rilevare le caratteristiche intrinseche del pezzo da trattare, in modo da favorire e guidare la manipolazione del pezzo stesso.1.5.4 Gradi di libert

Per meglio comprendere la struttura e l'architettura di un sistema robotizzato necessario introdurre un fondamentale concetto per i sistemi meccanici, o meglio, per i sistemi di corpi rigidi, comunque vincolati. Diremo che un sistema ha n gradi di libert quando si pu rappresentare la sua posizione (o meglio la sua configurazione), almeno in una certa regione dello spazio, mediante n parametri indipendenti. Ad esempio, un punto materiale libero ha tre gradi di libert, perch occorrono tre parametri (le sue coordinate cartesiane, polari, ecc..) per determinarne la posizione. Un punto materiale che si muove su un piano possiede due gradi di libert, perch occorrono due parametri (le sue coordinate nel piano) per fissarne la posizione. Cos un punto materiale mobile su una retta o, pi in generale, su una linea ha un solo grado di libert. Consideriamo adesso un corpo rigido nello spazio ed una terna cartesiana centrata sul suo baricentro (X',Y',Z'). Con traslazioni lungo i tre assi il corpo rigido effettua movimenti nello spazio, spostandosi rispetto ad una terna cartesiana fissa (X,Y,Z); ruotando attorno ai propri assi esso assume qualunque orientamento rispetto a quest'ultima. Si dice che il corpo rigido libero nello spazio possiede 6 gradi di libert (GDL), di cui 3 di traslazione e 3 di rotazione.16

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Come gi detto, un braccio robotico un meccanismo articolato che ha il compito di posizionare il segmento terminale (estremit) nello spazio, in una specifica posizione e con un dato orientamento rispetto ad un riferimento "assoluto", solidale alla base. Per definizione diremo che il numero di GDL di un robot pari al numero dei GDL del segmento terminale S(n) o estremit. Tale numero dipende dal numero dei segmenti e dal numero e tipo di connessioni reciproche. Particolare attenzione va fatta per non confondere i gradi di libert con i gradi di mobilit. Anche i movimenti associati all'utensile portato dalla estremit del robot non costituiscono GDL. Ad esempio l'apertura / chiusura di una pinza parallela di manipolazione, la rotazione / arresto di un motore che muove la punta di un trapano, costituiscono un classico esempio mobilit e talvolta chiamate "falsi gradi di libert). In generale: 1. Una articolazione non d luogo necessariamente a GDL 2. Un robot non usa di solito pi di 6 GDL indipendenti, ma pu usare molti pi gradi di mobilit 3. Con pi di 6 GDL, una certa posizione / orientamento pu essere raggiunta con diverse configurazioni del braccio 4. Un robot dotato di un numero di gradi di mobilit superiore al numero di coordinate richieste dall'estremit, ridondante. Tale ridondanza di gradi di libert corrisponde alla mobilit del robot. La soluzione di usare un numero di giunti pari al numero di GDL desiderati per la struttura articolata la pi ovvia, ma come meglio vedremo in seguito, il controllo del robot risulta semplificato se gli ultimi 3 giunti sono di rotazione ed i loro assi si incontrano in un punto. Cos potremo dire che i primi 3 GDL di un robot posizionano la sua estremit, mentre gli altri tre la orientano. Per studiare il moto di un corpo rigido conviene considerare, oltre al sistema di assi ( O, X, Y, Z ) a cui viene riferito il moto e che, per convenzione, chiameremo sistema fisso, un sistema di assi O', X', Y', Z' che diremo mobile, solidale al corpo, cio con l'origine O' in un punto del corpo e orientamento degli assi fatti con altri punti del corpo stesso. i', j', k' saranno tre vettori unitari paralleli e nello stesso verso di O'X', O'Y', O'Z'. Ovviamente, ogni punto P del corpo avr coordinate (x', y', z') invariabili col tempo rispetto al sistema mobile, perch le distanze dei punti del corpo rigido dai piani coordinati (che sono piani formati dai punti del corpo) non possono variare col tempo. Saranno invece variabili, in generale, le coordinate (x,y,z) del punto P rispetto al sistema fisso, che si possono determinare, come vedremo, mediante una trasformazione di coordinate, nota, in ogni istante, la posizione del sistema (O', X', Y', Z') solidale al corpo rigido rispetto al sistema fisso (O, X, Y, Z). Per determinare l'orientamento di O', X', Y', Z' rispetto a O, X, Y, Z bastano tre parametri: i cosiddetti angoli di Eulero.

17

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

1.5.5

Architettura del braccio

Uno studio dei primi 3 GDL di un robot indica che le varie combinazioni di rotazioni e traslazioni possono dar luogo a qualche decina di diverse strutture. Le effettive realizzazioni risultano comunque essere limitate ad un numero inferiore di strutture tipo in relazione con l'applicazione pratica a cui i robot vengono destinati. Esse richiamano i noti sistemi di riferimento e, tradizionalmente, associano il nome di questo sistema di riferimento alla struttura stessa. Si parla cos di robot a struttura:

Cartesiana A portale Cilindrica Polare (o sferica) Articolata (di rivoluzione) A braccio girevole (SCARA)Una delle caratteristiche pi importanti del manipolatore la configurazione del suo volume o area di lavoro, che dipende dalle dimensioni del braccio e dalle capacit di movimentazione.

* ROBOT A COORDINATE CARTESIANE

La struttura a geometria cartesiana viene utilizzata soprattutto quando si vuole ottenere una elevata precisione di posizionamento dell'organo terminale, in quanto le traiettorie e gli errori di posizionamento sono facilmente controllabili. Consiste in tre assi lineari ortogonali realizzati con slitte traslanti, che forniscono gli spostamenti secondo le tre traslazioni principali x,y,z.

Robot cartesiano Essa molto simile a quella delle macchine a controllo numerico, essendo la risoluzione e la ripetibilit del braccio le stesse di tali macchine.18

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Il polso di un robot a coordinate cartesiane pu essere programmato per tracciare un percorso lineare se gli assi che partecipano al movimento viaggiano a velocit costante. Se l'estremit del robot deve tracciare un segmento di retta di L unit di lunghezza, alla velocit v, le velocit assiali sono: Vx = (X/L)V Vy = (Y/L)V Vz = (Z/L)V dove L = X + Y + Z e Vx, Vy, Vz sono le componenti di V nelle direzioni X, Y, Z, rispettivamente. Queste semplici relazioni non sono valide sempre per tutti i robot di tipo cartesiano; in alcuni casi si impiegano algoritmi complessi, in cui le coordinate cartesiane vengono trasformate nelle coordinate dei giunti del manipolatore. I robot cartesiani, cos attraenti in teoria, non sono molto diffusi industrialmente (fanno eccezione quelli per il montaggio elettronico di componenti superficiali SMD), in quanto mancano di flessibilit meccanica non potendo raggiungere punti sul pavimento o punti invisibili dalla base. Inoltre la velocit di lavoro sul piano orizzontale generalmente pi basa di quella tipica dei robot aventi una base rotante.

* ROBOT A PORTALE

Appartiene alla categoria dei cartesiani, ma in questo caso la struttura meccanica include anche un portale in modo tale che il robot possa essere montato al di sopra della zona di lavoro aumentando cos l'accessibilit. Questa struttura permette di gestire aree e volumi operativi molto ampi ed spesso utilizzata in operazioni di manipolazione e pallettizzazione.

Robot a portale19

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

* ROBOT CILINDRICO

Robot la cui struttura meccanica comprende un giunto di rotazione e due giunti di traslazione, i cui assi sono disposti secondo un sistema di coordinate cilindriche. Il braccio orizzontale si muove avanti e indietro, il carrello, nella cui estremit fissata la pinza, si muove su e gi ed entrambi ruotano con la base. I robot che utilizzano questo tipo di struttura lasciano ampia accessibilit alla zona di lavoro, consentendo una programmazione semplice per la determinazione dei valori delle coordinate necessarie a raggiungere il punto di lavoro. Vengono soprattutto utilizzati per operazioni di alimentazione a carico di particolari meccanici. La risoluzione in un robot cilindrico non costante ma dipende dalla distanza r della colonna dalla pinza lungo il braccio orizzontale. Se l'unit di risoluzione della base rotante espressa in radianti, risulta che la risoluzione alla terminazione del braccio r. Facciamo un esempio: il misuratore di posizione di un asse rotante di un robot cilindrico un encoder che emette 6000 impulsi per giro ed montato direttamente sull'albero; la massima lunghezza del braccio orizzontale 1 metro; valutare la risoluzione peggiore all'estremit del braccio. La risoluzione della base = 360/6000 = 0.06. La risoluzione all'estremit del braccio : 1000 x 0.06 x /180 = 1.05 mm. L'esempio dimostra che la risoluzione del braccio attorno alla base pu essere di due ordini di grandezza maggiore di quella ottenibile dai robot cartesiani (0.01).

Robot cilindrico Questo un limite dei robot cilindrici rispetto ai cartesiani. I robot a geometria cilindrica hanno per il vantaggio di una maggiore velocit dell'end effector in virt della presenza dell'asse di rotazione. Tuttavia tale velocit in molti robot limitata a causa del momento d'inerzia del braccio, che dipende, a sua volta, dall'end effector e dal relativo carico. E' infatti20

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

difficile avere una buona risposta dinamica da robot aventi una base rotante poich la coppia che il motore deve fornire dipende dalla posizione, dalla velocit, e dall'accelerazione degli altri giunti; ci causa variazioni nella coppia e nel momento d'inerzia riflessi. Il momento d'inerzia riflesso sulla base dipende non solo dal peso dell'oggetto caricato, ma anche dalla distanza tra l'asse di base e l'oggetto manipolato. Tale distanza funzione della posizione istantanea della pinza e degli altri giunti durante il movimento.

Conseguentemente, il momento d'inerzia effettivo sulla base varia nel tempo e con la posizione della pinza, da cui ne deriva una risposta dinamica del braccio non molto buona.

* ROBOT POLARE (O SFERICO)

La configurazione cinematica di un robot a coordinate sferiche simile alla torretta di un carro armato. I movimenti fondamentali affidati al braccio sono rappresentati dalla traslazione lungo l'asse X, dalla rotazione di inclinazione attorno all'asse Y e dalla rotazione di orientamento attorno all'asse Z. Gli altri gradi di libert sono ottenuti dando la possibilit di movimento alla testa di presa, rispetto al braccio.

Robot polare (o sferico) L'entit della rotazione usualmente misurata da encoder incrementali montati sugli assi rotanti. Lo svantaggio di un robot a coordinate sferiche rispetto ad un cartesiano consiste nel fatto che in esso vi sono due assi con risoluzione relativamente bassa e variabile con la lunghezza del braccio. Robot di questo tipo si prestano bene ad operazioni di carico e scarico pezzi, di saldatura, di verniciatura, ecc....

21

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

* ROBOT ARTICOLATO

I robot articolati consistono di tre elementi rigidi connessi da due giunti rotanti e montati su una base pure rotante. Il cinematismo assomiglia molto a quello di un braccio umano. La pinza corrisponde alla mano che si attacca all'avambraccio tramite il polso (wrist). Il gomito (elbow) connette l'avambraccio al braccio che a sua volta, tramite la spalla (shoulder) si connette alla base. Robot di questo tipo consentono di coprire ampie zone di lavoro e permettono un'ampia manovrabilit di organi di presa e attrezzi anche in situazioni tipiche dei montaggi adattativi. Poich un robot articolato ha tre assi di rotazione geometricamente diversi, la sua risoluzione spaziale dipende interamente dalla posizione del braccio. L'accuratezza di un robot articolato bassa poich gli errori ai giunti si accumulano all'estremit del braccio. Esso pu comunque muoversi ad alta velocit ed ha una eccellente flessibilit meccanica, aspetti che lo rendono il pi diffuso tra i robot medio piccoli.

Robot articolato (o antropomorfo)

* ROBOT A BRACCIO GIREVOLE (SCARA)

E' questa una macchina molto diffusa a causa della sua economicit e della sua flessibilit applicativa. La sua struttura stata studiata in Giappone dove, nel 1978 sono stati lanciati sul mercato i primi robot di questo tipo sotto il nome di "SCARA" acronimo che indica Selective Compliance Assembly Robot Arm che letteralmente significa braccio robotico per assemblaggio a cedevolezza selettiva. E' un robot che si muove sostanzialmente su un piano tramite il movimento di due bracci snodati l'uno rispetto all'altro e rispetto al telaio fisso. Il terzo movimento (quello rettilineo dell'asse Z) spesso realizzato con cilindri pneumatici. E' particolarmente indicato per applicazioni di montaggio e manipolazione.

22

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Robot SCARA

23

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

1.6 Robot industriali: caratteristiche e metodi di test In questo capitolo vengono descritte alcune delle caratteristiche principali dei robot industriali di manipolazione che possono avere un effetto diretto sulle "performance" del robot stesso e vengono illustrate le procedure di test per la misura delle caratteristiche. A tale scopo verr fatto riferimento diretto alle normative Standard Internazionali ISO 9283 "Manipulating industrial Robots - Performance criteria and related test methods" ed ISO 8373 "Manipulating industrial Robots - Vocabulary". Le caratteristiche principali a cui faremo riferimento sono: Precisione di posa (pose accuracy) Differenza tra la posa di comando (quella specificata mediante programmazione o addestramento) e la media tra le pose di risposta (quella assunta dal robot in risposta alla posa di comando) ottenute in esecuzione della posa di comando sempre dalla stessa direzione (COORDINATE CALCOLATE) Ripetibilit di posa (pose repeatability) Variazione nel ritorno del manipolatore ad un punto dato. Campo di concordanza tra posizioni e orientamenti delle pose di risposta ottenute in esecuzione della stessa posa di comando n volte lungo una identica direzione (COORDINATE AUTO APPRESE) Tempo di stabilizzazione di posa (pose stabilization time) Tempo necessario perch una risposta oscillatoria smorzata o una risposta smorzata d'interfaccia meccanica si trovi all'interno di una certa ampiezza limite, dopo che il robot abbia dato il segnale di posa di risposta. Deriva della precisione di posa (Drift of pose accuracy) Lenta variazione della posa di risposta in un tempo specificato. Precisione di traiettoria (Path accuracy) Scostamento tra la traiettoria di comando e le traiettorie di risposta ottenute facendo eseguire all'interfaccia meccanica del robot la traiettoria di comando nella stessa direzione n volte. Ripetibilit di traiettoria (Path repeatability) Campo di concordanza tra le traiettorie di risposta ottenute per la stessa traiettoria di comando ripetuta n volte. Tempo minimo di posizionamento (Minimum positioning time) Tempo che intercorre tra i due stati stazionari di partenza e di arrivo dell'interfaccia meccanica per percorrere una distanza o un angolo predeterminati (tempo di spostamento e di orientamento, includendo il tempo di stabilizzazione).

24

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Cedevolezza statica (Static compliance) Spostamento massimo dell'interfaccia meccanica per unit di carico applicata.

1.6.1

Verifica della precisione e ripetibilit di posizionamento

Tra tutte le caratteristiche sopra enunciate si scelto, a titolo di esempio, la verifica della precisione di posizionamento, poich ha un peso fondamentale nella scelta di un sistema robotizzato.

* Precisione di posizionamento ( Pose accuracy )La precisione di posizionamento esprime la deviazione tra posa di comando e posa di risposta, cio la differenza tra una posizione teorica ed una posizione effettivamente raggiunta dal manipolatore in seguito ad un comando di "MOVE" sempre dalla stessa direzione. E' quindi la deviazione massima ottenuta in posizionamento ed orientamento. Per verificare questo parametro si supponga di programmare il robot per effettuare n spostamenti tra m posizioni, passando per un numero di punti tali da determinare una traiettoria unidirezionale. Si effettui per ogni punto una misura di posizione tramite un apposito strumento (es. comparatore ).

Siano: - Xc , Yc , Zc le coordinate teoriche del punto Pc da raggiungere - Xj , Yj , Zj le coordinate effettive ottenute dal movimento di posa j - Xg , Yg, Zg le coordinate del baricentro della media dei punti ottenuti dopo aver ripetuto il medesimo comando di "MOVE" per n volte. - L la precisione di posizionamento L = ( Xg - Xc ) 2 + ( Yg - Yc ) 2 + ( Zg - Zc ) 2______________________________________________________

L x = ( Xg - Xc )

L y = ( Yg - Yc )

25

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

L z = ( Zg - Zc )

dove : 1 n 1 n Xg = ----- X j ; Yg = ----- Y j ; n j=1 n j=1 1 n Zg = ----- Z j ; n j=1

Nell'ipotesi che il numero finito di punti che determinano la traiettoria da seguire sia uguale a 5 si identifichi con P5 il punto di inizio traiettoria e con P1 il punto noto di arrivo, nonch di misura. Partendo da P1, il test consiste nel muovere successivamente l'interfaccia meccanica del robot passando attraverso P5, P4, P3, P2, P1. Ogni movimento deve essere effettuato usando un approccio in traiettoria del tipo unidirezionale in modo tale che il percorso usato sia identico a quello programmato. Non vengano effettuate misure nel punto P1 durante il ciclo 0 ma si effettuino letture di misura per ogni posizionamento e per 30 cicli.

La precisione di posizionamento (pose accuracy) pu essere cos calcolata per ogni posa. Ciclo 0 Ciclo 1 Ciclo 2 ............ Ciclo 30 P5 P4 P3 P2 P1 P5 P5 P4 P4 P3 P3 P2 P2 P1 P1 P1

26

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Esempio di programma scritto in V+ per realizzare il test in oggetto:1 . PROGRAM Test.Accuracy 2 ; ---------------------------------------------------------------------------------------------------------3 ; 4 ; Questo programma scritto in V+ descrive una possibile applicazione 5 ; del metodo di verifica della precisione di posizionamento del robot Adept 6 ; 7 ; ---------------------------------------------------------------------------------------------------------8 ; 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 .END END END SPEED 50 RIGHTY MOVE P1 BREAK PROMPT " Inserisci il numero di cicli da eseguire ", max_cicli TYPE /C23, /X5, " Robot pronto : premi RET per cominciare il test " PROMPT "", Ret SPEED 100 ALWAYS FOR i = 1 TO max_cicli FOR k = 5 TO 1 STEP -1 MOVE P[k] BREAK SIGNAL Start_lettura[k] TIMER 1 = 0 WAIT TIMER ( 1 ) > 0.2 SIGNAL - Start_lettura[k] WAIT SIG (OK_lettura[k])

Nelle applicazioni pratiche questa caratteristica molto importante perch determina l'effettivo grado di precisione del robot. Proviamo ora a capire, con un esempio, a cosa serva uno "spinto" valore di accuracy in un robot di manipolazione.27

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Un caso lampante quello dell'utilizzo di manipolatori per il montaggio di componenti elettronici su scheda. E' noto a tutti il fatto che oggi, grazie allo sviluppo dei sistemi CAD / CAM / CAE, anche la progettazione di circuiti stampati (PCB : Printed Circuit Board) viene gestita da calcolatore, ed in ogni azienda elettronica che si rispetti tutte le informazioni relative al progetto di una nuova scheda vengono memorizzate sotto forma di DATA BASE in un sistema informativo. Tali sistemi gestiscono non solo le caratteristiche elettriche della componentistica, ma anche tutte le caratteristiche geometriche per facilitarne cos la fase di montaggio. In ogni scheda infatti predefinito un sistema di riferimento rispetto al quale sono calcolate le coordinate in X, Y e orientamento di ogni singolo componente. In fase di montaggio automatico non necessario auto apprendere quindi tutte le singole posizioni di inserzione dei componenti, ma basta insegnare al manipolatore le posizione del sistema di riferimento scheda rispetto al sistema di riferimento assoluto. In questo caso, per posizionare correttamente un componente nella relativa locazione di inserzione, sufficiente elaborare le informazioni contenute nel CAD tramite un "post processor" affinch le rimetta nel giusto formato e comandare il robot ad effettuare il posizionamento del componente i_esimo sfruttando la sua coordinata nota, ma riferita al sistema di riferimento del robot. Sia ad esempio P1=(X1, Y1, R1, Z1) la coordinata del componente elettronico da inserire nella scheda, riferita al sistema di riferimento cartesiano X', Y'. Dopo aver fissato la scheda nell'aria di lavoro del robot si auto apprendano le seguenti coordinate: Tor = coordinata dell'origine del sistema di riferimento scheda rispetto a quello assoluto del robot ( X, Y ) Tx = coordinata di un punto che identifica la direzione dell'asse X' del sistema di riferimento scheda rispetto a quello assoluto del robot (X, Y ) Ty = coordinata di un punto che identifica la direzione dell'asse Y' del sistema di riferimento scheda rispetto a quello assoluto del robot ( X, Y )

Si definisca col generico nome di SCHEDA il sistema di riferimento relativo X', Y' di origine O' mediante la seguente istruzione di programma: SET scheda = FRAME ( Tor, Tx, Ty, Tor ) E' possibile adesso comandare il robot a muoversi nel punto P1 mediante la seguente istruzione: MOVE scheda : P1 Considerando che per l'assemblaggio della componentistica elettronica su scheda si lavora con delle tolleranze di posizionamento fisico dell'ordine dei centesimi di millimetro (nel caso dei componenti SMT si devono posizionare i reofori su piste distanti tra loro 50 o 25 millesimi di pollice e nel caso dei componenti tradizionali si deve inserire il reoforo di diametro 0,6 mm. in un foro da 0,8 mm.) risulta chiaro come la precisione di posizionamento del braccio sia determinante ai fini di una corretta inserzione.

28

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

1.7 Evoluzione dei sistemi di automazione Nei pochi anni che ci separano dalla crisi energetica del 1973, l'intero sistema industriale tradizionale ha subito grosse trasformazioni. Se la macchina a vapore pu essere posta a capo della prima rivoluzione industriale, il calcolatore elettronico deve essere certamente riconosciuto come "motore" della seconda. Le nuove tecnologie hanno prodotto una nuova generazione di macchine operatrici di: - fabbricazione - montaggio - trasporto, manipolazione e immagazzinamento in grado di svolgere sequenze complete e variabili di operazioni produttive, anzich ripetere all'infinito una o poche operazioni, in quanto programmabili. Come abbiamo visto l'automazione rigida lascia il posto all'automazione flessibile ed proprio in questo contesto che si inserisce il manipolatore programmabile che, per le sue diverse costruzioni e geometrie, diventa l'elemento fondamentale delle molteplici applicazioni ipotizzabili. I sistemi di automazione si sono evoluti rapidamente nel tempo passando da iniziali soluzioni rigide (cablate) a moderne soluzioni flessibili (programmabili). - Prima generazione Risale agli anni '60 ed caratterizzata da una unit di controllo costituita da un sequenziatore. In questo caso i sistemi di automazione sono costituiti da manipolatori definiti a "sequenze limitate". Il sequenziatore pu essere implementato in tecnologia elettromeccanica od elettronica cablata, ma molto pi frequenti sono le soluzioni pneumatiche, realizzate ad esempio mediante programmatori a camme. Il sequenziatore emette gli ordini on-off agli attuatori di comando delle varie parti del robot e riceve segnali di consenso di fine corsa meccanici o elettrici. Tali segnali disattivano un attuatore e permettono l'attivazione del successivo. Con queste soluzioni si ha dunque il solo controllo delle posizioni terminali e non delle traiettorie ed i comandi servono solo per accendere e spegnere i motori; deriva da qui il tipico nome di sistema "pick and place" (prendi e metti). - Seconda generazione I sistemi di automazione della seconda generazione sono macchine controllate da un calcolatore digitale dedicato. Essi sono perci in grado di ripetere indefinitamente la sequenza contenuta in una memoria a stato solido. Tale sequenza di operazioni da svolgere pu essere cambiata molto semplicemente, con conseguente flessibilit operativa della macchina. Ogni asse servo-controllato ed ogni segmento del manipolatore equipaggiato con adeguati sensori di posizione e di velocit. Al pari delle altre macchine operatrici programmabili, quali ad esempio la macchina utensile a CN, il robot pu essere programmato con metodo29

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

linguistico mediante un apposito linguaggio di programmazione. Ma a differenza di ogni altra macchina operatrice, il robot pu anche apprendere il proprio compito operativo tramite una azione di guida del braccio lungo il percorso necessario per eseguire il compito ed una esecuzione campione delle diverse operazioni. - Terza generazione Sono caratterizzati da notevoli capacit adattative e vengono, per questo motivo, chiamati "intelligenti". Sono in grado di eseguire il compito assegnato verificando la propria interazione con l'ambiente attraverso un modello predefinito ed utilizzano linguaggi di programmazione evoluti in grado di assicurare interfacciamenti con banche dati e con unit di elaborazioni esterne per il carico e lo scarico dei programmi. Grazie ai feedback dei dati sensoriali e dell'interfacciamento con banca dati, sono inoltre in grado di inviare messaggi all'operatore che descrivono la natura e l'ubicazione degli eventuali stati di malfunzionamento. - Quarta generazione Nessuno sa ancora con certezza come saranno i sistemi di automazione appartenenti a questa quarta generazione. Probabilmente saranno costituiti da manipolatori del tipo non metallici, dal momento che i prezzi dei materiali ad alto contenuto tecnologico sono in costante diminuzione. Saranno sicuramente pi leggeri, pi veloci, pi precisi e pi accurati nelle realizzazioni ed utilizzeranno la percezione visiva e sensoriale in modo da raggiungere il vero coordinamento occhio-mano, indispensabile per lo svolgimento di operazioni molto complesse. Il loro sviluppo va certamente al passo con lo sviluppo dell'informatica e dell'elettronica; ci aspettiamo quindi sistemi ancor pi flessibili degli attuali ed in grado di soddisfare, con il minimo sforzo da parte di chi li deve programmare, le pi complesse esigenze operative.

30

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

2

Capitolo

2 Esempio di manipolatore: Adept robot Cobra 6002.1 Il manipolatore Il robot Adept Cobra 600 un robot SCARA a quattro assi con movimento dei giunti 1, 2 e 4 di tipo rotatorio, mentre quello del giunto 3 di tipo traslatorio. I Robot Adept Cobra sono concepiti per interfacciarsi con un controller Adept MV e il telaio alimentazione PA-4.Specifiche tecniche dei robot Adept Cobra 600: Descrizione Area di lavoro - Apertura radiale massima - Apertura radiale minima Corsa verticale - Giunto 3 (direzione Z) Rotazione dei giunti - Giunto 1 - Giunto 2 - Giunto 4 Carico utile al polso (inclusi attuatori di estremit e utensileria montata sull'estremit del braccio) Carico di inerzia - sull'asse de giunto 4 Forza di spinta verso il basso (giunto 3) Tempo ciclo Pick & Place - 0 carico - 2 Kg carico - 5 Kg carico Risoluzione - Giunto 1 - Giunto 2 - Giunto 3 - Giunto 4 Reperibilit - Piano X,Y - Giunto 3 (Z verticale) - Giunto 4 (rotazione) Velocit - Giunto 1 - Giunto 2 - Giunto 3 - Giunto 431

Cobra 600 600 mm 163 mm 210 mm 105 150 360 5,5 Kg

250 Kg cm2 25 Kg 0,47 sec. 0,55 sec. 0,63 sec. 0,00045 per conteggio di codifica 0,00072 per conteggio di codifica 0,0015 mm per conteggio di codifica 0,03125 per conteggio di codifica 0,02 mm 0,01 mm 0,03 360 / sec 672 / sec 1.100 mm / sec 1.200 / sec

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Il robot si programma e si comanda tramite il controller Adept MV e il sistema di comando amplificatore PA-4.

Il manipolatore collegato al suo controllore tramite cavi di segnali e di potenza. Lo schema generale del sistema robotizzato composto da: manipolatore unit di controllo (logica + potenza) Pannello dinterfaccia del controller (CIP) Pulsantiera di comando manuale (Manual Control Pendant)

32

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Ogni articolazione del braccio viene identificata col nome di JOINT. Il joint 1 ruota intorno alla colonna verticale e il joint 2 ruota nel mezzo del braccio orizzontale. I joints 1 e 2, agendo insieme, provvedono al posizionamento della estremit del braccio nel piano X,Y. Il joint 3 (asse Z) una articolazione a corsa lineare che permette di estendere e retrarre verticalmente l'estremit del braccio. In una tipica applicazione, il joint 3 l'asse che "prende" e "mette" gli oggetti da manipolare. Nel joint 4 posizionata la flangia di montaggio della mano o end-effector in grado di ruotare attorno all'asse verticale del joint 3. E' questo l'asse usato per orientare radialmente le parti da posizionare. La figure seguenti illustrano le 4 articolazioni del manipolatore, le proprie rotazioni e i differenti sistemi di riferimento. Il range di movimento del joint 1 di 210, esiste quindi un'area posizionata dietro il manipolatore non raggiungibile dalla rotazione del joint 1 e dove sono posizionati i fermi meccanici dell'articolazione.

33

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

Il giunto 1, o spalla, provvede alla rotazione della connessione interna. Il movimento del giunto 1 limitato a 105

Il giunto 2, o gomito, provvede alla rotazione della connessione interna. Il movimento del giunto 2 limitato a 150. Il movimento del giunto 2 simile a quello di un gomito in grado di piegarsi sia in configurazione destra che sinistra. Quando si insegnano le posizioni al robot, il gomito del robot (visto da dietro il robot) punter a destra o a sinistra. Questi orientamenti del braccio vengono chiamati sinistrorso e destrorso. Generalmente il robot Adept_Cobra 600 pu raggiungere una locazione in qualsiasi delle due configurazioni di gomito. Sotto il comando del programma, il robot si sposter sempre nella posizione successiva con la configurazione ottimale che minimizza il percorso, a meno che la posizione non sia un punto di precisione o non siano usate le istruzioni LEFTY (sinistrorsa) o RIGHTY (destrorsa) del programma che impone al robot di assumere, per quel movimento, la desiderata configurazione.

34

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

E' possibile visualizzare il joint 2 del robot come un avambraccio esteso superiormente ed attaccato al corpo del manipolatore, in grado di compiere una rotazione di circa 150 a sinistra o a destra rispetto alla posizione di allineamento col joint 1. Visto che la configurazione di questo manipolatore paragonabile a quella di un braccio umano, esistono anche qui delle configurazioni di gomito (elbow) che rappresentano l'operativit del braccio sinistro dell'uomo o del braccio destro. Si dir cos che il robot in configurazione elbow "Righty" o "Lefty" a seconda del valore di rotazione del joint 2 rispetto al joint 1. Limiti cartesiani: sul retro dei robot Adept Cobra presente una zona di esclusione limitata dal software ampia 300 mm. Il giunto 3 provvede alla traslazione verticale dell'albero di rotazione. Il giunto 3 muove l'albero di rotazione verso il basso e verso l'alto con una corsa massima di 210 mm. Il giunto 4, o polso, provvede alla rotazione dell'albero. Pur non essendo fornito di fine corsa meccanici, il suo movimento tuttavia limitato dal software a 360

2.2 Modalit operative del robot Per poter muovere il robot in sicurezza, occorre comprendere le due diversi modalit di funzionamento del robot, Manuale ed Automatica. Il CIP (Controller Inteface Panel) presenta un interruttore a chiave a due posizioni che comanda la modalit operativa del robot. Per motivi di sicurezza, quando si cambia la modalit operativa, la potenza al manipolatore (High Power) viene automaticamente disattivata.2.2.1 Modalit operativa manuale

Nella posizione Manuale (velocit Initiate pick and place" TYPE /C1, " 2 => Teach locations" TYPE /C1, " 3 => Return to previous menu", /C1 PROMPT "Enter selection and press RETURN: ", $answer choice = VAL($answer) ;Convert string to number CASE choice OF ;Process menu request... VALUE 1: ;...selection 1 TYPE /C2, "Initiating Operation..." CALL move.parts() VALUE 2: ;...selection 2 CALL teach() VALUE 3: ;...selection 3 quit = TRUE ANY ;...any other selection TYPE /B, /C1, "** Invalid input **" END ;End of CASE structure UNTIL quit ;End of DO structure .END

123

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

3.6.4

Teaching Locations With the MCP

This program demonstrates how an operator can teach locations with the manual control pendant, thus allowing the controller to operate without a system terminal. The two-line liquid crystal display (LCD) of the pendant is used to prompt the operator for the locations to be taught. The operator can then manually position the robot at a desired location and press a key on the pendant. The program automatically records the location for later use (in this case, for the pick-andplace program).F E A T U R E S I N T R O D U C E D

Subroutine parameters Attachments and detachments Manual control pendant interaction WAIT instruction Location definition within a programP R O G R A M L I S T I N G

.PROGRAM teach(pick, place, start) ; ABSTRACT: This program is used for teaching the locations ;"pick", "place", and "start" for the "move.parts" program. ; ; INPUT PARAM: None ; ; OUTPUT PARAM: pick, place, and start ; ; SIDE EFFECTS: Robot is detached while this routine is active AUTO $clear.display. $clear.display = $CHR(12)+$CHR(7) ATTACH (1) ;Connect to the pendant DETACH (0) ;Release control of the robot ; Output prompt to the display on the manual control pendant WRITE (1) $clear.display, "Move robot to START & press RECORD" WRITE (1) /X17, "RECORD", $CHR(5), /S WRITE (1) $CHR(30), $CHR(3), /S ;Blink LED on control pendant WAIT PENDANT(3) ;Wait for key to be pressed HERE start ;Record the location "start" WAIT not pendant(3) ; Prompt for second location WRITE (1) $clear.display, "Move robot to PICK & press RECORD" WRITE (1) /X17, "RECORD", $CHR(5), /S124

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

WAIT PENDANT(3) ;Wait for key to be pressed HERE pick ;Record the location "pick" WAIT not pendant(3) ; Prompt for third location WRITE (1) $clear.display, "Move robot to PLACE & press RECORD" WRITE (1) /X17, "RECORD", $CHR(5), /S WAIT PENDANT(3) ;Wait for key to be pressed HERE place ;Record the location "place" WAIT not pendant(3) ATTACH (0) ;Reconnect to the robot DETACH (1) ;Release the pendant RETURN ;Return to calling program .END.

3.6.5

Defining a Tool Transformation

The following program establishes a reference point from which tool transformations can be taught. .PROGRAM def.tool() ; ABSTRACT: Invoke a new tool transformation based on a predefined reference ; location and, optionally, teach the reference location AUTO $answer TYPE /C1, "PROGRAM TO DEFINE TOOL TRANSFORMATION", /C1 ATTACH (1) ;Attach the pendant PROMPT "Revising a previously defined tool (Y/N)? ", $answer IF $answer "Y" THEN TYPE /C1, "Move the tool tip to the selected reference ", /S TYPE "location.", /C1, "Set ref.tool equal to the ", /S TYPE "transformation for this location.", /C2, "Press ", /S TYPE "the REC/DONE button on the manual control pendant when ", /S TYPE "ready to proceed. ", /S DETACH (0) ;Release the robot to the user WAIT PENDANT(8) ;Wait for user to press REC/DONE button ATTACH (0) ;Regain control of the robot ;(automatically wait for COMP mode) TOOL ref.tool125

A U T O M A Z I O N E

I N D U S T R I A L E

-

A . A .

2 0 0 5 - 2 0 0 6

HERE ref.loc ;Record the reference location TYPE END TYPE /C1, "Install the new tool. Move its tip to the ", /S TYPE "reference location.", /C2, "Press the REC/DONE button ", /S TYPE "on the manual control pendant when ready to proceed. ", /S