Boas pessoal
Sou novo por aqui, espero a vossa ajuda e ajudar no que eu souber.
Um abraço para os demais.

Estou com um problema não tenho experiência em C e no meu projeto não consigo avançar mais.

Juntando os dois códigos, void loop o programa aceita-os como executáveis o problema é que na montagem do projeto não trabalha. Nem o servo roda, nem os valores de T e H se movem.
Quem me pode ajudar a acertar o código void loop.

Código:

#include "DHT.h"
#include
#include // inclui biblioteca de manipulação de servos motores.

#define DHTPIN 2 // what pin we're connected to

#define DHTTYPE DHT22

DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(8,9,4,5,6,7);

Servo motor;

void setup(void) {

motor.attach(13);
lcd.begin(16, 2);
lcd.print("Reading sensor");
dht.begin();

}

void loop() {

//CODIGO DHT

float temperature, humidity;

humidity = dht.readHumidity();
temperature = dht.readTemperature();
delay(2000);

lcd.clear();

char tempF[6];
char humF[6];
dtostrf(temperature, 5, 1, tempF);
dtostrf(humidity, 2, 0, humF);

lcd.print("T:");
lcd.print(tempF);
lcd.print((char)223);
lcd.print("C ");
lcd.print("H: ");
lcd.print(humF);
lcd.print("%");

//CODIGO SERVO

motor.write(0); //aqui o motor ficará a 0 graus
delay(50000); //5 minutos
motor.write(90); //aqui o motor ficará em 90 graus
delay(50000); // espera 5 minutos
motor.write(180); //aqui o motor ficará a 0 graus
delay(50000); // espere 5 minutos
motor.write(90); //aqui o motor ficará em 180 graus
delay(50000); // espere 5 minutos

}

Exibições: 460

Responder esta

Respostas a este tópico

Olá Alex,

Acredito que o melhor a fazer é postar seu código completo no www.pastebin.com, e colar o link aqui, ou enviar um TXT como anexo, e nos dizer o que espera do seu projeto para tratar de ajudar da melhor maneira, note que você tem includes sem nenhuma inclusão por exemplo, creio que fica difícil alguém tratar de ajudar você desta forma.

Alem disso quando colado aqui os caracteres sofrem alterações que complicam ainda mais o entendimento, siga as "diretrizes" propostas pelo colega Rui Viana, e poste o código e comentário, desta forma estimo será mais fácil receber ajuda.

Boa sorte.

Abs.

Boas agradeço a dica, modernices!.

Segue em baixo o Link para me poderem ajudar.

http://pastebin.com/pw0vpNsq

O projeto consiste em ter informação no LiquidCrystal lcd, temperatura e humidade transmitida pelo DHT.

em simultâneo terei um servo que roda na posição 0, 90, 180 e retorna da mesma forma de 5 em 5 minutos neste caso.

A minha situação é que não tenho muita exp nesta comunicação e ao juntar estes dois comandos eles não trabalham, penso que falta a junção dos dois comandos afim de serem lidos independentemente.

Cumprimentos disponham

    

    

Oi AC, bom dia,

testei o seu code aqui com meu arduino , e funcionou corretamente.

O que acontece com seu code é o seguinte:

Ele tem duas partes:

A primeira lê os valores de temperatura e umidade do sensor e envia ao LCD,

em seguida ele vai movimentar o Servo e executa 4 delays de 50000 ms (50 segundos = total 200 segundos),

e somente depois disto que ele lerá novamente o sensor.

Qualquer dúvida, comente aqui novamente.

Rui

Boas Rui

Irei fazer o teste novamente, mas ligando a uma fonte de alimentação sem ser no PC.

Mas pelo que comentas só depois do siclo do Servo é que volta a ler o sensor, o que pretendo então é que o sensor esteja sempre actualizado 2000 ms em 2000 ms, isto porque se tiver a necessidade de aumenta a rotação do servo os valor de temperatura e humidade ficam desatualizados até ao novo siclo.

Nota: o teste está feito        "delay(50000); //5 minutos" foi uma simulação para ser mais rápido o que pretendo será na realidade  "delay(300000); //5 minutos" assim está correto.

Mas para o efeito continuaremos pelos 50000 ms que o projeto será ainda mais desenvolvido.

Cumprimentos

Alex

   

Boas
Ninguem sabe responder a esta questão???

"o que pretendo então é que o sensor esteja sempre actualizado 2000 ms em 2000 ms"

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço