おはようございます!!
先日、こちら↓の記事を書かせていただきました。
スマートリモコンの学習キットの「sLab-Remo2」ですね!!
【電子部品利用実習⑤編】ということで実際に回路を組み、プログラムを転送し、赤外線リモコンの受信動作確認まで行いました。
リモコンのボタンを押す度に「タラタラ~!!」と数字が表示されるんです。
目に見えない赤外線信号が見えるようになるって、感動ですよね!!
・・・で、今回は電子部品利用実習⑥編で赤外線リモコン送信を学習しました!!
目次
スマートリモコン「sLab-Remo2」(エスラボリモ2)【Scratch・Arduino対応】環境センサ・カメラ付《IoT電子工作・AI学習・プログラミング》
こちらです!
4,290円でこれだけ遊べたら凄いものです。(・・・と奧さんに言われています)
ちなみに、本キットの心臓部ESP32-DevKitCですが、Amazonさんで1,500円ぐらいで普通に買えますね。
Espressif社純正 ESP-WROOM-32D開発ボード ESP32-DevKitC-32D
壊してしまったら一大事!と思ってましたが・・・昼ごはん1回我慢すれば買えます(泣)
では、スタートします。
sLab-Remo2【電子部品利用実習⑥編】
公式メニューの電子部品利用に入ります!(こちら)
下にもズラズラ~っと並んでいますが、まずは 環境センサ付きリモコンを作るわけですね!!
【環境センサ付スマートリモコンで利用】
2-1-1.LED点滅
2-1-2.照度センサ
2-1-3.温湿度センサ
2-1-4.人感センサ
2-1-5.赤外線リモコン受信
2-1-6.赤外線リモコン送信
これで本キットの目的はほぼ達成かも?・・・いやいや、もったいないですね。
それから応用としてその他のデバイス紹介と実習。
【電子部品の使い方のみ】
2-2-1.超音波センサ
2-2-2.赤外線障害物センサ
なんとなく、同社のSLab-Carキットに使われる部品のような・・・
sLab-Car(エスラボ・カー)スマートロボットカー【Scratch・Arduino対応】スターターキット《IoT電子工作・AI学習・プログラミング》 (最小)
いやいや、これらの部品もスマートリモコンに応用できるハズ!!です。
最後にカメラ付きスマートリモコン!!
【カメラ付スマートリモコンで利用】
2-3-1.カメラ
これどのように使うのでしょうね?(笑)
カメラで顔を認識して赤外線リモコンで何かを動かすとか??・・・できればいいですね!!
・・・で、本日は電子部品利用実習⑥編として、6番目の赤外線リモコン送信をやってみたいと思います。
一般的な赤外線リモコンですよね!!
赤外線リモコン送信
こちらですね。
最初の方でLチカ(LED点滅)をやりましたが、今回は赤外線版Lチカですね。
赤外線は可視光である赤よりも更に波長が長いので、目に見えないんですね。
それで、赤外線リモコンも光っているのが見えないわけです。
電気回路と電子工作
今回使うのは赤外線LEDですね。
透明な樹脂なので白色光LEDにも見えますが光りません。
肉眼では光っているのが見えないので、壊れてもわかりにくいですね。
ちなみに撮像素子の事情(※ 簡単に言えば赤外光を赤色と認識してしまう)で、スマホのカメラで写してやれば光っていることが確認できます。(こちら)
ただ、以前より可視光フィルターが良くなってしまっているので、なんとか確認出来る程度ですね。
あっ!端子の名前は普通のLEDと同じです。
・・・で、これだけかと思ったら、電流をより多く流すためにトランジスタを使ってやるみたいですね。
型番は書いていませんが、ピン配列からすると2SCxxxxでしょうか?
左からエクボ(エミッタ・コレクタ・ベース)って覚えたのですが、今どきはよくわかりません。
GPIO32の出力をON/OFF制御することで赤外線LEDをのON/OFF制御します。このため、配線はエミッタにGNDを接続し、コレクタに赤外線LED、ベースに1kΩを介してGPIO32端子を接続します。
ちなみにGPIOはどれぐらい電流を流せるかですが、こちらによると40mAらしいです。
今回は300mA!!そりゃ大変ですね!!
・・・で、回路図がこちらです!!
過去に組み立てた分も載ってますので、今回は右上の黄枠の部分の追加です。
ポイントは、
- 赤外線LEDは3つ!保護用の抵抗10Ωを介してトランジスタのコレクタ!へ!
- トランジスタのベースへは、GPIO32から200Ωの抵抗を介して接続!
- トランジスタのエミッタを忘れずに落としておく!
今回の配線は多いですね(泣)
回路図だけでは動かないので、実際に部品を繋いでいく必要があります。
こちらの実装図を確認ですね。(今回の部分をオレンジで囲んでいます。)
ちょっとこれもポイントを書いてみます。
- 5Vを赤いジャンパー線で4列目に結線!
- そこから、10Ωの抵抗3本を傾けながら8,10,12列に配置。
- トランジスタの表面を向こうに向けてBCE順に配置。
- トランジスタのベース(17列)にGPIO32(D32の標印)からの200Ωを接続。
- トランジスタのコレクタ(16列)から9,11,13列に黄色ジャンパ。
- LED3つを、8-9,10-11,12-13列間に接続(アノード(+)は左)
・・・ぜぇぜぇ。トランジスタのエミッタはこのまま差せばGNDなので配線不要ですね。
(↑ ここが甘かったことに後ほど気づきました。)
あとは下に小さい字で書かれていますが、Lチカ回路でやったことそのままの状態でOKですね。
実験回路の組み立て
前回の最終形状は・・・
かなり辛くなってきましたが、ここに追加で実装します。
部品探しは、まず赤外線LEDですね。
(※ ここから先は、左に入っていた袋で、右が部品の画像です)
2個余分(後で使うかも?)残して3個使います。
そしてトランジスタですね。
1個余分(後で使うかも?)残して1個使います。
トランジスタの向きは、左から「E(エミッタ)」「C(コレクタ)」「B(ベース)」ですね。
今回使わうのは2SC2655でした。
・・・で、これらを実装と・・・
これまで配線があるので、多少ズラしたりして調整しました。
赤外線LEDやトランジスタの足はボードのピッチとあっていません。
また、そのまま並べて差すと隣と本体が干渉します。
足を曲げたり、斜めに差したり(※ 回路的に問題ないことを確認)して、差し込みました。
これで完成です。
(※ 実は配線ミスがあったので修正しました。この写真は修正後です)
これで実験回路はできあがりで、書き込めば動く・・・はず!!
スケッチ(制御ソフトウェア)
Arduino IDEの登場です!!・・・あ~大変だ。
これでプログラムミングしないと回路が動かないわけですね。
スケッチを作成!!
今回も前回作ったArduinoフォルダの中のsLab-Remo2フォルダのInfrared-sensorを「Infrared-send」と名前をつけて保存してから、サンプルスケッチを貼り付けて保存してみます。(※ 手順の画像はこれまでと同様なので端折ります)
よしよし!これで動くはず・・・って、今回はもう1つ仕事が残ってました!!
サンプルコードは仮のデータが入っているので、
これを手持ちのTV用リモコンのデータに置き換えなければなりません。
このデータですね!!
3つも要らないので、1つだけ選択して最後の「,」のみ除いて・・コピー!
そしてペーストですね!!
※ Arduino IDEって改行できないのでしょうか?(未確認)
これで保存して完了ですね!!
スケッチの中身
公式にかなり丁寧に解説してありますね。とりあえず貼り付けます。
今回は、重要なIrSend()だけフローチャートにしてみました。
※ 使い慣れてないので、直線と曲線の使い分けができません(泣)
プログラムと解説を見比べながら、ツール(こちら)を使って作りました。
前回取得したデータを復元してLEDを点滅させてるんですね。
その際、Hの区間に関しては13us幅のHLの繰り返しに変換して送信しているみたいです。
本当に難しいですね(泣)
ハラハラドキドキ!動作確認!!
ハラハラドキドキですね。
ボードにUSBケーブルを繋いでノートパソコンに接続、そして、プログラムを開きました。ボードへの書込は、忘れずにこの技↓ですね!!(※ 該当の部分に飛びます)
(※ 後半の「書き始めるまでBOOTボタン押しっぱなし技」です。)
今回は3回目で成功しました・・・暑いんです、暑いんですよぉ~!!
さて、どうなるか・・・はい!!
動いてはいるようですが・・・TVはつきません。
念のためにボードをTVの前に持っていっても・・・つきません。
最初のLチカからずっとパーフェクトだったのですが、とうとうこの日が来てしまいました。
動かない原因・・・これでした!!
とりあえずLEDが光っているか?確認しました。冒頭に書いたスマホのカメラを使う方法です。
うちのiPhoneのカメラはあまり感度よくない(※「赤外光に対して」です)のですが・・・
う~ん、光ってないように見えます。
そもそも10秒に一回リモコンが動作するプログラムなので、これを1秒に1回に変更して・・・同じです。
かくなる上は、デジタルマルチメーター・・・いやいや、ずっと前に買って使いにくくて放置している格安のオシロスコープ・・・いやいや面倒です。(※ 探すのも)
とりあえず、原点に戻って配線ミスを再確認しました。
再確認はなんでもそうですか、もう悔しくて悔しくて・・・あっ!ありました!!
左上のLEDからGND配線を引っ張ってきてEN端子のコンデンサに繋ぐのですが、なぜかサンプルの配線図がこんな風になってたんです。
「なぜわざわざ2つの配線を使うんだろう?」と思って1本の配線にしたのですが、これが原因でトランジスタのエミッタがGNDに落ちなくなりました。
これではトランジスタが動くわけありません。トランジスタのCB間も通れないのでうっすら光ったままにもなりません。
・・・で、修正しました!!
動きました!!
・・・ただ、ちょっとパワーが弱いですね。
最近は各社のスマートリモコンのパワーに慣れてしまって、部屋のどこかに置いていれば動くイメージなのですが、少なくとも見通しできる位置に置いてないとダメでした。
この辺は各社のノウハウ的なものもあるでしょうし、LEDの選定や反射などもあるのでしょうね。
とりあえず、TVの見える位置にボードを置いておけば問題ないのでOKです!!
まとめ
今回は配線命でしたね。先入観で判断せずちゃんと見るように気をつけます。
次回は【電子部品利用実習⑦編】ですね。
・・・えっ!超音波センサー??
またスマートスピーカーから離れてしまいそうですが、ブログのタイトルを変えることも視野に入れて、頑張ってみます!!
以上です!!
そのまま作って動くのだけったら公式のページを変わりありませんし、もうちょっと色づけしていかないと面白くありませんよね。
どうするか考えます。
(おわり)