2.1: Llum controlada amb un potenciòmetre

Dintre de l’àrea Energia i medi ambient es pot plantejar una programació que optimitzi l’aprofitament de la llum natural. És a dir, es podrà regular la intensitat d’un LED amb un potenciòmetre, per fer que el LED emeti més o menys llum en funció de la llum ambiental de la qual es disposi.

  • Recursos necessaris: l’IDE d’Arduino, la placa Arduino UNO amb cable USB, cables pont, un LED (els valors del qual van des de 0 fins a 255), una resistència de 220 Ω i un potenciòmetre (els valors del qual van des de 0 fins a 1023).

Al següent vídeo podeu veure com la intensitat del LED varia quan es manipula el potenciòmetre.

A l’hora de programar el LED i el potenciòmetre amb l’IDE d’Arduino, heu de saber que necessiteu una placa de proves on aniran connectats aquests dispositius.

Els potenciòmetres tenen tres potes. Una de les externes va a GND i l’altra, a 5V. La del mig sempre serà Data (dades) i al nostre exemple es connectarà al pin analògic A0.

Com que tant el LED com el potenciòmetre tenen una pota que ha d’anar a un pin GND, s’utilitza la fila dels negatius (-) de la placa de proves per connectar els cables que surten d’aquestes potes i, alhora, es fica un cable des de la fila dels negatius (-) al pin GND de la placa Arduino.

La següent programació fa que la lluentor d’un LED augmenti o disminueixi a mesura que es gira un potenciòmetre, els valors del qual van des de 0 fins a 1023 (lectura analògica). Els valor numèrics del LED estan compresos entre 0 i 255 (escriptura analògica).

A la primera part del codi es declaren les variables de tipus int o de nombre enter, indicant en quin pin està connectat cada dispositiu (el potenciòmetre, en el pin A0 i el LED, en el 9). Després es declara que el potenciòmetre és un INPUT (dispositiu d’entrada d’informació) i el LED, un OUTPUT (dispositiu de sortida d’informació).

Per últim, es fa la lectura del potenciòmetre connectat al pin A0 per saber quin serà el valor de la primera variable, anomenada Int. Després, es multiplica aquest número pel màxim d’escriptura d’un LED dividit entre el màxim de lectura d’un potenciòmetre. El resultat que s’obté d’aquesta operació es el valor que tindrà la segona variable, anomenada Int2, i el que s’escriurà al LED connectat al pin 9. Tot aquest procés es repetirà constantment, perquè s’ha programat dins d’un bucle (loop).

Fixa’t que totes les línies de codi que s’escriuen acaben amb un punt i coma.

Codi:

Un altre codi vàlid per controlar un LED amb un potenciòmetre és:

Quan la programació estigui carregada, s’executarà immediatament i es repetirà cada vegada que la placa es connecti a una pila, bateria o font d’alimentació fins que no es carregui un programa nou.

Si voleu extreure la placa Arduino de l’ordinador però veure com funciona la vostra programació, heu de connectar a la placa un suport per a 6 piles i 6 piles AA o un connector per a una pila de petaca i una pila de 9V.

També es pot programar la placa Arduino amb un llenguatge visual de blocs. Si voleu controlar un LED amb un potenciòmetre programant amb, per exemple, l’ Snap4Arduino el primer pas és anar a l’IDE d’Arduino, on s’ha d’escollir la placa i el port per després pujar l’exemple StandardFirmata. Quan això estigui fet, ja podeu obrir Snap4Arduino i connectar la placa. Com veieu al següent vídeo, ha de sortir un missatge informant-vos que s’ha realitzat amb èxit la connexió.

Ara ja podeu començar la programació arrossegant els blocs necessaris a la zona central. Quan la programació estigui acabada, només heu de fer clic a la bandera verda. Fixar-vos que en aquest exemple s’ha creat la variable potenciòmetre:

Amb Snap4Arduino no es pot extreure la placa Arduino per veure com funciona la programació, ja que aquesta comença amb el bloc Quan la bandera verda es premi que executa el programa però no el carrega a la placa.

Indistintament de la placa que s’estigui utilitzant, les connexions en ella dels dispositius electrònics han de coincidir amb les opcions triades a la programació (ports, slots i pins).