===== A02. Led (PWM) ===== \\ En aquesta pràctica el que farem serà regular la intensitat de la llum del led. Per fer això farem servir un mètode electrònic que es diu PWM (Pulse-Width Modulation: modulació per amplada de pols). \\ \\ La modulació PWM permet generar una senyal analògica mitjançant una sortida digital. Com que utilitza un sistema de codificació de 8 bits (en el sistema binari: 2^8 = 256, per tant, del 0 a 255). \\ \\ Les sortides digitals d'Arduino només tenen dos estats: ALT/BAIX, ON/OFF, ENGEGADA/APAGADA. És a dir, corresponen a una sortida de 5V (ON) i de 0V (OFF). Amb això només podem fer activitats d'encendre i apagar un led, no podríem controlar la seva brillantor de menys a més o viceversa. Això ho fa per la proporció entre l'estat alt (ON) i baix (OFF) del senyal. El control digital s'utilitza per crear una ona quadrada de cicle de treball diferent, un senyal commutat entre encès i apagat. Aquest patró d'encesa i apagada pot simular voltatges entre encès total (5 volts) i apagada (0 volts) al canviar la relació entre aquests dos valors. {{ :ca:manuals:keybot:keybot_61.png?nolink |}} \\ \\ El programa que farem consistirà en encendre el led amb un valor una mica superior a la meitat de la intensitat màxima. Aquest valor serà 150. Primer triarem el nou bloc per regular la intensitat del led que es diu “//Led intensitat (PWM)//”. \\ {{ :ca:manuals:keybot:keybot_63.png?nolink600 |}} \\ Al valor d'ajust posarem el nou valor que serà 150. \\ {{ :ca:manuals:keybot:arduinoblocks_1645001506369.png?nolink&400 |}} \\ Enviem el programa al robot i comprovarem que s'encén però no massa intens. Ara farem un programa que vagi encenen el led mica a mica. Per això farem servir un nou bloc que es diu “//Comptar amb i des de x fins x de a x//”. \\ {{ :ca:manuals:keybot:keybot_65.png?nolink |}} \\ Col·loquem el bloc i posem els paràmetres de configuració. \\ {{ :ca:manuals:keybot:arduinoblocks_1645001712132.png?nolink&400 |}} \\ Per últim, farem servir el bloc “Variables” per posar la variable que anirà variant. \\ {{ :ca:manuals:keybot:keybot_66.png?nolink |}} \\ La posem en el “//Valor//” del led que és que anirà canviant, i triarem la variable “//i//”. \\ {{ :ca:manuals:keybot:arduinoblocks_1645002228193.png?nolink&400 |}} \\ Li donarem una espera de 50ms per a que es vegi el seu efecte. Envia el programa i comprova el seu funcionament. \\ {{ :ca:manuals:keybot:arduinoblocks_1645002514183.png?nolink&550 |}} \\ {{ :ca:manuals:keybot:keybot_183.png?nolink |}} \\ {{ :ca:manuals:keybot:arduinoblocks_1645002693929.png?nolink&550 |}} \\ \\