(57)【要約】【課題】本発明は、所定のプロトコルに対応したディジタルインターフェースを備えたプログラマブルロジックコントローラに関する。【解決手段】本発明にかかるプログラマブルロジックコントローラは、機器の種別を識別する第１識別子と該機器に関するデータを格納する領域を示す第２識別子とが機器ごとに少なくとも予め規定されているプロトコルに従ってディジタル信号を送受信するディジタルインターフェース２７を備えて構成される。【選択図】　図１
2004118347.tif 000002
【特許請求の範囲】
【請求項１】
機器の種別を識別する第１識別子と該機器に関するデータを格納する領域を示す第２識別子とが機器の種別ごとに少なくとも予め規定されているプロトコルに従ってディジタル信号を送受信するディジタルインターフェースを備えること
を特徴とするプログラマブルロジックコントローラ。
【請求項２】
目的に応じた状態を検出するセンサ部と、前記センサ部の出力を格納すると共に前記センサ部の種別に応じて第２識別子が割り当てられた記憶領域部と、前記センサ部の種別に応じた第２識別子に基づいて前記記憶領域部にアクセスすると共に前記プロトコルに従ってディジタル信号を送受信するディジタルインターフェース部とを備えるセンサユニットが接続されること
を特徴とする請求項１に記載のプログラマブルロジックコントローラ。
【請求項３】
前記プロトコルは、Ｉ２Ｃバスであることを特徴とする請求項１又は請求項２に記載のプログラマブルロジックコントローラ。
【請求項４】
前記プロトコルは、ＳＰＩバスであることを特徴とする請求項１又は請求項２に記載のプログラマブルロジックコントローラ。
【請求項５】
前記プロトコルは、ＮＭＡＳＴバスであることを特徴とする請求項１又は請求項２に記載のプログラマブルロジックコントローラ。
【請求項６】
前記ディジタルインターフェースに前記センサユニットに電力を供給する電力供給部をさらに備えること
を特徴とする請求項２に記載のプログラマブルロジックコントローラ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プログラマブルロジックコントローラに関し、特に、所定のプロトコルに対応したディジタルインターフェースを備えたプログラマブルロジックコントローラに関する。
【０００２】
【従来の技術】
プログラマブルロジックコントローラ（ＰＬＣ）は、プログラマブルコントローラやシーケンスコントローラとも呼ばれ、例えば工場などに設置される製造装置などの外部機器をシーケンス制御する場合に用いられる。ＰＬＣは、リレーなどで構成されたシーケンス制御回路と較べて、シーケンスの変更が簡単である、可動部分が無いので耐震性に優れている、長寿命である、シーケンス制御回路を小型化できる、動作結果などのデータを保存できる、等の様々な利点を有している。このようなＰＬＣを例えばモータが加熱し過ぎたら回転を停止させるシーケンス制御に用いる場合に、次のようなＰＬＣが従来知られている（例えば、特許文献１参照）。
【０００３】
図７は、温度を検出することによって制御する場合における従来のプログラマブルロジックコントローラの構成を示す図である。
【０００４】
図７において、ＰＬＣ１０１は、外部機器からの外部信号が入力される入力部１２１と、外部機器に制御信号を出力する出力部１２２と、シーケンスプログラムの実行処理を管理するシステムプログラムを格納するシステムメモリ１２５と、外部機器をシーケンス制御するシーケンスプログラムやシーケンスプログラム実行中のデータを格納するプログラムメモリ１２６と、外部機器からアナログの外部信号が入力されるアナログインターフェース（アナログＩＦ）１３２と、アナログＩＦ１３２からのアナログの外部信号をディジタルに変換するアナログ／ディジタルコンバータ（Ａ／Ｄ）１３１と、入力部１２１やＡ／Ｄ１３１からの外部信号に応じてシーケンスプログラムを実行することによって制御信号を生成して出力部１２２に出力する中央処理装置（ＣＰＵ）１２３と、例えば２４Ｖ直流の電源１０２から電力供給を受けてＣＰＵ１２３、システムメモリ１２５、プログラムメモリ１２６及びＡ／Ｄ１３１などの電力を必要とする各部に電力を供給する電源入力部１２４とを備えて構成される。そして、モータの温度検出用のサーミスタ１１２の出力は、変換部１１１を介してＰＬＣ１０１のアナログＩＦ１３２に入力される。電源１０２は、変換部１１１にも電力を供給する。
【０００５】
ＰＬＣ１０１のＣＰＵ１２３は、サーミスタ１１２の出力を変換部１１１、アナログＩＦ１３２及びＡ／Ｄ１３１を介して取り込み、シーケンスプログラムに従った処理によって制御信号を生成する。そして、ＣＰＵ１２３は、この制御信号を出力部１２２からモータに出力することによって、モータが過熱し過ぎた場合にはモータの回転を停止する。
【０００６】
なお、図７では、Ａ／Ｄ１３１とアナログＩＦ１３２とがＰＬＣ１０１と一体に構成される場合を示したが、Ａ／Ｄ１３１とアナログＩＦ１３２とを別体のアナログＩＦユニットとして構成してもよい。この場合には、アナログＩＦユニットを動作させるために、アナログＩＦユニットは、破線で示す電源入力部１３３をさらに備え、電源１０２より電源入力部１３３を介して電力の供給を受ける。
【０００７】
一方、近年、サーミスタのようにセンサ部だけの単独部品ではなく、センサ部と例えばＩ２Ｃバスのような特定のプロトコルに従ってディジタル信号を送受信するディジタルインターフェース部とを小型モジュール化した安価なセンサユニットが開発されている。
【０００８】
【特許文献１】
特開平１０−６３３１１号公報
【０００９】
【発明が解決しようとする課題】
ところで、上述の構成では、温度検出用のサーミスタ１１２が抵抗値の変化として温度を検出するため、サーミスタ１１２の出力をＰＬＣ１３２に入力するために、抵抗値を電流値（電圧値）に変換する変換部１１１が必須であるという問題があった。その上、変換部１１１は、温度変化に従うサーミスタ１１２の抵抗変化を電流値（電圧値）に１対１に変換する必要があるため、サーミスタ用に特化される。そのため、温度検出に白金抵抗体や熱電対などを用いる場合には、変換部１１１は、それぞれ白金抵抗体用や熱電対用にする必要があるという問題があった。このため、センサの種類に応じた変換部１１１を用意する必要があり、また、上述のようにＰＬＣとアナログＩＦとが別体の場合にはアナログＩＦユニットも必要となり、コストがかかるという問題があった。
【００１０】
そして、温度検出だけではなく、湿度検出や煙検出など複数の外部信号をＰＬＣ１０１に入力する場合には、それに応じた複数の変換部が必要となり、コストがかかるという問題がある。さらに、それに応じた複数のアナログＩＦ１３２も必要となり、コストがかかるという問題やＰＬＣ１０１が複数のアナログＩＦに対応していない場合には別途ＰＬＣ１０１が必要となるという問題もあった。
【００１１】
本発明は、上記問題点に鑑みて為された発明であり、複数種類のセンサを複数接続し得るディジタルインターフェースを備えたプログラマブルロジックコントローラを提供することを目的とする。
【００１２】
【課題を解決するための手段】
上述の目的を達成するために、請求項１に記載の発明では、プログラマブルロジックコントローラにおいて、機器の種別を識別する第１識別子と該機器に関するデータを格納する領域を示す第２識別子とが機器の種別ごとに少なくとも予め規定されているプロトコルに従ってディジタル信号を送受信するディジタルインターフェースを備えることで構成する。
【００１３】
このような構成のプログラマブルロジックコントローラでは、ディジタルインターフェースを備えるので、入出力信号は、ディジタル信号である。そのため、センサの種別に拘わらず入出力信号が“０”“１”のビット列となるので、センサの種別に応じた変換部が不要となり、コストを削減することができる。
【００１４】
そして、ディジタルインターフェースのプロトコルを少なくとも第１識別子と第２識別子とを予め規定したプロトコルに限定したので、種々のプロトコルに対応する必要が無く、ディジタルインターフェースを簡易に小型に低コストで製作することができる。さらに、第１識別子と第２識別子とを含むプロトコルを採用したので、１本のケーブルを介して種々の複数のセンサユニットをプログラマブルロジックコントローラに接続することができる。
【００１５】
請求項２に記載の発明では、請求項１に記載のプログラマブルロジックコントローラにおいて、目的に応じた状態を検出するセンサ部と、前記センサ部の出力を格納すると共に前記センサ部の種別に応じて第２識別子が割り当てられた記憶領域部と、前記センサ部の種別に応じた第２識別子に基づいて前記記憶領域部にアクセスすると共に前記プロトコルに従ってディジタル信号を送受信するディジタルインターフェース部とを備えるセンサユニットが接続される。
【００１６】
請求項３に記載の発明では、請求項１又は請求項２に記載のプログラマブルロジックコントローラにおいて、前記プロトコルは、Ｉ２Ｃバスである。
【００１７】
請求項４に記載の発明では、請求項１又は請求項２に記載のプログラマブルロジックコントローラにおいて、前記プロトコルは、ＳＰＩバスである。
【００１８】
請求項５に記載の発明では、請求項１又は請求項２に記載のプログラマブルロジックコントローラにおいて、前記プロトコルは、ＮＭＡＳＴバスである。
【００１９】
このような構成のプログラマブルロジックコントローラでは、請求項１に記載のプログラマブルロジックコントローラの作用効果に加えて、プロトコルを限定したので、このようなプロトコルに対応した安価なセンサユニットを活用することができる。
【００２０】
請求項６に記載の発明では、請求項２に記載のプログラマブルロジックコントローラにおいて、前記ディジタルインターフェースに前記センサユニットに電力を供給する電力供給部をさらに備える。
【００２１】
このような構成のプログラマブルロジックコントローラでは、請求項２に記載のプログラマブルロジックコントローラの作用効果に加えて、電源供給部を備えるので、センサユニットは、この電源供給部から電力供給を受けることができるから別途電源を設ける必要がない。
【００２２】
【発明の実施の形態】
以下、本発明に係る実施形態を図面に基づいて説明する。なお、各図において同一の構成については、同一の符号を付し、その説明を省略する。まず、本実施形態の構成について説明する。
（実施形態の構成）
図１は、本発明にかかるプログラマブルロジックコントローラの構成を示す図である。図２は、センサユニット１１の構成を示す図である。図３は、ディジタルインターフェース部の構成を示す図であり、（ａ）はプログラマブルロジックコントローラのディジタルインターフェース部の構成であり、（ｂ）はセンサユニットのディジタルインターフェース部の構成である。図４は、データアクセス用マップを示す図である。図５は、各機器におけるポインタとレジスタとの関係の一例を示す図である。図６は、データ転送のフォーマットを示す図である。
【００２３】
図１において、本発明にかかるＰＬＣ１０は、入力部２１、出力部２２、ＣＰＵ２３、電源入力部２４、システムメモリ２５、プログラムメモリ２６及びディジタルインターフェース（ディジタルＩＦ）２７を備えて構成される。
【００２４】
入力部２１は、例えば押し釦スイッチやリレー接点などの外部機器から外部信号を取り込む入力コネクタである。出力部２２は、例えば表示ランプや電磁リレーやモータなどの外部機器に制御信号を出力する出力コネクタである。システムメモリ２５は、例えばＲＯＭ（Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）などの不揮発性メモリであり、シーケンスプログラムの実行処理を管理するシステムプログラムを格納する。プログラムメモリ２６は、例えばＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　ｍｅｍｏｒｙ）やＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ　Ｅｒａｓａｂｌｅ　Ｐｒｏｇｒａｍｍａｂｌｅ　Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）などの書き換え可能なメモリであり、外部機器をシーケンス制御するシーケンスプログラムやシーケンスプログラム実行中のデータを格納する。
【００２５】
ディジタルＩＦ２７は、後述する所定のプロトコルに従ってディジタル信号を入出力するディジタルＩＦ部３１と電力を供給する電力供給部３２とを備える。ディジタルＩＦ部３１は、図３（ａ）において、後述するように、ＣＰＵ２３から受信した種別ＩＤ及びポインタなどを用いて所定のプロトコルに従ったデータを生成して転送する転送部４１を備えて構成される。そして、入出力するディジタル信号の伝送距離をより延ばす観点から、入出力するディジタル信号を増幅する破線で示す増幅器３３をさらに備えてもよい。また、ＰＬＣ１０に接続されるセンサユニット１１における入力電圧と整合を取るために必要に応じて、入力電圧を昇圧又は降圧して出力する破線で示す直流／直流コンバータ（ＤＣ／ＤＣ）３４をさらに備えてもよい。
【００２６】
図１に戻って、ＣＰＵ２３は、例えばマイクロプロセッサなどを備えて構成され、入力部２１、出力部２２、システムメモリ２５、プログラムメモリ２６及びディジタルＩＦ２７とそれぞれ接続される。そして、ＣＰＵ２３は、後述のようにディジタルＩＦ２７を介してセンサユニット１１との間でデータをやり取りすると共に、入力部２１やディジタルＩＦ２７からの外部信号に応じてシーケンスプログラムを実行することによって制御信号を生成して出力部２２に出力する。
【００２７】
電源入力部２４は、例えば２４Ｖ直流の電源１０２から電力供給を受けるコネクタであり、供給された電力は、ＣＰＵ２３、システムメモリ２５、プログラムメモリ２６、ディジタルＩＦ部３１及び電力供給部３２に電力を供給する。なお、供給された電力は、増幅器３３を備える場合にはこの増幅器３３にも供給され、ＤＣ／ＤＣ３４を備える場合には、ＤＣ／ＤＣ３４で電圧を昇圧又は降圧した後に電力供給部３２に供給される。
【００２８】
一方、図２において、センサユニット１１は、目的に応じた状態を検出すると共にディジタル信号を所定のプロトコルに従って入出力する部品であり、ディジタルＩＦ５１及びセンサ部５２を備えて構成される。
【００２９】
センサ部５２は、目的に応じた状態を検出すると共に検出出力をアナログからディジタルに変換してディジタルＩＦ部５１に出力する検出器であり、例えば、温度センサ、湿度センサ、煙センサ、人感センサ、Ｉ／Ｏ及びＥＥＰＲＯＭなどである。図３（ｂ）において、ディジタルＩＦ部５１は、当該センサユニット１１のために予約されたポインタを格納するポインタ格納部６４とセンサ部５２からの検出出力を格納するレジスタ６５とから成るデータ格納部６３、当該センサユニット１１の種別ＩＤに応じて決まるアドレスを格納するアドレス格納部６２、及び、アドレス格納部６２の内容及びデータ格納部６３の内容を用いてディジタルＩＦ部３１と同一の所定のプロトコルに従ったデータを生成して転送する転送部６１を備えて構成される。
【００３０】
ここで、レジスタ６５は、検出出力のビット数に応じたレジスタである。本発明では、このレジスタに、ポインタマップを用いて後述するように、当該センサユニット１１の種別に応じて予約されたポインタがメモリアドレスとして割り振られる。
【００３１】
そして、図２に戻って、入出力するディジタル信号の伝送距離をより延ばす観点から、入出力するディジタル信号を増幅する破線で示す増幅器５３をさらに備えてもよい。また、小型化や低コスト化を図る観点から、これらディジタルＩＦ部５１及びセンサ部５２は、１個の集積回路に集積して（ワンチップ化）モジュール化してもよく、さらに増幅器５３もそれに集積してもよい。
【００３２】
ＰＬＣ１０とセンサユニット１１とは、信号線３５と電力線３６とを含むケーブルを介して接続される。ＰＬＣ１０のディジタルＩＦ部３１とセンサユニット１１のディジタルＩＦ部５１とは、信号線３５を介してディジタル信号を双方向で通信する。ＰＬＣ１０の電力供給部３２は、電力線３６を介してセンサユニット１１における電力の必要な各部、例えば、ディジタルＩＦ部５１や増幅器５３に電力を供給する。そして、検出すべき状態の数に応じて１又は複数のセンサユニット１１が１本のケーブルを介してＰＬＣ１０に接続される。なお、図１では、３個のセンサユニット１１−１、１１−２、１１−３がケーブルに接続されている例を示している。
【００３３】
次に、本実施形態におけるＰＬＣ１０とセンサユニット１１との間でデータを通信する際の動作について説明する。
（実施形態の動作）
ディジタルＩＦ部３１、５１のプロトコルは、データを送受信する際に、データの送信先又は送信元を特定するための機器の種別を識別する第１識別子と当該機器に関するデータを格納する記憶領域を示す第２識別子とが機器の種別ごとに少なくとも予め規定されている。このプロトコルは、より具体的には例えば図４のデータアクセス用マップに示すように、機器の種別を識別する種別ＩＤ７２（第１識別子に相当）が機器の種別に応じて予めマッピングされ、図５のポインタマップに示すように、当該機器に関するデータを格納する記憶領域を示すポインタ７３（第２識別子に相当）が機器の種別に応じて予めマッピングされている。そして、本発明は、ＰＬＣ１０と各機器との間でデータを送受信する際に、一の機器を特定するアドレスに種別ＩＤ７２に基づいたアドレスを用い、当該機器に関するデータを取得するためにポインタ７３を用いることに一特徴がある。
【００３４】
図４において、データアクセス用マップは、第１行に機器の名称である機器名７１が必要数だけ配置され、第２行に各機器名７１に対応して種別ＩＤ７２が配置されて構成されている。機器名７１として、図４の例では温度センサ７１−１、湿度センサ７１−２、煙センサ７１−３、人感センサ７１−４、Ｉ／Ｏ７１−５及びＥＥＰＲＯＭ７１−６が示されている。なお、必要に応じてこれ以外の機器をマッピングしてもよい。そして、図４に示すデータアクセス用マップでは、温度センサ７１−１に種別ＩＤ７２として“０００１”が割り当てられ、湿度センサ７１に種別ＩＤ７２として“００１０”が割り当てられ、煙センサ７１−３に種別ＩＤ７２として“００１１”が割り当てられ、人感センサ７１−４に種別ＩＤ７２として“０１００”が割り当てられ、Ｉ／Ｏ７１−５に種別ＩＤ７２として“１０１０”が割り当てられ、そして、ＥＥＰＲＯＭ７１−６に種別ＩＤ７２として“１１００”が割り当てられる。
【００３５】
そして、センサユニット１１のディジタルＩＦ部５１におけるアドレス格納部６２には、上位４ビットに種別ＩＤ７２がアドレスとして格納される。このように機器の種別に応じて種別ＩＤ７２を予めマップとして規定しておくことにより、データを送受信する際にデータ中の種別ＩＤ７２を参照するだけで、データの送信先のセンサユニット１１又は送信元のセンサユニット１１を識別することができる。
【００３６】
一方、図５において、ポインタマップは、機器の種別ごとに用意される。図５（ａ）に示す温度センサ７１−１のポイントマップでは、レジスタ０の記憶領域を指すポインタとして“００００００００”が割り当てられ、レジスタ１の記憶領域を指すポインタとして“０００００００１”が割り当てられ、レジスタ２の記憶領域を指すポインタとして“０００００００２”が割り当てられ、以下のレジスタも同様に割り当てられる。そして、各レジスタには、温度センサ７１−１に関して所定のデータが格納するように規定される。例えば図５（ａ）では、レジスタ０には、温度センサの検出出力である温度データを格納するように規定され、レジスタ１には、異常検出などのように特定の状態を検出するための閾値データを格納するように規定され、レジスタ２には、センサの状態を規定する設定値データを格納するように規定されている。
【００３７】
図５（ｂ）に示す湿度センサ７１−２のポイントマップでは、レジスタ０の記憶領域を指すポインタとして“００００００００”が割り当てられ、レジスタ１の記憶領域を指すポインタとして“０００００００１”が割り当てられ、レジスタ２の記憶領域を指すポインタとして“０００００００２”が割り当てられ、以下のレジスタも同様に割り当てられる。そして、各レジスタには、湿度センサ７１−２に関して所定のデータが格納するように規定される。例えば図５（ｂ）では、レジスタ０には、湿度センサの検出出力である湿度データを格納するように規定され、レジスタ１には、異常検出などのように特定の状態を検出するための閾値データを格納するように規定され、レジスタ２には、センサの状態を規定する設定値データを格納するように規定されている。
【００３８】
図５（ｃ）に示すＥＥＰＲＯＭ７１−６のポイントマップでは、レジスタ０の記憶領域を指すポインタとして“００００００００”が割り当てられ、レジスタ１の記憶領域を指すポインタとして“０００００００１”が割り当てられ、レジスタ２の記憶領域を指すポインタとして“０００００００２”が割り当てられ、以下のレジスタも同様に割り当てられる。そして、各レジスタには、ＥＥＰＲＯＭ７１−６に関して所定のデータが格納するように規定される。例えば図５（ｃ）では、レジスタ０には、アドレス０の値を格納するように規定され、レジスタ１には、アドレス１の値を格納するように規定され、レジスタ２には、アドレス２の値を格納するように規定されている。
【００３９】
他の煙センサ７１−３、人感センサ７１−４及びＩ／Ｏ７１−５についても、同様にポイントマップが予め規定される。
【００４０】
また、センサユニット１１のディジタルＩＦ部５１におけるデータ格納部６３のポインタ格納部６４には、センサユニット１１の種別に応じたポインタ７３が格納される。このように機器の種別に応じてポインタ７３を予めマップとして規定しておくことにより、ポインタ７３を指定するだけで、センサユニット１１に割り当てられた特定の記憶領域を指定することができ、この特定の記憶領域におけるデータ、例えば検出出力のデータを取り扱うことができる。
【００４１】
ここで、Ｉ／Ｏ７１−５やＥＥＰＲＯＭ７１−６は、機器であってセンサではないが、データアクセス用マップに予めマッピングされていないセンサを使用したい場合に、このセンサをＩ／Ｏ７１−５に搭載することで、センサユニット１１としてＰＬＣ１０に接続可能となる。そして、ＥＥＰＲＯＭ７１−６に種別ＩＤ７２とポインタ７３とを割り当てることで、ＰＬＣ１０は、ＥＥＰＲＯＭ７１−６との間でデータを送受信する場合に、他のセンサユニット１１と同様に扱うことが可能となる。このため、ＥＥＰＲＯＭなどのメモリやＩ／Ｏも本実施形態では、目的に応じた状態を検出する機器として扱っている。
【００４２】
そして、このようなプロトコルは、例えば、フィリップス（ＰＨＩＬＩＰＳ）社が提唱するＩ２Ｃバス（登録商標）、松下電工社が提唱するＮＭＡＳＴ（登録商標）、及び、ＳＰＩ（シリアル・ペリフェラル・インターフェース）バスなどがある。
【００４３】
このようなプロトコルを用いてＰＬＣ１０とセンサユニット１１とは、次のようにしてデータを送受信する。ここで、図１に示すセンサユニット１１−１、１１−２、１１−３は、例えばそれぞれ温度センサユニット、湿度センサユニット、煙センサユニットであるとする。
【００４４】
ユーザは、ＰＬＣ１０及びセンサユニット１１−１〜１１−３の種別を確認し、データアクセス用マップ及びポインタマップを参考に、所望のシーケンスプログラムを作成する。そして、ユーザは、周知のツールを用いて、シーケンスプログラムをＰＬＣ１０のプログラムメモリ２６に格納する。
【００４５】
ＰＬＣ１０が起動されると、ＣＰＵ２３は、プログラムメモリ２６のシーケンスプログラムを実行する。ＣＰＵ２３は、シーケンスプログラム実行中にセンサユニット１１から検出結果を取り込む命令があると、命令から種別ＩＤ７２及びポインタ７３を抽出して、種別ＩＤ７２、ポインタ７３及びデータの受信を指示する旨を含む信号をディジタルＩＦ部３１に出力する。
【００４６】
ディジタルＩＦ部３１の転送部４１は、種別ＩＤ７２を示す情報、ポインタ７３を示す情報及びデータの受信を指示する旨の情報を所定のフォーマットに従って配置したディジタル信号を生成し、生成したディジタル信号を信号線３５に送信する。このフォーマットは、例えば、ディジタル信号の開始を示す情報、種別ＩＤ７２を示す情報、データの受信を指示する旨の情報、ポインタ７３を示す情報及びディジタル信号の終了を示す情報の順に配置する。
【００４７】
より具体的には、例えば、図６（ａ）に示すように、各情報は、基本的に８ビットを単位に構成され、フォーマットは、種別ＩＤ７２を示す情報を収容する７ビットとデータの受信を指示する旨の情報を収容する１ビットのモードビット７５とから成るアドレス部８１、及び、ポインタ７３を示す情報を収容する８ビットのポインタ部８２の順に各情報が配置される。本実施形態では種別ＩＤ７２が図４に示すように４ビットで構成されているので、種別ＩＤ７２を示す情報を格納する７ビットのうち下位３ビットは、将来の拡張のためのリザーブ７４となっており、特定のビット列例えば“０００”が収容される。モードビット７５は、例えば、“０”の場合にはＰＬＣ１０からセンサユニット１１へ検出出力の要求又はデータの書き込むを行うライトモードを示し、“１”の場合にはセンサユニット１１からＰＬＣ１０へ検出出力又はデータを送信するリードモードを示す。ディジタル信号の前後に配置されるディジタル信号の開始を示す情報及びディジタル信号の終了を示す情報は、例えば、信号線３５がクロック信号を伝送するクロックラインとデータ信号を伝送するデータラインとから構成される場合には、データラインのパルスの立下り及び立ち下がりをクロックの途中で行うことで示す。あるいは例えば、“１１１１１１１１“などの特殊なビット列で示してもよい。
【００４８】
一例を挙げると、ＰＬＣ１０が温度センサユニットであるセンサユニット１１−１に検出出力を要求する場合には、ディジタルＩＦ部３１は、信号線３５に“ディジタル信号の開始を示す情報”＋“０００１００００”＋“００００００００”＋“ディジタル信号の終了を示す情報”を出力する。
【００４９】
そして、各センサユニット１１のディジタルＩＦ部５１は、転送部６１を用いて、信号線３５からこの信号を受信し、信号のアドレス部８１の上位４ビットとアドレス格納部６２の種別ＩＤ７２の内容とを比較する。比較の結果、一致する場合には、自己宛ての信号であると認識して信号の内容を解釈し、一致しない場合には、他のセンサユニット１１宛ての信号であると認識して信号を破棄する。自己宛ての信号であると認識したディジタルＩＦ部５１の転送部６１は、信号を解釈してデータの要求であると判断すると、信号のポインタ部８２のポインタ７３を用いてデータ格納部６３にアクセスする。ここで、センサユニット１１のディジタルＩＦ部５１におけるポインタ格納部６４には、センサユニット１１の種別に応じたポインタマップのポインタ７３をレジスタ６５のメモリアドレスとして格納しているから、信号のポインタ部８２のポインタ７３を用いてデータ格納部６３にアクセスすることによってレジスタ６５にアクセスすることが可能であり、レジスタ６５に格納されている検出出力を取得することができる。
【００５０】
ディジタルＩＦ部５１の転送部６１は、アドレス格納部６２の種別ＩＤ７２を示す情報とポインタ格納部６４のポインタ７３を示す情報とレジスタ６５から取得した検出出力を示す情報とデータを送信する旨を示す情報とを所定のフォーマットに従って配置したディジタル信号を生成し、生成したディジタル信号を信号線３５に送信する。このフォーマットは、例えば、ディジタル信号の開始を示す情報、種別ＩＤ７２を示す情報、データの送信を指示する旨の情報、ポインタ７３を示す情報、検出出力を示す情報、及びディジタル信号の終了を示す情報の順に配置する。
【００５１】
より具体的には、例えば図６（ｂ）に示すように、各情報は、基本的に８ビットを単位に構成され、フォーマットは、種別ＩＤ７２を示す情報を収容する７ビットとデータの送信を指示する旨の情報を収容する１ビットのモードビット７５とから成るアドレス部８１、ポインタ７３を示す情報を収容する８ビットのポインタ部８２、検出出力を示す情報を収容する８ビットの検出データ部８３の順に各情報が配置される。
【００５２】
上述の例では、センサユニット１１−１のアドレス格納部６２には種別ＩＤ７２として“０００１”が格納され、ポインタ格納部６４にはポインタとして“００００００００”が格納されているから、センサユニット１１−１のディジタルＩＦ部５１が、自己宛ての信号である認識し、信号の内容を解釈してデータの要求であると判断する。次に、ディジタルＩＦ部５１の転送部６１は、信号のポインタ“００００００００”を用いてデータ格納部６３にアクセスすることによって、レジスタ６５にアクセスすることができ、レジスタ６５に格納されている検出出力を取得する。ディジタルＩＦ部５１の転送部６１は、信号線３５に“ディジタル信号の開始を示す情報”＋“０００１０００１”＋“００００００００”＋“検出出力を示す情報”＋“ディジタル信号の終了を示す情報”を出力する。
【００５３】
ＰＬＣ１０におけるディジタルＩＦ部３１の転送部４１を用いて、この信号を受信すると、信号の内容を解釈することによってデータの送信であると判断する。次に、ディジタルＩＦ部３１の転送部４１は、アドレス部８１の種別ＩＤ７２と検出データ部８３の検出出力を抽出して、これらを示す情報を含む信号をＣＰＵ２３に出力する。そして、ＣＰＵ２３は、種別ＩＤ７２より何れのセンサユニット１１における検出出力であるかを判断し、シーケンスプログラムの実行を続ける。
【００５４】
なお、ディジタル信号の送信先がＥＥＰＲＯＭのようにメモリにデータを書き込むことが可能な場合には、ＰＬＣ１０におけるディジタルＩＦ部３１の転送部４１は、書き込むデータを図６（ａ）で破線で示すようにライトデータ部８４として、ポインタ部８２とディジタル信号の終了を示す情報との間に挿入する。そして、ディジタルＩＦ部５１の転送部６１は、ポインタ７３を用いてメモリにアクセスして受信したライトデータ部８４のデータを書き込む。
【００５５】
次に、ＰＬＣ１０に接続される各センサユニット１１には、複数の同種別のセンサユニット１１がある場合について説明する。
【００５６】
この場合では、複数個の同種の機器を１個のＰＬＣ１０に接続するので、種別ＩＤ７２だけでは各機器を特定することができない。そのため、種別ＩＤ７２に加えて、同種の機器において各機器を識別するための機器ＩＤ７６を用いる。センサユニット１１のディジタルＩＦ部５１におけるアドレス格納部６２に種別ＩＤ７２と共に機器ＩＤ７６を格納し、データの送受信の際にはアドレス部８１のリザーブ７４に機器ＩＤ７６を収容することで、ＰＬＣ１０とセンサユニット１１との間でデータの送受信を上述と同様に行うことができる。
【００５７】
ここで、機器ＩＤ７６は、種別ＩＤ７２と組み合わせて使用されるので、種別が異なれば同一の機器ＩＤ７６を各機器に割り当てることができる。例えば、温度センサａと湿度センサａに機器ＩＤ７６として“０００”を割り当てたり、温度センサｂと湿度センサｂとに機器ＩＤ７６として“００１”を割り当てたりすることができる。なお、データアクセス用マップ及びポインタマップは、上述と同様に図４及び図５がそれぞれ用いられるので、同種別の機器の場合における種別ＩＤ７２及びポインタ７３は、同一である。例えば、温度センサａと温度センサｂとは、機器ＩＤ７６にそれぞれ例えば“０００”と“００１”とが割り当てられて相違するが、種別ＩＤ７２は“０００１”であり、ポインタ７３は“００００００００”、“０００００００１”、“０００００００２”、・・・で同一となる。
【００５８】
また、機器ＩＤ７６は、ユーザがＰＬＣ１０に接続する際に所望の値に選択することができるようにする観点から、ディップスイッチなどによって設定することができるようにするとよい。アドレス格納部６２は、例えば、上位４ビットを機器の種別に応じた種別ＩＤ７２を固定的に記憶し、このディップスイッチの出力を取得あるいは直接使用することなどによって下位３ビットをこのユーザの設定によって設定可能なように構成するとよい。
【００５９】
このような機器ＩＤ７６を用いてＰＬＣ１０とセンサユニット１１とは、次のようにしてデータを送受信する。ここで、図１に示すセンサユニット１１−１、１１−２、１１−３は、例えばそれぞれ温度センサユニットａ、温度センサユニットｂ、湿度センサユニットであるとする。
【００６０】
ユーザは、センサユニット１１をケーブルに接続する際に、ディップスイッチなどによってセンサユニット１１−１及びセンサユニット１１−２に機器ＩＤ７６を設定する。例えば、ユーザは、センサユニット１１−１の機器ＩＤ７６を“０００”に設定し、センサユニット１１−２の機器ＩＤ７６を“００１”に設定する。これによって、アドレス格納部６２には、上位４ビットを種別ＩＤ７２とし下位３ビットを機器ＩＤ７６とするアドレスが格納される。
【００６１】
ユーザは、ＰＬＣ１０及びセンサユニット１１−１〜１１−３の種別を確認し、データアクセス用マップ、ポインタマップ及び設定した機器ＩＤ７６を参考に、所望のシーケンスプログラムを作成し、ＰＬＣ１０のプログラムメモリ２６に格納する。
【００６２】
ＰＬＣ１０が起動されると、ＣＰＵ２３は、プログラムメモリ２６のシーケンスプログラムを実行する。ＣＰＵ２３は、シーケンスプログラム実行中にセンサユニット１１から検出結果を取り込む命令があると、命令から種別ＩＤ７２、ポインタ７３及び機器ＩＤ７６を抽出して、種別ＩＤ７２、ポインタ７３、機器ＩＤ７６及びデータの受信を指示する旨を含む信号をディジタルＩＦ部３１に出力する。
【００６３】
ディジタルＩＦ部３１の転送部４１は、種別ＩＤ７２を示す情報、ポインタ７３を示す情報、機器ＩＤ７６を示す情報及びデータの受信を指示する旨の情報を所定のフォーマットに従って配置したディジタル信号を生成し、生成したディジタル信号を信号線３５に送信する。このフォーマットは、例えば、ディジタル信号の開始を示す情報、種別ＩＤ７２を示す情報、機器ＩＤ７６を示す情報、データの受信を指示する旨の情報、ポインタ７３を示す情報及びディジタル信号の終了を示す情報の順に配置する。
【００６４】
より具体的には、フォーマットは、例えば、図６（ａ）に示すリザーブ７４に機器ＩＤ７６を収容する。一例を挙げると、ＰＬＣ１０が温度センサｂであるセンサユニット１１−２に検出出力を要求する場合には、ディジタルＩＦ部３１は、信号線３５に“ディジタル信号の開始を示す情報”＋“０００１００１０”＋“００００００００”＋“ディジタル信号の終了を示す情報”を出力する。
【００６５】
そして、各センサユニット１１のディジタルＩＦ部５１は、転送部６１を用いて、信号線３５からこの信号を受信し、信号のアドレス部８１とアドレス格納部６２の内容とを比較する。比較の結果、一致する場合には、自己宛ての信号であると認識して信号の内容を解釈し、一致しない場合には、他のセンサユニット１１宛ての信号であると認識して信号を破棄する。自己宛ての信号であると認識したディジタルＩＦ部５１の転送部６１は、信号を解釈してデータの要求であると判断すると、信号のポインタ部８２のポインタ７３を用いてデータ格納部６３にアクセスし、レジスタ６５に格納されている検出出力を取得する。
【００６６】
ディジタルＩＦ部５１の転送部６１は、アドレス格納部６２の種別ＩＤ７２及び機器ＩＤ７６を示す情報とポインタ格納部６４のポインタ７３を示す情報とレジスタ６５から取得した検出出力を示す情報とデータを送信する旨を示す情報とを所定のフォーマットに従って配置したディジタル信号を生成し、生成したディジタル信号を信号線３５に送信する。このフォーマットは、例えば、ディジタル信号の開始を示す情報、種別ＩＤ７２を示す情報、機器ＩＤ７６を示す情報、データの送信を指示する旨の情報、ポインタ７３を示す情報、検出出力を示す情報、及び、ディジタル信号の終了を示す情報の順に配置する。より具体的には、フォーマットは、例えば、図６（ｂ）に示すリザーブ７４に機器ＩＤ７６を収容する。
【００６７】
上述の例では、センサユニット１１−２のアドレス格納部６２には種別ＩＤ７２として“０００１”及び機器ＩＤ７６として“００１”が格納されているから、センサユニット１１−２のディジタルＩＦ部５１は、自己宛ての信号である認識し、信号の内容を解釈してデータの要求であると判断する。次に、ディジタルＩＦ部５１の転送部６１は、信号のポインタ“００００００００”を用いてデータ格納部６３にアクセスすることによって、レジスタ６５にアクセスすることができ、レジスタ６５に格納されている検出出力を取得する。ディジタルＩＦ部５１の転送部６１は、信号線３５に“ディジタル信号の開始を示す情報”＋“０００１００１１”＋“００００００００”＋“検出出力を示す情報”＋“ディジタル信号の終了を示す情報”を出力する。
【００６８】
ＰＬＣ１０におけるディジタルＩＦ部３１は、転送部４１を用いて、この信号を受信すると、信号の内容を解釈することによってデータの送信であると判断する。次に、ディジタルＩＦ部３１の転送部４１は、アドレス部８１の種別ＩＤ７２及び機器ＩＤ７６と検出データ部８３の検出出力を抽出して、これらを示す情報を含む信号をＣＰＵ２３に出力する。そして、ＣＰＵ２３は、種別ＩＤ７２、機器ＩＤ７６及び検出出力に基づいてシーケンスプログラムの実行を続ける。
【００６９】
上述のように、機器の種別に応じて、種別ＩＤ７２及びポインタ７３をマップとして予め規定しておくので、ＰＬＣ１０は、所望のセンサユニット１１にデータを送信する場合には、所望のセンサユニット１１を種別ＩＤ７２で特定することができ、センサユニット１１に関するデータをポインタ７３を用いて取り扱うことができる。そして、ＰＬＣ１０は、センサユニット１１からデータを受信する場合には、ポインタ７３を用いて当該所望のセンサユニット１１のために予約されているメモリ領域に検出出力を格納することができる。なお、受信データの種別ＩＤ７２を参照することによって送信元のセンサユニット１１を特定することもできる。
【００７０】
さらに、データは、ディジタルＩＦ部３１、５１を備えるので、検出出力の大きさがディジタルで表されてデータの種別が種別ＩＤ７２で表されるディジタルデータとして送受信される。このため、従来の変換部が不要となり、さらに、一本のケーブルに複数のセンサユニットを接続することができる。
【００７１】
【発明の効果】
請求項１に記載の発明によれば、ディジタルインターフェースを備えるので、入出力信号は、ディジタル信号である。そのため、センサの種別に拘わらず入出力信号が“０”“１”のビット列となるので、センサの種別に応じた変換部が不要となり、コストを削減することができる。
【００７２】
そして、ディジタルインターフェースのプロトコルを機器の種別を識別する第１識別子と該機器に関するデータを格納する領域を示す第２識別子とが機器ごとに少なくとも予め規定されたプロトコルに限定したので、種々のプロトコルに対応する必要が無く、ディジタルインターフェースを簡易に小型に低コストで製作することができる。さらに、第１識別子と第２識別子とを含むプロトコルを採用したので、１本のケーブルを介して種々の複数のセンサユニットをプログラマブルロジックコントローラに接続することができる。
【００７３】
請求項２乃至請求項５に記載の発明では、請求項１に記載のプログラマブルロジックコントローラの作用効果に加えて、プロトコルを限定したので、このようなプロトコルに対応した安価なセンサユニットを活用することができる。
【００７４】
また、請求項６に記載の発明では、請求項２に記載のプログラマブルロジックコントローラの作用効果に加えて、電源供給部を備えるので、センサユニットは、この電源供給部から電力供給を受けることができるから別途電源を設ける必要がない。
【図面の簡単な説明】
【図１】本発明にかかるプログラマブルロジックコントローラの構成を示す図である。
【図２】センサユニット１１の構成を示す図である。
【図３】ディジタルインターフェース部の構成を示す図である。
【図４】データアクセス用マップを示す図である。
【図５】各機器におけるポインタとレジスタとの関係の一例を示す図である。
【図６】データ転送のフォーマットを示す図である。
【図７】温度を検出することによって制御する場合における従来のプログラマブルロジックコントローラの構成を示す図である。
【符号の説明】
１０、１０１　プログラマブルロジックコントローラ
１１　センサユニット
２１、１２１　入力部
２２、１２２　出力部
２３、１２３　中央処理装置
２５、１２５　システムメモリ
２６、１２６　プログラムメモリ
２７　ディジタルインターフェース
３１、５１　ディジタルインターフェース部
３２　電力供給部
３５　信号線
３６　電力線
４１、６１　転送部
５２　センサ部
６２　アドレス格納部
６３　データ格納部
６４　ポインタ格納部
６５　レジスタ
７２　種別ＩＤ
７３　ポインタ
７６　機器ＩＤ
８１　アドレス部
８２　ポインタ部
８３　検出データ部
８４　ライトデータ部
【図１】
2004118347.tif 000003
【図２】
2004118347.tif 000004
【図３】
2004118347.tif 000005
【図４】
2004118347.tif 000006
【図５】
2004118347.tif 000007
【図６】
2004118347.tif 000008
【図７】
2004118347.tif 000009