15
pag. 1 Robot Beginner KIT 4WD ARDUINO UNO Oggi la tecnologia permette la realizzazione di un Robot in maniera molto semplice. Con il nostro kit è possibile realizzare, in maniera molto elementare e divertente, un vero robot in poco tempo. Anche se le istruzioni dichiarano che il dispositivo in oggetto non costituisce un dispositivo ludico, potete montarlo, programmarlo e collaudarlo assieme a vostro figlio, facendogli assaporare gli aspetti dell’elettronica, della robotica e della programmazione. Il tutto con grande passione e divertimento. Occorre procedere per gradi al fine di assemblare un gioiello dell’elettronica in poco tempo per regalargli una vita propria. Parliamo di questo Robot Un robot è stato sempre un sogno di grandi e piccini e oggi questo sogno può essere facilmente realizzato. Con esso, è possibile riprodurre fedelmente la volontà dell’uomo, programmandolo e insegnandogli la strada da percorrere e il comportamento da intraprendere in determinate condizioni. Il Robot Beginner KIT 4WD è un kit di montaggio, da assemblare e da montare in modo semplice ed in poco tempo. Il suo funzionamento è garantito in circa un’ora di lavoro. Seguendo le istruzioni riportate nel presente tutorial le operazioni di assemblaggio risulteranno estremamente semplici. Il kit contiene tutto ciò che serve per portare a termine l’intera installazione. E’ stato concepito, soprattutto, per chi FIGURA 1: ROBOT BEGINNER KIT 4WD ARDUINO UNO

Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

Embed Size (px)

Citation preview

Page 1: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 1

Robot Beginner KIT 4WD ­ ARDUINO UNO

Oggi la tecnologia permette la realizzazione di un Robot in maniera molto semplice. Con ilnostro kit è possibile realizzare, in maniera molto elementare e divertente, un vero robot inpoco tempo. Anche se le istruzioni dichiarano che il dispositivo in oggetto non costituisceun dispositivo ludico, potete montarlo, programmarlo e collaudarlo assieme a vostro figlio,facendogli assaporare gli aspetti dell’elettronica, della robotica e della programmazione. Iltutto con grande passione e divertimento. Occorre procedere per gradi al fine diassemblare un gioiello dell’elettronica in poco tempo per regalargli una vita propria.

Parliamo di questo RobotUn robot è stato sempre un sogno digrandi e piccini e oggi questo sognopuò essere facilmente realizzato. Conesso, è possibile riprodurre fedelmentela volontà dell’uomo, programmandoloe insegnandogli la strada da percorreree il comportamento da intraprendere indeterminate condizioni. Il RobotBeginner KIT 4WD è un kit di

montaggio, da assemblare e damontare in modo semplice ed in pocotempo. Il suo funzionamento è garantitoin circa un’ora di lavoro. Seguendo leistruzioni riportate nel presente tutorialle operazioni di assemblaggiorisulteranno estremamente semplici. Ilkit contiene tutto ciò che serve perportare a termine l’intera installazione.E’ stato concepito, soprattutto, per chi

FIGURA 1: ROBOT BEGINNER KIT 4WD ­ ARDUINO UNO

Page 2: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 2

desidera iniziare a operare subito conquesta tipologia di dispositivi. La facilitàdi programmazione di Arduino, infatti,assieme alla duttilità del robot,consentono di dargli subito una vitapropria, impartendogli i comandi piùdisparati e consentendogli di conoscereil mondo che lo circonda, grazie allasensibilità del suo sensore a infrarossi.

Contenuto della confezioneAl ricevimento del prodotto eall’apertura della confezione, troveretealcuni componenti sigillati e racchiusinegli appositi blister. E’ indispensabileconoscere a fondo le parti checompongono il kit. Dedicate, quindi,qualche minuto per inventariare le variecomponenti. Questo tempo speso inquesta fase risulterà prezioso per ilproseguo del corretto montaggio delrobot.

Robot Jumper Wire KitSi tratta di un insieme di utilissimijumper finalizzati a connettere, tra loro,le varie parti elettroniche e i dispositivi.Essi evitano la noiosa e pocoprofessionale preparazione casalinga dicavi di collegamento. Le rigideterminazioni permettono connessionielettriche molto sicure e affidabili. Essipossono essere collocate o trasferite inpochi istanti. La fornitura comprendejumper di tipo maschio­maschio ejumper di tipo maschio­femmina. Laloro lunghezza è di 6 pollici (figura 2).

Sensore di prossimità SharpGP2Y0A21YKSi tratta di un sensore di prossimitàall’infrarosso (vedi figura 3). Riesce amisurare, con sufficiente precisione, ladistanza di un oggetto. Esso fornisceun’uscita analogica che aumenta al

diminuire della distanza dell’ostacolo. Ilsuo intervallo di funzionamento ècompreso tra 3,1V a 10cm e 0,4V a80cm. La tensione di uscita scendeall’incirca a 0V quando non è presentealcun ostacolo di fronte ad esso. Lasua adozione costituisce, sicuramente,una delle migliori soluzioni, a bassocosto.

Telaio Dagu 4WD MagicianChassisSi tratta del telaio del robot, ossia lastruttura portante del dispositivo (figura4). Le due piastre sono dotate dinumerosi fori e scanalature checonsentono la più alta libertà dimontaggio e di disposizione.Ovviamente è fornito in soluzione da

FIGURA 2: ROBOT JUMPER WIRE KIT

FIGURA 3: SENSORE INFRAROSSO DIPROSSIMITÀ SHARP GP2Y0A21YK

Page 3: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 3

assemblare completamente e ciòcostituisce, sicuramente, un’operazionemolto istruttiva e divertente. E’, infatti,composto di esigue parti che simontano in pochi minuti. Il supporto didettagliate istruzioni per il montaggioconsentono un sicuro e preciso lavorodi preparazione e di assemblaggio. E’corredato da una staffa a “L” perpermetterne l’alloggiamento e ilfissaggio sullo chassis.

Sub Micro Servo 9gSi tratta di un piccolissimo servo (figura5) dal peso di soli 9 grammi. Puòessere alimentato con una tensionecontinua compresa tra 4,8V e 6V. Lasua forza è pari a 1,5kg/cm (coppia ditorsione). Il servo è corredato da alcunisupporti che ne agevolano ilmontaggio.

2A Motor Shield perArduinoE’ una scheda che costituisce il modulodi potenza, pilotando direttamente imotori del robot, per un massimo di 2Ampere di carico. Essa utilizzal’integrato L298P, un potente driverDual Full Bridge per motori (figura 6).Può essere direttamente montata suArduino.

Portabatteria per 6 pile AAQuesto porta batterie (figura 7), ospitafino a sei batterie stilo (AA). È dotato diun cavetto jack di tipo DC2 che neconsente la connessione direttamentead Arduino.

FIGURA 4: IL TELAIO DAGU 4WD MAGICIANCHASSIS

FIGURA 5: IL SUB MICRO SERVO 9G

FIGURA 6: 2A MOTOR SHIELD FOR ARDUINO

FIGURA 7: PORTABATTERIE

Page 4: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 4

DistanzialiPer ultimo, sono a corredo dellaconfezione alcuni utilissimi distanzialiesagonali M3x30 (figura 8). Essipermettono il montaggio dello chassis oaltra tipologia di assemblaggiomeccanico. La confezione comprende:

•10 distanziatori esagonalimaschio/femmina M3x30;•10 viti M3x6mm;

•10 dadi M3.

Montaggio del telaioProcediamo, adesso, al correttomontaggio dello chassis. Esso èabbastanza semplice e si conclude incirca un’ora di lavoro. Tuttaviaconsigliamo di seguire le istruzioniriportate nel foglio illustrativo incluso.Tutte le dotazioni meccaniche hannouna ben precisa funzione e le varieminuterie (viti, dadi, bulloni, rondelle,ecc.) non possono essere scambiatetra loro. Approntiamo, pertanto, uninventario delle minuterie checompongono il kit del telaio (figura 9),seguendo il foglio incluso eadagiandole ordinatamente sul tavolo.Seguendo l’inventario riportato infigura, la confezione dello chassis ècomposta dal seguente materiale:

•N. 1 Parte superiore chassis (1);•N. 1 Parte inferiore chassis (2);•N. 8 Supporti per motore (3);•N. 4 Motori (4);

FIGURA 8: DISTANZIATORI

FIGURA 9: LE PARTI DELLO CHASSIS

Page 5: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 5

•N. 4 Ruote (5);•N. 1 Porta batterie (6);•N. 4 Distanziatori L30 (7);•N. 8 Viti M2,5x25 (8);•N. 8 Dadi M2,5 (9);•N. 8 Dadi M3 (4 di ricambio) (10);•N. 8 Viti M3x6 (4 di ricambio) (11);•N. 4 Distanziatori M3x6 (ricambio) (7);•N. 2 Fascette per porta batterie.

Controllate con attenzione che tale listacombaci con quanto riportato nel foglioillustrativo. Procediamo, quindi, almontaggio vero e proprio, ricordandoche la fretta è sempre causa di errori, avolte irreparabili. Seguiamo conattenzione e perizia, e soprattuttosenza commettere errori, le istruzioni,passo per passo.

Passo 1: Inserimento deisupporti del motoreSulla parte inferiore dello chassis sidevono innestare gli otto supporti deimotori (vedi figura 10). Seguendo ilfoglio allegato nella confezione e lenostre illustrazioni, l’operazionedovrebbe risultare molto semplice.Inizialmente, tali supporti non sonosolidali alla base, fino a fissaggiocompleto dei motori con le viti. In effetti,più che inserimento definitivo, tale

operazione si può considerare comeuna preparazione dei supporti per ilsecondo successivo passo.

Passo 2: Collocazione deimotoriIn questa fase i quattro motori devonoessere alloggiati, come mostrato infigura 11, in modo che i relativi foricorrispondano a quelli dei supporti.

Passo 3: Fissaggio deimotoriIl terzo passo consiste nel fissaggiodefinitivo dei motori ai supporti dellochassis (figura 12). A disposizioneavvenuta, si può procedere albloccaggio definitivo con le viti M2,5x25e relativi dadi. L’intera struttura è stataprogettata con estrema cura e i fori,assieme agli alloggiamenti,corrispondono perfettamente. Nonbisogna esercitare, in ogni caso,un’eccessiva forza nell’avvitamento. Sitratta pur sempre di supporti di plastica.

Passo 4: Assemblaggiodelle ruoteIl montaggio delle quattro ruote èsemplice: è sufficiente incastrarle nei

FIGURA 10: INSERIMENTO DEI SUPPORTI DEL MOTORE NELLO CHASSIS

Page 6: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 6

rispettivi alberini del motore (figura 13).Non servono viti e il fissaggio è moltosicuro per via del particolare profilodell’innesto. Le ruote possono essere,comunque, successivamente rimosse inmaniera semplice e veloce.

Passo 5: Montaggio dellochassis superioreQuesta fase prevede il montaggio dellapiastra superiore dello chassis. Si devesemplicemente bloccare, con delle vitiM3x6, la parte superiore dello chassis(vedi figura 14).

Passo 6: Collocazione delvano batterieSi procede, dunque, alla collocazionedel portapile (figura 15). Esso puòessere sistemato con una certa libertàin qualsiasi posizione della struttura.L’operatore ha piena autonomia, inquesto senso.

Lo chassis è prontoDopo le fasi preliminari sopra descritte,in circa un’ora la struttura portante del

FIGURA 11: COLLOCAZIONE DEI MOTORI

FIGURA 12: L’AVVITAMENTO DEFINITIVO DEI MOTORI SULLO CHASSIS

Page 7: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 7

robot è pronta ed è visibile in figura 16.

Cablaggio dei quattromotoriUna volta che la struttura meccanica èpronta e lo chassis è interamentemontato, occorre procedere con lasaldatura dei motori. Vi sarete accorti,infatti, che essi sono sprovvisti di filielettrici uscenti e sono presenti

solamente due contatti elettrici per ognimotore. Per tale scopo occorre munirsidi due cavetti dotati di morsetti acoccodrillo, al fine di testare la polaritàdei motori (figura 17). Una voltastabilita la polarità e il senso dirotazione, con l’ausilio di una batteria di4,5V, in pratica occorre collegare inparallelo due motori alla voltaappartenenti, rispettivamente, al latodestro e sinistro dello chassis, come

FIGURA 13: IL MONTAGGIO DELLE RUOTE

FIGURA 14: ASSEMBLAGGIO FINALE DELLO CHASSIS

Page 8: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 8

mostrato dalle illustrazioni sottostanti.L’utilizzo di filo colorato agevola,ovviamente, le operazionid’identificazione dei contatti. Occorre,allo scopo, prestagnare i contatti deimotori (figura 18), per facilitare labrasatura dei fili di collegamento. Conun pennarello è possibile anchecontrassegnare, con un puntino, il polopositivo. Si consiglia di dimensionare,almeno per adesso, una lunghezza difilo maggiore del necessario. Essasarà, poi, ridotta successivamenteall’occorrenza.

Installazione di Arduino eImpilazione del MotorShield su Arduino

Con i distanziatori in dotazione, anchetale operazione è molto semplice. I foripresenti sullo chassis consentono unalibera scelta del montaggio. Per questeoperazioni non è necessario utilizzare

FIGURA 15: INSTALLAZIONE DEL VANO BATTERIE

FIGURA 16: LA STRUTTURA COMPLETA

FIGURA 17: I CONTATTI DEI MOTORI

Page 9: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 9

alcun saldatore a stagno. Tutte leconnessioni avvengono peravvitamento e incastro. Dopo cheArduino è stato fissato saldamentesullo chassis, si può innestare su essoil Motor Shield, impilandolo sul sistema(figura 20). La connessione pin­to­pin èmolto semplice, in quanto tutti iterminali sono numeratiprogressivamente. In ogni casoassicuratevi di orientare i morsetti dicolore verde del c.s. dello shield dei

motori verso le prese di alimentazionee USB di Arduino. Inoltre, i pettinid’innesto sono di lunghezza variabile enon esiste possibilità alcuna di errore.Questo è anche il momento buono perfar passare i fili dei motori attraverso leferitoie dello chassis, in modo da farliconvogliare verso la scheda relativa.Adesso è possibile accorciare un po’ ifili uscenti dai motori, dal momento cheall’atto del loro montaggio era stataprevista una lunghezza maggiore. La

riduzione del filo consente anche unmiglioramento dell’estetica generale delrobot, come si può evincere dalla figura21. Dopo averli denudati, si possonoinserire nel morsetto del motor shield,rispettando i piedini M1+, M1­, M2+ eM2­. Prima di proseguire con ilmontaggio è opportuno provare i motorie il loro verso di marcia, nonché lacorretta rotazione delle quattro ruote.Allo scopo si può provare questosemplice sketch di prova. Esso nonutilizza alcun sensore di ostacoli ma silimita a far girare le ruote in avanti pertre secondi e poi indietro per altri tre

FIGURA 18: SALDATURA DEI MOTORI

FIGURA 19: SCHEMA ELETTRICO PER LESALDATURE DEI MOTORI

FIGURA 20 : INSTALLAZIONE DI ARDUINO EMOTOR SHIELD SULLO CHASSIS

Page 10: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 10

secondi, in un loop infinito, in modo dafar “danzare” il robot. Ovviamenteoccorre evitare gli ostacoli perché,come detto, il listato non controlla lapresenza di oggetti sul percorso delrobot. Il valore del PWM è impostato255, cosicché i motori girano almassimo della loro velocità, essendo ilduty cycle stabilito al 100%. Il listatoevidenzia che, per far avanzare ilmotore occorre agire sulle variabili M1e M2, mentre per fermare i motori oregolarne la velocità si devono usare levariabili E1 e E2. Nel proseguo deltutorial vedremo come programmareArduino con gli opportuni sistemi disviluppo. Non serve mettere il robot a

terra, basta tenerlo in mano e verificareche le ruote girino correttamente. Sinoti come la presenza di quattro motoriconferisca al dispositivo una grandeforza. Si consiglia di alimentare il robotcon il portapile da 6 posti, fornito nelladotazione. Il motore si pilota agendo sualcuni valori logici delle porte, nonchésul duty cycle per controllarne lavelocità.

Installazione del sensore ainfrarossiIl sensore di prossimità a infrarossiSharp GP2Y0A21YK, come detto inprecedenza, funge da “occhio” delrobot, riuscendo a verificare e misurarela distanza di eventuali oggetti dinanziad esso. Le possibilità di montaggiosono le più disparate e grazie all’ampioventaglio di scelte disponibili, possiamoeffettuare il montaggio come megliocrediamo. Nel nostro esempio si èdeciso di rendere il sensore fisso esolidale allo chassis. Altre sceltepotranno prevederne l’installazione sulservo, in modo da renderlo orientabileal contesto ambientale incontrato.La

FIGURA 21 : COLLEGAMENTO DEI MOTORI ALMOTOR SHIELD

/*­­­­Il Robot procede avanti e indietro­­­*/int E1 = 5;int M1 = 4;int E2 = 6;int M2 = 7;void setup()

pinMode(M1, OUTPUT);pinMode(M2, OUTPUT);

void loop()

digitalWrite(M1,HIGH);digitalWrite(M2,HIGH);analogWrite(E1, 255); //PWM Speed ControlanalogWrite(E2, 255); //PWM Speed Controldelay(3000);digitalWrite(M1,LOW);digitalWrite(M2,LOW);analogWrite(E1, 255); //PWM Speed ControlanalogWrite(E2, 255); //PWM Speed Controldelay(3000);

Page 11: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 11

prima operazione da compiere è quelladel fissaggio del sensore alla rispettivastaffa. Due piccole viti e relativi dadipotranno assicurarne la perfettaaderenza e stabilità, come mostrato infigura 22. Utilizzando gli appositidistanziali forniti in dotazione si può,pertanto, montare il sensore sullochassis (figura 22). Anche in questocaso si è pienamente autonomi e laposizione scelta del modulo a infrarossipuò variare secondo le esigenze dellefinalità del progetto finale previsto. Lesoluzioni, a riguardo, sono molteplici.

La connessione elettrica del sensore alsistema è estremamente semplice. Sidevono collegare i fili di colore rosso enero, rispettivamente, ai pin +5V eGND di Arduino e il filo gialloall’ingresso analogico 0, come mostratonello schema di cui alla figura 24. Infigura 25, invece, possiamo osservare ilrelativo il collegamento fisico. Se, percaso, i fili del sensore non dovesseroarrivare sulla board, si possono usareutilmente i jumper a mo’ di prolunghe,rispettando i colori per una maggiorechiarezza.

Programma di prova per ilsensorePer testare la bontà di installazione delsensore scriviamo un piccolo sketch diprova. Lo scopo del programma èquello di far camminare il robot ad unacerta velocità. Man mano che esso si

FIGURA 22 : FISSAGGIO DEL SENSORE DIPROSSIMITÀ ALLA STAFFA

FIGURA 23 : MONTAGGIO DEL SENSORE DIPROSSIMITÀ ALLO CHASSIS

FIGURA 24 : SCHEMA DI MONTAGGIO DELSENSORE AD INFRAROSSI AD ARDUINO

FIGURA 25 : COLLEGAMENTO ELETTRICO DELSENSORE AD ARDUINO

Page 12: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 12

avvicina a un ostacolo, la velocitàdiminuisce fino ad azzerarsi del tuttonon appena il robot lo raggiunge. Illistato è molto semplice. Dopo il setupdi rito, in un ciclo senza fine viene lettala porta analogica (0) che contiene ilvalore trasmesso dal sensore. Unaserie di condizioni “if” verificano talevalore e decidono per il cambiamentodi velocità dei motori. Il programma èmolto generico ed ha solamente uncarattere puramente illustrativo.L’utente può modificare le condizioniimposte e il numero di scaglionamentidelle distanze. Anche la tensione dialimentazione, infatti, influisce sullapotenza e velocità sprigionata daimotori. Può anche ricorrere a un’unicaformula matematica adottandol’interpolazione lineare. Occorrericordare che il sensore di distanzafornisce una misura analogica in volt,ma tale segnale è processato, daArduino, come un numero intero a 10bit, compreso tra 0 (0 Volt) e 1023 (5

Volt). Il listato mostra chiaramentequesta prerogativa della gestione A/D.

Programmazione diArduinoSi può adesso programmareufficialmente Arduino con il softwarepredisposto a far compiere i primi passial robot. Trattandosi, appunto, di unfirmware, si può realizzare qualsiasiapplicazione pratica, ludica oprofessionale. Occorre, allo scopo,avere dimestichezza con linguaggio diprogrammazione di Arduino. Dopo averscaricato da Internet e installatol’Arduino Software (IDE), si può crearelo sketch del robot e copiare, almenoper le prime volte, quelli presenti suquesto tutorial. Si presuppone chel’utente abbia anche installato il driverper il riconoscimento di Arduino, comedispositivo seriale COM, anche seconnesso alla porta USB. Lo sketchpuò essere caricato su Arduino

/*­­­­Il Robot rallenta in prossimità di un ostacolo­­­*/int E1 = 5;int M1 = 4;int E2 = 6;int M2 = 7;int analogico;int potenza;void setup()

pinMode(M1, OUTPUT);pinMode(M2, OUTPUT);

void loop()

analogico = analogRead(0);if(analogico<400)

potenza=255;if(analogico>=400 && analogico<600)

potenza=100;if(analogico>=600 && analogico<800)

potenza=50;if(analogico>=800)

potenza=0;digitalWrite(M1, LOW);digitalWrite(M2, LOW);analogWrite(E1, potenza); //PWM Speed ControlanalogWrite(E2, potenza); //PWM Speed Controldelay(10);

Page 13: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 13

premendo l’apposito tasto dell’IDE (untondino con la freccia rivolta a destra)oppure attraverso il menù “Sketch” e lavoce “Carica”. Se l’operazione va abuon fine, il robot deve funzionareimmediatamente. E’ possibile utilizzareanche la combinazione veloce dei tasti<CTRL><U>. E’ ovvio che il listato deveessere esente da errori di sintassi.

Installazione del servoDopo aver opzionalmente provato ilistati, si può adesso montare il servo (ilsuo nome completo è servomotore oservocomando). Esso è un dispositivo,molto usato nel modellismo, ed è statocreato per posizionare, con elevataprecisione, un braccetto o un

ingranaggio ad una certa angolazione.Esso, dunque, non ha finalità dirotazione continua ma limitata ad unmovimento angolare di precisione. Ilservo può essere comandato con unsegnale PWM. Lo chassis offre, comeper tutti gli altri dispositivi, un ampioventaglio di soluzioni per il montaggio.Nell’esempio abbiamo preferitoinstallarlo sulla parte anteriore delrobot, tramite un opportunodistanziatore, come si evince in figura27.

Collegamento del servo adArduinoTutti i servi sono dotati di tre fili: il rossova collegato all’alimentazione (+5V), il

FIGURA 26: LO SKETCH DEL ROBOT PRONTO PER ESSERE CARICATO

Page 14: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 14

nero o marrone alla massa comune e ilgiallo, trasportante il segnale dicomando, a una porta digitale diArduino. Per l’esempio successivo si èscelto di effettuare la connessioneverso la porta numero 2. La figura 28mostra la connessione del servo adArduino, attraverso i jumpermaschio/maschio in dotazione.

Programma dimostrativoper il servoCome esempio di utilizzo del servoproponiamo uno sketch, estremamentedidattico, che apre le porte a qualsiasitipologia di applicazioni con taledispositivo mobile meccanico. Con gliopportuni adattatori e staffe indotazione, abbiamo montato sul servo

una testa di un cagnolino, come visibilein figura 29. Il listato che seguepermette di far effettuare dellerotazioni, a destra e a sinistra al cane,come se stesse guardando in entrambele direzioni. Un’eventuale applicazione,più complessa, potrebbe prevedere ilmovimento della testa nella stessadirezione del robot, come se stesseseguendo la strada durante il suocammino. L’algoritmo utilizza la libreriaapposita per la gestione dei servi, giàdisponibile con l’IDE di Arduino. E’necessario includerla con la direttiva#include <Servo.h>, all’inizio delprogramma. Quindi viene decisa laporta digitale su cui è collegato il servo.Tale libreria crea un oggetto,completamente gestibile tramitefunzioni e metodi. Con il metodo writesi può specificare l’angolo di rotazionedell’albero, compreso tra 0° e 180°. Leapplicazioni di un servo con un robotsono pressoché infinite e solo lafantasia può limitare il campo di azionedella sua sperimentazione. Può essereutilizzato per muovere sensori,lampade, telecamere, ecc. Permovimenti più complessi del servo sipossono utilizzare i cicli “for” e lecondizioni. L’utilizzo delle librerieconsente, indubbiamente, di ottimizzarei tempi di sviluppo e di programmare in

FIGURA 27: MONTAGGIO DEL SERVO SULLO CHASSIS

FIGURA 28: COLLEGAMENTO DEL SERVO ADARDUINO

Page 15: Robot Beginner KIT 4WD ARDUINO UNO - elektrosoft.it Beginner KIT 4WD.pdf · pag. 2 desidera iniziare a operare subito con questa tipologia di dispositivi. La facilità di programmazione

pag. 15

maniera assolutamente semplice. Inogni caso sappiate che laprogrammazione di un servo può ancheavvenire senza l’ausilio di alcunalibreria, agendo direttamente sulpilotaggio a basso livello delle portedigitali. Ciò si effettua usandointensivamente la tecnica del PWM edosando opportunamente la duratadegli impulsi e i relativi duty cycles.

ConclusioniL’esperienza con il Robot Beginner KIT4WD è stata molto appassionante.

Dall’osservazione preliminare delprodotto e dei suoi componenti si ècapito immediatamente che avevamotra le mani un prodotto di qualità, benprogettato in tutti i particolari. Glielementi da montare sonorelativamente pochi e si assemblanocon estrema semplicità. Lo chassis èstato progettato estremamente bene eoffre infinite soluzioni dipersonalizzazione, grazie alla presenzadei numerosi fori e fessure di diversamisura, che consentono il montaggio diqualsiasi dispositivo in varie posizioni.La programmazione del sistema èmolto semplice ed è possibile iniziareda subito la creazione dei primiprototipi. Si consiglia di utilizzare le pilealcaline, e non le batterie economiche,poco adatte per via delle basse correntierogate. Come tutti i dispositivielettronici si deve sempre prestare lamassima cautela nel montaggio enell’utilizzo. Il prodotto ha suscitatogrande interesse di chi scrive, e hadato tanti nuovi spunti e idee per il suointeressante utilizzo. Un apparecchioche, soprattutto, ha dato nuoveopportunità per la realizzazione diprogetti più importanti e sostanziosi.

/*­­­­Il Robot/cane ruota la testa a destra e a sinistra­­­*/#include <Servo.h>int cane = 2;Servo Servo1;void setup()

Servo1.attach(cane);void loop()

Servo1.write(90);delay(1000);Servo1.write(30);delay(1000);Servo1.write(90);delay(1000);Servo1.write(150);delay(1000);

FIGURA 29: ROBOT/CANE CON SERVO PER LAROTAZIONE DELLA TESTA