COMUNIDAD DE ELECTRONICOS
Hola eres nuevo,
registrate y disfruta el nuevo foro
de electronica en donde podras dar y recibir informacion de electronica,
y asi mismo hacer tus preguntas para recibir una respueta.
Recuerda que si eres tecnico,Ingeniero o estudiante hay un rango
especial para ti, es gratis solo registrate.
DISFRUTALO

Controladora USB Brazo Robotico

Ir abajo

Controladora USB Brazo Robotico

Mensaje por Admin el Dom Jul 13, 2014 1:45 am




*Proyecto:

El proyecto es una placa USB de control de motores DC, mediante el pic 18F4550 y varios L298N. Realmente el circuito es muy sencillo usa la alimentacion del usb para la placa y la alimentacion 

original del brazo para los motores, calro que este circuito puede usarse para manejar cualquier tipo de motores para otros proyectos. 

El firmware es una simple modificacion del easyhid de microcode studio (Picbasic)

El Software PC es un programa en VB6 que detecta las pulsaciones del teclado y manda las ordenes al pic.


*Fotos:


[ltr][/ltr]



[ltr][/ltr]



Lista de materiales:

1.- (1) PIC18F4550
2.- (1) Capacitor 47uF
3.- (1) Cristal 4 Mhz
4.- (1) Resistencia 220 ohms (Calquier valor vale solo es el pullup para el reset)
5.- (3) L298N
6.- (1) Tira 40 Pines Macho
7.- (1) Tira 40 Pines Hembra[/url]
8.- (1) Terminal chica de 2 bornes para voltaje
9.- (1) Plug USB
10.- (1) Base para circuito integrado de 40 pines

Extras:
Cables.

*Observaciones:

hay varios jumpers que unir, estos estan dibujados en la ultima capa del circuito(capa verde), en la capa verde represente las uniones que se tendran que hacer con cables entre varios puntos del circuito. ( todas las uniones son 1 a 1 quiere decir nunca se cruzan uans con otras van de un puno a otro sin juntarse)

*Como conectar a la placa el brazo?
En el arcivo de Express PBC estan nombrados los motores y como se deven conectar Ejemplo en el puesto M1 se conecta el codo con la polaridad Negro - Azul.

M1 - Codo - Negro/Azul
M2 - Muñeca - Azul/ Negro
M3 - Base - Negro/ Naranja
M4 - Hombro - Negro/ Naranja
M5 - Mano - Negro/Amarillo
M6 es auxiliar No se usa

*Como funciona el programa de VB6?

Primero corre el exe y aparecera un ventana de programa en blanco, eso quiere decir que el programa inicio, despues conetala placa al usb del pc y devera aparecer en la ventana del programa 

conexion. con esto estas listo.

*Como mover el brazo?

Para mover el brazo asegurate de tener seleccionada la ventana del programa( que este arriva de las demas) y despues usa las felchas del teclado para mover 

Tomar en cuenta lo siguiente:

De abajo a arriba los motores son:

Base
Hombro
Codo
Muñeca
Pinza

Combinaciones:

Izquierda ----> Base a la izquierda
Derecha ----> Base a la Derecha
Arriba ----> Hombro hacia abajo
Abajo ----> Hombro hacia Arriba

Shift + Izquierda ----> Codo hacia abajo
Shift + Derecha ----> Codo hacia Arriba
Shift + Arriba ----> Muñeca hacia Arriba
Shift + Abajo ----> Muñeca hacia Abajo

A ----> Abrir Pinza
S ----> Cerrar Pinza


Hay algo imporante a tener en cuenta cuando preciones por ejemplo Shift + Izqueirda No debes dejar de precionar shift hasta despues que sueltes el izquierdo sino el programa no interpretara el 

alto y el motor seguria hasta que sueltes shift + izquierda.

*Exlicaciones de como fuenciona la placa:

Primero el firmware al conectarse a USB queda a la espera de 2 series de 8 bits, cada 2 bits manejan un motor ("01" Gira a un lado, "10" gira al otro) , pero como la placa se limita a 6 motores; en 

la serie 2 los primeros 4 bits siempre seran 0.

Ejemplo:

Serie 1: 0101 0101 Esto es igual a: "M4 M3" "M2 M1" 
Serie 2: 0000 0101 Esto es igual a: "00 00" "M5 M6" ( en esta serie los 4bits del principio siempre seran 0)

Esto quiere decir que La serie1 Activa el portB del pic y la serie 2 el portD

PortB.7 = M4
PortB.6 = M4
PortB.5 = M3
PortB.4 = M3
PortB.3 = M2
PortB.2 = M2
PortB.1 = M1
PortB.0 = M1

PortD.7 
PortD.6 
PortD.5
PortD.4 
PortD.3 = M5
PortD.2 = M5
PortD.1 = M6
PortD.0 = M6

Entonces el programade VB6 lo que hace es detectar la pulsacion de las teclas y enviar las 2 cadesnas poniendo un "1" donde quiere que se mueva cada motor y como escanea todas las teclas 

antes de enviar puedes mover todos los motores a la vez o combianrlos como mejor te convenga.

Teclas en VB6:

Keycode #37 = Izquierda
Keycode #38 = Arriba
Keycode #39 = Derecha
Keycode #40 = Abajo

vbKeyA = A
vbKeyS = S

*MODO AUTOMATICO:

La controladora Recive 255 Bytes de Informacion 128 Bytes de Acciones Y 128 De Duracion de las mimas en un arreglo de Accion(1)-Duracion(1)-Accion(2)-Duracion(2)...Accion(128)-Duracion(128)
Y los almacena en su EEPROM interna para despues reproducir la secuencia en orden en un loop infinito.

Las acciones estan numeradas como:

# 1 Girar Base a la Derecha ("00000001")
# 2 Girar Base a la Izquierda ("00000010")
# 3 Mover Hombro Atras ("00000011")
# 4 Mover Hombro Adelante ("00000100")
# 5 Mover Codo Atras ("00000101")
# 6 Mover Codo Adelante ("00000110")
# 7 Mover Muñeca Adelante ("00000111")
# 8 Mover Muñeca Atras ("00001000")
# 9 Abrir Pinza ("00001001")
# 10 Cerrar Pinza ("00001010")

Esto quiere decir que puede hacer hasta 128 acciones con una duracion maxima de 255 segundos cada una.


*USO Joystick:

Con el programa para Joystick Es muy facil solo corre el programa conecten el Joystick Minimo de 4 botones y conecten el brazo.

El brazo se movera a los lados , adelante y atras usando el joystick.
Si se preciona el boton 1 y adelante o atras, se movera la muñeca.
SI se Preciona el boton 2 y adelante o atras, se movera el codo.
Si se preciona 3 se abre la pinza.
Si se preciona 4 se cierra la pinza.
avatar
Admin
Admin
Admin

Masculino Mensajes : 170
Fecha de inscripción : 30/04/2013

http://electronicageneral.el-foro.net

Volver arriba Ir abajo

Re: Controladora USB Brazo Robotico

Mensaje por 777delcar el Jue Oct 30, 2014 12:15 pm

en electronica los circuitos dicen mas que los textos, ¿porque no estan los circuitos?

777delcar
Principiante
Principiante

Masculino Mensajes : 1
Fecha de inscripción : 29/10/2014
Edad : 72

Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.