LusoRobótica - Robótica em Português

Robótica => Tutoriais => Tópico iniciado por: tr3s em 08 de Fevereiro de 2009, 03:58

Título: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 08 de Fevereiro de 2009, 03:58
   Olá a todos!

   Bem com certeza que já todos conhecem os famosos sensores de proximidade por infravermelhos da SHARP que custam entre os 20 e os 30 euros em Portugal:

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fwww.g-robot.com%2Fimages%2FSharp%2520IR%2520Distance%2520Mesuring%2520Sensor-big.jpg&hash=d79af0ef4151eceea8361517cc49a485ef50051b)

   Bom, eu fiz o meu por 0€, é verdade zero euros, e vou ensinar-vos como!

   Primeiro recolher o material necessário:
      - Sensor IR
      - LED IR
      - Transistor NPN (usei o BC547)
      - Caneta velha

   Como gosto de reciclar, fui até à garagem do meu tio e perguntei-lhe se tinha para lá algum video ou TV velha... Yap tinha e meteu-me logo 2 vídeos velhos à frente.  Encontrei logo 2 receptores de infravermelhos e alguns transístores. Os receptores são assim:

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fi240.photobucket.com%2Falbums%2Fff159%2Fsuper-mascarada%2FIR.jpg&hash=caac4c851c16187045770d4c77a077de1404de53)

   Estes vão ser os que vocês vão encontrar certamente, mas eles funcionam de maneira diferente. O Maior coloca "0 / LOW" em "out" enquanto não detecta infravermelhos mas assim que os detecta coloca "1 / HIGH". O mais Pequeno funciona ao contrário. Decidi usar o mais pequeno pois é o que se adaptava melhor
ao que queria fazer.
   Perguntei ainda ao meu tio se tinha por ali comandos estragados ou que já não precisasse para poder tirar um LED, ele deu-me logo uns quantos e então foi so tirar os LED IR! OH YEAH!
   (Eu fui à garagem do meu tio, mas vocês podem ir à loja do Electricista local ou o senhor que arranja electrodomésticos da vossa zona, certamente que ele vos deixa fazer o mesmo! Isto se vocês não tiverem assim material velho.)

   Quando cheguei a casa fui à procura de uma caneta velha, uma que já não escrevesse. Encontrei uma com o tubo preto e bastante opaco, "Era mesmo isto que procurava!". Cortei o tubo da caneta em duas partes com 5cm cada uma:

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fi240.photobucket.com%2Falbums%2Fff159%2Fsuper-mascarada%2FSNC00105.jpg&hash=69fb9470b13e4a621894b83d8d1976f4bd99b728)

   Com a pistola de cola quente já "quente", colei o Sensor IR a um lado dos tubos:

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fi240.photobucket.com%2Falbums%2Fff159%2Fsuper-mascarada%2FSNC00106.jpg&hash=5734b639113d2b52840c6c8c5811c721a3c9c04c)

   Fiz o mesmo com o outro tubo para o LED e de seguida colei os tubos um ao lado do outro:

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fi240.photobucket.com%2Falbums%2Fff159%2Fsuper-mascarada%2FSNC00107.jpg&hash=b474951abf113ca5408949b337b87a24368caac6)

   Okay, a "pistola" está pronta! Com os tubos de 5cm consegui detectar objectos a 30cm de distância até 10cm de distância (10cm é o mais perto que quero estar dos obstáculos). Para aumentar a sensibilidade e por sua vez detectar objectos ainda mais perto, basta cortar os tubos! Podem cortá-los até a "face" do LED e do Sensor e assim conseguem detectar objectos mesmo em cima destes!

   Vamos agora às ligações. As ligações são bastante simples, o sensor tem 3 pinos, 2 para alimentação e o outro e um pin que ou tem o valor lógico 1 ou 0.
   O sensor tem uma maneira engraçada de funcionar. O que estes sensores fazem é detectar variações de luz, por exemplo, quando carregamos num botão do comando  LED dele pisca com uma determinada frequência (+- 33KHz) e o que o sensor da TV ou video detecta é esta variação. Estes sensores não detectam apenas, única e exclusivamente, luz infravermelha, eles "apanham" tudo (são um pouco mais sensiveis ao IR claro)! Se nós acendermos um LED IR em frente a este sensor veremos ele detectar qualquer coisa por um breve momento  e a estabilizar logo de seguida, isto porque ele internamente "satura" a esse comprimento de onda. É por isso que quando estamos em casa, de luzes ligadas, conseguimos mudar de canal com o nosso comando. O sensor da TV está a "saturar" a toda a luz envolvente e por isso a desprezá-la, como não está a saturar ao IV ao carregarmos num botão do comando o sensor vai "senti-lo" e como o LED do comando apenas pisca, o sensor não chega a "saturar" o IV e então não o despreza.

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fi240.photobucket.com%2Falbums%2Fff159%2Fsuper-mascarada%2Fligacoes-1.jpg&hash=1cf7797e4d44cafff6067a0aa8ff2f5c78cc7ecc)

   Para ligar o LED há um pequeno senão, como o valor no pino varia tão rápido, se ligarmos la o LED, este parece que nem acende e sim desta forma nem precisamos de uma resitência. É aqui que entra o transístor, com ele conseguimos ter o LED a brilhar a todo o seu explendor (ehe) à frequência desejada!
Fica tudo mais ou menos assim:

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fi240.photobucket.com%2Falbums%2Fff159%2Fsuper-mascarada%2Fliga.jpg&hash=6f8b3e10492334cd25c2704d8dc25ffce3a4424d)


   É isto que temos de fazer então, meter o LED IV a piscar (a qualquer valor na frequência dos KHz) e ver se o sensor detecta qualquer coisa!
   Para meter o LED a piscar decidi criar uma interrupção com um timer, de modo a que de cada vez que esta ocorresse acendia ou apagava o LED. Na função loop fico à espera que o sensor detecte alguma coisa. Simples não é?

   Um pequeno exemplo:
Código: [Seleccione]
#include <MsTimer2.h>
#define irx 2   // Sensor IR no pin digital 2

static boolean output = HIGH;  // Variável para defenir o estado do LED de infravermelhos, é estática para ser usada durante a interrupção

void setup(){
  pinMode(irx, INPUT);     // Pin onde está o LED infravermelhos é pin output
  Serial.begin(9600);      // Iniciar comunicação Serial com o computador...
  MsTimer2::set(5, flash); // Defenir intrrupções de 5 em 5 ms e durante a interrupção é chamada a função flash
  MsTimer2::start();       // Iniciar interrupções
}

void loop(){
  while(digitalRead(irx));   // Enquanto não houver nada no Sensor não sai daqui, o sensor coloca 1 quando n detecta nada e passa a 0 qd detecta algo
  Serial.println("ICEBERG!"); // Oi.. Apanhou qualquer coisa... OH NÂO É UM ICEBERG... OH GOD, THE PAIN, CAN YOU FEEL THE PAIN?
  // MAYDAY MAYDAY!
  // - Alô diz iz German Cost Guard, can we help you? (Sotaque alemão)
  // YES, YES! We're SINKING!
  // - Okay so what are you sinking (thinking) about? (ahha XD)
}

void flash() {               // Função chamda durante a interrupção
  digitalWrite(12, output);  // Anceder ou apagar o LED IR
  output = !output;          // Alterar o output...
}


   Para fazer as interrupções uso a biblioteca MSTimer2, deixo-a em anexo para quem ainda não a tem (colocá-la na pasta "hardware\libraries" da pasta do Arduino).

   Bem simples hun?
   Com alguma "ginástica" no código consegue-se medir distâncias, mas isso deixo voces descobrirem como! ::)
   E tudo a custo zero, se não conseguem encontrar este material gratuitamente (custa-me a crer), se o forem comprar não gastam mais de 1,5 euros! É bem mais barato que os 25 a 30 euros das lojas...

http://www.youtube.com/watch?v=szi3mGS9rtM

(tip: quanto mais perto está o objecto, maior é a frequência com que o sensor varia de 1 para 0)

Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: ricardo-reis em 08 de Fevereiro de 2009, 04:05
tu és brutal, daniel.. sim sr.. os teus posts são autenticas preciosidades..
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 08 de Fevereiro de 2009, 04:09
tu és brutal, daniel.. sim sr.. os teus posts são autenticas preciosidades..

Aha obrigado  :P :D fico contente por saber que a "malta" gosta!

Espero que todos sejam capazes de ler as letras míudinhas  ::)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: ricardo-reis em 08 de Fevereiro de 2009, 04:11
por acaso só forcei a ler agora.. (tive há pouco no cinema e tenho os olhos meio a fritar.. cansaso e tal.. )
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 08 de Fevereiro de 2009, 11:18
Sim senhor, excelente artigo ;)

Adicionado à primeira página!

Só tenho uma sugestão a fazer... Se variares a frequência do LED IR, vais ter reflexos a distancias diferentes, podes então alterar a frequência para mudar a sensibilidade do sensor sem ter que cortar o plástico... Tenta, eu fazia isso quando utilizava o BasicStamp2 com LED e receptor como fazes aqui, mas sem o transístor. ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: microbyte em 08 de Fevereiro de 2009, 11:35
Brutal!  ;D Espectáculo...
Este tr3s sempre a surpreender.
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: guibot em 08 de Fevereiro de 2009, 11:40
este tuturial está do melhor, obrigado por partilhares   ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: ngoncalves em 08 de Fevereiro de 2009, 12:24
Muito bom, sim senhor !
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 08 de Fevereiro de 2009, 12:44
Sim senhor, excelente artigo ;)

Adicionado à primeira página!

Só tenho uma sugestão a fazer... Se variares a frequência do LED IR, vais ter reflexos a distancias diferentes, podes então alterar a frequência para mudar a sensibilidade do sensor sem ter que cortar o plástico... Tenta, eu fazia isso quando utilizava o BasicStamp2 com LED e receptor como fazes aqui, mas sem o transístor. ;)

"Thank you so very" - aahha obrigado!

Em relação à frequência, com estas interrupções (de 5ms a 13ms) foi onde obtive melhores resultados para qualquer distância, tanto máxima como mínima. Ao reduzir o comprimento dos tubos o que se aumenta é o campo de visão do sensor e a area abrangida pelo LED é maior, logo, temos mais resposta a curtas distâncias! ;)

Obrigado a todos! :D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 08 de Fevereiro de 2009, 12:47
Ok, se está testado ;)

Eu tinha conseguido variar as distancias com o sensor só à face do tubo, é capaz de ser por ai.
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 08 de Fevereiro de 2009, 13:17
Acho que assim se percebem melhor as ligações :P:

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fi240.photobucket.com%2Falbums%2Fff159%2Fsuper-mascarada%2Fligacoes-1.jpg&hash=1cf7797e4d44cafff6067a0aa8ff2f5c78cc7ecc)

Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 08 de Fevereiro de 2009, 13:24
Muito bom, adicionei a imagem ao primeiro post.

(A partir de agora já se pode editar sempre os próprios posts)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: silva_p em 08 de Fevereiro de 2009, 13:45
Citar
Oi.. Apanhou qualquer coisa... OH NÂO É UM ICEBERG... OH GOD, THE PAIN, CAN YOU FEEL THE PAIN?
  // MAYDAY MAYDAY!
  // - Alô diz iz German Cost Guard, can we help you? (Sotaque alemão)
  // YES, YES! We're SINKING!
  // - Okay so what are you sinking (thinking) about? (ahha XD)
genial!

mt bom tutu ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 08 de Fevereiro de 2009, 13:57
Citar
Oi.. Apanhou qualquer coisa... OH NÂO É UM ICEBERG... OH GOD, THE PAIN, CAN YOU FEEL THE PAIN?
  // MAYDAY MAYDAY!
  // - Alô diz iz German Cost Guard, can we help you? (Sotaque alemão)
  // YES, YES! We're SINKING!
  // - Okay so what are you sinking (thinking) about? (ahha XD)
genial!

mt bom tutu ;)
Pelos coments do código dá para ver a que horas foi feito :P
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: metRo_ em 08 de Fevereiro de 2009, 14:53
Obrigado :) Muito bom  ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Fifas em 09 de Fevereiro de 2009, 01:56
tr3s......só me tiras trabalho! ;D ainda vou po desemprego :P

na sexta tava eu a dizer ao ricardo reis, que ia fazer um tutorial de um sensor de proximidade muito barato e postava no sabado...ora no sabado (vida de trabalhador) comecei a fazer o dito tutorial mas nao acabei :P hoje muito menos tempo....chego aqui, e pumba....tutorial feito pelo tr3s.....ah ganda homem! ;D

ta muito bom o tuto ;) tal como os outros teus :D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: DanBar em 11 de Fevereiro de 2009, 17:29
Em vez do teu esquema que ocupa 2 portas digitais no arduino posso utilizar estes equemas ?

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fwww.2mhi.com%2Ficar%2Farduino%2Fesquemas%2Fir-sensor.png&hash=fc4378efa5dadc055698dc212f99dd2a9be829c3)
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fwww.2mhi.com%2Ficar%2Farduino%2Fesquemas%2F0J630.jpg&hash=26c4ed2a277b7bf1cb437f8827bbec6ec20fe84d)

Só ocupam uma porta analógica.

Achas que funciona ?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Fifas em 11 de Fevereiro de 2009, 17:44
hmmm....eu penso que sim :)

eu no meu "sensor" utilizei porta analogica....a diferença é que nao te vai dar um valor digital como é lógico :P
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 11 de Fevereiro de 2009, 17:46
Em vez do teu esquema que ocupa 2 portas digitais no arduino posso utilizar estes equemas ?

Imagem 1 (http://www.2mhi.com/icar/arduino/esquemas/ir-sensor.png)
Imagem 2 (http://www.2mhi.com/icar/arduino/esquemas/0J630.jpg)

Só ocupam uma porta analógica.

Achas que funciona ?

Citar
O sensor tem uma maneira engraçada de funcionar. O que estes sensores fazem é detectar variações de luz, por exemplo, quando carregamos num botão do comando  LED dele pisca com uma determinada frequência (+- 33KHz) e o que o sensor da TV ou video detecta é esta variação. Estes sensores não detectam apenas, única e exclusivamente, luz infravermelha, eles "apanham" tudo (são um pouco mais sensiveis ao IR claro)! Se nós acendermos um LED IR em frente a este sensor veremos ele detectar qualquer coisa por um breve momento  e a estabilizar logo de seguida, isto porque ele internamente "satura" a esse comprimento de onda. É por isso que quando estamos em casa, de luzes ligadas, conseguimos mudar de canal com o nosso comando. O sensor da TV está a "saturar" a toda a luz envolvente e por isso a desprezá-la, como não está a saturar ao IV ao carregarmos num botão do comando o sensor vai "senti-lo" e como o LED do comando apenas pisca, o sensor não chega a "saturar" o IV e então não o despreza.

Não há nada melhor do que experimentar :D, contudo acho essa uma aproximação bastante simples. Experimenta e partilha os teus resultados. Acho que o resultado vai ser o que já disse, uma vez que o LED está sempre aceso o que vai acontecer é que quando encontrares algum obstáculo o receptor dá um pico e satura imediatamente a esse comprimento de onda, regrassando assim a zero. Dessa forma não saberás se te estás a aproximar e também não conseguirás saber a distância a que estás. Julgo que seja isso, mas é só a minha "teoria" uma vez que essa solução entra com pinos analógicos.

Já agora mostra código :P

Bons testes :)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: quack em 19 de Fevereiro de 2009, 22:07
Boas,
Antes de mais deixem-me felicitar por tão bom fórum ;)

Estudo para ser engenheiro electrotécnico, mas nunca na minha vida fiz algo mais do que desmontar um rádio =P
Este ano surgiu-me o interesse pela electrónica (sim, já depois de entrar na faculdade...) e comprei um arduino duemilanove para construir um sumo-robot e fazer uma mini-competição com mais uns amigos...

Apresentações à parte =P,
Este magnífico post levou-me a inscrever no LR... (tks tr3s!)
Na Dimofel (Lisboa) comprei o que precisava para este sensor e por tentativa e erro descobri 3 coisas:

1. que o meu receptor IV tem a "perna do meio" a enviar o sinal
2. que não consigo perceber a reacção do receptor pois parece não reagir à presença do emissor IV
3. que já vai bem longe dos 0€ lol

Ao fazer tudo exactamente igual ao post o serial está sempre a enviar "ICEBERG" e eu ja nao consigo pensar (think) porque ele continua a detectar sempre qq coisa mesmo quando tiro o LED IV, eu é que me estou a afundar (sink =P)

Amanhã tento mais umas coisas e posto o meu verdadeiro problema... foi mais um primeiro post para partilhar a minha frustração e dar os parabens pelo vosso bom trabalho ;) keep up!

quack[]
PS: desculpem ter-me alongado
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: metRo_ em 19 de Fevereiro de 2009, 22:14
Ben-vindo e podes continuar alongar que ninguem se importa. :p Eu estudo para o mesmo mas no Porto. Quando ao problema não estou a ver qual será a causa  ::)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 19 de Fevereiro de 2009, 22:59
Obrigado, quack. E muito obrigado pelo elogio ao nosso forum! ;)

Bom...  é o pino do meio que está a enviar os dados? Isso é estranho que sensor é?
Esta experiência fica em zero euros se reaproveitares material, como indico no post :P!

É natural que ele detecte qualquer coisita, como deves calcular toda a luz é composta por infra-vermelhos. Durante as minhas experiências reparei que o simples facto de aproximar a minha mão a menos de 5mm do sensor este disparava que nem um louco!
Sei que a Dimofel não pratica bons preços, mas de qualquer maneira o emissor IR e o receptor não deviam (se o foram, raios partam aqueles tipos) ser assim muito caros para ja ires bem longe dos 0€!
Mostra que sensor estás a usar para te podermos ajudar em tudo o que precisares! :D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: quack em 20 de Fevereiro de 2009, 01:08
Quando digo "bem mais caro" é tendo em conta que comprar um sensor pronto-a-usar me custaria pouco mais de 10€... já vou para além dos 5€... mas caso resulte, nem que no fim tiver gasto um pouco mais, me daria por contente, pois o conhecimento adquirido ninguém me tira.

Já vi que a ajuda aqui no fórum é instantânea =)
Espero evoluir depressa para também poder assim ajudar quem precise ;)

Posto também as imagens dos componentes que uso... mas ainda tenho uma noitada pela frente para fazer mais uns testes ao sensor até saber mesmo postar a minha pergunta..se nem eu me entendo quanto mais voçês.. nao sei ainda formular a pergunta. Sei que não percebo o que o sensor faz (ou neste caso não faz)
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fweb.ist.utl.pt%2F%7Epedro.ganco%2FLR%2Fimgs%2FsensorIV.jpg&hash=58562224d401bfa432f88e29a95710e1550e5037)
Não usei esse foto diodo, mas foi o que me aconselharam na Dimofel, mas cedo percebi que o foto diodo "sente" tudo o que é radiação =P
[]obrigado


[EDIT] novidades

Fazendo o upload do codigo do tutorial o arduino envia sempre a frase "ICEBERG!" para o PC
Para tentar perceber porquê, simplifiquei o meu circuito para algo mais simples e ver o output desta vez:

Código: [Seleccione]
#include <MsTimer2.h>

static boolean output = HIGH;
int val = 0;

void setup(){
  pinMode(12, OUTPUT);
  Serial.begin(9600);
  MsTimer2::set(5, flash);   // Intrrupções de 5 em 5 ms no LED IV
  MsTimer2::start();
}

void loop(){     // Unica diferença do codigo original
    Serial.println(analogRead(0));     // Envia valores lidos no pin analogico 0
}

void flash() {
  digitalWrite(12, output);
  output = !output;
}

Codigo cores cabos:
Preto- GND
Vermelho- 5V
Amarelo- Pin analogico 0
Verde- GND
Azul- Pin digital 12
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fweb.ist.utl.pt%2Fpedro.ganco%2FLR%2Fimgs%2FsensorIV2.jpg&hash=405a904f6d83122c4d850a1631dba8a584591ae7)(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fweb.ist.utl.pt%2Fpedro.ganco%2FLR%2Fimgs%2FsensorIV3.jpg&hash=5a0bdd9b55dec6481f418c53a3fe8c0c2cff6863)

---------------------------------(no início...)---------------------------------
Sensor IV:
Leg1: OUT (pin analogico 0)
Leg2: GND
Leg3: 5V

LED IV:
pin digital 12 (com frequência de 5ms tal como o código original, usando o timer)
usei um switch para so ligar o LED IV quando quisesse, para ver alterações no sensor


RESULTADOS do Serial Monitor:
Com LED IV desligado o valor lido é de 1023
Com LED IV ligado o valor lido continua constante a 1023
Daí ter concluído que o output do sensor deveria ser a leg2 em vez da leg1, pois não reagia ao LED IV

----------------------------(Mudando a leg1 com a leg2)----------------------------------------
Sensor IV:
Leg1: GND
Leg2: OUT (pin analogico 0)
Leg3: 5V

LED IV:
igual ao anterior

RESULTADOS do Serial Monitor:
Com LED IV desligado o valor lido é de 190
Com LED IV ligado os valores lidos vão crescendo a um ritmo certo começando por variar entre [193 e 196], [196 e 199], [199 e 202] ...sempre a crecer sequencialmente o limite do intervalo.
Após desligar o LED IV o valor lido estabiliza novamente desta vez num valor mais alto que o 190 inicial
Não me serve de muito, mas confirma (penso eu) a minha teoria de a leg2 ser a leg do sinal

---------------------------------------(fazendo asneira da grossa lol)---------------------------------------
Sensor IV:
Leg1: OUT (pin analogico 0)
Leg2: 5V   (uups!) :o
Leg3: GND (uups!) :o


RESULTADO:
Por engano troquei na bread board a leg2 com a leg3 do sensor IV, o resultado, não cheirou nada bem!!! em segundos percebo que algo de errado se passa, pois começo a sentir um cheiro a queimado!!!!
Aqui sim fiquei preocupado! desliguei de imediato a USB do arduino, mas menos aflito "vejo" que o cheiro não vem da placa mas sim do sensor que estava quente!
Depois de alguns testes os resultados do sensor continuam iguais, penso que não tive tempo de o danificar   =)
------------------//----------------------

E agora finalmente a minha questão: o que se passa com este sensor?  ???
Os outputs gerados fazem sentido?
Com variações de apenas algumas unidade não consigo aproveitar o sensor IV para sensor de proximidade  =(
Vai ser o tubo feito com a caneta preta que vai ajudar na leitura de IV's?

Desde já muito obrigado ;)
quack
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 20 de Fevereiro de 2009, 10:52
Não sei muito bem rapaz, nem tenho tempo para analisar completamente o caso mas de qualquer das formas fica o circuito do boe-bot para sensores ir para detectar distancias que pode ajudar.

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fimg144.imageshack.us%2Fimg144%2F9471%2Fsensorirtv6.jpg&hash=9ad5833a3510f2b3a9801c688d09ff1b0656e3f9)

Código: [Seleccione]
FREQOUT 8, 1, 38500
 irDetectLeft = IN9
IF (irDetectLeft = 0) THEN

Do que vejo eles mandam um PWM para o LED IR e depois esperam que o sensor diga 1.

Assim parece que o IR diz high ou low conforme detecta ou não o reflexo a essa frequência!
Os 38500 são em Hz, logo temos k converter para o pwm do arduino se quiseres testar os mesmos valores.

Desculpa não poder ajudar mais agora mas tenho muitos trabalhos em mãos... Boa sorte ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: quack em 21 de Fevereiro de 2009, 00:26
Obrigado TigPT ;)

Entretanto arranjei um PDF ("Robotics With Boe-Bot - Student Guide)
Dedicam um capítulo inteiro a sensores infra-vermelho..vou por alguma leitura em dia...
Bolas, nestas "férias" entre semestres estou que nem vampiro, sempre a dormir de manha... =D
[]
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 21 de Fevereiro de 2009, 01:25
Obrigado TigPT ;)

Entretanto arranjei um PDF ("Robotics With Boe-Bot - Student Guide)
Dedicam um capítulo inteiro a sensores infra-vermelho..vou por alguma leitura em dia...
Bolas, nestas "férias" entre semestres estou que nem vampiro, sempre a dormir de manha... =D
[]
Quem me dera poder dizer isso mas eu vou começar o próximo semestre ainda a entregar trabalhos e fazer defesas do anterior :S

O manual está muito bom, acho k é uma boa leitura, embora orientado para BS2, dá para aprender bons conceitos de electrónica e robótica gerais!
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 21 de Fevereiro de 2009, 19:51
Esses outputs estão mesmo muito estranhos... vou fazer um video onde vou carregar o código que coloquei no primeiro post onde vou mostrar o sensor que montei enquanto fazia este Tópico.
Estou a achar  mesmo mesmo estranho...
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 22 de Fevereiro de 2009, 00:31
E agora finalmente a minha questão: o que se passa com este sensor?  ???
Os outputs gerados fazem sentido?
Com variações de apenas algumas unidade não consigo aproveitar o sensor IV para sensor de proximidade  =(
Vai ser o tubo feito com a caneta preta que vai ajudar na leitura de IV's?

Desde já muito obrigado ;)
quack

Bom aqui têm o meu video, foi feito um bocado a pressão mas mostra que tudo funciona! Não uso o indicador da mao esquerda pq o cortei :P!
Vê-se alguma interferencia do led IR do portátil mas também se entende claramente que o sensor detecta a minha mão na perfeição!
Fiz as ligaçoes exactamente como digo no primeiro post e uso o código que coloquei sem alterar nada como podem ver no vídeo!

P.S.: Não liguem as cenas que tenho ligadas na breadboard, são experiências.

http://www.youtube.com/watch?v=szi3mGS9rtM

Não terás uma fonte externa de IR algures por aí?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: metRo_ em 25 de Fevereiro de 2009, 02:50
Citar
Não uso o indicador da mao esquerda pq o cortei Lingua!
Não percebi, o teu indicador pareceu estar em boas condições!!  :P
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: DanBar em 25 de Fevereiro de 2009, 09:18
tr3s tinhas razão. O esquema do IR ligados só para um entrada não funciona. O Receptor fica realmente saturado.

Fiz a esperiencia do teu tutorial e funciona. Mas para mim não dá. Gostava de poder ligar a uma porta analógica e tentar converter a voltagem de entrada por centimetros.

Se ligar o receptor IR a uma porta de entrada a voltagem não varia muito.

Gostava de saber se existe algo por aí que possa calcular a que distancia está o objecto "ICEBERG".

Talvez os  módulos IR que se vendem por aí já possa fazer isso ?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 25 de Fevereiro de 2009, 14:20
Sim, os módulos IR que se vendem aí, os Sharp, já te indicam a distância por Analog onde x milivolts correspondem a determinada distância.

É possível calculares a distância com a minha montagem mas além de não ser muito precisa (isto é só um PoC) dá trabalho :P!
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 25 de Fevereiro de 2009, 19:49
:O tenho de fazer um! eu tenho um LDR mas com um filtro que só deixa passar luz IR

daria para fazer um com um LDR?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 25 de Fevereiro de 2009, 20:20
Usando a entrada analógica porque não?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 25 de Fevereiro de 2009, 20:25
Usando a entrada analógica porque não?

tenho de tentar, parece mais fixe do que gastar 35 € e sem poder receber o que compro xD
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 25 de Fevereiro de 2009, 21:45
Usando a entrada analógica porque não?

tenho de tentar, parece mais fixe do que gastar 35 € e sem poder receber o que compro xD

É isso mesmo! Era mesmo essa a ideia que queria transmitir!  ;D ;D ;D ;D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: quack em 01 de Março de 2009, 10:58
Fiquei uns dias sem net e ja tinha montes de posts para ler aqui no LR =D
Entretanto já voltei a fazer o teu sensor do inicio e desta vez ja consegui qq coisinha, mas com pouca precisao.
Devo de qq maneira mandar vir uns sonares (com mais malta para dividir portes) para aplicar no meu sumo bot
[]
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 01 de Março de 2009, 12:18
Usando a entrada analógica porque não?

tenho de tentar, parece mais fixe do que gastar 35 € e sem poder receber o que compro xD

É isso mesmo! Era mesmo essa a ideia que queria transmitir!  ;D ;D ;D ;D

consegui fazer um ;D ;D só que não é IR é uma LED de alto brilho ::) mas funciona! liguei ao arduino de forma a receber os dados da entrada, e deu-me 100 quando não apontava nada, e quando estava a 10cm da mesa dava-me 650, logo +650=-10cm :) e depois quando passava isso a LED do pino 13 acende :)
mas depende um bocado da cor da superficie :S numa folha de papel branco 650 equivale a 15 cm, numa papel preto equivale a 5... :S

mas já deve dar para alguma coisa ;D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 01 de Março de 2009, 12:45
Usando a entrada analógica porque não?

tenho de tentar, parece mais fixe do que gastar 35 € e sem poder receber o que compro xD

É isso mesmo! Era mesmo essa a ideia que queria transmitir!  ;D ;D ;D ;D

consegui fazer um ;D ;D só que não é IR é uma LED de alto brilho ::) mas funciona! liguei ao arduino de forma a receber os dados da entrada, e deu-me 100 quando não apontava nada, e quando estava a 10cm da mesa dava-me 650, logo +650=-10cm :) e depois quando passava isso a LED do pino 13 acende :)
mas depende um bocado da cor da superficie :S numa folha de papel branco 650 equivale a 15 cm, numa papel preto equivale a 5... :S

mas já deve dar para alguma coisa ;D
Se mantiveres a distancia fixa da superfície, podes utiliza-lo para detectar cores, mal mas dá para teres uma ideia. ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 01 de Março de 2009, 12:51
Usando a entrada analógica porque não?

tenho de tentar, parece mais fixe do que gastar 35 € e sem poder receber o que compro xD

É isso mesmo! Era mesmo essa a ideia que queria transmitir!  ;D ;D ;D ;D

consegui fazer um ;D ;D só que não é IR é uma LED de alto brilho ::) mas funciona! liguei ao arduino de forma a receber os dados da entrada, e deu-me 100 quando não apontava nada, e quando estava a 10cm da mesa dava-me 650, logo +650=-10cm :) e depois quando passava isso a LED do pino 13 acende :)
mas depende um bocado da cor da superficie :S numa folha de papel branco 650 equivale a 15 cm, numa papel preto equivale a 5... :S

mas já deve dar para alguma coisa ;D
Se mantiveres a distancia fixa da superfície, podes utiliza-lo para detectar cores, mal mas dá para teres uma ideia. ;)

não tinha pensado nisso  :o ;D tenho de ver se se mantem estável o suficiente para fazer isso, mas só irá resultar como uma luminosidade fixa :S
a não ser se eu ligar outro LDR e comparar os resultados duma com a outra...  ;D

obrigado pela ideia :)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 01 de Março de 2009, 12:53
Podes sempre impedir luz exterior de entrar, com uma "saia" à volta desse bloco até ao chão, tipo escova, ou até mesmo pano caso não arranjes melhor... utiliza sempre cor preta para n influenciar o resultado medido ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 01 de Março de 2009, 16:44
Podes sempre impedir luz exterior de entrar, com uma "saia" à volta desse bloco até ao chão, tipo escova, ou até mesmo pano caso não arranjes melhor... utiliza sempre cor preta para n influenciar o resultado medido ;)

vêm me á cabeça cartolina preta... :)  ;D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 01 de Março de 2009, 20:07
Eeheh é esse o principio dos sensores para os "segue-linhas! :D:D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 01 de Março de 2009, 20:09
Eeheh é esse o principio dos sensores para os "segue-linhas! :D:D

eu tenho um desses do cybot, posso tentar fazer um mais eficiente :)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 04 de Março de 2009, 21:38
achas se piscar a 100Khz é rápido demais? :S

e outra coisa... o transistor é mesmo necessário? :S não me dou com transistores :(

não se precisa de uma resistencia? :S
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: papucho em 31 de Março de 2009, 16:40
Uma cena:

Se eu tirar o receptor ou o emissor ou os dois, aquilo diz sempre ICEBERG!

Que se passa?

O meu transistor é um TIP122, dá? Já reparei que tem as pernas trocadas...
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Njay em 31 de Março de 2009, 21:52
:O tenho de fazer um! eu tenho um LDR mas com um filtro que só deixa passar luz IR

daria para fazer um com um LDR?

Depende de se o LDR é ou não sensível à luz infra-vermelha... não sei. Mas tens fotodíodos que o são.
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 31 de Março de 2009, 22:05
:O tenho de fazer um! eu tenho um LDR mas com um filtro que só deixa passar luz IR

daria para fazer um com um LDR?

Depende de se o LDR é ou não sensível à luz infra-vermelha... não sei. Mas tens fotodíodos que o são.

sim sim, acabei por conseguir :)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Njay em 31 de Março de 2009, 22:16
e outra coisa... o transistor é mesmo necessário? :S não me dou com transistores :(

http://blog.makezine.com/archive/2009/03/make_presents_the_transistor.html?CMP=OTC-0D6B48984890 (http://blog.makezine.com/archive/2009/03/make_presents_the_transistor.html?CMP=OTC-0D6B48984890)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 02 de Abril de 2009, 13:26
bem comecei a tentar fazer este sensor outra vez... funciona, diz ICEBERG! quando ponho a mao na frente, mas o problema é que o transistor aquece bué! até derreteu a cola quente com a qual colei o pedaço de caneta!!!

estou a usar um C547B

datasheet:
http://pdf1.alldatasheet.com/datasheet-pdf/view/16104/PHILIPS/BC547B.html (http://pdf1.alldatasheet.com/datasheet-pdf/view/16104/PHILIPS/BC547B.html)

a não! esse é PNP certo? tenho de modificar a coisa para NPN...  ::)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Njay em 02 de Abril de 2009, 14:37
O transistor aquece muito porque o LED não tem resistência. O transistor aquece, e o LED vai acabar por pifar. O LED tem que ter resistência (180 a 220ohms).
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 02 de Abril de 2009, 14:41
O transistor aquece muito porque o LED não tem resistência. O transistor aquece, e o LED vai acabar por pifar. O LED tem que ter resistência (180 a 220ohms).

bem o que fiz foi, tirei o transistor, e como o datasheet da LED diz que max pulse voltage 2v liguei ao pino 13(tem resistencia integrada) e como pulsa é na boa ;D já evita objectos, e a luz do sol como tem IV interfere bastante mo andamento... mas com as persianas corridas faz o que lhe pedi ;D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Njay em 02 de Abril de 2009, 14:51
A pino 13 não tem resistência integrada. Esse é um erro que já vi por aí várias vezes. Agora, além de estares a stressar o LED, também estás a stressar o Arduino, pois a corrente máxima num pino são 40mA e com esse LED a Vcc = 5V a corrente deve estar a mais de 100mA.
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 02 de Abril de 2009, 15:28
não tem resistencia o pino 13??? então praticamente todos os tutoriais do blinking LED estão mal?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Njay em 02 de Abril de 2009, 15:37
Ele tem é um LED com uma resistência em série ligados ao pino 13 na board, mas o pino 13 que chega ao pino exterior está directamente ligado ao AVR:

Código: [Seleccione]
     |
AVR  +----+----------* pino 13
     |    |
     |    +----/\/\/\---->|---- 0V
     |                    \\

Vê aqui:

http://arduino.cc/en/uploads/Main/arduino-duemilanove-schematic.pdf (http://arduino.cc/en/uploads/Main/arduino-duemilanove-schematic.pdf) (é igual na versão anterior do arduino).
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 02 de Abril de 2009, 15:55
 :o  :o  :o

então se se ligar uma LED ao pino 13 sem resistencia ela queima??? isto no site não está mt bem explicado... bem, cá vão 1000 ohms...
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 02 de Abril de 2009, 16:00
:o  :o  :o

então se se ligar uma LED ao pino 13 sem resistencia ela queima??? isto no site não está mt bem explicado... bem, cá vão 1000 ohms...
Realmente também tinha a ideia que a resistência estava em serie com o pin out, será que já estava assim desde do duecimila?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 02 de Abril de 2009, 16:03
talvez mas o esquema que mostras-te dizia arduino 2009... bem só em caso pus 700ohms...
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 02 de Abril de 2009, 16:15
talvez mas o esquema que mostras-te dizia arduino 2009... bem só em caso pus 700ohms...
Fizeste bem ;)

220 chega mas n faz mal mais que garantes que não queima ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 02 de Abril de 2009, 16:23
talvez mas o esquema que mostras-te dizia arduino 2009... bem só em caso pus 700ohms...
Fizeste bem ;)

220 chega mas n faz mal mais que garantes que não queima ;)

bem fui agora ver e, conforme a resistencia que por, é preciso mais, ou menos distancia para ele se desviar :) com 220 dá 60 cm ;D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 02 de Abril de 2009, 17:01
talvez mas o esquema que mostras-te dizia arduino 2009... bem só em caso pus 700ohms...
Fizeste bem ;)

220 chega mas n faz mal mais que garantes que não queima ;)

bem fui agora ver e, conforme a resistencia que por, é preciso mais, ou menos distancia para ele se desviar :) com 220 dá 60 cm ;D
Então já sabes como regular a sensibilidade, metes um potenciómetro digital a ser controlado pelo arduino.

Manda vir samples ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Fifas em 02 de Abril de 2009, 17:12
tenho um samples duns potenciometros digitais.....mas os gajos sao super hiper mega pequenos :P
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 02 de Abril de 2009, 17:16
lol xD mas deve dar para usar PWM para controlar a distancia a que detecta?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 02 de Abril de 2009, 17:30
lol xD mas deve dar para usar PWM para controlar a distancia a que detecta?
Sim com um PWM maior deve de detectar mais longe... testa..
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Njay em 02 de Abril de 2009, 17:45
Podes meter até 180 ohms no minimo sem problemas nenhuns.
Se queres regular o alcance, liga-o (com a resistência) a uma saída de PWM ;). Até pode ser usando a lib Servo2.
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 02 de Abril de 2009, 18:27
essa biblioteca n sei pk mas n quer instalar :(

bem mas n tentei com o IDE 0015...
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: dansku em 04 de Abril de 2009, 13:35
muito bom, valeu pela dica!!! :)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: R.S. em 07 de Abril de 2009, 12:13
boas, fui a loja de electonica local e e fui pedir um receptor IR e o senhor nao tinha e disse-me que este(BPW40) faz a mesma coisa, é?

eu fiquei um bocado na duvida na altura porque o receptor que eu queria tem 3 pernas que é o que o tr3s referiu e o que comprei tem 2 é tipo um LED.


abraços R.S.
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 07 de Abril de 2009, 13:21
talvez tenhas de usar analog input?  :-\
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: dio123 em 08 de Abril de 2009, 11:30
e perciso mesmo o arduino?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 08 de Abril de 2009, 15:51
e perciso mesmo o arduino?
Não é preciso o arduino, o arduino aqui só está a fazer a tarefa de mediante um valor processar de certa forma, mas pode fazer o mesmo com qualquer microcontrolador, ou apenas com circuitos lógicos.
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: anunakin em 27 de Abril de 2009, 19:12
Boa tarde!
Estou tentando reproduzir o esquema com um Arduino Nano, contudo o receptor IV não detecta nada, sei que está a funcionar pois funciona perfeitamente com o controle da TV...

Creio que possa ser a freqüência que estou usando com a biblioteca MSTimer... seria isso?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 27 de Abril de 2009, 19:30
experimenta desligar a luz IV, ver o que acontece, depois liga-a e ve, se nada mudar, talvez o receptor esteja avariado...  :-\
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: anunakin em 29 de Abril de 2009, 12:33
Esse meu receptor está funcionando sim, tenho outros, só esse tem a saída digital (1 => nada, 0 => detectou IV), contudo parece que ele tem algum filtro e pelo o que pesquisei só capta o IV em 38KHz, para que temos de usar uma harmônica... com o sinal do controle remoto funciona muito bem o sensor....

Usando um dos meus sensores analógicos consegui fazer o que está descrito aqui, mas esse sensor digital parece-me muito melhor pois ele praticamente não capta interferência alguma do ambiente e tem um alcance de mais de 5 metros....

O problema está em simular pelo arduino esse sinal de controle remoto, nessa frequencia de 38KHz....

======== NOVIDADES =========
Consegui fazer funcionar com o sensor IV que tenho aqui, parece que era o mesmo problema do Quack (e outros), vou explicar .... alguns sensores têm filtros para só pegarem IV entre 38KHz até uns 45KHz, ou seja os 5ms do programa original não fazem o nada, como montei o mesmo com outro sensor só que analogico, a diferença na qualidade da detecção é muito alta, já que o digital tem o filtro de freqüência, e obviamente retorna 0 ou  1....

Usei intervalos de 10µs para gerar a onda quadrada, bom deveria ser 12µs mas em 12 a freqüência não casa, provavelmente é devido ao tempo de execução, em 12 detecta o sinal mas em 10 fica muito melhor, não tenho um osciloscópio aqui para ver a freqüência real de saída....

Bom foram muitas horas de pesquisas e tentativas, e alguns controles remotos velhos que desmontei, mas valeu a pena...
Eis aqui o programa modificado e que está a funcionar aqui:
Código: [Seleccione]
#include <MsTimer2.h>
#define ledPin 12
#define alertPin 13
#define irx 2

int val  = 0;
int counter = 0;

void setup(){
  pinMode(irx, INPUT);     //pino data do Sensor IV
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);

  MsTimer2::set(100, flash); //timer do flash, são emitidos pulsos da onda quadrada na frequencia de ~38KHz acada 100ms
  MsTimer2::start();

}

void loop()
{
  val = digitalRead(irx);
  if(!val){
    counter++;   
    digitalWrite(alertPin, HIGH);
    delay(50);   
    digitalWrite(alertPin, LOW);   
    Serial.print("Debug: ");
    Serial.println(counter);
  }
}

void flash() {  //Onda quadrada, 10µs bom deveria ser 12µs mas em 12 a frequencia nao casa (seria o tempo de execução?)
    digitalWrite(ledPin, HIGH);
    delayMicroseconds(10);
    digitalWrite(ledPin, LOW);
    delayMicroseconds(10);
    digitalWrite(ledPin, HIGH);
    delayMicroseconds(10);
    digitalWrite(ledPin, LOW);
    delayMicroseconds(10);
}
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 30 de Abril de 2009, 16:49
e perciso mesmo o arduino?
Não é preciso o arduino, o arduino aqui só está a fazer a tarefa de mediante um valor processar de certa forma, mas pode fazer o mesmo com qualquer microcontrolador, ou apenas com circuitos lógicos.

como fazer com um circuito lógico? com um OPAMP? :D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: anunakin em 30 de Abril de 2009, 18:55
Com OPAMP, acho que consegue gerar o sinal no led, mas como vais calcular uma distancia?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 30 de Abril de 2009, 19:20
Com OPAMP, acho que consegue gerar o sinal no led, mas como vais calcular uma distancia?

eu quero para detectar a presença de luz IV a piscar a 33Hz, nao para detectar distancias :)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: anunakin em 30 de Abril de 2009, 23:49
Com OPAMP, acho que consegue gerar o sinal no led, mas como vais calcular uma distancia?

eu quero para detectar a presença de luz IV a piscar a 33Hz, nao para detectar distancias :)

Ah sim! mas OpAmp, é indicado para gerar ocilações correto? sendo assim detectar o sinal de 33KHz e acender um led por exemplo seria mais facil com um microcontrolador ou fazer um circuito com um sensor digital com porta AND por exemplo passando 5V numa entrada e o pino data do sensor na outra entra da porta AND ... depois disso na saida da AND vai o led ... e a outra perna do led no VSS...
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 01 de Maio de 2009, 12:07
pois... :S

um comparador! não queria dizer OPAMP  :-[

mas um comparador não tem OPAMPS dentro? :S é pá basta ficar parados 3 dias e já esqueci tudo xD

pois o meu primeiro instinto foi pegar no arduino  ::) mas tem de ser uma coisa robusta, porque o que eu estou a tentar fazer são travões de bicicleta wireless  ;D, o mais certo será usar um Atmel, e fazer depois um tipo breaduino, com o tamanho adequado as minhas necessidades

e depois para ser proporcional :S
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: anunakin em 05 de Maio de 2009, 04:02
Encontrei uma explicação do PWM da Sony, protocolo SIRC: http://www.sbprojects.com/knowledge/ir/sirc.htm (http://www.sbprojects.com/knowledge/ir/sirc.htm)
Se observarem é uma onda quadrada de 38 a 50KHz (depende do modelo do sensor) como portadora de um PWM

Assim para que o PWM do Arduino funcione com esses sensores que possuem filtro de freqüência... temos de muda a freqüência do PWM do arduino...
Aqui como mudar a freq. do PWM: http://usethearduino.blogspot.com/2008/11/changing-pwm-frequency-on-arduino.html (http://usethearduino.blogspot.com/2008/11/changing-pwm-frequency-on-arduino.html)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: DanBar em 05 de Maio de 2009, 11:03
Boa  ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: anunakin em 06 de Maio de 2009, 21:31
Alguém fez algo para detectar distancias? penso que a maneira mais acertada é contar quantos pulsos são captados no sensor, num dado intervalo de tempo, contudo como já foi citado aqui no fórum essa quantidade varia muito dependendo da superficie analizada (cor, textura, material).

Pensei em adicionar um botão de setup, para por o arduino numa distancia conhecida de uma superfície e coletar os dados e a partir disto ir medindo as outras distancias... bom fico pensando como que o sensor da sharp faz isso? alguém sabe se eles medem distancias erradas para superficies negras?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Rebel em 07 de Maio de 2009, 12:08
Estive a fazer uns testes com o sensor IR TSOP1736 e depois de algumas cabeçadas consegui por aquilo a funcionar, apesar de o alcance ser baixo devido a estar a usar uma resistência de 1K no emissor IR. Tenho dois emisores (direito e esquerdo) e um receptor (central) e estava tudo a funcionar direito até que ontem levei o meu PJBot para a sala para aumentar a potência dos emissores. Liguei o gajo e começo a receber detecções aleatórias no sensor. Verifiquei as ligações e estava tudo ok. Desliguei as luzes fluorescente e o problema manteve-se. Hummm......
Até que em desespero desliguei o TV LCD e ...... passou a funcionar direito. Hoje andei a pesquisar e descobri que existe bastante gente a queixar-se de interferências entre os LCD's e outros equipamentos com controlos IR.

Alguém sabia disto?

Algumas ideias para resolver o problema?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: TigPT em 07 de Maio de 2009, 13:38
Pelo que parece, isto tem a ver com a frequência de refresh do ecrã, terás que alterar as frequências ou tentar fazer um filtro de ruído por software...
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Reonarudo em 07 de Maio de 2009, 13:39
Encontrei isto:
http://forums.cnet.com/5208-7596_102-0.html?messageID=2674334#2674334 (http://forums.cnet.com/5208-7596_102-0.html?messageID=2674334#2674334)
http://forums.cnet.com/5208-7596_102-0.html?messageID=2674810#2674810 (http://forums.cnet.com/5208-7596_102-0.html?messageID=2674810#2674810)



Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: anunakin em 08 de Maio de 2009, 02:58
Consegui fazer o sensor de distancia usei um led IV comum destes de controle remoto, e um fototransistor IV digital (1 não recebe nada, 0 recebe algo) e além disto esse possui filtro deixando passar apenas IV modulado em PWM na freqüência de 40~50KHz... e não sofre com interferência de luz solar ou lâmpadas florescentes. 

Até agora estou conseguindo bons resultados entre 15cm e 60cm...

Variando-se a resistência no led emissor (estou usando 57ohm), pode-se medir distancias menores, ainda tenho de fazer mais ajustes, PS... não usei o transistor BC547 lá do esquema...  ;)

Estava a ler o datasheet do GP2D120 e vi que o sensor da SHARP, sofre dos mesmos "defeitos" do que estamos a construir, como obter resultados errôneos para superfícies escuras,

Estou trabalhando com distancias entre 15cm e 60cm pois não tenho equipamento para fazer algo mais preciso para distancias maiores... abaixo de 15cm o comportamento do sinal IV é totalmente diferente, e estava pensando em fazer um "if" nesse ponto... fiz uma planilha aqui com várias medições... estou usando a técnica de emitir X pulsos e ver quantos retornam, creio que a SHARP faz o mesmo ... não tem nada de triangulação como li em alguns sites por ai... se fosse isso não haveria esta observação no datasheet....
Citar
NOTES:
1. Measurements made with Kodak R-27 Gray Card, using the white side, (90% reflectivity).
2. L = Distance to reflective object.
fonte: http://www.superrobotica.com/download/sharp/gp2d120.pdf (http://www.superrobotica.com/download/sharp/gp2d120.pdf)


Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: dsantos em 08 de Maio de 2009, 08:41
muito bom ;D ;D
eu sei que estou aqui a pouco tempo mas, men sou tem fã... :D :D :D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: anunakin em 11 de Maio de 2009, 04:48
Já postaram o trabalho nosso na Playground... foi postado recentemente... dia 2 de maio!
http://www.arduino.cc/playground/Main/PanasonicIrSensor (http://www.arduino.cc/playground/Main/PanasonicIrSensor)


Eita vi que tem outros sensores da SHARP que parecem que fazem uma triangulação sim, .... li os datasheets ... e tem uns modelos com um Y, no codenome que têm um led emissor com movimento....
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 12 de Maio de 2009, 12:27
Estive uns dias "fora" mas pelo que tou a ler, isto tem estado muito activo!

Pois, como sabem toda a luz tem componentes no espectro Infravermelho, luz visivel, Ultra-violeta, etc. Agora, as tvs, devido à sua taxa de "refrescamento" pode estar a gerar sinais que interfiram com o sensor. Já houve algumas propostas de solução para este problema e é só testar.
Muito bom trabalho para todos, estão de parabéns.  ;D
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: dio123 em 27 de Julho de 2009, 19:36
Citar
Bem consegui arranjar o led, receptor ,que tirei de um dvd, o transistor nao consegui arranjar o 547 e disseram-me que 548 era igual. Então peguei no 548 e exprimentei mas nao funciona.
Revi as ligação 3 vezes, e está ligado como nas imagens, e reparei que o receptor aquece bue.


Já consegui fazer com que ele mande mensagem para o pc a dizer iceberg mas nao para de dizer.
O receptor deixa aquece muito, ao ponto da folha de papel começar a deixar fumo
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 27 de Julho de 2009, 20:09
Dio123 tem cuidado, certamente que estás a fazer alguma coisa mal!
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: dio123 em 27 de Julho de 2009, 20:19
para o receptor em vez de ligar aos 5 volts liguei aos 3 volts o que já nao aquece tanto como a bocado.

Agora quando ligo o arduino no pc está sempre a aparece o iceberg, ou seja está a detectar algo. Agora se remover o led, o receptor  nao devia detectar o led e nao pc nao deveria aparece iceberg. Aqui acontece só o receptor ligado aprarece o iceberg 
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 27 de Julho de 2009, 20:39
Só o facto de isso estar aquecer assim dá-me a sensação de algo não estar bem...
Ve la se não tens por aí nenhuma fonte de IR (normalmente os portateis têm).

Mostra-nos um esquema ou uma foto onde dê para ver bem que ligações estás a fazer.
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Njay em 27 de Julho de 2009, 21:08
Ou estás a ligar sem resistências, ou com as patas trocadas, ou é o emissor sem resistência.
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 27 de Julho de 2009, 21:25
o meu aquecia tmb muito, mas não era NPN, que era o que diz na primeira página, por isso fora com ele, não notei diferença, talvez seja no alcançe, mas sempre alcança uns 20cm em fundo preto...
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: dio123 em 27 de Julho de 2009, 21:43
O fio verde grande liga ao 3V3 QUE é os 3 volts
O fio branco com risca branca liga ao GND
O fio castanho liga ao pino 2
O fio branco com risca castanha liga ao pino 12

Nao se ve o transistor só agora ao postar é que vi mas no primeiro pino liga o positivo, no segundo liga ao pino2 do arduino e o 3 liga o led

Vou exprimentar tirar o transistor como amando96 referiu a ver o que acontece

(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fimg22.imageshack.us%2Fimg22%2F91%2Ffoto0154r.jpg&hash=20e02d7cb1b69bb3edfeaa40e58e68f9f4f405d3)

Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 27 de Julho de 2009, 22:11
No transístor o 2 pino liga ao 2 do Arduino? PorquÊ? O sensor de ir assim apontado para cima é bem normal que esteja sempre a detectar algo... Não é por nada que as TVs e têm aquele plástico "escuro" à frente!:P
Algumas ligações não se percebem, mas ao ver tantos fios completamente descarnados não me admira que algo esteja a fazer contacto onde nao deve!

Keep posting
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: dio123 em 27 de Julho de 2009, 23:03
desde já agradeço pela a ajuda que tem dado.

Bem,  fiz as ligações de novo já consegui o seguinte
com que o receptor  ligado aparece-se no pc ICEBERG, e quando desligo ele para de enviar mensagens.
Se ligar mesmo que fique apontado baixo, para o beardboard, ele continua a enviar mensagem. acho que nao devia acontecer.
O led,  ou pisca muito rápido ou nao funciona ligado ao transistor porque pego no telemovel e nao vejo a luz a piscar?
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 27 de Julho de 2009, 23:08
Isso é estranho... continuam a aquecer? Refaz o esquema como tenho no post inicial, tem cuidado com os fios e mete um involucro a volta do receptor e outro a volta do led. Just to check ;)
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: dio123 em 27 de Julho de 2009, 23:50
fiz as ligações de novo, e depois liguei aos 5 volts e já nao aquece.

Mas o problema continua pois só retirando o receptor da board e que deixa de aparecer a mensagem, mesmo pondo o envolcro de papel com fita preta.
Reparei que estou a usar o 557 e nao 547,o problema deve ser agora esse, acho eu
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Njay em 28 de Julho de 2009, 01:14
O 557 é PNP e não NPN como 547.
Se disseste que saía fumo de um componente, o melhor é mandá-lo já fora porque a partir do momento em que saíu fumo esse componente já não é fiável, e pode estar a fazer o circuito não funcionar.
Título: Re:Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Raul em 07 de Janeiro de 2010, 01:34
Quando digo "bem mais caro" é tendo em conta que comprar um sensor pronto-a-usar me custaria pouco mais de 10€... já vou para além dos 5€... mas caso resulte, nem que no fim tiver gasto um pouco mais, me daria por contente, pois o conhecimento adquirido ninguém me tira.

Já vi que a ajuda aqui no fórum é instantânea =)
Espero evoluir depressa para também poder assim ajudar quem precise ;)

Posto também as imagens dos componentes que uso... mas ainda tenho uma noitada pela frente para fazer mais uns testes ao sensor até saber mesmo postar a minha pergunta..se nem eu me entendo quanto mais voçês.. nao sei ainda formular a pergunta. Sei que não percebo o que o sensor faz (ou neste caso não faz)
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fweb.ist.utl.pt%2F%7Epedro.ganco%2FLR%2Fimgs%2FsensorIV.jpg&hash=58562224d401bfa432f88e29a95710e1550e5037)
Não usei esse foto diodo, mas foi o que me aconselharam na Dimofel, mas cedo percebi que o foto diodo "sente" tudo o que é radiação =P
[]obrigado


[EDIT] novidades

Fazendo o upload do codigo do tutorial o arduino envia sempre a frase "ICEBERG!" para o PC
Para tentar perceber porquê, simplifiquei o meu circuito para algo mais simples e ver o output desta vez:

Código: [Seleccione]
#include <MsTimer2.h>

static boolean output = HIGH;
int val = 0;

void setup(){
  pinMode(12, OUTPUT);
  Serial.begin(9600);
  MsTimer2::set(5, flash);   // Intrrupções de 5 em 5 ms no LED IV
  MsTimer2::start();
}

void loop(){     // Unica diferença do codigo original
    Serial.println(analogRead(0));     // Envia valores lidos no pin analogico 0
}

void flash() {
  digitalWrite(12, output);
  output = !output;
}

Codigo cores cabos:
Preto- GND
Vermelho- 5V
Amarelo- Pin analogico 0
Verde- GND
Azul- Pin digital 12
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fweb.ist.utl.pt%2Fpedro.ganco%2FLR%2Fimgs%2FsensorIV2.jpg&hash=405a904f6d83122c4d850a1631dba8a584591ae7)(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fweb.ist.utl.pt%2Fpedro.ganco%2FLR%2Fimgs%2FsensorIV3.jpg&hash=5a0bdd9b55dec6481f418c53a3fe8c0c2cff6863)

---------------------------------(no início...)---------------------------------
Sensor IV:
Leg1: OUT (pin analogico 0)
Leg2: GND
Leg3: 5V

LED IV:
pin digital 12 (com frequência de 5ms tal como o código original, usando o timer)
usei um switch para so ligar o LED IV quando quisesse, para ver alterações no sensor


RESULTADOS do Serial Monitor:
Com LED IV desligado o valor lido é de 1023
Com LED IV ligado o valor lido continua constante a 1023
Daí ter concluído que o output do sensor deveria ser a leg2 em vez da leg1, pois não reagia ao LED IV

----------------------------(Mudando a leg1 com a leg2)----------------------------------------
Sensor IV:
Leg1: GND
Leg2: OUT (pin analogico 0)
Leg3: 5V

LED IV:
igual ao anterior

RESULTADOS do Serial Monitor:
Com LED IV desligado o valor lido é de 190
Com LED IV ligado os valores lidos vão crescendo a um ritmo certo começando por variar entre [193 e 196], [196 e 199], [199 e 202] ...sempre a crecer sequencialmente o limite do intervalo.
Após desligar o LED IV o valor lido estabiliza novamente desta vez num valor mais alto que o 190 inicial
Não me serve de muito, mas confirma (penso eu) a minha teoria de a leg2 ser a leg do sinal

---------------------------------------(fazendo asneira da grossa lol)---------------------------------------
Sensor IV:
Leg1: OUT (pin analogico 0)
Leg2: 5V   (uups!) :o
Leg3: GND (uups!) :o


RESULTADO:
Por engano troquei na bread board a leg2 com a leg3 do sensor IV, o resultado, não cheirou nada bem!!! em segundos percebo que algo de errado se passa, pois começo a sentir um cheiro a queimado!!!!
Aqui sim fiquei preocupado! desliguei de imediato a USB do arduino, mas menos aflito "vejo" que o cheiro não vem da placa mas sim do sensor que estava quente!
Depois de alguns testes os resultados do sensor continuam iguais, penso que não tive tempo de o danificar   =)
------------------//----------------------

E agora finalmente a minha questão: o que se passa com este sensor?  ???
Os outputs gerados fazem sentido?
Com variações de apenas algumas unidade não consigo aproveitar o sensor IV para sensor de proximidade  =(
Vai ser o tubo feito com a caneta preta que vai ajudar na leitura de IV's?

Desde já muito obrigado ;)
quack
Eu fui na conversa do pessoal da Dimofel e comprei o fotodiodo e não funciona por nada.
Agora já sei o que devo de comprar, obrigado a todos.
Excelente post.
 

Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: NooBot em 19 de Janeiro de 2010, 21:45
agora falta fundir isto ao smalluino e tchanan!!

hehe  ;D

cumps
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Higarian em 21 de Março de 2010, 18:36
Ola experimentei montar o sensor de proximidade de infravermelhos, mas continua-me a dar sempre ICEBERG e não me detecta nada, deixo aqui uma fotografia do circuito montado e agradecia sugestões de como por isto a funcionar.
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fimg168.imageshack.us%2Fimg168%2F7762%2Fimg7381.jpg&hash=e12c74fe65eb9e73ce2654069a56f78c22591723) (http://img168.imageshack.us/i/img7381.jpg/)
Aquele led IR é igual ao que esta dentro do canudo preto na breadboard
(https://lusorobotica.com/proxy.php?request=http%3A%2F%2Fimg229.imageshack.us%2Fimg229%2F7303%2Fimg7386z.jpg&hash=96d3dc507ed9475657662f3d03934c71b8c3b190) (http://img229.imageshack.us/i/img7386z.jpg/)
Este é o transístor que estou a usar
Deixo aqui a datasheet do receptor IR o modelo é tsop1736 http://www.datasheetcatalog.org/datasheets/208/301092_DS.pdf (http://www.datasheetcatalog.org/datasheets/208/301092_DS.pdf)
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: tr3s em 22 de Março de 2010, 23:32
Higarian, estou a ver que usas o outro Receptor. Já fizeste as alterações necessárias no código para usares esse?

Citar
Estes vão ser os que vocês vão encontrar certamente, mas eles funcionam de maneira diferente. O Maior coloca "0 / LOW" em "out" enquanto não detecta infravermelhos mas assim que os detecta coloca "1 / HIGH". O mais Pequeno funciona ao contrário. Decidi usar o mais pequeno pois é o que se adaptava melhor
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Higarian em 23 de Março de 2010, 23:09
Pode-me dar uma uma ajuda no que tenho de alterar, é que já andei a tentar alterar mas a minha falta de experiência  com a linguagem de programação não ajuda e continua a não funcionar.

Edit: acho que já esta a funcionar!
No entanto as vezes aparece um "detect" quando não tem nada a frente, alguma sugestão para resolver isto?

Código: [Seleccione]
#include <MsTimer2.h>
#define irx 2   // Sensor IR no pin digital 2

static boolean output = HIGH;  // Variável para defenir o estado do LED de infravermelhos, é estática para ser usada durante a interrupção



void setup(){
  pinMode(irx, INPUT);     // Pin onde está o LED infravermelhos é pin output
  Serial.begin(9600);      // Iniciar comunicação Serial com o computador...
  MsTimer2::set(5, flash); // Defenir intrrupções de 5 em 5 ms e durante a interrupção é chamada a função flash
  MsTimer2::start();       // Iniciar interrupções
}

void loop() {
  while(digitalRead(irx)) ;   // Enquanto não houver nada no Sensor não sai daqui, o sensor coloca 1 quando n detecta nada e passa a 0 qd detecta algo
  if (output == HIGH) {
  Serial.println("ICEBERG!");
  } else {  // Oi.. Apanhou qualquer coisa... OH NÂO É UM ICEBERG... OH GOD, THE PAIN, CAN YOU FEEL THE PAIN?
 Serial.println("detect!");
  }
  // MAYDAY MAYDAY!
  // - Alô diz iz German Cost Guard, can we help you? (Sotaque alemão)
  // YES, YES! We're SINKING!
  // - Okay so what are you sinking (thinking) about? (ahha XD)
}

void flash() {               // Função chamda durante a interrupção
  digitalWrite(12, output);  // Anceder ou apagar o LED IR
  output = !output;          // Alterar o output...
}
 
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Rebel em 24 de Março de 2010, 09:42
O que pode acontecer é que passe alguma luz IR do emissor para o receptor directamente. A mim aconteceu-me isso e tive que fazer um "U" à volta do receptor para evitar isso. Se quiseres ver o sensor todo maluco experimenta por ao pé de um televisor LCD (pelos vistos alguns emitem luz IR). Para evitar falsas detecções podes fazer a leitura 3 ou 4 vezes e só avisar "ICEBERG!" se forem todas HIGH.
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: andalves em 27 de Abril de 2010, 16:45
Boas pessoal.. Comecei agora a descobrir os poderes do Arduino e com ele toda a electrónica.. estou fascinado diga-se..

Terei de fazer um projecto para a faculdade e pensei numa instalação, onde vou utlilzar sensores que, posteriormente, irão fazer com que toque uma coluna ou apareça uma imagem..

Contudo, andei a ver e estava a pensar em investir nuns sensores de IR mas este "post" quase revolucionou a minha vida! queria apenas saber é qual será a distância máxima que poderei alcançar com este sensor caseiro..

Julgo que ao longo deste meu projecto irei ter muitas dúvidas, pois sou memso iniciante tanto em programação como neste mundo da electrónica. Estou a pensar em expo-las aqui, tal como o resultado final..

Cumprimentos

cumps
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Jay_OR em 17 de Julho de 2010, 13:12
Hoje fui comprar os componentes para montar o meu sensor, acontece que o meu receptor apenas tem 2 patas. =S
Vou tentar na mesma assim, e ver se funciona, ou então terei de ir novamente a loja. =|

Entretanto encontrei um plagio do teu trabalho, e comentei negativamente, esta disponível em:
http://arduinobrasil.blogspot.com/2010/01/construir-um-sensor-de-proximidade-por.html (http://arduinobrasil.blogspot.com/2010/01/construir-um-sensor-de-proximidade-por.html)

O tipo nem se deu ao trabalho de retirar a piada no meio do código. --'
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: amando96 em 17 de Julho de 2010, 13:20
Se só tem duas patas talvez seja daqueles que muda a resistencia comforme a luz IR que recebe, assim tens um sensor analógico, poderás medir distancias, em vez de só sbaer se há ou não algo na frente.
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Jay_OR em 17 de Julho de 2010, 13:33
Reparei em fotos anteriores, e o meu parece ser igual ao "Foto Díodo IR SM/M BPW40".

Ainda não consegui testar porque estou a ter um erro ao compilar:
22: error: MsTimer2.h: No such file or directory In function 'void setup()':
Bad error line: -4

Retirei a biblioteca directamente do site do Arduino.cc visto o anexo que esta aqui no forum esta corrompido.
http://www.arduino.cc/playground/uploads/Main/MsTimer2.zip (http://www.arduino.cc/playground/uploads/Main/MsTimer2.zip)

Será que não estou a colocar na pasta correcta, os ficheiros da biblioteca?
..\arduino-0018\hardware\libraries\MsTimer2\MsTimer2.cpp
..\arduino-0018\hardware\libraries\MsTimer2\MsTimer2.h

EDIT: Confirmo a referencia do Foto Díodo, vi agora na factura e tem exactamente a mesma.
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Jay_OR em 22 de Agosto de 2010, 23:22
Acabei por comprar um Receptor IR novo, para substituir o Foto Díodo, com a referencia V69-648-TSOP1736.

Mas ainda não consegui resolver o problema do MsTimer2.h, será que me podiam dar a localização exacta que eu deverei colocar os ficheiros, ou a estrutura de directórios?
Estou a usar o compilador 0018.

EDIT: Já descobri em que pasta colocar, usando linux, em windows deve ser parecido:
../arduino-0018/hardware/arduino/cores/arduino

Problema, deve passar alguma luz IR e esta sempre a aparecer ICEBERG, desliguei o LED IR e deixa de aparecer, por isso deve ser esse o problema.
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: anunakin em 02 de Setembro de 2010, 15:56
Desculpa ai galera, fiz o sensor atuar como sensor de distâncias e nem postei as imagens nem nada... bom tudo ficou muito legal com LCD, comunicação por porta serial, calculo de distancias e até um artigo padrão IEEE.org... vou postar estes dias... e claro com as devidas referências ao LusoRobótica!  ;)
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: Cynary em 16 de Setembro de 2010, 00:18
Depois de algum tempo a enfrentar um problema já relatado de sobreaquecimento (novamente, a solução foi montar tudo de novo sem saber o que se fez diferente o.O), consegui pôr isto a funcionar ...
No entanto, estou com algumas dúvidas acerca do seu funcionamento:
Porque é que precisamos mesmo do transistor?
O que eu fiz foi um pouco diferente ... basicamente, pus o LED a piscar a 33kHz (que é um pouco diferente de desligar e ligar de 5 em 5 ms xD), e o que acontece é o seguinte: ao apontar o LED para o sensor, ele sente alguma coisa durante algum tempo (tempo suficiente para ser visível -- o meu código apaga o LED 13 quando ele vê alguma coisa, e acende-o caso contrário), mas depois estabiliza. Afinal como funcionam os LEDs dos comandos? (eles estão constantemente a piscar a 33kHz ou ligam e desligam essa frequência?). Se mexer com o LED, ele volta a detectar por algum tempo (será que isto pode ser usado como sensor de movimento dessa forma?). Quando uso um comando, noto um rápido piscar do LED, constante.
No meu caso, o resultado foi igual tanto com transístor como sem, mas pode ter a ver com o que realmente fiz.
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: egito em 08 de Janeiro de 2011, 18:41
Uma dúvida isto pode servir como Detector:
Isto pode servir como Emissor.
As imagens estão anexadas em baixo
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: LoneWolf em 14 de Setembro de 2011, 16:15
           Boas, eu tentei fazer o sensor que é explicado neste tópico, mas a coisa não esta a correr la muito bem, já refiz o circuito algumas vezes e o resultado é o mesmo, o receptor aquece bastante assim que senti o cheiro tradicional de algo a querer torrar desliguei logo o arduino, já segui as dicas aqui expostas mas sem resultado, ate que resolvi ligar também uma resistência ( resistor ) de 220 e assim já deixou de aquecer, ate já me interrogo se o pin's do receptor é aquele como exemplificado no post ( o mais pequeno é o que tenho, retirados do I-Droid  ;) afinal serve para alguma coisa  ;D ;D ;D ). Para alem disto no monitor do IDE do arduino a mensagem esta sempre a aparecer, como se tivesse a detectar algo, mesmo que não tenha nada ligado no arduino isto é normal?
           Ideias do que pode estar a acontecer?
           Também tenho aqui Led's IR (emissor/receptor) mas estes tem só 2 terminais e ainda não encontrei como os ligar, se soberem de algum link fico agradecido.

Obrigado e  boa continuação  ;)   
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: LoneWolf em 14 de Setembro de 2011, 23:19
Boas noites, continuo a ter problemas em fazer o sensor e precisava da vossa ajuda, se poder ser claro, então as duvidas são:

1- tenho o led receptor de 3 terminais 1º pin- sinal, 2º pin- Gnd e o 3º pin- Vin igual aos da foto do post que esta na 1ª pagina se ligar os 5v vindos do arduino o led começa a aquecer muito e o arduido entra em "colapso", tentei encontra o datasheet do led e não encontro nada  :(
Alguma ideia de como o ligar correctamente?

2- corri este código, que esta em outro post, para ver que valores recebia mesmo sem led emissor....
Citar
#define sensorIR 0

void setup(){

  Serial.begin(9600); //Para podermos ver o valor na consola

}

void loop(){

  Serial.println(analogRead(sensorIR));

  delay(50);

}
 
 e os valores que me da são zeros, uns, dois e três dependendo da resistencia aplicada, neste caso 2k?, se meter 30? tenho valores 14, 15, 16 mesmo que tape o receptor com um tubo de plástico preto, se tirar o receptor da valores a volta dos 230 e os 300.
Alguma sugestão? 

Não estou a conseguir compreender os valores recebido  :( alguém pode acender uma luz desse lado?  ;D para ver se vejo o caminho.

Abraços
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: LoneWolf em 15 de Setembro de 2011, 02:57
Boas, problema resolvido, os receptores que tenho tem as ligações diferentes 1- sinal, 2- 3V~5V e a 3- GND.

Obrigado e abraços
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: LoneWolf em 16 de Setembro de 2011, 21:37
Boas desculpem estar a incomodar mas estou com dificuldades em ler um datasheet ou melhor estou a achar um pouco demais o input do led se poderem dar uma vista de olhos e me confirmar se realmente é verdade que este led para ligar precisa de 30v? Se poderem me confirmar isso fico agradecido e desde já o meu obrigado e se não for pedir muito verem também o do receptor que pelos vistos precisa de 5v se assim for posso ligar directamente aos 5v do arduino sem resistencia?

Link dos datasheets

Receptor - http://www.sonigate.com/uploads/product_pdfs/13821-pt-1f3f57489ecea9df5050b67edfcaeca3.pdf (http://www.sonigate.com/uploads/product_pdfs/13821-pt-1f3f57489ecea9df5050b67edfcaeca3.pdf)
Emissor - http://www.sonigate.com/uploads/product_pdfs/13822-pt-0e68918e113b76bdc3dea9c31d6e950d.pdf (http://www.sonigate.com/uploads/product_pdfs/13822-pt-0e68918e113b76bdc3dea9c31d6e950d.pdf)

A minha duvida esta porque depois de muito tentar por esses led a funcionar lembre-me se o led mais escuro podia ser o emissor, apesar de ser negro, e não é que era mas tem um brilho fraco dai a minha pergunta sobre este e quanto ao led receptor e neste caso de cor transparente, suposto emissor não estava a consegir que ele emitisse luz IR e se o ligar como receptor também não estou a conseguir que ele receba nada, isto é só por teimosia de por a funcionar já que tinha posto os outros de 3 patas a funcionar, se poderem ajudar...

Obrigado e abraços.
PS- Sei que pode ser umas perguntas estúpidas, mas quando se esta a aprender penso que seja normal, deve de ter acontecido com todos os iniciantes.
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: anarocha em 10 de Julho de 2012, 16:46
Será que podias informar acerca da referência do receptor? obrigada
Título: Re: Construir um Sensor de próximidade de Infravermelhos por 0€
Enviado por: LoneWolf em 10 de Julho de 2012, 17:08
Boas, antes de mais bem-vinda Ana ;) se fala do receptor que esta um pouco acima é este BPW40 como esta indicado no datasheet