"通信のためのポートが設けられた操作端末であって、前記ポートに機器が繋がれると、前記ポートに繋がれた機器から、前記機器の接続形態を示す情報を取得するための取得手段と、前記ポートに繋がれた機器の接続形態に従って、前記機器と前記操作端末とを接続するための接続手段とを備える、操作端末。前記ポートから前記機器が外されると、前記機器と前記操作端末との接続を終了するための手段をさらに備える、請求項1に記載の操作端末。前記ポートは、USBポートである、請求項1または2に記載の操作端末。前記接続手段は、前記機器の接続形態がPPP接続であると、前記機器と前記操作端末とをPPP接続する、請求項3に記載の操作端末。前記接続手段は、前記機器の接続形態がシリアル接続であると、前記機器と前記操作端末とをシリアル接続する、請求項3に記載の操作端末。前記接続手段は、前記機器の種類に応じて異なる数の機器と前記操作端末とを接続する、請求項1または2に記載の操作端末。前記接続手段は、1台のプログラマブルロジックコントローラと前記操作端末とを接続し、前記プログラマブル表示器と前記操作端末とを接続する、請求項6に記載の操作端末。通信のためのポートが設けられた操作端末に、前記ポートに機器が繋がれると、前記ポートに繋がれた機器から、前記機器の接続形態を示す情報を取得するステップと、前記ポートに繋がれた機器の接続形態に従って、前記機器と前記操作端末とを接続するステップとを実行させる、プログラム。前記ポートから前記機器が外されると、前記機器と前記操作端末との接続を終了するステップを前記操作端末にさらに実行させる、請求項8に記載のプログラム。前記ポートは、USBポートである、請求項8または9に記載のプログラム。前記機器と前記操作端末とを接続するステップは、前記機器の接続形態がPPP接続であると、前記機器と前記操作端末とをPPP接続するステップを含む、請求項10に記載のプログラム。前記機器と前記操作端末とを接続するステップは、前記機器の接続形態がシリアル接続であると、前記機器と前記操作端末とをシリアル接続するステップを含む、請求項11に記載のプログラム。前記機器と前記操作端末とを接続するステップは、前記機器の種類に応じて異なる数の機器と前記操作端末とを接続するステップを含む、請求項8または9に記載のプログラム。前記機器と前記操作端末とを接続するステップは、1台のプログラマブルロジックコントローラと前記操作端末とを接続し、プログラマブル表示器と前記操作端末とを接続するステップを含む、請求項13に記載のプログラム。通信のためのポートが設けられた操作端末と、前記ポートに繋がれる機器とを備え、前記操作端末は、前記ポートに機器が繋がれると、前記ポートに繋がれた機器から、前記機器の接続形態を示す情報を取得するための取得手段と、前記ポートに繋がれた機器の接続形態に従って、前記機器と前記操作端末とを接続するための接続手段とを含む、制御システム。プログラマブルロジックコントローラとコンピュータとは、イーサネット登録商標以外にも、USBUniversalSerialBus等を用いたシリアル通信により接続される場合もある。特に、プログラマブルロジックコントローラとコンピュータとを1対1で接続する場合、USB等のシリアル通信を用いることが多い。この場合、独自の通信プロトコルを利用して通信することが一般的である。一方、イーサネット登録商標による通信では、TCP/IPTransmissionControlProtocolInternetProtocolのように、ソケットに基いた通信が一般的になりつつある。このような状況において、プログラマブルロジックコントローラとコンピュータとの接続がイーサネット登録商標およびUSBの両方をサポートするには、複数の通信プロトコルをコンピュータに実装する必要がある。そのため、開発者にとって煩わしいものであった。上記のように複数の通信形式をサポートする場合、ネットワークの種別毎に別々の設定をする必要があるため、ユーザが行なうべき設定も煩雑になり得る。また、ネットワーク毎に異なる態様で通信が制約され得る。そのため、ユーザの利便性が損なわれ得る。したがって、FTPFileTransferProtocol、TelnetTelecommunicationnetworkを、イーサネット登録商標上のアプリケーションとしてイーサネットポートを介して実行するのと同様の通信がUSB回線上で実現できると便利である。その他、TCPUDPTransmissionControlProtocolUserDatagramProtocolを用いたユーザプログラムや、HTTPHyperTextTransferProtocolなどをUSB回線上で利用できると便利である。さらに、USBをシリアルとして利用するとポートを1つのアプリケーションで占有してしまうと、他のアプリケーションでは使えなくなるため、別途、共有のための仕組みを構築する必要があるが、イーサネット登録商標のソケットとして提供すれば、複数のアプリケーション間での共有が容易になる。PPPPointtoPointProtocolの利用は、シリアル通信回線上でイーサネット登録商標のプロトコルを構築し、稼動させるための方法の1つである。PPPを用いることにより、シリアル通信回線を利用してモデム接続を実行するとともに、モデム接続上でイーサネット登録商標に基いた通信を実行できる。通常、PPPに基いた接続を実行する場合、電話回線を用いた接続を想定した上で種々の設定がユーザによりなされる。したがって、接続先の電話番号、または電話番号に相当する接続先のアドレスなどをユーザが指定するとともに、ユーザの操作により接続を開始することが一般的である。しかしながら、コンピュータの接続先は、USBケーブルなどによって直接コンピュータに繋がれたプログラマブルロジックコントローラ等である。したがって、接続のための煩わしい手続きをせずに、コンピュータとプログラマブルロジックコントローラとを接続することが望まれる。本発明は、上述の課題を解決するためになされたものであり、その目的は、接続に関する利便性を向上することである。ある実施例において、通信のためのポートが設けられた操作端末は、ポートに機器が繋がれると、ポートに繋がれた機器から、機器の接続形態を示す情報を取得するための取得手段と、ポートに繋がれた機器の接続形態に従って、機器と操作端末とを接続するための接続手段とを備える。ある実施例において、プログラムは、通信のためのポートが設けられた操作端末に、ポートに機器が繋がれると、ポートに繋がれた機器から、機器の接続形態を示す情報を取得するステップと、ポートに繋がれた機器の接続形態に従って、機器と操作端末とを接続するステップとを実行させる。ある実施例において、制御システムは、通信のためのポートが設けられた操作端末と、ポートに繋がれる機器とを備える。操作端末は、ポートに機器が繋がれると、ポートに繋がれた機器から、機器の接続形態を示す情報を取得するための取得手段と、ポートに繋がれた機器の接続形態に従って、機器と操作端末とを接続するための接続手段とを含む。ポートに機器が繋がれると、機器の接続形態に従って自動的に機器と操作端末とが接続される。そのため、ユーザが煩わしい設定をしなくても、機器と操作端末との間の通信が可能となる。よって、接続に関する利便性が向上する。図1を参照して、本実施の形態に係る制御システム10について説明する。制御システム10は、プログラマブルロジックコントローラ以下、コントローラと記載する100と、HMIHumanMachineInterface102と、コントローラ104と、コンピュータ200とを備える。コンピュータ200に繋がれる機器の数は3つに限られず、1台以上であればいくつでもよい。たとえば、図2に示すように、1台のコンピュータ200に1台のコントローラ100のみを繋ぐようにしてもよい。図1に戻って、コントローラ100は製造機械に繋がれ、コントローラ100は、工作機械の制御装置としての機能を有する。HMI102には、たとえばプログラマブル表示器が用いられる。コンピュータ200は、ユーザが操作する操作端末として用いられる。コントローラ100、HMI102およびコントローラ104は、コンピュータ200の3つのUSBポート201,202,203にそれぞれ繋がれる。コントローラ104は、モデム301,302を介してコンピュータ200に繋がれる。コンピュータ200は、USBポート201,202,203を介した通信機能のほか、イーサネット登録商標のためのポートならびにイーサネット登録商標を利用した通信機能を有する。コンピュータ200は、たとえば市販されているパーソナルコンピュータである。コンピュータ200は、ノートブックコンピュータ、デスクトップコンピュータ、携帯情報端末PDA:PersonalDigitalAssistantなど、任意の形式のコンピュータが用いられ得る。コンピュータ200には、コンピュータ200に所望の機能を実行させるためのプログラムであるエンジニアリングツールがインストールされる。ユーザは、コンピュータ200を操作することによって、コントローラ100、HMI102およびコントローラ104の設定を変更したり、確認したりすることなどが可能である。コンピュータ200の代わりに、もしくは加えて、プログラマブル表示器を用いてもよい。すなわち、操作端末としてプログラマブル表示器を用いてもよい。プログラマブル表示器は、たとえば、コントローラ100、HMI102およびコントローラ104の作動状態および設定内容などを表示する。プログラマブル表示器は、たとえばタッチパネルを有する。ユーザは、タッチパネルを操作することによって、コントローラ100、HMI102、コントローラ104の設定を変更したり、確認したりすることなどが可能である。図3を参照して、コントローラ100、HMI102、コントローラ104、およびコンピュータ200のハードウェア構成について説明する。図3においては、コントローラ100、HMI102、コントローラ104のうち、コントローラ100のみを示す。HMI102およびコントローラ104の主要なハードウェア構成は、コントローラ100のハードウェア構成と同じ、もしくは略同じであるため、ここではその詳細な説明は繰り返さない。コントローラ100HMI102、コントローラ104は、演算装置400、不揮発性記憶装置410、揮発性記憶装置420、通信装置430および通信ポート440を含む。演算装置400は、たとえばCPUである。演算装置400は、オペレーティングシステムOSを含む、種々のソフトウェアプログラムを実行する。不揮発性記憶装置410は、たとえばROMReadOnlyMemoryまたはHDDHarddiskdriveである。不揮発性記憶装置410は、演算装置400が実行するソフトウェアの実行モジュールを格納する。揮発性記憶装置420は、たとえばRAMRandomAccessMemoryである。揮発性記憶装置420は、たとえば各々のソフトウェアが必要とするワーク領域などを保持するために用いられる。通信装置430は、通信を制御するために用いられる。通信装置430は、コントローラ100の外部の機器であってもよい。通信ポート440は、コントローラ100の外部の機器とコントローラ100との間の通信のためのポートである。通信ポート440は、USBポート450およびイーサネットポート460を含む。その他の種類の通信ポートを設けてもよい。コンピュータ200は、演算装置500、不揮発性記憶装置510、揮発性記憶装置520、通信装置530、表示装置540および通信ポート550を含む。演算装置500、不揮発性記憶装置510、揮発性記憶装置520および通信装置530は、それぞれ、演算装置400、不揮発性記憶装置410、揮発性記憶装置420および通信装置430と同じ、もしくは略同じである。したがって、ここではその詳細な説明は繰り返さない。表示装置540は、種々の情報を表示する。表示装置540には一般的なモニターなどが用いられる。通信ポート550は、コンピュータ200の外部の機器とコンピュータ200との間の通信のためのポートである。通信ポート550は、USBポート201,202,203およびイーサネットポート552を含む。その他の種類の通信ポートを設けてもよい。図4を参照して、コントローラ100、HMI102、コントローラ104、およびコンピュータ200の機能について説明する。なお、以下に説明する機能は、ソフトウェアにより実現されるが、ハードウェアにより実現してもよく、ハードウェアとソフトウェアとの協働により実現してもよい。コントローラ100は、通信ドライバ110と、PPPサーバ120とを含む。通信ドライバ110は、たとえばUSBドライバ、USBシリアルドライバ、モデルドライバ等であって、USBポート450を介した通信を実現するために、物理的な通信ポート等を制御する。PPPサーバ120は、PPPを利用してイーサネット登録商標上で通信を行なうためのサーバであって、ソフトウェアにより実現される。通信ドライバ110およびPPPサーバ120には、周知の技術を利用すればよいため、ここではその詳細な説明は繰り返さない。HMI102は、通信ドライバ112と、シリアル通信機能122とを含む。通信ドライバ112は、たとえばUSBドライバであって、USBポート452を介した通信を実現するために、物理的な通信ポート等を制御する。シリアル通信機能122は、シリアル通信を行なうための機能である。通信ドライバ112およびシリアル通信機能122には、周知の技術を利用すればよいため、ここではその詳細な説明は繰り返さない。コントローラ104は、通信ドライバ114と、PPPサーバ124とを含む。通信ドライバ114は、たとえばUSBドライバであって、USBポート454を介した通信を実現するために、物理的な通信ポート等を制御する。PPPサーバ124は、PPPを利用してイーサネット登録商標上で通信を行なうためのサーバである。コントローラ104がハードウェアであるのに対し、PPPサーバ124はソフトウェアにより実現される。通信ドライバ114およびPPPサーバ124には、周知の技術を利用すればよいため、ここではその詳細な説明は繰り返さない。コンピュータ200は、通信ドライバ210と、通信アプリケーション220と、通信プロトコルスタック230と、コネクションマネージャ240とを含む。通信ドライバ210は、たとえばUSBドライバであって、USBポート201,202,203を介した通信を実現するために、物理的な通信ポート等を制御する。通信アプリケーション220は、実際に通信機能を利用するアプリケーションである。通信アプリケーション220の一例は、エンジニアリングツールである。通信プロトコルスタック230は、アプリケーションに、イーサネット通信機能およびシリアル通信機能などの通信機能を提供する。通信プロトコルスタック230の一例は、PPPクライアントである。コネクションマネージャ240は、本願発明の特徴的な機能である。コネクションマネージャ240は、接続先の機器コントローラ100、HMI102またはコントローラ104の情報に基いて、通信プロトコルの選択、起動および状態遷移などを制御する。コネクションマネージャ240の一例は、USBポート201,202,203を介した通信のためのUSBコネクションマネージャである。本実施の形態において、USBコネクションマネージャとしてのコネクションマネージャ240は、USBポート201,202,203に機器が繋がれると、USBポート201,202,203に繋がれた機器から、機器の接続形態たとえばPPP直接接続、シリアル接続およびモデム接続等を示す情報たとえばデバイスディスクリプタを取得する。さらに、コネクションマネージャ240USBコネクションマネージャは、USBポート201,202,203に繋がれた機器の接続形態に従って、機器とコンピュータ200とを接続する。なお、本実施の形態において接続とは、機器とコンピュータ200との間で通信可能な状態にすることを意味する。繋がれたとは、たとえばUSBケーブルによって、機器とコンピュータ200とが物理的に繋がれたことを意味する。図5を参照して、コネクションマネージャ240についてさらに説明する。コネクションマネージャ240は、エージェントマネージャ250と、エージェント260とを含む。エージェントマネージャ250は、通信ドライバ210例えばUSBドライバ、通信アプリケーション220たとえばエンジニアリングツールおよび通信プロトコルスタック230例えばPPPクライアントから発せられたイベントに応答して、エージェント260を生成起動するとともに、エージェント260にイベントを通信する。エージェントマネージャ250は、コンピュータ200に接続された機器の種類、およびその機器の接続形態によって特定される動作条件に対応したエージェント260を生成する。たとえば、接続形態がPPP接続である場合、PPP接続エージェントが生成される。接続形態がシリアル接続である場合、シリアル接続エージェントが生成される。接続形態がモデム接続である場合、モデム接続エージェントが生成される。エージェント260は、動作条件に応じて動作および状態遷移を実行する。たとえば、接続形態がPPP接続である場合、コンピュータ200と機器とがPPP接続される。接続形態がシリアル接続である場合、コンピュータ200と機器とがシリアル接続される。接続形態がモデム接続である場合、コンピュータ200と機器とがモデム接続される。動作条件は、コンピュータ200の不揮発性記憶装置510または揮発性記憶装置520に記憶された動作仕様定義270から特定される。図6に動作仕様定義270の一例を示す。動作仕様定義270は、図7に示すエージェント定義272および図8に示すグループ動作定義274から構成される。なお、動作仕様定義270はこれに限定されない。たとえば、図8に示すグループ動作定義274において、動作タイプが接続であり、グループ名がPLCであると、アクションタイプがシングルトンであると定義されている。その結果、図6のPPP接続の動作仕様定義において、同一商品グループがPLCである場合に接続=シングルトンと定義される。その結果、1台のコンピュータ200に対して接続されるプログラマブルロジックコントローラは1台のみに制限される。一方、図8に示すグループ動作定義274において、動作タイプが接続であり、グループ名がHMIであると、アクションタイプがIPInternetProtocolアサインであると定義されている。その結果、図6のPPP接続の動作仕様定義において、同一商品グループがHMIである場合に接続=マルチと定義される。その結果、1台のコンピュータ200に対して、複数のHMIが接続され得る。このように、本実施の形態においては、コンピュータ200に繋がれる機器の種類に応じて異なる数の機器とコンピュータ200とが接続される。具体的には、1台のプログラマブルロジックコントローラとコンピュータ200とが接続され得る一方、プログラマブルロジックコントローラは異なる種類である複数のHMIとコンピュータとが接続され得る。図9を参照して、一例としてコンピュータ200のUSBポート201にコントローラ100が繋がれた場合における、コンピュータ200の通信ドライバ210USBドライバ、コントローラ100の通信ドライバ110USBドライバ、エージェントマネージャ250およびエージェント260の動作について説明する。コンピュータ200のUSBポート201にコントローラ100が繋がれたことをコンピュータ200の通信ドライバ210が検出すると、コンピュータ200の通信ドライバ210は、コントローラ100の通信ドライバ110に、コントローラ100の接続形態を示す情報を含むディスクリプタを要求する。コントローラ100の通信ドライバ110は要求を受信すると、コンピュータ200の通信ドライバ210にデバイスディスクリプタを送信する。ここでは、デバイスディスクリプタにより、コントローラ100の接続形態がUSB_PPP直接接続USBDirectであることが示されていると想定する。コンピュータ200の通信ドライバ210がデバイスディスクリプタを受取ると、コンピュータ200の通信ドライバ210は、対応するUSBドライバをロードする。その後、コンピュータ200の通信ドライバ210は、コントローラ100の通信ドライバ110から機種情報を読み出す。コントローラ100の通信ドライバ110は、コンピュータ200の通信ドライバ210に機種情報を返す。ここでは、コントローラ100の機種情報が、PLC-ModelAであると想定する。コンピュータ200の通信ドライバ210は、コントローラ100の通信ドライバ110から機種情報を読み出した後、エージェントマネージャ250に接続を通知する。具体的には、コンピュータ200の通信ドライバ210は、受取ったデバイスディスクリプタをエージェントマネージャ250に通知する。エージェントマネージャ250は、デバイスディスクリプタを受取ると、デバイスディスクリプタと動作仕様定義270とを参照してエージェント260を特定する。ここでは、デバイスディスクリプタによってUSB_PPP直接接続が指示されていることから、USBダイレクトエージェントが特定される。さらに、エージェントマネージャ250は、接続先の機種情報を取得する。その後、エージェントマネージャ250は、エージェント260をロードするとともに、エージェント260に接続を通知する。具体的には、エージェントマネージャ250は、エージェント260に機種情報を通知する。その後、エージェント260は、状態遷移を開始する。その結果、最終的には、コンピュータ200とコントローラ100とがUSB通信回線上で、PPP接続される。図10を参照して、エージェントマネージャ250によって実行される処理について説明する。ステップ以下、ステップをSと略す10にて、通信ドライバ210からのケーブル接続イベントの受信を待つ。通信ドライバ210からケーブル接続イベントを受信するとS12にてYES、S14にて、動作種別が確定される。動作種別は、たとえば、エージェントマネージャ250において予め定義されたり、接続先のディスクリプタ情報により確定される。その後、S16にて、商品情報から動作グループが取得され、S18にて、取得された動作グループに対応するエージェントがロードされる。たとえば、USB接続により、OmronUSBDirectLineという情報がコントローラ100から得られると、コンピュータ200にインストールされたWindows登録商標が、この情報に対応したUSBドライバをロードする。USBドライバは、コントローラ100と個別情報を交換することによって、商品情報を取得する。さらに、USBドライバは、コネクションマネージャ250に接続を通知する。エージェントマネージャ250は、エージェント定義情報より該当するエージェントを確定し、ロードする。最後に、S20にて、ロードしたエージェントに対して初期イベントが通知される。図11を参照して、エージェント260によって実行される処理について説明する。以下では、一例として、PPP接続エージェントによって実行される処理について説明する。その他のエージェントにより実行される処理は、PPP接続エージェントによって実行される処理と同様であるため、ここではその詳細な説明は繰り返さない。S100にて、エージェント260は、イベントの受信を待つ。エージェントマネージャ250、通信ドライバ210、通信アプリケーション220または通信プロトコルスタック230からイベントを受信するとS102にてYES、S104において、イベントと状態とにより、処理内容が決定される。たとえば、PPP接続が要求された場合は、S110にて、PPP接続処理が実行される。USBの規約では、ベンダIDとプロダクトIDとが送付され、このベンダIDとプロダクトIDとからWindows登録商標などのOSOperatingSystemが該当するドライバを見つけ、ロードする。本実施の形態においては、たとえば、USBDirectLineというドライバがロードされる。OSのUSBドライバは、ロードしたUSBドライバに制御を渡し、以後、ロードされたドライバがコントローラ100と接続処理を行なう。接続処理自身はUSBの規約で決められているものの、追加で必要な情報がコントローラ100より取得することができる。本実施の形態においては、機種情報などが取得される。取得した機種情報などにより、その接続先がどのグループなのかが判定できる。たとえば、プログラマブルロジックコントローラなのか、HMIなのか、あるいはPPPをサポートしていないデバイスなのかなどの情報が取得される。たとえば、フィールドバス用の通信カプラは、通常はプログラマブルロジックコントローラのユニットとして装着され、プログラマブルロジックコントローラ経由で通信するが、カプラ自身にもUSBポートがついており、このようなカプラにおいて、PPPなどの処理まではコスト、リソースの観点から実装できない場合、シリアルとして通信する必要がある。PLCやHMIのある機種ではPPPをサポートしているので、PPP実行用エージェントを起動し、さらにPLCかHMIかによって1台だけ接続させるのか複数台接続させるのかなどが選択可能である。PPPをサポートしていない機器であれば、別のエージェントを起動し、このエージェントに処理が任される。PPP接続処理が実行されると、S112にて、状態遷移が実行される。PPP接続が切断された場合は、S120にて、コンピュータ200と他の機器たとえばコントローラ100とが再度PPP接続される。診断要求があった場合には、S130にて、診断処理が実行される。モニタ要求があった場合には、S140にて、状態が通知される。ケーブルたとえばUSBケーブルが切断された場合は、S150にて、終了処理が実行される。したがって、たとえばUSBポート201からコントローラ100が物理的に外されると、コントローラ100とコンピュータ200との接続が終了される。図12を参照して、上述したS110において実行される、PPP接続処理についてさらに説明する。S200にて、接続先のグループが判定される。接続先のグループがプログラマブルロジックコントローラである場合S200にてPLC、S202にて、同一グループ内の別の機器が既に接続済みであるか否かが判定される。すなわち、別のプログラマブルロジックコントローラが既に接続済みであるか否かが判定される。別のプログラマブルロジックコントローラが接続されていないとS202にてNO、S204にて、たとえばユーザによって割り当てられ、予め設定された固定IPアドレスを用いて、コンピュータ200と、コンピュータ200に繋がれたプログラマブルロジックコントローラ、すなわちコントローラ100とを接続する。その後、S206にて、通信プロトコルスタック230PPPクライアントに接続要求が送られる。一方、接続先のグループがHMIである場合S200にてHMI、1台のコンピュータ200に対して複数のHMIを接続することが可能である。1台のコンピュータ200に対して複数のHMIを接続するために、S208にて、各HMIに割り当てられるIPアドレスが生成される。その後、S210にて、通信プロトコルスタック230PPPクライアントに接続要求が送られる。図13を参照して、上述したS130において実行される、診断処理についてさらに説明する。S300にて、接続先のグループが判定される。接続先のグループがプログラマブルロジックコントローラである場合S300にてPLC、S302にて、プログラマブルロジックコントローラが診断される。一方、接続先のグループがHMIである場合S300にてHMI、HMIが診断される。今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。"