
communication infrarouge
Débuté par
Guest_elecrobot_*
, avril 13 2011 07:49
6 réponses à ce sujet
#1
Guest_elecrobot_*
Posté 13 avril 2011 - 07:49
Bonjour, je voudrais savoir comment recevoir une serie de bits envoyée par un emetteur
exemple: envoie de la valeur 34(c'est un exemple)soit 100010 par l'emetteur infrarouge, a une certaine fréquence pour eviter les interférences -> reception et decryptage de cette valeur par le recepteur.
En fait je bloque sur la reception et je vois pas comment recevoir cette valeur pour etre transferée dans un arduino.
Si vous n'avez pas compris j'essayerais de mieux réexpliquer.
A+ elecrobot
exemple: envoie de la valeur 34(c'est un exemple)soit 100010 par l'emetteur infrarouge, a une certaine fréquence pour eviter les interférences -> reception et decryptage de cette valeur par le recepteur.
En fait je bloque sur la reception et je vois pas comment recevoir cette valeur pour etre transferée dans un arduino.
Si vous n'avez pas compris j'essayerais de mieux réexpliquer.
A+ elecrobot
#3
Guest_elecrobot_*
Posté 14 avril 2011 - 08:32
Voila j'ai fait un schéma(très très simplifié):
ir.bmp 352,34 Ko
165 téléchargement(s)
Le composant qui est relié au pic de droite est un composant qui renvoie un niveau haut s'il y a une certaine fréquence en entrée et un niveau bas en l'absence de signal.
Le plus dur est surtout la partie décodage des signaux, j'ai deja commencer a regarder le codage philips RC5 mais c'est assez compliqué...

Le composant qui est relié au pic de droite est un composant qui renvoie un niveau haut s'il y a une certaine fréquence en entrée et un niveau bas en l'absence de signal.
Le plus dur est surtout la partie décodage des signaux, j'ai deja commencer a regarder le codage philips RC5 mais c'est assez compliqué...
#4
Posté 14 avril 2011 - 09:25
D'accord, donc tu utilises les Pics comme interface IR qui renvoie ensuite le signal "décodé" dans l'Arduino ?
De toute manière je ne vais pas pouvoir te renseigner à partir du moment où il y-a des pics.
J’espère qu'une bonne âme du forum pourra t'aider dans ta galère !
De toute manière je ne vais pas pouvoir te renseigner à partir du moment où il y-a des pics.
J’espère qu'une bonne âme du forum pourra t'aider dans ta galère !
#6
Posté 16 juin 2011 - 10:12
Voila j'ai fait un schéma(très très simplifié):
ir.bmp 352,34 Ko 165 téléchargement(s)
Le composant qui est relié au pic de droite est un composant qui renvoie un niveau haut s'il y a une certaine fréquence en entrée et un niveau bas en l'absence de signal.
Le plus dur est surtout la partie décodage des signaux, j'ai deja commencer a regarder le codage philips RC5 mais c'est assez compliqué...
- ok premierement, met pas ton recepteur sur une pin analogue mais plutot sur une pin interrupt. RB0/INT (pin 6) Tu devrais toujours recevoir par interrupt car tu sais jamais quand tu vas recevoir une commande. (le but des interrupts)
- L'autre chose tres important, c'est quand tu commences à faire de la communication entre dispositif, tu commences toujours avec des fils! Lorsque tout marche avec un fil, tu viens ajouter ton systeme d'interface infrarouge.
Si tu fais pas sa, tu va perdre du temps pour le debuggage (est ce probleme hardware, software, LED, recepteur, lumiere ambiante, bruit, etc) - Enuite, un facon simple c'est d'utiliser le port serie pour transmettre tes données. le TX sort sur la LED et l'autre pic le receiver est sur le RX. Le code pour le port serie c'est beaucoup plus facile que faire ta routine faite maison.
par la suite, ton recepteur est 38Khz, donc tu doit t'assurer que la frequence que tu emets soit dans le coin de 38khz, sinon marche pas. - Je te recommande un transistor connecter sur ta LED. Un 2N3904 ou 2N2222 en configuration bien simple de switch fera l'affaire.
- Tantot j'ai parler d'INT, c'est quand tu code ta routine, tu te crée un matrice des commande que tu veux envoyer char ( Command[5] = {12,34,56,78}; ) qui elle est bien definie, le premier bit c'est bit d'identification et le dernier un CRC ou paritée par exemple. La ta routine pour emetre, fais simplement prendre ta matrice case par case, la decomposer en binaire et faire flasher la LED avec un timming de 38Khz.
- CCP1 sur le PIC c'est pour faire du PWM mais aussi pour capturer des signaux. (Capture Compare)
have fun
Jerome
Jérôme Demers
http://www.JeromeDemers.com
Ma trotinette électrique de 1480W très puissante!
http://www.instructables.com/member/robomaniac/
http://www.JeromeDemers.com
Ma trotinette électrique de 1480W très puissante!
http://www.instructables.com/member/robomaniac/
#7
Posté 17 juin 2011 - 08:47
J'ai vue que c'est un Arduino que tu veux utiliser. Regarde ceci:
http://www.sparkfun.com/products/10280
Le code:
http://www.sparkfun.com/datasheets/Components/General/Cheapo_IR_Control.pde
J'ai tester ce code et tout marche bien. Il faut maintenant crée une telecomande
http://www.arduino.cc/playground/Code/InfraredReceivers
Tu peux enregistrer les signaux et par la suite trouver la facon de les transmettre.
ya plein de code sur le web pour crée une telecommande de télé, same thing.
http://www.sparkfun.com/products/10280
Le code:
http://www.sparkfun.com/datasheets/Components/General/Cheapo_IR_Control.pde
J'ai tester ce code et tout marche bien. Il faut maintenant crée une telecomande
http://www.arduino.cc/playground/Code/InfraredReceivers
Tu peux enregistrer les signaux et par la suite trouver la facon de les transmettre.
ya plein de code sur le web pour crée une telecommande de télé, same thing.
Jérôme Demers
http://www.JeromeDemers.com
Ma trotinette électrique de 1480W très puissante!
http://www.instructables.com/member/robomaniac/
http://www.JeromeDemers.com
Ma trotinette électrique de 1480W très puissante!
http://www.instructables.com/member/robomaniac/
Répondre à ce sujet

1 utilisateur(s) li(sen)t ce sujet
0 members, 1 guests, 0 anonymous users