Loading...
  Show Posts
Pages: 1 2 [3] 4
31  International / Software / Re: Primer Programa ARDUINO - PROCESSING on: September 25, 2012, 11:23:24 am
Eso confirma que efectivamente debe de haber un problema con los archivos en los enlaces.

Yo para poder descargar la librería Arduino. hice uso de un link suministrado por Eried.

http://arduino.cc/forum/index.php?action=dlattach;topic=123883.0;attach=25942

No se si es lo que necesitas, pero aquí está nuevamente re publicado.

Saludos.

32  International / Software / Primer Programa ARDUINO - PROCESSING on: September 25, 2012, 01:56:10 am
Muy feliz de haber logrado el primer objetivo de encender y apagar un led al mismo tiempo que un pequeño motor DC fuera del entorno de desarrollo de Arduino. Totalmente desarrollado en Processing!

Mi experiencia se basa en el uso de la libreria StandardFirmata (incluida en la lista de ejemplos Firmata del IDE Arduino)

Se debe tener correctamente instalada la librería RXTX dentro de processing/java/bin, tanto rxtxParallel.dll como rxtxSerial.dll

Se debe cargar StandarFirmata a la placa Arduino.

Se debe tener la librería Arduino para processing dentro de la carpeta de Sketchs personales. Default (Documentos/processing/libraries/Arduino/) y se debe verificar que "processing.serial"  se encuentre disponible entre las librerias Serial I/O.

Ya una vez completados todos los requisitos se puede establecer una conexión Processing - Arduino sin problemas y se puede experimentar con toda la libertad y potencia de este impresionante entorno de programación.

La libertad es total puesto que se puede crear todo a merced, desde programas muy sencillos hasta programas de control en 3D.

Mi primer programa cumple exitosamente con el encendido de un led y un motor dc debidamente conectado a la placa arduino pin13 para el Led, Pin 9 para el motor.

Como sabrán para el led conectado al pin 13 no es necesario el uso de la resistencia de 220 ohmios de protección, pero para la conexión del motor DC si se hace necesario utilizar un transistor 2n3904 o 2n2222 haciendo el uso de una resistencia de 1k y un diodo 1n4001 de protección contra la inducción del motor.

He dejado un pequeño diagrama que hice en VirtualBreadBoard para que se entienda la debida conexión del motor electrico al Arduino.



La interfaz gráfica resultante en Processing para el programa en cuestión es bastante amigable, A pesar de mi poca experiencia y de ser una completa novata en Arduino; El poder de desarrollo no tiene limites y por esa razón he logrado darle vida a mi aplicación programandole un botón interactivo que responda a detectar la presencia del mouse y con la posibilidad de ser movido a cualquier parte de la pantalla...

Aquí unas imágenes de mi programa en ejecución:







Como Arduino IDE es basado el Processing, su interfaz de programación es bastante similar:



Aquí dejo mi código fuente para el que quiera sumergirse en este poderosa plataforma de desarrollo tenga la primera luz de como hacerlo:

Code:
import processing.serial.*;
import cc.arduino.*;

float cx1;
float cy1;
float mx = 0.0;
float my = 0.0;

boolean click = false;
boolean locked = false;
boolean d = true;

int xy = 15;
int cube= -50;
int led1=13;
int engine=9;
int x=0;

Arduino arduino;

PImage imagen;

void setup(){
 size(150, 126);
 PFont font;
 font = loadFont ("LucidaConsole-48.vlw");
 textFont (font, 8);
 cx1 = width/2;
 cy1 = height/2;

 rectMode(RADIUS);  
 // Arduino setup
 arduino = new Arduino(this, Arduino.list()[1], 57600);
 arduino.pinMode(led1, Arduino.OUTPUT);
 arduino.pinMode(engine, Arduino.OUTPUT);
}

void draw() {
 imagen = loadImage("arduino.jpg");
 background(0);
 image(imagen, 0, 0);
 if (d && cube<width){cube++;}
 else {cube--;}
 if (cube==width){d=!d;}
 if (cube<0){d=true;}
 rect(cube,65,2,2);
 strokeWeight(3);
 stroke(255);
  
 if (mouseX > cx1-xy && mouseX < cx1+xy && mouseY > cy1-xy && mouseY < cy1+xy)
 {click = true; if(!locked) {stroke(255); fill(112,155,255);}}
 else {stroke(255);fill(0,0,0);click = false;}
 rect(cx1, cy1, xy, xy);
 fill(255);
 text ("NATALY PROCESSING - ARDUINO 2012", 10, 120);
}

void mousePressed(){
 mx = mouseX-cx1;
 my = mouseY-cy1;
 if(click) {arduino.digitalWrite(led1,Arduino.HIGH); arduino.digitalWrite(engine,Arduino.HIGH);
 locked = true; stroke(255); fill(166,41,0);}
 else {locked = false;}
}

void mouseDragged(){
 arduino.digitalWrite(led1,Arduino.HIGH); arduino.digitalWrite(engine,Arduino.HIGH);
 if(locked){cx1 = mouseX-mx; cy1 = mouseY-my;}
}

void mouseReleased(){
 arduino.digitalWrite(led1,Arduino.LOW); arduino.digitalWrite(engine,Arduino.LOW);
 locked = false;
}

Me he basado tanto en ejemplos de referencia del propio processing como en esquemas de conexiónes y uso debido de los pines de entrada y salida en la documentación de arduino.cc

Nada de esto hubiese sido posible tampoco, sin la ayuda de diferentes amigos de la comunidad que granito a granito de arena me han podido ayudar con las dudas que he tenido. En agradecimiento, comparto con todos ustedes mi experiencia para devolverle el favor a quien lo necesite.

Nataly López.
Arduino Comunidad Habla Hispana.



Nota: La fuente Lucida Console, y la Imágen de fondo, deben ser ubicadas dentro de una carpeta llamada "data" en el mismo directorio del archivo fuente en desarrollo. Para Agregar la fuente, basta con seleccionarla desde Tools > Create Fonts y automáticamente el directorio "data" con la fuente será incluido en el mismo.





 
33  International / Hardware / Motor DC, L293B y Arduino on: September 24, 2012, 11:07:16 pm
Saludos Amigos!
He logrado mediante el transistor 2N3904, una resistencia de 1k y un diodo 1n4001 conectar a la placa arduino un pequeño motor DC que obtuve de una vieja unidad de dvd rom de ordenador. y mediante un sencillo sketch hacer que encienda y apague.

La configuración que utilicé para hacerlo es muy sencilla y aqui les muestro el diagrama:



Todo eso está muy bien, el motor enciende y apaga cuando quiero hacerlo, pero el motor esta limitado a una sola dirección de giro.

Conseguí un par de Integrados L293B  y se que con ese integrado y con sus debidos diodos se podría controlar la dirección del giro del motor para que que gire hacia adelante y hacia atrás en el momento que se quiera.

Agradecería cualquier experiencia basada en el uso de este Integrado y de su correcto uso, diagramas o esquemas que me permitan poder experimentar y lograr el objetivo de poder verdaderamente controlar dichos motores.

Besos,
Nataly.
34  International / Hardware / Re: Controlar Motor DC Unidad CD-DVD PC on: September 24, 2012, 09:28:06 pm
Jaja, gracias Terraguea, la verdad que cualquier información al respecto me es muy útil y la agradezco de verdad, tengo como proyecto hacer un robot sencillo, por eso estoy aprendiendo lo más que puedo para poder en algún momento lograrlo.

De momento, estoy enfocada en el sistema motor, ya tengo 2 L293B, y cualquier ejemplo de sus aplicaciones en arduino con motores dc me sera muy importante...

35  International / Hardware / Re: Controlar Motor DC Unidad CD-DVD PC on: September 24, 2012, 02:08:34 pm
Muchas Gracias Ionhs!

Ya compre el L293, ahora a experimentar!
Por lo visto ese integrado puede controlar hasta 2 motores, también he leído que usando un transistor 2n2222 y un diodo 1n4001 se podría crear ese puente para controlar un solo motorcito dc.
36  International / Hardware / Controlar Motor DC Unidad CD-DVD PC on: September 24, 2012, 10:47:10 am
Hola Amigos de Arduino Habla Hispana!

Me puse a desarmar varias unidades de CD-ROM viejas, y obtuve sus motorcitos.
Alguien tiene algún esquema para conectarlo a arduino y programar su funcionamiento?

Agradecida de antemano,

Nataly.
37  International / Software / Re: Libreria Arduino - Processing on: September 22, 2012, 10:01:22 am
Jajaja, disculpa por haberlo escrito mal, ya mismo lo arreglo Eried!!! smiley-razz
38  International / Software / Re: 1 Pulsador 2 Led´s on: September 22, 2012, 10:00:29 am
Ese codigo Fermg, lo compilé con mi arduino, pero al probarlo en la plca, cada vez que presiono el interruptor, ambos led´s parpadean muy rapido, cambiando de posición pero lo hacen muy rápido.
El código que hace realmente lo que buscaba en el experimento es el siguiente:

Code:
int led1=10,led2=11,pulse=5;

void setup()
{
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(pulse,INPUT);
}

int x=3;
boolean y= true;

void loop()
{
  if (digitalRead(pulse)==HIGH && y==false){x++;y = true;}
  else if (digitalRead(pulse)!=HIGH) {y = false;}

 if ( x > 3){x=0;}

 switch(x)
 {
 case 0:
  digitalWrite(led1,HIGH);
 break;
 case 1:
  digitalWrite(led1,LOW);
 break;
 case 2:
   digitalWrite(led2,HIGH);
 break;
 case 3:
   digitalWrite(led2,LOW);
 break;
 }
}

De igual forma Fermg, infinitas gracias por estar pendiente. Ahorita estoy en practicas con la conexión Arduino - Processing. Te invito a que leas el post y compartas tus ideas, a ver que podemos lograr hacer.

http://arduino.cc/forum/index.php/topic,123909.0.html

Muchos besos.

Nataly.
39  International / Software / Re: Arduino - Processing on: September 22, 2012, 12:54:24 am
Muy bien, ya con una sola linea agregada al código de processing creo que se ha logrado la primera sincronización, pues el led del pin 13 parpadea cada vez que ejecuto el programa en processing, de forma similar cuando la placa arduino recibe la carga del firmware del IDE arduino.

Code:
import processing.serial.*;
import cc.arduino.*;

int led = 13;
Arduino arduino;
int x;

void setup()
{
  println(Arduino.list());
  arduino = new Arduino(this, Arduino.list()[1], 115200);
}

Pasándole el parámetro [1] y colocando el mismo baud rate 115200

Quote
arduino = new Arduino(this, Arduino.list()[1], 115200);

Solamente necesito agregar las instrucciones correctas para controlar el led en el pin 13!

Ya casi, ya casi...

Cualquier idea o ayuda, Eternamente agradecida.

Nataly.
40  International / Software / Arduino - Processing Prácticas on: September 22, 2012, 12:02:39 am
Bitacora Arduino - Processing 22 septiembre 2012

Gracias a la ayuda de Eried por facilitarme las librerías de processing para arduino y pese a tener dificultades para instalarlo, pues mi Windows es Vista 64 bits.
Tuve complicaciones incluso con Processing (Ultima Versión) Así que fue necesario instalar una versión anterior y más estable la cual resulto ser procesing 1.5.1.
Otros problemas que tuve fue errores de RXTX, y también tuve que reemplazarlo por la versión 2.1-7.

Superado todo eso, Me alegro de saber que todo se encuentra listo al parecer para establecer las comunicaciones entre processing - arduino y visceversa.

Así que les comento mi experiencia:

Como se muy poco de estos 2 grandes lenguajes he realizado mi primer experimento el cual se basa en estos 2 códigos:

En Arduino:

Code:
int led = 13;
char x = 'x';

void setup(){
 
  pinMode(led,OUTPUT);
  Serial.begin(115200);
}

void loop(){
  Serial.println(x);
}

En processing:

Code:
import processing.serial.*;
import cc.arduino.*;

void setup()
{
  println(Arduino.list());
}

Al cargar el programa correspondiente en arduino y al ejecutar el código correspondiente en processing me doy cuenta y me alegra mucho obtener la siguiente respuesta:

Quote
Display 0 does not exist, using the default display instead.
Stable Library
=========================================
Native lib Version = RXTX-2.1-7
Java lib Version   = RXTX-2.1-7
[ 0 ] "COM3"
[ 1 ] "COM8"

Me parece maravilloso que detecta el puerto COM8. Se que es de arduino por que al desconectarlo del puerto USB y ejecutar nuevamente el programa, obviamente no lo marca en pantalla.

Ahora el reto es, mostrar los datos transmitidos por arduino en Serial.println(x);
y enviar algun ciclo desde processing que logre encender y apagar el led de arduino en el pin 13.

Cualquier idea o ayuda, Eternamente agradecida.

Nataly.

41  International / Software / Re: Libreria Arduino - processing on: September 21, 2012, 10:34:59 pm
Ese archivo que adjuntáste, lo descargué y lo descomprimí con el descompresor de archivos zip de windows y este Sí funciona!!!!

Entonces es algo extraño lo que sucede...

Eried!! Gracias nuevamente  smiley-kiss

Ahora a jugar, quiero ver si puedo lograr la comunicación serial arduino - processing smiley-razz
42  International / Software / Re: Libreria Arduino - processing on: September 21, 2012, 08:39:07 pm
Correctamente me la descarga con 10.7 kb

Pero algo sucede que cuando lo intento descomprimir me dice que hay un error inesperado y los archivos tienen 0 kb.

No se si es por que estoy usando Windows Vista 64 bits: :S
43  International / Software / Re: Libreria Arduino - processing on: September 21, 2012, 07:55:47 pm
Eried, Lo intenté pero me sigue descargando los archivos en 0 kb! smiley-sad

Realmente me gustaría tener esa librería para poder comenzar a experimentar con processing.

No se si tengas problema en enviármela.

Un beso, Nataly.
44  International / Software / Libreria Arduino - Processing on: September 21, 2012, 05:14:50 pm
Un saludo a todos!

Trato de descargar la librería Arduino para Processing del enlace:

http://arduino.cc/playground/uploads/Interfacing/processing-arduino.zip

Pero no se si es mi equipo pero los archivos que me descarga están corruptos y son de 0kb.

Si alguien la tiene a la mano o sabe de algún enlace más fiable....

Besos, Nataly.
45  International / Software / Re: Duda sobre 1 Pulsador 2 Led´s on: September 21, 2012, 04:33:28 pm
Ese ultimo código compila bien, pero si se asignan los valores de los pines correspondientes a las variables pinBoton, pinLed1 y pinLed2 al compilarlo me da error y no se por qué.
Pages: 1 2 [3] 4