コンテンツにスキップ

#113 IR Receiver Brick

Overview

フォトトランジスタを使った赤外線受信Brickです。

I/Oピンから赤外線受信のON/OFFを取得することができます。

接続

GPIOコネクタに接続します。

Raspberry PI

Support

Arduino RaspberryPI IchigoJam

Parts Specification

Document
L-51ROPT1D1
2SC1815L-Y

回路図

Sample Code

GPIO5コネクタに赤外線受信Brick、GPIO4コネクタにLED Brickを接続し、赤外線を受信したらLEDを発光させます。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
# coding: utf-8
import RPi.GPIO as GPIO

LED_PIN = 4
IR_RECEIVER_PIN = 5

GPIO.setmode(GPIO.BCM)
GPIO.setup(LED_PIN, GPIO.OUT)
GPIO.setup(IR_RECEIVER_PIN, GPIO.IN)

try:
    while True:
        if(GPIO.input(IR_RECEIVER_PIN)):
            GPIO.output(LED_PIN, True)
        else:
            GPIO.output(LED_PIN, False)

except KeyboardInterrupt:
    GPIO.cleanup()

Sample Code

GPIO4コネクタにLED、GPIO5コネクタに赤外線受信Brick、GPIO6コネクタに赤外線LEDBrickを接続 赤外線を受信したらLEDを発光しコールバック関数を呼び、回転数を標準出力に出力する。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import RPi.GPIO as GPIO
import time

i = 0
def callBackTest(channel):
    if GPIO.input(IR_RECEIVER_PIN):
        GPIO.output(LED_PIN, True)
        GPIO.output(LED_PIN, False)
        global i
        i += 1
        print i

LED_PIN = 4
IR_RECEIVER_PIN = 5
IR_LED_PIN = 6

GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(LED_PIN, GPIO.OUT)
GPIO.setup(IR_LED_PIN, GPIO.OUT)
GPIO.setup(IR_RECEIVER_PIN, GPIO.IN)

GPIO.setup(IR_RECEIVER_PIN, GPIO.IN, GPIO.PUD_UP)
GPIO.add_event_detect(IR_RECEIVER_PIN, GPIO.RISING, callback=callBackTest, bouncetime=300)

try:
    while(True):
        GPIO.output(IR_LED_PIN, True)
        time.sleep(0.000001)

except KeyboardInterrupt:
    GPIO.output(IR_LED_PIN, False)
    GPIO.cleanup()

構成Parts

  • 赤外線フォトトランジスタ

GitHub

  • https://github.com/FaBoPlatform/FaBo/tree/master/113_ir_receive