Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

20

description

Tutta la raccolta in versione torrent qui:http://www.tntvillage.scambioetico.org/index.php?act=showrelease&id=192104Raccolta a fascicoli "Robots - Costruisci il tuo Microrobot ed impara l'Elettronica Digitale" pubblicata da Peruzzo Editore dal 2001 al 2003.Su Scribd c'è tutta la raccolta suddivisa nei seguenti file:Microrobotica Peruzzo Editore - 00 A - Copertine e ComponentiMicrorobotica Peruzzo Editore - 00 B - Copertine e ComponentiMicrorobotica Peruzzo Editore - 00 C - Copertine e ComponentiMicrorobotica Peruzzo Editore - 00 - Errata CorrigeMicrorobotica Peruzzo Editore - 00 - Leggimi.txtMicrorobotica Peruzzo Editore - 00 - IndiceMicrorobotica Peruzzo Editore - 01 - Fondamenti di ElettronicaMicrorobotica Peruzzo Editore - 02 - MicroprocessoriMicrorobotica Peruzzo Editore - 03 - Sensori e AttuatoriMicrorobotica Peruzzo Editore - 04 - ComunicazioniMicrorobotica Peruzzo Editore - 05 - MotoriMicrorobotica Peruzzo Editore - 06 A - MicrocontrollerMicrorobotica Peruzzo Editore - 06 B - MicrocontrollerMicrorobotica Peruzzo Editore - 07 - Modelli di MicrorobotsMicrorobotica Peruzzo Editore - 08 - Robotica Industriale e Intelligenza ArtificialeMicrorobotica Peruzzo Editore - 09 - ProgrammazioneMicrorobotica Peruzzo Editore - 10 - ApplicazioniMicrorobotica Peruzzo Editore - 11 A - Modulo di ControlloMicrorobotica Peruzzo Editore - 11 B - Modulo di ControlloMicrorobotica Peruzzo Editore - 11 C - Modulo di Controllo

Transcript of Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

Page 1: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale
Page 2: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale
Page 3: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

Strutturadi un robot industriale

a maggioranza di noi ha pensato qualche

volta ad un robot ideale. un robot che asso-

migli a noi, che ci aiuti nelle nostre faccende,ci accompagni nei nostri giochi...., in defini-tiva una macchina a somiqlianza dell'uomo.

Invece i robot che si utilizzano ai nostri giorni non han-no sembianze umane, servono come aiuto all'industrìaper far fronte alla necessità di aumentare la produtti-vità, e migliorare la qualità dei prodotti oltre che a ri-durre i costi, rendendo obsoleta l'automazione indu-striale rigida. Sono molto utili anche per lavori in am-bienti pericolosi, come quelli dove la temperatura è

molto elevata o vi sia presenza di sostanze tossiche. Si

Robot industriale KUKA KR6/2.

Roboticei industrierle e intelligenzn nrtificierle

tratta di un tipo di automazione molto flessibile, adatta-bile all'ambiente e di facile utilizzo. Così nasce il "mani-polatore programmabile" di George Devol, nel 1956. Apoco a poco l'immagine e le caratteristiche del primo ro-

bot si trasformarono, così come Ie forme di controllo, che

sono passate dalle forme di controllo tramite computersino ai moderni microprocessori e microcontrollori. Si cal-

cola che attualmente ne esistano, su scala mondiale, più

di un milione di unità, utilizzate in differenti settori.

CARATTERISTICHE DEI ROBOTINDUSTRIALIAnche se non tutti i robot possiedono le seguenti carat-teristiche al completo, quello che definisce un robot in-

dustriale si può riassumere nei punti riportatr nella figura:

5i può odoflore o differenti sistemi di preso o sfrumenfi.

E outomotics.

I più moderni prendono decisioni o secondo delle informozioni coptole dol

mondo eslerno.

Caratteristiche orincipali di un robot industriale

Un robot industriale di solito ha l'asoetto di un brac-cio con diverse articolazioni, con un elemento termina-le che è quello che normalmente realizza il lavoro. Que-sto elemento si puo sostituire a seconda della funzioneda realizzare. Normalmente il robot è integrato rn un

ambiente con altri robot, oltre a macchinari diversi ed ai

relativi apparati di sicurezza, come mostrato nella foto-grafia, che è stata realizzaLa da INALI S.L. per il Labora-torio di Robotica e Sistemi di Produzione Integrati di

ESIDE (Università di Deusto). Hanno un prezzo e una di-mensione considerevoli.

Page 4: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

ll loro funzionamento è gestito tramite un computerod un altro sistema di controllo che a seconda del oro-gramma o deìle istruzioni che sta eseguendo, ordina un

movimento o l'altro al robot. Ouesti controller inoltresono incaricati di realizzare i calcoli necessari e di pren-

dere le decisioni.I robot di ultima generazione, hanno la capacità di

acquisire i parametri esterni tramite dei sensori, e anche

di prendere decisioni autonome, ad esempio, annullan-do un'operazione se rilevano che il pezzo che stavano

movimentando si è spostato, oppure adattando il per-

corso ad una piattaforma di lavoro variabile. I program-mi che governano questo tipo di robot sono quindi

molto generali e ottimizzati, e non necessitano di rego-

lazionr ognr volta che avviene un minimo cambiamentonell'ambiente.

Attualmente sono molte le applicazioni che si realiz-

zano con l'aruto dei robot, ad esempio il carico e lo sca-

rico delle macchine utensili, oppure nei settorì della

stampa. fonderia. verniciatura, foratura, taglìo ecc.

pero è l'industria automobilistica che assorbe il 60% del

parco mondiale di robot per realizzare lavori che sino apoco tempo fa erano esclusiva competenza dell'uomo.

CLASSIFICAZIONE DEI ROBOTEsistono differenti criteri per classificare i robot indu-striali, qui lo faremo in base alla complessità dei lavori

che possono realizzare, il che comporta una maggiore

o minore complessità della gestione. In base a questo

possiamo dividere i robot nelle seguenti categorie:

. Manipolatori: sono sistemi per operazioni semplici e ri-

petitive. La sequenza dei passi può essere fissa, anche se è

permesso variare alcune caratteristiche, è anche previsto

che un operatore possa prendere il controllo del lavoro.. Robot di ripetizione o apprendimento: sono quel-

li che apprendono una sequenza di movimentr, che inorecedenza un operatore ha realizzato con l'aiuto di un

controllo manuaie, e la ripetono; questo e conosciuto

come programma "gestuale".. Robot controllati dal compu-ter: dispongono di un linguaggiospecifico, adattato al sistema, per

realizzare i orogrammi che in se-

guito eseguira il robot.. Robot intelligenti: simili a

trrtti i nrerpdonti nprn COn la Ca-Lvrr, I vl

pacìtà di prendere decisioni che li

adattano all'ambiente, dato che

dispongono di sensori per la rac-

colta delle informazioni.. Micro-robot: hanno un prez-zn nirr er^rp<,sihilo Ia struttura e

il funzionamento sono simili ai

precedenti, però il loro obiettivoè ben diverso. Hanno fini edu-cativi, di intrattenimento o di ri-ce rca.

Robot mentre sta prendendo un utensile.

Fotografia di una consolle di programmazione.

Roboticcr industricrle e intellieienzq drlificicrle

Page 5: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

Cinematica e posizionamentodei manipolatori

Manipolatore con i suoi tre elementiprincipali uniti da articolazioni.

ri, gli assi di movimento per il posizio-

namento dell'elemento terminale, e Ia

soluzione ai problemi diretto e inverso.

LA STRUTTURA MECCANICARobot Kuka KR6/2, mentre sposta un oggetto da un piedistallo ad un armadio

I manipolatore è uno dei piu comuni robot ln-dustriali. Come indica il suo nome, questo robot"manipola" gli oggetti per realizzare diversi

compiti, quali spostarli da un posto all'altro, ap-plicare dei puntì di saldatura, forare, ecc. La ci-

nematica applicata alla robotica analizza i problemi che

derivano dal posizionamento degli elementi di un ma-nipolatore, e fornisce soluzioni per questi problemi. An-che se la cinematica dei robot sr basa su concetti di ma-tematica avanzata, non è nostra intenzione approfon-dire qui questo tema, bensì fornire una visione genera-

le, in modo da rendere I'argomento facilmente com-prensibile, anche se non si possiedono grandi nozionimatematiche.

Nella cimematica dei robot si lavora con tre concet-ti fondamentali: la struttura meccanica dei manioolato-

Per struttura meccanica si intende la

struttura fisica del manioolatore e la relazione fra i suoi

elementi. Normalmente un manipolatore è costituito da

tre elementi, corpo, braccio e avambraccio, che sonocollegati fra loro mediante delle articolazioni. Questepossono essere rotanti, quando il movimento permesso

fra gli elementi collegati da questa articolazione e una

rotazione, o prismatiche, quando è di traslazione. Altermine dell'avambraccio, in quello che sarebbe il polso

del manipolatore, si montano i diversi strumentì, secon-do il compito da svolgere.

GLI ASSI DI MOVIMENTOll numero degli elementi del braccio e delle articolazro-ni che li collegano, determinano gli assi di movimentodel manipolatore, che saranno i movimenti indipenden-ti che posizionano la parte del braccio nello spazio e la

Roboticcr industrierle e intel enz.l crrtificiqle

Page 6: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

L5i ---

Schema di un manipolatore con movimento su 6 asst.

posizione dell'elemento terminale. ll tipo di manipola-

tore impiegato più frequentemente nell'industria, ha tre

assi di movimento nei suoi elementi e altritre nel polso.

I primi tre servono per posizionare lo strumento e gli al-

tri tre per orientarlo nello spazio.

Un maggior numero di assi di movimento permette

un aumento della flessibilità del posizionamento dell'e-lemento terminale, il quale puo essere necessario per

applicazioni industriali complesse, come quelle del

Sistema di coordtnate cartesanedei 4 tipi fondamentali di manipolatori a) cartestani, b) angolari, c) cilindrici, d) sferici

sto sarà più o meno complesso a se-

conda dei parametri da governare.

La posizione dell'elemento terminale sarà affidata al

controllo cinematico, che dovrà fornire tutti i parametri

necessari allo scopo, controllando anche le parti del

braccro che sono collegate a questo elemento, deci-

dendone sia la velocità che il tipo di movimento.

I PROBLEMI DIRETTO E INVERSONel problema cinematico diretto si conoscono i para-

montaggio. Al contrario, in applrca-zioni semnlici nrro essere sufficienteun numero di movimenti più limìtato,e pertanto con un minor numero di

assi dr movimento.Secondo il sistema di coordinate

scelto, si potrà realizzare una serie di

movimenti oppure un'altra, quindi

dovremo pensare al lavoro che dovrà

svolgere il robot prima di scegliere il

tipo di coordinate, in modo da poter

realizzare tutti i movimentr che saran-no np.pqq:ri ner nrrel determinatoYv\

compito.ll movimento degli elementi del

manrpolatore, così come il calcolo,

l'elaborazione delle informazioni e leazioni da eseguire, sono regolate da

un sistema chiamato controìlore; que-

metri che definiscono gli assì di movi-

mento, cioè la posizione delle artico-lazioni. Partendo da queste bisogna

calcolare la posizione dell'elementoterminale.

ll problema cinematico inverso de-

ve determinare le caratteristiche degli

assi di movimento partendo dalla co-

noscenza della posizìone dell'elemen-to terminale.

Per la soluzione dei problemi diret-to e inverso, si utilizzano le regole trì-gonometriche, ed altre piu comples-qo .nmlrnnrp psatte basate sui cal-

coli matriciali e sulle trasformateomogenee. Dopo aver calcolato gli al-

goritmi, è necessario implementarli in

un linguaggio di programmazione,

come il Basic o il Pascal o, perché no,

l'assembler del PlC.

-i

Ro b o t i c er i n d u s t r i n I e e i n re I I i ge1f1 î-1_l1-lg!a I e

Page 7: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

con mtcroprocessoreSistemi di controlto

I controllo dei robot industriali ha percorso

molte tappe. Dai primi computer. sino ai mi-croprocessori e agli attuali microcontroller si è

ottenuto di diminuire il prezzo del controllersenza perdere né potenza né velocità nell'ela-

borazione dell'informazione. Normalmente abbiamo di-

versi di questi controller che lavorano in parallelo e si

trasmettono i oarametri. ll numero di controller e la lo-

ro potenza, dipende dalla complessità delle funzioniche devono realizzare.

Un robot è tanto più intelligente quanto più potrà

adattarsi all'ambiente in cui lavora, senza aver bisogno

di modrficare il suo programma di controllo. Così, te-nendo conto dei parametri esterni come velocità, posi-

zione, accelerazione, ecc. si calcoleranno le azìoni da

fare eseguire al manipolatore.

ELEMENTI DEL SISTEMA DI CONTROLLOTutti i moderni sistemi di controllo tramite computer ri-

chiedono alcuni elementr base oer funzionare in modointelligente, ad esempio i sensori con i relativi sistemi di

acquisizione dei dati e di interfacciamento, il softwaredi controllo, gli attuatori con i loro adattatori, e i dispo-sitivi di comunicazione

SENSORI, SISTEMI DI ACQUISIZIONEE CONDIZIONAMENTOI sensori sono incaricati di tradurre le grandezze fisichereali come la veìocità o la pressione, in segnali elettrici

normalizzati. E Ia prima presa di contatto del robot con

l'esterno, il che, una voìta tradotto e normalizzato, si

trasforma in una decisione da eseguire.

Prima di realizzare la traduzione di questi segnali,

spesso e necessario un adattatore,che ad esempio amplifichi il segnale,

lo filtri, o in definitiva lo adatti, per lo

stadio successivo. ll sistema di acqui-

Sensore dt pressione.

ffiffi

ffi

BUS DEt SISTEMA

Schema degli elementi di un sistema di controllo con computer.

Roboticrr industricrle e intell crrtificicrle

Page 8: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

di applicazioni complesse in poco tempo, gra-

zie anche alla facilità di comprensione dovuta ai

nuovi linguaggi di programmazione visuale che

possiedono. Così lo stesso PC si converte ìn vi-sualizzatore di datì, presentando allarmi, ano-malre, informazioni, ecc.

ATTUATORI E ADATTATORIDooo che il software ha determinato le azioni

da realizzare. queste si trasmettono all'attuato-re corrispondente, che a sua volta avrà bisognodi un adattamento precedente, come un relè o

un driver. Si puo aprire una valvola perché la

pressione misurata è molto alta, o pilotare un

dispositivo il cui movimento azioni qualche co-

sa, aumentare o diminuire una tensione, ecc.

DISPOSITIVI DI COMUNICAZIONEA seconda dell'installazione che si vuole auto-maîizzare. ootrebbe essere sufficiente un solo

sizÌone dei dati, a volte, realizza anche questa funzione,oltre alla conversione del segnale, alla memorizzazionee alla vrsualizzazione. Alcuni di questi sistemi sono ba-

sati su personal computer dotati di schede specifiche,

che eseguono le suddette funzioni; tuttavia questo non

e l'unìco metodo, esistono anche altri sistemi chiamati

PLC che sono stati sviluppati in modo specifico per cat-

turare segnali, sia analogici che digitali, ed elaborarli.

SOFTWARE DI CONTROLLOI sistemi di acquisizione dati basati su piattaforme PC di

solito si accompagnano con dei software di controllo.

Questi software sono sempre più do-

tati di interfacce semplìci da ulilizza-ro rhp ncrmotlnno la realizzazione

Solenoide che si contraee si espande a seconda del segnale fornito

sistema per il controllo del processo, oppure che ven-gano distribuite le funzioni su vari sistemi.

A^^l -^^--^ --t-t -+' 'ra nnf rÀ avorp tr rttn il sistema div9rr ovporcLLr ilcturo PUUq qvErE LULLU rl

controllo ed essere indipendente, oppure contenere so-

lo una parte del processo, come la cattura dei dati, l'e-

laborazione dei medesimi, la loro visualtzzazione, l'at-tuazione sur dispositivi, ecc.

Normalmente questi sistemi sono in comunicazione

fra di loro, i modi di comunicazione sono vari, dato chepossono essere tramite le reti LAN, comunicazioni seriali

secondo le norme RS-232-C, RS-485 o Bus l2C, comu-nicazione oarallela. ecc.

fra sistemi e normale

PLC costru ito con microcontrol ler.

ffiffiRS-232-C

t2c l2c

ffiE- @r

RS-232-C

ffi

ffi

Roboticerindustrierleeintelligenzg..q!.|_ir::-_i*!*

Page 9: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

I suoni dell,e macchine

ome succede per i microrobot, anche i robotindustriali si relazionano con l'ambienteesterno mediante i sensori e gli attuatori,questi ultimi normalmente come elementoterminale. Quante più informazioni potrà

captare il sistema tanto più sarà adattabile, e si potrà

basare su di esse per prendere le decisioni. lsensori più

impiegati in robotica sono quelli che informano sulle

grandezze tipiche dell'industria, ad esempio la vicinan-

za a un oggetto, la velocità, l'accelerazione, coppia e

forza, temperatura, ecc. Tutti questi, in genere, sonosemplici trasduttori di tipo optoelettronico, eìettromec-canico oppure a ultrasuoni, anche se a volte ci interes-

sa che il robot possa comunicare con sistemi di visionee suono.

LA VOCE UMANA'l orocedimenti oer la sintesi della voce hanno due va-

rianti: da una parte I'ulilizzo di sistemi che, incorporatinelle macchine, awisano di certi processi mediante la

voce. e dall'altra il riconoscimento automatico della vo-ce umana per pilotare le macchine con parole o frasr. In

questa sezione tratteremo argomenti inerenti la primapafte.

Se analizziamo il modo in cui noi umani generiamo

la voce, vedremo che, come esistono organi specificiper i sensi, come la vista, I'udito o il gusto, la voce uti-lizza differenti parti della nostra anatomia. Semplifican-do molto possiamo definire il suono come una corren-te d'aria che esce dai polmoni. 5ul suo cammino verso

l'esterno, attraversa diverse pareti che la trasformano,così si ottengono i fonemi che combinati fra loro for-mano le parole, con le varianti dei diversi parametri, che

fanno sì che una persona abbia la voce più acuta o più

bassa dr un'altra.Nella figura in basso possiamo osservare gli elemen-

ti che intervengono nella produzione della voce. L'aria

uscendo dai polmoni passa nella laringe, dove si trova-no le corde vocali, che come dice il nome sono delle

corde che vibrano al passaggio dell'aria, toccandosi fra

Parti che intervenqono nell'emissione della voceMascotte di Sony che risponde agli ordini impartiti con Ia voce.

Sintesi vocerle

Page 10: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

Schema generale di un sintetizzatore dÌ voce

di loro e controllando la quantità e la velocità della me-

desima. La pressione esercitata su di esse determina la

frequenza del suono, compreso fra 60 e 3.500 Hz. Co-

me molti avranno notato, alcune volte la voce si fa più

roca. se abbiamo parlato per molto tempo senza averle

lubrificate. Dopo aver attraversato la faringe si incontra

la cavità orale, dove ci sono la lingua e ì denti, che so-

no in comunicazione con la cavrtà nasale. Le dimensio-

ne del suono mediante il campionamento del segnale o

fluttuazione del segnale sonoro, mentre i secondi rico-

struiscono la voce tenendo conto dei parametri di al-

tezza tonale, intensità, armoniche ecc. per cui risultanopiù complessi, però riproducono con molta fedeltà pa-

role e musrca.

Questi parametri sono calcolati e scritti in preceden-

za da un orooramma di analisi vocale.

ni di queste cavità, il movimento del-

la lingua e delle labbra, o fattori va-

riabili come un'eventuale costipazio-

ne, cambiano la frequenza di riso-

nanza e i parametri propri della voce.

SINTESI DELLA VOCEI sintetizzatori vocali sono cìrcuiti

elettronici utilizzati per riprodurre il

niir fedelmente nossibile la voceY "''umana. Di solito sono dotati di una

memoria che contiene i codici digita-li da riprodurre; tramite un micropro-cessore che controìla tutto il proces-

so, i codici digitali sono trasformati in

analogici. per uscire all'esterno tra-mite un altoparlante. A seconda del

metodo impiegato nella codificazio-ne del suono troveremo differentisintetizzatori di maggiore o minorequalità. Si possono dividere in duegrandi gruppi: codificatori del segna-

le sonoro, e codificatori basati sulìa

parametrizzazione del segnale sono-

ro. I primi si basano sulla codificazro-

Sintesi Yoccrle

vocE

CONVERTIIORE A/D

FILÎRO DIGITALE{MODEIIO MAîE'$ATTCO]

ANALISI DEL PARA'VIETRO ANALI$ DEL TONO ANAUSI DEIL'AMPIEZZA

ATGORIÎMOCODIFICATORE

MEMORIA(Rorvr o EPROM)

Organigramma di un programma di analisi della voce per un sintetizzatore.

Page 11: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

Visione artificiale

e la possibilità per un robot di poter generare

suoni può essere interessante in determinateapplicazioni, il fatto di disporre di un sistema

di visione per catturare immagini, elaborarle e

in base ad esse prendere decisioni, apre uìte-riori campi di applicazione alla robotica. La capacità di

visione fornisce al robot Ia massima adattabilità all'am-biente rispetto agli altri sensori che può ulilizzare.

DIFFICOLTÀ TSISTTruTTPur tenendo conto dei vantaggi bisogna considerarequali sono i problemi che sì possono creare, per vede-re se I'applicazione trae realmente vantaggio dall'inse-rimento di questa tecnica. ll costo è il primo dei pro-

blemi, soprattutto se il prezzo del sistema supera ineccesso quello del robot per cui funziona. Data la so-

Quando la visione artificiale è applicata a microrobotdi solito c'è un computer centrale che gestrsce la telecamera e si incarica dei calcoli.

fisticazione dei sensori, anche il software di elabora-zione dell'informazione raccolta sarà complesso; sononecessari sistemi potenti, sia per quanto riguarda la

velocità di elaborazione sia per ìa capacità di memo-rizzazione, per fare in modo che le immagini sianoelaborate in tempo reale e non sr perda qualità; inol-tre il sistema dovrebbe poter utilizzare l'esperienza ac-quisita durante le elaborazioni precedenti, ed even-tuali immagini campione, per prendere le decisionr.

Quando la visione artificiale si applica a microrobot a

causa dei oroblemr orecedenti e delle limitazioni dei

microcontroller, di solito è un computer centrale chegestisce la telecamera, e si incarica dei calcoli. Ai pro-blemi precedentemente citati si uniscono quelli ine-renti all'elaborazione dell'immagine, come ombre, ri-flessi, cambi di illuminazione ecc.

STRUTTURAGENERALEDI UN SISTEMA DIVISIONE

Per realizzare l'elaborazionedell'immagine, sono neces-

sari sia elementi softwareche hardware. ll primo ele-

mento indispensabile è la

telecamera. Con il progredi-re delìa tecnologia, questesono diventate sempre me-no costose, e anche la lorodimensione si è ridotta no-tevolmente. Attualmente le

possiamo classificare secon-do il tipo dr informazioneche forniscono: digitale oanalogrca.

l- +^l^--*^"^ -^-lLd LereLdil rcrd dr rdlOglCa

necessita di una scheda di ac-quisizione per trattare I'infor-

Roboticcr industricrle e intelligenzel drtificicrle

Page 12: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

mazione; questo trattamento può essere realizzafo da

uno o oiù orocessori. Inoltre sarà necessaria della memo-

ria per immagazzinare dati e programmi, e moduli per ilcontrollo delle periferiche. Attraverso i moduli di ingres-

so/uscita si pilotano elementi esterni come rele, allarmi,

ecc. che servono anche per dare gli ordini finali al robot.In genere I'informazione della telecamera si monito-

rizza tramite il video del comouter o un televisore. Tuttiquesti moduli si collegano tra loro tramite bus norma-lizzali.

nn<<ihili in{nr-

m:zìnni nrèaa-

denti, derivateda ll'espe rienza.

Come ultimon:(<n <i dnrrrà

trasmettere l'or-dine o gli ordinidi controllo al

man rpotafore.

FASI DELTELABORAZIONEDELTIMMAGINE

Ognuno degli elementi preceden-

temente descritti è incaricato di uncomnito diverso essi sono struttu-rati in diverse fasi attraverso le

quali passa l'immagine. La teleca-mera è incaricata di catturare l'im-magine, quest'ultima, convertita insegnale elettrico tramite ì'interfac-ria <212 t12<ma<<:2a,,-,,- -J Un COmpU-

ter. lì software del computer dovrà

analizzare I'i nformazione ricevuta,il che implica discriminare fraI'informazione utile e quella super-f lrr,r d,ato rhp e imnossrbile tenereconto di tutte le informazioni, in-

i!-+: -'-"conda delleLCIptCLdTC I UdLr d )t

applicazioni in corso, arrivare ad

una o piu decisioni in base a que-ste informazioni e, se fosse neces-

sario, combinarle con le informa-zion i ricevute da altrr sensori o

Memorizzozionedell'immogine

Trosmissionedell'immogine

Anolisi dell'immogine

:--;-*. .. .'"*ìùerezlone

lnt:rro.lon",

lnterprefozione dei doti j

Trosmissione dell'ordine

Fasi dell'elaborazione dell'immaqine

_- - :,ì.aì.::i:

sliTELECAMERAANALOGICA

tSCHEDA

-DlacQulslzloNE EEGNÀG--ls!g[A!!

BìtSHORll,lALlZZAtO

W

ffiffi&ffimoo ,JFl#Y,

Elementi necessarÌ per elaborare l'immagine.

Telecamera di tipo digitale

Roboticer industrierle e intelligenzq qrtificierle

Page 13: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

Linguaggi di programm azionedei robots

ey\

Classificazione della programmazione utilizzata in robotica

^ ome in qualsiasi sistema informatico, anche

V nella robotica esiste un linguaggio che ci per-

f mette difornire alla macchina ìe istruzioni per

I la sua gestione. Nella robotica però, è moltoI

b importante che questi ordini siano mirati ai,-z ;.lavo-r da realizzare, in modo che la loro sequenza noninterferisca con il rendimento del robot. Per questo so-

no stati sviluppati Iinguaggi propri per la robotica, in-clusi linguaggi dedicati a robot particolari, a secondadella struttura, del compito o dei sensori di questi.

LA PROGRAMMAZIONE GESTUALEÈ anche conosciuta come programmazrone diretta; in

essa l'utente guida ìl braccio del robot direttamentelungo la traiettoria che si desidera fargli seguire. Manoa mano che sr realizzano i passi. questi sono scritti in

memoria, e in seguìto il robot è capace di ripeterli. É ne-

cessaria la presenza del manipolatore durante le due fa-si di lavoro: apprendimento e ripetizione. Questo tipo diprogrammazìone si può realizzare in due modi, per ap-prendimento diretto o con I'aiuto di un dispositivo di in-segnamento.

Nell'apprendimento diretto, si pilota il punto finaledel braccìo del manipolatore con l'aiuto di un dispositi-vo speciale, generando la traiettorìa da realizzare. i pun-ti di fermata, ecc. E sufficiente conoscere rl lavoro da

Schema del dispositivodi insegnamento utilizzato per il robot Teachmover.

realizzare, e ci sono poche possibilità di modificare ìl

software generato.

L'uso di un dispositivo di insegnamento amplra le

possibilità, pero è necessaria Ia conoscenza del disposi-tivo specifico. Si tratta di uno strumento con pulsanti.

rr^x o '-f.1") { b* *Inurf " '- ,:

"'o'uo I "nu"ffi#]]#& w**'

rurtn I

:"::'|'@@'I".,""ffi .i {-"r ffi*r"".',€ '-r'í*)_ l-'*- "'-.'

*",q "_ LF ,,,.,0

R.oboticer industricrle e intellietenzer .rrtificiclle__w

Page 14: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

OPEN

t0 M0vt RlPoso

l/|lAIT I

ìJ{AIT _Ilfslc 2,,, THtll 500

GOSUE PTZZOA

60T0 5t05OO GOSUB PIZZOB

510 DH.AY 0.5

00stDE AY 0.5

Movr RrP050

APPR P2,IOO

MOVIS P2

DEIAY 0.5

OPEN

Dil.AY 0.5DIPARTS IOO

G0I0 ì 0

Subroutine PIZZ0A

APPRO PI,IOO

MOVES PI

RITURN

Subroufine PtZZ0B

SHIFIPI BY I5O,O,O

APPRO PI,IOO

M0vt5 Pl

SHIFIPI BY_I5O,O,O

RETURN

Programma esempio per il robot PUMA MK2 560

indicatori, assi girevoli tipo "joystick", inclusi display

LCD... che l'utente deve maneggiare per dare ordini al

manipolatore. Di solito ha funzioni speciali, come gene-

razione di ritardi, variazioni di velocità, scrittura del pro-

gramma reailzzato, ecc.

Come contropartita alla semplicrtà d programma-zinne ron orresti linor'-^^i -'À r' ^^-- -r-ttabilita al4rurrL Lvr I VuLrLr 'il ryUOVVl, L C lO PULO CUO

mo77o d:to r.ro rinotono le seottenze annrese SenZa

tener conto der fattori esterni.

LA PROGRAMMAZIONE TESTUALEÈ un altro tipo di programmazione dove, come in quel-r- ^^-+' '-r^ À ^^-^---rio snecificare le azioni da fareld 9E)tUdlc, E I lcLE))cr rv rpLLrl

realizzare al robot, però non è necessario che questo sia

presente durante ì'elaborazione del programma. Que-sto tipo di programmazione si ulilizza quando sono ne-

cessari calcoli piu esatti, e pertanto piu complessi di

quelli che si facevano con un posizionamento "a oc-

chio", o quando la comunicazione con l'ambiente è im-portante. I programmi diventano così più complessi,

con l'utilrzzo di data base. salti condizionati. modulì in-

tercambiabili. ecc.

R o b ot i c o i n d u stri cr I e e inr elljmg,,F,t!ffifrial e

All'interno della programmazione testuale troviamodue grandi gruppi: la programmazione testuale esplici-

ta e la programmazione testuale specificativa.La prima è la piu simile alla programmazione ge-

stuale, dato che, anche se il programma e scritto, deve

essere definito punto a punto, e ìstruzione per istruzio-no nrrolln rho il rnhnt

^^',rì {1r^ Arrnc+r nrr---. oovra rare. QUesra programma-

zione nro avere rrn livello di movimentazione elemen-

tare, quando si vogliono controllare solo i movimentidel manipolatore, o un livello strutturato, quando met-

te in relazione il sistema del robot con gli oggetti e latrasformazione degli stessi, il che rende il piu compren-

sibile il programma, pero esige un certo livello di cono-| . nrnarrmmrzinno to<trr:lo (no.ifi.-+i.,- : -l>LCl ì1d. Ld plu9ldllll lld4rvr rE Lq)Luqrs )vE!il r!d Llvd c >l-

mile a quella che nell'ambiente dei programmatori è

conosciuta come Iinguaggio a oggetti. Si definiscono

una serie di oggetti, le loro caratteristiche e quello che

si vuole fare su di essi, oltre al modello dell'ambiente in

cui andrà a lavorare il robot. Ino tre bìsogna descrivere

il lavoro da realizzare. ll modello puo essere orientato:nli nnnptti o il linnrr:nnin l:ynror) enn 6qci Àirn++ro9il uvvcLLr, q il ilrrvuovyrv rovvrsr o rvr I s))l ullEtto-

mente e stabilirà relazioni fra ess o orientate agli obiet-tivi. cioè definendo il orodotto finale da ottenere.

CARATTERISTICHE DI UN LINGUAGGIOIDEALE PER LA ROBOTICAAnche se ogni linguaggio applicato ai robot ha delle

caratteristiche specifiche che lo rendono idoneo a un

ambiente o a una situazione determinata, nella listaÀallr finrrrr

abbiamo co-^i-+^ l^ --prd LU rc Lo-

ratte r ist ic h e

di un lin-guaggioid ea le.

Le primesei furonoenuncratea^mó drróilÒ

basilari,pero a ne-

cessrtà d i

nuove fun-ziona l;tà ci

ha indotti ad

ampliarlecon le ulti-me quarrro.

[hiorezzo delle isfuzioni del progrommo

Fodlilù di esponsione

Adofiobilitù ui sensori

lnlerozione ron ohri sislemi

Caratteristichedel linguaggio ideale per robotrca.

tffirscio

Page 15: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

trlaIntroouzronealf i ntetlige nza artifi ciale

l t;:Hnilrru:::T:l: ;n::,ìll'Ji.lI rio di incontrarle e di capirle, lo ha portato a

I ideare macchine la cui capacità di ragiona-

-

mento oretende di avvicinarsi a ouella uma-na. ll modo di migliorare queste capacità e il campo di

studio dell'intelligenza artificiale. Questa scienza è pero

abbastanza recente, dato che dipende in gran partedalla tecnologia e dalle conoscenze disponibili, e solo a

partire dal XX secolo ha iniziato a svilupparsi in tutte le

sue possibilità. Nonostante questo, rimane ancora mol-to cammino da percorrere per fare in modo che mac-chine pensanti come quelle rese famose dal film "2001

Odissea nello spazio" siano qualcosa di più di un sogno.

CAM PI DELTINTELLIGENZAARTIFICIALEEsistono diverse classificazioni dei settori che trattanol'intelligenza artificiale, e ognuno di essi e piu o menosviluppato, a seconda degli avanzamenti ottenuti nel re-

lativo settore della tecnologia. Ogni campo, pur separa-

to, puo soddisfare la necessità di applicazioni concrete,e trovarsi pertanto allo stato puro, anche se di solito lasoluzione di un problema necessita dell'interrelazione di

diversi settori.o La robotica è uno dei campi più avanzati, anche se

continuano i suoi miglioramenti e, come abbiamo potu-to vedere, in origine lo scopo era studiare la realizzazio-ne automatica di processì meccanici ripetitivi, come nel

Robofiro

Apprendimenlo

Linguoggio Nolurole e Visione

Ca m p i del I' i ntel I igenzaartificiale normalmente messi in relazioneper risolvere un problema.

caso dei primimanipolatori.r (iqfomi o<norti

deducono dati oeventi nuovi, ba-

sandosi su altridati, aiutando il

lavoro dell'uomo^.--:^ -il- ^.-^9tóLttr. ó,ró 9tótt-do nrr:ntità .li

informazioni e

regole di deduzione memorizzate, e la velocità di ela-

borazione. Immaginiamo, ad esempio, un sistemaesperto incaricato di determrnare la malattia di un pa-

ziente a partire da domande e risposte con il medesimo.. ln ogni caso non si arriva all'apprendimento, cioè

il sistema non sarà in grado di acquisire nuove cono-scenze tramite l'esperienza e i dati precedenti, sino a

che non si ricondurrà tutto all'aoolicazione di un insie-

me di regole.o Esiste anche la programmazione automatica, che

si dedica alla generazione automatica di programmi,per risolvere problemi a partire dalle specifiche di quel-

lo che dovranno fare questi programmi.. In ultimo, il linguaggio naturale e la visione, che a

noi risultano indisoensabilì ma a volte non sono suffi-crentemente valorizzaÍi, sono il cavallo di battaqlia del-l'intelligenza artificiale.

CONCETTO DI AGENTENon esiste una definizione accettata universalmente ri-

guardo a cos'è un agente, però possiamo fornire una

serie di dati e di caratteristiche su cui esiste accordo.

Un agente deve realizzare un lavoro per il suo padrone.

Roboticcr industricrle e intelligenzq errlificicrle

Page 16: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

Un agente, così come lo descrive l'intelligenza artifi-ciale, deve essere capace di realizzare un lavoro a favo-ro dol " n:dr^no

^ | rtonf o" doll':nento <to<<n Or ro<tn

Yv!JLv

compito deve essere realizzalo interagendo con l'am-biente in modo intelligente e autonomo, e con il mini-mo intervento dell'utente.

ATTRIBUTI DI UN AGENTE IDEALE

noto il detto "dividi e vincerai", e su questo hannoriflettuto un gruppo di ricercatori europei duranteun loro esoerimento di robotica. Si chiesero se nonera meglio ulilizzare piccoli robot di capacità limitata,al posto di grandi robot per la realizzazione di certi la-

vori. Così, furono lasciati girare per un'abitazione un

gruppo di microrobot, il cui compito era raccoglierepezzi di candela sparsi in modo casuale per formarneun solo mucchio. La prova f u realizzala molte volte, e

ogni volta il tempo risultominore rispetto al tempoche un robot mobile^"-^,1^

ran r-r-Ítagrdnoe, con cardrLeflstt-rha nirr nntonti imnion:-""F'-v"va a realizzare lo stessornmni+n

In questo modo nacque

la microrobotica, che do-vremo differenziare dalla"^l^^+;-- ^^^ .^l^ ^^" l-I vuu LtLo, I tut | )vtu Pcr ro

minore dimensione der

suoi membri, ma soprat-+' '++^ ^^r lr l^r^ --^LUL.O per rd roro rd[iacrÎ4,rho:nrho qo nirrnl: di nor

se, unendosi dota l'insie-mo di nr:ndo 66fp67j:lit:lllL ur Vrur ruL VvLLr tLtattta,

aggiungendo così al detto" l'unione f a la îorza" .

INTELLIGENZA ARTIFICIALEE MICROROBOTICAArrivati a ouesto ounto moltì dei nostri lettorì avrannogià trovato la relazione esistente fra intelligenza arliÍi-ciale e microrobotica, cioè che l'intelligenza program-

mata in un microrobot è quella che fa sviluppare i lavo-

ri in modo corretto. raccogliere dati dall'ambiente e

operare in esso, e in definitiva converte un microrobotin un agente. Di conseguenza il miglior modo per com-nrondorp lp nossihilita

di un microrobot, è co-

noscere gli avanzamen-

ti realizzati dall'intelli-^^^-- ^-+l+l-i -l^ ^ ^ll.genza arI|Trcrare, e ailo

stesso tempo i microro-

bot sono uno strumen-to efficace e molto im-medi:to ner norre in

^rî+,-a ^,,^-+, î,,î^-.PtoLrLo L|uc)u ovor4o-

menti.

Por far sì rhe rrn :nente Si

le, deve avere una serie di--"^++^.'-+'-l- ^ +i^^ I.caratterSuLne, upo rd ca-^--i+\ -li .,,;1,,^^-.^ --pacrra or sviluppare a/onlche lo conducano allampta rioe :d psporrire il

compito desiderato, degli-++,,-+^.i ^^" "^^li--aIIUatofI per (edrtlarenrreqte ,azioni dpi senSori

^^. --^+-r^ ^1.+i ^l-ll/-per caprare udLr udil am-hianto a n^iór rn<ì in+^utcr tc, c Pw LEr Lv)r il l Lc-

ragrre con esso, e un cer-tn nrrdn di iniollinar-,,,'.-,,,y-,ìZa,nór ^^iar moitoro in rol:-Pfl PULCI rìTELLETE ilr rcld-

zione le azioni con le per-

cezion r.

Orro<ta <nnn lo 61121i+àVUcJLL rvrru rL VudlltoL--^ -t ^ .;^,,--..J-^î ìeud)c Lrrc rr9uoruoru

caratteristiche di reazio-ne (captazione di stimoli e reazione). In molti casi so-

no sufficienti per far eseguire all'agente il compito as-

segnato, però mano a mano che queste ultime si

complicano, anche le caratteristiche necessarie au-

mentano di livello.l/rnnn+n iÀ^îl^ carahho nrrolln rho nn<<io"lo I':rrta-Ld9CllLC lUUdlC )OICUUE 9UqilU LrrE VV))IEUC ldUlU-

nomia (per realizzare azioni che dipendano non solo

dalle conoscenze precedenti, ma anche dall'esperien-za e interazione con l'ambiente), I'inferenza (creazio-

ne di nuove conoscenze a partire da dati 0recedente-mente appresi), l'adattamento (per adattarsi a un am-hionto r:nni:nfo o

migliorare con l'espe-

rienza), e Ia collabo-r:zinno (nar lsvnrsro

\|/!r ruvvrs'!

con altri agenti a un

compito comune).

NASCITA DELLAMICROROBOTICANel mondo della pro-nr:mm:zinno a hen

possa consrderare come ta-

Microrobot che compiono un lavoro insreme

"dividi o vinrprai" nrrello diYvr"

Autonomio

Adoilomenfo

Caratteristiche di un agente ideale,

non necessarie in utti i casi.

Un microrobot formicapuò aiutare molto nello studtodi questi animali.

Roboticcr industricrle *#:tRUrg*,T#***t!,,*iff ffi *!R

Page 17: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

Gli agenti

A volte è difficile separareg I i agentt u m a n i -softwa re- h ardwa re

e si pensa per un attimo al concetto di agente.questo è più ampio di quanto potrebbe appari-

re in principio, dato che sono molti glt "esseri"

che si adattano alla definizione, che abbiamo

visto, di agente. Così ad esempio il programma

di una macchina che sulla base di dati precedenti o di

una domanda o di prove realizzale su un paziente, è ca-

pace di determinare la malattia di quest'ultimo, può con-

siderarsi un agente, in questo caso software. I sistemi au-

tonomi di trasporto di merci, che già funzionano in alcu-

nì supermercati, sono un altro esempio dt agente, questa

volta di tipo hardware. Però uno deglì agenti più com-

plessi che esista è il corpo umano, vi siete mai sofferma-

ti a oensare ai complessi meccanismi che richiede Ia no-

stra mente ouando realizziamo un'attività così comune

come guidare un'automobile? lmmaginiamo un taxista

come un agente umano, nella figura allegata è rappre-

sentato tutto il sistema associato.

STRUTTURA DI UN AGENTELa divisione degli agenti nelle varie categorie dipende

dagìi obiettivi che devono realizzare, dalle percezioni e

dalle azioni necessarie per ottenere queste mete. Inogni caso tutti si possono differenziare in due parti: l'ar-

chitettura e il programma.

L architettura la compongonoi r-+i ^ ^r' -*lUatOfi CheLdpLdrc I udlr tr gil olr

ì sensori incaricati di

realizzano azioni sul-

l'ambiente, e il

programma è

nr rolln rha rolz-

ztona entrambele cose, cioè "di-ce" aglì attuatorinrrolln rha dovn-

no fare secondole informazion i

ottenute dar sen-

sori. A seconda

dell'obiettivo pre-

fissato. si proget-

Fotografia di un agente hardwarecon evidenziate le differenti parti della struttura

ta il programma dell'agente, tenendo comunque sem-

pre conto dei sensori e degli attuatori disponibili.

Quindi, a partire da questo momento, ci riferiremo

esclusivamente agli agenti hardware e anche agli

agenti software, e gli umani dispongono di entrambeoueste oarti.

TIPI DI AGENTI HARDWARELa classificazione degli agenti hardware può essere fat-

ta in base alle differenti caratteristiche, però dato che

quello che si desidera è la realizzazione di un compitonel miglior modo possrbile, possiamo convenire che una

buona classifi-

cazione è quella

che si realizza<ornndn il nr:-

do o livello di in-f ollinanz: dol

programmaagente. La figu-ra rappresenta I

Livello di cooperozione

Livello comunilà

Livello inrelligente

Livello reottívo

l-ivello fisico

Classificazione degli agenti per livello

R.oboticcr industrierle e intell crrtificicrle

Page 18: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

Allineamento della sabbiacon parametri regolati e non regolati.

diversi livelli e le relazioni che riguardano gli uni rispet-to agli altri. La struttura a cipolla che segue implica che

un agente che appartiene ad un livello superiore soddi-sfa le caratteristiche del livello precedente, oltre a quel-

le del oroorio Iivello.

Lo stadio superiore è quello di maggior complessitàstrutturale, sia software che hardware.

LIVELLO FISICOE conosciuto anche con il nome di agente dipendente,dato che non fa nulla per se stesso. ll suo programmadi agente fa sì che si comporti in un modo prestabilitoin tutte le situazioni: se l'ambiente e le condizioni cam-biano, non è capace di adattarsi, e bisogna modificargliil programma di agente. In ogni caso continua a soddi-sfare la condizione base di agente, dato che puo com-piere un compito a favore di un utente. Ad esempio, se

avessimo un agente di questo tipo per Iisciare la sabbiasu un campo da calcio. potrebbe assolvere al suo com-pito, sempre che sia programmato con dei tempi di per-

corso e di rotazione molto precisi e sia fatto partire dalpunto giusto, altrimenti dato che non è in grado di cor-reggere la sua traìettoria potrebbe generare dei risulta-ti non voluti.

LIVELLO REATTIVO E INTELLIGENTEIn questi livelli, oltre al programma agente è fonda-mentale l'informazione raccolta dai sensori, poiché de-termineranno le azioni da realizzare in ogni momento.In ogni caso il modo di trattare questa informazione è

quello che differenzia questi agenti fra loro. Mentre il

primo è basato su un insieme di regole "rf-else", in mo-do che ad ogni sensazione ricevuta reagisca in modoprestabilito, il secondo sembra "pensare" all'azione da

realizzare, e non seguire solo il suo istinto. Nella figura

R.oboticcr industrierle e intelligenzq errtificierle

si rappresentano le opzioni che puo avere un agente delprimo tipo, programmato per una prova di sumo. Per

renderlo "deliberante" o "intelligente" si potrebbe ag-giungere al suo programma di controllo una specie di

memoria, che ricordi le ultime azioni del suo awersario,al fine di creare un campione di comportamenti e av-

vantaggiarsr sui suoi attacchi, o avere in ogni momento"un'immagine" reale dell'area di lotta per rendersi con-to se, e quando, I'altro lo sta ingannando con rampe oaltri accessori.

LIVELLI DI COMUNITÀE COOPERAZIONEln entrambi i livelli sono coniugate le abilità di un grup-po di agenti per la realizzazione di uno stesso compito.Anche se abbramo detto che le capacità superiori in-globano le caratteristiche di quelle inferiori, non semprequesto è vero per i livelli di comunità. Ogni agente qui

funziona come indipendente dagli altri, senza sapere

dell'esistenza degli altri, e anche il suo comportamentopotrà essere unicamente fisico o reattivo, pero il pro-gettista dovrà ideare un insieme, in modo che, a frontedi un problema, l'approccio sia lo stesso per tutta la

squadra.Nel Iivello di cooperazione si parla di una società di

agenti. Ognuno di essi puo possedere un proprio ruoloe le sue proprie caratteristiche all'interno della squadra,come in una partita di calcio, però sono la comunica-zione e coordinazione fra i differenti membri a fare in

modo che il compito assegnato sia risolto. Oltre ad un

cambio sostanziale al momento di realizzare il oro-gramma di agente, i sensori e gli attuatori dovranno es-

sere anch'essi sofisticati, incorporando moduli di comu-nicazione del tipo a radiofrequenza, o essere dotati di

telecamere per localizzare oltre ai compagni di squadragli awersari e la palìa.

#'ffi?o

# 'f#?' o GiEEod€tu :

Gifrre o 5initu

& Firca*? O

, t1**T

Azioni da fare con unmicrorobot di tipo reattivo per una prova di sumo.

Page 19: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

Comuni cazione fra agenti

bbiamo visto che i microrobot, considerati

come agenti, possono avere differenti gradi

di intelligenza. Si potrebbe pensare chequante più cose è capace di fare un microro-bot, quanti più sensorì e attuatori possiede,

e piu "intelligente" è meglio è, pero non dobbiamo di-menticare la filosofia con cui sono stati ideati i microro-bot, in contrapposizione ai grandi e potenti robot indu-striali. In ogni caso, arrivatial punto più alto di intelligen-za. quello di cooperazione, le possibilità di interazione dei

microrobot aumentano sino a superare l'idea originale.Per ottenere questo, e necessario che gli agenti sia-

no capaci di comunicare fra loro, al fine di potersi scam-

biare i dati, ripartire le azioni e in definitiva formare un

insieme che agisca tenendo conto di tutti i suoi compo-nenti. I metodi sono diversi, e non ve ne sono né di mi-

'gliori né di peggiori; a seconda delle applicazioni verràscelto il prù conveniente. Una volta scelto il metodo,pero, tutti lo dovranno ufiltzzare, altrimenti, così comesuccede con le lingue, tutti i tentativi di comunicazionerisulteranno infruttuosi.

METODO DELLA CHIAMATAE uno dei metodi pru semplici. Ogni agente ha dei pro-

cedimenti propri con cui capta i dati dall'ambiente, e li

elabora per ottenerne dei nuovi. Ogni agente inoltre,conosce che tipo di dati puo otte-nere dagli altri agenti. In questo

modo, quando un agente ha biso-gno di un dato "chiama" al proce-

dimento adeguato. E una forma di

divisione del lavoro in elementisemplici, in modo che ogni agentepossa essere impiegato per esegui-

re un solo compito, Se gli incarichisono facilmente divisibili, questopuò risultare il metodo di comuni-cazione piu idoneo, pero se la re-

lazione fra gli incarichi o l'inter-scambio di informazioni è eccessi-

ogente3

q's#

,,à#,ogenlrey'

Se non si utilizza la figura del moderatore,possono nascere conflitti di dati, nel metodo della lavagna.

vo, potrebbero nascere dei problemi nell'aggiornamen-to dei dati, per mancanza di tempo di elaborazione.

METODO DELLA LAVAGNAQuesto metodo è il più frequente per far comunicare di-verse persone che non si trovano tutte insreme nellostesso posto, però hanno bisogno di scambiarsi infor-mazioni. La comunicazione non è persona-persona

(agente-agente) ma persona-la-

vagna. Qualcuno può lasciare un

dato che ha ottenuto, nel casopossa servire a qualcun altro, e

prendere un'informazione che si

trova sulla lavagna per ottenerenuovi dati. Quando Ia quantità di

informazione comune e grande,questo è un buon metodo, seb-

bene non sia esente da problemi.

Ad esempio, nella situazione del-la figura, a seconda di quale

agente (1 o 3) sia il piu rapido,l'agente 4 riceverà un valore op-

Tre agenti si dividonola funzione di ricerca di posti auto tn un garage

Roboticcr industricrle e tn,l*l.l-g*;:.*s,,t't-{f -i*iglP

Page 20: Microrobotica Monty Peruzzo Editore - 08 - Robotica Industriale e Intelligenza Artificiale

pure un altro come "dato 1".f agente 3 a sua volta potreb-

be ricevere un "dato 5" anche

se non e ancora stato aggior-

nato dall'agente 2 ecc. La so-

luzione potrebbe essere ì'uti-lizzo di un agente moderatore,

che assumerebbe il ruolo di" lavagna intelligente" nonpermettendo di acquisire dati

in corso di elaborazione, o non

aggiornati ecc. Bisogna sottoli-nó2ró.ho an.na co non sem-

bra, questo genera una grande

Mi inière$o :.soffoncorico 2 l3l

iChi vuolesoiloìncorico-ì?(2) |l.

Chiwole Mi intere$osofloiicorico- 2? l2l sofroincor co . I {3) :

conce$ione A(dozonesohoincorico I (5) sonoLncor co lol

Rkuholo : I5oaoincorco. I l8l

sofloincorico 2 (5) Mi interessosotrorncorao-r IJI

l"""norio"":!.9!9it!S'.'cS: ?.lq:

La sequenza delle azioni nel sistemader contratti viene segnata dai numeri fra parentesi.

SISTEMA DEICONTRATTITutti gliagenti insieme devono

realizzare un compito. Quan-do si utilìzza questo metodo, il

lavoro viene spezzettato e n-

partito fra gli agenti con il me-

todo dell'asta, tenendo contodei sottoincarichi che gli agen-

ti chiedono di realizzare e del-

la loro capacità a realizzarli. ll

"banditore" quindi, deve co-noscere le attitudini dì ogni"compratore". Ogni volta che

dice che è stato realizzato unperdita dr tempo in attese, la velocità con cui si realizza-

no oueste ooerazioni è dell'ordine dei microsecondi.

SISTEMA DEI MESSAGGISi può considerare un miglioramento del metodo della

chiamata. Facendo un paragone fra i due, questo me-

Esempio di comunicazione basata su messaggi. I numeri fraparentesi servono per vedereI'ordine con cui sono prodotti i messaggi.

todo sarebbe un dialogo fra due persone che conosco-

no le regole e il linguaggio di comunicazione, e il pre-

cedente sarebbe un dialogo in stile "Tarzan" .In questo

caso non si utilizzano chiamate a procedimenti per ot-tenere un semplice dato, ma i messaggr possono esse-

re di diversi tipi come "Richieste di Informazioni", "Ri-

chiesta di Esecuzione di una Azione", "Risposta ad una

Richiesta Fatta" ecc. Ognì agente deve conoscere i possi-

bili messaggi e come generare e rispondere a qgnuno di

essi. Un messaggio si puo inoltre dìrigere a un gruppo di

agenti, dato che non è necessario sapere quale di essi e

capacedirea|ìzzareundeterminatoincarico.

si assegna un comprto sl

contratto.

PGP: PARTIAL GLOBAL PLANNINGIn questo metodo ogni agente è incaricato di una serie

di compiti, e conosce gli incarichi che sono stati asse-

gnati agli altri agenti. Gli agenti stessi sono incaricati di

dividere questi lavori in sottoincarichr; facendo questa

divisione ouò caoitare che il risultato di un sottoincari-co, necessario ad un agente, sìa stato svolto da un altroagente, oppure che un altro ancora ne abbia bisogno in

seguito, facendo così una richiesta o un trasferimentodi informazione" Questo puo succedere perché ogni

agente comunica continuamente agli altri lo stato del

suo ìncarico in corso.

Nella figura ognì agente realizza uno dei due com-pìtì esistentì, quelìo A e quello B. Uno dei sottoìncarichi

del compito A è A4, che sarà utile a entrambi. fagente1 lo puo realizzare, e comunicarne il risultato all'agente2. oppure delegare quest'ultimo alla sua esecuzione a

seconda del sistema dì oriorità e di divisione.

A B

Un sottoincarico non si realizza diverse volte,

ma i suoi risultati sono condivisi.

domondo prossimo ogente (3)

risoluzione doto I

{s,É#ogenle2

3 (5ì

richieslo doto I (r')

Roboticei industrieile e intelligenzq qrlificiole