Enviar y recibir mensajes de texto (SMS) con GSM SIM900 Shield
Componentes y suministros
| × | 1 | ||||
| × | 1 |
Aplicaciones y servicios en línea
| ||||
|
Acerca de este proyecto
Uno de los elementos esenciales para crear IoT proyecto es la capacidad de conectar dispositivos. Wi-Fi y Bluetooth son buenas opciones de bajo costo, pero funcionan solo a distancias cortas o en áreas de puntos de acceso. Cuando el dispositivo debe estar en una ubicación remota GSM es una opción buena y fácil de configurar.
En este tutorial, te mostraré lo fácil que es enviar y recibir SMS mensajes a través de GSM con Arduino .
En los siguientes tutoriales, también le mostraré cómo puede conectarse a través de GSM a Internet y servidores de acceso, y cómo puede manejar las llamadas de voz.
Paso 1:componentes
- Un Arduino Mega (Puede usar otras placas, pero es mejor usar una placa que tenga 2 o más puertos seriales. El proyecto puede modificarse para usar Software Serial, pero se recomienda usar un hardware serial)
- Un escudo GSM basado en SIM900 o Shield o Módulo compatible con Tarjeta SIM instalada ( Imagen 2 ) (Usé una versión 1.0 GSM / GPRS Shield de Seeed Studio)
- 2 Mujer-Hombre cables de puente
Paso 2:conecta el escudo GSM a Arduino
- Eliminar las gorras de jersey desde el Escudo GSM Puentes de selección RX y TX ( Imagen 1 )
- Conecta el escudo GSM en la parte superior del Arduino Mega
- Conecta el extremo macho de un hombre-mujer cable de puente ( cable naranja ) al RX1 Pin del Arduino Mega ( Imágenes 2 y 3 )
- Conecta el extremo macho de un hombre-mujer cable de puente ( cable marrón ) al TX1 Pin del Arduino Mega ( Imágenes 2 y 3 )
- Conecte el extremo hembra del RX1 cable ( cable naranja ) al alfiler central del Puente de selección RX del Escudo GSM ( Imagen 4 )
- Conecte el extremo hembra del TX1 cable ( cable marrón ) al alfiler central del Puente de selección TX del Escudo GSM ( Imagen 4 )
- Imagen 5 muestra el GSM Shield instalado y conectado
Paso 3:Inicie Visuino y seleccione el tipo de placa Arduino
Para comenzar a programar Arduino, necesitará tener el IDE de Arduino instalado desde aquí:http://www.arduino.cc/.
¡Asegúrate de instalar 1.6.7 superior, de lo contrario, este tutorial no funcionará!
El Visuino :https://www.visuino.com también debe estar instalado.
- Inicie Visuino como se muestra en la primera imagen
- Haga clic en " Herramientas "botón en el componente Arduino ( Imagen 1 ) en Visuino
- Cuando aparezca el cuadro de diálogo, seleccione " Arduino Mega 2560 "como se muestra en Imagen 2
Paso 4:En Visuino:establece la velocidad del canal Serie 1 en 19200
El escudo GSM está configurado de forma predeterminada para la velocidad del puerto serie 19200. Necesitamos configurar el puerto serie 1 para esta velocidad:
- En el Inspector de objetos, expanda la ventana " Serie ", luego la propiedad" Elemento [1] "Subpropiedad y seleccione su" Velocidad "Subpropiedad ( Imagen 1 )
- En el Inspector de objetos, haga clic en la " Flecha hacia abajo "junto al valor de" Velocidad "Subpropiedad ( Imagen 1 )
- Desde el menú desplegable seleccione la lista " 19200 "( Imagen 2 ), para cambiar el valor de la propiedad ( Imagen 3 )
Paso 5:En Visuino:agregue y conecte el componente serial GSM / GPRS
Necesitamos agregar un componente para controlar el Módulo GSM. El Módulo se controla a través del canal Serie, por lo que necesitamos conectarlo. Pin digital 9 se utiliza para encender / apagar el Módulo:
- Escriba " gsm "en el cuadro Filtro de la Caja de herramientas de componentes, luego seleccione" Serie GSM / GPRS "componente ( Imagen 1 ) y colóquelo en el área de diseño ( Imagen 2 )
- Conecte el " Out "pin de salida del GSM1 componente al " En "pin de entrada del" Serial [1] "canal del Arduino componente ( Imagen 2 )
- Conecte el " Power "pin de salida del GSM1 componente del " Digital "pin de entrada del" Digital [9] "canal del Arduino componente ( Imagen 3 ). Este pin se activará / desactivará el poder del módulo GSM
Paso 6:En Visuino:agregue, configure y conecte el componente Valor de texto
El módulo GMS tarda un poco en inicializarse. Es bueno si tenemos alguna indicación de que el módulo está listo. Para esto, enviaremos el texto "GSM Ready" al puerto serie cuando el módulo esté listo:
- Escriba " texto val "en el cuadro Filtro de la Caja de herramientas del componente, luego seleccione" Valor de texto "componente ( Imagen 1 ) y colóquelo en el área de diseño ( Imagen 2 )
- En el Inspector de objetos, establezca el valor del " Valor "propiedad a" GSM Ready "( Imagen 2 )
- Conecte el " Listo "pin de salida del GSM1 componente al " En "pin de entrada del TextValue1 componente ( Imagen 3 )
- Conecte el " Out "pin de salida del TextValue1 componente al " En "pin de entrada del" Serial [0] "canal del Arduino componente ( Imagen 4 )
Paso 7:En Visuino:agregue el elemento de mensaje corto al componente GSM y luego envíe la función de mensaje al elemento
El componente GSM consta de muchos módulos que realizan diferentes tareas. Como solo usaremos SMS, debemos agregar solo el módulo "Mensaje corto" y luego agregarle una función "Enviar SMS":
- En el área de diseño, seleccione GSM1 componente ( Imagen 1 )
- En el Inspector de objetos, haga clic en " ... "junto al valor del" Módulo "propiedad de GSM1 componente ( Imagen 1 )
- En el editor de módulos, seleccione " Mensaje corto ”, Y luego haga clic en el botón" "( Imagen 2 ) para agregar uno ( Imagen 3 )
- En el Inspector de objetos, haga clic en " ... "junto al valor de las" Funciones "propiedad del" Mensaje corto "módulo ( Imagen 3 )
- En el editor de funciones, seleccione " Enviar SMS ”, Y luego haga clic en el botón" "( Imagen 2 ) para agregar uno
Paso 8:En Visuino:Configure la función Enviar SMS y conecte la Información del mensaje recibido al Serial
- En el Inspector de objetos, establezca el valor de la " Dirección "propiedad del" Enviar SMS "elemento al número de teléfono donde quieres enviar el mensaje (En mi caso, para probar ingresé el número de mi tarjeta SIM para que el módulo reciba e imprima los mensajes que envía) ( Imagen 1 - muestra un número inventado)
- En el Inspector de objetos, seleccione " Texto "propiedad ( Imagen 2 )
- Haga clic en el " Pin "botón al frente del" Texto "propiedad ( Imagen 2 )
- Desde el menú desplegable lista, seleccione la opción " String SinkPin "( Imagen 3 ). Esto agregará un nuevo " Texto "fijar al" Enviar SMS "función ( Imagen 4 )
- Cierre los cuadros de diálogo del editor de elementos ( Imagen 4 )
- Conecte el " Out "pin de salida del" MessageInfo "bloque del GSM1 componente al " En "pin de entrada del" Serial [0] "canal del Arduino componente ( Imagen 4 )
Paso 9:En Visuino:agregue y conecte el componente Char To Text
El puerto serie recibe un carácter a la vez. Para enviar un mensaje SMS, necesitamos obtener todos los caracteres de una línea, crear un texto a partir de ella y enviarlo al módulo GSM:
- Escriba " char "en el cuadro Filtro de la Caja de herramientas de componentes, luego seleccione" Carácter a texto "componente ( Imagen 1 ) y colóquelo en el área de diseño ( Imagen 2 )
- Conecte el " Out "pin de salida del" Serial [0] "canal del Arduino componente al " En "pin de entrada del CharToText1 componente ( Imagen 2 )
- Conecte el " Out "pin de salida del CharToText1 componente al " Texto "PIN de entrada del" Enviar SMS "elemento del GSM1 componente ( Imagen 3 )
Paso 10:En Visuino:agregue, configure y conecte el componente Delay
Necesitamos asegurarnos de enviar el SMS después de que el texto se haya actualizado correctamente. Podemos usar un componente Delay con un retraso corto para eso:
- Escriba " retraso "en el cuadro Filtro de la Caja de herramientas de componentes, luego seleccione la opción" Retraso "componente ( Imagen 1 ) y colóquelo en el área de diseño ( Imagen 2 )
- En el Inspector de objetos, establezca el valor del " Intervalo "propiedad a" 100 "( Imagen 2 )
- Conecte el " Out "pin de salida del CharToText1 componente al " En "pin de entrada del Delay1 componente ( Imagen 3 )
- Conecte el " Out "pin de salida del Delay1 componente del " Reloj "PIN de entrada del" Enviar SMS "elemento del GSM1 componente ( Imagen 4 )
Paso 11:Genere, compile y cargue el código Arduino
- En Visuino , Presione F9 o haga clic en el botón que se muestra en Imagen 1 para generar el código Arduino y abrir el IDE de Arduino
- En Arduino IDE , haz clic en Subir , para compilar y cargar el código ( Imagen 2 )
Paso 12:Y juega ...
¡Felicitaciones! Has completado el proyecto.
Imagen 1 muestra el proyecto conectado y encendido. En Imagen 2 puedes ver el Visuino completo diagrama. Si se conecta con el terminal serie al Arduino, después de unos 30 segundos verá el mensaje " GSM Ready "aparece el mensaje ( Imagen 3 )
Una vez que aparece el mensaje, si escribe algún texto y hace clic en " Enviar "( Imagen 4 ), el texto se enviará como mensaje SMS. Si ha seleccionado como número de teléfono en el paso 8 al teléfono de la tarjeta SIM en el Shield, después de un tiempo recibirá el mensaje y se mostrará en la Terminal Serial ( Imagen 5 ). Si ha configurado el número de un dispositivo diferente en el Paso 8 , los mensajes se enviarán a ese dispositivo.
Puede enviar mensajes SMS al número de teléfono desde otros teléfonos y dispositivos, y también se mostrarán en el terminal en serie.
También se adjunta el Visuino proyecto, que creé para este Tutorial. Puedes descargarlo y abrirlo en Visuino :https://www.visuino.com
F1FP7L0IQS4L35B.zip
Proceso de manufactura
- Sistema de asistencia que usa Arduino y RFID con Python
- Sensor DHT11 con LED y altavoz piezoeléctrico
- Arduino Temp. Monitor y reloj en tiempo real con pantalla 3.2
- Controlar un robot Roomba con Arduino y un dispositivo Android
- Voltímetro de bricolaje con Arduino y una pantalla Nokia 5110
- Control del servomotor con Arduino y MPU6050
- Sistema de monitoreo y detección de incendios forestales (con alertas por SMS)
- Módulo GPS u-blox LEA-6H 02 con Arduino y Python
- Cómo leer la temperatura y la humedad en Blynk con DHT11
- Reconocimiento y síntesis de voz con Arduino
- Cubo LED 4x4x4 con Arduino Uno y 1sheeld