(57)【要約】【課題】プログラムの変更時等にデータリフレッシュの不要な停止を防止する。【解決手段】  制御ユニット１０は、システムプログラム１２０Ｓ、制御プログラム１２０Ｃ、および、制御用データＤが記憶されたメモリ１０２と、制御用データ１２０Ｄを参照してシステムプログラム１２０Ｓおよび制御プログラム１２０Ｃを実行する演算制御部１０１と、演算制御部１０１をＦＡシステムの機器に接続する入出力ユニット１０３と、を備える。システムプログラム１２０Ｓには、入出力ユニットを介した機器とメモリ１０２との制御用データ１２０Ｄのデータリフレッシュが含まれている。演算制御部１０１は、制御プログラム１２０Ｃの変更を受け付けると、制御プログラム１２０Ｃの実行を停止する。演算制御部１０１は、データリフレッシュを含むシステムプログラム１２０Ｓの一部を実行しながら制御プログラム１２０Ｃの変更を実行し、制御プログラム１２０Ｃの実行を再開する。【選択図】図１
2018055652.tif 000002
【特許請求の範囲】
【請求項１】
システムプログラム、制御プログラム、および、制御用データが記憶されたメモリと、
前記制御用データを参照して前記システムプログラムおよび前記制御プログラムを実行する演算制御部と、
前記演算制御部をＦＡシステムの機器に接続する入出力ユニットと、を備え、
前記システムプログラムには、前記入出力ユニットを介した前記機器と前記メモリの制御用データのデータリフレッシュが含まれており、
前記演算制御部は、
前記制御プログラムの変更を受け付けると、前記制御プログラムの実行を停止し、
前記データリフレッシュを含む前記システムプログラムの一部を実行しながら前記制御プログラムの変更を実行し、
前記制御プログラムの実行を再開する、
制御ユニット。
【請求項２】
前記演算制御部は、
前記データリフレッシュを継続しながらの前記制御プログラムの変更の指示を受けた時に、前記データリフレッシュを含む前記システムプログラムの一部を実行しながらの前記制御プログラムの変更を実行する、
請求項１に記載の制御ユニット。
【請求項３】
制御用データを参照してシステムプログラムおよび制御プログラムを実行する処理と、
前記制御プログラムの変更を受け付ける処理と、
前記制御プログラムの変更を受けて前記制御プログラムの実行を停止する処理と、
前記制御用データのデータリフレッシュを含むシステムプログラムの一部を実行しながら前記制御プログラムの変更を実行する処理と、
前記制御プログラムの実行を再開する処理と、
を有する、データリフレッシュ方法。
【請求項４】
制御用データを参照してシステムプログラムおよび制御プログラムを実行する処理と、
前記制御プログラムの変更を受け付ける処理と、
前記制御プログラムの変更を受けて前記制御プログラムの実行を停止する処理と、
前記制御用データのデータリフレッシュを含むシステムプログラムの一部を実行しながら前記制御プログラムの変更を実行する処理と、
前記制御プログラムの実行を再開する処理と、
を演算制御部に実行させる、データリフレッシュプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＦＡシステムの制御ユニット、および、ＦＡシステムにおけるデータリフレッシュ技術に関する。
【背景技術】
【０００２】
現在、ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）システムが多く活用されている。
【０００３】
ＦＡシステムでは、特許文献１、２に記載のように、制御ユニット（プログラマブルロジックコントローラ）によって、ＦＡシステムの各外部機器の制御を行っている。
【０００４】
この際、制御ユニットは、外部機器等の制御ユニットに接続される機器に対して、制御用のデータの一括変換（データリフレッシュ）を行う。具体的には、制御ユニットは、ＦＡシステムの制御用の一連のプログラムを実行後、データリフレッシュを行い、再度、一連のプログラムを実行する。以下、この処理を繰り返すことによって、ＦＡシステムの制御が実現される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−１４０６５５号公報
【特許文献２】特開２０００−１０５６０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の制御ユニットは、外部からプログラムの変更を受け付けると、データリフレッシュを含む全てのプログラムを一時停止してしまう。このため、例えば、温度制御を行っている場合には、温度制御が一時停止して、温度が変化してしまう。また、サーボモータの制御が一時停止して、サーボモータを用いて形状が制御される物品の不良の発生等が生じてしまう。すなわち、ＦＡシステムの制御が一時的に停止し、各種の不具合が生じてしまう。
【０００７】
したがって、本発明の目的は、プログラムの変更時等にデータリフレッシュの不要な停止を防止できる制御ユニットおよびデータリフレッシュ技術を提供することにある。
【課題を解決するための手段】
【０００８】
この発明の制御ユニットは、システムプログラム、制御プログラム、および、制御用データが記憶されたメモリと、制御用データを参照してシステムプログラムおよび制御プログラムを実行する演算制御部と、演算制御部をＦＡシステムの機器に接続する入出力ユニットと、を備える。システムプログラムには、入出力ユニットを介した機器とメモリとの制御用データのデータリフレッシュが含まれている。演算制御部は、制御プログラムの変更を受け付けると、制御プログラムの実行を停止する。演算制御部は、データリフレッシュを含むシステムプログラムの一部を実行しながら制御プログラムの変更を実行し、制御プログラムの実行を再開する。
【０００９】
この構成では、制御プログラムの変更時に、システムプログラムの一部が実行され、データリフレッシュが継続される。
【発明の効果】
【００１０】
この発明によれば、プログラムの変更時等にデータリフレッシュの不要な停止を防止できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係る制御ユニットを含むＦＡシステムの概略構成を示すブロック図である。
【図２】システムプログラムおよび制御プログラムの構成を示す図である。
【図３】サポートツールの構成を示す図である。
【図４】演算制御部におけるデータリフレッシュ処理のフローチャートである。
【図５】サポートツールにおけるプログラム変更処理のフローチャートである。
【発明を実施するための形態】
【００１２】
本発明の実施形態に係る制御ユニット、および、データリフレッシュ技術について、図を参照して説明する。図１は、本発明の実施形態に係る制御ユニットを含むＦＡシステムの概略構成を示すブロック図である。図２は、システムプログラムおよび制御プログラムの構成を示す図である。図３は、サポートツールの構成を示す図である。
【００１３】
図１に示すように、制御ユニット１０は、ＰＣ（パーソナルコンピュータ）２０、入力機器３１、および、出力機器３２に接続されている。制御ユニット１０、入力機器３１、および出力機器３２は、所定のデータネットワークによって接続されている。これら制御ユニット１０、入力機器３１、出力機器３２によって、ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）システムが実現されている。
【００１４】
入力機器３１は、例えば、スイッチやセンサ等のＦＡシステムにおける所定のデータを取得する機器である。出力機器３２は、リレーコイル、モータ、ランプ等のＦＡシステムにおける所定の動作を実行する機器である。なお、図１では、入力機器３１および出力機器３２は、それぞれ１台しか記載していないが、それぞれ複数台であってもよい。
【００１５】
制御ユニット１０とＰＣ２０とは、一般的なデータ通信用ケーブル等によってローカル接続されている。ＰＣ２０には、サポートツール２０１が組み込まれている。サポートツール２０１を用いて作成されたプログラムや設定情報は、制御ユニット１０によってダウンロードされる。
【００１６】
制御ユニット１０は、演算制御部１０１、メモリ１０２、および、入出力ユニット１０３を備える。
【００１７】
演算制御部１０１は、メモリ１０２および入出力ユニット１０３に接続されている。入出力ユニット１０３は、上述のデータネットワークを介して入力機器３１および出力機器３２に接続されている。
【００１８】
図１に示すように、メモリ１０２には、システムプログラム１２０Ｓ、制御プログラム１２０Ｃ、および、制御用データ１２０Ｄが記憶されている。図２に示すように、システムプログラム１２０Ｓは、スケジューラプログラム１２１、データリフレッシュプログラム１２２、モーション演算プログラム１２３、および、シーケンス命令演算プログラム１２４を有する。制御プログラム１２０Ｃは、シーケンス命令演算プログラム１２４およびユーザプログラム１２５を有する。
【００１９】
制御用データ１２０Ｄは、システムプログラム１２０Ｓと制御プログラム１２０Ｃとを実行する際に参照にするデータである。
【００２０】
スケジューラプログラム１２１は、演算制御部１０１で実行する各種の処理のスケジュールを管理するプログラムである。
【００２１】
データリフレッシュプログラム１２２は、メモリ１０２内の制御用データ１２０Ｄと入出力ユニット１０３とのデータの一括交換、および、メモリ１０２内の制御用データ１２０Ｄと、当該入出力ユニット１０３を介した入力機器３１および出力機器３２とのデータの一括交換を実行するプログラムである。より具体的には、データリフレッシュプログラム１２２は、入出力ユニット１０３を介して入力機器３１からのデータを制御用データ１２０Ｄに反映させる処理と、モーション演算プログラム１２３およびユーザプログラム１２５による演算結果を入出力ユニット１０３を介して出力機器３２に出力する処理とを実行するプログラムである。
【００２２】
モーション演算プログラム１２３は、入力機器３１によって取得したデータに基づいて、モータ（サーボモータ等）等のモーション機器の制御用の演算を行うプログラムである。
【００２３】
シーケンス命令演算プログラム１２４は、システムプログラム１２０Ｓと制御プログラム１２０Ｃとに属しており、サポートツール２０１によって作成されたラダー図に基づくプログラムである。
【００２４】
ユーザプログラム１２５は、サポートツール２０１によって作成された各種設定を実行するプログラムである。
【００２５】
演算制御部１０１は、制御用データ１２０Ｄを参照しながら、システムプログラム１２０Ｓと制御プログラム１２０Ｃとを継続的に実行する。具体的には、演算制御部１０１は、スケジューラプログラム１２１に基づいて、モーション演算プログラム１２３、シーケンス命令演算プログラム１２４およびユーザプログラム１２５を実行する。この際、演算制御部１０１は、制御用データ１２０Ｄを参照する。
【００２６】
演算制御部１０１は、これらモーション演算プログラム１２３、シーケンス命令演算プログラム１２４およびユーザプログラム１２５の実行が完了すると、データリフレッシュプログラム１２２を実行する。具体的には、演算制御部１０１は、データリフレッシュプログラム１２２を用いて、メモリ１０２内の制御用データ１２０Ｄと、入出力ユニット１０３を介した入力機器３１および出力機器３２のデータの一括変換を実行する。
【００２７】
演算制御部１０１は、データリフレッシュが終了すると、データ変換された制御用データ１２０Ｄを参照して、モーション演算プログラム１２３、シーケンス命令演算プログラム１２４およびユーザプログラム１２５を実行する。以下、演算制御部１０１がこの一連の処理を繰り返すことによって、ＦＡシステムの制御が実現される。
【００２８】
図３に示すように、サポートツール２０１は、設定ツール２２１、プログラミングツール２２２、転送ツール２２３、および、判断ツール２２４を有する。設定ツール２２１は、上述の各種設定を含むユーザプログラム１２５を作成するツールである。プログラミングツールは、ラダー図を作成するツールであり、言い換えればシーケンス命令演算プログラム１２４を作成するツールある。転送ツール２２３は、設定ツール２２１で作成されたユーザプログラム１２５、プログラミングツール２２２で作成されたシーケンス命令演算プログラム１２４を、演算制御部１０１に転送するデータ形式に変換し、これらの転送を実行するツールである。判断ツール２２４は、ユーザプログラム１２５およびシーケンス命令演算プログラム１２４を転送する際に、データリフレッシュを停止させる必要があるか否かを判断するツールである。
【００２９】
このような構成において、各種設定やラダー図の変更等に伴って、ユーザプログラム１２５およびシーケンス命令演算プログラム１２４を書き換える場合、演算制御部１０１は、次に示す処理を実行する。図４は、演算制御部におけるデータリフレッシュ処理のフローチャートである。
【００３０】
図４に示すように、演算制御部１０１は、ユーザプログラム１２５およびシーケンス命令演算プログラム１２４の書き換え、すなわち、ダウンロード指示を受け付ける（Ｓ１１）。ダウンロード指示を受け付けていない期間は、演算制御部１０１は、上述のように、制御用データ１２０Ｄを参照にして、データリフレッシュを含むシステムプログラム１２０Ｓと制御プログラム１２０Ｃを用いた制御を継続的に実行する。
【００３１】
演算制御部１０１は、ダウンロード指示を参照し、データリフレッシュを継続しながら制御プログラム１２０Ｃを変更するか否かを検出する（Ｓ１０１）。
【００３２】
演算制御部１０１は、データリフレッシュを継続させる設定であれば（Ｓ１２：ＹＥＳ）、制御プログラム１２０Ｃの実行を停止して、制御プログラム１２０Ｃのアンロードを実行する（Ｓ１３）。この際、演算制御部１０１は、シーケンス命令演算プログラム１２４を除き、データリフレッシュプログラム１２２を含むシステムプログラム１２０Ｓの一部を停止させることなく、継続的に実行する。
【００３３】
次に、演算制御部１０１は、サポートツール２０１からダウンロードした制御プログラム１２０Ｃ（シーケンス命令演算プログラム１２４およびユーザプログラム１２５）をロードする（Ｓ１４）。この際、演算制御部１０１は、シーケンス命令演算プログラム１２４を除き、データリフレッシュプログラム１２２を含むシステムプログラム１２０Ｓの一部を停止させることなく、継続的に実行する。
【００３４】
次に、演算制御部１０１は、制御プログラム１２０Ｃの実行を再開する（Ｓ１８）。
【００３５】
このような処理を実行することによって、制御ユニット１０は、データリフレッシュを一時停止させることなく、制御プログラム１２０Ｃの変更を実行できる。これにより、データリフレッシュの一時停止による上述のようなＦＡシステムにおける不具合の発生を防止できる。
【００３６】
なお、演算制御部１０１は、データリフレッシュを継続させない設定であれば（Ｓ１２：ＮＯ）、データリフレッシュプログラム１２２の実行を停止する（Ｓ１５）。演算制御部１０１は、制御プログラム１２０Ｃのアンロードを実行し（Ｓ１６）、サポートツール２０１からダウンロードした制御プログラム１２０Ｃをロードする（Ｓ１７）。そして、演算制御部１０１は、システムプログラム１２０Ｓおよび制御プログラム１２０Ｃの実行を再開する（Ｓ１８）。
【００３７】
この構成によって、ＦＡシステムの管理者等は、データリフレッシュの停止を伴うシステムプログラム１２０Ｓおよび制御プログラム１２０Ｃの変更を必要とするか否かを選択することができる。
【００３８】
また、サポートツール２０１では、図３の構成を備えることによって、図５に示すように、制御プログラム１２０Ｃの変更時に、データリフレッシュの停止が必要か否かを判断してから転送することも可能である。図５は、サポートツールにおけるプログラム変更処理のフローチャートである。
【００３９】
サポートツール２０１は、プログラミングツール２２２を用いて、プログラマによるラダー図の入力を受け付ける（Ｓ２１）。また、サポートツール２０１は、設定ツール２２１を用いて、プログラムによる各種設定の入力を受け付ける（Ｓ２２）。これらの処理によって、シーケンス命令演算プログラム１２４およびユーザプログラム１２５を有する制御プログラム１２０Ｃは作成される。なお、ステップＳ２１とステップＳ２２の順は、この順に限らず、逆であってもよい。
【００４０】
サポートツール２０１は、判断ツール２２４を用いて、サポートツール２０１で作成、変更したプログラムと、制御ユニット１０のメモリ１０２に記憶されたプログラムとの照合を実行する（Ｓ２３）。
【００４１】
サポートツール２０１は、判断ツール２２４を用いて、照合結果に基づいて、制御プログラム１２０Ｃの変更時にデータリフレッシュの停止が必要か否かを判断する。
【００４２】
サポートツール２０１は、データリフレッシュの停止が必要でないことを検出すると（Ｓ２４：ＹＥＳ）、転送ツール２２３を用いて、制御プログラム１２０Ｃ（シーケンス命令演算プログラム１２４およびユーザプログラム１２５）の転送を開始する（Ｓ２５）。
【００４３】
サポートツール２０１は、データリフレッシュの停止が必要であることを検出すると（Ｓ２４：ＮＯ）、ＰＣ２０のディスプレイ等に警告表示を行う（Ｓ２６）。
【００４４】
サポートツール２０１は、プログラマから転送の操作入力を受け付けると（Ｓ２７：ＹＥＳ）、制御プログラム１２０Ｃの転送を開始する（Ｓ２５）。一方、サポートツール２０１は、プログラマから転送の操作入力を受け付けなければ（Ｓ２７：ＮＯ）、処理を終了する。
【符号の説明】
【００４５】
１０…制御ユニット
２０…ＰＣ
３１…入力機器
３２…出力機器
１０１…演算制御部
１０２…メモリ
１０３…入出力ユニット
１２０Ｃ…制御プログラム
１２０Ｄ…制御用データ
１２０Ｓ…システムプログラム
１２１…スケジューラプログラム
１２２…データリフレッシュプログラム
１２３…モーション演算プログラム
１２４…シーケンス命令演算プログラム
１２５…ユーザプログラム
２０１…サポートツール
２２１…設定ツール
２２２…プログラミングツール
２２３…転送ツール
２２４…判断ツール
【図１】
2018055652.tif 000003
【図２】
2018055652.tif 000004
【図３】
2018055652.tif 000005
【図４】
2018055652.tif 000006
【図５】
2018055652.tif 000007