Logochip es un microcontrolador basado en el Microchip PIC18F2320, el cual nos permite automatizar mecanismos, robots y amplia serie de circuitos, ademas los usuarios pueden desarrollar programas usando una versión especial del lenguaje de programación llamada Logo desarrolllada en el MIT.
jueves, 14 de agosto de 2008
miércoles, 16 de julio de 2008
Protitipo Logochip Arm V 2.0
Aca, utilize tres motores, tres sensores, dos sensor de tacto para controlar limites de movimiento y el sensor de rotacion para determinar los 180 grados de giro.
El robot posee una secuencia automatizada para tomar objetos, lo que mas me gusta es el diseño del brazo, que utiliza un engrane de 40 pines fijo y un tren de engranes que gira alrededor de el.
Espero colocar el video pronto.
martes, 8 de julio de 2008
Logochip Pcb Primera etapa.
De nuevo por aca, esta vez para presentarles el diseño de mi pequeña placa de circuito impreso para Logochip, pues aun continuaba usando la protoboard, y decidi que era mejor montarlo en una PCB.
Bien esta es una primera etapa, aqui estan dos imagenes del circuito. Los diseñe en PCBwizard y Livewire, que son unos programas para hacer placas de circuitos, diseñar y probar circuitos electronicos.
Aun lo continuo mejorando, pero el diseño esta quedando bastante bien.
Sin no saben como hacer un circuito impreso, en pocos dias estare detallando como se hacen artezanalmente.
miércoles, 23 de abril de 2008
PumperBot
Lo construi para jugar un rato programando, y realizar algunos proyectos con unos alumnos con los cuales estoy armando robots parecidos.
Este tiene ademas, dos touch sensors, construidos con dos micro switch de mouse viejo, bueno es reciclar :)
Logochip Brick Sorter V 1.0
La tarea de este Bot es organizar ladrillos de distinto color en sus respectivos compartimentos, esto gracias a la mecanica y muy importante al programa y su algoritmo, pues posee un sensor de luz para leer los colores de los distintos ladrillos, y un sensor de rotacion para saber en cual compartimiento debe de dirigir cada ladrillo.
http://www.youtube.com/watch?v=wf5DjN30hhU
Aca tuve vario desafios, porque no poseeo un sensor de color, me vali del hecho de que podemos calacular un color respecto al rebote de la frecuencia que devuelve un color cuando aplicamos Luz Ir, como se hace con los sensores Lego.
Logochip Line Following V 1.0
http://www.youtube.com/watch?v=el7NTdYukU4
Utiliza mi sensor de luz, que es relativamnte facil de construir, pues consta de un led y un pequeño fototransistor el cual envia la luz reflejado por cada color, esto despues se asocia a una subrutina que hara que el robot ejecute lo deseado.
Biped Logochip V 2.0
en crearlo. Se basa en el estilo de Joe Nagata, este robot puede caminar adelante, atras, y dar vuelta.
http://www.youtube.com/watch?v=oR8_9WsbcWc
Lo interezante de este es el balance que se produce en los pies, me empeñe en estudiar como Joe Nagata diseño sus bipedos y trate de lograr construir uno en base a sus fotografias y explicacion del mecanismo, en cuanto al programa, podemos hacerlo de varias formas, podemos utilizar sincronizacion o utilizar control por sensores de tacto para lograr el control de las piernas.
Circuito alternativo para mover motores.
Cuando pretendemos controlar cargas inductivas con un sistema digital, nos encontramos que no podemos realizarlo directamente. Debemos usar un "driver" o excitador para separar la señal emitida por el sistema digital, del circuito inductivo o de potencia. Para esto se necesita un Puente H que puede armarse de distintas formas. Elegimos este circuito integrado por ser de fácil adquisición y económico, además se evita el trabajo de armar un Puente H con componentes discretos.
Este circuito permite realizar un Puente H para hacer girar motores de CC en ambas direcciones, del tipo de los que se utilizan en juguetes, radio grabadores, lectoras de CDs, etc. Con dos circuitos como este, (4 integrados LM 386) se pueden controlar motores paso a paso de cuatro terminales.
Con "Pin", se hace referencia a la conexión desde las salidas del sistema digital.
En nuestro caso podrian ser 7 portb, y 6 portb.
El conexionado no es el mismo que se utiliza cuando se emplea el LM 386 como amplificador de audio, esto se hace para lograr un comportamiento casi digital.El funcionamiento es muy simple, poniendo en estado alto uno de los pines de entrada, el motor DC gira en un sentido. Al invertir el estado de los pines de entrada, gira en el otro. Con los dos pines en alto o en bajo simultáneos no gira.
Este circuito me fue de maravilla, porque tenia unos cuantos Lm386 en casa los cuales hace ya tiempo no utilizaba.
Desde luego, este circuito lo probe y calcule para que sirviese con los motores Lego, ya que exactamente nuestra resistencia de 15 Kilo ohmios nos da la corriente necesaria para activar el Op amp, recordemos nuestro Logochip ofrece salidas TTL (5 voltios).
Exactamente hablando el Motor es el 71427, el cual posee las siguientes caracteristicas:
Motor sin carga, 3.5 mA.
Motor con carga, 360 mA, en 6 N.cm
Algo muy bueno, es que este motor cuenta con una proteccion,un resistor PTC Epcos B1056 y un diodo de uso general, los cuales se encargan de la sobreintensidad de corriente, y el sobre exeso de temperatura, si se levanta la temperatura demasiado, su resistor aumenta y limita la corriente.
http://www.cursoderobotica.com.ar/robotica/inftec/puenteh/
Podemos hacer Sonido!!! en el Logochip.
Claro, y es facil.
Construi un pequeño piezo electric Beeper, para darle sonido a mis Robots.
Este es un pequeño código con el que podemos introducir la duración y la nota que deseamos.
to powerup
write portb-ddr 0 ; setea port B a salida
end
to click-on
setbit 0 portb
end
to click-off
clearbit 0 portb
end
to delay :n
repeat :n [no-op]
end
to note :period :duration ; introducir nota,periodo y duracion
repeat :duration [
click-on
delay :period
click-off
delay :period
]
end
to warble :times ; sonido parecido a un telefono
repeat :times [
note 2 200
note 1 200
]
end
Nuevo Rotation Sensor
Este sensor de rotación lo diseñe para construir un servo control, lo utilice en mi Brick-Sorter V1.0, necesitaba decirle a un motor moverse tantos pulsos hacia la derecha o la izquierda, aca esta el diagrama que es relativamente fácil de hacer, y cabe en un ladrillo de Lego de 2X4.
Vout en este caso nos proporcionara los pulsos que necesitamos.
to Rot-sen-A :a
setbit 4 porta-ddr
write portb-ddr 0
setn 0
on-m1
loop [ wait-for-edge
setn n + 1
ifelse (n = :a) [off-m1
setn 0
stop!]
[on-m1]
]
end
to Rot-sen-R :r
setbit 4 porta-ddr
write portb-ddr 0
setn 0
in-m1
loop [ wait-for-edge
setn n + 1
ifelse (n = :r) [off-m1
setn 0
stop!]
[in-m1]
]
end
to wait-for-edge
waituntil [break?]
waituntil [not break?]
end
to break?
output testbit 4 porta
end
to on-m1
setbit 6 portb
clearbit 7 portb
end
to in-m1
setbit 7 portb
clearbit 6 portb
end
to off-m1
clearbit 7 portb
clearbit 6 portb
setn 0
end
Three Touch sensor
Este se aprovecha del simple hecho de que el Logochip poseen entradas analogicas que se convierten a un numero de 0=0v a 1023=5v, el Logochip proporciona alimentacion en serie con una resistencia de 10 Kilo ohms , produciendo un divisor de voltage.
El circuito es mostrado abajo.
Son tres resistencias en serie, las entre cada una de ellas posee un conector para las conexiones del interruptor.
Al cerrar un interruptor la corriente se va por el camino mas facil y no pasa por la resistencia, provocando asi un voltaje distinto en el divisor de tension.
Para el programa solamente deven hacer rangos para cada valor que haga cada interruptor, ademas veamos que poseemos 8 valores distintos.
Rotation Sensor o Encoder
Bien lei un documento viejo del antigo Logohip 16F876, y este se llamaba http://www.wellesley.edu/Physics/Rberg/logochip/docs/feedback.doc, hablaba de como construir un Shaft Encoder o bien un Sensor de rotacion, el problema es que se utiliza el Pin C0, que es un contador, pero que nuestro nuevo Logochip V 2.0 no tiene o es otro Pin en este caso el A4.
Busque el datasheet para encontrar este Pin y vi el codigo que presentaba el documento, que mide el periodo para una revolucion, pero lo que me interezaba era hacer que una rueda u otro mecanismo, de N revoluciones.
Aqui les presento las forma de construir su propio Encoder, en el que utilizo un pequeño pulsador que cuenta los pulsos de una polea de lego de 6 huecos.
El sensor deveria ir unido al eje de nuestro mecanismo en mi caso de prueba al motor el cual lleva un engrane de 8 dientes y el eje de la polea uno de 24 dientes, ah.. utilizo un motor de Lego gris lo uni al los pines 7 y 6, no es correcto porque este motor trabaja con mas corriente pero es solamente para hacer una prueba, y por no requerir mucho torque no dañara nuestro Logo..
Este es el programa...
; Jimmy Bolaños
; Demo Sensor de Rotacion
; una Revolucion = 6 clicks.
to Rot-Sensor
setn 0
setbit 4 porta-ddr
write portb-ddr 0
on-m1
loop [ wait-for-edge
setn n + 1
ifelse (n = :m) [off-m1
setn 0
stop!]
[on-m1]
]
end
to wait-for-edge
waituntil [break?]
waituntil [not break?]
end
to break?
output testbit 4 porta
end
to on-m1
setbit 7 portb
end
to off-m1
clearbit 7 portb
end
Diferential Light Sensor.
El sensor ligero se puede utilizar para seguir una fuente de luz, pero no trabaja muy bien
porque mide solamente mide el nivel de luz en un punto. Cuando la luz total del sitio
cambia, el sensor puede ser engañado. El Diferencial Light sensor presentado aquí utiliza dos LDR (Fotorresistencias) y envían la diferencia del valor de luz al Logochip. El diagrama muestra el nivel de luz leído por el Logochip que es alrededor de 511 cuando el nivel de luz esta balanceado entre los dos sensores.
Cuando el sensor derecho ve más luz, el valor aumenta y cuando el sensor izquierdo ve más luz el valor disminuye.
El circuito para el sensor es el que se muestra. Dos fotorresistencias hacen un divisor de voltaje. Estas podrían dividir el voltaje entre ellas en 2.5 V cada una y dependiendo de cual de ellas vea mas luz el voltaje variara de (0V a 5 V).
Yo introduje mi sensor en un pequeño ladrillo de Lego de 2x4.
Cálculo de lecturas, para el diseño de sensores.
La figura de abajo muestra cómo se dispone el resistor de referencia. El
Logochip mide la caída de tensión a través del sensor, esta se puede calcular con
la siguiente ecuación.
Voltaje = 6 * Rs/ (10K + Rs)
(6 v es la fuente, independientemente puede ser 5, pues el Logochip asumirá este como el valor mas alto.)
Donde Rs = Resistencia del sensor
Si la tensión es 6 o 5 voltios obtenemos una lectura de 1023. Ponemos la misma ecuación para obtener las lecturas del sensor directamente.
Valor del sensor = 1023 *Rs / (10K + Rs)
10 bits = 1023 = 1111
Pruebalo!!!
¿Tiene usted un LogoChip? ¿Desea saber lo que puede hacer con él? ¿No lo conoce pero le gustaría usarlo?
¿Qué es el LogoChip?
Un LogoChip es básicamente un microcontrolador equipado con un Logo firmware. Es como tener una computadora instalada con un software. Sin el Logo firmware el LogoChip seria solo un integrado en blanco.
¿Pero que es un microcontrolador?
Para comenzar, es un pequeño integrado que puede controlar cosas, por ejemplo luces, motores, relays, displays o dar vida a un Robot, esto llevado a cabo por sí mismo o por una causa externa como lo son sensores.
Digamos entonces que usted desea encender y apagar un Led, o hacerlo por un tiempo determinado, entonces usted sabrá que necesita conectar el Led a una salida.
También, si usted quiere que el Led encienda bajo cierto efecto, usted tendra que usar un sensor y desde luego colocado en una entrada.
Basado en esto, sabrá que debe accionar salidas y entradas.
Todo esto es llevado acabo por el LogoChip, primero usted necesita programarlo y luego unir las entradas y salidas a sus dispositivos.
Porqué tengo que conectar mi computadora al LogoChip?
La computadora es usada para compilar las instrucciones que usted necesita que el LogoChip lleve a cabo. Esto porque la computadora nos provee una vía para que nosotros como humanos comprendamos el Logo Lenguaje.
Entonces la computadora toma esas instrucciones que nosotros escribimos, y hace que estas se comuniquen con su primo lejano el LogoChip. Esto gracias a que la computadora habla el mismo lenguaje que el LogoChip.
Vean este esquema explica lo que acaba de decir:
El LogoChip viene con un software libre llamado LogoChip Logo. Logo porque este es un lenguaje de programación inventado por el MIT.
Usted utiliza el software para permitir la comunicación entre el LogoChip y la computadora a través de un cable serial.
¿Bien, ahora como yo le enseño al LogoChip?
Ahora que usted sabe como comunicarse, hay dos formas de hacer esto:
1. Mecanografiar los comandos directamente en el comand-center de la interfaz LogoChip.
2. Utilizar un redactor externo tal como Bloc de notas y escribir comandos llamados Programas. Entonces descargamos el archivo a su LogoChip usando el software LogoChip.
¿Bien, ahora como yo le enseño al LogoChip?
Ahora que usted sabe como comunicarse, hay dos formas de hacer esto:
1. Mecanografiar los comandos directamente en el comand-center de la interfaz LogoChip.
2. Utilizar un redactor externo tal como Bloc de notas y escribir comandos llamados Programas. Entonces descargamos el archivo a su LogoChip usando el software LogoChip.
Hola a todos los que usan Logochip Logo...
Me llamo Jimmy Bolaños, soy Electronico, estudio Ingenieria Mecanica, utilizo Logochip para dar vida a mis Robots de LEGO, y otras creaciones.
En este Blog, presentare mis proyectos he investigaciones basadas en este ladrillo programable.
Prmero que todo, visiten la pagina principal mis amigos:
Brian Silverman (MIT Media Lab), Bakhtiar Mikhak (MIT Media Lab) y Robbie Berg (Wellesley College Physics).
http://www.wellesley.edu/Physics/Rberg/logochip/
Aqui encontraran toda la informacion de como obtener o construir su propio Logochip.
Bueno, ahora a divertirse con este fabuloso ladrillo programable.
LEGO® is a trademark of the LEGO Group of companies which does not sponsor, authorize or endorse this site. LEGO has its own homepage: www.lego.com, and a page on the Mindstorms system: mindstorms.lego.com.
Logochip Arm V 2.0 Video
Aca les dejo un video del Arm en funcionamiento.
-
Bien este es mi segundo Bipedo construido con Logochip, verdaderamnete me esforce bastante en crearlo. Se basa en el estilo de Joe Nagata, e...
-
Logochip De nuevo por aca, esta vez para presentarles el diseño de mi pequeña placa de circuito impreso para Logochip, pues aun continuaba u...