PCのライン入力でオシロスコープもどき

PICで赤外線リモコンの続きです。

以前、パソコンのライン入力・マイク入力でオシロスコープもどきをやってる人がいると聞いたことがあったのを思い出してググってみました。

確かに、それっぽいことを書いてる人はいるものの、回路図とか詳しい情報は見つけられず。

マイク端子はプラグインパワーなので、自前の信号を入力するのはちょっと面倒そう。というか、電源ラインを変化させるってどうやるんだ?? 流れる電流を変化させればいいのかな??

マイク入力はよくわからないので、ライン入力で試すことにした。が、ライン入力ってどれくらいのレベルを入れればいいの?? 

Wikipediaのページによると、民生機では-10dBV程度らしい。-10dBVって?? dBVでぐぐると、

dBV = 20log10(V)

らしいので、計算すると0.316V。安全に見積もって50mV程度入力すればいいか。

赤外線リモコン受信モジュール CRVP1738
手持ちのパーツに赤外線受光モジュール CRVP1738 があったので、これで受信した信号を分圧してPCに取り込んでみる。

このモジュールは 7,8 年位前に学習リモコンを作ろうとして秋月で買った物で、もちろん、開封されたことすらない。あっかんべー

このモジュールは、38kHzのキャリアを復調してTTLレベルで 0, 1 を負論理で出力してくれる。これを100kΩと1kΩで分圧。出力インピーダンスが100kΩと大きいので、実際は5V出力が1/200程度になり、25mVくらいが入力される計算。

パソコンの方では、ハンディ・オシロスコープという、音声入力を2chオシロスコープとして使うためのそのものズバリのフリーソフトがあったのでこれを使ってみた。

リモコン波形
ハンディ・オシロスコープでキャプチャした波形

使い方に癖があるものの、手軽に波形が取れるのは便利。数kHz程度までの低周波信号ならこれで十分だな。いいこと知った笑顔

負論理出力なので、反転した波形なのに注意。実際は、リモコンのボタンを押すと同じ波形が2回送信される模様。この画像はその1つ目の波形。

NECフォーマットより、リーダのON期間が短いみたい。解析してみたところ、

リーダ(ON 4.5ms, OFF 4.5ms)、カスタムコード(8bit)、カスタムコード反転(8bit)、データ1(8bit)、データ1反転(8bit)、データ2(8bit)、データ2反転(8bit)、ストップビット

というフォーマットになっているようだ。カスタムコードは 0xB2 固定となっている。

いくつかのパターンを調べてみたが、とりあえず電源OFFは、データ1=0x7B, データ2=0xE0 らしい。

今日はここまで。

PICで赤外線リモコン

osziFOX
必要に駆られてPICで赤外線リモコンを作成することにしました。

FUTABAさんのページで赤外線リモコンの基礎をお勉強。フムフム。1がONで0がOFFみたいな単純な物ではないのね。しかも38kHzで点滅か。結構面倒そう・・。

とりあえず、コピーしたいリモコンを分解して、赤外線LEDの両端の電圧をへなちょこオシロosziFoxで観測。リーダ辺りのフォーマットはNECフォーマットに似ていそう。

でも、さすがにへなちょこosziFoxでは128サンプルしか取れないので、信号全体を観測することは不可能。 全体で200ms近くの信号のようでした。

話は脱線して、osziFoxですが、昔秋月で9000円くらいで売っていた超簡易ペン型オシロスコープです。今では販売されてないようです。というか、Witting Technologies社のHPすら見つからず・・・。倒産してしまったのでしょうか・・・?

リモコンフォーマットをググってみると、学習リモコンの制作系のページをいくつか発見。私は東芝のエアコンの制御をしたいのですが、さすがに東芝エアコンそのものずばりのフォーマットは見つけられませんでした。

こういうときにオシロとかロジアナとかが欲しくなるなぁ。 高いし置く場所無いから買えないけど・・。