Difference between revisions of "Arduino-Polsador amb LED"

From Edutec Wiki
Jump to: navigation, search
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
  
Una activitat per a iniciar-se a la programació de la placa Arduino a través del software d''''[[Ejercicio:_Introducción_a_S4A|Scratch for Arduino]]''' ('''S4A)''' pot ser encendre un llum LED quan es premi un interruptor o 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.
 
+
== Càrrega del firmware "Standard Firmata"  ==
+
 
+
Per programar amb Scratch for Arduino primer cal carregar un ''firmware'' anomenat "Standard Firmata". Un cop carregat, ja queda a l'ordinador, de manera que aquest pas només cal fer-lo la primera vegada que es faci servir a cada ordinador. El procediment de càrrega es troba indicat [http://wiki.edutec.citilab.eu/index.php/Introducció_a_Snap4Arduino aquí].
+
  
 
== Material ==
 
== Material ==
  
En aquesta pràctica es farà ú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"
Line 37: Line 33:
 
=== Connexió de la placa electrònica ===
 
=== Connexió de la placa electrònica ===
  
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>:
+
La placa Arduino ha de tenir instal.lat el firmware necessari per treballar amb Snap4Arduino. El procediment de càrrega&nbsp;es troba indicat&nbsp;[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>  
 
<p style="text-align: center"><span style="background-color:#40E0D0">[[File:S4.PNG|RTENOTITLE]]</span></p>  
 
&nbsp; &nbsp; &nbsp;
 
&nbsp; &nbsp; &nbsp;
 +
 +
&nbsp;
 +
 +
&nbsp;
  
 
=== Encendre un LED integrat ===
 
=== Encendre un LED integrat ===
  
El seguent pas és crear un programa per encendre un LED.&nbsp;La placa '''Arduino Nano''' ja porta un LED incorporat que es localitza al '''pin número 13&nbsp;'''i que en general es pot usar per comprovar si la connexió s'ha realitzat correctament. Així, es pot fer una pràctica molt senzilla consistent en encendre'l. Es pot fer amb el programa següent:
+
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:
<p style="text-align: center">[[File:S1.PNG|RTENOTITLE]]</p>  
+
 
També es pot demanar que s'encengui i s'apagui de manera intermitent. Així:
+
&nbsp;
<p style="text-align: center">[[File:S2.PNG|RTENOTITLE]]</p>  
+
<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;
 
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 ===
 
=== 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&nbsp;'''sensor''' i un&nbsp;'''actuador''' externs. En aquest cas, el&nbsp;sensor (emissor d'informació&nbsp;del món físic a la màquina) serà un polsador (que envia "cert" si està apretat i "fals" en cas contrari)&nbsp;i l'actuador (actua al món físic segons indicacions de la màquina) serà una petita llumeta de tipus LED.
+
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.
  
 
&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;
 
&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;
Line 57: Line 65:
 
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.
 
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.
  
Un ''pin'' és una mena d'agulla o pinxo que surt de la placa i on es pot connectar un cable. El cable es pot connectar per l'altre extrem a un&nbsp;component electrònic (sensor, actuador, etc.) extern punxant-lo en un altre pin o extrem de cable que surti del component.&nbsp;La '''informació (conjunt de dades)''' que es transmet entre components i placa per mitjà dels cables pot ser '''analògica''' o'''digital'''. Els components&nbsp;digitals són aquells que transporten informació&nbsp;digital. Requereixen connectar-se a pins digitals de la placa, que són els que donen&nbsp;com a resposta una condició binaria, és a dir, amb dos únics valors possibles, com per exemple''sí'' i ''no'', ''cert ''i''fals'', 1 i 0, etc., ja que els arriben únicament dos valors possibles de corrent elèctric, dels quals un sol ser zero. Així, el seu comportament es basa en si passa o no passa corrent eleèctric a través seu.
+
<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.
  
 
El circuit electrònic ha de quedar així:
 
El circuit electrònic ha de quedar així:
  
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;[[File:Transp3.png|border|400px|Connexió sensor1.JPG]]
+
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;[[File:Transp3.png|border|center|400px|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.
  
Es pot comprovar que la connexió física, per mitjà de cables, no és suficient per a que el llum s'encengui quan es prem l'interruptor. Per a que passi, cal programar-ho, és a dir, donar la instrucció de que 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".
  
A l'ordinador, amb Scratch for Arduino, es pot fer per exemple el següent programa:
+
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:S3.PNG|RTENOTITLE]]</p>  
+
<p style="text-align: center">[[File:Led-polsador2.png|RTENOTITLE]]</p>  
Comprova que aquest programa indicarà a la placa que, quan es premi el polsador, el llum parpalleigi dues vegades i després es quedi apagat.
+
Ja està!
  
I a tu, què t'agradaria que fes? T'animes a programar-ho?
+
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?