terça-feira, 28 de junho de 2011

Sensor de Temperatura

O porquê do sensor de temperatura? A escolha foi por poder ser utilizado em diferentes locais e infra-estruturas, mudando um pouco o seu Hardware ou Software adequadamente com o local a ser aplicado. Esta escolha também foi feita porque necessitava-mos da sua utilização para as mini PAP’s, e também para ver um pouco como trabalha o I2C.



Material Principal para realizar o projecto:
  • Arduino UNO;
  • Sensor de Temperatura(TC74);
  • Ventoinha;
  • Placa de Potência.

TC74:

  O funcionamento do sensor de temperatura é muito simples. Temos 5 pinos sendo estes VDD, GND, SCL, SDA e o pino NC. O protocolo de comunicação existente neste sensor é o I2C.

  O barramento I2C é conhecido por utilizar apenas dois fios para comunicação entre vários dispositivos electrónicos, mas contudo este necessita de 4 fios, dois para comunicação e dois para alimentação.

  
 Os fios são os seguintes:

  • VCC (+5V);
  • GND (Massa comum entre os equipamentos);
  • SDA (Serial DAta Line);
  • SCL (Serial CLock).

O Sensor é alimentado a 5V e comunica com o Arduino por I2C, tendo de ligar o pino SDA a entrada analógica 4 e o SCL a entrada analógica 5.

Programação:

//sensor de temperatura v.01
#include "Wire.h"      //wire libraria
#define address 0x4A   //address do sensor de temperatura
#define baudrate 9600  //baudrate de comunicação
#define Ventoinhas 7   //define ventoinhas como pino 7
int Estado = 0;
void setup()
  {
    Wire.begin();
    Serial.begin(baudrate);
  }
void loop()
  {
      pinMode (Ventoinhas, OUTPUT);
   
      Serial.print("Temperatura em Celsius: "); //sinal que está a receber
     
      int temperatura;        //temperature em um byte
   
      Wire.beginTransmission(address);  //inicio de transmissao
     
      Wire.send(0x00);
     
      Wire.requestFrom(address, 1);
    
      if (Wire.available())
        {
          temperatura = Wire.receive();
        
          Serial.println(temperatura); //impressao da temperatura
        }
      else
        {
          Serial.println("---");//imprime --- caso não receba nada
        }
   
      if(Estado = 1 & temperatura <= 28)        //Histerese
        {
          digitalWrite(Ventoinhas,LOW);
          Estado = 0 ;
        } 
      else if(Estado = 1 & temperatura >= 30)
        {
          digitalWrite(Ventoinhas,HIGH);
          Estado = 0 ;
        }
   
      Wire.endTransmission();//fim de transmissao com a libraria
     
      delay(1000);
  }



Placa de Potência:

     A placa de potência é muito simples de fazer e de utilizar. Nós desenhamos duas placas, uma com 8 relés e outra com 1 relé. Nós desenvolvemos duas placas distintas a pensar em possíveis utilizações e preço.

    A placa de potência é alimentada a 12V e tem de ter o GND em comum com o Arduino, está recebe um sinal do Arduíno que faz com que atraque o relé e possa accionar algo que esteja ligado as saídas do relé, neste caso um cooler de 12V. Estes relés podem trabalhar tanto como contacto aberto ou contacto fechado.

1 Relé:

Circuito de 1 Relé (Placa de Potência)


Lista de Materiais:
 
o   1 Relé 12V/10A 1 contacto

o   1 Led Vermelho

o   1 Resistência 470Ω

o   1 Resistência 2,2KΩ

o   2 Terminais Blocks de 3 pinos

o   1 Diodo 1N4148

o   1 Transistor BD137 ou BD439




8 Relés:

Circuito de 1 Relé (Placa de Potência)

Lista de Materiais:

o   8 Relés 12V / 0,5A 2 contactos
o   8 Leds Amarelos
o   8 Resistências 470Ω
o   1 C.I. ULN2803A
o   1 Socket 18 pinos
o   1 Single-in-Line 10 pinos
o   8 Single-in Line 3 pinos


Trabalho baseado no site:

Trabalho elaborado por:
Ricardo Nº18
Joel Nº21
Vyacheslav Kolesnyk Nº23