(装置の概要)
以下、返品薬を仕分けして格納する返品薬剤供給装置1を例として、本発明の一実施形態を説明する。図1から図6は、本発明の実施形態に係る返品薬剤供給装置1を示す。返品薬剤供給装置1は、受入部100、昇降部200、認識部300、非格納薬剤配置部400、格納部500、及び払出部600を備える。また、返品薬剤供給装置1は、直交型ロボット700、スカラー型ロボット800、及びサポートトレー900を備える。さらに、返品薬剤供給装置1は、図1に模式的に示す制御装置1000を備える。制御装置1000は、図4に図示する制御盤1001(ディスプレイ1002を備える)からの入力、センサやカメラからの入力等に基づいて、返品薬剤供給装置1の動作を統括的に制御する。
返品薬剤供給装置1の主な機能の概要は、以下の通りである。返品薬剤供給装置1は、例えばアンプル2A、バイアル2B、樹脂アンプル2Cである返品薬剤2(図6参照)の形状、大きさ(長さL1と直径ないし幅W)、種類、使用期限のような性状を認識する。本実施形態では、返品薬剤2には、種類、使用期限等に関する情報を含む文字情報やバーコードが印刷されたラベル3が貼り付けられている。返品薬剤供給装置1は、ラベル3に表示されたこれらの情報を読み取る。また、返品薬剤供給装置1は、認識後の返品薬剤2をその返品薬剤2の識別情報(1個1個の返品薬剤2に付与されたユニークな情報)と関連付けて一時的に格納し、処方データ(例えば電子カルテシステムである上位のシステム(HIS: Hospital Information System)から受信する。)に基づいて、払い出しを行う。格納時には、格納される返品薬剤2の大きさに応じて格納領域が設定される。返品薬剤2の格納は、設定された格納領域に配置され、かつ払出時に個別の返品薬剤2を取出可能となる態様で行われる。さらに、返品薬剤供給装置1は、使用期限が過ぎている返品薬剤2を排出する。
なお、本明細書で言う「薬剤」は、図6に示すように容器に収容された薬品を意味する。したがって、「薬剤の形状及び大きさ」は、容器の形状及び大きさを意味し、「薬剤の種類、使用期限などの情報」は、容器に収容された薬品の種類、使用期限などの情報を意味する。また、実際には、「使用期限」の用語に代わって、「有効期限」の用語が使用される場合がある。ただ、これらの用語は実質的には同義である。そこで、本明細書では、混乱を回避するために、「有効期限」を用いずに、「使用期限」のみを使用する。
(受入部)
図1から図3に示すように、受入部100は、返品薬剤供給装置1を正面から見て左上手前側に配置されている。
図5を併せて参照すると、受入部100は、水平方向(図においてX方向)に互いに対向して配置された固定のラック部材101を備える。ラック部材101には、複数の返品トレー4を多段配置された状態で保持するための、複数対のレール溝101a,101aが設けられている。
図6を参照すると、返品トレー4は、図において上方が開口したトレー本体4aと、トレー本体4aの上端縁に設けられたフランジ状部4bとを備える。図6に示すように、返品トレー4に収容されている返品薬剤2(例えばアンプル2A、バイアル2B、樹脂アンプル2C)は、形状、大きさ(長さL1と幅W)、種類、使用期限のような性状が異なっている。また、返品トレー4に収容されている返品薬剤2の向きと姿勢は揃えられておらず、互いに異なる。つまり、返品トレー4に収容されている返品薬剤2は、非整列状態である。ここで返品薬剤2の向きは、図においてXY平面において返品薬剤2の長手方向(返品薬剤2の軸線A)が延びる方向をいう。返品薬剤2についての向きという用語は、返品薬剤2の軸線Aが延びる向きに加え、返品薬剤2の先端2aと基端2bの向いている方向を含む場合がある。ただし、返品トレー4に収容されている返品薬剤2の形状、大きさ、種類、使用期限のような性状が統一されていてもよい。また、返品トレー4に収容されている返品薬剤2の向き及び姿勢が揃えられていてもよい。返品トレー4中の返品薬剤2は、互いに部分的に重なり合っていてもよい。
図5に示すように、ラック部材101に設けられたレール溝101a,101aにより、返品トレー4のフランジ状部4bが支持されている。レール溝101a,101aは、ラック部材101の図においてY方向手前側の端面から奥側の端面まで貫通するように設けられている。そのため、医療従業者のような作業者は、返品薬剤供給装置1の正面側から、返品トレー4をレール溝101a,101aに対して出し入れできる。また、後述する昇降部200は、返品薬剤供給装置1の背面側から返品トレー4をレール溝101a,101aに対して出し入れできる。
受入部100は、図5において右側のラック部材101に設けられた動作準備ボタン(図示なし)を備える。動作準備ボタンは、収納する返品トレー4に対して1つずつ設けられている。作業者が返品トレー4を受入部100に収納後、対応する動作準備ボタンを押下することで、制御装置1000により昇降部200は、押下された動作準備ボタンに対応する返品トレー4を引き出すことができる状態となる。
(昇降部)
図1から図3に示すように、昇降部200は、返品薬剤供給装置1を正面から見て左奥に配置されている。
図7を併せて参照すると、昇降部200は、Z方向に延びる固定の直動ガイド201と、直動ガイド201に沿って昇降するキャリッジ202と、キャリッジ202に搭載されたテーブル203を備える。テーブル203は底部203aと、底部203aに左右に設けられた側部203b,203bと、底部203aの奥側(Y方向の奥側)に設けられた端部203cとを備える。テーブル203は手前側(Y方向の手前側)が開放している。側部203b,203bには、レール溝204,204が設けられている。レール溝204,204により、返品トレー4のフランジ状部4bが支持され、それによってテーブル203に返品トレー4が保持される。
引き続き図7を参照すると、底部203aには返品薬剤供給装置1の奥行方向(Y方向)に延びる固定の直動ガイド205が設けられている。また、この直動ガイド205に沿って水平移動するキャリッジ206に、フック207の基端側が固定されている。
昇降部200は、受入部100から1個の返品トレー4を取り出して、後述する認識部300と同様の高さ位置(図1において符号Hで概念的に示す)まで降下させることができる。また、昇降部200は、認識部300と同様の高さ位置Hから返品トレー4を受入部100に戻すことができる。
(直交型ロボット)
図8を参照すると、直交型ロボット700は、図示しない真空源から図示しない吸込管を通じて供給される真空により返品薬剤2を解放可能に吸着する吸着ノズル701を備える。吸着ノズル701の先端には、ゴム製の吸着パッド702が取り付けられている。図1から図3を併せて参照すると、吸着ノズル701が返品薬剤2を吸着保持し、又は吸着保持した返品薬剤2を吸着解除により離すことができる範囲が、昇降部200(前述の高さ位置Hにあるときの返品トレー4)の全範囲と、認識部300及び非格納薬剤配置部400を含むように、直交型ロボット700は構成されている。
直交型ロボット700(吸着ノズル701)は、昇降部200のテーブル203(高さ位置H)に保持された返品トレー4から返品薬剤2を吸着保持して取り出し、認識部300が備える後述の仮置き部301に移送できる。また、直交型ロボット700は仮置き部301から返品薬剤2を吸着保持して取り出し、認識部300が備える後述のラベル読取部302に移送できる。さらに、直交型ロボット700は、ラベル読取部302から返品薬剤2を吸着保持して取り出し、非格納薬剤配置部400に移送できる。
直交型ロボット700は、受入部100よりも下方側で返品薬剤供給装置1の奥行き方向(Y方向)に延びる固定のY軸ビーム703と、このY軸ビーム703に沿って移動するキャリッジ704とを備える。キャリッジ704には、返品薬剤供給装置1の幅方向(X方向)に延びるX軸ビーム705が固定されている。また、X軸ビーム705上を移動するキャリッジ706が設けられ、このキャリッジ706にヘッド707が搭載されている。ヘッド707にはボール螺子機構により昇降する昇降ロッド708が設けられている。昇降ロッド708の下端には、ブラケット709を介して吸着ノズル701が取り付けられている。ブラケット709と吸着ノズル701の間にはばね710が介装されている。昇降ロッド708がZ軸周りに回転することにより、吸着ノズル701もZ軸周りに回転できる。
吸着ノズル701に吸着保持された返品薬剤2は、キャリッジ706の直動によりX方向に移動し、キャリッジ704の直動によりY方向に移動し、昇降ロッド708の昇降によりZ方向に移動する。また、吸着ノズル701に吸着保持された返品薬剤2は、昇降ロッド708のZ軸周りの回転により、吸着ノズル701の軸線(Z軸)回りに回転する。
(認識部と非格納薬剤配置部)
図1から図3を参照すると、認識部300は、照明303とカメラ304を備える。照明303とカメラ304は、昇降部200の上方に位置している。また、認識部300は、カメラ304と共に本発明における認識部の一例を構成する仮置き部301とラベル読取部302を備える。仮置き部301とラベル読取部302は、返品薬剤供給装置1を正面から見て左下手前側に配置され、受入部100の下方に位置している。
図9を併せて参照すると、仮置き部301は、返品薬剤2が載置される半透明板305(薬剤載置部)と、この半透明板305の下側に配置された照明306と、半透明板305の上方に位置するカメラ307(撮影部)を備える。
図10を併せて参照すると、ラベル読取部302は、回転駆動される無端ベルト308と、この無端ベルト308上に配置されたローラ309とを備える。返品薬剤2は、無端ベルト308とローラ309が回転することで、それ自体の長手方向の軸線A回りに回転する。また、ラベル読取部302は照明310と図1にのみ図示するカメラ311を備える。さらに、ラベル読取部302はバーコードリーダ312を備える。
図9を参照すると、非格納薬剤配置部400は、詳細は後述するが返品薬剤供給装置1において取り扱い対象外の返品薬剤2、すなわち格納部500に原則的には格納しない返品薬剤2(非格納薬剤2’)を格納する薬剤配置部であって、仮置き部301に隣接し配置された2個の非格納薬剤配置箱401,402を備える。これらの非格納薬剤配置箱401,402は、後述する格納トレー5の配置溝と同様の非格納薬剤2’を保持するための配置溝を備える。
(返品薬剤の認識完了までの動作)
ここで、受入部100の返品トレー4に収容された返品薬剤2に対する、向き及び姿勢と、種類、形状、大きさ、使用期限等の性状との認識が完了するまでの、返品薬剤供給装置1の動作を説明する。
まず、受入部100から昇降部200のテーブル203に返品トレー4が移載される。返品トレー4の移載後、テーブル203は、高さ位置H(図1参照)まで降下する。テーブル203が高さ位置Hまで降下した後に、認識部300による認識が開始される。まず、照明303からテーブル203上の返品トレー4に対して上方から照明光(指向性の高い光であることが好ましい)を照射しつつ、カメラ304による撮影を行う。そして、カメラ304で撮影した画像に基づいて、返品トレー4中の返品薬剤2の位置等が認識されて格納対象薬品とする。この認識処理の詳細に関しては後述する。この認識結果に基づいて、直交型ロボット700の吸着ノズル701が返品トレー4中の返品薬剤2を1個ずつ吸着保持し、仮置き部301の半透明板305上に移載する(図9参照)。この際、吸着ノズル701は、それ自体の軸線(Z軸)回りの回転により、吸着保持した返品薬剤2の向きを調節する。
仮置き部301では、返品薬剤2は、半透明板305上に載置される。照明306により半透明板305の下方に配置された照明306が半透明板305に向かって光を照射する。照明光は高輝度の光であることが好ましい。照明306が光を照射しつつ、カメラ307が半透明板305上の返品薬剤2を撮影する。カメラ307によって撮影された画像により、詳細は後述するが、返品薬剤2の形状、大きさ、及び向き(XY平面において軸線Aが延びる方向であって先端2aと基端2bが向いている方向も含む)が認識される。また、カメラ307によって撮影された画像により、返品薬剤2の吸着位置(直交型ロボット700の吸着ノズル701とスカラー型ロボット800の吸着ノズル801で吸着される位置)が算出される。返品薬剤2の吸着位置の算出は後に詳述する。カメラ307で撮影された画像による認識結果に基づいて、直交型ロボット700の吸着ノズル701が半透明板305上の返品薬剤2を吸着保持し、ラベル読取部302に移載する。この際、吸着ノズル701は、それ自体の軸線(Z軸)回りに回転により、吸着保持した返品薬剤2の向きを調節する。
ラベル読取部302では、詳細は後述するが、無端ベルト308とローラ309の回転により、返品薬剤2がそれ自体の軸線A(図10参照)回りに回転する。この回転する返品薬剤2に対し、照明310から照明光を照射しつつ、ラベル読取装置(カメラ311及びバーコードリーダ312)がその返品薬剤2のラベル3を読み取る。カメラ311が撮影した画像により、返品薬剤2のラベル3に表示された使用期限等に関する文字情報が認識されると共に、軸線A回りの返品薬剤2の姿勢が認識される。また、カメラ311による撮影に加え、バーコードリーダ312によって、ラベル3に含まれるバーコードが読み取られる。カメラ311が撮影した画像とバーコードリーダ312により読み取られたバーコードにより、返品薬剤2の種類と使用期限が認識される。薬剤の種類及び使用期限の認識は、カメラ311が撮像した画像とバーコードリーダ312によるバーコードの読み取りのいずれか一方のみで行っても良い。例えば、返品薬剤2のラベル3に含まれるバーコードに返品薬剤2の種類と使用期限が含まれている場合、カメラ311を設けずにバーコードリーダ312のみを設け、バーコードリーダ312によるバーコードの読み取りによって、返品薬剤2の種類と使用期限を認識できる。認識終了後、ラベル3が上向き(Z方向向き)となる姿勢で返品薬剤2の軸線A回りの回転が停止するように、無端ベルト308とローラ309の回転が停止する。ラベル3が上向きであるか否かは、カメラ311の撮影画像に基づいて確認することができる。
例えば、ラベル読取部302で認識された使用期限が既に経過している場合、あるいはラベル読取部302で使用期限が認識できなった場合、その返品薬剤2は、非格納薬剤2’として、直交型ロボット700の吸着ノズル701により吸着保持されて、非格納薬剤配置部400の非格納薬剤配置箱401,402に移載される。また、受入部100の返品トレー4のうちいずれか(例えば最下段の返品トレー4)を、非格納薬剤配置部400の一部として機能する非格納薬剤2’用のトレーとし、その非格納薬剤用返品トレー4に非格納薬剤配置箱401,402の非格納薬剤2’が戻される。
(スカラー型ロボットとサポートトレー)
図11及び図12を参照すると、スカラー型ロボット800は、図示しない真空源から供給される真空により返品薬剤2を解放可能に吸着する吸着ノズル801を備える。吸着ノズル801の先端には、ゴム製の吸着パッド802が取り付けられている。吸着ノズル801が返品薬剤2を吸着保持し、又は吸着保持した返品薬剤2を吸着解除により離すことができる範囲が、認識部300のラベル読取部302と、格納部500が備えるすべての格納トレー5の全範囲と、後述する払出位置に配置された払出トレー8の全領域を含むように、スカラー型ロボット800は構成されている。
スカラー型ロボット800(吸着ノズル801)は、認識部300のラベル読取部302から返品薬剤2を吸着保持して取り出し、格納部500が備える後述の格納トレー5に移送できる。また、スカラー型ロボット800は、格納トレー5から返品薬剤2を吸着保持して取り出し、払出部600の後述する払出トレー8に移送できる。
スカラー型ロボット800は、返品薬剤供給装置1の高さ方向(Z方向)に延びる一対の固定の直動ガイド803,803と、これら直動ガイド803,803上を移動するキャリッジ804,804を備える。キャリッジ804,804によって、返品薬剤供給装置1の幅方向(X方向)に延びるX軸ビーム805の端部が支持されている。X軸ビーム805にベース806が固定されている。ベース806に連結された第1アーム807の基端側がZ軸回りに回動し、第1アーム807の先端側に連結された第2アーム808の基端側もZ軸回りに回動する。第2アーム808の先端側にヘッド809がZ軸回りに回動可能に取り付けられている。ヘッド809に固定されたブラケット810に、ばね811を介して吸着ノズル801が保持されている。ヘッド809には、図11にのみ図示するバーコードリーダ812と返品薬剤2を検知する有無検知センサ820とが搭載されている。バーコードリーダ812は、吸着ノズル801に対して、側方にずれた位置に搭載されており、吸着ノズル801の下方に位置する返品薬剤2に貼付されたラベル3のバーコードを斜め上方から読み取るようになっている。言い換えれば、バーコードリーダ812は、ラベル読取部302における返品薬剤2に対するバーコードリーダ312との位置関係と同様に、吸着ノズル801が対象の返品薬剤2の上方に位置するときに、返品薬剤2に貼付されたラベル3のバーコードに対向するように配置されている。
有無検知センサ820は、本実施形態では、反射型の光電センサであって、吸着ノズル801の下方領域に向けて光を発行して、その反射光を受光することで、吸着ノズル801の下方領域における返品薬剤2の有無を検知するものである。
吸着ノズル801に吸着保持された返品薬剤2は、X軸ビーム805(キャリッジ804)の直動によりZ方向に移動し、第1アーム807と第2アーム808の回動によりXY平面上を移動する。また、吸着ノズル801に吸着された返品薬剤2は、第2アーム808の先端部に対するヘッド809の回転により吸着ノズル801の軸線(Z軸)回りに回動する。
図1、図11、及び図12を参照すると、サポートトレー900は、スカラー型ロボット800のベース806に対して昇降するロッド901の下端に固定されている。本実施形態では、サポートトレー900は後述する格納トレー5と同様の返品薬剤2を保持するための配置溝を備える。図12に示すように、ロッド901の昇降により、サポートトレー900は、吸着ノズル801に吸着保持された返品薬剤2に接近する高さ位置と、吸着ノズル801に吸着保持された返品薬剤2から離隔する高さ位置とに昇降移動する。
吸着ノズル801が返品薬剤2を吸着して移送するとき、スカラー型ロボット800は、第1アーム807、第2アーム808により吸着ノズル801を水平方向に移動させて、サポートトレー900の上方に位置させる。このとき、吸着された返品薬剤2がサポートトレー900の配置溝の向きに一致するように、ヘッド809が回動される。そして、ロッド901を上昇させることで、サポートトレー900が、返品薬剤2から離隔する高さ位置から、返品薬剤2に接近する高さ位置に移動される。これにより、移送中の返品薬剤2が、吸着されている吸着パッド802から外れたとしても、吸着ノズル801の下方に落下することを、サポートトレー900で防止することができる。これにより、吸着外れによる返品薬剤2の損傷を防止しつつ、より高速で返品薬剤2を移送できる。
また、サポートトレー900に落下した返品薬剤2は、吸着ノズル801により再び吸着されて、移送されてもよい。
(格納部)
図1から図3に示すように、格納部500は、返品薬剤供給装置1を正面から見て右奥に配置されている。
図13及び図14を併せて参照すると、格納部500はZ方向に延びる直動ガイド501を備える。この直動ガイド501には、格納トレー5を取り出し可能に保持する保持枠502が昇降自在に保持されている。保持枠502は多段に重ねて配置されている。多段配置された格納トレー5の両側には、Z方向に延びる直動ガイド503,503が配置されている。これらの直動ガイド503,503上を昇降するキャリッジ504,504が設けられている。キャリッジ504には、図13に示す引込位置と図14に示す突出位置とに移動可能なリフト機構505が搭載されている。リフト機構505は図において奥行方向にも配置されている。また、リフト機構505を多段配置してもよい。
図13のようにリフト機構505が引込位置にある状態で、1個の保持枠502に対応する位置にキャリッジ504,504が移動する。次に、リフト機構505が図14に示すように突出位置に移動し、保持枠502の下側に進入する、この状態でキャリッジ504,504が上昇すると、リフト機構505が進入した保持枠502とそれよりも上段の保持枠502とが上方に持ち上げられる。その結果、リフト機構505が進入した保持枠502と、それよりも1段下側の保持枠502との間に、間隔Gが形成される。この間隔Gを介してスカラー型ロボット800の吸着ノズル801は、リフト機構505が進入した保持枠502の1段下側の保持枠502に保持された格納トレー5へのアクセスが可能となる。言い換えれば、この間隔Gが設けられることで、スカラー型ロボット800の吸着ノズル801は、すべての格納トレー5に対して、返品薬剤2を格納トレー5に移載する動作(格納動作)と、返品薬剤2を吸着保持して格納トレー5から取り出す動作(払出動作)とが可能である。
格納トレー5は、小型(S)、中型(M)、大型(L)の返品薬剤2の格納に適した3種類のものを少なくとも1個備えている。個々の格納トレー5は、上方が開口したトレー本体5aと、トレー本体5aの上端縁に設けられたフランジ状部5bとを備える。
図15を併せて参照すると、トレー本体5aの底部には、返品薬剤供給装置1に奥行方向(Y方向)に延び、返品薬剤供給装置1の幅方向(X方向)に間隔をあけて配置された複数の突条(突部)6が設けられている。隣接する突条6間には、直線状の配置溝(凹部)7が形成されており、この配置溝7に返品薬剤2が収容される。
(払出部)
払出部600は搬送機構601を備える。搬送機構601は、図1に模式的に示す入口602から払出位置(格納部500の図において手前側の位置)まで払出トレー8を移動させて位置決めし、払出作業完了後の払出トレー8を図1に模式的に示す出口603から搬出する。
本実施形態の返品薬剤供給装置1は、例えば図4(b)に示すように、注射薬払出ライン10に設置される。注射薬払出ライン10には、供給リフター11、ラベルプリンタ12、ボトル払出機13、整列式払出機14、冷所保存機又は特殊薬払出機15、トレー排出ユニット16、積上リフター17等が配置され、本実施形態の返品薬剤供給装置1は、ラベルプリンタ12の横に設置される。返品薬剤供給装置1から搬出された払出トレー8は、注射薬払出ライン10の各機器から払い出される薬剤を受け取り、通常は、排出ユニット18により図示しない搬送カートに供給され、病棟に搬送される。緊急を要する薬剤等、短時間で使用する薬剤を収容した払出トレー8は、排出ユニット16を通過して積上リフター17に供給される。
払出トレー8には、図4(a)に示すように、患者名、病棟、病室、実施日等の情報が書き込まれた電子ペーパ8aが装着されている。電子ペーパ8aは、図4(b)に示すラベルプリンタ12の下部に設けられた電子ペーパ消去用アンテナ18aと、トレー排出ユニット16の下部に設けられた電子ペーパ書込み用アンテナ18bを介して電力を供給して図示しない書換装置によって表示内容を書き換えすることが可能である。電子ペーパ消去用アンテナ18aの位置では、これまで使用していたトレーに関する情報が消去され、電子ペーパ書込み用アンテナ18bの位置では、搬送されてきたトレーに関する新しい情報が書き込まれる。電子ペーパ8aの書き換え信号に何らかの原因による故障があった場合、電子ペーパ8aへの書き込み不良を生じることがあるが、従来それを外部から検出する手段がなかった。
そこで、本実施形態では、電子ペーパ8aへの書き込み不良を外部から検出することにより表示のトラブル及びそれに起因するトレー8の誤搬送等を防止することを目的として、次の手段が講じられている。
すなわち、書き換え手順の中で電子ペーパ8aが全黒から全白になるのを利用し、電子ペーパ8aを書き換える動作の際、電子ペーパ8aが黒から白に変化するのを検出する検出手段を設け、該検出手段により電子ペーパ8aが黒から白に変化するのを検出しなければ、書き換えられていないと判定し、その旨を警告する。
具体的には、電子ペーパ8aの液晶画面に対してレーザーを照射し、その反射波から電子ペーパ8aの書き換えの過程(『書換開始』⇒『全黒』⇒『全白』⇒『書換完了』)における液晶画面の全黒から全白の変化を検出できなかった時は、書き換えがなされていないと判断し、ディスプレイ1002に電子ペーパ8aへの書き換え異常の表示を出力する。
この電子ペーパ8aの書換え異常検知センサを設置する目的は、従来のように電力が供給しきれずに書き換えを失敗するといった現象に対処することではなく、配線の断線や液晶割れ等の機械的トラブルにより書き換えができなかった状態を検出することであるので、書き換えができなかったことが検出されて警告が出された後、リトライ等で消去や書換えを実行するというようなことはしない。警告が出されると、新しい故障をしていない電子ペーパ8aに交換される。
(返品薬剤の格納と払出の動作)
認識部300における認識完了後の返品薬剤2を格納部500に格納する動作(格納運転)と、格納部500から払出部600に払出位置に配置された払出トレー8に払い出す動作(払出運転)とを説明する。格納動作及び払出動作は、制御装置1000によって、主に、認識部300、格納部500、払出部600、スカラー型ロボット800を制御して動作させることで実行される。
まず、格納動作を説明する。
ラベル読取部302の返品薬剤2は、スカラー型ロボット800の吸着ノズル801により吸着保持される。吸着ノズル801により吸着保持された返品薬剤2に対して、少なくともその返品薬剤2の大きさに応じて、格納領域、すなわち格納時に占める範囲との格納位置(どの格納トレー8のどの位置に格納されるか)が設定される。本実施形態では、格納領域のうち格納時に占める範囲はその返品薬剤2の長さL1と幅Wに対応する。格納時に示す領域は、他の返品薬剤2と干渉しないためのマージンを含む。格納部500の複数の格納トレー5のうち、いずれの格納トレー5のいずれの配置溝7に吸着ノズル801により吸着保持されている返品薬剤2を配置可能かが検索される。この検索結果に応じ、返品薬剤2を配置する格納トレー5と配置溝7(返品薬剤2の格納位置)が決定される。1個の格納トレー5に着目すると、図15に示すように「3番」の配置溝7が既に返品薬剤2で埋まっている場合、それ以外の配置溝7が吸着ノズル801により吸着されている返品薬剤2を配置する格納位置の候補となる。例えば、「6番」の溝の場合、2個の返品薬剤2が既に配置されているが、これらの返品薬剤2間の長さが格納しようとしている返品薬剤2について前述した格納時に示す範囲以上であれば、吸着ノズル801により吸着保持されている返品薬剤2を配置する候補となり得る。
前述のように、ラベル読取部302での認識終了時には、返品薬剤2はラベル3が上向きとなる姿勢である。スカラー型ロボット800の吸着ノズル801は、ラベル3のバーコードが上向きの姿勢を維持したままで、返品薬剤2を吸着保持して該当する格納トレー5の該当する配置溝7、つまり前述のように決定された格納領域に返品薬剤2を移載する。
格納部500に格納されている返品薬剤2に関し、制御装置1000は個々の返品薬剤2の識別情報と関連付けて、前述の格納領域、つまりいずれの格納トレー5のいずれの位置(配置溝7とのその配置溝7上での位置)に配置されているかを記憶している。また、制御装置1000は、個々の返品薬剤2の識別情報と関連付けて、種類と使用期限を記憶している。
次に、払出作業を説明する。
スカラー型ロボット800の吸着ノズル801は、格納部500の格納トレー5から返品薬剤2を吸着保持し、払出位置に配置された払出トレー8に移載する。
払出作業は、例えば電子カルテシステムである上位のシステムから返品薬剤供給装置1が受信した処方データに基づいて実行される。前述のように、格納部500に格納された返品薬剤2の種類及び使用期限と識別情報とが関連付けて記憶され、かつ個々の返品薬剤供給装置1が格納部500のどこに配置されているかも識別情報と関連付けて記憶されている。具体的には、制御装置1000は、格納部500に格納された返品薬剤2の種類、使用期限、及び格納領域と、識別情報とを関連付けて記憶している薬品マスタを備える。しかも、前述のように、多段配置された格納トレー5間に間隔Gを設けることできるので、吸着ノズル801は、多段配置された格納トレー5のいずれに格納された返品薬剤2であっても、必要に応じて自由に吸着保持できる。従って、薬品マスタを参照した結果、処方データに含まれる薬剤が格納部500に格納されている返品薬剤2であることが確認できれば、処方データに応じて制約なく払い出すことができる。また、同一種類の薬剤のうち使用期限が近いものから払い出す等、処方データに応じて効率的な払出が可能である。さらに、薬品マスタを参照した結果、処方データに含まれる薬剤が格納部500に格納されていないことを確認できれば、必要な表示を制御盤1001のディスプレイ1002に表示する等の処理を実行できる。
払出作業の動作を、具体的に説明する。リフト機構505によって形成された間隔Gを通して、スカラー型ロボット800の吸着ノズル801が、払出対象の返品薬剤(以下、払出作業の説明において、払出薬剤と称する)2にアクセスする。このとき、バーコードリーダ812により、当該払出薬剤2のラベルを検知して、制御装置1000は、払出対象の払出薬剤2であるか否かを照合する。払出対象の払出薬剤2であることが確認されると、吸着ノズル801により、当該払出薬剤2が吸着されて、格納トレー5から取り出されて、払出トレー8に移送される。このとき、格納部500に払出対象の払出薬剤2が複数存在している場合には、制御装置1000は、使用期限が最も早い払出薬剤2を払出対象の払出薬剤2として決定し、当該払出薬剤2を払い出すように制御する。
一方、制御装置1000により、当該払出薬剤2が払出対象の払出薬剤2ではないと判断された場合、または、ラベル3(バーコード)が認識できなかった場合には、制御装置1000は、吸着ノズル801で、当該払出薬剤2を吸着して、認識部300のラベル読取部302に移送するように制御する。ラベル読取部302において、払出薬剤2のラベル3が認識されれば、当該払出薬剤2は、スカラー型ロボット800によって、格納部500に再度格納される。一方、ラベル読取部302において、払出薬剤2のラベル3が認識されなければ、当該払出薬剤2は、直交型ロボット700によって、非格納薬剤配置部400(非格納薬剤配置箱401,402)に移送されることになる。或いは、払い出そうとしている払出薬剤2と合致した場合には、スカラー型ロボット800によって、そのまま払出トレー8に移送してもよい。
以上のように、本実施形態の返品薬剤供給装置1によれば、種類、形状、大きさ、使用期限等の性状が種々異なり、かつ非整列状態で供給された返品薬剤2を、自動的に認識して高い自由度を確保して格納でき、処方データに応じて自由に払い出すことができる。
(認識処理の詳細)
ここからは、本実施形態の返品薬剤供給装置1における返品薬剤供給装置1の認識部300における仮置き部301及びラベル読取部302ついて、さらに詳細に説明する。
図16は、認識部300の模式図である。認識部300は、第1撮影部1003a、第2撮影部1003b、第3撮影部1003c、バーコードリーダ312、制御演算部1004、第1移送部1005a、第2移送部1005b及び表示部1006を備える。
第1撮影部1003a、第2撮影部1003b、第3撮影部1003cは、それぞれカメラ304、カメラ307、カメラ311により撮影した画像データを伝送する機能を有する部分を備える。バーコードリーダ312は、返品薬剤のラベルのバーコードから読み取った情報を伝送する機能を有する部分を備える。制御演算部1004は制御装置1000に含まれており、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)のような記憶装置を含むハードウェアと、それに実装されたソフトウェアにより構築されている。制御演算部1004は、第1制御演算部1004aと、第2制御演算部1004bと、記憶部1004cとを備える。第1移送部1005a、第2移送部1005bは、それぞれ直交型ロボット700、スカラーロボット800を備える。表示部1006は、ディスプレイ1002を備える。
第1制御演算部1004aは、2値化処理部1007、認識処理部1008、及び直交型ロボット駆動制御部1009を備える。
2値化処理部1007は、第1撮影部1003aのカメラ304で撮影された画像データを受け取り、これを2値化処理することで2値化画像を生成する。
認識処理部1008は、2値化画像に基づいて返品薬剤2の位置、向き、略中間位置を検出する。
直交型ロボット駆動制御部1009は、認識処理部1008で検出した返品薬剤2の位置等の情報に基づいて、第1移送部1005aの直交型ロボット700を駆動して返品薬剤2を仮置き部301の半透明板305(図9参照)上に移送する制御を行う。
第2制御演算部1004bは、画像処理部1010、異常判定部1011、解析部1012、スカラー型ロボット駆動制御部1013を備える。
画像処理部1010は、第2撮影部1003bで撮影された画像についてエッジ検出処理と2値化処理を行い、返品薬剤2の形状と大きさの情報を取得する。
異常判定部1011は、仮置き部301に載置された返品薬剤2の形状、大きさ、種類、及び使用期限(性状)が認識できない異常な状態を判定し、エラー画像を作成する。異常な状態とは、後述するように、複数薬剤、ゴミ等の異物・汚れ、立ち薬剤、解析範囲外にある範囲外薬剤であり、異常判定部ではこれらの異常を判定し、撮影画像に異常部分を示す識別マークを重ね合わせたエラー画像を作成する。
解析部1012においては、返品薬剤2の形状、大きさ、種類、及び使用期限(性状)が認識される。具体的には、認識部300の仮置き部301において返品薬剤2の形状及び大きさが認識され、ラベル読取部302において返品薬剤2の種類が認識される。そして、その性状の認識結果に基づいて、返品薬剤2が、返品薬剤供給装置1の取り扱い対象の薬剤であるか否かが制御装置1000(判定処理部)によって判定される。
なお、ここで言う「取り扱い対象」の薬剤は、少なくとも、返品薬剤供給装置1の構造上取り扱い可能な形状及び大きさを備え、返品薬剤供給装置1において取り扱うことがユーザによって予め決定された種類である薬剤を言う。
スカラー型ロボット駆動制御部1013は、解析部1012で検出した返品薬剤2の位置等の情報に基づいて、第2移送部1005bのスカラーロボット800を駆動して返品薬剤2をラベル読取部302に移送する制御と、ラベル読取部302から格納部500に移送する制御を行う。
記憶部1004cは、認識処理部1008で検出した返品薬剤の位置、向き、略中間位置、及び解析部1012で解析した返品薬剤の形状、大きさ、種類、及び使用期限(性状)を記憶する。また、記憶部1004cは、後述するように、複数薬剤、異物・汚れ、立ち薬剤、範囲外薬剤等のエラーに対応するエラーコード番号と、エラー内容、指示内容、当該エラーに対処すべき対処方法が予め記憶されている。
表示部1006は、ディスプレイ1002を備え、ホーム画面やエラー画面等を表示する。
(薬剤の形状及び大きさの認識)
前述したように、認識部300の仮置き部301において、返品薬剤2の形状及び大きさが認識される(形状及び大きさの情報が取得される)。そのために、返品薬剤2は、図1及び図9に示すように、半透明板305の載置面305a(カメラ307側の平面)上に、その長手軸Aが載置面305aに対して平行になるように載置される。そして、半透明板305上に載置された返品薬剤2は、半透明板305の下方に配置された照明306によって光が下方から照射された状態で、半透明板305の上方に配置されたカメラ307によって撮影される。
制御装置1000は、カメラ307によって撮影された画像に基づいて、返品薬剤2の形状及び大きさの情報を取得するように構成されている。すなわち、制御装置1000は、返品薬剤2の形状及び大きさを認識するための認識部300の一部として機能する。
制御装置1000はまた、返品薬剤2の形状及び大きさの情報を取得するために、返品薬剤2が写るカメラ307の画像を画像処理するように構成されている(画像処理部を有する)。カメラ307の画像に対する画像処理として、例えば、その画像に写る返品薬剤2の像のエッジを検出するためのエッジ検出処理と、画像を2値化(白黒化)する2値化処理とが行われる。エッジ検出処理された画像と2値化処理された画像とに基づいて、制御装置1000は、返品薬剤2の形状と大きさの情報を取得する。
また、制御装置1000は、取得した返品薬剤2の形状に基づいて、その返品薬剤2の形状が返品薬剤供給装置1において取り扱い対象の薬剤の形状であるかを判定するように構成されている。
返品トレー4を介して返却される返品薬剤2に、例えば、ラベル読取部302における無端ベルト308とローラ309との間に噛み込む形状の薬剤、スカラー型ロボット800が保持できない形状の薬剤、格納部500に格納できない形状の薬剤、すなわち返品薬剤供給装置1がその構造を原因として取り扱うことができない形状の薬剤が含まれる場合がある。一例として、袋体や箱体に収納された状態の薬剤、部分的に欠損している薬剤、ラベルが部分的に剥離している薬剤、部分的に剥離したラベルが他の薬剤に貼り付いた薬剤などが挙げられる。このような返品薬剤は、返品薬剤供給装置1ではその構造上取り扱うことができないので、取り扱い対象外の薬剤(非格納薬剤)として処理される。
カメラ307の画像(画像処理済みの画像)に基づいて返品薬剤2の形状を判定する方法の一例について説明する。
図17A及び図17Bは、2値化処理された画像を示している。図17Aは、返品薬剤供給装置1の取り扱い対象の薬剤の形状であるアンプル形状の返品薬剤2の像(黒塗り像)Imが写る2値化処理済みの画像Picを示している。図17Bは、取り扱い対象外の薬剤の形状である、すなわちラベル3が部分的に剥離した状態のアンプル形状の返品薬剤2の像(黒塗り像)Im’が写る2値化処理済みの画像Pic’を示している。
まず、制御装置1000は、カメラ307の画像Pic(Pic’)内において、黒塗り像Im(Im’)に外接する矩形領域Sr(Sr’)を抽出する。次に、矩形領域Sr(Sr’)の長手方向(長辺Sa(Sa’)が延在する方向)に延在する矩形領域Sr(Sr’)の中心線CL(CL’)を算出する。そして、黒塗り像Im(Im’)が、中心線CL(CL’)を基準にして対称の形状であるか否かを制御装置1000は判定する。
図17Aの画像Picの場合、黒塗り像Imが中心線CLに対して対称の形状であるため、制御装置1000は、画像Picに写る返品薬剤2の形状を取り扱い対象の薬剤の形状であると判定する。一方、図17Bの画像Pic’の場合、黒塗り像Im’が中心線CL’に対して非対称の形状であるため、制御装置1000は、画像Pic’に写る返品薬剤2の形状を取り扱い対象外の薬剤の形状であると判定する。
仮置き部301の半透明板305に載置された返品薬剤2が取り扱い対象の薬剤の形状であることが判定された後、制御装置1000は、返品薬剤2の大きさが取り扱い対象の薬剤の大きさ(サイズ)であるか否かを判定する。そのために、その返品薬剤2の大きさが測定(算出)される。
本実施形態の場合、返品薬剤2の大きさ(サイズ)の情報を取得するために、まず、返品薬剤2の長手方向(軸線Aの延在方向)の長さが測定(算出)される。その返品薬剤2の長手方向の長さの測定(算出)方法について説明する。
図18及び図19は、返品薬剤2の大きさの測定(算出)方法を説明するための図である。
図18に示すように半透明板305上に載置された返品薬剤2(バイアル2B)がその上方のカメラ307によって撮影されると、図19に示すようにカメラ307の画像Picに返品薬剤2が写る。この画像Picに写る返品薬剤2の像の長手方向長さLmと幅方向長さW1、W2とに基づいて、三角形の相似を利用して、返品薬剤2の大きさとして、その長手方向(軸線Aの延在方向)の実際の長さLactが算出される。カメラ307の画像Picに基づく、返品薬剤2の長手方向の実際の長さLactの算出方法については、国際公開WO2015/170762公報に詳述されている。
このように返品薬剤2の実際の長手方向(軸線Aの延在方向)の長さを算出することができると、その前に取得した返品薬剤2の形状の情報に基づいて、返品薬剤2の他の部分の実際のサイズも算出可能である。例えば、返品薬剤2がバイアル2Bの場合、胴部2cの実際の外径を算出することができる。
さらに、返品薬剤2の長手方向の実際の長さLactを測定(算出)するにあたって、カメラ307の光軸OA1と返品薬剤2とが交差するように、返品薬剤2は半透明板305の載置面305a上に位置決めされるのが好ましい。特に、カメラ307の光軸OA1と返品薬剤2の軸線Aとが直交するように、返品薬剤2は半透明板305に対して位置決めされるのが好ましい。
例えば、図20は、返品薬剤2を位置決めするための位置決め部として凹凸部が形成されている半透明板(薬剤載置板)305の斜視図である。
本実施形態の場合、半透明板305は、半透明のベースプレート305Aと、そのベースプレート305A上に載置され、返品薬剤2が載置される載置面305aを備える透明の位置決めプレート305Bとから構成されている。ベースプレート305Aは、位置決めプレート305Bの周囲から上方へ突出して、返品薬剤2の載置面305aからの脱落を防止する、枠体305cを備えている。
位置決めプレート305Bは、ベースプレート305Aに着脱可能に取り付けられる。位置決めプレート305Bはまた、カメラ307の光軸OA1と載置面305a上に載置された返品薬剤2の軸線Aとが直交するように、返品薬剤2を半透明板305に対して位置決めするための一対の直線状の突条部305bを備える。一対の直線状の突条部305bは、矩形の位置決めプレート305Bの対角線方向に、間隔をあけて平行に延在し、カメラ307側に向かって載置面305aから突出している。一対の突条部305bの間に返品薬剤2が配置されると、その胴部2cの外周面に一対の突条部305bが当接する。それにより、返品薬剤2は、その軸線Aがカメラ307の光軸OA1に直交した状態で、半透明板305の載置面305aに対して位置決めされる。一対の突条部305bを位置決めプレート305Bの対角線方向に設けることで、同一形状の位置決めプレート305Bの1辺に平行に設けるよりも一対の突条部305bが長くなるので、一対の突条部305bの間への返品薬剤2の載置範囲を大きくして、返品薬剤2を確実に載置することができる。
ベースプレート305Aの枠体305cのうち、装置の奥に位置する枠体305cには、載置面305a上の埃、髪の毛等の異物を除去するための複数のエアー吹き出し孔305dが設けられている。エアー吹き出し孔305dは、図示しないコンプレッサー等の送風源に接続され、装置の動作開始後に載置面305aに対して斜め上方から図中矢印で示すようにエアーを吹き出すことで、載置面305a上の異物を吹き飛ばすように構成されている。なお、エアー吹き出し孔305dは、奥の枠体305cに限らず、手前又は左右の枠体305cに設けてもよい。
また、位置決めプレート305B(載置面305a)には、カメラ307の画像に基づいて返品薬剤2の位置、向き、形状及び大きさを解析する解析範囲ARが設定されている。解析範囲ARは、載置面305aのうち、枠体305cから中央側に所定間隔離れた位置に設定されている。すなわち、返品薬剤2は、載置面305aに載置され且つ突条部305bによって位置決めされた状態では、全体が解析範囲AR内に通常は位置する。しかしながら、返品薬剤2は、返却トレー4から仮置き部301への移送時に、突条部305bの延在方向に対して軸線が傾斜するように配置される場合がある。これは、例えば、返却トレー4内における返品薬剤2のピッキング位置又は軸線方向の検出ミスが生じた場合に発生する。この場合、仮置き部301の平面図を示す図21を参照して、返品薬剤2は、突条部305bで位置決めされることはなく、突条部305bから周囲の枠体305cまで転がり落ちて、解析範囲AR内からはみ出して、全体が解析範囲AR内に位置しなくなる。この結果、制御装置1000は、返品薬剤2の形状及び大きさを正しく解析できない。
この対応として、図21に示すように、半透明板305は、解析範囲ARの内側に、載置面305aから突出するガード部305eを備えている。ガード部305eは、矩形の解析範囲ARの4つ辺に沿って設けられ、返品薬剤2が外側に向かって転がっても解析範囲ARからはみ出すのを防止する。ガード部305eは、図22に示すように、最大径の返品薬剤2がガード部305eに当接しても解析範囲AR内撮影が可能なように、解析範囲ARから内側への寸法が定められている。
なお、半透明板305(すなわちカメラ307の光軸OA1)に対して返品薬剤2を位置決めできるのであれば、半透明板305に形成される位置決め部は、図20に示す一対の直線状の突条部305bに限らない。例えば、返品薬剤2を位置決めするための凹凸部は、溝であってもよい。
また、半透明板305を、ベースプレート305Aと位置決めプレート305Bとから構成するのではなく、一枚の半透明なプレートによって構成してもよい。その場合、一枚のプレート上に、返品薬剤2を位置決めするための凹凸部が形成される。ただし、半透明板305をベースプレート305Aと位置決めプレート305Bとから構成する場合、返品薬剤2を位置決めするための凹凸部の形状が異なる複数の位置決めプレートを用意することにより、返品薬剤供給装置1は、より多様な形状及び大きさの薬剤を取り扱うことができる。
認識部300の仮置き部301にて形状及び大きさが認識された返品薬剤2は、その形状及び大きさが取り扱い対象の薬剤の形状及び大きさであると制御装置1000によって判定された場合、図9に示すように仮置き部301に対して隣接するラベル読取部302に直交型ロボット700によって搬送される。
一方、形状が取り扱い対象外の薬剤の形状であると判定された返品薬剤2または形状が取り扱い対象の薬剤の形状であっても大きさが取り扱い対象外の薬剤の大きさであると判定された返品薬剤2は、非格納薬剤2’として、非格納薬剤配置部400の非格納薬剤配置箱401、402または非格納薬剤用の返品トレー4に移載される。
(吸着位置の決定)
次に、図23〜図25を参照して、仮置き部301のカメラ307によって撮影された画像に基づいて(すなわち前述したように取得された返品薬剤2の形状及び大きさの情報に基づいて)、返品薬剤2の吸着位置(直交型ロボット700の吸着ノズル701とスカラー型ロボット800の吸着ノズル801で吸着される位置)を算出する方法を説明する。
図23を参照すると、バイアル2Bは、胴部2cからの頭部2dの突出量が比較的少なく、胴部2cと頭部2dの径の差も小さいので、長さ(全長L1)の概ね中間位置を吸着位置SPに設定すれば、吸着ノズル701,801で吸着した際に重量バランスは良好である。つまり、バイアル2Bの場合、全長L1の概ね中間位置を吸着位置SPに設定すれば、吸着ノズル701,801による保持が安定する。
引き続き図23を参照すると、アンプル2Aは、胴部2cから頭部2dの突出量が比較的大きく、胴部2cと頭部2dの径の差も大きいので、全長L1の概ね中間位置を吸着位置SPに設定すると、吸着ノズル701,801で吸着した際に重量バランスが良好でない。アンプル2Aの場合、全長L1ではなく、胴部2cの長さL2の概ね中間位置を吸着位置SPに設定すれば、吸着ノズル701,801で吸着した際に重量バランスは良好である。つまり、アンプル2Aの場合、胴部2cの長さL2の概ね中間位置を吸着位置SPに設定すれば、吸着ノズル701,801による保持が安定する。この点は、樹脂アンプル2Cの場合も同様である。
以上の理由から、仮置き部301のカメラ307によって撮影された画像に基づいて、以下の手順により返品薬剤2の吸着位置SPが算出される。
まず、カメラ307で撮影された画像(返品薬剤2の平面視での画像)の外形輪郭に対する包絡線(または外接矩形)313が設定される(図24及び図25のステップ1)。また、この包絡線313から凸面度が算出される(図24及び図25のステップ1)。凸面度は包絡線313が直線で返品薬剤2を囲むことができる程、値が1に近づく。すなわち、凸面度の値(最大値は1)が大きい程、胴部2cと頭部2dの径の差が少なく、胴部2cと頭部2dをつなぐ首部の胴部2c及び頭部2dに対する径の差も小さいことを意味する。
算出された凸面度の値が、予め設定された閾値(例えば0.8〜0.9の範囲で設定できる)以上であるならば、カメラ307で撮影した返品薬剤2は、バイアル2Bと推定できる形状を有すると判断できるので、全長L1の中間、かつ幅Wの中間を吸着位置SPに設定する(図24のステップ2)。
算出された凸面度の値が、前述の予め設定された閾値未満であれば、カメラ307で撮影した返品薬剤2は、アンプル2A(あるいは樹脂アンプル2C)と推定できる形状を有すると判断できるので、胴部2cの長さL2の中間を吸着位置SPに設定するために、以下の処理を行う。
まず、包絡線(または外接矩形)313と返品薬剤2の画像の外形輪郭との比較により、胴部2cと頭部2dとの間の首部(部分的に縮径している部分)に相当する、括れ部分314を抽出する(図25のステップ2)。
次に、抽出された括れ部分314を直線で囲む矩形領域315を作成する(図25のステップ3)。
その後、返品薬剤2の画像の外形輪郭から矩形領域315を除去することで、2つの領域316a,316bを作成する(図25のステップ4)。これらの領域316a,316bは、返品薬剤2の画像の外形輪郭の括れ部分314以外の領域に相当する。また、これらの領域316a,316bの一方が返品薬剤2の胴部2cに相当し、他方が頭部2dに相当する。領域316a,316bの面積を比較し、面積が大きい方(胴部2cに相当)を処理対象として残し、面積が小さい方(頭部2dに相当)を処理対象から除外する。この例では、領域316aの面積が領域316bの面積よりも大きいので、領域316aを処理対象として残す。
最後に、領域316aの長さL2’(アンプル2Aの胴部2cの長さL2に相当)の中間と幅W’(アンプル2Aの胴部2cの幅Wに相当)の中間を吸着位置SPに設定する(図25のステップ5)。
以上の手順により、仮置き部301のカメラ307によって撮影された画像に基づいて、返品薬剤2を吸着ノズル701,801で安定して保持できる吸着位置SPを自動的に決定できる。その結果、直交型ロボット700は、仮置き部301の半透明板305上に載置された返品薬剤2を、その軸線Aが水平方向に対して平行な状態でラベル読取部302に搬送することができ、その頭部2dの先端を衝突させることなく認識部300のラベル読取部302の無端ベルト308上に安全に載置することができる。
(吸着位置決定処理)
返品薬剤が、図26に示すように、ラベル2aの一部を剥がすためのツマミ2bを有する薬品、例えばアイソボリン(登録商標)の場合、ツマミ2bの先端が反って首部に接近しているために、吸着位置を誤検出する虞れがある。すなわち、本来、胴部の長さの中間位置を吸着位置とすべきところ、ツマミの存在によって首部が検出できず、全長の中間位置を吸着位置と設定することがある。
このような誤検出を防止するための吸着位置決定手段としては、
薬剤の識別情報を認識する薬剤認識装置において、
前記薬剤を載置する薬剤載置部と、
前記薬剤載置部に載置された薬剤を撮影する撮影部と、
前記撮影部で撮影された薬剤の画像に基づいて、前記画像を垂直方向に縮小して、縮小前の画像と縮小後の画像の差分領域を求める処理と、前記差分領域の画像を水平方向にオープニングするオープニング処理と、オープニング処理された画像の長い方の領域を選択する処理と、前記長い方の領域の中心座標を求める処理とからなる画像処理部を備える。
図27は、吸着位置決定処理を示す。まず、仮置き部301のカメラ307によって撮影された返品薬剤の画像(ステップ1)を2値化・エッジ処理し(ステップ2)、画像の位置が撮影領域の中央でかつ水平になるように画像をアフィン変換する(ステップ3)。続いて、画像を垂直方向に縮小し(ステップ4)、縮小前の画像と縮小後の画像の差分領域を求め(ステップ5)、水平方向にオープニング処理すると(ステップ6)、画像の小さい部分や細い部分が除去されて、首部分の2本の像からなる領域と、胴部分の2本の像からなる領域とに分かれる(ステップ7)。そこで、長い方の領域を選択して(ステップ6)、逆アフィン変換し(ステップ8)、残った長い方の領域の2本の像の合集合の中心座標を吸着位置とする(ステップ9)。さらに、吸着位置と頭部輪郭中心点の距離をオフセットとする(ステップ10)。このオフセットは、薬剤をラベル読取部302に移送して無端ベルト308上に載置する際に返品薬剤2の底がストッパ317に当たらないように、薬剤2を位置決めするのに使用される。
図27の吸着座標決定処理にける垂直方向の縮小処理と水平方向のオープニング処理により、ラベルのツマミが首部に接近している薬剤でも、撮影画像に現れるツマミ部分を除去することができるので、薬剤の胴部の中心位置を吸着位置に設定することができる。
(薬剤の種類及び使用期限の認識)
前述したように、認識部300のラベル読取部302において、返品薬剤2の種類及び使用期限が認識される(種類及び使用期限の情報が取得される)。そのために、ラベル読取部302は、図10に示すように、返品薬剤2が載置される無端ベルト308と、無端ベルト308上に載置された返品薬剤2と当接し、その返品薬剤2をその軸線Aを中心として回転させるローラ309とを有する。また、ラベル読取部302は、無端ベルト308を駆動するベルト駆動部(図示せず)と、ローラ309を駆動するローラ駆動部(図示せず)とを有する。ベルト駆動部及びローラ駆動部は、例えばモータであって、制御装置1000によって制御される。
返品薬剤2は、図10に示すように、ラベル読取部302に対して位置決めされて維持されている間、ローラ309によって軸線Aを中心として回転し続ける。回転中の返品薬剤2のラベル3は、カメラ311によって撮影されるとともにバーコードリーダ312によって読み取られる。
ラベル3には、返品薬剤2の使用期限が記載されているとともに、返品薬剤2の種類を示すバーコードが記載されている。
制御装置1000は、カメラ311によって撮影されたラベル3が写る画像に基づいて、返品薬剤2の使用期限の情報を取得するように構成されている(ラベル3に記載されている使用期限を認識するOCR部を有する)。また、制御装置1000は、バーコードリーダ312が読み取ったバーコードに基づいて、返品薬剤2の種類の情報を取得するように構成されている。すなわち、制御装置1000は、返品薬剤2の種類及び使用期限を認識するための認識部300の一部として機能する。
ラベル読取部302での返品薬剤2の種類及び使用期限の認識終了後、無端ベルト308及びローラ309は停止される。
制御装置1000は、カメラ311及びバーコードリーダ312を介して、ラベル読取部302の返品薬剤2の種類及び使用期限の情報を取得すると、その取得した種類及び使用期限が取り扱い対象の薬剤であるか否かを判定するように構成されている。
例えば、返品薬剤2の種類が、ユーザによって返品薬剤供給装置1において取り扱うことが予め決定された種類であれば、その返品薬剤2は取り扱い対象の薬剤と判定される。具体的には、認識された種類が薬剤マスタ内に記憶されている種類であれば、その返品薬剤2は、取り扱い対象の薬剤であると判定される。そうでない場合は、取り扱い対象外と判定される。
また、使用期限が切れていないまたは十分に残っている場合には、その返品薬剤2は、取り扱い対象の薬剤と判定される。一方、使用期限が既に切れているまたは残りの使用期限が数日(例えば2〜3日)である場合、その返品薬剤2は、取り扱い対象外と判定される。
認識部300のラベル読取部302にて種類及び使用期限が認識された返品薬剤2は、取り扱い対象の薬剤の種類及び使用期限であると制御装置1000によって判定された場合、前述したようにスカラー型ロボット800によって格納部500に移送される。
一方、種類及び使用期限の少なくとも一方が取り扱い対象外の薬剤の種類及び使用期限であると判定されたラベル読取部302の返品薬剤2は、非格納薬剤2’として、非格納薬剤配置部400の非格納薬剤配置箱401、402に移送される(最終的には、非格納薬剤用返品トレー4’に移載される)。
(エラー処理)
認識部300の仮置き部301に載置された返品薬剤2を画像処理する過程で、複数薬剤や異物・汚れ・立ち薬剤が存在したり、解析範囲AR外に返品薬剤があるといった異常があると、返品薬剤2の形状及び大きさを認識したり、吸着位置を決定できない。このため、このような場合にディスプレイ1002上でユーザにエラーを表示して、エラーの原因を除去するよう促す必要がある。
複数薬剤の判定では、撮影された領域内にある2値化された抽出画像Fの個数をカウントし、2以上あれば複数薬剤と判定する。
異物・汚れの判定では、撮影された領域内にある2値化された抽出画像Fのピクセル数が閾値(15000ピクセル)以下であれば、ごみ等の異物と判定する。また、ピクセル数が閾値以上であるが、画像のエッジ輝度が閾値以下であれば、汚れと判定する。
立ち薬剤の判定では、撮影された領域内にある2値化された抽出画像Fの真円度を求め、閾値0.7と比較して、閾値以上の場合、立ち薬剤と判定する。真円度は、抽出画像Fの中心点とその中心点からの最も離れた点との距離をrmaxとした場合、抽出画像Fの面積/(rmax2×π)で求められる。抽出画像Fが真円である場合、真円度は1であるが、立ち薬剤と判定する閾値は、0.7から1の間とすることが好ましい。
範囲外薬剤の判定では、前述した解析範囲AR内に抽出画像Fの全体が入っているか否かを判断する。図28に示すように、載置面305aの撮影領域の例えば10mm内側に解析範囲ARを形成する場合、載置面305aの左上の頂点を原点(0,0)、載置面305aの長さをx,yとし、撮影された領域の辺とx,yと同値であるとすると、解析範囲は、(10,10)−(x−10,10)と、(10,10)−(10,y−10)に囲まれた範囲となる。抽出画像Fのピクセルが一つでも解析範囲AR内に含まれていなければ、範囲外薬剤と判断する。
認識部300のラベル読取部302では、電源立ち上げ時(停電後の電源復旧時を含む)の運転開始前に、ラベル読取部302のカメラ311による撮影画像領域内に、2値化された抽出画像Fが有るか否かのみを判断する。
以上のようなエラーが判定されると、制御装置1000は、エラー画像を作成する。エラー画像は、カメラ304又はカメラ311による撮影画像中の異常がある部分を識別する識別マークを重ね合わせる。識別マークは、矩形や円形の枠、矢印等を画像や背景と明瞭に識別できる色とすることが好ましい。例えば、複数薬剤と判定された複数の抽出画像F、異物・汚れと判定された抽出画像F、立ち薬剤と判定された抽出画像F、範囲外薬剤と判定された抽出画像Fの輪郭を囲むように、例えば赤枠を重ね合わせる。
記憶部1004cには、複数薬剤、異物・汚れ、立ち薬剤、範囲外薬剤等のエラーに対応するエラーコード番号と、エラー内容、当該エラーに対処すべき対処方法が予め記憶されている。
制御装置1000は、ブザーを鳴らすとともに、ディスプレイのホーム画面のメッセージ部に、「エラー」ボタンを表示し、エラーが生じたことをユーザに知らせる。あるいは、ブザーを鳴らすとともに、後述するエラー画面を表示し、ユーザがエラー処理せずにエラー画面を閉じる選択をした場合に「エラー」ボタンを表示してもよい。
図29は、ディスプレイ1002のホーム画面1101を示す。ホーム画面1101には、「待機中」等の装置の動作状態、ライン及びユニット番号、空の返却トレイ(非格納薬剤配置箱401、402)の個数、NGトレイ(非格納)における薬品の有無、返品薬剤を返却可能か否か、装置の各扉のロック状態、及び格納部の薬品搭載量、モード状態、横向き「▲」及び「■」ボタンを示すインフォメーション部と、「処理を選択してください」等のメッセージ部と、欠品の有無、使用期限の登録変更、期限間近薬品の有無、期限切れ薬品の有無、長期滞留薬品の有無、超過薬品の有無をそれぞれ示すステータス部と、「指示回収」、「照会・充填」、「各種設定」、「扉開錠」及び「終了」の処理を示す操作部とが示されている。図30に示すように、メッセージ部には、後述する異常判定により所定のエラーが判定された場合に「エラー」ボタン1102が表示される。
ユーザにより「エラー」ボタン1102が押されると、制御装置1000は、ホーム画面1101をエラー画面1103に切り換える一方、記憶部1004cから判定したエラーに対応するエラーコード番号、エラー内容又は指示内容、対処方法を呼び出して、エラー画像とともにエラー画面1103に表示する。
図31は、複数薬品と判定された場合のエラー画面1103の一例であるが、異物・汚れと判定された場合も同様である。エラー画面1103の左上部には、エラーコード番号1104と、「複数薬品検出」というエラー内容1105が表示される。エラー画面1103の右側部には、エラー画像1106が表示される。エラー画像1106は、2つの返品薬剤2が載置された仮置き部301の撮影画像に、2つの返品薬剤2の輪郭を囲む赤枠の識別マーク1107を重ね合わせて表示されている。エラー画面1103の左側部には、当該エラーに対する対処方法1108が表示される。対処方法1108には、扉の開錠、薬品の取り除き、扉の閉鎖、リスタートボタンの押圧が、順に示されている。エラー画面1103の左下部には、「リスタート」ボタン1109、「閉じる」ボタン1110が表示され、右下部には、「扉開錠」ボタン1111、「ブザー停止」ボタン1112が表示されている。
ユーザは、エラー画面1103が表示されると、まずエラー画面1103の「ブザー停止」ボタン1112を押してブザーを止め、エラー内容を確認し、対処方法1108に記載の手順に従って、エラーを解除することができる。「扉開錠」ボタン1111を押すと、図32に示す扉開錠画面1113がポップアップされるので、対処方法1108に記載されている扉を選択して扉開錠画面1113を閉じると、該当する扉が開錠される。エラー画像1106に赤枠の識別マーク1107で囲まれた部分を参照しながら、開いた扉の中の仮置き部301上に存在する返品薬剤2、又は異物・汚れを除去することができる。エラーの原因を除去した後、扉を閉じて、エラー画面1103の「リスタート」ボタン1105を押し、エラー画面1103を閉じる。これにより、装置の動作が再開する。
図33は、立ち薬剤と判定された場合のエラー画面1103の一例である。エラー画面1103の構成は、図31と同様である。エラー内容1105は、「薬品が立っている」と表示されている。エラー画像1106には、立ち薬剤が載置された仮置き部301の撮影画像に、立ち薬剤の輪郭を囲む赤枠の識別マーク1107を重ね合わせて表示されている。
図34は、範囲外薬剤と判定された場合のエラー画面1103の一例である。エラー画面1103の構成は、図31と同様である。エラー内容1105は、「薬品範囲外」と表示されている。エラー画像1106には、一部が解析範囲外に載置された仮置き部301の撮影画像に、範囲外薬剤の輪郭を囲む赤枠の識別マーク1107を重ね合わせて表示されている。
「リスタート」ボタン1105が押されても、エラーの原因がまだ残っている場合は、再度エラー画面1103を表示する。図35は、エラー原因が除去されていない場合のエラー画面1103の一例である。エラー画面1103の構成は、図31と同様である。このエラー画面1103は2回目であるから、「複数薬品検出」、「薬品が立っている」、「薬品範囲外」といったエラー内容ではなく、「薬品取り除き」という指示内容1114が表示され、薬品を早く取り除くことを促す表現になっている。
図36は、認識部300のラベル読取部302におけるエラー画面1103である。停電後に電源が復旧した時、ラベル読取部302の無端ベルト308上に返品薬剤2や異物が残っていると、後続の返品薬剤2のラベル読み取りができなくなるので、ユーザに薬品又は異物を取り除くように促す。エラー画面1103の構成は、図31と同様である。エラー内容の代わりに、「薬品取り除き」という指示内容1114が表示されている。エラー画像1106には、返品薬剤2又は異物が残っているラベル読取部302の撮影画像に、当該返品薬剤又は異物の輪郭を囲む赤枠の識別マーク1107を重ね合わせて表示されている。
図37は、電源立上時に認識部300の仮置き部301、ラベル読取部302、非格納薬剤配置部400に返品薬剤や異物が残っている場合に表示されるエラー画面1103である。エラー画面1103の構成は、図31と同様である。エラー内容の代わりに、「薬品取り除き」という指示内容1114が表示されている。エラー画像1106には、返品薬剤2又は異物が残っているラベル読取部302の撮影画像に、当該返品薬剤又は異物の輪郭を囲む赤枠の識別マーク1107を重ね合わせて表示されている。対処方法1108としては、扉の開錠、形状確認ユニット(仮置き部301)、ローラユニット(ラベル読取部302)、仮置き台(非格納薬剤配置部400)の薬品の取り除き、扉の閉鎖、リスタートボタンの押圧が、順に示されている。
以上のように、エラー画面1103に表示されたエラー内容1105、エラー画像1106の像及び識別マーク1107、対処方法1108により、ユーザは、何がエラーの原因か、どこに原因があるか、どのようにしてエラーに対処すればよいかを理解することができるので、エラーを迅速、確実に除去することができる。
(全体の流れ)
次に、これまで説明してきた返品薬剤2の形状等の認識からその認識結果に基づく返品薬剤2の搬送までの流れの一例を、図38から41を参照しながら説明する。
図38のステップS101で、電源投入時であるか否かが判断され、電源投入時であれば、ステップS102でカメラ307とカメラ311により認識部300の仮置き部301、ラベル認識部302が撮影される。
ステップS102で撮影された画像は、ステップS103において、制御装置1000によって画像処理される(エッジ検出処理、2値化処理)。
ステップS104で、認識部300における返品薬剤又は異物の異常判定1を行う。
図39は、異常判定1の流れを示す。ステップS201で、認識部300の仮置き部301、ラベル認識部302の撮影画像に薬剤又は異物があるか否かを判定する。薬剤又は異物の判定は前述した通りである。ステップS202で、薬剤又は異物が無ければリターンし、有ればステップS203でブザーを報知し、ステップS204でディスプレイ1002のホーム画面1101に「エラー」ボタン1102を表示する。ステップS205で「エラー」ボタン1102が押されれば、ステップS206で撮影画像に、該当する薬剤又は異物の輪郭を囲む赤枠の識別マーク1107を重ね合わせたエラー画像1106を作成し、ステップS207でエラー画像1106をディスプレイ1102のエラー画面1103に表示する。続いてステップS208でエラーコード、「取り除き」という指示内容のメッセージ、対処方法をディスプレイに表示する。ステップS209で「リスタート」ボタン1105が押された否かを判断し、押されればステップS201に戻り、押されなければ「リスタート」ボタン1105が押されるまで待機する。
ステップS104での異常判定1の後、又はステップS101で電源投入時でなければ、図40のステップS105に移行し、認識部での動作を開始する。
ステップS105において、返品薬剤2が、直交型ロボット700によって認識部300の仮置き部301における半透明板305上に搬送される(載置される)。
次に、ステップS106において、半透明板305上に載置された返品薬剤2が、その上方に配置されたカメラ307によって撮影される。
ステップS106で撮影されたカメラ307の画像は、ステップS107において、制御装置1000によって画像処理される(エッジ検出処理、2値化処理)。
ステップS108で、認識部300における複数薬剤、異物・汚れ、立ち薬剤、範囲外薬剤等の異常判定2を行う。
図41は、異常判定2の流れを示す。ステップS301で、認識部300の仮置き部301の撮影画像に複数薬剤があるか否かを判定する。ステップS302で複数薬剤が無ければ、ステップS303で仮置き部301の撮影画像に異物・汚れがあるか否か判定する。ステップS304で、異物・汚れが無ければ、ステップS305で立ち薬剤があるか否かを判定する。ステップS306で立ち薬剤が無ければ、ステップS307で範囲外薬剤があるか否かを判定する。ステップS308で範囲外薬剤が無ければリターンする。複数薬剤、異物・汚れ、立ち薬剤、範囲外薬剤の判定は前述したとおりである。ステップS302、S304、S306、S308で、複数薬剤、異物・汚れ、立ち薬剤、範囲外薬剤があれば、ステップS309でブザーを報知し、ステップS310でディスプレイ1002のホーム画面1101に「エラー」ボタンを表示する。ステップS311で「エラー」ボタン1102が押されれば、ステップS312で撮影画像に、該当する薬剤又は異物の輪郭を囲む赤枠の識別マーク1107を重ね合わせたエラー画像1106を作成し、ステップS313でエラー画像1106をディスプレイ1002のエラー画面1103に表示する。続いて、ステップS314でフラグRSが0であれば、ステップS315でエラーコード、エラー内容のメッセージ、対処方法をディスプレイ1002のエラー画面1103に表示する。フラグRSは、リスタートボタン1105が押されるごとに1増加する。フラグRSが1以上であれば、ステップS315でエラーコード、「取り除き」という指示内容のメッセージ、対処方法をディスプレイ1002のエラー画面1103に表示する。ステップS317で「リスタート」ボタン1105が押された否かを判断し、押されればステップS318でフラグRSを1増加してステップS301に戻り、押されなければ「リスタート」ボタン1105が押されるまで待機する。
異常判定2を終えると、図40に戻り、ステップS109において、制御装置1000は、ステップS107で画像処理されたカメラ307の画像に基づいて、仮置き部301の半透明板305上に載置された返品薬剤2の形状の情報を取得する。
ステップS110において、制御装置1000は、ステップS109で取得した返品薬剤2の形状の情報に基づいて、仮置き部301の半透明板305上に載置された返品薬剤2の形状が取り扱い対象の薬剤の形状であるか否かを判定する。返品薬剤2の形状が取り扱い対象の薬剤の形状である場合にはステップS111に進み、そうでない場合(取り扱い対象外である場合)にはステップS120に進む。
ステップS111において、制御装置1000は、ステップS107で画像処理されたカメラ307の画像に基づいて、仮置き部301の半透明板305上に載置された返品薬剤2の大きさの情報を取得する。
ステップS112において、制御装置1000は、ステップS111で取得した返品薬剤2の大きさの情報に基づいて、仮置き部301の半透明板305上に載置された返品薬剤2の大きさが取り扱い対象の薬剤の大きさであるか否かを判定する。返品薬剤2の大きさが取り扱い対象の薬剤の大きさである場合にはステップS113に進み、そうでない場合(取り扱い対象外である場合)にはステップS120に進む。
ステップS113において、仮置き部301の返品薬剤2は、直交型ロボット700によってラベル読取部302に搬送される。それにより、返品薬剤2は、ラベル読取部302にセットされる。
ステップS114において、制御装置1000は、ステップS206で取得した返品薬剤2の大きさ(外径)に基づいて、返品薬剤2に当接して該返品薬剤2を回転させるラベル読取部302のローラ309の回転速度を調節する。
ステップS115において、制御装置1000は、返品薬剤2のラベル3がカメラ311やバーコードリーダ312によって正確に読み取り可能か否か判定する。ラベル3に記載された使用期限や返品薬剤2の種類を示すバーコードを正確に読み取れる場合にはステップS116に進む。例えば、使用期限やバーコードが部分的に消えているなど、これらを正確に読み取れない場合にはステップS120に進む。
ステップS116において、ラベル読取部302において返品薬剤2のラベル3が正確にカメラ311やバーコードリーダ312によって読み取られる。
ステップS117において、制御装置1000は、ステップS211で読み取られた返品薬剤2のラベル3に基づいて、その返品薬剤2の種類及び使用期限の情報を取得する。
ステップS118において、制御装置1000は、ステップS117で取得した返品薬剤2の種類及び使用期限の情報に基づいて、ラベル読取部302にセットされた返品薬剤2の種類及び使用期限が取り扱い対象の薬剤の種類及び使用期限であるか否か判定する。すなわち、返品薬剤2の種類が薬品マスタに記憶されている種類であるか否かが判定されるとともに、使用期限が切れていないまたは使用期限が十分にあるか否かが判定される。返品薬剤2の種類及び使用期限の両方が取り扱い対象の薬剤のものである場合にはステップS119に進む。そうではない場合にはステップS120に進む。
ステップS119において、ラベル読取部302の返品薬剤2が、取り扱い対象の薬剤として、スカラー型ロボット800によって格納部500に搬送される。すなわち、形状、大きさ、種類、及び使用期限が取り扱い対象の薬剤の形状、大きさ、種類、及び使用期限である返品薬剤2が格納部500に格納される。
ステップS120において、ステップS110で形状が取り扱い対象外の薬剤の形状と判定された返品薬剤2、ステップS112で大きさが取り扱い対象外の薬剤の大きさと判定された返品薬剤2、ステップS115でラベル3が読み取り不可能と判定された返品薬剤2、またはステップS118で種類及び使用期限の少なくとも一方が取り扱い対象外の薬剤のものと判定された返品薬剤2は、非格納薬剤2’として、非格納薬剤配置部400に搬送(格納)される。
(形状解析処理の流れ)
図42は、図40のステップS107の画像処理とステップS108の異常判定2を含めた形状解析処理の他の例を示す。ステップS401で、撮影画像を取得し、ステップS402で薬品領域抽出処理を行う。
薬品領域抽出処理は、図43に示すように、ステップS501で二値化領域とエッジ領域の和集合である領域(Reg_th)を求め、ステップS502で画像の膨張・縮小処理により新領域(Reg_th_new)を求める。ステップS503で新領域(Reg_th_new)のフィルタリング処理により面積が3900ピクセル以下の部分を無視して選択領域(Reg_sel)を求め、ステップS504で選択領域(Reg_sel)とエッジ領域との交差領域を連結・穴埋めして得られる交差閉領域(Reg_int)を求める。この交差閉領域を求めることにより、抽出対象とする領域の明瞭なエッジが現れる。ステップS505で、交差閉領域(Reg_int)がゼロでない、すなわち、交差閉領域(Reg_int)が存在すれば、ステップS506で、交差閉領域(Reg_int)が1であるか否かを判断する。交差閉領域(Reg_int)が1であれば、ステップS503で選択領域(Reg_sel)の面積が15000ピクセルを超えるか否かを判断する。閾値の15000ピクセルは、返品薬払出装置で扱う最小の薬品の画像の画素数である。選択領域(Reg_sel)の面積が15000ピクセルを超えていれば、ステップS508で選択領域(Reg_sel)の輪郭エッジの輝度値(対象領域の輝度値の平均値)が所定の閾値Thを超えるか否かを判断する。閾値Thを超えていれば、ステップS509で画像は「正常」であると判断する。
ステップS506の判断で、交差閉領域(Reg_int)が1でなければ、明瞭なエッジを有する交差閉領域が複数であるため、ステップS518で画像は「複数薬品」であると判断する。
また、ステップS507の判断で、選択領域(Reg_sel)の面積が15000ピクセル以下であれば、最小の薬品でもないため、ステップS517で、画像は「汚れ・ゴミ」であると判断する。
さらに、ステップS508の判断で、選択領域(Reg_sel)の輪郭エッジの輝度値が所定の閾値Th以下であれば、ステップS517で、画像は「汚れ・ゴミ」であると判断する。
ステップS505の判断で、交差閉領域(Reg_int)がゼロ、すなわち、交差閉領域(Reg_int)が存在しなければ、ステップS510に移行にする。交差閉領域(Reg_int)が存在しなければ、画像は薬品でないと言えるが、画像がゴミ・汚れなのか、薬品がないのかは不明である。ステップS510で、新領域(Reg_th_new)のフィルタリング処理により面積が500ピクセル以下の部分を無視して選択領域(Reg_sel2)を求め、ステップS511で選択領域(Reg_sel2)とエッジ領域との交差閉領域(Reg_int2)を求める。ステップS512で、交差閉領域(Reg_int2)がゼロ、すなわち、交差閉領域(Reg_int2)が存在しなければ、ステップS513で選択領域(Reg_sel2)と交差閉領域(Reg_int2)との面積比が0.75を超えるか否か判断する。エッジ領域に対して全領域の面積が小さいものは大きさがないと言える。ステップS513で、選択領域(Reg_sel2)と交差閉領域(Reg_int2)との面積比が0.75以下であれば、ステップS514で、領域(Reg_th)のフィルタリング処理により輪郭の長さが500ピクセル以下の部分を無視して選択領域(Reg_sel3)を求める。ステップS515で、選択領域(Reg_sel3)の輪郭エッジの輝度値(対象領域の輝度値の平均値)が所定の第2閾値Th2を超えるか否かを判断する。第2閾値Th2以下であれば、ステップS516で画像は「薬品なし」であると判断する。
ステップS512の判断で、交差閉領域(Reg_int2)がゼロでない、すなわち、交差閉領域(Reg_int2)が存在すれば、薬品でない何かが存在するので、ステップS517で、画像は「汚れ・ゴミ」であると判断する。
ステップS513の判断で、面積比が0.75を超えていれば、ある程度の大きさがあるので、ステップS517で画像は「汚れ・ゴミ」であると判断する。
ステップ515の判断で、選択領域(Reg_sel3)の輪郭エッジの輝度値が第2閾値Th2を超えていれば、ステップS517で画像は「汚れ・ゴミ」であると判断する。
ステップS508における閾値Thと、ステップS515における第2閾値Th2は、255>Th>Th2>0の関係がある。エッジ処理により得られた対象領域が薬品である場合、輪郭エッジの輝度値の平均値は高くなる傾向にある。これは、薬品の画像の輪郭は画素間の変化量が大きく、視覚的に濃淡が明確である(処理画像上では視覚的に白くなる)からである。このため、ステップS508で正常な薬品を判別する輪郭エッジ輝度の閾値Thは高くしている。これに対し、対象領域が薬品以外の場合、輪郭エッジの輝度値の平均値は低くなる傾向にある。これは、汚れ・ゴミ等の輪郭は視覚的に濃淡が不鮮明である(処理画像上では視覚的に黒くなる)からである。このため、ステップS515で汚れ・ゴミを判別する輪郭エッジ輝度の閾値Th2はThよりも低くしている。
以上の薬品領域抽出処理により、画像が「正常」、「複数薬剤」、「汚れ・ゴミ」、「薬品なし」と判断することができる。
図42のフローに戻ると、ステップS403で、ステップS402の「薬品領域抽出処理」が成功したか否かを判断する。ステップS402の「薬品領域抽出処理」が成功せず、画像が「複数薬剤」、「汚れ・ゴミ」、「薬品なし」のいずれかであれば、形状解析を終了する。ステップS402の「薬品領域抽出処理」が成功し、画像が「正常」であると判断されたのであれば、ステップS404に移行し、「正常」であるか否かを再度詳細に判断する。
ステップS404では、画像が立っているか否かを判断し、立っていれば画像は「薬品立つ」であるとして、形状解析を終了する。立っていなければ、ステップS405で、画像の寸法を測定し、画像の幅、長さ、頭部の向き等を決定する。次に、ステップS406で、画像が解析範囲ARからはみ出しているか否かを判断し、はみ出していなければ、ステップS407で画像が複数か否かを判断する。ここでは、複数の画像が接触して繋がっているか否かをステップS405で測定した寸法に基づいて判断する。画像が複数であれば、画像は「複数薬品」であるとして、形状解析を終了する。画像が複数でなければ、ステップS408で薬品が割れているか否かを判断する。薬品が割れていれば、画像は「薬品割れ」であるとして、形状解析を終了する。薬品が割れていなければ、ステップS409で薬品が異形状、例えば袋入りの薬品であるか否かを判断する。薬品が異形状でなければ、ステップS412で「吸着座標、オフセット」の決定処理を行う。薬品が割れているか否か、薬品が異形状であるか否かは、ステップS405で測定した寸法に基づいて判断する。
「吸着座標、オフセット」の決定処理は、図44に示すように、ステップS601で、2値化・エッジ処理された薬剤の画像の位置が撮影領域の中央でかつ水平になるように画像をアフィン変換する。ステップS602で、画像を垂直方向に縮小し、ステップS603で縮小前の画像と縮小後の画像の差分領域を求め、ステップS604で画像を水平方向にオープニング処理し、画像の小さい部分や細い部分を除去し、首部分の2本の像からなる領域と、胴部分の2本の像からなる領域とに分離する。ステップS605で、長い方の領域を選択して、ステップS606で逆アフィン変換し、ステップS607で残った長い方の領域の2本の像の合集合の中心座標を吸着座標とする。ステップS608では、吸着座標と頭部輪郭中心点との距離をオフセットとする。
図42のフローに戻ると、ステップS411で、薬品が異形状であるか否かを再確認し、異形状でなければ、ステップS412で画像の角度をラジアンから度に変換する。ステップS413で、はみ出しフラグfが真(truth)、すなわちステップS406の判断で画像が解析範囲ARからはみ出していると判断されて、はみ出しフラグfが立っていれば、薬品が「はみ出し(範囲外薬剤)」であるとして形状解析を終了する。ステップS413ではみ出しフラグが立っていなければ、ステップS414で、薬剤が解析範囲ARの中心からずれているか否か判断し、中心からずれていれば、薬品が「中心ずれ」であるとして形状解析を終了する。中心からずれていなければ、ステップS415で異形状フラグfが立っているか否かを判断し、フラグが立っていれば、薬品が「異形状」であるとして形状解析を終了する。異形状フラグが立っていなければ、形状解析を終了する。
ステップS406で、画像が解析範囲ARからはみ出していれば、ステップS416で、吸着座標及びオフセットを薬品の中心点に設定する。同様に、ステップS409で、薬品が異形状、例えば袋入りの薬品であれば、ステップS416で、吸着座標及びオフセットを薬品の中心点に設定する。これは、画像が解析範囲ARからはみ出していたり、薬品が異形状の場合は、返品薬剤を非格納薬剤配置部400に移送するので、吸着座標やオフセットを正確に求める必要がなく、薬剤の中心点に定めればよいからである。ステップS416の後は、前述したステップS412からS415を経て形状解析を終了する。
以上、上述の実施形態を挙げて本発明を説明したが、本発明はこれに限定されない。本発明は返品薬剤を対象とする薬剤認識装置に限定されない。つまり、受入部に供給される薬剤は、返品薬剤に限定されない。