Índice:

Dock de telefone controlado por Arduino com lâmpadas: 14 etapas (com imagens)
Dock de telefone controlado por Arduino com lâmpadas: 14 etapas (com imagens)

Vídeo: Dock de telefone controlado por Arduino com lâmpadas: 14 etapas (com imagens)

Vídeo: Dock de telefone controlado por Arduino com lâmpadas: 14 etapas (com imagens)
Vídeo: 35 видео со страшными призраками: мегасборник 2023 года [V1] 2024, Julho
Anonim
Image
Image
Base para telefone controlada por Arduino com lâmpadas
Base para telefone controlada por Arduino com lâmpadas
Base para telefone controlada por Arduino com lâmpadas
Base para telefone controlada por Arduino com lâmpadas

A ideia era bastante simples; criar uma base de carregamento do telefone que acenderia uma lâmpada somente quando o telefone estivesse carregando. No entanto, como costuma ser o caso, coisas que inicialmente parecem simples podem acabar se tornando um pouco mais complexas em sua execução. Esta é a história de como criei um dock de carregamento duplo de telefone que realiza minha tarefa simples.

Etapa 1: O que eu usei

O que eu usei
O que eu usei
O que eu usei
O que eu usei
O que eu usei
O que eu usei

Esta não é uma lista exaustiva de tudo o que usei, mas queria dar uma ideia geral dos principais componentes que usei. Incluí links da Amazon para a maioria desses componentes. (Observe que recebo uma pequena comissão da Amazon se você usar esses links. Obrigado!)

Arduino Uno: https://amzn.to/2c2onfeAdafruit Sensor de corrente 5V DC (x2): https://amzn.to/2citA0S2-Channel Solid State Relay: https://amzn.to/2cmKfkA 4 portas USB Box: https://amzn.to/2cmKfkA Cabo USB para montagem em painel de 1 '(x2): https://amzn.to/2cmKfkA Cabo USB AB de 6 :

Eu também usei os seguintes suprimentos que comprei na loja de ferragens: 4 "x 4" caixas de conduíte de plástico (x2) Lâmpadas Edison 40W (x2) Suporte de luz para lâmpada SocketTrackTubo de ferro preto sortido (3/8 ") Acessórios para tubos de latão sortido 3 'Extensão CordWire Porcas

Etapa 2: Experimentação, Projeto e Fiação

Experimentação, Design e Fiação
Experimentação, Design e Fiação

Para determinar quando o telefone estava carregando, o fluxo de corrente para o telefone precisaria ser monitorado constantemente. Embora eu tenha certeza de que existem projetos de circuito que podem medir a corrente e controlar um relé com base no nível de corrente, não sou um especialista em eletricidade e não queria criar um circuito personalizado. Com alguma experiência, eu sabia que um pequeno microcontrolador (Arduino) poderia ser usado para medir a corrente e, em seguida, controlar um relé para ligar e desligar as luzes. Depois de encontrar um pequeno sensor de corrente DC da Adafruit, comecei a experimentar conectá-lo a um cabo USB para medir a corrente que flui através dele enquanto carrega um telefone. Um cabo USB 2.0 típico contém 4 fios: branco, preto, verde e vermelho. Uma vez que os fios preto e vermelho conduzem energia através do cabo, qualquer um deles pode ser usado para medir o fluxo de corrente - eu usei os fios vermelhos. Um sensor de corrente típico precisa ser colocado em linha com o fluxo de corrente (a corrente precisa fluir através do sensor), e o sensor Adafruit não é uma exceção a esta regra. O fio vermelho foi cortado com as duas pontas cortadas sendo conectadas aos dois terminais de parafuso no sensor de corrente. O sensor Adafruit foi conectado a um Arduino e escrevi um código simples para relatar o fluxo de corrente através do sensor. Esse experimento simples me mostrou que um telefone em carga consumia entre 100 e 400 mA. Depois que o telefone estava completamente carregado, o fluxo de corrente cairia abaixo de 100 mA, mas não chegaria a 0.

Com meu experimento demonstrando com sucesso que eu poderia medir o fluxo de corrente com um Arduino, projetei o circuito mostrado acima. Dois cabos de extensão USB de 1 'para montagem em painel seriam conectados a uma caixa de carregamento de 4 portas. Os cabos de carregamento do telefone seriam conectados a esses cabos de extensão, tornando o sistema capaz de acomodar qualquer tipo de cabo de carregamento USB - e, com sorte, tornando-o "à prova de telefones futuros". Os fios vermelhos dos cabos de extensão seriam cortados e conectados aos sensores de corrente. Os sensores atuais fornecem informações ao Arduino, que por sua vez controla um relé de estado sólido de dois canais. O relé é usado para comutar a energia 110V para as lâmpadas. A alimentação da caixa USB e das lâmpadas podem ser conectadas, permitindo que o sistema use uma única tomada. Gosto particularmente de como a energia do Arduino pode ser fornecida por uma das portas USB extras na caixa de carregamento.

Etapa 3: a base do telefone

The Phone Dock
The Phone Dock

A base do telefone foi construída com um tubo preto de 3/8 ". Usei dois cotovelos macho-fêmea, um T, uma seção curta totalmente rosqueada e um flange redondo. Para as peças de latão na parte superior da base, cortei um tubo longo de latão de 1 1/2 "ao meio e usado uma metade para cada parte. Um pequeno orifício foi feito no T, grande o suficiente para acomodar as pontas dos cabos de iluminação. Os cabos foram trabalhados nos cotovelos e foram soldados JB nos tubos de latão. Isso acabou sendo muito mais difícil do que parecia, já que os cotovelos não eram grandes o suficiente para passar pela extremidade do cabo de iluminação. Acabei alargando a parte interna dos cotovelos até que coubessem.

Se eu tivesse que fazer este dock novamente, daria mais suporte para o telefone. Como você pode esperar, se o telefone for empurrado quando estiver no dock, as extremidades do cabo do raio poderão ser dobradas com muita facilidade. Acho estranho que a Apple realmente venda um dock com uma configuração não compatível semelhante.

Etapa 4: as lâmpadas

As lâmpadas
As lâmpadas
As lâmpadas
As lâmpadas

Eu queria que as lâmpadas tivessem uma aparência industrial semelhante à do dock. Para a primeira lâmpada, usei um soquete de lâmpada genérico colocado em cima de um flange de tubo de 3/8 . Alguns pequenos tubos de latão conectam a base ao soquete e complementam os detalhes de latão no dock. Uma lâmpada Edison de 40W é realmente a estrela desta lâmpada. Eu queria usar lâmpadas Edison, pois elas se encaixam perfeitamente com o design desta base e permitem que você crie uma bela lâmpada com lâmpada exposta.

Enquanto estava na Lowe's, encontrei um suporte de luz de trilho na liberação que achei interessante. Virei o suporte de cabeça para baixo e adicionei um flange de tubo para fazer a base. O soquete na montagem da luz do trilho não foi conectado a ele, pois foi projetado para ser mantido no lugar por uma lâmpada de face plana. Como eu estava usando uma lâmpada Edison, fiz um pequeno suporte de alumínio para segurar o soquete dentro da caixa circular do suporte da luz do trilho. Pequenos botões de latão foram adicionados para complementar o resto do sistema.

Assim que a doca e as luzes foram concluídas, elas foram pintadas de preto fosco - exceto pelas peças de latão.

Etapa 5: o gabinete Arduino

O Arduino Enclosure
O Arduino Enclosure
O Arduino Enclosure
O Arduino Enclosure
O Arduino Enclosure
O Arduino Enclosure

Usei dois gabinetes de PVC de 4 "x 4" para o invólucro do Arduino. Cortei as aberturas de ventilação em um lado e a tampa de cada gabinete. Na lateral de um gabinete, cortei dois orifícios retangulares para os cabos USB de montagem em painel. Orifícios espaçados de 1 1/8 "no centro foram perfurados em ambos os lados desses orifícios retangulares e foram usados para prender os cabos ao gabinete. Um lado de ambos os gabinetes foi cortado para que as duas caixas formassem uma única caixa quando fossem colocado lado a lado. Um bloco de madeira de 3/4 "de espessura foi usado para segurar as caixas nesta configuração lado a lado e também forma uma base conveniente para elas se sentarem.

Etapa 6: Anexe a caixa USB

Anexar caixa USB
Anexar caixa USB

O primeiro componente a ser adicionado ao gabinete é a caixa de carregamento USB de 4 portas. Simplesmente fixei isso no lugar com fita dupla-face.

Etapa 7: Monte o Arduino no gabinete

Monte o Arduino no gabinete
Monte o Arduino no gabinete
Monte o Arduino no gabinete
Monte o Arduino no gabinete
Monte o Arduino no gabinete
Monte o Arduino no gabinete

Gosto de usar espaçadores frontais de caixa elétrica para montar componentes eletrônicos, pois são feitos de plástico e podem ser adaptados para funcionar como contenções ou espaçadores. Eu simplesmente os corto com minha faca e, em seguida, enfio os parafusos neles. O Arduino foi montado em uma caixa com pequenos parafusos de cabeça chata com os espaçadores da placa frontal montados entre o Arduino e a caixa.

Assim que o Arduino foi montado, um cabo USB curto (6 ) do tipo AB foi conectado entre a porta USB do Arduino e a porta mais próxima da caixa de carga. Este foi um ajuste muito apertado para o cabo e eu realmente tive que cortar para trás os pedaços de plástico dobráveis em volta do fio na extremidade do cabo para que ele se encaixasse.

Etapa 8: Fiação e montagem do relé

Fiação e montagem do relé
Fiação e montagem do relé
Fiação e montagem do relé
Fiação e montagem do relé
Fiação e montagem do relé
Fiação e montagem do relé
Fiação e montagem do relé
Fiação e montagem do relé

Os cabos das lâmpadas passavam por orifícios no gabinete. Um fio de cada cabo foi conectado às saídas (o lado comutado de 120 V) de ambos os canais do relé de estado sólido. Seções curtas (4 ) de fio foram conectadas aos terminais de parafuso restantes adjacentes a onde esses fios da lâmpada foram conectados. Esses fios serão usados para fornecer energia ao lado de 120 V do relé.

No lado CC do relé, 4 fios foram conectados de acordo com a configuração mostrada. Dois dos fios fornecem a tensão + e - CC necessária para a operação do relé, enquanto os dois fios restantes carregam os sinais digitais, que dizem aos canais para ligar ou desligar.

Esses 4 fios foram então conectados ao Arduino da seguinte maneira: O fio vermelho (DC +) é conectado ao pino 5V. O fio preto (DC-) é conectado ao pino GND. O fio marrom (CH1) é conectado ao pino digital pino de saída 7 O fio laranja (CH2) está conectado ao pino de saída digital 8

Depois que todos os fios foram conectados ao relé, ele foi montado no gabinete usando pequenos parafusos de cabeça chata.

Etapa 9: Fiação e montagem dos sensores de corrente

Fiação e montagem dos sensores de corrente
Fiação e montagem dos sensores de corrente
Fiação e montagem dos sensores de corrente
Fiação e montagem dos sensores de corrente
Fiação e montagem dos sensores de corrente
Fiação e montagem dos sensores de corrente

Fios de comunicação e alimentação foram criados para os dois sensores de corrente emendando os dois conjuntos de fios que conduzem dos sensores ao Arduino. Como antes, os fios vermelho e preto são usados para alimentar os sensores. Esses fios são conectados aos pinos Vin (fio vermelho) e GND (fio preto) do Arduino. Surpreendentemente, até mesmo os fios de comunicação (os fios SDA e SDL) podem ser emendados. Isso ocorre porque os sensores de corrente da Adafruit podem receber um endereço exclusivo, dependendo de como seus pinos de endereço são soldados juntos. Se a placa não tiver nenhum dos pinos de endereço soldados juntos, a placa é endereçada como placa 0x40 e será referenciada como tal no código do Arduino. Soldando os pinos de endereço A0 juntos, como visto no diagrama, o endereço da placa torna-se 0x41. Se apenas os pinos do endereço A1 estivessem conectados, a placa seria 0x44, e se os pinos A0 e A1 estivessem conectados, o endereço seria 0x45. Como estamos usando apenas dois sensores de corrente, só precisei soldar os pinos de endereço na placa 1, conforme mostrado.

Depois que as placas foram endereçadas corretamente, elas foram presas ao gabinete usando pequenos parafusos de latão.

Os fios SDA (azul) e SCL (amarelo) dos sensores são conectados aos pinos SDA e SCL no Arduino. Esses pinos não foram rotulados em meu Arduino, mas são os dois últimos pinos após o pino AREF no lado digital da placa.

Etapa 10: conectar os cabos de extensão USB

Conecte os cabos de extensão USB
Conecte os cabos de extensão USB
Conecte os cabos de extensão USB
Conecte os cabos de extensão USB

Como mencionado anteriormente, os cabos de extensão USB precisam passar corrente pelos sensores de corrente. Isso foi facilitado pela emenda dos fios nos fios vermelhos dos cabos. Depois que os cabos USB são montados no gabinete, esses fios das emendas são conectados aos sensores de corrente. Para cada cabo USB, a corrente que flui por ele fluirá por esses fios, através do sensor e, em seguida, retornará para continuar através do cabo até o telefone de carregamento. As extremidades masculinas dos cabos USB foram conectadas a duas das portas abertas da caixa de carregamento USB.

Etapa 11: conecte a alimentação

Conecte a energia
Conecte a energia

A etapa final na caixa de eletrônicos é conectar o cabo de alimentação à caixa USB e às lâmpadas (também conhecido como o lado de 120 V do relé). Os fios pretos que conduzem diretamente às lâmpadas são conectados a um fio do cabo de alimentação junto com o fio marrom da caixa de carga. O cabo de alimentação para a caixa de carga foi simplesmente cortado com os dois fios de dentro (são os fios azul e marrom) sendo removidos. Finalmente, os dois fios brancos do relé são ligados porca ao outro fio do cabo de alimentação junto com o fio azul da caixa de carregamento USB.

Etapa 12: O Sistema Completo

O Sistema Completo
O Sistema Completo
O Sistema Completo
O Sistema Completo

Depois que a caixa estiver completamente montada, as tampas do gabinete podem ser substituídas. Agora que o hardware para este sistema está completo, é hora de passar para o software.

Etapa 13: o código do Arduino

O desenvolvimento do código do Arduino foi bastante simples, embora tenham sido necessários alguns testes para obtê-lo da maneira certa. Em sua forma mais simples, o código envia um sinal para alimentar o canal de retransmissão apropriado sempre que ele lê um fluxo de corrente maior ou igual a 90mA. Embora esse código simples seja um bom ponto de partida, os telefones celulares não cobram 100% e ficam lá consumindo muito pouca corrente. Em vez disso, descobri que, uma vez que o telefone fosse carregado, consumiria várias centenas de mA por um curto período de tempo a cada poucos minutos. É como se o telefone fosse um balde com vazamento que precisa ser abastecido a cada poucos minutos.

Para resolver esse problema, desenvolvi uma estratégia em que cada canal poderia estar em um dos três estados. O estado 0 é definido como quando o telefone é removido da base de carregamento. Na prática, descobri que praticamente nenhuma corrente estava fluindo quando o telefone foi removido, mas configurei o limite superior de corrente desse estado para 10mA. O estado 1 é o estado em que o telefone está totalmente carregado, mas ainda no dock. Se o fluxo atual cair abaixo de 90mA e acima de 10mA, o sistema está no estado 1. O estado 2 é o estado de carregamento, em que o telefone está consumindo 90mA ou mais.

Quando o telefone é colocado na base, o estado 2 é iniciado e continua durante o carregamento. Assim que o carregamento termina e a corrente cai abaixo de 90mA, o sistema está no estado 1. Uma declaração condicional foi feita neste ponto para que o sistema não possa prosseguir diretamente do estado 1 para o estado 2. Isso mantém o sistema no estado 1 até que o telefone esteja removido, e nesse ponto ele entra no estado 0. Como o sistema pode prosseguir do estado 0 para o estado 2, quando o telefone é colocado de volta no carregador e o fluxo de corrente aumenta acima de 90mA, o estado 2 é reiniciado. Somente quando o sistema está no estado 2, o sinal é enviado ao relé para acender a luz.

Um outro problema que encontrei é que a corrente às vezes caía brevemente abaixo de 90mA antes de o telefone estar totalmente carregado. Isso colocaria o sistema no estado 1 antes do que deveria. Para corrigir isso, calculo a média dos dados atuais em 10 segundos e somente se o valor médio da corrente cair abaixo de 90mA o sistema entrará no estado 1.

Se você estiver interessado neste código, anexei um arquivo Arduino.ino com mais algumas descrições. No geral, funciona muito bem, mas percebi que às vezes o sistema parece prosseguir para o estado 0 quando o telefone ainda está conectado e totalmente carregado. Isso significa que de vez em quando a luz acende por alguns segundos (quando passa para o estado 2) e depois se apaga. Algo em que trabalhar no futuro, eu acho.

Etapa 14: O sistema acabado

O Sistema Terminado
O Sistema Terminado
O Sistema Terminado
O Sistema Terminado
O Sistema Terminado
O Sistema Terminado
O Sistema Terminado
O Sistema Terminado

Instalei o dock de carregamento em nossa estante, com a caixa do Arduino localizada atrás de alguns livros. Se você simplesmente olhar para ele, nunca perceberá o trabalho que foi feito - e mesmo vê-lo em operação não o faz justiça. Por outro lado, fico feliz ao ver as luzes se acendendo e apagando, e até passei a confiar nelas para ver se o telefone está carregando.

Recomendado: