JPH06169989A - 輸液ポンプ - Google Patents
輸液ポンプInfo
- Publication number
- JPH06169989A JPH06169989A JP4321906A JP32190692A JPH06169989A JP H06169989 A JPH06169989 A JP H06169989A JP 4321906 A JP4321906 A JP 4321906A JP 32190692 A JP32190692 A JP 32190692A JP H06169989 A JPH06169989 A JP H06169989A
- Authority
- JP
- Japan
- Prior art keywords
- pulse
- infusion
- interrupt
- pump
- motor drive
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Infusion, Injection, And Reservoir Apparatuses (AREA)
Abstract
(57)【要約】
【目的】多機能化した輸液ポンプであっても、1つのマ
イクロプロセッサだけで、しかも、特別に高速なマイク
ロプロセッサを用いることなく、複数のポンプ駆動部を
モータの脱調を引き起こすことなく安定的に動作させ
る。 【構成】1つのマイクロプロセッサ100で2つのポン
プ駆動部を同時的に制御する。モータ駆動回路2aに対
してパルス出力予定タイミングOCR1よりも割り込み
の遅延時間error1がモータ駆動パルス間隔dの1/3を
超えるときは、モータ駆動パルスの出力を一時的に停止
し、そのことでパルス抜けする回数をカウントしてお
き、輸液予定量の輸液の終了の後に、パルス抜け回数分
だけ別にモータ駆動パルスを発生させる。
イクロプロセッサだけで、しかも、特別に高速なマイク
ロプロセッサを用いることなく、複数のポンプ駆動部を
モータの脱調を引き起こすことなく安定的に動作させ
る。 【構成】1つのマイクロプロセッサ100で2つのポン
プ駆動部を同時的に制御する。モータ駆動回路2aに対
してパルス出力予定タイミングOCR1よりも割り込み
の遅延時間error1がモータ駆動パルス間隔dの1/3を
超えるときは、モータ駆動パルスの出力を一時的に停止
し、そのことでパルス抜けする回数をカウントしてお
き、輸液予定量の輸液の終了の後に、パルス抜け回数分
だけ別にモータ駆動パルスを発生させる。
Description
【0001】
【産業上の利用分野】本発明は、患者に治療用薬液を注
入するための輸液ポンプに関する。
入するための輸液ポンプに関する。
【0002】
【従来の技術】病院の臨床において使用される輸液ポン
プは、その開発の初期においては1台当たり1個のポン
プ駆動部を有しているだけであった。しかし、重症患者
に対して治療を行う場合、患者一人当たりに10台から
15台もの輸液ポンプを使用して薬液を輸液する場合が
ある。このような場合は、患者に対して心電計、人工呼
吸器、体温計などを同時に使用することが多いため、あ
まり広くない病室をさらに狭くし、ベッドの周辺を繁雑
にする上に、治療にあたる医師や看護婦の活動に大きな
支障を及ぼすことになっていた。そこで、病室を少しで
も広く使えるように、1台で2以上のポンプ駆動部をも
つ輸液ポンプが開発された。
プは、その開発の初期においては1台当たり1個のポン
プ駆動部を有しているだけであった。しかし、重症患者
に対して治療を行う場合、患者一人当たりに10台から
15台もの輸液ポンプを使用して薬液を輸液する場合が
ある。このような場合は、患者に対して心電計、人工呼
吸器、体温計などを同時に使用することが多いため、あ
まり広くない病室をさらに狭くし、ベッドの周辺を繁雑
にする上に、治療にあたる医師や看護婦の活動に大きな
支障を及ぼすことになっていた。そこで、病室を少しで
も広く使えるように、1台で2以上のポンプ駆動部をも
つ輸液ポンプが開発された。
【0003】一方、近時では、薬液を送液するという輸
液ポンプの基本的な機能に加えて、複数の送液パターン
を記憶しておき自動的に切り換えながら送液するといっ
た機能や、時計手段をもたせて単位時間ごとに輸液累積
値を記憶させるといった機能や、ポンプ累積動作時間を
記憶し呼び出しさせる機能や、コンピュータによる通信
によって制御を行うなどのより多くの付加機能をもつこ
とが要求されるようになってきた。そして、このこと
は、1つしかないマイクロプロセッサ(中央演算処理装
置)に対して大きな負担をかけることになった。詳しく
は、次のとおりである。
液ポンプの基本的な機能に加えて、複数の送液パターン
を記憶しておき自動的に切り換えながら送液するといっ
た機能や、時計手段をもたせて単位時間ごとに輸液累積
値を記憶させるといった機能や、ポンプ累積動作時間を
記憶し呼び出しさせる機能や、コンピュータによる通信
によって制御を行うなどのより多くの付加機能をもつこ
とが要求されるようになってきた。そして、このこと
は、1つしかないマイクロプロセッサ(中央演算処理装
置)に対して大きな負担をかけることになった。詳しく
は、次のとおりである。
【0004】すなわち、従来の輸液ポンプは、複数のポ
ンプ駆動部を有しているものにおいても、1つのマイク
ロプロセッサによってそれら複数のポンプ駆動部を制御
していた。それは、輸液ポンプにおける付加機能が少な
く、マイクロプロセッサに要求される負担が少なかった
ため、特にソフトウェアに工夫をしなくても複数のポン
プ駆動部に対して、輸液精度に問題となるほどの遅延な
くモータ駆動パルスを出力することができたためであ
る。
ンプ駆動部を有しているものにおいても、1つのマイク
ロプロセッサによってそれら複数のポンプ駆動部を制御
していた。それは、輸液ポンプにおける付加機能が少な
く、マイクロプロセッサに要求される負担が少なかった
ため、特にソフトウェアに工夫をしなくても複数のポン
プ駆動部に対して、輸液精度に問題となるほどの遅延な
くモータ駆動パルスを出力することができたためであ
る。
【0005】図9に2つのポンプ駆動部を有する従来の
輸液ポンプの電気的構成をブロック線図として示す。こ
の輸液ポンプは、陽圧ぜん動式の静脈注入装置であり、
所定の輸液セットとともに使用される。ポンプ駆動部を
2つ有しているのは、効き目を異にする2つの薬液を同
時に異なる送液速度によって輸液するためである。この
ことは、2つのポンプが独立して設定した速度で正確に
送液できてはじめて満足できるものとなる。
輸液ポンプの電気的構成をブロック線図として示す。こ
の輸液ポンプは、陽圧ぜん動式の静脈注入装置であり、
所定の輸液セットとともに使用される。ポンプ駆動部を
2つ有しているのは、効き目を異にする2つの薬液を同
時に異なる送液速度によって輸液するためである。この
ことは、2つのポンプが独立して設定した速度で正確に
送液できてはじめて満足できるものとなる。
【0006】図9において、1a,1bは第1および第
2のポンプヘッド部であり、これは、所定の輸液セット
用に設計された直線ぜん動式の輸液ポンプ機構でチュー
ブをぜん動式に押圧することで輸液力を与えるものであ
る。これらのポンプヘッド部1a,1bは図示しない第
1および第2のステッピングモータによって駆動される
ようになっている。2a,2bはマイクロプロセッサ
(中央演算処理装置)100から出力されるモータ駆動
パルスによって各ステッピングモータを駆動するための
第1および第2のモータ駆動回路、3a,3bは各ポン
プ駆動部の回転量の検出に基づいて、各モータ駆動回路
2a,2bによる各ポンプヘッド部1a,1bを介して
の送液量が単位流量(例えば1ミリリットル)となるご
とにそのことをマイクロプロセッサ100に知らせるモ
ータ回転検出回路である。4a,4bは各薬液バッグと
ポンプ駆動部との間の輸液セット中においてフィルタの
目詰まりなどの異常が生じたことによる圧力低下を検出
する第1および第2の上流閉塞検出回路であり、これが
動作すると警報が発せられるとともにポンプの駆動が停
止されるようになっている。5a,5bは各ポンプ駆動
部と患者との間の輸液チューブにおいて目詰まりなどの
異常が生じたことによる圧力上昇を検出する第1および
第2の下流閉塞検出回路であり、これが動作すると警報
が発せられるとともにポンプの駆動が停止されるように
なっている。6a,6bは各輸液チューブ内に規定され
た量以上の気泡が入ったことを検出する第1および第2
の気泡検出回路であり、これが動作すると警報が発せら
れるとともにポンプの駆動を停止して患者の血管内に気
泡が入ることを防止する。7a,7bは輸液チューブを
ポンプ駆動部にセットするときにポンプ駆動部を開閉す
るためのドアが開放状態であることを検出する第1およ
び第2のドア開放検出回路であり、ポンプ駆動部の駆動
中にドアが不測に開放されたとき、警報が発せられると
ともにポンプの駆動が停止されるようになっている。8
a,8bは各ポンプ駆動部について輸液動作中や停止中
や警報中をランプ表示する第1および第2の動作状態表
示部、9a,9bは各ポンプ駆動部についてのすべての
警報メッセージを表示する第1および第2の警報表示
部、10a,10bは各ポンプ駆動部に対してキー入力
された輸液量や輸液予定量や輸液累積値など、輸液に関
するすべての情報を表示するための第1および第2の表
示部である。
2のポンプヘッド部であり、これは、所定の輸液セット
用に設計された直線ぜん動式の輸液ポンプ機構でチュー
ブをぜん動式に押圧することで輸液力を与えるものであ
る。これらのポンプヘッド部1a,1bは図示しない第
1および第2のステッピングモータによって駆動される
ようになっている。2a,2bはマイクロプロセッサ
(中央演算処理装置)100から出力されるモータ駆動
パルスによって各ステッピングモータを駆動するための
第1および第2のモータ駆動回路、3a,3bは各ポン
プ駆動部の回転量の検出に基づいて、各モータ駆動回路
2a,2bによる各ポンプヘッド部1a,1bを介して
の送液量が単位流量(例えば1ミリリットル)となるご
とにそのことをマイクロプロセッサ100に知らせるモ
ータ回転検出回路である。4a,4bは各薬液バッグと
ポンプ駆動部との間の輸液セット中においてフィルタの
目詰まりなどの異常が生じたことによる圧力低下を検出
する第1および第2の上流閉塞検出回路であり、これが
動作すると警報が発せられるとともにポンプの駆動が停
止されるようになっている。5a,5bは各ポンプ駆動
部と患者との間の輸液チューブにおいて目詰まりなどの
異常が生じたことによる圧力上昇を検出する第1および
第2の下流閉塞検出回路であり、これが動作すると警報
が発せられるとともにポンプの駆動が停止されるように
なっている。6a,6bは各輸液チューブ内に規定され
た量以上の気泡が入ったことを検出する第1および第2
の気泡検出回路であり、これが動作すると警報が発せら
れるとともにポンプの駆動を停止して患者の血管内に気
泡が入ることを防止する。7a,7bは輸液チューブを
ポンプ駆動部にセットするときにポンプ駆動部を開閉す
るためのドアが開放状態であることを検出する第1およ
び第2のドア開放検出回路であり、ポンプ駆動部の駆動
中にドアが不測に開放されたとき、警報が発せられると
ともにポンプの駆動が停止されるようになっている。8
a,8bは各ポンプ駆動部について輸液動作中や停止中
や警報中をランプ表示する第1および第2の動作状態表
示部、9a,9bは各ポンプ駆動部についてのすべての
警報メッセージを表示する第1および第2の警報表示
部、10a,10bは各ポンプ駆動部に対してキー入力
された輸液量や輸液予定量や輸液累積値など、輸液に関
するすべての情報を表示するための第1および第2の表
示部である。
【0007】100は輸液ポンプ全体の制御を司るマイ
クロプロセッサ(中央演算処理装置)であり、後述する
カウンタ、レジスタ、フラグ(FRC、OCR1、OC
R2、OCRFLG)を備えているとともに、輸液予定
量終了の判定等に使用する時計も備えている。200は
マイクロプロセッサ100を動作させるためのプログラ
ムが格納されているROM(リードオンリーメモリ:プ
ログラム部)である。
クロプロセッサ(中央演算処理装置)であり、後述する
カウンタ、レジスタ、フラグ(FRC、OCR1、OC
R2、OCRFLG)を備えているとともに、輸液予定
量終了の判定等に使用する時計も備えている。200は
マイクロプロセッサ100を動作させるためのプログラ
ムが格納されているROM(リードオンリーメモリ:プ
ログラム部)である。
【0008】このROM200には、モータ駆動パルス
を出力するソフトウェアが存在している。300はキー
入力された輸液量や輸液予定量を記憶しておくとともに
マイクロプロセッサ100によって演算処理された輸液
累積値その他の各種のデータを格納しておくためのRA
M(ランダムアクセスメモリ:メモリ部)である。
を出力するソフトウェアが存在している。300はキー
入力された輸液量や輸液予定量を記憶しておくとともに
マイクロプロセッサ100によって演算処理された輸液
累積値その他の各種のデータを格納しておくためのRA
M(ランダムアクセスメモリ:メモリ部)である。
【0009】11は各種の指示をキー入力するためのキ
ーパネル部である。このキーパネル部11には、各ポン
プ駆動部の駆動速度と時間を設定するため輸液量と輸液
予定量とを入力するための数値キー、入力を補助するた
めの制御キー、ポンプ駆動部を始動させるためのスター
トキー、ポンプ駆動部を停止させるためのストップキ
ー、輸液累積値などの表示を行うための呼び出しキーな
どが設けられている。12は医師または看護婦以外の者
によってみだりに操作が行われないようにするため電源
キーを含めて各種キーの入力を禁止状態にするパネルロ
ックスイッチである。13は輸液ポンプにおける各回路
部に電源を供給するための電源回路、14a,14bは
電源回路13から第1および第2のポンプ駆動部に対す
る電源の供給および遮断を行う第1および第2の電源ス
イッチ、15は蓄電池の電圧を検出しそれが所定値以下
となったときに警報を発生させるとともに各ポンプ駆動
部を停止させるための電池電圧検出回路である。なお、
その蓄電池は、電源回路13によるAC動作中には電源
回路13より充電されている。16はマイクロプロセッ
サ100が警報状態を判定したときに医師または看護婦
にブザー音で警報を与える警報音用ブザー駆動回路、1
7は各モータ駆動回路2a,2bにおいてポンプ駆動モ
ータに流す電流を電圧に変換した電圧値や、各気泡検出
回路6a,6bからの検出電圧値や、電池電圧検出回路
15からの電池電圧値を入力し、A/D変換によりディ
ジタル値に置き換えてマイクロプロセッサ100に入力
するA/D変換回路である。
ーパネル部である。このキーパネル部11には、各ポン
プ駆動部の駆動速度と時間を設定するため輸液量と輸液
予定量とを入力するための数値キー、入力を補助するた
めの制御キー、ポンプ駆動部を始動させるためのスター
トキー、ポンプ駆動部を停止させるためのストップキ
ー、輸液累積値などの表示を行うための呼び出しキーな
どが設けられている。12は医師または看護婦以外の者
によってみだりに操作が行われないようにするため電源
キーを含めて各種キーの入力を禁止状態にするパネルロ
ックスイッチである。13は輸液ポンプにおける各回路
部に電源を供給するための電源回路、14a,14bは
電源回路13から第1および第2のポンプ駆動部に対す
る電源の供給および遮断を行う第1および第2の電源ス
イッチ、15は蓄電池の電圧を検出しそれが所定値以下
となったときに警報を発生させるとともに各ポンプ駆動
部を停止させるための電池電圧検出回路である。なお、
その蓄電池は、電源回路13によるAC動作中には電源
回路13より充電されている。16はマイクロプロセッ
サ100が警報状態を判定したときに医師または看護婦
にブザー音で警報を与える警報音用ブザー駆動回路、1
7は各モータ駆動回路2a,2bにおいてポンプ駆動モ
ータに流す電流を電圧に変換した電圧値や、各気泡検出
回路6a,6bからの検出電圧値や、電池電圧検出回路
15からの電池電圧値を入力し、A/D変換によりディ
ジタル値に置き換えてマイクロプロセッサ100に入力
するA/D変換回路である。
【0010】次に、この輸液ポンプにおける2つのポン
プ駆動部の制御方法について説明する。
プ駆動部の制御方法について説明する。
【0011】マイクロプロセッサ100は、次のカウン
タとレジスタとを有している。これらはすべて16ビッ
トで構成されている。
タとレジスタとを有している。これらはすべて16ビッ
トで構成されている。
【0012】FRC (Free Running Counter) OCR1(Out Put Compare Register 1) OCR2(Out Put Compare Register 2) タイムカウンタFRCは、マイクロプロセッサ100を
制御するソフトウェアの実行からは独立してマイクロプ
ロセッサ100の内部機能により自動的に500nse
cごとにアップカウント(インクリメント)するカウン
タであり、“0”からスタートして16進数表示で“F
FFF”まで増加すると、次の500nsecのカウン
ト後にリセットされて再び“0”に戻るようになってい
る。OCR1は第1のポンプ駆動部用のレジスタ、OC
R2は第2のポンプ駆動部用のレジスタであり、両レジ
スタOCR1,OCR2は、ソフトウェアによって
“0”から“FFFF”までの任意の値を互いに独立し
て書き込みまた読み出すことができるようになってい
る。両レジスタOCR1,OCR2にはそれぞれ、第1
および第2のポンプ駆動部に対するモータ駆動パルスの
出力のタイミング制御用の比較基準値が入力される。
制御するソフトウェアの実行からは独立してマイクロプ
ロセッサ100の内部機能により自動的に500nse
cごとにアップカウント(インクリメント)するカウン
タであり、“0”からスタートして16進数表示で“F
FFF”まで増加すると、次の500nsecのカウン
ト後にリセットされて再び“0”に戻るようになってい
る。OCR1は第1のポンプ駆動部用のレジスタ、OC
R2は第2のポンプ駆動部用のレジスタであり、両レジ
スタOCR1,OCR2は、ソフトウェアによって
“0”から“FFFF”までの任意の値を互いに独立し
て書き込みまた読み出すことができるようになってい
る。両レジスタOCR1,OCR2にはそれぞれ、第1
および第2のポンプ駆動部に対するモータ駆動パルスの
出力のタイミング制御用の比較基準値が入力される。
【0013】ソフトウェアの割り込み機能として、2つ
のアウトプットコンペア割り込み、 OCI1(Out Put Compare Interrupt 1) OCI2(Out Put Compare Inte
rrupt 2) を発生できるようになっている。
のアウトプットコンペア割り込み、 OCI1(Out Put Compare Interrupt 1) OCI2(Out Put Compare Inte
rrupt 2) を発生できるようになっている。
【0014】第1の割り込みOCI1は、タイムカウン
タFRCによるカウント値が第1のレジスタOCR1の
内容(比較基準値)と一致したとき(FRC=OCR1
となったとき)に発生する。第2の割り込みOCI2
は、タイムカウンタFRCによるカウント値が第2のレ
ジスタOCR2の内容(比較基準値)と一致したとき
(FRC=OCR2となったとき)に発生する。第1の
レジスタOCR1の比較基準値と第2のレジスタOCR
2の比較基準値とは互いに独立して取り扱うものであ
り、したがって、第1の割り込みOCI1の発生と第2
の割り込みOCI2の発生とは互いに独立しているが、
割り込み発生後に実行されるべきソフトウェア上の実行
アドレス(サブルーチン)は共通になっている。この共
通の実行場所(実行モジュール)を割り込みOCIとし
て表現することにする。
タFRCによるカウント値が第1のレジスタOCR1の
内容(比較基準値)と一致したとき(FRC=OCR1
となったとき)に発生する。第2の割り込みOCI2
は、タイムカウンタFRCによるカウント値が第2のレ
ジスタOCR2の内容(比較基準値)と一致したとき
(FRC=OCR2となったとき)に発生する。第1の
レジスタOCR1の比較基準値と第2のレジスタOCR
2の比較基準値とは互いに独立して取り扱うものであ
り、したがって、第1の割り込みOCI1の発生と第2
の割り込みOCI2の発生とは互いに独立しているが、
割り込み発生後に実行されるべきソフトウェア上の実行
アドレス(サブルーチン)は共通になっている。この共
通の実行場所(実行モジュール)を割り込みOCIとし
て表現することにする。
【0015】ただし、共通の割り込みOCIの実行にお
いては、その原因が第1の割り込みOCI1にあるのか
第2の割り込みOCI2にあるのかを識別する必要があ
る。
いては、その原因が第1の割り込みOCI1にあるのか
第2の割り込みOCI2にあるのかを識別する必要があ
る。
【0016】そこで、マイクロプロセッサ100の内部
機能によって設定される8ビットのフラグOCRFLG
が準備されている。フラグOCRFLGの1ビット目が
“1”にセットされているときは第1の割り込みOCI
1によるものと認識し、フラグOCRFLGの2ビット
目が“1”にセットされているときは第2の割り込みO
CI2によるものと認識するようになっている。なお、
フラグOCRFLGはソフトウェアによって各ビットを
“0”にリセットすることは可能であるが、“1”にセ
ットすることはできないようになっている。すなわち、
第1または第2の割り込みOCI1,OCI2が発生し
たときに限って、マイクロプロセッサ100により
“1”にセットすることが可能となっている。また、第
1の割り込みOCI1と第2の割り込みOCI2とが独
立して発生し得ることから、フラグOCRFLGの1ビ
ット目も2ビット目も同時に“1”になっている事態が
起こり得る。
機能によって設定される8ビットのフラグOCRFLG
が準備されている。フラグOCRFLGの1ビット目が
“1”にセットされているときは第1の割り込みOCI
1によるものと認識し、フラグOCRFLGの2ビット
目が“1”にセットされているときは第2の割り込みO
CI2によるものと認識するようになっている。なお、
フラグOCRFLGはソフトウェアによって各ビットを
“0”にリセットすることは可能であるが、“1”にセ
ットすることはできないようになっている。すなわち、
第1または第2の割り込みOCI1,OCI2が発生し
たときに限って、マイクロプロセッサ100により
“1”にセットすることが可能となっている。また、第
1の割り込みOCI1と第2の割り込みOCI2とが独
立して発生し得ることから、フラグOCRFLGの1ビ
ット目も2ビット目も同時に“1”になっている事態が
起こり得る。
【0017】具体的なモータ制御のためのモータ駆動パ
ルスの出力の仕方を第1のポンプ駆動部の場合について
説明する。
ルスの出力の仕方を第1のポンプ駆動部の場合について
説明する。
【0018】モータ駆動パルスの時間間隔値がdである
とする。ポンプの駆動開始のタイミングにおいて、タイ
ムカウンタFRCのカウント値が例えば、 FRC=t1 であったとする。すると、1回目のモータ駆動パルスの
出力タイミングは、 FRC=t1 +d となったときである。そこで、第1のレジスタOCR1
の内容を、 OCR1=t1 +d に設定して第1の割り込みOCI1が発生可能な状態に
しておく。すると、時刻(t1 +d)になったときに、
タイムカウンタFRCのカウント値が、 FRC=t1 +d となり、 FRC=OCR1 となるので、第1の割り込みOCI1が発生し、1回目
のモータ駆動パルスが出力される。
とする。ポンプの駆動開始のタイミングにおいて、タイ
ムカウンタFRCのカウント値が例えば、 FRC=t1 であったとする。すると、1回目のモータ駆動パルスの
出力タイミングは、 FRC=t1 +d となったときである。そこで、第1のレジスタOCR1
の内容を、 OCR1=t1 +d に設定して第1の割り込みOCI1が発生可能な状態に
しておく。すると、時刻(t1 +d)になったときに、
タイムカウンタFRCのカウント値が、 FRC=t1 +d となり、 FRC=OCR1 となるので、第1の割り込みOCI1が発生し、1回目
のモータ駆動パルスが出力される。
【0019】t2 =t1 +d とすると、第1のレジスタOCR1の内容を、 OCR1=t2 +d と設定しておくことにより、時刻(t2 +d=t1 +2
d)になったときに、2回目のモータ駆動パルスが出力
される。ある割り込みOCI1から次の割り込みOCI
1までの間の時間d内において、マイクロプロセッサ1
00はポンプ駆動以外の処理を行える。
d)になったときに、2回目のモータ駆動パルスが出力
される。ある割り込みOCI1から次の割り込みOCI
1までの間の時間d内において、マイクロプロセッサ1
00はポンプ駆動以外の処理を行える。
【0020】従来においては、上記のような仕様のマイ
クロプロセッサ100を用いて、図10に示すようなフ
ローチャートにて2つのポンプ駆動部を制御していた。
以下、具体的に制御動作を説明する。
クロプロセッサ100を用いて、図10に示すようなフ
ローチャートにて2つのポンプ駆動部を制御していた。
以下、具体的に制御動作を説明する。
【0021】タイムカウンタFRCのカウント値が第1
または第2のレジスタOCR1,OCR2の内容と一致
して割り込みOCIが発生すると、マイクロプロセッサ
100は、現在実行中のプログラムを一時的に中断し
て、割り込みOCI処理モジュールの実行を開始する。
まず、ステップn1でフラグOCRFLGの1ビット目
が“1”にセットされているかどうか、つまり、割り込
みOCIが第1の割り込みOCI1によるものかどうか
を判断する。この判断が肯定的となるとき、ステップn
2に進んでフラグOCRFLGの1ビット目をリセット
して“0”にし、次いで、ステップn3で第1のポンプ
駆動部を駆動するため第1のモータ駆動回路2aに対し
てモータ駆動パルスを出力する。ステップn4では、次
回の第1の割り込みOCI1を発生させる準備として、
次にタイムカウンタFRC=OCR1となるべき値を計
算によって求め、その計算結果を第1のレジスタOCR
1に設定する。次いで、一時中断していたプログラムを
再開するため中断先のアドレスへとリターンする。
または第2のレジスタOCR1,OCR2の内容と一致
して割り込みOCIが発生すると、マイクロプロセッサ
100は、現在実行中のプログラムを一時的に中断し
て、割り込みOCI処理モジュールの実行を開始する。
まず、ステップn1でフラグOCRFLGの1ビット目
が“1”にセットされているかどうか、つまり、割り込
みOCIが第1の割り込みOCI1によるものかどうか
を判断する。この判断が肯定的となるとき、ステップn
2に進んでフラグOCRFLGの1ビット目をリセット
して“0”にし、次いで、ステップn3で第1のポンプ
駆動部を駆動するため第1のモータ駆動回路2aに対し
てモータ駆動パルスを出力する。ステップn4では、次
回の第1の割り込みOCI1を発生させる準備として、
次にタイムカウンタFRC=OCR1となるべき値を計
算によって求め、その計算結果を第1のレジスタOCR
1に設定する。次いで、一時中断していたプログラムを
再開するため中断先のアドレスへとリターンする。
【0022】もし、ステップn1の判断においてフラグ
OCRFLGの1ビット目が“0”となっていたとき
は、割り込みOCIが第1の割り込みOCI1に起因し
たものでないと判定できるので、ステップn5に進み、
第2の割り込みOCI2に起因したものであることを確
認するため、フラグOCRFLGの2ビット目が“1”
にセットされているかどうかを判断する。この判断が肯
定的となるとき、ステップn6に進んでフラグOCRF
LGの2ビット目をリセットして“0”にし、次いで、
ステップn7で第2のポンプ駆動部を駆動するため第2
のモータ駆動回路2bに対してモータ駆動パルスを出力
する。ステップn8では、次回の第2の割り込みOCI
2を発生させる準備として、次にタイムカウンタFRC
=OCR2となるべき値を計算によって求め、その計算
結果を第2のレジスタOCR2に設定する。次いで、一
時中断していたプログラムを再開するため中断先のアド
レスへとリターンする。
OCRFLGの1ビット目が“0”となっていたとき
は、割り込みOCIが第1の割り込みOCI1に起因し
たものでないと判定できるので、ステップn5に進み、
第2の割り込みOCI2に起因したものであることを確
認するため、フラグOCRFLGの2ビット目が“1”
にセットされているかどうかを判断する。この判断が肯
定的となるとき、ステップn6に進んでフラグOCRF
LGの2ビット目をリセットして“0”にし、次いで、
ステップn7で第2のポンプ駆動部を駆動するため第2
のモータ駆動回路2bに対してモータ駆動パルスを出力
する。ステップn8では、次回の第2の割り込みOCI
2を発生させる準備として、次にタイムカウンタFRC
=OCR2となるべき値を計算によって求め、その計算
結果を第2のレジスタOCR2に設定する。次いで、一
時中断していたプログラムを再開するため中断先のアド
レスへとリターンする。
【0023】ステップn5の判断が否定的となるとき、
第1の割り込みOCI1も第2の割り込みOCI2も発
生していないのに割り込みOCIが発生したことにな
る。これは何らかの外乱に起因していると考えられる。
したがって、適当なエラー処理を行えばよいが、ここで
の機能説明には本質的に関係しないので、単に中断先の
アドレスへとリターンすることとしている。
第1の割り込みOCI1も第2の割り込みOCI2も発
生していないのに割り込みOCIが発生したことにな
る。これは何らかの外乱に起因していると考えられる。
したがって、適当なエラー処理を行えばよいが、ここで
の機能説明には本質的に関係しないので、単に中断先の
アドレスへとリターンすることとしている。
【0024】
【発明が解決しようとする課題】以下に、従来例におけ
る問題点を図11のタイミングチャートを用いて説明す
る。図11の(a)は、ステッピングモータを1−2相
励磁という駆動方法で回転させる場合のモータ駆動パル
スを示している。このモータにはA,B,C,Dの4個
のコイルがあって、からまでの8つのコイル励磁パ
ターンを、第1の割り込みOCI1(または第2の割り
込みOCI2)の実行タイミングにて順に発生させるこ
とにより、モータを回転させている。割り込みOCI1
(OCI2)の実行間隔がdである。モータ駆動パルス
の出力というのは、この励磁パターンを発生させること
である。各期間〜におけるパターンは次のとおりで
ある。1は励磁状態(励磁ON)を示し、0は非励磁状
態(励磁OFF)を示す。
る問題点を図11のタイミングチャートを用いて説明す
る。図11の(a)は、ステッピングモータを1−2相
励磁という駆動方法で回転させる場合のモータ駆動パル
スを示している。このモータにはA,B,C,Dの4個
のコイルがあって、からまでの8つのコイル励磁パ
ターンを、第1の割り込みOCI1(または第2の割り
込みOCI2)の実行タイミングにて順に発生させるこ
とにより、モータを回転させている。割り込みOCI1
(OCI2)の実行間隔がdである。モータ駆動パルス
の出力というのは、この励磁パターンを発生させること
である。各期間〜におけるパターンは次のとおりで
ある。1は励磁状態(励磁ON)を示し、0は非励磁状
態(励磁OFF)を示す。
【0025】 図11の(a)に示すように、ステッピングモータの4
個のコイルA,B,C,Dに対する励磁をモータ駆動パ
ルス間隔dにおいて位相変化させることにより、ステッ
ピングモータを回転させる。4個のコイルによる合成磁
界は、本来的には時間dの間にわたって変化しないこと
が望ましい。モータの駆動以外の割り込み処理による時
間遅れが生じても、その遅れ時間eが図11の(b)の
ように短いうちは問題にはならないのであるが、先に述
べたように輸液ポンプの付加機能が増えるに従って、モ
ータの駆動以外の割り込み処理も増えてくることにな
り、それによる時間遅れが図11の(c)のように許容
できない長さの時間te になることがある。このような
とき、ステッピングモータに対してそれの回転に必要な
充分な励磁時間が与えられず、モータが脱調状態にな
り、回転が遅れた状態が発生して輸液精度の低下を引き
起こすことになる。
個のコイルA,B,C,Dに対する励磁をモータ駆動パ
ルス間隔dにおいて位相変化させることにより、ステッ
ピングモータを回転させる。4個のコイルによる合成磁
界は、本来的には時間dの間にわたって変化しないこと
が望ましい。モータの駆動以外の割り込み処理による時
間遅れが生じても、その遅れ時間eが図11の(b)の
ように短いうちは問題にはならないのであるが、先に述
べたように輸液ポンプの付加機能が増えるに従って、モ
ータの駆動以外の割り込み処理も増えてくることにな
り、それによる時間遅れが図11の(c)のように許容
できない長さの時間te になることがある。このような
とき、ステッピングモータに対してそれの回転に必要な
充分な励磁時間が与えられず、モータが脱調状態にな
り、回転が遅れた状態が発生して輸液精度の低下を引き
起こすことになる。
【0026】具体例を挙げて説明する。ソフトウェアが
モータ駆動以外に実行しなければならない割り込み処理
として、例えば、上流/下流閉塞検出のためのセンサデ
ータサンプル要求(int1)、気泡検出のためのセン
サデータサンプル要求(int2)、および、電源電圧
サンプル要求(int3)があるとする。あるタイミン
グにおいてマイクロプロセッサ100の実行サイクル時
間である500msecずつ遅れて、OCI1、int
1、int2、int3、OCI2の順に割り込み要求
が発生した場合を考える。それぞれのモジュールの実行
時間は次のとおりとする。
モータ駆動以外に実行しなければならない割り込み処理
として、例えば、上流/下流閉塞検出のためのセンサデ
ータサンプル要求(int1)、気泡検出のためのセン
サデータサンプル要求(int2)、および、電源電圧
サンプル要求(int3)があるとする。あるタイミン
グにおいてマイクロプロセッサ100の実行サイクル時
間である500msecずつ遅れて、OCI1、int
1、int2、int3、OCI2の順に割り込み要求
が発生した場合を考える。それぞれのモジュールの実行
時間は次のとおりとする。
【0027】OCI1 100μsec int1 30μsec int2 30μsec int3 30μsec OCI2 100μsec この輸液ポンプを最高回転速度で動作させるとき(輸液
速度1999ml/hr)、モータ駆動パルス間隔d
が、 d=450μsec となるようにモータを回転させる必要がある。
速度1999ml/hr)、モータ駆動パルス間隔d
が、 d=450μsec となるようにモータを回転させる必要がある。
【0028】ところで、脱調を発生させないで回転させ
るためには、理想的なモータ駆動パルス間隔dに対し
て、d/3までの時間遅れが許容されることが実験的に
確かめられているので、許容できる遅れ時間te は、 te =d/3=150μsec となる。上記の例では、第2の割り込みOCI2に対し
て、 100+30+30+30=190(μsec) の時間遅れが発生することになる(図11の(d)参
照)。これでは、許容できる最大の遅れ時間te (=1
50μsec)を上回ることになり、第2の割り込みO
CI2に対する正常なモータ駆動パルス出力を保証でき
ないことになる。すなわち、モータの脱調から輸液精度
の低下を招くおそれがあった。
るためには、理想的なモータ駆動パルス間隔dに対し
て、d/3までの時間遅れが許容されることが実験的に
確かめられているので、許容できる遅れ時間te は、 te =d/3=150μsec となる。上記の例では、第2の割り込みOCI2に対し
て、 100+30+30+30=190(μsec) の時間遅れが発生することになる(図11の(d)参
照)。これでは、許容できる最大の遅れ時間te (=1
50μsec)を上回ることになり、第2の割り込みO
CI2に対する正常なモータ駆動パルス出力を保証でき
ないことになる。すなわち、モータの脱調から輸液精度
の低下を招くおそれがあった。
【0029】ところで、図11の(b)で遅れ時間eだ
けを考えると、3つの割り込みに対しては、 e=int1+int2+int3 となる。OCR=t1 で割り込み要求があった場合に、
eのモータ割り込み処理遅れがあって、t1 ′=t1 +
eのタイミングで実際にモータ駆動パルスが出力された
としても、次回のモータ割り込み要求は、t2 =t1 +
dで設定されるので、次回のモータ駆動パルスの出力を
遅延なく時刻t2 で実行できれば、遅れ時間eは、次回
のモータ駆動パルスの出力タイミングで結果的に補正さ
れることとなり、全体として輸液遅れは生じないです
む。しかし、このように、あるタイミングでは遅れても
次のタイミングでは遅れが生じないことから結果として
補正できるという場合は、遅れ自体の発生確率が比較的
に小さい場合に限られるのである。
けを考えると、3つの割り込みに対しては、 e=int1+int2+int3 となる。OCR=t1 で割り込み要求があった場合に、
eのモータ割り込み処理遅れがあって、t1 ′=t1 +
eのタイミングで実際にモータ駆動パルスが出力された
としても、次回のモータ割り込み要求は、t2 =t1 +
dで設定されるので、次回のモータ駆動パルスの出力を
遅延なく時刻t2 で実行できれば、遅れ時間eは、次回
のモータ駆動パルスの出力タイミングで結果的に補正さ
れることとなり、全体として輸液遅れは生じないです
む。しかし、このように、あるタイミングでは遅れても
次のタイミングでは遅れが生じないことから結果として
補正できるという場合は、遅れ自体の発生確率が比較的
に小さい場合に限られるのである。
【0030】しかしながら、輸液ポンプの機能が増える
に従って、モータ以外の割り込み処理が増えてくると、
割り込みに起因した遅れ時間が次第に増加する。その場
合の問題点を図12によって説明する。遅れ時間がすべ
て等しくて、e1 =e2 =e3 =e4 =e5 =……とな
っている場合、e2 −e1 、e3 −e2 、e4 −e3…
…の値がすべて0であるので、設定されたモータ駆動パ
ルス間隔dに対して、d=d1 =d2 =d3 =d4 =
……となるので、実質的には輸液精度の低下は生じな
い。
に従って、モータ以外の割り込み処理が増えてくると、
割り込みに起因した遅れ時間が次第に増加する。その場
合の問題点を図12によって説明する。遅れ時間がすべ
て等しくて、e1 =e2 =e3 =e4 =e5 =……とな
っている場合、e2 −e1 、e3 −e2 、e4 −e3…
…の値がすべて0であるので、設定されたモータ駆動パ
ルス間隔dに対して、d=d1 =d2 =d3 =d4 =
……となるので、実質的には輸液精度の低下は生じな
い。
【0031】しかし、遅れ時間が次第に増加していく場
合、つまり、e1 <e2 <e3 <e4 <e5 <……とな
っていく場合、e2 −e1 、e3 −e2 、e4 −e3 …
…の値も次第に増加していくので、実際のモータ駆動パ
ルス間隔が、d<d1 <d2<d3 <d4 <……と次第
に延びていくことになる。つまり、輸液精度が次第に低
下していくことになる。そして、その延びの時間の累積
値である、(e2 −e1 )+(e3 −e2 )+(e4 −
e3 )+……が最終的に許容できない限界値(GENK
AI)になることがある。
合、つまり、e1 <e2 <e3 <e4 <e5 <……とな
っていく場合、e2 −e1 、e3 −e2 、e4 −e3 …
…の値も次第に増加していくので、実際のモータ駆動パ
ルス間隔が、d<d1 <d2<d3 <d4 <……と次第
に延びていくことになる。つまり、輸液精度が次第に低
下していくことになる。そして、その延びの時間の累積
値である、(e2 −e1 )+(e3 −e2 )+(e4 −
e3 )+……が最終的に許容できない限界値(GENK
AI)になることがある。
【0032】このように、多機能化することが原因で、
モータ駆動パルスの出力タイミングの遅延が次第に大き
なものとなり、輸液ポンプとして輸液精度の信頼性を保
てないほどに悪影響を及ぼしかねない状況になってきて
いるのである。このような問題を発生させる可能性は、
人命に影響する医療用治療機器としての輸液ポンプにお
いては決して許されてはいけないことである。
モータ駆動パルスの出力タイミングの遅延が次第に大き
なものとなり、輸液ポンプとして輸液精度の信頼性を保
てないほどに悪影響を及ぼしかねない状況になってきて
いるのである。このような問題を発生させる可能性は、
人命に影響する医療用治療機器としての輸液ポンプにお
いては決して許されてはいけないことである。
【0033】これを解決する一つの対策として、マイク
ロプロセッサの負担軽減のためマイクロプロセッサの個
数を増やすことが考えられる。しかし、ポンプ駆動部1
台当たりのコストアップを招くとともに、マイクロプロ
セッサ相互間の動作管理のためのデータ通信が必要とな
り、現実的な解決策ではない。別の対策として、より高
速なマイクロプロセッサを使用することが考えられる
が、やはりマイクロプロセッサのコストアップを招く
し、輸液ポンプの各回路部をその高速なマイクロプロセ
ッサに対応させて設計し直す必要があり、それでは開発
に時間がかかり、また、膨大な投資を必要とするなど、
必ずしも得策とはならない。
ロプロセッサの負担軽減のためマイクロプロセッサの個
数を増やすことが考えられる。しかし、ポンプ駆動部1
台当たりのコストアップを招くとともに、マイクロプロ
セッサ相互間の動作管理のためのデータ通信が必要とな
り、現実的な解決策ではない。別の対策として、より高
速なマイクロプロセッサを使用することが考えられる
が、やはりマイクロプロセッサのコストアップを招く
し、輸液ポンプの各回路部をその高速なマイクロプロセ
ッサに対応させて設計し直す必要があり、それでは開発
に時間がかかり、また、膨大な投資を必要とするなど、
必ずしも得策とはならない。
【0034】本発明は、このような事情に鑑みて創案さ
れたものであって、従来と同等程度の機能を有する1つ
のマイクロプロセッサを用いて複数のポンプ駆動部を駆
動する多機能な輸液ポンプにおいて、モータ回転遅延に
よる輸液精度の低下を的確に補正して正常に動作させる
ことができるようにすることを目的とする。
れたものであって、従来と同等程度の機能を有する1つ
のマイクロプロセッサを用いて複数のポンプ駆動部を駆
動する多機能な輸液ポンプにおいて、モータ回転遅延に
よる輸液精度の低下を的確に補正して正常に動作させる
ことができるようにすることを目的とする。
【0035】
【課題を解決するための手段】本発明に係る第一の輸液
ポンプは、複数のポンプ駆動部と、それら複数のポンプ
駆動部を制御する1つのマイクロプロセッサと、このマ
イクロプロセッサを制御するソフトウェアを内蔵するプ
ログラム部とを備え、前記ソフトウェアは、マイクロプ
ロセッサが内蔵するタイマを用いて割り込みを発生して
各ポンプ駆動部における複数のモータ駆動回路に対して
前記マイクロプロセッサからモータ駆動パルスを出力さ
せる手段と、各モータ駆動回路における割り込み遅れが
所定量を超えるときはモータ駆動パルスの出力を一時停
止させる手段と、そのパルス抜け回数をカウントする手
段と、輸液予定量の輸液終了後に前記のパルス抜け回数
分だけ別にモータ駆動パルスを発生させる手段とを備え
たものであることを特徴とするものである。
ポンプは、複数のポンプ駆動部と、それら複数のポンプ
駆動部を制御する1つのマイクロプロセッサと、このマ
イクロプロセッサを制御するソフトウェアを内蔵するプ
ログラム部とを備え、前記ソフトウェアは、マイクロプ
ロセッサが内蔵するタイマを用いて割り込みを発生して
各ポンプ駆動部における複数のモータ駆動回路に対して
前記マイクロプロセッサからモータ駆動パルスを出力さ
せる手段と、各モータ駆動回路における割り込み遅れが
所定量を超えるときはモータ駆動パルスの出力を一時停
止させる手段と、そのパルス抜け回数をカウントする手
段と、輸液予定量の輸液終了後に前記のパルス抜け回数
分だけ別にモータ駆動パルスを発生させる手段とを備え
たものであることを特徴とするものである。
【0036】また、本発明に係る第二の輸液ポンプは、
複数のポンプ駆動部と、それら複数のポンプ駆動部を制
御する1つのマイクロプロセッサと、このマイクロプロ
セッサを制御するソフトウェアを内蔵するプログラム部
とを備え、前記ソフトウェアは、マイクロプロセッサが
内蔵するタイマを用いて割り込みを発生して各ポンプ駆
動部における複数のモータ駆動回路に対して前記マイク
ロプロセッサからモータ駆動パルスを出力させる手段
と、各モータ駆動回路における出力パルス遅延時間を計
測して累積する手段と、その累積遅延時間が所定値を超
えたときは次のモータ駆動パルスの出力タイミングを前
記累積遅延時間分だけ早める手段とを備えたものである
ことを特徴とするものである。
複数のポンプ駆動部と、それら複数のポンプ駆動部を制
御する1つのマイクロプロセッサと、このマイクロプロ
セッサを制御するソフトウェアを内蔵するプログラム部
とを備え、前記ソフトウェアは、マイクロプロセッサが
内蔵するタイマを用いて割り込みを発生して各ポンプ駆
動部における複数のモータ駆動回路に対して前記マイク
ロプロセッサからモータ駆動パルスを出力させる手段
と、各モータ駆動回路における出力パルス遅延時間を計
測して累積する手段と、その累積遅延時間が所定値を超
えたときは次のモータ駆動パルスの出力タイミングを前
記累積遅延時間分だけ早める手段とを備えたものである
ことを特徴とするものである。
【0037】
【作用】第一の輸液ポンプによれば、モータ割り込み遅
れが所定値を超えて脱調を起こしそうになったときは、
無理にモータ駆動パルスを出力するのではなく、パルス
出力を禁止して脱調を回避する。その分、輸液量に不足
が生じるが、その輸液量不足に係るパルス抜け回数をカ
ウントしておき、輸液予定量の輸液が終了した後に、パ
ルス抜け回数分だけモータ駆動パルスを出力して輸液不
足量を補う。
れが所定値を超えて脱調を起こしそうになったときは、
無理にモータ駆動パルスを出力するのではなく、パルス
出力を禁止して脱調を回避する。その分、輸液量に不足
が生じるが、その輸液量不足に係るパルス抜け回数をカ
ウントしておき、輸液予定量の輸液が終了した後に、パ
ルス抜け回数分だけモータ駆動パルスを出力して輸液不
足量を補う。
【0038】また、第二の輸液ポンプによれば、割り込
み要求があったタイミングから実際にモータ駆動パルス
が出力されたタイミングまでの出力パルス遅延時間を計
測しかつ累積する。パルス出力に遅延があったとき、も
し、直ちにその遅延時間分だけ早くパルス出力するよう
にすることも可能ではあるが、そうすると、その補正に
よってパルス間隔が急に短くなり、しかも、そのことが
頻繁に起こる。しかし、モータ駆動パルスの出力遅延は
機器本体が本来的にもっている構造面が原因となってい
ることが多く、モータ回転の遅延も自然な遅れとなって
現れる。パルス出力の1回の遅延のたびに常に次の出力
タイミングを早めることは、輸液の全体的な流れが速く
なったり遅くなったりして安定したものとはならない。
輸液はできるだけ自然な流れのもとで行うのが好まし
い。そこで、遅延時間を累積し、その累積遅延時間が所
定値を超えたときに初めてパルス出力タイミングを早く
することで、輸液の全体的な流れを自然なものとしなが
ら、輸液精度が一定以上に低下することを避けているの
である。
み要求があったタイミングから実際にモータ駆動パルス
が出力されたタイミングまでの出力パルス遅延時間を計
測しかつ累積する。パルス出力に遅延があったとき、も
し、直ちにその遅延時間分だけ早くパルス出力するよう
にすることも可能ではあるが、そうすると、その補正に
よってパルス間隔が急に短くなり、しかも、そのことが
頻繁に起こる。しかし、モータ駆動パルスの出力遅延は
機器本体が本来的にもっている構造面が原因となってい
ることが多く、モータ回転の遅延も自然な遅れとなって
現れる。パルス出力の1回の遅延のたびに常に次の出力
タイミングを早めることは、輸液の全体的な流れが速く
なったり遅くなったりして安定したものとはならない。
輸液はできるだけ自然な流れのもとで行うのが好まし
い。そこで、遅延時間を累積し、その累積遅延時間が所
定値を超えたときに初めてパルス出力タイミングを早く
することで、輸液の全体的な流れを自然なものとしなが
ら、輸液精度が一定以上に低下することを避けているの
である。
【0039】
【実施例】以下、本発明に係る輸液ポンプの実施例を図
面に基づいて詳細に説明する。
面に基づいて詳細に説明する。
【0040】第1実施例 図1は第1実施例の輸液ポンプ(陽圧ぜん動式の静脈注
入装置)の電気的構成を示すブロック線図である。図1
において、従来例に係る図9におけるのと同一符号は、
本第1実施例においても同一部品または同一部分を示
す。すなわち、1a,1bはポンプヘッド部、2a,2
bはモータ駆動回路、3a,3bはモータ回転検出回
路、4a,4bは上流閉塞検出回路、5a,5bは下流
閉塞検出回路、6a,6bは気泡検出回路、7a,7b
はドア開放検出回路、8a,8bは動作状態表示部、9
a,9bは警報表示部、10a,10bは表示部、11
はキーパネル部、12はパネルロックスイッチ、13は
電源回路、14a,14bは電源スイッチ、15は電池
電圧検出回路、16は警報音用ブザー駆動回路、17は
A/D変換回路、100はマイクロプロセッサ(中央演
算処理装置)、200はROM(プログラム部)、30
0はRAM(メモリ部)である。
入装置)の電気的構成を示すブロック線図である。図1
において、従来例に係る図9におけるのと同一符号は、
本第1実施例においても同一部品または同一部分を示
す。すなわち、1a,1bはポンプヘッド部、2a,2
bはモータ駆動回路、3a,3bはモータ回転検出回
路、4a,4bは上流閉塞検出回路、5a,5bは下流
閉塞検出回路、6a,6bは気泡検出回路、7a,7b
はドア開放検出回路、8a,8bは動作状態表示部、9
a,9bは警報表示部、10a,10bは表示部、11
はキーパネル部、12はパネルロックスイッチ、13は
電源回路、14a,14bは電源スイッチ、15は電池
電圧検出回路、16は警報音用ブザー駆動回路、17は
A/D変換回路、100はマイクロプロセッサ(中央演
算処理装置)、200はROM(プログラム部)、30
0はRAM(メモリ部)である。
【0041】本第1実施例において従来例と異なってい
る点は、RAM300において新たに下記のメモリエレ
メントを追加したことである。
る点は、RAM300において新たに下記のメモリエレ
メントを追加したことである。
【0042】FRC-latch:割り込みOCIの処理実行
開始直後のFRC値 error1:第1のステッピングモータに対する出力パルス
遅延時間 error2:第2のステッピングモータに対する出力パルス
遅延時間 lost-step1:第1のステッピングモータの脱調(パルス
抜け)カウンタ lost-step2:第2のステッピングモータの脱調(パルス
抜け)カウンタ これらの新たなメモリエレメントは、プログラムの動作
開始時に“0”に初期化されるものとする。特に、脱調
カウンタlost-step1,lost-step2は、各ステッピングモ
ータの回転開始時にも“0”にリセットされるものとす
る。その他の構成については、ROM200に格納され
ているプログラムにおいてモータ駆動パルス出力の形態
が本第1実施例に従ったものになっている点を除くと、
従来例と同様となっている。
開始直後のFRC値 error1:第1のステッピングモータに対する出力パルス
遅延時間 error2:第2のステッピングモータに対する出力パルス
遅延時間 lost-step1:第1のステッピングモータの脱調(パルス
抜け)カウンタ lost-step2:第2のステッピングモータの脱調(パルス
抜け)カウンタ これらの新たなメモリエレメントは、プログラムの動作
開始時に“0”に初期化されるものとする。特に、脱調
カウンタlost-step1,lost-step2は、各ステッピングモ
ータの回転開始時にも“0”にリセットされるものとす
る。その他の構成については、ROM200に格納され
ているプログラムにおいてモータ駆動パルス出力の形態
が本第1実施例に従ったものになっている点を除くと、
従来例と同様となっている。
【0043】次に、本第1実施例の輸液ポンプの動作を
図2および図3のフローチャートに基づいて説明する。
使用するカウンタ、レジスタ、フラグとしては従来例の
ものをすべて使用する。再度説明すると、マイクロプロ
セッサ100において、 FRC (Free Running Counter) OCR1(Out Put Compare Register 1) OCR2(Out Put Compare Register 2) OCRFLG(1ビット目=1:第1の割り込みOCI
1 2ビット目=1:第2の割り込みOCI2) が設けられている。
図2および図3のフローチャートに基づいて説明する。
使用するカウンタ、レジスタ、フラグとしては従来例の
ものをすべて使用する。再度説明すると、マイクロプロ
セッサ100において、 FRC (Free Running Counter) OCR1(Out Put Compare Register 1) OCR2(Out Put Compare Register 2) OCRFLG(1ビット目=1:第1の割り込みOCI
1 2ビット目=1:第2の割り込みOCI2) が設けられている。
【0044】さて、タイムカウンタFRCのカウント値
が第1または第2のレジスタOCR1,OCR2の内容
と一致して割り込みOCIが発生すると、マイクロプロ
セッサ100は、現在実行中のプログラムを一時的に中
断して、共通の割り込みOCI処理モジュールの実行を
開始する。まず、ステップS1でOCI割り込み処理実
行開始直後におけるタイムカウンタFRCの値をFRC
-latchに代入し、実際に割り込み処理が開始された時の
タイムカウンタFRC値を記憶しておく。割り込み要求
に対して、実際の割り込み処理の実行開始に遅れがなけ
れば、FRC=OCR1またはFRC=OCR2となっ
ているため、タイムカウンタFRCの値を記憶したFR
C-latchはOCR1またはOCR2と一致していること
になるが、割り込み処理の実行開始に遅延がある場合に
は、FRC-latch>OCR1またはFRC-latch>OC
R2となる。
が第1または第2のレジスタOCR1,OCR2の内容
と一致して割り込みOCIが発生すると、マイクロプロ
セッサ100は、現在実行中のプログラムを一時的に中
断して、共通の割り込みOCI処理モジュールの実行を
開始する。まず、ステップS1でOCI割り込み処理実
行開始直後におけるタイムカウンタFRCの値をFRC
-latchに代入し、実際に割り込み処理が開始された時の
タイムカウンタFRC値を記憶しておく。割り込み要求
に対して、実際の割り込み処理の実行開始に遅れがなけ
れば、FRC=OCR1またはFRC=OCR2となっ
ているため、タイムカウンタFRCの値を記憶したFR
C-latchはOCR1またはOCR2と一致していること
になるが、割り込み処理の実行開始に遅延がある場合に
は、FRC-latch>OCR1またはFRC-latch>OC
R2となる。
【0045】次に、第1の割り込みOCI1と第2の割
り込みOCI2とは独立して発生するので両者を区別す
るために、ステップS2でフラグOCRFLGの1ビッ
ト目が“1”にセットされているかどうか、つまり、割
り込みOCIが第1の割り込みOCI1によるものかど
うかを判断する。この判断が肯定的となるときはステッ
プS10に進むが、否定的となるときはステップS3に
進んで、フラグOCRFLGの2ビット目が“1”にセ
ットされているかどうか、つまり、割り込みOCIが第
2の割り込みOCI2によるものかどうかを判断する。
この判断が肯定的となるときは図3に示すステップS2
0に進むが、否定的となるときは、ノイズなどによる誤
動作であるとして何もせずに中断先のアドレスへとリタ
ーンする。
り込みOCI2とは独立して発生するので両者を区別す
るために、ステップS2でフラグOCRFLGの1ビッ
ト目が“1”にセットされているかどうか、つまり、割
り込みOCIが第1の割り込みOCI1によるものかど
うかを判断する。この判断が肯定的となるときはステッ
プS10に進むが、否定的となるときはステップS3に
進んで、フラグOCRFLGの2ビット目が“1”にセ
ットされているかどうか、つまり、割り込みOCIが第
2の割り込みOCI2によるものかどうかを判断する。
この判断が肯定的となるときは図3に示すステップS2
0に進むが、否定的となるときは、ノイズなどによる誤
動作であるとして何もせずに中断先のアドレスへとリタ
ーンする。
【0046】ステップS10に進んだとき、第1のポン
プ駆動部に対する処理に入ったことを記録するためと次
の第1の割り込みOCI1を許可するためにフラグOC
RFLGの1ビット目をリセットして“0”にする。ま
た、図3のステップS20に進んだとき、次の第2の割
り込みOCI2を許可するためにフラグOCRFLGの
2ビット目をリセットして“0”にする。従来例の場合
は、ステップS10あるいはステップS20の次に、直
ちに第1または第2のポンプ駆動部を駆動するため第1
または第2のモータ駆動回路2a,2bに対してモータ
駆動パルスを出力していたが、本第1実施例では別の処
理を行う。
プ駆動部に対する処理に入ったことを記録するためと次
の第1の割り込みOCI1を許可するためにフラグOC
RFLGの1ビット目をリセットして“0”にする。ま
た、図3のステップS20に進んだとき、次の第2の割
り込みOCI2を許可するためにフラグOCRFLGの
2ビット目をリセットして“0”にする。従来例の場合
は、ステップS10あるいはステップS20の次に、直
ちに第1または第2のポンプ駆動部を駆動するため第1
または第2のモータ駆動回路2a,2bに対してモータ
駆動パルスを出力していたが、本第1実施例では別の処
理を行う。
【0047】ステップS10〜S19は第1のポンプ駆
動部に関する処理であり、ステップS20〜S29は第
2のポンプ駆動部に関する処理である。両者は使用する
メモリエレメントやレジスタが各々該当するものとなっ
ている点で相違するものの、機能的には全く同一であ
る。したがって、ここでは、図2に基づいて第1のポン
プ駆動部に係るステップS10〜S19の処理について
説明することとする。
動部に関する処理であり、ステップS20〜S29は第
2のポンプ駆動部に関する処理である。両者は使用する
メモリエレメントやレジスタが各々該当するものとなっ
ている点で相違するものの、機能的には全く同一であ
る。したがって、ここでは、図2に基づいて第1のポン
プ駆動部に係るステップS10〜S19の処理について
説明することとする。
【0048】フラグOCRFLGの1ビット目をリセッ
トするステップS10の次のステップS11において、
第1のレジスタOCR1に記録されている今回のモータ
駆動パルスを出力すべき予定のタイミングに対して、F
RC-latchに記録されている実際に第1の割り込みOC
I1が開始されたタイミングがどれだけ遅れたのかを、
引き算、FRC-latch−OCR1によって求め、その結
果を出力パルス遅延時間のメモリエレメントerror1に、 error1=FRC-latch−OCR1 としてストアする。
トするステップS10の次のステップS11において、
第1のレジスタOCR1に記録されている今回のモータ
駆動パルスを出力すべき予定のタイミングに対して、F
RC-latchに記録されている実際に第1の割り込みOC
I1が開始されたタイミングがどれだけ遅れたのかを、
引き算、FRC-latch−OCR1によって求め、その結
果を出力パルス遅延時間のメモリエレメントerror1に、 error1=FRC-latch−OCR1 としてストアする。
【0049】次いで、ステップS12において、dを正
規のモータ駆動パルス間隔として、出力パルス遅延時間
error1が脱調発生限界値であるd/3よりも大きいか否
かを判断する(error1>d/3)。脱調発生限界値d/
3を超えているときはステップS13に進むが(後述す
る)、脱調発生限界値d/3以下であればステップS1
4に進んで、輸液予定量分だけの輸液がすでに終了した
か否かを判断する。輸液予定量分だけの輸液が終了して
いない限り、ステップS17に進んで、従来例と同様
に、第1のポンプ駆動部を1−2相励磁によって駆動す
るため第1のモータ駆動回路2aに対してモータ駆動パ
ルスを出力する。この場合は、出力パルス遅延時間erro
r1が小さいので、現実の割り込み開始タイミング(FR
C-latch)でモータ駆動パルスを出力しても問題はな
い。そして、ステップS18で、次回の第1の割り込み
OCI1を発生させる準備として、次のパルス出力予定
タイミングOCR1を計算によって求め、その計算結果
を第1のレジスタOCR1に設定した後、一時中断して
いたプログラムを再開するため中断先のアドレスへとリ
ターンする。
規のモータ駆動パルス間隔として、出力パルス遅延時間
error1が脱調発生限界値であるd/3よりも大きいか否
かを判断する(error1>d/3)。脱調発生限界値d/
3を超えているときはステップS13に進むが(後述す
る)、脱調発生限界値d/3以下であればステップS1
4に進んで、輸液予定量分だけの輸液がすでに終了した
か否かを判断する。輸液予定量分だけの輸液が終了して
いない限り、ステップS17に進んで、従来例と同様
に、第1のポンプ駆動部を1−2相励磁によって駆動す
るため第1のモータ駆動回路2aに対してモータ駆動パ
ルスを出力する。この場合は、出力パルス遅延時間erro
r1が小さいので、現実の割り込み開始タイミング(FR
C-latch)でモータ駆動パルスを出力しても問題はな
い。そして、ステップS18で、次回の第1の割り込み
OCI1を発生させる準備として、次のパルス出力予定
タイミングOCR1を計算によって求め、その計算結果
を第1のレジスタOCR1に設定した後、一時中断して
いたプログラムを再開するため中断先のアドレスへとリ
ターンする。
【0050】次に、ステップS12のerror1>d/3の
判断が肯定的となった場合であるが、このときは、今回
のFRC-latchで示される現実の割り込み開始タイミン
グでモータ駆動パルスを出力するとなれば、モータ駆動
パルス間隔dを一定周期とするその位相(図11参照)
における励磁時間が充分に確保できないために、次のモ
ータ駆動パルス出力のための位相へ移動するときにモー
タ軸の回転がコイルの励磁パターンに追従できなくなっ
て脱調となる。
判断が肯定的となった場合であるが、このときは、今回
のFRC-latchで示される現実の割り込み開始タイミン
グでモータ駆動パルスを出力するとなれば、モータ駆動
パルス間隔dを一定周期とするその位相(図11参照)
における励磁時間が充分に確保できないために、次のモ
ータ駆動パルス出力のための位相へ移動するときにモー
タ軸の回転がコイルの励磁パターンに追従できなくなっ
て脱調となる。
【0051】脱調は、モータ回転の不安定を招くととも
に、次に正規の位相パターンにて充分な励磁時間を確保
できたとしても回転が停止する場合があり、単なる回転
遅延以上の輸液精度の低下を引き起こすこともあり、問
題である。このような場合は、むしろ、回転遅れとなっ
ても、現在の位相、すなわち、モータの回転位置として
は安定しているところに留まらせておいて、安定状態の
ままで回転遅延させる方がよい。そこで、error1>d/
3のときはステップS13に進み、1ステップの期間
(モータ駆動パルス間隔dの期間)モータ駆動パルスを
出力させないため、脱調カウンタ(パルス抜けカウン
タ)lost-step1を+1インクリメントする。
に、次に正規の位相パターンにて充分な励磁時間を確保
できたとしても回転が停止する場合があり、単なる回転
遅延以上の輸液精度の低下を引き起こすこともあり、問
題である。このような場合は、むしろ、回転遅れとなっ
ても、現在の位相、すなわち、モータの回転位置として
は安定しているところに留まらせておいて、安定状態の
ままで回転遅延させる方がよい。そこで、error1>d/
3のときはステップS13に進み、1ステップの期間
(モータ駆動パルス間隔dの期間)モータ駆動パルスを
出力させないため、脱調カウンタ(パルス抜けカウン
タ)lost-step1を+1インクリメントする。
【0052】これによって、回転遅れとなってもモータ
は安定状態であるので、次に充分な励磁時間を与えるこ
とによって、脱調による回転不安定を避けるとともに、
モータ駆動パルスを出力しないことによる輸液不足量を
正確に脱調カウンタlost-step1に記録しておくのであ
る。したがって、次にはステップS17をスキップして
ステップS18に進み、次回の第1の割り込みOCI1
のタイミングを計算してパルス出力予定タイミングOC
R1に設定した後、中断先のアドレスへとリターンす
る。
は安定状態であるので、次に充分な励磁時間を与えるこ
とによって、脱調による回転不安定を避けるとともに、
モータ駆動パルスを出力しないことによる輸液不足量を
正確に脱調カウンタlost-step1に記録しておくのであ
る。したがって、次にはステップS17をスキップして
ステップS18に進み、次回の第1の割り込みOCI1
のタイミングを計算してパルス出力予定タイミングOC
R1に設定した後、中断先のアドレスへとリターンす
る。
【0053】さて、ステップS12のerror1>d/3の
判断が否定的となり、ステップS14の輸液予定量分だ
けの輸液が終了したか否かの判断が肯定的となったと
き、ステップS15に進んで、モータ割り込み遅延に起
因したパルス抜けを示す脱調カウンタlost-step1が
“0”になっているかどうかを判断する。lost-step1≠
0のときは、輸液不足量を補うために、ステップS1
6,S17,S18の処理を行う。すなわち、ステップ
S16で脱調カウンタlost-step1を−1デクリメント
し、ステップS17でモータ駆動パルスを出力し、ステ
ップS18で次回の割り込みOCI1のタイミングを第
1のレジスタOCR1に設定して中断先のアドレスへと
リターンする。
判断が否定的となり、ステップS14の輸液予定量分だ
けの輸液が終了したか否かの判断が肯定的となったと
き、ステップS15に進んで、モータ割り込み遅延に起
因したパルス抜けを示す脱調カウンタlost-step1が
“0”になっているかどうかを判断する。lost-step1≠
0のときは、輸液不足量を補うために、ステップS1
6,S17,S18の処理を行う。すなわち、ステップ
S16で脱調カウンタlost-step1を−1デクリメント
し、ステップS17でモータ駆動パルスを出力し、ステ
ップS18で次回の割り込みOCI1のタイミングを第
1のレジスタOCR1に設定して中断先のアドレスへと
リターンする。
【0054】ステップS12,S14,S15,S1
6,S17,S18の繰り返しにより、最終的に、ステ
ップS15の判断においてlost-step1=0となる。すな
わち、輸液不足量を補うためのモータ駆動パルスの1出
力ごとにlost-step1がデクリメントされるから、やがて
lost-step1=0となる。あるいは、最初から最後まで脱
調(パルス抜け)がないためにステップS13のlost-s
tep1のインクリメントを経ることがなく、最初からlost
-step1=0のままであった場合である。この場合は、そ
れ以上輸液する必要がないことを意味しており、ステッ
プS19に進んで第1のポンプ駆動部による輸液動作を
終了する。すなわち、これ以上、第1の割り込みOCI
1を発生させず、第1のモータ駆動回路2aに対するモ
ータ駆動パルスの出力を禁止する状態に移行する。
6,S17,S18の繰り返しにより、最終的に、ステ
ップS15の判断においてlost-step1=0となる。すな
わち、輸液不足量を補うためのモータ駆動パルスの1出
力ごとにlost-step1がデクリメントされるから、やがて
lost-step1=0となる。あるいは、最初から最後まで脱
調(パルス抜け)がないためにステップS13のlost-s
tep1のインクリメントを経ることがなく、最初からlost
-step1=0のままであった場合である。この場合は、そ
れ以上輸液する必要がないことを意味しており、ステッ
プS19に進んで第1のポンプ駆動部による輸液動作を
終了する。すなわち、これ以上、第1の割り込みOCI
1を発生させず、第1のモータ駆動回路2aに対するモ
ータ駆動パルスの出力を禁止する状態に移行する。
【0055】以上の処理は第1のポンプ駆動部に対して
のものであったが、第2のポンプ駆動部に対しては、図
3に示すステップS20〜S29によって同様に処理さ
れるので、説明を省略する。
のものであったが、第2のポンプ駆動部に対しては、図
3に示すステップS20〜S29によって同様に処理さ
れるので、説明を省略する。
【0056】ステップS14やステップS24において
判定される輸液予定量は、モータ割り込み処理とは別に
通常処理においても監視されている。そのシステムは、
輸液ポンプの使用者である医師または看護婦が設定する
1時間当たりの輸液速度(例えば10ml/時間や12
5ml/時間など)と、輸液予定量(例えば50mlや
1000mlなど)から計算される時間に基づいて監視
されるように構成されている。例えば、輸液予定量=5
0ml、輸液速度=10ml/時間の場合、50/10
=5時間をマイクロプロセッサ100に内蔵の時計によ
って計時し、モータの回転開始後、5時間経過したこと
の検出をもって輸液予定量の終了と判定される。ステッ
プS14やステップS24では、その計時結果を見て判
定されている。
判定される輸液予定量は、モータ割り込み処理とは別に
通常処理においても監視されている。そのシステムは、
輸液ポンプの使用者である医師または看護婦が設定する
1時間当たりの輸液速度(例えば10ml/時間や12
5ml/時間など)と、輸液予定量(例えば50mlや
1000mlなど)から計算される時間に基づいて監視
されるように構成されている。例えば、輸液予定量=5
0ml、輸液速度=10ml/時間の場合、50/10
=5時間をマイクロプロセッサ100に内蔵の時計によ
って計時し、モータの回転開始後、5時間経過したこと
の検出をもって輸液予定量の終了と判定される。ステッ
プS14やステップS24では、その計時結果を見て判
定されている。
【0057】図4のタイミングチャートに、出力パルス
遅延時間error1が脱調発生限界値d/3を超えたために
モータ駆動パルスを出力しなかった位相が生じた場合の
1−2相励磁パターンの一例を示す。コイルBにおいて
′の位相で脱調が発生しそうになったため、モータ駆
動パルスを出力させないようにしている。このことで1
ステップ分の輸液量の不足が生じる。しかし、モータ駆
動パルスの出力を積極的に一時停止することにより、位
相での励磁パターンを位相′でも維持し、モータの
回転状態を正常に維持し、輸液量の不足が生じても脱調
などの回転不安定を防止し、次のモータ駆動パルスの出
力によって確実に1−2相励磁パターンの位相移動を行
っている。生じた輸液量の不足は、輸液予定量の輸液の
終了後において、lost-step1が“0”となるまでモータ
駆動パルスを出力して追加輸液することで補うようにし
ているので、モータ回転前に積極的されていた輸液予定
量を確実に確保し、高い輸液精度を維持することができ
る。
遅延時間error1が脱調発生限界値d/3を超えたために
モータ駆動パルスを出力しなかった位相が生じた場合の
1−2相励磁パターンの一例を示す。コイルBにおいて
′の位相で脱調が発生しそうになったため、モータ駆
動パルスを出力させないようにしている。このことで1
ステップ分の輸液量の不足が生じる。しかし、モータ駆
動パルスの出力を積極的に一時停止することにより、位
相での励磁パターンを位相′でも維持し、モータの
回転状態を正常に維持し、輸液量の不足が生じても脱調
などの回転不安定を防止し、次のモータ駆動パルスの出
力によって確実に1−2相励磁パターンの位相移動を行
っている。生じた輸液量の不足は、輸液予定量の輸液の
終了後において、lost-step1が“0”となるまでモータ
駆動パルスを出力して追加輸液することで補うようにし
ているので、モータ回転前に積極的されていた輸液予定
量を確実に確保し、高い輸液精度を維持することができ
る。
【0058】第2実施例 次に、本発明に係る第2実施例を説明する。図5は第2
実施例の輸液ポンプ(陽圧ぜん動式の静脈注入装置)の
電気的構成を示すブロック線図であり、従来例と異なっ
ている点は、RAM300において新たに下記のメモリ
エレメントを追加したことである。
実施例の輸液ポンプ(陽圧ぜん動式の静脈注入装置)の
電気的構成を示すブロック線図であり、従来例と異なっ
ている点は、RAM300において新たに下記のメモリ
エレメントを追加したことである。
【0059】FRC-latch:割り込みOCIの処理実行
開始直後のFRC値 error1:第1のステッピングモータの今回の出力パルス
遅延時間 error2:第2のステッピングモータの今回の出力パルス
遅延時間 error-old1:第1のステッピングモータの前回の出力パ
ルス遅延時間 error-old2:第2のステッピングモータの前回の出力パ
ルス遅延時間 chien1:第1のステッピングモータの遅延差分時間 chien2:第2のステッピングモータの遅延差分時間 ruiseki1:第1のステッピングモータの累積遅延時間 ruiseki2:第2のステッピングモータの累積遅延時間 e1-hold1:第1のステッピングモータの回転開始後の最
初の遅延時間 e1-hold2:第2のステッピングモータの回転開始後の最
初の遅延時間 これらの新たなメモリエレメントは、プログラムの動作
開始時に“0”に初期化されるものとする。その他の構
成については、ROM200に格納されているプログラ
ムにおいてモータ駆動パルス出力の形態が本第2実施例
に従ったものになっている点を除くと、従来例と同様と
なっている。使用するカウンタ、レジスタ、フラグとし
ては第1実施例と同様に、マイクロプロセッサ100に
おいて、タイムカウンタFRC、第1のレジスタOCR
1、第2のレジスタOCR2、フラグOCRFLG(1
ビット目=1:第1の割り込みOCI1、2ビット目=
1:第2の割り込みOCI2)が設けられている。
開始直後のFRC値 error1:第1のステッピングモータの今回の出力パルス
遅延時間 error2:第2のステッピングモータの今回の出力パルス
遅延時間 error-old1:第1のステッピングモータの前回の出力パ
ルス遅延時間 error-old2:第2のステッピングモータの前回の出力パ
ルス遅延時間 chien1:第1のステッピングモータの遅延差分時間 chien2:第2のステッピングモータの遅延差分時間 ruiseki1:第1のステッピングモータの累積遅延時間 ruiseki2:第2のステッピングモータの累積遅延時間 e1-hold1:第1のステッピングモータの回転開始後の最
初の遅延時間 e1-hold2:第2のステッピングモータの回転開始後の最
初の遅延時間 これらの新たなメモリエレメントは、プログラムの動作
開始時に“0”に初期化されるものとする。その他の構
成については、ROM200に格納されているプログラ
ムにおいてモータ駆動パルス出力の形態が本第2実施例
に従ったものになっている点を除くと、従来例と同様と
なっている。使用するカウンタ、レジスタ、フラグとし
ては第1実施例と同様に、マイクロプロセッサ100に
おいて、タイムカウンタFRC、第1のレジスタOCR
1、第2のレジスタOCR2、フラグOCRFLG(1
ビット目=1:第1の割り込みOCI1、2ビット目=
1:第2の割り込みOCI2)が設けられている。
【0060】次に、本第2実施例の輸液ポンプの動作を
図6および図7のフローチャートに基づいて説明する。
図6および図7のフローチャートに基づいて説明する。
【0061】タイムカウンタFRCのカウント値が第1
または第2のレジスタOCR1,OCR2の内容と一致
して割り込みOCIが発生すると、マイクロプロセッサ
100は、現在実行中のプログラムを一時的に中断し
て、共通の割り込みOCI処理モジュールの実行を開始
する。まず、ステップS41でOCI割り込み処理実行
開始直後におけるタイムカウンタFRCの値をFRC-l
atchに代入し、実際に割り込み処理が開始された時のタ
イムカウンタFRC値を記憶しておく。割り込み要求に
対して、実際の割り込み処理の実行開始に遅れがなけれ
ば、FRC=OCR1またはFRC=OCR2となって
いるため、タイムカウンタFRCの値を記憶したFRC
-latchはOCR1またはOCR2と一致していることに
なるが、割り込み処理の実行開始に遅延がある場合に
は、FRC-latch>OCR1またはFRC-latch>OC
R2となる。
または第2のレジスタOCR1,OCR2の内容と一致
して割り込みOCIが発生すると、マイクロプロセッサ
100は、現在実行中のプログラムを一時的に中断し
て、共通の割り込みOCI処理モジュールの実行を開始
する。まず、ステップS41でOCI割り込み処理実行
開始直後におけるタイムカウンタFRCの値をFRC-l
atchに代入し、実際に割り込み処理が開始された時のタ
イムカウンタFRC値を記憶しておく。割り込み要求に
対して、実際の割り込み処理の実行開始に遅れがなけれ
ば、FRC=OCR1またはFRC=OCR2となって
いるため、タイムカウンタFRCの値を記憶したFRC
-latchはOCR1またはOCR2と一致していることに
なるが、割り込み処理の実行開始に遅延がある場合に
は、FRC-latch>OCR1またはFRC-latch>OC
R2となる。
【0062】次に、第1の割り込みOCI1と第2の割
り込みOCI2とは独立して発生するので両者を区別す
るために、ステップS42でフラグOCRFLGの1ビ
ット目が“1”にセットされているかどうか、つまり、
割り込みOCIが第1の割り込みOCI1によるものか
どうかを判断する。この判断が肯定的となるときはステ
ップS50に進むが、否定的となるときはステップS4
3に進んで、フラグOCRFLGの2ビット目が“1”
にセットされているかどうか、つまり、割り込みOCI
が第2の割り込みOCI2によるものかどうかを判断す
る。この判断が肯定的となるときは図7に示すステップ
S60に進むが、否定的となるときは、ノイズなどによ
る誤動作であるとして何もせずに中断先のアドレスへと
リターンする。
り込みOCI2とは独立して発生するので両者を区別す
るために、ステップS42でフラグOCRFLGの1ビ
ット目が“1”にセットされているかどうか、つまり、
割り込みOCIが第1の割り込みOCI1によるものか
どうかを判断する。この判断が肯定的となるときはステ
ップS50に進むが、否定的となるときはステップS4
3に進んで、フラグOCRFLGの2ビット目が“1”
にセットされているかどうか、つまり、割り込みOCI
が第2の割り込みOCI2によるものかどうかを判断す
る。この判断が肯定的となるときは図7に示すステップ
S60に進むが、否定的となるときは、ノイズなどによ
る誤動作であるとして何もせずに中断先のアドレスへと
リターンする。
【0063】ステップS50〜S59は第1のポンプ駆
動部に関する処理であり、ステップS60〜S69は第
2のポンプ駆動部に関する処理である。両者は使用する
メモリエレメントやレジスタが各々該当するものとなっ
ている点で相違するものの、機能的には全く同一であ
る。したがって、ここでは、図6に基づいて第1のポン
プ駆動部に係るステップS50〜S59の処理について
説明することとする。
動部に関する処理であり、ステップS60〜S69は第
2のポンプ駆動部に関する処理である。両者は使用する
メモリエレメントやレジスタが各々該当するものとなっ
ている点で相違するものの、機能的には全く同一であ
る。したがって、ここでは、図6に基づいて第1のポン
プ駆動部に係るステップS50〜S59の処理について
説明することとする。
【0064】ステップS50に進んだとき、第1のポン
プ駆動部に対する処理に入ったことを記録するためと次
の第1の割り込みOCI1を許可するためにフラグOC
RFLGの1ビット目をリセットして“0”にする。次
のステップS51において、第1のモータ駆動回路2a
に対して1−2相励磁パターンを生成するためにモータ
駆動パルスを出力する。そして、ステップS52に進
み、前回の出力パルス遅延時間error-old1が“0”であ
れば、今回の割り込み処理で生じた出力パルス遅延時間
error1がモータ回転開始後の最初のモータ割り込み実行
遅延であったことが判る。そこで、出力パルス遅延時間
error1の値を最初の遅延時間を示すe1-hold1に、 e1-hold1=error1 としてストアし、かつ、第1のレジスタOCR1に記録
されている今回のモータ駆動パルスを出力すべき予定の
タイミングに対して、FRC-latchに記録されている実
際に第1の割り込みOCI1が開始されたタイミングが
どれだけ遅れたのかを、引き算、FRC-latch−OCR
1によって求め、その結果を出力パルス遅延時間のメモ
リエレメントerror1に、 error1=FRC-latch−OCR1 としてストアする。
プ駆動部に対する処理に入ったことを記録するためと次
の第1の割り込みOCI1を許可するためにフラグOC
RFLGの1ビット目をリセットして“0”にする。次
のステップS51において、第1のモータ駆動回路2a
に対して1−2相励磁パターンを生成するためにモータ
駆動パルスを出力する。そして、ステップS52に進
み、前回の出力パルス遅延時間error-old1が“0”であ
れば、今回の割り込み処理で生じた出力パルス遅延時間
error1がモータ回転開始後の最初のモータ割り込み実行
遅延であったことが判る。そこで、出力パルス遅延時間
error1の値を最初の遅延時間を示すe1-hold1に、 e1-hold1=error1 としてストアし、かつ、第1のレジスタOCR1に記録
されている今回のモータ駆動パルスを出力すべき予定の
タイミングに対して、FRC-latchに記録されている実
際に第1の割り込みOCI1が開始されたタイミングが
どれだけ遅れたのかを、引き算、FRC-latch−OCR
1によって求め、その結果を出力パルス遅延時間のメモ
リエレメントerror1に、 error1=FRC-latch−OCR1 としてストアする。
【0065】次いで、ステップS53において、第1の
ステッピングモータに対する今回の出力パルス遅延時間
を示すerror1と前回の出力パルス遅延時間を示すerror-
old1との差分をとり、その結果を、遅延差分時間を示す
chien1に、 chien1=error1−error-old1 としてストアする。モータ駆動パルス出力のための割り
込みOCI1の発生のたびのerror1が常に一定であれ
ば、error1とerror-old1とは一致し、両者の差分である
chien1は0となる。すなわち、割り込み要求から実際の
パルス出力までの遅延は一定になっている。この場合の
モータに対するパルス間隔di (i=1,2……)は、
設定された正規のモータ駆動パルス間隔dと一致してい
る。もし、今回の出力パルス遅延時間error1が前回の出
力パルス遅延時間error-old1よりも大きい(error1>er
ror-old1)場合、遅延差分時間chien1は正の値をもつこ
とになる。
ステッピングモータに対する今回の出力パルス遅延時間
を示すerror1と前回の出力パルス遅延時間を示すerror-
old1との差分をとり、その結果を、遅延差分時間を示す
chien1に、 chien1=error1−error-old1 としてストアする。モータ駆動パルス出力のための割り
込みOCI1の発生のたびのerror1が常に一定であれ
ば、error1とerror-old1とは一致し、両者の差分である
chien1は0となる。すなわち、割り込み要求から実際の
パルス出力までの遅延は一定になっている。この場合の
モータに対するパルス間隔di (i=1,2……)は、
設定された正規のモータ駆動パルス間隔dと一致してい
る。もし、今回の出力パルス遅延時間error1が前回の出
力パルス遅延時間error-old1よりも大きい(error1>er
ror-old1)場合、遅延差分時間chien1は正の値をもつこ
とになる。
【0066】次のステップS54において、次回の割り
込み要求に備えて、前回の出力パルス遅延時間error-ol
d1を今回の出力パルス遅延時間を示すerror1に代入し、
error-old1を更新しておく。ステップS55で、累積遅
延時間を示すruiseki1に遅延差分時間chien1を累積加算
する。すなわち、 ruiseki1=ruiseki1+chien1 の演算を行う。つまり、累積遅延時間ruiseki1の内容を
更新する。
込み要求に備えて、前回の出力パルス遅延時間error-ol
d1を今回の出力パルス遅延時間を示すerror1に代入し、
error-old1を更新しておく。ステップS55で、累積遅
延時間を示すruiseki1に遅延差分時間chien1を累積加算
する。すなわち、 ruiseki1=ruiseki1+chien1 の演算を行う。つまり、累積遅延時間ruiseki1の内容を
更新する。
【0067】ステップS56では、次回の割り込みOC
I1を発生させる準備として、次のパルス出力予定タイ
ミングOCR1を、 OCR1=OCR1+d と設定しておく。そして、ステップS57において、累
積遅延時間ruiseki1が輸液ポンプとしての精度の限界ま
で増大したと判断したとき、その限界を示す定数をGE
NKAIとして、ruiseki1>GENKAIの判断を行
う。この判断が否定的となるときは、問題ないのでその
まま中断先のアドレスへとリターンする。しかし、ruis
eki1>GENKAIとなるときは、ステップS58に進
み、次のパルス出力予定タイミングOCR1として、ス
テップS56で求めたOCR1を基準として、それから
累積遅延時間ruiseki1を減算し、それを新たなパルス出
力予定タイミングOCR1としてストアする。すなわ
ち、 OCR1=OCR1−ruiseki1 の演算を行う。これは、今回のモータ駆動パルスの出力
タイミングと次回の出力タイミングとのパルス間隔を累
積遅延時間ruiseki1だけ短縮することであり、モータ回
転開始後の最初の遅延時間e1-hold1に次回割り込みで予
想される遅延時間αを加算した時間まで遅延時間を短縮
することができる。つまり、累積遅延時間ruiseki1がG
ENKAIを超えると、次のモータ駆動パルス出力タイ
ミングでその累積遅延時間ruiseki1を吸収するのであ
る。もし、e1-hold1分も補正する必要があって、かつ、
その分だけのパルス間隔の短縮に支障がないのであれ
ば、さらに、e1-hold1を減算したものを、次のパルス出
力予定タイミングOCR1としてストアする。すなわ
ち、 OCR1=OCR1−ruiseki1−e1-hold1 の演算とする。この場合、常にe1-hold1分だけのモータ
割り込み以外の割り込み遅延が発生しているという前提
がある。
I1を発生させる準備として、次のパルス出力予定タイ
ミングOCR1を、 OCR1=OCR1+d と設定しておく。そして、ステップS57において、累
積遅延時間ruiseki1が輸液ポンプとしての精度の限界ま
で増大したと判断したとき、その限界を示す定数をGE
NKAIとして、ruiseki1>GENKAIの判断を行
う。この判断が否定的となるときは、問題ないのでその
まま中断先のアドレスへとリターンする。しかし、ruis
eki1>GENKAIとなるときは、ステップS58に進
み、次のパルス出力予定タイミングOCR1として、ス
テップS56で求めたOCR1を基準として、それから
累積遅延時間ruiseki1を減算し、それを新たなパルス出
力予定タイミングOCR1としてストアする。すなわ
ち、 OCR1=OCR1−ruiseki1 の演算を行う。これは、今回のモータ駆動パルスの出力
タイミングと次回の出力タイミングとのパルス間隔を累
積遅延時間ruiseki1だけ短縮することであり、モータ回
転開始後の最初の遅延時間e1-hold1に次回割り込みで予
想される遅延時間αを加算した時間まで遅延時間を短縮
することができる。つまり、累積遅延時間ruiseki1がG
ENKAIを超えると、次のモータ駆動パルス出力タイ
ミングでその累積遅延時間ruiseki1を吸収するのであ
る。もし、e1-hold1分も補正する必要があって、かつ、
その分だけのパルス間隔の短縮に支障がないのであれ
ば、さらに、e1-hold1を減算したものを、次のパルス出
力予定タイミングOCR1としてストアする。すなわ
ち、 OCR1=OCR1−ruiseki1−e1-hold1 の演算とする。この場合、常にe1-hold1分だけのモータ
割り込み以外の割り込み遅延が発生しているという前提
がある。
【0068】次に、累積遅延時間ruiseki1を減算して補
正吸収してしまったので、ステップS59で、累積遅延
時間ruiseki1をリセットして“0”とした後、中断先の
アドレスへとリターンする。
正吸収してしまったので、ステップS59で、累積遅延
時間ruiseki1をリセットして“0”とした後、中断先の
アドレスへとリターンする。
【0069】以上の処理は第1のポンプ駆動部に対して
のものであったが、第2のポンプ駆動部に対しては、図
7に示すステップS60〜S69によって同様に処理さ
れるので、説明を省略する。
のものであったが、第2のポンプ駆動部に対しては、図
7に示すステップS60〜S69によって同様に処理さ
れるので、説明を省略する。
【0070】図8のタイミングチャートに従って説明す
る。割り込み遅延がない場合、パルス出力予定タイミン
グを示すOCR1に設定されるt1 ,t2 ,t3 ,
t4 ,t5 ,t6 ,t7 のタイミングでそれぞれ発生す
るモータ割り込み要求に対して遅延なくモータ駆動パル
スを出力することができる。しかし、上記の各タイミン
グにおいてそれぞれ、e1 ,e2 ,e3 ,e4 ,e5 ,
e6 ,e7 の出力パルス遅延時間が生じたとする。この
場合、出力パルス遅延時間が時間経過とともに増大する
ことになり、e1 <e2 <e3 <e4 <e5 <e6 <e
7 となる。
る。割り込み遅延がない場合、パルス出力予定タイミン
グを示すOCR1に設定されるt1 ,t2 ,t3 ,
t4 ,t5 ,t6 ,t7 のタイミングでそれぞれ発生す
るモータ割り込み要求に対して遅延なくモータ駆動パル
スを出力することができる。しかし、上記の各タイミン
グにおいてそれぞれ、e1 ,e2 ,e3 ,e4 ,e5 ,
e6 ,e7 の出力パルス遅延時間が生じたとする。この
場合、出力パルス遅延時間が時間経過とともに増大する
ことになり、e1 <e2 <e3 <e4 <e5 <e6 <e
7 となる。
【0071】の位相での今回の出力パルス遅延時間er
ror1としてe1 が生じているので、e1-hold1=e1 とさ
れ(S52)、chien1=e1 −0=e1 とされ(S5
3)、error-old1=e1 とされ(S54)、ruiseki1=
0+e1 =e1 とされる(S55)。の位相では、ch
ien1=e2 −e1 とされ、累積遅延時間ruiseki1は、 ruiseki1=e1 +(e2 −e1 ) とされる。以下、…の位相において、逐次、 ruiseki1=e1 +(e2 −e1 )+(e3 −e2 ) ・ ・ ・ ruiseki1=e1 +(e2 −e1 )+(e3 −e2 )+
(e4 −e3 )+(e5 −e4 )+(e6 −e5 )+
(e7 −e6 ) となる。emax を、 emax =(e2 −e1 )+(e3 −e2 )+(e4 −e
3 )+(e5 −e4 )+(e6 −e5 )+(e7 −
e6 ) とおくと、 ruiseki1=e1 +emax となる。また、emax を整理すると、emax =e7 −e
1 である。したがって、ruiseki1=e7 となる。これが
GENKAIを超えているとする。つまり、輸液精度の
低下の限界に達したものとする。ここで、引き続き、t
8 のタイミング(コイルC)を補正なしに求めてOCR
1へ設定したとする。t8 のタイミングでさらに増える
出力パルス遅延時間をαとすると、t8 +ruiseki1+α
のタイミングでの位相でのモータ駆動パルスが出力さ
れることになり、t8 +ruiseki1+α=t8 +e7 +α
=t8 +emax +e1 +αとなってしまう。
ror1としてe1 が生じているので、e1-hold1=e1 とさ
れ(S52)、chien1=e1 −0=e1 とされ(S5
3)、error-old1=e1 とされ(S54)、ruiseki1=
0+e1 =e1 とされる(S55)。の位相では、ch
ien1=e2 −e1 とされ、累積遅延時間ruiseki1は、 ruiseki1=e1 +(e2 −e1 ) とされる。以下、…の位相において、逐次、 ruiseki1=e1 +(e2 −e1 )+(e3 −e2 ) ・ ・ ・ ruiseki1=e1 +(e2 −e1 )+(e3 −e2 )+
(e4 −e3 )+(e5 −e4 )+(e6 −e5 )+
(e7 −e6 ) となる。emax を、 emax =(e2 −e1 )+(e3 −e2 )+(e4 −e
3 )+(e5 −e4 )+(e6 −e5 )+(e7 −
e6 ) とおくと、 ruiseki1=e1 +emax となる。また、emax を整理すると、emax =e7 −e
1 である。したがって、ruiseki1=e7 となる。これが
GENKAIを超えているとする。つまり、輸液精度の
低下の限界に達したものとする。ここで、引き続き、t
8 のタイミング(コイルC)を補正なしに求めてOCR
1へ設定したとする。t8 のタイミングでさらに増える
出力パルス遅延時間をαとすると、t8 +ruiseki1+α
のタイミングでの位相でのモータ駆動パルスが出力さ
れることになり、t8 +ruiseki1+α=t8 +e7 +α
=t8 +emax +e1 +αとなってしまう。
【0072】このタイミングでモータ駆動パルスを出力
すると輸液精度低下の限界を超えることになるのである
が、本実施例では、ステップS58の補正によって、ru
iseki1を減算している。すなわち、t8 +αとなり、こ
のタイミングでモータ駆動パルスが出力されることにな
る。換言すれば、t7 のタイミングからt8 を算出する
に際して、t8 =t7 +dとする代わりに、t8 =t7
+d7 とし、このd7を、モータ駆動パルス間隔dから
累積遅延時間ruiseki1だけ減算して補正して、d7 =d
−ruiseki1=d−(e1 +emax )とし、t8 =t7 +
d7 =t7 +d−(emax +e1 )とするのである。こ
のようにして、の位相では、出力パルス遅延時間をα
まで減少する状態に補正することができる。
すると輸液精度低下の限界を超えることになるのである
が、本実施例では、ステップS58の補正によって、ru
iseki1を減算している。すなわち、t8 +αとなり、こ
のタイミングでモータ駆動パルスが出力されることにな
る。換言すれば、t7 のタイミングからt8 を算出する
に際して、t8 =t7 +dとする代わりに、t8 =t7
+d7 とし、このd7を、モータ駆動パルス間隔dから
累積遅延時間ruiseki1だけ減算して補正して、d7 =d
−ruiseki1=d−(e1 +emax )とし、t8 =t7 +
d7 =t7 +d−(emax +e1 )とするのである。こ
のようにして、の位相では、出力パルス遅延時間をα
まで減少する状態に補正することができる。
【0073】
【発明の効果】以上のように、本発明に係る第一の輸液
ポンプによれば、マイクロプロセッサの数を増やさずま
た高速なマイクロプロセッサを採用しなくても、ステッ
ピングモータの脱調を回避して正常に動作させながら、
高い輸液精度のもとで輸液することができる。
ポンプによれば、マイクロプロセッサの数を増やさずま
た高速なマイクロプロセッサを採用しなくても、ステッ
ピングモータの脱調を回避して正常に動作させながら、
高い輸液精度のもとで輸液することができる。
【0074】また、本発明に係る第二の輸液ポンプによ
れば、パルス出力の1回の遅延のたびに輸液の全体的な
流れが速くなったり遅くなったりすることを避け、輸液
の全体的な流れを自然なものとしながら、輸液精度が一
定以上に低下することを防止することができる。
れば、パルス出力の1回の遅延のたびに輸液の全体的な
流れが速くなったり遅くなったりすることを避け、輸液
の全体的な流れを自然なものとしながら、輸液精度が一
定以上に低下することを防止することができる。
【図1】本発明の第1実施例に係る輸液ポンプ(陽圧ぜ
ん動式の静脈注入装置)の電気的構成を示すブロック線
図である。
ん動式の静脈注入装置)の電気的構成を示すブロック線
図である。
【図2】第1実施例の動作説明に供するフローチャート
である。
である。
【図3】第1実施例の動作説明に供するフローチャート
である。
である。
【図4】第1実施例の動作説明に供するタイミングチャ
ートである。
ートである。
【図5】本発明の第2実施例に係る輸液ポンプ(陽圧ぜ
ん動式の静脈注入装置)の電気的構成を示すブロック線
図である。
ん動式の静脈注入装置)の電気的構成を示すブロック線
図である。
【図6】第2実施例の動作説明に供するフローチャート
である。
である。
【図7】第2実施例の動作説明に供するフローチャート
である。
である。
【図8】第2実施例の動作説明に供するタイミングチャ
ートである。
ートである。
【図9】従来例に係る輸液ポンプの電気的構成を示すブ
ロック線図である。
ロック線図である。
【図10】従来例の動作説明に供するフローチャートで
ある。
ある。
【図11】従来例の動作説明に供するタイミングチャー
トおよび問題点を指摘するための波形図である。
トおよび問題点を指摘するための波形図である。
【図12】従来例の別の問題点を指摘するための波形図
である。
である。
1a,1b ポンプヘッド部 2a,2b モータ駆動回路 4a,4b 上流閉塞検出回路 5a,5b 下流閉塞検出回路 6a,6b 気泡検出回路 15 電池電圧検出回路 100 マイクロプロセッサ 200 ROM(プログラム部) 300 RAM(メモリ部) FRC タイムカウンタ OCR1 第1のアウトプットコンペアレジスタ OCR2 第2のアウトプットコンペアレジスタ OCI1 第1のアウトプットコンペア割り込み OCI2 第2のアウトプットコンペア割り込み OCRFLG アウトプットコンペアレジスタフラグ FRC-latch 現実の割り込み開始タイミング error1 第1のポンプ駆動部の今回の出力パルス遅延
時間 error2 第2のポンプ駆動部の今回の出力パルス遅延
時間 error-old1 第1のポンプ駆動部の前回の出力パルス
遅延時間 error-old2 第2のポンプ駆動部の前回の出力パルス
遅延時間 lost-step1 第1のポンプ駆動部でのパルス抜けを示
す脱調カウンタ lost-step2 第2のポンプ駆動部でのパルス抜けを示
す脱調カウンタ chien1 第1のポンプ駆動部の遅延差分時間 chien2 第2のポンプ駆動部の遅延差分時間 ruiseki1 第1のポンプ駆動部の累積遅延時間 ruiseki2 第2のポンプ駆動部の累積遅延時間 e1-hold1 第1のポンプ駆動部の回転開始後の最初の
遅延時間 e1-hold2 第2のポンプ駆動部の回転開始後の最初の
遅延時間
時間 error2 第2のポンプ駆動部の今回の出力パルス遅延
時間 error-old1 第1のポンプ駆動部の前回の出力パルス
遅延時間 error-old2 第2のポンプ駆動部の前回の出力パルス
遅延時間 lost-step1 第1のポンプ駆動部でのパルス抜けを示
す脱調カウンタ lost-step2 第2のポンプ駆動部でのパルス抜けを示
す脱調カウンタ chien1 第1のポンプ駆動部の遅延差分時間 chien2 第2のポンプ駆動部の遅延差分時間 ruiseki1 第1のポンプ駆動部の累積遅延時間 ruiseki2 第2のポンプ駆動部の累積遅延時間 e1-hold1 第1のポンプ駆動部の回転開始後の最初の
遅延時間 e1-hold2 第2のポンプ駆動部の回転開始後の最初の
遅延時間
Claims (2)
- 【請求項1】 複数のポンプ駆動部と、それら複数のポ
ンプ駆動部を制御する1つのマイクロプロセッサと、こ
のマイクロプロセッサを制御するソフトウェアを内蔵す
るプログラム部とを備え、 前記ソフトウェアは、マイクロプロセッサが内蔵するタ
イマを用いて割り込みを発生して各ポンプ駆動部におけ
る複数のモータ駆動回路に対して前記マイクロプロセッ
サからモータ駆動パルスを出力させる手段と、各モータ
駆動回路における割り込み遅れが所定量を超えるときは
モータ駆動パルスの出力を一時停止させる手段と、その
パルス抜け回数をカウントする手段と、輸液予定量の輸
液終了後に前記のパルス抜け回数分だけ別にモータ駆動
パルスを発生させる手段とを備えたものであることを特
徴とする輸液ポンプ。 - 【請求項2】 複数のポンプ駆動部と、それら複数のポ
ンプ駆動部を制御する1つのマイクロプロセッサと、こ
のマイクロプロセッサを制御するソフトウェアを内蔵す
るプログラム部とを備え、 前記ソフトウェアは、マイクロプロセッサが内蔵するタ
イマを用いて割り込みを発生して各ポンプ駆動部におけ
る複数のモータ駆動回路に対して前記マイクロプロセッ
サからモータ駆動パルスを出力させる手段と、各モータ
駆動回路における出力パルス遅延時間を計測して累積す
る手段と、その累積遅延時間が所定値を超えたときは次
のモータ駆動パルスの出力タイミングを前記累積遅延時
間分だけ早める手段とを備えたものであることを特徴と
する輸液ポンプ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4321906A JPH06169989A (ja) | 1992-12-01 | 1992-12-01 | 輸液ポンプ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4321906A JPH06169989A (ja) | 1992-12-01 | 1992-12-01 | 輸液ポンプ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH06169989A true JPH06169989A (ja) | 1994-06-21 |
Family
ID=18137728
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4321906A Pending JPH06169989A (ja) | 1992-12-01 | 1992-12-01 | 輸液ポンプ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH06169989A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009179715A (ja) * | 2008-01-31 | 2009-08-13 | Japan Energy Corp | 潤滑剤組成物及びこれを用いた潤滑システム |
-
1992
- 1992-12-01 JP JP4321906A patent/JPH06169989A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009179715A (ja) * | 2008-01-31 | 2009-08-13 | Japan Energy Corp | 潤滑剤組成物及びこれを用いた潤滑システム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5395321A (en) | Infusion apparatus capable of storing a plurality of accumulated infusion fluid volumes of the past | |
| US4685903A (en) | External infusion pump apparatus | |
| US8221395B2 (en) | Method and apparatus for automatically modifying delivery profile of drug delivery system | |
| US4678408A (en) | Solenoid drive apparatus for an external infusion pump | |
| CN103813821B (zh) | 用于随时间优化药物剂量方案的自适应系统 | |
| US10314968B2 (en) | Medical injection device with electric motor drive control | |
| AU2017264784B2 (en) | Infusion pump system and method with common line auto flush | |
| US4562751A (en) | Solenoid drive apparatus for an external infusion pump | |
| JPH05277185A (ja) | 輸液装置 | |
| US4293845A (en) | Electronic multi-patient medication-time-intake programmer and alarm system | |
| JPH05277181A (ja) | 輸液装置 | |
| GB2039083A (en) | Apparatus and method for automatically controllinginfusion | |
| JP7086173B2 (ja) | 移動注入デバイス駆動制御および閉塞検出 | |
| US12589203B2 (en) | System and method for generating battery alarms in infusion devices | |
| JPH05329208A (ja) | 輸液ポンプ | |
| DK2321755T3 (en) | AMBULATORY MEDICAL DEVICE INCLUDING AN ALARM CONTROLLER | |
| ES2937657T3 (es) | Dispositivo de administración de fármacos portátil conmutable entre dos modos de administración diferentes | |
| KR102500355B1 (ko) | 약물과민반응 예방 시스템 | |
| JPS63252163A (ja) | 輸液注入ポンプ | |
| JP2016195829A (ja) | 携帯型注入装置及び携帯型注入装置の制御方法 | |
| US20240066207A1 (en) | Systems and methods for controlling partial delivery pumping in infusion systems | |
| JP3005302B2 (ja) | 輸液装置 | |
| JP2752650B2 (ja) | 人工腎臓の入力装置 | |
| LIVINGSTON | Infusion Pumps | |
| JPH06284793A (ja) | ステッピングモータ駆動装置 |