Grove - 赤外線反射センサー
この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues

Grove - 赤外線反射センサーは、特定の範囲内で物体の存在を検出するために使用されます。このセンサーは、IR LEDとフォトセンサー(フォトトランジスタ)のペアで構成されています。IR LEDから放射される光は、センサーの前に置かれた物体によって反射され、その反射光をフォトセンサー(フォトトランジスタ)が検出します。白色(または明るい色)の表面は、黒色(または暗い色)の表面よりも多く反射します。
反射光が検出されると、SIGピンにデジタルLOW(またはバイナリ0)出力が生成されます。オンボードのLEDインジケーターも点灯します。反射光が検出されない場合や、物体がセンサーから遠すぎる場合、SIGピンの出力はデジタルHIGH(バイナリ1)のままです。この場合、オンボードのLEDインジケーターは消灯します。このセンサーの検出可能範囲は4~16mmです。モジュールには、フォトトランジスタの出力を増幅するためのRail-to-Railオペアンプが組み込まれています。また、アンプのゲイン、つまり検出感度を調整するためのポテンショメータが搭載されています。
このセンサーを使用することで、以下のような(ただしこれに限定されない)アプリケーションを構築できます:ライン追従ロボット、光学エンコーダ、および物体カウントアプリケーション。
この製品は非赤外線放射にもわずかに敏感であるため、フォトセンサーに強い光が当たると赤外線光の検出が妨害されることがあります。
バージョントラッカー
製品バージョン | 変更点 | リリース日 |
---|---|---|
v1.2以前のバージョン | 初期版 | 2012年6月 |
バージョン1.2(現行バージョン) | レイアウトの最適化 | 2016年4月 |
特徴
- Grove互換で使いやすい
- 高感度で信頼性が高い
- 小型設計
- 様々な用途に合わせて感度を調整可能
Groveモジュールの詳細については、Grove Systemを参照してください。
仕様
パラメータ | 値 |
---|---|
動作電圧(V) | 3.3–5V |
動作電流(mA) | 14.69–15.35 mA |
有効検出距離 | 4–15 mm |
応答時間 | 10 μs |
フォトトランジスタ:ピーク感度波長 | 800 nm |
IR LED:ピーク発光波長 | 940 nm |
反射型フォトセンサー | データシート |
出力オペアンプ | データシート |
重量 | 4 g |
対応プラットフォーム
Arduino | Raspberry Pi | |||
---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() |
上記で対応していると記載されているプラットフォームは、モジュールのソフトウェアまたは理論的な互換性を示しています。ほとんどの場合、Arduinoプラットフォーム向けのソフトウェアライブラリやコード例のみを提供しています。すべての可能なMCUプラットフォーム向けにソフトウェアライブラリやデモコードを提供することは不可能です。そのため、ユーザー自身でソフトウェアライブラリを作成する必要があります。
ハードウェア概要

- RPR220 反射型フォトセンサー - 高感度の反射型フォトセンサー。
- LMV358 - レール・ツー・レールのオペアンプ。
- LEDインジケーター - 受信した赤外線の強度が設定値を超えるとLEDが点灯します。
- 光感度調整用ポテンショメーター - フォトセンサーの光に対する感度を調整します。
はじめに
このモジュールを使用していくつかの基本的なアプリケーションを実装する方法を見てみましょう:
Arduinoで遊ぶ
ライン追従
このセンサーはロボットカーが黒いラインを追従するのを助けるために使用できます。
ハードウェア
- ステップ1. 以下の材料を準備してください:
Seeeduino V4.2 | Base Shield | Grove - Infrared Reflective Sensor | 白い紙と黒いペン |
---|---|---|---|
![]() | ![]() | ![]() | |
今すぐ購入 | 今すぐ購入 | 今すぐ購入 | 🙂 |
ステップ2. Groveケーブルを使用して、Grove - Infrared Reflective SensorをGrove-Base Shieldの任意のポートに接続します。このデモではD2を使用します。
ステップ3. このセンサーを白色(またはその他の明るい色)の紙の上12mmに配置します。
- ステップ4. ドライバーを使用してポテンショメーターを調整し、反射型フォトセンサーの感度を変更します。LEDインジケーターが点灯するまで調整してください。時計回りに回すと、反射型フォトセンサーが光に対してより敏感になります。
小さなポテンショメーターを調整する際には適切なドライバーを使用してください。強い圧力をかけたり頻繁に調整すると、ポテンショメーターのワイパーが損傷する可能性があります。
- ステップ5. 垂直距離を維持しながら、センサーを黒いラインに向かって水平に移動させます。インジケーターLEDは黒いラインの上で消灯するはずです。まだ点灯している場合は、消灯するまでポテンショメーターを調整してください。
回転速度検出
モーターの速度を検出するための簡単な光学エンコーダを実装してみましょう。
ハードウェア
- ステップ1. 以下の材料を準備してください:
Seeeduino V4.2 | Base Shield | Grove - Infrared Reflective Sensor | 3V/5V DCモーター |
---|---|---|---|
![]() | ![]() | ![]() | ![]() |
今すぐ購入 | 今すぐ購入 | 今すぐ購入 | 今すぐ購入 |
- ステップ 2. 赤外線反射センサーを Grove - Base Shield の D2 ポートに接続し、モーターを D6 に接続します(実際には、モーターに電力を供給するために VCC と GND を接続するだけで十分です)。

- ステップ 3. モーターに丸い白い紙皿(黒い線が描かれているもの)を取り付けます。この回転エンコーダーの近くにセンサーを配置し、モーターを動作させます。
ソフトウェア
ステップ 1. Arduino timer1 ライブラリ をダウンロードし、Arduino IDE のライブラリフォルダに追加します。デモコードの実行方法についてはガイドを参照してください。
ステップ 2. ライブラリのインストール方法を参照して、Arduino 用のライブラリをインストールします。
ステップ 3. 新しいスケッチを開き、以下のコードをスケッチにコピーします。
unsigned int counter=0;
void blink()
{
counter++;
}
void timerIsr()
{
Timer1.detachInterrupt(); // timer1 を無効化
Serial.print("モーターの速度: ");
Serial.print(counter,DEC);
Serial.println("回転/秒");
counter=0;
Timer1.attachInterrupt( timerIsr ); // timer1 を有効化
}
void setup()
{
Serial.begin(9600);
Timer1.initialize(1000000); // 1秒のタイマーを設定
attachInterrupt(0, blink, RISING); // INT0
Timer1.attachInterrupt( timerIsr ); // サービスルーチンをここにアタッチ
}
void loop()
{
}
ステップ 4. デモをアップロードします。コードのアップロード方法がわからない場合は、コードのアップロード方法を確認してください。
ステップ 5. Arduino IDE の シリアルモニタ を開きます。ツール -> シリアルモニタ をクリックするか、++ctrl+shift+m++ キーを同時に押します。すべてが正常に動作していれば、速度が表示されます。
Raspberry Pi で遊ぶ
ハードウェア
- ステップ 1. 以下の材料を準備します:
Raspberry Pi | GrovePi_Plus | Grove - 赤外線反射センサー |
---|---|---|
![]() | ![]() | ![]() |
今すぐ購入 | 今すぐ購入 | 今すぐ購入 |
ステップ 2. GrovePi_Plus を Raspberry Pi に接続します。
ステップ 3. Grove - 赤外線反射センサーを GrovePi_Plus の D4 ポートに接続します。
ステップ 4. Raspberry Pi を USB ケーブルで PC に接続します。

ソフトウェア
ステップ 1. ソフトウェアの設定に従って開発環境を構成します。
ステップ 2. ファームウェアの更新に従って、GrovePi の最新ファームウェアを更新します。
このウィキでは、~/GrovePi/ のパスを使用しています。/home/pi/Desktop/GrovePi の代わりに使用してください。ステップ 2 とステップ 3 で同じパスを使用する必要があります。
ファームウェアを更新することを強くお勧めします。一部のセンサーでは、更新しないとエラーが発生する可能性があります。
- ステップ 3. Github リポジトリをクローンします。
cd ~
git clone https://github.com/DexterInd/GrovePi.git
- ステップ 4. コードを確認します。
cd ~/GrovePi/Software/Python
sudo nano grove_infrared_reflective_sensor.py
次のようなコードが表示されます:
import time
import grovepi
# Grove 赤外線反射センサーをデジタルポート D4 に接続
# SIG,NC,VCC,GND
sensor = 4
grovepi.pinMode(sensor,"INPUT")
while True:
try:
# センサーは黒い表面で HIGH、白い表面で LOW を返します
if grovepi.digitalRead(sensor) == 1:
print "黒い表面を検出"
else:
print "白い表面を検出"
time.sleep(.5)
except IOError:
print "エラー"
次に ++ctrl+x++ を押して nano を終了します。
- ステップ 5. デモを実行するには、ターミナルで以下のコマンドを実行します:
sudo python grove_infrared_reflective_sensor.py
結果は次のようになります:
pi@raspberrypi:~/GrovePi/Software/Python $ sudo python grove_infrared_reflective_sensor.py
黒い表面を検出
黒い表面を検出
黒い表面を検出
黒い表面を検出
黒い表面を検出
白い表面を検出
白い表面を検出
白い表面を検出
黒い表面を検出
黒い表面を検出
黒い表面を検出
黒い表面を検出
黒い表面を検出
黒い表面を検出
回路図オンラインビューア
リソース
- [Zip] Grove-Infrared Reflective Sensor v1.2 Eagle ファイル
- [Zip] Arduino Timer1 ライブラリ
- [Pdf] RPR220 データシート
- [Pdf] LMV358 データシート
技術サポートと製品ディスカッション
産業用センサーへのアップグレード可能
SenseCAP S2110 コントローラーと S2100 データロガーを使用することで、Grove を簡単に LoRaWAN® センサーに変えることができます。Seeed はプロトタイピングをサポートするだけでなく、SenseCAP シリーズの堅牢な産業用センサーを使用してプロジェクトを拡張する可能性も提供します。
IP66 ハウジング、Bluetooth 設定、グローバル LoRaWAN® ネットワークとの互換性、内蔵 19 Ah バッテリー、そして強力なアプリサポートにより、SenseCAP S210x は産業用途に最適な選択肢となります。このシリーズには、土壌水分、空気温度と湿度、光強度、CO2、EC、そして 8-in-1 気象ステーション用センサーが含まれています。次の成功する産業プロジェクトには最新の SenseCAP S210x をぜひお試しください。