Tecnologia vestible

Per començar Elements d'entrada Programació CircuitPython   Recursos CITCEA
Elements no electrònics Elements de sortida Programació Arduino    
Projectes Elements de control Dades pràctiques   Inici

LED

Els LED són díodes emissors de llum. Tenen l'avantatge que són molt eficients i, per tant, s'escalfen poc. Els més habituals són els de 3 mm i 5 mm. També n'hi ha de 10 mm si el voleu gros. Hi ha diversos colors. Els clàssics són vermell, groc i verd però també en trobareu de color blau, taronja o blanc.

Cal tenir present que els LED tenen polaritat i si els connectem en sentit contrari pot passar que no funcionin o, fins i tot, que es cremin. Fixem-nos en les potes del LED:

LED

Veiem que una d'elles és més llarga que l'altra. La pota llarga és el positiu (+) i la curta el negatiu (-). Les resistències, en canvi, no tenen polaritat i, per tant, es poden connectar indistintament d'un costat o de l'altre.

Quan anem a fer servir un LED, convé conèixer les seves característiques. Per exemple agafem el LED de la figura

LED vermell

Si anem al catàleg, podrem trobar les següents característiques:     5MM   2V   20MA   5MCD   60°

Que ens donen idea dels paràmetres principals del LED:

Els corrents habitualment es mesuren en ampers (A) però si són petits, com en el cas d'un LED, ho fem en mil·liampers (mA). Tenim que 1 A = 1000 mA. Les tensions (també anomenades voltatges) es mesuren en volts (V).

Els paràmetres amb els que hem de tenir més cura són la tensió i el corrent ja que si són més grans dels valors que ens indica el catàleg és probable que cremem el LED.

Vegem un altre exemple. Mirant el document trobem:

Per evitar que es cremi el LED, normalment hi posem una resistència.

Resistència

Les resistències són petits cilindres amb quatre ratlles (a vegades cinc). Hi ha dos paràmetres característics a una resistència: el valor i la potència. El valor ve indicat pels colors de les ratlles i la potència es pot deduir del seu diàmetre. Per al que anem a fer ara, amb resistències d'un quart de watt (1/4 W), que són les més senzilles, en tenim prou.

Resistència

El càlcul del valor mínim que ha de tenir la resistència el farem de la següent manera:

Equació

Si la tensió està en volts i el corrent en mil·liampers, el resultat seran ohms (Ω). Aquest 1000 és el que fa la conversió de mA a A.

Atès que només trobarem resistències d'uns determinats valors, un cop ho haguem calculat triarem la del valor immediatament superior al que ens hagi sortit. Els valors normals de les resistències entre 10 i 100 són: 10, 12, 15, 18, 22, 27, 33, 39, 47, 56, 68 i 82 ohms. També existeixen els mateixos valors multiplicats per 10, 100, 1000, etc. així com dividits per 10 i 100.

Anem a fer el càlcul per al primer LED que hem comentat si l'alimentem amb 4,5 V.

Equació

La resistència de 120 ohms és massa petita, per tant posarem una de 150 ohms.

En el cas del segon LED ens donen dos valors de la tensió. Per assegurar-nos de no cremar-lo, agafaríem el valor mínim:

Equació

Així doncs, també agafaríem el valor de 150 ohms.

Connexió al microcontrolador

Per connectar aquests LED només cal connectar la sortida escollida a la pota llarga del LED, la pota curta del LED amb un costat de la resistència i la pota GND del microcontrolador amb l'altre costat de la resistència.

Connexió

Per encendre el LED podem fer servir el següent programa en el que a l'inicialitzar li diem que la pota 12 serà de sortida (OUTPUT) i en el programa activem (posem a HIGH) la pota.

void setup() {   // Inicialització
	pinMode(12, OUTPUT);   // La pota on hi ha el LED actua com a sortida
}
void loop() {   // Programa que es repeteix indefinidament
	digitalWrite(12, HIGH);   // Encén el LED
}

El següent programa fa el mateix en CircuitPython amb un LED connectat a D0

import board
import digitalio
led = digitalio.DigitalInOut(board.D0)
led.direction = digitalio.Direction.OUTPUT
while True:
    led.value = True  # Encen el LED

Per posar el LED intermitent podríem encendre'l i després apagar-lo però no el veuríem intermitent ja que aniria massa ràpid. El que hem de fer és posar un temps d'espera després d'encendre i després d'apagar. Atès que a part loop es repeteix indefinidament, el LED s'estarà encenent i apagant sense parar.

void setup() {   // Inicialització
	pinMode(12, OUTPUT);   // La pota on hi ha el LED actua com a sortida
}
void loop() {   // Programa que es repeteix indefinidament
	digitalWrite(12, HIGH);   // Encén el LED
	delay(500);   // Espera mig segon
	digitalWrite(12, LOW);   // Apaga el LED
	delay(500);   // Espera mig segon
}

El següent programa fa el mateix en CircuitPython amb un LED connectat a D0

import board
import digitalio
import time
led = digitalio.DigitalInOut(board.D0)
led.direction = digitalio.Direction.OUTPUT
while True:
    led.value = True  # Encen el LED
    time.sleep(0.5)
    led.value = False  # Apaga el LED
    time.sleep(0.5)

 

 

 

En aquest web, les fotografies marcades amb [AF] són del web d'Adafruit, les marcades amb [SF] del web d'Sparkfun i les marcades amb [AU] del web d'Arduino.

 

 

 

 

 

 

 

 

 

 

Llicència de Creative Commons
Aquesta obra d'Oriol Boix està llicenciada sota una llicència no importada Reconeixement-NoComercial-SenseObraDerivada 3.0.