(57)【特許請求の範囲】
【請求項１】
プロセス制御装置に用いられる、２台以上のモニタを用いて表示を行うマルチモニタシステムにおいて、
２台以上のモニタと、
これらのモニタに対応しているディスプレイカードと、
このディスプレイカードを制御するディスプレイドライバと、
設定時に操作監視ウインドウアプリケーションによってアクセスされ、オペレーティングシステムの種類およびこのオペレーティングシステムが２台以上のモニタを認識しているかを調べ、オペレーティングシステムがマルチモニタ機能をサポートしており、かつ２台以上のモニタを認識しているときは、このマルチモニタ機能にアクセスして情報を取得して前記オペレーティングシステムがサポートするマルチモニタ機能を選択し、前記オペレーティングシステムがマルチモニタ機能をサポートしていないオペレーティングシステムであるか、２台以上のモニタを認識していないときは前記ディスプレイドライバにアクセスして情報を取得して前記ディスプレイドライバがサポートするマルチモニタ機能を選択するモニタ認識部と、
を具備したことを特徴とするマルチモニタシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、複数のモニタを使用するマルチモニタシステムに関し、詳しくは構成が異なっても自動的に最適の機能を設定することできるマルチモニタシステムに関するものである。
【０００２】
【従来の技術】
プロセス制御装置には、複数のモニタを用いることができるマルチモニタシステムが搭載されているものがある。このようなマルチモニタシステムでは、仮想デスクトップを複数のモニタに分割して表示させることによって、複数のプロセスの状態を監視したり、プロセスの状態をチェックしながら設定値を変更するなどの操作を行うことができる。
【０００３】
このようなマルチモニタシステムを実現する手段はＯＳによって異なっている。例えば、Windows（登録商標）2000を用いる制御装置では、ＯＳがマルチモニタ機能をサポートしているので、このＯＳの機能を利用してマルチモニタシステムを実現している。しかし、Windows（登録商標）NT4.0ではＯＳがマルチモニタ機能をサポートしていないので、ディスプレイカードのドライバ独自の機能であるデュアルヘッド機能を用いてマルチモニタを実現している。
【０００４】
また、Windows（登録商標）2000のような、ＯＳがマルチモニタ機能をサポートしているＯＳを使用していても、ディスプレイカードのドライバがそのＯＳのマルチモニタ機能に対応していないとＯＳのマルチモニタ機能を使用することができないので、デュアルヘッド機能を用いてマルチモニタを実現することもある。
【０００５】
【発明が解決しようとする課題】
しかしながら、このようなマルチモニタシステムには、次のような課題があった。
【０００６】
前述したように、ＯＳがサポートしているマルチモニタ機能を使用するか、あるいはディスプレイドライバ独自の機能であるデュアルヘッド機能を使用するかは、どのＯＳを使用するか、あるいはディスプレイカードのドライバがＯＳのマルチモニタ機能に対応しているかどうかによって決定しなければならない。従来はシステム設計者がシステム構成を見てどちらの機能を用いるかを判断していたが、煩雑であるという課題があった。
【０００７】
従って本発明が解決しようとする課題は、システム構成をチェックして、どの機能を用いてマルチモニタシステムを実現するかを自動的に判断することができる、マルチモニタシステムを提供することにある。
【０００８】
【課題を解決するための手段】
このような課題を解決するために、本発明のうち請求項１記載の発明は、２台以上のモニタと、これらのモニタに対応しているディスプレイカードと、このディスプレイカードを制御するディスプレイドライバと、設定時に操作監視ウインドウアプリケーションによってアクセスされ、オペレーティングシステムの種類およびこのオペレーティングシステムが２台以上のモニタを認識しているかを調べ、オペレーティングシステムがマルチモニタ機能をサポートしており、かつ２台以上のモニタを認識しているときは、このマルチモニタ機能にアクセスして情報を取得して前記オペレーティングシステムがサポートするマルチモニタ機能を選択し、前記オペレーティングシステムがマルチモニタ機能をサポートしていないオペレーティングシステムであるか、２台以上のモニタを認識していないときは前記ディスプレイドライバにアクセスして情報を取得して前記ディスプレイドライバがサポートするマルチモニタ機能を選択するモニタ認識部とを具備したものである。自動的に最適の機能を選択できる。
【００１２】
【発明の実施の形態】
以下に、図に基づいて本発明を詳細に説明する。
図１は本発明に係るマルチモニタシステムの一実施例のフローチャートである。すなわち、このフローチャートはどの機能を使用してマルチモニタシステムを実現するかを決めるアルゴリズムを示すものである。この実施例では、ＯＳの機能を利用できるときはその機能を優先的に使用するようにする。
【００１３】
図１において、まず使用しているＯＳがWindows（登録商標）2000以降であるかを調べる。Windows（登録商標）2000以降でないとＯＳがマルチモニタをサポートしていないので、デュアルヘッド機能を選択する。ＯＳがWindows（登録商標）2000以降であると、次にＯＳが２台以上のモニタを認識しているかを調べる。認識していないとディスプレイカードのドライバがＯＳのマルチモニタ機能に対応していないので、デュアルヘッド機能を選択し、認識しているとＯＳのマルチモニタ機能を選択する。
【００１４】
そして、ＯＳのマルチモニタ機能を選択したときはＯＳからマルチモニタ機能のモニタ情報を取得する処理を行い、デュアルヘッド機能を選択したときはデュアルヘッド機能のモニタ情報を取得する処理を行って、この情報によってマルチモニタシステムを実現する。
【００１５】
図２に、デュアルヘッド機能を使用するときのモニタ情報取得処理のフローチャートを示す。このフローチャートでは、仮想的なデスクトップの解像度から使用するモニタの台数とその並び方を決定する。最初にデュアルヘッド機能時のモニタの情報を取得する。そして、モニタ数決定処理を開始する。まず、解像度の横縦比が１２：３、ドット数比で６４０×３：４８０よりも横が大きいかを調べる。横がこの値よりも大きいと、水平方向に４台のモニタが必要であるとする。
【００１６】
上記の値よりも横方向の解像度が大きくないと、同様にして解像度の横縦比が８：３，ドット数比で６４０×２：４８０よりも横が大きいかを調べ、この値よりも横が大きいと水平方向に３台のモニタが必要であるとする。大きくないと解像度が４：３、ドット数比で６４０：４８０よりも横が大きいかを調べ、大きいと水平方向にモニタが２台、大きくないと水平方向のモニタは１台であるとする。
【００１７】
水平方向のモニタ数が１台と決定されると、次に仮想的なデスクトップの垂直方向の解像度から垂直方向のモニタ数を決定する。最初に解像度の横と縦の比が５：１２，ドット数比では１２８０：１０２４×３より縦方向が大きいかを調べ、大きいと垂直方向のモニタ数を４台とする。また、小さいと横縦比が５：８、ドット数比で１２８０：１０２４×２より縦方向が大きいかを調べ、大きいと垂直方向のモニタ数を３台とする。
【００１８】
次に、解像度の縦横比が５：４、ドット数比で１２８０：１０２４より縦方向が大きいかを調べ、大きいと垂直方向のモニタ数を２台、大きくないと１台とする。このようにして、水平方向と垂直方向のモニタ数を決定する。
【００１９】
図３にデュアルヘッド機能を用いた場合のモニタの配置例を示す。図３において、（Ａ）〜（Ｃ）はモニタを水平方向に配置した例であり、（Ｄ）〜（Ｆ）は垂直方向に配置した例である。仮想的なデスクトップの原点（０，０）を含むモニタがモニタ番号１になり、順番に２〜４の番号を付ける。通常、原点は画面の左上端に取るので、横方向の配置の場合は左端から右に向かって増加する番号が付けられ、縦方向配置の場合は上から下に向かって増加する番号が付けられる。このモニタ番号は、モニタの配置方向や主モニタ、副モニタの選択状態などには依存しない、モニタの物理的な番号である。
【００２０】
ＯＳがサポートしているマルチモニタ機能を使用するときは、モニタに関する情報はマルチモニタ関連のＡＰＩ(Application Program Interface)から取得する。Windows（登録商標）2000の場合はＡＰＩはWin32APIである。
【００２１】
図４に、Windows（登録商標）2000のモニタ関係のプロパティの設定画面を示す。図４において、１はモニタのプロパティの設定ウインドウである。１１はモニタの色数を設定するボックスである。この設定はHigh  Color（６５，５３６色）以上の色数を設定し、かつ使用する全てのモニタの色数を同じにする。
【００２２】
１２はどのモニタをプライマリモニタ（主モニタ）とするかの設定ボックスである。どれか１台のモニタをプライマリモニタに設定する。１３はモニタの解像度を設定するボックスである。使用する全てのモニタを同じ解像度に設定する。１４に使用する複数のモニタの配置および現在設定中のモニタがどの位置にあるかが表示される。図４では設定中のモニタはモニタ１であることを示している。
【００２３】
この実施例では、図１、図２で説明した複数モニタの認識機能を共通ライブラリで実現している。マルチモニタを使用するアプリケーション、例えばプロセス制御の操作監視インターフェイスがこの複数モニタ認識の共通ライブラリを使用することにより、ディスプレイカードなどのハードウエアの構成の違いを意識することなく、複数モニタのインターフェイスを実現することができる。
【００２４】
図５に、デュアルヘッド機能を用いた場合のハードウエアとソフトウエアの関係を示す。図５において、２は操作監視ウインドウアプリケーション、３は図１、図２で機能を説明した複数モニタ認識部である複数モニタ認識ライブラリ、５１はマルチモニタ対応のディスプレイドライバである。このディスプレイドライバ５１には複数のディスプレイカード６が接続されており、各々のディスプレイカード６にはモニタ７が接続されている。
【００２５】
このような構成において、操作監視ウインドウアプリケーション２は設定時に複数モニタ認識ライブラリ３をアクセスする。複数モニタ認識ライブラリ３はディスプレイドライバ５１にアクセスしてモニタに関する情報などシステムの情報を取得し、マルチモニタ機能を実現する。その後、Windows（登録商標）ＧＤＩ(Graphic Device Interface)機能を用いて仮想デスクトップに描画を行う。Windows（登録商標）ＧＤＩ機能４はディスプレイドライバ５１の機能を用いて、モニタ７に表示を行う。
【００２６】
図６に、ＯＳがサポートしているマルチモニタ機能を用いた場合の構成を示す。なお、図５と同じ要素には同一符号を付し、説明を省略する。この図では、ＯＳにWindows（登録商標）2000を用いる場合で説明している。５２はWidows2000マルチモニタ機能であり、複数モニタ認識ライブラリ３およびWindows（登録商標）ＧＤＩ機能４によってアクセスされる。５３はWindows（登録商標）2000マルチモニタ対応のディスプレイドライバであり、使用する各ディスプレイカード６に対応している。
【００２７】
このような構成において、操作監視ウインドウアプリケーション２は設定時に複数モニタ認識ライブラリ３をアクセスする。複数モニタ認識ライブラリ３はディスプレイドライバ５１にアクセスしてモニタに関する情報などシステムの情報を取得し、マルチモニタ機能を実現する。その後、操作監視ウインドウアプリケーション２はWindows（登録商標）ＧＤＩ機能４にアクセスして、仮想デスクトップに描画を行う。
【００２８】
Windows（登録商標）ＧＤＩ機能４はWindows（登録商標）2000マルチモニタ機能５２にアクセスして描画を実行する。Windows（登録商標）2000マルチモニタ機能５２は描画をどのモニタに表示するかを決定してそれぞれのWindows（登録商標）2000マルチモニタディスプレイドライバ５３をアクセスし、各々のモニタに表示を行う。
【００２９】
すなわち、図５のデュアルヘッド機能を用いるシステムの場合でも、図６のＯＳのマルチモニタ機能を使用する場合でも、アプリケーションは複数モニタ認識ライブラリ３にアクセスするだけでよい。この複数モニタ認識ライブラリ３が常に最適のマルチモニタ機能を選択する。
【００３０】
図７、図８にＯＳのマルチモニタ機能を利用した場合の各モニタの表示例を示す。図７は２台のモニタを横に配置した場合の例であり、８１、８２はそれぞれモニタ番号１，２のモニタの表示画面、９１，９２はそれぞれモニタ番号１，２のモニタのシステムウインドウメッセージである。また、図８は２台のモニタを縦置きに配置した場合の例である。符号は図７と同じなので、説明を省略する。
【００３１】
ＯＳのマルチモニタ機能を使用すると、ＯＳ（例えばWindows（登録商標）2000）の機能の範囲内で自由にモニタを配置することができる。また、アプリケーションデスクトップウインドウ（タスクバーのようなウインドウ）を各モニタに表示することができる。図７，図８のシステムメッセージウインドウ９１，９２はアプリケーションデスクトップウインドウの例である。
【００３２】
図９、図１０にデュアルヘッド機能を用いた場合の表示例を示す。なお、図７と同一要素には同一符号を付し、説明を省略する。図９は２台のモニタを横に配置した例、図１０は２台のモニタを縦に配置した例である。
【００３３】
デュアルヘッド機能を用いた場合には、モニタの配置は横方向に２〜４台または縦方向に２〜４台の６種類に限られる。また、ＯＳはモニタが１つであると認識するので、アプリケーションデスクトップツールバーは全ての画面を含んだ矩形の４辺にしか配置できないという制約がある。しかしながら、これらの制約を除くとＯＳが提供するマルチモニタ機能と同等の機能を有するので、実用上支障はない。
【００３４】
なお、これらの実施例では、ＯＳとしてWindows（登録商標）2000を使用し、またデュアルヘッド機能のマルチモニタ機能を用いる場合に限定して説明した。しかしなららこれに限定されることはなく、他のＯＳやデュアルヘッド機能でないマルチモニタ機能を用いても、同様に実現することができる。
【００３５】
【発明の効果】
以上説明したことから明らかなように、本発明によれば、次の効果が期待できる。
請求項１の発明によれば、２台以上のモニタと、これらのモニタに対応しているディスプレイ
カードと、このディスプレイカードを制御するディスプレイドライバと、設定時に操作監視ウインドウアプリケーションによってアクセスされ、オペレーティングシステムの種類およびこのオペレーティングシステムが２台以上のモニタを認識しているかを調べ、オペレーティングシステムがマルチモニタ機能をサポートしており、かつ２台以上のモニタを認識しているときは、このマルチモニタ機能にアクセスして情報を取得して前記オペレーティングシステムがサポートするマルチモニタ機能を選択し、前記オペレーティングシステムがマルチモニタ機能をサポートしていないオペレーティングシステムであるか、２台以上のモニタを認識していないときは前記ディスプレイドライバにアクセスして情報を取得して前記ディスプレイドライバがサポートするマルチモニタ機能を選択するモニタ認識部とを具備した。
【００３６】
システムの状態に応じて最適の機能を自動的に選択することができるため、煩雑な設定作業がなくなるという効果がある。また、ＯＳがマルチモニタをサポートしていない場合であっても、それと同等のマルチモニタシステムを実現することができるという効果もある。さらに、機能が大きいＯＳがサポートするマルチモニタ機能を優先的に選択できるという効果もある。
【図面の簡単な説明】
【図１】本発明の一実施例を示すフローチャートである。
【図２】モニタの数およびその配置を決定するフローチャートである
【図３】モニタの配置例を示す図である。
【図４】Windows（登録商標）2000の設定画面の図である。
【図５】デュアルヘッド機能を用いたマルチモニタシステムの構成図である。
【図６】Windows（登録商標）2000を用いたマルチモニタシステムの構成図である。
【図７】マルチモニタシステムの画面の一例を示す図である。
【図８】マルチモニタシステムの画面の一例を示す図である。
【図９】マルチモニタシステムの画面の一例を示す図である。
【図１０】マルチモニタシステムの画面の一例を示す図である。
【符号の説明】
１    設定画面
２    操作監視ウインドウのアプリケーション
３    複数モニタ認識ライブラリ
４    Windows（登録商標）のＧＤＩ機能
５１  マルチモニタ対応のディスプレイドライバ
５２  Windows（登録商標）2000マルチモニタ機能
５３  Windows（登録商標）2000マルチモニタ対応のディスプレイドライバ
６    ディスプレイカード
７、８１、８２    モニタ
【図１】
0004622138.tif 000002
【図２】
0004622138.tif 000003
【図３】
0004622138.tif 000004
【図４】
0004622138.tif 000005
【図５】
0004622138.tif 000006
【図６】
0004622138.tif 000007
【図７】
0004622138.tif 000008
【図８】
0004622138.tif 000009
【図９】
0004622138.tif 000010
【図１０】
0004622138.tif 000011