Esta es la versión más avanzada de “ Pick and Place Robot ”, quizás la más popular y utilizada en las industrias recientes. Una persona desde una ubicación remota puede controlar cómodamente el movimiento del brazo robótico sin ninguna conexión de cables.
Nuevamente, hay dos sistemas, uno en el lado del transmisor, en el que un programa de software escrito en VC++ genera señales de control. Estas señales son codificadas y transmitidas por el chip transmisor de RF. En el otro extremo, el chip receptor de RF demodulará estas señales y el decodificador las decodificará. Finalmente, el 89C51 realizará la acción de control deseada en el brazo robótico.
Este es un tipo de proyecto similar al robot pick n place, pero hay dos cambios principales.
1) La estructura mecánica se controla de forma inalámbrica desde una computadora remota.
2) La estructura mecánica de un brazo robótico es en realidad un instrumento de trabajo en las industrias, no sólo en proyectos simples.
Aquí, un hombre desde una ubicación remota con un alcance de unos 50 a 100 m, sentado en su silla con su computadora, puede controlar fácilmente el mecanismo mediante el teclado o el mouse. Un transmisor ASK conectado a la computadora transmite los códigos de control. Estos códigos son recibidos por el receptor ASK, decodificados y entregados al 89C51, que luego controla el movimiento del brazo robótico. Así, según el comando del usuario a través de la computadora, el movimiento del brazo robótico se controla desde una ubicación remota sin ninguna conexión de cables.
Empecemos primero con el mecanismo.
Estructura mecánica del brazo robótico: –
La siguiente figura muestra la estructura externa completa del brazo robótico. Todo el cuerpo está fabricado de acero macizo. Todos los movimientos están perfectamente calibrados y controlados. El tamaño completo con todas las dimensiones son las indicadas. Hay varios movimientos en este brazo.
- Movimiento circular de la mano: – el brazo puede girar completamente en un círculo de 360 ° con la ayuda de un motor de CA bidireccional (ACM1) de ¼ HP, 0,2 A, 230 V que tiene un máximo de 5 RPM a 230 VCA nominal
- Movimiento vertical de la mano: – la mano puede moverse hacia abajo desde menos de 0 ó hasta 30 ó máximo hasta 90 ó . Esta moción se divide en dos partes. Mano inferior y mano superior. El puntero inferior se mueve hacia arriba y hacia abajo debido al motor de CA bidireccional (ACM2) de ¼ HP, 0,2 A y 230 V que tiene un máximo de 5 RPM a 230 VCA nominal. La ventaja está alimentada por un motorreductor de 6 V CC (DCM2).
- Movimiento circular de la empuñadura: – La empuñadura puede girar libremente en cualquier dirección en un círculo completo de 360 grados gracias al motor paso a paso bipolar de 5 VCC con resolución de 18 pasos .
- Cierre de apertura del asa: – la apertura máxima del asa es de 5 cm y la mínima de 0,5 cm. Para este movimiento se utiliza el mismo tipo de motorreductor de 6 VDC (DCM1).
Entonces para todos los movimientos tenemos un motor en total cinco motores. Los cinco motores proporcionan total flexibilidad al mecanismo para que pueda elegir y colocar un objeto con facilidad.
Ahora comenzaremos con el control de este mecanismo. Hay dos partes
1) Informatizar el transmisor ASK: – se trata de una pequeña pieza de hardware conectada al puerto LPT de la computadora que transmite los códigos de acción proporcionados por un programa de software preparado en VC++.
2) Receptor ASK basado en 89C51: – consta de un receptor ASK, un decodificador y un microcontrolador 89C51. Controla todos los movimientos del brazo robótico controlando los cinco motores según la orden dada por el usuario.
Transmisor ASK computarizado
Informatizar el transmisor ASK: –
Esta parte se divide en dos partes (1) software y (2) hardware.
Parte del software: – la siguiente figura muestra el diseño de la aplicación.
Dispone de 10 botones de comando para 10 movimientos diferentes. Aquí está la descripción de sus propiedades.
Sr. no. |
artículo |
propiedad |
contexto |
función |
1 |
Botón 1 |
YO IBA rúbrica |
IDC_CLK Sentido horario |
Gira la mano 30 ° en el sentido de las agujas del reloj cuando se presiona el botón una vez |
dos |
Botón2 |
YO IBA rúbrica |
IDC_ACLK &Antihorario |
Gire la mano 30 ° en sentido antihorario cuando se presiona el botón una vez |
3 |
Botón3 |
YO IBA rúbrica |
IDC_CLKW Girar en el sentido de las agujas del reloj |
Al presionar los botones una vez, el mango girará 75 ° en el sentido de las agujas del reloj. |
4 |
Botón4 |
YO IBA rúbrica |
IDC_ACLKW Girar en sentido antihorario |
Al presionar los botones una vez, el mango girará 75 ° en sentido antihorario. |
5 |
Botón5 |
YO IBA rúbrica |
IDC_CLS Cerrar |
Abre el mango 0,5 cm al presionar el botón una vez |
6 |
Botón6 |
YO IBA rúbrica |
IDC_OPN &Abierto |
Cierra el mango 0,5 cm al presionar el botón una vez. |
7 |
Botón7 |
YO IBA rúbrica |
IDC_UP1 &Ascender |
Mueve la parte inferior de la mano 30 ° hacia arriba cuando se presiona el botón una vez |
8 |
Botón8 |
YO IBA rúbrica |
IDC_DWN1 Mover hacia abajo |
Mueve la parte inferior de la mano 30 ° hacia abajo cuando se presiona el botón una vez |
9 |
Botón9 |
YO IBA rúbrica |
IDC_UP2 Ascender |
Mueve la parte superior de la mano 30 ° hacia arriba cuando se presiona el botón una vez |
10 |
Botón10 |
YO IBA rúbrica |
IDC_DWN2 Mover hacia abajo |
Mueve la parte superior de la mano 30 ° hacia abajo cuando se presiona el botón una vez |
De hecho, cada botón envía un código específico al puerto LPT que será transmitido por el transmisor ASK. Cada código se activa con un movimiento específico en la mano.
Una de las funciones que envía código a LPT se escribe a continuación.
vacío CRoboticHandDlg::OnClk
{
// TODO: agregue aquí el código del controlador de notificaciones de control
_outp(0x0378, 0xE1); //habilitamos la transmisión y enviamos el código a LPT
Dormir(200); // espera 0,2 segundos
_outp(0x0378,0x10); // deshabilitar la transmisión
}
Aquí están los códigos que desencadenan un movimiento específico.
01h*: girar la manecilla en el sentido de las agujas del reloj
02h: gire la manecilla en sentido antihorario
03h: girar el mango en el sentido de las agujas del reloj
04h: gire la manija en sentido antihorario
05:00: mueve la mano inferior hacia arriba
06:00: mueve la mano inferior hacia abajo
07h: mueve la mano superior hacia arriba
08:00: mueve la mano superior hacia abajo
* “h” indica que todos los códigos están en formato hexadecimal.
Ahora veamos el pequeño hardware que transmitirá estos códigos.
Parte de hardware: – el diagrama de bloques de esta parte se muestra en la figura.
Como se muestra en la figura, un transmisor ASK de 16 canales está conectado con un conector macho/hembra tipo D de 25 pines. Los pines de datos D0-D3 del conector están conectados a los pines de datos del chip codificador (HT12E). Pin D4 conectado al pin de habilitación de transmisión (TE) del chip codificador. La salida del chip codificador se proporciona como entrada al transmisor ASK de 434 MHz que modulará los datos con una señal portadora y los transmitirá a través de una antena adecuada. Al ser de cuatro bits podremos enviar un máximo de 16 códigos diferentes a través de este transmisor, por lo que es un transmisor ASK de 16 canales.
Receptor ASK basado en 89C51
Receptor ASK basado en 89C51 : –
La siguiente figura muestra el diagrama de circuito del receptor.
Los bloques principales del receptor son el receptor ASK basado en 89C51, el chip controlador de corriente ULN y el controlador de motor paso a paso bipolar.
El chip ULN se utiliza para energizar 8 relés que encienden o apagan los cuatro motores (2 motores de CA y 2 motores de CC) y también cambian su dirección. Hay 8 relés, de los cuales 4 son de un solo interruptor (c/o) y los otros 4 son de doble interruptor. Para arrancar o detener el motor y también cambiar su dirección, se requieren un relé c/o simple y un relé c/o doble. La conexión se realiza de tal manera que cuando se energiza el relé c/o único arranca el motor y cuando se desexcita lo para. El segundo relé 2 c/o cambia de dirección a medida que se mueve de una posición a otra. Así, cada motor necesita dos relés, uno para arrancar y parar y el segundo para cambiar de dirección.
El circuito de puente H estándar se utiliza en el controlador de motor paso a paso bipolar. Para más detalles sobre este circuito haga clic aquí.
Los bloques internos del receptor también están indicados en la esquina. Las partes principales son el receptor ASK de 434 MHz, el chip decodificador (HT12D) y el microcontrolador 89C51. El receptor ASK demodulará la señal y proporcionará los datos codificados al decodificador. El decodificador lo decodificará y lo enviará al 89C51. El puerto P0 de 89C51 se usa para controlar el motor paso a paso a través del controlador y el puerto P2 se usa para controlar otros cuatro motores a través del chip ULN. Los ocho pines de P2 accionan un relé a través del chip ULN.
El corazón de todo el circuito es el 89C51, ya que maneja todas las funciones, como obtener el código del decodificador, compararlos con los códigos almacenados y controlar el movimiento de la mano accionando cualquiera de los cinco motores. Realiza ocho funciones diferentes según informa el transmisor obteniendo ocho códigos diferentes. Dispone de ocho subrutinas para estas funciones. Cada código, cuando se recibe y decodifica, llamará a una subrutina específica. Cuando se ejecuta la subrutina, el programa espera nuevamente el siguiente comando del usuario. Sólo podemos enviar un comando a la vez, por lo que sólo se activa un movimiento a la vez.
Operación de trabajo : –
- Cuando presiona cualquiera de los botones de comando del programa de computadora, uno de los códigos se enviará al puerto LPT. Por ejemplo, se envía el código 02h para girar la manecilla en sentido antihorario.
- El transmisor ASK conectado al LPT transmitirá el código a través de la portadora de 434 MHz.
- En el lado del receptor, el receptor ASK demodula el código y lo entrega al chip decodificador.
- El código decodificado se proporciona para 89C51. Comparará este código con los códigos almacenados y cuando se encuentre una coincidencia, energizará RL1 y RL2 para girar ACM1 en sentido antihorario de modo que el puntero gire en sentido antihorario. El controlador moverá el puntero exactamente 30 ° y luego se detendrá.
- Ahora el controlador esperará el siguiente comando.
- Nuevamente, cuando se presiona el siguiente botón de comando, se repite el mismo proceso.