robot gsm

Robot controlado por GSM móvil usando el microcontrolador 8051

Robot controlado por GSM o robot controlado por SMS es un robot inalámbrico que realiza las acciones necesarias al recibir un conjunto de instrucciones en forma de Servicio de Mensajes Cortos (SMS).  Con este proyecto podemos controlar las direcciones del robot hacia adelante, hacia atrás, izquierda y derecha mediante el envío de SMS desde el móvil. Anteriormente, ya hemos visto el funcionamiento de un robot controlado por DTMF sin utilizar el microcontrolador.

Este proyecto consiste principalmente en 2 secciones, una es la unidad móvil y la otra es la unidad de robot. El módem GSM que está fijo en el robot recibe los mensajes enviados por el móvil y da las instrucciones al microcontrolador para controlar las direcciones del robot. En este proyecto, se interconecta el microcontrolador 8051 con GSM SIM 300. El protocolo utilizado para la comunicación entre el controlador y el módem GSM es UART (Universal Asynchronous Receiver-Transmitter). Este sistema comprueba continuamente si hay mensajes para tomar la decisión de controlar el robot.

Principio de circuito:

Cuando enviamos el mensaje desde el móvil al módem, GSM El módem envía el siguiente comando en serie para indicar que se recibió un nuevo mensaje.

+ CMTI: » SM «, 3

En el comando anterior, el número 3 indica la ubicación del nuevo mensaje. Ahora necesitamos leer este mensaje no leído para mostrarlo en la pantalla LCD. El comando para leer el mensaje del módem GSM es


at + cmgr = 3

Aquí el número 3 indica la ubicación del mensaje a leer. Después de enviar este comando al módulo GSM, el módem envía el siguiente comando en serie.

+ CMGR: » REC UNREAD «, » MD-WAYSMS «,, » 13/05/20,15: 31: 48 + 34  adelante

En el comando anterior » REC UNREAD » indica que el mensaje es mensaje no leído, » MD-WAYSMS » indica el número o nombre del remitente móvil, 13/05/20 indica la fecha, 15:31 indica la hora y reenviar es el contenido del mensaje.

Desde el comando anterior, necesitamos extraer el mensaje (reenviar) enviado por el usuario. Ahora compare este mensaje con cadenas predefinidas (hacia adelante, hacia atrás, izquierda, derecha), en función del control de resultados del robot.

Diagrama de bloque:

robot controlado por gsm diagrama en bloques
robot controlado por gsm diagrama en bloques

Robot controlado por GSM-Diagrama de bloques

Diagrama de circuito:

diagrama robot gsm
diagrama robot gsm

Robot controlado por GSM Diagrama de circuito

Requisitos de hardware:

  • Microcontrolador 8051
  • Placa de programación AT89C51
  • Cable de programación
  • 16 * 2 LCD
  • Convertidor de nivel MAX 232
  • Módulo GSM sim 300
  • Controlador de motor L293D
  • Robot
  • 9V DC baterías-2
  • 5V circuito de alimentación
  • 0.1uF cerámica condensadores-4
  • condensadores de 33pF-2
  • condensador electrolítico de 10uF
  • 12MHz de cristal
  • 10k (1/4 watt) de resistencia
  • Cables de conexión de un solo pin

Requisitos del software:

  • Kiel U vision
  • Magia Flash
  • Proteus

Video de Simulación de Circuito:

Diseño del circuito:

Los principales componentes utilizados en el circuito anterior son el microcontrolador, el controlador del motor, el convertidor de nivel, el módulo GSM y el robot. Aquí se usa el microcontrolador89c51 y requiere una fuente de alimentación de 5V CC positiva. Para proporcionar voltaje regulado de 5 V CC al controlador, use el circuito de suministro de energía 7805. Aquí se usan dos baterías de 9V, una para suministrar el voltaje al circuito y otra para hacer funcionar los motores de CC.

En el circuito anterior, 16 x 2 LCD están conectadas al PORT1 del microcontrolador en Modo de 4 bits Las líneas de datos LCD D4, D5, D6 y D7 están conectadas a P1.4, P1.5, P1.6 y P1.7, respectivamente, y las clavijas de control están conectadas a P1.0, P1.1 y P1.2. Aquí solía indicar el mensaje recibido.

Las terminales Tx y Rx del módem GSM están conectadas a los pines 13 y 14 de max232. Los pines Microcontrolador TXD y RXD están conectados a los pines 11 y 12 del convertidor de nivel. Aquí max232 es un mediador entre el controlador y el módulo GSM y se usa para convertir los niveles de voltaje. Para conocer más detalles sobre max232 consulte Max232 Datasheet.

El módulo GSM requiere una fuente de alimentación de 5 V. Para poder comunicarnos con este GSM, necesitamos enviar comandos AT usando comunicación serial (protocolo UART). Utilice una velocidad en baudios de 9600 para comunicarse con el modulo GSM.

Los pines P2.0, P2.1, P2.2 y P2.3 del controlador están conectados a los pines de entrada l293d y estos pines se usan para controlar los dos motores de CC. El voltaje de operación de este IC es de 5V. Usando este IC podemos operar los 2 motores de CC con un voltaje que varía de 4.5 a 36V. Necesitamos aplicar el suministro de motores en el octavo pin de l293d. Para obtener más información sobre el controlador de motor IC, consulte Hoja de datos L293D.

Algoritmo de trabajo del circuito:

  1. Inicialice la pantalla LCD y Protocolo UART
  2. Comprueba continuamente el comando + CMTI: » SM «, 3 (Número de ubicación) para saber si se recibe o no el mensaje nuevo
  3. Si recibe el comando, guarde el número de ubicación del mensaje.
  4. Ahora lea ese mensaje en particular y extraiga el cuerpo del mensaje
  5. Muestre el contenido extraído en la pantalla LCD y compare este contenido con las cadenas predefinidas.
  6. Si coincide, realice la acción necesaria en el robot.

Use el código siguiente para leer un nuevo mensaje del módem GSM.

while (rx_data ()! = 0x0d); while (rx_data ()! = 0x0a); if (rx_data () == & # 8216; + ’) {if (rx_data () == & # 8216; C ’) {if (rx_data () == & # 8216; M ’ ) {if (rx_data () == & # 8216; T ’) {if (rx_data () == ’ I ’) {while (rx_data ()! = & # 8216;, ’); a = rx_data (); delay_ms (10); tx_string (» at «); tx_data (0x0d); tx_data (0x0a); tx_string (» at + cmgf = 1 «); tx_data (0x0d); tx_data (0x0a); tx_string (» at + cmgr = «); tx_data (a); tx_data (0x0d); tx_data (0x0a); while (rx_data ()! = 0x0a); while (rx_data ()! = 0x0a); while (rx_data ()! = 0x0a); para (i = 0; i & lt; 15; i ++) {leer [i] = rx_data (); lcd_stringxy (1,0, leer); delay_ms (5000);

¿Cómo funciona?

  1. Escribe el programa en el proyecto de robot controlado por GSM usando el software keil
  2. Ahora graba el programa en  el microcontrolador con la ayuda de flash magic.
  3. Proporcione las conexiones según el diagrama del circuito.
  4. Utilice el circuito de alimentación para proporcionar 5V DC al microcontrolador
  5. Inserte la SIM (Módulo de identidad del suscriptor) en el módulo GSM.
  6. Ahora encienda la alimentacion.
  7. Envíe un SMS al módulo GSM utilizando otro móvil
  8. Ahora puede ver el mismo mensaje en la pantalla LCD.
  9. Si el mensaje recibido coincide con cualquier cadena predefinida, el robot se mueve en consecuencia.

Mire tambien: [ Robot espía operado a distancia ]

Aplicaciones de circuito:

  • Este proyecto se usa en aplicaciones robóticas
  • Se usa en aplicaciones militares.

Limitaciones del circuito:

  • La sección de robot debe tener la red k para recibir los comandos de forma inalámbrica.
  • Como no hay contraseña, cualquiera puede operar el robot enviando un mensaje.

Descargar el código de proyecto

Nota:

Si está interesado en obtener el código, tenga la amabilidad de tomarse un tiempo y responder las siguientes preguntas en la sección de comentarios, para que le enviemos el código.

  • ¿Por qué necesita este código de proyecto?
  • ¿Está intentando hacer el mismo proyecto o uno diferente?
  • Danos más detalles sobre su proyecto.