【解決手段】輸液装置10の輸液チューブ20を順次圧縮および弛緩する作動部12を駆動する駆動モータのモータ軸情報を取得し、前記モータ軸情報に基づいて、前記輸液チューブの正誤判定を行う。
請求項4に記載のコントローラから前記モータ軸情報を取得し、機械学習によって、前記輸液チューブに対する前記モータ軸情報の学習済モデルを生成し、生成した前記学習済モデルを、前記コントローラに転送することを特徴とする学習装置。
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、輸液装置では、輸液チューブを交換することで、輸液する薬液を変更する段取り替えを行うことができる。輸液チューブは、充填後の製品に応じて、異なる直径の物が用いられる。間違った輸液チューブを用いて薬液を輸液し、充填を行った場合には、製品が不良となり、製品の廃棄に至るという問題がある。
【0006】
そのため、段取り替えの工程では、間違った輸液チューブを用いていないかを確認する必要がある。上述の従来技術のように、超音波センサを用いて間違った輸液チューブを用いていないかを確認することもできるが、超音波センサを別途設けることで装置が複雑化するという懸念がある。また、超音波センサを用いた場合には、輸液チューブ内に薬液を流し、輸液チューブ内の薬液中を伝播する超音波を検知する必要があり、段取り替えの作業が煩雑化する。
【0007】
本発明の一態様は、上述した事情に鑑みてなされたものであり、段取り替え時の輸液チューブの正誤判定を効率良く行うことができる技術を実現することを目的とする。
【課題を解決するための手段】
【0008】
前記の課題を解決するために、本発明の一態様に係るコントローラは、輸液装置の各部を制御する制御部を備えたコントローラにおいて、前記制御部は、前記輸液装置の輸液チューブを順次圧縮および弛緩する作動部を駆動する駆動モータのモータ軸の動作状態を示すモータ軸情報を取得し、前記モータ軸情報に基づいて、前記輸液チューブの正誤判定を行う構成である。
【0009】
前記の構成によれば、駆動モータのモータ軸情報に基づいて輸液チューブの正誤判定を行うため、輸液チューブの状態を検出するセンサ等の部品を別途設ける必要が無い。また、輸液チューブに液体が入っていなくても輸液チューブの正誤判定を行うことができるため、輸液チューブを付け間違えた場合であっても、正誤判定後の輸液チューブの交換を容易に行うことができる。よって、段取り替え時の輸液チューブの正誤判定を効率良く行うことができる。
【0010】
また、本発明の一態様に係るコントローラは、前記制御部は、前記モータ軸情報を参照して、前記駆動モータの駆動状態が所定の状態の期間における特徴量を算出し、当該特徴量に基づいて、前記輸液チューブの正誤判定を行う構成である。
【0011】
前記の構成によれば、駆動モータが駆動状態である期間における特徴量に基づいて輸液チューブの正誤判定が行われる。駆動モータの動作が停止している間は、モータ軸情報に変化が生じないため、このような駆動モータの動作が停止している間のモータ軸情報が参照されて、誤った正誤判定が行われるのを防ぐことができる。
【0012】
また、本発明の一態様に係るコントローラは、前記制御部は、前記モータ軸情報を参照し、前記駆動モータのモータ軸の回転速度が所定値以上の期間における、前記駆動モータのモータ軸のトルク値に基づいて、前記輸液チューブの正誤判定を行う構成である。
【0013】
前記の構成によれば、駆動モータのモータ軸の回転速度が所定値以上の期間を、駆動モータが動作している期間と定義して、この期間の駆動モータのモータ軸のトルク値に基づいて、輸液チューブの正誤判定を行う。輸液チューブを圧縮及び弛緩する際の、駆動モータのトルクは、輸液チューブの直径に依存する。よって、駆動モータが動作している期間の駆動モータのモータ軸のトルク値に基づいて、輸液チューブの正誤判定を行うことで、正確に、且つ効率よく輸液チューブの正誤判定を行うことができる。
【0014】
また、本発明の一態様に係るコントローラは、前記制御部は、前記駆動モータのモータ軸情報が機械学習により学習された学習済みモデルを用いて、前記輸液チューブの正誤判定を行う構成である。
【0015】
前記の構成によれば、駆動モータのモータ軸について、速度、トルク、位置等の複数のパラメータについて、機械学習により学習し、学習済みモデル生成して、輸液チューブの正誤判定を行う。機械学習を用いることなく、輸液チューブの正誤判定を行う場合には、各パラメータに対して個別の閾値を設定して正誤判定を行う必要がある。一方で、機械学習による生成した学習済みモデルを用いて正誤判定を行う場合には、複数のパラメータを用いる場合でも、1次元の閾値を設定して正誤判定を行うことが可能となり、パラメータの選択において自由度の高い正誤判定を実行することができる。
【0016】
また、本発明の一態様に係るコントローラは、前記輸液装置では、種類の異なる複数の前記輸液チューブが使用可能であり、前記制御部は、前記駆動モータのモータ軸情報に基づいて、使用されている前記輸液チューブの種類を判定する構成である。
【0017】
前記の構成によれば、輸液装置において使用可能な種類の異なる複数の輸液チューブのうち、何れの輸液チューブが装着されているかを効率良く判定することができる。
【0018】
また、本発明の一態様に係るコントローラは、前記制御部は、前記駆動モータのモータ軸情報に基づいて、使用されている前記輸液チューブの径を判定する構成である。
【0019】
前記の構成によれば、輸液装置において使用可能な径の異なる複数の輸液チューブのうち、どの径の輸液チューブが装着されているのかを適切に判定することができる。
【0020】
また、本発明の一態様に係るコントローラは、前記輸液装置として、ペリスタルティックポンプを用いた場合にも対応することができる。
【0021】
また、前記の課題を解決するために、本発明の一態様に係るコントローラの制御方法は、輸液装置の各部を制御するコントローラの制御方法において、前記輸液装置の輸液チューブを順次圧縮および弛緩する作動部を駆動する駆動モータを制御し、前記駆動モータのモータ軸情報に基づいて、前記輸液チューブの正誤判定を行う構成である。
【0022】
前記の構成によれば、輸液チューブの状態を検出するセンサ等の部品を別途設けることなく輸液チューブの正誤判定を行うことができる。また、輸液チューブに液体が入っていなくても輸液チューブの正誤判定を行うことができるため、輸液チューブを付け間違えた場合であっても、正誤判定後の輸液チューブの交換を容易に行うことができる。よって、段取り替え時の輸液チューブの正誤判定を効率良く行うことができる。
【0023】
また、前記の課題を解決するために、本発明の一態様に係る学習装置は、前記コントローラから前記モータ軸情報を取得し、機械学習によって、前記輸液チューブに対する前記モータ軸情報の学習済モデルを生成し、生成した前記学習済モデルを、前記コントローラに転送する構成である。
【0024】
前記の構成によれば、学習装置によって生成されたモータ軸情報の学習済モデルを用いて輸液チューブの正誤判定を行うことができる。よって、速度、位置、トルク等の複数のパラメータを含むモータ軸情報を用いて、1次元の閾値を設定して正誤判定を行うことができる。
【0025】
また、前記の課題を解決するために、本発明の一態様に係るプログラムは、前記コントローラとしてコンピュータを機能させるためのプログラムであって、前記制御部としてコンピュータを機能させる構成である。
【0026】
前記の構成によれば、コントローラとしてコンピュータを機能させて、輸液チューブの正誤判定を行うことができる。
【0027】
また、前記の課題を解決するために、本発明の一態様に係るプログラムは、前記学習装置としてコンピュータを機能させる構成である。
【0028】
前記の構成によれば、学習装置としてコンピュータを機能させて、学習済みモデルを生成し、輸液チューブの正誤判定を行うことができる。
【0029】
また、前記の課題を解決するために、本発明の一態様に係る輸液システムは、前記コントローラと、前記輸液装置の輸液チューブを順次圧縮および弛緩する作動部を駆動する駆動モータと、前記駆動モータの駆動を制御するモータ制御部と、を備え、前記制御部は、前記駆動モータのモータ軸の動作状態を示すモータ軸情報を前記モータ制御部から取得し、前記モータ軸情報に基づいて、前記輸液チューブの正誤判定を行う構成である。
【0030】
前記の構成によれば、駆動モータのモータ軸情報に基づいて輸液チューブの正誤判定を行うため、輸液チューブの状態を検出するセンサ等の部品を別途設ける必要が無い。また、輸液チューブに液体が入っていなくても輸液チューブの正誤判定を行うことができるため、輸液チューブを付け間違えた場合であっても、正誤判定後の輸液チューブの交換を容易に行うことができる。よって、段取り替え時の輸液チューブの正誤判定を効率良く行うことができる。
【発明の効果】
【0031】
本発明の一態様によれば、段取り替え時の輸液チューブの正誤判定を効率良く行うことができる。
【発明を実施するための形態】
【0033】
以下、本発明の一側面に係る実施形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。
【0034】
§1 適用例
まず、
図1及び
図2を用いて、本発明が適用される場面の一例について説明する。
図1は、本実施形態に係るコントローラ50により制御される輸液装置10の概略構成の一例を示している。
図2は、コントローラ50の要部構成を示すブロック図である。
【0035】
本実施形態に係るコントローラ50は、
図1、及び
図2に示されるとおり、輸液装置10の各部を制御する。輸液装置10は、液体注入元40に延びる輸液チューブ20を、複数のフィンガ13で順次圧縮及び弛緩することで、液体注入元40に貯留された液体を、バイアル瓶等の充填容器に注入する装置である。輸液装置10では、輸液チューブ20を交換することで、輸液する液体を変更する、段取り替えを行うことができる。
【0036】
輸液装置10は、複数のフィンガ13を駆動させる駆動モータ25と、駆動モータ25の回転を制御するモータ制御部26と、を備えている。モータ制御部26は、駆動モータ25のモータ回転軸の回転位置、トルク、および回転速度を含むモータ軸情報を、コントローラ50に供給する。
【0037】
コントローラ50は、例えば、PLC(Programmable Logic Controller)である。コントローラ50は、主たる演算処理を実行するCPUユニットとして制御部60を含んでいる。コントローラ50は、モータ制御部26から取得したモータ軸情報に基づいて、輸液装置10に装着されている輸液チューブ20の正誤判定を行う。
【0038】
輸液装置10では、輸液装置10を用いて製造する製品ごとに異なる直径の輸液チューブを使用する。輸液装置10で多品種の製品を製造する場合には、頻繁に輸液チューブを交換する必要がある。輸液装置10では、輸液チューブの交換が行われた際に、液体が輸液チューブに入っていない状態で、駆動モータ25を駆動させることで、輸液チューブ20の正誤判定が行われる。
【0039】
コントローラ50は、複数の輸液チューブ20の正常状態でのモータ軸情報に基づいて統計的に生成した閾値を予め記憶していてもよい。そして、コントローラ50は、モータ制御部26から取得したモータ軸情報に基づいて算出した特徴量と、予め記憶している閾値とを比較して、輸液装置10に装着されている輸液チューブ20の正誤判定を行ってもよい。
【0040】
また、コントローラ50は、複数の輸液チューブ20の正常状態でのモータ軸情報を収集して機械学習を行う学習装置80と通信可能に接続されていてもよい。そして、コントローラ50は、モータ制御部26から取得したモータ軸情報に基づいて算出した特徴量と、学習装置80により学習された学習済みモデルと、に基づいて輸液チューブ20の正誤判定を行ってもよい。
【0041】
このように、コントローラ50は、輸液チューブ20の交換が行われる段取り替えの工程において、輸液チューブ20に液体を入れなくとも、輸液チューブ20の正誤判定を行うことができる。また、コントローラ50は、輸液装置10の駆動モータ25の駆動軸情報に基づいて、輸液チューブ20の正誤判定を行う。よって、輸液装置10に、例えば超音波センサ等の、輸液チューブ20の状態を検出するための部品を別途設けることなく、輸液チューブ20の正誤判定を行うことができる。
【0042】
§2 構成例
以下、本発明の実施形態に係るコントローラ50の構成について、
図1から
図6に基づいて詳細に説明する。
【0043】
〔実施形態1〕
以下、本発明の一実施形態について、詳細に説明する。
図1は、本実施形態に係るコントローラ50により制御される輸液装置10の概略構成の一例を模式的に示す図である。
図2は、コントローラ50の要部構成を示すブロック図である。コントローラ50は、輸液装置10を駆動する駆動モータ25のモータ軸情報を参照して、輸液装置10に装着された輸液チューブ20の正誤判定を行う機能を有している。
【0044】
なお、駆動モータ25と、駆動モータ25の駆動を制御するモータ制御部26と、コントローラ50とをあわせて、輸液システムとも称する。
【0045】
(輸液装置10の構成について)
図1に示すように、輸液装置10は、蓋体11と、作動部12とを備えている。蓋体11と、作動部12とは、輸液装置10の装置内部に収容されている。作動部12は、複数のフィンガ13を備えている。また、輸液装置10には、交換可能な輸液チューブ20が備えられている。輸液チューブ20は、蓋体11によって、作動部12に対して押さえつけられている。輸液チューブ20は、液体が貯留された液体注入元40から、液体を充填するバイアル瓶等の充填容器30まで延びるように、輸液装置10に装着されて使用される。
【0046】
図2に示すように、輸液装置10は、駆動モータ25と、モータ制御部26と、を備えている。駆動モータ25は、一般的なサーボモータである。モータ制御部26は、駆動モータ25の位置や速度を制御する。
【0047】
複数のフィンガ13のそれぞれは、駆動モータ25(
図2参照)の回転によって、蓋体11に向かって近づいたり、離れたりする方向に直進運動を行う棒状の部材である。輸液チューブ20は、各フィンガ13の動きに伴って、蓋体11と、フィンガ13との間で、順次圧縮および弛緩される。輸液装置10では、複数のフィンガ13のこのような動きによって、輸液チューブ20内の液体が、液体注入元40から、充填容器30に向かって移動する。
【0048】
なお、本実施形態では、輸液装置10の一例として、駆動モータ25によって、複数のフィンガ13を直進運動させることによって、輸液チューブ20を順次圧縮および弛緩して、液体を充填容器30に充填する、所謂フィンガ式の輸液装置である構成について説明した。しかながら、輸液装置10は、上述のようなフィンガ式の輸液装置に限らず、回転式のローラでチューブの圧縮及び弛緩を順次行うペリスタルティック式の輸液装置であってもよい。
【0049】
(コントローラ50の構成について)
図2に示すように、コントローラ50は、制御部60と、データ記録部70と、を含んでいる。また、コントローラ50は、学習装置80と通信可能に接続されている。
【0050】
制御部60は、輸液装置10の各部を統括的に制御する機能を備えている演算装置である。制御部60は、モータ制御部26から、駆動モータ25のモータ軸の動作状態を示すモータ軸情報を取得し、取得したモータ軸情報に基づいて生成した制御信号を、モータ制御部26に供給することで、駆動モータ25の駆動を制御することができてもよい。
【0051】
データ記録部70は、コントローラ50で用いられる種々のデータを格納するストレージである。
【0052】
(制御部60の構成について)
制御部60は、変数受け渡し部62、サブフレーム生成部63、特徴量算出部64、機械学習演算部65、判定出力部66を含んでいる。
【0053】
変数受け渡し部62は、モータ制御部26から駆動モータ25の位置、速度、トルクの情報を含む、モータ軸の動作状態を示すモータ軸情報を取得する。
【0054】
サブフレーム生成部63は、取得したモータ軸情報を参照して、輸液装置10の動きを確認するためのサブフレームを決定する。サブフレーム生成部63は、駆動モータ25の駆動状態が所定の状態の期間におけるモータ軸情報のサブフレームを生成する。
【0055】
図3は、モータ軸情報の一例を示す図である。
図3に示した例では、輸液装置10は、駆動モータ25を3回転させて、1回の充填を行う構成である。1回の充填と、次の充填の間は、一定時間駆動モータ25の動作が停止する。駆動モータ25の動作が停止している間は、モータ軸の位置、速度、およびトルクに変化はない。よって、サブフレーム生成部63は、取得したモータ軸情報において、駆動モータ25が駆動し、液体の充填が行われている期間をサブフレームとする。
【0056】
サブフレーム生成部63は、例えば、駆動モータ25のモータ軸の回転速度が、所定値以上の期間をサブフレームとして抽出するサブフレーム生成処理を行う。サブフレーム生成部63は、例えば、駆動モータ25のモータ軸の回転速度が、速度>10pulse/sの区間をサブフレームとし、該サブフレームにおけるモータ軸情報を抽出する。サブフレーム生成部63は、抽出したモータ軸情報をデータ記録部70、および特徴量算出部64の少なくとも何れか一方に供給する。
【0057】
特徴量算出部64は、サブフレーム生成部63によって抽出されたモータ軸情報を用いて、駆動モータ25の駆動状態の特徴を示す特徴量を算出する。このように、特徴量算出部64は、駆動モータ25の駆動状態が所定の状態の期間におけるモータ軸の特徴量を算出する。例えば、特徴量算出部64は、駆動モータ25のモータ軸の回転速度が、速度>10pulse/sの区間におけるトルクの平均値を特徴量として算出する。特徴量算出部64は、算出した特徴量を機械学習演算部65に供給する。
【0058】
機械学習演算部65は、特徴量算出部64が算出した特徴量を入力として、後述する学習フローで作成された学習済みモデルを参照して、異常度を算出する。機械学習演算部65には、例えば、トルクの平均値が特徴量として入力され、トルクの平均値の、学習済みモデルに対する異常度が算出される。
【0059】
判定出力部66は、機械学習演算部65によって算出された異常度を入力として、異常度が後述する学習フローで作成された閾値を超えているか否かに応じて、輸液チューブ20の正誤判定を行う。
【0060】
このように、コントローラ50は、駆動モータ25のモータ軸情報を参照して、駆動モータ25の駆動状態が所定の状態の期間における特徴量を算出し、当該特徴量に基づいて、輸液チューブ20の正誤判定を行う。例えば、コントローラ50は、駆動モータ25のモータ軸の回転速度が所定値以上の期間における、駆動モータのモータ軸のトルク値に基づいて、輸液チューブ20の正誤判定を行う。よって、コントローラ50は、超音波センサ等のセンサを別途設けることなく、段取り替え時の輸液チューブ20の正誤判定を効率良く行うことができる。
【0061】
(輸液チューブ20の学習済モデルについて)
輸液装置10では、製造する製品に応じて、互いに異なる直径の複数の輸液チューブ20から適した輸液チューブ20が選択されて装着される。輸液チューブ20は、直径が異なると、それぞれ、輸液チューブ20を圧縮および弛緩する駆動モータ25のモータ軸の値が異なるものとなる。
【0062】
コントローラ50には、学習装置80が接続されている。学習装置80は、コントローラ50から、輸液装置10で用いられる全ての輸液チューブ20のそれぞれについて、駆動モータ25のモータ軸の速度、トルク、位置等の情報を取得する。そして学習装置80は、これらのモータ軸情報について機械学習を行い、各輸液チューブ20について、モータ軸情報が正常な状態を示す学習済みモデルを生成する。学習装置80は、生成した学習済モデルを、コントローラ50に転送する。
【0063】
学習装置80は、特徴量算出部81と、機械学習モデル生成部82と、を備えている。
【0064】
特徴量算出部81は、コントローラ50のデータ記録部70に記録された、駆動モータ25のモータ軸の値のサブフレームを参照して、特徴量を算出する。特徴量算出部81は、特に、輸液チューブ20に液体が入っていない状態で輸液装置10を稼働させた際の駆動モータ25のモータ軸の値のサブフレームを参照して、特徴量を算出する。
【0065】
図4の(a)〜(d)は、学習装置80に入力されるパラメータの例を示す図である。
図4の(a)は、駆動モータ25のモータ軸のトルクの平均値を示す図である。
図4の(b)は、駆動モータ25のモータ軸のトルクの標準偏差を示す図である。
図4の(c)は、駆動モータ25のモータ軸のトルクの最大値を示す図である。
図4の(d)は、駆動モータ25のモータ軸のトルクの最小値を示す図である。学習装置80には、特徴量算出部81は、駆動モータ25のモータ軸について、複数のパラメータが入力されてもよい。
【0066】
なお、
図4には、駆動モータ25のモータ軸のトルクに係るパラメータのみを例示しているが、学習装置80には、トルクの他に、速度や、位置に係るパラメータが入力されてもよい。特徴量算出部81は、これらの入力されたパラメータを参照して、各輸液チューブ20の正常状態を示す特徴量を算出する。
【0067】
機械学習モデル生成部82は、特徴量算出部81が算出した各輸液チューブ20の特徴量について機械学習を行い、各輸液チューブ20と、モータ軸情報との相関関係の正常状態を示す学習済みモデルを生成する。また、機械学習モデル生成部82は、各輸液チューブ20の学習済みモデルに基づいて、各輸液チューブ20について、他の輸液チューブ20と分離するための異常度の閾値を生成する。
【0068】
(学習済みモデルを生成する処理の流れについて)
図5は、学習装置80の処理の流れを示すフローチャートであり、学習済みモデルを生成する処理の流れを示す。例えば輸液装置10のカリブレーションを行う工程において、コントローラ50、および学習装置80によって、学習済みモデルを生成する処理が実行される。
【0069】
学習済みモデルを生成する処理を実行するにあたり、まず、輸液装置10に、液体の入っていない空の輸液チューブ20が装着される(ステップS1)。
【0070】
続いて、モータ制御部26の機能により、駆動モータ25を駆動させる。コントローラ50の制御部60は、変数受け渡し部62の機能により、モータ軸情報を取得する(ステップS2)。
【0071】
制御部60は、変数受け渡し部62を介して取得したモータ軸情報に基づいて、サブフレーム生成部63の機能により、サブフレームを生成する(ステップS3)。
【0072】
制御部60は、サブフレーム生成部63によって生成されたサブフレームにおけるモータ軸情報をデータ記録部70に記録する(ステップS4)。
【0073】
コントローラ50は、輸液装置10にて適宜交換されて使用される全ての輸液チューブ20について、ステップS1〜ステップS4の処理を繰り返し実行する。
【0074】
学習装置80は、コントローラ50のデータ記録部70に記録されたモータ軸情報のサブフレームを取得し、特徴量算出部81の機能により、各輸液チューブ20の特徴量を算出する。また、学習装置80は、機械学習モデル生成部82の機能により、各輸液チューブ20の学習済みモデルと、異常度の閾値とを生成する(ステップS5)
学習装置80は、各輸液チューブ20の学習済みモデルをコントローラ50に供給する。コントローラ50の制御部60は、取得した各輸液チューブ20の学習済みモデルを特徴量算出部64、および機械学習演算部65に保存する(ステップS6)
また、学習装置80は、各輸液チューブ20の異常度の閾値をコントローラ50に供給する。コントローラ50の制御部60は、取得した各輸液チューブ20の異常度の閾値を判定出力部66に保存する(ステップS7)。
【0075】
(コントローラ50による輸液チューブ20の正誤判定処理について)
図6は、コントローラ50による輸液チューブ20の正誤判定処理の流れを示すフローチャートである。コントローラ50は、輸液チューブ20を交換する段取り替えの工程で、製造する製品に対して、輸液チューブ20の付け間違いが発生したか否かを判定する正誤判定を行う。コントローラ50は、学習装置80によって生成された各輸液チューブ20と、モータ軸情報との相関関係の正常状態を示す学習済みモデルに対する、装着された輸液チューブ20の特徴量の異常度が、閾値を超えているか否かに応じて、輸液チューブ20の正誤判定を行う。
【0076】
輸液装置10に、装着されている輸液チューブ20の交換が行われる。輸液装置10には、液体の入っていない空の輸液チューブ20が装着される(ステップS11)。
【0077】
続いて、モータ制御部26の機能により、駆動モータ25を駆動させる。駆動モータ25の駆動により、作動部12は、空の輸液チューブ20を順次圧縮及び弛緩する。コントローラ50の制御部60は、変数受け渡し部62の機能により、モータ軸情報を取得する(ステップS12)。
【0078】
制御部60は、変数受け渡し部62を介して取得したモータ軸情報に基づいて、サブフレーム生成部63の機能により、サブフレームを生成する(ステップS13)。
【0079】
制御部60は、サブフレーム生成部63によって生成されたサブフレームにおけるモータ軸情報を参照して、特徴量算出部64の機能により、装着されている輸液チューブ20の特徴量を算出する。特徴量算出部64は、例えば、各サブフレームにおける駆動モータ25のトルクの平均値を特徴量として算出する(ステップS14)。
【0080】
制御部60は、機械学習演算部65の機能により、特徴量算出部64によって算出された特徴量の、正しい輸液チューブ20の学習済みモデルに対する異常度を算出する(ステップS15)。なお、ユーザは、輸液チューブ20を交換する際に、コントローラ50に対して、製造する製品を選択する等の入力操作を行う。これにより、コントローラ50は、装着されるべき輸液チューブ20を認識し、正しい輸液チューブ20の学習済みモデルを、機械学習演算部65による異常度算出に用いる。
【0081】
制御部60は、判定出力部66の機能により、機械学習演算部65が算出した異常度が、対象の輸液チューブ20の閾値を超えているか否かに基づいて、輸液チューブ20の正誤判定を行う。そして、判定出力部66は、判定結果を出力する(ステップS16)。
【0082】
このように、本実施形態によれば、輸液装置10の輸液チューブ20を交換する際に、コントローラ50は、駆動モータ25のモータ軸情報を取得し、モータ軸情報に基づいて、輸液チューブ20の正誤判定を行う。よって、輸液チューブ20の正誤判定を行うために、超音波センサ等のセンサを別途設ける必要が無く、装置及び制御が複雑化するのを防ぐことができる。
【0083】
また、コントローラ50は、駆動モータ25のモータ軸情報が機械学習により学習された学習済みモデルを用いて、当該学習済みモデルに対する異常度を算出して、輸液チューブ20の正誤判定を行う。このように、機械学習により学習された学習済みモデルを用いることで、モータ軸情報のような、速度、トルク、位置等の複数のパラメータを含む情報を用いても、異常度という1次元の値に対する閾値を設定して、正誤判定を行うことが可能となる。よって、輸液チューブ20の付け間違いによる不良品の発生を確実に防ぐことができる。
【0084】
また、コントローラ50は、輸液チューブ20に液体が入っていない状態で、輸液チューブ20の正誤判定を行うことができる。よって、コントローラ50による正誤判定の結果、輸液チューブ20を付け間違っていた場合であっても、輸液チューブ20の再度の交換を容易に行うことができ、輸液チューブ20を交換作業の効率化を図ることができる。
【0085】
〔実施形態2〕
本発明の実施形態2について、以下に説明する。なお、説明の便宜上、前記実施形態1にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を繰り返さない。また、実施形態2に係る輸液装置10、コントローラ50、および学習装置80の構成については、
図1、および
図2を参照して説明した実施形態1の構成と同様であり、その説明を省略する。
【0086】
上述の実施形態1では、コントローラ50が、正常な輸液チューブ20の学習済みモデルを用いて、対象の輸液チューブ20の正誤判定を行う態様について説明した。コントローラ50は、この態様に限らず、輸液装置10に装着されている輸液チューブ20が、種類の異なる複数の輸液チューブの中の何れであるのか判定することができてもよい。
【0087】
図7は、コントローラ50が輸液装置10に装着されている輸液チューブ20の種類を判定する処理の流れを模式的に示す図である。
図7に示すように、コントローラ50は、特徴量算出部64の機能により、例えば駆動モータ25のモータ軸のトルクの平均値等の特徴量を算出する。続いて、コントローラ50は、機械学習演算部65の機能により、特徴量算出部64が算出した特徴量について、複数種類の輸液チューブ20のそれぞれを正常と判定する学習済みモデルに対して、異常度を算出する。
【0088】
例えば、輸液装置10には、チューブ1、チューブ2、およびチューブ3の何れかを装着して使用可能であるとする。チューブ1、チューブ2、およびチューブ3は、例えば、それぞれ直径が1.6mm、2.4mm、および3.2mmのシリコンチューブである構成とすることができる。この場合、機械学習演算部65は、チューブ1、チューブ2、およびチューブ3のそれぞれを正常とする学習済みモデルに対して、対象の輸液チューブ20の異常度を算出する。
【0089】
コントローラ50は、判定出力部66の機能により、対象の輸液チューブ20の、各チューブの学習済みモデルに対する異常度と、各チューブの異常度の閾値とに基づいて、輸液装置10に装着された輸液チューブ20の種類を特定する。
【0090】
図8は、チューブ1を正常と判定する学習済みモデルと、閾値と、各チューブの異常度との関係を示す図である。
図9は、チューブ2を正常と判定する学習済みモデルと、閾値と、各チューブの異常度との関係を示す図である。
図10は、チューブ3を正常と判定する学習済みモデルと、閾値と、各チューブの異常度との関係を示す図である。
【0091】
図8に示すように、チューブ1を正常と判定する学習済みモデルに対する、チューブ1の特徴量の異常度は、閾値以下となるため、判定出力部66は、対象の輸液チューブは、チューブ1であると判定する。一方で、チューブ1を正常と判定する学習済みモデルに対する、チューブ2、およびチューブ3の特徴量の異常度は、閾値を超えるため、判定出力部66は、対象の輸液チューブは、チューブ2、およびチューブ3の何れでもないと判定する。
【0092】
また、
図9に示すように、チューブ2を正常と判定する学習済みモデルに対する、チューブ2の特徴量の異常度は、閾値以下となるため、判定出力部66は、対象の輸液チューブは、チューブ2であると判定する。一方で、チューブ2を正常と判定する学習済みモデルに対する、チューブ1、およびチューブ3の特徴量の異常度は、閾値を超えるため、判定出力部66は、対象の輸液チューブは、チューブ1、およびチューブ3の何れでもないと判定する。
【0093】
また、
図10に示すように、チューブ3を正常と判定する学習済みモデルに対する、チューブ3の特徴量の異常度は、閾値以下となるため、判定出力部66は、対象の輸液チューブは、チューブ3であると判定する。一方で、チューブ3を正常と判定する学習済みモデルに対する、チューブ1、およびチューブ2の特徴量の異常度は、閾値を超えるため、判定出力部66は、対象の輸液チューブは、チューブ1、およびチューブ2の何れでもないと判定する。
【0094】
このように、コントローラ50は、駆動モータ25のモータ軸情報に基づいて、対象の輸液チューブ20の特徴量を算出する。そして、コントローラ50は、輸液装置10において使用可能な種類の異なる複数の輸液チューブについて、それぞれの学習済みモデルに対する、対象の輸液チューブ20の特徴量の異常度を算出する。コントローラ50は、この算出した異常度を参照して、使用されている輸液チューブ20の種類を判定することができる。
【0095】
このように、コントローラ50は、駆動モータ25のモータ軸情報に基づいて、機械学習演算部65に保存されている複数の学習済みモデルを参照し、装着されている輸液チューブ20を識別することができる。よって、輸液チューブ20を交換する段取り替えの工程で、ユーザは、輸液チューブ20を交換し、コントローラ50によるチューブの識別判定を実行することで、正しいチューブが装着されているか、誤ったチューブが装着されているのかを知ることができる。
【0096】
〔実施形態3〕
本発明の実施形態について、以下に説明する。なお、説明の便宜上、上記実施形態1および2にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を繰り返さない。
【0097】
図11は、コントローラ50により制御される実施形態2に係る輸液装置110の概略構成の一例を示している。輸液装置110を制御するコントローラ50の構成については、
図2を用いて上述した、コントローラ50と同様であり、その説明を省略する。
【0098】
図11に示すように、本実施形態では輸液装置110はペリスタルティックポンプによって構成されており、治具111、ロータ112、およびローラ113を備えている。ロータ112は、サーボモータとしての駆動モータ25により回転する。なお、駆動モータ25がサーボモータである場合、コントローラ50は、モータ軸情報を取得するためのセンサ等を設けることなく、サーボモータの制御情報に基づいてモータ軸情報(例えばトルク値)を取得することができる。
【0099】
ローラ113は、ロータ112の周囲に所定の間隔で設けられ、ロータ112の回転に伴って円運動する。またローラ113はロータ112に回動自在に設けられており、輸液チューブ120と接触しながらロータ112の回転とは逆方向に回転する。
【0100】
輸液装置110は、駆動モータ25によって、複数のローラ113を回転運動させることによって、ローラ113と治具111との間で輸液チューブ120を順次圧縮および弛緩して、輸液チューブ120内の液体を、ロータ112の回転方向と同じ方向に送液する。
【0101】
図12は、輸液装置110で用いられる輸液チューブ120および取り付け状態の例を示す表である。同図に示す例では、輸液チューブ120に関して、チューブ内径、チューブ外径、厚み、挟み付けクリアランス、およびチューブ潰し厚のバリエーションが示されている。チューブ内径は、輸液チューブ120の内径、すなわち、液体が流通する通路の径を示す。チューブ外形は、輸液チューブ120自体の外径を示す。厚みは、チューブ外径とチューブ内径との差を示しており、輸液チューブ120のチューブの厚みの2倍、すなわち、輸液チューブ120の内径が0になるまで圧縮した際の輸液チューブ120の厚みを示している。
【0102】
図13は、挟み付けクリアランスを模式的に示す図である。
図13に示すように、挟み付けクリアランスは、ローラ113と、治具111との間の隙間を示している。すなわち、挟み付けクリアランスは、ローラ113と治具111との間で輸液チューブ120を挟みこんで圧縮するためのクリアランスを示している。挟み付けクリアランスは、使用する輸液チューブ120の種類に応じて設定され、例えば治具111を交換したり位置を変更したりすることで、クリアランスが変更される。
【0103】
チューブ潰し厚は、ローラ113によって輸液チューブ120が圧縮された際の、チューブの材質自体が圧縮される量を示している。すなわち、厚みと挟み付けクリアランスとの差分に相当する。
【0104】
(コントローラ50による輸液チューブ120の正誤判定処理について)
コントローラ50は、輸液チューブ120の交換が行われると、輸液チューブ120の付け間違いが発生したか否かを判定する正誤判定を行う。
図6に示したフローチャートのステップS11〜ステップS13の後、制御部60は、ステップS14において、特徴量算出部64の機能により、各サブフレームにおける駆動モータ25のモータ軸情報を参照して、特徴量を算出する。本実施形態では、特徴量算出部64は、モータ軸のトルク値に基づいて、特徴量を算出する。
【0105】
前述したように、駆動モータ25を駆動させ、輸液チューブ120を圧縮すると、輸液チューブ120の特性に応じた反発力が生じる。この反発力は、モータ軸のトルクに影響を与えるため、モータ軸のトルク値には、輸液チューブ120の特性の情報が含まれることとなる。よって、特徴量算出部64は、モータ軸のトルク値に基づいて、特徴量を算出することで、輸液チューブ120の特性に応じた適切な特徴量を算出することができる。
【0106】
制御部60は、ステップS15において、機械学習演算部65の機能により、特徴量算出部64によって算出された特徴量の、正しい輸液チューブ120の学習済みモデルに対する異常度(特徴量スコア)を算出する。
【0107】
図14〜
図19は、内径1mm、1.5mm、2mm、2.5mm、3mm、4mmの輸液チューブ120のそれぞれを正とする場合の、各輸液チューブ120の学習済みモデルに対する異常度のばらつきを示した箱ひげ図である。また、横軸が輸液チューブ120の内径を示しており、縦軸が異常度を示している。
【0108】
判定出力部66は、対象の輸液チューブ120の異常度が所定の閾値を超えているか否かに基づいて、輸液チューブ120の正誤判定を行う。ここで、閾値は、正しい輸液チューブ120の学習済みモデルの異常度の分布における標準偏差に基づいて設定してもよい。例えば、正しい輸液チューブ120の学習済みモデルの異常度の分布の平均値に対して、標準偏差を所定の倍率(例えば2〜4倍)にした値を加えた値を閾値とする。
【0109】
図14は、内径1mmの輸液チューブ120を正とした場合の、各輸液チューブ120の異常度のばらつきを示している。
図14に示すように、正である内径1mmの輸液チューブ120の異常度のばらつきは、中央値が0.4未満、最大値が0.47程度である。一方で、内径が1.5mm、2mm、2.5mm、3mm、4mmの輸液チューブ120は、異常度が0.7〜0.8程度となる。
【0110】
判定出力部66は、対象の輸液チューブ120が内径1mmのチューブである場合には、異常度の分布が閾値を超えていないため、正しい輸液チューブ120が取り付けられていると判定する。また、判定出力部66は、対象の輸液チューブ120が、内径が1.5mm、2mm、2.5mm、3mm、または4mmのチューブである場合には、異常度の分布が閾値を超えているため、誤った輸液チューブ120が取り付けられていると判定する。
【0111】
判定出力部66は、例えばレベル1閾値と、レベル2閾値といった複数の閾値のうち、求められる判定精度に応じた閾値を参照して、対象の輸液チューブ120の異常度が閾値を超えているか否かを判定することができてもよい。判定出力部66は、より小さい閾値、例えば
図14の例では、レベル1閾値を用いて、輸液チューブ120の判定を行うことで、厳しい精度で、輸液チューブ120の正誤判定を行うことができる。この場合、誤りである輸液チューブ120を正しいと判定する可能性は低くなるが、正しい輸液チューブ120を誤りであると判定する可能性は高くなる。一方、レベル1閾値よりも高いレベル2閾値を用いる場合、誤りである輸液チューブ120を正しいと判定する可能性は高くなるが、正しい輸液チューブ120を誤りであると判定する可能性は低くなる。すなわち、判定出力部66は、求められる判定精度に応じて、ユーザの指示により閾値を変更することができるようになっていてもよい。
【0112】
図15は、内径1.5mmの輸液チューブ120を正とした場合の、各輸液チューブ120の異常度のばらつきを示している。
図15に示すように、正である内径1.5mmの輸液チューブ120の異常度のばらつきは、閾値を超えていない。一方で、内径が1mm、2mm、2.5mm、3mm、4mmの輸液チューブ120は、異常度のばらつきが閾値を超えている。
【0113】
判定出力部66は、対象の輸液チューブ120が内径1.5mmのチューブである場合には、異常度の分布が閾値を超えていないため、正しい輸液チューブ120が取り付けられていると判定する。また、判定出力部66は、対象の輸液チューブ120が、内径が1mm、2mm、2.5mm、3mm、または4mmのチューブである場合には、異常度の分布が閾値を超えているため、誤った輸液チューブ120が取り付けられていると判定する。
【0114】
図16は、内径2mmの輸液チューブ120を正とした場合の、各輸液チューブ120の異常度のばらつきを示している。
図16に示すように、正である内径2mmの輸液チューブ120の異常度のばらつきは、閾値を超えていない。一方で、内径が1mm、1.5mm、2.5mm、3mm、4mmの輸液チューブ120は、異常度のばらつきが閾値を超えている。
【0115】
判定出力部66は、対象の輸液チューブ120が内径2mmのチューブである場合には、異常度の分布が閾値を超えていないため、正しい輸液チューブ120が取り付けられていると判定する。また、判定出力部66は、対象の輸液チューブ120が、内径が1mm、1.5mm、2.5mm、3mm、または4mmのチューブである場合には、異常度の分布が閾値を超えているため、誤った輸液チューブ120が取り付けられていると判定する。
【0116】
図17は、内径2.5mmの輸液チューブ120を正とした場合の、各輸液チューブ120の異常度のばらつきを示している。
図17に示すように、正である内径2.5mmの輸液チューブ120の異常度のばらつきは、閾値を超えていない。一方で、内径が1mm、1.5mm、2mm、3mm、4mmの輸液チューブ120は、異常度のばらつきが閾値を超えている。
【0117】
判定出力部66は、対象の輸液チューブ120が内径2.5mmのチューブである場合には、異常度の分布が閾値を超えていないため、正しい輸液チューブ120が取り付けられていると判定する。また、判定出力部66は、対象の輸液チューブ120が、内径が1mm、1.5mm、2mm、3mm、または4mmのチューブである場合には、異常度の分布が閾値を超えているため、誤った輸液チューブ120が取り付けられていると判定する。
【0118】
図18は、内径3mmの輸液チューブ120を正とした場合の、各輸液チューブ120の異常度のばらつきを示している。
図18に示すように、正である内径3mmの輸液チューブ120の異常度のばらつきは、閾値を超えていない。一方で、内径が1mm、1.5mm、2mm、2.5mm、4mmの輸液チューブ120は、異常度のばらつきが閾値を超えている。
【0119】
判定出力部66は、対象の輸液チューブ120が内径3mmのチューブである場合には、異常度の分布が閾値を超えていないため、正しい輸液チューブ120が取り付けられていると判定する。また、判定出力部66は、対象の輸液チューブ120が、内径が1mm、1.5mm、2mm、2.5mm、または4mmのチューブである場合には、異常度の分布が閾値を超えているため、誤った輸液チューブ120が取り付けられていると判定する。
【0120】
図19は、内径4mmの輸液チューブ120を正とした場合の、各輸液チューブ120の異常度のばらつきを示している。
図19に示すように、正である内径4mmの輸液チューブ120の異常度のばらつきは、閾値を超えていない。一方で、内径が1mm、1.5mm、2mm、2.5mm、3mmの輸液チューブ120は、異常度のばらつきが閾値を超えている。
【0121】
判定出力部66は、対象の輸液チューブ120が内径4mmのチューブである場合には、異常度の分布が閾値を超えていないため、正しい輸液チューブ120が取り付けられていると判定する。また、判定出力部66は、対象の輸液チューブ120が、内径が1mm、1.5mm、2mm、2.5mm、または3mmのチューブである場合には、異常度の分布が閾値を超えているため、誤った輸液チューブ120が取り付けられていると判定する。
【0122】
以上のように、制御部60は、モータ軸のトルク値に基づいて、特徴量を算出し、特徴量の、正しい輸液チューブ120の学習済みモデルに対する異常度を算出して、正誤判定を行うことで、0.5mmのチューブ径の違いも適切に識別し、正誤判定を行うことができる。また、この正誤判定は、輸液チューブ120の内径が異なるとともに、外径、厚み、挟み付けクリアランス、およびチューブ潰し厚が異なっていても正確に行うことができるので、ロバスト性を有する正誤判定を実現することができる。
【0123】
そして、制御部60は、各内径による正誤判定を順次行うことにより、取り付けられている輸液チューブ120の内径を判定することができる。
【0124】
なお、上記の例では、輸液チューブ120の内径、外径、厚み、挟み付けクリアランス、およびチューブ潰し厚が異なる例を示したが、輸液チューブ120の材質が異なる場合にも、対応可能である。すなわち、輸液チューブ120の材質が異なれば、輸液チューブ120の柔軟性が異なることになり、特徴量スコアに相違が出てくることになる。よって、前述した正誤判定により、輸液チューブ120の材質を判別することも可能である。
【0125】
さらに、輸液チューブ120が経年劣化した場合、輸液チューブ120の柔軟性が異なることになり、特徴量スコアに相違が出てくることになる。よって、前述した正誤判定により、輸液チューブ120の経年劣化度合いを判別することも可能である。
【0126】
〔ソフトウェアによる実現例〕
コントローラ50の制御ブロック(特にサブフレーム生成部63、特徴量算出部64、機械学習演算部65および判定出力部66)、および学習装置80の制御ブロック(特に特徴量算出部81および機械学習モデル生成部82)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。
【0127】
後者の場合、コントローラ50、および学習装置80は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば1つ以上のプロセッサを備えていると共に、前記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、前記コンピュータにおいて、前記プロセッサが前記プログラムを前記記録媒体から読み取って実行することにより、本発明の目的が達成される。前記プロセッサとしては、例えばCPU(Central Processing Unit)を用いることができる。前記記録媒体としては、「一時的でない有形の媒体」、例えば、ROM(Read Only Memory)等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、前記プログラムを展開するRAM(Random Access Memory)などをさらに備えていてもよい。また、前記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して前記コンピュータに供給されてもよい。なお、本発明の一態様は、前記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【0128】
なお、本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【0129】
また、学習装置80による学習済みモデル生成のための分類及び学習処理の具体構成は本実施形態を限定するものではなく、例えば、以下のような機械学習的手法の何れかまたはそれらの組み合わせを用いることができる。
【0130】
・サポートベクターマシン(SVM: Support Vector Machine)
・クラスタリング(Clustering)
・帰納論理プログラミング(ILP: Inductive Logic Programming)
・遺伝的アルゴリズム(GP: Genetic Programming)
・ベイジアンネットワーク(BN: Baysian Network)
・ニューラルネットワーク(NN: Neural Network)
ニューラルネットワークを用いる場合、3Dデータをニューラルネットワークへのインプット用に予め加工して用いるとよい。このような加工には、データの1次元的配列化、または多次元的配列化に加え、例えば、データアーギュメンテーション(Deta Argumentation)等の手法を用いることができる。
【0131】
また、ニューラルネットワークを用いる場合、畳み込み処理を含む畳み込みニューラルネットワーク(CNN: Convolutional Neural Network)を用いてもよい。より具体的には、ニューラルネットワークに含まれる1又は複数の層(レイヤ)として、畳み込み演算を行う畳み込み層を設け、当該層に入力される入力データに対してフィルタ演算(積和演算)を行う構成としてもよい。またフィルタ演算を行う際には、パディング等の処理を併用したり、適宜設定されたストライド幅を採用したりしてもよい。
【0132】
また、ニューラルネットワークとして、数十〜数千層に至る多層型又は超多層型のニューラルネットワークを用いてもよい。
【0133】
また、学習装置80による学習済みモデル生成処理に用いられる機械学習は、教師あり学習であってもよいし、教師なし学習であってもよい。