viernes, 29 de marzo de 2013

Matriz de led con Arduino sin multiplexores externos

Hace algun tiempo publique un video de control de una matriz de led 7x5 en asembler, en esta oportunidad les traigo el control de una matriz con arduino leonardo, espero lo disfruten
_________________________________________________________________________________

lunes, 25 de febrero de 2013

0-Libros y tutoriales para ver y descargar

Ante la gran abundancia de proyectos e información de Arduino les empezare a dejar todo lo que encuentre relacionado a este excelente producto de desarrollo electrónico  que podemos adquirir en todo el mundo, de forma especial en Colombia con la empresa Microelectronicos.

Guías de iniciación del foro Arduino

http://arduino.cc/forum/index.php?PHPSESSID=467fa06255c0237278c1848b354961ef&topic=50210.0
http://arduino.cc/es/Tutorial/HomePage

Software utiles
descarga fritzing (el mejor emulador de Arduino Open Source)

jueves, 7 de febrero de 2013

Ejemplo anterior mediante uso de FOR

aquí colocare el mismo ejemplo anterior pero de una manera mas optimizada meidante le uso de for , esto noe evitara estar declarando tantas veces la configuracion de salida.

ejemplo: hacer un programa de juegos de luces que use los pines 8,9,10,11,12,13 que su código sea mas corto que el ejemplo anterior mediante el uso de for, comparaciones, declaración de variables.

solución:
el montaje es el mismo del ejemplo anterior





Efecto de luces con mas LED y declaracion de variables

vamos avanzando poco a poco, ahora aremos una variante del ejemplo anterior renombrando los pines con el nombre que queramos y usaremos mas salidas.
para este ejemplo usaremos la definicion de variables que puede ser entera (int) o decimal(float)

la estructura es muy simple
ejemplo deseo renombrar el puerto o pin 13 para ello lo hago antes del setup

int led1=13; con esto estoy declarando que el pin 13 se llamara de ahora en adelante led1 y sera entera (es mejor nombrarse int por que un numero entero es aquel que no tiene decimales, osea que pin 13 no tiene 13 y un poquito, pin 13 es entero, aunque puede colocar float pero el programa puede tener problemas en identificar el valor, por ejemplo la salida es 2,5 voltios para el sistema es tres, en cambio si la usamos como real entero el sistema toma valores de cero y uno)

ejemplo: hacer un juego de luces con 6 led usando los pines 8, 9, 10, 11, 12, 13 y cada led se apagara y prenderá el siguiente hasta repetir el proceso.

continuación

el montaje es el siguiente:







miércoles, 6 de febrero de 2013

Hola mundo de Arduino (prender y apagar un led)

antes de llegar hasta este hitem les recomiendo por cultura general buscar y leer cuanto libro de arduino encuentre, investige sobre la tarjeta que usara para las practicas, y sobre todo leer los puntos anteriores para entender que vamos hacer en este básico ejemplo de inicio.

como ya mencione anteriormente arduino trae un resto de ejemplos que están comentados en ingles y que usted puede compilar y cargar en el arduino, en mi caso todas las practicas las voy a hacer con leonardo ya que mi arduino R3 UNO esta dañado.

materiales para esta practica
es muy importante conocer las partes de la tarjeta a usar, en esta foto podemos ver la tarjeta de leonardo



1- Problema
prender y apagar un led cada (cero)500ms y cada (uno)100ms de forma automática y que el ciclo se repita.

solución:
voy hacer una serie de pantallasos del IDE de arduino donde esta escrito el código  perfectamente lo puedo escribir aquí pero la idea es usted como lector no copie nada si no que usted mismo lo escriba, esto estimula a memorizar de mejor manera los procesos.

el circuito electrónico es el siguiente (para todos los ejemplos virtuales usare arduino UNO)


antes de empezar conecte y configure bien el arduino.

Después de escribir todo el código hay que guardarlo, luego clic en compilar al final se carga el proyecto dando clic en la flecha



ahora nos queda hacer el montaje físico en la protoboard (monte como esta en la imagen)
después de conectado el arduino por usb y a su PC y cargue el código compilado al arduino el cul estara conectado al pin 9(en el programa lo coloque el 13 pero usted puede colocar cualquiera)
no se preocupe por el voltaje ya que el usb alimentara su proyecto, pero si desea alimentación externa de 12vCC es lo recomendado, conecte un cargador y desconecte el USB (hay arduinos que traen un Jumper para cambiar entre USB y externo, verifique el plano de su arduino)


verifique que su led prende y apaga segun el tiempo programado, experimente cambiando los tiempos.
_________________________________________________________________

_________________________________________________________________

próximamente habrá mas vídeos de cada practica...esperalos.... 






Códigos para programación de Arduino

A medida que los ejemplos van  aumentando iré publicando mas códigos  de programación
Disculpen las molestias que esto pueda causar

hay que reconocer que arduino es como PICC en pics , tiene una interfaz amigabla y su software esta lleno de librerias que nos facilitan el manejo y control de arduino, todo esto nos permite que cualquier persona sin ser electrónico o programador pueda hacer pruebas y buenos proyectos con las tarjetas Arduino.

Estructura de Arduino

arduino basa su lenguaje en C ++, por tanto aquel que sepa programación podra hacer cualquier proyecto y le sera muy facil programar en este lenguaje.

arduino tiene la siguiente estructura la cual siempre debe ir sin importar la complejidad del proyecto o la sencillez del mismo.

void setup()

{
//aquí va la configuración de los pines
}

void loop()
{
//aqui va el programa a ejecutar
}


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

void, es una función(cumple una determinada labor dentro del programa) vacía que no le quita ni le pone al programa pero debe ir.
void setup(), significa instalación, pero en este caso se refiere a toda la configuración requerida para que el programa funcione, como definición de variables, configuración de puertos etc.
void loop(), loop significa bucle o ciclo. Como todo programa tiene un inicio y un fin, en pic uno coloca org 0 y al final end o goto inicio, acá los corchetes hacen ese inicio y ese fin y loop hace la ejecución del programa en general sin importar que hayan mas funciones dentro de el, dicho de otra manera loop es la función principal.
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

arduino tiene una estructura fácil de entender, en pics y en asm uno tenia que ir al banco de memoria y configurar el puerto o pines de salida y entrada, aca se hace lo mismo pero sin tanto cosa.

pinMode(x, OUTPUT); pin mode le permite configurar el pin a usar ya sea como salida o como entrada, la X significa el numero del pin que fisicamente usare, ejemplo 13, OUTPUT equivale a salida, por tanto puedo hacer:

pinMode(12,OUTPUT); en esta pequeña linea acabo de decir que el pin 13 sera salida

pinMode(12,INPUT); Este es un ejemplo de configuración del pin como entrada

toda esta configuración se hace dentro de los paréntesis del SETUP

digitalWrite(X,LOW);cuando trabajamos con códigos binarios hablamos de electrónica digital osea dos estados uno (1, nivel alto) o cero(0, nivel bajo), por tanto al hablar de digitalWrite estamos diciendo escribir digitalmente un esta alto o bajo, osea LOW o HIGH.

ejemplo
digitalWrite(12, HIGH);Con esto estamos diciendo que el el pin 12 se coloque en estado alto digitalmente(1= 5V)




Pasos de instalación de ID de Arduino

Arduino es open source que tiene software y hadware Free, esto se hace con el proposito de que toda la gente haga sus aportes y comparta sus experiencias, viene para linux, windows(Xp,seven) y mac.

1 nos vamos al siguiente link donde descargaremos la ID mas actual http://arduino.cc/en/Main/Software donde descargamos la version para el PC según nuestro sistema operativo.


2 despues de descargada la guardamos donde queramos, luego creamos un acceso directo al escritorio (esto para mejor comodidad)


NOTA antes de iniciar el arduino y antes de conectar nuestra tarjeta verifique que no se encuentre ningun otro puerto serial activo ya que esto genera muchos problemas como desconección automatica del arduino, lentitud al abrir etc (en otro tutorial les explicare todo el proceso) por ahora solo baya a administrador de dispositivos y desactive el puerto serie activo.




3- conecte su tarjeta arduino y su pc pedira automaticamente los controladores, espere que le diga que no se pudo instalar, luego baya a administrador de dispositivos y dele clic derecho a arduino y dele actualizar software, luego escoja la ubicacion en el pc y busque la carpeta donde esta aduino y seleccione driver, clic aceptar y el sistema instalara su controlador, esto se hace para cualquier tarjeta de arduino.
listo su arduino esta intalado, si cambia de puerto por lo común le vuelve  a pedir driver pero el se encarga de volverlos a instalar (caso de windows)


4- ejecute la IDE de arduino

5- luego clic en herramientas y seleccione su tarjeta en mi caso tengo un Arduino Uno y el mas nuevo que tengo es un leonardo

6 luego configuramos el puerto que por ahora debe ser el com8, esto cambia cada vez que lo conecte
7- ya tenemos el sketch listo para trabajar
8- los demás parámetros como programador etc no los cambie déjelo como se instala
9 ahora ya estas listo para empezar luego sigue con el estudio de los códigos básicos y el con el desarrollo de los ejemplos, recuerda que arduino trae muchos ejemplos ya hechos, solo es cuestión de mirarlos y analizarlos para entender su lógica  yo solo soy un puente de ayuda quien te guía gráficamente como hacerlos sin que falles. Estos tutoriales están hechos para personas que no tienen ni idea de programación ni electrónica  las personas que tienen los pre requisitos se pueden saltar muchos de estos pasos y pueden hacer ejemplos mas complejos.


Introducción a arduino

bienvenidos a este espacio donde estaré publicando ejemplos y videos dedicados exclusivamente de arduino  UNO o Leonardo, claro esta que todo funciona en cualquier arduino.

me presento mi nombre es Edison V conocido como editronikx, tambien tengo otro blog dedicado a la electronica en general, decidi abrir este espacio por que arduino se lo merece, es tanto el contenido que se encuentra en la web y tanta gente dedicada a publicar sus trabajos con estas herramientas que mi blog de electronica se queda pequeño para tal fin.

No soy un experto en arduino pero a medida que he voy trabajando con el he mirado que los grandes proyectos solo tienen limite en nuestra mente, cada dia aprendo cosas nuevas y si no se trabaja se olvida todo, cuando empece con arduino hace unos pocos meses no tenia ni idea de arduino, me limitaba a compilar los ejemplos (esto es bueno cuando se empieza) pero mejor es leer libros documentales, videos etc para darse una idea del alcance del producto luego con la mente abierta empezara a analizar la tarjeta con la que se va ha trabajar y de hay se empieza con el HOLA MUNDO DE ARDUINO el juego de luces etc.

Mi proposito es enseñar lo poco que voy aprendiendo y tratar de dejar claro las cosas para que no tengan los mismos problemas que yo he tenido y sigo teniendo.

por el momento les dejo un link temporarl mientras edito el material que tengo donde hay algunos videos de arduino y sus inicios