Pages: [1]   Go Down
Author Topic: Por favor ayuda con Arduino mega 2560 y SM5100B  (Read 2559 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Jr. Member
**
Karma: 0
Posts: 51
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Buenas, soy muy nuevo en electronica, pero me gusta mucho y mas cuando conoci Arduino, lo mio es informatica. El problema es que quiero enviar mensajes SMS, tengo un arduino mega 2560,arduino cellular shield y un sm5100B, pero como lo conecto o le doy power al cellular shield, por que hice el sketch, no hay errores de compilacion lo paso al mega 2560 y no hace nada ni mensajes. Que me falta?
Lo que he hecho:
A=Arduino mega 2560
B=Arduino Cellular Shield (Sm5100B)

conecte 2 cables desde A (Rx19 y Tx18)  a B(Rx y Tx), otro desde A (3.3V) a B (3v3) y otro desde A (Gnd) a B(Gnd), el SIM Card esta instalada y no hace nada, no muestra errores.
Disculpen mi ignorancia, sera que no llega corriente a B.

Aqui el Sketch

#include <NewSoftSerial.h>
/*  Example 26.3 GSM shield sending a SMS text message
http://tronixstuff.com/tutorials > chapter 26 */
NewSoftSerial cell(19,18);  // We need to create a serial port on D2/D3 to talk to the GSM module
char mobilenumber[] = "17863998545";  // Replace xxxxxxxx with the recipient's mobile number.  tambien coloque el numero de telef. asi 7863998545
void setup()
{  //Initialize serial ports for communication.
cell.begin(9600);
delay(35000); // give the GSM module time to initialise, locate network etc.
// this delay time varies. Use example 26.1 sketch to measure the amount
// of time from board reset to SIND: 4, then add five seconds just in case
}
void loop()
{
cell.println("AT+CMGF=1"); // set SMS mode to text
cell.print("AT+CMGS=");  // now send message...
cell.print(34,BYTE); // ASCII equivalent of "
cell.print(mobilenumber);
cell.println(34,BYTE);  // ASCII equivalent of "
delay(500); // give the module some thinking time
cell.print("que tal papa Ah ha ha ha");   // our message to send
cell.println(26,BYTE);  // ASCII equivalent of Ctrl-Z
delay(9000); // the SMS module needs time to return to OK status
do // You don't want to send out multiple SMSs.... or do you?
{
delay(1);
}
while (1>0);
}

Gracias y disculpeme por la falta de conocimiento en electronica, pero me encanta
Logged

Ciudad Real
Offline Offline
God Member
*****
Karma: 1
Posts: 751
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

imagino que has conectado TX de A a RX de B y de RX de A a TX de B

revisa eso

un saludo
Logged

Málaga, Spain
Offline Offline
Edison Member
*
Karma: 40
Posts: 2182
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Pon rx a tx y tx a rx. Comprueba la velocidad de la línea serie y a funcionar.
Logged

   

Offline Offline
Jr. Member
**
Karma: 0
Posts: 51
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias por responder,  SrDonGato, esta fue la foto que utilize para el trabajo http://tronixstuff.wordpress.com/2011/01/19/tutorial-arduino-and-gsm-cellular-part-one/ pero lo que veo que yo no tengo, es la parte de color negra en el mega 2560, donde se insertan los cables, yo uso cables sueltos, ademas no tengo antena en el sm5100b.Como deben estar los cables los correctamente instalado??, les agredezco la ayuda y paciencia
Logged

Ciudad Real
Offline Offline
God Member
*****
Karma: 1
Posts: 751
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

segun veo el codigo debes modificarlo.

con arduino UNO usa la libreria de newsoftserial para hacer un puerto serie con las patillas 2 y 3, en MEGA tenemos hasta 4 puertos serie y no hace falta usar esta libreria ya que por hardware lo tenemos.

para escribir en ese puerto se llama de esta manera Serial1.println("loquesea"), y en el codigo pone
Quote
NewSoftSerial cell(2,3);
cell.print(incoming_char);

debes cambiar estas cosas en el codigo, si no no te funcionará.

si no modificas el codigo usa las patillas 2 y 3 como si fuera UNO y deberia funcionarte.

la antena del model es importante .

Un saludo

Logged

Ciudad Real
Offline Offline
God Member
*****
Karma: 1
Posts: 751
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

del modem queria decir.

he visto tambien que en la parte que habla de mega tienes 4 ejemplo para hacerlo con mega ya hecho

Example 26.1, 26.2, 26.3 and 26.4.

esos ejempos, bajatelos y conectalo como en la foto y a rular
Logged

Málaga, Spain
Offline Offline
Edison Member
*
Karma: 40
Posts: 2182
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ten cuidado si no conectas una antena. Es posible que te cargues la etapa de potencia del modem.

Prueba a conectar el modem a rx, tx como viene en la imagen. Después conecta el cable USB al ordenador y abre el terminal serie. Si tu sketch no usa la línea serie, podrás enviar comandos al modem desde el pc. Es una forma de probar que el modem funciona bien. Empieza enviando: AT, el móvil contestara OK.

Estoy en un móvil, por eso puedo parecer un poco seco. No es fácil escribir mucho con estos chismes...
Logged

   

Offline Offline
Jr. Member
**
Karma: 0
Posts: 51
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias a todos por responder, pero alguien tiene una o unas foto(s) donde se pueda ver toda la coneccion del arduino al moden o como se ensambla todo. Recuerden que los principiantes a veces no entendemos algo, pero con una foto es mas facil entender
Gracias
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 51
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias por constestar, SrDonGato, lo hice de esta forma y tampoco funciona, podrias darme una ayudita, donde esta la parte que no trabaja.

/*
 This version - example 26.1a - for Arduino Mega
 Run jumpers from GSM shield pin 2 to Mega 19, and shield 3 to Mega 18
 Ensure that there is NOT a connection from shield pins RX and TX to anywhere.
 */

#include <string.h>         //Used for string manipulations
char incoming_char=0;      //Will hold the incoming character from the Serial Port.

void setup()
{
  //Initialize serial ports for communication.
  Serial.begin(9600); // for terminal communication
  Serial1.begin(9600); //  for GSM module communication
  Serial.println("Starting SM5100B Communication...");
}

void loop() {
  //If a character comes in from the cellular module...
  if(Serial1.available() >0)
  {
    incoming_char=Serial1.read();    //Get the character from the cellular serial port.
    Serial.print(incoming_char);  //Print the incoming character to the terminal.
  }
  //If a character is coming from the terminal to the Arduino...
  if(Serial.available() >0)
  {
    incoming_char=Serial.read();  //Get the character coming from the terminal
    Serial1.print(incoming_char);    //Send the character to the cellular module.
  }
}


solo me muestra "Starting SM5100B Communication..."

Agradezco de antemano la ayuda, gracias
Logged

Ciudad Real
Offline Offline
God Member
*****
Karma: 1
Posts: 751
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

normal

lo que hace es comunicar un terminal con otro , para que tu pongas los comandos manualmente y veas si el modem te responde.

abres el viros del COM

te pondra eso que pones

Starting SM5100B Communication...

bien ahora escribes tu
debes poner la opcion abajo de "cariage return" al lado de la velocidad del puerto que debes poner en 9600

escribe AT y le das a intro

el modem debe responderte con un

OK

si pasa eso es que tenes el montaje bien hecho, ya solo te queda programarlo para que haga lo que tu quieras

un saludo


Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 51
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias por responder.
Creo que el montaje esta malo, por que hice lo que me indicaste y el comando AT y NO da OK, ahora pregunto y disculpa mi ignorancia, en el Cellular Shield with SM5100B debe estar un led prendido? por que si es asi, no lo esta, yo le doy power (5V) desde el mega 2560 y no hay led prendido en Cellular Shield.Tengo un cable desde el mega 2560 a un puerto USB de mi laptop. Donde estara el tremendo ERROR. Si hay alguna foto o esquema como debe ser el montaje te lo agradezco.
Sera por que no tengo los Stackable Header??, solo hago las conecciones con cables sueltos
Gracias
Logged

Ciudad Real
Offline Offline
God Member
*****
Karma: 1
Posts: 751
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

yo no tengo ese shield pero pienso que debe coger la alimentacion nada mas conectarlo encima pues los pines de alimentacion de UNO y MEGA son compatibles.
algo debes tener mal si ...

tiene algun interruptor ?

Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 51
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

gracias, no tengo interruptor, pero pasara con este codigo,siempre me muestra donde dice "Es AAA" y "Es BBB", esta todo conectado, tengo en sim card instalado, donde esta el error, gracias por adelantado

#include <string.h>         //Used for string manipulations
char incoming_char=0;      //Will hold the incoming character from the Serial Port.

void setup()
{
  //Initialize serial ports for communication.
  Serial.begin(9600); // for terminal communication
  Serial1.begin(9600); //  for GSM module communication
  Serial.println("Starting SM5100B Communication...");
}

void loop() {
  //If a character comes in from the cellular module...
  if(Serial1.available() >0)
  {
    incoming_char=Serial1.read();    //Get the character from the cellular serial port.
    Serial.print(incoming_char);  //Print the incoming character to the terminal.
  }
  else
  {
   Serial.println("Es AAA");
  }
  //If a character is coming from the terminal to the Arduino...
  if(Serial.available() >0)
  {
    incoming_char=Serial.read();  //Get the character coming from the terminal
    Serial1.print(incoming_char);    //Send the character to the cellular module.
  }
  else
  {
   Serial.println("Es BBB");
  }
}
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 1
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

SABES COMO CONECTAR EL ARDUINO UNO CON EL MODULO SM5100B ????

POR FAVOR!!
Logged

Pages: [1]   Go Up
Jump to: