tutorial arduino

18
Generalitat de Catalunya Depatament d’Educació Programació amb Arduino INS Alexandre Deulofeu

description

Tutorial para iniciarse en la programacion de Arduino

Transcript of tutorial arduino

Generalitat de Catalunya Depatament dEducaci C/ Joaqui m Cus Fortunet, 3 17600 Figueres Tel . 972505674 Fax. 972511530 i esdeul [email protected] http//phobos.xtec.cat/i esdeul ofeu Programaci amb Arduino INS Alexandre Deulofeu 2 Generalitat de Catalunya Depatament dEducaci C/ Joaqui m Cus Fortunet, 3 17600 Figueres Tel . 972505674 Fax. 972511530 i esdeul [email protected] http//phobos.xtec.cat/i esdeul ofeu Contingut Programaci amb Arduino ........................................................................................................1 Arduino UNO ............................................................................................................................3 Programari ................................................................................................................................3 Com fer un programa? ..............................................................................................................4 Exercici 1. Intermitncia dun LED .............................................................................................5 Exercici 2. Connexi duna entrada digital .................................................................................6 Exercici 3. Sortida PWM (1) .......................................................................................................7 Sortida PWM (2). Leds RGB .......................................................................................................9 Exercici 4. Entrada amb potencimetre ................................................................................... 10 Exercici 5. LED intermitent segons la llum ambient.................................................................. 11 Exercici 6. Interruptor crepuscular .......................................................................................... 12 Exercicici 7. Melodia ............................................................................................................... 13 Exercici 8. Alarma a la finestra................................................................................................. 14 Exercici 9. Sensor de temperatura LM35 ................................................................................. 15 Exercici 10. Sortides de gran consum ...................................................................................... 16 Bibliografia i referncies ......................................................................................................... 17 ARDUBOT................................................................................................................................ 18 3 Generalitat de Catalunya Depatament dEducaci C/ Joaqui m Cus Fortunet, 3 17600 Figueres Tel . 972505674 Fax. 972511530 i esdeul [email protected] http//phobos.xtec.cat/i esdeul ofeu Arduino UNO La placa Arduino Uno basa el seu funcionament en el xip ATMEGA 382P. La placa t les segents caracterstiques: 14 entrades/sortides digitals 6 sortides analgiques (motors, brunzidors, LEDS) 6 entrades analgiques (sensors) La placa, pot ser alimentada entre 5 i 12 V. Programari Per realitzar els programes es poden utilitzar diversos programes : Arduino IDE. s el que sutilitza en aquest dossier. Pot ser descarregat a http://www.arduino.cc Eclipse. s un programa que permet utilitzar diversos llenguatges de programaci. Es pot descarregar a http://www.eclipse.org/downloads/ El llenguatge de programaci que sutilitza s el C++. 4 Generalitat de Catalunya Depatament dEducaci C/ Joaqui m Cus Fortunet, 3 17600 Figueres Tel . 972505674 Fax. 972511530 i esdeul [email protected] http//phobos.xtec.cat/i esdeul ofeu Com fer un programa? Pas 1. Obrir el programa Arduino IDE Pas 2. Escriure el programa Tots els programes han de tenir dues funcions : Void setup() : Serveix per configurar la placa, declaraci dentrades i sortides, Void loop () : s on hi ha el programa que la placa ha dexecutar de forma cclica. Pas 3. Compilar Serveix per comprovar que el programa no t errors. Heu de prmer aquest bot. Pas 4. Carregar el programa a la placa Amb la placa connectada a lordinador, premeu el bot. 5 Exercici 1. Intermitncia dun LED Descripci : Dissenyar i muntar una aplicaci per fer que un LED faci una intermitncia. Programa : Ampliaci : Feu el programa del fams Knight Rider. Tenia un frontal amb uns LEDS de color vermell intens, que sencenien i apagaven donant sensaci de moviment. Poseu noms 4 o 5 LEDS. 6 Exercici 2. Connexi duna entrada digital Descripci : Amb un polsador (D3) activem un LED (D2), que fa una intermitncia i llavors sapaga. Programa : Cal posar una resistncia de 10K per fer que amb : Polsador obert Pin3 = 0 (0 V) Polsador tancat Pin3 = 1 (5 V ) Si no posssim la resistncia, quan es prems linterruptor es provocaria un curtcircuit. Cal posar una resistncia de 10K per fer que amb : Polsador obert Pin3 = 0 (0 V) Polsador tancat Pin3 = 1 (5 V ) Si no posssim la resistncia, quan es prems linterruptor es provocaria un curtcircuit. 7 Exercici 3. Sortida PWM (1) Descripci : El PWM (Pulse Width Modulation) s una tcnica que permet variar el valor duna sortida, de forma que pot anar de 0 (0V) fins a 255 (5V). s molt til quan es vol variar la intensitat dun LED,la velocitat dun motor o el to dun brunzidor. Programa :Muntatge : Varieu el valor 70, posant de 0 a 255 i observeu la diferncia en el LED. 8 Acontinuacihihaunavariacidaquestprograma,queintrodueixlestructurafor.Estractadunbuclequeesrepetirunnombrefinitdevegades,iensservirper incrementar i decrementar una variable, que far variar la llum del LED.El PWM noms es pot fer servir amb les sortides marcades amb el smbol ~. Programa : 9 Sortida PWM (2). Leds RGB Programa: 10 Exercici 4. Entrada amb potencimetre Descripci : Es tracta de connectar una resistncia variable (potencimetre) a una entrada analgica, i variar un valor amb el qual variem la llum dun LED.Programa: Llegim el valor del potencimetre, i ho posem a la sortida del LED.Important. Les entrades analgiques shan de connectar als pins A0,A1 11 Exercici 5. LED intermitent segons la llum ambient Descripci : Es vol controlar lactivaci i desactivaci dun LED segons el nivell de llum de lhabitaci. Aquest nivell de llum s captat per una LDR. El LED fa una intermitncia, i a menys llum, ms rpida far aquesta intermitncia. Programa : Aquestprogramafarunaintermitncia,oneltempsdeonioffdelledpodenserdesde0msfinsa1024ms.Espodriamodificarelvalorllum,ambunaoperaci matemtica: 12 Exercici 6. Interruptor crepuscular Descripci : Es vol controlar lactivaci i desactivaci dun LED segons el nivell de llum de lhabitaci. Aquest nivell de llum s captat per una LDR.Programa : 13 Exercicici 7. Melodia Feu un programa que toqui una melodia. Cal declarar el buzzer com a OUTPUT, i fer servir la instrucci tone() per tocar les notes. 14 Exercici 8. Alarma a la finestra Descripci : Les ampolles reed tenen un contacte NO que es tanca quan hi ha un iman aprop . Feu un programa que faci sonar una alarma (tone) si la finestra est oberta. Connecteu lampolla reed a lentrada 12, i el brunzidor a la sortida 9.Programa: 15 Exercici 9. Sensor de temperatura LM35 Programa : El sensor dna 10mV /C. La funci analogRead() llegir el valor entre 0 i 1023, que signifiquen entre 0 i 5000 mV. El sensor es connecta directament a lentrada A0. Per veure la temperatura de lhabitaci aneu a Herramientas Monitor Serial 16 Exercici 10. Sortides de gran consum Quan a les sortides hi ha connectats elements que poden consumir ms de 100 mA, cal fer servir transistors. Utilitzant el segent muntatge, feu un programa que faci una intermitncia dels 4 leds alhora. 17 Bibliografia i referncies Referncies sobre Arduino www.arduino.cc www.arduino.cc/playground Llibres sobre Arduino Banzi, Massimo. Getting started with Arduino. Editorial OReilly. Riley, Mike. Programming your home. Editorial The pragmatic programmers. Monk, Simon. 30 Arduino projects for the evil genius. Editorial Mc Graw Hill. Evans, Brian. Beginning Arduino programming. Editorial Apress. Karvinen, Kimmo and Tero. Arduino Bots and Gadgets. Editorial OReilly. Ramos, Enrique. Arduino and Kinect projects. Editorial Apress.Webs de projectes http://www.instructables.com/ http://littlebirdelectronics.com/ http://blog.bricogeek.com/ http://tronixstuff.wordpress.com/ 18 ARDUBOT.