Arduino

introducción a Arduino

En la imagen anterior se puede ver una imagen de Arduino.

Se pueden diferenciar las distintas conexiones que tiene entre las que hay 13 patitas de conexión de entrada o salida digital (opción configurable por el usuario al inicio del programa) que permiten conectar LED, pulsadores y otros dispositivos, que solo pueden tener dos estados (on-off, pulsado-no pulsado, verdadero-falso, etc). Son señales que manejan voltajes de 0V (off) ó 5V (on).

También hay 6 entradas analógicas, conexiones de voltajes de 5V, 3,3V, GND, un conector de alimentación externa y un puerto USB para conectarlo al ordenador.

comandos de Arduino

En la tabla de más abajo se pueden ver los comandos utilizados en los programas de Arduino, así como los tipos de variables que se pueden utilizar y las sentencias de control.

Imprime esta hoja para tenerla como hoja de referencia cuando estés programando con Arduino.

entorno de programación

Arduino IDE

Entorno de programación oficial de Arduino. Con este software se programa la placa real de Arduino

Tinkercad - Online

Entorno de programación on-line. Es un simulador que permite trabajar con Arduino sin necesidad de tener la placa físicamente. Permite añadir multitud de componentes electrónicos a la simulación y hacer pruebas simuladas antes de programar el Arduino real.

Es una herramienta gratuita que nos ofrecen desde la página de Autodesk.

estructura básica de un programa de Arduino

El código de programación básico se divide en dos grandes bloques, inicialización y ejecución.

La parte de inicialización es void setup(), en donde se definen como se van a utilizar las entradas y salidas de Arduino. Se ejecuta una sola vez al inicio del programa.

La parte de ejecución es void loop(), es donde estará definido el programa que se quiere ejecutar de marera repetida. Se ejecuta en modo bucle, es decir, cuando termina de ejecutarse la última línea se vuelve otra vez a ejecutar el programa desde el principio del void loop().

salida digital con Arudino


Entrada digital con arduino


Uso del un pulsador con Arduino

Salida pwm con arduino

Estas salidas se pueden utilizar para hacer encendidos de LED de manera progresiva o controlar la velocidad de giro de un motor.

"Es importante recordar en todo momento que en una salida PWM el valor de tensión realmente es Vcc. Por ejemplo, si estamos alimentando un dispositivo que necesita 3V, y usamos una pulsada, en realidad estaremos suministrando 5V durante un 60% del tiempo y 0V durante el 40%. Pero si el dispositivo, por ejemplo, soporta como máximo 3V, podemos dañarlo si lo alimentamos mediante un PWM. "

Se utilizará la función "analogWrite(pin,valor)" En donde valor puede tomar los valores entre 0 y 255.

Dependiendo de que valor se le dé al pin se obtendrá a la salida un porcentaje de voltaje medio que se puede calcular mediante una sencilla regla de tres.

En la imagen se ponen tres ejemplos, con valores 100, 128 y 40, respectivamente.

Eso hará que el LED conectado a la salida digital se encienda con una iluminación que corresponderá al porcentaje calculado.

Entradas analogicas con arduino

Se utiliza la función de lectura:

Valor = analogRead(Pin_Analógico);

Nos devuelve un valor entre 1 y 1023, que corresponde a los escalones digitalizados de una señal de 5V por defecto

Con la función analogReference() se puede cambiar al voltaje de referencia segun:

  • DEFAULT: Valor por defecto, 5V o 3.3V, según modelos.

  • INTERNAL: Corresponde a 1.1V (en Atmega 168 y 328)

  • EXTERNAL: Voltaje aplicado de forma externa en el pin Vref (siempre entre 0 y Vcc

  • INTERNAL1V1 y INTERNAL2V56, correspondientes a 1.1V y 2.56V (sólo en Mega)

Monitor serie con Arduino


Sensor de temperatura con Arduino


manejar relés con arduino


sonidos con buzzer y arduino

Se utilizarán las siguientes funciones para hacer sonar el buzzer a una frecuencia determinada. usar las salidas PWM.

tone(pin, frecuencia); //activa un tono de frecuencia determinada en un pin dado

noTone(pin); //detiene el tono en el pin

tone(pin, frequencia, duracion); //activa un tono de frecuencia y duracion determinados en un pin dado

Ver los siguientes ejemplos de uso del buzzer

altavoz conectado en el Pin9 para generar una función de 440Hz durante un segundo, pararlo durante 500ms, y finalmente un tono de 523Hz durante 300ms, para repetir el programa tras una pausa de 500ms.

Este programa emplea un array con frecuencias que recorremos secuencialmente para realizar un barrido que aproxima las distintas notas musicales.