この記事はrogy Advent Calendar 2022の17日目の記事になります。
工大祭が10月29・30日に3年ぶりに開催されました。
1年の時に一度参加して以降一度も開催されなかったのでとてもうれしかったです。
今回は工大祭で私が展示した筋電計について解説していきます。
筋電計とは
読んで字のごとく、筋肉の動きに応じた電位を計測する装置です。筋肉は神経の信号で動いおり、神経は信号を伝える際に電位を発生させます。この電位を計測することで筋肉の動きを測定することができます。
発生する電位は数十mVと言われていますが、皮膚の表面に達するまでに減衰し数mVになります。筋電計の原理としてはこれの電位をアンプを使い増幅、マイコンで読込みPCに送信する、といったものになります。
製作動機
以前から筋電を新しいコンピューターへの入力装置として使う研究がありますが、あまり進んでおらず、自分でもやってみたいと思っていました。
そのためにまず簡単に作れ、装着の簡単な筋電計の製作を目指してみました。
特徴
筋電計は特に医療分野でよく使われている技術ですが、今回製作した筋電計はいくつか独自の特徴を持っています。
・安い
安いです。部品代はArduinoを除けば2000円に行かないはずです。部品はすべて秋月電子で買えます。
・ウェアラブル
PCには有線接続ですが、電極、アンプ、計測用マイコンすべてを身に着けることができます。バッテリーと無線をつければ完全ウェアラブルになるはずです。
・ステンレス板を電極に採用
医療用に使われる電極は接着パッドに導電性ゲルのついた使い捨ての高級品です。
↓実験用に購入してみた電極
https://www.monotaro.com/p/3203/0898/
取り付け、取り外しが面倒ですし、常に液体がくっついている感じがします。コントローラーとして身に着けることを考えると繰り返し使える乾式の電極を使用したいところでした。
そこで今回はステンレス板を電極として採用しました。
結果としてはステンレス板でも問題なく筋電を測定することができました。ただし一般的な電極の接着機能や導電性ゲルの代わりにステンレス板をバンドで腕にきつく巻き付けているので結構痛いですし長時間つけるとしばらく跡が残ります。
回路
では実際の筋電計の回路を紹介していきます。
参考、というよりほぼ丸パクリしたのが今回使用した計装アンプlt1167cn8のデータシートに記載されていた以下の回路図です。
被験者の表面につけた基準電極の電圧をボルテージフォロアで常に電気回路側の基準電圧と一致させ、まず計装アンプで10倍に増幅、オペアンプで100倍に非反転増幅させ、最終的に1000倍に増幅します。
この図では電源に-3V~3Vを使っていますが、Arduinoで使用するため-5V~5Vに変更しています。
負電圧は以下のICで作りました。
https://akizukidenshi.com/catalog/g/gI-12017/
また出力電圧にオペアンプで2.5VのバイアスをかけてArduinoで負電圧も読めるようにしています。
Arduinoのプログラム
1kHzでanarogReadを回してシリアル通信でPCに送っているだけなので語ることは特にないです。
1kHzでサンプリングしているのは以下の資料に筋電の有効周波数帯域は5Hz~500Hzだと書いてあったからです。
成果物
実際に完成した筋電計を装着したのが以下の写真です。この態勢かつ片手で写真撮るのだいぶきつかったのでブレブレなのはご容赦ください。
一番右に巻き付けられているのが計測用回路とArduinoで、基準用電極もここに巻き付けられています。
左側と中央のベルトにはそれぞれ正と負の電極が取り付けられていますが、正負の順番はどちらでもよいです。
奥のPC画面で直近5秒分の筋電位を表示していますが、金電位が測定できていることがわかると思います。
反省点、展望
まずデータシート通りの回路を作り、負電源を用意しArduinoで読み込むためにバイアスをかける、という手順を踏んで作ったのでICを4つも使う回路になってしまいましたが、そもそも5Vをから2.5Vを作ってこれを基準電位にすれば解決しましたね。
またウェアラブル、と言っても装着はだいぶきつく、ステンレス板の跡が残るのでこれらを解決していきたいと考えています。
また現在得られたデータは単にグラフ化しているだけですがスペクトグラムをとって各指の動きを見分ける、みたいなこともやってみたいです。