自動麻酔記録ソフトウェア「paperChart」の導入サポート・カスタマイズを行いました
スタッフブログの更新が、だいぶご無沙汰になってしまいました。ちゃんと日々活動していますのでご安心ください(笑)
さて、先日とある病院様向けに paperChart を活用したシステム一式の納品をしてきました。
paperChart を手掛けた案件は弊社にとっても初めてでしたので、良い経験になったとともにとても便利なソフトウェアとして、ここでご紹介してみたいと思います。
paperChart って何?
paperChart は神戸海星病院麻酔科の越川正嗣先生が作られた自動麻酔記録ソフトウェアで、フリーソフトウェアとして公開されているものです。
麻酔科医の立場で作成されたソフトなので、手書きの麻酔記録のような直感的な操作方法が非常に使いやすく、現場での利用実績もすでに全国で沢山あるとのことです。
ではその自動麻酔記録ソフトとはどういうものか?簡単に説明すると、手術で麻酔をかけた時に患者さんの心電図、心拍数、血圧、脈拍といったバイタル情報をモニタリングする生体情報モニターという機器があるのですが(よくドラマのワンシーンに出てくる心拍数を図っているあれです)、その機器から生体情報を取得して記録したり、画面上にチャートとして表示したりすることができるソフトです。
※ paperChart のチャート画面イメージ
paperChart は、多くの生体情報モニタをサポートしていることもその特徴で、マニュアルによると以下の機種が対応機種として紹介されています。
- Philips IntelliVue
- GE(marquette) Solar8000/Eagle
- GE(marquette) DASH
- GE(DatexOhmeda) S/5
- 日本光電 BSM5100
- 日本光電 BSS9800
- オムロン・コーリン BP608 BP508
- Draeger Infinity(Gamma/Delta/Kappa/Vista series)
- フクダ電子 DS-7xxxOR/DS-85xx
- BIS Aspect2000
- 心拍出量モニタ Vigileo/Vigilance
- Draeger 麻酔器(Fabius,Tiro,Julian,Cato)
- テルモ シリンジ/輸液ポンプ(TE-371/352/332/312/171/161/131
機能面についてですが、実は作者の越川先生が残念ながら亡くなられてしまったため、現在は開発が止まっていたり、またオープンソースではないためソフトウェアについて非公開部分も存在する、といった課題が一部あります。
ただ、すでに「枯れた」ソフトウェアとして安定した品質・機能をすでに備えていますので、将来的に業務が大きく変わる変革でも起きない限りは、安心して使うことができそうです。
また、多くの要素がテキストベースの設定ファイルを元に動作する仕組みになっているため、画面の文言やコントロールの位置といった見た目に関わる部分はもちろん、マスタデータや画面の挙動といった内部的な部分まで、かなりのカスタマイズが可能になっている利点もあります。
今回の案件でやった内容
今回、弊社で手がけた案件は、paperChart のセットアップ作業および外部プログラム連携機能のカスタマイズ、というものでした。
お客様の病院では外部システムである電子カルテ側で患者情報を管理しているのですが、paperChart の患者情報入力操作時にその患者情報を利用したいという要望があったため、電子カルテの患者情報を検索できるアプリケーションを別途作成し、paperChart からはそのアプリケーションを呼び出して患者情報をコピーできるようにするというのがカスタマイズの内容です。
※ カスタマイズ部分のシステム構成イメージ
paperChart は、特定のコマンド実行時に外部プログラムをキックするよう設定ファイルに記述することができるようになっていたので、患者情報画面の起動に合わせて患者情報検索アプリケーションを実行するような仕組みを実現することができました。
導入にあたり苦労した点
生体情報モニターと paperChart の動作検証
今回の病院で使用する生体情報モニターは、下記の2機種でした。
- オムロンコーリン BP608
- GE(DatexOhmeda) S/5
弊社では生体情報モニターを所有していませんので、paperChart と接続して動作検証をするには現場で行うしかありません。
初めは RS-232C ケーブルで機器同士を繋ぐだけでいけるだろう位に高をくくっていたのですが、
- 事前の動作確認用に用意したシリアル通信モニタリングソフトだと通信が取得できない・・・
- BP608 は RS-232C ケーブルだとデータが取得できない・・・
- S/5 はどの端子と接続するのが正しいか分からない(公式情報が無い)・・・
- 本番で使う PC に RS-232C 端子が付いていないことが分かり、USB-シリアル変換ケーブルでの再確認が必要に・・・
など、色々と紆余曲折、試行錯誤を繰り返した末にようやく動作する状態まで達することができました。
なお、最終的に接続確認が取れたのは下記の構成です。
- BP608
- オムロンコーリン別注の専用ケーブルが必要
- 背面の「麻酔表記録装置」端子に専用ケーブルを接続する
- S/5
- RS-232Cケーブル(クロス)が必要
- 背面の X8 端子にケーブルを接続する
※ BP608 背面の「麻酔表記録装置」端子に専用ケーブルを接続している様子。
※ S/5 背面の X8 端子にケーブルを接続している様子。
また間接的な面で、現場が忙しい手術室ですのでスケジュール調整が難しかったり、緊急の患者が入ったりして予定の作業が中止になったりすることがしばしばありました。
こういった時間調整の難しさは患者さんあっての現場なので、医療系システムに関わる以上は宿命とも言える問題ですね。
外部プログラム連携
前提として、paperChart はソース公開はされていませんので、設定ファイルでカスタマイズできる範囲外のことまでできるわけではありません。
今回、別途用意した患者情報検索アプリケーションから、paperChart の画面に患者情報を複写できるようなI/Fは元々用意されていません。(もしI/Fの存在を知っている方がいましたら教えてください!)
そこで、複写先の患者情報画面および各フィールドのハンドルIDを調査し、Windows API の SendMessage 関数でデータを送信する方式で要件を実現しました。
ちなみに患者情報検索アプリケーションは Visual Basic 2012 で作成、ハンドルIDの調査には WinID というフリーソフトウェアがなかなか便利でした。
まとめ
導入するにあたって、初めて paperChart を見た先生が詳しい説明をするまでもなくごく自然に画面を操作していたことや、これまで手書きで麻酔チャートを記録していた看護師の方が paperChart が表示するチャートを違和感無く眺めている様子をうかがうことができたのはとても印象的でした。
弊社は導入支援というシステム目線でずっと関わっていたので気付きにくかったのですが、やはり paperChart は麻酔科医の経験に裏付けされた、実践的で使い勝手の良いソフトウェアなのだと実感させられました。
弊社では今後も paperChart 導入サポートを継続して行っていきたいと考えています。
安価で使い勝手の良い麻酔記録システムに興味がある方がおりましたら、ぜひお気軽に弊社にお問い合わせください!