【手続補正書】
【提出日】平成19年1月5日(2007.1.5)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正の内容】
【発明の名称】プログラマブルコントローラおよびその入出力割付方法
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ＣＰＵモジュールと各種入力／出力モジュールがバス接続または通信で接続され、該入力／出力モジュールが使用するレファレンス番号をＣＰＵモジュールが管理するプログラマブルコントローラの入出力割付方法において、
各入力／出力モジュールが使用するレファレンス番号のバイト単位のデータを１点単位のデータに変換し割付けることを特徴とするプログラマブルコントローラの出力割付方法。
【請求項２】
請求項１記載のプログラマブルコントローラの入出力割付方法において、
１点単位の入出力割付を行って、入力／出力モジュールが実際に使用する入出力端子数に応じたレファレンス番号を設定し、次の入力／出力モジュールのレファレンス番号を続けて割付けることを特徴とするプログラマブルコントローラの入出力割付方法。
【請求項３】
請求項１記載のプログラマブルコントローラの入出力割付方法において、１点単位の入出力割付を行って、入力／出力モジュールが実際に使用する入出力端子数に応じたレファレンス番号を設定し、残る固定割付に相当する範囲内の空き番号分はそのままにして割付けることを特徴とするプログラマブルコントローラの入出力割付方法。
【請求項４】
ＣＰＵモジュールと各種入力／出力モジュールがバス接続または通信で接続され、該入力／出力モジュールが使用するレファレンス番号をＣＰＵモジュールが管理するプログラマブルコントローラにおいて、
各入力／出力モジュールが使用するレファレンス番号のバイト単位のデータを１点単位のデータに変換し割付ける割付データ変換部を備えることを特徴とするプログラマブルコントローラ。
【請求項５】
請求項４記載のプログラマブルコントローラにおいて、
前記割付データ変換部は、１点単位の入出力割付を行って、入力／出力モジュールが実際に使用する入出力端子数に応じたレファレンス番号を設定し、次の入力／出力モジュールのレファレンス番号を続けて割付けることを特徴とするプログラマブルコントローラ。
【請求項６】
請求項４記載のプログラマブルコントローラにおいて、
前記割付データ変換部は、１点単位の入出力割付を行って、入力／出力モジュールが実際に使用する入出力端子数に応じたレファレンス番号を設定し、残る固定割付に相当する範囲内の空き番号分はそのままにして割付けることを特徴とするプログラマブルコントローラ。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
【発明の属する技術分野】
本発明は、プログラマブルコントローラ（以下、ＰＣと略す）およびその入出力割付方法に関する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
【課題を解決する手段】
上記目的を達成するため、請求項１に記載の発明は、ＣＰＵモジュールと各種入力／出力モジュールがバス接続または通信で接続され、該入力／出力モジュールが使用するレファレンス番号をＣＰＵモジュールが管理するプログラマブルコントローラの入出力割付方法において、各入力／出力モジュールが使用するレフアレンス番号のバイト単位のデータを１点単位のデータに変換し割付けることを特徴としている。
また、請求項２に記載の発明は、請求項１記載のプログラマブルコントローラの入出力割付方法において、１点単位の入出力割付を行って、入力／出力モジュールが実際に使用する入出力端子数に応じたレフアレンス番号を設定し、次の入力／出力モジュールのレファレンス番号を続けて割付けることを特徴としている。
また、請求項３に記載の発明は、請求項１記載のプログラマブルコントローラの入出力割付方法において、１点単位の入出力割付を行って、入力／出力モジュールが実際に使用する入出力端子数に応じたレファレンス番号を設定し、残る固定割付に相当する範囲内の空き番号分はそのままにして割付けることを特徴としている。
また、請求項４に記載の発明は、ＣＰＵモジュールと各種入力／出力モジュールがバス接続または通信で接続され、該入力／出力モジュールが使用するレファレンス番号をＣＰＵモジュールが管理するプログラマブルコントローラにおいて、バイト単位のデータを１点単位のデータに変換し割付ける割付データ変換部を備えることを特徴としている。
また、請求項５に記載の発明は、請求項４記載のプログラマブルコントローラにおいて、前記割付データ変換部は、１点単位の入出力割付を行って、入力／出力モジュールが実際に使用する入出力端子数に応じたレファレンス番号を設定し、次の入力／出力モジュールのレファレンス番号を続けて割付けることを特徴としている。
また、請求項６に記載の発明は、請求項４記載のプログラマブルコントローラにおいて、前記割付データ変換部は、１点単位の入出力割付を行って、入力／出力モジュールが実際に使用する入出力端子数に応じたレファレンス番号を設定し、残る固定割付に相当する範囲内の空き番号分はそのままにして割付けることを特徴としている。
この構成によれば、ＣＰＵモジュールの内部データは８点（ビット）を１バイトとして格納してあって、通常ＣＰＵモジュールはバイト単位の処理を行い、入出力モジュールは８点、１６点、３２点などと１バイトの倍数の点数構成となっている。これを、ＣＰＵモジュールの処理単位で１点単位の割付けが可能な構成に変換して、例えば、２個の出力モジュールＡ、Ｂがそれぞれ１０点端子数しか必要無い場合に、出力モジュールＡをレファレンス番号「０００００１〜００００１０」と割付け、空き番号を置かずに続けて出力モジュールＢを「００００１１〜００００２０」と割付けることによって、必要な１０点割付だけで済み、メモリの空き領域の無駄を無くすことができる。
また、プログラミング装置からの設定についても、８点、１６点という固定割付けの設定では無く自由な点数で設定できる。
あるいは、出力モジュールＡをレファレンス番号「０００００１〜００００１０」に割付け、１６点割付の場合の空きに相当する１６−１０＝６点を割付枠には含まれない空きとして残す１０点割付を行えば、この場合の６点分は加算されないので入出力点数が制限されない１０点割付が可能になる。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
つぎに動作について説明する。
従来のＰＣは、図５に示したように、１６点の出力モジュールを使用する場合に、レフアレンス番号は固定割付で１６点づつに区切り「０００００１」〜「００００９７」で構成したとすると、最初の領域のレフアレンス番号「０００００１〜００００１６」では、１６点出力中に斜線部分で示すように、実際の有効出力端子が１０点であっても、１６点分を確保して出力モジュールにサービスを行っていたので、空白の６点分が無駄になるばかりでなく、通常入出力割付点数には制限Ｍが設けられているため、この無駄な６点も加算されて実際に使用できる入出力点数が制限されていた。
そこで、本実施の形態ではＩ／Ｏモジュール（出力モジュール４、５＝ＤＯ、入力モジュール６＝ＤＩ）に接続される各種機器（通信モジュール、モーションモジュール、モータ、センサ等）の外部仕様書を基に作成した各種機器毎の入出力割付データ、「アドレス、ＩＤ（機種名）、Ｉ／Ｏ種類＝ＤＯ、ＤＩ」、等の情報を各機種のソフトに対応しラダー・プログラムデータとリンクするように、メモリに割付けるが、その際に、本発明では割付データ変換部８を介してバイト単位（１６点、３２点等）のデータ処理を１点単位のデータ処理に変換する割付によって、例えば、出力モジュール４（ＤＯ）に接続される機器が１０点端子の入出力なら、メモリ内部の入出力割付データ７も１０点割付を行って、図２に示すように、出力モジュールＡ（ＤＯ４）がレフアレンス番号「０００００１〜００００１０」のように１０点しか使用しない場合は、続けて、「００００１１〜００００１６→００００１７〜００００２０」と、出力モジュールＢ（ＤＯ５も出力１０点とすれば）を連続割付するようにする。例えば、従来“０１１００１１０１１００００００”の１６点データを、出力モジュールＡは“０１１００１１０１１”の１０点データに切替え、１１点目から続けて出力モジュールＢのデータ処理を行う可変割付により無駄の無いシステムを構築することができる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
次に、本発明の第２の実施の形態について図を参照して説明する。
図３は本発明の第２の実施の形態に係る入出力割付データを示す図である。
図３において、１３はレフアレンス番号「０００００１〜」に割付けた出力モジュールＡの出力であり、１４は次のレフアレンス番号「００００１７〜」に割付けた出力モジュールＢの出力である。
つぎに動作について説明する。
この場合の割付けは、出力モジュールＡ、Ｂともに１６点出力分の空き番号をそのまま残して、空き端子分を予備として持っているようにしたもので、将来出力端子を追加した場合などに有効である。これは、図５に示した従来方式と外見上は変わらないように見えるが、図５の従来方式は、１６点１ワードの固定割付方式で１ワード単位で出力されるのに対し、本実施の形態では、１点単位の出力方式により１０点分しか出力されず、空き端子分が出力されることは無く、入出力割付点数も１０点しか加算されないので従来方式とは異なる。
このように、本発明によれば、実際に使用する点数だけを入出力割付点数とすることにして、システムの無駄を無くすことができるが、こうした本発明の効果について図４に示す通信モジュールを例に説明する。
ＰＣの通信モジュールはＣＰＵモジュールとバス接続され、通信モジュールを介して他のＰＣや、各種コントローラ等とネットワークを形成して接続されるものであり、マスターＰＣと他のＰＣ間、あるいは各種コントローラ間をネットワークを介し通信で接続するものである。
従って、通信モジュールでは、本発明のモジュール単位の決められた範囲内の入出力割付の他に、通信モジュールに接続される各種機器の割付が存在する。図４（ａ）は比較のために示した従来方式の例であるが、接続機器１ではレファレンス番号「００００３３〜００００４８」の１６点を全部使用していないで、実際は１０点しか使用していなくても、固定割付のため１６点分占有してしまうので、全部で９６点の割付領域があって、接続機器１〜５で実際に使用している点数は７８点でも、これ以上の割付を行うことができなかった。
これに対して、図４（ｂ）に示す本発明の場合は、レファレンス番号「００００３３〜」から７８点を連続に空き領域無しに設定できるので、こちらの場合は更にもう一つ機器を増やして６台の機器が接続可能になる。このように本発明によれば、メモリ資源の有効利用によってシステムの稼働効率を向上させることができる。又、メーカや機種の異なる機器を接続する際にも有効に機能する。