フォトリフレクタの使い方 [Arduino]
フォトリフレクタは「赤外線LED」と「フォトトランジスタ」の二つがセットになった電子部品です。主に位置を検出する「ライントレーカー」などに使用されています。
仕組みとしては、写真の右側にある透明の赤外線LEDから放出された光を「紙や壁」などに反射させて黒色のフォトトランジスタで受光します。その受光値によって出力電流が変化します。(検出距離は1mm~10mm)
フォトトランジスタの真上(1mmから10mm以内)に「黒色」の画用紙などを置くと、光が吸収されて赤外線LEDから放出された光はフォトトランジスタに届きません。
一方、「白色」の画用紙などを真上に置くと、光が反射されてフォトトランジスタに届き、ArduinoのADコンバータであるanalogRead()関数で取得する値が低くなります。
アクション | analogRead()関数の値 |
---|---|
黒色の画用紙 | 光を反射しないのでおよそ1000以上になる。 |
白色の画用紙 | 光を反射するのでおよそ1000未満になる。 |
障害物なし | 光を反射しないのでおよそ1000以上になる。 |
※環境によって値は異なりますので、各自の環境に合わせてください。
使用部品・材料
総額で約320円です。(Arduino本体の値段を除く)
部品/材料 | 値段 | 備考 |
---|---|---|
ブレッドボード | ¥270 | 秋月電子の通販コード(P-00315) |
フォトリフレクタ(反射タイプ) LBR-127HLD | ¥50 | 秋月電子の通販コード(P-04500) |
カーボン抵抗器 | 数円 | 1kΩ(1個)、220Ω(1個)を使用 |
画用紙 | 任意 | 100円ショップ(黒色と白色) |
配線図
フォトリフレクタの設置方法
1 | アノード(長いリード) |
---|---|
2 | カソード |
3 | エミッター(長いリード) |
4 | コレクター |
スケッチ(プログラム)
シリアルモニターに「受光値」を表示します。
void setup() { Serial.begin(9600); } void loop() { int val = analogRead(A0); Serial.println(val); }
抵抗値の計算
フォトリフレクタ(LBR-127HLD)に使用するカーボン抵抗器の算出です。
[LBR-127HLDのデータシート]
※次の2枚の図は公式データシート(lbr127hld.pdf)から引用しています。
この図から抵抗はRDとRLに設置します。RD(Dynamic resistance)は動作抵抗。RL(Load resistance)は負荷抵抗です。
こちらはRL(Load resistance)の表です。
RD - (1)のアノード
Arduinoの電源5V(V)。フォトリフレクタのデータシートに記載されている順方向電圧(Forward voltage/VF)は1.5V。電流を20mA(IF)にするとオームの法則で175Ωになります。
※今回は多めに220Ωを使用しています。
RL - (4)のコントローラー
2枚目の図を見る限り「1kΩ」が基準となります。
掲示板
ArduinoやRaspberry Piなどの電子工作の掲示板を作成しました。質問やわからない事は電子工作 (Arduino・ラズパイ等)でユーザー同士で情報を共有して下さい。
関連記事
前の記事: | 照度センサーの使い方 [Arduino] |
次の記事: | 温度センサーの使い方 [Arduino] |