View
47
Download
2
Category
Preview:
DESCRIPTION
Escudo GSM
Citation preview
Escudo GSM Arduino
El escudo Arduino GSM permite una placa Arduino se conecte a
Internet, enviar y recibir SMS y hacer llamadas de voz utilizando
la biblioteca de GSM .
El escudo trabajará con el Arduino Uno fuera de la caja. El
escudo trabajará con los Mega, Mega ADK y juntas Leonardo
con una pequeña modificación . El duque no se admite en este
momento.
La biblioteca de GSM se incluye con Arduino IDE 1.0.4 y
posteriores .
¿Qué es GSM ¿Qué es GPRS Requisitos del operador de red Tarjetas SIM Notas sobre la Telefónica / Movilforum SIM incluidas con el escudo Conexión del Escudo Biblioteca GSM Prueba de la conexión de módem y de red El envío de un mensaje SMS Conexión a internet Hacer llamadas de voz Los próximos pasos
¿Qué es GSM
GSM es un estándar internacional para los teléfonos móviles. Es
un acrónimo que significa Sistema Global para Comunicaciones
Móviles. También se refiere a veces como 2G, ya que es una
segunda generación netwTo celular utilización GPRS para
acceder a Internet, y para el Arduino que solicitar o servir
páginas web, usted necesita para obtener el Access Point Name
(APN) y un nombre de usuario / contraseña del operador de
red. Consulte la información en la sección Conexión a Internet
para obtener más información sobre el uso de las capacidades
de datos del escudo.
Entre otras cosas, GSM soporta llamadas salientes y entrantes
de voz, sistema Mensaje simple (SMS o mensajes de texto), y la
comunicación de datos (a través de GPRS).
¿Qué es GPRS
GPRS es una tecnología de conmutación de paquetes que
significa General Packet Radio Service. Se puede proporcionar
velocidades de datos idealizadas entre 56 a 114 kbit por
segundo.
Una serie de tecnologías como SMS depende de GPRS para
funcionar. Con el escudo GSM, también es posible aprovechar la
comunicación de datos para acceder a Internet. Al igual que en
las Ethernet y WiFi bibliotecas, la biblioteca GSM permite al
Arduino para actuar como cliente o servidor, usando http llama
para enviar y recibir páginas web.
Requisitos del operador de red
Para acceder a una red, debe tener una suscripción con un
operador de teléfono móvil (ya sea de prepago o contrato), un
dispositivo compatible con GSM como el escudo GSM o teléfono
móvil, y un (SIM) del módulo de identidad del abonado. El
operador de red proporciona la tarjeta SIM, que contiene
información como el número de móvil, y puede almacenar una
cantidad limitada de contactos y mensajes SMS.
Para utilizar GPRS para acceder a Internet, y para el Arduino que
solicitar o servir páginas web, usted necesita para obtener el
nombre del punto de acceso (APN) y un nombre de usuario /
contraseña del operador de red. Consulte la información
en Conexión a Internet para obtener más información sobre el
uso de las capacidades de datos del escudo.
Tarjetas SIM
Además del escudo GSM y un Arduino, necesita una tarjeta
SIM. El SIM representa un contrato con un proveedor de
comunicaciones. El proveedor de comunicaciones venderle la
SIM tiene a bien proporcionar cobertura GSM donde usted está,
o tener un acuerdo de itinerancia con una empresa que ofrece
cobertura GSM en su ubicación.
Es común que las tarjetas SIM que tienen un número PIN de
cuatro dígitos asociado con ellos por motivos de seguridad.Tome
nota de este número, ya que es necesario para la conexión a
una red. Si pierde el PIN asociado a la tarjeta SIM, puede que
tenga que ponerse en contacto con su operador de red para
recuperarla. Algunas tarjetas SIM se bloqueará si un PIN
incorrecto se introduce demasiadas veces. Si no estás seguro de
lo que el PIN es, mire la documentación incluida con la tarjeta
SIM.
El uso de un PUK (PIN código de desbloqueo), es posible
restablecer un PIN perdido con el escudo GSM y un Arduino. El
número PUK vendrá con la documentación de su tarjeta SIM.
Mira la Gestión PIN ejemplo en la carpeta "herramientas",
incluido con la biblioteca GSM para un ejemplo de cómo
gestionar su número de PIN con el PUK.
Hay unos pocos tamaños diferentes de tarjetas SIM; el escudo
GSM acepta tarjetas en el formato mini-SIM (25mm de largo y
15mm de ancho).
Notas sobre la Telefónica / Movilforum SIM incluidas con el escudo
El escudo GSM viene con una tarjeta SIM de Telefónica /
Movilforum que trabajará bien para el desarrollo de máquina a
máquina ( M2M ) aplicaciones. No es necesario el uso de esta
tarjeta específica con el escudo. Se puede usar cualquier SIM
que trabaja en una red en su área.
La tarjeta SIM Movilforum incluye un plan de itinerancia. Se
puede utilizar en cualquier red GSM compatible. Hay cobertura
en toda América y Europa para esta SIM, compruebe la página
de la disponibilidad del servicio Movilforumpara países
específicos que han apoyado las redes.
La activación de la tarjeta SIM es manejado por Movilforum. Las
instrucciones detalladas sobre cómo registrarse y activar su SIM
en línea y añadir crédito se incluyen en un pequeño folleto que
viene con su escudo. La tarjeta SIM debe ser insertado en un
escudo GSM accionado que está montado en un Arduino para la
activación.
Este la tarjeta SIM viene sin un PIN, pero es posible establecer
una utilizando la biblioteca GSM clase GSMPIN .
No se puede utilizar la SIM incluido para realizar o recibir
llamadas de voz.
Sólo puede realizar y recibir SMS con otras tarjetas SIM de la red
Movilforum.
No es posible crear un servidor que acepta peticiones entrantes
desde la Internet pública. Sin embargo, el Movilforum SIM
aceptará las peticiones entrantes de otras tarjetas SIM de la red
Movilforum.
Para el uso de la voz, y otras funciones de la pantalla, usted
tendrá que encontrar un proveedor de red diferente y SIM.Los
operadores tendrán condiciones especiales para sus tarjetas
SIM, consulte con ellos directamente para determinar qué tipos
de conexiones son compatibles.
Conexión del Escudo
Si está utilizando un Arduino Uno, siga las siguientes
instrucciones. Si está utilizando un Arduino Mega, Mega ADK o
Leonardo, debe seguir estas instrucciones . El escudo GSM no se
admite actualmente en la causa.
Para utilizar el escudo, tendrás que insertar una tarjeta SIM en el
soporte. Deslice el soporte de metal de distancia desde el borde
de la pantalla y levante la base hacia arriba.
Inserte la tarjeta SIM en el soporte de plástico de modo que los
contactos de metal se enfrentan al escudo, con la muesca de la
tarjeta en la parte superior del soporte.
Deslice la tarjeta SIM hasta el final en el soporte
Empuje la tarjeta SIM a la tarjeta y deslice el soporte de metal
hacia el borde de la pantalla para que encaje en su lugar.
Una vez insertada la tarjeta SIM, montarlo en la parte superior
de una placa Arduino.
Para subir sketches a la placa, conéctelo a su computadora con
un cable USB y cargar su dibujo con el Arduino IDE. Una vez que
el boceto se ha cargado, se puede desconectar la placa del
ordenador y poder con una fuente de alimentación externa.
Pines digitales 2, 3 y 7 están reservados para la comunicación
entre el Arduino y el módem y no pueden ser utilizados por sus
bocetos. La comunicación entre el moden y Arduino está a cargo
de la biblioteca de serie del software en los pines 2 y 3 Pin 7 se
utiliza para el reinicio del módem.
Cuando el amarillo de estado LED se enciende, significa que el
módem está encendido, y usted puede intentar la conexión a la
red.
Versiones Desarrollador del escudo GSM que requieren presionar
pulse el Poder botón en la pantalla durante unos instantes para
encender el módem. Si usted tiene una primera versión del
escudo, y que no se enciende automáticamente, puede soldar
un jumper a la plataforma de CTRL / D7 en el reverso de la
placa, y se encenderá cuando un Arduino conectado recibe
energía.
El blindaje debe trabajar en un área con cobertura GSM. Antes
de comprar el escudo por favor compruebe que no hay este tipo
de cobertura donde se vaya a utilizar.
Biblioteca GSM
La biblioteca GSM gestiona la comunicación entre Arduino y el
escudo GSM. La mayoría de las funciones son para la gestión de
datos, voz y comunicación SMS. También hay una serie de
utilidades para la gestión de información sobre el módem y el
PIN de la tarjeta SIM. Ver las referencia de la biblioteca páginas
para obtener más información y un conjunto completo de
ejemplos.
Prueba de la conexión de módem y de red
Este bosquejo comprobará el número IMEI del módem. Este
número es único para cada módem, y se utiliza para identificar
los dispositivos válidos que se pueden conectar a una red
GSM. Una vez que el número ha sido leído desde el módem, el
Arduino imprimirá el portador de la red está conectado a, y la
intensidad de la señal de la red a través del puerto serie.// Importar la biblioteca de GSM # include <GSM.h>
// PIN Número #define PinNumber ""
// inicializar la instancia bibliotecaGSM gsmAccess ( true ) ; // incluyen un parámetro 'true' para depuración habilitadaGSMScanner scannerNetworks ;GSMModem ModemTest ;
// variables de guardar los datosde cadena IMEI = "" ;
// mensajes de resultados monitor seriede cuerdas errorText = "ERROR" ;
vacío de configuración ( ) { // inicializar comunicaciones serie de serie . empezar ( 9600 ) ; de serie . println ( "redes GSM escáner " ) ; . scannerNetworks comenzar ( ) ;
// conexión estado booleano notConnected = true ;
// escudo Start GSM // Si la tarjeta SIM tiene PIN, pasarlo como un parámetro de comenzar () en conectado " ) ; retraso ( 1000 ) ; } } // obtener parámetros del módem // IMEI, módem único identificador de serie . print ("Modem IMEI:" ) ; IMEI = . ModemTest getIMEI ( ) ; IMEI. reemplazar ( " \ n " , "" ) ; si ( IMEI =! NULL ) de serie .println ( IMEI ) ; // portadora actualmente conectado en serie . print ( "portador actual:" ) ; de serie . println ( . scannerNetworks getCurrentCarrier ( ) ) ; // devuelve fuerza y ber . // fuerza de la señal en la escala 0-31 31 significa el poder> 51dBm // BER es la Tasa de Error de Bit 0-7 escala 99 = no detectable.. serie . print ( "Intensidad de la señal:" ) ; de serie . impresión ( . scannerNetworks getSignalStrength ( ) ) ; serie . println ( "[0-31]" ) ; } void loop ( ) { // busque las redes existentes, muestra una lista de redes en serie . println ( "Exploración de redes disponibles Puede tardar un poco. segundos ". ) ; de serie . println ( scannerNetworks. readNetworks ( ) ) ; // portadora actualmente conectado en serie . print ("portador actual:" ) ; de serie . println ( . scannerNetworks getCurrentCarrier ( ) ) ; // devuelve fuerza y ber / . / potencia de la señal en la escala 0-31 31 significa el poder> 51dBm // BER es la tasa de error 0-7 escala 99 = no detectable.. serie .print ( "Intensidad de la señal:" ) ; de serie . impresión ( scannerNetworks. getSignalStrength ( ) ) ; serie . println ( "[0-31]" ) ; }
[Obtener código]
El envío de un mensaje SMS
Una vez que se haya conectado a la red con la figura de arriba,
puede probar algunas de las otras funciones de la junta.Este
bosquejo se conectará a una red GSM y enviar un mensaje SMS
a un número de teléfono de su elección.# include <GSM.h>
#define PinNumber ""
// inicializar la instancia bibliotecaGSM gsmAccess ; // incluyen un parámetro 'true' para depuración habilitadaGSM_SMS sms ;
// caracteres matriz con el número de teléfono para enviar SMS // cambiar la número 1-212-555-1212 para una serie // tiene acceso a charlas remoteNumber [ 20 ] = "12125551212" ;
// caracteres matriz del mensaje caracteres TxtMsg [ 200 ] = "Test" ;
void setup ( ) { / / inicializar comunicaciones serie de serie . empezar ( 9600 ) ;
de serie . println ( "Mensajes SMS Remitente" ) ;
// conexión estado booleano notConnected = true ;
// escudo Start GSM // Si la tarjeta SIM tiene PIN, pasarlo como un parámetro de begin () en conectado " ) ; retraso ( 1000 ) ; } } Serial . println ( "GSM inicializado" ) ; sendSMS ( ) ; } void loop ( ) { // nada que ver aquí } void sendSMS ( ) { Serial . print ( "Mensaje a número de teléfono móvil: " ) ; de serie . println ( remoteNumber ) ;// texto sms de serie . println ( "Envío" ) ; de serie . println ( ) ; de serie . println ( "Mensaje:" ) ; de serie . println (TxtMsg ) ; / / enviar el mensaje sms. beginSMS ( remoteNumber ) ; . sms impresión ( TxtMsg ) ; sms. endSMS ( ) ; de serie. println ( " \ n COMPLETAR! \ n " ) ; }
[Obtener código]
Conexión a internet
Además de la tarjeta SIM y un plan de datos, usted necesitará
un poco de información adicional de su proveedor de telefonía
móvil para conectarse a internet. Cada proveedor de telefonía
móvil tiene un Nombre de punto de acceso (APN) que sirve de
puente entre la red móvil y por internet. A veces, hay un nombre
de usuario y la contraseña asociada con el punto de
conexión. Por ejemplo, la APN Movilforum es
sm2ms.movilforum.es, pero no tiene contraseña o nombre de
usuario.
Esta página enumera una serie de información del transportista,
pero puede no estar actualizada. Puede que tenga que obtener
esta información de su proveedor de servicios.
El dibujo de abajo se conectará a arduino.cc/latest.txt e imprimir
su contenido.
NB: Algunos operadores de red bloquea el tráfico IP
entrante. Usted debe ser capaz de ejecutar funciones de cliente,
como el dibujo de abajo, sin problemas.// Incluyen la biblioteca GSM # include <GSM.h>
// PIN número si es necesario PinNumber # define ""
// información de APN obrained de su proveedor de red #define GPRS_APN "GPRS_APN" // sustituir con su GPRS APN #define GPRS_LOGIN " login "// sustituir con su GPRS entrada GPRS_PASSWORD # define "password" // sustituir con su contraseña GPRS
// inicializar la biblioteca instanciascliente GSMClient ;GPRS GPRS ;GSM gsmAccess ;
// este ejemplo se descarga el URL "http: // arduino .cc / latest.txt "
Char servidor [ ] = "arduino.cc" ; // la base URL carbón ruta [ ] = "/latest.txt" ; // el camino int port = 80 ; // el puerto, 80 para HTTP
void setup ( )
{ // inicializar comunicaciones serie de serie . comienza ( 9600 ) ; de serie . println ( "Inicio del cliente Web Arduino." ) ; // conexión estado booleano notConnected = true ;
// escudo Start GSM // pasar el PIN de la tarjeta SIM como un parámetro de conectado " ) ; retraso ( 1000 ) ; } } Serial . println ( "conectando ..." ) ; // si tienes una conexión, el informe de vuelta a través de serie: si ( cliente. conectar ( servidor , puerto ) ) { Serial . println ( "conectado" ) ; // Hacer una petición HTTP: . cliente de impresión ( "GET" ) ; . cliente de impresión ( ruta ) ; . cliente println ( "HTTP / 1.0" ) ; . cliente println ( ) ; } otro { // si usted no recibió una conexión con el servidor: Serial . println ( "fallo de conexión" ) ;} } void loop ( ) { // si hay bytes entrantes disponibles // desde el servidor, leerlos e imprimirlos : si ( cliente. disponible( ) ) { caracteres c = cliente. leer ( ) ; de serie . impresión ( c ) ; } // si desconecta del servidor, detenga el hacer nada para siempre: para ( ;; ) ; } }
[Obtener código]
Hacer llamadas de voz
A través del módem, es posible realizar llamadas de voz. Con el
fin de hablar con y escuchar a la otra parte, tendrá que añadir
un altavoz y un micrófono.
En la parte inferior de la pantalla, hay agujeros pasantes
etiquetado M1P y M1N . Estos son los pines de entrada de voz
positivos y negativos para un micrófono. Los agujeros pasantes
etiquetados S1P y S1N son los pines de salida de voz positivo y
negativo, a la que usted necesita para conectar un altavoz.
En la página 43 de la documentación del módem , no es un
ejemplo de voz y circuito de sonido que se conectará a un
auricular:
El siguiente esquema le permite colocar una llamada de
voz. Utilización del monitor de serie, puede introducir el número
de teléfono a distancia y terminar la llamada. Cuando vea el
mensaje READY, escriba un número de teléfono. Asegúrese de
que el monitor serie está configurado para enviar una nueva
línea en el momento en que se pulsa retorno.# include <GSM.h>
// PIN Número #define PinNumber ""
// inicializar la instancia bibliotecaGSM gsmAccess ; // incluyen un parámetro 'true' para debug habilitadovcs GSMVoiceCall ;
Cadena remoteNumber = "" ; // el número que llamará caracteres CharBuffer [ 20 ] ;
void setup ( ) {
// inicializar comunicaciones serie de serie . empezar ( 9600 ) ;
de serie . println ( "Hacer Llamada de Voz" ) ;
// conexión estado booleano notConnected = true ;
escudo // Start GSM // Si la tarjeta SIM tiene PIN, pasarlo como un parámetro de comenzar () en conectado " ) ; retraso ( 1000 ) ; } } Serial . println ( "inicializa GSM." ) ; de serie . println ( "Introduzca el número de teléfono para llamar." ) ; } void loop ( ) { // añadir cualquier carácter de entrada a la Cuerda: mientras ( de serie .disponible ( ) > 0 ) { caracteres inchar = Serial . leer ( ) ; // si se trata de una nueva línea, que significa que debe realizar la llamada: si ( inchar == ' \ n ' ) { // asegúrese de que el número de teléfono no es demasiado largo: si (remoteNumber. longitud ( ) < 20 ) { // mostrar el número que usted está llamando: Serial . print ( "Llamando a:" ) ; de serie .println ( remoteNumber ) ; Serial . println ( ) ; // Llame al número remoto remoteNumber. ToCharArray ( CharBuffer , 20) ; // Compruebe si el extremo receptor ha recogido la llamada si ( vcs. VoiceCall ( CharBuffer ) ) { Serial . println ("llamada establecida. Introduzca la línea hasta el final " ) ; // Espere algunas aportaciones de la línea , mientras que ( de serie . leer ( ) =! ' \ n ' && ( vcs. getvoiceCallStatus ( ) == HABLAR ) ) ; // Y colgar vcs. hangCall ( ) ; } de serie . println ( "Llamada finalizada" ) ; remoteNumber = "" ; de serie . println ( "Introduzca el número de teléfono para llamar." ) ; } otro { Serial . println ( ". Eso es demasiado tiempo para un número de teléfono que 'm olvidarlo " ) ; remoteNumber = "" ; } } otro { // añadir el último carácter al mensaje a enviar: si ( inchar ! = ' \ r ' ) remoteNumber + = inchar ; } } }
[Obtener código]
Los próximos pasos
Ahora que ha probado la funcionalidad básica de la junta
directiva, consulte las bibliotecas GSM páginas para información
acerca de la API de la biblioteca y ejemplos adicionales. Ver
la página de hardware para obtener más información sobre el
escudo sí mismo. guía El texto de la empezar con Arduino está
bajo una licencia 3.0 Licencia Creative Commons
Reconocimiento-Compartir bajo la misma . Ejemplos de código
en la guía están liberados al dominio público.
Recommended