(57)【要約】【課題】入出力応答時間のゆらぎを低減する。【解決手段】アナログ入力ユニットは、ＣＰＵユニットからのＡ／Ｄ変換の実行指令に応答して、最新のアナログ入力信号をデジタルデータにＡ／Ｄ変換してＣＰＵユニットに転送し、アナログ出力ユニットは、ＣＰＵユニットからのＤ／Ａ変換の実行指令に応答して、ＣＰＵユニットから転送される最新のデジタルデータをアナログ出力信号にＤ／Ａ変換して外部機器に出力するので、ＣＰＵユニットによる処理と、Ａ／Ｄ変換動作およびＤ／Ａ変換動作とを同期させることができ、これによって、ＣＰＵユニットの入出力リフレッシュ処理と、Ａ／Ｄ変換動作あるいはＤ／Ａ変換動作とが、非同期で独立に行われる従来例に比べて、入出力応答時間のゆらぎを低減することができる。【選択図】図３
2010134830.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵユニットと、アナログ入力信号をデジタルデータにＡ／Ｄ変換して前記ＣＰＵユニットに転送するアナログ入力ユニットと、前記ＣＰＵユニットからのデジタルデータをアナログ出力信号にＤ／Ａ変換するアナログ出力ユニットとを備えるプログラマブルコントローラであって、
前記ＣＰＵユニットは、ユーザプログラムに含まれるＡ／Ｄ変換の専用命令に基づいて、前記アナログ入力ユニットに対してＡ／Ｄ変換の実行指令を出力し、デジタルデータを当該ＣＰＵユニットに取り込む一方、前記ユーザプログラムに含まれるＤ／Ａ変換の専用命令に基づいて、前記アナログ出力ユニットに対してデジタルデータとＤ／Ａ変換の実行指令を出力し、
前記アナログ入力ニユットは、前記Ａ／Ｄ変換の実行指令に応答して、前記アナログ入力信号をＡ／Ｄ変換し、
前記アナログ出力ユニットは、前記Ｄ／Ａ変換の実行指令に応答して、前記デジタルデータをＤ／Ａ変換することを特徴とするプログラマブルコントローラ。
【請求項２】
前記アナログ入力ユニットは、前記Ａ／Ｄ変換の実行指令が与えられる迄は、Ａ／Ｄ変換を行うことなく待機し、
前記アナログ出力ユニットは、前記Ｄ／Ａ変換の実行指令が与えられる迄は、Ｄ／Ａ変換を行うことなく待機する請求項１に記載のプログラマブルコントローラ。
【請求項３】
アナログ入力信号をデジタルデータにＡ／Ｄ変換するアナログ入力ユニットおよびデジタルデータをアナログ出力信号にＤ／Ａ変換するアナログ出力ユニットが接続されるＣＰＵユニットであって、
ユーザプログラムに含まれるＡ／Ｄ変換の専用命令に基づいて、前記アナログ入力ユニットに対してＡ／Ｄ変換の実行指令を出力し、デジタルデータを当該ＣＰＵユニットに取り込む一方、前記ユーザプログラムに含まれるＤ／Ａ変換の専用命令に基づいて、前記アナログ出力ユニットに対してデジタルデータとＤ／Ａ変換の実行指令を出力することを特徴とするＣＰＵユニット。
【請求項４】
アナログ入力信号をデジタルデータにＡ／Ｄ変換してＣＰＵユニットに転送するアナログ入力ユニットであって、
ユーザプログラムに含まれるＡ／Ｄ変換の専用命令に基づいて、Ａ／Ｄ変換の実行指令を出力する前記ＣＰＵユニットからの前記実行指令に応答して、アナログ入力信号をデジタルデータにＡ／Ｄ変換することを特徴とするアナログ入力ユニット。
【請求項５】
ＣＰＵユニットからのデジタルデータをアナログ出力信号にＤ／Ａ変換するアナログ出力ユニットであって、
ユーザプログラムに含まれるＤ／Ａ変換の専用命令に基づいて、Ｄ／Ａ変換の実行指令を出力する前記ＣＰＵユニットからの前記実行指令に応答して、前記ＣＰＵユニットからのデジタルデータをアナログ出力信号にＤ／Ａ変換することを特徴とするアナログ出力ユニット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブルコントローラ、それを構成するＣＰＵユニット、アナログ入力ユニットおよびアナログ出力ユニットに関する。
【背景技術】
【０００２】
プログラマブルコントローラ（ＰＬＣ）は、制御プログラムに基づいて演算実行するＣＰＵユニット、センサなどの外部機器からのアナログ入力信号を取り込んでデジタルデータにＡ／Ｄ変換するアナログ入力ユニット、ＣＰＵユニットからのデジタルデータをアナログ出力信号にＤ／Ａ変換してアクチュエータなどの外部機器に対して出力するアナログ出力ユニット、ネットワークに接続された他の装置とデータの送受を行なう通信ユニット、各ユニットに電源を供給する電源ユニット、などの複数のユニットを組み合わせることにより構成されている。
【０００３】
かかるプログラマブルコントローラでは、ユーザが設計したユーザプログラムは、ＣＰＵユニット内のメモリ領域（以下「Ｉ／Ｏメモリ」ともいう）のデータを読み書きしながら、命令を先頭から1つずつ順番に最後まで実行することによって、処理される。
【０００４】
一方、アナログ入力ユニットやアナログ出力ユニットに接続されたセンサやアクチュエータなどのＣＰＵユニット外のデータは、或るタイミングで、ＣＰＵユニット内のＩ／Ｏメモリのデータと一括交換される。このＣＰＵユニット外のアナログ入力ユニットやアナログ出力ユニットの外部データと、ＣＰＵユニット内のＩ／Ｏメモリのデータの一括交換の処理を、入出力リフレッシュ処理（以下「Ｉ／Ｏリフレッシュ処理」ともいう）という。
【０００５】
この入出力リフレッシュ処理は、例えば、命令をすべて実行した直後に実行される。すなわち、ＣＰＵユニットでは、先ず、バッテリ異常チェック等の共通処理を行い、続いて、ユーザプログラムの実行等の演算処理を行なう。その後、センサなどの外部機器からのアナログ入力信号を取り込んだアナログ入力ユニットからのデジタルデータをＩ／Ｏメモリに書き込んだり、ＣＰＵユニットの演算結果に基づいて更新されたＩ／Ｏメモリのデジタルデータを読み出してアナログ出力ユニットへ転送する入出力リフレッシュ処理を行い、続いて、通信処理等の周辺サービス処理を実行する。その後、共通処理から周辺サービス処理までの上記一連の処理をサイクリック処理として順次繰り返し実行する（例えば、特許文献１参照）。なお、上記共通処理から上記周辺サービス処理までの時間を、一般にＣＰＵユニットのサイクルタイムという。
【特許文献１】特開２００２−３５８１０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
従来では、ＣＰＵユニットと、アナログ入力ユニットあるいはアナログ出力ユニットとは、独立に非同期で動作している。すなわち、アナログ入力ユニットのＡ／Ｄ変換動作あるいはアナログ出力ユニットのＤ／Ａ変換動作は、ＣＰＵユニットによる入出力リフレッシュ処理とは、全く独立して行なわれている。
【０００７】
ここで、プログラマブルコントローラにおける入出力応答時間とは、アナログ入力ユニットに接続されているセンサなどの外部機器からのアナログ入力信号が変化してから、その変化した入力データをＣＰＵユニットが認識し、ユーザプログラムを演算実行した上、演算結果をアナログ出力ユニットの出力接点に出力するまでの時間をいうが、上述のように、アナログ入力ユニットのＡ／Ｄ変換動作あるいはアナログ出力ユニットのＤ／Ａ変換動作は、ＣＰＵユニットによる入出力リフレッシュの処理とは、全く独立して行なわれている。
【０００８】
このため、ＣＰＵユニットの入出力リフレッシュ処理における入力リフレッシュの直前に、アナログ入力ユニットがアナログ入力信号を取り込んでＡ／Ｄ変換した場合と、前記入力リフレッシュの直後に、アナログ入力信号を取り込んでＡ／Ｄ変換した場合とでは、入出力応答時間が異なることになり、同様に、ＣＰＵユニットの入出力リフレッシュ処理における出力リフレッシュの直前に、アナログ出力ユニットがデジタルデータをＤ／Ａ変換した場合と、前記出力リフレッシュの直後に、デジタルデータをＤ／Ａ変換した場合とでは、入出力応答時間が異なることになる。
【０００９】
このように、アナログ入力ユニットのＡ／Ｄ変換動作およびアナログ出力ユニットのＤ／Ａ変換動作が、ＣＰＵユニットの入出力リフレッシュ処理とは、非同期に独立して行なわれているために、入力リフレッシュあるいは出力リフレッシュのタイミングによって、入出力応答時間が変動する、すなわち、入出力応答時間にゆらぎを生じることになる。
【００１０】
本発明は、上述のような点に鑑みてなされたものであって、入出力応答時間のゆらぎを低減することを目的とする。
【課題を解決するための手段】
【００１１】
（１）本発明のプログラマブルコントローラは、ＣＰＵユニットと、アナログ入力信号をデジタルデータにＡ／Ｄ変換して前記ＣＰＵユニットに転送するアナログ入力ユニットと、前記ＣＰＵユニットからのデジタルデータをアナログ出力信号にＤ／Ａ変換するアナログ出力ユニットとを備えるプログラマブルコントローラであって、前記ＣＰＵユニットは、ユーザプログラムに含まれるＡ／Ｄ変換の専用命令に基づいて、前記アナログ入力ユニットに対してＡ／Ｄ変換の実行指令を出力し、デジタルデータを当該ＣＰＵユニットに取り込む一方、前記ユーザプログラムに含まれるＤ／Ａ変換の専用命令に基づいて、前記アナログ出力ユニットに対してデジタルデータとＤ／Ａ変換の実行指令を出力し、前記アナログ入力ニユットは、前記Ａ／Ｄ変換の実行指令に応答して、前記アナログ入力信号をＡ／Ｄ変換し、前記アナログ出力ユニットは、前記Ｄ／Ａ変換の実行指令に応答して、前記デジタルデータをＤ／Ａ変換する。
【００１２】
ＣＰＵユニットには、アナログ入力ユニットおよびアナログ出力ユニットの複数台が接続されてもよく、アナログ入力ユニットの入力点数およびアナログ出力ユニットの出力点数は、任意である。
【００１３】
また、ＣＰＵユニットには、本発明に係るアナログ入力ユニットおよび本発明に係るアナログ出力ユニット以外の従来のアナログ入力ユニットあるいはアナログ出力ユニットが接続されてもよい。
【００１４】
専用命令は、Ａ／Ｄ変換を実行すべきアナログ入力ユニット、あるいは、Ｄ／Ａ変換を実行すべきアナログ出力ユニットを指定するためのユニットの番号などの指定データを含むのが好ましく、更に、アナログ入力ユニットの複数の入力の内のいずれの入力であるかを指定する指定データ、あるいは、アナログ出力ユニットの複数の出力のいずれの出力であるかを指定する指定データを含むのが好ましい。
【００１５】
ＣＰＵユニットは、専用命令に含まれる指定データに応じて、対応するアナログ入力ユニットあるいはアナログ出力ユニットに対して、Ａ／Ｄ変換あるいはＤ／Ａ変換の実行指令を出力するのが好ましい。
【００１６】
アナログ入力ユニットに、Ｄ／Ａ変換を含むアナログ出力機能を付加し、あるいは、アナログ出力ユニットに、Ａ／Ｄ変換を含むアナログ入力機能を付加し、アナログ入出力ユニットとして構成してもよい。
【００１７】
本発明のプログラマブルコントローラによると、アナログ入力ユニットは、ＣＰＵユニットからのＡ／Ｄ変換の実行指令に応答して、アナログ入力信号をデジタルデータにＡ／Ｄ変換してＣＰＵユニットに転送し、また、アナログ出力ユニットは、ＣＰＵユニットからのＤ／Ａ変換の実行指令に応答して、ＣＰＵユニットから転送されるデジタルデータをアナログ出力信号にＤ／Ａ変換して外部機器に出力するので、ＣＰＵユニットによる専用命令の実行処理と、Ａ／Ｄ変換動作およびＤ／Ａ変換動作とを同期させることができ、ＣＰＵユニットからの実行指令によって、最新のアナログ入力信号をＡ／Ｄ変換してＣＰＵユニットに転送できる一方、ＣＰＵユニットからの最新のデジタルデータをＤ／Ａ変換して外部機器に出力することができ、これによって、ＣＰＵユニットの入出力リフレッシュ処理と、Ａ／Ｄ変換動作あるいはＤ／Ａ変換動作とが、非同期で独立に行われていた従来例に比べて、入出力応答時間のゆらぎを低減することができる。
【００１８】
（２）本発明のプログラマブルコントローラの一つの実施形態では、前記アナログ入力ユニットは、前記Ａ／Ｄ変換の実行指令が与えられる迄は、Ａ／Ｄ変換を行うことなく待機し、前記アナログ出力ユニットは、前記Ｄ／Ａ変換の実行指令が与えられる迄は、Ｄ／Ａ変換を行うことなく待機する。
【００１９】
この実施形態によると、本発明に係るＣＰＵユニットが、従来のアナログ入力ユニットや従来のアナログ出力ユニットに対して、従来と同様の入出力リフレッシュ処理を行なっても、本発明に係るアナログ入力ユニットあるいは本発明に係るアナログ出力ユニットは、待機状態のままであり、専用命令に基づく、Ａ／Ｄ変換あるいはＤ／Ａ変換の実行指令が与えられたときに、Ａ／Ｄ変換あるいはＤ／Ａ変換をそれぞれ行って入出力リフレッシュ処理を行なうことができる。
【００２０】
（３）本発明のＣＰＵユニットは、アナログ入力信号をデジタルデータにＡ／Ｄ変換するアナログ入力ユニットおよびデジタルデータをアナログ出力信号にＤ／Ａ変換するアナログ出力ユニットが接続されるＣＰＵユニットであって、ユーザプログラムに含まれるＡ／Ｄ変換の専用命令に基づいて、前記アナログ入力ユニットに対してＡ／Ｄ変換の実行指令を出力し、デジタルデータを当該ＣＰＵユニットに取り込む一方、前記ユーザプログラムに含まれるＤ／Ａ変換の専用命令に基づいて、前記アナログ出力ユニットに対してデジタルデータとＤ／Ａ変換の実行指令を出力する。
【００２１】
本発明のＣＰＵユニットによると、ユーザプログラムに含まれるＡ／Ｄ変換あるいはＤ／Ａ変換の専用命令を判別して、アナログ入力ユニットあるいはアナログ出力ユニットに対して、Ａ／Ｄ変換あるいはＤ／Ａ変換の実行指令を出力するので、ＣＰＵユニットによるユーザプログラムに含まれる専用命令の処理と、アナログ入力ユニットのＡ／Ｄ変換動作あるいはアナログ出力ユニットによるＤ／Ａ変換動作を同期させて、最新のアナログ入力信号をＡ／Ｄ変換あるいは最新のデジタルデータをＤ／Ａ変換することが可能となり、これによって、ＣＰＵユニットによる入出力リフレッシュ処理と、アナログ入力ユニットのＡ／Ｄ変換動作あるいはアナログ出力ユニットのＤ／Ａ変換動作とが非同期で独立に行われていた従来例に比べて、入出力応答時間のゆらぎを低減することができる。
【００２２】
（４）本発明のアナログ入力ユニットは、アナログ入力信号をデジタルデータにＡ／Ｄ変換してＣＰＵユニットに転送するアナログ入力ユニットであって、ユーザプログラムに含まれるＡ／Ｄ変換の専用命令に基づいて、Ａ／Ｄ変換の実行指令を出力する前記ＣＰＵユニットからの前記実行指令に応答して、アナログ入力信号をデジタルデータにＡ／Ｄ変換するものである。
【００２３】
本発明のアナログ入力ユニットによると、ＣＰＵユニットからのＡ／Ｄ変換の実行指令に応答して、最新のアナログ入力信号をデジタルデータにＡ／Ｄ変換してＣＰＵユニットに転送するので、ＣＰＵユニットによる入力リフレッシュとアナログ入力ユニットのＡ／Ｄ変換動作とが非同期で独立に行われていた従来例に比べて、入出力応答時間のゆらぎを低減することができる。
【００２４】
（５）本発明のアナログ出力ユニットは、ＣＰＵユニットからのデジタルデータをアナログ出力信号にＤ／Ａ変換するアナログ出力ユニットであって、ユーザプログラムに含まれるＤ／Ａ変換の専用命令に基づいて、Ｄ／Ａ変換の実行指令を出力する前記ＣＰＵユニットからの前記実行指令に応答して、前記ＣＰＵユニットからのデジタルデータをアナログ出力信号にＤ／Ａ変換するものである。
【００２５】
本発明のアナログ出力ユニットによると、ＣＰＵユニットからのＤ／Ａ変換の実行指令に応答して、ＣＰＵユニットからの最新のデジタルデータをアナログ出力信号にＤ／Ａ変換して外部機器に出力するので、ＣＰＵユニットによる出力リフレッシュとアナログ出力ユニットのＤ／Ａ変換動作とが非同期で独立に行われていた従来例に比べて、入出力応答時間のゆらぎを低減することができる。
【発明の効果】
【００２６】
本発明によると、アナログ入力ユニットは、ＣＰＵユニットからのＡ／Ｄ変換の実行指令に応答して、アナログ入力信号をデジタルデータに変換してＣＰＵユニットに転送し、また、アナログ出力ユニットは、ＣＰＵユニットからのＤ／Ａ変換の実行指令に応答して、ＣＰＵユニットから転送されるデジタルデータをアナログ出力信号に変換して外部機器に出力するので、ＣＰＵユニットによる専用命令の実行処理と、Ａ／Ｄ変換動作およびＤ／Ａ変換動作とを同期して行うことができ、ＣＰＵユニットからの実行指令によって、最新のアナログ入力信号をＡ／Ｄ変換してＣＰＵユニットに転送できる一方、ＣＰＵユニットからの最新のデジタルデータをＤ／Ａ変換することができ、これによって、ＣＰＵユニットの入出力のリフレッシュ処理と、Ａ／Ｄ変換動作あるいはＤ／Ａ変換動作がと非同期で独立に行われていた従来例に比べて、入出力応答時間のゆらぎを低減することができる。
【発明を実施するための最良の形態】
【００２７】
以下、図面によって、本発明の実施の形態について、詳細に説明する。
【００２８】
図１は、本発明の実施形態に係るプログラマブルコントローラの構成を示す図であり、例えば、テープの張力を一定に制御して巻き取る装置などに適用することができる。
【００２９】
この実施形態のプログラマブルコントローラ１は、ＣＰＵユニット２と、アナログ入力ユニット３と、アナログ出力ユニット４とをバスで接続して構成されており、更に、図示しない通信ユニットや電源ユニットなどが接続されている。
【００３０】
本発明の実施形態に係るＣＰＵユニット２は、メモリに格納されたユーザプログラム５の実行等を行う図示しないＭＰＵと、プログラム命令実行の際の入出力データを記憶するＩ／Ｏメモリ（ワークメモリ）６とを備えるとともに、ＭＰＵを動作させるためのシステムプログラムが格納された図示しないシステムプログラムメモリやバスインタフェース回路などを備えている。
【００３１】
本発明の実施形態に係るアナログ入力ユニット３は、図示しないセンサなどの外部機器からのアナログ入力信号をデジタル信号に変換するＡ／Ｄ変換器７を備えるとともに、図示しないＭＰＵやバスインタフェース回路などを備えており、後述のように、ＣＰＵユニット２からの変換実行指令に応答して、外部機器からのアナログ入力信号をデジタル信号に変換してＣＰＵユニット２に転送する。
【００３２】
本発明の実施形態に係るアナログ出力ユニット４は、ＣＰＵユニット２からのデジタル信号をアナログ信号に変換するＤ／Ａ変換器８を備えるとともに、図示しないＭＰＵやバスインタフェース回路などを備えており、後述のように、ＣＰＵユニット２からの変換実行指令に応答して、ＣＰＵユニット２からのデジタル信号をアナログ信号に変換してアクチュエータなどの外部機器に出力する。
【００３３】
ＣＰＵユニット２には、本発明の実施形態に係るアナログ入力ユニット３およびアナログ出力ユニット４以外に、図示しない従来のアナログ入力ユニットおよびアナログ出力ユニットもバス接続されている。
【００３４】
この実施形態のＣＰＵユニット２は、図２に示すように、電源ＯＮによってメモリの初期化や接続されているユニットの認識などの電源ＯＮ時の処理を行ない（ステップｎ１００）、次にバッテリ異常チェック等の共通処理（診断処理）を行い（ステップｎ１０１）、続いて、ユーザプログラムの実行等の演算処理を行なう（ステップｎ１０２）。その後、従来のアナログ入力ユニットおよび従来のアナログ出力ユニットとの間で、入出力リフレッシュ処理を行う（ステップｎ１０３）。続いて、通信処理等の周辺サービス処理を実行する（ステップｎ１０４）。その後、ステップｎ１０１の共通処理からステップｎ１０４の周辺サービス処理までの一連の処理をサイクリック処理として順次繰り返し実行する。以上は、従来のＣＰＵユニットの処理と同様である。
【００３５】
この実施形態のＣＰＵユニット２は、図１に示すように、ユーザプログラム５に含まれるアナログ入力ユニット３に対するＡ／Ｄ変換実行の専用命令５ａを判別し、Ａ／Ｄ変換の実行指令をアナログ入力ユニット３に対して出力し、アナログ入力ユニット３のＡ／Ｄ変換器７でＡ／Ｄ変換されて転送されたデジタルの入力値を、Ｉ／Ｏメモリ６に書き込で入力リフレッシュ処理を行なう。
【００３６】
その後、ＣＰＵユニット２は、ユーザプログラムを引き続き実行し、ユーザプログラム５に含まれるアナログ出力ユニット４に対するＤ／Ａ変換実行の専用命令５ｂを判別し、アナログ出力ユニット４に対してＤ／Ａ変換の実行指令を出力するとともに、Ｉ／Ｏメモリ６の出力デジタル値を転送し、アナログ出力ユニット４は、ＣＰＵユニット２からのデジタル値をＤ／Ａ変換器８でＤ／Ａ変換して外部機器に出力する。
【００３７】
Ａ／Ｄ変換実行の専用命令には、Ａ／Ｄ変換を実行すべきアナログ入力ユニット３を指定するための号機番号および入力接点の番号が含まれ、Ｄ／Ａ変換実行の専用命令には、Ｄ／Ａ変換を実行すべきアナログ出力ユニット４を指定するための号機番号および出力接点の番号が含まれる。
【００３８】
図３は、以上の処理動作を説明するためのタイムチャートであり、同図（ａ）はＣＰＵユニット２を、同図（ｂ）はアナログ入力ユニット３を、同図（ｃ）はアナログ出力ユニット４の処理をそれぞれ示している。
【００３９】
ＣＰＵユニット２は、同図（ａ）に示すように、共通処理、ユーザプログラムの実行処理、従来のアナログ入力ユニットおよび従来のアナログ出力ユニットに対するＩ／Ｏリフレッシュ処理、および、周辺サービス処理を、サイクリックに実行する。
【００４０】
アナログ入力ユニット３は、同図（ｂ）に示すように、ＣＰＵユニット２からＡ／Ｄ変換の実行指令が与えられる迄は、実行指令待ちの待機状態となっている。
【００４１】
アナログ出力ユニット４も、同図（ｃ）に示すように、ＣＰＵユニット２からのＤ／Ａ変換の実行指令が与えられる迄は、実行指令待ちの待機状態となっている。
【００４２】
ＣＰＵユニット２は、ユーザプログラムの実行中に、ユーザプログラムに含まれるアナログ入力ユニット３に対するＡ／Ｄ変換実行の専用命令を判別すると、アナログ入力ユニット３に対して、Ａ／Ｄ変換の実行指令を与える。
【００４３】
アナログ入力ユニット３は、このＡ／Ｄ変換の実行指令に応答して、同図（ｂ）に示すように、センサなどの外部機器からの最新のアナログ入力信号を、Ａ／Ｄ変換器７でデジタルデータにＡ／Ｄ変換し、変換結果をＣＰＵユニット２に対して転送し、再び、待機状態となる。
【００４４】
ＣＰＵユニット２は、最新のアナログ入力信号の変換結果のデジタルデータを、Ｉ／Ｏメモリ６に書き込み、ユーザプログラムの実行を継続し、ユーザプログラムに含まれるアナログ出力ユニット４に対するＤ／Ａ変換の専用命令を判別すると、アナログ出力ユニット４に対して、デジタルデータのＤ／Ａ変換実行指令を与える。
【００４５】
アナログ出力ユニット４は、このＤ／Ａ変換の実行指令に応答して、同図（ｃ）に示すように、ＣＰＵユニット２からの最新のデジタルデータをＤ／Ａ変換器８でＤ／Ａ変換して外部機器に出力するとともに、ＣＰＵユニット２に対して実行完了通知を与え、再び、待機状態となる。
【００４６】
図４は、以上の動作説明に供するフローチャートであり、同図（ａ）はＣＰＵユニット２側の処理を、同図（ｂ）はアナログ入力ユニット３側の処理を、同図（ｃ）はアナログ出力ユニット４側の処理を示している。
【００４７】
ＣＰＵユニット２がユーザプログラムの実行を開始し（ステップｎ２００）、アナログ入力ユニット３用のＡ／Ｄ変換の専用命令か否かを判断し（ステップｎ２０１）、専用命令であるときには、アナログ入力ユニット３に対してＡ／Ｄ変換実行指令を与える（ステップｎ２０２）。
【００４８】
アナログ入力ユニット３は、Ａ／Ｄ変換実行指令があるか否かを判断し（ステップｎ２０３）、Ａ／Ｄ変換実行指令があったときには、最新のアナログ入力信号のＡ／Ｄ変換を実行し（ステップ２０４）、Ａ／Ｄ変換結果を、ＣＰＵユニット２に与える。
【００４９】
ＣＰＵユニット２は、アナログ入力ユニット３からのＡ／Ｄ変換結果を受けてユーザプログラムを実行し、アナログ出力ユニット４用のＤ／Ａ変換の専用命令か否かを判断し（ステップｎ２０５）、Ｄ／Ａ変換の専用命令であるときには、アナログ出力ユニット４に対してＤ／Ａ変換の実行指令を与える（ステップｎ２０６）。
【００５０】
アナログ出力ユニット４は、Ｄ／Ａ変換実行指令があるか否か判断し（ステップｎ２０７）、Ｄ／Ａ変換実行指令があったときには、ＣＰＵユニット２からの最新のデジタルデータのＤ／Ａ変換を実行し（ステップｎ２０８）、Ｄ／Ａ変換結果を外部機器に出力する一方、ＣＰＵユニット２に実行完了通知を与え、ＣＰＵユニット２は、ユーザプログラムを実行する。
【００５１】
このように、アナログ入力ユニット３のＡ／Ｄ変換動作およびアナログ出力ユニット４のＤ／Ａ変換動作を、ＣＰＵユニット２によるユーザプログラムに含まれる専用命令の実行処理と同期させているので、最新のアナログ入力信号をＡ／Ｄ変換してＣＰＵユニット２に転送できるとともに、ＣＰＵユニット２からの最新のデジタルデータをＤ／Ａ変換して外部機器に出力できることになる。
【００５２】
これによって、ＣＰＵユニットによる入出力リフレッシュ処理と、アナログ入力ユニットのＡ／Ｄ変換動作あるいはアナログ出力ユニットのＤ／Ａ変換動作を非同期で独立して行なう従来例ように、入出力リフレッシュのタイミングによって、入出力応答時間が変動するといったことがなく、従来例に比べて、入出力応答時間のゆらぎを低減することができる。
【００５３】
なお、ユーザプログラムに、Ａ／Ｄ変換実行の専用命令およびＤ／Ａ変換実行の専用命令が含まれていない場合には、ＣＰＵユニット２、アナログ入力ユニット３およびアナログ出力ユニット４は、いずれも従来と同様に、入出力リフレッシュ処理を行えばよい。したがって、従来と同様の動作モードと、上述のようにＡ／Ｄ変換実行の専用命令およびＤ／Ａ変換実行の専用命令がユーザプログラムに含まれている場合に対応する変換モードとを、ユーザが設定によって切換えできるようにしてもよい。すなわち、ユーザプログラムに、Ａ／Ｄ変換実行の専用命令およびＤ／Ａ変換実行の専用命令が含まれていない場合には、従来と同様の動作モードを選択して、従来と同様の入出力リフレッシュ処理を行ない、ユーザプログラムに、Ａ／Ｄ変換実行の専用命令およびＤ／Ａ変換実行の専用命令が含まれている場合には、変換モードを選択して、上述のように専用命令に応じて入出力リフレッシュ処理を行なえばよい。
【産業上の利用可能性】
【００５４】
本発明は、プログラマブルコントローラとして有用である。
【図面の簡単な説明】
【００５５】
【図１】本発明の実施形態に係るプログラマブルコントローラの概略構成図である。
【図２】図１のＣＰＵユニットの処理を示すフローチャートである。
【図３】図１のプログラマブルコントローラの動作説明に供するタイムチャートである。
【図４】図１のプログラマブルコントローラの動作説明に供するフローチャートである。
【符号の説明】
【００５６】
１                      プログラマブルコントローラ
２                      ＣＰＵユニット
３                      アナログ入力ユニット
４                      アナログ出力ユニット
７                      Ａ／Ｄ変換器
８                      Ｄ／Ａ変換器
【図１】
2010134830.tif 000003
【図２】
2010134830.tif 000004
【図３】
2010134830.tif 000005
【図４】
2010134830.tif 000006