Foi realizada a integração das partes de mecânica, hardware e software do projeto, porém ainda não foi possível implementar todas as funcionalidades existentes no projeto.
A parte de conexão wi-fi entre aplicativo e arduino ainda não foi possível ser implementada. Então, para poder simular as solicitações das funcionalidades do aplicativo, foi implementada uma flag que é lida pelo próprio serial do arduino, assim, podemos solicitar o que seria feito por conexão wi-fi através do computador.
Também ainda não foi implementada o código para acionamento das funcionalidades do projeto através de horário.
No vídeo abaixo é apresentado o funcionamento da estação de alimentação, que possue a comida e também a água junto. O que pode ser feito até o momento é: solicitar despejo da comida, solicitar que a água seja ligada ou solicitar que seja desligada. Quando solicitado a comida, então primeiro o infravermelho verifica se tem comida no dispenser, se tiver então limpa o pote e depois aciona o dispenser para despejar uma quantidade fixa de porção. Quando é solicitar que a água seja ligada, primeiro é feita uma verificação no sensor de nível de água, se estiver com nível suficiente, então a água é ligada. Senão, é enviada uma mensagem informando para colocar mais água. Quando é solicitado para desligar a água, então é desligada a bomba e depois é feita uma nova verificação para saber se precisa repor água ou não.
Todas as solicitações feitas no vídeo foram digitadas pelos integrantes através do serial do arduino.
Abaixo estão duas fotos da integração da estação de comida, com hardware e parte mecânica:
Abaixo está o código da estação de comida:
E no vídeo abaixo, é apresentado o funcionamento da caixa de areia. Devido aos problemas encontrados pela equipe, apenas a rotina mais básica de requisição de limpeza foi implementada, usando o próprio terminal do arduino.
Ao fazer uma requisição, o sensor de movimento realiza uma leitura e, caso não detecte movimento, a limpeza é iniciada. Durante todo o percurso, caso ocorra algum movimento, a limpeza é interrompida e o sistema fica parado durante um tempo. Quando o rastelo chega no final do percurso, ele toca no fim de curso e o sentido é invertido para voltar à posição inicial, até tocar no fim de curso novamente.
O Real Time Clock DS1307 está funcionando perfeitamente, mas a equipe optou por não usá-lo nessa demonstração, pois seu funcionamento seria meramente comparar o horário atual com o horário agendado para uma limpeza.