Advertisement
tbatista

Termostato LM35 + potenciômetro arduino

Apr 22nd, 2016
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.51 KB | None | 0 0
  1. //potenciometro leitura
  2. int potenciometro = 1; // Define o pino do Arduino que o potenciômetro está conectado
  3. int valPot = 0;   //Variável que irá receber o valor do potenciômetro
  4.  
  5. //LM35
  6. int Temp;
  7. int LM35 = 0; //Define o pino do Arduino que o LM35 está conectado
  8. int valorLm35 = 0;
  9.  
  10. int relay = 12 ; // Define o pino do Arduino que o relay está conectado
  11.  
  12.  
  13. const long interval = 300;
  14. unsigned long previousMillis = 0;
  15.  
  16. void setup() {
  17.   Serial.begin(9600);
  18.  
  19.   pinMode(relay, OUTPUT); // Seta a porta do led como saída
  20. }
  21.  
  22. void termostato() {
  23.   unsigned long currentMillis = millis();
  24.  
  25.   valorLm35 = analogRead(LM35);//Faz a leitura do LM35
  26.   delayMicroseconds(300); //  Tempo de espera de 300us  para terminar o ADC
  27.   Temp = (valorLm35 * 0.48857);// converte a leitura do LM35 em graus Celcius
  28.  
  29.   valPot = analogRead (potenciometro);//Faz a leitura do potenciometro
  30.   valPot  = map(valPot, 0, 1023, 25, 50);// converte a leitura do potenciometro na faixa temp desejada
  31.  
  32.   if (Temp <= valPot) { // neste caso se temperatura menor que leitura do potenciometro Liga relay
  33.     digitalWrite(relay, HIGH);
  34.     Serial.println("  Ligou");
  35.   }
  36.   else {
  37.     digitalWrite(relay, LOW);
  38.   }
  39.  
  40.   if (currentMillis - previousMillis >= interval) {
  41.     previousMillis = currentMillis;
  42.     Serial.print("Temp:")
  43.     Serial.print(Temp);//exibe a temperatura
  44.     Serial.print("  Temp Prog:");
  45.     Serial.println(valPot);//exibe a temperatura desejada
  46.   }
  47. }
  48.  
  49. void loop() {
  50.   termostato(); // executa termostato
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement