[AUDIO EN BLANCO] Hola, bienvenidos a la clase dos de la primera lección del módulo cuatro. Actuadores. Estábamos viendo que el Arduino puede ser conectado a sensores, eso fue lo que vimos recién, ahora vamos a ver qué es lo que pasa cuando queremos que el Arduino ejerza una acción sobre el mundo. Los actuadores son dispositivos controlados eléctricamente. O sea, un Arduino puede producir una señal que activa uno de estos dispositivos y que produce una acción en el mundo fÃsico, no solo en el mundo electrónico, en el mundo abstracto donde funcionan electrones para allá y electrones para allá, no. Aquà el mundo fÃsico recibe una acción. Esa acción puede ser, por ejemplo, un calentamiento o un enfriamiento de un material, una fuerza mecánica o un torque, ya están pensando qué genera una fuerza mecánica o un torque, respuesta: un motor. Un motor, exactamente un motor, puede generar fuerza mecánica o un torque. Flujo de aire o aumento de presión, emisión de fotones. ¿Qué emite fotones? Respuesta, una luz, cualquier LED, ¿cierto? Cualquier LED me indica algo a través de emisión de fotones. O incluso un sonido a través de un parlante o un buzzer. Los actuadores suelen requerir de la potencia de una fuente de alimentación. El Arduino puede alimentar algunos actuadoores de muy baja potencia, pero lo ideal es que cuando hay cierta potencia en el actuador mejor usamos una fuente de alimentación externa. ¿Cómo comandamos un actuador? Depende, depende de qué actuador es. Por ejemplo, si la entrada esa señal analógica, que está bien definida con especificaciones claras, podemos usar ciertos circuitos. Si la entrada es digital de un solo bit, basta con que un bit de salida del Arduino comande esa entrada digital del actuador. O bien, puede haber un actuador que tenga una señal digital que respete algún estándar de la industria, como los que vamos a ver más adelante. ¿Cómo conectamos entonces un actuador al Arduino? De manera analógica, de manera digital o a través de algunos de los estándares, ¿de acuerdo? De manera analógica a través de algún DAC, que puede ser explÃcito o puede ser a través de PWM. Digital directo a través de un pin o digital a través de un estándar. Vamos a ver más detalles. ¿Cómo es la conexión digital? Como dije antes, muchos actuadores pueden ser encendidos y apagados solamente. Ejemplo, un calefactor. En rigor, un calefactor nosotros podemos encenderlo de a poco, ¿cierto?, podemos controlar el nivel de encendido, pero hay muchos donde simplemente o lo encendemos o lo apagamos. Lo mismo con una luz, que podemos encender o apagar la luz. Un LED, es cierto, tenemos diferentes niveles de encendido pero como una solución de primer orden podemos encender o apagar, lo mismo que con un motor. En esos casos, conectamos la salida digital del Arduino directamente a un relé o a un transistor y luego a un relé, o a un transistor directamente o a una resistencia, en el caso de un LED, porque el Arduino puede manejar un LED, ¿recuerdan cuánto era la corriente de salida de un Arduino, de un pin de un Arduino? Respuesta 40 miliamper. Un LED tÃpicamente consume 10 miliamper, por lo tanto, ustedes pueden alimentar un LED con un Arduino. O, pueden usar un puente H mediante transistores para controlar un motor que avance y que retroceda. Generalmente es posible controlar la intensidad mediante PWM, esto no es cierto en el caso de un relé, a menos que lo hagamos muy lentamente, ya explicaremos por qué. Este es un ejemplo básico de un actuador de baja potencia empleando un Arduino, entonces tenemos una salida digital, por ejemplo, en este caso arbitrariamente escogimos D11. Y esa salida va a una resistencia y luego a un LED. Y, si recuerdan del módulo tres, el color del LED me define qué voltaje va a tener el LED. Entonces, sabiendo qué voltaje va a tener en función de su color y sabiendo que la salido del Arduino tÃpicamente es cinco Volts yo puedo calcular qué voltaje cae en esta resistencia. Y si yo quiero que aquà haya, por ejemplo, 10 miliamper puedo calcular el valor de esa resistencia para que a 10 miliamper me genere esa caÃda de voltaje. Ya hicimos el ejercicio en el módulo tres, por lo tanto, nosotros podemos conectar un LED a un Arduino. Pasemos a otro tipo de conexión. Conexión no analógica, ¿cuando podemos conectar un Arduino a un DAC? Entonces este es nuestro ejemplo. Tenemos nuestro Arduino, el Arduino en sà no tiene DACs. Nosotros podemos conectarle a un DAC externo, hay chips que hacen eso, chips que son muy sencillos de usar, y luego la salida del DAC va a un acondicionador de señales o un amplificador o un filtro, que maneje el transductor. Y con eso ya tenemos la conexión analógica del Arduino al transductor. Por supuesto toda esta cadena se asegura de que la compatibilidad de voltaje e impedancias sea la correcta. Y esto puede requerir, eventualmente, un acondicionamiento de señal que esta aquÃ, ¿cierto? Te damos ejemplos. Ejemplo de actuadores analógicos controlados por Arduino. FÃjense que estos ¿qué será esto? Rojo, verde, azul. Probablemente en un encapsulado con cuatro pines. Esto es un LED RGB, un LED que tiene tres LED internamente, con diferentes colores, y nosotros podemos encender cada uno de estos LEDs de manera independientemente, usando tres pines del Arduino. ¿Qué pasa si yo quiero cambiar el tono del color? Puedo encender más fuerte el rojo, por ejemplo, y más débil el verde y el azul. Por ejemplo, ¿cómo lo hago si yo no puedo controlar el voltaje de la salida? Porque el voltaje de aquà es cinco Volts o cero Volts, dependiendo si el pin está arriba o abajo. Lo que se hace generalmente es usar PWM. Ya lo hemos visto pero no está de más que lo repita aquÃ. PWM o señal de modulación por ancho de pulso es una señal cuyo nivel de C, cuyo promedio, controla la intensidad que yo le estoy entregando al actuador. Entonces, si yo entrego una señal, por ejemplo que la mitad del tiempo está en cinco Volts y la otra mitad en cero Volts con una frecuencia de un kilohertz, por ejemplo, yo no voy a alcanzar a ver con mis ojos qué LED se enciende y se apaga porque se va a encender y apagar muy rápidamente, muchas veces por segundo. Sin embargo, yo voy a ver el promedio de esta señal. El promedio entre cinco y cero es 2,5 entonces yo voy a ver como que el LED está funcionando a la mitad de la potencia, más o menos. De la misma forma, yo puedo controlar la potencia de cada uno de estos tres LEDs y elegir qué color quiero aquà finalmente, regulando esa potencia de manera fina, cada una con señales PWM independientes. De la misma forma, podemos controlar un buzzer, un parlante pequeño, con la salida del Arduino. Por ejemplo, si es buzzer es pequeño, yo puedo darle suficiente potencia con la salida digital del Arduino y, por lo tanto, no hay ningún problema en hacer esta conexión, sin pasar por un amplificador. Y ese parlante me puede indicar, por ejemplo con un pitido, si es que ocurre o no alguna acción. Y aquà nuevamente yo le entrego una salida digital cuadrada y el parlante va a sonar de acuerdo a esa onda. Entonces, a continuación, veremos un ejemplo de un buzzer, o un pequeño parlante que lo que va a hacer es emitir algún sonido. Entonces vamos a combinarlo con el ejemplo que vimos antes, ¿cierto?, antes tenÃamos el infrarrojo, este sensor que está en la pantalla es esencialmente el mismo circuito pero aquà estamos añadiendo este buzzer, que es un cristal piezoeléctrico que vibra o cambia su forma realmente cuando le aplicamos un impulso, entonces, en esta salida del Arduino, en esta salida digital ocho vamos a producir las señales para manejar este buzzer y dependiendo de cuan rápida sea la señal que está llegando al buzzer va a ser el tono que escuchemos, entonces, hay algo ahÃ, ¿cierto?, hay una función que me define de alguna forma el tono que queremos escuchar en función de la frecuencia. Esa función ya viene implementada en Arduino, entonces está la función tone y noTone. Tone genera un tono mediante una onda cuadrada de frecuencia configurable. Entonces tenemos el pin, la frecuencia y la que opcional uno generalmente puede omitirla. Y noTone significa que se quede callado, que no genere más tono. Entonces, aplicando esta función más el mismo código o muy parecido al ejemplo anterior en el que medÃamos distancia vamos a generar un tomo que va a ser más frecuente o menos frecuente dependiendo de la distancia a la que detecta el sensor. Eso es lo que vamos a probar a continuación. Vemos en la pantalla el código que genera esta aplicación. Este código va a hacer algo bien interesante, va a emitir un sonido, a un tono bien preciso, y a una frecuencia que va a aumentar o disminuir según la distancia que detecte el sensor. Entonces, vemos que el sensor está conectado al pin analógico cero, y el buzzer, o parlante está conectado al pin de salida digital ocho. Luego vamos a inicializar una variable tiempo previo igual cero y lo que vamos a hacer a continuación es determinar el tiempo usando la función millis, entonces vamos aquà al loop, y en esta función, vemos que estamos leyendo la entrada analógica, luego calculamos la distancia, de la misma forma que lo hicimos en el ejemplo anterior, y luego calculamos el tiempo usando la función millis. Se mide el tiempo de ejecución del programa, y luego de eso nosotros determinamos el intervalo que queremos esperar entre diferentes ejecuciones del pito, y ese intervalo va estar limitado entre 50 milisegundos y 2.5 segundos. La idea es que no sea más largo que 2.5 segundos porque si no no vamos a saber si está sonando o no y la idea es que no sea más bajo que 50 milisegundos para que nunca sea un pito continuo. Y eso es lo que hace el programa. Entonces, finalmente, esto produce el tono 4000 es la frecuencia. El tono siempre va a estar a 4000 hertz, pero la duración y el intervalo entre tonos, va a depender de la distancia, entonces vamos a ejecutar, vamos a cargar el programa en el Arduino. Ahora está cargando, terminó de cargar, y ahà está marcando la distancia, entonces, si nos acercamos vemos que estamos muy cerca, muy cerca. Está marcando una distancia muy cerca. Y si nos alejamos, el intervalo aumenta, el intervalo entre tonos y de esa forma hacemos que marque más distancia o menos distancia. Definitivamente con esto podrÃamos hacer un robot. Gracias por ver este video.