Introduction: TrashIoT - Lixeira Inteligente Com Intel Edison

About: A embedded systems developer, looking to discover new stuffs, new technologies. Ready to help in what I can do and learn togheter.

Esse projeto foi desenvolvido durante o Intel IoT Roadshow 2015.

O grupo foi formado por Carlos Oliveira, Eduardo Schiavo, Felipe Machado, Glauber Bernardo, Gustavo Carlos, Hugo Peressim e Osmar Gonçalves.

O objetivo era a familiarização do grupo com a placa Intel Edison através do desenvovimento de um projeto, foi desenvolvido um modelo conceito de uma lixeira inteligente que realiza a abertura e fechamento da tampa automaticamente além de medir o volume de lixo acumulado, quando está cheia avisa através de um tweet.

O desenvolvimento foi feito utilizando a IDE Arduino 1.6.5, assim o projeto pode ser reproduzido a partir de qualquer plataforma.

Step 1: Lista De Componentes

O projeto foi basicamente desenvolvido a partir do kit de sensores GROVE além da placa Intel Edison que é o coração do projeto.

Lista de Componentes

  • 1 Intel Edison
  • 1 Cabo USB
  • 2 Sensores Ultrassom HC-SR04
  • 1 Grove Buzzer
  • 1 Grove LCD RGB
  • 1 Grove Servo motor

Step 2: Configuração Do Projeto

O modelo da lixeira foi desenvolvido utilizando uma caixa de papelão para simular uma lixeira real, ela é sensoriada da seguinte maneira, um ultrassom externo é responsável pela detecção da aproximação de um usuário, quando este chega a uma distância mínima pré-definida, o servo motor é acionado para a realização da abertura da tampa, quando o usuário se distância, o buzzer toca um pequeno áudio indicando que a tampa será fechada.

Na parte interna da tampa existe um segundo sensor ultrassom que é responsavel por medir a distância até o fundo da lixeira, quanto menor a distância, significa que o volume de lixo está aumentando.

Na parte fica um display LCD que indica a porcentagem de ocupação da lixeira, bem como altera sua coloração gradativamente do verde para o vermelho conforme a lixeira vai enchendo.

A parte mais interessante do projeto é que a lixeira está conectada à internet, então quando ele está completamente cheia ela realiza um tweet informando que está cheia e o horário.

Step 3: Código

Toda a codificação foi feita utilizando a IDE Arduino versão 1.6.5, foram utilizados os seguintes periféricos da placa, comunicação I2C para o display, GPIOs para buzzer e ultrassom, sinal PWM para controle do servo motor e conexão Wifi para realização dos Tweets.

A medida de distância utilizando os sensores ultrassom é feita basicamente colocando um pulso no pino de TRIG e aguardar o retorno da resposta no pino de ECHO, baseado no tempo em que o pulso demora para retornar e na velocidade do som é realizado o cálculo da distância.

O buzzer reproduz o áudio com um sinal PWM que é gerado partir das frequências das notas e suas respectivas pausas e tempos de duração.

Para a comunicação com o LCD foi utilizada a billioteca para Arduino fornecida pela Grove.

O uso do servo motor foi feito utilizando-se a biblioteca para controle de servo motores disponível na IDE arduino.

No tweet foi utilizado como referência um trabalho proposto aqui no instructables: https://www.instructables.com/id/Tweet-with-your-In...

O código segue em anexo.