Registro de Processo para matéria de PROJETO EM ARTEMÍDIA com o Prof. Jarbas Jácome - Aplicações com ARDUINO
UFRB - CAHL - Artes Visuais 2014.1 - Cachoeira/BA
UFRB - CAHL - Artes Visuais 2014.1 - Cachoeira/BA
Autores: André Dantas (RA201410268) / Marcos Da Matta (RA201410273)
Neste projeto estamos trabalhando em um Sistema de Irrigação para Hortas Domesticas auxiliado por ARDUINO. Inicialmente, foi criado um sistema de irrigação por gotejamento que é ativado automaticamente em horários pré determinados que vem funcionando muito bem, porem buscando reduzir o tempo em que o sistema fica ligado, pensamos em criar um reservatório que auxiliado por um sensor ultrassônico controlado pelo ARDUINO, ira reabastecer o reservatório de água quando necessário.
Vantagens e Desvantagens do Reservatório
Com o sistema de gotejamento ligado diretamente a rede de água, a pressão e a vazão da linha tem de ser contida pelos gotejadores, em função disso o sistema tem de ficar ativo por um tempo maior para ser alimentado com a mesma quantidade de água que rapidamente abastece o reservatório utilizando a vazão total da rede. Por outro lado a pressão inferior torna necessário fixar o reservatório elevado em relação a horta.
Nesta implementação ainda pode ser adicionado adubos e fertilizantes líquidos ao sistema, coisa que não podemos fazer ligando diretamente na rede. Estes aditivos podem ser armazenados em reservatórios menores e controlados pelo mesmo sensor e uma bomba de aquário que pretendemos implementar na próxima versão.
Materiais Utilizados
- Placa ARDUINO UNO R3
- Sensor Ultrassônico HC-SRO4
- Válvula Solenoide
- Relé 5V
- Diodo 1N4007 ou equivalente
- Transistor BC548 (ou equivalente NPN)
- Resistor de 220Ω
- Galão de Água 20L
- Mangueira de Jardim (pedaço)
- Cotonetes (opcional)
Montagem do Circuito de Testes
Para facilitar os testes, pensamos uma versão simplificada com objetivo de criar uma calibragem para o sensor e verificar o nível de reatividade quando acionado pela água. Houveram alguns problemas com relação ao posicionamento do sensor próximo as bordas do reservatório, porem após ser posicionado no centro, as leituras normalizaram e foi possível chegar em um teste efetivo.
Nesta versão, utilizamos LEDs para melhor visualizar as leituras do sensor e simular o acionamento da Válvula Solenoide. Isto foi feito também, para evitar os primeiros testes com o conjunto ligado a uma fonte de energia 127V.
Quando for realizar a montagem de LEDs, lembre-se de prestar atenção ao lado correto dos polos. Em nossa montagem final, acabamos fazendo com apenas dois LEDs, pois seria o bastante para os acionamentos desta etapa do projeto.
Código do Programa Utilizado para Testes
//Incluindo biblioteca Ultrasonic.h
#include <Ultrasonic.h>
//criando objeto ultrasonic e definindo as portas digitais
//do Trigger - 6 - e Echo - 7
Ultrasonic ultrasonic(6, 7);
//Declaração das constantes referentes aos pinos digitais.
const int ledVerde = 13;
const int ledAmarelo = 12;
long microsec = 0;
float distanciaCM = 0;
void setup() {
Serial.begin(9600); //Inicializando o serial monitor
//Definindo pinos digitais
pinMode(ledVerde, OUTPUT); //13 como de saÃÂda.
pinMode(ledAmarelo, OUTPUT); //12 como de saÃÂda.
}
void loop() {
//Lendo o sensor
microsec = ultrasonic.timing();
//Convertendo a distancia em CM
distanciaCM = ultrasonic.convert(microsec, Ultrasonic::CM);
ledDistancia();
Serial.print(distanciaCM);
Serial.println(" cm");
delay(3000);
}
//Função de controle de acendimento dos leds.
void ledDistancia() {
//Apagando todos os leds
digitalWrite(ledVerde, LOW);
digitalWrite(ledAmarelo, LOW);
//Acendendo o led adequado para a distancia lida no sensor
if (distanciaCM > 8) {
digitalWrite(ledVerde, HIGH);
}
if (distanciaCM <= 8 and distanciaCM >= 6) {
digitalWrite(ledAmarelo, HIGH);
}
Testando o Programa
Postar um comentário