Meu código está errado ou não, pois não recebo um sms de retorno

Olá gente eu estou fazendo um projeto para meu TCC que é um, Sistema de irrigação no Arduino, eu estou usando o código de um blog como base, mais primeiro quero testa o código para ver se tá tudo ok segue o link do site.

Estou usando os mesmo equipamentos, eu fiz algumas modificações mais a logica é a mesma, mais quando eu executo o código ele só faz a leitura da String SMS = "Baixa Umidade";
Não esta lendo a String SMS = "Umidade Normal"; , não sei o que esta faltando no código para funcionar normalmente, e se as variáveis estão corretas pois no código as variáveis estão tudo com =0 .

Esse é o meu código.

#include <SoftwareSerial.h>
#define pinoAnalog A0

SoftwareSerial Portais(10, 11);
 
String Numero = "+55000000000"; //Digite seu celular com +55, o DDD da sua cidade e o seu numero com o 9 na frente
 
bool BaixaUmid = 0, AltaUmid = 0;
 
byte UmidPercent = 0, umidade = 0, ValorAnterior = 0;
 
int ValorAnalogIn = 0;

void setup()
{
  Serial.begin(9600);
  Serial.println("Inicializando Sistema...");
  delay(5000);
  Serial.begin(9600);
  delay(1000);
 
  pinMode(pinoAnalog, INPUT); //Configura o Pino do Sensor como Entrada
 
  ValorAnterior = analogRead(pinoAnalog); //Captura um primeiro valor de referencia inicial para a variavel ValorAnterior
}

void loop()
{
  //Le o valor do pino A0 do sensor
  ValorAnalogIn = analogRead(pinoAnalog); //Leitura do Valor Analógico do Sensor
 
  UmidPercent = map(ValorAnalogIn, 0, 1023, 0, 100); //Mapeando o valor entre 0 e 100
  umidade = 100 - UmidPercent;
 
  if ( (umidade > ValorAnterior + 1) || (umidade < ValorAnterior - 1) ) 

  {

    if (umidade < 60 && BaixaUmid == 0) 
    {
      BaixaUmid = 1;
      AltaUmid = 0;
      MensUmidBaixa();
    }
 
    if (umidade >= 60 && AltaUmid == 0)
    {
      AltaUmid = 1;
      BaixaUmid = 0;
      MensUmidNormal();
    }
 
 
    ValorAnterior = umidade;
  }
 
}

void MensUmidBaixa() //Funcao para enviar mensagem de alerta Umidade Baixa
{
  Serial.println("AT+CMGF=1\r");
  delay(1000);
  Serial.println("AT+CMGS=\"+ 550000000000 \"\r");
  delay(1000);
  String SMS = "Baixa Umidade";
  Serial.println(SMS);
  delay(100);
  Serial.println((char)26);
  delay(1000);
}

void MensUmidNormal()//Funcao para enviar mensagem de alerta Umidade Normal
{
  Serial.println("AT+CMGF=1\r");
  delay(1000);
  Serial.println("AT+CMGS=\"+55000000000 \"\r");
  delay(1000);
  String SMS = "Umidade Normal";
  Serial.println(SMS);
  delay(100);
  Serial.println((char)26);
  delay(1000);
}

E já pensaste em talvez adicionar a linha "Serial.println(unidade);" após "umidade = 100 - UmidPercent;" e ver qual é a leitura que o sensor faz?

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.