IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ エルエス産電株式会社の特許一覧

特許7457730PLCシステム、及びこれの入出力リフレッシュ周期の制御方法
<>
  • 特許-PLCシステム、及びこれの入出力リフレッシュ周期の制御方法 図1
  • 特許-PLCシステム、及びこれの入出力リフレッシュ周期の制御方法 図2
  • 特許-PLCシステム、及びこれの入出力リフレッシュ周期の制御方法 図3
  • 特許-PLCシステム、及びこれの入出力リフレッシュ周期の制御方法 図4
  • 特許-PLCシステム、及びこれの入出力リフレッシュ周期の制御方法 図5
  • 特許-PLCシステム、及びこれの入出力リフレッシュ周期の制御方法 図6
  • 特許-PLCシステム、及びこれの入出力リフレッシュ周期の制御方法 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-19
(45)【発行日】2024-03-28
(54)【発明の名称】PLCシステム、及びこれの入出力リフレッシュ周期の制御方法
(51)【国際特許分類】
   G05B 19/05 20060101AFI20240321BHJP
【FI】
G05B19/05 A
【請求項の数】 10
(21)【出願番号】P 2021560921
(86)(22)【出願日】2020-03-27
(65)【公表番号】
(43)【公表日】2022-06-20
(86)【国際出願番号】 KR2020004276
(87)【国際公開番号】W WO2020213853
(87)【国際公開日】2020-10-22
【審査請求日】2021-10-13
(31)【優先権主張番号】10-2019-0043672
(32)【優先日】2019-04-15
(33)【優先権主張国・地域又は機関】KR
(73)【特許権者】
【識別番号】593121379
【氏名又は名称】エルエス、エレクトリック、カンパニー、リミテッド
【氏名又は名称原語表記】LS ELECTRIC CO., LTD.
【住所又は居所原語表記】127,LS-ro,Dongan-gu,Anyang-si,Gyeonggi-do,Republic of Korea
(74)【復代理人】
【識別番号】100143823
【弁理士】
【氏名又は名称】市川 英彦
(74)【代理人】
【識別番号】100232275
【弁理士】
【氏名又は名称】和田 宣喜
(72)【発明者】
【氏名】パク、チャン-ウ
【審査官】西井 香織
(56)【参考文献】
【文献】韓国公開特許第10-2016-0141938(KR,A)
【文献】特開2011-215821(JP,A)
【文献】特開平09-265306(JP,A)
【文献】特開2007-257077(JP,A)
【文献】韓国公開特許第10-2010-0125752(KR,A)
【文献】特開2001-117608(JP,A)
【文献】特開2011-231698(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/05
(57)【特許請求の範囲】
【請求項1】
入出力リフレッシュ周期を制御するPLCシステムにおいて、
プログラム支援部を介して入出力リフレッシュ実行命令が追加された状態で、コンパイルされた統合駆動プログラムを貯蔵するメモリ;及び、
前記統合駆動プログラムに含まれた複数の制御プログラムを順次演算処理して、複数の増設モジュール駆動を制御する中央処理ユニットを含み、
或る1つのサイクルにおいて、前記中央処理ユニットは、
前記複数の制御プログラムのうち少なくとも1つの制御プログラムに対する演算処理が完了されると、前記出力リフレッシュ実行命令に従って、前記演算処理が完了された少なくともつの制御プログラムに対する処理結果データを出力し、
前記入出力リフレッシュ実行命令は、複数の制御プログラムごとに設定され、
別の1つのサイクルの後のさらに別の1つのサイクルにおいて、前記中央処理ユニットは、
前記複数の制御プログラムのうち少なくとも1つの制御プログラムが完了したときに前記入出力リフレッシュ実行命令が設定されていることを確認し、
前記入出力リフレッシュ実行命令が設定されている場合、前記別の1つのサイクルにおける前記少なくとも1つの制御プログラムの実行による第1の処理結果データと前記さらに別の1つのサイクルにおける前記少なくとも1つの制御プログラムの実行による第2の処理結果データとを比較し、
前記第1の処理結果データと前記第2の処理結果データとが異なる場合、入出力リフレッシュを実行し、前記第1の処理結果データと前記第2の処理結果データとが等しい場合、前記入出力リフレッシュを実行せずに次の制御プログラムを実行し
前記中央処理ユニットは、
番目のサイクルで前記統合駆動プログラムを実行した後に、繰り返して次のサイクルで統合駆動プログラムを実行することになると、前記増設モジュールの入出力タイプを確認し、前記入出力タイプに応じて入力リフレッシュ又は出力リフレッシュを行い、前記入力リフレッシュ又は前記出力リフレッシュを行うとき、前サイクルの統合駆動プログラムの実行による処理結果データと現サイクルで実行された統合駆動プログラムの処理結果データとを順次比較することによって、前サイクルの入出力リフレッシュ動作の過程に比べて、現サイクルでの入出力リフレッシュ動作の過程を減らし、入出力リフレッシュ動作を実行する、
PLCシステム。
【請求項2】
前記プログラム支援部は、
使用者が複数の入出力リフレッシュ実行命令が含まれた前記統合駆動プログラムを設計して入力し、前記統合駆動プログラムが繰り返して実行されるように設定することのできるPADT(Programming and Debugging Tool)表示プログラムを支援するコード入力プログラム支援部;並びに
前記複数の入出力リフレッシュ実行命令が含まれた統合駆動プログラムをコンパイルして記メモリ及び前記中央処理ユニットに提供するPADTコンパイラを含む、
請求項1記載のPLCシステム。
【請求項3】
前記統合駆動プログラムは、
開始及び初期化命令語、入力リフレッシュ命令、複数の制御プログラム、並びに、出力リフレッシュ命令順次配置されるように構成され、
前記入出力リフレッシュ実行命令が、前記複数の制御プログラムのうち少なくともつずつの制御プログラムの間に配置されるようにさらに構成された、
請求項1記載のPLCシステム。
【請求項4】
前記中央処理ユニットは、
前記複数の制御プログラムを順次演算処理する過程で、
少なくともつの制御プログラムを実行及び演算処理した後に、前記追加された入出力リフレッシュ実行命令がリードされると、前記処理結果データを出力する出力リフレッシュ動作と入力リフレッシュ動作とを順に行い、
次の制御プログラムがリードされると、前記次の制御プログラムを行う、
請求項3記載のPLCシステム。
【請求項5】
前記各増設モジュールの動作状態情報を前記中央処理ユニットに転送する入力ポート;及び、
前記複数の制御プログラム別の前記処理結果データを前記各増設モジュールに転送する出力ポートを含む、
請求項1記載のPLCシステム。
【請求項6】
プログラム支援部を介して入出力リフレッシュ実行命令が追加された状態で、コンパイルされた統合駆動プログラムをメモリに貯蔵するステップ;及び、
中央処理ユニットで前記統合駆動プログラムに含まれた複数の制御プログラムを順次演算処理して、複数の増設モジュールの駆動を制御するステップを含み、
前記複数の制御プログラムを順次演算処理するステップは、
或る1つのサイクルにおいて、前記複数の制御プログラムのうち少なくともつの制御プログラムに対する演算処理が完了されると、前記出力リフレッシュ実行命令に従って、前記演算処理が完了された少なくともつの制御プログラムに対する処理結果データを出力するステップを含み、
前記入出力リフレッシュ実行命令は、複数の制御プログラムごとに設定され、
別の1つのサイクルの後のさらに別の1つのサイクルにおいて、前記複数の制御プログラムのうち少なくとも1つの制御プログラムが完了したときに前記入出力リフレッシュ実行命令が設定されていることを確認するステップ
前記入出力リフレッシュ実行命令が設定されている場合、前記別の1つのサイクルにおける前記少なくとも1つの制御プログラムの実行による第1の処理結果データと前記さらに別の1つのサイクルにおける前記少なくとも1つの制御プログラムの実行による第2の処理結果データとを比較するステップと、
前記第1の処理結果データと前記第2の処理結果データとが異なる場合、入出力リフレッシュを実行し、前記第1の処理結果データと前記第2の処理結果データとが等しい場合、前記入出力リフレッシュを実行せずに次の制御プログラムを実行するステップ
番目のサイクルで前記統合駆動プログラムを実行した後に、繰り返して次のサイクルで統合駆動プログラムを実行し、前記増設モジュールの入出力タイプを確認し、前記入出力タイプに応じて入力リフレッシュ又は出力リフレッシュを行い、前記入力リフレッシュ又は前記出力リフレッシュを行うとき、前サイクルの統合駆動プログラムの実行による処理結果データと現サイクルで実行された統合駆動プログラムの処理結果データとを順次比較し、前サイクルの入出力リフレッシュ動作の過程に比べて、現サイクルでの入出力リフレッシュ動作の過程を減らし、入出力リフレッシュ動作を実行するステップと、
をさらに含む、
PLCシステムの入出力リフレッシュ周期の制御方法。
【請求項7】
前記統合駆動プログラムをメモリに貯蔵するステップは、
使用者が複数の入出力リフレッシュ実行命令が含まれた前記統合駆動プログラムを設計して入力し、前記統合駆動プログラムに繰り返して実行されるように設定することのできるPADT(Programming and Debugging Tool)表示プログラムを支援するステップ;並びに
前記複数の入出力リフレッシュ実行命令が含まれた統合駆動プログラムをコンパイルして記メモリ及び前記中央処理ユニットに提供するステップを含む、
請求項6記載のPLCシステムの入出力リフレッシュ周期の制御方法。
【請求項8】
前記統合駆動プログラムは、
開始及び初期化命令語、入力リフレッシュ命令、複数の制御プログラム、並びに、出力リフレッシュ命令順次配置されるように構成され、
前記入出力リフレッシュ実行命令が前記複数の制御プログラムのうち少なくともつずつの制御プログラムの間に配置されるようにさらに構成された、
請求項6記載のPLCシステムの入出力リフレッシュ周期の制御方法。
【請求項9】
前記少なくともつの制御プログラムに対する処理結果データを出力するステップは、
前記複数の制御プログラムを順次演算処理する過程で、
少なくともつの制御プログラムを実行及び演算処理した後に、前記追加された入出力リフレッシュ実行命令がリードされると、前記処理結果データを出力する出力リフレッシュ動作と、入力リフレッシュ動作とを順に行うステップ;並びに
次の制御プログラムがリードされると、前記次の制御プログラムを行うステップを含む、
請求項8記載のPLCシステムの入出力リフレッシュ周期の制御方法。
【請求項10】
前記各増設モジュールの動作状態情報を前記中央処理ユニットに転送するステップ;及び、
前記複数の制御プログラム別の前記処理結果データを前記各増設モジュールに転送するステップをさらに含む、
請求項6記載のPLCシステムの入出力リフレッシュ周期の制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、PLC(Programmable Logic Controller)で多数の増設モジュールを駆動制御する期間に、少なくとも一つの増設モジュールに対する処理結果データを抽出及び確保できるようにしたPLCシステム、及びこれの入出力リフレッシュ周期の制御方法に関する。
【背景技術】
【0002】
PLCは、デジタル/アナログ入出力モジュールを介して予め定めた制御手順に従って個別モジュール(例えば、増設モジュール)を制御する制御器を意味する。
【0003】
PLCは、少なくとも一つの増設モジュールを制御するため様々な機能のサービスを提供するが、このようなPLCサービスは、PLCの中央処理ユニットに搭載された運営体制(Operating System;OS)に基づいて処理される。ここで、PLCの中央処理ユニットは、少なくとも一つのマイクロプロセッサーなどを含むMPU(Micro Processor Unit)などで構成され得る。
【0004】
PLCは、使用者がPADT(Programming and Debugging Tool)で作成したプログラム命令語、例えば、LD(Ladder Diagram)、IL(Instruction List)、SFC(Sequential Function Chart)、FBD(Function Block Diagram)、ST(Structured Text)、及びラダープログラムなどの命令語がコンパイルされて、各々の増設モジュール制御プログラム別にメモリに貯蔵されるようにする。そして、中央処理ユニットで行われた各々の制御プログラムの演算処理結果によって発生した命令語に従って、各々の増設モジュールが駆動されるようにする。
【0005】
図1は、従来技術によるPLCサービス処理過程を示した手順図である。
【0006】
図1を参照すると、先ず、PLCの中央処理ユニットは、コンパイルされた制御プログラムに従って入出力モジュールのリセット、自己診断、データクリア及び入出力モジュールの登録などのような初期化処理を行う(S1)。
【0007】
次に、中央処理ユニットは、各々の制御プログラムに従う演算及び命令制御を始める前に、入出力ポートを介してそれぞれ連結された入力モジュール(または、増設モジュール)の動作準備状態情報を読み込み、入力イメージ領域に貯蔵する入力イメージ領域リフレッシュ動作を行う(S2)。
【0008】
次いで、中央処理ユニットは、それぞれ連結された入力モジュールの状態に基づいて、制御プログラムの開始ステップから終了ステップまで順に演算及び命令制御を行う制御プログラム処理過程を行う(S3)。ここで、制御プログラムに従う処理結果は、出力イメージ領域に貯蔵され、中央処理ユニットは、出力イメージ領域に貯蔵された結果、データを各々の出力モジュールで出力する出力イメージ領域リフレッシュ動作を行う(S4)。
【0009】
最後に、中央処理ユニットは、一サイクルのPLCサービス過程を終了した後、さらにステップ(S2)に戻るために自己診断、タイマー及びカウンターの更新、データ転送などのようなEND処理過程を行う(S5)。
【0010】
かかる従来のPLCは、一サイクルのPLCサービス処理を終了する時点でのみ、出力イメージ領域リフレッシュ動作(S4)を行い、さらに入力イメージ領域リフレッシュ動作(S1)を行う。これによって、制御プログラムに従う演算及び命令制御期間(S3)中は、各増設モジュールに対する処理結果データをリアルタイムで確保することができない問題があった。
【0011】
言い換えれば、従来は一つのPLCで多数の増設モジュールを駆動するために、PADTを介して多数の増設モジュールを制御できるように多数の制御プログラムを入力及びコンパイルし、コンパイルされた制御プログラムを実行して、PLCサービス動作を行うことになる。しかし、このように制御プログラムが順に、いずれも演算処理される限り、サイクル処理期間中は、制御プログラム別に処理結果データを抽出して確認することができない問題があった。
【発明の概要】
【発明が解決しようとする課題】
【0012】
本発明は、上記のような問題点を解決するためのものであって、一つのPLCで多数の増設モジュールを制御できるように各々の制御プログラムを入力する過程で、少なくとも一つの制御プログラムが実行完了された期間が、入出力リフレッシュ実行命令をさらに入力できるように支援可能なPLCシステム、及びこれの入出力リフレッシュ周期の制御方法を提供するものである。
【0013】
また、本発明は、多数入力された制御プログラムに従って、多数の増設モジュールを駆動する過程で、少なくとも一つの制御プログラム完了期間にさらに入出力リフレッシュ動作が行われるようにして、少なくとも一つの制御プログラムに対する処理結果データを抽出及び確保できるようにしたPLCシステム、及びこれの入出力リフレッシュ周期の制御方法を提供するものである。
【0014】
また、本発明は、さらに入出力リフレッシュ動作を行う過程で、前サイクル期間に実行して抽出された制御プログラム別の結果データと、現サイクル時間に実行して抽出された制御プログラム別の結果データとを比較することによって、その比較結果によって入出力リフレッシュ動作を行うか否かを選択するようにしたPLCシステム、及びこれの入出力リフレッシュ周期の制御方法を提供するものである。
【0015】
本発明の目的は、上記に言及した目的に制限されず、言及していない本発明の他の目的及び長所は、下記の説明によって理解することができ、本発明の実施形態によってより明らかに理解することができる。また、本発明の目的及び長所は、特許請求の範囲に示した手段及びその組み合わせによって実現できることが分かりやすい。
【課題を解決するための手段】
【0016】
上記のような技術課題を達成するために本発明の実施形態によるPLCシステムは、プログラム支援部を介して入出力リフレッシュ実行命令が追加された状態で、コンパイルされた統合駆動プログラムを貯蔵するメモリ、及び統合駆動プログラムに含まれた複数の制御プログラムを順次演算処理して、複数の増設モジュール駆動を制御する中央処理ユニットを含み、ここで、中央処理ユニットは、複数の制御プログラムのうち少なくとも一つの制御プログラムに対する演算処理が完了されると、さらに入力された入出力リフレッシュ実行命令に従って、演算処理の完了された少なくとも一つの制御プログラムに対する処理結果データを出力する。
【0017】
プログラム支援部は、使用者が複数の入出力リフレッシュ実行命令が含まれた統合駆動プログラムを少なくとも一サイクル単位で設計して入力し、前記統合駆動プログラムが繰り返して実行されるように設定することのできるPADT(Programming and Debugging Tool)表示プログラムを支援するコード入力プログラム支援部、及び複数の入出力リフレッシュ実行命令が含まれた統合駆動プログラムをコンパイルして、メモリと中央処理ユニットに提供するPADTコンパイラを含む。
【0018】
統合駆動プログラムは、開始及び初期化命令語、入力リフレッシュ命令、複数の制御プログラム、出力リフレッシュ命令とが順次配置されるように構成され、入出力リフレッシュ命令が複数の制御プログラムのうち少なくとも一つずつの制御プログラムの間に配置されるようにさらに構成される。
【0019】
中央処理ユニットは、複数の制御プログラムを順次演算処理する過程で、少なくとも一つの制御プログラムを実行及び演算処理した後に追加された入出力リフレッシュ実行命令がリードされると、結果データを出力する出力リフレッシュ動作と入力リフレッシュ動作とを順に行う。そして、次の制御プログラムがリードされると、次の制御プログラムを実行する。
【0020】
中央処理ユニットは、一番目のサイクルで前記統合駆動プログラムを実行した後、繰り返して次のサイクルで統合駆動プログラムを実行することになると、前サイクルの統合駆動プログラムの実行による結果データと、現サイクルで実行された統合駆動プログラムの結果データとを順次比較する。これによって、前サイクルの入出力リフレッシュ動作の過程に比べて、現サイクルでの入出力リフレッシュ動作の過程を減らし、入出力リフレッシュ動作を行う。
【0021】
PLCシステムは、各々の増設モジュール動作状態情報を中央処理ユニットに転送する入力ポート、及び複数の制御プログラム別の処理結果データを各増設モジュールに転送する出力ポートを含む。
【0022】
また、上記のような技術課題を達成するために本発明の実施形態によるPLCシステムの入出力リフレッシュ周期の制御方法は、プログラム支援部を介して入出力リフレッシュ実行命令が追加された状態で、コンパイルされた統合駆動プログラムをメモリに貯蔵するステップ、及び中央処理ユニットで統合駆動プログラムに含まれた複数の制御プログラムを順次演算処理して、複数の増設モジュール駆動を制御するステップを含む。
【0023】
複数の制御プログラムを順次演算処理するステップは、複数の制御プログラムのうち少なくとも一つの制御プログラムに対する演算処理が完了されると、さらに入力された入出力リフレッシュ実行命令に従って、前記演算処理が完了された少なくとも一つの制御プログラムに対する処理結果データを出力するステップを含む。
【0024】
統合駆動プログラムをメモリに貯蔵するステップは、使用者が複数の入出力リフレッシュ実行命令が含まれた統合駆動プログラムを少なくとも一サイクル単位で設計して入力し、前記統合駆動プログラムが繰り返して実行されるように設定することのできるPADT(Programming and Debugging Tool)表示プログラムを支援するステップ、及び複数の入出力リフレッシュ実行命令が含まれた統合駆動プログラムをコンパイルして、メモリと前記中央処理ユニットに提供するステップを含む。
【0025】
統合駆動プログラムは、開始及び初期化命令語、入力リフレッシュ命令、複数の制御プログラム、出力リフレッシュ命令とが順次配置されるように構成され、入出力リフレッシュ命令が複数の制御プログラムのうち少なくとも一つずつの制御プログラムの間に配置されるようにさらに構成される。
【0026】
少なくとも一つの制御プログラムに対する処理結果データを出力するステップは、複数の制御プログラムを順次演算処理する過程で、少なくとも一つの制御プログラムを実行及び演算処理した後に追加された入出力リフレッシュ実行命令がリードされると、処理結果データを出力する出力リフレッシュ動作と、入力リフレッシュ動作とを順に行うステップ、及び次の制御プログラムがリードされると、次の制御プログラムを実行するステップを含む。
【0027】
少なくとも一つの制御プログラムに対する処理結果データを出力するステップは、一番目のサイクルで前記統合駆動プログラムを実行した後に、繰り返して次のサイクルで統合駆動プログラムを実行することになると、前サイクルの統合駆動プログラムの実行による結果データと、現サイクルで実行された統合駆動プログラムの結果データとを順次比較することによって、前サイクルの入出力リフレッシュ動作の過程に比べて、現サイクルでの入出力リフレッシュ動作の過程を減らし、入出力リフレッシュ動作を行うステップをさらに含む。
【0028】
また、PLC制御ステップは、各増設モジュールの動作状態情報を前記中央処理ユニットに転送するステップ、及び複数の制御プログラム別の処理結果データを各増設モジュールに転送するステップをさらに含む。
【発明の効果】
【0029】
上記のような多様な技術の特徴を有する本発明の実施形態によるPLCシステム、及びこれの入出力リフレッシュ周期の制御方法は、一つのPLCで多数の増設モジュールを制御するように支援して、PLCシステムの適用効率と管理効率を向上させ得る効果を奏することができる。
【0030】
また、一つのPLCで多数の増設モジュールを制御するように、多数の制御プログラムを入力する過程で、少なくとも一つの制御プログラムが実行完了された期間に、入出力リフレッシュ動作がさらに行われるようにするために、入出力リフレッシュ実行命令の追加入力を支援することができる。
【0031】
このため、本発明のPLCシステムは、一つのPLCで多数の増設モジュールを駆動する過程で、少なくとも一つの制御プログラムが実行完了された時点で、さらに入出力リフレッシュ動作が行われるようにして、実行処理された少なくとも一つの制御プログラムに対する処理結果データを抽出及び確保することができる。このため、使用者の管理効率と便宜性が増大し、さらには信頼性を高めることができる。
【0032】
また、本発明のPLCシステムは、さらに入出力リフレッシュ動作を行う過程で、前サイクル期間に実行して抽出された制御プログラム別の結果データと、現サイクル時間に実行して抽出された制御プログラム別の結果データとを比較することによって、その比較結果によって入出力リフレッシュ動作を行うか否かを選択できるようにする。このため、さらに入出力リフレッシュ動作を行うことによる処理速度及び処理期間が増加する影響を最小化することができる。
【図面の簡単な説明】
【0033】
図1】従来技術によるPLCサービス処理過程を示した手順図。
図2】本発明の実施形態によるPLCシステムを具体的に示した構成ブロック図。
図3図1に示されたプログラム支援部で支援するPADTの入出力リフレッシュ追加設定画面を示した図面。
図4図3に示されたPADTの制御プログラムの入力及び設定画面を示した図面。
図5図2のメモリと中央処理ユニットに設定及び貯蔵された増設モジュールの統合駆動プログラムの処理手順及び配置構造を示した図面。
図6】本発明の実施形態によるPLCシステムの統合駆動プログラムの処理方法を説明するための手順図。
図7図6に示された入出力リフレッシュを行う過程をさらに具体的に説明するための手順図。
【発明を実施するための形態】
【0034】
本明細書及び特許請求の範囲に使われた用語や単語は、通常的であるか辞書的な意味に限定して解釈してはならず、発明者は、その自己の発明を最も最善な方法により説明するために、用語の概念を適宜定義し得るという原則に即して、本発明の技術的思想に符合する意味と概念に解釈しなければならない。また、本明細書記載の実施形態と図面に示された構成は、本発明の最も好ましい一実施形態に過ぎないし、本発明の技術的思想を全て代弁するものではないので、本出願時点で、これらに取り替えられる多様な均等物と変形例があり得ることを理解しなければならない。
【0035】
以下、本発明の実施形態によるPLCシステム、及びこれの入出力リフレッシュ周期の制御方法について添付の図面を参照して詳説することとする。
【0036】
図2は、本発明の実施形態によるPLCシステムを具体的に示した構成ブロック図である。
【0037】
図2に示されたPLCシステムは、プログラム支援部100を介して入出力リフレッシュ実行命令が追加された状態で、コンパイルされた統合駆動プログラムを貯蔵するメモリ220、統合駆動プログラムに含まれた複数の制御プログラムを順次演算処理して、複数の増設モジュール300の駆動を制御する中央処理ユニット210、各増設モジュール300の動作状態情報を中央処理ユニット210に転送する入力ポート230、及び複数の制御プログラム別の処理結果データを各々の増設モジュール300に転送する出力ポート240を含む。
【0038】
プログラム支援部100は、複数の増設モジュール300を制御するPLC200の制御手順と制御動作を使用者が予め設定できるようにPADT(Programming and Debugging Tool)表示プログラムを支援する。
【0039】
プログラム支援部100は、コード入力プログラム支援部110及びPADTコンパイラ120を含む。ここで、コード入力プログラム支援部110は、使用者が複数の入出力リフレッシュ実行命令を含ませて、統合駆動プログラムを少なくとも一サイクル単位で設計して入力できるようにPADT表示プログラムを支援する。
【0040】
具体的に、プログラム支援部100は、PLC200における複数の増設モジュール300を少なくとも一サイクル単位で駆動及び制御できるようにする統合駆動プログラムを使用者が設計して入力できるように支援する。プログラム支援部100は、使用者が統合駆動プログラムを設計して入力できるようにPADT表示プログラムを支援する。このとき、プログラム支援部100は、使用者が統合駆動プログラムに含まれる複数の制御プログラムを設定及び入力する過程で、少なくとも一つの制御プログラム単位で入出力リフレッシュ実行命令を追加できるようにする入出力リフレッシュ実行命令の追加メニュー及びコードを支援する。
【0041】
このため、使用者は、パーソナルコンピュータやノートパソコンなどの端末機器にPADT表示プログラムを実行させて、PADT表示プログラムのメニューバーとツールバー及び実行ウィンドウを介して命令語と実行コードなどを記入することによって、複数の増設モジュール300を少なくとも一サイクル単位で駆動及び制御できるようにする統合駆動プログラムを設計することができる。
【0042】
使用者は、統合駆動プログラムの設計時、メニュー選択機能によって各々の増設モジュール300を制御するため制御プログラムをそれぞれ区分して記入し、設定することができる。このため、使用者は、少なくとも一つずつの制御プログラムの入力及び設定過程で、入出力リフレッシュ実行命令の追加メニュー及び選択コードを利用して、少なくとも一つの制御プログラムの演算処理完了時点で、入出力リフレッシュ実行命令を追加することができる。かかる入出力リフレッシュ実行命令の追加支援画面と追加方法については、添付の図面を参照して、以下により具体的に説明することとする。
【0043】
PADTコンパイラ120は、使用者のコンパイル命令に従って、少なくとも一つずつの制御プログラムに入出力リフレッシュ実行命令が追加された統合駆動プログラム、つまり複数の入出力リフレッシュ実行命令が含まれた統合駆動プログラムをコンパイルする。そして、コンパイルされた統合駆動プログラムをメモリ220と中央処理ユニット210に提供する。
【0044】
メモリ220は、PADTコンパイラ120におけるコンパイルされた統合駆動プログラムを貯蔵して、中央処理ユニット210と共有する。また、メモリ220は、入力ポート230を介して入力される各増設モジュール300の動作状態情報を貯蔵して、これを中央処理ユニット210と共有する。そして、メモリ220は、中央処理ユニット210で実行される複数の制御プログラム別の処理結果データを貯蔵して、中央処理ユニット210の要請に従い、中央処理ユニット210と共有することができる。
【0045】
中央処理ユニット210は、PADTコンパイラ120におけるコンパイルされた統合駆動プログラムを複数の制御プログラム別に演算処理して、複数の制御プログラム別の演算処理結果データに応じて、各増設モジュール300の駆動を制御する。
【0046】
特に、中央処理ユニット210は、複数の制御プログラム別に演算処理を行う過程で、少なくとも一つの制御プログラムに対する演算処理が完了されると、さらに入力された入出力リフレッシュ実行命令に従って入出力リフレッシュ動作を行う。そして、入出力リフレッシュ動作が完了された少なくとも一つの制御プログラムに対する処理結果データを出力ポート240とメモリ220に出力する。
【0047】
より具体的に説明すれば、中央処理ユニット210は、コンパイルされた統合駆動プログラムの開始命令及び初期化命令がリードされると、各々の増設モジュール300と入出力ポート230,240に対するリセット、自己診断、前データクリア、各増設モジュール300に対する入出力コードの登録、及びデータ入出力ピンの登録などの初期化処理を行う。
【0048】
また、中央処理ユニット210は、複数の制御プログラムを順次実行する前に、入出力ポート230,240を介してそれぞれ連結された複数の増設モジュール300に対する動作準備状態情報を読み込む。そして、各々の増設モジュール300別に設定されたイメージ領域にそれぞれの動作準備状態情報を貯蔵する入力リフレッシュ動作を行う。
【0049】
次いで、中央処理ユニット210は、複数の増設モジュール300のうち少なくとも一つの増設モジュールの駆動を制御するため第1の制御プログラムを実行及び演算処理して、複数の増設モジュール300のうち少なくとも一つの増設モジュールの駆動を制御するため第1の結果データを算出及び貯蔵する。ここで、第1の制御プログラムの演算処理が完了された時点で、入出力リフレッシュ実行命令がリードされると、第1の結果データを出力する出力リフレッシュ動作を行い、さらに入力リフレッシュ動作を行うことができる。
【0050】
しかし、入出力リフレッシュ実行命令が記入及びリードされていない状態で、第2の制御プログラムにリードされると、複数の増設モジュール300のうち少なくとも一つの増設モジュールの駆動を制御するため第2の制御プログラムを実行及び演算処理する。そして、複数の増設モジュール300のうち少なくとも一つの増設モジュールの駆動を制御するため第2の結果データが算出されると、第2の結果データを貯蔵する。ここで、第2の制御プログラムの演算処理が完了された時点で、入出力リフレッシュ実行命令がリードされると、第1及び第2の結果データをいずれも出力する出力リフレッシュ動作を行い、さらに入力リフレッシュ動作を行うことができる。
【0051】
一方、第2の制御プログラムの演算処理後にも、入出力リフレッシュ実行命令が記入及びリードされていない状態で、第3の制御プログラムにリードされると、複数の増設モジュール300のうち少なくとも一つの増設モジュールの駆動を制御するため第3の制御プログラムを実行及び演算処理する。そして、複数の増設モジュール300のうち少なくとも一つの増設モジュールの駆動を制御するため第3の結果データが算出されると、第3の結果データを貯蔵する。次いで、第3の制御プログラムの演算処理が完了された時点で、入出力リフレッシュ実行命令がリードされると、第1~第3の結果データをいずれも出力する出力リフレッシュ動作を行う。そして、さらに入力リフレッシュ動作を行うことができる。かかる統合駆動プログラムの実行及び演算処理過程は、前記初期化処理過程から、第1~第3の結果データをいずれも出力する出力リフレッシュ動作を行うまでの一サイクルの間に行われる。
【0052】
中央処理ユニット210は、初期化処理過程から、第1~第3の結果データをいずれも出力する出力リフレッシュ動作を行うまでの一サイクルの間に統合プログラムを実行した後、さらに二番目のサイクルで統合駆動プログラムを実行することになると、前の一番目のサイクルの統合駆動プログラムの実行による結果データと、現サイクルで実行された統合駆動プログラムの結果データとを順次比較する。これによって、前サイクルの入出力リフレッシュ動作の過程に比べて、現サイクルでの入出力リフレッシュ動作の過程を減らし、入出力リフレッシュ動作を行うことができる。
【0053】
具体的に、中央処理ユニット210は、一番目のサイクルで統合駆動プログラムを実行した後、二番目のサイクルで統合駆動プログラムを実行する時点からは、入出力リフレッシュ動作を行う際、前サイクル期間に実行して抽出された制御プログラム別の結果データと、現サイクル時間に実行して抽出された制御プログラム別の結果データとを比較する。そして、前サイクル(例えば、一番目に進められた統合駆動プログラムの実行サイクル)を進める過程で行われた制御プログラムの結果データと、現サイクル(例えば、二番目に進められるサイクル)で行われた制御プログラムの結果データとが同一であれば、結果データが同じ制御プログラムに対しては、同じ結果データのみ出力する。このときは、入出力リフレッシュ動作を中断して、次の制御プログラムを実行することができる。かかる中央処理ユニット210の統合駆動プログラムの実行及び演算処理方法については、添付の図面を参照して、以下により具体的に説明することとする。
【0054】
図3は、図1に示されたプログラム支援部で支援するPADTの入出力リフレッシュの追加設定画面を示した図面である。
【0055】
図3を参照して、入出力リフレッシュ命令の追加入力支援方法を説明すれば、次のとおりである。
【0056】
すなわち、プログラム支援部100は、使用者がパーソナルコンピュータやノートパソコンなどの端末機器によりPADT表示プログラムを実行できるように支援する。このとき、プログラム支援部100は、使用者がPADT表示プログラムのメニューバーによって順に各々の制御プログラム(Program1~Program3)を追加及び選択できるように支援する。そして、使用者がメニューバーのいずれか制御プログラム(Program1~Program3のうち一つのプログラム)を選択すれば、選択された一つの制御プログラム(Program1)に入出力リフレッシュ命令を選択的に追加できるようにするオプション選択ツールバーを支援する。このため、使用者は、制御プログラム(Program1~Program3)別に入出力リフレッシュ命令の追加オプションを選択することができる。
【0057】
図4は、図3に示されたPADTの制御プログラムの入力及び設定画面を示した図面である。
【0058】
図4に示されたように、使用者がいずれか制御プログラム(Program1~Program3)を選択して、入出力リフレッシュ命令を追加するか否かを選択した後に確認すると、プログラム支援部100は、選択したいずれか制御プログラム(Program1~Program3)を設計及び設定できるように実行ウィンドウとメニューバー及びツールバーなどを提供する。
【0059】
このため、使用者は、PADT表示プログラムの実行ウィンドウとメニューバー及びツールバーなどを利用して、命令語と実行コードなどを記入することで、少なくとも一サイクル単位で各々の制御プログラム(Program1~Program1)を設計することができる。
【0060】
図5は、図2のメモリと中央処理ユニットに設定及び貯蔵された増設モジュールの統合駆動プログラムの処理手順及び配置構造を示した図面である。
【0061】
図5を参照すると、統合駆動プログラムには、開始命令及び初期化命令語を始め、入出力リフレッシュ命令(または、入力リフレッシュ命令)と、第1の制御プログラム(Program1)が順次配置される。第1の制御プログラム(Program1)の配置後は、入出力リフレッシュ命令(I/O Refresh)がさらに配置され得る。
【0062】
第1の制御プログラム(Program1)や入出力リフレッシュ命令(I/O Refresh)には少なくとも一つのプログラム、例えば、第2及び第3の制御プログラム(Program2,Program3)が順次配置され得る。このとき、第2及び第3の制御プログラム(Program2,Program3)の間にも入出力リフレッシュ命令(I/O Refresh)がさらに配置され得る。かかる方式により、増設モジュール300によって複数の制御プログラムと入出力リフレッシュ命令(I/O Refresh)がいずれも配置された最後には、出力リフレッシュ命令(I/O Refresh)が配置されて、一サイクルの動作が完了されるようにすることができる。
【0063】
図6は、本発明の実施形態によるPLCシステムの統合駆動プログラムの処理方法を説明するための手順図である。
【0064】
図5及び図6を参照して、コンパイルされた統合駆動プログラムの実行及び処理過程を順に説明すれば、次のとおりである。
【0065】
先ず、中央処理ユニット210は、コンパイルされた統合駆動プログラムの開始命令及び初期化命令がリードされると、各々の増設モジュール300と入出力ポート230,240に対するリセット、自己診断、以前データクリア、各増設モジュール300に対する入出力コードの登録、及びデータ入出力ピンの登録などの初期化処理を行う(ST1)。初期化結果データは、メモリ220に貯蔵される。
【0066】
次いで、中央処理ユニット210は、入出力リフレッシュ命令(I/O Refresh)に従って複数の制御プログラム(Program1~Program3)を順次実行する前に、入出力ポート230,240を介してそれぞれ連結された複数の増設モジュール300に対する動作準備状態情報を読み込む。そして、各々の増設モジュール300別に入力イメージ領域を設定し、設定されたイメージ領域にそれぞれの動作準備状態情報を貯蔵する入力リフレッシュ動作を行う(ST2)。
【0067】
次に、中央処理ユニット210は、複数の増設モジュール300のうち少なくとも一つの増設モジュール駆動を選択的に制御するため第1の制御プログラム(Program1)を実行及び演算処理して、複数の増設モジュール300のうち少なくとも一つの増設モジュールの駆動を制御するため第1の結果データを算出及び貯蔵する(ST3)。ここで、第1の制御プログラム(Program1)の演算処理が完了された時点で、入出力リフレッシュ実行命令がリードされると(ST4)、第1の結果データを貯蔵するための出力イメージ領域を設定して、第1の結果データを出力イメージ領域に貯蔵すると共に、出力ポート240とメモリ220に出力する出力リフレッシュ動作を行う。そして、さらに入力イメージ領域を設定し、設定されたイメージ領域にそれぞれの動作準備状態情報を貯蔵する入力リフレッシュ動作を行うことができる(ST5)。このため、メモリ220は、第1の結果データを貯蔵して、その後、中央処理ユニット210の共有要請の際には中央処理ユニット210に転送することができる。
【0068】
次いで、中央処理ユニット210は、入出力リフレッシュ動作の実行後、複数の増設モジュール300のうち少なくとも一つの増設モジュールを駆動させるため第2の制御プログラム(Program2)がリードされると、第2の制御プログラムを実行及び演算処理して、複数の増設モジュール300のうち少なくとも一つの増設モジュール駆動を選択的に制御する(ST6)。そして、少なくとも一つの増設モジュールの駆動を制御するため第2の結果データが算出されると、第2の結果データを貯蔵する。ここで、第2の制御プログラムの演算処理が完了された時点で、入出力リフレッシュ実行命令がリードされると(ST7)、第1及び第2の結果データをいずれも出力ポート240とメモリ220に出力する出力リフレッシュ動作を行い、さらに入力リフレッシュ動作を行うことができる(ST8)。
【0069】
次いで、中央処理ユニット210は、入出力リフレッシュ動作の実行後、第3の制御プログラム(Program3)がリードされると、複数の増設モジュール300のうち少なくとも一つの増設モジュールの駆動を選択的に制御するため第3の制御プログラム(Program3)を実行及び演算処理する。そして、少なくとも一つの増設モジュール駆動を制御するため第3の結果データが算出されると、第3の結果データを貯蔵する。次いで、第3の制御プログラムの演算処理が完了された時点で、入出力リフレッシュ実行命令がリードされると、第1~第3の結果データをいずれも出力ポート240とメモリ220に出力する出力リフレッシュ動作を行い、さらに入力リフレッシュ動作を行うことができる。かかる統合駆動プログラムの実行及び演算処理過程は、少なくとも一サイクルの間に繰り返して行われる。
【0070】
図7は、図6に示された入出力リフレッシュを行う過程をより具体的に説明するための手順図である。
【0071】
前述したように、中央処理ユニット210は、一番目のサイクルで統合駆動プログラムを実行した後、さらに複数番目のサイクルで統合駆動プログラムを実行することになると、前サイクル(例えば、前の一番目のサイクル)の統合駆動プログラムの実行による結果データと、現サイクル(例えば、二番目のサイクル)で実行された統合駆動プログラムの結果データとを順次比較することによって、前サイクルの入出力リフレッシュ動作の過程に比べて、現サイクルでの入出力リフレッシュ動作の過程を減らし、入出力リフレッシュ動作を行うことができる。
【0072】
具体的に、図7を参照して、入出力リフレッシュ動作の過程を減らして行う方法をより具体的に説明すれば、次のとおりである。
【0073】
中央処理ユニット210は、一番目のサイクルで統合駆動プログラムを実行した後、さらに複数番目のサイクルで統合駆動プログラムを実行することになると、入出力リフレッシュ命令に従って該増設モジュール、例えば、第1の増設モジュールの入/出力タイプを確認する(SS1,SS2)。
【0074】
仮に、第1の増設モジュールが入力タイプであれば、第1の増設モジュールの入力スロットを確認し(SS3)、前サイクル期間に実行して抽出された第1の制御プログラムの第1の結果データと、現サイクル時間に実行して抽出された第1の制御プログラムの第1の結果データとを比較する(SS4)。そして、前サイクルを進める過程で行われた第1の制御プログラムの第1の結果データと、現サイクルで行われた制御プログラムの第1の結果データとが同一であれば、結果データが同じ第1の制御プログラムに対しては、同じ第1の結果データのみ出力するものの、入出力リフレッシュ動作を中断して、次の制御プログラムを実行することができる(SS5)。
【0075】
他方、前サイクルを進める過程で行われた制御プログラムの結果データと、現サイクルで行われた制御プログラムの結果データとが相違するときのみ、第1の結果データを貯蔵するための出力イメージ領域を設定して、第1の結果データを出力イメージ領域に貯蔵すると共に、第1の結果データを出力ポート240とメモリ220に出力する出力リフレッシュ動作を行う。そして、さらに入力イメージ領域を設定し、設定されたイメージ領域に各々の動作準備状態情報を貯蔵する入力リフレッシュ動作を行うことができる(ST6)。
【0076】
仮に、第1の増設モジュールの入/出力タイプを確認した結果が出力タイプであれば、第1の増設モジュールの出力スロットを確認し(SS7)、前サイクル期間に実行して抽出された第1の制御プログラムの第1の結果データと、現サイクル時間に実行して抽出された第1の制御プログラムの第1の結果データとを比較する(SS8)。そして、前サイクルを進める過程で行われた第1の制御プログラムの第1の結果データと、現サイクルで行われた制御プログラムの第1の結果データとが同一であれば、結果データが同じ第1の制御プログラムに対しては、同じ第1の結果データのみ出力するものの、入出力リフレッシュ動作を中断して、次の制御プログラムを実行することができる(SS9)。
【0077】
他方、前サイクルを進める過程で行われた制御プログラムの結果データと、現サイクルで行われた制御プログラムの結果データとが相違するときのみ、第1の結果データを貯蔵するための出力イメージ領域を設定して、第1の結果データを出力イメージ領域に貯蔵すると共に、第1の結果データを出力ポート240とメモリ220に出力する出力リフレッシュ動作を行う。そして、さらに入力イメージ領域を設定し、設定されたイメージ領域に各々の動作準備状態情報を貯蔵する入力リフレッシュ動作を行うことができる(ST10)。
【0078】
以上、上述したように、本発明の実施形態によるPLCシステム、及びこれの入出力リフレッシュ周期の制御方法は、一つのPLCが多数の増設モジュールを制御できるように支援して、PLCシステムの適用効率と管理効率を向上させることができる。
【0079】
また、一つのPLCで多数の増設モジュールを制御できるように多数の制御プログラムを入力する過程で、少なくとも一つの制御プログラムを実行完了した時点で、入出力リフレッシュ動作がさらに実行されるようにするために、入出力リフレッシュ実行命令の追加入力を支援することができる。
【0080】
このため、本発明のPLCシステムは、一つのPLCで多数の増設モジュールを駆動する過程で、少なくとも一つの制御プログラムを完了した時点で、さらに入出力リフレッシュ動作を行って、少なくとも一つの制御プログラムに対する処理結果データを抽出及び確保することができる。このため、使用者の管理効率と便宜性が増大し、さらには信頼性を高めることができる。
【0081】
また、本発明のPLCシステムは、さらに入出力リフレッシュ動作を行う過程で、前サイクルを進める過程で行われた制御プログラムの結果値と、現サイクルで行われた制御プログラムの結果値とを比較し、その比較結果によって、入出力リフレッシュ動作を行うか否かを選択できるようにすることで、さらに入出力リフレッシュ動作を行うことによる処理速度及び処理期間が増加する影響を最小化することができる。
【0082】
前述した実施形態は、すべての面で例示的なものであり、限定的なものではないと理解しなければならないし、本発明の範囲は、前述した詳細な説明よりは後述する特許請求の範囲によって示される。そして、後述する特許請求の範囲の意味及び範囲はもちろん、その等価概念から想到するあらゆる変更及び変形可能な形態が本発明の範囲に含まれると解釈すべきである。
図1
図2
図3
図4
図5
図6
図7