IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ヴェーエムイー ホーランド ベー. ヴェー.の特許一覧

特表2024-528863分配システムから個別の薬剤を段階的に分配する方法、及びシステムの動作を制御する方法
<>
  • 特表-分配システムから個別の薬剤を段階的に分配する方法、及びシステムの動作を制御する方法 図1
  • 特表-分配システムから個別の薬剤を段階的に分配する方法、及びシステムの動作を制御する方法 図2
  • 特表-分配システムから個別の薬剤を段階的に分配する方法、及びシステムの動作を制御する方法 図3
  • 特表-分配システムから個別の薬剤を段階的に分配する方法、及びシステムの動作を制御する方法 図4
  • 特表-分配システムから個別の薬剤を段階的に分配する方法、及びシステムの動作を制御する方法 図5
  • 特表-分配システムから個別の薬剤を段階的に分配する方法、及びシステムの動作を制御する方法 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-08-01
(54)【発明の名称】分配システムから個別の薬剤を段階的に分配する方法、及びシステムの動作を制御する方法
(51)【国際特許分類】
   A61J 3/00 20060101AFI20240725BHJP
【FI】
A61J3/00 310F
A61J3/00 310E
【審査請求】未請求
【予備審査請求】有
(21)【出願番号】P 2024504006
(86)(22)【出願日】2022-07-29
(85)【翻訳文提出日】2024-03-15
(86)【国際出願番号】 EP2022071447
(87)【国際公開番号】W WO2023006998
(87)【国際公開日】2023-02-02
(31)【優先権主張番号】2028895
(32)【優先日】2021-07-30
(33)【優先権主張国・地域又は機関】NL
(81)【指定国・地域】
(71)【出願人】
【識別番号】595090635
【氏名又は名称】ヴェーエムイー ホーランド ベー. ヴェー.
【氏名又は名称原語表記】VMI HOLLAND B. V.
(74)【代理人】
【識別番号】110002000
【氏名又は名称】弁理士法人栄光事務所
(72)【発明者】
【氏名】ブラッケー,マルティヌス ヨハネス ドナトゥス
(72)【発明者】
【氏名】ヴァン ローン,ピーター
(72)【発明者】
【氏名】ヴァン ヴォーン,パトリック
【テーマコード(参考)】
4C047
【Fターム(参考)】
4C047CC15
4C047CC16
4C047JJ01
4C047JJ06
4C047JJ12
4C047JJ25
4C047JJ31
(57)【要約】
本発明は、1つ又は複数のフィーダユニットを収容し、1つ又は複数のフィーダユニットからある量の個別の薬剤を選択的に分配するように配置された分配システムから個別の薬剤を段階的に分配する方法に関し、上記システムは、分配位置のアレイが設けられた分配装置を備え、分配装置には、分配位置のアレイの各々において、フィーダユニットのうちの1つのためのホルダと、放出された薬剤を通過させる貫通開口部とが設けられ、本方法は、非リアルタイム接続を介して、分配位置のアレイのうちの1つの分配位置に、分配パラメータを示すデータを含む分配コマンドを送信するステップと、分配位置のアレイのうちの上記分配位置において分配コマンドをバッファリングするステップと、リアルタイム接続を介して、分配位置のアレイのうちの上記分配位置に分配トリガを送信し、それにより、フィーダユニットを、フィーダユニットから個別の薬剤を分配するようにトリガするステップとを含む。
【選択図】なし
【特許請求の範囲】
【請求項1】
1つ又は複数のフィーダユニットを収容し、前記1つ又は複数のフィーダユニットからある量の個別の薬剤を選択的に分配するように配置された分配システムから、個別の薬剤を段階的に分配する方法であって、前記システムが、
分配位置のアレイが設けられた分配装置であって、前記分配位置のアレイの各々において、前記フィーダユニットのうちの1つのためのホルダと、放出された薬剤を通過させる貫通開口部とが設けられている分配装置
を備え、
前記方法が、
- 非リアルタイム接続を介して、前記分配位置のアレイのうちの分配位置に、分配パラメータを示すデータを含む分配コマンドを送信するステップと、
- 前記分配位置のアレイのうちの前記分配位置において前記分配コマンドをバッファリングするステップと、
- リアルタイム接続を介して、前記分配位置のアレイのうちの前記分配位置に分配トリガを送信し、それにより、フィーダユニットを、前記フィーダユニットから個別の薬剤を分配するようにトリガするステップと、
を含む方法。
【請求項2】
分配コマンドを送信する前記ステップが、分配トリガを送信する前記ステップに先立って分配コマンドを送信することを含む、請求項1に記載の方法。
【請求項3】
分配コマンドを送信する前記ステップが、前記分配位置のアレイのうちの前記分配位置に複数の分配コマンドを送信することを含む、請求項1又は2に記載の方法。
【請求項4】
前記分配コマンドの前記データが、分配すべき個別の薬剤の数に関する情報、及び/又は、前記数の個別の薬剤を分配する方法に関するパラメータを含む、請求項1、2又は3に記載の方法。
【請求項5】
分配コマンドを送信する前記ステップが、前記分配コマンドにコマンドサイクル識別子を含めるステップを含む、請求項1~4のいずれか一項に記載の方法。
【請求項6】
分配コマンドを送信する前記ステップが実行されるたびに、コマンドサイクル識別子を含める前記ステップが、前記コマンドサイクル識別子を調整することを含む、請求項5に記載の方法。
【請求項7】
分配トリガを送信する前記ステップが、前記分配トリガとともにトリガサイクル識別子を送信するステップを含む、請求項1~6のいずれか一項に記載の方法。
【請求項8】
分配トリガを送信する前記ステップが実行されるたびに、トリガサイクル識別子を含める前記ステップが、前記トリガサイクル識別子を調整することを含む、請求項7に記載の方法。
【請求項9】
前記コマンドサイクル識別子及び前記トリガサイクル識別子が、実質的に互いに同一である、請求項5又は7に記載の方法。
【請求項10】
前記分配位置のアレイのうちの前記分配位置において、前記分配トリガが受信されたとき、前記分配位置において対応する分配コマンドが受信されているか否かをチェックすることを含む、請求項1~9のいずれか一項に記載の方法。
【請求項11】
分配コマンドが受信されているか否かをチェックすることが、
- 分配コマンドを探すステップと、
- 分配コマンドが見つかった場合、前記見つかった分配コマンドの前記コマンドサイクル識別子を確認するステップと、
- 前記分配トリガの前記トリガサイクル識別子を、前記確認されたコマンドサイクル識別子と比較するステップと、
- 前記コマンドサイクル識別子及び前記トリガサイクル識別子が実質的に互いに同一である場合、個別の薬剤の分配を開始するステップと、
を含む、請求項9又は10に記載の方法。
【請求項12】
- 複数の分配コマンドが見つかった場合、前記見つかった分配コマンドの各々の前記コマンドサイクル識別子を確認するステップと、
- 前記分配トリガの前記トリガサイクル識別子を、前記確認されたコマンドサイクル識別子の各々と比較するステップと、
- 実質的に同一のコマンドサイクル識別子が見つかった場合、前記対応する分配コマンドを選択し、前記対応する分配コマンドの前記データに基づいて個別の薬剤の分配を開始するステップと、
を含む、請求項11に記載の方法。
【請求項13】
- 対応する分配コマンドが見つからない場合、及び任意選択的に、後続の分配コマンドが見つかった場合、エラー状況をコントローラに報告するステップ
を含む、請求項11又は12に記載の方法。
【請求項14】
エラー状況の報告が、前記非リアルタイム接続を介して、且つ/又は前記リアルタイム接続を介して行われる、請求項13に記載の方法。
【請求項15】
エラー状況の報告時に、前記エラー状況に関する情報を受信するために、前記分配位置のアレイのうちの1つ又は複数の分配位置に問い合わせることを含む、請求項13又は14に記載の方法。
【請求項16】
前記分配位置のアレイのうちの前記1つ又は複数の分配位置に問い合わせることが、前記非リアルタイム接続を介して実行される、請求項15に記載の方法。
【請求項17】
エラー状況の報告時、前記分配システムを一時停止させることを含む、請求項13~16のいずれか一項に記載の方法。
【請求項18】
前記分配システムを一時停止させるとき、前記分配位置のアレイの各分配位置に、1つ又は複数のバッファリングされた分配コマンドを削除するコマンドを送信することを含み、前記コマンドは、前記非リアルタイム接続を介して送信される、請求項17に記載の方法。
【請求項19】
前記分配位置のアレイのうちの分配位置が、1つの分配位置又は分配位置のアレイを含む、請求項1~18のいずれか一項に記載の方法。
【請求項20】
フィーダユニットから個別の薬剤を段階的に分配する分配システムであって、1つ又は複数のフィーダユニットを収容し、前記1つ又は複数のフィーダユニットからある量の個別の薬剤を選択的に分配するように配置されており、
平面内に隣接して配置された分配位置のアレイが設けられた分配装置であって、前記分配位置のアレイの各々において、前記フィーダユニットのうちの1つのためのホルダと、放出された薬剤を通過させる貫通開口部とが設けられている分配装置と、
前記分配システム及び前記分配装置上に配置された前記フィーダユニットの作動を制御する制御ユニットと、
を備え、
前記制御ユニットが、非リアルタイム接続によって前記分配位置のアレイの各々に作動的に接続された非リアルタイムコントローラと、リアルタイム接続によって前記分配位置のアレイの各々に作動的に接続されたリアルタイムコントローラとを備え、
前記コントローラが、
- 前記非リアルタイム接続を介して、前記分配位置のアレイのうちの分配位置に、分配パラメータを示すデータを含む分配コマンドを送信し、
- 前記分配位置のアレイのうちの前記分配位置において前記分配コマンドがバッファリングされるのを可能にし、
- 前記リアルタイム接続を介して、分配位置のうちの前記分配位置に分配トリガを送信し、それにより、フィーダユニットを、前記フィーダユニットから個別の薬剤を分配するようにトリガする
ように構成されている、分配システム。
【請求項21】
前記非リアルタイム接続が、Ethernet接続及び非リアルタイムバスを含む群から選択され、且つ/又は、前記リアルタイム接続が、リアルタイムバス、EthercatTM、VaranTM及びハードウェアI/Oラインを含む群から選択される、請求項20に記載の分配システム。
【請求項22】
システムの動作を制御する方法であって、前記システムが1つ又は複数の別個のモジュールを備え、前記方法が、
- 非リアルタイムコントローラによって、前記1つ又は複数の別個のモジュールによって実行すべき1つ又は複数のタスクを含む実行計画を決定するステップと、
- 前記非リアルタイムコントローラにおいて、前記実行計画の前記決定されたタスクの各々について、前記タスクを実行しなければならない前記別個のモジュールのうちの1つにタスクパラメータコマンドを送信することであって、前記タスクパラメータコマンドが、前記タスクを実行するために必要なパラメータを含む、送信すること、及び、関連するタスクトリガコマンドをリアルタイムコントローラに送信することであって、前記タスクトリガコマンドが、前記タスクトリガコマンドが関連付けられている前記タスクを実行するように前記それぞれのモジュールをトリガするように、前記リアルタイムコントローラに命令するように構成される、送信することを行うステップと、
- 前記リアルタイムコントローラにおいて前記タスクトリガコマンドが受信されると、前記リアルタイムコントローラにおいて前記タスクトリガコマンドをキューに入れるステップと、
- 前記リアルタイムコントローラにおいて、前記キューに入れられたタスクトリガコマンドを実行して、前記関連するタスクパラメータコマンドに示されるように前記タスクを実行するように前記それぞれのモジュールをトリガするステップと、
を含む、方法。
【請求項23】
前記実行計画を決定する前記ステップが、前記タスクを実行する必要がある順序を決定することと、前記実行計画に実行すべき前記タスクを前記決定された順序で含めることとを含む、請求項22に記載の方法。
【請求項24】
前記リアルタイムコントローラが、前記キューに入れられたタスクトリガコマンドを、前記リアルタイムコントローラにおいて前記タスクトリガコマンドが受信されキューに入れられた順序で実行する、請求項23に記載の方法。
【請求項25】
前記キューに入れられたタスクトリガコマンドを実行する前記ステップが、前記キューに入れられたタスクトリガコマンドを1つずつ実行することを含む、請求項22~24のいずれか一項に記載の方法。
【請求項26】
前記実行計画の前記タスクに関連して送信される前記タスクパラメータコマンド及び前記タスクトリガコマンドの各々に、同期識別子が提供される、請求項22~25のいずれか一項に記載の方法。
【請求項27】
前記リアルタイムコントローラにおいて、前記同期識別子を使用することにより、前記1つ又は複数の別個のモジュールによって実行され且つ/又は実行されるべき前記1つ又は複数のタスクを整列させるステップを含む、請求項26に記載の方法。
【請求項28】
前記1つ又は複数のタスクを整列させる前記ステップが、前記リアルタイムコントローラにおいて、前記リアルタイムコントローラにおいて前記関連するタスクトリガコマンドを実行することによって、タスクを実行するようにモジュールをトリガした後、次のタスクが目下実行されている前記タスクに依存するか否かをチェックすることを含む、請求項27に記載の方法。
【請求項29】
前記次のタスクが目下実行されている前記タスクに依存すると判断された場合に、前記リアルタイムコントローラにおいて、前記目下のタスクを実行している前記モジュールから、前記タスクが前記次のタスクを実行する前に完了していることが確認される確認を待つことを含む、請求項25又は28に記載の方法。
【請求項30】
前記1つ又は複数の別個のモジュールの各々において、前記モジュールによってタスクが完了した場合に、前記モジュールによって前記タスクが完了したことを示す応答メッセージを前記モジュールから前記非リアルタイムコントローラに送信することを含む、請求項29に記載の方法。
【請求項31】
特定のモジュールにおけるタスクの実行が失敗し且つ/又は完了することができない場合に、前記モジュールから前記非リアルタイムコントローラに前記モジュールのエラー状態を報告することを含み、前記エラー状態が報告されると、前記非リアルタイムコントローラによってエラー処理モードがトリガされる、請求項30に記載の方法。
【請求項32】
前記エラー処理モードが、
- 前記非リアルタイムコントローラにおいて、以前に実行されたタスクの前記1つ又は複数の別個のモジュールからのすべての応答メッセージを待つステップと、
- 前記非リアルタイムコントローラから送信されたすべてのタスクパラメータコマンド及びタスクトリガコマンドを消去するステップと、
- 前記エラー状態によって示されるエラーを自動的に修正することができるか否かを判断するステップと、
- 前記エラーを自動的に修正することができると判断された場合、前記実行計画を再度決定し、前記再度決定された実行計画の前記タスクに関するタスクパラメータコマンド及びタスクトリガコマンドを送信するステップと、
- 前記エラーを自動的に修正することができないと判断された場合、前記エラーをオペレータに報告し、前記オペレータが前記エラーに対する修正を入力することができるようにするステップと、
- 前記オペレータが前記エラーに対する修正を入力することができるようにした後、前記実行計画をさらなるエラーなしに完了することができるか否かを判断するステップと、
- 前記実行計画をさらなるエラーなしに完了することができないと判断された場合、前記実行計画の実行を停止するステップと、
- 前記実行計画をさらなるエラーなしに完了することができると判断された場合、前記実行計画を再度決定し、前記再度決定された実行計画の前記タスクに関するタスクパラメータコマンド及びタスクトリガコマンドを送信するステップと、
を含む、請求項31に記載の方法。
【請求項33】
1つ又は複数の別個のモジュールと、非リアルタイムコントローラと、リアルタイムコントローラとを有するシステムであって、
前記非リアルタイムコントローラが、前記1つ又は複数の別個のモジュールの各々及び前記リアルタイムコントローラに作動的に接続されており、
前記リアルタイムコントローラが、前記1つ又は複数の別個のモジュールの各々に且つ前記非リアルタイムコントローラに作動的に接続されており、
前記非リアルタイムコントローラが、
- 前記1つ又は複数の別個のモジュールによって実行すべき1つ又は複数のタスクを含む実行計画を決定することと、
- 前記実行計画の前記決定されたタスクの各々について、前記タスクを実行しなければならない前記別個のモジュールのうちの1つにタスクパラメータコマンドを送信することであって、前記タスクパラメータコマンドが、前記タスクを実行するために必要なパラメータを含む、送信すること、及び、関連するタスクトリガコマンドを前記リアルタイムコントローラに送信することであって、前記タスクトリガコマンドが、前記タスクトリガコマンドが関連付けられている前記タスクを実行するように前記それぞれのモジュールをトリガするように、前記リアルタイムコントローラに命令するように構成されている、送信することと、
を行うように構成されており、
前記リアルタイムコントローラが、
- 前記リアルタイムコントローラにおいて前記タスクトリガコマンドが受信されると、前記タスクトリガコマンドをキューに入れることと、
- 前記キューに入れられたタスクトリガコマンドを実行して、前記関連するタスクパラメータコマンドに示されるように前記タスクを実行するように前記それぞれのモジュールをトリガすることと、
を行うように構成されている、システム。
【請求項34】
前記リアルタイムコントローラが、プログラマブルロジックコントローラ(PLC)及びリモートテレメトリユニット(RTU)を含む群から選択されている、請求項33に記載のシステム。
【請求項35】
前記非リアルタイムコントローラが、Ethernet接続等の非リアルタイム接続を介して、前記1つ又は複数の別個のモジュールの各々及び前記リアルタイムコントローラに作動的に接続され、前記リアルタイムコントローラが、EtherCAt及び/又はハードウェアI/Oライン等のリアルタイム接続を介して、前記1つ又は複数の別個のモジュールの各々に作動的に接続される、請求項33又は34に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分配システムから個別の薬剤を段階的に分配する方法と、フィーダユニットから個別の薬剤を段階的に分配する分配システムとに関する。さらに、本発明は、システムの動作を制御する方法と、1つ又は複数の別個のモジュールを有するシステムとに関する。
【背景技術】
【0002】
分配システムから個別の薬剤を段階的に分配する方法は、国際公開第2014/171818号パンフレットから既知であり、この分配システムは、一連のフィーダユニットを収容し、1つ又は複数のフィーダユニットからある量の薬剤を選択的に分配し、その分配された量を包装するように配置されており、本システムは、平面内に隣接して配置された分配位置のアレイが設けられた分配装置であって、分配位置のアレイの各々において、フィーダユニットのうちの1つのためのホルダと、放出された個別の薬剤を通過させる貫通開口部とが設けられた分配装置と、分配装置の下方に配置された回収フレームであって、回収フレーム及び分配装置が互いに対して移動可能であり、回収フレームに一連の回収トレイが設けられ、各トレイが、上記平面に対して実質的に平行に且つ貫通開口部のうちの少なくとも2つの長さにわたって延びる長手方向を有する長尺形状を有し、トレイが、分配装置に面する側に、放出された個別の薬剤を捕集するための受入開口部を備えるとともに、各々、排出部を備える、回収フレームと、回収フレームの下方に配置された、トレイの排出部から捕獲された個別の薬を回収し、固形薬剤を包装する包装ユニットと、分配システム及び分配装置上に配置されたフィーダユニットの作動を制御するコントローラとを備える。コントローラは、分配システムを、非常に高速に1つ又は複数の個別の薬剤をパウチに包装するように制御するように構成され、各パウチは、所定の数及びタイプの個別の薬と、各パウチが意図される患者に関連する所定のデータとを含む。
【発明の概要】
【発明が解決しようとする課題】
【0003】
既知の分配システムの重要な態様は、フィーダユニットを、そこから個別の薬剤を分配するために制御することに関し、これは、フィーダユニットを駆動して、そこから1つ又は複数の個別の薬剤が分配されるようにすることと理解することができる。例えば、既知の分配システムは、フィーダユニットを保持するための1000を超える位置を有することができ、1000を上回る位置の大部分、例えば300を超える位置を、個別の薬剤を分配するために使用することができる。1秒につき3個以上のパウチの速度では、分配すべき個別の薬剤の数、個別の薬剤を分配するプロセスを制御するパラメータ、及び分配動作を開始すべきことを示すリアルタイムトリガ信号に関するデータを用いて、300を上回る位置を連続的に制御する必要がある。記載されている方法の不都合は、リアルタイムトリガ信号の受信が早すぎることにより、例えば、1つ又は複数の個別の薬剤が誤ったパウチに包装される、分配エラーにつながる可能性があるということである。リアルタイムトリガ信号の受信が遅すぎると、分配プロセスの遅延につながる可能性がある。
【0004】
これらの不都合を克服するため、既知の分配システムは、EthercatTM又はVaranTM等のリアルタイムバスを介してフィーダユニットを完全に制御する。フィーダユニットを制御するためにリアルタイムバスを使用することの不都合は、こうしたリアルタイムバスがかなり高価であるということである。さらに、リアルタイムバスを介して制御データを受信する各フィーダユニットでは、そのリアルタイムバス上の各分配位置がリアルタイムバス上の独自のアドレスを有していなければならないという要件があり、これにより、不都合なことに、各分配位置の費用がかなり高くなる。フィーダユニットを制御するためにリアルタイムバスを使用することのさらなる不都合は、こうしたリアルタイムバスを介して送信することができるデータの量が比較的限られているということである。
【課題を解決するための手段】
【0005】
本発明の目的は、従来技術の1つ又は複数の不都合を改善するか若しくは排除し、改良された分配方法若しくはシステムを提供し、又は少なくとも代替的な分配方法若しくはシステムを提供することである。
【0006】
第1態様によれば、本発明は、1つ又は複数のフィーダユニットを収容し、1つ又は複数のフィーダユニットからある量の個別の薬剤を選択的に分配するように配置された分配システムから、個別の薬剤を段階的に分配する方法を提供し、上記システムは、
分配位置のアレイが設けられた分配装置であって、分配位置のアレイの各々において、フィーダユニットのうちの1つのためのホルダと、放出された薬剤を通過させる貫通開口部とが設けられている分配装置と、
分配装置及び分配装置上に配置されたフィーダユニットの作動を制御するコントローラと、
を備え、
本方法は、
- 非リアルタイム接続を介して、分配位置のアレイのうちの分配位置に、分配パラメータを示すデータを含む分配コマンドを送信するステップと、
- 分配位置のアレイのうちの上記分配位置において分配コマンドをバッファリングするステップと、
- リアルタイム接続を介して、分配位置のアレイのうちの上記分配位置に分配トリガを送信し、それにより、フィーダユニットを、フィーダユニットから個別の薬剤を分配するようにトリガするステップと、
を含む。
【0007】
使用中、本方法により、例えば、分配すべき個別の薬剤の数、及び個別の薬剤の分配方法等のパラメータを記述する分配コマンドが、特に1つ又は複数の個別の薬剤を分配しなければならなくなる前に、非リアルタイムバスを介して分配位置うちの1つ又は複数に送信されることが可能になる。送信された分配コマンドは、それぞれの分配位置において、個別の薬剤を分配しなければならなくなるまでバッファリングされる。1つ又は複数の個別の薬剤を実際に分配しなければならないとき、分配トリガがリアルタイム接続を介して分配位置のアレイのそれぞれの分配位置に送信される。分配トリガは、それぞれの分配位置に配置されたフィーダユニットを、分配トリガを受信すると個別の薬剤を分配するようにトリガするために使用される。分配コマンドは、分配パラメータに関するデータを含むため、分配トリガよりも多くの帯域幅を必要とする。リアルタイム接続を介して分配トリガを送信する前に、非リアルタイム接続を介して分配コマンドをそれぞれの分配位置に送信することにより、分配コマンドは、リアルタイム接続と比較してはるかに安価な方法で分配位置に提供される。(すべての分配位置で同じであり得る)分配トリガのみが、リアルタイム接続を介して送信されるため、リアルタイム接続は、分配トリガを送信するために十分な帯域幅を有するだけでよい。例えば、分配トリガは数ビット幅であればよく、分配位置におけるフィーダユニットをトリガするために帯域幅はほとんど必要がない。これは、リアルタイム接続を小さく抑えることができ、それにより、フィーダユニットによる分配を制御することに関連するコストを低く抑えることができるため有利である。この結果、先行技術と比較して、個別の薬剤を段階的に分配するより安価な方法がもたらされる。
【0008】
本開示の文脈では、非リアルタイムは、あらかじめ定義された時間枠内での応答が保証されていないプロセス、イベント、又は行為を示すために使用される用語として理解することができる。WindowsTMのような大部分の一般的な汎用コンピュータシステムは、非リアルタイムである。リアルタイムは、入力データが指定された時間(デッドライン)内、通常は相対的短時間内に処理されることが保証されているプロセス、イベント、又は行為を示す用語として理解することができる。
【0009】
一実施形態では、分配コマンドを送信するステップは、分配トリガを送信するステップに先立って分配コマンドを送信することを含む。本開示の文脈では、分配コマンドを先立って送信することは、分配コマンドが、分配トリガが到着する前に分配コマンドが到着するような時点で送信されることとして理解することができる。これは、分配トリガを受信した後、直ちに個別の薬剤の分配を開始することができることを可能にするため、有利である。
【0010】
一実施形態では、分配コマンドを送信するステップは、分配位置のアレイのうちの上記分配位置に複数の分配コマンドを送信することを含む。動作中、分配コマンドの各々は、分配コマンドのキューがそれぞれの分配位置で利用可能であるように、それぞれの分配位置でバッファリングされる。これにより、分配コマンドの欠落により分配のステップが中断されることが防止される。
【0011】
一実施形態では、分配コマンドのデータは、分配すべき個別の薬剤の数に関する情報、及び/又は、上記数の個別の薬剤を分配する方法に関するパラメータを含む。したがって、データは、分配を開始するトリガを除いて、個別の薬剤を分配することができるために必要なすべてのパラメータを含むことができる。
【0012】
一実施形態では、分配コマンドを送信するステップは、分配コマンドにコマンドサイクル識別子を含めるステップを含む。その一実施形態では、分配コマンドを送信するステップが実行されるたびに、コマンドサイクル識別子を含めるステップは、コマンドサイクル識別子を調整することを含む。さらなる実施形態では、分配トリガを送信するステップは、分配トリガとともにトリガサイクル識別子を送信するステップを含む。好ましくは、分配トリガを送信するステップが実行されるたびに、トリガサイクル識別子を含めるステップは、トリガサイクル識別子を調整することを含む。さらに好ましくは、コマンドサイクル識別子及びトリガサイクル識別子は、実質的に互いに同一である。この実施形態によれば、各分配コマンドに、一意のコマンドサイクル識別子が提供され、各分配トリガに、一意のトリガサイクル識別子が提供され、ここでは、一意のコマンドサイクル識別子及び一意のトリガサイクル識別子は、実質的に互いに同一である。したがって、コマンドサイクル識別子及びトリガサイクル識別子は、分配位置において分配トリガが受信されたときに、いずれの分配コマンドを実行する必要があるかを判断するために使用することができる。これは、分配位置において分配トリガを受信したときに誤った分配コマンドが実行されることを防止するのに役立つ。
【0013】
さらに、コマンドサイクル識別子及びトリガサイクル識別子が昇順又は降順に調整される場合、それらは、複数の分配コマンドの順序におけるそれぞれの分配コマンドの位置を示すためにも使用することができる。
【0014】
一実施形態では、本方法は、分配位置のアレイのうちの上記分配位置において、分配トリガが受信されたとき、その分配位置において対応する分配コマンドが受信されているか否かをチェックすることを含む。分配コマンドが受信されているか否かをチェックすることは、
- 分配コマンドを探すステップと、
- 分配コマンドが見つかった場合、見つかった分配コマンドのコマンドサイクル識別子を確認するステップと、
- 分配トリガのトリガサイクル識別子を、確認されたコマンドサイクル識別子と比較するステップと、
- コマンドサイクル識別子及びトリガサイクル識別子が実質的に互いに同一である場合、個別の薬剤の分配を開始するステップと、
を含むことができる。その一実施形態では、本方法は、
- 複数の分配コマンドが見つかった場合、見つかった分配コマンドの各々のコマンドサイクル識別子を確認するステップと、
- 分配トリガのトリガサイクル識別子を、確認されたコマンドサイクル識別子の各々と比較するステップと、
- 実質的に同一のコマンドサイクル識別子が見つかった場合、対応する分配コマンドを選択し、対応する分配コマンドのデータに基づいて個別の薬剤の分配を開始するステップと、
を含む。分配位置において、トリガサイクル識別子を有する分配トリガが受信されると、対応するコマンドサイクル識別子を有する分配コマンドがそれぞれの分配位置に存在するか否かが判断される。それぞれの分配位置において対応するコマンドサイクル識別子を有する分配コマンドが存在すると判断された場合、分配コマンドのデータに従って、それぞれの分配位置からの個別の薬剤の分配が開始される。それぞれの分配位置において対応する分配コマンドがない場合、それぞれの分配位置において薬剤は分配されない。これにより、分配トリガによって、誤った個別の薬剤の分配、又は誤った量の個別の薬剤の分配が行われることが防止される。
【0015】
好ましくは、本方法は、
- 対応する分配コマンドが見つからない場合、及び任意選択的に、後続の分配コマンドが見つかった場合、エラー状況をコントローラに報告するステップ
を含む。これは、例えば、特定の分配コマンドがないために分配システムが特定の分配コマンドを実行することができないことをオペレータに知らせることができるため、有利である。
【0016】
一実施形態では、エラー状況の報告は、非リアルタイム接続を介して、且つ/又はリアルタイム接続を介して行われる。
【0017】
一実施形態では、本方法は、エラー状況の報告時に、エラー状況に関する情報を受信するために、分配位置のアレイのうちの1つ又は複数の分配位置に問い合わせることを含む。その一実施形態では、分配位置のアレイのうちの1つ又は複数の分配位置に問い合わせることは、非リアルタイム接続を介して実行される。非リアルタイム接続を介してエラー状況に関する情報を問い合わせることにより、分配パラメータ、及びエラー状況に関する情報等、大きいデータが、非リアルタイム接続を介して転送される。これは、リアルタイム接続の帯域幅を可能な限り小さくすることができ、それにより、リアルタイム接続のコストを最小限に抑えられるため、有利である。
【0018】
一実施形態では、本方法は、エラー状況の報告時、分配システムを一時停止させることを含む。その一実施形態では、本方法は、分配システムを一時停止させるとき、分配位置のアレイの各分配位置に、1つ又は複数のバッファリングされた分配コマンドを削除するコマンドを送信することを含み、このコマンドは、非リアルタイム接続を介して送信される。この実施形態によれば、まだ実行されていない分配コマンドは、分配位置又は分配位置のクラスタに再送される。これにより、分配コマンドがスキップされるか、又は2回以上実行されることを防ぐことができ、確実な方法で分配を継続することができる。
【0019】
一実施形態では、分配位置のアレイのうちの分配位置は、1つの分配位置又は分配位置のアレイを含む。これにより、この実施形態による方法は、単一の分配コマンドで1つの分配位置又は複数の分配位置を制御(セグメント制御)することができる。
【0020】
第2態様によれば、本発明は、フィーダユニットから個別の薬剤を段階的に分配する分配システムを提供し、分配システムは、1つ又は複数のフィーダユニットを収容し、1つ又は複数のフィーダユニットからある量の個別の薬剤を選択的に分配するように配置されており、本システムは、
分配位置のアレイが設けられた分配装置であって、分配位置のアレイの各々において、フィーダユニットのうちの1つのためのホルダと、放出された薬剤を通過させる貫通開口部とが設けられている分配装置と、
分配装置及び分配装置上に配置されたフィーダユニットの作動を制御する制御ユニットと、
を備え、
制御ユニットは、非リアルタイム接続によって分配位置のアレイの各々に作動的に接続された非リアルタイムコントローラと、リアルタイム接続によって分配位置のアレイの各々に作動的に接続されたリアルタイムコントローラとを備え、
コントローラは、
- 非リアルタイム接続を介して、分配位置のアレイのうちの1つの分配位置に、分配パラメータを示すデータを含む分配コマンドを送信し、
- 分配位置のアレイのうちの上記分配位置において分配コマンドがバッファリングされるのを可能にし、
- リアルタイム接続を介して、分配位置のアレイのうちの上記分配位置に分配トリガを送信し、それにより、フィーダユニットを、フィーダユニットから個別の薬剤を分配するようにトリガする
ように構成されている。
【0021】
一実施形態では、非リアルタイム接続は、Ethernet接続及び非リアルタイムバスを含む群から選択され、且つ/又は、前記リアルタイム接続は、リアルタイムバス、EthercatTM、VaranTM及びハードウェアI/Oラインを含む群から選択される。
【0022】
第3態様によれば、本発明は、システムの動作を制御する方法を提供し、システムは、1つ又は複数の別個のモジュールを備え、本方法は、
- 非リアルタイムコントローラによって、1つ又は複数の別個のモジュールによって実行すべき1つ又は複数のタスクを含む実行計画を決定するステップと、
- 非リアルタイムコントローラにおいて、実行計画の決定されたタスクの各々について、タスクを実行しなければならない別個のモジュールのうちの1つにタスクパラメータコマンドを送信し、タスクパラメータコマンドが、タスクを実行するために必要なパラメータを含み、且つ、関連するタスクトリガコマンドをリアルタイムコントローラに送信し、タスクトリガコマンドが、タスクトリガコマンドが関連付けられているタスクを実行するようにそれぞれのモジュールをトリガするように、リアルタイムコントローラに命令するように構成される、ステップと、
- リアルタイムコントローラにおいてタスクトリガコマンドが受信されると、リアルタイムコントローラにおいてタスクトリガコマンドをキューに入れるステップと、
- リアルタイムコントローラにおいて、キューに入れられたタスクトリガコマンドを実行して、関連するタスクパラメータコマンドに示されるようにタスクを実行するようにそれぞれのモジュールをトリガするステップと、
を含む。
【0023】
従来技術では、個別の薬剤を段階的に分配する分配システム等、1つ又は複数の別個のモジュールを備えたシステムには、システムの動作を制御するプログラマブルロジックコントローラ(PLC)等のリアルタイムコントローラが設けられている。こうしたPLCは、複雑なシステムにおけるセンサ及びアクチュエータを読み取り制御するのに非常に適している。例えば、PLCは、機械的なステップを精密に一致させることができるように非常に正確なタイミングを有し、位置モータ等の所定のモータを精密に制御することができる。分配システム等の複雑なシステムでは、コントローラ、特に非リアルタイムコントローラがさらに必要であり、このコントローラは、複雑なアルゴリズムを使用して、例えば正確な量の個別の薬剤を分配するために、いずれのタスクを実行しなければならないかを判断する。例えば、分配システムは、さまざまな機械モジュールを備え、これらのモジュールは、特定のタスクを実行しなければならない場合もあれば、アイドル状態とならなければならない場合もある。非リアルタイムコントローラは、PLCを制御するために使用される。分配システムが、非常に高速の動作速度、例えば、非常に高速の分配速度を有する場合、非リアルタイムコントローラによりPLCを制御することによって、PLCが非リアルタイムコントローラからのコマンドを待たなければならないため、すぐに遅延が発生することになる。
【0024】
本発明の第3態様による方法では、リアルタイムコントローラの制御は非同期に行われる。リアルタイムコントローラの非同期制御により、非リアルタイムコントローラは、1つ又は複数の別個のモジュールからの及び/又はリアルタイムコントローラからの、確認等のフィードバックを待つ必要なしに、タスクパラメータコマンドを1つ又は複数の別個のモジュールに送信し、タスクトリガコマンドをリアルタイムコントローラに送信することができる。したがって、タスクパラメータコマンド又はタスクトリガコマンドを送信した後、非リアルタイムコントローラは、次のタスクパラメータコマンド又はタスクトリガコマンドを迅速に送信することができる。その結果として、リアルタイムコントローラは、実行すべき複数のタスクトリガコマンドをキューに入れ、したがって、実行すべき次のタスクトリガコマンドが常に提供される。したがって、非リアルタイムコントローラは、平均的に十分なタスクパラメータコマンド及びタスクトリガコマンドを送信するのに十分高速でなければならないが、毎回正確に時間通りに送信するほど高速でなくてもよい。これは、非リアルタイムコントローラの側での遅延が、リアルタイムコントローラの側での遅延につながらないことを意味すると理解することができる。これは、この方法により、システムが高速で動作することができる一方で、動作の遅延のリスクが低減するか又は排除されるため、有利である。
【0025】
一実施形態では、実行計画を決定するステップは、タスクを実行する必要がある順序を決定することと、実行計画に実行すべきタスクを決定された順序で含めることとを含む。その一実施形態では、リアルタイムコントローラは、キューに入れられたタスクトリガコマンドを、リアルタイムコントローラにおいてタスクトリガコマンドが受信されキューに入れられた順序で実行する。タスクトリガコマンドを実行すべき順序でリアルタイムコントローラに提供することにより、リアルタイムコントローラは、単に、タスクトリガコマンドを、それらが受信された順序でキューに入れて実行することができる。
【0026】
一実施形態では、キューに入れられたタスクトリガコマンドを実行するステップは、キューに入れられたタスクトリガコマンドを1つずつ実行することを含む。
【0027】
一実施形態では、実行計画のタスクに関連して送信されるタスクパラメータコマンド及びタスクトリガコマンドの各々に、同期識別子が提供される。その一実施形態では、本方法は、リアルタイムコントローラにおいて、同期識別子を使用することにより、1つ又は複数の別個のモジュールによって実行され且つ/又は実行されるべき1つ又は複数のタスクを整列させるステップを含む。本開示の文脈では、システムの動作中、1つの別個のモジュールのタスクは、別の別個のモジュールの別のタスクが完了するまで待機しなければならない場合があることが理解されなければならない。同期識別子を提供することにより、いずれのタスクを互いに整列させなければならないかが、リアルタイムコントローラに明確になる。さらに、同期識別子を用いて1つ又は複数のタスクを整列させることにより、タスクは、先行するタスクがほぼ又は完全に完了するとすぐに開始することができる。したがって、システムの動作速度は可能な限り高速に維持される。
【0028】
さらなる実施形態では、1つ又は複数のタスクを整列させるステップは、リアルタイムコントローラにおいて、リアルタイムコントローラにおいて関連するタスクトリガコマンドを実行することによって、タスクを実行するようにモジュールをトリガした後、次のタスクが目下実行されているタスクに依存するか否かをチェックすることを含む。その一実施形態では、本方法は、次のタスクが目下実行されているタスクに依存すると判断された場合に、リアルタイムコントローラにおいて、目下のタスクを実行しているモジュールから、タスクが次のタスクを実行する前に完了していることが確認される確認を待つことを含む。この実施形態によれば、有利には、次のタスクが依存する目下のタスクがほぼ又は完全に完了する前に、次のタスクがトリガ及び/又は実行されることが防止される。
【0029】
一実施形態では、本方法は、1つ又は複数の別個のモジュールの各々において、モジュールによってタスクが完了した場合に、モジュールによってタスクが完了したことを示す応答メッセージを、そのモジュールから非リアルタイムコントローラに送信することを含む。その一実施形態では、本方法は、特定のモジュールにおけるタスクの実行が失敗し且つ/又は完了することができない場合に、モジュールから非リアルタイムコントローラにモジュールのエラー状態を報告することを含み、エラー状態が報告されると、非リアルタイムコントローラによってエラー処理モードがトリガされる。モジュールが、モジュールに送信されたタスクを完了する能力がないと判断された場合、エラー状態を報告し、エラー処理モードをトリガすることにより、システムが動作し続け、間違った個別の薬を含むパウチ等、誤った製品を排出することが防止される。この実施形態によれば、システムが通常動作を継続する前にエラーが解決される。
【0030】
そのさらなる実施形態では、エラー処理モードは、
- 非リアルタイムコントローラにおいて、以前に実行されたタスクの1つ又は複数の別個のモジュールからのすべての応答メッセージを待つステップと、
- 非リアルタイムコントローラから送信されたすべてのタスクパラメータコマンド及びタスクトリガコマンドを消去するステップと、
- エラー状態によって示されるエラーを自動的に修正することができるか否かを判断するステップと、
- エラーを自動的に修正することができると判断された場合、実行計画を再度決定し、再度決定された実行計画のタスクに関するタスクパラメータコマンド及びタスクトリガコマンドを送信するステップと、
- エラーを自動的に修正することができないと判断された場合、エラーをオペレータに報告し、オペレータがエラーに対する修正を入力することができるようにするステップと、
- オペレータがエラーに対する修正を入力することができるようにした後、実行計画をさらなるエラーなしに完了することができるか否かを判断するステップと、
- 実行計画をさらなるエラーなしに完了することができないと判断された場合、実行計画の実行を停止するステップと、
- 実行計画をさらなるエラーなしに完了することができると判断された場合、実行計画を再度決定し、再度決定された実行計画のタスクに関するタスクパラメータコマンド及びタスクトリガコマンドを送信するステップと、
を含む。この実施形態によれば、本方法により、システムの動作速度を可能な限り高く維持しながら、エラーが自動的に修正されるのが可能になるため、システムの動作に対するオペレータの介入を最小限に抑えることができる。
【0031】
第4態様によれば、本発明は、1つ又は複数の別個のモジュールと、非リアルタイムコントローラと、リアルタイムコントローラとを有するシステムを提供し、
非リアルタイムコントローラは、1つ又は複数の別個のモジュールの各々及びリアルタイムコントローラに作動的に接続されており、
リアルタイムコントローラは、1つ又は複数の別個のモジュールの各々に且つ非リアルタイムコントローラに作動的に接続されており、
非リアルタイムコントローラは、
- 1つ又は複数の別個のモジュールによって実行すべき1つ又は複数のタスクを含む実行計画を決定することと、
- 実行計画の決定されたタスクの各々について、タスクを実行しなければならない別個のモジュールのうちの1つにタスクパラメータコマンドを送信することであって、タスクパラメータコマンドが、タスクを実行するために必要なパラメータを含む、送信すること、及び、関連するタスクトリガコマンドをリアルタイムコントローラに送信することであって、タスクトリガコマンドが、タスクトリガコマンドが関連付けられているタスクを実行するようにそれぞれのモジュールをトリガするように、リアルタイムコントローラに命令するように構成される、送信することと、
を行うように構成されており、
リアルタイムコントローラは、
- リアルタイムコントローラにおいてタスクトリガコマンドが受信されると、タスクトリガコマンドをキューに入れることと、
- キューに入れられたタスクトリガコマンドを実行して、関連するタスクパラメータコマンドに示されるようにタスクを実行するようにそれぞれのモジュールをトリガすることと、
を行うように構成されている。
【0032】
本発明の第4態様によるシステムは、少なくとも、本発明の第3態様による方法に関連して説明したものと同じ技術的利点を有する。
【0033】
一実施形態では、リアルタイムコントローラは、プログラマブルロジックコントローラ(PLC)及びリモートテレメトリユニット(RTU)を含む群から選択されている。
【0034】
一実施形態では、非リアルタイムコントローラは、Ethernet接続等の非リアルタイム接続を介して、1つ又は複数の別個のモジュールの各々及びリアルタイムコントローラに作動的に接続され、リアルタイムコントローラは、EtherCAt及び/又はハードウェアI/Oライン等のリアルタイム接続を介して、1つ又は複数の別個のモジュールの各々に作動的に接続される。
【0035】
本明細書に記載及び図示するさまざまな態様及び特徴は、可能な限り個々に適用することができる。これらの個々の態様、特に添付の従属請求項に記載する態様及び特徴は、分割特許出願の対象とすることができる。
【0036】
本発明について、添付図面に示す例示的な実施形態に基づいて説明する。
【図面の簡単な説明】
【0037】
図1】1つ又は複数のフィーダユニットからある量の薬剤を選択的に分配し、分配された量を包装する、多数のフィーダユニットを収容するための分配位置のアレイが設けられた分配装置を有する分配システムの概略断面図を示す。
図2図1の実施形態の分配システムの概略上面図を示す。
図3図1の分配システムから個別の薬剤を段階的に分配する方法のステップの図を示す。
図4】本発明の一実施形態によるモジュールを備えたシステムの概略的な概要を示す。
図5】エラー処理モードを有する、図4のシステムの動作を制御する方法のステップの図を示す。
図6図5のエラー処理モードのステップの図を示す。
【発明を実施するための形態】
【0038】
図1及び図2に、1つ又は複数のフィーダユニット2から、ある量の薬剤、医薬品、又は医療用の固形物、物品若しくは物質、例えば丸薬、錠剤、カプセル等を選択的に分配し、分配された量の薬剤を包装する、多数のフィーダユニット2を収容する分配システム1の概略断面を示す。薬剤は、1つずつ、個々に、別々に、又は用量単位で分配することができるという意味で、「個別」である。
【0039】
分配システム1は、薬剤を分配するように構成された分配装置3を備える。分配装置3の下方には回収装置4が配置されており、回収装置4は、分配装置3から分配された薬剤を回収するように構成されている。回収装置4の下方には包装ユニット5が配置されており、包装ユニット5は、回収された薬剤を包装するように構成されている。任意選択的に、分配システム1には、分配装置3、回収装置4及び包装ユニット5を無許可のアクセスから保護する(図示しない)ハウジングが設けられている。
【0040】
分配装置3には、キャニスタ又は錠剤ケースとしても知られる複数のフィーダユニット2を保持する(図示しない)ホルダを備えた分配位置20のアレイが設けられている。分配位置20は、回転軸Rを中心に周方向に分散配置されている。特に、図2にもっともよく示すように、分配位置20は、フィーダユニット20が回転軸Rを中心に放射状に配置されている多数の列を有する放射状格子に従って分散配置されている。
【0041】
図1にさらに示すように、分配システム1は、分配位置に関してフィーダユニット2を操作するように構成された、ロボットアーム等のロボットマニピュレータ6をさらに備える。ロボットマニピュレータ6は、分配装置3上で、その回転軸Rに又はその近くに配置されている。ロボットマニピュレータ6は、フィーダユニット2を自動で操作するように構成されており、その操作は、限定されないが、分配システム1内でのフィーダユニット2の位置決め、取り外し、再配置を含む。ロボットマニピュレータ6には、その先端部にグリッパ7が設けられており、グリッパ7は、フィーダユニット2のうちの1つを、分配装置3内に配置するか又は分配装置3から取り外すために把持するように構成されている。
【0042】
図1に示すように、回収装置4は、回収ホッパーとも呼ばれる多数の回収トレイ40を有する。各回収トレイ40は、1つ又は複数のフィーダユニット2の下方で放射状に延在し、1つ又は複数のフィーダユニット2から選択的に分配された薬剤を受けるために、分配装置2の方を向いた側で開口している。回収トレイ40は、包装ユニット5に向かって先細りになっており、回収された薬剤をトレイ40から包装ユニット5に選択的に放出することができるように、弁によって底部が閉鎖されている。
【0043】
回収トレイ40は、回収フレーム41内に配置され、回転軸Rの周りに周方向に分散配置されている。回収フレーム41は、複数の分配位置20に対して回収トレイ40を回転させるために、回転軸Rを中心に回収方向Aに回転可能である。例えば、回転は段階的な回転であって、トレイの各段階により、回収トレイ40が分配装置3内に配置された後続の一連のフィーダユニット2と整列するようにしてもよい。
【0044】
複数のトレイ40のそれぞれの図示しない弁は、複数のトレイ40のそれぞれが包装ユニット5の上方に位置するときに、回収された薬剤を複数のトレイ40のそれぞれから包装ユニット5内に放出するために開かれる。包装ユニット5は、包装材料、この例ではホイルを保持するストック部材と、薬剤に関する情報をホイルに印刷するプリンタと、薬剤を受けるようにホイルを位置決めする充填部材と、受けた薬剤の周囲にパウチを形成するためのシール部材と、その後に形成されるパウチの間の切取り線をホイルに設ける穿孔部材と、包装された薬剤を分配システム1から排出する排出部材とを備える。
【0045】
分配システム1は、分配システム1の動作を制御する制御ユニット30をさらに備える。特に、制御ユニット30には、フィーダユニット2、分配装置3、回収装置4、包装ユニット5、ロボットマニピュレータ6、及び駆動装置、センサ等の他の電子機器に、非リアルタイムバス、例えばEthernet接続等の非リアルタイム接続を介して作動的に接続された、非リアルタイムコントローラ31が設けられるとともに、フィーダユニット2、分配装置3、回収装置4、包装ユニット5、ロボットマニピュレータ6、及び駆動装置、センサ等の他の電子機器に、リアルタイムバス、例えばハードウェアI/Oライン等のリアルタイム接続を介して同様に作動的に接続されているリアルタイムコントローラ32が設けられている。非リアルタイムコントローラ31及びリアルタイムコントローラ32の各々が、プロセッサと、プロセッサによって実行されると、分配システム1に、後に詳細に説明する方法を実行させるコンピュータ命令が保存されている、非一時的コンピュータ可読媒体とを備えることができる。別法として、制御ユニット30が、プロセッサと、プロセッサによって実行されると、分配システム1に、後に詳細に説明する方法を実行させるコンピュータ命令が保存されている、非一時的コンピュータ可読媒体とを備え、非リアルタイムコントローラ31及びリアルタイムコントローラ32は、ソフトウェアベースであり且つ/又はソフトウェアプログラムの一部である。これは、非リアルタイムコントローラ31及びリアルタイムコントローラ32が、それぞれ、非リアルタイム環境及びリアルタイム環境を定義するものとして理解することができる。
【0046】
本開示の文脈では、フィーダユニット2の各々に、とりわけ、それぞれのフィーダユニット2の分配を駆動する、駆動モータ等、それ自体のアクティブモジュールを設けることができ、その場合、それぞれのフィーダユニット2は、フィーダユニット2の及びフィーダユニット2が位置している分配位置のインタフェース接続を介して、制御ユニット30に作動的に接続されることが留意される。この場合、フィーダユニット2は、制御ユニット30、特に非リアルタイムコントローラ及びリアルタイムコントローラに直接作動的に接続されている。別法として、フィーダユニット2の各々は、それ自体のアクティブモジュールを有していなくてもよく、その場合、フィーダユニット2による分配を駆動するために、分配位置の各々に外部駆動モータ等のアクティブモジュールが設けられる。この場合、各分配位置の外部駆動モータは、制御ユニット30、特に非リアルタイムコントローラ及びリアルタイムコントローラに作動的に接続され、フィーダユニット2は、制御ユニット30、特に非リアルタイムコントローラ及びリアルタイムコントローラに間接的に作動的に接続される。以下において、データ、メッセージ、トリガ等が分配システムに送信されると記載されている場合、これは、データ、メッセージ、トリガ等が、それぞれの分配位置のアクティブモジュールに、又はそれぞれのフィーダユニット2内のアクティブモジュールに送信されるものとして理解することができる。
【0047】
図3は、分配システム1によって個別の薬剤を段階的に分配するステップの図を示す。最初のステップS1として、制御ユニット30において分配命令が受信され、この分配命令は、外部から受信される場合もあれば、制御ユニット30自体によって決定される場合もある。分配命令に基づいて、ステップS2において、非リアルタイム接続を介する非リアルタイムコントローラからのセグメント制御のために、分配位置20に又は分配位置20のクラスタに分配コマンドが送信される。分配コマンドは、それぞれの分配位置20で又は分配位置20のそれぞれのクラスタで実行すべき分配イベントのための分配パラメータを示すデータを含む。分配パラメータは、例えば、分配すべき個別の薬剤の数と、分配位置20においてフィーダユニット2を駆動する方法を示す駆動パラメータとを示す。さらに、分配コマンドには、分配コマンドを識別し、任意選択的に、分配コマンドのセット内のそれぞれの分配コマンドの位置を示す、コマンドサイクル識別子が提供される。本発明の文脈において、分配コマンドは、個別の薬剤の分配を開始するトリガを提供しない。
【0048】
それぞれの分配位置20又は分配位置のそれぞれのクラスタ20において分配コマンドが受信されると、ステップS3において、分配コマンドは、それぞれの分配位置20又は分配位置のそれぞれのクラスタ20においてバッファリングされる。それぞれの分配位置20又は分配位置のそれぞれのクラスタ20において分配コマンドをバッファリングすることにより、分配コマンドをそれぞれの分配位置20又は分配位置のそれぞれのクラスタ20に事前に送信することができ、分配コマンドは、必要なときにそれぞれの分配位置20又は分配位置のそれぞれのクラスタ20で利用可能になる。分配コマンドがどのくらい前に送信されるかは問題ではない。各分配コマンドは、コマンドサイクル識別子、特に一意のコマンドサイクル識別子を含むため、それぞれの分配位置20又は分配位置20のそれぞれのクラスタにおいて多数の分配コマンドをバッファリングすることができることが留意される。
【0049】
その後、ステップS4において、分配コマンドを実行する必要があるか否かが判断される。分配コマンド又は分配コマンドのうちの1つを実行する必要があるか否かを判断することは、例えば、所定の回収トレイ40が、分配コマンドがバッファリングされる分配位置20に又はその近くに位置するため、特定の個別の薬剤を分配する必要があるという指示を受信することとして理解することができる。
【0050】
分配コマンド又は分配コマンドのうちの1つを実行する必要があると判断されると、ステップS5において、分配トリガがリアルタイムコントローラからそれぞれの分配位置20又は分配位置のそれぞれのクラスタ20に送信され、分配トリガはリアルタイム接続を介して送信される。分配トリガは、それぞれの分配位置20において又はそれぞれの分配位置20のクラスタにおいて、フィーダユニットをトリガして、そこから個別の薬剤の分配を開始させるように構成されている。分配トリガには、トリガサイクル識別子が提供されており、このトリガサイクル識別子は、そのコマンドサイクル識別子に基づいて、関連する分配コマンドを識別するために使用され、トリガサイクル識別子及びコマンドサイクル識別子の各々は、それぞれ、特定の分配トリガ及び分配コマンドのサイクルを示して、分配コマンドが処理されなければならない順序を示す。
【0051】
それぞれの分配位置20において又は分配位置20のそれぞれのクラスタにおいて分配トリガが受信されると、ステップS6において、分配トリガは、それぞれの分配位置20において又は分配位置20のそれぞれのクラスタにおいて、対応する分配コマンドがバッファリングされているか否かを調べることをアクティブにする。これは、コマンドサイクル識別子がトリガサイクル識別子と実質的に同一であり、それにより実行する必要がある分配コマンドを示す、分配コマンドを探すことによって行われる。
【0052】
それぞれの分配位置20において又は分配位置20のそれぞれのクラスタにおいて、対応する分配コマンドがバッファリングされていると判断されると、ステップS7において、それぞれの分配位置20における又は分配位置20のそれぞれのクラスタにおけるフィーダユニット2は、対応する分配コマンドに示されるように、個別の薬剤の分配を開始する。
【0053】
それぞれの分配位置20において又は分配位置20のそれぞれのクラスタにおいて、対応する分配コマンドがバッファリングされていないと判断された場合、及び任意選択的に、後続する分配コマンドがすでに利用可能であると判断された場合、ステップS8において、それぞれの分配位置20又は分配位置20のそれぞれのクラスタは、特に非リアルタイムコントローラに、特定の分配コマンドが欠落していることを示すエラー信号を返す。その後、非リアルタイムコントローラは、ステップS9において、いずれのエラーが発生したかを見つけ出すために、それぞれの分配位置20又は分配位置20のそれぞれのクラスタに問い合わせる。その後、又は同時に、ステップS10において、分配システム1は、停止又は一時停止する。
【0054】
分配システムが停止又は一時停止すると、非リアルタイムコントローラは、ステップS11において、分配位置20に、既に受信されバッファリングされた分配コマンドを削除するよう指示し、その後、新たな分配コマンドを分配位置20に送信することができる。
【0055】
図4は、多数の別個のモジュール101を有するシステム100の概略的な概要を示す。本開示の文脈では、別個のモジュール101は、互いに独立して制御されるか、又は別のモジュール101がそのタスクを完了したときにモジュール101のうちの1つがタスクを実行することができるように、互いに依存するモジュール101として、理解することができる。システム100が、例えば、上述したような分配システム1である場合、別個のモジュール101は、例えば、限定されないが、包装ユニット5、又はプリンタ等のその電気モジュール、ロボットマニピュレータ3、フィーダユニット2等を備えることができる。
【0056】
システム100には、非リアルタイムコントローラ102と、プログラマブルロジックコントローラ(PLC)等のリアルタイムコントローラ103とがさらに設けられている。非リアルタイムコントローラ102は、システム100のモジュール101の各々に且つリアルタイムコントローラ103に作動的に接続されており、リアルタイムコントローラ103もまた、各モジュール101に且つ非リアルタイムコントローラ102に作動的に接続されている。図4に示すように、非リアルタイムコントローラ102とモジュール101の各々との間、リアルタイムコントローラ103とモジュール101の各々との間、及び非リアルタイムコントローラ102とリアルタイムコントローラ103との間で、双方向通信が可能である。非リアルタイムコントローラ102及びリアルタイムコントローラ103の各々は、プロセッサと、プロセッサによって実行されると、分配システム100に後にさらに詳細に説明する方法を実行させるコンピュータ命令が保存されている非一時的コンピュータ可読媒体とを備えることができる。
【0057】
図5は、システム100の動作を制御するステップの図を示し、システム100は、上述したような分配システム1であり得る。最初のステップ、ステップS100として、システム100は、システム100が履行する必要がある1つ又は複数の命令を受信する。
【0058】
履行する必要がある1つ又は複数の命令を受信すると、ステップS101において、非リアルタイムコントローラ102は、受信した1つ又は複数の命令を履行することができるように、システム100のモジュール101が実行する必要があるタスクを定義する実行計画を決定する。任意選択的に、非リアルタイムコントローラ102は、タスクを実行する必要がある順序も決定し、実行計画に正しい順序でタスクを含める。実行計画が決定されると、ステップS102において、非リアルタイムコントローラ102は、実行計画内のタスクの順序を守りながら、実行計画内の各タスクについて、それぞれのタスクを実行する必要があるモジュール101にタスクパラメータコマンドを送信する。タスクパラメータコマンドは、それぞれのタスクを実行するために必要なパラメータを含むが、それぞれのモジュール101にタスクを実行させるようにトリガしない。さらに、タスクパラメータコマンドは、システム100の異なるモジュール101のタスクを整列させるための同期識別子を含む。
【0059】
それぞれのタスクに対するタスクパラメータコマンドを送信した後、ステップS103において、非リアルタイムコントローラ102は、リアルタイムコントローラ103にタスクトリガコマンドを送信する。タスクトリガコマンドは、リアルタイムコントローラ103が、タスクトリガコマンドが関連付けられているタスクを実行するようにそれぞれのモジュール101をトリガすることができることと、いずれのモジュール101をトリガするべきかとかを示す。タスクトリガコマンドには、システム100の異なるモジュール101のタスクを整列させるために、対応するタスクパラメータコマンドと同じ同期識別子も提供される。
【0060】
非リアルタイムコントローラ102は、実行計画におけるタスクの順番を守りながら、タスクパラメータコマンド及びタスクトリガコマンドを連続的に送信しており、その結果、リアルタイムコントローラ103において複数のタスクトリガコマンドが受信される。リアルタイムコントローラ103においてタスクトリガコマンドが受信されると、ステップS104において、タスクトリガコマンドは、リアルタイムコントローラにおいてキューに入れられる(バッファリングされるとも呼ばれる)。
【0061】
リアルタイムコントローラ103は、タスクトリガコマンドを、リアルタイムコントローラ103で受信された順序で実行する。リアルタイムコントローラ103は、タスクトリガコマンドのうちの1つを実行すると、ステップS105において、対応する受信したタスクパラメータコマンドに示されるようにタスクを実行するようにそれぞれのモジュール101をトリガするために、タスクトリガコマンドに示されているモジュール101にトリガを送信する。タスクトリガコマンドがそれぞれのモジュール101に送信されると、ステップ106において、リアルタイムコントローラ103でキューに入れられたタスクトリガコマンドがさらにあるか否かが判断される。リアルタイムコントローラ103においてそれ以上タスクトリガコマンドがキューに入れられていない場合、本方法は終了する。
【0062】
リアルタイムコントローラ103において、少なくとも1つのさらなるタスクトリガコマンドがキューに入れられていると判断されると、ステップ107において、キューに入れられているタスクトリガコマンド内の次のタスクトリガコマンドに関連付けられた次のタスクが、現タスクトリガコマンドによって示されている現タスクに依存しているか否かが判断される。依存している場合、次のタスクは、現タスクが完了したときにのみトリガすることができる。これは、タスクパラメータコマンド及びタスクトリガコマンドに含まれる同期識別子によって決定される。次のタスクが現タスクから独立していると判断されると、図5に示すように次のタスクが実行される。
【0063】
次のタスクを実行することができる前に現タスクがほぼ又は完全に完了しなければならないように、次のタスクが現タスクに依存すると判断された場合、ステップ108において、リアルタイムコントローラ103は、タスクを実行しなければならなかったモジュール101が、最後に実行されたタスクトリガコマンドである現タスクトリガコマンドに関連付けられたタスクが実行されたというフィードバックを送信したか否かを、予め決められた時間内にチェックする。リアルタイムコントローラ103が、タスクがほぼ又は完全に完了したというフィードバックを受信した場合、リアルタイムコントローラ103は、続けて次のタスクトリガコマンドを実行する。
【0064】
さらに、任意選択的に同時に、ステップS108において、特定のモジュール101によってタスクが実行された場合、その特定のモジュール101は、実行されたタスクの完了を示す応答メッセージを非リアルタイムコントローラ102に送信する。特定のモジュール101におけるタスクの実行が失敗し且つ/又は完了することができない場合、そのタスクはエラー状態で終了し、このエラー状態が、非リアルタイムコントローラ102に直接報告される。
【0065】
エラー状態が非リアルタイムコントローラ102に報告されると、本方法は、ステップS109において、図6に概略的に示すエラー処理モードに切り替わる。エラー処理モードは、ステップS110において、非リアルタイムコントローラで以前に実行されたタスクのすべての応答メッセージを待つステップと、以前に実行されたタスクのすべての応答メッセージが受信されると、非リアルタイムコントローラ102によって、オペレータの介入なしに、エラーを自動的に修正することができるか否かを判断するステップとを含む。エラーを自動的に修正することができる場合、ステップS111において、実行計画が再度決定され、例えば、残りのタスクに基づいて実行計画を決定し、エラー状態を考慮し、その後、エラー処理モードは、方法のステップS102に戻る。
【0066】
エラーを自動的に修正することができないと判断された場合、ステップ112において、エラーはシステム100のオペレータに報告されて、ステップS113において、オペレータがエラーを修正するために手動の行為を実行することができるようになる。オペレータの手動の行為の後、ステップS114において、1つ又は複数の命令をエラーなしで完了することができるか否かが判断される。そうでない場合、ステップS115において、エラー処理モードは、1つ又は複数の命令の処理を中断する。1つ又は複数の命令をエラーなしで完了することができる場合、エラー処理モードはステップS111に進み、その後、本方法は、ステップS102において、再度決定された実行計画で継続される。
【0067】
上記の説明は、実施形態の動作を説明するために含まれるものであり、本発明の範囲を限定するようには意図されていないことが理解されるべきである。上記考察から、当業者には、依然として本発明の範囲に包含される多くの変形が明らかとなろう。
【符号の説明】
【0068】
1 分配システム
2 フィーダユニット
3 分配装置
4 回収装置
5 包装ユニット
6 ロボットマニピュレータ
7 グリッパ
20 分配位置
21 位置決めコラム
22 落下チューブ
30 コントローラ
31 非リアルタイムコントローラ
32 リアルタイムコントローラ
40 回収トレイ
41 回収フレーム
S1~S11 分配方法のステップ
100 システム
101 モジュール
102 非リアルタイムコントローラ
103 リアルタイムコントローラ
S100~S115 制御方法のステップ
図1
図2
図3
図4
図5
図6
【手続補正書】
【提出日】2024-06-26
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
1つ又は複数のフィーダユニットを収容し、前記1つ又は複数のフィーダユニットからある量の個別の薬剤を選択的に分配するように配置された分配システムから、個別の薬剤を段階的に分配する方法であって、前記システムが、
分配位置のアレイが設けられた分配装置であって、前記分配位置のアレイの各々において、前記フィーダユニットのうちの1つのためのホルダと、放出された薬剤を通過させる貫通開口部とが設けられている分配装置
を備え、
前記方法が、
- 非リアルタイム接続を介して、前記分配位置のアレイのうちの分配位置に、分配パラメータを示すデータを含む分配コマンドを送信するステップであって、前記分配コマンドがコマンドサイクル識別子を含む、ステップと、
- 前記分配位置のアレイのうちの前記分配位置において前記分配コマンドをバッファリングするステップと、
- リアルタイム接続を介して、前記分配位置のアレイのうちの前記分配位置にトリガサイクル識別子を含む分配トリガを送信し、それにより、フィーダユニットを、前記フィーダユニットから個別の薬剤を分配するようにトリガするステップと、
を含み、
前記コマンドサイクル識別子及び前記トリガサイクル識別子が、実質的に互いに同一であり、
前記方法が、
前記分配位置のアレイのうちの前記分配位置において、前記分配トリガが受信されたとき、前記分配位置において対応する分配コマンドが受信されているか否かを、
- 分配コマンドを探すことと、
- 分配コマンドが見つかった場合、前記見つかった分配コマンドの前記コマンドサイクル識別子を確認することと、
- 前記分配トリガの前記トリガサイクル識別子を、前記確認されたコマンドサイクル識別子と比較することと、
- 前記コマンドサイクル識別子及び前記トリガサイクル識別子が実質的に互いに同一である場合、個別の薬剤の分配を開始することと、
によってチェックするステップ
をさらに含方法。
【請求項2】
分配コマンドを送信する前記ステップが、分配トリガを送信する前記ステップに先立って分配コマンドを送信することを含む、請求項1に記載の方法。
【請求項3】
分配コマンドを送信する前記ステップが、前記分配位置のアレイのうちの前記分配位置に複数の分配コマンドを送信することを含む、請求項1又は2に記載の方法。
【請求項4】
前記分配コマンドの前記データが、分配すべき個別の薬剤の数に関する情報、及び/又は、前記数の個別の薬剤を分配する方法に関するパラメータを含む、請求項に記載の方法。
【請求項5】
分配コマンドを送信する前記ステップが実行されるたびに、コマンドサイクル識別子を含める前記ステップが、前記コマンドサイクル識別子を調整することを含む、請求項に記載の方法。
【請求項6】
分配トリガを送信する前記ステップが実行されるたびに、トリガサイクル識別子を含める前記ステップが、前記トリガサイクル識別子を調整することを含む、請求項に記載の方法。
【請求項7】
- 複数の分配コマンドが見つかった場合、前記見つかった分配コマンドの各々の前記コマンドサイクル識別子を確認するステップと、
- 前記分配トリガの前記トリガサイクル識別子を、前記確認されたコマンドサイクル識別子の各々と比較するステップと、
- 実質的に同一のコマンドサイクル識別子が見つかった場合、前記対応する分配コマンドを選択し、前記対応する分配コマンドの前記データに基づいて個別の薬剤の分配を開始するステップと、
を含む、請求項に記載の方法。
【請求項8】
- 対応する分配コマンドが見つからない場合、及び任意選択的に、後続の分配コマンドが見つかった場合、エラー状況をコントローラに報告するステップ
を含む、請求項に記載の方法。
【請求項9】
エラー状況の報告が、前記リアルタイム接続を介して行われる、請求項に記載の方法。
【請求項10】
エラー状況の報告時に、前記エラー状況に関する情報を受信するために、前記分配位置のアレイのうちの1つ又は複数の分配位置に問い合わせることを含む、請求項8又は9に記載の方法。
【請求項11】
前記分配位置のアレイのうちの前記1つ又は複数の分配位置に問い合わせることが、前記非リアルタイム接続を介して実行される、請求項10に記載の方法。
【請求項12】
エラー状況の報告時、前記分配システムを一時停止させることを含む、請求項8~9のいずれか一項に記載の方法。
【請求項13】
前記分配システムを一時停止させるとき、前記分配位置のアレイの各分配位置に、1つ又は複数のバッファリングされた分配コマンドを削除するコマンドを送信することを含み、前記コマンドは、前記非リアルタイム接続を介して送信される、請求項12に記載の方法。
【請求項14】
前記分配位置のアレイのうちの分配位置が、1つの分配位置又は分配位置のアレイを含む、請求項に記載の方法。
【請求項15】
フィーダユニットから個別の薬剤を段階的に分配する分配システムであって、1つ又は複数のフィーダユニットを収容し、前記1つ又は複数のフィーダユニットからある量の個別の薬剤を選択的に分配するように配置されており、
平面内に隣接して配置された分配位置のアレイが設けられた分配装置であって、前記分配位置のアレイの各々において、前記フィーダユニットのうちの1つのためのホルダと、放出された薬剤を通過させる貫通開口部とが設けられている分配装置と、
前記分配システム及び前記分配装置上に配置された前記フィーダユニットの作動を制御する制御ユニットと、
を備え、
前記制御ユニットが、非リアルタイム接続によって前記分配位置のアレイの各々に作動的に接続された非リアルタイムコントローラと、リアルタイム接続によって前記分配位置のアレイの各々に作動的に接続されたリアルタイムコントローラとを備え、
前記コントローラが、
- 前記非リアルタイム接続を介して、前記分配位置のアレイのうちの分配位置に、分配パラメータを示すデータを含む分配コマンドを送信することであって、前記分配コマンドがコマンドサイクル識別子を含む、送信することと、
- 前記分配位置のアレイのうちの前記分配位置において前記分配コマンドがバッファリングされるのを可能にすることと、
- 前記リアルタイム接続を介して、分配位置のうちの前記分配位置にトリガサイクル識別子を含む分配トリガを送信し、それにより、フィーダユニットを、前記フィーダユニットから個別の薬剤を分配するようにトリガすることと、
を行うように構成されており、
前記コマンドサイクル識別子及び前記トリガサイクル識別子が、実質的に互いに同一であり、
前記コントローラが、
前記分配位置のアレイのうちの前記分配位置において、前記分配トリガが受信されたとき、前記分配位置において対応する分配コマンドが受信されているか否かを、
- 分配コマンドを探すことと、
- 分配コマンドが見つかった場合、前記見つかった分配コマンドの前記コマンドサイクル識別子を確認することと、
- 前記分配トリガの前記トリガサイクル識別子を、前記確認されたコマンドサイクル識別子と比較することと、
- 前記コマンドサイクル識別子及び前記トリガサイクル識別子が実質的に互いに同一である場合、個別の薬剤の分配を開始することと、
によってチェックすること
をさらに行うように構成されている、分配システム。
【請求項16】
前記非リアルタイム接続が、Ethernet接続及び非リアルタイムバスを含む群から選択され、且つ/又は、前記リアルタイム接続が、リアルタイムバス、EthercatTM、VaranTM及びハードウェアI/Oラインを含む群から選択される、請求項15に記載の分配システム。
【請求項17】
薬剤分配システムの動作を制御する方法であって、前記システムが1つ又は複数の別個のモジュールを備え、前記方法が、
- 非リアルタイムコントローラによって、前記1つ又は複数の別個のモジュールによって実行すべき1つ又は複数のタスクを含む実行計画を決定するステップと、
- 前記非リアルタイムコントローラにおいて、前記実行計画の前記決定されたタスクの各々について、前記タスクを実行しなければならない前記別個のモジュールのうちの1つにタスクパラメータコマンドを送信することであって、前記タスクパラメータコマンドが、前記タスクを実行するために必要なパラメータを含む、送信すること、及び、関連するタスクトリガコマンドをリアルタイムコントローラに送信することであって、前記タスクトリガコマンドが、前記タスクトリガコマンドが関連付けられている前記タスクを実行するように前記それぞれのモジュールをトリガするように、前記リアルタイムコントローラに命令するように構成される、送信することを行うステップと、
- 前記リアルタイムコントローラにおいて前記タスクトリガコマンドが受信されると、前記リアルタイムコントローラにおいて前記タスクトリガコマンドをキューに入れるステップと、
- 前記リアルタイムコントローラにおいて、前記キューに入れられたタスクトリガコマンドを実行して、前記関連するタスクパラメータコマンドに示されるように前記タスクを実行するように前記それぞれのモジュールをトリガするステップと、
を含み、
前記実行計画の前記タスクに関連して送信される前記タスクパラメータコマンド及び前記タスクトリガコマンドの各々に、同期識別子が提供され、
前記方法が、
- 前記リアルタイムコントローラにおいて、前記同期識別子を使用することにより、前記1つ又は複数の別個のモジュールによって実行され且つ/又は実行されるべき前記1つ又は複数のタスクを整列させるステップ
をさらに含み、
前記1つ又は複数のタスクを整列させる前記ステップが、前記リアルタイムコントローラにおいて、前記リアルタイムコントローラにおいて前記関連するタスクトリガコマンドを実行することによって、タスクを実行するようにモジュールをトリガした後、前記タスクパラメータコマンド及び前記タスクトリガコマンドに含まれる前記同期識別子を用いて、次のタスクが目下実行されている前記タスクに依存するか否かをチェックすることを含む、方法。
【請求項18】
前記実行計画を決定する前記ステップが、前記タスクを実行する必要がある順序を決定することと、前記実行計画に実行すべき前記タスクを前記決定された順序で含めることとを含む、請求項17に記載の方法。
【請求項19】
前記リアルタイムコントローラが、前記キューに入れられたタスクトリガコマンドを、前記リアルタイムコントローラにおいて前記タスクトリガコマンドが受信されキューに入れられた順序で実行する、請求項18に記載の方法。
【請求項20】
前記キューに入れられたタスクトリガコマンドを実行する前記ステップが、前記キューに入れられたタスクトリガコマンドを1つずつ実行することを含む、請求項17~19のいずれか一項に記載の方法。
【請求項21】
前記次のタスクが目下実行されている前記タスクに依存すると判断された場合に、前記リアルタイムコントローラにおいて、前記目下のタスクを実行している前記モジュールから、前記タスクが前記次のタスクを実行する前に完了していることが確認される確認を待つことを含む、請求項17~19のいずれか一項に記載の方法。
【請求項22】
前記1つ又は複数の別個のモジュールの各々において、前記モジュールによってタスクが完了した場合に、前記モジュールによって前記タスクが完了したことを示す応答メッセージを前記モジュールから前記非リアルタイムコントローラに送信することを含む、請求項21に記載の方法。
【請求項23】
特定のモジュールにおけるタスクの実行が失敗し且つ/又は完了することができない場合に、前記モジュールから前記非リアルタイムコントローラに前記モジュールのエラー状態を報告することを含み、前記エラー状態が報告されると、前記非リアルタイムコントローラによってエラー処理モードがトリガされる、請求項22に記載の方法。
【請求項24】
前記エラー処理モードが、
- 前記非リアルタイムコントローラにおいて、以前に実行されたタスクの前記1つ又は複数の別個のモジュールからのすべての応答メッセージを待つステップと、
- 前記非リアルタイムコントローラから送信されたすべてのタスクパラメータコマンド及びタスクトリガコマンドを消去するステップと、
- 前記エラー状態によって示されるエラーを自動的に修正することができるか否かを判断するステップと、
- 前記エラーを自動的に修正することができると判断された場合、前記実行計画を再度決定し、前記再度決定された実行計画の前記タスクに関するタスクパラメータコマンド及びタスクトリガコマンドを送信するステップと、
- 前記エラーを自動的に修正することができないと判断された場合、前記エラーをオペレータに報告し、前記オペレータが前記エラーに対する修正を入力することができるようにするステップと、
- 前記オペレータが前記エラーに対する修正を入力することができるようにした後、前記実行計画をさらなるエラーなしに完了することができるか否かを判断するステップと、
- 前記実行計画をさらなるエラーなしに完了することができないと判断された場合、前記実行計画の実行を停止するステップと、
- 前記実行計画をさらなるエラーなしに完了することができると判断された場合、前記実行計画を再度決定し、前記再度決定された実行計画の前記タスクに関するタスクパラメータコマンド及びタスクトリガコマンドを送信するステップと、
を含む、請求項23に記載の方法。
【請求項25】
1つ又は複数の別個のモジュールと、非リアルタイムコントローラと、リアルタイムコントローラとを有する薬剤分配システムであって、
前記非リアルタイムコントローラが、前記1つ又は複数の別個のモジュールの各々及び前記リアルタイムコントローラに作動的に接続されており、
前記リアルタイムコントローラが、前記1つ又は複数の別個のモジュールの各々に且つ前記非リアルタイムコントローラに作動的に接続されており、
前記非リアルタイムコントローラが、
- 前記1つ又は複数の別個のモジュールによって実行すべき1つ又は複数のタスクを含む実行計画を決定することと、
- 前記実行計画の前記決定されたタスクの各々について、前記タスクを実行しなければならない前記別個のモジュールのうちの1つにタスクパラメータコマンドを送信することであって、前記タスクパラメータコマンドが、前記タスクを実行するために必要なパラメータを含む、送信すること、及び、関連するタスクトリガコマンドを前記リアルタイムコントローラに送信することであって、前記タスクトリガコマンドが、前記タスクトリガコマンドが関連付けられている前記タスクを実行するように前記それぞれのモジュールをトリガするように、前記リアルタイムコントローラに命令するように構成される、送信することと、
を行うように構成され
前記実行計画の前記タスクに関連して送信される前記タスクパラメータコマンド及び前記タスクトリガコマンドの各々に、同期識別子が提供され、
前記リアルタイムコントローラが、
- 前記リアルタイムコントローラにおいて前記タスクトリガコマンドが受信されると、前記タスクトリガコマンドをキューに入れることと、
- 前記同期識別子を使用することにより、前記1つ又は複数の別個のモジュールによって実行され且つ/又は実行されるべき前記1つ又は複数のタスクを整列させることであって、
前記1つ又は複数のタスクを整列させる前記ステップが、前記リアルタイムコントローラにおいて、前記リアルタイムコントローラにおいて前記関連するタスクトリガコマンドを実行することによって、タスクを実行するようにモジュールをトリガした後、前記タスクパラメータコマンド及び前記タスクトリガコマンドに含まれる前記同期識別子を用いて、次のタスクが目下実行されている前記タスクに依存するか否かをチェックすることを含む、整列させることと、
- 前記キューに入れられたタスクトリガコマンドを実行して、前記関連するタスクパラメータコマンドに示されるように前記タスクを実行するように前記それぞれのモジュールをトリガすることと、
を行うように構成されている、システム。
【請求項26】
前記リアルタイムコントローラが、プログラマブルロジックコントローラ(PLC)及びリモートテレメトリユニット(RTU)を含む群から選択されている、請求項25に記載のシステム。
【請求項27】
前記非リアルタイムコントローラが、Ethernet接続等の非リアルタイム接続を介して、前記1つ又は複数の別個のモジュールの各々及び前記リアルタイムコントローラに作動的に接続され、前記リアルタイムコントローラが、EtherCAt及び/又はハードウェアI/Oライン等のリアルタイム接続を介して、前記1つ又は複数の別個のモジュールの各々に作動的に接続される、請求項25又は26に記載のシステム。
【国際調査報告】