Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - braulio--

#221
Cita de: Vaati en  4 Julio 2010, 19:31 PM
Jajaja. Ahora pregunto en la casa de electronica amiga si tienen LDR ni los conocia :P
Esta muy interesante el pygame que hiciste.

Cita de: Daemon Freedom en  4 Julio 2010, 18:05 PM
Está pegando fuerte Arduino en el foro, creo que deberían plantearse crear un subforo solo para esta plataforma...  :rolleyes:
Te comento nomas que yo compre un Arduino porque USTED comenzo con esto en este subforo  :xD

Antes de hacer un subforo convendria hacer un thread introductorio e tutorial de programacion del Arduino no?
De hecho yo compré arduino por verlo en el foro tambien :xD
#222
Gracias, a ver si muestras tú algo de lo que estás haciendo :xD
#223
No me hagas mucho caso, pero me parece que es un MD5 con salto.

Exactamente, md5(adminM0WuLowO4rtRTddG) = af9083d4b82dbc0745b124db3b3cf15d:M0WuLowO4rtRTddG
#224
Pues es cierto, funciona. Esto es un fallo bastante gordo así que ya lo pueden ir arreglando.
#225
Bueno, os voy a mostrar el pequeño proyecto que hice en un momento de aburrimiento.



Eso de arriba es el circuito de arduino, consta de dos ldr que en la imagen aparecen a la izquierda y a la derecha , y un botón. Están conectados a entradas de arduino y lo que hace el programa de arduino es mandar información sobre el estado de las ldr (solo manda un 0 o un 1 dependiendo de que la entrada analógica supere un límite o no) y el botón (si está pulsado o no).

Ya en el ordenador he hecho dos programas en python que reciben información del puerto de arduino.


Por ahora os enseño el segundo que hice con ayuda de pygame. Consiste en que crea una ventana con un cuadrado en su interior y dependiendo de si tapas o no los ldr (si le dejas de dar luz) se moverá hacia un lado u otro, el botón sirve para cambiar el color del cuadrado.

Os muestro un vídeo :
[youtube=425,350]http://www.youtube.com/watch?v=bJqTx4xr68k[/youtube]

Se pueden usar las dos manos a la vez, pero como estaba grabando tenía una mano ocupada.

Os dejo los códigos :

El de arduino :
Código (cpp) [Seleccionar]

int ldrD = 0;
int ldrI = 5;
int boton = 3;
int umbral = 150;
void setup()
{
 Serial.begin(9600);
}
void loop()
{
 int luzD = analogRead(ldrD);
 int luzI = analogRead(ldrI);
 if (digitalRead(boton) == HIGH)
 {
   Serial.print("1");
 }
 else
 {
   Serial.print("0");
 }
 if (luzD < umbral)
 {
   if (luzI< umbral)
   {
     Serial.println("11");
   }
   else
   {
     Serial.println("01");
   }
 }
 else
 {
   if (luzI < umbral)
   {
     Serial.println("10");
   }
   else {
     Serial.println("00");
   }
 }
 delay(100);
}


Y el de python :
Código (python) [Seleccionar]
import pygame,serial,random
ser = serial.Serial('/dev/ttyUSB4',9600) # Modificar por vuestro puerto
pygame.init()

x,y = 500,500
avance = 5
class cosa(pygame.sprite.Sprite):
 def __init__(self,screen):
   self.color = 255
   self.me = pygame.Surface([50,50])
   self.me.fill((self.color,self.color,self.color))
   self.positionx = 0
   self.positiony = 0
   self.screen = screen
 def update(self):
   leido = ser.readline()
   if leido[1] == '1' :
     self.positiony+=avance
   else :
     self.positiony-=avance
   if leido[2] == '1':
     self.positionx+=avance
   else :
     self.positionx-=avance
   if leido[0] == '1': self.colorear()
   self.comprobarcoordenadas()
   self.screen.blit(pygame.Surface([x,y]),(0,0))
   self.screen.blit(self.me,(self.positionx,self.positiony))
   pygame.display.flip()
 def comprobarcoordenadas(self):
   if self.positionx > x : self.positionx-=avance
   if self.positionx < 0 : self.positionx+=avance
   if self.positiony > y : self.positiony-=avance
   if self.positiony < 0 : self.positiony+=avance
 def colorear(self):
   self.color = (self.color+1)%255
   self.me.fill(((self.color+random.randint(0,255))%255,(self.color+random.randint(0,255))%255,self.color))  
screen = pygame.display.set_mode([x, y])
caja = cosa(screen)
while 1:
 caja.update()


Quien quiera usar el de python tendrá que instalar pygame y pyserial.

Aquí os dejo otro que sirve para mover el ratón con el mismo circuito :

Código (python) [Seleccionar]

#!/usr/bin/python

import serial
import Xlib.display
from Xlib.ext import xtest  
from Xlib import X

class MouseControl:
 def __init__(self):
   self.display = Xlib.display.Display()
   self.screen = self.display.screen()
   self.root = self.screen.root
   self.mousex = 500
   self.mousey = 500
 def arriba(self):
   self.mousey += 10
   if self.mousey > 780 : self.mousey-=10
   self.root.warp_pointer(self.mousex,self.mousey)
   self.display.sync()
 def abajo(self):
   self.mousey -= 10
   if self.mousey<0 : self.mousey +=10
   self.root.warp_pointer(self.mousex,self.mousey)
   self.display.sync()
 def izquierda(self):
   self.mousex -= 10
   if self.mousex < 0 : self.mousex+=10
   self.root.warp_pointer(self.mousex,self.mousey)
   self.display.sync()
 def derecha(self):
   self.mousex += 10
   if self.mousex > 1020 : self.mousex-=10
   self.root.warp_pointer(self.mousex,self.mousey)
   self.display.sync()
 def click(self):
   xtest.fake_input(self.display, X.ButtonPress, 1)  
   xtest.fake_input(self.display, X.ButtonRelease, 1)
   self.display.sync()
ser = serial.Serial('/dev/ttyUSB4',9600) #Modificar por vuestro puerto
mouse = MouseControl()
while 1 :
 leido = ser.readline()
 print mouse.mousex ," ", mouse.mousey
 if leido[0] == '1':
   mouse.click()
 if leido[1] == '1':
   mouse.arriba()
 else :
   mouse.abajo()
 if leido[2] == '1':
   mouse.derecha()
 else : mouse.izquierda()


El que quiera usar este tendrá que instalar además Xlib para python.

Solo funciona en linux.
#226
Si estás en windows, que por lo que dices lo estás puedes cambiar la extensión de .py a .pyc , y ya no te debería salir consola.
#227
Estoy preguntando en serio, la base no es la patilla de en medio??????? Me refiero a los NPN
#228
Foro Libre / Re: Porra! España vs Paraguay
4 Julio 2010, 11:20 AM
Cita de: NaSaRiD15 en  4 Julio 2010, 04:50 AM
En todo caso los ingleses.. y sus ligas estan todas copadas con jugadores de aca..
El futbol se late en sudamerica.. duela a quien le duela..


Sudamerica representa el 5% de la poblacion mundial.. y tiene mas gloria que todo el resto junto..
Sudamérica ha ganado los mismos mundiales que Europa y probablemente este año gane uno de Europa.
#229
Foro Libre / Re: Porra! España vs Paraguay
4 Julio 2010, 00:16 AM
Cita de: kevivaespagna en  4 Julio 2010, 00:09 AM
españoles debeis de estar contentos porque llegan por primera vez a una semifinal... y oiganlo argentinos, brasileños y uruguayos.. jajjaa
Tranquilo, lo estamos.
#230
Foro Libre / Re: Porra! España vs Paraguay
3 Julio 2010, 22:45 PM
De todas formas el gol anulado a Paraguay estuvo bien anulado, así que el arbitro solo favoreció a España en el tiempo que va desde que no saca roja por el penalti hasta que pita el penalti a España (que me pareció bien pitado).