Difference between revisions of "Arduino-Polsador amb LED"

From Edutec Wiki
Jump to: navigation, search
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
  
El repte de l’activitat és iniciar-se  en la programació de la placa Arduino a través del software d'Scratch for Arduino (S4A) mitjnaçant una pràctica senzilla, d’encendre un LED a través de prémer un polsador. 
+
Una activitat per a iniciar-se a la programació de la placa [[Introducció_a_Snap4Arduino#Arduino|'''Arduino''']] a través del programari d'[[Introducció_a_Snap4Arduino|'''Snap4Arduino''']] pot ser encendre un llum LED quan es premi un interruptor o polsador.
  
 
== Material ==
 
== Material ==
  
En aquesta pràctica farem ús del següent material:
+
En aquesta pràctica es farà ús del següent material:
  
 
{| class="wikitable" style="width: 272px"
 
{| class="wikitable" style="width: 272px"
 
|-
 
|-
 
| [[File:Nano.jpg|100x100px|RTENOTITLE]]
 
| [[File:Nano.jpg|100x100px|RTENOTITLE]]
| style="width: 163px" | Placa Arduino Nano
+
| style="width: 163px" |  
 +
Placa electrònica      Arduino Nano
 +
 
 
|-
 
|-
 
| [[File:Arduino nano shield.jpg|100x100px|Arduino nano shield.jpg]]
 
| [[File:Arduino nano shield.jpg|100x100px|Arduino nano shield.jpg]]
| style="width: 163px" | Placa Shield
+
| style="width: 163px" | Targeta d'expansió
 
|-
 
|-
 
| [[File:RC.jpg|100x100px|RTENOTITLE]]
 
| [[File:RC.jpg|100x100px|RTENOTITLE]]
Line 26: Line 28:
 
| style="width: 163px" | LED
 
| style="width: 163px" | LED
 
|}
 
|}
 +
 +
== Desenvolupament  ==
 +
 +
=== Connexió de la placa electrònica ===
 +
 +
La placa Arduino ha de tenir instal.lat el firmware necessari per treballar amb Snap4Arduino. El procediment de càrrega es troba indicat [http://wiki.edutec.citilab.eu/index.php/Introducció_a_Snap4Arduino aquí].
 +
 +
Per començar, cal encendre l'ordinador, obrir el programa&nbsp;Snap4Arduino&nbsp;i connectar-hi&nbsp;la placa electrònica. Un cop connectada per cable, cal fer-ho també des del programa: es fa des de la categoria <span style="color:#FFFFFF">'''<span style="background-color:#339999">Arduino</span>'''</span>:
 +
<p style="text-align: center"><span style="background-color:#40E0D0">[[File:S4.PNG|RTENOTITLE]]</span></p>
 +
&nbsp; &nbsp; &nbsp;
  
 
&nbsp;
 
&nbsp;
Line 31: Line 43:
 
&nbsp;
 
&nbsp;
  
== Carrega firmware "Standard Firmata"&nbsp; ==
+
=== Encendre un LED integrat ===
  
Per programar la placa Arduinoa través d'Scratch for Arduino necessitem carregar el firmware "Standard Firmata". Podem repassar el procediment [http://wiki.edutec.citilab.eu/index.php/Introducció_a_Snap4Arduino aquí].
+
El següent pas és crear un programa per encendre un LED. La placa '''Arduino Nano''' ja porta un LED incorporat que es localitza al pin número 13 i que es fa servir per fer comprovacions sense necessitat de realitzar cap connexió. El bloc que permet encendre un LED es "posa el pin digital ... a ..." <span class="hiddenGrammarError">i</span> es troba a la categoria Arduino. S'ha d'especificar el número de pin al qual està connectat el LED i indicar si el volem encendre o apagar amb un selector. En aquest cas els blocs són els següents:
  
 
&nbsp;
 
&nbsp;
 +
<p style="text-align: center">[[File:Led-polsador1.png|RTENOTITLE]]</p>
 +
Per exemple es pot fer un programa que encengui el LED quan polsem la tecla "espai":
  
 +
&nbsp;
 +
<p style="text-align: center">[[File:Led-polsador3.png|RTENOTITLE]]</p>
 +
Fixa't que no ha calgut fer cap tipus de connexió elèctrica de cap element extern per a fer aquesta activitat.&nbsp;
  
 +
&nbsp;
  
 +
=== Encendre un LED extern ===
  
== Desenvolupament&nbsp; ==
+
L'objectiu d'aquesta proposta és muntar un primer circuit elèctric. Per a això, es pot fer la mateixa acció connectant aquesta vegada un&nbsp;'''sensor''' i un&nbsp;'''actuador''' externs. En aquest cas, el&nbsp;sensor (que transforma informació&nbsp;del món físic a la màquina) serà un polsador i l'actuador (actua al món físic segons indicacions de la màquina) serà una petita llumeta de tipus LED.
  
Comencem a treballar amb Snap4Arduino:
+
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
 +
<p style="text-align: center">[[File:Transp2.png|border|400px|Polsador]]&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;[[File:Transp1.png|border|400px|Led]]</p> <p style="text-align: justify">&nbsp;</p>
 +
Novament, l'objectiu és que quan es premi el botó físic, el polsador, el llum s'encengui. Primer cal connectar&nbsp;el polsador al '''pin digital 2''' i el LED al '''pin digital 10 '''de la placa.
  
1. Obrim el software &nbsp;i connectem la placa des de la categoria <span style="background-color:#40E0D0">Arduino.</span>
+
<span class="hiddenGrammarError">Els pin</span> són uns terminals metàl·lics que permeten connectar els cables que comuniquen els sensors i els actuadors amb la placa. En aquest cas fem servir sensors i actuadors digitals que només tenen dos estats, encès o apagat per al LED, polsat o no per al polsador, 5 Volts (cert) o 0 Volts (fals) per l'Arduino. En altres pràctiques veurem components analògics que podem tenir molts valors de forma no discreta.
<p style="text-align: center"><span style="background-color:#40E0D0">[[File:S4.PNG|RTENOTITLE]]</span></p>
+
Esperem fins que ens aparegui&nbsp;&nbsp;
+
<p style="text-align: center">&nbsp; &nbsp; &nbsp;</p>
+
2. El seguent pas és crear un programa que ens permeti encendre un LED.&nbsp;La placa Arduino per defecte ja en porta incorporat que es localitza al pin número 13, de manera que podem fer una pràctica senzilla d’encendre aquest a través de la següent línia de codi;&nbsp;
+
<p style="text-align: center">[[File:S1.PNG|RTENOTITLE]]</p>
+
Si volem que s’executi&nbsp;de forma intermitent (encendre i apagar), modifiquem el codi de la següent manera;
+
<p style="text-align: center">[[File:S2.PNG|RTENOTITLE]]</p>
+
3. A continuació realitzarem la mateixa acció però connectant un&nbsp;'''sensor''' i un&nbsp;'''actuador''' extern. Farem ús del polsador com a sensor (emissor de les dades) i d'un LED com a&nbsp;actuador (receptor i execució d'aquestes).
+
  
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
+
El circuit electrònic ha de quedar així:
<p style="text-align: center">[[File:Transp2.png|400x200px|Polsador1 (1).JPG]]&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;[[File:Transp1.png|400x200px|Led 1.JPG]]</p> <p style="text-align: justify">&nbsp;</p> <p style="text-align: justify">Connectem el sensor i l’actuador als pins digitals corresponents. Els pins digitals són aquells que poden donar com a resposta una condició binaria (A o B). Per saber la posició on hem de col·locar aquests, hem de fixar-nos en les opcions numèriques que ens facilita el bloc de programació, ja que ens venen determinats. En el nostre programa connectarem el polsador al '''pin digital 2''' i el LED al '''pin digital 10'''.&nbsp;</p> <p style="text-align: center">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;[[File:Transp3.png|500x300px|Connexió sensor1.JPG]]</p>
+
&nbsp;
+
  
Un cop connectats el sensor i l’actuador només ens queda construir el programa, aquest cop fent ús de condicionals;
+
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;[[File:Transp3.png|border|center|400px|Connexió sensor1.JPG]]
<p style="text-align: center">[[File:S3.PNG|RTENOTITLE]]</p>
+
&nbsp;
+
  
&nbsp;
+
Es pot comprovar que la connexió física, per mitjà de cables, no és suficient perquè el llum s'encengui quan es prem l'interruptor. Perquè passi, cal programar-ho, és a dir, donar la instrucció de què ocorri precisament això. Fixa't que també es podria programar d'una altra manera, que s'apagui en tocar l'interruptor, que sigui intermitent, que s'apagui al cap de cinc segons, o que no s'apagui, etc.
  
&nbsp;
+
El bloc per fer servir el polsador és "lectura digital ...". En el nostre cas els polsadors no tenen el comportament esperat i quan estan premuts fan que la lectura sigui "fals".
 +
 
 +
Per exemple per fer que el LED s'encengui i apagui cada segon quan mantenim el polsador premut, s'haurà d'afegir un bloc de negació:
 +
<p style="text-align: center">[[File:Led-polsador2.png|RTENOTITLE]]</p>
 +
Ja està!
  
[[Category:Páginas con enlaces rotos a archivos]]
+
T'atreveixes ara amb un [[Semàfor_real_i_virtual|semàfor]]?

Latest revision as of 16:30, 21 May 2019

Una activitat per a iniciar-se a la programació de la placa Arduino a través del programari d'Snap4Arduino pot ser encendre un llum LED quan es premi un interruptor o polsador.

Material

En aquesta pràctica es farà ús del següent material:

RTENOTITLE

Placa electrònica      Arduino Nano

Arduino nano shield.jpg Targeta d'expansió
RTENOTITLE Cables de prototipatge 
RTENOTITLE Cable USB
P1.JPG Polsador
P2.JPG LED

Desenvolupament 

Connexió de la placa electrònica

La placa Arduino ha de tenir instal.lat el firmware necessari per treballar amb Snap4Arduino. El procediment de càrrega es troba indicat aquí.

Per començar, cal encendre l'ordinador, obrir el programa Snap4Arduino i connectar-hi la placa electrònica. Un cop connectada per cable, cal fer-ho també des del programa: es fa des de la categoria Arduino:

RTENOTITLE

     

 

 

Encendre un LED integrat

El següent pas és crear un programa per encendre un LED. La placa Arduino Nano ja porta un LED incorporat que es localitza al pin número 13 i que es fa servir per fer comprovacions sense necessitat de realitzar cap connexió. El bloc que permet encendre un LED es "posa el pin digital ... a ..." i es troba a la categoria Arduino. S'ha d'especificar el número de pin al qual està connectat el LED i indicar si el volem encendre o apagar amb un selector. En aquest cas els blocs són els següents:

 

RTENOTITLE

Per exemple es pot fer un programa que encengui el LED quan polsem la tecla "espai":

 

RTENOTITLE

Fixa't que no ha calgut fer cap tipus de connexió elèctrica de cap element extern per a fer aquesta activitat. 

 

Encendre un LED extern

L'objectiu d'aquesta proposta és muntar un primer circuit elèctric. Per a això, es pot fer la mateixa acció connectant aquesta vegada un sensor i un actuador externs. En aquest cas, el sensor (que transforma informació del món físic a la màquina) serà un polsador i l'actuador (actua al món físic segons indicacions de la màquina) serà una petita llumeta de tipus LED.

                                                  

Polsador                          Led

 

Novament, l'objectiu és que quan es premi el botó físic, el polsador, el llum s'encengui. Primer cal connectar el polsador al pin digital 2 i el LED al pin digital 10 de la placa.

Els pin són uns terminals metàl·lics que permeten connectar els cables que comuniquen els sensors i els actuadors amb la placa. En aquest cas fem servir sensors i actuadors digitals que només tenen dos estats, encès o apagat per al LED, polsat o no per al polsador, 5 Volts (cert) o 0 Volts (fals) per l'Arduino. En altres pràctiques veurem components analògics que podem tenir molts valors de forma no discreta.

El circuit electrònic ha de quedar així:

          
Connexió sensor1.JPG

Es pot comprovar que la connexió física, per mitjà de cables, no és suficient perquè el llum s'encengui quan es prem l'interruptor. Perquè passi, cal programar-ho, és a dir, donar la instrucció de què ocorri precisament això. Fixa't que també es podria programar d'una altra manera, que s'apagui en tocar l'interruptor, que sigui intermitent, que s'apagui al cap de cinc segons, o que no s'apagui, etc.

El bloc per fer servir el polsador és "lectura digital ...". En el nostre cas els polsadors no tenen el comportament esperat i quan estan premuts fan que la lectura sigui "fals".

Per exemple per fer que el LED s'encengui i apagui cada segon quan mantenim el polsador premut, s'haurà d'afegir un bloc de negació:

RTENOTITLE

Ja està!

T'atreveixes ara amb un semàfor?