miércoles, 6 de junio de 2012

Andromie - Prueba de Sensores

Los sensores de proximidad del robot Andromie, son de tipo digital, esto es que dan un 0 lógico si hay ausencia de un obstáculo o está fuera de sus alcance, y un 1 lógico si enfrente del sensor se encuentra un objeto, obstáculo.
Para graduar la distancia a la cual el sensor reconocerá el objeto y pondrá un 1 lógico a su salida, gire con un destornillador pequeño el preset que se encuentra en la tarjeta del mismo. Fíjese para que lado el rango de distancia del sensor es mayor y fíjelo.
Para hacer la prueba de los sensores ensamble la tarjeta "MotorShield" con el arduino y descargue el siguiente código.

/*
 Prueba de sensores de proximidad
 Andromie RF
 CIMecatrónica 2012
 */
 
//Asignación de pines para los motor derecho
int pwmtoder = 10;
int mtoder = 12;

//Asignación de pines para los motor izquierdo
int pwmtoizq = 11;
int mtoizq = 13;

//Asignación de pin de entrada para sensor central
int SenCen = 2;
int ValSenCen;

//Asignación de pin de entrada para sensor derecho
int SenDer = 3;
int ValSenDer;

//Asignación de pin de entrada para sensor izquierdo
int SenIzq = 4;
int ValSenIzq;

//Rutinas
void adelante();
void atras();
void giroderecha();
void giroizquierda();
void derecha();
void izquierda();
void detenido();

//Configuración de entradas y salidas
void setup() {
  pinMode(SenCen, INPUT);
  pinMode(SenDer, INPUT);
  pinMode(SenIzq, INPUT);
  
  pinMode(pwmtoizq, OUTPUT);     
  pinMode(mtoizq, OUTPUT);     
   
  pinMode(pwmtoder, OUTPUT);     
  pinMode(mtoder, OUTPUT);
  
  digitalWrite(pwmtoizq, HIGH);
  digitalWrite(mtoizq, LOW);
  
  digitalWrite(pwmtoder, HIGH);
  digitalWrite(mtoder, LOW);
}

//Ciclo principal
void loop() 
{
ValSenCen = digitalRead(SenCen); //Lectura digital del sensor de proximidad, el resultado se guarda en la variable
  
if(ValSenCen == HIGH) //Comparación, si la lectura es de un 1 lógico hay un objeto, entonces se detiene
{                     // retrocede y gira
    detenido();
    delay(1000);  
    atras();
    delay(500);
    giroderecha();
    delay(500);
}
else                  //Si la lectura del sensor es un 0 lógico entonces se sigue hacia adelante
  {
    adelante();
  }
}


void adelante()  //Función adelante
{
  digitalWrite(pwmtoder, HIGH);
  digitalWrite(pwmtoizq, HIGH);  
  digitalWrite(mtoder,   HIGH);   
  digitalWrite(mtoizq, HIGH);  
}

void atras()   //Función atrás
{
  digitalWrite(pwmtoder, HIGH);
  digitalWrite(pwmtoizq, HIGH); 
  digitalWrite(mtoder, LOW);   
  digitalWrite(mtoizq, LOW);    
}

void giroderecha()
{
   digitalWrite(pwmtoder, HIGH);
  digitalWrite(pwmtoizq, HIGH); 
  digitalWrite(mtoder, LOW);   
  digitalWrite(mtoizq, HIGH);   
}

void derecha()
{
  digitalWrite(pwmtoder, LOW);
  digitalWrite(pwmtoizq, HIGH); 
  digitalWrite(mtoder, LOW);   
  digitalWrite(mtoizq, HIGH);   
}

void giroizquierda()
{
  digitalWrite(pwmtoder, HIGH);
  digitalWrite(pwmtoizq, HIGH); 
  digitalWrite(mtoder, HIGH);   
  digitalWrite(mtoizq, LOW);   
}

void izquierda()
{
  digitalWrite(pwmtoder, HIGH);
  digitalWrite(pwmtoizq, LOW); 
  digitalWrite(mtoder, HIGH);   
  digitalWrite(mtoizq, LOW); 
}

void detenido()
{
  digitalWrite(pwmtoder, LOW);
  digitalWrite(pwmtoizq, LOW);
}

Con el programa anterior se hace la prueba del sensor central, y ocurre que cuando se detecta un objeto se detiene, retrocede  y gira el robot para evadirlo. Para hacer la prueba de los demás sensores haga la lectura del sensor derecho o izquierdo.

miércoles, 30 de mayo de 2012

Conexión de Sensores Andromie RF

Ahora haremos la conexión de los sensores a la placa "MotorShield". En sensor tiene sus pines de salida y de entrada tal como se muestra en la figura 1.
Figura 1. Entradas y salidas de sensor de proximidad digital
En la figura 2 se muestra como se debe hacer la conexión de los sensores a la placa "Motorshield". Por favor asegúrese que cada una de sus tarjetas se encuentren correctamente armadas, primeramente haga una inspección de visual, cerciórese que el y compruebe que las placas de circuito impreso tengan continuidad en los nodos que indica el diagrama esquemático, esto lo puede realizar con la ayuda de un multímetro en la función de continuidad.

Figura 2. Conexión de sensores
Una vez que esté seguro que todo esté bien conectado y no exista ningún corto circuito conecte el shield al arduino y compruebe que prenda el LED de "power". Posteriormente con el uso de una cámara digital verifique que los LEDs infrarrojos de los sensores estén prendidos.
Coloque el circuito integrado de acuerdo con la posición de la muesca de la base para C.I.

martes, 29 de mayo de 2012

Programa Prueba de Motores Andromie - Arduino


La placa de puente H y sensores denominada "MotorShield", esta placa está diseñada para ser utilizada de inmediato en un robot pequeño, usando motores con un consumo máximo de 1A. Se basa en un Puente H de la Empresa Texas Instruments, SN754410NE, que contiene dos canales, cada uno con 3 bits de control, dos para dirección y para PWM, control por anchura de pulso. Para facilitar el control de los motores, y economizar bits de salida/entrada de nuestra tarjeta de control, Arduino o Pinguino, la placa "MotorShield" tiene implementado un circuito el cual sólo necesita un bit para controlar la dirección y otro para controlar la velocidad de cada motor. Siendo las salidas digitales 13 y 11 para el motor "MT1" y las salidas 12 y 10 para el motor "MT2". Cabe mencionar que la salida 13 y 12 son los bits de dirección del motor "MT1"  y  "MT2" respectivamente, las salidas 11 y 10 son los bits de PWM de los motores "MT1" y  "MT2" respectivamente.
A continuación se presenta el diagrama esquemático de la placa "MotorShield".


Para conectarlo a la placa Arduino simplemente se introduce el MotorShield, conexión entre conectores hembras del Arduino y conectores macho de shield, fijándose que coincidan los terminales pin a pin. Para hacer la prueba de los motores, conecte los motores a los terminales MT1 y MT2 y la alimentación del puente H. Es recomendable utilizar fuentes independientes para el circuito lógico y el circuito de potencia, es por ello que en la tarjeta no se toma voltaje del sistema embebido, sino se requiere de otra fuente.
Conectado y energizado el sistema, descargue el siguiente código al Arduino:


/*
Prueba de Motores
 */

//Pines de control de motor derecho
int pwmtoder = 10;
int mtoder = 12;

//Pines de control de motor izquierdo
int pwmtoizq = 11;
int mtoizq = 13;

//Rutinas
void adelante();
void atras();
void giroderecha();
void giroizquierda();
void derecha();
void izquierda();
void detenido();

void setup() {
  pinMode(pwmtoizq, OUTPUT);    
  pinMode(mtoizq, OUTPUT);    
 
  pinMode(pwmtoder, OUTPUT);    
  pinMode(mtoder, OUTPUT);
 
  digitalWrite(pwmtoizq, HIGH);
  digitalWrite(mtoizq, LOW);
 
  digitalWrite(pwmtoder, HIGH);
  digitalWrite(mtoder, LOW);

}

void loop()
{
adelante();
delay(1000);
detenido();
delay(200);
atras();
delay(1000);
detenido();
delay(200);
derecha();
delay(1000);
detenido();
delay(200);
izquierda();
delay(1000);
detenido();
delay(200);
}

void adelante()
{
  digitalWrite(pwmtoder, HIGH);
  digitalWrite(pwmtoizq, HIGH);
  digitalWrite(mtoder,   HIGH);  
  digitalWrite(mtoizq, HIGH);
}

void atras()
{
  digitalWrite(pwmtoder, HIGH);
  digitalWrite(pwmtoizq, HIGH);
  digitalWrite(mtoder, LOW);  
  digitalWrite(mtoizq, LOW);  
}

void giroderecha()
{
   digitalWrite(pwmtoder, HIGH);
  digitalWrite(pwmtoizq, HIGH);
  digitalWrite(mtoder, LOW);  
  digitalWrite(mtoizq, HIGH);  
}

void derecha()
{
  digitalWrite(pwmtoder, LOW);
  digitalWrite(pwmtoizq, HIGH);
  digitalWrite(mtoder, LOW);  
  digitalWrite(mtoizq, HIGH);  
}

void giroizquierda()
{
  digitalWrite(pwmtoder, HIGH);
  digitalWrite(pwmtoizq, HIGH);
  digitalWrite(mtoder, HIGH);  
  digitalWrite(mtoizq, LOW);  
}

void izquierda()
{
  digitalWrite(pwmtoder, HIGH);
  digitalWrite(pwmtoizq, LOW);
  digitalWrite(mtoder, HIGH);  
  digitalWrite(mtoizq, LOW);
}

void detenido()
{
  digitalWrite(pwmtoder, LOW);
  digitalWrite(pwmtoizq, LOW);
}


En el programa están realizadas las funciones para los movimientos básicos de un Robot. Fíjese que al iniciar el programa su robot avance hacia adelante, si alguno de los motores gira en sentido contrario, invierta los cablecillos desde el terminal. En la siguiente entrada se publicará más ejemplos usando la placa "MotorShield" y un robot Andromie RF.

jueves, 10 de mayo de 2012

Andromie RF - Tutorial de Armado parte 3

Deje por un momento de soldar y ahora sí arme la mecánica del robot.
Figura 1. Chasis básico de robot Andromie

El chasis del robot Andromie es plástico, en específico de espuma de PVC, lo cual lo hace muy fácil de manejar, en cuanto al barrenado y pegado de piezas o partes adicionales. Se puede unir muy fácilmente con cianoacrilato, en México: kola loka. 
Alguna de las recomendaciones es no dejarlo cercano a fuentes de calor o encerrado en un automóvil.
El Chasis básico cuenta con pestañas para la sujección de los motores, en esta caso se usarán motorreductores de plástico.

Figura 2. Montaje de motorreductores al chasis del robot

Para el montaje de los motores es recomendable soldar primero los cables a las terminales de los mismo. Los cables para los motores vienen en una de las bolsas del kit y son cuatro, dos de igual color y dos de igual color. Una vez soldados se procede al montaje, pare ello ocuparemos los tornillos de 1/8" x 3/8", si no sabe qué medida es, son los tornillos pequeños que vienen en una de las bolsas del kit. Atornille para sujetar los motorreductores justo como se muestra en la figura 3.
Figura 3. Sujección de motorreductores al chasis por medio de tornillos de 1/8" x 3/8".
Figura 4. Montaje de los motores

El montaje de sus motores le deberá quedar como se muestra en la figura 4. No es necesario apretar con gran fuerza los tornillos, ya que se deformará el plástico, se apretarán únicamente hasta donde se sienta que el tornillo ya no entra con facilidad. Tampoco los deje demasiado holgados.




Figura 5. Colocación de rodamientos en el eje del motorreductor.

Introduzca cada una de las ruedas azules en el eje del motorreductor. Observe que el eje del motorreductor está aplanado por ambos lados, por lo cual es existe una posición para insertar la ruerda. La ventaja de este tipo de eje es que evita que la rueda gire libremente.



Figura 6. Chasis con motores y ruedas montadas.
Figura 7. Inserto de rueda loca tipo "roll-on"

Para lograr un fácil equilibro en el robot es necesario contar con tres puntos de apoyo. Hasta ahora tenemos dos puntos de apoyo que son las ruedas azules, pero requerimos un tercero que no presente mucha fricción. La rueda loca tipo "roll-on" soluciona nuestro problema, ya que no presenta gran fricción y es pequeña en cuanto a tamaño. Si es observador se dará cuenta que es muy parecida al dispensador de líquido de los envases de desodorante, antitranspirante, pero de un tamaño mucho menor.
Para introducir la rueda loca al chasis basta con ejercer presión sobre el orificio, sea muy cuidadoso, no se pase de presión porque prodría dañarla. Debe de entrar por completo, tal cual se muestra en la figura 8.
Figura 8. Detalle de montaje de rueda loca tipo "roll-on"
El primer nivel del chasis del robot ya está armado, ahora colocaremos el nivel donde se sujetaran los sensores y nuestra placa de control y potencia.

Figura 9. Fijación de segundo nivel a chasis básico
El segundo nivel del robot se fija por medio de los tornillos de 1/8" x 1-3/4", usando como separadores los cuatro tramos de tubo de color. En la figura 9 se observa como se hace la colocación y el montaje del segundo nivel.
Figura 10. Atornillado de segundo nivel  de Andromie

Estos tornillos que se emplean son de tipo pasante,  es decir que atraviesan tanto el chasis como el tubo de plástico y se atornillan con una tuerca al final de su carrera. En la figura 10 se observe este detalle.
No es necesario apretar con gran fuerza los tornillos, eso se hará una vez que se encuentren montado los cuatro separadores de plástico, tubos. Esto es por si existe la necesidad de reacomodar los separadores para que los rodamientos no se traben. Una vez ajustados los cuatro separadores se podrá atornillar con fuerza cada unos de los tornillos.
En la figura 11 se presenta una fotografía de como debe de quedar el chasis del robot Andromie de dos niveles.
Figura 11. Chasis de robot Andromie Armado

Andromie RF - Tutorial de Armado Parte 2

En esta segunda parte del tutorial armaremos, montaremos y soldaremos los sensores de proximidad digital. En la entrada "Andromie RF - Diagrama esquemático parte 2" se explica brevemente el funcionamiento de este circuito.
Figura 1. PCB de sensor de proximidad y componentes
Por favor verifique que los componentes estén completos, en la figura 1 se observa la tarjeta y componentes que servirán para cada sensor de proximidad digital. Prepare su cautín y a soldar se ha dicho.

Figura 2. Montaje de resistores.

Como se ha mencionando en el tutorial parte 1, se sueldan los componentes de menor tamaño primeramente de prefencia. Entonces montaremos los resistores de 10k y 100 Ohms. Si revisó la entrada: "Andromie RF - Diagrama esquemático parte 2", sabrá que el resistor de 10KOhms se encuentra conectada al emisor del fototransisto y el resistor de 100 Ohms está conectado al cátodo del LED infrarrojo. 



Figura 3. Soldadura de resistores de sensor de proximidad

Suelde los resistores, recuerde que una buena soldadura tiene forma de montaña y no un exceso de estaño/plomo. Recorte el exceso de las patillas de los resistores.





Figura 4. Montaje de base de circuito integrado

Ahora montaremos y soldademos la base de circuirto integrado de 8 pines. Por favor revise la posición de la muesca, la cual debe de quedar del mismo modo que la que se presenta en la figura 4. Esto se hace para evitar confunsión al momento de insertar el circuito integrado LM358.




Figura 5. Montaje de LED infrarrojo y fototransistor

Los componentes medulares del sensor de proximidad que se está armado son el emisor y el receptor. Se trata de un sensor de proximidad tipo reflex, es decir que es reflectivo, el fototransistor recibe señal únicamente cuando un objeto se interpone en la trayectoria del robot.
Para montar el LED infrarrojo y el fototransistor observe muy bien la figura 5 y 6.


Figura 6. Posición de patillas de fototransistor y LED infrarrojo
Fíjese muy bien de las patillas del fototransistor y del LED infrarrojo mostradas en la figura 6. La patilla corta tanto del fototransistor como la del LED se encuentran mirando hacia la izquierda. En el LED la patilla corta indica el cátodo, en el caso del fototransistor indica el colector. Si aún así en las fotos no le queda claro la posición déjenos un mensaje y con gusto responderemos.

Figura 7. Montaje de capacitor 

Monte y suelde el capacitor cerámico de 0.1uF, recuerde que la nomenclatura de este es 104.







Figura 8. Montaje de preset de 10KOhms

Suelde el preset de 10 KOhms como aparece en la figura 8. Este preset servirá para ajustar el nivel, voltaje de umbral, para el cual el sensor detecte el objeto u obstáculos.






Figura 9. Detale de tira de 3 pines

Para conectar el sensor con la tarjeta "Motorshield" es conveniente emplear terminales como los que se muestran en la figura 9, estos facilitan la conexión de los cables y los vuelven menos vulnerables a quebraduras del cable. Observe que el plástico de la tira de pines está en un extremo, esto se logra colocando la tira de pines contra una superficie y presionando el plástico.



Figura 10. Placa de sensor de proximidad
Es así como se ha terminado de soldar los componentes del el sensor digital del proximidad. Ahora solo resta chequear que no tenga cortocircuito, lo cual podemos hacer primeramente de manera visual y posteriormente con el multímetro.
Figura 11. Chequeo de continuidad con multímetro digital.
Revise y compare la tarjeta de circuito impreso con el diagrama esquemático mostrado en la entrada: "Andromie RF - Diagrama esquemático parte 2" de este mismo blog. Una vez seguro que no existen cortocircuitos y todo se encuentre correctamente montado y conectado inserte el circuito integrado LM358 como aparece en la figura 12.
Figura 12. Montaje de circuito integrado LM358
Verifique la posición de la muesca antes de insertar el circuito integrado. En una de las siguientes entradas se mostrará como conectar y probar el sensor.

miércoles, 9 de mayo de 2012

Andromie RF - Diagrama esquemático Parte 2

Sensor de proximidad digital
Para adquirir información del medio, un robot necesita sensores. Éstos pueden ser de diversos tipos, tales como proximidad, contraste, imagen presión o tacto, cada uno de ellos con diferente fin. Para detectar objetos, obstáculos, el robot Andromie RF cuenta con sensores infrarrojos de proximidad. En la figura 1 se muestra el diagrama esquemático.
Figura 1. Diagrama esquemático de sensor de proximidad digital
Funcionamiento
Uno de los sensores más sencillo para detectar objetos se basa en un LED infrarrojo y en un fototransistor. El LED infrarrojo produce una luz que se encuentra debajo del espectro de luz visible por el ojo humano, es decir que emite una luz la cual no podremos ver a simple vista, lo que tenemos que hacer para comprobar que está emitiendo luz es verlo con una cámara digital. El fototransistor por su parte es un dispositivo electrónico que es capaz de variar la corriente que fluye a través de él mediante la luz que recibe. Aprovechando las propiedades de esto dos dispositivos se hace un sensor reflectivo, en el cual la luz infrarroja es emitida por el LED y viaja en línea recta, cuando existe un objeto la luz cambia de dirección y regresa al receptor, fototransistor. Es difícil calcular la distancia de un objeto mediante este método, ya que depende mucho de la superficie del objeto y del color del objeto. En el caso del robot Andromie RF, no interesa calcular la distancia en la que está el objeto, sólo si existe o no algún objeto cercano. Para ello se implementa un circuito comparador, que compara el voltaje que existe en la resistencia R1 contra el de el preset RV1, este último sirve para ajustar el umbral.

martes, 8 de mayo de 2012

Andromie RF - Tutorial de Armado Parte 1

Para los que han aquirido su kit de robot Andromie RF,  dejamos un pequeño tutorial para armarlo. En esta ocasión será unicamente de la parte electrónica.
Supondremos que ya saben soldar, así que nos saltaremos la explicación de soldar. Siendo esto así manos a la obra. Lo primero que hay que hacer es tener preparados los componentes electrónicos de la tarjeta más grande, la tarjeta MotorShield mostrada en la figura 1, los cuales podemos ver en la entrada de Andromie RF - Partes. 
Figura 1. MotorShield
Tenga mucho cuidado cuando abra la envoltura de la tarjeta, no toque las áreas de cobre, ya que estas están recubiertas con una substancia que evita que se oxiden al aire, pero no al tacto de la piel.
Figura 2. Resistores y MotorShield
Para soldar una tarjeta, se prefiere colocar primeramente los componentes de menor altura, en este caso son los resistores. Montaremos los resistores de 1, 330 y 4.7K Ohms tal cual se muestra en la figura 3. Si tiene alguna duda de sobre el montaje, posición o valor de los resistores por favor revise la entra de Andromie RF - Diagrama Esquemático. Por si no recuerda el resistor de 1 Ohms está marcado con el código: Café/Negro/Negro/Dorado, el resistor de 330 Ohms: Naranja/Naranja/Café/Dorado, el resistor de 4.7 KOhms: Amarillo/Violeta/Rojo/Dorado.


Figura 3. Montaje de resistores
Recordaremos brevemente como soldar:
Figura 4. Soldadura de Resistores
Se acerca el cautín al "pad", la tarjeta "MotorShield" tiene una mascarilla antisoldante (roja) que ayuda en el proceso de soldadura, es decir evita que se unan unos "pads" con otros. Haciendo contacto la punta del cautín con el "pad" se introduce una porción de estaño/plomo entre la patilla del componenten y el cautín. Una vez esto dejar que la soldadura cubra por completo el "pad". Se retira primero el hilo de estaño/plomo y luego el cautín. Deje enfriar, ¡NO sople!


Figura 5. Recorte de patillas de componentes

Recorte las patillas de los componentes un vez soldados. La altura ideal para el corte es una vez donde acaba la unión del estaño/plomo con la patilla. No haga el corte demasiado justo, y asegúrese que los componentes están colocados correctamente, de lo contrario desoldar e introducir de nuevo el componente.



Figura 6. Revisión de montaje de resistores
Ya hemos montado los resistores de  1, 330 y 4.7KOhms. Asegúrese que que los componentes estén bien montados y soldados, no tengan cortocircuito o toquen con algún otro componente. La soldadura debe de queda en forma de montaña, pero no tener un exceso de estaño/plomo. Si aún no tiene habilidad para soldar puede practicar con una placa fenólica perforada y unas cuantas resistencias.



Figura 7. Montaje de Base de Circuito Integrado

El alma de la tarjeta "MotorShield" es el Circuito Integrado SN7544410NE o L293D, pero este no debe de ser soldado directamente en la PCB, para ello usamos una base para circuito integrado, con esto puede ser sustituido con facilidad en caso de descompostura.
El montaje de la base se muestra en la figura 7. Revise bien que la muesca, hendidura, se encuentre en posición correcta.


Figura 8. Montaje de Push Button

Siguiendo con el montaje de los componentes de acuerdo con la altura, se monta y suelda el Push Button. La posición de éste se puede observar en la figura 8.
Este Push button será empleado como botón de reset. Recuerde que este "Shield" irá por encima de su placa de sistema embebido "Arduino", por lo cual será difícil tener acceso a él.



Figura 9. Montaje de transistores.

En la entrada "Andromie RF - Diagrama Esquemático", se encuentra la explicación del funcionamiento de este Shield, si aún no revisado dicha entrada por favor hágalo, ya que con ello entenderá el porqué de cada una de las piezas, en este caso de los transistores MPS2222. Éstos se montan de la misma forma en la que aparecen señalados en la tarjeta. Si tiene duda observe la figura 9.


Figura 10. Montaje de LED y capacitor cerámico

Si es observador, habrá notado que los componentes empaquetado en la bolsa por orden a soldar, entonces verá que lo que sigue es el LED y el capacitor de 0.1uF
La nomenclatura de los capacitores cerámicos de 0.1uF es 104, esto es: 10 * 10^4 pF, por lo tanto tenemos 100nF ó 0.1uF.



Figura 11. Enlace de terminales de tornillos

Los terminales de tornillos vienen en pares o en tercias, esto para formar combinaciones dependiendo del número que se requiera. En este caso se requiere conectar dos motores y la alimentación de ellos, por lo cual se necesita un total de 6 junturas. Podríamos enlazar dos de tres tornillos o tres de dos tornillos tal cual se muestra en la figura 11.



Figura 12. Montaje de Terminales de tornillos 

Los terminales de tornillos ya unidos se colocan con la parte metálica mirando hacia afuera de la placa de circuico impreso. Esto con el motivo de poder introducir los cables de los motores y de la alimentación de la misma placa. El montaje se puede observar en la figura 12.




Figura 13. Montaje de Capacitores electrolíticos

Los capacitores son almacenadores de carga eléctrica. Un capacitor electrolítico está compuesto por dos placas paralelas enrrolladas en espiral dentro de una cilindro metálico, usando como dieléctrico, material mal conductor. La ventaja de este tipo de capacitores es que pueden almacenar gran carga eléctrica. En la placa "MotorShield" se emplean dos capacitores de 330uF en paralelo, lo que nos da una capacitancia de 660uF, suficiente para nuestro circuito. El montaje de esto se puede ver en la figura 13, fíjese muy bien en la posición de la raya negra que denota "negativo". Por favor revise que estén bien polarizados, ya que no ser esto así es muy probable que estallen, y el fluido que contiene el dieléctrico es sumamente peligroso para la salud.
Se ha terminado con el montaje de los dispositivos en el área de componentes. Ahora se hará el montaje de los pines por el área de soldado. Esto lo podemos ver en la figura 14, sea muy cuidadoso en el montaje de estas tiras de pines, observe que se colocan los pones por su parte más larga hacia la placa.
Figura 14. Montaje de pines
Figura 15. Soldadura de tira de pines
Sea muy cuidadoso con la soldadura de estas tiras de pines, asegúrese que los pines estén introducidos en los agujeros pero que no los atraviesen, esto es que queden al ras del área de componentes. También trate de no pegar el cautín al plástico.
Figura 16. Vista de soldadura de tira de pines

La soldadura deberá quedar como se muestra en la figura 16. Para aproximar el plástico a la soldadura basta con ejercer presión sobre los mismos.
Suelde las tiras de pines en los lugares, tanto los de 6, como los de 8 pines.
Se ha terminado con el montaje de componentes de la tarjeta "MotorShield", lo que prosigue es el chequeo de continuidad y búsqueda de cortocircuitos. Primeramente se puede hacer la revisión de manera visual, y posteriormente con la ayuda de un multímetro hacer la prueba de continuidad eléctrica. Por favor no omita este paso, ya que conectar directamente el "MotorShield" al Arduino puede ocasionar el desperfecto de alguno de estos.
Figura 17. Prueba de cortocircuitos con multímetro digital
Figura 18. Montaje de "MotorShield" a  Arduino



sábado, 5 de mayo de 2012

Andromie RF - Diagrama esquemático Parte 1


Shield Motores/Sensores
La placa de puente H y sensores es compatible con las tarjetas de sistemas embebidos "Arduino" en sus modelos Duemilanove, Uno y Mega.
Funcionamiento
Esta placa está diseñada para ser utilizada de inmediato en un robot pequeño, usando motores con un consumo máximo de 1A. Se basa en un Puente H de la Empresa Texas Instruments, SN754410NE, que contiene dos canales, cada uno con 3 bits de control, dos para dirección y para PWM, control por anchura de pulso. Para facilitar el control de los motores, y economizar bits de salida/entrada de nuestra tarjeta de control, Arduino, la placa "Motor Andromie" tiene implementado un circuito el cual sólo necesita un bit para controlar la dirección y otro para controlar la velocidad de cada motor. Siendo las salidas digitales 13 y 11 para el motor "MT1" y las salidas 12 y 10 para el motor "MT2". Cabe mencionar que la salida 13 y 12 son los bits de dirección del motor "MT1"  y  "MT2" respectivamente, las salidas 11 y 10 son los bits de PWM de los motores "MT1" y  "MT2" respectivamente.
A continuación se presenta el diagrama esquemático de la placa "Motor Andromie".
Figura 1. Diagrama esquemático de Shield Motor para Andromie
Se deja una vista del armado de la tarjeta de circuito impreso, mientras se sube el tutorial de armado, esto para aquellos que se quieran adelantar y soldar de una vez su placa. Esperamos que sea de utilidad.
Figura 2. Animación 3D del Shield de motores
Figura 3. Disposición y valor de piezas del Shield
Recomendaciones:
NO abra la bolsa donde se encuentra la tarjeta de circuito impreso hasta que no sea momento de soldarla. Una vez abierta la bolsa no toque los "pads", ya que nuestras manos tienen grasa  y aceleran el proceso de oxidación del cobre. Trate de manipula la placa por sus orillas.
Si no está seguro de como soldar todos los componentes no se precipite, espere a que se publique el turorial. Si tiene duda contáctenos.
Utilice un cautín con punta  y soldadura delgada. Por su salud hágalo en un espacio abierto, ya que los componentes de la soldadura son dañinos.
Cuando termine de soldar su tarjeta por favor verifique de manera visual si no existe algún puente, posteriormente verifíquelo con un multímetro. NO conecte la tarjeta al Arduino hasta no completar este paso.
Es necesario poner un poco de algún aislante en el chasis del conector USB de la tarjeta arduino, así como se ve en la siguiente imagen.

Andromie RF - Partes

Figura 1. Kit para armar de Andromie RF
El kit de andromie para armar y soldar viene dispuesto tal cual aparece en la figura 1. A continuación se hace el  listado de los componentes que se incluyen en cada uno de las bolsas. Ha sido dividido de esta forma debido al manejo práctico que nos brindan al momento de armar y soldar. Si has aquirido uno de nuestros kits, te pedimos por favor que revises tu material, y en caso dado que te haga falta algo nos lo notifiques por este mismo blog, por correo (daniebots@gmail.com), o en nuestra página de Facebook: cimecatronica.
Listado de componentes
Shield Motores/Sensores
1 - Tarjeta de circuito impreso
3 - Resistores de 330 Ohms
2 - Resistores de 4.7 KOhms
2 - Resistores de 1 Ohm
1 - Base para circuito integrado de 16 pines
1 - Push button
2 - Transistores 2222
1 - LED de 5mm
1 - Capacitor cerámico de 0.1uF
3 - Terminales de dos tornillos
2 - Capacitores de 330 uF
2 - Tira de 8 pines
2 - Tira de 6 pines

Sensores
3 - Tarjetas de circuito impreso.
3 - Resistores de 100 Ohms
3 - Resistores de 10 KOhms
3 - Base para circuito integrado de 8 pines
3 - Capacitores cerámicos de 0.1 uF
3 - LED infrarrojo de 5mm
3 - Fototransistor con filtro de luz de día
3 - Preset de 10 KOhms
3 - Tira de 3 pines
3 - Circuito integrado 358
9 -  Cables para conexión

Motores y rodamientos
2 - Motoreductores de plástico
2 - Llantas.
1 - Rueda loco tipo roll-on.
4 - Cables para conexión de motores

Chasis
2 - Nivel de plástico con sujección de sensores y motores
10 - Tornillo de 1/8" x 3/8" con tuerca
4 - Tornillo de 1/8" x 1-3/4" con tuerca
4 - Separadores de plástico.

Reiteramos, hagan sus comentarios en las direcciones que hemos dejado. Gracias!

Andromie RF - Descripción


Figura 1. Andromie RF

Andromie RF es una versión especial de Andromie Robot dedica a estudiantes las materias de programación, se trata de un robot de carácter didáctico con una estructura modular, tanto en hardware mecánico como electrónico. Es un robot de morfología móvil, es decir que se desplaza por medio de ruedas, que basa su funcionamiento en el sistema embebido Arduino. Esta versión es un kit para armar y soldar, se proporcionan todos los componentes, tarjetas de circuito impreso, tornillería, cables, chasis, etcétera.
El kit incluye el siguiente material:
1 - Tarjeta de circuito impreso tipo shield de puenta H y sensores para armar: tarjeta de circuito impreso y componentes electrónicos.
3 - sensores infrarrojos de proximidad de corta distancia digitales para armar: tarjeta de circuito impreso y componentes electrónicos.
2 - motorreductores con relación 1:48, 200 RPM.
2 - ruedas de plástico.
1 - ruedad loca de plástico tipo roll-on.
1 - portapilas para 4 pilas tipo AA.
1 - Conector para baterías
Cables para conexión: cables para sensores, motores y batería.
Chasis de plástico: dos niveles con pestañas para sujeción de motores y sensores.
Tornillería: 10 tornillos de 1/8" x 3/8", 4 tornillos de 1/8" x 1-3/4".

martes, 3 de abril de 2012

Shield R8

Shield R8 es un módulo compatible con los sistemas embebidos "Arduino" y "Pinguino". Se trata de una interface con 8 relevadores de hasta 10 Amperios de corriente alterna. Debido a que los relevadores utilizados son de tamaño mediano, se tiene un shield invertido, esto es que la placa del sistema embebido se encuentra por encima del Shield R8, de forma contraria como normalmente se emplean.
En el Shield R8 se activa la bobina de un relevador por medio de un transistor de pequeña señal, este empleado por su característica de alta ganancia, por lo que con una mínima corriente sumistrada en la base podrá proveer una corriente de hasta 500 mA en el colector, suficiente para activar la bobina. También se cuenta con un regulador de 5 Voltios para la conmutación de la bobinas y una fuente externa para la alimentación de la tarjeta de sistema embebido. A continuación se presenta el diagrama esquemático del Shield R8.
Figura 1. Diagrama esquemático de Shield R8

Como se puede observar en la figura 1, se cuenta con un LED por cada bobina de relevado, esto para indicar la conmutación de la misma. En las figuras 2 y 3 se retrata el módulo ya terminado, con el sistema montado y sin él.
Figura 2. Shield R8 con Arduino

Figura 3. Shield R8
Todos las entradas y salidas del sistema Arduino están disponibles en los "Housing" del shield R8, quedando con la misma disposición.
La programación del sistema es muy sencillo. Se ocupan las salidas digitales de la 2 a la 9, y basta con ponerlas en alto (HIGH), para activar y en bajo (LOW) para desactivar. Dejamos el código de ejemplo para el Shield R8.

/*
Prueba de Shiel R8 (8 salidas a relevadores)
por CIMecatrónica
*/
int relay0 = 2;
int relay1 = 3;
int relay2 = 4;
int relay3 = 5;
int relay4 = 6;
int relay5 = 7;
int relay6 = 8;
int relay7 = 9;

void setup() {                
  pinMode(relay0, OUTPUT);     
  pinMode(relay1, OUTPUT);     
  pinMode(relay2, OUTPUT);     
  pinMode(relay3, OUTPUT);     
  pinMode(relay4, OUTPUT);
  pinMode(relay5, OUTPUT);     
  pinMode(relay6, OUTPUT);
  pinMode(relay7, OUTPUT); 
  
  digitalWrite(relay0, LOW);
  digitalWrite(relay1, LOW);
  digitalWrite(relay2, LOW);
  digitalWrite(relay3, LOW);
  digitalWrite(relay4, LOW);
  digitalWrite(relay5, LOW);
  digitalWrite(relay6, LOW);
  digitalWrite(relay7, LOW);
}

void loop() {
  digitalWrite(relay0, HIGH);   
  digitalWrite(relay7, LOW);    
  delay(500);             

  digitalWrite(relay1, HIGH);   
  digitalWrite(relay0, LOW);    
  delay(500);             

  digitalWrite(relay2, HIGH);   
  digitalWrite(relay1, LOW);    
  delay(500);             

  digitalWrite(relay3, HIGH);   
  digitalWrite(relay2, LOW);    
  delay(500);             

  digitalWrite(relay4, HIGH);   
  digitalWrite(relay3, LOW);    
  delay(500);             

  digitalWrite(relay5, HIGH);   
  digitalWrite(relay4, LOW);    
  delay(500);             

  digitalWrite(relay6, HIGH);   
  digitalWrite(relay5, LOW);    
  delay(500);             

  digitalWrite(relay7, HIGH);   
  digitalWrite(relay6, LOW);    
  delay(500);             

}

Recuerda que este y otros productos de CIMecatrónica están disponibles en: "Electrónica 60 Norte", Visita: www.electronica60norte.com