Está en la página 1de 7

Leccin5:Entradasanalgicas

HastaestemomentohemosvistoquenuestroArduinoeracapazdesaberloquepasabaasualrededorutilizandolas
entradasdigitales.Deestamanerapodaconocerelestadodedeterminadosdispositivosquesloerancapacesde
discernirentredosestados:activodesactivo(abiertocerrado,conectadodesconectado,verdaderofalso,etc).El
ejemplomssencilloconsisteendeterminarsiuninterruptorestabaabiertoocerrado,peroexistenmuchosotros
dispositivosdisponiblesquerecibenelnombredetransductores(finalesdecarrera,clulasfotoelctricas,detectoresde
proximidad,detectoresdepresin,etc).
Haymuchosotroscasosenlosquenecesitamossaberelvalordeunadeterminadamagnitud.Ladistanciaaun
determinadolugar,latemperaturadeunhorno,elniveldeaguadeundepsito,elvoltajedeunafuentede
alimentacin,sonalgunosejemplos.ParaquenuestroArduinopuedaconocerestosvaloresutilizamoslasentradas
analgicas.
Elesquemadefuncionamientodeunaentradaanalgicaeselsiguiente.Eltransductorconvierteunadeterminada
magnitudfsica(distancia,calor,caudal,etc)enunamagnitudelctrica(tensinocorriente).Eltransductorseconectaa
unodelospinesdeentradaanalgicadenuestroArduino.ComolasentradasanalgicadelArduinoslosoncapacesde
leervaloresdetensincomprendidosentre0y5V,sieltransductorsuministraraotrosvaloresdiferentesnecesitariamos
ponerentralasalidadeltransductorylaentradaanalgicaunconversoradecuado.Porltimo,elmicroprocesador
incluidoennuestroArduinodisponedeunaunidaddeconversinanalgicodigitalqueconviertelosvaloresdetensin
delaentradaenvaloresnumricoscomprendidosentre0y1023.Elnmero1023noesunacasualidad.Losconversores
incluidosenelmicrotienenunaprecisinde10bits.Losvaloresposiblesquesepuedenobtenercon10bitsvande0a
1023.Enlaimagensiguientesemuestraunesquemadeunasolucincompletacompleja.

Eltermmetro(transductor)situadoenelhornonosdevuelvevaloresdecorrientecomprendidosentre4y20mA.
Cuandolatemperaturaesde20Cdevuleve4mAycuandoaltemperaturaesde200Cdevuleve20mA.Poreso
necesitamosutilizarunconversorquepasede420mAa05V.PorltimoelconversoranalgicodigitaldelArduinonos
devolvervalorescomprendidosentre0(cuandolatemperaturaseade0C)y1023(cuandolatemperaturaseade
200C).ConoceraqutemperaturacorrespondeundeterminadovalorquenosproporcionaArduinoesslouna
cuestindeutilizarunaregladetres.
Arduinodisponedeseisentradasanalgicasconectadasalospines23a28yquerecibenlosnombresADC0ADC5.

Parapoderprobarunaentradaanalgica,laformamssencillaesutilizarunpotencimetrohaciendolasvecesdeun
divisordetensin.Deestamanera,siconectamosunextremoalos5VyelotroaGNDobtendremoslosdiferentes
valoresposiblesmoviendoelpotencimetro.Veamoselesquemaelectrnicodelmontajeparaestaleccindonde
utilizaremoselterminalvirtualquevimosenlaleccin4yelmontajedelpotencimetroparasimularvaloresdetensin
enlaentradaanalgica(enlazonainferiorderechadelmontaje).

LafuncinquenospermiterecuperarelvalorledoenunpindeentradaanalgicosellamaanalogRead().Suformato
es:

<valordevueltoentre0y1023>=analogRead(<numEntradaAnalogica>)
DondenumEntradaAnalogicaesunvalorcomprendidoentre0y5.
Elcdigodenuestroprogramaeselsiguiente:

Elfuncionamientoesmuysimple.Leemoselvalordelaentradaanalgica0(laqueseconectaenelpinAD0)yenviamos
elvaloralterminalvirtual.Esperamosunsegundoyvolvermosarepetirelproceso.Laesperadeunsegundolahacemos
conobjetodenoestarenviadoconstantementevaloresalterminalloquedificultamucholalectura.Siejecutamosla
simulacinymovemoselpotencimetroiremosobteniendolosvalorescalculadosentre0y1023ennuestroterminal
virtual.


UtilizarentradasanalgicasesmuysencilloconArduino.
VeamosotroejemplodeutilizacindeentradasanalgicasdondeArduinotomadecisionesenfunicndelosvalores
ledosenunaentradadigital.Supongamoselejemplodeconfiguracindenuestrohornoquevimosantes.Imaginemos
quedeseamosquenuestroArduinomantengaelhornoencendidohastaalcanzarunadeterminadatemperatura.Al
hacerlopararemoselhorno.Cuandolatemperaturavuelvaabajar,nuestroArduinovolveraencenderelhorno.De
estaformapodemosmantenernuestrohornoaunatemperaturaconstante.
Elcdigodenuestroprogramaseraelsiguiente:


Comosepuedeverelprogramaesmuysencillo.Cuandolalecturaanalgicaesmenorque300seactivalasalidadigital
yencasocontrarioseapaga.Paracomprobarelfuncionamiento,simularemoslasalidaqueacitvaelhornoconunledy
laentradadeltermmetroconunpotencimetro.Lasimulacinsemuestraacontinuacin.Moviendoelpotencimetro
simulamoslatemperaturaycuandosealcanzaelvaloradecuadoseactivaodesactivalasalidayseenciendeoapagael
led.


YasomoscapacesdeutilizarentradasdigitalesennuestroequipoArduino.

También podría gustarte