collapse

* Posts Recentes

Pensamento do dia... por dropes
[Hoje às 12:25]


Relógio com Arduino UNO. por LVirtual
[Ontem às 18:49]


VS-Solar Challenge 2018 por TigPT
[Ontem às 07:55]


Ziphius: The Aquatic Drone por senso
[22 de Fevereiro de 2018, 17:28]


BostonDynamics - Vai uma mãozinha? por Njay
[21 de Fevereiro de 2018, 20:25]


Formatação de Arduinos (Uno, Nuovemila, Diecimila) por jm_araujo
[21 de Fevereiro de 2018, 18:57]


Mais um avanço na pele sintetica para robots e nao só... por Hugu
[20 de Fevereiro de 2018, 18:30]


Como ver se uma tomada tem a terra ligada? por LVirtual
[20 de Fevereiro de 2018, 15:08]


Via Verde - Identificador por TigPT
[17 de Fevereiro de 2018, 09:56]


Estação de soldadura da Banggood, será boa compra ? por vasco
[16 de Fevereiro de 2018, 17:47]

Autor Tópico: Multiplas leituras nas portas analógicas - leitura com erros  (Lida 1853 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline cms10

  • Mini Robot
  • *
  • Mensagens: 4
Boa tarde,

Estou com um problema ao ler dados de sensores em portas analógicas no Arduino.

Tenho um Arduino Uno, com um sensor de temperatura LM35, que funciona otimamente enquanto nao ligo mais sensor nenhum ao Ardino.
Aconteceu-me à dias ligar ao mesmo Arduino um sensor de monóxido de carbono (MQ7), e o sensor de temperatura começar a dar valores disparatados, e assim que desligo o sensor de monóxido de carbono o de temperatura volta ao normal.

Hoje tentei ligar no mesmo Arduino um sensor de NO2 (MiCS-2710), e quando tenho os dois ligados ao Arduino o LM35 fica como o mesmo problema, tao depressa me mostra a temperatura correto como ao fim de um bocado me mostra um valor completamente fora do normal, e de repente volta a mostrar valores coerentes. Reparei ainda que isto não acontece pelo facto de ter outro sensor ligado mas sim, de efetuar uma leitra do outro sensor ou ou nao. Ou seja, tenho os dois sensores ligados ao arduino em funcionamento e, quando executo o programa de modo a ler apenas os dados do LM35 tudo corre bem, se mandar o programa ler os valores de ambos os sensores à sempre alturas em que vai ler valores errados no LM35.

O meu código é este:
Código: [Seleccione]
int NO2_VCC_PIN = 3;
int NO2_HEATING_PIN = 5;
int NO2_SENSOR_PIN = 0;

int TEMP_SENSOR_PIN = 1;

int no2Value;
float tempValue;

void setup(){
  Serial.begin(9600);
  pinMode(NO2_SENSOR_PIN, INPUT);
  pinMode(NO2_VCC_PIN, OUTPUT);
  pinMode(NO2_HEATING_PIN, OUTPUT);
  pinMode(TEMP_SENSOR_PIN, INPUT);
  analogWrite(NO2_VCC_PIN, 130);
  analogWrite(NO2_HEATING_PIN, 100);
 
}

void loop(){
  //no2Value = analogRead(NO2_SENSOR_PIN);
  Serial.print("NO2: ");
  Serial.println(no2Value);
  tempValue = (((500*analogRead(TEMP_SENSOR_PIN))/1024));;
  Serial.print("Temperatura: ");
  Serial.println(tempValue);
  delay(100); 
}

Alguém me pode ajudar a resolver o problema?
O que poderá ser que faz isto?

Cumprimentos

Online jm_araujo

  • Mini Robot
  • *
  • Mensagens: 2.258
  • NERD!
Re: Multiplas leituras nas portas analógicas - leitura com erros
« Responder #1 em: 14 de Maio de 2014, 14:46 »
Como é que tens as ligações do NO2? Tens condicionamento de sinal e não estão diretas ao Arduino, espero.

É que o analogwrite gera um sinal PWM e não uma tensão constante.
E o mics precisa de 26mA para o aquecimento e apesar do ATmega ser capaz de fornecer 40mA, mais de 20mA não é recomendado.


Offline dio123

  • Mini Robot
  • *
  • Mensagens: 931
Re: Multiplas leituras nas portas analógicas - leitura com erros
« Responder #2 em: 14 de Maio de 2014, 14:55 »
Olhando para o codigo dá-me a entender que ele tem alimentação do sensor ligado directamente ao pino do arduino.

Tens aqui o esquema da ligação do sensor no ultimo post em pdf  http://forum.wiring.co/index.php?topic=70.0
E ligas aos 5v do arduino e nao do atmega.

Se quiseres ligar e desligar o sensor( ou outra coisa qualquer), usa sempre um mosfet ou usas um transistor.

Offline cms10

  • Mini Robot
  • *
  • Mensagens: 4
Re: Multiplas leituras nas portas analógicas - leitura com erros
« Responder #3 em: 14 de Maio de 2014, 14:57 »
Pois, então acho que o problema está mesmo aí...  :(

Tenho o mics ligado directamente ao arduino, o circuito é mais ou menos isso que está aí para o mics (https://www.dropbox.com/s/tronhaawitxzwsr/mics%202710_bb.jpg), e a resistência e de 10K. Mas sem ser assim não estou a ver como ligá-lo.

Como é que posso resolver isso?

Offline cms10

  • Mini Robot
  • *
  • Mensagens: 4
Re: Multiplas leituras nas portas analógicas - leitura com erros
« Responder #4 em: 14 de Maio de 2014, 15:34 »

Tens aqui o esquema da ligação do sensor no ultimo post em pdf  http://forum.wiring.co/index.php?topic=70.0
E ligas aos 5v do arduino e nao do atmega.


estive a olhar para esse circuito e há uma coisa que nao consigo perceber... o analog pin é ligado entre o sensor e o +5V? não era suposto ser entre o sensor e o GND?

Offline dio123

  • Mini Robot
  • *
  • Mensagens: 931
Re: Multiplas leituras nas portas analógicas - leitura com erros
« Responder #5 em: 14 de Maio de 2014, 15:37 »
Edit. No datasheet diz que é a vcc.
« Última modificação: 14 de Maio de 2014, 15:41 por dio123 »

Offline cms10

  • Mini Robot
  • *
  • Mensagens: 4
Re: Multiplas leituras nas portas analógicas - leitura com erros
« Responder #6 em: 14 de Maio de 2014, 15:44 »
Ok obrigado. Estava agora a olhar para o datasheet a ver se encontrava isso...

Vou tentar resolver a situação e volto a dar noticias entretanto...