以下、図面を用いて、本発明の錠剤供給システム(図1)について説明する。
図1は、供給された錠剤を包装する包装装置5と錠剤を取り出して包装装置5(以下、分包装置とも称する)に供給する錠剤供給装置10(以下、錠剤取出装置とも称する)と、手撒き投入部104と、散薬投入部103を含む錠剤供給システム(以下、錠剤取出システムとも称する)を示す図である。錠剤供給装置10には、複数の錠剤取出ユニット1が搭載されており、この錠剤取出ユニット1により錠剤シート(PTPシート)から錠剤が取り出される。
このような錠剤供給システムには、錠剤供給システムを管理する情報処理装置300及び調剤業務における処方内容を管理する情報処理装置400が通信ケーブルにより接続されている。このような情報処理装置300が、(1)包装装置5に設けられたタッチパネル式のディスプレイ101で入力される処方内容、(2)情報処理装置300にユーザによって直接入力される処方内容、(3)情報処理装置400から取得する処方箋データ、を用いて錠剤取出ユニット1に錠剤の取出動作及び分包動作を行わせることができる。また、情報処理装置300は、包装装置5や錠剤供給装置10と常に通信することができ、錠剤取出の状況を把握することができる。
なお、情報処理装置300は、包装装置5に内蔵されていてもよいし、調剤業務における処方箋を管理するための情報処理装置400は、設けなくとも取出動作及び分包処理を行うことはできる。
図1に示す錠剤供給システムには、錠剤取出ユニット1が18セット設けられており、最下段左側から右側に向かってユニット1、ユニット2・・・ユニット6、さらに中断左側から右側に向かって、ユニット7、ユニット8・・・ユニット12、さらに最上段左側から右側に向かってユニット13、ユニット14・・・ユニット18となるように、ユニット番号が割り当てられている。
図2は、錠剤供給システムのハードウェア構成の一例についてブロック図を用いて説明する。ここでは、情報処理装置300のCPU30と、包装装置5のCPU41と、錠剤供給装置10のCPU11とがそれぞれ連携して、包装装置5が制御する各装置(各ユニット)、及び、錠剤供給装置10が制御する各装置(各ユニット)の各種動作を制御している一例を示している。しかし1つのCPUが、錠剤供給システムの全ての各装置を制御する構成でも構わない。また、ここでは錠剤供給装置10にCPUが1つ設けられている状態を図示しているが、錠剤取出ユニット1ごとにCPUを設けてもよいし、錠剤取出ユニット1の段ごとにCPUを設けてもよい。
まず情報処理装置300(400)のハードウェア構成について説明する。情報処理装置300のCPU30は、システムバスに接続される各デバイスやコントローラを統括的に制御することができる。また、ROM31あるいは外部メモリ36には、CPU30の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、各サーバ或いは各PCの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。RAM33は、CPU30の主メモリ、ワークエリア等として機能する。CPU30は、処理の実行に際して必要なプログラム等をRAM33にロードして、プログラムを実行することで各種動作を実現するものである。
また、CPU30は、キーボードや不図示のマウス等の入力端末35からの入力を制御する。ビデオコントローラ(VC)206は、ディスプレイ34等の表示器への表示を制御することもでき、さらに、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)やフロッピーディスク(登録商標 FD)或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュメモリ等の外部メモリ36へのアクセスを制御することもできる。
またI/F32は、ネットワークを介して外部機器と接続・通信するものであり、本実施形態においては包装装置5のI/F40と通信可能に接続されている。
次に、包装装置5のハードウェア構成について説明する。包装装置5のCPU41は、バスに接続されている各デバイスを統括的に制御することができる。ROM42にはCPU41の制御ブログラムや各種制御プログラムが記憶されている。RAM43は、CPU41が動作するためのシステムワークメモリとして機能する。CPU41は、タッチパネル式のディスプレイ101に対して表示制御したり、ディスプレイ101のタッチパネル機能を入力端末502としてユーザから情報の入力を受け付けたり、プリンタ506に印刷指示を出したりすることもできる。さらにCPU41は、包装装置5の散薬投入部103から投入された散薬を1包に包装する際に動作させる散薬分包機構45を制御したり、ユーザから手撒き投入部104に手撒きされた錠剤を包装する際に動作させる手撒き投入機構46を制御したりすることができる。そして包装装置5と錠剤供給装置10とは、包装装置5のI/O44と錠剤供給装置10のI/O12とで通信可能に接続されている。
次に、錠剤供給装置10のハードウェア構成について説明する。錠剤供給装置10のCPU11は、バスに接続されている各デバイスを統括的に制御することができる。ROM14にはCPU11の制御ブログラムや各種制御プログラムが記憶されている。RAM13は、CPU11が動作するためのシステムワークメモリとして機能する。CPU11は、さらに押出し機構における取出動作を制御したり、錠剤シートを搬送する搬送機構16を制御したりすることもできる。
このようなハードウェア構成においては、以下のように錠剤取出を行うように制御することができる。まず包装装置5のCPU41が、錠剤供給装置10のCPU11に対して、錠剤の取出動作命令を送信する。そして、錠剤供給装置10のCPU11が、当該取出動作命令に従って、押出し機構や搬送機構16を制御して錠剤取出動作を行わせることができる。また、錠剤供給装置10のCPU11は、包装装置5のCPU41に対して、錠剤取出動作の状況を示す動作情報を送信することもできる。
次に、図3を用いて、錠剤取出ユニット1の内部構造について説明する。
図3は、錠剤取出ユニット1の内部構造を示す図である。なお、図3は、錠剤取出ユニット1が2つ並んで配置されている例を示している。
錠剤取出ユニット1は、錠剤収容部510が重力方向に関して上側に来るような状態で複数の錠剤シート51を積層させて投入可能な投入口203(投入部)と、錠剤シート51を搬送する搬送機構16と、搬送機構16により搬送された錠剤シート51が載置される載置台と、載置台上の錠剤シート51の錠剤収容部の側から押圧して錠剤を取り出す押出し機構とを有している。すなわち載置台上が除包位置(取出位置)として用いられる。錠剤シート51は、錠剤を収容する錠剤収容部510を有するシート本体の下面に、アルミニウム等からなる金属箔などを用いた封止シートを設けることによって錠剤が錠剤収容部に密封されている。さらに錠剤シート51は、シート部上に凸状の錠剤収容部が幅方向に間隔をおいて2列に並んだ形態である。各列をなす複数の錠剤収容部は錠剤シート51の長さ方向に沿って並んでいる。
なお、錠剤シート51としては、シート部上に錠剤収容部が2列に並んだ形態のものに限らず、錠剤収容部が錠剤シート51の長さ方向に1列に並んだ形態や、錠剤収容部が幅方向に間隔をおいて3列以上の複数列に並んだ形態も可能である。
次に図4及び図5を用いて、錠剤シートからの錠剤の取出動作及び、取出された錠剤の挙動について説明する。図4は、錠剤取出ユニット1の内部構造(断面)を示す図であり、錠剤取出ユニット1を右側面から見た図である。図5は、錠剤供給装置10を装置の後方側から見た内部構造を示す図である。
図4に示すように、錠剤の取出動作は、投入口203にセットされた錠剤シートを、錠剤の除包位置(錠剤の取出位置)まで搬送した後に開始される。
このような錠剤シートを搬送は、搬送機構16として機能する下部ローラ39及び上部ローラ(不図示)によって行われる。下部ローラ39は進行方向に沿って互いに間隔をおいて複数設けられており、駆動源(不図示)により回転駆動可能であり、錠剤シートの重力方向に関して下面側に当接して錠剤シート51に進行方法への力を加えて搬送することができる。
なお、錠剤取出ユニット1には、押圧される錠剤収容部の長さや押圧される錠剤収容部の位置を検知することができる検出機構17が設けられており、これにより特定される錠剤収容部の長さや錠剤収容部の位置を用いて、最適な搬送距離を算出して搬送制御することもできる。すなわち、検出機構17と搬送機構16(下部ローラ39、上部ローラ)によって、最適な取出位置に錠剤シートを搬送させて取出動作を行うことができる。
次に、押出し機構による錠剤の取出動作について説明する。押出し機構は、錠剤収容部の中央付近を押圧する内側押圧体83と、内側押圧体83を取り囲むように設けられ、中央付近よりも外側の部分を押圧する外側押圧体84とを含んで設けられている。この内側押圧体83と外側押圧体84とが独立して動作することで錠剤シートの錠剤収容部を押圧し、錠剤シートから錠剤を取り出すことができる。具体的には押出し機構は、内側押圧体83よりも先に外側押圧体84により錠剤収容部を押圧するように制御される。
内側押圧体83の先端は、錠剤取出ユニットに搭載されることが想定されるほとんどの錠剤シート51の錠剤収容部よりも面積が狭くなるように設けられている。そのため、錠剤を取り出すために内側押圧体83を下降させると、錠剤シートの錠剤収容部の面よりも重力方向に関して下側に至るまで先端が到達し、錠剤シート51の金属箔に開いた穴から先端が下側に突き出ることになる。一方、外側押圧体84の先端は、錠剤取出ユニットに搭載されることが想定されるほとんどの錠剤シート51の錠剤収容部よりも面積が広いので、錠剤を取り出すために下降させても、錠剤シート51の金属箔に開いた穴から先端が突き出ることはない。すなわち、外側押圧体84を用いて最初に錠剤シート51の錠剤収容部を押し潰し、その後内側押圧体83で錠剤を確実に押し出すというように用いられる。
また、押出し機構は、外側押圧体84を昇降させる第1昇降機構と、内側押圧体83を昇降させる第2昇降機構も有しており、これらを動作させることにより、押圧体で錠剤を押し出すことができる。
第1昇降機構は、外側押圧体84が取り付けられた第1昇降体93と、回転駆動して第1昇降体93を昇降させるカム94と、第1昇降体93を上昇方向に付勢する付勢部材(ばね)とを備えている。
第1昇降体93は、前後方向にわたって延在する柱状体であり、前端部に外側押圧体84が取り付けられている。カム94は、外側押圧体84の昇降動作を考慮して設計された形状の板状体であり、駆動機構によって回転駆動する軸部に固定されている。
カム94は、第1昇降体93の上面側に設けられ、軸部の回転に伴って回転駆動し、第1昇降体93を押圧することによって高さ位置を調整し、これによって外側押圧体84の高さ位置を調整する(外側押圧体84の昇降動作を行う)ことができる。第1昇降機構は、カムの回転動作のタイミング、カムの形状、軸部に対するカムの固定位置などの設定によって、外側押圧体84の昇降動作のタイミングや変位量を任意に設定できる。
第2昇降機構は、内側押圧体83が取り付けられた第2昇降体98と、回転駆動して第2昇降体98を昇降させるカム99と、第2昇降体98を上昇方向に付勢する付勢部材(ばね)とを備えている。
第2昇降体98は、前後方向にわたって延在する柱状体であり、前端部に内側押圧体83が取り付けられている。カム99は、第2昇降体98の上面側に設けられ、軸部の回転に伴って回転駆動し、第2昇降体98を押圧して高さ位置を調整し、これによって内側押圧体83の高さ位置を調整する(内側押圧体83の昇降動作を行う)ことができる。第2昇降機構は、カム99の回転動作のタイミング、カムの形状、軸部に対するカムの固定位置などの設定によって、内側押圧体83の昇降動作のタイミングや変位量を任意に設定できる。
このため、カム94とカム99は、それぞれ第1昇降体と第2昇降体に対して互いに独立に動作可能であり、内側押圧体83と外側押圧体84は、互いに独立に昇降動作させることができる。
押出し機構における2つのカムの回転動作のタイミング等は、錠剤位置検出機構の検出部からの信号に基づいて定めることができる。具体的には、検出された錠剤収容部の位置に合わせて内側押圧体83と外側押圧体84を動作させることができる。
このような押出し機構を制御することにより、錠剤シートから錠剤を取り出すことができる。そして、取出された錠剤は、載置台の下面側に設けられた導入シュート24を介して錠剤導入路601に導かれる。
また、錠剤の取出動作を行ったにもかかわらず、錠剤が取り出せていないと判断された場合には、取出動作を継続(リトライ)する。具体的には、取出動作を行ったにもかかわらず、導入シュート24に設けられている光学センサ204にて錠剤を検知できなかった場合に、錠剤が取り出せていないと判断してリトライ動作に移行する。またリトライ動作の際には、錠剤収容部の押圧を再度行う前に載置台18上の押圧位置から所定の距離だけ搬送手段で錠剤シート51を搬送させてずらし、この状態で押出し機構を用いて錠剤収容部を押圧してもよい。このような状態でリトライ動作を行うことにより、1度の取出動作で錠剤が取り出されなかったとしても、確実に錠剤を取り出すことができる。
さらに、錠剤取出ユニット1に、載置台18上の錠剤シート51の錠剤収容部を押圧する速度を変更させる変更機構を搭載し、リトライ動作時の押出し機構の押出し速度を通常の速度より高速に変更して錠剤収容部を押圧してもよい。
次に、錠剤供給装置10の内部を横(正面から見て右側)から見た図である図6を用いて、錠剤取出動作により取り出された錠剤がどのように移動するか説明する。図6に示す矢印は、錠剤取出ユニット1から取り出された錠剤の移動経路を示している。
導入シュート24を介して運ばれた錠剤は、錠剤導入路601を経由して第1集積ホッパー602に運ばれる。第1集積ホッパー602には、重力方向に重なっている複数の錠剤取出ユニット1により錠剤シートから取り出された錠剤が集積される。このような第1集積ホッパー602は、重力方向と交差する方向に複数設けられており、このような複数の第1集積ホッパー602により集積された錠剤は、さらに1つの第2集積ホッパー603に集積される。
そして第1の送り出し機構604が、第2集積ホッパー603に集積された錠剤50を所定のタイミングで第3集積ホッパー605に移動させる。そして第3集積ホッパー605で、手撒き投入部104から投入された錠剤と錠剤供給装置10から供給された錠剤とがまとめられ、1つの分包分の錠剤として、第2の送り出し機構606によって、包装ユニット701のメインホッパー707に送り出される。
なお、錠剤が取り出された除包済みの錠剤シートは、搬送機構16によりさらに錠剤供給装置の後方側に向かって搬送され、排出路607へと排出され、排出ポケット608(廃棄ボックス)に集積される。排出ポケット608には、錠剤供給装置10の前面側に開口扉が設けられており、排出された錠剤シートを容易に取り出すことができる。
次に、図7を用いて、包装ユニット701の内部構造について説明する。包装ユニット701は、包装装置5内に設けられたユニットである。
メインホッパー707は、散薬投入部103に投入された薬剤や手撒き投入部104に投入された錠剤や錠剤供給装置10により供給された錠剤を集積し、包装シート(分包紙)の中にこれらを投入するために用いられる。
ロール紙送出機構702は、包装シートが連なるロール紙(分包紙がロール状になっている紙)を送り出す機構である。包装機構703及び包装機構704は、包装シートを加熱し溶着させる機構であり、包装機構703は、包装シートの送り出し方向と交差する方向に包装シートを溶着させることができ、包装機構704は、包装シートの送り出し方向に沿った方向に包装シートを溶着させることができる。
このような包装機構703,704を用い包装シートを加熱し溶着することにより、1回分の錠剤(薬剤)を1つにまとめて分包することができる。そして、このように個々に分包された包装シートは、分断機構705によって其々1包毎の包装シートに分断するための分断用ミシン目を入れられる。
さらに、印字機構706によって、包装シートには、日付、患者データ、エラー情報を印字することができる。なお包装シートとしては、表面に熱溶着可能な樹脂材をコーティングした紙のみならず、中身を視認することができる透明なフィルム材を用いることもできる。
(第1の実施形態)
次に、図8及び図9のフローチャートを用いて、本実施形態における錠剤取出動作について説明する。このような制御は、情報処理装置400、情報処理装置300及び錠剤供給装置10のCPU11(錠剤供給システム)が記憶されている制御プログラムを読み出して実行することによって実現される。
以下の実施形態においては、錠剤取出ユニット1が6つ搭載されている錠剤供給装置10を例に説明を行う。すなわち処方箋データ(処方データ)に7つ以上錠剤が含まれており、これらが同時に分包される場合に、必ず少なくとも1つの錠剤を手撒き投入部への投入することが必要な状況となる。本実施形態は、手撒き投入部に投入すると決定される錠剤を処方量(処方錠剤数)が極力少ない錠剤とするように制御することで、作業者が手動で錠剤シートから取り出す錠剤の数を削減することができ、作業者の負荷を軽減することができる。
S801では、情報処理装置400のCPU30が、ユーザによって指定された処方箋データを情報処理装置300に対して送信する。このとき送信する処方箋データは、複数まとめて送信してもよいし、1つだけ送信してもよい。
S802では、情報処理装置300のCPU30は、情報処理装置400から送信された処方箋データを受信する。このように受信された処方箋データには、薬品名と、朝・昼・晩の服用量が少なくとも含まれている。情報処理装置300のCPU30は、このような処方箋データを受信すると、図11(a)に示すように、薬品名1101、服用量1102、服用量から求まる1日分の処方量(1日量)1103、手撒きフラグ1104、ユニットNo.1105を有するデータとして記憶される。
ここでは例として、患者名:テスト 太郎、用法:分3毎食後7日分(包数21包)、登録薬品名は○錠(朝昼夕 各1錠 1日3錠)、△錠(昼夕 各1錠 1日2錠)、□錠(夕1錠 1日1錠)、○○錠(朝昼夕 各2錠 1日6錠)、△△錠(昼夕 各2錠 1日4錠)、□□錠(夕 2錠 1日2錠)、○○○錠(朝昼夕 各3錠 1日9錠)、△△△錠(昼夕 各3錠 1日6錠)、□□□錠(夕のみ3錠)の処方内容で説明する。
S803では、情報処理装置300のCPU30は、図9に示す割当処理を実行する。図9のS901では、情報処理装置300のCPU30は、図10に示すような情報処理装置300で記憶される薬品マスタを参照し、処方箋データに含まれる錠剤が手撒きすべき錠剤であるかの情報を取得する。そして図11(b)に示すように取得した結果を処方箋データテーブルの手撒きフラグ1104の欄に記憶する。薬品マスタには、一意の商品コード1001、薬品名1002、手撒きフラグ1003が予め設定されており、ここでは、薬品コード『4』の錠剤名『○○錠』が手撒きすべき錠剤であるとして、手撒きフラグがONされている。手撒きすべき錠剤としては、錠剤取出ユニットによって取出を行うと割れてしま舞う錠剤や、取出精度が悪い錠剤を指定することが好ましく、この指定はユーザが情報処理装置300上で適宜設定することができる。
S902では、情報処理装置300のCPU30は、未設定の錠剤があるかを判断する。具体的には、図11(a)に示すようなテーブルにおいて、ユニットNo.1105が未設定の錠剤がある場合に、未設定の錠剤があると判断し、未設定の錠剤が無い場合に未設定の錠剤がないと判断される。ここで未設定の錠剤が無いと判断された場合には、処方箋データに含まれる錠剤の投入先が全て割り当てられているといえるため、S804に遷移する。
一方S902で未設定の錠剤があると判断された場合には、S903に遷移し、情報処理装置300のCPU30は、錠剤取出ユニットの割当上限に達しているかを判断する。具体的には、錠剤供給装置10に搭載されている錠剤取出ユニット1に空きがあるかを判断する。既に6つ全ての錠剤取出ユニットがいずれかの錠剤に割当てられており、錠剤取出ユニット1に空きがないと判断される場合に、錠剤取出ユニットの割当上限に達していると判断される。そして、S903で割当上限に達している場合には、S907に遷移し残っている錠剤全てのユニットNo.1105に手撒き錠剤であることを割り当てる。一方、割当上限に達していない場合には、S905に遷移する。
S905では、情報処理装置300のCPU30は、処方箋データの未設定の錠剤のうち、1日分の処方量が最も多い薬品名を特定する。具体的には、図11(a)に示すようなテーブルにおいて、ユニットNo.1105が未設定の錠剤のうち、1日分の処方量1103が最も多い錠剤の薬品名を特定する。
図11(b)のように、いずれのユニットも未設定の場合には、1日分の処方量が9錠の○○○錠が特定される。なお、図11(c)のように最も多い錠剤の薬品名が複数ある場合(1日分の処方量6錠の○○錠及び△△△錠)には、処方箋データに登録されている順に特定すればよい。すなわち、ここで処方量が最も多い薬品名から特定することにより、処方量が多い錠剤から順に錠剤取出ユニットが後述するS909により決定されることになる。
S906では、情報処理装置300のCPU30は、S905で特定された割当対象の薬品名の手撒きフラグ1104がONであるかを判断する。手撒きフラグがONである場合には、S907に遷移し、ユニットNo.1105に手撒きすべき錠剤であることを登録し、S902に戻る。一方、手撒きフラグ1104がOFFである場合には、S908に遷移し、未設定の錠剤取出ユニット番号を取得する。ここで取得する錠剤取出ユニット番号は、小さい順に取得してもよいが、錠剤取出ユニットの使用頻度等の他の条件を加味して取得してきてもよい。使用頻度が少ない順に取得してくることにより、特定の錠剤取出ユニットだけが集中して使用されてしまうことを防止でき、錠剤供給装置の寿命を延ばすことができる。そしてS909では、情報処理装置300のCPU30は、S908で取得したユニットNo.を割当てる。
図11(a)〜(g)は、図9の処理を行うことでユニットNo.が割当られていく様子を、時系列順に示した図である。図11(f)の段階では、6つの錠剤取出ユニットが全て割り当てられてしまっているため□□錠と□錠とは、手撒きが割り当てられる(S903)。図11(g)のように全ての割り当てが終了すると、図8のS804に遷移する。
図8に戻り説明を続ける。S804では、情報処理装置300のCPU30は、ユーザから割当処理が完了している処方箋データの分包指示を受け付けたかどうかを判断する。ユーザによる処方箋データの分包指示は、図12に示すような画面を介して行うことができる。
図12は、情報処理装置300のディスプレイに表示される画面の一例であり、図12(a)は受信データタブ1210が選択された際に表示される画面1201であり、情報処理装置400から受信した処方箋データの全てが表示されている。ここで患割当処理が終了している患者名「テスト 太郎」の処方箋データを選択し、予約ボタン1203をクリックすることで、当該処方箋データが次に分包する予約状態の処方箋データに指定される。ここで予約されたデータ1214は、図12(b)の予約タブ1220が選択された際に表示される画面1221に表示され、この状態でスタートボタン1222がクリックされることにより、分包指示がなされたと判断される。
S804で分包指示を受け付けたと判断された場合には、S805に進み、S803で行われた割当結果をユーザが識別可能に表示する(表示制御手段)。割当結果の表示のさせ方としては、図13に示すような、どの錠剤をどの錠剤取出ユニットの投入口に投入すべきかを示す表示画面1300をディスプレイ34に表示させることにより、使用者に対して、好ましい錠剤シートの投入位置を通知する方法を用いることができる。また、錠剤供給システムに設けられたディスプレイ101に対して表示するようにしてもよい。さらに、他の例として、図14の表示画面1400に示すように、錠剤供給装置の配置順と一致させて、ユニットNo.を通知するようにしてもよい。これにより使用者は、いずれの投入位置に錠剤シートを投入すると最適かを容易に把握することができる。
なお、本実施形態では、分包指示を受け付けた後に割当結果を表示させる例を用いて説明したが、割当処理が完了していれば分包指示を受け付ける前であっても割当結果を表示してもよい。
S806では、情報処理装置300のCPU30は、全ての割当が終了した処方箋データを分包データとして錠剤供給システムに送信する。
S807では、錠剤供給システムのCPUは、情報処理装置300から送信された分包データを受信し、S808で受信した分包データに基づき、取出動作、印字動作等の分包動作を開始する。
以上説明したように、処方箋データに含まれる錠剤の処方量を加味して投入すべき錠剤取出手段を決定することにより、処方箋データに錠剤取出装置が有する錠剤取出手段の数以上の錠剤の種類が含まれているような場合であっても、極力処方量が少ない錠剤が手撒き錠剤とするように決定でき、作業者が行う手撒き作業の負荷を低減することができる。
なお、本実施形態は、1日分の処方量を用いて錠剤取出手段の割当決定を行ったが、全日分の処方量を加味して割当決定を行ってもよい。
(第2の実施形態)
第1の実施形態では、割当処理の際に処方データに含まれるいずれの錠剤にも取出ユニットが指定(固定)されていない例を用いて説明したが、割れやすい錠剤などによっては使用する取出ユニットを固定したい場合がある。本実施形態では、割当処理の際に、予め取出ユニットが指定されている場合には、優先的に当該取出ユニットを割り当てる場合を説明する。なお、ここでは第1の実施形態と異なる部分について説明を行い、第1の実施形態と同様な部分については説明を省略する。
図15は、第2の実施形態に係る割当処理の流れを説明するフローチャートであり、図8のS803で行われる処理である。このような制御は、情報処理装置のCPU11が記憶されている制御プログラムを読み出して実行することによって実現される。
S1501では、情報処理装置300のCPU30は、固定ユニットNo.割当処理を行う。そして固定ユニットの割当処理が終了した後に、S1502において、情報処理装置300のCPU201は、図9に示す割当処理を実行する。図9の割当処理は第1の実施形態と同様であるため説明を省略する。
次に図16乃至図18を用いてS1501で行われる固定ユニットNo.の割当処理について説明する。図16は、固定ユニットNo.割当処理を説明するフローチャートであり、図17は、固定ユニットが指定されている情報処理装置300に記憶される薬品マスタの一例である。さらに図18は、固定ユニットが指定されている場合の錠剤取出ユニットの位置を決定する流れを説明する処方箋データの一例である。
なお、本実施形態における処方データとしては、患者名:テスト 太郎、用法:分3毎食後7日分(包数21包)、登録薬品名は○錠(朝昼夕 各1錠 1日3錠)、○○○○錠(朝昼夕 各1錠 1日3錠)、△△△△錠(朝昼夕 各1錠 1日3錠)、□□□□錠(朝昼夕 各1錠 1日3錠)の処方内容で説明する。S802で受信する処方箋データは、図18(a)に示す、薬品名1801、服用量1802、服用量から求まる1日分の処方量(1日量)1803、手撒きフラグ1804、固定番号1805、ユニットNo.1806、固定ユニット割当処理の解析済みであるかを示す解析1807を有するデータとして記憶される。
S1601では、情報処理装置300のCPU30は、図17に示すような情報処理装置300で記憶される薬品マスタを参照し、処方箋データに含まれる錠剤が固定ユニットを使用すべき錠剤であるかの情報を取得する。
図17に示す薬品マスタには、図10の薬品マスタと同様に一意の商品コード1001、薬品名1002、手撒きフラグ1003設定されており、さらに、特定の固定ユニットを使用するかを指定する固定No.1704や錠剤数1705も設定されている。ここでは、薬品コード『11』の錠剤名『○○○○錠』と薬品コード『13』の錠剤名『△△△△錠』がユニットNo.1を使用すべきであると指定されており、薬品コード『12』の薬品名『□□□□錠』がユニットNo.2を使用すべきであると指定されている。この指定はユーザが情報処理装置300上で適宜設定することができる。
S1602では、情報処理装置300のCPU30は、未解析の錠剤があるかを判断する。具体的には、図18(a)に示すようなテーブルにおいて、解析1806が未設定の錠剤がある場合に、未解析の錠剤があると判断し、未設定の錠剤が無い場合に未解析の錠剤がないと判断される。ここで未解析の錠剤が無いと判断された場合には、処方箋データに含まれる固定ユニットが指定された錠剤は全て割り当てられているといえるため、S1602に遷移する。
一方、未解析の錠剤があると判断された場合には、S1603において、情報処理装置300のCPU201は、固定ユニットNo.が設定された錠剤であるかを判断する。具体的には、固定番号1805でユニットが指定されているかを判断する。
S1603において、固定番号が指定されている場合には、S1605に進み、指定されていない場合には、S1604において、ユニットNo.1806に、何も設定することなく解析1807に解析済みを記憶し、S1602に戻る。
S1605では、固定番号1805で指定されたユニットが空いているかどうかを判断する。指定されたユニットが空いている場合には、S1606において、情報処理装置300のCPU201は、ユニットNo.1806に固定番号1805として指定されたユニットを割り当て、解析1807に解析済みを記憶し、S1602に戻る。一方、指定された固定ユニットが空いていない場合には、S1607において、情報処理装置300のCPU201は、ユニットNo.1806に手撒きを割り当て、解析1807に解析済みを記憶し、S1602に戻る。
図18(a)〜(d)は、図16の処理を行うことで固定番号が指定されたユニットNo.が割当られていく様子を、時系列順に示した図である。図18(d)の段階では、固定番号が指定された3つの錠剤が全て割り当てられた状態であり、その後図9に示す割当処理が行われ、図18(e)のように全ての錠剤が割り当てられることになる。
以上のように、錠剤によって使用したい固定ユニットがある場合でも、予め固定ユニットを割り当てた後に図9に示す割当処理を行うことで、処方箋データに含まれる錠剤の処方量を加味して投入すべき錠剤取出手段を決定でき、処方箋データに錠剤取出装置が有する錠剤取出手段の数以上の錠剤の種類が含まれているような場合であっても、極力処方量が少ない錠剤が手撒き錠剤とするように決定でき、作業者が行う手撒き作業の負荷を低減することができる。
(第3の実施形態)
第1の実施形態及び第2の実施形態では、1日の処方量を加味した割当処理を全ての処方データについて行う例を説明したが、本実施形態では、1日の処方量を加味した割当処理は、処方データに含まれる薬品数が使用可能なユニット数をオーバする場合において行われる例を説明する。なお、ここでは第1の及び第2の実施形態と異なる部分について説明を行い、同様な部分については説明を省略する。
なお、本実施形態におけるS1601では、情報処理装置300のCPU30は、図17に示すような情報処理装置300で記憶される薬品マスタを参照し、処方箋データに含まれる錠剤が固定ユニットを使用すべき錠剤であるかの情報を取得している。
ここでは例として、患者名:テスト 太郎、用法:分3毎食後7日分(包数21包)、登録薬品名は○錠(朝昼夕 各1錠 1日3錠)、△錠(朝昼夕 各1錠 1日3錠)、□錠(朝昼夕 各1錠 1日3錠)の処方内容で説明する。S802で受信する処方箋データとしては、図21(a)に示す、薬品名1801、服用量1802、服用量から求まる1日分の処方量(1日量)1803、手撒きフラグ1804、固定番号1805、ユニットNo.1806、固定ユニット割当処理の解析済みであるかを示す解析1807を有するデータとして記憶される。
図19は、第3の実施形態に係る割当処理の流れを説明するフローチャートであり、図8のS803で行われる処理である。このような制御は、情報処理装置のCPU11が記憶されている制御プログラムを読み出して実行することによって実現される。図21(a)〜(e)は、図19の処理を行うことでユニットNo.が割当られていく様子を、時系列順に示した図である。
S1901では、情報処理装置300のCPU30は、固定ユニットNo.割当処理を行う。ここで行われる固定ユニットNo.割当処理は、第2の実施形態と同様であるため説明を省略する。図21(a)に示すテーブルは、固定ユニットの割当処理を行う前の状態であり、図21(b)に示すテーブルは、固定ユニットの割当処理が終了した後の状態を示す。
S1902では、情報処理装置300のCPU201は、図21(b)に示す空きユニット数がユニットNo.1808が設定されていない薬品数以下であるかの判断を行う。ここで薬品数より多いと判断された場合に、S1903に進み図9(第1の実施形態)で説明した錠剤数の多い順の割当処理を行う。
一方S1902において、空きユニット数がユニットNo.1808が設定されていない薬品数以下であると判断された場合、すなわちユニット数が十分に足りている場合には、図9のように錠剤数の多い順に割当処理を行う必要は必ずしもなく、図20に示すような処方データの登録順で割当処理を行えばよい。
図20のS2001では、情報処理装置300のCPU30は、図19に示すような情報処理装置300で記憶される薬品マスタを参照し、処方箋データに含まれる錠剤が手撒きすべき錠剤であるかの情報を取得する。取得された後が図21(c)の状態である。
S2002では、情報処理装置300のCPU30は、未設定の錠剤があるかを判断する。具体的には、固定ユニット割当処理が終わり図21(c)に示すようなテーブルにおいて、ユニットNo.1806が未設定の錠剤がある場合に、未設定の錠剤があると判断してS2003に遷移し、未設定の錠剤が無い場合に未設定の錠剤がないと判断される。ここで未設定の錠剤が無いと判断された場合には、処方箋データに含まれる錠剤の投入先が全て割り当てられているといえるため、S804に遷移する。
S2003では、情報処理装置300のCPU30は、S2001で特定された割当対象の薬品名の手撒きフラグ1804がONであるかを判断する。手撒きフラグがONである場合には、S2006に遷移し、ユニットNo.1806に手撒きすべき錠剤であることを登録し、S2002に戻る。一方、手撒きフラグ1804がOFFである場合には、S2004に遷移し、未設定の錠剤取出ユニット番号を取得する。ここで取得する錠剤取出ユニット番号は、小さい順に取得してもよいが、錠剤取出ユニットの使用頻度等の他の条件を加味して取得してきてもよい。使用頻度が少ない順に取得してくることにより、特定の錠剤取出ユニットだけが集中して使用されてしまうことを防止でき、錠剤供給装置の寿命を延ばすことができる。そしてS2005では、情報処理装置300のCPU30は、S908で取得したユニットNo.を割当てる。
以上のように、空きユニット数がユニットNo.1808が設定されていない薬品数以下であると判断された場合、すなわちユニット数が十分に足りる場合には、錠剤数の多い順に割当処理を行わず、一方割り当て可能なユニット数がない場合には錠剤数の多い順に割当処理が行われれば、第1の実施形態と同様に極力処方量が少ない錠剤が手撒き錠剤とするように決定でき、作業者が行う手撒き作業の負荷を低減することができる。
なお、本実施形態においては、S1902において、空きユニット数が残りの薬品数以下であるかの判断は手撒き指定された錠剤を加味せずに行ったが、予め手撒きフラグを取得した後に、空きユニットの数が、手撒きフラグがONとなっている薬品を除外した薬品数以下かどうか判断してもよい。
また、本実施形態においては、S1901で固定ユニットの割当処理を行った後に、空きユニット数が残りの薬品数以下であるかの判断を行ったが、S1901の処理は必須ではなく、固定ユニットが無い場合にこのような空きユニット数を加味した処理を行ってもよい。
(第4の実施形態)
第1乃至第3の実施形態の例では、錠剤数の多い順に割当処理を行う際に、一部の錠剤が取り出されている錠剤シートの存在を考慮していなかったが、本実施形態では一部の錠剤が取り出されている錠剤シートが存在する場合(以下、端数の錠剤とも称する)を考慮した割当処理を説明する。このような端数の錠剤がある場合には、端数分は手撒き投入部104に投入し、全ての錠剤がそろっている錠剤シートは錠剤取出ユニット1にセットし、手撒き投入部104の錠剤の分包が終わり次第、取出ユニットから取り出された錠剤を用いた分包が連続的に行われることになる。
図22は、図9の割当処理に換わる割当処理を示すフローチャートである。このような制御は、報処理装置300のCPU11が記憶されている制御プログラムを読み出して実行することによって実現される。
ここでは例として、患者名:テスト 太郎、用法:分3毎食後7日分(包数21包)、登録薬品名は○錠(朝昼夕 各1錠 1日3錠 端数7錠 1シート錠剤数14錠)、△錠(朝昼夕 各1錠 1日3錠 端数0錠 1シート錠剤数10錠)、□錠(朝昼夕 各1錠 1日3錠 端数0錠 1シート錠剤数10錠)、△△錠(朝昼夕 各1錠 1日3錠 端数0錠 1シート錠剤数10錠)、□□錠(朝昼夕 各1錠 1日3錠 端数0錠 1シート錠剤数10錠)、○○○錠(朝昼夕 各1錠 1日3錠 端数0錠 1シート錠剤数10錠)、○○○○錠(朝昼夕 各1錠 1日3錠 端数0錠 1シート錠剤数10錠)の処方内容で説明する。また、錠剤のシート錠剤数はS802で受信した処方箋データ内に記述されていてもよいし、図17の薬品マスタより取得してもよい。さらに、錠剤の端数は、S802で受信した処方箋データ内に記述されてもよいし、前回の包数と1シート錠剤数より、自動計算してもよい。例えば、前回の包装時の包数21包、○錠(1シート錠剤数14錠)の場合、21包に対して合計21錠必要である為、21錠より14錠を減算し、残りが端数となる。
図23の(a)〜(f)は、図19の処理を実行することでユニットNo.が割当られていく様子を、時系列順に示したテーブルの一例である。図23(a)は、図19のS1901が行われる前の状態であり、図23(b)〜(f)は、図22に示す割当処理を時系列で示している。テーブルには、例えば薬品名2301、服用量2302、服用量から求まる1日分の処方量(1日量)2303、端数となっており、手撒きされる予定の錠剤数を示す端数2304、1シート錠剤数2305、合計シート数2306、手撒きフラグ2307、固定番号2308、ユニットNo.2309、解析2310を有するデータが記憶されている。
S2201では、情報処理装置300のCPU30は、図17に示すような情報処理装置300で記憶される薬品マスタを参照し、処方箋データに含まれる錠剤が手撒きすべき錠剤であるかの情報を取得する。そして図23(c)に示すように取得した結果を処方箋データテーブルの手撒きフラグ1104の欄に記憶する。
S2202では、情報処理装置300のCPU30は、未設定の錠剤があるかを判断する。具体的には、図23に示すようなテーブルにおいて、ユニットNo.2309が未設定の錠剤がある場合に、未設定の錠剤があると判断し、未設定の錠剤が無い場合に未設定の錠剤がないと判断される。ここで未設定の錠剤が無いと判断された場合には、処方箋データに含まれる錠剤の投入先が全て割り当てられているといえるため、S804に遷移する。
一方S2202で未設定の錠剤があると判断された場合には、S2203に遷移し、情報処理装置300のCPU30は、錠剤取出ユニットの割当上限に達しているかを判断する。具体的には、錠剤供給装置10に搭載されている錠剤取出ユニット1に空きがあるかを判断する。既に6つ全ての錠剤取出ユニットがいずれかの錠剤に割当てられており、錠剤取出ユニット1に空きがないと判断される場合に、錠剤取出ユニットの割当上限に達していると判断される。そして、S2203で割当上限に達している場合には、S2207に遷移し残っている錠剤全てのユニットNo.2309に手撒き錠剤であることを割り当てる。一方、割当上限に達していない場合には、S2205に遷移する。
S2205では、情報処理装置300のCPU30は、処方箋データの未設定の錠剤のうち、全日分の処方量から端数2304を減じた錠剤数が最も多い薬品名を特定する。すなわち、錠剤取出ユニットで取り出される錠剤数が最も多い薬品名を特定する。具体的には、図23(c)に示すようなテーブルにおいて、ユニットNo.2309が未設定の錠剤のうち、全日分の処方量から端数2304を減じた錠剤数が最も多い錠剤の薬品名を特定する。
図23(d)のように、固定番号2308が割り当てられているユニット以外のユニットのうち、錠剤ユニットから取り出される錠剤数が最も多い20錠の△錠、□錠、△△錠、□□錠、○○○錠が特定される。なお、図23(d)のように同じ錠剤数の薬品名が複数ある場合には、処方箋データに登録されている順に特定すればよい。すなわち、ここで錠剤ユニットを用いて取り出される錠剤数が最も多い薬品名から特定することにより、手撒きされる錠剤数を極力減らすことができる。
S2206では、情報処理装置300のCPU30は、S2205で特定された割当対象の薬品名の手撒きフラグ2307がONであるかを判断する。手撒きフラグがONである場合には、S2307に遷移し、ユニットNo.2309に手撒きすべき錠剤であることを登録し、S2202に戻る。一方、手撒きフラグ2307がOFFである場合には、S2208に遷移し、未設定の錠剤取出ユニット番号を取得する。ここで取得する錠剤取出ユニット番号は、小さい順に取得してもよいが、錠剤取出ユニットの使用頻度等の他の条件を加味して取得してきてもよい。使用頻度が少ない順に取得してくることにより、特定の錠剤取出ユニットだけが集中して使用されてしまうことを防止でき、錠剤供給装置の寿命を延ばすことができる。そしてS2209では、情報処理装置300のCPU30は、S2208で取得したユニットNo.を割当てる。
以上説明したように、処方箋データに含まれる錠剤の処方量を加味して投入すべき錠剤取出手段を決定することにより、処方箋データに錠剤取出装置が有する錠剤取出手段の数以上の錠剤の種類が含まれているような場合であっても、極力処方量が少ない錠剤が手撒き錠剤とするように決定でき、作業者が行う手撒き作業の負荷を低減することができる。
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、1つの機器からなる装置に適用してもよい。なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置の情報処理装置が前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
したがって、本発明の機能処理を情報処理装置で実現するために、前記情報処理装置にインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RWなどがある。また、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などもある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理を情報処理装置で実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行して情報処理装置にインストールさせて実現することも可能である。
また、情報処理装置が、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、情報処理装置上で稼動しているOSなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、情報処理装置に挿入された機能拡張ボードや情報処理装置に接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。