Hello,
J'ai fais une barrière infrarouge avec une diode SFH4546 ( SFH4546 et un Module IR 38 kHz TSOP31238 (TSOP31238.
Le montage est en photo en PJ
Dans mon moniteur série, je suis toujours en Coupure. Même lorsque j'aligne parfaitement l'émetteur et le récepteur.
Le code:
/*
Barrière infrarouge avec Arduino
LED IR sur D3 (géré par librairie IRremote) + TSOP32138 -> D2
La LED13 de l'Arduino s'allume en cas de coupure du faisceau lumineux
*/
#include <IRremote.h>
#define CAPTEUR 2 // récepteur IR -> D2
#define LED_STATUT 13 // LED -> D13
IRsend irsend; // déclaration de l'objet émetteur (pin D3 obligatoire)
void setup()
{
pinMode(CAPTEUR, INPUT);
pinMode(LED_STATUT, OUTPUT);
irsend.enableIROut(38); // crée une sortie modulée à 38KHz
Serial.begin(115200);
}
void loop()
{
irsend.mark(0); // envoi du signal pour une durée illimitée
boolean mesure1 = digitalRead(CAPTEUR); // première mesure
delay(5); // délai
boolean mesure2 = digitalRead(CAPTEUR); // seconde mesure
boolean etat = mesure1 * mesure2; // comparaison
if (etat == HIGH) // si les deux lectures voient une coupure
{
digitalWrite(LED_STATUT, HIGH);
Serial.println("Coupure !");
}
else // sinon
{
digitalWrite(LED_STATUT, LOW);
Serial.println("----------OK----------");
}
delay(5);
}
Valeur de la résistance pour la diode: 68 Ohms
Valeur de la résistance coté récepteur: 47 Ohms
Valeur du condensateur: 0,1 uF
iToine:
Hello,
J'ai fais une barrière infrarouge avec une diode SFH4546 ( SFH4546 et un Module IR 38 kHz TSOP31238 (TSOP31238.
Le montage est en photo en PJ
Dans mon moniteur série, je suis toujours en Coupure. Même lorsque j'aligne parfaitement l'émetteur et le récepteur.
Le code:
/*
Barrière infrarouge avec Arduino
LED IR sur D3 (géré par librairie IRremote) + TSOP32138 -> D2
La LED13 de l'Arduino s'allume en cas de coupure du faisceau lumineux
*/
#include <IRremote.h>
#define CAPTEUR 2 // récepteur IR -> D2 #define LED_STATUT 13 // LED -> D13
IRsend irsend; // déclaration de l'objet émetteur (pin D3 obligatoire)
Valeur de la résistance pour la diode: 68 Ohms
Valeur de la résistance coté récepteur: 47 Ohms
Valeur du condensateur: 0,1 uF
Quelqu'un a une idée?
Merci!
Antoine
Bonjour
tel quel le code d'émission semble ne rien envoyer de "cohérent" et détectable par le récepteur TSOP
quelle lib et version de lib IR utilisée ?
un signal ir est il détectable au niveau de la led IR ( visible avec un capteur de smartphone ou APN) ?
irsend.mark(0); // envoi du signal pour une durée illimitée
Bah justement je n'arrive pas à voir avec le smartphone! Et je n'arrive pas à retrouver de code simple avec un montage simple pour visualiser si ma diode fonctionne. Ce serait déjà un début!
Le condensateur devrait être positionné coté récepteur et non coté alimentation.
Mais je ne pense pas que ce soit la cause du problème.
Certains récepteurs ne fonctionnent pas correctement si l'émission est IR continue (modulée à 38kHz bien sur).
Personnellement je ne suis jamais arrivé à faire une barrière IR avec un TSOP4838
Essaies le programme suivant en mettant l'émetteur et le récepteur en face et regarde si ça varie
/*
Barrière infrarouge avec Arduino
LED IR sur D3 (géré par librairie IRremote) + TSOP32138 -> D2
La LED13 de l'Arduino s'allume en cas de coupure du faisceau lumineux
*/
#include <IRremote.h>
#define CAPTEUR 2 // récepteur IR -> D2
#define LED_STATUT 13 // LED -> D13
IRsend irsend; // déclaration de l'objet émetteur (pin D3 obligatoire)
void setup()
{
pinMode(CAPTEUR, INPUT);
pinMode(LED_STATUT, OUTPUT);
irsend.enableIROut(38); // crée une sortie modulée à 38KHz
Serial.begin(115200);
}
void loop()
{
static bool bSend = true;
if (bSend)
irsend.space(0);
else
irsend.mark(0);
bSend = !bSend;
delay(5);
bool etat = digitalRead(CAPTEUR);
if (etat == HIGH) // si les deux lectures voient une coupure
{
digitalWrite(LED_STATUT, HIGH);
Serial.println("Coupure !");
}
else // sinon
{
digitalWrite(LED_STATUT, LOW);
Serial.println("----------OK----------");
}
delay(100);
}
Je vais refaire le câblage au cas où...
Juste au cas où, je peux vérifier comment que ma diode fonctionne bien?
J'avais lu que en faisant un film avec un smartphone on voyait mais je ne vois rien du tout en filmant!
Normalement quand tu regardes la led avec ton smartphone en mode photo tu dois la voir briller.
Il y a certains smartphones avec un filtre infrarouge plus efficace et on ne voit plus les les infrarouges.
Pour voir si on smartphone voit les emissions infrarouges essaies de regarder la led d'une télécommande.
Il doit y avoir un filtre IR sur l'appareil photo, je ne vois rien du tout ;(
Je suis toujours sur COUPURE constamment. Du coup je me dis que peut-être la diode ne fonctionne pas, et dans ce cas le détecteur ne recevant rien pense à une coupure?
Si tu devrais voir une coupure, cest pour ca que je t'ai demande si le recepteur etait bien câblé.
Attention certains tsop ont Gnd en pin 2 et vcc en 3 et d'autres vcc en 2 et gnd en 3.
Hummmmm, si ca se trouve c'est une histoire de pin 2 et 3 inversé!
Je risque pas de faire tout sauter en inversant?
J'ai toujours peur de griller l'ordinateur, c'est con comme crainte...
Apparement pour le tsop31238 c'est un autre câblage. Tu es sur du type de ton récepteur ?
Si tu le branches à l'envers tu ne risques pas de détruire l'ordinateur mais tu peux détruire le composant.
Oui c'est bien écrit TSOP31238 sur le dessus. Si ca se trouve je l'ai grillé en le branchant...
Du coup, par rapport à mon schéma original, faudrait brancher comment?
Oui c'est bien 1 = GND, 2 = VS, 3 = OUT (en partant de gauche à droite bien sur).
Et c'est bien relié, j'ai bien mon 1 qui va sur la masse, mon 2 en +5V, et mon 3 qui va en digital 2.
Comme tu disais "Attention certains tsop ont Gnd en pin 2 et vcc en 3 et d'autres vcc en 2 et gnd en 3." je me perds!
J'ai tout démonté / remonté, et j'ai toujours le coupure en permanence...
As tu un analyseur logique pour vérifier les signaux de commande de la diode émettrice ?
Analyseur logique clone de Saleae :environ 5 €.
Si oui : utilise une sortie annexe pour générer un signal de synchronisation juste avant l'envoi de la salve à 38 kHz.
Il suffit de faire passer la sortie synchro à l'état haut puis immédiatement après à l'état bas, compte tenu de la vitesse d'exécution de digitalWrite on obtient un beau signal carré.
Si non investi entre 5 et 10 €, cet apareil te sera super utile pour vérifier ce qui se passe sur le matériel.