Go Down

Topic: SIM800L falla comunicación (Read 310 times) previous topic - next topic

ingeniero18

Vengo trabajando con el módulo Sim800l hace tiempo y me encontré con una falla que no entiendo, aunque creo saber por dónde viene el inconveniente.... el problema me pasó con varios módulos y no fueron comprados en la misma tanda ni siquiera al mismo proveedor, por lo que presumo que no tiene que ver con el lote de los mismos.

Como se comenta en muchos foros de internet, el múdulo lo conecté en comunicación con un Atmega328P directamente entre Rx y Tx y viceversa, sin adecuando los niveles de tensiones, es decir, sin tener en cuenta que el módulo requiere de niveles de 2,8V... Y TODO ANDUVO PERFECTO!!! También, es alimentado con una tensión regulada de 4,2V.
Como anduvo bien, ensayando la comunicación, me encontré que luego de un tiempo de pruebas en ocasiones pasa que al alimentar el conjunto (Atmega - Sim800L) cuando recibo un string desde el módulo, el microcontrolador se resetea... tal falla es aleatoria, ya que no ocurre siempre, pero es más frecuente cuanto más lo utilizo.

Como no me rendí, conecté un osciloscopio para ver los niveles de comunicación y me encontré con lo siguiente:

 - Cuando todo anda bien, los niveles son de 5V.
 - Cuando ocurre la falla, el microcontrolador se resetea ya que, desde el SIM800L, se reciben niveles de 2,8V.

Es obvio que voy a modificar mi circuito y agregaré una adaptación de niveles para ver si esto soluciona la falla, pero mientras les consulto... QUÉ PIENSAN USTEDES DE ESTO???

tauro0221

Hi,
El  Sim800 require de una fuente 3.8 a 4.2 mas o menos y que pueda suplir 2 amperios. Cuanto amperios puede suplir el PS que alimenta el  Sim800L.

victorjam

En el post que hice hará un tiempo (donde posteaste primero) comenté el hecho de que los 2'8 voltios es el límite entre el valor LOW a HIGH del Arduino, por lo que muchas veces y en determinadas condiciones de consumo, la comunicación se verá afectada. Por eso es recomendable el uso del adaptador de niveles.

Otra cosa distinta es que dices:

Quote
Cuando ocurre la falla, el microcontrolador se resetea ya que, desde el SIM800L, se reciben niveles de 2,8V.
Si el microcontrolador se reseta, y con ese micro te refieres al arduino, creo que queda claro que pasa algo con la alimentación, y cuando el sim800 pide mucho consumo la alimentación del atmega baja tanto que produce un reset del arduino.

Cómo te pregunto Tauro, ¿cómo alimentas ambos circuitos?


ingeniero18

Muchas gracias por sus comentarios!!!

Hi,
El  Sim800 require de una fuente 3.8 a 4.2 mas o menos y que pueda suplir 2 amperios. Cuanto amperios puede suplir el PS que alimenta el  Sim800L.

El circuito está alimentado por una fuente diseñada para poder entregar hasta 1,3A. Es regulada a 5V y, para alimentar el SIM800L, bajo la tensión con un diodo . En el caso del módulo, como tiene asociado en su mismo PCB un capacitor de baja impedancia, tengo entendido que gracias a este obtiene el resto de corriente que requiere para llegar a los picos de 2 Amperes.

En el post que hice hará un tiempo (donde posteaste primero) comenté el hecho de que los 2'8 voltios es el límite entre el valor LOW a HIGH del Arduino, por lo que muchas veces y en determinadas condiciones de consumo, la comunicación se verá afectada. Por eso es recomendable el uso del adaptador de niveles.

Otra cosa distinta es que dices:

Si el microcontrolador se reseta, y con ese micro te refieres al arduino, creo que queda claro que pasa algo con la alimentación, y cuando el sim800 pide mucho consumo la alimentación del atmega baja tanto que produce un reset del arduino.

Cómo te pregunto Tauro, ¿cómo alimentas ambos circuitos?


En cuanto a tu post victor, ante nada te digo que es muy bueno y lo tengo como guía en estos días. Lo de adaptación de niveles ya lo comencé a implementar, pero la duda la tengo igual y es por eso que la plantié...

Lo raro de la falla es que no ocurre siempre, pero cuando comienza a darse se vuelve recurrente. Además, no entiendo por qué en muchas webs plantean que ese módulo está diseñado para poder conectarse directamente a niveles de 5V cuando no estoy encontrando ningún documento que lo confirme...

victorjam

#4
Jul 29, 2019, 03:14 pm Last Edit: Jul 29, 2019, 03:14 pm by victorjam
Quote
Lo raro de la falla es que no ocurre siempre, pero cuando comienza a darse se vuelve recurrente.
Me sigue viniendo a la mente que se trata de un problema de alimentación. Cuando el SIM800 trabaja, aumenta su consumo, llegando a consumir casi 1A. Descarté alimentarlo con 5 voltios y un diodo por que la caida de tensión del diodo depende de la corriente que circule por él, así a más corriente, mas voltaje y menos tensión para el SIM800L.

Desconocemos además del módulo y el arduino, que otro hardware tiene tu proyecto. Y eso es más consumo, así que la fuente puede quedarse un poco corta en momentos puntuales y hay empieza a ser recurrente, fallos, etc. Lo más normal en una fuente de alimentación que le pides mas corriente de la que puede soportar es que se pare o baje la tensión.

Hay varias versiones del módulo en cuestión, y las más modernas, aunque siguen usando un diodo, si tienen un adaptador de niveles TTL y usan la tensión de 2.8 que genera el chip.

Mi consejo es que pongas un adaptador de niveles, y pongas un regulador para el propio sim800L. Además mide los consumos para descartar que te quedas sin corriente, siempre en el peor de los casos.

surbyte

Alimentas con 5V Arduino y el SIM800L, desde mi punto de vista es un error.
Deberías usar una fuente que provea los A requeridos por el SIM800L y otra independiente para el Arduino y de ese modo concentras los problemas en uno u otro.
Ademas de colocar un buen electrolítico que permita devolver energia para posibles picos extra en los momentos de TX del SIM800L.

EL Sim800L ha sido un gran problema en mucha gente, hasta que Victorjam hizo su post y dio una verdadera cátedra de como llevarlo adelante.

ingeniero18

#6
Jul 30, 2019, 12:47 am Last Edit: Jul 30, 2019, 04:13 am by surbyte
En mi proyecto tan solo tengo el micro con la fuente y el módulo... nada más que consuma corriente.
Voy a aplicar la adaptación de niveles, una mejor fuente para el SIM800L y ensayar consumos, pero mi duda principal era el por qué la falla no ocurre siempre...
Como dije antes, tu post es muy aconsejable para el que maneja este módulo, por lo que lo tendré como una nueva guía para seguir mejorando mi proyecto.
Cualquier novedad que tenga se las cuento..
Gracias por todo!!!

tauro0221

Hi,
Adjunto una descrption que pasa si el voltaje se cae el modulo se va en shutdown. Es posible que es lo que te esta sucediendo.

Quote
When  designing  the  power  supply  in  user's  application,  pay  special  attention  to  power  losses.  Ensure  that  the  input  voltage  never  drops  below  3.0V  even  when  current  consumption  rises  to  2A  in  the  transmit  burst.  If  the  power voltage drops below 3.0V, the module may be shut down automatically.

Go Up