この「介護の隙間から」のシリーズに「生体計測ネタ」だからということで部品の工作ネタを投稿してしまったのはちょっと混乱している気もするのですが、始めてしまったもんは仕方ありません。続けさせていただきます。久しぶりにセンサを取り出して、回路改良、大分よくなりました。しかし電源のリップルなのか、それともオペアンプが発振してしまっているのか、振動波形が止まりませぬ。でもね、この波形、指をセンサに乗せると「止まる」感じがするのです。原因はというと。
まずは、介護ネタなのに簡易オシロの画面コピーなど掲げます。気になっていた振動波形です。
指を乗せる前、静かに目の前に置いておいてこれです。でもよく見ればその周波数、100Hz。家のあたりは50Hz地域ですので、その倍です。結論から言いましょう。
手元を照らしているLED照明のせい
でした。私はよく知らなかったのですが、量販品のLED照明は「ダイナミック点灯」とて、50Hzを全波整流した脈流で点灯しているようです。このセンサはといえば、LEDの反射光(ターゲットは赤と赤外ですが)を観測するためのものなので、照明の下に放置しておけば、照明のLEDの光に反応するのは当然とも言えます。直上のLED照明を消し、手近な布地をかぶせて外乱光を抑えてやればこんな感じ。
ちょっと変動はありますが、先ほどのようなひどい状態ではなくなりました。LED照明の下でLED光を拾うセンサを動かしていたというのは我ながらマヌケでした。しかし、反射光を見るといっても指の隙間などから外乱光は入ってくるので、なにか覆いのようなものがないとマズイような気がしてなりません。
マヌケついでにもう一つ。上のような波形はDigilent社のAnalog Discovery 2 というUSB接続、「電子工作の友」というべき装置で取っているのですが、この使い方を間違えていたことに気付きました。なにかオシロの波形が「安定しない、リプルでも乗っているんじゃないか」感のもう一つの原因になっていました。ちゃんと、Digilent社のドキュメントを良く読み、回路図を眺めていたら、そういうことにはならなかったのですがね。ドキュメントから引用させていただきましょう。
Important Note: Unlike traditional inexpensive scopes, the Analog Discovery 2 inputs are fully differential. However, a GND connection to the circuit under test is needed to provide a stable common mode voltage.
Web上で参照できる Analog Discovery 2 Reference Manual に、「大事だ」と言って書かれていました。オシロを当てるときには、3端子
- オシロの+入力
- オシロの-入力
- GND
をDUT(デバイス・アンダー・テスト、被測定対象)に接続しないとなりません。この後にさらに注釈がつづきます。端折って書けば、GNDつながっているのだから、プローブにあまり高い(低い)電圧をかけると、大電流が流れてぶっ壊れるぜ、という警告です。どのくらいまでかけてよいかは、ちゃんとグラフで示されているので見ておいた方が良いでしょう。5Vや3.3Vで工作している範囲では心配はありませんが。
また、マニュアル読んでいると他にもいいことに気付きます。いままで知らなかったのですが、Analog Discovery 2の制御ソフトである
WaveForms
の右下の
Status:
のところをクリックすると、上の図のようにシステムモニタというものが現れるのでした。USBからもらえている電源電圧、消費電流、そして内部温度などが表示されます。測定によっては上面が結構熱くなっているのでどのくらい電気を食っているのか、USBで足りるのか心配だったのですが、ちゃんと考えられているのでした。よくできています。
さて本題の脈拍に戻ります。まずは、前回もとれていた赤色LEDによる脈拍波形ですが、部品を仕入れて回路の定数などをサンプル回路に合わせたお陰で、大分綺麗な感じでとれるようになりました。
例によって、私の安静時の脈拍ほぼ60、約1Hzの信号がとれています。ピンと上がった後、降りてくる途中にちょっとテラス上のところが見えるのは、脈波独特の波形の特徴がなんとか観測に掛かっているように思われます。
一応、ショートピンで、点灯するLEDを赤色と赤外を切り替えられるようにして赤外に切り替えて波形を観察してみました。赤外に切り替えると、当然ですが、まぶしく光っていた赤のLEDが消え、なにも点灯していないように見えるので不安なのですが、ちゃんと点灯しているようです。
赤色にくらべると大分なだらかで振幅の小さな波形になっていますが、一応、脈はとれている感じです。
脈拍はなんとかなるとして、しかし、血中酸素濃度、こういう波形からどうやって計算するのですかね。だいたい、2種類のLEDにフォトトランジスタは一つ、2種類を同時に点灯?なんらかの周波数で切り替えて点灯。あるいはなにか変調を掛ける?分からないことだらけです。まあ、何か分かったらまた考えます。とりあえず脈拍計は作ってみるか。