Рет қаралды 1,068
Neste vídeo detalho o envio e recebimento de mensagens de texto via celular (SMS) utilizando o módulo SIM800L. Essa é mais uma maneira de interagir com microcontroladores, não necessariamente rodando o Tasmota, uma vez que o protocolo de comunicação é o UART, ou seja, via serial.
Através de comandos AT é possível programar o módulo, além de enviar mensagens e ler mensagens recebidas. O link abaixo tem o manual de comandos AT para o módulo SIM800L, aplicável também ao SIM900:
wiki.elecrow.c...
Obviamente que, para funcionar, será necessário um SIM Card válido, ou seja, que possua um plano junto a alguma operadora (seja pré ou pós pago) e que funcione normalmente quando inserido em um telefone celular.
Veja que o módulo SIM800L é praticamente um telefone celular, já que consegue de forma autônoma gerar chamadas de voz, receber chamadas de voz, além de enviar e receber mensagens SMS e MMS, bastando, é claro, que rodemos os respectivos comandos. Se ligarmos um microfone de eletreto e uma cápsula ou alto-falante pequeno diretamente a ele, conseguimos conversar através de chamadas de voz. Realmente um módulo pequeno mas muito valente.
A alimentação do módulo é um ponto crítico a ser observado, pois requer uma boa fonte, já que pode drenar até 2A em picos de poucos milissegundos. Porém, se nesse pequeno intervalo não houver essa corrente disponível, a tensão cai e o módulo é reiniciado. Portanto, uma boa fonte de alimentação é primordial. Não esquecendo que deve ser de 3,4 a 4,4V. Nada mais, nada menos. Baterias de Ni-MH de 3,7V como as 18650, de 2000mA ou mais, são recomendáveis, pois são capazes de fornecer tal corrente mantendo sempre estável a tensão no módulo. Portanto, se tiver dificuldade em obter uma fonte, utilize uma dessas baterias ligadas a um carregador que a mantenha sempre carregada.
Caso tenha ficado alguma dúvida, poste aqui nos comentários. E não esqueça de fazer parte de nosso grupo de Telegram. Está incrível! Vários conteúdos sendo debatidos e muito conhecimento sendo compartilhado. Vale a pena participar. O link para entrar é t.me/dgtronics1.
Espero que gostem do vídeo, compartilhem e curtam! Se quiserem apoiar o canal, podem fazê-lo através de "Gostei demais". Isso nos fortalece e nos ajuda a criar conteúdos cada vez mais interessantes. Faça sua sugestão pelos comentários!
---
Segue uma lista de comandos AT para as funções básicas vistas no vídeo (no console do Tasmota, insira o comando serialsend antes de cada um):
AT
Envia mensagem de OK informando que está entendendo corretamente. Também inicializa o autobauder.
AT+CCID
Verifica se o cartão é válido e, se for, retorna o número do SIM Card
AT+CREG?
Verifica se está conectado à rede. O segundo número precisa ser 1 ou 5 (qualquer outro indica não conectado)
AT+CSQ
Verifica a intensidade de sinal. O primeiro número é o sinal em dB (precisa ser maior do que 5)
ATI
Retorna o nome do módulo e sua revisão
AT+COPS?
Verifica em qual rede está conectado
AT+COPS=?
Retorna uma lista de operadores presentes na rede
AT+CBC
Retorna o status da alimentação. O segundo número é o nível de bateria e o terceiro a tensão em mV
Habilita a apresentação das mensagens CLI (Calling Line Identity)
AT+CLIP=1
---
Enviando um SMS
Define que o formato da mensagem será de texto puro:
AT+CMGF=1
Inicia o envio de uma mensagem para o número especificado, finalizando com ^Z (Control-Z, ou ASC=26 ou HEX=0x1A)
AT+CMGS="+55yyxxxxxxxxx"
Aparecerá o sinal de "maior que" aguardando a mensagem a ser enviada. Digite a mensagem e finalize com o caractere especial ^Z, copiando e colando a partir do Notepad++, por exemplo, como demonstrado no vídeo.
---
Recebendo um SMS
Define que o formato da mensagem será de texto puro (o default é Protocol Data Unit - PDU)
AT+CMGF=1
Define como novas mensagens SMS devem ser manipuladas
AT+CNMI=1,2,0,0,0
Regra para deixar definido em modo texto a manipulação de mensagens recebidas (deve ser definida toda vez que o módulo SIM800L for reiniciado):
rule2 on system#boot do backlog delay 150; serialsend AT+CMGF=1; delay 10; serialsend AT+CNMI=1,2,0,0,0 endon