Instituto Tecnológico de Veracruz Departamento de Eléctrica - Electrónica Manual de Prácticas Materia: Carrera: MICROCONTROLADORES MECATRÓNICA Estructura del reporte de Práctica: • • • • • • Hoja de presentación Descripción de la práctica Antecedentes Programas Diagramas esquemáticos Evidencias El reporte se debe entregar en archivo PDF y el nombre del mismo debe estar conformado por: PRACTICA_n_EQUIPO_m_AAAAMMDD.pdf Donde “n” es el número de práctica, “m” el número de equipo, “AAAA” es el año, “MM” el mes y “DD” el día. Práctica 1. Intefaces digitales a) Flip-flop JK en modo toggle • Generar una señal de reloj de 2Hz con el Arduino en el pin digital 2 y aplicarla al flip-flop, conectar un LED a la salida Q del flip-flop b) Multiplexor • Conectar un multiplexor de 4 entradas a 1 salida: 1. pines digitales 2 y 3 a las entradas de selección del multiplexor 2. conectar dos LEDs uno a cada entrada con una resistencia de 330 ohms 3. colocar un DIP-SWITCH a las entradas del multiplexor con resistencia de pullup para cada entrada 4. conectar la salida del multiplexor al pin 4 del Arduino 5. conectar un LED con su resistencia al pin 5 del Arduino 6. Realizar un programa que envíe de forma secuencial las combinaciones: 00, 01, 10, 11 a las entradas de selección del multiplexor con un retardo de un segundo para cada una. El programa deberá leer la salida del multiplexor para cada combinación y enviarla al LED Lista de partes: - Arduino - Flip-flop tipo JK: 74HC76 o CD4027 - Multiplexor: 74HC151 o 74HC153 o CD4067 - LEDs - Resistencias de 330 ohms Práctica 2. Control de motor de pasos • • • Conectar motor de pasos (28BYJ-48) con tarjeta de potencia (ULN2003) al Arduino Conectar 4 botones con pull-up Realizar programa en el Arduino para que interprete los botones de la siguiente manera: ◦ 2 botones de movimiento lento (10 pasos) hacia adelante y atrás respectivamente ◦ 2 botones de movimiento rápido (100 pasos) hacia adelante y atrás respectivamente Lista de partes: - Arduino - Motor de pasos 28BYJ-48 - Tarjeta de potencia para motor de pasos ULN2003 o equivalente - Dos botones tipo push Práctica 3. Control de motor de DC con puente H y PWM • • • • Usar módulo con circuito de pontencia L298 Usar motor de DC de 9 a 12V 1A máximo Conectar 3 botones con pull-up Realizar programa en el Arduino tal que: ◦ Un botón acelera de 0 a máximo paulatinamente en una dirección ◦ Un botón acelera de 0 a máximo paulatinamente en otra dirección ◦ Un botón detiene al motor Lista de partes: - Arduino - Motor de DC de 9 a 12 volts 1A máximo - Controlador de motor de DC para Arduino L298 - Tres botones tipo push Práctica 4. Conversión AD y DA a) Conversión AD • Usar un generador de señales, generar una señal senoidal unipolar que tenga un rango de 5Vpp de amplitud y una frecuencia de 60Hz • Leer la señal analógica con un pin del arduino y plotearla con el IDE b) Conversión DA • Tabular los valores de una señal senoidal unipolar que tenga un rango de 0 a 255. El total de valores a tabular será de 30 (15 para el ciclo "positivo" y 15 para el ciclo "negativo" • Conectar un filtro paso bajo simple con frecuencia de corte de 60Hz (fc = 1/(2piRc) a una salida analógica • Hacer un programa que envíe los valores tabulados a un PWM conectado a la salida analógica de tal forma que genere una señal de 60Hz Lista de partes: - Arduino Práctica 5. Comunicación serial SPI • • • • Conectar tres registros de corrimiento en forma serial Las salidas de los registros de corrimiento deben ir conectadas a LEDs, en total 24 acomodados en una matriz de 3 x 8 Crear dos animaciones simples de cuatro segundos de al menos 10 escenas por segundo Ejemplo de escenas: 11000000 01100000 11000000 01100000 00110000 01100000 00110000 00011000 00110000 00011000 00001100 00011000 00001100 00000110 00001100 00000110 00000011 00000110 00000011 00000001 00000011 00000001 00000000 00000001 00000000 00000000 00000000 00000000 10000000 00000000 10000000 11000000 10000000 Lista de partes: - Arduino - 24 LEDs - 24 resistencias de 330 ohms - Tres CI registro de corrimiento 74HC164 o 74HC595 Práctica 6. Comunicación serial I2C • Emplear dos arduinos ◦ Arduino maestro: ▪ Dos botones para pedir lectura del ADC esclavo, canal 0 y canal 1 ▪ Recibe lectura del esclavo, la convierte en voltaje y la imprime por el puerto serie ◦ Arduino esclavo: ▪ Recibe del maestro la solicitud del canal a convertir ▪ Lee el canal solicitado ▪ Envía la lectura al maestro ▪ Las lecturas son de 16 bits Lista de partes: - Dos Arduinos - Dos botones tipo push - Dos potenciómetros de 10K Práctica 7. Sensor de temperatura y humedad • • • Usar un sensor de temperatura y humedad DHT11 Usar una pantalla OLED de 128x32 pixeles Desplegar cada dos segundos la lectura de la temperatura en el renglón uno y la humedad en el dos Lista de partes: - Arduino - Sensor de temperatura y humedad DHT11 - Pantalla OLED de 128x32 pixeles Práctica 8. Sensor ultrasónico • • Usar un sensor ultrasónico Desplegar en el puerto serie la distancia en centímetros a la que se encuentra el objeto al frente del sensor Lista de partes: - Arduino - Sensor ultrasónico para Arduino