Ir ao conteúdo
  • Cadastre-se

Sensor de Luz com ldr e pic


Posts recomendados

E ai galera, beleza?

 

Então... estou tentando fazer um sensor de luz com um ldr e um pic (16f877a) no proteus. Usei o ldr e mais uma resistencia pra fazer um divisor de tensão, e conectei o meio do divisor (entre o resistor e o ldr) a uma entrada analogica do pic... até ai tudo bem, porém o pic vai receber um valor de tensão, e eu preciso do valor em lux pro meu projeto.

Alguem ai tem alguma ideia de como transformar esse valor de tensão em luminosidade? (lux)

 

O circuito e o codigo fonte ta aqui, pra quem quiser dar uma olhada.

Novo(a) Arquivo ZIP do WinRAR.zip

Link para o comentário
Compartilhar em outros sites

Faltou a senha, mas acho que você terá que calibrar com o auxílio de um luxímetro e de uma fonte de luz que possa iluminar com diversas intensidades.

Se houver uma expressão, ela dependerá do valor do resistor, do valor do LDR à uma determinada luminosidade e do valor da tensão que alimenta o circuito, que imagino seja 5V.

MOR_AL

Link para o comentário
Compartilhar em outros sites

Olha!

Googlei "LDR lux" e apareceu muita coisa. Principalmente nas imagens.

O valor de lux é uma função não linear, de modo que seria melhor ou criar uma tabela, ou criar uma equação.

Como tabela é aquilo que eu comentei antes. Você deve entrar com uma intensidade de luz, medir com um luxímetro o valor e o valor na saída do CAD.

Aí você monta a tabela Lux por Valor do CAD.

Como equação você pegaria estes pontos e criaria uma equação que fornecesse o valor de lux em função do valor do CAD.

Esta equação poderia ser obtida de diversas maneiras.

1 - Aproximando por uma reta. É a chamada "regressão linear". O problema é que deverá não ter precisão.

2 - Aproximando por uma equação do tipo y = f( Somatório de ki * x elevado a i). i variando de zero a N. Para N = 1 recai na reta. Quanto maior for N, maior será sua aproximação e menor será seu erro. Envolve muita matemática e necessita de muita computação com ponto flutuante.

3 - Aproximando por um grupo de retas. Cada reta abrange uma região. A vantagem deste último método é que seu cálculo se reduz às quatro operações e sua precisão depende apenas de sua vontade.

Explico melhor:

a - Obtenha muitos pontos Lux, CAD.

b - Para cada ponto, calcule outros dois. Um com x% de erro acima do original e outro com x% abaixo do original. Você obterá as regiões limites de erro (x%) aceitável. Por exemplo 5%, 1%, ...

c - Use a regressão linear para um grupo de pontos adjacentes de modo a que o trecho de reta obtido permaneça dentro da região de erro aceitável.

d - Repita o procedimento até considerar todas as regiões. Você obterá tantas semi-retas quantas regiões.

e - Ao medir uma luminosidade na saída do CAD, verifique em qual região ela se encontra e use a equação da ret5a correspondente a esta região.

Você terá medidas com precisaão desejada.

Outras grandes vantagens com este método é que:

a - Você não precisa gastar memória de programa com tabelas.

b - Você não precisa usar aritmética com ponto flutuante, bastando as quatro operações com valores inteiros com 24 ou 32 bits. Os valores deverão ser escalados para que você possa descartar a parte fracionária sem perder precisaão.

Usei este método para obter o valor da temperatura de um termopar entre 0ºC e 1360ºC com erro menor que 1%.

 

No seu caso, você ainda tem que considerar que o LDR possui uma resposta diferenciada em relação à cor da luz. Acho que você deveria pesquisar como é considerado o procedimento de obtenção da medição de intensidade luminosa.

https://www.google.com.br/search?q=LDR+lux&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:pt-BR:official&client=firefox-a&channel=sb&gfe_rd=cr&ei=9GpvU4epPNTHsAeO1oDoBg

https://www.google.com.br/search?q=LDR+lux&client=firefox-a&hs=xm9&rls=org.mozilla:pt-BR:official&channel=sb&também=isch&imgil=ZJLqn77vK80aLM%253A%253Bhttps%253A%252F%252Fencrypted-tbn2.gstatic.com%252Fimages%253Fq%253Dtbn%253AANd9GcTetsfBWn8ca27bJU5qKpvGZXXGFrOPwKSpWIQYj2bS1Kucj4QH%253B405%253B189%253BhLHAfYgT3gMT3M%253Bhttp%25253A%25252F%25252Fwiki.sugarlabs.org%25252Fgo%25252FActivities%25252FTurtle_Art%25252FUsing_Turtle_Art_Sensors&source=iu&usg=__sNxFGQ2Ij6EdepbwFEz1DUkoXgc%3D&sa=X&ei=9mpvU_vQBNPksATcnYD4BA&ved=0CD4Q9QEwAw&biw=1497&bih=1008&dpr=0.9

http://www.emant.com/316002.page

http://www.antonine-education.co.uk/Pages/Physics_1/Electricity/EL_06/electricity_page_6.htm

http://arduinodiy.wordpress.com/2013/11/03/measuring-light-with-an-arduino/

http://ljs.academicdirect.org/A21/057_069.htm

http://davidegironi.blogspot.com.br/2012/12/measure-light-lux-with-ldr-on-avr.html#.U29rK3azmpg

http://www.edaboard.com/thread278855.html

Bons projetos

MOR_AL

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@João Gabriel

 

Só para ilustrar o que o colega MOR informou de forma brilhante logo acima, a um tempo atrás cheguei a ajudar um cara com a linearização de uma tabela. Justamente com um termopar. Cada região colorida é uma reta. Fica algo do tipo:

 

xavtjym.png

 

Abre a imagem, clica em salvar e ela abre no tamanho grande, original dela.

 

Fazendo as retas pela Excel é mole. Sai rapidin....

 

Falou

Link para o comentário
Compartilhar em outros sites

Aqui tem uma apresentação que eu fiz com informações úteis.

 

http://www.4shared.com/office/POaOOMDIba/Termopar2.html

 

Aqui tem alguma informação (postagem em um fórum coirmão) sobre diversos meios de fazer a mesma coisa. Tabela, expressão matemática complexa ou aproximações lineares (semi retas)?

 

http://www.forumnow.com.br/vip/mensagens.asp?forum=41935&grupo=56847&topico=3012209&pag=1&v=1

 

MOR_AL

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...