Índice:

Testador de dispositivo automático com Arduino: 9 etapas
Testador de dispositivo automático com Arduino: 9 etapas

Vídeo: Testador de dispositivo automático com Arduino: 9 etapas

Vídeo: Testador de dispositivo automático com Arduino: 9 etapas
Vídeo: Spoiler para formação do dia 22/09/2022 - Irrigação com Arduino - DE - Botucatu. 2024, Novembro
Anonim
Testador de dispositivo automático com Arduino
Testador de dispositivo automático com Arduino
Testador de dispositivo automático com Arduino
Testador de dispositivo automático com Arduino

Pode não parecer muito, mas é provavelmente a coisa mais útil que já fiz com um Arduino. É um testador automático para um produto que vendo, chamado Power Blough-R. Isso não apenas me economiza tempo (atualmente me economizou pelo menos 4 horas, e continua crescendo), mas também me dá uma confiança muito mais forte de que o produto está 100% funcional antes de ser despachado.

O Power Blough-R, pronunciado "Power Blocker" (é uma brincadeira com o meu nome que é surpreendentemente pronunciado "lock"!), É para resolver o problema de alimentação de retorno que você pode experimentar frequentemente ao usar octoprint com uma impressora 3D.

Para usar o testador, basta colocar um Power Blough-R nos conectores USB e pressionar o botão reset no Arduino Nano. O testador executará um conjunto de testes e indicará se o dispositivo passou ou falhou nos testes usando o LED integrado do Nano (sólido para aprovado, piscando para falha).

Quando você tem muito o que fazer, encontrar maneiras de reduzir o tempo por unidade pode ter um impacto enorme. Usar este testador reduziu o tempo que levei para testar uma unidade de aproximadamente 30 segundos para 5 segundos. Embora 25 segundos não pareça muito, quando você tem centenas dessas coisas para fazer, isso soma!

Acho que a coisa mais impressionante que posso dizer sobre isso é que, com esta ferramenta, levo mais tempo para testar o Power Blough-R duas vezes do que apenas para abrir a embalagem antiestática que vem comigo!

Você provavelmente não precisará construir este dispositivo exato, mas espero que algumas das coisas que estou fazendo possam ser úteis para você.

Etapa 1: Confira o vídeo

Image
Image

A maior parte do que eu cubro neste artigo está disponível neste vídeo, então dê uma olhada se vídeos são a sua praia!

Etapa 2: O Power Blough-R

The Power Blough-R
The Power Blough-R

Então, o que é o Power Blough-R e o que ele faz?

Se você já usou Octoprint com sua impressora 3D, geralmente há um problema em que a tela da impressora é mantida ligada pela alimentação USB do raspberry pi, mesmo quando a impressora está desligada. Embora este não seja o fim do mundo, pode se tornar muito chato, especialmente em um quarto escuro.

O Power Blough-R é um PCB simples com um conector USB macho e um fêmea nele, mas não conecta a linha 5V.

Existem outros métodos para resolver este problema, algumas pessoas cortam a linha de 5 V do cabo USB ou colocam fita adesiva no conector de 5 V, mas eu queria encontrar uma forma simples e robusta de obter o mesmo resultado, sem prejudicar ninguém Cabos USB!

Se você estiver interessado no Power BLough-R, eles estão disponíveis para compra:

  • Na minha loja Tindie (kit ou montado)
  • TH3dstudio.com (montado)

(Assim como, a propósito, este post não é patrocinado e não tenho envolvimento com o TH3D além do fornecimento dos Power Blough-Rs. Não recebi nada extra por incluir links para o TH3D ou foi um artigo / vídeo já discutido como parte da oferta original)

Etapa 3: Histórico: o grande pedido

Antecedentes: a Grande Ordem
Antecedentes: a Grande Ordem
Antecedentes: a Grande Ordem
Antecedentes: a Grande Ordem

Vendi os Power Blough-Rs na minha loja Tindie, principalmente como kits. Mas para os que vendi montados, testaria com o multímetro. Em iria testar uma boa conexão entre a entrada e a saída do Ground, D- e D + e que 5V não estava conectado e testando as pontes.

Isso levaria cerca de 30 segundos ou mais e estava muito sujeito a cometer erros se eu não fosse muito cuidadoso. Mas, pela quantidade de unidades montadas que eu estava vendendo, não era um grande comprometimento de tempo.

Mas eu postei uma foto do Power Blough-R no sub reddit de impressão 3D, e Tim do TH3DStudio.com me contatou perguntando sobre a encomenda de alguns para estocar em sua loja como um teste. Eu disse que sim e perguntei quantos ele estava procurando. Eu esperava que ele dissesse 10 ou 20, mas ele disse vamos começar com 100….

Seria quase impossível para mim testar com segurança 100 dispositivos com o multímetro, então eu sabia que tinha que fazer algo a respeito!

Etapa 4: Hardware

Hardware
Hardware

Eu escolhi a maneira mais simples de montar isso, já que estava com um pouco de falta de tempo! Foi também uma construção muito barata (menos de ~ $ 5 para tudo).

  • Arduino Nano (este tem um micro USB, mas qualquer um serve) *
  • Nano Screw Terminal Breakout *
  • Macho USB Breakout *
  • Breakout USB feminino *
  • Algum fio

Não há realmente muito na montagem disso. Solde os pinos do cabeçalho no nano, se ainda não estiverem, e encaixe na abertura do terminal de parafuso.

5 fios devem ser soldados nas saídas USB macho e fêmea. Nota para o fio blindado, o breakout fêmea não tinha uma almofada para isso, então eu o soldei na lateral do conector. Esses fios podem ser desencapados na outra extremidade e aparafusados nos terminais de parafuso (certifique-se de deixar alguma folga para que seja mais fácil conectar e desconectar os dispositivos)

Para o conector macho, usei os seguintes pinos

  • GND> 2
  • D +> 3
  • D-> 4
  • VCC> 5
  • Escudo> 10

Para o conector fêmea que usei:

  • GND> 6
  • D +> 7
  • D-> 8
  • VCC> 9
  • Escudo> 11

* link de afiliado

Etapa 5: Software

Programas
Programas

Primeiro você precisará baixar o IDE do Arduino e configurá-lo, caso ainda não o tenha.

Você pode pegar o esboço que usei no meu Github e fazer o upload para o quadro. Depois de fazer isso, você está pronto para ir!

Na inicialização, o esboço passa por um conjunto de testes. Se todos os testes forem aprovados, o LED embutido será ativado. Se houver alguma falha, o LED embutido piscará. O dispositivo também enviará o motivo da falha para o monitor serial, mas, na verdade, não uso esse recurso.

O esboço é executado através dos seguintes testes

Teste inicial:

Isso é para verificar se os pinos fêmeas estão lendo conforme o esperado, enquanto ignora os pinos machos. Consulte a etapa em lógica tri-state para obter mais informações sobre este.

Teste principal:

Este teste verifica se GND, D +, D- e Shield estão conectados enquanto a linha de 5 V está bloqueada. Isso é para verificar a funcionalidade principal do Power Blough-R, onde ele passa por tudo que não seja a linha 5V.

Teste de ponte:

Isso verifica se nenhum dos pinos está em ponte. Portanto, ele passa por cada pino, definindo sua saída e, em seguida, verifica se todos os outros pinos não são afetados por isso.

Nas próximas etapas, examinarei alguns dos recursos / conceitos usados nos testes.

Etapa 6: INPUT_PULLUP

Este é realmente útil, pois pode economizar um resistor adicional (por pino) em seu projeto. É especialmente útil quando você usa botões.

Quando um pino é definido como INPUT_PULLUP, ele basicamente conecta o pino ao VCC com um resistor de 10k. Sem um resistor pull-up (ou pull-down), o estado padrão do pino é considerado flutuante e você obterá valores inconsistentes ao ler o pino. Como é um valor bastante alto para um resistor, o estado do pino é facilmente alterado aplicando-se um nível lógico diferente ao pino (por exemplo, quando o botão é pressionado, ele conecta o pino ao terra e o pino irá ler BAIXO.

Eu defino o modo de pino dos pinos FÊMEAS como INPUT_PULLUP, então tenho um ponto de referência para o que o pino deve ser (ALTO), desde que não haja forças externas sobre ele. Ao longo dos testes, os pinos MASCULINOS foram definidos como BAIXOS e quando esses dois deveriam ser conectados, esperaríamos que o pino MULHERES estivesse BAIXO.

Etapa 7: lógica tri-state

Image
Image

Para o teste inicial, eu queria verificar o nível lógico dos pinos FÊMEAS enquanto basicamente ignorava os pinos MASCULINOS.

Isso pode parecer um problema porque os pinos MASCULINOS teriam que ter algum nível lógico que impactasse certo?

Bem, na verdade, os pinos da maioria dos microcontroladores têm o que é conhecido como lógica de três estados, o que significa que têm 3 estados em que podem estar: ALTA, BAIXA e ALTA IMPEDÊNCIA

ALTA IMPEDÊNCIA é obtida definindo o pino como uma ENTRADA. É o equivalente a colocar um resistor de 100 Mega OHM na frente do pino, o que o desconectará efetivamente do nosso circuito.

A lógica de três estados é um dos principais recursos do Charlie-plexing, que é uma espécie de forma mágica de endereçar LEDs individuais usando um número menor de pinos. Confira o vídeo acima se você estiver interessado em aprender mais sobre Charlie-plexing.

Etapa 8: Testando o Testador

Conclusão
Conclusão

Na verdade, essa é uma etapa muito importante, porque se você não testar se o testador detecta cenários negativos, pode ter certeza de que, quando o teste for aprovado, o dispositivo está funcionando conforme o esperado.

Se você está familiarizado com testes de unidade no desenvolvimento de software, isso é o equivalente a criar cenários de testes negativos.

Para testar isso, criei algumas placas com erros:

  • Soldou os conectores USB no lado errado da placa. Os conectores USB caberão bem, mas a linha de aterramento não será conectada e a linha de 5V estará. (infelizmente este não foi criado propositalmente, o que prova a necessidade do testador!)
  • Uniu propositadamente dois pinos para testar o código de teste da ponte.

Etapa 9: Conclusão

Como mencionei no início deste artigo, esta é provavelmente a coisa mais útil que construí com um Arudino.

Uma vez que o pedido original Tim encomendou mais 200 Power BLough-Rs e embora a economia de tempo seja muito apreciada, a confiança que isso dá de que o produto está em perfeitas condições de funcionamento é o que mais gosto dele.

Na verdade, para a ordem de 200, minha esposa basicamente fez todos os testes deles. Ela realmente gostou da rapidez de uso e da simplicidade do indicador de aprovação / reprovação.

Esperamos que haja algo útil para aprender neste guia. Se você tiver alguma dúvida, fique à vontade para perguntar abaixo!

Tudo de bom, Brian

  • Youtube
  • Tindie

Recomendado: