Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Sensor de luz Raspberry Pi:um tutorial LDR simples


Neste tutorial do sensor de luz Raspberry Pi, mostro como conectar corretamente o sensor de foto resistor aos pinos GPIO. Por último, mostro como ele pode ser usado em um script Python simples para que você possa coletar e usar os dados dele.



Este é mais um sensor que irei incorporar em projetos futuros, como um despertador ativado por luz.

Explico um pouco mais abaixo cada uma das partes que irei usar neste circuito. Certifique-se de ler sobre ele se precisar de mais informações sobre eles. É importante observar que neste tutorial estou usando apenas um sensor de fotocélula simples, embora sejam perfeitos para algumas tarefas, podem não ser tão precisos quanto você gostaria.

Se você quiser ver visualmente o passo a passo de como configurar o circuito e código do sensor de luz, certifique-se de verificar o vídeo logo abaixo da lista de equipamentos.

Equipamento:


Você precisará do equipamento a seguir para concluir este tutorial do sensor de luz Raspberry Pi. Você pode fazer isso sem nenhum equipamento de placa de ensaio, mas eu recomendo investir em alguns se você planeja fazer muitos trabalhos de circuito.

Recomendado:


Raspberry Pi

Cartão SD de 8 GB ou cartão Micro SD se você estiver usando um Raspberry Pi 2 ou B +

Cabo Ethernet ou dongle Wifi

Sensor de luz (sensor LDR)

1 capacitor 1uF

Opcional:


Capa Raspberry Pi

Teclado USB

Mouse USB

GPIO Breakout Kit

Tábua de pão

Fio de tábua de pão

Vídeo


O vídeo contém quase tudo que a versão em texto deste tutorial faz. É perfeito se você prefere ver as coisas feitas visualmente. Você também verá como o circuito deve funcionar quando terminar.

Você pode encontrar instruções de texto e informações logo abaixo do vídeo.

O circuito sensor de luz Raspberry Pi


O circuito que vamos fazer para este tutorial é super simples e é ótimo para quem está começando com circuitos.

O resistor dependente de luz ou também conhecido como sensor LDR é a peça mais importante do equipamento em nosso circuito (obviamente). Sem ele, não seríamos capazes de detectar se está escuro ou claro. À luz, esse sensor terá uma resistência de apenas algumas centenas de ohms, enquanto no escuro pode ter uma resistência de vários megaohms.

O capacitor em nosso circuito está lá para que possamos medir a resistência do sensor LDR. Um capacitor atua essencialmente como uma bateria que carrega enquanto recebe energia e, em seguida, descarrega quando não está mais recebendo energia. Usando isso em série com o LDR, podemos calcular quanta resistência o LDR está emitindo, seja claro ou escuro.

Para obter o circuito do sensor de luz construído corretamente, siga as etapas abaixo ou verifique o diagrama do circuito logo abaixo das etapas. Nas etapas a seguir, estou me referindo aos números físicos dos pinos (ordem lógica).
  1. Primeiro conecte o pino 1 (3v3) ao trilho positivo na placa de ensaio.
  2. Em seguida, conecte o pino 6 (aterramento) ao trilho de aterramento na placa de ensaio.
  3. Agora coloque o sensor LDR na placa e faça com que um fio vá de uma extremidade ao trilho positivo.
  4. No outro lado do sensor LDR, coloque um fio que leva de volta ao Raspberry Pi. Conecte-o ao pino nº 7.
  5. Por fim, coloque o capacitor do fio ao trilho negativo na placa de ensaio. Certifique-se de ter o pino negativo do capacitor no trilho negativo.

Agora estamos prontos para avançar para o código Python. Se você tiver algum problema com o circuito, consulte o diagrama abaixo.

O Código


O código para este projeto é bastante simples e nos dirá aproximadamente se é claro, sombreado ou completamente escuro.

O maior problema que enfrentamos com este circuito é o fato de que o Pi não tem pinos analógicos. Eles são todos digitais, então não podemos medir com precisão a variação na resistência em nossa entrada. Esta falta de pinos analógicos não foi um problema no tutorial do sensor de movimento, uma vez que a saída dele era alta ou baixa (digital). Em vez disso, mediremos o tempo que leva para o capacitor carregar e enviar o pino para cima. Este método é uma maneira fácil, mas imprecisa de saber se está claro ou escuro.

Explicarei brevemente o código do sensor de luz Raspberry Pi e o que ele faz. Se você quiser o código, poderá copiá-lo e colá-lo abaixo ou baixá-lo do meu GitHub.

Para começar, importamos o pacote GPIO de que precisaremos para nos comunicarmos com os pinos GPIO. Também importamos o pacote de tempo, então podemos colocar o script para hibernar quando precisarmos.
  #! / usr / local / bin / pythonimport RPi.GPIO como GPIOimport time  

Em seguida, definimos o modo GPIO como GPIO.BOARD, isso significa que toda a numeração que usamos neste script se refere à numeração física dos pinos. Uma vez que temos apenas um pino de entrada / saída, precisamos definir apenas uma variável. Defina esta variável para o número do pino que você tem atuando como pino de entrada / saída.
  GPIO.setmode (GPIO.BOARD) #define o pino que vai para o circuitpin_to_circuit =7  

A seguir, temos uma função chamada rc_time isso requer um parâmetro que é o número do pino do circuito. Nesta função, inicializamos uma variável chamada contagem, retornaremos esse valor assim que o pino ficar alto.

Em seguida, configuramos nosso pino para atuar como uma saída e, em seguida, configuramos para baixo, então temos o script hibernando por 10 ms.

Depois disso, definimos o pino para se tornar a entrada e, em seguida, entramos em um loop while. Ficamos neste loop até que o pino vá para alto, é quando o capacitor carrega cerca de 3/4. Assim que aumentar, retornamos o valor de contagem para a função principal. Você pode usar este valor para ligar e desligar um LED, ativar outra coisa ou registrar os dados e manter estatísticas sobre qualquer variação na luz.
  def rc_time (pin_to_circuit):count =0 #Output no pino para GPIO.setup (pin_to_circuit, GPIO.OUT) GPIO.output (pin_to_circuit, GPIO.LOW) time.sleep (0.1) #Mude o pino de volta para entrada GPIO.setup (pin_to_circuit, GPIO.IN) #Contar até que o pino fique alto enquanto (GPIO.input (pin_to_circuit) ==GPIO.LOW):contagem + =1 retorno contagem # Captura quando o script é interrompido, limpeza tente corretamente:# Loop principal enquanto True:print rc_time (pin_to_circuit) exceto KeyboardInterrupt:passfinally:GPIO.cleanup ()  

Implantando e executando o código no seu Raspberry Pi


Essa etapa é incrivelmente fácil, mas irei rapidamente percorrer as etapas para que você possa colocá-lo em execução no seu Pi o mais rápido e sem problemas possível. Como todos os tutoriais neste site, estou usando o Raspbian se você precisar de ajuda para instalar o Raspbian, verifique meu guia para instalar o Raspbian.

Embora todos os pacotes de software já devam estar instalados em alguns casos, pode não estar. Se você quiser saber mais sobre os pinos GPIO e como atualizar e instalar o software, certifique-se de verificar meu tutorial sobre como configurar os pinos GPIO no Raspberry Pi.

Você pode baixar o código usando git clone. O seguinte comando fará exatamente isso:
  clone git https://github.com/pimylifeup/Light_Sensor/cd ./Light_Sensor  

Como alternativa, você pode copiar e colar o código, apenas certifique-se de que o arquivo é um script Python.
  sudo nano light_sensor.py  

Assim que terminar o arquivo, basta usar ctrl x então y para salvar e sair.

Por fim, execute o código usando o seguinte comando:
  sudo python light_sensor.py  

Espero que agora você tenha o script funcionando e esteja recebendo dados que refletem corretamente as mudanças na luz do sensor. Se você estiver tendo problemas, por favor, não hesite em deixar um comentário abaixo.


Melhoria da precisão e possíveis usos


Existem inúmeras utilizações para um sensor de luz em um circuito. Vou citar apenas alguns em que pensei enquanto escrevia este tutorial.

Há tanta coisa que você pode fazer com este pequeno sensor legal, mas lembre-se também se você precisa de algo um pouco mais preciso do que a fotocélula, então olhe para algo como o sensor de luz digital de alta faixa dinâmica Adafruit.

Espero que você tenha conseguido configurar este sensor de luz Raspberry Pi sem problemas. Se você encontrar um problema, tiver feedback, perdi algo ou qualquer coisa que você gostaria de dizer, sinta-se à vontade para deixar um comentário abaixo.

Fonte:Sensor de luz Raspberry Pi:um tutorial de LDR simples

Processo de manufatura

  1. Registrador de temperatura Raspberry Pi
  2. Sensor de temperatura Python e Raspberry Pi
  3. Estação meteorológica Raspberry Pi
  4. Sensor de temperatura de 1 fio DS1820 em Raspberry Pi (GPIO diretamente)
  5. Sensor ultrassônico (HC-SR04) + Raspberry Pi
  6. Sensor de movimento, alarme, gravação de vídeo em HA no Raspberry Pi
  7. Sensor de movimento usando Raspberry Pi
  8. Sensor de umidade do solo Raspberry Pi
  9. Sensor digital Hall Raspberry Pi em JAVA
  10. Temperatura do Raspberry Pi e sensor de luz