LDR mais sensível, alguém pode indicar?

OIá amigos,
Tenho um projeto que usa um Led de alta potência e um LDR para detectar a abertura de uma válvula,
mas acontece que percebi que o LDR não serve para este projeto, pois tanto com um led comum, quanto um led de mais potência,
ele só muda o comportamento com a válvula completamente aberta, quando está parcialmente fechada ele não tem o mesmo comportamento para ambos os leds.

Eu preciso de um LDR que funcione bem com pouca luz, detectando a mínima variação de luz, estes genéricos que vem em kits trabalham bem apenas com luz ambiente e com luz direta,
alguém pode me indicar algum para o meu projeto, ou tem alguma ideia de outro sensor que pode funcionar melhor?

Edit: RESOLVIDO

A informação do amigo AlxDroidDev estava correta, o valor do divisor resistivo usado com o LDR faz toda a diferença,
usando um resistor de 10K como divisor, o sinal melhorou absurdamente!

Porém mantive a alimentação do LDR em 12V, no meu caso, com a válvula totalmente aberta obtive 4,88V de sinal na entrada do Arduino,
e consigo identificar com precisão a porcentagem de abertura da mesma com até 10% aberta! Melhor que a encomenda.

Obrigado!

Bom, manda um foto da válvula, você pretende instalar "dentro" da válvula?

Um pouco estranho queres ver o estado de uma válvula com uma LDR e um led. Muito provavelmente na pratica não vais ter fiabilidade nisso.Tambem não estou a imaginar como e que ligas a LDR nisso.Que material vai passar na válvula ?

Que fontes de luz existem no sítio onde estás a instalar a LDR?

Estás a "isolar" a LDR?

Em todo o caso, isto é sem dúvida algo que nunca será perfeito. Não consegues ligar um potenciómetro na válvula?

você pretende instalar "dentro" da válvula?

sim, pretendo ver o estado dela usando o LDR de um lado e o led do outro, medindo a "quantidade de luz"

Muito provavelmente na pratica não vais ter fiabilidade nisso

Eu só quero saber se a válvula está totalmente aberta, totalmente fechado ou 50% aberta.
O problema é que quando chega a 50%, o sinal do LDR já fica muito pequeno, devido a pouca luz que passa.

Não consegues ligar um potenciómetro na válvula?

Não dá... a ideia é isolar a válvula e verificar os três estados dela. é para mostrar o funcionamento da válvula mesmo, não é nada "funcional"

Bom, tenta por uma ventoinha de um lado e do outro uma que tenha sensor hall. conforme vc for abrindo ou fechando a válvula, o fluxo de ar vai variar.
Ai você mede a velocidade da ventoinha quando estiver toda aberta, e quando estiver na metade.
Não sei quanto pode ser que a velocidade do ar vai ser maior quando estiver pela metade, mas assumindo que você vai saber qual é essa velocidade, você assume que a válvula está na metade.

Só por curiosidade, como ligaste a LDR ao Arduino?

O que eu suspeito possa estar a ser o teu problema é o facto da LDR ter uma resposta logaritmica (ou seja, linear numa escala logaritmica) e teres condicionado o sinal numa zona não ideal.
Tens aí o esquema e valores de resistência (ou do AD do Arduino) para a gente dar uma vista de olhos?

Algo que pensei foi num amplificador logaritmico ou exponencial para compensar a curva da LDR e obter algo que seja um pouco mais linear. Em todo o caso, um amplificador normal pode ajudar a ganhar precisão na zona que pretendes e resolver este problema.

Já agora como estás a colocar a LDR e o LED no tubo ou válvula? Tens um esquema ou fotos?

Outro problema que certamente estás a ver é a dispersão da luz. Não creio que o LED seja muito bom a dispersar luz e como tal, quando a válvula chega a meio (se o LED estiver também no meio) a Luz que passa será muito menor do que se tivesses uma lâmpada incandescente por exemplo. Outro problema é que a LDR é algo com... assim de memória 5mm de diâmetro. Isso pode corresponder a menos de 1mm de movimento na válvula.

Se, por exemplo, usasses um array de LDRs, ou seja, uma linha de LDRs em série ou três, ficarias com uma ideia bem melhor das diferentes posições da válvula. Quando saísse dos 100% uma LDR "apagava", na vizinhança dos 50% a outra ia começar a "apagar" e com toda a válvula fechada não terias sinal algum. Estás a ver a ideia?

Só por curiosidade, como ligaste a LDR ao Arduino?

Liguei divisor resistivo simples, 12v ao LDR e 1K para o GND, sendo que a resposta "alta" (valvula aberta) muda de acordo com o led utilizado, chegando até 500 em ADC, e a resposta "media" (50%) independente da fonte de luz me retorna um valor muito próximo de zero/ ou zero.

Pensei nas possibilidades que você citou bubu, a ideia do sensor hall é boa também mmoscz, perguntei aqui sobre um LDR, ou outro sensor do tipo de maior sensibilidade pois seria o mais fácil de testar aqui no momento.
de início vou tentar usar um aplificador linear mesmo, já que a parte "alta" da curva do LDR não me interessa.

Aliás, seria bom se eu conseguisse alguma precisão entre 0 e 50%, e o que eu tenho é justamente o contrário, tenho precisão entre 50 e 100% aberta.

Antes de mais... 12V????

Não serão 5V?

Qual é a resistência do LDR com luz e sem luz?

hahaha, pode ficar tranquilo amigo, sou técnico em eletrônica há uns 4 anos, não que seja grandes coisas, mas sempre me lembro de tomar estes cuidados.
Como disse, a leitura adc no Arduino chega no máximo há 500 e poucos (ou seja, 2,5V aprox.) e há um diodo zener em paralelo a entrada.

Qual é a resistência do LDR com luz e sem luz?

Eis a questão, busquei ajuda aqui porque encontrei pouquíssima informação do LDR usado. Tudo que sei é que ele chega a aprox. 5k com luz forte diretamente sobre ele, e é desses genéricos que vem em kits de eletrônica.

É pessoal, não cabe nem mais de um LDR, nem um led maior "dentro" da válvula, o jeito vai ser tentar amplificar o sinal então e torcer...

obrigado pelas ideias.

2 coisas estranhas no seu esquema:

  1. Porque usar 12V para ligar o seu LDR ? Eu o uso com os 5V do Arduino, em um esquema de divisor de tensão, e tenho variação de 0 a 5V perfeitamente.

Ao meu ver não faz sentido algum usar 12V e ainda gaster um diodo de zener com isto.

No divisor de tensão faz muita diferença se o resistor está antes ou depois do LDR. A posição depende se você quer que a resistência do LDR aumente com o aumento da luz ou o contrário.

  1. 2.5V no máximo? Você calculou direito o resistor a ser usado no divisor de tensão do LDR? Provavelmente seu divisor está muito menor ou muito maior do que deveria (dependendo de sua posição).

Na sua válvula, você tem certeza que entrar luz o suficiente para "abrir" o LDR ao máximo?

Tudo bem que você é técnico em eletrônica há 4 anos (eu sou engenheiro mecânico com ênfase em mecatrônica há 16 anos), mas ainda assim estou vendo umas bizarrices em seu esquema.

Este esquema: é infalível, e funciona muito bem para qualquer LDR, desde que você calcule R corretamente. Não assuma simplesmente que deva ser 10K, pois para alguns LDR que tenho usado, precisei fazer com que R fosse 51K. Quanto maior o R, maior será a amplitude em que o LDR trabalhará, mas DEVE ser calculado.

Aqui ensina como se calcular: Using a Photocell | Photocells | Adafruit Learning System

Porque usar 12V para ligar o seu LDR

O projeto completo tem fontes de 24, 12, 5, 3v3, foi definido que a parte de "periféricos" teriam 12v.

Ao meu ver não faz sentido algum usar 12V e ainda gaster um diodo de zener com isto

Todas as entradas e saídas do Arduino tem proteção, mesmo as de 5v.

2.5V no máximo? Você calculou direito o resistor a ser usado no divisor de tensão do LDR?

O divisor padrão das entradas analógicas é 1K + 1K. Neste caso apenas 1K.

Tudo bem que você é técnico em eletrônica há 4 anos (eu sou engenheiro mecânico com ênfase em mecatrônica há 16 anos), mas ainda assim estou vendo umas bizarrices em seu esquema

Não quis parecer arrogante, apenas enfatizar que sei o que estou fazendo em relação a tensão, corrente, este tipo de cuidados.

Na sua válvula, você tem certeza que entrar luz o suficiente para "abrir" o LDR ao máximo?

Eis a questão, é justamente com pouca luz que eu queria trabalhar, por isso o título do tópico

Este esquema: é infalível, e funciona muito bem para qualquer LDR...Quanto maior o R, maior será a amplitude em que o LDR trabalhará

É exatamente esse o esquema, mas não havia pensado desta forma, meu LDR varia aproximadamente de 300K a 6K com escuridão total e luz direta respectivamente,
vou tentar antes de tudo aumentar o valor do meu R.

Obrigado pela ajuda!

Foste tu que criaste essa protecção?

bubulindo:

[quote author=Osias Neto link=topic=154962.msg1168152#msg1168152 date=1363981048]
Todas as entradas e saídas do Arduino tem proteção, mesmo as de 5v.

Foste tu que criaste essa protecção?
[/quote]

Bem observado, bubulindo!

A não ser que ele esteja usand um Ruggeduino, nenhum Arduino possui qualquer proteção para suas portas.

Se assim não fosse, não veríamos tantos relatos de pessoas aqui no Fórum com Arduinos queimandos, seja completamente, seja com portas isoladas que pararam de funcionar (é possível sim - e acontece - queimar apenas uma porta de um Arduíno). Isto nada tem a ver com o fato de ser um clone ou um original "Made in Italy".

O fato é: se seu projeto for mal feito e exceder os limites do Arduino sem qualquer proteção, o Arduino vai queimar. Simples assim.

Foste tu que criaste essa protecção?

Não fui em que criou, mas é periférico. O Arduino foi "adaptado" para trabalhar com tensão padrão automotiva, foi adicionado a todas as saídas pptc 50mA, e zener 5v1, e as entradas possuem um divisor 1k em paralelo com um zener 5v1. Acabei adotando, sempre faço isso nos meus projetos, em alguns casos como esse acaba "atrapalhando" o funcionamento, mas antes perder tempo por não funcionar a princípio do que danificar o Arduino né.

ps.: quando me refiro a Arduino, quero dizer o controlador que estou usando baseado em Arduino, não o projeto Arduino em si, seja made in Italy ou in China.

Não leves a mal... mas sem saber, é melhor perguntar.

Não será esse circuito todo que está a confundir a resposta da LDR?

Não será esse circuito todo que está a confundir a resposta da LDR?

Sim, um pouco, a amplitude de sinal que eu tenho com ele ligado da forma que disse é de cerca 10mV (entre quase válvula quase fechada e fechada).
Mas é um comportamento esperado, até porque em condições ideais isso seria cerca de apenas 2 ou 3 unidades adc correto.

Bom pessoal obrigado pela atenção e respostas de todos, já tenho várias hipóteses para melhorar este sinal, assim que efetuar a correção do circuito posto o resultado :slight_smile:

Eu referia-me ao divisor resistivo de protecção com o Zener...

Em todo o caso, um amplificador operacional permite-te amplificar essa gama se necessitares.