Actividad 1. Ambiente de desarrollo Arduino. Actividad básica. Blink y Timers
Temas teóricos
Hoja de fabricante del chip y de la tarjeta de desarrollo
Voltajes de alimentación y de señales. Tierras
Lenguaje Arduino
Compilar. “Flashear”
Puerto serial. Puerto virtual serial. USB (enumeración)
Cuidados generales. Estática. Cortos circuitos. Golpes
Boteo del Arduino
Precauciones
Instrucciones generales
Lea completamente todos los pasos de la guía de esta actividad
Anote, responda y agregue al reporte todas las preguntas e instrucciones que se realicen en la guía. Dichas preguntas e instrucciones se pueden denotar al estar enumeradas con el siguiente formato: “1) Anote el puerto asignado a su dispositivo Arduino”
Debe realizar una descripción de lo logrado a lo largo de la actividad, incluyendo las dificultades que se presentaron. Una bitácora de lo sucedido es lo mejor. (Anote no solo lo que usted ejecutó sino también el resultado de lo que ejecuta)
El reporte debe ser entregado mediante correo electrónico al asistente con copia al profesor del curso mediante correo electrónico. Debe utilizar formato PDF.
El correo electrónico del reporte debe llevar el siguiente formato en el “subject”: “IE0624 - Reporte N”, donde N es el número de la actividad realizada.
Evaluación
El reporte debe incluir las siguientes secciones (se incluye el porcentaje de nota de cada sección)
Portada (curso, semestre, año, fecha, número y nombre de práctica, integrantes). 2%
Bitácora de trabajo describiendo el resultado de todos los pasos seguidos de la guía incluyendo dificultades y/o situaciones inesperadas. 30%
Capturas o fotografías de puntos importantes realizadas durante la actividad (el circuito ensamblado, resultados observables en el osciloscopio, etc) 20%
Respuestas al cuestionario de la guía. 20% (deben estar claramente identificadas con el número de pregunta, sin confundirse con otra numeración en el reporte)
Todo el código fuente de todos los programas utilizados a lo largo de la actividad. Debe agregar al inicio del código una descripción sobre dicho código (a qué parte de la práctica corresponde, la función que cumple dicho código). 20%
Referencias utilizadas en caso de acceder a alguna fuente de información de Internet o bibliográfica durante la realización de la actividad. 8%
Guía
Parte 0. Configuración básica
Parte 1. Instalación de Arduino
mkdir -p local/src
cd ~/local/src
tar -xf arduino-1.8.4-linux64.tar.xz
cd ~/local/src/arduino-1.8.4/
./arduino
Conecte su arduino al puerto USB de su computadora.
Asegúrese que el arduino se enciende correctamente. (La luz LED verde PWR debería encender)
Asegúrese que el sistema operativo detecta correctamente el Arduino:
sudo dmesg
[25240.987798] usb 1-2: new full-speed USB device number 21 using xhci_hcd
[25241.129316] usb 1-2: New USB device found, idVendor=1a86, idProduct=7523
[25241.129321] usb 1-2: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[25241.129324] usb 1-2: Product: USB2.0-Serial
[25241.130194] ch341 1-2:1.0: ch341-uart converter detected
[25241.131098] usb 1-2: ch341-uart converter now attached to ttyUSB0
El último mensaje indica cual puerto “virtual” serial el kernel de Linux asigno al dispositivo. Es importante anotar este puerto. 1) Anote el puerto ejecutado.
En este punto su Arduino se encuentra correctamente energizado.
Cambio en "PATH" para ejecutar el nuevo arduino más fácilmente
cd ~
nano .bashrc
export PATH=${HOME}/local/src/arduino-1.8.4/:$PATH
Salve el archivo (Ctrl-X), salga de su sesión gráfica y vuelva a ingresar.
Después de esto puede ejecutar solamente “arduino” en cualquier consola para correr el programa arduino.
Agréguese al grupo dialout para poder escribir al puerto del arduino
sudo adduser USER dialout
Parte 2. Arduino software. Uso básico. Blink
En una consola de texto separada ejecute Arduino
Aparecerá el programa de desarrollo arduino en su pantalla
La parte grande de color blanco es la zona donde reside el código de instrucciones de arduino. El código de instrucciones de arduino es similar al lenguaje C simplificado.
El programa tiene un menú con diferentes capacidades y una barra de botones de acciones.
Espere la explicación del profesor sobre como funciona el proceso de desarrollo básico con Arduino
Abra el archivo utilizando el menú: File→Examples→Basics→blink
Se abre el programa ejemplo de “blinking”
Presione el botón con forma de “checkmark” (verify). Este botón realiza una “compilación” del programa actualmente en pantalla. Es una forma de corroborar que el programa fue escrito de forma correcta.
Presione el botón con forma de flecha hacia la derecha. “→” (Upload). Este botón descarga “flashea” el programa compilado al microcontrolador. 2) Describa lo que sucede durante este proceso.
La luz roja “L” del arduino debería destellar con una regularidad de 1 segundo aproximadamente.
Parte 3. Modificando Blink
La instrucción “delay”, realiza una espera sobre el programa, esto causa que el LED se mantenta en el último estado seleccionado por el tiempo determinado por “delay”. Modifique “delay” en todos los lugares del programa, cámbielo de 1000 a 5000. Compile y descargue el programa en el arduino. (de ahora en adelante “ejecute” el programa) 3) Cuánto tiempo dura el LED encendido y apagado? 4) Cuál es la unidad utilizada en la instrucción “delay”?
Siga modificando los valores de “Delay” hasta que no logre observar con los ojos la intermitencia. 5) Cuál es el valor más bajo de “delay” que puede usted observar con sus ojos? 6) Convierta dicho valor al periodo de la señal y su frecuencia.
Modifique el programa para utilizar otro “pin” de salida del Arduino. Modifique la instrucción “pinMode”. Puede crear una variable nueva arriba primero:
int d12 = 12;
pinMode(d12, OUTPUT);
Desconecte el Arduino de la computadora. Tome atención a las instrucciones del profesor. Nunca conecte el Arduino a la computadora cuando está utilizando los pines externos antes de tener el visto bueno del profesor o asistente.
Conecte el arduino a una protoboard. Conecte un LED en serie con una resistencia de 330ohms entre el pin +5V y el pin D12.
Modifique las instrucciones del programa “digitalWrite” de la siguiente forma:
digitalWrite(d12, HIGH)
y
digitalWrite(d12, LOW)
respectivamente.
Llame al profesor para conectar el arduino a la PC.
Ejecute el nuevo programa en el arduino. El LED debe parpadear a la velocidad previamente seleccionada.
Conecte un osciloscopio al pin D12. Para esto espere las instrucciones del profesor.
7) Encuentre la velocidad mínima de parpadeo del LED visible por el osciloscopio (disminuya el tiempo de espera delay hasta que no se pueda observar correctamente una onda cuadrada en el osciloscopio, recuerde ajustar siempre el intervalo del tiempo del osciloscopio). 8) Mida con el osciloscopio el tiempo en bajo y el tiempo en alto. Observer si dichos tiempos varían o no son estables. 9) Calcule el periodo y la frecuencia de la señal. 10) Qué tipo de señal es esta? 11) Por qué se conecta el LED a la señal de +5V en lugar de GND o tierra?
Opcional
La parte opcional no tiene puntaje asociado, pero representa un reto interesante que consideramos una buena oportunidad de aprendizaje.
Referencias