(57)【要約】  流体成分を分離するための遠心分離機血液処理システムは、遠心分離機血液処理システムに光連通して、遠心分離機血液処理システムの観察領域（３２）を照明するための入射光ビーム（３０、３８）を提供する複数の発光ダイオードを備える第１の光源（１２）と、遠心分離機血液処理システムに光連通して、観察領域からの透過光、散乱光、または、その両方の少なくとも一部を集光する集光要素（１４）と、モニタリングシステムに動作手順を提供するプログラム可能なコントローラと、プログラム可能なコントローラ（４０）に電気連通し光源に電気的に連結した独立した専用制御回路であって、コントローラからコマンドパラメータを受け取り、コマンドパラメータに応答して光源から照明の期間を制御する専用制御回路と、を備える。照明の期間は、ＬＥＤの故障を防止するために制御される。
2010512966.tif 000002
【特許請求の範囲】
【請求項１】
中心回転軸を中心に回転する分離チャンバを有する、流体成分を分離するための遠心分離機血液処理システム用のモニタリングシステムであって、
前記遠心分離機血液処理システムに光連通して、前記遠心分離機血液処理システムの観察領域を照明するための入射光ビームを提供することによって、前記観察領域から透過光、散乱光、または、その両方を生成する第１の光源と、
前記遠心分離機血液処理システムに光連通して、前記観察領域からの前記透過光、散乱光、または、その両方の少なくとも一部を集光する集光要素と、
前記モニタリングシステムに動作手順を提供するプログラム可能なコントローラと、
前記プログラム可能なコントローラに電気連通し、前記第１の光源に電気的に連結された独立した専用制御回路であって、前記プログラム可能なコントローラからコマンドパラメータを受け取り、前記コマンドパラメータに応答して前記第１の光源から照明の期間を制御する独立した専用制御回路と、
を備えるモニタリングシステム。
【請求項２】
前記分離チャンバに連結されたエンコーダをさらに備え、前記エンコーダは、前記分離チャンバの回転位置に関連した信号を前記専用制御回路に通信する請求項１記載のモニタリングシステム。
【請求項３】
前記専用制御回路は、前記エンコーダの信号から前記分離チャンバの初期ゼロ位置を識別する請求項２記載のモニタリングシステム。
【請求項４】
前記専用制御回路は、選択された回転を前記初期ゼロ位置から始める少なくとも１つの照明セッションを開始する請求項３記載のモニタリングシステム。
【請求項５】
前記照明セッションは、第１の選択された回転で前記第１の光源に電圧を加えることと、選択された持続期間後に前記第１の光源に電圧を加えるのを停止することと、を備える請求項４記載のモニタリングシステム。
【請求項６】
前記第１の光源は上部光源であり、下部光源およびモニタリングカメラをさらに備え、前記カメラはシャッタ装置を有し、前記専用制御回路は、前記上部光源、前記下部光源および前記モニタリングカメラの各々を制御することができる請求項５記載のモニタリングシステム。
【請求項７】
前記初期ゼロ位置は、前記分離チャンバの回転に沿った任意の位置で較正されることができる請求項３記載のモニタリングシステム。
【請求項８】
前記専用制御回路は、前記第１の光源へ信号を提供して、前記第１の光源からの照明の開始、持続期間および強度を完全に制御する請求項１記載のモニタリングシステム。
【請求項９】
前記分離チャンバに連結されたホール効果センサをさらに備え、前記ホール効果センサは、前記分離チャンバの回転位置に関連した信号を前記専用制御回路へ通信する請求項１記載のモニタリングシステム。
【請求項１０】
ユーザストロボ光源をさらに備え、前記ユーザストロボ光源は、前記エンコーダからの信号に応答してユーザ制御回路によって制御される請求項２記載のモニタリングシステム。
【請求項１１】
前記分離チャンバに連結されたホール効果センサをさらに備え、前記ホール効果センサは、前記分離チャンバの回転位置に関連した信号を前記専用制御回路へ通信する請求項１０記載のモニタリングシステム。
【請求項１２】
前記第１の光源からの照明の持続期間を制限する第１のタイマをさらに備える請求項１記載のモニタリングシステム。
【請求項１３】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、照明の前記持続期間は、前記ＬＥＤの故障を防止するように制限される請求項１２記載のモニタリングシステム。
【請求項１４】
照明の期間の間の最小期間を提供する第２のタイマをさらに備える請求項１２記載のモニタリングシステム。
【請求項１５】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、照明の前記持続期間および照明の期間の間の前記最小期間は、前記ＬＥＤの故障を防止するように選択される請求項１４記載のモニタリングシステム。
【請求項１６】
前記専用制御回路は、遅延および照明の期間を備える複数のセッションを制御する請求項１記載のモニタリングシステム。
【請求項１７】
前記専用制御回路は、照明のオーバーラップ期間を組み合わせて組み合わされた照明期間とする請求項１６記載のモニタリングシステム。
【請求項１８】
前記第１の光源からの照明の持続期間を制限する第１のタイマをさらに備える請求項１７記載のモニタリングシステム。
【請求項１９】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、照明の前記持続期間は、前記ＬＥＤの故障を防止するように制限される請求項１８記載のモニタリングシステム。
【請求項２０】
照明の期間の間の最小期間を提供する第２のタイマをさらに備える請求項１９記載のモニタリングシステム。
【請求項２１】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、照明の前記持続期間および照明の期間の間の前記最小期間は、前記ＬＥＤの故障を防止するように選択される請求項２０記載のモニタリングシステム。
【請求項２２】
流体成分を分離するための遠心分離機血液処理システムであって、
分離チャンバと、
中心回転軸を中心に前記チャンバを回転するために前記分離チャンバに連結されたモータと、
前記分離チャンバ内の流体流れを制御するための複数のポンプと、
前記ポンプおよび前記モータに電気連通し、前記ポンプおよび前記モータを制御するためのコマンドを生成するコントローラと、
前記コントローラに電気連通し前記分離チャンバ内の流体をモニタするモニタリングシステムであって、
前記血液処理システムに光連通して、前記遠心分離機血液処理システムの観察領域を照明するための入射光ビームを提供することによって、前記観察領域から透過光、散乱光、または、その両方を生成する第１の光源と、
前記遠心分離機血液処理システムに光連通して、前記観察領域からの前記透過光、散乱光、または、その両方の少なくとも一部を集光する集光要素と、
前記モニタリングシステムに動作手順を提供するプログラム可能なコントローラと、
前記プログラム可能なコントローラに電気連通し、前記第１の光源に電気的に連結された独立した専用制御回路であって、前記コントローラからコマンドパラメータを受け取り、前記コマンドパラメータに応答して前記第１の光源から照明の期間を制御する独立した専用制御回路と、
を備えるモニタリングシステムと、
を備える遠心分離機血液処理システム。
【請求項２３】
前記分離チャンバに連結されたエンコーダをさらに備え、前記エンコーダは、前記分離チャンバの回転位置に関連した信号を前記専用制御回路に通信する請求項２２記載の遠心分離機血液処理システム。
【請求項２４】
前記専用制御回路は、前記エンコーダの信号から前記分離チャンバの初期ゼロ位置を識別する請求項２３記載の遠心分離機血液処理システム。
【請求項２５】
前記制御回路は、選択された回転を前記初期ゼロ位置から始める少なくとも１つの照明セッションを開始する請求項２４記載の遠心分離機血液処理システム。
【請求項２６】
前記照明セッションは、第１の選択された回転で前記第１の光源に電圧を加えることと、選択された持続期間後に前記第１の光源に電圧を加えるのを停止することと、を備える請求項２５記載の遠心分離機血液処理システム。
【請求項２７】
前記第１の光源は上部光源であり、下部光源およびモニタリングカメラをさらに備え、前記カメラはシャッタ装置を有し、前記制御回路は、前記上部光源、前記下部光源および前記モニタリングカメラの各々を制御することができる請求項２６記載の遠心分離機血液処理システム。
【請求項２８】
前記初期ゼロ位置は、前記分離チャンバの回転に沿った任意の位置で較正されることができる請求項２４記載の遠心分離機血液処理システム。
【請求項２９】
前記専用制御回路は、前記第１の光源へ信号を提供して、前記第１の光源からの照明の開始、持続期間および強度を完全に制御する請求項２２記載の遠心分離機血液処理システム。
【請求項３０】
前記分離チャンバに連結されたホール効果センサをさらに備え、前記ホール効果センサは、前記分離チャンバの回転位置に関連した信号を前記専用制御回路へ通信する請求項２２記載の遠心分離機血液処理システム。
【請求項３１】
ユーザストロボ光源をさらに備え、前記ユーザストロボ光源は、前記エンコーダからの信号に応答してユーザ制御回路によって制御される請求項２２記載の遠心分離機血液処理システム。
【請求項３２】
前記分離チャンバに連結されたホール効果センサをさらに備え、前記ホール効果センサは、前記分離チャンバの回転位置に関連した信号を前記専用制御回路へ通信する請求項３１記載の遠心分離機血液処理システム。
【請求項３３】
前記第１の光源からの照明の持続期間を制限する第１のタイマをさらに備える請求項２２記載の遠心分離機血液処理システム。
【請求項３４】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、照明の前記持続期間は、前記ＬＥＤの故障を防止するように制限される請求項３３記載の遠心分離機血液処理システム。
【請求項３５】
照明の期間の間の最小期間を提供する第２のタイマをさらに備える請求項３３記載の遠心分離機血液処理システム。
【請求項３６】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、照明の前記持続期間および照明の期間の間の前記最小期間は、前記ＬＥＤの故障を防止するように選択される請求項３５記載の遠心分離機血液処理システム。
【請求項３７】
前記専用制御回路は、遅延および照明の期間を備える複数のセッションを制御する請求項２２記載の遠心分離機血液処理システム。
【請求項３８】
前記専用制御回路は、照明のオーバーラップ期間を組み合わせて組み合わされた照明期間とする請求項３７記載の遠心分離機血液処理システム。
【請求項３９】
前記第１の光源からの照明の持続期間を制限する第１のタイマをさらに備える請求項３８記載の遠心分離機血液処理システム。
【請求項４０】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、照明の前記持続期間は、前記ＬＥＤの故障を防止するように制限される請求項３９記載の遠心分離機血液処理システム。
【請求項４１】
照明の期間の間の最小期間を提供する第２のタイマをさらに備える請求項４０記載の遠心分離機血液処理システム。
【請求項４２】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、照明の前記持続期間および照明の期間の間の前記最小期間は、前記ＬＥＤの故障を防止するように選択される請求項４１記載の遠心分離機血液処理システム。
【請求項４３】
中心回転軸を中心に回転する分離チャンバを有し、流体成分を分離するための遠心分離機血液処理システムを制御する方法であって、
前記血液処理システムの機能を制御するためのプログラム可能なコントローラを提供することと、
前記分離チャンバに光連通する第１の光源を提供することと、
前記分離チャンバの観察領域を照明することによって、前記観察領域から透過光、散乱光、または、その両方を生成することと、
前記プログラム可能なコントローラに電気連通し、前記第１の光源に電気的に連結した独立した専用制御回路であって、前記コントローラからコマンドパラメータを受け取り、前記コマンドパラメータに応答して前記光源から照明の期間を制御する専用制御回路を介して、前記観察領域からの前記透過光、散乱光、または、その両方の少なくとも一部を集光することと、
を備える方法。
【請求項４４】
前記分離チャンバの回転位置に関連した信号を前記専用制御回路に通信することをさらに備える請求項４３記載の方法。
【請求項４５】
前記分離チャンバの初期ゼロ位置を識別することをさらに備える請求項４３記載の方法。
【請求項４６】
前記専用制御回路は、選択された回転を前記初期ゼロ位置から始める少なくとも１つの照明セッションを開始する請求項４５記載の方法。
【請求項４７】
前記照明セッションは、第１の選択された回転で前記第１の光源に電圧を加えることと、選択された持続期間後に前記第１の光源に電圧を加えるのを停止することと、を備える請求項４６記載の方法。
【請求項４８】
前記第１の光源は上部光源であり、下部光源およびモニタリングカメラをさらに備え、前記カメラはシャッタ装置を有し、前記方法は、前記専用制御回路を通って、前記上部光源、前記下部光源および前記モニタリングカメラの各々を制御することをさらに備える請求項４７記載の方法。
【請求項４９】
前記分離チャンバの回転に沿った任意の位置で前記初期ゼロ位置を較正することをさらに備える請求項４５記載の方法。
【請求項５０】
前記第１の光源へ信号を提供して、前記第１の光源からの照明の開始、持続期間および強度を完全に制御することをさらに備える請求項４３記載の方法。
【請求項５１】
ユーザストロボ光源を提供することをさらに備える請求項４３記載の方法。
【請求項５２】
前記第１の光源からの照明の持続期間を制限することをさらに備える請求項４３記載の方法。
【請求項５３】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、前記方法は、前記ＬＥＤの故障を防止するために照明の前記持続期間を制限することをさらに備える請求項５２記載の方法。
【請求項５４】
照明の期間の間の最小期間を提供することをさらに備える請求項５２記載の方法。
【請求項５５】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、前記方法は、前記ＬＥＤの故障を防止するために照明の前記持続期間および照明の期間の間の前記最小期間を選択することをさらに備える請求項５４記載の方法。
【請求項５６】
前記専用制御回路によって制御された照明の期間はセッションを構成し、前記方法は、複数のセッションを制御することをさらに備える請求項４３記載の方法。
【請求項５７】
照明のオーバーラップ期間を組み合わせて組み合わされた照明期間とすることをさらに備える請求項５６記載の方法。
【請求項５８】
前記第１の光源からの照明の持続期間を制限することをさらに備える請求項５７記載の方法。
【請求項５９】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、前記方法は、前記ＬＥＤの故障を防止するために照明の前記持続期間を制限することをさらに備える請求項５８記載の方法。
【請求項６０】
照明の期間の間の最小期間を提供することをさらに備える請求項５９記載の方法。
【請求項６１】
前記第１の光源は、発光ダイオード（ＬＥＤ）を備え、前記方法は、前記ＬＥＤの故障を防止するために照明の前記持続期間および照明の期間の間の前記最小期間を選択することをさらに備える請求項６０記載の方法。
【請求項６２】
流体成分を分離するための遠心分離機血液処理システムであって、
分離チャンバと、
中心回転軸を中心に前記分離チャンバを回転するために前記分離チャンバに連結されたモータと、
前記分離チャンバ内の流体流れを制御するための複数のポンプと、
前記ポンプおよび前記モータに電気連通し、前記ポンプおよび前記モータを制御するためのコマンドを生成するコントローラと、
前記コントローラに電気連通し前記分離チャンバ内の流体をモニタするモニタリングシステムであって、
前記血液処理システムに光連通して、前記遠心分離機血液処理システムの観察領域を照明するための入射光ビームを提供することによって、前記観察領域から透過光、散乱光、または、その両方を生成する第１の光源と、
前記遠心分離機血液処理システムに光連通して、前記観察領域からの前記透過光、散乱光、または、その両方の少なくとも一部を集光する集光要素と、
前記モニタリングシステムに動作手順を提供するプログラム可能なコントローラと、
前記第１の光源からの照明の持続期間を制限する第１のタイマであって、前記第１の光源は発光ダイオード（ＬＥＤ）を備え、照明の前記持続期間は、前記ＬＥＤの故障を防止するように制限される第１のタイマと、
を備えるモニタリングシステムと、
を備える遠心分離機血液処理システム。
【請求項６３】
照明の期間の間の最小期間を提供する第２のタイマをさらに備え、照明の期間の間の前記最小期間は、前記ＬＥＤの故障を防止するように選択される請求項６２記載の遠心分離機血液処理システム。
【請求項６４】
前記コントローラは、遅延および照明の期間を備える複数のセッションを制御する請求項６２記載の遠心分離機血液処理システム。
【請求項６５】
前記コントローラは、照明のオーバーラップ期間を組み合わせて組み合わされた照明期間とする請求項６４記載の遠心分離機血液処理システム。
【請求項６６】
照明の期間の間の最小期間を提供する第２のタイマをさらに備え、照明の期間の間の前記最小期間は、前記ＬＥＤの故障を防止するように選択される請求項６５記載の遠心分離機血液処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願に対する相互参照）
本願は、２００４年７月１日に出願された米国特許出願第１０／８８４，８７７号の一部継続出願である、２００４年１２月２９日に出願された米国特許出願第１０／９０５，３５３号の一部継続出願である、２００６年１２月２０日に出願された米国特許出願第１１／６１３，３３８号の国際出願であり、これらの出願の全体は、本願の開示内容に矛盾しない限り、参照によって本明細書に組み込まれる。
【背景技術】
【０００２】
血液採取および処理は、世界の医療制度において重要な役割を果たす。従来の血液採取においては、血液は、供血者または患者から取り出され、遠心分離、濾過、および／または、エルトリエーションによって様々な血液成分に分離され、後の治療使用のために患者に注入するために滅菌容器に保存される。分離された血液成分は、典型的に、赤血球、白血球、血小板および血漿に対応する画分を含む。血液の成分分離は、採取中に連続して行うことができ、または、採取後にバッチで行うことができ、特に、全血試料の処理に関してはそうである。血液の成分分離を高滅菌状態下で行うことは、ほとんどの治療用途において重要である。
【０００３】
近年、アフェレーシス採血技術が、多くの血液採取センターで採用されており、アフェレーシスでは、採血中に、血液の選択された成分が採取され、血液の残りの成分が供血者に戻される。アフェレーシスでは、血液は供血者から取り出され、オンライン血液処理方法によって、即座に成分分離される。典型的に、オンライン血液処理は、遠心分離、濾過、および／または、拡散系分離技術によって提供される。１つ以上の分離された血液成分は、採取され、滅菌容器に保存され、一方、残りの血液成分は、直接供血者に再循環される。この方法の利点は、個々の供血者からより頻繁に供血が可能であることであるが、それは、選択された血液成分のみが採取され浄化されるからである。たとえば、血小板フェレーシスを受けている供血者は、血小板が採取され、血小板以外の血液成分は供血者に戻される。この供血者は、１４日に１回の頻度で供血することができる。
【０００４】
アフェレーシス血液処理はまた、多くの治療手技で重要な役割を果たす。これらの方法では、血液は、治療を受けている患者から採取されて分離され、選択された画分が収集され、一方、残りは患者へ戻される。たとえば、患者は、放射線療の前に白血球アフェレーシスを受けてもよく、それによって、患者の血液の白血球成分が分離され、収集され、保存されて、放射線への露出を回避する。あるいは、アフェレーシス技術は、鎌状赤血球貧血およびサラセミアのような血液疾患の患者に、赤血球交換を行うために使用されてもよく、それによって、患者の赤血球成分が除去され、供血された濃厚赤血球が、患者の残りの血液成分とともに患者に提供される。さらに、アフェレーシスを用いて、血小板増加症の患者に治療的血小板減少を行い、自己免疫疾患の患者に治療的血漿交換を行ってもよい。
【０００５】
従来の血液採取システムおよびアフェレーシスシステムの両方とも、典型的に、血液を成分分離するために分画遠心法を利用する。分画遠心法において、血液は、滅菌分離チャンバを通って循環され、分離チャンバは、中心回転軸を中心に高速回転する。分離チャンバの回転は、遠心分離機の中心回転軸に垂直に配向された分離の回転軸に沿った方向の遠心力を生成する。回転時に生成される遠心力は、血液試料に浮遊する粒子を、密度の異なる画分に分離する。具体的には、血液試料は、赤血球を備えるより密度の高い画分および血漿を備えるより密度の低い画分に対応する相に分離する。また、血小板および白血球を備える中間密度の画分は、赤血球と血漿との間にインタフェース層を形成する。血液遠心分離装置の説明は、特許文献１および特許文献２に記載されている。
【０００６】
継続した高処理量血液分離を達成するために、ほとんどの分離チャンバには抽出ポートまたは収集ポートが設けられる。抽出ポートは、調整可能な流量で分離チャンバから物質を引き出すことができ、典型的に、別々の血液成分に対応する分離軸に沿って選択された位置に設けられる。しかし、選択された抽出ポートから出る抽出された流体が実質的に単一相に確実に制限されるように、分離された血液成分の間の界面は、抽出ポートが単一相に接触するように分離軸に沿って位置決めされなければならない。たとえば、白血球を含む画分が、濃厚血小板血漿の抽出ポートに近すぎる場合には、白血球は、分離チャンバから出る濃厚血小板血漿のストリームに入ることもあり、それによって、血液処理中に達成される分離の程度が低下してしまう。遠心分離による従来の血液処理は、個別の血液成分の分離を効率的に行うことができるが、この方法を使用して得られる個別成分の純度は、多くの治療用途に使用するには最適ではないことが多い。たとえば、血液試料の遠心分離では、収集された３×１０11血小板ごとに１×１０6未満の白血球を有する分離された血小板成分を一貫して（時間の９９％）生成することはできない。血小板生成物に白血球が存在していると、患者に注入するときに、ウイルス露出および免疫合併症のリスクが増加する。
【０００７】
遠心分離を用いて抽出された血液成分の純度は、現在、従来の遠心分離装置および方法によって提供される分離された成分の間の界面層の位置を制御することによって制限される。分離軸に沿った界面の位置は、多数の変数に依存する。第１に、界面の位置は、分離チャンバからの個別血液成分の相対流量に依存する。第２に、界面の位置は、中心回転軸を中心にした分離チャンバの回転速度および分離されている血液の温度に依存する。第３に、界面の位置は、処理されている血液の組成で変動する。血液試料の組成は、供血者によって、および／または、患者によって、かなり変動することもある。また、血液の組成は、所与の供血者または患者について時間の関数として大幅に変動することもあり、血液が分離チャンバを通って複数回再循環するときは特にそうである。ヒトによって且つ処理中に変化する多くの変数に対する界面位置の感度を考慮すると、最適な分離状態が維持され且つ選択された血液成分の所望の純度が確実に達成されるために、血液処理中に界面の位置をモニタすることが重要である。また、界面位置の正確な特徴付けにより、処理中の血液組成の変化に、分離状態を調整し最適化することが可能となる。
【０００８】
前述から、全血試料および血液成分試料の処理をモニタし制御するための方法および装置の必要性が存在することが認識される。特に、照明の一貫した持続期間および強度を備えた制御されたストロボ光源を提供することを含む、遠心分離によって処理された血液成分の分離、抽出および収集を正確に特徴づけることができる光学的モニタリング方法および装置が求められている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許第５，６５３，８８７号明細書
【特許文献２】米国特許出願第１０／４１３，８９０号明細書
【発明の概要】
【００１０】
本発明は、流体、たとえば、血液、血液の成分、血液から引き出された流体を処理するのを改善するための装置で使用されるストロボＬＥＤ光源を提供する。
【００１１】
一態様において、本発明は、遠心分離による全血の分離、および、選択された分離された血液成分のその後の収集を改善する方法、装置および装置構成要素を提供する。特に、本発明は、回転する分離チャンバ内の、特に、１つまたは複数の抽出ポートを備えた光学セルを有する分離チャンバ内の、分離された血液成分による透過光および／または散乱光用のストロボ光源用の光学的方法、装置および装置構成要素に関する。
【００１２】
本発明は、血液を血液成分に処理するのを制御するための装置、特に、遠心分離機用のストロボＬＥＤ光源用の構成要素に関する。ストロボ装置は、中心照明軸のまわりに間隔をおいた反射面を備えた第１の光源と、反射面から半径方向に外向きに軸から間隔をおいて離れた発光ダイオードと、を備える。追加光源は、発光ダイオードを取り囲む修正パラボラ反射鏡を備え、パラボラ反射鏡は、焦点がＬＥＤの中心から半径方向に外向きになり、円形焦点地域を形成するように、対称軸から外向きに間隔をおいた壁を有する。選択された期間の間、ダイオードに電圧を加えるコントローラは、直列に接続された一対のスイッチを備え、ＬＥＤがスイッチの間に接続されている。スイッチの１つがグラウンドへ接続され、照明の期間の終わりに閉じられる。
【００１３】
中心回転軸を中心に回転する分離チャンバを有する遠心分離機用の例示的な光学モニタリングシステムは、少なくとも１つの光源と、集光要素と、デテクタと、を備える。中心回転軸を中心にした分離チャンバの回転は、結果として、遠心分離機の中心回転軸に対して垂直に配向された回転分離軸に沿った密度による分離チャンバ内の血液成分の分離になる。光源と集光要素との両方が、遠心分離機に位置決めされた観察領域に周期的に光連通するように構成されている。一実施形態において、光源およびデテクタは、分離チャンバの光学セルが、観察領域内に且つそれから周期的に回転するように構成されている。光源は、遠心分離機の少なくとも一部を照明する入射光ビームを提供することができ、好ましくは、回転している分離チャンバの光学セルであり、それによって、分離されている血液成分による透過光、散乱光、または、その両方を生成する。好適な光源は、可視光、赤外線および／または紫外線を含むがそれらに限定されない選択された波長範囲を有する入射光ビームを生成することができる。一実施形態において、分離チャンバの光学セルの複数の側部を照明することができる複数の光源が提供される。
【００１４】
集光要素は、観察領域から光を集光することができる。一実施形態において、観察領域から集光された光は、分離されている血液成分による透過光および／または散乱光、分離チャンバ等の遠心分離装置の構成要素による透過光および／または散乱光、または、その両方に対応する。集光要素は、収集された光をデテクタに方向づける。デテクタはまた、観察領域からの透過光および／または散乱光の強度の分布に対応する１つまたは複数の出力信号を生成することができてもよい。出力信号は、強度の分布を表示し、強度の分布を格納し、且つ／または、強度の分布を処理することができる装置たとえばコンピュータへ送信されてもよい。
【００１５】
本発明は、下記の説明、例、図面および特許請求の範囲によって、さらに例示される。
【図面の簡単な説明】
【００１６】
【図１】本発明の光学モニタリング制御システムを示す概略図である。
【図２】分離チャンバ、カメラおよび光源の切欠図である。
【図３】制御回路の機能ブロック図である。
【図４】図４Ａ、図４Ｂおよび図４Ｃの関係を示す図である。
【図４Ａ】図３の制御回路の概略図である。
【図４Ｂ】図３の制御回路の概略図である。
【図４Ｃ】図３の制御回路の概略図である。
【図５】頂部および底部のパルスＬＥＤ光源のトリガおよびトリガ遅延設定によって生成された光パルスを同期するための方法および装置を表す機能フロー図である。
【図６Ａ】本発明による同期タイミングコントローラ（ＳＴＣ）の制御回路の概略図である。
【図６Ｂ】本発明による同期タイミングコントローラ（ＳＴＣ）の制御回路の概略図である。
【図６Ｃ】本発明による同期タイミングコントローラ（ＳＴＣ）の制御回路の概略図である。
【図６Ｄ】本発明による同期タイミングコントローラ（ＳＴＣ）の制御回路の概略図である。
【図７】エンコーダおよびホール効果位置センサを備えたユーザストロボＬＥＤ光源によって生成された同期光パルスの機能フロー図である。
【発明を実施するための形態】
【００１７】
図面を参照すると、類似の参照符号は類似の要素を示し、２図以上に表れる同一の数字は、同一の要素を示す。また、以降、下記の定義が適用される。すなわち、
「光」および「電磁放射線」という用語は、同義的に使用され、粒子様の挙動も呈する電場および磁場の波を意味する。本発明の方法に有用な光は、ガンマ線、Ｘ線、紫外線、可視光、赤外線、マイクロ波、電波、または、これらの任意の組み合わせを含む。
【００１８】
「集光要素」は、光を集光し集光した光を所望の方法で配光する装置または装置構成要素を意味する。本発明に使用可能な集光要素は、血液処理装置の観察領域を照明するときに生成された、透過光、散乱光、または、その両方の少なくとも一部を集光することができる。本発明の例示的な集光要素は、デテクタ上に観察領域の画像を生成するように光を集光することができる。本発明の集光要素は、固定焦点レンズ、球面レンズ、円筒形レンズ、非球面レンズ、広角レンズ、ズームレンズ、凹面レンズ、凸面レンズ、両凹面レンズ、両凸面レンズ、複数のレンズを備えるレンズシステム、導波管、光ファイバカプラ、反射鏡、球面鏡、非球面鏡、プリズム、アパーチャ、レンズ、または、これらの任意の組み合わせまたは等価物を含むが、それらに限定されない。本発明の集光要素は、集光された光を別の光学装置または装置の構成要素に、たとえばデテクタに、方向づけることができる。集光要素は、選択的に調整可能な視野および／または焦点距離を有する少なくとも１つのレンズシステムを含む。集光要素は、中心回転軸に垂直である検出軸に沿って、平行移動することができる。
【００１９】
「視野」は、光線の角度分布を意味し、光線は、デテクタと光連通する集光要素のような光学検出システムによって、集光され検出される。本発明の光学検出システムは、固定視野、または、選択的に調整可能な視野を有することができる。
【００２０】
「血液処理」は、組成の変化を実現するために、血液試料またはその成分を取り扱うことを意味する。血液処理は、血液またはその成分を成分またはサブ成分に分離する方法、白血球除去（leukoreduction）、病原体不活性化、血液濾過、血液および血液成分の酸化、透析、血液浄化または血液清浄、病原体除去、血液および血液成分の加温、血液成分洗浄、および、赤血球グリセリン除去を含む。本発明は、血液試料またはその成分が、密度、サイズ、拡散率、沈降速度、界面化学特性、または、これらの特性の組み合わせに基づいて、成分またはサブ成分に分離される、改善された血液処理方法を提供する。
【００２１】
「観察領域」は、物体または複数の物体の照明された部分を意味する。観察領域からの透過光、散乱光、または、その両方の少なくとも一部が、集光要素によって集光され、デテクタによって検出される。本発明の好適な実施形態において、観察領域は、血液処理装置、たとえば光学セルのような血液処理装置の構成要素、または、血液試料容器上に位置決めされる。観察領域のサイズおよび位置は、集光要素の視野、血液処理装置からの集光要素の位置、デテクタの面積、および、集光要素に対するデテクタの位置、によって決定される。一実施形態において、観察領域のサイズ、形状および位置は、血液処理装置に対する集光要素の位置、および、集光要素の視野を制御することによって、選択的に調整可能である。本発明の一実施形態において、光学的に弁別可能な成分間の１つまたは複数の界面を、観察領域で見ることができる。別の好適な実施形態において、少なくとも１つの分離された成分を、観察領域で見ることができる。別の好適な実施形態において、少なくとも１つの抽出ポートを、観察領域で見ることができる。
【００２２】
「血液試料」および「血液」は、同義的に使用され、全血、１つまたは複数の血液成分、１つまたは複数の血液製剤、または、これらの任意の組み合わせを意味する。本明細書で使用される「血液成分」および「血液製剤」は、血液の細胞成分、非細胞成分、および、血液の細胞成分と非細胞成分との組み合わせを含む。例示的な細胞成分は、赤血球、白血球および血小板、および、それらの物質の組み合わせを含むが、それらに限定されない。白血球は、単球、顆粒球、無顆粒白血球、および、リンパ球を備える。例示的な非細胞成分は、血漿、溶解塩およびミネラルおよび血漿タンパク質を含むが、それらに限定されない。血液成分は、血液サブ成分にさらに細分することができる。
【００２３】
「落射照明」は、物体の照明および散乱光の生成を意味する。落射照明では、光は、光学軸とは異なる照明の軸に沿って物体へ方向づけられ、それによって散乱光が集光され検出される。
【００２４】
「平行」は、物理的な、非電気的な意味で、２つの表面がすべての点で互いから等距離にあり、同一の方向または湾曲を有する形状を意味する。実質的に平行とは、遠隔平行性（absolute parallelism）からの角偏差（angular deviation）が１０度未満であり、好ましくは用途によっては０．５度未満である形状を意味する。
【００２５】
下記の説明において、正確な本発明の性質を十分に説明するために、本発明の装置、装置の構成要素および方法の多数の特定の詳細が述べられている。しかし、これらの特定の詳細なしで本発明を実施することができることが、当業者には明らかである。明細書において、「好適な実施形態」、「より好適な実施形態」、または、「例示的な実施形態」への言及は、実施形態に関連して述べられたかまたは説明された特定の特徴、構造、または、特性が、本発明の少なくとも１つの実施形態に含まれることを意味する。明細書の様々な箇所での「好適な実施形態」、「より好適な実施形態」、または、「例示的な実施形態」への言及は、必ずしも同一の実施形態に言及している訳ではない。
【００２６】
図１は、分離チャンバの観察領域からの光のパターンに対応する散乱光および／または透過光の強度の分布を測定することができる本発明の光学モニタリングシステムの例示的な実施形態を概略的に示す。例示されたモニタリングシステム１０は、光源１２と、集光要素１４と、デテクタ１６とを備える。光源１２は、分離チャンバ２０を備える遠心分離機１８に光連通し、分離チャンバは、中心回転軸２２を中心に回転する。中心回転軸２２を中心に回転することにより、分離チャンバ内の血液試料が中心回転軸２２に直交して配向された複数の回転分離軸に沿って別々の血液成分に分離する。好適な実施形態において、分離チャンバ２０は、円形フィラー（図１では図示せず）に保持され、フィラーもまた中心回転軸２２を中心に回転可能である。フィラーは、分離チャンバが位置決めされ固定される内側の円形溝を有するディスクを備えてもよい。遠心分離機の動作中に、フィラーは、フィラーと分離チャンバとの両方が中心回転軸２２を中心に回転するように、回転手段に作用的に接続される。図１に示す概略図において、血液試料は、赤血球成分２４に対応する外側のより高密度の相、白血球および血小板含有成分（たとえば軟膜）２６に対応する中間密度相、および、濃厚血小板血漿成分２８に対応する内側のより低密度の相に分離される。
【００２７】
１つまたは複数の光源１２、３６は、入射光ビーム３０、３８を提供し、光ビームは、好ましくは、分離されている血液試料から散乱光および／または透過光を生成するように、分離チャンバ２０の観察領域３２を照明する。一実施形態において、光源１２は、入射光ビームを生成することができ、その一部は、分離チャンバ２０で分離されている少なくとも１つの血液成分を透過する。観察領域３２からの散乱光および／または透過光３４の少なくとも一部は、集光要素１４によって集光される。集光要素１４は、集光された光３４の少なくとも一部をデテクタ１６に方向づけることができる。デテクタ１６は、観察領域からの散乱光および／または透過光３４のパターンを検出することにより、散乱光および／または透過光の強度の分布を測定する。例示的な実施形態において、散乱光および／または透過光の強度の分布は、観察領域３２からの光のパターンに対応する画像を備える。一実施形態において、本発明の画像は、モノクロ画像であり、分離軸に沿って、分離された血液成分の輝度の測定を提供する。あるいは、本発明の画像は、カラー画像であり、分離軸に沿って、分離された血液成分の色の測定を提供する。
【００２８】
観察領域３２は、遠心分離機１８の一部に、好ましくは分離チャンバ２０上に位置決めされる。図１に示す例示的な実施形態において、分離された血液成分、および、光学的に弁別可能な血液成分の間の界面を、観察領域３２で見ることができる。一実施形態において、観察領域は、処理されている血液試料を通って入射ビームを透過するウインドウを有する分離チャンバの光学セルに位置決めされる。代替の好適な実施形態において、１つまたは複数の抽出ポート（図１では図示せず）を、観察領域３２で見ることができる。別の実施形態において、観察領域３２は、血液試料の漏れおよび／または分離チャンバまたはフィラーの不適切な整列配置を見ることができるように、分離チャンバ２０の頂部に位置決めされる。別の代替の実施形態において、観察領域３２は、分離された血液成分の組成を直接モニタすることができるように、分離チャンバ２０の一部に位置決めされる。たとえば、本発明のモニタリングシステムは、収集された細胞成分のタイプの特性を明らかにし、時間の関数として分離チャンバから抽出されたセルの量を数える方法を提供する。あるいは、モニタリングシステムは、血漿タンパク等の非細胞成分の濃度を直接測定するように構成される。一実施形態において、観察領域３２は、散乱光および／または透過光の強度の分布の各測定から複数の測定が得られるように構成される。
【００２９】
任意に、観察領域３２はまた、分離チャンバに対して集光要素およびデテクタと同じ側に位置決めされた落射照明光源３６によって照明されることができる。落射照明光源３６は、入射ビーム３８を生成するように位置決めされ、入射ビーム３８は、血液試料および／または遠心分離機によって散乱される。分離チャンバによって散乱された落射照明光源３６からの光の一部は、集光要素１４によって集光され、デテクタ１６によって検出されることにより、散乱光および／または透過光の強度の分布を測定する。
【００３０】
一実施形態において、デテクタ１６はまた、測定された散乱光および／または透過光の強度の分布および／または画像に対応する出力信号を生成することもできる。図１に示す例示的な実施形態において、デテクタ１６は、出力信号を受け取ることができる遠心分離装置コントローラ４０に作用的に接続されている。一実施形態において、遠心分離装置コントローラ４０は、測定された強度の分布を表示し、測定された強度の分布を格納し、測定された強度の分布をリアルタイムに処理し、モニタリングシステムおよび遠心分離機の様々な光学的および機械的な構成要素またはこれらの任意の組み合わせに制御信号を送信する。好適な実施形態において、遠心分離装置コントローラ４０は、遠心分離機１８に作用的に接続され、遠心分離機の選択された動作条件、たとえば、分離チャンバからの細胞成分および非細胞成分の流量、分離軸に沿った１つまたは複数の界面の位置、中心回転軸２２を中心にした分離チャンバの回転速度、抗凝固剤または他の血液処理剤の血液試料への注入、または、これらの任意の組み合わせ、を調整することができる。
【００３１】
図１に示されるように、遠心分離装置コントローラ４０はまた、光源１２および／または落射照明光源３６に作用的に接続されることができる。この実施形態において、遠心分離装置コントローラ４０および／またはデテクタ１６は、照明条件を制御するための出力信号を生成することができる。たとえば、デテクタからの出力信号を使用して、照明パルスのタイミング、照明強度、照明波長の分布、および／または、光源１２および／または落射照明光源３６の位置を制御することができる。また、図１に例示された実施形態に示されているように、遠心分離装置コントローラおよびデテクタは、双方向通信を行う。この実施形態において、遠心分離装置コントローラは、デテクタ１６へ制御信号を送り、デテクタ露出時間、デテクタゲインを選択的に調整し、モノクロ画像形成とカラー画像形成との間を切り換える。
【００３２】
本発明の光源は、遠心分離機の観察領域を照明するために１つまたは複数の入射ビームを生成することができる発光ダイオード光源を備える。遠心分離機の１つの側部または複数の側部を照明するために、複数のランプが位置決めされてもよい。本発明に使用可能な光源は、発光ダイオードおよび発光ダイオード光源のアレイを含む。発光ダイオード光源は、精密にタイミングを取った照明パルスを生成することができるため、いくつかの用途では発光ダイオード光源の使用が好適である。好適な光源は、実質的に均一な強度を有する入射光ビームを生成する。一実施形態において、本発明の光源は、選択された波長範囲および選択された強度を有する入射ビームを生成する。
【００３３】
好適な実施形態において、本発明の光学モニタリングシステムは、複数の光源を備え、各光源は、波長範囲の異なる入射光ビームを生成することができる。一実施形態において、たとえば、本発明の光学モニタリングシステムは、白色光源、赤色光源、緑色光源、青色光源、および、赤外線光源の任意の組み合わせを備える。波長範囲の異なる光源の組み合わせを使用すると、血液の細胞成分および非細胞成分の吸光係数および散乱係数が波長とともに変わるため、分離された血液分画を区別し特性を明らかにするのに有益である。たとえば、赤血球含有成分は、約５００ｎｍ〜約６００ｎｍの範囲にわたって濃厚血小板血漿含有成分よりも有意に強く光を吸収するため、この範囲から選択された波長を有する光で照明することによって、濃厚血小板血漿含有成分から容易に識別される。また、照明のために複数の着色光源を使用すると、抽出された血液成分における白血球タイプの特性を明らかにする手段が提供される。異なる白血球タイプは、波長が異なり、吸収および散乱断面が異なるため、白血球含有血液成分から透過光および／または散乱光をモニタすることにより、血液成分の様々な白血球タイプを弁別し、各セルタイプの量を定量化する手段が提供される。
【００３４】
本発明の光源は、連続入射光ビームまたはパルス入射光ビームを提供する。パルス光源は、分離チャンバの回転に同期するようにオンおよびオフを切り換えることができ、センサ、スイッチまたは他のタイプの既知の協働を用いて、実質的に固定位置の観察領域に対応する透過光および／または散乱光の強度の分布を提供する。あるいは、本発明のパルス光源は、分離チャンバの回転に非同期でオンおよびオフを切り換えることができ、全回転ごとに異なる観察領域に対応する透過光および／または散乱光の強度の分布を提供するように構成することができる。この代替の実施形態は、観察領域の位置を選択的に調整することにより、分離チャンバの異なる領域を精査する方法を提供する。一実施形態において、照明パルスをトリガすることは、遠心分離機の回転スピードに基づくか、または、当該技術分野で周知の光学的な方法または電子的な方法によって検出された分離チャンバの角度位置に基づくことができる。好適な実施形態において、遠心分離装置コントローラおよび／またはデテクタによって生成されたトリガパルスは、トリガを提供する。
【００３５】
光学モニタリング制御システムは、図１および２に例示されるように構成された、光源、近焦点レンズシステムおよびデジタルカメラを備える。照明は、分離チャンバの下に位置決めされた光源によって提供される。光源は、光を光学セルの白血球抽出ポートを通して方向づけることができる。照明はまた、光学セルの頂部にも提供される。光学セルを通って透過され散乱される光は、近焦点レンズシステムによって集光され、デジタルカメラによって検出される。透過光および散乱光の分布は、分離チャンバの回転ごとに、または１つおきの回転ごとに、または選択されたように獲得される。
【００３６】
画像データ分析アルゴリズムおよびプロセス制御アルゴリズムの動作から生成された測定結果もまた、カメラおよび集光要素１４、および、光源１２、３６およびカメラトリガハードウェアに送られる出力信号の基の信号となってもよく、獲得され分析される画像の品質を最適化する。たとえば、出力信号は、照明ビームの強度を調整してもよく、照明ビームの色を変えてもよく、または、カメラのゲインまたは露出時間を調整してもよい。
【００３７】
本発明は、較正マーカに対する光学的に弁別可能な血液成分の界面の位置と、分離され抽出された血液成分の組成および／またはフラックスとを同時にリアルタイムに測定することができる遠心分離機によって血液処理をモニタし制御するためのシステムを含む。優れた感度、機械的耐久性および信頼性を呈する本発明のシステムは、固定焦点レンズが装備された固定位置ＣＣＤカメラ４２、頂部パルスＬＥＤ（発光ダイオード）光源、および、底部パルスＬＥＤ光源を備える。固定焦点レンズシステムを備えた固定位置ＣＣＤカメラを使用することにより、光学的整列配置を維持する点で高い機械的安定性を呈するシステムを提供し、その結果、光学経路長照明および検出ビームを周期的に調整する必要性がなくなる。また、頂部および底部のパルスＬＥＤ光源を使用することにより、血液処理システムに方向づけられその後検出される照明光ビームの波長分布および強度にかなりの柔軟性を提供する。さらに、頂部および底部のパルスＬＥＤ光源を使用することにより、分離チャンバの回転する光学セルの高い光学的品質の画像を生成するために有用な照明パルスの精密で再現可能な時間特性も提供する。
【００３８】
図２は、分離チャンバ２０、カメラまたはデテクタ１６、および、光源１２、３６の切欠図である。図４は、図２および図３に例示された光学モニタリング制御システムの側面斜視図である。例示された光学モニタリング制御システム１０は、固定焦点レンズシステム４４が装備されたＣＣＤカメラ４２、光学セル４６、頂部パルスＬＥＤ光源３６および底部パルスＬＥＤ光源１２を備える。図３に例示されるように、固定焦点レンズシステム４４を備えたＣＣＤカメラ４２は、光学セル４６に光連通し、光学軸４８に交差するように位置決めされる。頂部パルスＬＥＤ光源３６は、光学セル４６に光連通し、且つ、複数の平行上部照明光ビーム５０を、光学軸４８と交差する伝播軸に沿って伝播し、光学セル４６の頂側部５２に方向づけることができるように位置決めされる。底部パルスＬＥＤ光源１２もまた光学セル４６に光連通し、複数の平行底部照明光ビーム５４を、光学軸４８に平行な伝播軸に沿って伝播し、光学セル４６の底側部５６に方向づけることができるように位置決めされる。
【００３９】
例示的な実施形態において、頂部パルスＬＥＤ光源３６は、光学セル４６の頂部５２から約４．２６インチに位置決めされ、底部パルスＬＥＤ光源１２は、光学セル４６の頂部５２から約７．４７インチに位置決めされる。図３に示された例示的な実施形態において、固定焦点レンズシステム４４を備えたＣＣＤカメラ４２は、固定焦点レンズシステムの焦点面が、光学セル４６の選択された光学表面、たとえば、インタフェースモニタリング領域、較正マーカ、１つまたは複数の抽出ポートおよび１つまたは複数の入口等に対応する光学表面と実質的に同一平面上にあるように位置決めされる。この実施形態において、ＣＣＤカメラ４２はまた、光学セル４６の選択された光学表面に対応する画像がＣＣＤカメラ４２の検知表面に提供されるように、光学軸４８に沿って一定の距離だけ固定焦点レンズシステムの中心から離れる。この光学構成の利点は、回転する光学セル４６の頂部５２の画像を構成する光強度の分布を、リアルタイムで測定し分析することを可能にすることである。
【００４０】
図２に示された断面図を参照すると、第１の透明プレート５８が、固定焦点レンズシステム４４を備えたＣＣＤカメラ４２と光学セル４６との間に設けられ、第２の透明プレート６０が、底部パルスＬＥＤ光源１２と光学セル４６との間に設けられている。第１および第２の透明プレート５８および６０は、固定焦点レンズシステム４４を備えたＣＣＤカメラ４２と頂部パルスＬＥＤ光源３６と底部パルスＬＥＤ光源１２とが、分離チャンバから試料が漏れた場合に、処理されている試料に接触しないように、これらの構成要素を光学セル４６から物理的に隔離している。
【００４１】
図２に例示された光学モニタリング制御システムの頂部パルスＬＥＤ光源３６および底部パルスＬＥＤ光源１２は、それぞれ、複数のＬＥＤ、たとえばＬＥＤアレイ光源を備える。頂部パルスＬＥＤ光源３６は、複数のＬＥＤ６２を備え、各々が、パラボラ反射鏡６４を装備し、ビーム平行化を提供する。
【００４２】
頂部および底部のパルスＬＥＤ光源３６および１２に有用なＬＥＤは、赤色ＬＥＤ、緑色ＬＥＤ、白色ＬＥＤ、赤外線ＬＥＤ、紫外線ＬＥＤ、または、これらの任意の組み合わせでありうる。本発明に有用なＬＥＤは、光学セル４６の画像を備える強度分布の測定を可能にするほど十分に大きな強度を有する平行ビームを提供する。本発明の一実施形態において、ＬＥＤ駆動回路は、装置の性能を最適化するために頂部および／または底部のＬＥＤ光源に近似して任意に位置決めされる。
【００４３】
頂部パルスＬＥＤ光源３６および底部パルスＬＥＤ光源１２は、正確に選択可能な時間特性を有する同期光パルスを提供することができる。本発明に使用可能な光パルスのパルス幅は、遠心分離機の回転速度に依存する。典型的には、光パルスのパルス幅が短いほど、獲得された光強度分布に対応する光学画像のぶれが少なくなる。しかし、パルス幅を大きくすると、より多くのフォトンがカメラのＣＣＤによって集積されることを可能にし、従って、信号対雑音比が高められる。約３０００ＲＰＭに等しい回転速度には、約８マイクロ秒未満のパルス幅が、生成された光学セルの画像のぶれを最小限にするのに有用である。本発明のいくつかの用途に有用な例示的な光パルスは、約１マイクロ秒〜約５０マイクロ秒の範囲にわたって選択されたパルス幅を有する。
【００４４】
一実施形態において、ＣＣＤカメラ４２は、固定焦点レンズシステムから一定の選択された距離に位置決めされたモノクロまたはカラーのＣＣＤカメラを備える。ＣＣＤカメラ４２および固定焦点レンズシステムは、これらの要素間の選択された離間距離を維持することができ、且つ、不必要な散乱光の検出を最小限にすることもできる筐体に収容されることができる。例示的な固定焦点レンズシステムは、複数の球形レンズ、円筒形レンズ、スペーサ、または、これらの要素の任意の組み合わせを備える。例示的なＣＣＤカメラは、ポイントグレーリサーチ社（Ｐｏｉｎｔ  Ｇｒｅｙ  Ｒｅｓｅａｒｃｈ，  Ｉｎｃ．）製の「フリー（Ｆｌｅａ）」であり、約１０２４ピクセル×７６８ピクセルに等しいピクセル面積を有する。例示的なレンズは、 リノスフォトニクス社（Ｌｉｎｏｓ  Ｐｈｏｔｏｎｉｃｓ）製の焦点距離２８ミリメートルを有するＦ２．８固定焦点長レンズシステムを備える。例示的な光学構成要素のこの組み合わせは、約１０ｍｍ（３／８インチ）×１５ｍｍ（１／２インチ）に等しい視野、および、約１．５ｍｍ（１／１６インチ）〜約１５ｍｍ（１／２インチ）の範囲から選択された被写界深度を提供する。この視野および被写界深度により、インタフェース領域の界面位置の位置をモニタし制御するために有用な光学セル４６の画像を構成する光強度の分布、および、１つまたは複数の抽出ポートから出る細胞物質の組成を測定することができる。固定焦点レンズシステムを装備したＣＣＤカメラを使用することは、システムの機械的安定性を高め、ＣＣＤカメラ４２、固定焦点レンズシステムおよび光学セルの選択された相対的な配向および位置を維持するのに有用である。本発明のこの態様は、システムに、インタフェース領域の光学的に弁別可能な分離された血液成分の間の界面層の位置および１つまたは複数の抽出ポートを通って光学セルから出る分離された血液成分の組成を高度に再現可能に測定する能力を提供する。
【００４５】
図２はまた、本光学形状によって提供された光学経路長を示す。頂部パルスＬＥＤ光源３６は、複数のパルス平行上部照明光ビーム５０を生成し、これは、光学軸４８に交差する伝播軸に沿って伝播する。上部照明光ビーム５０の少なくとも一部は、透明プレート５８を通り、光学セル４６の頂側部５２に方向づけられる。上部照明光ビーム５０の一部は、光学セル４６、その中の１つまたは複数の分離された血液成分、および／または、フィラーまたはロータ６６によって散乱する。底部パルスＬＥＤ光源１２は、平行底部照明光ビーム５４を生成し、これは、光学軸４８に実質的に平行な伝播軸に沿って伝播する。底部照明光ビーム５４の少なくとも一部は、透明プレート６０を通り、光学セル４６の底側部５６に方向づけられる。底部照明光ビーム５４の一部は、光学セル４６およびその中の１つまたは複数の分離された血液成分を透過する。光学セル４６を透過した光は、インタフェースモニタリング領域、１つまたは複数の入口、１つまたは複数の抽出ポート、１つまたは複数の較正マーカ、または、これらの任意の組み合わせに対応することができる。
【００４６】
光学セル４６によって透過され且つ／または散乱した光６８は、固定焦点長レンズシステムによって集光され、ＣＣＤカメラ４２の検知表面に画像形成される。このようにして、光強度の分布は、光学セル４６の少なくとも一部、たとえば光学セル４６の頂部５２の画像に対応するＣＣＤカメラ４２によって測定される。上部照明光ビーム５０に対応する散乱光の検出は、主に、システム較正、近似識別および平行移動センサトラッキングのために使用される。底部照明光ビーム５４に対応する透過光の検出は、主に、光学セル４６の光学的に弁別可能な分離された血液成分の１つまたは複数の界面層の位置を測定するために、且つ、光学セル４６の１つまたは複数の抽出ポートから出る分離された血液成分の組成およびフラックスを測定するために使用される。頂部および底部両方の照明から発生する透過光および散乱光を検出することにより、獲得された光強度の分布から抽出することができる情報の量が最大限になり、本発明の光学モニタリング制御システムの多機能性能が高まる。
【００４７】
任意に、光学モニタリング制御システム１０は、頂部および底部のパルスＬＥＤ光源３６および１２の光レベルを最適化にするために有用な１つまたは複数の追加の光デテクタをさらに備えてもよい。一実施形態において、底部パルスＬＥＤ光源１２からの散乱光を測定することができるフォトダイオードを備える追加の光デテクタが設けられる。底部パルスＬＥＤ光源１２からの散乱光を測定することができる追加の光デテクタを使用することは、本発明のトラブルシューティングおよびエラー処理態様に有用である。
【００４８】
ＣＣＤカメラ４２は、測定された光強度の分布に対応する１つまたは複数の出力信号を生成することができる。出力信号は、コンピュータまたはプロセッサのような１つまたは複数の遠心分離装置コントローラに送られ、獲得された透過光および／または散乱光の強度の分布を分析することができ、抽出された血液成分の分離状態および組成に影響を与える重要な動作条件を調整することができる。選択的に調整可能な動作条件は、遠心分離機の回転速度、１つまたは複数の入口ポンプの流量、および、１つまたは複数の抽出ポンプの流量、または、これらの任意の組み合わせを含むが、それらに限定されない。
【００４９】
光学モニタリング制御システム１０は、パルス光学システムであり、遠心分離機１８の中心回転軸を中心に回転するときに、光学セル４６に対応する強度分布が獲得される。強度分布は、光学セル４６の全回転ごとに獲得されてもよく、または、光学セル４６の選択された回転、たとえば、１つおきの全回転ごとに獲得されてもよい。光学セル４６の１つおきの回転ごとに強度分布を獲得することは、１秒当たり約３０フレーム以上を収集することができる高価なＣＣＤカメラの必要性をなくし、且つ、分離チャンバの回転時に観察された再現可能な器具ジッタに関連した空間的指標、較正および光学的画像形成の問題を最小限にするため、いくつかの用途で有益である。
【００５０】
光学セル４６の良好な画像に対応する強度分布を生成するために、頂部および底部の照明パルス、カメラシャッタおよびゲート設定、および、遠心分離機の分離チャンバの光学セル４６の回転は、正確に同期されなければならない。これらの要素を正確に同期することにより、光学セルの光学的品質の高い画像を構成する透過光および／または散乱光の強度を、各全回転ごとにまたは選択された回転ごとに測定することができる。本発明において、光学セルまたは分離チャンバのような、遠心分離機および／またはモニタリング制御システムの構成要素の回転位置は、当該技術分野では周知のように、エンコードされたモータシステムを使用して、正確に測定される。例示的な実施形態において、遠心分離機１８には、遠心分離機の回転要素上の複数のマーカを読み取り可能な光学センサが設けられている。この構成により、光学セルの回転位置のリアルタイム測定、好ましくは、約０．０９度まで正確な回転位置の測定を可能となる。また、この構成により、回転速度が変わるときに、たとえば遠心分離機のスピンアップまたはスピンダウン中等に、光学セルの回転位置のリアルタイム測定が提供される。
【００５１】
エンコードされたモータシステムはまた、光学セルまたは分離チャンバのような、遠心分離機および／またはモニタリング制御システムの構成要素の回転位置に対応する出力信号をリアルタイムに生成することもできる。例示的な実施形態において、これらの出力信号は、頂部パルスＬＥＤ光源、底部パルスＬＥＤ光源およびＣＣＤカメラ４２へ１つまたは複数のトリガ信号を送ることができる同期タイミングコントローラへの入力として提供される。同期タイミングコントローラによってこれらの構成要素へ提供されたトリガ信号は、トリガ位置（すなわち、光パルスへ開始させるための時間または回転位置）、トリガ周波数（すなわち、光パルスが生成されるべき回転数）、パルス幅設定（光パルスの持続期間）、および、遅延設定（すなわち、トリガ信号を受け取ったときと光パルスが開始させられるべきときとの間の時間）、を含む。頂部および底部のパルスＬＥＤ光源のＬＥＤ要素およびカメラシャッタおよびゲート設定は、同期タイミングコントローラによって生成されたトリガ信号を使用して、遠心分離機の所望の回転位置に対応する時間に、正確にトリガされることができる。トリガ信号に対応する回転位置を選択することにより、本発明において、観察領域が選択的に調整されることを可能にする。このようにして、光学セル、分離チャンバおよび遠心分離機の他の構成要素の複数の選択された領域が、光学的に探査される。
【００５２】
例示的な実施形態において、ＣＣＤカメラ４２の露出時間は、ＣＣＤカメラ４２のゲート設定またはシャッタではなく、むしろ、頂部および底部のパルスＬＥＤ光源によって生成された光パルスのパルス幅によって決定される。一実施形態において、ＣＣＤカメラ４２のシャッタは、有意な背景雑音の影響なしで、光パルス持続時間よりも長く開くことができる。ＬＥＤ光源によって生成された光パルスのパルス幅は非常に正確に制御することができるため、本発明のこの態様は、短い露出時間に対応する非常に正確なゲーティングを提供する高価なＣＣＤカメラの必要性を排除する。
【００５３】
好適な実施形態において、ＬＥＤ光源の各々は、図３の機能ブロック図に例示された制御回路７０等の制御回路によって制御される。制御回路７０は、ＬＥＤ光源のすべてのまたは任意のサブセットを制御してもよい。しかし、好ましくは、単一の制御回路が、同一の周波数特性を有し且つ１つのＬＥＤ素子の故障が装置全体の機能に有意な影響を与えないように位置決めされた２つのＬＥＤ素子を制御する。制御回路７０は、電力コンデンサのバンク７８上に選択された電荷を維持するために、マイクロプロセッサからの信号に応答して、第１のスイッチ回路７４および第２のスイッチ回路７６を選択的に開閉するスイッチ制御ユニット７２を備える。初めは、第１のスイッチ回路７４は閉じられてコンデンサバンク７８を充電し、一方、第２のスイッチ回路７６は開いている。充電率制御回路８０が、電荷をコンデンサバンク７８へ移動させることができる速度を制限する。これにより、システムを開始するときの突然の電流需要を防止する。そのような突然の需要は、システム全体の他の電力需要を阻害することもある。充電率は固定されてプログラム可能でなくてもよく、一方、制御回路７０の他のパラメータはプログラム可能である。充電率は、コンデンサバンク７８に保存された電圧を調整するデジタルポテンショメータを使用することによってプログラム可能にすることができる。次いで、マイクロプロセッサは、プログラムされ制御された変化の速度で、デジタルポテンショメータの設定をランピングする（ramping）ことによって充電を制御することができる。
【００５４】
電圧制御回路８２は、コンデンサバンク７８に保存されたピーク電圧を調整する。マイクロプロセッサは、コンデンサバンク７８に保存された電圧を選択し、好ましくは、電圧制御回路のデジタル制御可能なデバイスを調整する。コンデンサバンク７８が選択された電圧へ充電された後に、第１のスイッチ回路７４は閉じたままであることができ、通常動作中に充電を継続することが可能であり、第２のスイッチ回路７６を閉じることができ、下記に説明されるように、他の回路構成要素を通ってＬＥＤ素子に駆動電力を提供する。スイッチ制御ユニット７２は、タイミングおよび制御信号を提供して、第１のスイッチ回路７４を閉じ、第２のスイッチ回路７６を閉じる。スイッチ回路７４および７６の両方が閉じているときには、電力は、コンデンサバンク７８内で構築される。
【００５５】
第２のスイッチ回路７６を閉じると、電力は、１つまたは複数のＬＥＤ素子８４へ利用可能である。パルス駆動コントローラ８６は、マイクロプロセッサからの信号に応答して、第１の迅速な応答スイッチ８８および第２の迅速な応答スイッチ９０を制御し、それらは、ＬＥＤ素子８４を一括する（bracket）。迅速な応答スイッチ８８、９０の各々は、明確な方形電力波（square power wave）をＬＥＤ素子８４へ提供するように、オンオフにするように構成されている。第２の迅速な応答スイッチが開くと、第１の応答スイッチを閉じることができ、電流にコンデンサバンク７８からＬＥＤ素子８４を介したグラウンドへ電流の経路を提供する。下記により十分に説明されるように、波の前縁がよく画成されて険しく、このとき、電圧は、コンデンサバンク７８のコンデンサの実質的なサイズのため、比較的一定のままである。選択された照明期間後、第１および第２のスイッチ回路７４、７６に関連して上記に説明されたように、パルス駆動コントローラ８６が簡単に両方のスイッチ８８、９０をオフにし、次いで、第２の迅速な応答スイッチ９０をグラウンドへ開き、残っている電流をＬＥＤ素子８４から排出し、ＬＥＤ素子８４を敏速に且つ正確にオフにする。
【００５６】
制御回路７０は、正確に制御されたストロボ照明を生成する。ＬＥＤ素子出力の持続期間および大きさ（電圧）の両方が、デジタル式に制御される。これは、光生成現象が本質的に爆発であり、持続期間が不確定で強度が定まらないキセノンストロボフラッシュランプとは対照的である。本ストロボ光の好適な用途において、ターゲット画像は、光源および検出装置（ビデオカメラ）の両方から比較的離れているが、検出される現象、すなわち流体層間の境界は、かなりわずかである。きわめて強いが一貫した照明が必要とされる。カメラのシャッタスピードは、観察されている現象よりも遅いため、ストロボフラッシュは、光学システム用のシャッタとして機能し、したがって、開始および終了の両方が急でなければならない。これらの特徴は、本明細書で述べられたＬＥＤ光源および制御回路によって提供される。
【００５７】
さらに、ストロボ光の好適な用途において、制限パラメータが、ビデオカメラのリフレッシュレートである傾向があり、これは一般に約２５〜３０Ｈｚに制限され、すなわち、より高速回転でロータの１つおきの回転ごとに１画像である。画像の間のこのサイクルは、ＬＥＤ光源による照明の期間に比較して、比較的長いため、制御回路７０は、第１および第２の迅速な応答スイッチ８８、９０を通ってＬＥＤ素子８４へ電力を供給する前に、第１および第２のスイッチ回路７４、７６を通ってコンデンサバンク７８を完全に再充電するのに十分な時間を有する。
【００５８】
制御回路７０は、図４Ａ、図４Ｂおよび図４Ｃにより詳細に例示される。スイッチ制御ユニット７２は、Ｐで電源に接続され、好ましくは２４Ｖである。インダクタ９２は、ＬＥＤ素子８４が迅速にオンおよびオフに切り換えられるときに制御回路７０に生成された、高周波数過渡電気信号が血液処理装置の他の部品内に伝播し戻るのを防止することによって、逆フィルタリングを提供する。供給された電圧は、抵抗９４を通って、グラウンドへ接続されたツェナーダイオード９６およびコンデンサ９８、１００間で制御される。一方のコンデンサ９８は、供給された電力の変動を平滑化できる大きさであるが、他方のコンデンサ１００は、大きさが約２桁小さく、インダクタ９２によってブロックされた高周波数過渡信号のグラウンドへの経路を呈する。制御された電圧は、たとえば、リニアテクノロジー社（Ｌｉｎｅａｒ  Ｔｅｃｈｎｏｌｏｇｙ）から販売されているデュアルＭＯＳＦＥＴドライバＬＴＣ１２５５ＣＳ８のような集積スイッチング回路１０２のＶｓピン、ピン６に接続されている。ピン番号は、例示的なＬＴＣ１２５５ＣＳ８デバイスに対応する。集積スイッチング回路１０２のグラウンドピン、ピン３は、システムグラウンドに接続されている。例示的な集積スイッチング回路１０２は、２つのＭＯＳＦＥＴスイッチングチャネルを提供する。そのようなスイッチングチャネルは、別個の集積回路によって、または、別々の構成要素によって提供されることができる。ドレインセンス（drain sense）ピン、ピン１およびピン８は、両方ともリセット回路（図示せず）に接続されている。リセット回路は、不十分な電圧等の一定の状態に応答して、または、動作遅延が生じて初期過渡信号を沈降させる（settle out）初期状態に応答して、スイッチング回路１０２をリセットするための信号を提供しなければならない。そのようなリセット回路の構造は、当業者には既知であり、関連マイクロプロセッサの特性に依存しており、ここでさらに全体的に述べる必要はない。スイッチング回路１０２において、ゲート駆動ピン、ピン２およびピン７は、スイッチがオフにされるべきときに駆動されてグラウンドへ接続し、または、スイッチがオンにされるときにハイ（high）に駆動される。当然ながら、当業者には、異極性を使用する回路も使用してもよいことがわかる。本例の入力ピン、ピン４およびピン５は、ハイで動作しており、例示的なＬＴＣ１２５５集積回路では、内側入力ラッチを適切に設定するために電力の印加中にロー（low）に保持されなければならない。入力ピン４は、抵抗１０４、１０６およびコンデンサ１０８を備える分圧回路を介して接続されている。接続Ｒでのリセット回路（図示せず）は、適切な時間（たとえば、２秒よりも長い）、適切な電力（たとえば、２４Ｖ）が使用可能ではないときには、入力ピン４をローに保ち、関連ＭＯＳＦＥＴを閉じておく。適切な電力が検出されると、入力ピン４はゲート駆動ピン２を開き、制御回路７０の充電が開始する。電流が充電率制御回路８０に流れ、充電率制御回路８０において、大きな抵抗１１２およびコンデンサ１１０により、制御下でＭＯＳＦＥＴを閉じ、コンデンサバンク７８に流れる電流の初期速度を制限することができる。マイクロプロセッサ等の他の回路に悪影響を与える可能性があるかまたは電源またはシステムをリセットさせる可能性がある電流の突然の増加またはスパイクを防止するために、コンデンサバンクへの突入電流の流れを管理することができることが望ましい。小さな抵抗１１４（大きな抵抗１１２の約１／１０）が、大きな抵抗１１２に直列に接続され、コンデンサ１１０は２つの抵抗１１２、１１４の間に接続されている。戻り電流路が、抵抗１１６およびダイオード１１８を通って設けられ、上述の大きな抵抗１１２、小さな抵抗１１４およびコンデンサ１１０と並列に接続されており、順方向バイアスがかけられて、第１のスイッチ回路７４のＭＯＳＦＥＴ集積回路１１２のゲートを出る。
【００５９】
充電率制御回路８０からの信号により、第１のスイッチ回路７４が閉じられ、電流が電圧制御回路８２からコンデンサバンク７８へ流れるのを可能にする。第１のスイッチ回路７４は、スイッチとして機能する、たとえば、インターナショナルレクティファイア社（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｒｅｃｔｉｆｉｅｒ）から販売されているＩＲＦＺ４４Ｎ  ＭＯＳＦＥＴのようなパワーＭＯＳＦＥＴ集積回路１２２を備える。ＭＯＳＦＥＴ１２２のゲートは、充電率制御回路８０を通って、スイッチ回路１２２のゲート駆動ピン２に連結されている。ＭＯＳＦＥＴのソースは、コンデンサバンク７８および第２のスイッチ回路７６に接続されている。ＭＯＳＦＥＴ１２２のドレインは、電圧制御回路８２に接続されている。ゲートおよびソース間に接続されたツェナーダイオード１２０は、ゲートの電圧を１２ボルトに固定する。
【００６０】
電圧制御回路８２は、コンデンサバンク７８の電圧を回路７０によって駆動されたＬＥＤ素子の電圧要件に一致させて設定する命令群を受け取る。異なる波長または色を発するＬＥＤ素子は、一般に、異なる電圧レベルを必要とする。特定の制御回路７０のための電圧は、デジタルポテンショメータ１２４に接続された接続Ｃを通って血液処理装置を制御するマイクロプロセッサによって選択される。デジタルポテンショメータ１２４は、たとえばリニアテクノロジー社から販売されているＬＴ１０８５ＣＴのような調整可能な電圧レギュレータ１２６上の調整ピンを、レギュレータの出力ピンに接続されている第１の抵抗１２８と、システムグラウンドに接続されている第２の抵抗１３０と直列になっているポテンショメータ１２４との間の位置で電圧を変えることによって制御する。電圧レギュレータ１２６のインピンは、２４ボルトの電源Ｐに接続されている。コンデンサ１３２、１３４および１３６は、電源Ｐとデジタルポテンショメータ１２４との両方からノイズおよび過渡信号をフィルタリングすることができ、性能の安定性を提供する。レギュレータ１２６のアウトピンは、ＭＯＳＦＥＴ１２２のドレインを通ってコンデンサバンク７８に接続されている。アウトピンにおける制御された電圧は、コンデンサバンクが充電されることができる最大電圧である。逆バイアスダイオード１３８は、レギュレータ１２６のアウトピンとレギュレータのインピンとの間に接続されて、コンデンサバンクが充電される場合にレギュレータを保護してもよいが、電源Ｐへの接続は中断される。また、１つまたは複数のコンデンサ１４０は、レギュレータのアウトピンに接続されてもよく、それによって、高周波数過渡電圧がグラウンドへ導かれてもよい。
【００６１】
コンデンサバンク７８は、一方の側が第１のスイッチ回路７４と第２のスイッチ回路７６との間に接続され、他方の側がシステムグラウンドに接地された１つまたは複数のコンデンサ１４２、１４４、１４６を備える。双方向過渡電圧サプレッサまたは「背合せ型」ツェナーダイオード１４８が、コンデンサと並列に設けられてもよく、特に、コンデンサの定格電圧が電源から使用可能な最大電圧に近い場合に、コンデンサ用に過渡的な保護を提供する。好適な用途における空間の制約のため、物理的により小さなコンデンサが望ましい。第１のスイッチ回路７４が閉じているときには、コンデンサ１４２、１４４、１４６は、電圧制御回路８２によって設定された電圧へ充電される。第２のスイッチ回路７６が閉じているときには、コンデンサ１４２、１４４、１４６は、さらなる回路要素に接続され、下記により十分に説明されるように、ＬＥＤ素子へ駆動電力を提供する状態にある。
【００６２】
第２のスイッチ回路７６は、スイッチとして機能する、たとえば、インターナショナルレクティファイア社から販売されているＩＲＦＺ４４Ｎ  ＭＯＳＦＥＴのようなパワーＭＯＳＦＥＴ集積回路１５０を備える。ＭＯＳＦＥＴ１５０のゲートは、スイッチ制御ユニット７２のスイッチング回路１０２のゲート駆動ピン７に連結されている。ＭＯＳＦＥＴのドレインは、コンデンサバンク７８および第１のスイッチ回路７４に接続されている。ＭＯＳＦＥＴ１５０のソースは、第１の迅速な応答スイッチ８８を通ってＬＥＤ素子８４に接続されている。ゲートおよびソース間に接続されたツェナーダイオード１５２は、ゲートの電圧を１２ボルトに固定する。
【００６３】
コンデンサバンク７８から第２のスイッチ回路７６を通って、第１の迅速な応答スイッチ８８を介して接続されたＬＥＤ素子８４へ送出される電力は、パルス駆動コントローラ８６によって制御される。パルス駆動コントローラ８６は、第１の迅速な応答スイッチ８８および第２の迅速な応答スイッチ９０を選択的に開閉し、電流がＬＥＤ素子８４内に且つＬＥＤ素子８４から流れるようにする。パルス駆動コントローラ８６は、たとえば、ナショナルセミコンダクター社（Ｎａｔｉｏｎａｌ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）製のＬＭ５１０４のようなハーフブリッジゲートドライバ１５４を備える。ゲートドライバ１５４は、入力ピン６でマイクロコンピュータＣから信号を受け取る。コンピュータ入力および入力ピン６に直列である抵抗１５６が、このピンにおける電流を制限する。コンピュータ入力およびシステムグラウンドに接続された別の抵抗１５８が、コンピュータから制御パルスのないときに、入力ピン６の電圧をローに保つ。ＶＤＤすなわちゲートドライバ１５４のピン１の電圧は、電源Ｐとシステムグラウンドとの間に直列に接続された抵抗１６０および１２ボルトのツェナーダイオード１６２を備える電圧レギュレータを介してゲートドライバ用の電力を受け取る。１つまたは複数のコンデンサ１６４、１６６が、ツェナーダイオードと並列に接続されて、高周波数過渡信号をグラウンドへ導くようにしてもよい。ゲートドライバは、Ｖｓｓピン７を通って接地される。不感時間プログラミングピン５をシステムグラウンドへ接続する抵抗１６８は、ゲートドライバの高過渡信号と低過渡信号との間の遅延を設定する。この遅延は、ゲートドライバが第１の迅速な応答スイッチ８８および第２の迅速な応答スイッチを同時に閉じて、コンデンサバンクをグラウンドへ短絡するのを防止する。コンピュータＣからの信号に応答して、ゲートドライバ１５４は、ハイのアウトピン３で信号を生成する。信号は、抵抗１７０を通り、抵抗１７０は、第１の迅速な応答スイッチ８８のターンオン特性を減衰し、第１の迅速な応答スイッチが閉じているときに電圧スパイクおよび放射性電気干渉の生成を制御する。ＭＯＳＦＥＴ８８のゲートは、抵抗１７０と並列のダイオード１７２を介して放電してもよい。コンピュータＣからの信号が終了すると、ゲートドライバ１５４は、ローのアウトピン８において信号を生成する。この信号もまた、抵抗１７４を通り、抵抗１７４は、第２の迅速な応答スイッチ９０のターンオン特性を減衰し、第２の迅速な応答スイッチが閉じているときに電圧スパイクおよび放射性電気干渉の生成を制御する。ＭＯＳＦＥＴ１８０のゲートは、抵抗１７４と並列のダイオード１７６を介して放電してもよい。第２の迅速な応答スイッチ９０は、通常、パルスが生成されるときを除き、「オン」すなわち「閉」である。これに対し、第１の迅速な応答スイッチ８８は、通常、「オフ」すなわち「開」である。このように、例示的な実施形態において、Ｃを介したマイクロプロセッサからの信号がローであるときには、スイッチ８８はオフであり、一方、スイッチ９０はオンであり、ＬＥＤ素子８４は光を生成しない。Ｃを介したマイクロプロセッサからの信号がハイになると、両方のスイッチ８���、９０は、一時的に開すなわちオフになる。Ｃでの出力がハイのままであるときには、スイッチ８８はオンになり（閉じ）、一方、スイッチ９０は開すなわちオフのままである。ＬＥＤ素子は光を生成する。マイクロプロセッサからの信号がローに戻ると、両方のスイッチ８８、９０は、再度、一時的に開くすなわちオフになる。次いで、スイッチ９０はオンになるすなわち閉じ、ＬＥＤ素子はグラウンドへ放電する。信号の極性、スイッチの状態、および、ＬＥＤ素子を通る電流の方向は、本発明の教示から逸脱することなく、逆であってもよいことは、当業者に認識される。
【００６４】
第１の迅速な応答スイッチ８８および第２の迅速な応答スイッチ９０の両方は、たとえば、インターナショナルレクティファイア社から販売されているＩＲＦＺ４４Ｎ  ＭＯＳＦＥＴのようなパワーＭＯＳＦＥＴ１７８、１８０から構成され、ＭＯＳＦＥＴ１７８、１８０のそれぞれのゲート用の電圧クランプとしてそれぞれのパワーＭＯＳＦＥＴのゲートおよびソース間に接続されたツェナーダイオード１８２、１８４を備える。第１の迅速な応答スイッチ８８のＭＯＳＦＥＴ１７８のドレインは、上述のように、第２のスイッチ回路７６に接続されている。コンデンサバンクが充電され、第２のスイッチ回路７６が閉じているときには、ゲートドライバ１５４からＭＯＳＦＥＴ１７８のゲートへの信号により、ＭＯＳＦＥＴ１７８は、電力をＭＯＳＦＥＴのソースからＬＥＤ素子８４を介してグラウンドへ導く。また、ＭＯＳＦＥＴのソースは、ゲートドライバ１５４上のハイ側ＭＯＳＦＥＴのソース接続ピン４に接続されている。ブートストラップコンデンサ１８６は、ソース接続ピン４をゲートドライバ１５４のブートストラップレールピン２に接続する。コンピュータＣからの信号が終了すると、ゲートドライバ１５４は、初めは、迅速な応答スイッチ８８を開き、且つ、非常に短い時間の間（ナノ秒のオーダ、ゲートドライバ１５４によって適応可能に制御される）第２の迅速な応答スイッチ９０を開いたままにし、それによって、コンデンサバンクからシステムグラウンドへの短絡回路を防止する。次いで、ゲートドライバ１５４は、第２の迅速な応答スイッチ９０のＭＯＳＦＥＴ１８０のゲートへ信号を供給し、ＭＯＳＦＥＴ１８０にシステムグラウンドへ導かせる。ＬＥＤ素子８４に動力を与える電力は、ＬＥＤ素子からグラウンドへ導かれる。これにより、明確な前縁および後縁を有する急峻なよく制御された方形波電圧が、ＬＥＤ素子上に生成されることができ、そのため、ＬＥＤ素子によって生成される照明の持続期間および大きさが一貫している。
【００６５】
好ましくは、各制御回路７０は、単一型の１つまたは複数のＬＥＤ素子または出力周波数を制御する。ＬＥＤ素子は、たとえば所望の用途に適切なように、赤色光、緑色光、または、赤外線光、または、フルスペクトル白色光等のスペクトルの可視領域または不可視領域に照明を生成することができる。好ましくは、複数のＬＥＤ素子は並列に接続され、駆動回路のコスト、サイズおよび複雑性を減少する。また、ＬＥＤ素子の１つが故障しても、特定の制御回路を完全に無能力化することはない。
【００６６】
図５は、頂部および底部のパルスＬＥＤ光源によって生成された光パルスとカメラシャッタおよびゲート設定とを同期する方法を表す機能的フロー図を示す。図７に示されるように、類似の独立した回路がユーザ観察のパルスＬＥＤ光源を制御する。図５に関連して述べられた自動制御が機能しない場合に、独立した回路が、バックアップセキュリティを提供する。ユーザ光源は、当該技術分野で既知のように、インタフェースを手動制御またはオペレータ制御するのを可能にする。図５に例示されるように、エンコードモータシステム１８８が、光学セルの回転位置に対応する１つまたは複数の出力信号１９０を生成する。出力信号１９０は、同期タイミングコントローラ１９２に入力として受け取られる。同期タイミングコントローラ１９２はまた、装置コントローラから制御信号１９４を受け取るように構成されている。制御信号１９４および出力信号１９０は、同期タイミングコントローラ１９２によって処理され、複数のトリガ信号１９６の基の信号となる。トリガ信号１９６は、頂部パルスＬＥＤ光源、底部パルスＬＥＤ光源およびＣＣＤカメラへ送られる。任意に、好ましくは図７の独立した回路を用いて、１つまたは複数のトリガ信号を使用して、遠心分離チャンバの照明を調整して、ユーザが、処理中に遠心分離機の状態を視覚的に評価することができるようにしてもよい。本発明のこの態様の利点は、たとえば装置コントローラのの処理時間等の他のシステムリソースを費やさずに、光パルスおよびカメラ設定のタイミングおよび同期が、同期タイミングコントローラ１９２によって処理されることである。
【００６７】
本発明のＬＥＤ光源は、多くの従来の非ＬＥＤ光源に比較して、小型で、軽量であり、電力消費量が比較的少ないため、これらの光源を使用することは有益である。また、ＬＥＤ光源は、動作寿命が長く、高効率、および、熱を殆ど発生せず、強度が均一である。さらに、ＬＥＤ光源は、パルス幅および起動時間等の正確に選択可能な時間特性を有する別々のパルスを生成するパルス動作が可能である。パルスＬＥＤ光源はまた、略均一の強度および波長分布を有するパルスを生成することができる。また、ＬＥＤの使用は、ＬＥＤが上部および／または下部の照明ビームの波長分布の良好な制御を提供するため、本発明のいくつかの用途に好適である。本発明は、頂部および底部の照明ビームの波長分布が、たとえば、赤色ＬＥＤ、緑色ＬＥＤ、白色ＬＥＤ等の異なる色のＬＥＤの出力を混合し、異なる色または波長の照明の持続期間を独立して制御することによって、選択的に調整可能である実施形態を含む。これらの実施形態において、頂部および底部の照明ビームの波長分布がショットごとに独立して選択されて、たとえば、光学的に弁別可能な血液成分の界面位置の測定、および／または、抽出ポートを通る抽出された血液成分の組成の測定等を最適化するようにしてもよい。
【００６８】
同期タイミングコントローラ１９２（ＳＴＣ）は、フィラー回転をモニタし、コンピュータから受け取ったパラメータに応答して光およびカメラを制御する独立した回路を備え、それによって、コンピュータが他のデータ処理を行うことを可能にする。画像を獲得するために必要なタイミングおよび同期を集結させることにより、たとえば、装置マイクロコンピュータを画像処理用に確保して、高スピード画像を形成するのを可能にする。好ましくは、同期タイミングコントローラは、専用の回路で実現される。より好ましくは、ＳＴＣ１９２は、たとえば、ヴェリログ（Ｖｅｒｉｌｏｇ）等のハードウェア記述言語でプログラムされた、アクテル社（Ａｃｔｅｌ）から販売されているＰｒｏＡＳＩＣ  Ｐｌｕｓ（商標）フラッシュＦＰＧＡ（フィールドプログラマブルゲートアレイ）等のＦＰＧＡを備える。
【００６９】
ＳＴＣ１９２は、２つの主要な機能を有する。第１に、フィラーの回転中にわたって「セッション」の開始をみつけ、トリガする。第２に、ＳＴＣは、セッション中に必要なパルス出力のタイミングを制御して、カメラシャッタ、１つまたは複数の頂部ストロボ光、１つまたは複数の底部ストロボ光、または、ユーザストロボ光３７（図５）等の要素を起動する。ＳＴＣは、フィラーの外周のまわりの複数の位置を表す複数の時間に、カメラ、頂部ストロボ光、底部ストロボ光、または、ユーザストロボ光の任意の組み合わせをトリガする機能を有する。
【００７０】
フィラーの回転に対するセッションの同期は、遠心分離機モータにしっかり装着されたモータエンコーダの出力をモニタし、ソフトウェアによって回転のどの時点においてセッションをトリガして開始させるかが選択されるようにすることによって、達成される。装置には、フィラーの１回転に、複数のセッショントリガ、好ましくは、２以上のセッショントリガが提供されることが望ましい。少なくとも２つのセッションが利用可能であると、システムは、異なる位置で画像形成することができ、あるいは、異なるセッションを使用して異なる設定を保持することができ、これにより、装置コントローラ４０は、パラメータを完全に再プログラミングすることなく設定を選択することができる。
【００７１】
トリガされたセッション内でカメラシャッタ、頂部ストロボ光、および、底部ストロボ光を起動するパルスのタイミングは、制御コンピュータからのソフトウェアによってロードされることができる高精度タイマで達成されてもよい。好ましくは、ＳＴＣは、必要なロジック回路の単一ＦＰＧＡ、および、たとえばクロック発振器およびリセットプルアップ等のごく最小限の外部回路を有する。セッショントリガは、照明または画像獲得の開始をフィラーの絶対位置と同期させる。ＳＴＣは、カメラ画像獲得セッションまたは他の照明事象の開始をトリガするために（「セッショントリガ」）、フィラーの回転に対する基準点をソフトウェアが選択する能力を提供するものとする。セッショントリガ精度は、フィラーの回転の０．１度よりも良好であることが好ましい。遠心分離機モータ（フィラーの回転を制御している）は、１回転につき１回絶対基準パルスを提供し、好ましくは、モータの１回転につき最低２０４８パルスを提供する基本のＡ／Ｂエンコーダ（basic A/B encoder）を少なくとも有する。遠心分離機モータは、２から１の低減ドライブトレイン（2-to-1 reduction drive train）を介してフィラーへ連結され、すなわち、モータは、フィラーのスピードの半分で回転する。２０４８パルスのエンコーダ（フィラーの１回転につき１０２４パルスは、直角位相（quadrature）を用いると１回転につき４０９６パルスを意味する）では、セッショントリガ精度は、フィラー回転の３６０／４０９６すなわち０．０８８度となるはずである。ＳＴＣは、ソフトウェアによって、回転のゼロ位置をフィラーの回転に沿った（先に特定した精度内の）任意の位置に較正する能力を提供する。ソフトウェア駆動コンピュータは、セッショントリガ位置を０に較正し、次いで、ゼロ位置較正設定を変えることによって所望のフィラーゼロを視覚的に探す。制御コンピュータは、この設定により、その較正点から当該区域の位置を知るためのフィラーの数学モデルを有する。ＳＴＣは、少なくともモータの回転ごとにフィラーの瞬間スピードをモニタし、ＲＰＭへの関連による機能決定を可能にする。このＲＰＭは、制御コンピュータへレポートされる必要はない。ＳＴＣは、制御コンピュータが、フィラーの１回転につき１回（１Ｘモード）か、または、フィラーの１回転おきに１回（１／２Ｘモード）、トリガするセッションをマニュアルで選択することを可能にする。制御コンピュータは、上記のＲＰＭを選択し、ハードウェアが、各セッションで自動的に１Ｘモードから１／２Ｘモードへ移る。マニュアルの１／２ｘモード設定は、１／２ｘ機能への自動変更に優先する。
【００７２】
ＳＴＣの機能的概念は、図５に関連して例示され上述されている。回路構造のさらなる詳細は、図６Ａ、図６Ｂ、図６Ｃおよび図６Ｄに例示されている。例示された実施形態において、たとえばアクテル社から販売されているＰｒｏＡＳＩＣ  Ｐｌｕｓ（商標）フラッシュＦＰＧＡ（フィールドプログラマブルゲートアレイ）のようなＦＰＧＡ回路１９８が、この装置のカメラおよび光を制御するのに必要な機能を実現するデジタル回路のプログラム可能な回路構造を提供する。図６Ｂにおいて、単一ＦＰＧＡ回路１９８の４つのエッジ２００、２０２、２０４および２０６が、明瞭さのために、分解図で別個に示されている。例示された実施形態において、血液処理システムの他の構成要素に好適な５Ｖの動作電圧に対し、ＦＰＧＡ回路１９８の動作電圧は２．５Ｖである。電圧コンバータ２０８は、入力フィルタコンデンサ２１０および出力負荷抵抗２１２および出力フィルタコンデンサ２１４が設けられ、必要な電圧を提供する。５Ｖバス２１６は、ＳＴＣ回路を制御コンピュータ（図６Ａには図示せず）へ連結する。制御コンピュータは、５Ｖバス２１６を介してパラメータコマンドを伝達して、光およびカメラの様々なセッションを設定し、ＳＴＣ回路の機能をレポートする信号を受け取る。５Ｖバスは、ＳＴＣ回路の他の構成要素を連結するＩＳＡコミュニケーションバス２１８を提供する。また、割り込み信号２２０が、ジャンパ２２２を介して選択可能な割込み線２２４、２２６に供給されてもよい。２．５Ｖのチャネルチェック信号２２８は、５Ｖでの入出力チェックのためにバッファリングトランジスタ２３０を介して供給されている。５Ｖ  ＩＳＡバス２１８上の信号は、複数のレベルシフタ２３２、２３４、２３６、２３８、２４０および２４２を介して２．５Ｖ  ＩＳＡバス２４４へ接続され、２．５Ｖ  ＩＳＡバス２４４は、ＦＰＧＡ回路１９８へ連結されている。ＦＰＧＡ回路１９８はまた、遠心分離機モータおよびフィラーに連結されたエンコーダ２４６からエンコーダ信号を受け取る。レベルシフタ２４８は、エンコーダ２４６によって生成された５Ｖの信号を、ＦＰＧＡ回路１９８による処理のために２．５Ｖの信号へ変換する。ＦＰＧＡ回路１９８は、２．５Ｖストロボライン２５０上にストロボ制御信号を生成する。ストロボラインは、頂部照明電圧シフタ２５２を経由して頂部照明３６に接続し、底部照明シフタ２５４を経由して底部照明１２に接続し、且つ、カメラ電圧シフタ２５６を経由してカメラに接続する。光ライン２５８は、ＩＳＡバスに接続し、ＳＴＣ回路１９８を他の構成要素に物理的に接続するために補助カップリング２６０を有する。また、頂部光センサ２６２および底部光センサ２６４が、インタフェース回路２６６、２６８を介してＦＰＧＡ回路１９８に連結されてもよい。これらのセンサを使用して、印加された光パルスの正のフィードバックを提供してもよい。
【００７３】
下記にさらに説明されるように、ＦＰＧＡ回路１９８の回路構成は、たとえば、ヴェリログ（商標）ハードウェア記述言語を使用したプログラム可能な回路設計の適用によって設定される。ＳＴＣ回路１９２は、したがって、ＦＰＧＡ回路１９８のロジック構造を再構成するコマンドを受け取る再プログラミングポート２７０を有してもよい。再プログラミングポート２７０は、再構成コマンドを伝達する再プログラミングポートが外部コンピュータに接続される場合、プログラミング電圧レベルを整合するために、フィルタ２７６、２７８を備えた電圧接続２７２、２７４を有してもよい。再プログラミングポート２７０は、ＦＰＧＡ回路１９８の意図しない変更を防止するために、ジャンパ２８０、２８２によって２．５Ｖレベルに固定されてもよい。
【００７４】
最後に、ＳＴＣ回路１９２を初期状態に戻すために、手動リセット２８４および回路制御リセット２８６の両方が設けられてもよい。回路制御リセット２８６は、通常、制御コンピュータに応答し、検出されたエラー状態に応答して起動されてもよい。同様に、手動リセット２８４は、必要に応じて、ＳＴＣ回路を再スタートするためにオペレータによって使用されてもよい。
【００７５】
ＦＰＧＡ１９８の構成を、ヴェリログハードウェア記述言語の適用を考慮して説明する。もちろん、他のハードウェア記述言語を使用することもでき、または、回路をロジック要素または他の回路構成要素の単一のカスタムアレイとして静的に設計することもできる。当業者には、開示された実施形態に対するそのような代替例が認識される。
【００７６】
制御インタフェースおよび制御レジスタ
制御インタフェース３００は、較正用のレジスタ、トリガ設定用のレジスタ、および、セッションフロー構成用のレジスタへのアクセスのために用いられる。好ましくは、すべてのレジスタは、ＩＳＡインタフェース上のメモリマッピングされた場所であるが、インタフェース実現のためにＵＳＢデジタルＩ／Ｏボードが用いられてもよい。ＳＴＣ１９２は、ハンドシェイク（確認応答）を含む２４ビットデジタルＩ／Ｏボードとともに使用されるために設計された制御インタフェースを提供してもよい。制御インタフェース３００は、パラメータを設定し状態をレビューするためにＳＴＣ１９２のレジスタを読み取り／書き込むのを可能にする。２４ビットインタフェース外部における個別の状態または入力ラインは必要ない。制御インタフェース３００により、コントローラは、フィラーの回転中にわたっていつでも適切なレジスタに書き込むかまたはそれから読み取ることを可能にする。制御インタフェースは、「ビジー時間（busy time）」であることもあり、その間は、インタフェース上での読み取りおよび書き込みができない。ビジー時間は、セッションが実行中である時間に一致するはずである。制御インタフェースのビジー時間の間は、インタフェース上の読み取りまたは書き込みが、ビジー時間が満了するまで遅延することがある（確認応答がハイにならない）。このように、コマンドがいつ発せられても、書き込みまたは読み取りのコマンドおよび情報は失われない。ビジー時間中に、レジスタの現在の内容を使用して、フィラーの次の回転用に、タイマ、セッショントリガ、および、較正を設定する。ＳＴＣの制御インタフェース３００は、ＩＳＡバスを使用する。確実な通信のために、「バスアドレスラッチイネーブル（ｂａｌｅ）」の立ち下がりエッジは、命令またはアドレスが安定した６０ｎｓであり、有効な信号であるとみなされることを示す。チップセレクトがラッチされる。下記に述べられるアドレスデコードロジックは、３０ｎｓ未満でデコードすることができる。新しいｂａｌｅハイで信号がハイの場合には、チップセレクトはリセットされる。以下、機能的デジタル回路構成の論理構造を例示する例示的なヴェリログコードを記載する。例示的なコードはインデントで示す。例示的なコメントは、左マージンから開始する。
【００７７】
本明細書に開示された論理記述回路の多くにおいて、方形波信号が生成され、第１の状態で開始し、第２の状態で終了する。また、信号は、リセット信号に応答して終了してもよい。インタフェース制御回路３００は、「ｂａｌｅ」信号のネガティブエッジを受け取るときにＩＳＡバス上のアドレスをチェックし始め、サイクル終了信号（cycle done signal）のポジティブエッジが受け取られたときにチェックを終了する。リセット信号上のネガティブエッジが受け取られると、プロセスが中断される場合もある。インタフェース制御回路３００は、リセットが偽であるかまたはサイクル終了が真であるかのいずれかの場合に、チップセレクトフラグを偽に設定する。そうでない場合、インタフェース制御回路３００は、ＩＳＡバスから受け取ったアドレスが許容範囲内にあるか否かをチェックし、チップセレクトフラグを真に設定する。アドレスが範囲外にある場合には、チップセレクトフラグは偽に設定される。
【００７８】
always @(negedge bale or negedge reset_n or posedge cycle_done) begin 
if(reset_n == 1'b0 || cycle_done = 1'b1) 
chip_select <= 1'b0); 
else begin 
if((sa >= base_addr) && (sa <= base_addr+ADDR_SPACE_SIZE-2) && (aen == 1'b0)) 
chip_select <= 1'b1; 
else 
chip select <= 1'b0;
end
end
インタフェース制御３００は、供給されるｉｏｗｃ＿ｎ（入出力書き込みコマンド、アクティブロー）、および、ｉｏｒｃ＿ｎ（入出力読み取りコマンド、アクティブロー）をフィルタリングし、２つの信号を組み合わせて、単一の組み合わされたコマンドフラグにする。
【００７９】
always @(iorc_n or iowc_n) begin 
if(iorc_n == 1'b0 || iowc_n == 1'b0) 
comb_command = 1'b0; 
else 
comb command = 1'b1; 
end
インタフェース制御回路３００は、下降エッジのリンギングのためにフィルタリングする。この特徴は、チップセレクトフラグがアクティブまたは真のときのみ、アクティブである。回路３００は、組み合わされたコマンド（コンピュータ制御からの読み取り信号または書き込み信号のいずれか）が存在するか、組み合わされたコマンドまたはリセット信号の偽またはロー状態後のポジティブバスクロック信号をチェックする。ｒｅｓｅｔ＿ｎ信号がアクティブ（ハイ）であり、バスクロック信号があった場合には、組み合わされたコマンドがローになったことを示すフラグが偽に設定され、すなわち、読み取りまたは書き込みコマンドが制御コンピュータから受け取られていない。そうでない場合、チップセレクトフラグが真であり、アドレスが有効範囲内にあることを意味する場合には、「コマンドがローになった」フラグが真に設定され、読み取りまたは書き込みが試みられていることを示す。インタフェース制御回路３００をバスクロックに同期するために、バスクロックの状態に依存して、チップの有効アドレスが選択されているか否か、または、リセット状態が存在するかで、「組み合わされたコマンドロー後のバスクロックポジティブ」フラグが真または偽に設定される。
【００８０】
always @(negedge comb_command or posedge bclk_pos_after_command_low or negedge reset_n) begin 
if(reset_n == 1'b0 || bclk_pos_after_command_low == 1'b1) 
command_went_low <= 1'b0; 
else begin 
if(chip_select == 1'b1) 
command_went_low <= 1'b1; 
end 
end 
always @(posedge bclk or negedge chip_select or negedge reset_n) begin 
if(reset_n == 1'b0 || chip_select = 1'b0) 
bclk_pos_after_command_low <= 1'b0; 
else begin 
if(command_went_low == 1'b1) 
bclk_pos_after_command_low <= 1'b1; 
end 
end
次に、インタフェース制御回路３００は、上述の下降フィルタが先に起動された場合、上昇エッジのリンギングのためにフィルタリングする。組み合わされたコマンドは、下記のロジックステートメントに示されるように、信号変化が有効信号であるとみなされるように、選択された時間、すなわち、バスクロックの多数のサイクルの間、ハイのままでなければならない。
【００８１】
always @(posedge comb_command or posedge bclk_neg_after_command_high or negedge reset_n) begin 
if(reset_n == 1'b0 || bclk_neg_after_command_high == 1'b1 ) 
command_went_high <= 1'b0; 
else begin 
if(bclk_pos_after command_low = 1'b1) 
command_went_high <= 1 'bl ; 
end 
end 
always @(negedge bclk or negedge chip_select or negedge reset_n) begin 
if(reset_n == 1'b0 || chip_select == 1'b0) 
bclk_neg_after_command_high <= 1'b0; 
else begin 
if(command_went_high == 1'b1) 
bclk_neg_after_command_high <= 1'b1; 
else 
bclk_neg_after_command_high <= 1'b0; 
end 
end
コマンドアクティブフラグは、上記テストによって決定されたように、有効な読み取りまたは書き込み状態がある場合に、真に設定される。
【００８２】
always @(posedge command_went_low or posedge command_went_high or negedge reset_n) begin 
if(reset_n == 1'b0 command_went_high == 1'b1) 
command_active <= 1'b0; 
else 
command_active <= 1'b1; 
end
コマンドアクティブフラグは、ｃｈｉｐ＿ｓｅｌｅｃｔも真である場合のみ、有効であるとみなされる。「チップセレクトゲーティド」フラグは、両方の状態を満足する場合のみ、真に設定される。
【００８３】
always @(chip_select or command_active) begin
chip_select_gated = chip_select & command active; 
end
次いで、チップセレクトゲーティドフラグが真に設定された場合、信号に応答するか、または、ＩＳＡバスを「つかむ（grab）」ために、レベルシフタおよびトライステート回路２３２、２３４、２３６、２３８および２４８に信号が送られる。これにより、制御コンピュータからの読み取り信号または書き込み信号の受け取りを許可する。「サイクル終了」状態が検出されたとき、バスは解放される。
【００８４】
assign grab_bus_n = ~chip_select_gated;
ｃｈｉｐ＿ｓｅｌｅｃｔがアクティブであり、ｃｈｉｐ＿ｓｅｌｅｃｔがハイになったためタイムアウトがあるか、または、選択された間にｃｏｍｍａｎｄ＿ａｃｔｉｖｅが偽になった後に次のバスクロック立ち下がりエッジがある場合に、サイクルは終了とみなされる（ｃｙｃｌｅ＿ｅｎｄ＿ｃｏｕｎｔ＝＝１’ｂ０）。
【００８５】
always @(timeout_trig or cycle_end_count or chip_select) begin 
if((timeout_trig = 1'b1 || cycle_end_count == 1'b0) && chip_select == 1'b1) 
cycle_end_trig = 1'b1; 
else 
cycle_end_trig = 1'b0; 
end 
always @(posedge cycle_end_trig or negedge reset_n or negedge chip_select) begin 
if(reset_n == 1'b0 || chip_select == 1'b0) 
cycle_done <= 1'b0; 
else 
cycle_done <= 1'b1; 
end
サイクルタイムアウトは、サイクルの最大の許可された持続期間であり、制御コンピュータからＣＹＣＬＥ＿ＴＩＭＥＯＵＴ＿ＢＣＬＫＳ変数へのコマンドによって、値ＣＹＣＬＥ＿ＴＩＭＥＯＵＴ＿ＢＣＬＫＳ（バスクロック用のサイクルタイムアウト）へ設定される。以降、すべて大文字は、値が制御コンピュータによって設定される定数またはパラメータに使用する。そのような値は、ＳＴＣ回路１９０によって動作定数として取り扱われる。ｃｈｉｐ＿ｓｅｌｅｃｔがハイまたは真になった後に、下記の回路ロジックが、ゼロ時間に到達するまで、ＣＹＣＬＥ＿ＴＩＭＥＯＵＴ＿ＢＣＬＫＳ値からｃｙｃｌｅ＿ｔｉｍｅｏｕｔ＿ｃｏｕｎｔをデクリメントする。その後、サイクルの時間が満了するまで、タイムアウトトリガが真に設定される。これは、エラー状態からのリカバリまたはリセットとしてみなすこともできる。
【００８６】
always @(negedge bclk or negedge reset_n) begin 
if(reset_n == 1'b0) 
cycle_timeout_count <= CYCLE_TIMEOUT_BCLKS; 
else begin 
if(cycle_timeout_count > 18'd0 && chip_select == 1'b1) 
cycle_timeout_count <= cycle_timeout_count-1; 
else 
cycle_timeout_count <= CYCLE_TIMEOUT_BCLKS; 
end 
end 
always @(posedge bclk or negedge reset_n) begin 
if(reset_n == 1'b0) 
timeout_trig <= 1'b0; 
else begin 
if(cycle_timeout_count == 18'd0) 
timeout_trig <= 1'bl; 
else 
timeout_trig <= 1'b0; 
end 
end
サイクルエンドは、ｃｏｍｍａｎｄ＿ａｃｔｉｖｅフラグが偽に設定された後の次のバスクロック信号（ｂｃｌｋ）立ち下がりエッジ、すなわち、ｃｈｉｐ＿ｓｅｌｅｃｔ＿ｇａｔｅｄがローになった後の次のバスクロック信号立ち下がりエッジによってシグナリングされる。サイクルエンドが検出されると、回路は、新しいサイクルを開始する準備として、いくつかの状態監視動作を実行する。たとえば、変数ｃｙｃｌｅ＿ｅｎｄ＿ｃｏｕｎｔは、１（真）または０（偽）のいずれかに設定される。これは、予想されたリカバリまたはリセットと、すなわち、動作の通常の過程で予想される状態であるとみなすこともできる。
【００８７】
always @(negedge chip_select_gated or negedge reset_n or negedge chip_select) begin 
if(reset_n == 1'b0 || chip_select = 1'b0) 
cs_gated_went_low <= 1'b0; 
else 
cs_gated_went_low <= 1'b1; 
end 
always @(negedge bclk or negedge reset_n or negedge chip_select) begin 
if(reset_n == 1'b0 || chip_select = 1'b0) 
cycle_end_count <= 1'b1; 
else begin 
if(cycle_end_count > 1'b0 && chip_select == 1'b1 && cs_gated_went_low == 1'b1) 
cycle_end_count <= 1'b0; 
else 
cycle_end_count <= 1'b1 ; 
end 
end
ＩＳＡバスは、ＩＳＡ拡張ボードがエラーをホストコンピュータへシグナリングすることを可能にするよう意図される。大半のシステムでは、このローになる信号は、マスク不可能割り込みをホストコンピュータへ送らせる。ＳＴＣ回路上で、この信号は、ＩＳＡバストランザクションが開始されるとすぐにローに駆動されるが、約１０ｍｓの間完了しない。エラーチェック信号であるフラグチャネルチェック（ｃｈｃｈｋ）は、タイムアウトエラーが検出されるとハイになり、次のバスアドレスラッチイネーブル（ｂａｌｅ）信号までハイのままである。チャネルチェックフラグは、トランジスタ２３０の駆動に用いられ、トランジスタ２３０は、ＩＳＡバス上のｃｈｃｈｋ＿ｎ（チャネルチェックネガティブ）ラインをローに引く。この反転は、ＳＴＣ回路に対して内部の信号を、ＳＴＣ回路外部の信号コンベンション（convention）に整合するために必要である。
【００８８】
always @(posedge timeout_trig or negedge reset_n or posedge bale) begin 
if(reset_n == 1'b0 || bale == 1'b1) 
chchk <= 1'b0; 
else begin 
chchk <= 1'b1; 
end 
end
ＳＴＣのＩＳＡ制御インタフェースは、３００Ｈのベースアドレスを備えた１６ビットＩＳＡバスインタフェースである。ＳＴＣは、インタフェース上のアドレスを訂正するためのＩＯＷＲＩＴＥおよびＩＯＲＥＡＤコマンドに応答するのみである。回路は、１６ビット入出力データ（好適）または８ビットデータのいずれかで動作することができる。１６ビット動作が選択された場合、ｉｏ１６＿ｎフラグがローに駆動され、１６ビットインタフェースカードが使用されていることを示す。そうでない場合、ｉｏ１６＿ｎは、ハイのままである。浮動小数点コンベンションは、ｇｒａｂ＿ｂｕｓ＿ｎから駆動された外部トライステート（レベルシフタ）によって処理される。
【００８９】
assign io16_n = chip_select_gated ? 1'b0 : 1'b1;
ＳＴＣが、データ転送、または、ホストコンピュータからのコマンドのために選択された場合、フラグチャネルレディ（ｃｈｒｄｙ）がハイに駆動され、最短の数の待ち状態を有する。フラグビジーがハイの場合には、チャネルレディはローのままであり、より多くの待ち状態を収容する。読み取りコマンドは、ビジーフラグの状態によって遅延されない。
【００９０】
assign chrdy = ~busy; 
レジスタブロックインタフェースは、双方向データバスバッファを提供するＳＴＣ制御インタフェース３００の一部である。データ読み取りについて、ｃｈｉｐ＿ｓｅｌｅｃｔ＿ｇａｔｅｄが設定され且つｉｒｏｃ＿ｎが設定されない場合、「チップセレクトでの読み取り」ビットが設定される。リセットまたはチップセレクトがローまたは偽であると判定すると、ｒｅａｄ＿ｓｅｌｅｃｔはローまたは偽に設定される。次いで、ｒｅａｄ＿ｓｅｌｅｃｔが真である場合には、回路がデータを入力レジスタ読み取りデータ（ｒｅｇ＿ｒｄａｔａ）からｄａｔａ＿ｉｎｔｅｒｎａｌ、内部データバスへ転送し、次に、ＩＳＡバスへルーティングされる。ｒｅａｄ＿ｓｅｌｅｃｔが真ではない場合には、データインターナルは、プレースホルダ定数で埋められ、これにより、制御インタフェース３００をＩＳＡバスとの接続から切断する。ＳＤは、ｄａｔａ＿ｉｎｔｅｒｎａｌの値が割り当てられる。
【００９１】
always @(chip_select_gated or iorc_n) begin 
if(chip_select_gated == 1'b1 && iorc_n == 1'b0) 
read_with_cs = 1'b1; 
else 
read_with_cs = 1'b0; 
end 
always @(posedge read_with_cs or negedge reset_n or negedge chip_select) begin
if(reset_n == 1'b0 || chip_select == 1'b0) 
read_select <= 1'b0; 
else 
read_select <= 1'b1; 
end 
always @(read_select or reg_rdata) begin 
if(read_select == 1'b1) 
data_internal = reg_rdata; 
else 
data_internal = 16'bzzzzzzzzzzzzzzzz; 
end 
assign sd = data_internal; 
assign reg_wdata = (reg_r_w_n == 1'b0) ? sd : 16'bzzzz_zzzz_zzzz_zzzz; 
assign read_select_n = ~read_select;
書き込みコマンドについて同様のパターンが続く。ｉｏｗｃ＿ｃ（書き込み）がローになると、レジスタ読み取り／書き込み信号が書き込みに設定され、そうでない場合、デフォルト状態は読み取りである。回路は、ｃｈｉｐ＿ｓｅｌｅｃｔインアクティブの読み取りに戻る。
【００９２】
always @(chip_select_gated or iowc_n) begin 
if(chip_select_gated == 1'b1 && iowc_n = 1'b0) 
write_with_cs = 1'b1; 
else 
write_with_cs = 1'b0; 
end 
always @(posedge write_with_cs or negedge reset_n or negedge chip_select) begin 
if(reset_n == 1'b0 || chip_select = 1'b0) 
reg_r_w_n <= l'b1 ; 
else 
reg_r_w_n <= 1'b0; 
end
信号ｃｏｍｍａｎｄ＿ａｃｔｉｖｅの立ち上がりエッジは、書き込みが発生するときである。このコンテキストで、レジスタ書き込みストロボは、ストロボ光を意味せず、書き込みコマンドの即座の実行を意味する。
【００９３】
always @(cs_gated_went_low or chrdy or reg_r_w_n) begin 
if(chrdy == 1'b1 && reg_r_w_n == 1'b0) 
reg_wstrobe = cs_gated_went_low; 
else 
reg_wstrobe = 1'b0; 
end
制御レジスタ
制御レジスタ３０２は、制御インタフェース３００を介してホストコンピュータから送られたときにセッションのパラメータを受け取り保存する。これらのパラメータは、ロータまたはフィラーの固定点からの現象の開始のタイミングまたは遅延、および、現象の持続期間を備える。現象は、１つまたは複数のＬＥＤまたはＬＥＤのセットに関する頂部または底部の照明パルスであってもよく、または、カメラのシャッタ起動であってもよい。ＬＥＤのセットは、色によって弁別されてもよく、したがって、照明パルスの色も調整することができる。明瞭化のために、制御レジスタのロジックの代表的な例を述べる。
【００９４】
レジスタ書き込み制御は、様々なパラメータ、たとえば、パルス構成であるＰＵＬＳＥ＿ＣＦＧ（Ｒ／Ｗ）の情報を保存する。書き込みストロボ信号のポジティブエッジまたはリセット信号のネガティブエッジを検出すると、ＰＵＬＳＥ＿ＣＦＧ（パルス構成）データは、リセット信号に応答してクリアまたはリセットされるか、または、書き込み信号に応答してデータを受け取る。
【００９５】
always @(posedge wstrobe or negedge reset_n) begin 
if(reset_n == 1'b0)
PULSE_CFG <= PULSE_CFG_reset; 
else 
if(addr = PULSE_CFG_addr && r_w_n = 1'b0) 
PULSE_CFG <= wdata[11:0]; 
end
ＳＷ＿ＲＥＳＥＴすなわちソフトウェアリセットは、ホストコンピュータからの信号に応答し、ｓｗ＿ｒｅｓｅｔ＿ｎ上のローパルスにより、すべてのパラメータをデフォルト値にリセットし、回路をパワーアップ状態にリセットする。
【００９６】
always @(posedge wstrobe or negedge hw_reset_n or negedge reset_n or posedge sw_reset_done) begin 
if(hw_reset_n == 1'b0 || reset_n = 1'b0 || sw_reset_done == 1'b1) 
sw_reset_n <= 1'b1; 
else begin 
if(wstrobe == 1'b1 && addr == SW_RESET_addr && r_w_n == 1'b0 && 
wdata[7:0] == 8'h55 && wdata[15:8] == 8'hAA) 
sw_reset_n <= 1'b0; 
else 
sw_reset_n <= 1'b1; 
end 
end 
always @(posedge clk or negedge reset_n) begin 
if(reset_n == 1'b0) 
sw_reset_running <= 1'b0; 
else 
if(sw_reset_n == 1'b0) 
sw_reset_running <= 1'b1; 
else 
sw_reset_running <= 1'b0; 
end 
always @(negedge clk or negedge reset_n) begin 
if(reset_n == 1'b0) 
sw_reset_done <= 1'b0; 
else 
if(sw_reset_running == 1'b1) 
sw_reset_done <= 1'b1; 
else 
sw_reset_done <= 1'b0; 
end
ＳＴＡＴ（Ｒ／Ｗ１）レジスタは、光およびカメラの状態に関する情報を保持する。各ビットは、個別に変えられるかまたはラッチされ、ホストコンピュータがロジックハイ（１）を特定のビットに書き込むとにきのみリセットされる。これは、ホストコンピュータが情報を獲得したというポジティブな表示を与える。７〜０の８つのビットの各々に同様のプロセスが用いられる。明瞭化のために、ビット７を表すためのロジックが示されている。
【００９７】
assign stat7 = status[7:7]; 
always @(posedge wstrobe or posedge stat7 or negedge reset_n) begin 
if(reset_n == 1'b0)
STAT[7:7] <= STAT_reset[7:7];
else 
if(stat7 == 1'b1)
STAT[7:7] <= 1'b1; 
else 
if(addr == STAT_addr && r_w_n == 1'b0) 
if(wdata[7:7] == 1'b1) 
STAT[7:7] <= 1'b0; 
end
照明用のセッションは、トリガ（ＴＲＩＧ）、出力イネーブル、色選択およびセッション状態（ＯＥ＿ＳＴＡＴ）、自動１／２Ｘモード切り替え（ＳＷ）、頂部および底部の光およびカメラの遅延（ＤＥＬ）のセット、および、ストロボ光およびカメラシャッタ用のパルス幅（ＰＷ）の同様のセットを備える。これらのパラメータは論理的に類似しているため、１つのセッションのロジックのみ、および、そのセッション中の頂部光のみのロジックを詳細に記載する。当業者は、図５で考慮されたように、その例を、底部光およびカメラに、および複数のセッションに拡張適用することができる。セッション１トリガＳＥＳ１＿ＴＲＩＧ（Ｒ／Ｗ）が、セッションの開始前に、フィラー（ロータ）上の固定点からの回転遅延を設ける。
【００９８】
always @(posedge wstrobe or negedge reset_n) begin 
if(reset_n == 1'b0)
SES1_TRIG <= SES1_TRIG_reset; 
else 
if(addr == SES1_TRIG_addr & r_w_n = 1'b0)
SES1_TRIG <= wdata[15:0]; 
end
セッション出力イネーブル、色選択およびセッション状態レジスタＳＥＳ１＿ＯＥ＿ＳＴＡＴは、セッションに使用される装置（カメラ、頂部または底部のストロボ光、または、ユーザストロボ光）を特定するビット、使用される色、および、１／２Ｘモード等の状態、フィラー回転方向等の状態によるトリガのオーバライド、フィラーＲＰＭ、または、動作パラメータのミスマッチを備える。
【００９９】
assign SES1_OE = SES1_OE_STAT[11:0]; 
always @(posedge wstrobe or negedge reset_n) begin 
if(reset_n == 1'b0)
SES1_OE_STAT[11:0] <= SES1_OE_STAT_reset[11:0]; 
else 
if(addr = SES1_OE_STAT_addr && r_w_n == 1'b0)
SES1_OE_STAT[11:0] <= wdata[11:0]; 
end
自動１／２Ｘモード切り替えＳＥＳ１＿ＳＷは、１Ｘモードと１／２Ｘモードとの間の変更を制御する。ＳＴＣ１９０は、デフォルトによって、ユーザがすべてのセッショントリガがフィラーの回転ごとに発生することを望むと仮定し、これは１Ｘモードと呼ばれる。ＳＴＣは、高速回転および他のハードウェア制約のために、１つおきの回転ごとにセッションをトリガしてもよく、これは１／２Ｘモードと呼ばれる。さらに、複数のセッションを、フィラーの偶数または奇数の回転に指定することにより、セッション間の時間的分離を大きくしてもよい。
【０１００】
always @(posedge wstrobe or negedge reset_n) begin 
if(reset_n == 1'b0)
SES1_SW <= SES1_SW_reset; 
else 
if(addr == SES1_SW_addr && r_w_n = 1'b0)
SES1_SW <= wdata[15:0]; 
end
セッション遅延（ＤＥＬ）は、たとえば、頂部光、底部光、ユーザ光またはカメラ等の任意のハードウェア構成要素のセッショントリガからの回転遅延を設定するために用いることができる。一例として、セッション１頂部光遅延ＳＥＳ１＿Ｔ＿ＤＥＬ（Ｒ／Ｗ）がここに挙げられる。
【０１０１】
always @(posedge wstrobe or negedge reset_n) begin 
if(reset_n = 1'b0)
SES1_T_DEL <= SES1_T_DEL_reset; 
else 
if(addr == SES1_T_DEL addr && r_w_n == 1'b0)
SES1_T_DEL <= wdata[14:0]; 
end
同様に、セッションパルス幅（ＰＷ）は、たとえば、頂部光、底部光、ユーザ光またはカメラ等の任意のハードウェア構成要素の遅延から、動作の持続期間、または、パルス幅を設定するために用いることができる。一例として、セッション１頂部光パルス幅ＳＥＳ１＿Ｔ＿ＰＷ（Ｒ／Ｗ）がここに挙げられる。
【０１０２】
always @(posedge wstrobe or negedge reset_n) begin 
if(reset_n == 1'b0)
SES1_T_PW <= SES1_T_PW_reset; 
else 
if(addr == SES1_T_PW_addr && r_w_n = 1'b0)
SES1_T_PW <= wdata[9:0]; 
end
フィラー位置ＦＩＬＬＥＲ＿ＰＯＳ（リードオンリー、リセット適用せず）は、フィラーの現在の位置を記録するデータレジスタである。たとえば光およびカメラ等のハードウェア構成要素起動は、フィラー位置に依存し、制御回路は、このデータを使用して、他のパラメータをいつ変えるかを決定することができる。
【０１０３】
always @(posedge clk or negedge reset_n) begin 
if(reset_n == 1'b0) 
FILLER_POS_held <= 0; 
else 
FILLER_POS_held <= filler_pos; 
end
制御レジスタ３０２に維持されたさらなるデータレジスタは、フィラー回転時間ＦＩＬＬＥＲ＿ＲＯＴ＿ＴＩＭＥである。このデータは、１回転につき１回ラッチされる。選択されたスピード、たとえば４０ＲＰＭを下回ると、回転時間はゼロである。
【０１０４】
always @(poedge clk or negedge reset_n) begin 
if(reset_n == 1'b0)
FILLER_ROT_TIME_held <=0; 
else
FILLER_ROT_TIME_held<=filler_rot_time; 
end
遠心分離機モータエンコーダ１８８からフィラーの物理的位置を解釈するエンコーダハンドラ３０４、および、遠心分離機の回転を必要とせずにモータエンコーダを模倣するテスト信号を提供するエンコーダエミュレータ３０６は、下記に、より十分に説明される。制御レジスタ３０２は、エンコーダハンドラ３０４の出力とエンコーダエミュレータ３０６との間を選択し、エンコーダエミュレータのパラメータを設定するデータレジスタＥＮＣ＿ＥＭＵを維持する。
【０１０５】
always @(posedge clk or negedge reset_n)begin 
if(reset_n == 1b'0)
ENC_EMU <= ENC_EMU_reset 
else 
if(addr == ENC_EMU_addr&&r_w_n == 1'b0) 
ENC_EMU <= wdata[15:0]
エンコーダハンドラ
制御レジスタ３０２に含まれる情報に加えて、セッションコマンドの準備は、フィラーの位置に依存する。フィラーの位置、スピードおよび方向は、遠心分離機モータエンコーダ１８８からのセンサ信号とともに、エンコーダハンドラ３０４によって決定される。モータエンコーダは、直角位相信号と呼ばれる３つの信号を生成する。そのうち、「ａ」信号および「ｂ」信号は、遠心分離機モータの１回転に２０４８位置に適合された時間オフセット方形波である。フィラーは、モータのスピードの２倍で回転する。ａおよびｂ信号の状態および順序は、回転のスピードおよび方向を示す。たとえば、ａオフ、ｂオフ、次いで、ａオン、ｂオフ、次いで、ａオン、ｂオン、次いで、ａオフ、ｂオンの順序は、時計回り方向の回転を示しうる。ａオフ、ｂオフ、次いで、ａオフ、ｂオン、次いで、ａオン、ｂオン、次いで、ａオン、ｂオフの順序は、反時計回り方向の回転を示しうる。第３の信号は、「ｚ」信号であり、これは、モータの回転ごとに１回生成される。「ａ」信号および「ｂ」信号は、「ｚ」信号から数えることができ、フィラーの位置を決定する。
【０１０６】
テスト目的では、ａｂｚライン上の入力は無視することができ、テスト目的でフィラーまたはモータを回転せずにａｂｚ信号を生成するエンコーダエミュレータ３０６の使用を可能にする。エンコーダエミュレータは、下記に記載される。
【０１０７】
assign a_int = a & ~ignore_encoder; 
assign b_int = b & ~ignore_encoder; 
assign z_int = z & ~ignore_encoder;
エンコーダ３０４は、デジタルフィルタを備え、直角位相信号上のノイズを除去する。信号は、有効レベルと見なすには、３クロックサイクルの間、安定していなければならない。チャネルａを下記に例示する。ｂ信号およびｚ信号にも同様のフィルタが適用される。
【０１０８】
always @(negedge clk or negedge reset_n) begin 
if(reset_n == 1'b0) begin 
a_history <= 3'b0; 
end else begin 
a_history <= a_history<<1; 
a_history[0:0] <= a_int; 
end 
end 
always @(posedge clk or negedge reset_n) begin 
if(reset_n == 1'b0) 
a_filt<=1'b0;
else begin 
case (a_history[2:0]) 
3'b000:a_filt<=1'b0;
3'b111:a_filt<=1'b1;
endcase 
end
モーションステートマシンが、上述のように、且つ、下記の表に例示されるように、ａ信号およびｂ信号の状態から、回転の方向を決定する。
【０１０９】
ＳＴＡＴＥ  ＦＷＤ  ＲＥ
ＡＢ    ＡＢ
０          ００    ００
１          １０    ０１
２          １１    １１
３          ０１    １０
エンコーダハンドラ３０４は、状態をデコードし、出力して、状態ごとのフィラーの進行を認識する。すべての入力は、ポジティブクロック信号エッジで変化する。
【０１１０】
always @(current_state or a_filt or b_filt) begin 
next_state = current_state; 
case(current_state) 
S0: begin 
if(a_filt == 1'b1) begin 
next_state = S1; 
end else begin 
if(b_filt = 1'b1) begin 
next_state = S3; 
end 
end 
end
S1: begin 
if(b_filt == 1'b1) begin 
next_state = S2; 
end else begin 
if(a_filt == 1'b0) begin 
next_state = S0; 
end 
end 
end
S2: begin 
if(a_filt == 1'b0) begin 
next_state = S3; 
end else begin 
if(b_filt == 1'b0) begin 
next_state = S1; 
end 
end 
end
S3: begin 
if(b_filt == 1'b0) begin 
next_state = S0; 
end else begin 
if(a_filt == 1'b1) begin 
next_state = S2; 
end 
end 
end 
endcase 
end 
現在の状態のラッチは、リセット信号が、ｃｕｒｒｅｎｔ＿ｓｔａｔｅおよびｃｕｒｒｅｎｔ＿ｓｔａｔｅ＿ｈｉｓｔｏｒｙの両方をクリアさせるのでない限り、変化状態を記録する。
【０１１１】
always @(negedge clk or negedge reset_n) begin 
if(reset_n == 1'b0) begin 
current_state_history <= S0; 
current_state <= S0; 
end else begin 
current_state_history <= current_state; 
current_state <= next_state; 
end 
end
フィラー方向ラッチは、ｃｕｒｒｅｎｔ＿ｓｔａｔｅ＿ｈｉｓｔｏｒｙ（すなわち、最後の状態）およびｃｕｒｒｅｎｔ＿ｓｔａｔｅを備える順序対を調べることによって、設定することができる。回転の方向は、時計回り方向または反時計回り方向のいずれかに決定され、データビットｆｉｌｌｅｒ＿ｄｉｒｅｃｔｉｏｎに、１または０によって記録される。
【０１１２】
always @(posedge clk or negedge reset_n) begin 
if(reset_n == 1'b0) 
filler direction <= 1'b0; 
else begin 
if(current_state_history != current_state) begin 
case({current_state_history,current_state}) 
{S0,S1} : filler_direction <= 1'b1; 
{S0,S3} : filler_direction <= 1'b0; 
{S1,S2} : filler_direction <= 1'b1; 
{S1,S0} : filler_direction <= 1'b0; 
{S2,S3} : filler_direction <= 1'b1; 
{S2,S1} : filler_direction <= 1'b0; 
{S3,S0} : filler_direction <= 1'b1; 
{S3,S2} : filler_direction <= 1'b0; 
endcase 
end
変化した状態は、フィラーのモーションが検出されると、１に設定され、または、モーションがない場合またはリセット信号が受け取られた場合には、ゼロ（０）に設定される。
【０１１３】
always @(posedge clk or negedge reset_n) begin 
if(reset_n == 1'b0) begin 
state_changed <= 0; 
end else begin 
if(current_state_history != current_state) 
state_changed <= 1'b1; 
else 
state changed <= 1'b0; 
end 
カウントクロックは、各状態の変化後にパルスを設定する。
【０１１４】
always @(negedge clk or negedge reset_n) begin 
if(reset_n == 1'b0) 
count_clk <= 0; 
else begin 
if(state_changed == 1'b1) 
count_clk <= 1'b1; 
else 
count_clk <= 1'b0; 
end
カウンタは、フィラーの位置を維持する。モータは、フィラーの２回の全回転ごとに１回回転するのみであるため、このカウンタは、ｚ信号の間に回り、絶対参照のｚ信号ごとにリセットする。
【０１１５】
assign filler_pos_clr = z_timer_clr; 
always @(posedge count_clk or negedge reset_n or posedge filler_pos_clr) begin 
if(reset_n == 1'b0 || filler_pos_clr == 1'b1) 
filler_pos <= 0; 
else 
if(filler_direction == 1'b1) 
filler_pos <= filler_pos + 1; 
else 
filler_pos <= filler_pos - 1;
セッションは、２サイクルごとのみにトリガされてもよいため、且つ、異なるサイクルで異なるセッションをトリガすることが望ましいため、エンコーダハンドラ３０４は、１／２Ｘモードでの使用のために、フィラーの偶数／奇数の回転を把握するｆｉｌｌｅｒ＿ｃｙｃｌｅを生成する。
【０１１６】
always @(posedge clk or negedge reset_n) begin 
if(reset_n == 1'b0) 
filler_at_0 <= 1'b0; 
else begin 
if(filler_pos == 0) 
filler_at_0 <= 1'bl; 
else 
filler_at_0 <= 1'b0; 
end 
end 
always @(posedge filler_at_0 or negedge reset_n) begin 
if(reset_n == 1'b0) 
filler_cycle <= 0; 
else 
filler_cycle <= ~filler_cycle; 
end 
タイマｚ＿ｔｉｍｅｒは、ｚ信号の間に５１．２μｓインターバルをカウントし、回転のスピードを得る。
【０１１７】
always @(posedge clk_51_2us or negedge reset_n or posedge z_timer_clr) begin 
if(reset_n == 1'b0 || z_timer_clr == 1'b1) begin 
z_timer <= 0;  
z_timeout <= 0; 
end else begin 
if(z_timer_hold != Z_TIMEOUT_MAX) begin 
z_timer <= z_timer + 1; 
z_timeout <= 0; 
end else 
z_timeout <= 1'b1; 
end 
end 
always @(negedge clk_51_2us or negedge reset_n) begin 
if(reset_n == 1'b0) 
z_timer_hold <= 0; 
else 
z_timer_hold <= z_timer; 
end
エンコーダハンドラ３０４は、ｚ信号の検出後に第１の立ち下がりクロックエッジで開始するｚ＿ｔｉｍｅｒ＿ｌａｔｃｈをハイに設定する。ラッチは、ｚ信号がローになるときに、ローにリセットされる。
【０１１８】
assign z_timer_reset = (reset_n & z_filt); 
always @(negedge clk or negedge z_timer_reset) begin 
if(z_timer_reset == 1'b0) 
z_timer_latch <= 0; 
else 
if(z_filt == 1'b1)
z_timer_latch <= 1'b1; 
end
フィラーの回転時間は、フィラーが選択された方向に回転している場合に、ｚ信号からの時間の半分として計算される（モータスピード対フィラースピードの比率が２対１のため）。フィラーが反対方向に回転している場合には、回転時間はゼロに設定される。
【０１１９】
always @(posedge z_timer_latch or posedge z_timeout or negedge reset_n) begin
if(reset_n == 1'b0) 
filler_rot_time <= 0; 
else 
if((filler_direction != 1'b1) || (z_timeout == 1'b1)) 
filler_rot_time <= 0; 
else 
filler_rot_time <= z_timer/2; 
end
新しいｚ信号が受け取られると、ｚ＿ｔｉｍｅｒ＿ｌａｔｃｈハイ後に、ｚ＿ｔｉｍｅｒ＿ｃｌｒが第１の立ち上がりクロックエッジで設定される。クリアｚタイマ信号は、次の立ち下がりクロックエッジでディスエーブルにされる。エンコーダハンドラは、ｚタイマをリセットすることによってこの信号に応答する。
【０１２０】
always @(posedge clk or negedge reset_n or 
negedge z_timer_latch or posedge reset_z_timer_clr) begin 
if(reset_n == 1'b0 || z_timer_latch == 1'b0 ||
reset_z_timer_clr == 1'b1) 
z_timer_clr <= 0; 
else 
z_timer_clr <= 1'b1; 
end 
always @(negedge clk or negedge reset_n or negedge z_timer_latch) begin 
if(reset_n == 1'b0 || z_timer_latch == 1'b0) 
reset_z_timer_clr <= 0; 
else 
reset_z_timer_clr <= 1'b1; 
end 
endmodule
エンコーダエミュレータ
ＳＴＣは、モータエンコーダの機能性をエミュレートするための回路を有してもよい。エミュレータ回路は、ベンチテストおよび可能なセルフテスト、または、フィラーモータを実際にスピンする必要なく較正を可能にすることができる。エミュレータ回路は、標準のモータエンコーダからの信号をエミュレートする３つＴＴＬ信号（Ａ＿ｔｓｔ、Ｂ＿ｔｓｔ、Ｚ＿ｔｓｔ）を生成することができる。Ａ＿ｔｓｔ信号およびＢ＿ｔｓｔ信号は、２０４８位置エンコーダから直角位相信号をエミュレートする。Ｚ＿ｔｓｔ信号は、１回転絶対位置参照につき単一のパルスをエミュレートする。ジャンパまたはコンピュータ制御されたスイッチが、これらの信号をモータエンコーダ入力へルーティングするようにしてもよい。また、エミュレータは、選択された回転方向の典型である信号を生成してもよい。制御コンピュータは、エミュレータをオンまたはオフにしてもよい。制御コンピュータは、エミュレータ回路がエミュレートするためにいくつかのスピード（フィラーＲＰＭ）から選択してもよい。これらのスピードは、０ＲＰＭ〜３０００ＲＰＭの範囲であってもよいが、すべての可能な値を考慮する必要はない。
【０１２１】
エンコーダエミュレータ３０６は、論理ゲートを備え、論理ゲートは、実際のａ信号、ｂ信号およびｚ信号またはこれらの信号からエンコーダハンドラ３０４による処理により派生した情報、あるいはテスト信号Ａ＿ｔｓｔ、Ｂ＿ｔｓｔおよびＺ＿ｔｓｔを、セッション制御回路３０８、３１０、３１２および３１４へ通す。
【０１２２】
assign loopback = ENC_EMU[9:9]; 
always @(A or A_tst or loopback) begin 
if(loopback == 1'b0)
A_enc = A; 
else
A_enc = A_tst; 
end 
always @(B or B_tst or loopback) begin 
if(loopback == 1'b0)
B_enc = B; 
else
B_enc = B_tst; 
end 
always @(Z or Z_tst or loopback) begin 
if(loopback == 1'b0)
Z_enc = Z; 
else
Z_enc = Z_tst; 
end
エンコーダエミュレータは、人工エンコーダクロック値またはカウントを、エンコーダハンドラ３０４に関連して上述されたように、実際のｚ信号タイマの代わりに使用するように設定する。エンコーダハンドラに類似した回路ロジックを使用して、フィラーを回転することなく、装置のテストを可能にするテスト信号が生成される。
【０１２３】
セッション制御
たとえば、セッション１制御３０８、セッション２制御３１０、セッション３制御３１２、セッション４制御３１４のような複数のセッション制御回路は、エンコーダハンドラ３０４またはエンコーダエミュレータ３０６から入力を受け取り、セッショントリガを設定し、すなわち、フィラー回転のセッションが発生すべき点を設定し、制御レジスタ３０２から入力を受け取り、セッション事象、すなわち、セッション中に発生すべきストロボ光とカメラ事象との組み合わせを設定する。セッショントリガは、セッションタイマを開始し、ストロボ光をパルスし、カメラを起動するフィラー上の選択された位置である。モータエンコーダ１８８上のゼロ位置から、フィラーの回転がたとえば４０９６セグメントのセグメントに分割され、その中から、フィラーの位置が決定されてもよい。また、トリガは、所定のスピードで手動でまたは自動のいずれかで、１Ｘモードが選択されているか１／２Ｘモードが選択されているかに依存する。
【０１２４】
セッション制御３０８、３１０、３１２、３１４は、選択されたＲＰＭで１Ｘモードから１／２Ｘモードへの切り替えに適応し、１／２Ｘモードへの手動切り替えにも適応する。
【０１２５】
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
switch_to_halfX <= 1'b0; 
else begin 
if(filler_rot_time < SES_SW[10:0] && filler_rot_time != 15'b0) 
switch_to_halfX <= 1'b1; 
else 
switch_to_halfX <= 1'b0; 
end 
end 
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
switch_to__1X <= 1'b0; 
else begin 
if((filler_rot_time > (SES_SW[10:0]+(SES_SW[15:11]<<2))) && 
(filler_rot_time != 15'b0)) 
switch_to_1X <= 1'b1; 
else 
switch_to_1X <= 1'b0; 
end 
end 
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
auto_off <= 1'b0; 
else begin 
if(SES_SW[10:0] == 11'h000) 
auto_off <= 1'b1; 
else 
auto_off <= 1'b0; 
end 
end 
assign man_halfX = SES_TRIG[12:12]; 
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
session_mode <= 1'b0; 
else begin 
if(man_halfX == 1'b1) 
session_mode <= 1'b0; // 1/2X mode manual 
else begin
// auto switchover is off if setting in register is 0 
if(auto_off == 1'b1) 
session_mode <= 1'b1; // 1X mode 
else begin 
if(switch_to_halfX) begin 
session_mode <= 1'b0; // 1/2X mode auto 
end else begin 
if(switch_to_1X) 
session_mode <= 1'b1; // 1x mode swichback 
end
セッショントリガは、一定の動作状態の発生時にディスエーブルにされなければならない。たとえば、リセット信号を受け取った場合、または、フィラーのＲＰＭが１００未満（１１７１８のカウントが、１００．００６ＲＰＭに等しい）である場合（ＳＥＳ＿ＴＲＩＧ［１５］）、または、フィラーの回転方向が正しくない場合（ＳＥＳ＿ＴＲＩＧ［１４］によって特定される）、または、１／２ｘモードおよびｆｉｌｌｅｒ＿ｃｙｃｌｅが合致しない場合（ＳＥＳ＿ＴＲＩＧ［１３］）、または、パルス幅設定のいずれもゼロよりも大きくない場合、または、フィラーが同一位置にあるときに再トリガを妨げる、データビットｗａｉｔ＿ｆｏｒ＿ｆｉｌｌｅｒ＿ｍｏｖｅがハイであるときに、セッションはトリガすることができない。
【０１２６】
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
no_session_trig <= 1'b1; 
else begin 
if((filler_rot_time > 15'd11718)||(filler_rot_time == 15'd0)||
(SES_TRIG[15:15] == 1'b1) ||
(filler_direction != SES_TRIG[14:14]) ||
(session_mode == 1'b0 && filler_cycle != SES_TR1G[13:13]) ||
(SES_C_PW == 15'b0 && SES_T_PW == 10'b0 && SES_B_PW == 10'b0 && SES_U_PW == 16'b0) ||
(wait_for_filler_move == 1'b1)
) 
no_session_trig <= 1'b1; 
else 
no_session_trig <= 1'b0; 
end
例示された実施形態において、ｆｉｌｌｅｒ＿ｐｏｓがデータレジスタＳＥＳ＿ＴＲＩＧに整合する場合、セッショントリガは、ハイにパルスする。トリガがローになるときに、セッションの他のパラメータのタイミングが開始する。
【０１２７】
always @(negedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
session_trigger <= 1'b0; 
else 
if(filler_pos == SES_TRIG[11:0] && no_session_trig != 1'b1 && 
session_running == 1'b0) 
session_trigger <= 1'b1; 
else 
session_trigger <= 1'b0; 
end 
データビットセッションラニングは、セッションにわたってハイである（すべてのチャネルが完了するまで）。
【０１２８】
always @(posedge session_trigger or posedge session_done or 
negedge reset_n) begin 
if(reset_n == 1'b0 || session_done == 1'b1) 
session_running <= 1'b0; 
else 
session_running <= 1'b1; 
end 
assign busy = session_running;
データビットｓｅｓｓｉｏｎ＿ｄｏｎｅは、すべてのタイマの終了時、すなわちゼロにカウントダウンしたときに、ハイにパルスする。
【０１２９】
always @(negedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
session_done <= 1'b0; 
else 
if(session_running == 1'b1 && session_trigger != 1'b1 && 
ce_delay_timer == 0 && ce_pw_timer == 0 && 
ts_delay_timer == 0 && ts_pw_timer == 0 && 
bs_delay_timer == 0 && bs_pw_timer == 0 ) 
session_done <= 1'b1; 
else 
session_done <= 1'b0; 
end
データビットｗａｉｔ＿ｆｏｒ＿ｆｉｌｌｅｒ＿ｍｏｖｅが生成されて、フィラーは動いていないがセッションが終了した場合にセッションの再トリガをディスエーブルにする。これにより、何らかの理由でフィラーの回転が遅すぎるかまたは停止した場合、エラーを防止する。
【０１３０】
always @(posedge session_trigger or negedge reset_n)begin 
if(reset_n == 1'b0) 
last_trig_filler_pos <= 12'b0; 
else 
last_trig_filler_pos <= filler_pos; 
end 
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
wait_for_filler_move <= 1'b1; 
else begin 
if(filler_pos == last_trig_filler_pos) 
wait_for_filler_move <= 1'b1; 
else 
wait_for_filler_move <= 1'b0; 
end
ストロボ光タイミング
セッショントリガ後に、出力タイミングは、頂部および底部のストロボ光を、適切に起動し動作させる必要がある。ＳＴＣは、セッショントリガが発生してからストロボ光パルス信号が起動するまでのソフトウェア選択可能な遅延を提供する。この遅延は、０．１μｓ分解能で、少なくとも０μｓから３ｍｓの範囲であってもよい。ＳＴＣは、頂部ストロボ光トリガパルスが起動されてから停止されるまでのソフトウェア選択可能な遅延をサポートし、それによって、パルス幅を設定する。このパルス幅は、０．１μｓ分解能で、０μｓから少なくとも１００μｓの範囲である。ＳＴＣはまた、頂部ストロボ光トリガパルス（デフォルトポジティブパルス）の極性のソフトウェア選択可能な構成設定もサポートする。好適な本実施形態において、ＳＴＣは、４つの頂部ストロボ出力（たとえば、ｔｏｐ＿ｓｔｒｏｂｅ＿１、ｔｏｐ＿ｓｔｒｏｂｅ＿２、ｔｏｐ＿ｓｔｒｏｂｅ＿３、および、ｔｏｐ＿ｓｔｒｏｂｅ＿４）のいずれの組み合わせを起動してもよい。これは、４つの可能な出力が、独立したタイミングを有していないことを意味する。本明細書の教示から逸脱することなく、追加の組み合わせまたはこれより少ない組み合わせが提供されてもよい。底部ストロボ光に、同様の組み合わせが提供されてもよい。また、ユーザがストロボ光照明下でフィラーを見るのを可能にするユーザストロボ光が提供されてもよい。
【０１３１】
各チャネル、すなわち、カメラ、頂部ストロボ光および底部ストロボ光にパルスを開始するセッショントリガからの時間を設定する遅延タイマは、すべて、１０ＭＨｚのクロックに基づいている（０．１μｓステップ）。ここでは、カメラの例ｃｅ＿ｄｅｌａｙ＿ｔｉｍｅｒが述べられる。同様のロジックが、頂部ストロボ光（ｔｓ＿ｄｅｌａｙ＿ｔｉｍｅｒ）または底部ストロボ光（ｂｓ＿ｄｅｌａｙ＿ｔｉｍｅｒ）に使用される。
【０１３２】
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
ce_delay_timer <= 0; 
else 
if(session_trigger == 1'b1 && SES_C_PW >0) 
ce_delay_timer <= SES_C_DEL+1; 
else 
if(ce_delay_timer > 0) 
ce_delay_timer <= ce_delay_timer - 1; 
end
開始信号が出力段に与えられ、ハードウェア要素を起動する。頂部および底部ストロボ開始信号が、ここに示されるカメラ開始信号と同じ方法で生成される。関連するパルス幅設定がゼロである場合、開始信号ｃｅ＿ｓｔａｒｔは、ハイにならない。
【０１３３】
always @(negedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
ce_start <= 0; 
else begin 
if(ce_delay_timer = 15'h0001) 
ce_start <= 1'b1; 
else 
ce_start <= 1'b0; 
end 
end
パルス幅タイマは、各チャネル上のパルスの開始からパルスの終了の持続期間を設定する。すべて、１０ＭＨｚクロックに基づいており（０．１μｓステップ）、カウントは、セッショントリガ後の１クロック信号であるロード後の１クロック信号を開始する。
【０１３４】
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
ce_pw_timer <= 0; 
else begin 
if(session_trigger == 1'b1 && SES_C_PW>0)) 
ce_pw_timer <= (SES_C_PW*10) + 1; // result is +0, -1 on resolution 
else 
if((ce_pw_timer > 0 && camera_enable_int == 1'b1) ||
(ce_pw_timer == 20'dl && camera_enable__int == 1'b0)) 
ce_pw_timer <= ce_pw_timer - 1; 
end 
end
パルス幅タイマがカウントダウンした後に、セッション制御の出力段のための終了信号が生成される。
【０１３５】
always @(negedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
ce_end <= 0; 
else begin 
if(ce_pw_timer == 15'h0001 && camera_enable_int == 1'b1) 
ce_end <= 1'b1; 
else 
ce_end <= 1'b0; 
end 
end
信号が実行のために出力段３１６へ送られる前に、セッション制御は、方形波制御パルスを生成することによって、割り込み信号、または、ハードウェアの使用の終了を示す信号、例示された場合ではカメラの使用の終了を示す信号の最終チェックを行う。パルスは、ｃｅ＿ｓｔａｒｔ信号の発生で開始し、ｃｅ＿ｅｎｄ信号で終了する。リセット信号は、当然ながら、プロセスを中断することができる。
【０１３６】
always @(posedge ce_start or posedge ce_end or negedge reset_n) begin 
if(reset_n == 1'b0 ce_end = 1'b1) 
camera_enable_int <= 1'b0; 
else 
camera_enable_int <= 1'b1; 
end
最後に、セッション制御回路３０８、３１０、３１２、３１４は、レジスタの設定に応答して、色を含む頂部または底部の光、および、イネーブルカメラのために、セッション出力イネーブルＳＥＳ＿ＯＥを介して出力をイネーブルにする。この場合、好適な本実施形態のすべてのチャネルが示される。
【０１３７】
assign bottom_strobe_2 = SES_OE[9] & SES_OE[3:3] & bottom_strobe_int; 
assign bottom strobe_1 = SES_OE[8] & SES_OE[3:3] & bottom_strobe_int; 
assign top_strobe_4 = SES_OE[7] & SES_OE[2:2] & top_strobe_int; 
assign top_strobe_3 = SES_OE[6] & SES_OE[2:2] & top_strobe_int; 
assign top_strobe_2 = SES_OE[5] & SES_OE[2:2] & top_strobe_int; 
assign top_strobe_1 = SES_OE[4] & SES_OE[2:2] & top_strobe_int; 
assign camera_enable = camera_enable_int & SES_OE[1:1];
底部ストロボ光タイミング
同様に、セッショントリガ後に、出力タイミングは、底部ストロボ光を適切に起動し動作させる必要がある。ＳＴＣは、セッショントリガが発生してから底部ストロボ光トリガパルス信号が起動されるまでのソフトウェア選択可能な遅延を提供する。この遅延は、０．１μｓ分解能で、少なくとも０μｓから３ｍｓの範囲であってもよい。ＳＴＣは、底部ストロボ光トリガパルスが起動されてから停止されるまで、すなわち、パルス幅の最後までのソフトウェア選択可能な遅延をサポートする。このパルス幅は、０．１μｓ分解能で、０μｓから少なくとも１００μｓの範囲である。ＳＴＣは、底部ストロボ光トリガパルス（デフォルトポジティブパルス）の極性のソフトウェア選択可能な構成設定を提供する。ＳＴＣは、４つの出力（たとえば、ｂｏｔｔｏｍ＿ｓｔｒｏｂｅ＿１、ｂｏｔｔｏｍ＿ｓｔｒｏｂｅ＿２、ｂｏｔｔｏｍ＿ｓｔｒｏｂｅ＿３、ｂｏｔｔｏｍ＿ｓｔｒｏｂｅ＿４）のいずれの組み合わせを起動してもよい。これは、４つの可能な出力が、独立したタイミングを有することができないことを意味する。
【０１３８】
ユーザストロボ光タイミング
図５および７に示されるように、オペレータまたはユーザが装置内の流体を観察することができるようにフィラーを照明するユーザストロボ光３７も設けてもよい。ユーザストロボが使用される場合、出力タイミングは、セッショントリガ後に、ユーザストロボ光を適切に起動し動作させるために必要である。ＳＴＣは、セッショントリガが発生してからユーザストロボ光トリガパルス信号が起動するまでのソフトウェア選択可能な遅延を提供してもよい。この遅延は、０．１μｓ分解能で、少なくとも０μｓから３ｍｓの範囲であってもよい。ＳＴＣは、ユーザストロボ光トリガパルスが起動されてから停止されるまで、すなわち、パルス幅の最後までのソフトウェア選択可能な遅延を提供する。このパルス幅は、０．１μｓ分解能で、少なくとも０ｍｓから６０ｍｓの範囲であってもよい。ＳＴＣはまた、ユーザストロボ光トリガパルス（デフォルトポジティブパルス）の極性のソフトウェア選択可能な構成設定もまた提供する。
【０１３９】
ユーザストロボ光３７は、当該技術分野では既知のように、流体相の間のインタフェースをオペレータが制御するのを可能にする。本明細書に記載された自動制御が何らかの理由で中断された場合、オペレータは、ユーザストロボ光を使用して処理を継続することができる。ここで好適な特定のユーザストロボ光を制御するために、別個の同期タイミングコントローラ１９２’が冗長性のために設けられてもよい。当該技術分野では既知のように、ロバスト性が低減されたシステムを設けることもできる。メインの同期タイミングコントローラ１９２およびユーザストロボＳＴＣ１９２’の両方が、モードエンコーダ１８８からのエンコーダハンドラを介した信号１９０に応答してもよい。また、何らかの理由でエンコーダが故障した場合、フィラーまたはロータに連結されたホール効果磁気センサが、補助信号１９０’を提供してもよい。ホール効果センサ３０４’からの信号１９０’は、エンコーダハンドラ３０４と同様に処理されてもよい。ユーザストロボ３７のセッション制御３０８は、いずれかの入力を使用することができ、このようにして、さらなるフェイルセーフ状態を提供する。
【０１４０】
カメライネーブルおよびタイミング
カメライネーブルおよびタイミングは、セッショントリガによって開始される独立したプロセスである。ＳＴＣは、セッショントリガが発生してからカメライネーブルパルスが起動されるまでのソフトウェア選択可能な遅延で単一のカメライネーブルパルス出力を提供する。この遅延は、０．１μｓ分解能で、０μｓから少なくとも３ｍｓの範囲である。ＳＴＣは、カメライネーブルパルスが起動されてから停止されるまでのソフトウェア選択可能な遅延を提供する。この遅延は、０．１μｓ分解能で、０ｍｓから少なくとも３０ｍｓの範囲である。ＳＴＣはまた、カメライネーブルパルス（デフォルトポジティブパルス）の極性のソフトウェア構成設定もまた提供する。
【０１４１】
リセットハンドリング
ＳＴＣは、２つの別個のリセット３１８を使用可能にしてもよい。ソフトウェアリセットは、所定のコードをリセットレジスタに書き込むことによってトリガされてもよい。また、ローに駆動されたときのハードウェアリセットは、制御インタフェースが失われた場合にリセットを行ってもよい。制御コンピュータは、リセットレジスタへ書き込んで、ＳＴＣにすべてのカウンタおよびレジスタをリセットさせてもよい。ＳＴＣは、ピンをロジックローへ駆動することによって、ハードウェアリセットを提供してもよい。このピンは、通常動作では十分な駆動でハイに引かれて、リセット入力の不具合がＳＴＣに対して意図しないリセットを生じさせないようにしてもよい。ハードウェアまたはソフトウェアのリセットは、パワーアップ状態に戻り、フィラーのゼロ位置の構成および他の初期手順を必要とする。
【０１４２】
出力制御およびセッション制限ハンドリング
光学モニタリングシステム１０は、短い期間にＬＥＤの設計限界を超えて駆動されるＬＥＤを使用して、制御されたストロボ照明を生成することができる。複数のセッションが可能であるため、セッションは、オーバーラップすることもあり、または、近すぎて発生することもあり、ＬＥＤを過熱するか、または、パルス間で十分に冷却できないこともある。出力制御３１６は、複数のセッションに応答して延長した持続期間の場合であっても、パルス持続期間に制限を課すことによって、且つ、パルス間に一定の期間を求めることによって、そのような状態を防止する。ＳＴＣは、ハードウェア選択可能な、または、ソフトウェア選択可能な、最大パルス幅リミッタを有して、時間が超過する場合、任意のチャネル（頂部ストロボ光、底部ストロボ光、ユーザストロボ光、および、カメラ）の出力パルスを停止するようにしてもよい。これは、２つの出力チャネルについて個別に選択可能である。ユーザストロボ出力について、このリミッタは、ハードウェア選択可能であってもソフトウェア選択可能であってもよい。カメライネーブル出力についても、リミッタは、ハードウェア選択可能であってもソフトウェア選択可能であってもよい。ＳＴＣはまた、オフタイムが超過した場合に、任意のチャネルの出力パルスを停止するために、最小オフタイムリミッタも提供してもよい。これは、ＬＥＤを使用する光源に関連して、特に重要である。この装置において、ＬＥＤは、短い期間の定格出力よりも高くに駆動される。動作性を維持するために、ＬＥＤは、起動期間後に、回復するための十分な時間を有さなければならない。頂部および底部のストロボ出力について、このリミッタは、ハードウェア選択可能であってもソフトウェア選択可能であってもよい。これは、２つの出力チャネルの各々について個別に選択可能である。ユーザストロボ出力およびカメライネーブル出力についても、このリミッタは、ハードウェアであってもソフトウェアであってもよい。これらのリミッタは安全目的で設けられているが、複数の独立したセッションを近い位置で連続してトリガする能力があるので、セッションのパルスをオーバーラップすることが可能であり、それによって、１つのセッションの最大設定を超えてパルス幅を拡張することができる。任意のチャネルのためにいずれかのエラーハンドラが起動された場合、ステータスビットが設定され、制御コンピュータに状態を知らせる。エラーフラグが、制御コンピュータのソフトウェアによってまたはハードウェアリセットによって、リセットされてもよい。
【０１４３】
出力制御回路３１６は、セッション制御回路３０８、３１０、３１２および３１４からの命令群を組み合わせ、ここにカメラについて示されるように、必要に応じて、出力を停止する。
【０１４４】
always @(ses1_camera_enable or ses2_camera_enable or PULSE_CFG[0:0]) begin 
ce_comb_sig = PULSE_CFG[0:0] & (ses1_camera_enable |
ses2_camera_enable); 
end
ストロボコマンドもまた、ここに頂部ストロボ光のセット１について示されるように、組み合わされ、制限される。同様のロジックが、すべての他のストロボセットで繰り返される。
【０１４５】
always @(ses1_top_strobe_1 or ses2_top_strobe_1 or PULSE_CFG[1:1]) begin 
ts_comb_sig_1 = PULSE_CFG[1:1] & (ses1_top_strobe_1 | ses2_top_strobe_1); 
end
組み合わされた信号（ここでは、カメラ組み合わせ信号）が、後の比較のためにｃｅ＿ｃｏｍｂ＿ｈｉｓｔｏｒｙとして保存される。
【０１４６】
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
ce_comb_history <= 1'b0; 
else 
ce_comb_history <= ce_comb_sig; 
end
パルス幅制限が適用され、カメラの使用の持続期間を制限する。
【０１４７】
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) begin 
ce_pwlim_count <= 1; 
ce_pwlim_count_on <= 1'b0; 
end else begin 
if(ce_comb_sig == 1'b1) begin 
if(ce_pwlim_count_on == 1'b0 && ce_comb_history == 1'b0) begin 
ce_pwlim_count <= PWLIM_CAMERA_SETT1NG; 
ce_pwlim_count_on <= 1'b1; 
end else begin // count down 
if(ce_pwlim_count != 0) 
ce_pwlim_count <= ce_pwlim_count-1; 
end 
end else begin 
ce_pwlim_count_on <= 1'b0; 
end 
end 
end 
always @(ce_pwlim_count or ce_pwlim_count_on) begin 
if(ce_pwlim_count == 0 && ce__pwlim_count_on == 1'b1) 
ce_pwlim = 1'b1; 
else 
ce_pwlim = 1'b0; 
end
同様に、頂部ストロボパルス幅制限が適用される。この回路ロジックは、底部ストロボ制限用に繰り返される。
【０１４８】
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) 
ts_comb_history_1 <= 1'b0; 
else 
ts_comb_history_1 <= ts_comb_sig_1; 
end 
always @(posedge clk__10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) begin 
ts_pwlim_count_1 <= 1; 
ts_pwlim_count_on_1 <= 1'b0; 
end else begin 
if(ts_comb_sig_1 == 1'b1) begin 
if(ts_pwlim_count_on_1 == 1'b0 && ts_comb_history_1 == 1'b0) begin 
ts_pwlim_count_1 <= PWLIM_TOP_SETTING; 
ts_pwlim_count_on_1 <= 1'b1; 
end else begin // count down 
if(ts_pwlim_count_1 != 0) 
ts_pwlim_count_1 <= ts_pwlim_count_1-1; 
end 
end else begin 
ts_pwlim_count_on_1 <= 1'b0; 
end 
end 
end 
always @(ts_pwlim_count_1 or ts_pwlim_count_on_1) begin 
if(ts_pwlim_count_1 == 0 && ts_pwlim_count_on_1 == 1'b1) 
ts_pwlim_1 = 1'b1; 
else 
ts_pwlim_1 = 1'b0; 
end 
最大パルス幅持続期間に加えて、最小時間オフまたは起動していない期間もまた、カメラおよびストロボ光が冷却するかまたは回復するのを可能にするようにされなければならない。カメライネーブルオフタイムリミッタは、上記で生成されたｃｅ＿ｃｏｍｂ＿ｈｉｓｔｏｒｙを使用する。
【０１４９】
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) begin 
ce_offlim_count <= 0; 
ce_offlim_count_on <= 1'b0; 
end else begin 
if(ce_comb_sig == 1'b0 || ce_offlim_count_on == 1'b1) begin 
if(ce_offlim_count_on == 1'b0 && ce_comb_history == 1'b1) begin 
ce_offlim_count <= OFFLIM_CAMERA_SETTING; 
ce_offlim_count_on <= 1'b1; 
end else begin // count down 
if(ce_offlim_count != 0) 
ce_offlim_count <= ce_offlim_count-1; 
else 
ce_offlim_count_on <= 1'b0; 
end 
end 
end 
end 
always @(ce_offlim_count or ce_offlim_count_on) begin 
if(ce_offlim_count != 0 && ce_offlim_count_on == 1'b1) 
ce_offlim = 1'b1; 
else 
ce_offlim = 1'b0; 
end
頂部ストロボオフタイムリミッタは、頂部ストロボ光および底部ストロボ光の両方を制御する例である。ストロボオフタイムリミッタは、上記で生成された「ｔｓ＿ｃｏｍｂ＿ｈｉｓｔｏｒｙ」を使用する。
【０１５０】
always @(posedge clk_10MHz or negedge reset_n) begin 
if(reset_n == 1'b0) begin 
ts_offlim_count_1 <= 0; 
ts_offlim_count_on_1 <= 1'b0; 
end else begin 
if(ts_comb_sig_1 == 1'b0 || ts_offlim_count_on_1 == 1'b1) begin 
if(ts_offlim_count_on_1 == 1'b0 && ts_comb_history_1 == 1'b1) begin 
ts_offlim_count_1 <= OFFLIM_TOP_SETTING; 
ts_offlim_count_on_1 <= 1'b1; 
end else begin // count down 
if(ts_offlim_count_1 != 0) 
ts_offlim_count_1 <= ts_offlim_count_1-1; 
else 
ts_offlim_count_on_1 <= 1'b0;
end 
end 
end 
end 
always @(ts_offlim_count_1 or ts_offlim_count_on_1) begin 
if(ts_offlim_count_1 != 0 && ts_offlim_count_on_1 == 1'b1) 
ts_offlim_1 = 1'b1; 
else 
ts_offlim_1 = 1'b0; 
end 
出力制御回路３１６は、組み合わされた信号および最小タイムオフリミットのテストの結果を集め、リミットを超過する場合には、ハイ出力信号をローに強制する。
【０１５１】
assign ce_offlim_trig = ce_comb_sig & ce_offlim; 
assign ts_offlim_trig = ((ts_comb_sig_1 & ts_offlim_1) ||
(ts_comb_sig_2 & ts_offlim_2) ||
(ts_comb_sig_3 & ts_offlim_3) ||
(ts_comb_sig_4 & ts_offlim_4)); 
assign bs_offlim_trig = ((bs_comb_sig_1 & bs_offlim_1) ||
(bs_comb_sig_2 & bs_offlim_2));
次いで、出力制御回路３１６は、信号を収集し、ステータスバスを作る。
【０１５２】
assign ts_offlim = ts_offlim_1 | ts_offlim_2 | ts_offlini_3 | ts_offlim_4; 
assign bs_offlim = bs_offlim_1 | bs_offlim_2; 
assign ts_pwlim = ts_pwlim_1 | ts_pwlim_2 | ts_pwlim_3 | ts_pwlim_4; 
assign bs_pwlim = bs_pwlim_1 | bs_pwlim_2; 
assign status = { 1'b0, 
bs_offlim_trig & ~disable_offlim, 
ts_offlim_trig & ~disable_offlim, 
ce_offlim_trig & ~disable_offlim, 
1'b0, 
bs_pwlim & ~disable_pwlim, 
ts_pwlim & ~disable_pwlim, 
ce_pwlim & ~disable_pwlim};
出力制御回路の第２段は、カメラおよびＬＥＤの頂部ｓｔｒｏｂｅ＿１セットについて示されたように、いずれかのリミッタがトリガする場合に、パルスを停止する。
【０１５３】
always @(ce_comb_sig or ce_pwlim or ce_offlim or disable_pwlim or 
disable_offlim) begin 
ce_lim_sig = ce_comb_sig & ~(ce_pwlim & ~disable_pwlim) &
~(ce_offlim & ~disable_offlim); 
end
下記の頂部ｓｔｒｏｂｅ＿１回路ロジックは、他の頂部ストロボセットおよび底部ストロボセットについて、必要に応じた回数繰り返されてもよい。
【０１５４】
always @(ts_comb_sig_1 or ts_pwlim_1 or ts_offlim_1 or disable_pwlim or 
disable_offlim) begin 
ts_lim_sig_1 = ts_comb_sig_1 & ~(ts_pwlim_1 & ~disable_pwlim) &
~(ts_offlim_1 & ~disable_offlim); 
end 
第３段において、出力制御回路は、必要に応じて、ソフトウェア制御下で選択されてもよいように、装置のロジックハイセグメントとロジックローセグメントとの間のハードウェア互換性のために、出力を逆にする。
【０１５５】
always @(ce_lim_sig or PULSE_CFG[4:4] or disable_outputs_n) begin 
if(PULSE_CFG[4:4] == 1'b1) 
camera_enable = ce_lim_sig & disable_outputs_n; 
else 
camera_enable = ~ce_lim_sig & disable_outputs_n; 
end
下記の頂部ｓｔｒｏｂｅ＿１回路ロジックは、他の頂部ストロボセットおよび底部ストロボセットについて、必要に応じた回数繰り返されてもよい。
【０１５６】
always @(ts_lim_sig_1 or PULSE_CFG[5:5] or disable_outputs_n) begin 
if(PULSE_CFG[5:5] == 1'b1) 
top_strobe_1 = ts_lim_sig_1 & disable_outputs_n; 
else 
top_strobe_1 = ~ts_lim_sig_1 & disable_outputs_n; 
end
本明細書の上記には、遠心分離機血液処理システムに光連通して、遠心分離機血液処理システムの観察領域を照明するために入射光ビームを提供するために複数の発光ダイオードを備える第１の光源と、上記遠心分離機血液処理システムに光連通して、上記観察領域からの上記透過光、散乱光、または、その両方の少なくとも一部を集光する集光要素と、モニタリングシステム用の動作手順を提供するプログラム可能なコントローラと、上記プログラム可能なコントローラに電気連通し上記光源に電気的に連結した独立した専用制御回路であって、コントローラからコマンドパラメータを受け取り、コマンドパラメータに応答して光源から照明の期間を制御する独立した専用制御回路と、を備える、流体成分を分離するための遠心分離機血液処理システムを記載した。
【０１５７】
本発明の範囲または精神から逸脱することなく、本発明の構成および方法に様々な変更例および変形例を作ることができることは、当業者には明らかである。したがって、本発明は明細書に検討された例によって制限されないことを理解すべきである。むしろ、本発明は、下記の特許請求の範囲およびその等価物の範囲内である限り、変更例および変形例をカバーすることが意図されている。
【図１】
2010512966.tif 000003
【図２】
2010512966.tif 000004
【図３】
2010512966.tif 000005
【図４】
2010512966.tif 000006
【図４Ａ】
2010512966.tif 000007
【図４Ｂ】
2010512966.tif 000008
【図４Ｃ】
2010512966.tif 000009
【図５】
2010512966.tif 000010
【図６Ａ】
2010512966.tif 000011
【図６Ｂ】
2010512966.tif 000012
【図６Ｃ】
2010512966.tif 000013
【図６Ｄ】
2010512966.tif 000014
【図７】
2010512966.tif 000015
【手続補正書】
【提出日】平成21年8月24日(2009.8.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
中心回転軸を中心に回転する分離チャンバ２０を有する、流体成分を分離するための遠心分離機血液処理システム１０用のモニタリングシステムであって、
前記遠心分離機血液処理システムに光連通して、前記遠心分離機血液処理システムの観察領域を照明するための入射光ビームを提供することによって、前記観察領域から透過光、散乱光、または、その両方を生成する第１の光源１２と、
前記遠心分離機血液処理システムに光連通して、前記観察領域３２からの前記透過光、散乱光、または、その両方の少なくとも一部を集光する集光要素１４と、
前記モニタリングシステムに動作手順を提供するプログラム可能なコントローラ４０と、
前記プログラム可能なコントローラに電気連通し、前記第１の光源に電気的に連結された独立した専用制御回路であって、前記プログラム可能なコントローラからコマンドパラメータを受け取り、前記コマンドパラメータに応答して前記第１の光源から照明の期間を制御する独立した専用制御回路１９２と、
前記分離チャンバーに組み合わされた１つのエンコーダー１８８であって、前記エンコーダーは、前記分離チャンバーの回転位置に関連した信号を前記専用制御回路に通信し、前記専用制御回路は、前記エンコーダーの信号から前記分離チャンバーの初期ゼロ位置を識別する点を特徴とするモニタリングシステム。
【請求項２】
前記専用制御回路は、選択された回転を前記初期ゼロ位置から始める少なくとも１つの照明セッションを開始する請求項１記載のモニタリングシステム。
【請求項３】
前記照明セッションは、第１の選択された回転で前記第１の光源に電圧を加えることと、選択された持続期間後に前記第１の光源に電圧を加えるのを停止することと、を備える請求項２記載のモニタリングシステム。
【請求項４】
前記第１の光源は１つの上部光源であってさらに下部光源とモニタリングカメラを備え、前記カメラはシャッター装置を備え、前記専用制御回路は前記上下各光源および前記のモニタリングカメラを制御することができる請求項３記載のモニタリングシステム。
【請求項５】
前記初期ゼロ位置は、前記分離チャンバの回転に沿った任意の位置で較正されることができる請求項３記載のモニタリングシステム。
【請求項６】
前記専用制御回路は、前記第１の光源へ信号を提供して、前記第１の光源からの照明の開始、持続期間および強度を完全に制御する請求項１記載のモニタリングシステム。
【請求項７】
ユーザストロボ光源をさらに備え、前記ユーザストロボ光源は、前記エンコーダからの信号に応答してユーザ制御回路によって制御される請求項１記載のモニタリングシステム。
【請求項８】
前記分離チャンバーに連結されたホール効果センサーをさらに備え、前記ホール効果センサーは、前記分離チャンバーの回転位置に関連した信号を前記専用制御回路へ通信する他の請求項記載のモニタリングシステム。
【請求項９】
前記専用制御回路は、遅延および照明の期間を備える複数のセッションを制御し、照明のオーバーラップ期間を組み合わせて組み合わされた照明期間とする請求項１記載のモニタリングシステム。
【請求項１０】
前記他の請求項に記載のシステムであって前記第１の光源からの照明の持続時間を制限する第１のタイマをさらに備えるモニタリングシステム。
【請求項１１】
前記第１の光源は、発光ダイオード(ＬＥＤｓ)を備え、照明の前記持続時間は前記ＬＥＤｓの故障を防止するように制限される請求項１０記載のモニタリングシステム。
【請求項１２】
他の請求項記載のモニタリングシステムであって、照明の期間の間の最小期間を提供する第２のタイマをさらに備えるモニタリングシステム。
【請求項１３】
前記第１の光源は、発光ダイオード（ＬＥＤｓ）を備え、照明の前記持続期間は、前記ＬＥＤの故障を防止するように制限される請求項１２記載のモニタリングシステム。
【請求項１４】
他の請求項に記載のモニタリングシステムであって、回転軸を中心に前記チャンバーを回転させるために前記分離チャンバーに連結された１つのモータと、
前記分離チャンバー内の流体流れを制御するための複数のポンプと、
前記ポンプおよび前記モータに電気連通し、前記ポンプおよび前記モータを制御するためのコマンドを生成する前記コントローラと、を備えるモニタリングシステム。
【請求項１５】
下記のものを備える流体成分を分離するための遠心機血液処理システム１０であって、
分離チャンバー２０、
分離チャンバーと中心回転軸を中心に前記チャンバーを回転するために前記分離チャンバーに連結された１つのモータと、
前記分離チャンバー内の流体流れを制御するための複数のポンプと、前記ポンプおよび前記モータに電気連通し、前記ポンプおよび前記モータを制御するためのコマンドを生成するコントローラと、
前記コントローラに電気連通して、前記遠心分離機血液処理システムの観察領域を照明するための入射光ビームを提供することによって、前記観察領域３２から透過光、散乱光、又は、その両方を生成する第１の光源１２と、
前記遠心分離機血液処理システムに光連通して、前記観察領域からの前記透過光、散乱光、又は、その両方の少なくとも一部を集光する集光要素１４と、
前記モニタリングシステムに動作手順を提供するプログラム可能なコントローラ４０を含み、前記第１の光源１２は、発光ダイオード（ＬＥＤｓ）を備え、前記第１の光源からの照明の持続時間を制限する第１のタイマと、
照明の期間の間の最小の期間を提供する第２のタイマを持ち、前記照明の間の最小の期間は前記発光ダイオード（ＬＥＤｓ）の故障を防止するように選択される点を特徴とする遠心分離機血液処理システム。
【請求項１６】
前記コントローラは、遅延および照明の期間を備える複数のセッションを制御する請求項１５記載の遠心分離機血液処理システム。
【請求項１７】
前記コントローラは、照明のオーバーラップ期間を組み合わせて組み合わされた照明期間とする請求項１６記載の遠心分離機血液処理システム。
【国際調査報告】
2010512966.tif 000016
2010512966.tif 000017
2010512966.tif 000018