lunes, 31 de marzo de 2014

12.5 Creación de una alarma para llamar periódicamente a una función

Problema:


Se quieren realizar algunas acciones en días y horas específicas.

Solución:

Lo primero que se hizo fue descargar las librerías necesarias: la librería Time y TimeAlarms



Al finalizar la descarga de las librerías se prosiguió a agregarse y compilarse el código que se va a utilizar, al compilarse se creara el código hexadecimal que se utilizará mas adelante:



Posteriormente se diseña el circuito y se realizan las conexiones correspondientes, quedando de la siguiente manera:



Se carga el archivo que contiene el código hexadecimal que se generó, el cual tendrá una extensión .hex , para esto se hace click en el botón secundario y se selecciona "Edit properties" como en la siguiente imagen: 



Se desplegará una ventana, localizaremos la leyenda "Program File" e introducimos la dirección donde se encuentra nuestro archivo .hex, que será una ruta similar a "C:/Users\”usuario”\AppData\Local\Temp\build….tmp" como se muestra:



Después, en la barra inferior, se da click en el botón "play" para correr la simulación.



Nos aparecerá una pantalla como la que se muestra a continuación:



Se programo un trigger para que solo se ejecutará una sola vez al transcurrir 10 segundos después de iniciada la simulación



Otro trigger esta programado para que se ejecute cada 15 segundos y otro mas que se ejecuta diariamente a las 8:30 y a las 17:45




12.4 Uso de Arduino como un reloj

Problema
Se desea utilizar la hora del día (hora, minutos y segundos) en un sketch sin conectar un hardware externo.

Desarrollo
En este esquema se utiliza la posición de una resistencia variable para determinar la dirección y la velocidad de ajuste cuando se pulsa un interruptor. La siguiente figura muestra el diagrama de conexión:






Código


Resultado


Usando Tiempo y fechas (12.3-Midiendo la duración del pulso)

Midiendo la duración del pulso

Problema: se quiere determinar la duración de un pulso en micro segundos, por ejemplo para medir el tiempo entre las pulsaciones de un botón.

Para resolver este problema se creo un proyecto y se empezó a diseñar el circuito agregando el arduino, la terminal virtual y el botón quedando algo así:


Realizamos las conexiones adecuadas y agregamos el código con el cual se va a simular el arduino que es el que se presenta a continuación:


Posteriormente cargamos el archivo y buscamos el .hex para compilarlo en el proteus con nuestro arduino.


Iniciamos la simulación en el proteus con nuestro circuito y vemos el resultado:




domingo, 9 de marzo de 2014

Proyecto #1.- Cubo LED (3x3)

RKING******************WORKING***************WORKING*******************WO

Materiales:

1 Arduino
27 LEDs Azules ultrabrillantes
3 Resistencias 22k ohms
9 Resistencias 220 ohms
3 Transistores NPN
1 Protoboard

Código
Imagenes









Videos

https://www.youtube.com/watch?v=bRZL1J4zShc&feature=youtu.be
https://www.youtube.com/watch?v=z76LAhR2Q3o

Prueba final: http://www.youtube.com/watch?v=7VTRlFP5vso&feature=youtu.be

lunes, 3 de marzo de 2014

Matriz de LEDs : Nombres

En esta entrada de blog haremos la siguiente simulacion, la cual tratara de hacer nuestro nombre en una matriz de leds, para esta practica nececitamos lo siguiente:
Proteus
Arduino IDE

A continuacion te mostraremos la simulacion en proteus (armado):

Cada integrante del equipo realizo su codigo a continuacion mostraremos el codigo para cada nombre:

EDUARDO

PAMELA

CONSTANTINO

ROGER

GUSTAVO

DAVID


lunes, 24 de febrero de 2014

SPEAKER ARDUINO: Mario Bros theme

En esta practica realizamos un speaker el cual consiste en conectar al arduino una pequeña bocina la cual reproducira una cancion MIDI.

Materiales:
1. Arduino UNO
2. 8 ohm small speaker

En nuestro caso ya que no contamos con el material, simulamos el programa en proteus a continuacion añadiremos las capturas de pantalla y codigo del programa.

CAPTURA DE PANTALLA

CODIGO DEL PROGRAMA







jueves, 20 de febrero de 2014

Ejemplos de Comunicación parte 2

Bienvenido al Blog



Ejemplo: Serial Event En este ejercicio se hace uso de la funcion serialEvent() la cual despues llama a un bucle() , si es que existen mas datos. Para este ejercicio solo nececitamos la placa arduino y no llevara nada conectado, solo se cargara el programa el cual es el siguiente:

Simulacion en proteus:




Implementacion del ejemplo




Ejemplo witch case 2: En este ejercicio se ve el uso del switch el cual se usa cuando se tiene mas de una opcion la cual elegir. En este ejercicio se muestra cómo utilizar el switch para encender uno de los diferentes LEDs basado en un byte de datos recibidos en serie. El boceto espera entradas en serie, y se enciende un LED diferente para los caracteres a, b, c, d, e.



Simulacion en proteus:




Implementacion del ejemplo:



Ejemplo MIDI; El Musical Instrument Digital Interface, es un protocolo útil para controlar los sintetizadores, secuenciadores y otros dispositivos musicales. Dispositivos MIDI generalmente se agrupan en dos grandes clases: los controladores (es decir, dispositivos que generan señales MIDI basado en las acciones humanas) y sintetizadores (incluyendo samplers, secuenciadores, etc.) Estos últimos toman los datos MIDI en y crea el sonido, la luz, o algún otro efecto.



Simulacion en proteus:




Ejemplo witch case 2: En este ejercicio se ve el uso del switch el cual se usa cuando se tiene mas de una opcion la cual elegir. En este ejercicio se muestra cómo utilizar el switch para encender uno de los diferentes LEDs basado en un byte de datos recibidos en serie. El boceto espera entradas en serie, y se enciende un LED diferente para los caracteres a, b, c, d, e.



Simulacion en proteus:




Implementacion del ejemplo:



Ejemplo Physical pixel: Este ejemplo usa una placa arduino para recivir datos desde una computadora. La placa arduino enciende un led en cuanto este recive el caracter "H" y apaga el led cuando este recive el caracter "L". Los datos pueden ser enviados desde el monitor serial de arduino u otro programa como processing.



Codigo:



Prueba fisica




Ejemplo SERIAL CALL RESPONSE: Este programa envía un ASCII A (byte de valor 65) en el arranque y lo repite hasta que el serial responde desde el ordenador. Entonces envía tres valores del sensor como bits simples, y queda esperando otra respuesta del ordenador. Cuando oprimes el push button, aparece un circulo en la pantalla y este se irá moviendo conforme los sensores detecten movimiento.



Prueba fisica




Ejemplo Read ASCII Table: Lo que hace este programa es cambiar de leds dependiendo del valor que se introduzca:



Imágenes:

Los ejemplos MIDI y MultiSerialMega no pueden ser elaborados fisicamente por la indisponibilidad de las materiales requeridos en tiendas. :(