(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、プログラマブルコントローラは、複数チャンネルの通信も制御することが可能である。しかし、全チャンネルの通信処理を1回の実行単位内で完結するように実行したとすると、チャンネル数が多い場合には、1回の実行単位に占める通信処理の割合が増加し、1回の実行単位が完結するまでに要する時間自体も長くなってしまう。これにより、プログラマブルコントローラが情報を入力してから該情報に反応する(例えば、情報の出力処理)までの時間が長くなりがちであった。
【0005】
この発明は、このような従来の技術に存在する問題点に着目してなされたものであり、その目的は、実行単位が完結するまでに要する時間を短縮することにある。
【課題を解決するための手段】
【0006】
上記問題点を解決するプログラマブルコントローラは、各種処理を実行する処理部と、外部機器と接続される複数の通信ポートと、を備えたプログラマブルコントローラであって、プログラムの演算処理及び前記外部機器との通信処理が1回の実行単位内で実行されるとともに、前記実行単位の処理は繰り返し実行され、前記処理部は、1回の実行単位内において通信処理の対象とする通信ポート数が予め定めた上限値を超えた場合、上限値を超えた通信ポートに対する通信処理を次周期以降の実行単位で実行させる分散処理形態で前記実行単位の処理を実行する。
【0007】
この構成によれば、1回の実行単位内で通信処理の対象となる通信ポート数に制限がかかるため、通信ポート数が上限値に達したときには、その通信ポートの通信処理は次周期以降の実行単位での処理に回されることになる。これにより、実行単位が完結するまでに要する時間を短縮することができる。
【0008】
上記プログラマブルコントローラにおいて、前記上限値を変更可能とすることが好ましい。
この構成によれば、1回の実行単位内で通信処理の対象となる通信ポート数の上限値が適宜変更可能となるため、それに伴って1回の実行単位に占める通信処理の割合も適宜変更される。これにより、実行単位が完結するまでに要する時間も変化し、適当な実行単位時間を設定することが可能となる。
【0009】
上記プログラマブルコントローラにおいて、前記処理部は、1回の実行単位内で全ての通信ポートの通信処理を実行させる統合処理形態と、前記分散処理形態と、を切り替え可能であることが好ましい。
【0010】
この構成によれば、統合処理形態で実行単位の処理を実行する場合には、1回の実行単位内で全ての通信ポートの通信処理が完結するため、外部機器から通信される情報を、より早く収集することが可能となる。一方、分散処理形態で実行単位の処理を実行する場合には、上限値を超えた通信ポートの通信処理が次周期以降の実行単位に回されるので、1回の実行単位が完結するまでに要する時間が短くなる。これにより、今周期の演算処理と次周期の演算処理との間隔が短くなり、演算結果を、より早く算出することができる。
【0011】
上記プログラマブルコントローラにおいて、1回の実行単位内の通信処理に要した時間を外部に報知する報知部を備えることが好ましい。
この構成によれば、1回の実行単位において通信処理に要した時間が報知されるので、この報知結果をもとにユーザは統合処理形態と分散処理形態のどちらに切り替えればよいのかを判断することができ、ユーザの意思を反映して、適宜、統合処理形態と分散処理形態を切り替えることが可能となる。
【0012】
上記問題点を解決する制御プログラムは、各種処理を実行する処理部と、外部機器と接続される複数の通信ポートと、を備えたプログラマブルコントローラに実行させる制御プログラムであって、前記処理部に、プログラムの演算処理及び前記外部機器との通信処理を1回の実行単位内で実行させるとともに、前記実行単位の処理を繰り返し実行させ、1回の実行単位内において通信処理の対象とする通信ポート数が予め定めた上限値を超えた場合、上限値を超えた通信ポートに対する通信処理を次周期以降の実行単位で実行させる分散処理形態で前記実行単位の処理を実行させる。
【0013】
この構成によれば、1回の実行単位内で通信処理の対象となる通信ポート数に制限がかかるため、通信ポート数が上限値に達したときには、その通信ポートの通信処理は次周期以降の実行単位での処理に回されることになる。これにより、実行単位が完結するまでに要する時間を短縮することができる。
【0014】
上記制御プログラムにおいて、前記上限値を変更可能とすることが好ましい。
この構成によれば、1回の実行単位内で通信処理の対象となる通信ポート数の上限値が適宜変更可能となるため、それに伴って1回の実行単位に占める通信処理の割合も適宜変更される。これにより、実行単位が完結するまでに要する時間も変化し、適当な実行単位時間を設定することが可能となる。
【0015】
上記制御プログラムにおいて、前記処理部に、1回の実行単位内で全ての通信ポートの通信処理を実行させる統合処理形態と、前記分散処理形態と、を切り替えさせることを可能とすることが好ましい。
【0016】
この構成によれば、統合処理形態で実行単位の処理を実行させる場合には、1回の実行単位内で全ての通信ポートの通信処理が完結するため、外部機器から通信される情報を、より早く収集することが可能となる。一方、分散処理形態で実行単位の処理を実行させる場合には、上限値を超えた通信ポートの通信処理が次周期以降の実行単位に回されるので、1回の実行単位が完結するまでに要する時間が短くなる。これにより、今周期の演算処理と次周期の演算処理との間隔が短くなり、演算結果を、より早く算出することができる。
【0017】
上記制御プログラムにおいて、報知部に、1回の実行単位内の通信処理に要した時間を外部に報知させることが好ましい。
この構成によれば、1回の実行単位において通信処理に要した時間が報知されるので、この報知結果をもとにユーザは統合処理形態と分散処理形態のどちらに切り替えればよいのかを判断することができ、ユーザの意思を反映して、適宜、統合処理形態と分散処理形態を切り替えることが可能となる。
【発明の効果】
【0018】
本発明によれば、実行単位が完結するまでに要する時間を短縮することができる。
【発明を実施するための形態】
【0020】
(第1の実施形態)
以下、プログラマブルコントローラの第1の実施形態を図面に従って説明する。
図1に示すように、プログラマブルコントローラ10は、各種処理を実行する処理部20と、各種制御プログラムや各種情報を記憶する記憶部30と、処理部20と外部機器101,102,103との通信を仲介する通信部40を有している。さらに、プログラマブルコントローラ10は、表示部50を有している。外部機器101〜103としては、例えば、パソコン、温度等の計測器、バーコードリーダ、画像処理装置、表示装置、センサ等が挙げられる。
【0021】
通信部40はインターフェイスであって、通信部40には、外部機器101〜103と情報の通信が行われる複数(本実施形態では3つ)の通信ポート41,42,43が設けられている。
【0022】
処理部20は、通信部40を介して外部機器101〜103と接続されている。具体的には、通信ポート41は外部機器101と接続され、通信ポート41と外部機器101の間には伝送路としてのチャンネルCH0が設定されている。通信ポート42は外部機器102と接続され、通信ポート42と外部機器102の間には伝送路としてのチャンネルCH1が設定されている。通信ポート43は外部機器103と接続され、通信ポート43と外部機器103の間には伝送路としてのチャンネルCH2が設定されている。これにより、外部機器101〜103は、通信ポート41〜43を介して処理部20との間において情報の通信を行う。記憶部30には、外部機器101〜103から取得した情報が一時的に保持される。また、処理部20は、記憶部30及び表示部50とも接続されている。
【0023】
次に、処理部20が実行する処理内容について説明する。
処理部20は、外部機器101〜103から情報を入力したり外部機器101〜103に情報を出力したりするための一連のサイクル処理を実行している。
【0024】
該サイクル処理は、更新処理、演算処理、及び通信処理によって構成されている。
更新処理では、通信結果に基づいて各種情報を更新する処理が行われる。具体的には、前周期の通信処理で入力した情報(外部機器からの命令、外部機器からの検出結果等)を取り込み、必要に応じて、設定情報を更新する処理が実行される。また、更新処理では、出力予定であった情報が既に出力されていた場合、該情報を出力させないことが設定される。
【0025】
演算処理では、記憶部30に格納された制御プログラムに従って、通信ポート41〜43から入力した情報に基づいて演算する処理が実行される。
通信処理では、演算処理の演算結果を通信ポート41〜43を介して外部機器101〜103に出力する処理や、外部機器101〜103から通信ポート41〜43を介して情報を入力する処理が実行される。ちなみに、制御プログラムには通信処理にて利用される通信ポートの順番が記憶されている。
【0026】
1回のサイクル処理では、更新処理、演算処理、通信処理の順で各処理が実行されるとともに、更新処理、演算処理、及び通信処理は繰り返し実行される。以下、一連のサイクル処理を「スキャン処理」と示すとともに、この一連の繰り返しの一実行単位を「1スキャン」と示す。
【0027】
また、処理部20は、1回のスキャン処理において通信処理の対象とする通信ポート数に上限値を設定する。この上限値は適宜変更可能である。本実施形態でいう「通信処理の対象とする通信ポート数」は、特定の通信ポートに接続された外部機器との通信処理を1単位としている。つまり、外部機器101〜103毎に通信処理を行い、当該処理を1単位としている。また、前述したように、通信ポート41〜43は、外部機器101〜103とそれぞれ接続されているとともに、各通信ポート41〜43と外部機器101〜103の間にはチャンネルCH0〜CH2がそれぞれ設定されている。このため、処理部20は、1回のスキャン処理において通信処理の対象とする外部機器数又はチャンネル数に上限値を設定しているとも言いかえることができる。
【0028】
以下、通信処理の対象とする通信ポート数の上限値を「3」とした場合の制御手順について説明する。本実施形態のプログラマブルコントローラ10は3つの通信ポート41〜43を有しているため、通信処理の対象とする通信ポート数の上限値を「3」とすることと、通信処理の対象とする通信ポート数の上限値を設けないことは同じことを意味する。以下の説明では、説明の都合上、通信処理の対象とする通信ポート数の上限値を「3」として説明する。また、以下の説明では、通信処理の対象とする通信ポート数の上限値を「3」として行われるスキャン処理の処理形態を統合処理形態と示す。
【0029】
図2に示すように、処理部20は、更新処理を実行した後、演算処理を実行する。その後、処理部20は、通信処理の対象とする通信ポート数の上限値を「3」としたことにより、3つの通信ポートを利用する通信処理を1スキャン内で実行することを特定する。また、処理部20は、制御プログラムを読み出して通信処理の対象とする通信ポートを特定し、特定した内容に従って通信処理の順序を決定する。
【0030】
具体的には、処理部20は、通信ポート41を対象とした通信処理において、通信ポート41を介して、演算処理で得られた演算結果を外部機器101に出力させるように制御する。これにより、外部機器101は情報を受け取ることができる。また、処理部20は、通信ポート41を介して、外部機器101から情報を入力する。
【0031】
次に、処理部20は、通信ポート42を対象とした通信処理において、通信ポート42を介して、演算処理で得られた演算結果を外部機器102に出力させるように制御する。これにより、外部機器102は情報を受け取ることができる。また、処理部20は、通信ポート42を介して、外部機器102から情報を入力する。
【0032】
次に、処理部20は、通信ポート43を対象とした通信処理において、通信ポート43を介して、演算処理で得られた演算結果を外部機器103に出力させるように制御する。これにより、外部機器103は情報を受け取ることができる。また、処理部20は、通信ポート43を介して、外部機器103から情報を入力する。その後、処理部20は、スキャン処理を終了する。以降、処理部20は、スキャン処理を繰り返し実行する。
【0033】
このように、統合処理形態では、1回のスキャン処理において全ての通信ポート41〜43の通信処理が実行される。このため、1回のスキャン処理が完結するまでに要する時間も長くなる。しかしながら、全ての通信ポート41〜43の通信処理を完結させるまでに要するスキャン処理の回数が少なくて済む。これにより、処理部20は、外部機器101〜103から通信される情報を、より早く収集することが可能となる。
【0034】
次に、通信処理の対象とする通信ポート数の上限値を「1」とした場合の制御手順について説明する。上限値の変更方法としては、例えば、外部パソコンから上限値の変更指示を出力する方法が挙げられる。また、プログラマブルコントローラ10にユーザが操作可能な操作部を設けるとともに、該操作部の操作によって上限値を変更する方法などが挙げられる。以下の説明では、通信処理の対象とする通信ポート数の上限値を「1」として行われるスキャン処理の処理形態を分散処理形態と示す。
【0035】
図3に示すように、処理部20は、更新処理を実行した後、演算処理を実行する。その後、処理部20は、通信処理の対象とする通信ポート数の上限値を「1」としたことにより、1つの通信ポートを利用する通信処理を1スキャン内で実行することを特定する。また、処理部20は、制御プログラムを読み出して通信処理の対象とする通信ポートを特定する。
【0036】
具体的には、処理部20は、通信ポート41を対象とした通信処理において、通信ポート41を介して、演算処理で得られた演算結果を外部機器101に出力させるように制御する。これにより、外部機器101は情報を受け取ることができる。また、処理部20は、通信ポート41を介して、外部機器101から情報を入力する。その後、処理部20は、実行中のスキャン処理を終了させる。続いて、処理部20は、次周期のスキャン処理を開始する。
【0037】
今回のスキャン処理において、処理部20は、更新処理、演算処理を実行する。その後、前周期のスキャン処理で通信ポート41を対象とした通信処理を実行させたことから、処理部20は、制御プログラムに基づき、今回のスキャン処理において通信ポート42を対象とした通信処理を実行させることを特定する。そして、処理部20は、通信ポート42を対象とした通信処理において、通信ポート42を介して、演算処理で得られた演算結果を外部機器102に出力させるように制御する。これにより、外部機器102は情報を受け取ることができる。また、処理部20は、通信ポート42を介して、外部機器102から情報を入力する。その後、処理部20は、実行中のスキャン処理を終了させる。続いて、処理部20は、次周期のスキャン処理を開始する。
【0038】
今回のスキャン処理において、処理部20は、更新処理、演算処理を実行する。その後、前周期のスキャン処理で通信ポート42を対象とした通信処理を実行させたことから、処理部20は、制御プログラムに基づき、今回のスキャン処理において通信ポート43を対象とした通信処理を実行させることを特定する。そして、処理部20は、通信ポート43を対象とした通信処理において、通信ポート43を介して、演算処理で得られた演算結果を外部機器103に出力させるように制御する。これにより、外部機器103は情報を受け取ることができる。また、処理部20は、通信ポート43を介して、外部機器103から情報を入力する。
【0039】
このように、分散処理形態では、1回のスキャン処理内で全ての通信ポート41〜43の通信処理が完結せず、各通信ポート41〜43の通信処理が複数回のスキャン処理において通信ポート毎に分散される。これにより、1回のスキャン処理で全ての通信ポート41〜43の通信処理が実行された場合(
図2参照)に要する時間に比して、1回のスキャン処理において通信処理が占める時間が短くなる。これに伴い、前周期の演算処理と次周期の演算処理との間隔も短くなるため、情報の入力間隔が短くなり、入力変化を追従し易くなる。つまり、外部機器101〜103から入力した情報に基づき演算を開始するまでの時間、及び演算結果を出力するまでの時間を短縮することができる。したがって、例えば、外部機器が起動するまでに要する時間等の短縮を見込むことができる。
【0040】
このように、本実施形態では、通信処理の対象とする通信ポート数の上限値を「3」とするか「1」とするかによって、処理形態が切り替えられることになる。
また、処理部20は、1回のスキャン処理の通信処理に要した時間を外部機器101〜103毎(通信ポート41〜43毎)に計測し、計測結果を記憶部30に一時的に保持する。そして、1回のスキャン処理が終了すると、処理部20は、記憶部30から計測結果を読み出し、該計測結果を表示部50に表示させるように制御する。表示部50では、1回のスキャン処理の通信処理に要した時間が外部機器101〜103毎にそれぞれ表示される。本実施形態では、外部機器101〜103毎の通信処理に要した時間を表示する表示部50が報知部として機能する。
【0041】
図4では、外部機器101の通信処理に要した時間が「時間T1」、外部機器102の通信処理に要した時間が「時間T2」、外部機器103の通信処理に要した時間が「時間T3」であった場合の表示形態を示している。
【0042】
このように、1回のスキャン処理の通信処理に要した時間が外部機器101〜103毎に表示部50でそれぞれ表示されるため、ユーザは外部機器101〜103毎の通信処理に要した時間を把握することが可能となる。そして、ユーザは、外部機器101〜103毎の通信処理に要した時間を参考にして通信ポート数の上限値を決定することができる。すなわち、統合処理形態でスキャン処理を実行するか、分散処理形態でスキャン処理を実行するかを決定することができる。
【0043】
したがって、本実施形態では、以下に示す効果を得ることができる。
(1)通信処理の対象とする通信ポート数に上限値を設けることで、1回のスキャン処理内で通信処理の対象となる通信ポート数に制限がかかることになる。このため、通信ポート数が上限値に達したときには、上限値を超えた通信ポートの通信処理は次周期以降のスキャン処理に回されることになる。これにより、1回のスキャン処理内で全ての通信ポート41〜43の通信処理が実行される場合に要する時間に比して、1回のスキャン処理が完結するまでに要する時間を短縮することができる。
【0044】
(2)通信処理の対象となる通信ポート数に上限値を設けることで、1回のスキャン処理が完結するまでに要する時間が短縮されるため、前周期の演算処理と今周期の演算処理との間隔が短くなる。これにより、情報の入力間隔が短くなり、入力変化を追従し易くなる。その結果、外部から入力した情報に基づき演算を開始するまでの時間、及び演算結果を出力するまでの時間を短縮することができる。例えば、外部機器が製品の形状をチェックするために用いられるセンサである場合、センサから情報を入力し、入力した情報に基づいて演算した演算結果を別の外部機器に出力するまでの時間が短くなるため、チェック効率を向上することができる。また、通信処理を複数のスキャン処理において通信ポート毎に分散させるだけで、通信処理を中断させることなく、外部から入力した情報に基づき演算を開始するまでの時間、及び演算結果を出力するまでの時間を短縮することができる。
【0045】
(3)通信処理の対象とする通信ポート数に上限値を設けない場合、通信処理の対象とする通信ポート数に上限値を設けた場合に比して、1回のスキャン処理が完結するまでに要する時間が長くなる。ところが、1回のスキャン処理内で全ての通信ポート41〜43の通信処理が完結するため、通信処理の待機時間が短くなり、外部機器101〜103から通信される情報を、より早く収集することが可能となる。
【0046】
(4)1回のスキャン処理内で通信処理の対象とする通信ポート数に制限をかけるという設定変更を行うだけで、処理部20の性能を上げることなく信号の入出力に要する時間を短縮することができる。つまり、処理部20の性能の向上を必要としないので、低コストにて、1回のスキャン処理が完結するまでに要する時間を短縮することができる。そして、外部から入力した情報に基づき演算を開始するまでの時間、及び演算結果を出力するまでの時間が短縮されると、間接的に、外部機器の反応速度(例えば、起動)も向上するため、ユーザ設備のタクトタイム向上にも繋がる。
【0047】
(5)1回のスキャン処理内で通信処理の対象とする通信ポート数の上限値が適宜変更可能となるため、それに伴って1回のスキャン処理が完結するまでに要する時間も変化し、適当なスキャン処理の時間を設定することができる。
【0048】
(6)ユーザ設備のシステム構成によって優先したい処理内容が異なる場合であっても、ユーザ自身に統合処理形態と分散処理形態を選択させることで、ユーザ設備に最適なシステム構築を実現できる。
【0049】
(7)1回のスキャン処理の通信処理に要した時間が外部機器101〜103毎に表示部50でそれぞれ表示される。この表示結果をもとにユーザは統合処理形態と分散処理形態のどちらに切り替えればよいのかを判断することができ、ユーザの意思を反映して、適宜、統合処理形態と分散処理形態を切り替えることが可能となる。
【0050】
(8)上限値を通信ポートの数で設定しているため、1回のスキャン処理において、実行中の通信ポートに係る通信処理が途中で中断されない。
(第2の実施形態)
次に、
図5に従って、第2の実施形態について説明する。なお、以下の説明では、既に説明した実施形態と同一構成、及び同一制御には、同一の符号を付すなどしてその説明を省略又は簡略化する。
【0051】
本実施形態において処理部20は、1回のスキャン処理における通信処理の実行時間に上限を設定する。また、本実施形態のプログラマブルコントローラ10には、ユーザが操作可能な操作部が設けられており(図示せず)、該操作部の操作によって上限時間を変更可能に構成されている。
【0052】
以下、1回のスキャン処理における通信処理の実行時間に上限を設定した場合の制御手順について説明する。
処理部20は、更新処理を実行した後、演算処理を実行する。その後、処理部20は、制御プログラムを読み出して通信処理の対象とする通信ポートを特定し、特定した内容に従って通信処理の順序を決定する。また、処理部20は、通信処理の開始に伴って上限時間を設定するとともに、通信処理を開始してからの経過時間を計測する。
【0053】
処理部20は、通信処理を開始させると、経過時間が、記憶部30に記憶された上限時間を超えたか否かを判定する。この判定結果が否定である場合、すなわち、経過時間が上限時間に満たない場合、実行中の通信処理を継続する。一方、この判定結果が肯定である場合、経過時間が上限時間を超えていることになる。これにより、処理部20は、通信処理を中断し、実行中のスキャン処理を終了させる。
【0054】
また、処理部20は、上限時間を超えた場合、どこまで処理を行っていたのかを示す情報を記憶部30に記憶し、次周期のスキャン処理では前周期のスキャン処理で中断された内容から通信処理を開始させる。具体的には、処理部20は、次周期の通信処理の開始時に記憶部30を読み出し、読み出した情報に基づき、前周期のスキャン処理で中断された内容から通信処理を開始させる。なお、通信処理を中断した場合であっても、処理部20は、再開対象となる通信処理の開始時に上限時間を設定し、通信処理を開始させてからの経過時間を計測する。そして、全ての通信ポート41〜43を対象とする通信処理が終了したのであれば、処理部20は、新たな処理を開始させる。
【0055】
また、操作部の操作によって上限時間が変更され、該操作部から変更された上限時間が指示された場合、処理部20は、指示された上限時間を記憶部30に記憶させるようになっている。
【0056】
以下、通信処理の実行時間に上限を設定した場合における制御手順の具体例を説明する。
図5では、上限時間として「時間T4」が設定されている。ちなみに、「時間T4」は、通信ポート41,42の通信処理に要する時間の合計時間よりも長く、通信ポート41〜43の通信処理に要する時間の合計時間よりも短い時間である。
【0057】
このような時間設定であるため、1回のスキャン処理において、通信ポート41,42に対する通信処理は完了するが、通信ポート43に対する通信処理の実行途中に、通信処理が開始されてからの経過時間が上限時間「時間T4」に到達することになる。これにより、通信ポート43に対する通信処理の実行途中であるが、通信処理が中断されて1回目のスキャン処理が終了する。そして、2回目のスキャン処理では、中断された内容から通信処理が再開される。
【0058】
このように、通信処理の実行時間に上限を設定した場合、設定した上限時間の長さに応じて通信処理の実行時間も変化する。特に、上限時間を、全ての通信ポートの通信処理が終了し得ないような値に設定したときには、複数回のスキャン処理に分かれて通信処理が実行される。このため、上限値を時間で設定した場合であっても、1回のスキャン処理が完結するまでに要する時間を短縮することができる。また、上限時間を調整することで、分散処理形態でスキャン処理が実行された場合に得られる効果と同様の効果も得られる。
【0059】
したがって、本実施形態では、第1の実施形態の効果(1)〜(7)と同様の効果に加えて以下の効果を得ることができる。
(9)外部機器101〜103との通信に長時間を要するような状況下において上限値を通信ポートの個数で管理したとする。この場合、いずれかの外部機器101〜103との通信に長時間を要するにもかかわらず、通信ポートの個数で管理されるため、処理が進行しない等の誤作動が生じる虞がある。このような場合であっても、上限値を時間で管理した場合には、上限時間に到達したときに必ず通信処理を終了させることができる。また、上限時間を調整することで、分散処理形態でスキャン処理が実行された場合に得られる効果と同様の効果も得られる。
【0060】
なお、上記各実施形態は以下のように変更しても良い。
・第2の実施形態では、上限時間を一定値としてもよい。
・第2の実施形態では、外部機器101〜103毎の通信処理に要した時間が外部に報知されても、報知されなくてもどちらでもよい。
【0061】
・外部機器101〜103毎の通信処理に要した時間の報知態様は、
図4のような形態に限られず、外部機器101〜103毎の時間をユーザが認識できるのであればどのような形態であってもよい。
【0062】
・第1の実施形態において、通信処理の対象となる通信ポート数が上限値に到達した場合、次周期以降のスキャン処理であれば、どのタイミングで通信処理を再開してもよい。
・第2の実施形態において、通信処理が開始されてからの経過時間が上限時間に到達した場合、次周期以降のスキャン処理であれば、どのタイミングで通信処理を再開してもよい。
【0063】
・各実施形態において、表示部50における表示対象を、通信処理と演算処理としてもよい。また、1回のスキャン処理において実行される各処理としてもよい。
・各実施形態において、表示部50は、外部のパソコンや外部の表示器で実現するものでもよい。
【0064】
・各実施形態において、通信処理の対象とする通信ポートの順序を変更してもよい。例えば、通信ポート41を対象とする通信処理の後、通信ポート43を対象とする通信処理を実行し、最後に通信ポート42を対象とする通信処理を実行してもよい。
【0065】
・各実施形態において、通信処理の対象とする通信ポート数の上限値と、プログラマブルコントローラ10が有する通信ポートの個数を任意に変更してもよい。例えば、プログラマブルコントローラ10に4つの通信ポートが設けられている場合において、通信処理の対象とする通信ポート数の上限値を「2」としてもよい。
【0066】
・各実施形態において、通信ポートの個数を1つとし、1つの通信ポートに複数のチャンネルを設定し、各チャンネルと外部機器とをそれぞれ接続してもよい。この場合、処理部20は、1回のスキャン処理の通信処理の対象とする外部機器数又はチャンネル数に上限値を設定していることになる。
【0067】
・各実施形態において、プログラマブルコントローラに実行させるスキャン処理の内容を組み込んだ制御プログラムをプログラマブルコントローラにインストールさせる形態としてもよい。詳しくは、ユーザは、各実施形態のプログラマブルコントローラ10が実行していたスキャン処理を実現するための制御プログラムをパソコンにて作成する。そして、ユーザは、作成した制御プログラムをプログラマブルコントローラにインストールさせ、インストール後のプログラマブルコントローラを用いてスキャン処理を実行する。この構成によれば、ユーザ設備の違いによって必要な処理内容をプログラマブルコントローラにインストールして使用することができるため、プログラマブルコントローラをユーザ設備に合わせてカスタマイズすることも可能である。
【0068】
次に、各実施形態及び別例から把握できる技術的思想を以下に追記する。
(イ)各種処理を実行する処理部と、外部機器と接続される複数の通信ポートと、ユーザが操作可能な操作部と、を備えたプログラマブルコントローラであって、プログラムの演算処理及び前記外部機器との通信処理が1回の実行単位内で実行されるとともに、前記実行単位の処理は繰り返し実行され、前記処理部は、前記通信処理を開始させてからの経過時間が上限値を超えた場合には、超えた時点からの通信処理を次周期以降の実行単位で実行させ、前記操作部が操作されたことを契機として前記上限時間を変更可能とすることが好ましい。