Índice:

Sensor infravermelho de dados: 5 etapas
Sensor infravermelho de dados: 5 etapas

Vídeo: Sensor infravermelho de dados: 5 etapas

Vídeo: Sensor infravermelho de dados: 5 etapas
Vídeo: SENSOR INFRAVERMELHO (SIMPLES E EFICAZ) 2024, Julho
Anonim
Sensor infravermelho de dados
Sensor infravermelho de dados
Sensor infravermelho de dados
Sensor infravermelho de dados

Meu nome é Calvin e vou mostrar a você como fazer um sensor de dados infravermelho e explicar como ele funciona.

Atualmente sou um estudante da Taylor University estudando Engenharia da Computação e minha equipe e fui solicitado a projetar e construir um mecanismo que pode classificar qualquer objeto que possa caber em um quadrado de 1 polegada. Poderíamos ter escolhido o caminho mais fácil e escolhido classificar os M&M usando um sensor de cores simples, mas decidimos ir além e classificar os dados pelo número mostrado. Depois de incontáveis horas tentando encontrar um guia sobre como ler a face dos dados, encontrei este link aqui:

makezine.com/2009/09/19/dice-reader-versio…

Este link, no entanto, não me deu muito mais do que a ideia de como ler a face dos dados, então usando a ideia que foi fornecida, eu segui meu caminho para construir e desenvolver um sensor que pode ser conectado a um Arduino com facilidade e pode ler a face dos dados com a maior precisão possível, dando-nos este sensor de dados infravermelho.

Suprimentos

Agora para os suprimentos:

Você vai precisar de:

1 x Arduino Uno

5 x receptores infravermelhos

5 x emissores de IR

www.sparkfun.com/products/241

5 x 270 ohms resistores

5 x resistências de 10k ohm

1 x chip 74HC595N

vários cabeçalhos masculinos

1 x placa protótipo (se você não estiver recebendo uma placa fresada personalizada)

Etapa 1: Compreendendo como funciona

Compreendendo como funciona
Compreendendo como funciona
Compreendendo como funciona
Compreendendo como funciona

Este sensor usa 5 locais de pip para ler as faces dos dados. Ele usa luz infravermelha para refletir na face dos dados nesses locais de pip e diz ao controlador se é branco ou preto.

Você pode estar se perguntando, por que apenas 5 locais de pip então? Você não precisaria de todos os 9 para ler os dados com eficácia?

Bem, devido à simetria dos dados, usar 5 locais específicos nos dados pode ser suficiente para dizer a diferença entre os diferentes números nos dados independentemente da orientação (figura 1). Isso torna o sensor de dados mais eficiente porque ele está procurando exatamente o que precisa e nada mais.

O emissor vai exatamente abaixo do receptor no sensor em cada um desses 5 locais de pip, o sensor então emite a luz IR e então o receptor lê a quantidade de luz IR que ricocheteia na face dos dados. (imagem 3) Se o valor recebido for maior do que os números de calibração especificados, o sensor verá aquele ponto como um ponto, caso contrário, é um espaço em branco. (foto 2)

Etapa 2: Projeto e planejamento

Projetando e Planejando
Projetando e Planejando
Projetando e Planejando
Projetando e Planejando
Projetando e Planejando
Projetando e Planejando
Projetando e Planejando
Projetando e Planejando

O primeiro passo para construir um sensor de dados é criar os esquemas, este pode ser o passo mais difícil ou mais fácil do desenvolvimento. Primeiro você precisa de um software chamado EAGLE da Autodesk, este foi o software que usei para criar os esquemas.

Eu incluí 2 tipos diferentes de esquemas, um esquemático tem um chip de registro de deslocamento para ajudar a tornar o sensor mais preciso e o outro é um sem um chip de registro de deslocamento. Este esquema, no entanto, não funcionará com o código que irei fornecer mais tarde, então você terá que desenvolver algo por conta própria.

Também incluí o layout da minha placa para o sensor que projetei com o registrador de deslocamento.

Para começar a projetar a placa, você tem 5 receptores de infravermelho e 5 emissores de infravermelho, os receptores requerem um resistor de 10k e os emissores requerem um resistor de 270 ohms, portanto, para cada um desses elementos, você vai de:

VCC (5V) -> Resistor -> Pino de leitura analógica -> Receptor IR -> GND

VCC (5V) -> Resistor -> Emissor IR -> GND

O pino de leitura analógica sai entre o resistor e o receptor IR como outro ramo e vai para o pino analógico no Arduino. Você também precisa ter certeza de que o emissor vai diretamente para baixo do receptor. Eu cometi este erro na primeira vez e obtive resultados muito ruins, então certifique-se de que o receptor vai para cima.

Em minha placa personalizada, estou usando o registrador de deslocamento para fornecer energia a cada um dos pares de emissor e receptor, um de cada vez, para evitar qualquer vazamento de luz IV dos outros emissores. Isso me dá uma leitura ainda mais precisa de cada uma das localizações de pip. Se você optou por não usar o registrador de deslocamento, ele ainda funcionará para você, apenas pode ser um pouco menos preciso. No registrador de deslocamento, você pode juntar os pinos 3-4 e 7-8, uma vez que não é totalmente necessário tê-los como cabeçalhos. Eu os deixei como cabeçalhos e coloquei jumpers nos cabeçalhos caso eu quisesse fazer desenvolvimento no futuro.

Depois de projetar o esquema, você precisa fazer um layout de quadro de seu esquema. Esta parte pode ser muito complicada porque você deve garantir que seus caminhos não se sobreponham e que seus caminhos e orifícios atendam às especificações de sua máquina. O layout da placa que anexei tinha os tamanhos específicos para a máquina que usei para fresar minha placa. Passei algumas horas arrumando o tabuleiro para ficar o mais pequeno possível. Ainda havia espaço para melhorias neste quadro, mas funcionou para mim, então deixei como está. Existe uma versão com GND de cobre conectando todos os elementos de aterramento e uma versão sem conexão.

Você também pode usar seu esquema para construí-lo em uma placa de ensaio ou placa de protótipo, pois são muito mais fáceis de encontrar e são uma opção mais barata, pois você não precisa ter uma placa personalizada fresada.

Assim que tiver o design do tabuleiro, você pode seguir para a próxima etapa!

Etapa 3: Construindo o Conselho

Construindo o Conselho
Construindo o Conselho
Construindo o Conselho
Construindo o Conselho
Construindo o Conselho
Construindo o Conselho

Esta parte depende inteiramente de como você deseja que o quadro seja criado. Criei o sensor em uma placa de protótipo para testar se o conceito funciona e quão preciso é, então segui o esquema sem o registro de deslocamento e criei a placa. Você deve ter certeza de organizar tudo para que as linhas não se sobreponham e que você não solda acidentalmente linhas que não deveriam ser conectadas. Ao fazer isso em uma placa de protótipo, você deve ter muito cuidado, então leve o seu tempo e não se apresse. Você também deve ter cuidado com fios abertos, pois eles podem se mover e causar curtos no sistema.

Se você optou por fresar a placa, esse processo é mais simples. Envie o arquivo da placa para o moleiro com as configurações específicas do moleiro. Se estiver fazendo você mesmo, faça antes de retirá-lo, certifique-se de que todo o cobre está devidamente moído a uma profundidade suficiente. A primeira placa que fiz, o cobre não foi moído o suficiente e tive que moer outra.

Certifique-se de que tudo está soldado à placa no layout desejado e tome o seu tempo, e se estiver soldando na placa de circuito impresso, certifique-se de soldar no lado correto da placa.

Ao colocar os receptores e emissores de infravermelho, certifique-se de que o emissor esteja exatamente abaixo do receptor. Você terá que dobrar as pernas dos componentes de infravermelho para colocá-los no lugar certo. Tenha também um dado em mãos para verificar se os locais dos pip estão onde precisam estar.

Depois de ter tudo soldado e adicionado à placa, você está programando o sensor.

Etapa 4: Programando a placa

Programando a placa
Programando a placa
Programando a placa
Programando a placa

Esta é a parte complicada de tornar o sensor o mais preciso possível, programando a placa. Felizmente, criei uma biblioteca para você usar com seu sensor recém-criado para torná-lo muito mais fácil programá-lo. No entanto, você terá que calibrar o sensor dependendo da iluminação onde ele está localizado.

Para começar, você deve ter um Arduino para fazer a interface com este sensor. Ele usa 5 pinos analógicos e 3 pinos digitais.

Você pode usar a biblioteca que fiz para escolher seus próprios pinos analógicos e digitais, mas vou explicar isso usando os pinos que fiz para fazer a interface com o sensor. Marquei a imagem vinculada com números de pinos e caixas coloridas ao redor do conjunto de pinos para explicar facilmente qual pino se conecta a onde.

No sensor, os pinos 1-5 vermelhos vão para A0-A4, então o vermelho 1 vai para A0 e assim por diante. Os pinos 1-8 brancos requerem um pouco mais de explicação.

Branco 1 - Pino de dados, é onde o Arduino envia os dados para o registrador de deslocamento. Eu defini este pino como pino digital 3 no Arduino

Branco 2 - Q0, obsoleto neste caso, incluí no caso de decidir expandir

Branco 3 e 4 - Serão emparelhados, você pode soldar esses dois juntos ou usar um jumper como eu fiz.

5 - pino de trava branco, um pino muito importante que é a etapa final do processo para ver as sementes ligando e desligando. Eu defini este pino como pino 12 no Arduino

Branco 6 - Pino do relógio, fornece o relógio do Arduino para o registrador de deslocamento. Eu defini isso para o pino digital 13.

Branco 7 e 8 - Serão emparelhados, você pode soldar esses dois juntos ou usar um jumper como eu fiz.

Ao lado da caixa branca estão os pinos de aterramento e VCC. Você deve fornecer 5 V do Arduino ou outra fonte para alimentar este sensor.

Os números de localização PIP podem ser encontrados no código.

Agora que você tem que conectá-lo, temos que calibrá-lo. Meu objetivo era criar um script que pudesse calibrá-lo para você, mas fiquei sem tempo para fazer isso. Ao calibrar, você deve certificar-se de que o sensor está em um ambiente de iluminação controlada, sentindo sua sensibilidade à luz externa inferida. Você tem que obter um valor de cada localização de pip com um ponto preto e um ponto branco e fazer a média da diferença. Usei apenas dois lados dos dados para calibrar, usei o lado 1, o lado 6 e o lado 6 girado 90 graus. Depois de ter um número para branco e preto para cada localização de pip, você precisa fazer a média deles e encontrar o meio dos dois números. Por exemplo, se eu obtivesse 200 para o branco da primeira localização do pip e 300 para o valor escuro da primeira localização do pip, o número de calibração seria 250. Depois de fazer isso para todas as 5 localizações do pip, seu sensor está corretamente calibrado, então você pode usar dice. ReadFace (); para obter a face atual dos dados.

Etapa 5: Aplicação

Aplicativo
Aplicativo
Aplicativo
Aplicativo
Aplicativo
Aplicativo

Agora você criou com sucesso um sensor de dados! Parabéns! Esta tem sido uma longa estrada de tentativa e erro para eu criar este sensor, então é meu objetivo ajudar qualquer pessoa que queira criar um sensor de dados.

Incluí alguns exemplos do projeto que construímos que usou esse sensor. Na primeira foto, usamos uma roda de pás para colocar corretamente os dados sobre o sensor todas as vezes. A segunda imagem foi o produto final do nosso projeto, e a base irá girar dependendo da face do dado, e a terceira imagem é uma caixa de exibição que eu projetei e construí para colocar esses sensores em exibição.

A possibilidade desse sensor é infinita se você se dedicar a isso. Espero que você ache este tutorial agradável e educacional, e espero que tente fazer um para você.

Deus abençoe!

Recomendado: