PPG/ECGコンボ型ウェアラブルバイオセンサモジュールを使用したFDA認定の心機能測定

著者 Stephen Evanczuk

Digi-Keyの北米担当編集者 の提供

消費者は、より正確なフィットネスや心臓の健康状態のデータを、スマートウォッチ、フィットネスバンドなどのバッテリ駆動型モバイル機器に求めています。機器の開発者がこのような期待に応えるには、複雑で高価なマルチコンポーネントソリューションに取り組む必要がありました。そのようなソリューションで高精度を実現できるとしても、大きな消費電力、より広いフットプリント、より長い開発期間が避けられません。よりシンプルでエレガントなソリューションが必要とされています。

この記事では、Maxim Integratedの高度な統合モジュールに基づくシンプルなソリューションを活用するための筋道をご紹介します。まず始めに、心機能を正確にモニタリングすることの難しさについて検討します。次に、機器の開発者がこのモジュールを使用して、FDA認定の活動時における心拍数モニタリングや安静時の心電図(ECG)測定をどのように行えるかについて説明します。

心機能の測定

医療提供者は、心臓の健康状態について、侵襲的処置を行わずに可能な限り詳細なデータを提供するために、ECG(またはEKGとも呼ばれる)を日常的に利用しています。ECG機器は、心周期における心筋の脱分極と再分極によって生成された波形を捕捉します(図1)。このプロセスでは、体の特定の部位に10個の電極を配置する必要があります。それらは、12のペア、または誘導にまとめられ、心臓組織の容積に応じて生成される波形のさまざまな軸と合致させるように設計されています。

心電図(EKG)とフォトプレチスモグラム(PPG)を比較した画像

図1: 心電図(ECGまたはEKG)では詳細な情報を得られ、よりシンプルなフォトプレチスモグラム(PPG)ではここに示される心室性期外収縮(PVC)の症状などの有用な情報を得られます。(画像提供:Wikipedia)

たとえば、患者の脚に配置された電極を別の電極とペアにして、心組織を通って下降する心室脱分極の波形を詳細に捕捉できる誘導が得られます。医療用の12誘導ECG機器はこの手法を採用しており、異なる電極ペアからのデータを組み合わせ、心周期の各相と関連する最適軸に沿って波形を測定します。

対照的に、民生用フィットネスデバイスで行うECG測定では、通常は1つの電極ペアのみを使用するため、このクラスの機器は1誘導ECGとも呼ばれています。1誘導ECGは、心臓専門医が診断に必要とする詳細な情報には欠けるかもしれませんが、医療従事者に病気の可能性を警告するのに十分な心機能の情報を提供し、結果的に12誘導のECGによる正確、綿密な診断を行う機会につなげることもできます。

実際には、体を著しく動かすと測定が損なわれやすいので、フィットネス機器に1誘導ECG測定を使用するのは特に問題があるともいえます。あらゆる筋肉の動きは、導電性の組織の塊を通って移動する筋線維脱分極からの該当する電気的波形に帰結します。主な筋群による動きは生体電位を発生し、それにより心筋などの深部に埋もれた信号源から生じる信号が埋没しやすくなります。このためECG測定を正確に行うには、医療施設で横になる場合もトレーニングの合間でも、被験者が静止したままの状態になる必要があります。

事実、運動中に1誘導ECGを被験者に実行しようしてもほぼ失敗するでしょう。このため、運動中に心拍数データを得るためのパーソナルフィットネス機器は、通常、フォトプレチスモグラフィ(PPG)法に依存しています。

最も基本的なPPGでは、光学センサを使用して光反射率(または吸収率)の相対的な差を測定しています。これは血液の心拍ごとに血管の容積が変わるためです。最も初期の民生用心拍数モニタはこの基本的なPPGを採用していましたが、現在のフィットネス製品では一般的に、末梢血中酸素飽和度(SpO2)レベルを測定する、より高度なPPGが利用されています。このようなフィットネス製品を利用することで、運動に対する自らの生理学的反応をより深く理解できます。

SpO2測定では、赤色LEDおよび赤外LEDを照らした場合の酸素化血液と非酸素化血液の対比(発光スペクトルが2つのそれぞれのヘモグロビンの状態の中心になる)によって得られる異なる吸収スペクトルを利用します(「フィットネス装置に心拍数モニタリング機能を加える」を参照)。SpO2は2つの状態間の比率に着目するものですが、基本的な心拍数の測定値は、測定対象の光信号のピーク間サイクル時間を測定することで、同じデータから抽出できます。民生用パルスオキシメータはこの手法を使用しており、身体の動きや個人差など測定を難しくする要素があっても、信頼性の高い心拍数の測定が可能になります。

フィットネス機器では光学PPGに基づく方法が長年採用されてきましたが、最近ではApple Watchなどの民生用製品に1誘導ECGが採用されています。フィットネスリストバンド、スマートウォッチなどのパーソナル電子デバイスのメーカーには、競争圧力の後押しもあり、PPGと1誘導ECG機能の両方を取り入れた製品が益々求められています。

しかし製品開発者には、それらの機能の1つを実装するだけでも数多くの困難がありました。デュアルLEDのPPG設計には、赤色および赤外LEDを最適に発光させ、反射光または吸収光を捕捉し、結果を同期させ、さらには心拍数と必要に応じてSpO2を計算する機能が必要になります。1誘導ECGの設計には、アクティブな生体電位現象の測定に付随する多ノイズ信号を処理するアナログ信号経路の構築に関する幅広い専門知識が必要になります。

さらに根本的には、両タイプの設計を実装しそれらの結果を同期させるのに必要な、電力要件、設計サイズ、部品点数が、バッテリ駆動型モバイル製品にとってハードルになると考えられます。これらの問題に対処するうえで、Maxim Integrated MAX86150のバイオセンサモジュールは、電源の制約をともなうあらゆる設計にPPGとECG機能の両方を加えるためのドロップインソリューションとして役立ちます。

バイオセンサモジュール

MAX86150モジュールはポータブルシステム専用に設計されており、デュアルLEDのPPGとECG両方のサブシステムをサイズ3.3 x 6.6 x 1.3mmの単一デバイスに組み込んでいます。光学測定用に、MAX86150は完全な入出力光信号経路を組み入れ、赤色LED、赤外LED、フォトダイオードをパッケージ内蔵のガラスふたの背後に配置しています(図2)。

Maxim MAX86150 PPGサブシステムの回路図

図2: MAX86150 PPGサブシステムは、LED出力/フォトダイオード入力の信号経路など必要な全コンポーネントを統合することで、光学ベースのフィットネスデータ測定を可能にします。また、赤色LED、赤外LED、フォトダイオードデバイスをガラスふたの背後に配置しています。(画像提供:Maxim Integrated)

このモジュールは、PPG信号経路用に、周囲光キャンセレーション(ALC)回路、19ビット連続時間オーバーサンプリングデルタシグマ(ΔΣ)A/Dコンバータ(ADC)、およびノイズをさらに低減する離散時間フィルタを統合しています。ALCでは、D/Aコンバータ(DAC)が周囲光キャンセルによる入力ダイナミックレンジのブーストに貢献します。消費電力と性能のバランスを取りながら開発できるように、デバイスに統合されたLEDドライバをプログラムして、0ミリアンペア(mA)から100mAまでの電流、50マイクロ秒(μs)から400μsの範囲の電流パルス幅を実現できます。

省力化を進めるために、測定の合間にデバイスが低電力状態に留まれるように近接機能を有効化できます。この状態では、デバイスは開発者によってプログラムされた最小電力レベルで赤外LEDを発光します。ユーザーの指などの皮膚表面が接近したことを知らせる有用な信号をフォトダイオードが検出すると、割り込みが生成され、デバイスは通常の動作状態に戻りサンプリングを続行します。

ECG測定のために、MAX86150は完全な差動信号経路を統合しており、そこで必要なのは1誘導ECG実装のための乾式電極2つと少数の追加部品のみです(図3)。あらゆる小信号アプリケーションと同様に、環境中に存在する多数のノイズ源によって測定精度の維持は常に難しくなります。フィットネスのアプリケーションでは、測定対象の心臓波形は、筋肉の動きなどの生理学的プロセスに付随する生体電位の影響を受けるだけでなく、外部のRF源、ライン周波数、電気ノイズからの干渉によって埋もれる場合がよくあります。

MAX86150 ECGサブシステムは、コモンモード信号を退ける設計の高度な信号チェーンによって、ECG測定での信号ノイズに対処します。

完全な1誘導ECGサブシステムを含むMaxim MAX86150モジュールの回路図

図3: MAX86150モジュールには、PPGサブシステムとともに完全な1誘導ECGサブシステムが含まれており、必要な乾式電極1ペアと最小限の追加部品のみでECG測定データをマイクロコントローラに供給します。(画像提供:Maxim Integrated)

デバイスの統合型ECGアナログフロントエンドには、チョッパアンプ、フィルタ、プログラム可能なゲインフィルタ(PGA)が含まれており、心臓波形のS/N比を最大化するように設計されています。この信号チェーンに続き、18ビットΔΣ ADCが各サンプルを変換し、それぞれの結果をデバイスの共有32サンプルFIFOにプッシュし、ホストマイクロコントローラによる継続的なデータポーリングの必要性を減らします。

さらに省電力化しデータアクセス要件を制限するために、開発者はECGとPPGの両サブシステムでサンプルレートを最大3,200サンプル/秒(sps)からECGでは200sps、PPGでは10spsに調整できます。それでも、開発者は、ECGとPPG/SpO2を同時にサンプリングしその結果を同期する必要がある高度なアプリケーションで、このデバイスを使用できます。開発者が2つのサブシステムの異なる最小サンプリングレートを使用してこの手法を適用する必要がある場合、デバイスは最終PPGサンプルとともにFIFOをロードし、そのサブシステムの次回サンプリングサイクルで新しいPPGデータを提供します。

設計実装

MAX86150はECGとPPGの測定に必要なコア機能を統合しているので、MAX86150のハードウェアインターフェースは、前述のように、乾式電極1ペアと、デカップリング/バッファリングに用いるその他少数の部品によって完成させることができます。これにより、開発者はマイクロコントローラと、MAX86150とその必要最小限の補完外付け部品を組み合わせて、高度な生体電位測定システムを実現できます(図4)。開発者は、Maxim IntegratedのMAX86150EVSYS評価システムを使用することでそのハードウェア設計ステップをスキップすることもでき、これによりECG/PPGアプリケーションをすぐに詳しく調べることもできます。

Maxim Integrated MAX86150の回路図(クリックして拡大)

図4: 開発者はMaxim Integrated MAX86150とホストマイクロコントローラおよび他の最小限の部品を組み合わせて、高度な心機能測定をモバイルフィットネス製品に実装できます。(画像提供:Maxim Integrated)

MAX86150EVSYS評価システムは、そのままアプリケーションプラットフォームとして、またはリファレンス設計として使用することができ、MAX86150基板、MAX32630FTHR基板、500ミリアンペア時(mAh)のリチウムポリマーバッテリを備えています(図5)。MAX86150とともに、MAX86150基板には前述のように2つのステンレス鋼製の乾式電極と他の部品があります。

ヘッダで接続されるMAX32630FTHR基板は、Maxim Integrated MAX32630マイクロコントローラで構成された完全なBluetooth対応システムを備えており、付属するバッテリパックの充電と電源管理を行います。

Maxim Integrated MAX86150EVSYS評価システムの画像

図5: 開発者は、Maxim Integrated MAX86150EVSYS評価システムを使用して、心機能測定方法の評価をすぐに開始できます。この評価システムには、乾式電極を備えたMAX86150基板(左側)、MAX32630ベースのMAX32630FTHR開発基板、バッテリパックが含まれています。(画像提供:Maxim Integrated)

評価システムには、基本的なMAX86150アプリケーション用ファームウェアがプリロードされたMAX32630FTHR基板が同梱されているため、開発者はECGとPPG測定の調査をすぐに開始できます。基板セットをBluetooth経由でWindows PCシステムに接続し、Maxim IntegratedのMAX86150EVSYSキット向けWindows版グラフィカルユーザーインターフェース評価キットソフトウェアを起動するだけです。このGUIパッケージは、MAX86150からのECGとPPGのデータを表示します。開発者はデバイス設定を容易に修正し、性能への効果を調べることができます(図6)。

Maxim Integrated MAX86150EVSYS評価システムの関連ソフトウェアアプリケーションの画像(クリックして拡大)

図6: Maxim IntegratedのMAX86150EVSYS評価システムに同社の関連ソフトウェアアプリケーションを接続することで、MAX86150により実行されるECGとPPGの測定を簡単に調べることができます。(画像提供:Maxim Integrated)

カスタムアプリケーションを作成できる技能を備えた開発者向けに、Maxim IntegratedのMAX86150ドライバパッケージにはコアデバイス機能のためのソースコードが含まれています。ドライバパッケージの機能の1つとして、デバイスのFIFOと連携して消費電力を最小限に抑える手法が提供されています。この電力抑制は、ホストプロセッサがアクティブな状態に留まる必要がある時間を短縮することで実現されます。この手法のかなめは、ソフトウェアが1ペアの割り込みハンドラに依存することでデバイスのイベントに対応し、データサンプルが利用可能になった時点で行動を起こすことにあります。

この割り込み駆動型の手法は、初期化ルーチンから始まります。これはデバイス割り込み要求(IRQ)ハンドラ、max86xxx_irq_handler()を登録します。割り込みイベントが発生すると、このハンドラは利用可能なデバイスデータをチェックし、必要に応じて別個のFIFOハンドラ(max86xxx_fifo_irq_handler())を呼び出し、デバイスダイ温度やVDDレベルのチェックなどの重要なハウスキーピング機能を実行します(リスト1)。

コピー
int max86xxx_irq_handler(void* cbdata)
{
    struct max86xxx_dev *sd = max86xxx_get_device_data();
    int ret;
    union int_status status;
 
    status.val[0] = MAX86XXX_REG_INT_STATUS1;
    ret = max86xxx_read_reg(status.val, 2);
    if (ret < 0) {
        printf("I2C Communication error.err: %d.%s:%d\n",
            ret, __func__, __LINE__);
        return -EIO;
    }
 
    if (status.a_full || status.ppg_rdy
        || status.ecg_imp_rdy || status.prox_int) {
        max86xxx_fifo_irq_handler(sd);
    }
 
    if (status.die_temp_rdy)
        max86xxx_read_die_temp(sd);
 
    if (status.vdd_oor) {
        sd->vdd_oor_cnt++;
        printf("VDD Out of range cnt: %d\n", sd->vdd_oor_cnt);
    }
 
    return 0;
}

リスト1: このスニペットはMaxim Integrated MAX86150ドライバパッケージに含まれるもので、デバイスIRQハンドラが、サンプルが利用可能な場合または近接割り込みなどのイベントが発生した場合にのみ、別個のFIFOハンドラを呼び出すことで、いかに処理を最小限に抑えられるかを示しています。(コード提供:Maxim Integrated)

FIFOハンドラはデバイスIRQハンドラにより呼び出されると、86150がそのFIFOバッファに保存したセンサ測定値の再アセンブルに必要な、低レベル動作を実行します。ここでは、このハンドラがFIFOバッファ内の使用可能なサンプルでループを実行し、ECGチャンネルの18ビットADCとPPGチャンネルの19ビットADCからのデータの格納に使われる3バイトを再アセンブルします(リスト2)。

コピー
void max86xxx_fifo_irq_handler(struct max86xxx_dev *sd)
{
   ...    num_samples = max86xxx_get_num_samples_in_fifo(sd);
   ...    num_channel = max86xxx_get_fifo_settings(sd, &fd_settings);
   ...    num_bytes = num_channel * num_samples * NUM_BYTES_PER_SAMPLE;
    fifo_buf[0] = MAX86XXX_REG_FIFO_DATA;
    ret = max86xxx_read_reg(fifo_buf, num_bytes);
   ...    fifo_mode = max86xxx_get_sensor_mode(sd, fd_settings, num_channel);
   ...    sensor = get_sensor_ptr(sd, fifo_mode);
    for (i = 0; i < num_samples; i++) {
        offset1 = i * NUM_BYTES_PER_SAMPLE * num_channel;
        offset2 = 0;
 
        for (j = 0; j < MAX_FIFO_SLOT_NUM; j++) {
            tmp_fd = (fd_settings >> (4 * j)) & 0x000F;
            if (tmp_fd) {
                index = offset1 + offset2;
                tmp = ((int)fifo_buf[index + 0] << 16)
                        | ((int)fifo_buf[index + 1] << 8)
                        | ((int)fifo_buf[index + 2]);
 
                samples[tmp_fd] = tmp;
 
                max86xxx_preprocess_data(&samples[tmp_fd], 1);
                offset2 += NUM_BYTES_PER_SAMPLE;
            }
        }
   ...            sensor->report(sensor, samples);
   ...    }
 
    if (sensor->update)
        sensor->update(sensor);
 
    return;
   ...

リスト2: このスニペットはMaxim IntegratedのMAX86150ドライバパッケージに含まれるもので、FIFOハンドラを使用したMAX86150 FIFOからのサンプルデータ抽出を示しています。FIFOでは各サンプルは3バイト形式で保存されます。(コード提供:Maxim Integrated)

結論

PPGベースの心拍数測定とともに、1誘導のECG機能が採用され始めていますが、その背景にはスマートウォッチやフィットネスバンドなどのモバイルデバイスへの要求が高まっている状況があります。今でも、そうしたウェアラブルデバイスにPPGとECGの両方を、実用性、高精度、低電力を達成しつつ実装するのが難しいことに変わりはありません。

PPGとECGのサブシステムを統合したMaxim Integrated 86150生体電位センサモジュールは、有効なソリューションをもたらします。86150モジュールとMCUを組み合わせることで、開発者は心機能の詳細データをもたらすモバイル型健康およびフィットネス製品を短期間で実現できます。

免責条項:このウェブサイト上で、さまざまな著者および/またはフォーラム参加者によって表明された意見、信念や視点は、Digi-Key Electronicsの意見、信念および視点またはDigi-Key Electronicsの公式な方針を必ずしも反映するものではありません。

著者について

Stephen Evanczuk

Stephen Evanczuk氏は、IoTを含むハードウェア、ソフトウェア、システム、アプリケーションなど幅広いトピックについて、20年以上にわたってエレクトロニクス業界および電子業界に関する記事を書いたり経験を積んできました。彼はニューロンネットワークで神経科学のPh.Dを受け、大規模に分散された安全システムとアルゴリズム加速法に関して航空宇宙産業に従事しました。現在、彼は技術や工学に関する記事を書いていないときに、認知と推薦システムへの深い学びの応用に取り組んでいます。

出版者について

Digi-Keyの北米担当編集者