robot zone ➲ robot zone di ADRIANO GANDOLFO ArduinoBOT (parte terza) COSTRUZIONE e collaudo del robot Nei due precedenti articoli abbiamo presentato il progetto del robot ArduinoBOT e analizzato le principali schede elettroniche che lo compongono. Passiamo ora al montaggio vero e proprio del robot con la verifica, mediante apposti programmi, delle varie parti. Nel prossimo e conclusivo numero costruiremo la base di controllo e doteremo il robot del programma definitivo Figura 1: ArduinoBOT. 94 Figura 2: posizionamento dei particolari di ArduinoBOT. V edremo in quest’articolo come assemblare il robot ArduinoBOT (figura 1) e, con l’utilizzo di alcuni programmi verificheremo anche che i collegamenti elettrici siano corretti. La costruzione è suddivisa in varie fasi, alcune di queste prevedono l’utilizzo di attrezzi come un trapano (possibilmente a colonna) e relative punte, un cacciavite, una pinza, una forbice da elettricista, pinzette, saldatore e stagno per le saldature. COMPONENTI DEL ROBOT ARDUINOBOT Nel disegno di figura 2 possiamo osservare i vari componenti che formano il robot ArduinoBOT. SCHEMA DEL ROBOT Nella figura 3 è riportato lo schema elettrico del robot; su di esso sono riportati tutti i collegamenti elettrici tra le varie componenti. I collegamenti tra le schede in realtà sono ottenuti con pin-strip (figura 4). Per il controllo dei motori sono utilizzate solo alcune porte della scheda Arduino. tensione della batteria a quella necessaria all’alimentazione della telecamera. Una volta procurata la scatola, dovremo eseguire su di essa i fori e le feritoie necessarie, come riportato nella figura 4. PREPARAZIONE DEL TELAIO DI BASE Il telaio base del robot è realizzato utilizzando una semplice scatola di derivazione per impianti elettrici, in questo caso il modello 685.005 della ditta SCAME. Si potrà utilizzare, in alternativa, il modello 685.205 che si differenzia dal primo per avere le pareti lisce senza i fori passacavo. Le sue dimensioni sono 120 x 80 x 50 cm ed è di colore grigio. Essendo realizzata in materiale plastico, la scatola è facilmente lavorabile e su di essa è possibile realizzare le varie aperture per il fissaggio del servo del dispositivo di Pan & Tilt, motoriduttori, ball caster, interruttore di accensione ecc. Nel vano interno (figura 5) troveranno posto la batteria di alimentazione, le morsettiere di collegamento e il circuito che eleva la FISSAGGIO DEI MOTORIDUTTORI ArduinoBOT è mosso da due motoriduttori (figura 7) tipo Gear Motor 2 - 224:1 Offset Shaft prodotti da Solarbotics. L’albero di uscita ha un diametro di 7 millimetri ed è realizzato in doppio piatto. Il motoriduttore è fornito di una frizione che entra in funzione a 0,43 Nm, evitando il blocco dell’albero. È inoltre fornito di fori di fissaggio per viti. Prima di procedere al montaggio sul telaio (figura 10) è necessario eseguire alcuni collegamenti elettrici (figura 8). Per ridurre le interferenze con la circuiteria elettronica causate dallo scintillio, dovuto allo sfregamento delle spazzole del motore elettrico sul collettore, è necessario saldare tre condensatori ceramici (o meglio 95 robot zone ➲ robot zone Figura 3. schema del robot. poliestere) da 100 nF, uno tra positivo e carcassa, uno tra negativo e carcassa e uno tra positivo e negativo. Nella figura 5 è visibile lo schema di collegamento dei condensatori utilizzati come filtri antidisturbo. Si passerà quindi al fissaggio della staffetta appositamente pensata per il modello di motoriduttore, codice GMB28. Una volta forato il telaio, si monteranno i due motoriduttori. VERIFICA DELLE CARATTERISTICHE DEL MOTORIDUTTORE Dal sito del produttore possiamo ricavare i dati caratteristici dei motoriduttori GM2. Il dato più importante riguarda il valore della coppia. Questo è, per la rotazione, l’equivalente della forza per lo spostamento lineare. Per spingere un contenitore, più forza si impiega e più accelerazione avrà il contenitore. Lo stesso vale per una ruota: più coppia si ap- PER approfondire... - http://www.arduino.cc/ - Sito del produttore della scheda Arduino, dove trovare informazioni sulla scheda e scaricare l’ambiente di sviluppo - http://arduino.cc/playground/MotorControlShieldV3/0 - Informazioni sulla scheda controllo motori. - http://www.dfrobot.com/ - Sito del produttore della I/O Expansion Shield. - http://www.solarbotics.com/ - Sito del produttore dei motoriduttori. - http://www.lynxmotion.com - Sito di Lynxmotion per il dispositivo Pan & Tilt. - http://www.pololu.com/ - Sito del produttore del modulo DC/DC. - http://www.digi.com/ - Sito del produttore dei moduli Xbee. - http://arduino.cc/en/Reference/Servo - Libreria servo. - http://www.nchsoftware.com/capture/index.html - Programma di videocattura. 96 plica e più la ruota avrà accelerazione. La coppia di stallo (Stall Torque, in inglese), rappresenta la coppia massima che può fornire il motore. In questo caso, però, il motore è fermo, e vale per il nostro motore 4,1 kg*cm. Il dato necessario è la coppia nominale (rated torque) che è, all’incirca, la massima coppia che assicura un funzionamento continuo del motore senza problemi (in questo caso il valore non è riportato). Possiamo considerare la formula approssimativa che indica il valore di coppia nominale pari alla metà della coppia di stallo. Coppia nominale = Coppia di stallo / 2 (che per il nostro riduttore è uguale a 2 kg*cm). La spinta disponibile sulla ruota fornita da ogni riduttore sarà pari a: F = Coppia / raggio = 2/3,25*2 = 1,23 kg Dobbiamo però considerare la presa delle gomme, che su un fondo solido permette al massimo una spinta pari al peso del robot moltiplicato per il coefficiente d’attrito, che si può considerare mediamente 0,75. Considerando il peso del nostro robot di 0,75 Kg, la spinta massima sarà pari a 0,75*0,75 = 0,56 kg, da cui si deduce che la potenza fornita dai riduttori è più che sufficiente. Per quanto riguarda la velocità del robot, occorre calcolarne la velocità periferica: quest’ultima è quella di un punto che si trova sulla circonferenza di raggio più grande. Per definizione la velocità è il rapporto fra lo spazio S percorso e il tempo t impiegato a percorrerlo. Un punto che percorre un’intera circonferenza copre uno spazio pari a 2 π r; se percorre n circonferenze, lo spazio è 2 π r n; se il tempo impiegato è di sessanta secondi, la velocità sarà data dalla formula seguente: Nel nostro caso essa vale 14,4 cm/s pari a 0,5 km/h. Altro dato che possiamo ricavare è che, per ogni giro della ruota, viene percorsa una distanza pari a d = 2*π *r = 6,28 * 3,25 = 26,4 cm. RUOTE Le ruote del robot hanno un diametro di 65 mm (figura 11), sono realizzate in ABS stampato e prodotte da Solarbotics (codice GMPW). Queste si adattano perfettamente all’albero di uscita del motoriduttore Gear Motor 2. Per il montaggio si dovrà solo inserire la ruota sull’albero del motoriduttore e avvitare la vite fornita con la ruota con un cacciavite con impronta a stella, evitando di stringere troppo, con il rischio di rompere l’albero motore. Si monteranno poi gli speciali elastici, sempre forniti con la ruota, con la funzione di aumentare la trazione e ridurre l’usura della ruota stessa. SUPPORTO POSTERIORE Il supporto posteriore è rappresentato da una ball caster codice 70144 prodotta da Tamiya. Nella confezione sono presenti i particolari (figura 12) per realizzare il supporto con un’altezza variabile compresa tra 11 e 35 mm. Nel nostro robot dovremmo ancora aumentare quest’altezza, utilizzando distanziali metallici esagonali M/F 3 MA x L = 10 mm. Per il montaggio del supporto si potranno seguire le istruzioni riportate nella figura 6. BATTERIA DI ALIMENTAZIONE La batteria è alloggiata nella base del robot (figura 5). È di tipo NI-MH dimensione 2/3 A, tensione nominale 6 V, con una capacità minima di 1.100 mAh. Per la ricarica della batteria sarà necessario avere un apposito caricabatteria. Per questa operazione è prevista una presa di alimentazione femmina da pannello dotata di un interruttore il quale, quando è inserito lo spinotto del caricabatteria, sconnette la batteria dal circuito del robot. CONVERTITORE DC/DC Figura 4: disegno con foratura del telaio base. Per alimentare la telecamera presente sul robot occorre elevare la tensione da 6 a 8 V. Per questo viene utilizzato un miniconvertitore DC/DC prodotto da Pololu (codice 791), dalle dimensioni particolarmente ridotte in grado di convertire una tensione continua compresa tra 1,5 e 16 volt in una tensione di uscita compresa tra i 2,5 a 9,5 volt (regolabile tramite trimmer). Per il montaggio all’interno del telaio del robot è possibile realizzare un piccolo circuito stampato il cui disegno è scaricabile dal sito della rivista, oppure utilizzare un ritaglio di basetta millefori dove è presente un connettore per il convertitore e due morsettiere per il collegamento. Alla morsettiera IN andranno collegati i cavi provenienti dalla batteria, mentre alla morsettiera OUT i cavi verso il connettore che alimenterà la batteria. Sul convertitore occorrerà impostare la tensione in uscita sul valore necessario al modello scelto della telecamera. Per fare questo si regolerà il trimmer presente sul circuito misurandone la tensione con un multimetro digitale. 97 robot zone ➲ robot zone LISTATO 1 Il programma Test_Pan-Tilt-ArduinoBOT.pde /* Test_Pan-Tilt-ArduinoBOT.pde Il programma permette il test del dispositivo Pan & Tilt del robot ArduinoBOT */ #include <Servo.h> const int servo1 = 3; // Servo TILT const int servo2 = 9; // Servo PAN const int joyV = 5; // Joystick TILT const int joyH = 4; // Joystick PAN int servoVal; // variabile per la lettura valore Servo servo_pan; // crea l’oggetto servo per controllarlo Servo servo_tilt; // crea l’oggetto servo per controllarlo void setup() { // Servo servo_pan.attach(servo1); servo_tilt.attach(servo2); // Inizialize Serial Serial.begin(9600); } // attribuisce il servo // attribuisce il servo void loop(){ // Visualizza i valori del Joystick outputJoystick(); // Legge il valore orizzontale (valore compreso tra 0 e 1023) servoVal = analogRead(joyH); servoVal = map(servoVal, 0, 1023, 20, 80); // scala il valore (risultato compreso tra 20 e 80) servo_tilt.write(servoVal); // imposta la posizione del servo in base al valore in scala // Legge il valore verticale (valore compreso tra 0 e 1023) servoVal = analogRead(joyV); servoVal = map(servoVal, 0, 1023, 30, 130); // scala il valore (risultato compreso tra 30 e 130) servo_pan.write(servoVal); // imposta la posizione del servo in base al valore in scala delay(15); // Attesa per portare i servo in posizione } // Mostra il valore dei joystick void outputJoystick(){ Serial.print(analogRead(joyH)); Serial.print (“—-“); Serial.print(analogRead(joyV)); Serial.println (“—-“); } 98 Fase 4 Nella quarta fase di montaggio si potrà fissare la telecamera, al particolare 2, utilizzando due viti. Potrà essere scelto qualunque modello di telecamera per videosorveglianza, il cui costo completo di ricevitore si aggira intorno a 70 euro. Fase 5 Figura 5: saldatura dei condensatori antidisturbo. DISPOSITIVO PAN & TILT PER TELECAMERA Il dispositivo Pan & Tilt per la telecamera potrà essere del tipo commerciale, oppure si potrà optare per l’autocostruzione. Se si sceglie il modello commerciale come il tipo BPT-KT prodotto da Lynxmotion, (nel kit sono già compresi i due servomotori) si seguiranno le istruzioni allegate. Se invece si vuole seguire l’autocostruzione, è possibile utilizzare i particolari visibili nella figura 7, realizzando un dispositivo il cui schema è riportato nella figura 8. Per la rotazione si potranno utilizzare servomotori Futaba modello S148. Costruzione della parte meccanica Passiamo quindi alla costruzione: prima di tutto dovremmo realizzare i due particolari meccanici necessari, numerati con 1 e 2, seguendo i disegni di figura 9. Gli attrezzi necessari sono: un seghetto da ferro, un trapano (possibilmente a colonna), punte da trapano di diverso diametro, una lima per smussare gli spigoli, un cacciavite a taglio e uno a croce, una pinza per il montaggio. • 1 vite testa cilindrica M5x10 (cerniera di rotazione); • 8 viti autofilettanti ø 2 mm (fornite con servomotore). Per il montaggio ci si aiuterà con un cacciavite a taglio, uno a croce e una pinza. Fase 1 In questa prima fase si fissa il particolare 1 al servomotore del movimento PAN utilizzando quattro autofilettanti ø 2 mm. Fase 2 Nella seconda fase, si fissa il servomotore TILT mediante quattro viti M3x10 complete di rondelle e dadi. Fase 3 Nella terza fase si monta il particolare 2 fissandolo da un lato al servomotore TILT con quattro autofilettanti ø 2 mm e la vite M5X10 da un lato, e dado antisvitamento dall’altro lato. Nella quinta fase monteremo il dispositivo Pan & Tilt sul telaio, utilizzando l’apposita feritoia C (figura 4) creata allo scopo, fissando il servomotore del movimento PAN mediante quattro viti M3x10 complete di rondelle e dadi. Il cavo del servomotore dovrà essere fatto passare attraverso la feritoia B e connesso alla scheda di controllo. SCHEDA DI CONTROLLO La scheda di controllo che potrà essere una Arduino Duemilanove oppure l’ultima nata, Arduino UNO, basata sul processore ATmega 328. La scheda presenta 14 piedini input/output digitali (di cui sei utilizzati come uscite PWM), 6 input analogici, un oscillatore al quarzo da 16 MHz, una connessione USB, un ingresso per l’alimentazione. Per il montaggio si fisseranno prima di tutto tre distanziali metallici esagonali M/F 3 MA x L = 10 mm (quattro nel caso di una scheda Arduino UNO), che andranno alloggiati nei fori A (figura 4). Si fisserà poi la scheda ai distanziali con viti a testa cilindrica M3x5. Una volta realizzati i particolari, si potranno verniciare con una bomboletta di smalto sintetico, magari di colore nero opaco satinato. Per le istruzioni attenersi a quelle indicate sulla bomboletta stessa. Si passerà poi al montaggio vero e proprio utilizzando i particolari e la minuteria necessaria: • 4 viti testa cilindrica M3x10 (fissaggio servomotore TILT); CODICE MIP 2813763 Assemblaggio del dispositivo 99 robot zone ➲ robot zone connettori. Una volta fatta la modifica sarà sufficiente montare la scheda sulla sottostante scheda Arduino. MODULO XBEE Per la comunicazione con l’unità trasmittente è utilizzato un modulo Xbee. Questi moduli sono prodotti da Digi International Inc. e sfruttano il protocollo ZigBee operando nella banda ISM alla frequenza di 2,4 GHz. Implementano una comunicazione seriale come quella presente sulla porta RS232 e permettono di compiere collegamenti wireless. Possibilmente i moduli dovranno appartenere alla stessa serie in quanto i moduli della Serie 1 sono compatibili con serie PRO, ma quelli della serie 2 sono compatibili tra di loro ma non con la serie 1 e la PRO. Per il montaggio sarà sufficiente inserire il modulo nell’apposito zoccolo previsto allo scopo, seguendo il giusto orientamento. In questa fase provvederemo anche a collegare i connettori dei servomotori Pan & TILT alla scheda con il connettore del servomotore PAN connesso alla porta 9 e il connettore del servomotore TILT collegato alla porta 3. Figura 6: schema di montaggio COLLAUDO DISPOSITIVO PAN & TILT Figura 7: componenti del dispositivo Pan & Tilt autocostruito. SCHEDA DI CONTROLLO SERVO/COMUNICAZIONE Per la connessione dei servo del sistema Pan & Tilt della telecamera e per il collegamento alla stazione remota tramite modulo Xbee si utilizza una scheda I/O Expansion Shield V5 prodotta da DFRobot. La scheda è fornita con i connettori di collegamento alla scheda Arduino di tipo 100 maschio non passanti, mentre per permettere l’impilamento delle schede è necessario dotarla di strip di tipo maschio/femmina da 6/8 vie. Questi presentano un corpo plastico alto 8,5 mm, e una lunghezza dei pin di 15 mm. Per compiere la modifica occorrerà pertanto dissaldare gli attuali connettori curando di non surriscaldare e sostituirli con i nuovi Prima di procedere nel montaggio possiamo collaudare il funzionamento del dispositivo Pan & Tilt. Per fare questo possiamo collegare alla porta I2C della scheda I/O expander un piccolo joystick molto simile a quello presente sul controller della PS2 (PlayStation 2). I movimenti direzionali sono semplicemente due potenziometri – uno per ogni asse, del valore di 10 k . Questo joystick ha anche un pulsante di selezione che viene azionato quando il joystick è premuto, funzione che però non è utilizzata in questo programma. Considerando lo schema di figura 11, vediamo che le variazioni di resistenza portano a variazioni di tensione le quali vengono lette dalle porte analogiche di Arduino e convertite in valori che azioneranno i servomotori. Per la prova si connetterà l’alimentazione alla scheda e si caricherà il programma CODICE MIP 2817188 robot zone ➲ robot zone LISTATO 2 Il programma Test_motori_ArduinoBOT.pde /* Test_motori_ArduinoBOT.pde Il programma ha il compito di verificare il funzionamento della MOTOR CONTROL 3.0 */ int E1 = 11; //M1 Speed Control int E2 = 10; //M2 Speed Control int M1 = 13; //M1 Direction Control int M2 = 12; //M2 Direction Control void setup(void) { int i; for(i=10;i<=13;i++) pinMode(i, OUTPUT); Serial.begin(9600); } void loop(void) { int leftspeed = 255; //255 é la massima velocitàd int rightspeed = 255; { //Move Forward forward (leftspeed,rightspeed); delay (2000); //Move Backwards reverse (leftspeed,rightspeed); delay (2000); //Turn Left left (leftspeed,rightspeed); delay (2000); //Turn Right right (leftspeed,rightspeed); delay (2000); } } void forward(char a,char b) { analogWrite (E1,a); digitalWrite(M1,LOW); analogWrite (E2,b); digitalWrite(M2,LOW); } void reverse (char a,char b) { analogWrite (E1,a); digitalWrite(M1,HIGH); analogWrite (E2,b); digitalWrite(M2,HIGH); } void left (char a,char b) { analogWrite (E1,a); digitalWrite(M1,HIGH); analogWrite (E2,b); digitalWrite(M2,LOW); } void right (char a,char b){ analogWrite (E1,a); digitalWrite(M1,LOW); analogWrite (E2,b); digitalWrite(M2,HIGH); } 102 satori e i diodi, controllandone l’orientamento se questi sono polarizzati. Si potrà quindi procedere con i pin-strip per il collegamento con le altre schede. Terminata la saldatura, si potranno inserire gli integrati IC1 e IC2 negli appositi zoccoli, facendo attenzione alla tacca di riferimento. Installazione della scheda sul robot Possiamo adesso installare la scheda sul robot. Per distanziarla dalla scheda sottostante utilizzeremo alcune strip di tipo maschio/femmina da 6/8 vie. Ne occorreranno due a 8 pin e una a 6 pin. Una volta installata la scheda potremo connettere il connettore collegato ai motori. COLLAUDO SCHEDA MOTORI Prima di procedere nel montaggio del robot, possiamo collaudare il funzionamento della scheda motori. Per la prova si caricherà il programma Test_motori_ArduinoBOT.pde scaricabile dal sito di Fare Elettronica (listato 2). È possibile vedere l’applicazione del programma guardando il filmato presente a questo indirizzo: http://youtu.be/Ramy6iiLuhI MONITOR PER LA CARICA DELLA BATTERIA Figura 8: dispositivo Pan & Tilt di tipo commerciale o autocostruito. Test_Pan-Tilt-ArduinoBOT.pde scaricabile dal sito di Fare Elettronica (listato 1). Per il funzionamento occorre che sia presente la libreria SERVO. Per un funzionamento corretto occorrerà variare il valore di scala per fare in modo che le variazioni del joystick siano entro il range di rotazione del dispositivo e che con il joystick in posizione neutra la telecamera sia posta in asse con il robot e in posizione verticale. È possibile vedere l’applicazione del programma guardando il filmato presente a questo indirizzo: http://youtu.be/TgEljjUP9Ys. SCHEDA MOTORE La scheda per il controllo dei motori è la Motor Control v 3.0. Attualmente è fuori produzione ma non dovrebbe essere dif- ficile trovarne ancora, cercando in Rete. La scheda, il cui schema generale è riportato nella figura 12, permette il pilotaggio di due motori o di un motore passo-passo. È inoltre presente un circuito per il controllo di un encoder per rilevare la rotazione del motore. Questa parte del circuito non è però utilizzata nel robot ArduinoBOT e i componenti che la formano potranno non essere montati. Realizzazione pratica della scheda Una volta procurato il circuito stampato si procederà al posizionamento e alla saldatura dei componenti seguendo lo schema visibile nella figura 13. Per la saldatura si utilizzerà un piccolo saldatore a punta fine, della potenza di circa 25-30 W. Si inizierà dalle resistenze, proseguendo con gli zoccoli degli integrati, i conden- Per il monitoraggio della carica della batteria è presente un piccolo circuito il quale, tramite l’accensione di LED, indica quando è il momento di ricaricarla. Il dispositivo utilizzato presenta un selettore del voltaggio della tensione della batteria che dovrà essere posto su 6,0 V. Per quanto riguarda le indicazioni della carica, i sette LED presenti sono suddivisi in tre zone. Perfect, la batteria è carica; Good, la batteria è carica ma non completamente; Low Batt, la batteria è scarica e va ricaricata. Per il fissaggio del dispositivo, questo è dotato di un biadesivo. Andrà semplicemente rimossa la copertura di protezione e fissato al corpo del robot. Per quanto riguarda il collegamento elettrico, il dispositivo sarà semplicemente connesso alla morsettiera. L’AMBIENTE DI SVILUPPO L’ambiente di sviluppo Arduino, di cui attualmente è disponibile la versione 0023, contiene un editor di testo per scrivere il codice, una zona messaggio, una console 103 robot zone ➲ robot zone Figura 9: disegno dei particolari. di testo, una barra degli strumenti con pulsanti per le funzioni comuni e una serie di menu. Esso permette di collegarsi all’hardware Arduino per caricare i programmi e comunicare con questo. I programmi scritti per Arduino si chiamano sketch. Questi sketch sono scritti nell’editor di testo, che permette operazioni di taglia/incolla e di ricerca/sostituzione di testo. L’area messaggi fornisce un feedback durante il salvataggio e l’esportazione e anche la segnalazione degli eventuali errori. I pulsanti della barra degli strumenti consentono di verificare e aggiornare programmi, creare, aprire, salvare, e utilizzare il serial monitor. Altri comandi si trovano all’interno di cinque menu: File, Edit, Sketch, Tools, Help. I menu sono sensibili al contesto, ciò significa che si riferiscono solo agli ele104 menti pertinenti alle azioni in corso. Tra gli altri sono disponibili: Menu File New: crea un nuovo sketch. Stessa operazione con CTRL + N. Open: apre uno sketch esistente. Stessa operazione con CTRL + O. Sketchbook: permette l’accesso alla cartella in cui sono salvati di default i programmi. Example: permette di caricare programmi di esempio inerenti ai comandi base e delle varie librerie caricate. Close: chiude lo sketch. Stessa operazione con CTRL + W. Save: salva lo sketch. Stessa operazione con CTRL + S. Save As…: permette di salvare lo sketch con un altro nome. Stessa operazione con CTRL + Maiuscolo+S. Upload to I/O Board: compila il codice e Figura 10: installazione della telecamera. lo carica nella scheda Arduino. Stessa operazione con CTRL + U. Page Setup: imposta i parametri della pagina per la successiva stampa come: margini, formato carta, orientamento. Stessa operazione con CTRL + Maiuscolo + P. Print: permette la stampa del listato del programma. Stessa operazione con CTRL + P. Preferences: permette di impostare alcuni parametri del programma quali la posizione della cartella di default per il salvataggio dei programmi. Stessa operazione con CTRL + tasto virgola. Quit: permette l’uscita dall’editor. Stessa operazione con CTRL + Q. Menu Edit Undo: annulla l’ultima operazione compiuta sul codice. Stessa operazione con CTRL + Z. Redo: ristabilisce l’ultima operazione Figura 11: schema di collegamento. compiuta sul codice nel caso in cui sia stata annullata tramite il tasto Undo. Stessa operazione con CTRL + Y. Cut: la parte di testo selezionata Stessa operazione con CTRL + Z. Copy: copia negli appunti la parte di co- dice selezionata. Stessa operazione con CTRL + C. Copy for Forum: copia il codice dello sketch negli appunti, adatto per postare sul forum, mantiene la colorazione della sintassi. Stessa operazione con CTRL + Figura 12: schema generale della Shield Motor Control. 105 robot zone ➲ robot zone Board: permette di selezionare il tipo di scheda che si sta utilizzando. Serial Port: questo menu contiene tutti i dispositivi seriali (reali o virtuali) presenti sul PC. Esso è aggiornato automaticamente ogni volta che si apre il menu di primo livello degli strumenti. Burn Bootloader: gli elementi di questo menu consentono di scrivere un bootloader sul microcontroller della scheda Arduino. Questo non è richiesto per il normale utilizzo di una scheda Arduino, ma è utile se si acquista un nuovo ATmega. COLLAUDO SISTEMA DI TRASMISSIONE VIDEO Figura 13: disposizione dei componenti. Maiuscolo + C. Copy as HTML: copia il codice dello sketch negli appunti come HTML, adatto per l’inclusione nelle pagine web. Stessa operazione con CTRL + Alt + C. Paste: incolla il contenuto degli appunti nella posizione del cursore. Stessa operazione con CTRL + V. Selec All: seleziona tutto il codice e lo copia all’interno degli appunti. Stessa operazione con CTRL + A. Comment/Uncomment: permette di trasformare parte del codice in un commento e viceversa, escludendolo dalla compilazione. Increase Indent: incrementa l’indentazione (o indentatura), ciò inserisce una certa quantità di spazio vuoto all’inizio di una riga di testo per favorire la comprensione del codice. Decrease Indent: diminuisce l’indentazione. Find…: ricerca una parola all’interno del codice, permette anche la sostituzione della parola cercata con un’altra. Stessa operazione con CTRL + F. Find Next: continua la ricerca con la parola inserita precedentemente. Stessa operazione con CTRL + G. 106 Menu Sketch Verify/Compile: controlla se ci sono errori nello sketch. Stessa operazione con CTRL + R. Stop: arresta la compilazione del codice. Show Sketch Folder: apre la cartella sketch sul desktop. Stessa operazione con CTRL + K. Import Library: aggiunge una libreria per lo sketch con l’inserimento dell’istruzione # include. Add File... : aggiunge un file di origine per lo sketch che sarà copiato dalla posizione corrente. Terminato il montaggio del robot possiamo passare al collaudo del sistema di trasmissione video.Per fare questo dovremo collegare il ricevitore, direttamente a un televisore oppure, tramite un’interfaccia, a un PC. Per la registrazione di quanto ripreso dalla telecamera è possibile utilizzare qualunque programma di videocattura che può essere trovato in Rete. Uno di questi è il programma Debut Video Capture di NCH Software, che permette di registrare video da una webcam o da altri dispositivi collegati. È sufficiente collegare il convertitore al PC al computer e Debut Video Capture rileverà la telecamera, mostrandone il segnale. È possibile registrare in vari formati, come AVI, WMV, ASF, MPG, MP4, o formati per dispositivi portatili come iPod o PSP. È possibile inoltre modificare il colore delle immagini e anche inserire testi. Debut Video Capture è in licenza gratuita per uso personale. Menu Tools Auto Format: il comando permette di migliorare la leggibilità del codice. Stessa operazione con CTRL + T. Archive Sketck: permette di creare un archivio compresso (*.zip) del codice del programma. Fix Encoding & Reloaded: aggiorna il codice con la corrente versione di editor e ricarica il codice. Serial monitor: visualizza i dati seriali inviati dalla scheda Arduino (USB o scheda seriale). Stessa operazione con CTRL + Maiuscolo + M. CONCLUSIONI In questa terza parte abbiamo montato e collaudato il nostro ArduinoBOT. Nel prossimo articolo procederemo al montaggio della stazione di controllo con il caricamento dei programmi di controllo. E possibile vedere alcuni filmati preliminari del robot pubblicati su YouTube: http://youtu.be/wO20bwAAkk8 http://youtu.be/TgEljjUP9Ys http://youtu.be/Ramy6iiLuhI ❏ CODICE MIP 2817225