概要

このレッスンでは、アクティブブザーのビープ音を制御する赤外線の使用方法を学んでいきます。
「OK」ボタンを押すと、ブザーが鳴り続け、他のボタンを押すと、音が消えます。

準備

ハードウェア

ソフトウェア

ブザーについて

集積構造を持つ電子ブザーの一種として、DC電源から供給されるブザーは、コンピューターをはじめ、プリンター、電子玩具、電話などの幅広い電子製品に使用されています。ブザーはアクティブ/パッシブ構造に分類できます(次の図を参照)。2つのブザーのピンを上に向けると回路基板が見えるので、緑色の回路基板は受動的なブザーです。また黒いテープで囲まれた方がアクティブブザーとなります。

アクティブブザーとパッシブブザーの違いは次のとおりです。

アクティブブザーは振動源が組み込まれているため、通電することで音が発生します。ただし、パッシブブザーには振動源による音は発生しません。代わりに、周波数(2K〜5Kの方形波)を使用して音を発生させます。アクティブブザーは、複数の振動源(発振回路)が組み込まれているため、パッシブブザーよりも高価になっています。このレッスンでは、アクティブブザーを使用した実験を進めていきます。

注意:

アクティブブザーには振動源が内蔵されていることにより、通電中はビープ音が発生します。ただし固定周波数でのみ音が発生します。

接続

ブザーモジュールを下記図のようにOSOYOO UNOボードに接続します。

OSOYOO UNO ブザーモジュール
3.3 V VCC
GND GND
D13 I/O

スケッチをアップロード

注:準備が完了したら、アルドゥイーノインストールに次のライブラリをインストールする必要があります!

こちらをクリック–赤外線リモートコントロール:ARgithub.com/shirriff/Arduino-IRremoteDUINO LIBRARY

注意!!ライブラリIRRobotRemoteを備えたアルドゥイーノの最新バージョンを使用している場合、競合する可能性があるので、ライブラリを一旦削除する必要があります。アルドゥイーノ(root)/ libraries / RobotIRremoteを必ず削除してください。アルドゥイーノ(root)はアルドゥイーノのインストールディレクトリを指します。ライブラリRobotIRremoteにはIRremoteと同様の定義があり、エラーが発生します。

上記の操作が完了したら、USBケーブルを使用してアルドゥイーノボードとコンピューターを接続します。緑色の電源LED(ラベルPWR)が点灯します。

コードプログラム

このリンク からスケッチをダウンロードするか、以下のコードをアルドゥイーノIDEウィンドウにコピーします。

#include <IRremote.h>
const int irReceiverPin =3; //受信モジュールのSIGはpin3
const int buzzerPin = 13;//13ピンをブザーに接続します
IRrecv irrecv(irReceiverPin); //IRrecv タイプの変数を作成します
decode_results results;
void setup()
{
  pinMode(buzzerPin,OUTPUT);//ブザーピンを出力として設定します
  digitalWrite(buzzerPin,HIGH);
  Serial.begin(9600);//irrecvを初期化します。
  irrecv.enableIRIn(); // ir受信機モジュールを有効にする
}
void loop() 
{
  if (irrecv.decode(&results)) //赤外線受信モジュールの受信データ
  { 
    Serial.print("irCode: "); //"irCode: "を送信する出力
    Serial.print(results.value, HEX); //値を16進数で出力します
    Serial.print(", bits: "); //" , bits: " を送信する
    Serial.println(results.bits); //bitsを結果に出力する
    irrecv.resume(); // Receive the next value 
  } 
  delay(600); //delay 600ms
  if(results.value == 0xFF38C7)//「OK」ボタンを押すと、受信モジュールは0xFF38C7を受信します
  {
    digitalWrite(buzzerPin,LOW);//ブザーのビーブ音(低音)
  }
  else
  {
    digitalWrite(buzzerPin,HIGH);//stop beep
  }
}

コンパイルとアップロード

アルドゥイーノIDEを開き、アルドゥイーノボードに対応するボードタイプとポートタイプを選択します。

スケッチをコンパイルしたら、「アップロード」ボタンをクリックします。数秒待機すると–ボード上のRXとTXのLEDが点滅します。アップロードが成功すると、ステータスバーに「アップロードが完了しました。」というメッセージが表示されます。

実行結果

アップロードが完了後、数秒間を空け「OK」ボタンを押すと、ブザーが鳴り続け、他のボタンを押すと音は消えます。

注意:

アクティブブザーには振動源が内蔵されていることにより、通電中はビープ音が発生します。ただし固定周波数でのみ音が発生します。