Admin Admin
Mensajes : 195 Fecha de inscripción : 30/04/2013
| Tema: Controladora USB Brazo Robotico 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. | |
|
777delcar Principiante
Mensajes : 1 Fecha de inscripción : 29/10/2014 Edad : 78
| Tema: Re: Controladora USB Brazo Robotico Jue Oct 30, 2014 12:15 pm | |
| en electronica los circuitos dicen mas que los textos, ¿porque no estan los circuitos? | |
|