Site icon Blog Usinainfo

Useless Box Arduino – A Caixa Inútil com Personalidade

A Useless Box Arduino, também conhecida como Caixa Inútil devido á sua tradução para o português, é um projeto desenvolvido com o intuito de entreter as pessoas através de sua “personalidade” e suas reações parcialmente espontâneas à estímulos externos.

Useless Box Arduino – A caixa inútil em MDF

Normalmente a Useless Box Arduino está associada a projetos makers que tem como objetivo apresentar a eletrônica de uma maneira mais divertida, inspirando o gosto e a curiosidade de uma maneira diferenciada.

Bastante utilizada em instituições de ensino para conquistar adeptos da eletrônica, este projeto apresenta um grau de complexidade suficiente para ser utilizado também como instrumento de desenvolvimento técnico através de exercícios de programação, por exemplo.

A ideia de funcionamento é simples, ao instigar as pessoas à liga-la, a Useless Box recusa-se a ficar ligada e de maneira autônoma se desliga novamente, cada vez que é ativado o interruptor ela apresenta um padrão comportamental diferente, mas sempre desligando-se ao final.

 

Vídeo Prático Useless Box Arduino

 

Caixa MDF para a Useless Box Arduino

Quem já tentou desenvolver este projeto ou até mesmo já o tenha executado, sabe que a maior dificuldade está no desenvolvimento mecânico do mesmo, uma vez que a Useless Box necessita de conexões específicas e articulações definidas para cada uma das suas ações.

Tendo isto em vista, a Usinainfo desenvolveu uma carcaça em MDF capaz de executar o movimento de até três servos motores, visando um projeto completo e com um exclusivo diferencial, a caixa inútil desenvolvida pela empresa conta com um terceiro servo além do responsável por erguer a tampa e o responsável por desativar o interruptor.

Este terceiro motor possui a finalidade de proporcionar uma “pegadinha”, vinculado a uma bandeira o mesmo dá indícios de que a Useless Box se entregou, que desistiu de insistir em desliga-se, podendo ser utilizado como desfecho para suas ações ou como uma pegadinha, se desligando normalmente ao final de suas ações.

Bandeira vinculada ao terceiro servo motor da Useless Box

Outro diferencial desta versão da Useless Box é a preocupação que se teve com os detalhes que envolviam este projeto, além de terem desenvolvido um equipamento sem necessidade de porcas e parafusos, possibilitando sua montagem através de encaixes firmes e seguros, também se preocuparam com o design do mesmo.

Um sinal da preocupação que se teve com o design de suas peças está na pequena mãozinha desenvolvida para fixação no sistema de desligamento automático e que pode ser observada através da imagem abaixo:

Sistema de desarme do interruptor com design exclusivo

Os fatores mencionados acima e todos os demais que envolvem o desenvolvimento da Useless Box Arduino mostram que temos em mãos um produto que nos possibilitará uma excelente experiência de uso, tendo a possibilidade de adquirir a caixa inútil através do site da Usinainfo, só nos basta desenvolver o esquema elétrico e o código, então vamos lá!

 

Produtos Utilizados na Useless Box Arduino

Abaixo seguem todos produtos utilizados no desenvolvimento do projeto, os quais pode ser adquiridos de forma avulsa conforma listagem. Se você quiser, pode adquirir a versão do Useless Box Arduino Completo, o qual já possui todas as peças necessárias para montagem.

Arduino Uno R3 + Cabo USB;

Case Useless Box Arduino – Caixa Inútil;

Micro Servo 9g Tower Pro MG90S 180° com Engrenagens Metálicas;

– 2 Micro Servo Motor 9g SG90 180°;

Protoboard 170 Pontos para Montagem de Projetos;

Jumper Premium para Protoboard Macho-Macho 20 cm;

Chave Alavanca MTS-102 3T 2 Posições;

Jack P4 Plástico (2,1×5,5mm) para Paineis e Chassis;

Fonte de Alimentação Chaveada 5VDC 1A;

Parafusos e Espaçadores (Arduino UNO e Servos).

Optamos pela utilização de um servo motor metálico tendo em vista a maior força que o mesmo aplica para a função de desligar o interruptor, agregando maior qualidade ao projeto e evitando que eventualmente o projeto não consiga desenvolver tal função.

 

Esquema de Ligação da Caixa Inútil Arduino

Tentaremos replicar o mesmo esquema de ligação utilizado no desenvolvimento do projeto, com a protoboard e como distribuímos as ligações entre motores, Arduino e demais elementos. Segue esquema de ligação da Useless Box / Caixa Inútil:

Esquema de ligação da Useless Box / Caixa Inútil

Assim como o esquema de ligação, disponibilizamos também o esquema elétrico do referente projeto, verifique através da imagem abaixo:

Esquema elétrico da Useless Box / Caixa Inútil

Como pudemos ver, o esquema de ligação é bastante simples, o que se torna parcialmente complicado é o posicionamento dos produtos dentro da Useless Box Arduino uma vez que o espaço para distribuição é relativamente pequeno e a quantia de fios relativamente grande.

Para a conexão da fonte de alimentação, utilizamos um Jack P4, com furações já inclusas no corpo da Caixa Inútil e que possibilita a entrada dos 5V necessários para o funcionamento dos motores, uma vez que a corrente de funcionamento dos mesmos excede os limites da placa Arduino.

 

Código de Funcionamento da Useless Box Arduino

O código de funcionamento da Caixa Inútil é parcialmente extenso, porém possui cada uma das reações da sua “personalidade” programadas passo por passo. Um total de sete funções foram programadas para expressar as ações da mãozinha que age para desligar o interruptor quando o mesmo é ligado.

Iniciamos o código utilizando a biblioteca Servo.h, porém a mesmo não possibilitava um ajuste tão preciso do movimento e acabava trepidando bastante a tampa em relação ao dispositivo que à levantava. Tendo isto em vista, a biblioteca Servo.h foi substituída pela biblioteca VarSpeedServo.h, o que possibilitou um controle de velocidade e melhorou o funcionamento da Useless Box Arduino.

Biblioteca VarSpeedServo.h: DOWNLOAD AQUI.

Segue código completo de funcionamento da Caixa Inútil:
[crayon-6631fdcdc1e8d039068254/]
Dentre os elementos utilizados no código, um dos que mais pode causar dúvidas é o que segue:
[crayon-6631fdcdc1e9a149882509/]
O seu funcionamento é bastante simples, baseado na biblioteca VarSpeedServo.h esta função determina que o servo nomeado bandeira execute um movimento até o ângulo de 45º com uma velocidade de 30 e só execute a próxima função quando tiver chegado ao seu objetivo, ou seja:
[crayon-6631fdcdc1e9e721157189/]
As principais funções do código estão todas explicadas com as respectivas observações e comentários necessários para sua compreensão, porém vale ressaltar um item bastante importante quanto ao código, o ato de copiá-lo e colá-lo não significa que irá funcionar em seu projeto sem nenhum tipo de adaptação / alteração, isto ocorre uma vez que os servos podem ser instalados de maneiras diferentes, o que iria alterar os ângulos de funcionamento do projeto.

 

Calibração dos Servos Motores da Useless Box Arduino

O principal fator de funcionamento do projeto está no trabalho executado pelos servos motores, afinal de contas, eles executam todo o trabalho que a Useless Box desenvolve. Tendo isto em vista, é necessária a calibração de posição dos mesmos de acordo com o intervalo de movimento possível para execução de todas as suas funções.

Para entendermos melhor, vamos utilizar o servo motor conectado a mão que desliga o interruptor como exemplo, veja abaixo o código utilizado para deslocamento do braço de sua posição final até sua posição inicial assim como uma imagem que ilustra este procedimento:
[crayon-6631fdcdc1e9f706975254/]

Representação dos ângulos de trabalho da Useless Box Arduino

Para realizar esta calibração, foi utilizado o código de funcionamento do servo motor disponível no Blog da Usinainfo, com ele é delimitado o ângulo de funcionamento do servo e através de um método de tentativa e erro vamos ajustando o ângulo padrão de nossos equipamentos.

Normalmente, quando trabalhamos com os servos SG90 o ângulo inicial será aproximadamente 180º ou aproximadamente 0º, porém apenas testando o servo quando já instalado na Useless Box Arduino para termos ideia destes valores.

O principal cuidado que precisamos ter é quanto ao ângulo final que deve ser o menor possível, evitando pressões excessivas com a alavanca, por exemplo, para que não ocorra danos ao servo e seja necessária possível troca posteriormente.

O artigo utilizado como base para o teste dos servos é o que segue:

Controle de Posição Servo Motor com Arduino

 

Conclusão

Inicialmente, o projeto parece ser extremamente fácil, porém o desenvolvimento geral dele mostrou-se um pouco desafiador, uma vez que existe a necessidade de calibração, vale lembrar que se os ângulos iniciais e finais forem alterados, devem-se alterar todos os demais ângulos do devido servo no código para movimentos compatíveis.

Os demais detalhes de funcionamento são extremamente condicentes com a visão inicial de surpresa e entretenimento, uma vez que para quem tem o primeiro contato com a Useless Box Arduino se surpreende com a reação da mesma.

Em um contexto geral, como o próprio nome já representa, a Caixa Inútil não possui grandes funcionalidades, porém é bastante útil para quem deseja aprimorar os seus conhecimentos e desafiar-se no mundo da programação e desenvolvimento de projetos.

Não deixe de comentar sobre o que achou e quais as experiências que teve ao desenvolver a sua Useless Box Arduino, compartilhe suas dificuldades e ajude os demais que também desejam realizar o seu projeto a encontrar o êxito.

Sair da versão mobile