Communication IR : Différence entre versions
(Page créée avec « ===== Matériel ===== * 2 Arduino Uno * LED IR émittrice (exemple TSAL 6200) * KIT IR Réception (exemple SGK0002) * 2 résistances de 190 ohm (+/-) * APN avec déclenche... ») |
(Aucune différence)
|
Version du 15 décembre 2015 à 12:41
Sommaire
Matériel
- 2 Arduino Uno
- LED IR émittrice (exemple TSAL 6200)
- KIT IR Réception (exemple SGK0002)
- 2 résistances de 190 ohm (+/-)
- APN avec déclenchement IR (Nikon D80 par exemple)
Principe
L'arduino couplé avec la LED IR va émettre en direction de l'arduino couplé avec le kit IR. Les exemples de code se basent sur la librairie IR REMOTE Cette librairie permet d’émettre et de recevoir via l’infrarouge; elle permet de gérer les protocoles NEC, Sony, Philips RC5/RC6 et le traitement de données brutes. La librairie comporte 2 fonctions essentielles, IRsend pour émettre un code et IRrecv pour recevoir un code. Article intéressant complémentaire : http://www.righto.com/2009/11/ir-bubbles-controlling-relay-with.html
Il est possible grâce à cette barrière IR de détecter qu'un objet la coupe par exemple et ainsi déclencher une action.
Montage
PARTIE RECEPTION
PARTIE EMISSION
Attention à bien utiliser le PIN 3 PWM
Programme
PARTIE RECEPTION
#include <IRremote.h>
int RECV_PIN = 11;
IRrecv irrecv(RECV_PIN);
decode_results results;
void setup()
{
Serial.begin(9600);
irrecv.enableIRIn(); // Start the receiver
}
void loop() {
if (irrecv.decode(&results)) {
Serial.println(results.value, HEX);
irrecv.resume(); // Receive the next value
}
}
PARTIE EMISSION
Comme déjà précisé, il et nécessaire d'utiliser le PIN 3 PWM, dixit la documentation de la librairie
#include <IRremote.h>
IRsend irsend;
void setup()
{
Serial.begin(9600);
}
void loop() {
for (int i = 0; i < 3; i++) {
irsend.sendSony(0xa90, 12); // Sony TV power code
delay(40);
}
}