JP2008282362A - Program editing support device, computer program, program editing support method, and plc system - Google Patents
Program editing support device, computer program, program editing support method, and plc system Download PDFInfo
- Publication number
- JP2008282362A JP2008282362A JP2007128550A JP2007128550A JP2008282362A JP 2008282362 A JP2008282362 A JP 2008282362A JP 2007128550 A JP2007128550 A JP 2007128550A JP 2007128550 A JP2007128550 A JP 2007128550A JP 2008282362 A JP2008282362 A JP 2008282362A
- Authority
- JP
- Japan
- Prior art keywords
- program
- identification data
- plc
- programmable controller
- editing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 36
- 238000004590 computer program Methods 0.000 title claims description 5
- 238000013500 data storage Methods 0.000 claims abstract description 72
- 101100408464 Caenorhabditis elegans plc-1 gene Proteins 0.000 abstract description 81
- 101100049748 Archaeoglobus fulgidus (strain ATCC 49558 / DSM 4304 / JCM 9628 / NBRC 100126 / VC-16) wtpA gene Proteins 0.000 description 73
- 101100514057 Azotobacter vinelandii modE gene Proteins 0.000 description 73
- 101150103307 modA gene Proteins 0.000 description 73
- 101100184647 Azotobacter vinelandii modC1 gene Proteins 0.000 description 50
- 101150034584 MODD gene Proteins 0.000 description 50
- 101150080488 apa gene Proteins 0.000 description 50
- 238000012795 verification Methods 0.000 description 17
- 238000004891 communication Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 238000004088 simulation Methods 0.000 description 12
- 101100049754 Archaeoglobus fulgidus (strain ATCC 49558 / DSM 4304 / JCM 9628 / NBRC 100126 / VC-16) wtpB gene Proteins 0.000 description 10
- 101100457845 Azotobacter vinelandii modA gene Proteins 0.000 description 10
- 101150033385 modB gene Proteins 0.000 description 10
- 238000007726 management method Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000011161 development Methods 0.000 description 4
- 102100026205 1-phosphatidylinositol 4,5-bisphosphate phosphodiesterase gamma-1 Human genes 0.000 description 3
- 101000691599 Homo sapiens 1-phosphatidylinositol 4,5-bisphosphate phosphodiesterase gamma-1 Proteins 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
- Programmable Controllers (AREA)
Abstract
Description
本発明は、プログラム編集支援装置に係り、更に詳しくは、プログラマブルコントローラ用のプログラムを編集し、プログラマブルコントローラへ書き込むためのプログラム編集支援装置、当該装置をコンピュータ上で実現するためのコンピュータソフトウエア、当該装置を用いて実現される方法、並びに、当該装置を含むPLCシステムの改良に関する。 The present invention relates to a program editing support apparatus, and more particularly, a program editing support apparatus for editing a program for a programmable controller and writing the program to the programmable controller, computer software for realizing the apparatus on a computer, The present invention relates to a method realized using an apparatus, and an improvement of a PLC system including the apparatus.
プログラマブルコントローラ(適宜、PLCと略す)は、FA(Factory Automation)制御システムにおいて広く使用されているシーケンス制御装置であり、ラダープログラムと呼ばれる専用プログラムに従って動作する。このため、PLC内のプログラムを書き換えることによって、所望のシーケンス制御装置を実現することができる。PLC用のプログラムは、通常、パーソナルコンピュータを利用したプログラム編集支援装置を用いてユーザが作成する。プログラム編集支援装置を用いて作成されたプログラムのソースコードは、当該プログラム編集支援装置において実行形式のオブジェクトコードへコンパイルされた後、通信ケーブルを介してPLCへ転送(アップロード)される。 A programmable controller (appropriately abbreviated as PLC) is a sequence controller widely used in FA (Factory Automation) control systems, and operates according to a dedicated program called a ladder program. Therefore, a desired sequence control device can be realized by rewriting the program in the PLC. The PLC program is usually created by a user using a program editing support apparatus using a personal computer. The source code of the program created using the program editing support apparatus is compiled into an executable object code in the program editing support apparatus, and then transferred (uploaded) to the PLC via the communication cable.
PLC用のプログラムは、通常、デバッグや改良のためのバージョンアップが繰り返し行われている。つまり、プログラム編集支援装置上において繰り返し変更され、バージョンアップされた新たなプログラムとしてPLCへ繰り返しアップロードされる。しかしながら、PLCへ古いバージョンのプログラムをアップロードするような場合もあり、プログラム編集支援装置とPLCとの間でプログラムのバージョンが一致せず、どちらが最新バージョンであるのかがユーザ自身にも分からなくなってしまう場合があった。このため、ユーザは適切なバージョン管理を行っておく必要があり、この様なバージョン管理のためのユーザ負荷を軽減するために、従来から様々な提案が行われている(例えば、特許文献1〜特許文献4)。
The PLC program is normally repeatedly upgraded for debugging and improvement. That is, the program is repeatedly changed on the program editing support device, and is uploaded to the PLC repeatedly as a new version-updated program. However, there is a case where an old version of the program is uploaded to the PLC, and the program version does not match between the program editing support apparatus and the PLC, and the user himself / herself does not know which is the latest version. There was a case. For this reason, the user needs to perform appropriate version management, and various proposals have been made in the past in order to reduce the user load for such version management (for example,
特許文献1には、PLC用のプログラムに関するものではないが、プログラムのバージョン管理を行うバージョン管理装置が記載されている。このバージョン情報は、ファイル名やバージョン数からなり、プログラムのインストール先である外部記憶装置内に格納されており、インストール元の外部記憶装置から新たなプログラムをインストールする場合に、両プログラムのバージョン情報を比較して警告表示が行われる。
特許文献2には、プログラムプロパティを含むプログラムを生成するプログラム編集支援装置が記載されている。このプログラムプロパティは、プログラム名称やプログラム作成日時であり、プログラムを比較する際、プログラムプロパティが比較される。
特許文献3には、シーケンサー用プログラムのオブジェクトコード内に管理情報を格納することができる計算機システムが記載されている。この管理情報は文字列からなり、オブジェクトコードを文字列情報として表示させることにより、当該オブジェクトコードに含まれる管理情報を文字列として確認できるようになっている。
特許文献4には、プログラムを格納する領域と、当該プログラムのプロパティを格納する領域を有するプログラムコントローラが記載されている。このプロパティは、プログラムの名称、バージョン、更新日時からなり、プログラム作成支援装置のディスプレイに表示される。 Patent Document 4 describes a program controller having an area for storing a program and an area for storing a property of the program. This property includes the name, version, and update date / time of the program, and is displayed on the display of the program creation support apparatus.
要するに、特許文献1〜4に記載された従来技術によれば、PLC内にプログラムのバージョン情報を予め格納しておき、このバージョン情報をPLCからプログラム編集支援装置へダウンロードすることによって、バージョン情報を画面表示したり、他のプログラムのバージョン情報と比較したりすることができる。
In short, according to the prior art described in
ところが、PLCの高速化、高機能化にともなって、PLC用のプログラムも大型で複雑なものとなり、1つのプログラムの開発を複数の設計者が共同で行うというケースが増えているが、このようなケースでは、上述した従来技術によって十分なバージョン管理を行うことが難しくなってきた。つまり、従来技術では、1人の設計者がプログラムを開発していることを前提としていることから、1つのプログラムを複数人で開発する共同開発にそのまま利用することができないという問題があった。 However, with the increase in speed and functionality of PLCs, PLC programs have become large and complex, and there are increasing cases in which multiple designers jointly develop one program. In such cases, it has become difficult to perform sufficient version control by the above-described conventional technology. That is, in the prior art, since it is assumed that one designer is developing a program, there is a problem in that it cannot be used as it is for joint development in which one program is developed by a plurality of people.
大規模なプログラムを複数の設計者で開発する場合、プロジェクトと呼ばれる1つのプログラムを複数のモジュールに分割し、これらの各モジュールに設計者が割り当てられる。この場合、各設計者は、それぞれの端末装置において自らが担当しているモジュールのみを作成し、そのモジュールのみを共通のPLCへそれぞれアップロードするという方法が採用される。 When a large-scale program is developed by a plurality of designers, one program called a project is divided into a plurality of modules, and a designer is assigned to each of these modules. In this case, a method is employed in which each designer creates only a module that he / she is responsible for in each terminal device and uploads only that module to a common PLC.
ここで、各モジュールが、他のモジュールから完全に独立して動作するものであるとすれば、各設計者は、自らが担当しているモジュール以外のモジュールを全く気にする必要はない。しかしながら、実際には、各モジュールに共通のグローバル変数を利用していたり、また、他のモジュール内の変数を参照していたりする場合が少なくない。従って、各モジュールは、完全に独立ではなく、最小限の連携を行いながら動作するものとならざるを得ない。 Here, if each module operates completely independently of the other modules, each designer does not need to care about modules other than the module that he / she is in charge of. However, in practice, there are many cases in which global variables common to each module are used or variables in other modules are referenced. Therefore, each module is not completely independent, and must operate with minimal cooperation.
また、各モジュールは、プログラム編集支援装置内においてシミュレーションを行ってその動作を事前に確認した上で、PLCへアップロードされる。このシミュレーションを行うためには、他の設計者が担当しているモジュールも必要となるため、各設計者の端末装置内には、他の設計者が担当しているモジュールも格納されている。 Each module is uploaded to the PLC after performing a simulation in the program editing support apparatus and confirming its operation in advance. In order to perform this simulation, modules for which other designers are in charge are also required. Therefore, modules for which other designers are in charge are also stored in each designer's terminal device.
このような開発環境下において、ある設計者Aが、他の設計者Bの担当しているモジュールが先にPLCへアップロードされていることに気づかずに、自らが担当しているモジュールをアップロードした場合、PLC内にはシミュレーションが行われていないモジュールの組み合わせが格納された状態となる。このため、両モジュール間に不整合が生じていれば、PLCは正常に動作しなくなる。 In such a development environment, a designer A uploaded a module that he / she was in charge of, without realizing that the module that the other designer B was responsible for was uploaded to the PLC first. In this case, a combination of modules that have not been simulated is stored in the PLC. For this reason, if a mismatch occurs between both modules, the PLC does not operate normally.
また、ある設計者Aがアップロードを行った際、誤って他の設計者Bが担当しているモジュールを上書きしてしまう可能性がある。この場合、他の設計者Bがアップロードしていた最新のモジュールが、古いモジュール又は全く別のモジュールによって上書きされれば、PLCは正常に動作しなくなってしまう。しかしながら、その原因を発見するのは容易ではなく、デバッグに時間がかかるという問題があった。 Further, when a certain designer A uploads, there is a possibility that a module that another designer B is in charge of will be overwritten by mistake. In this case, if the latest module uploaded by another designer B is overwritten by an old module or a completely different module, the PLC does not operate normally. However, it is not easy to find the cause, and there is a problem that debugging takes time.
また、ある設計者Aが、他の設計者Bが担当するモジュール内の記述であって、設計者Aの担当するモジュールと連携する部分を変更しなければならない場合に、意図的に設計者Bのモジュールを上書きすることも考えられる。この様な場合、設計者Bがそのことに気づかず、その後にモジュールの更新を行ったとすれば、設計者Aによる更新を元に戻してしまう結果となる。 Also, when a designer A intentionally changes a description in a module for which another designer B is in charge and needs to change a part linked to the module for which the designer A is in charge, the designer B intentionally It is possible to overwrite the module. In such a case, if the designer B is unaware of this and updates the module after that, the result is that the update by the designer A is reversed.
つまり、プログラムを共同開発する場合、PLC内のモジュールは、複数の設計者によって更新されるため、自分が担当するモジュールを自分自身で更新する場合と、他人が担当するモジュールを他人が更新する場合と、自分が担当するモジュールを他人が更新する場合がそれぞれ考えられ、これらを区別して把握することが必要となる。 In other words, when a program is jointly developed, the modules in the PLC are updated by multiple designers, so the modules that you are responsible for are updated by yourself, and the modules that others are responsible for are updated. And there are cases where other people update the modules that they are in charge of, and it is necessary to distinguish and grasp these.
しかしながら、上述した従来のバージョン管理方法は、PLC内のプログラムと、端末装置内のプログラムとを比較し、両者の一致又は不一致を判別しているだけであった。このため、両者が一致しなかった場合、PLC及び端末装置のどちらのプログラムが変更されたのかを区別することはできない。また、PLC内のプログラムが更新されていた場合であれば、それが自分自身による更新の結果であるのか、あるいは、他人による更新の結果であるのかを区別することはできないという問題があった。
本発明は、上記の事情に鑑みてなされたものであり、複数のプログラム編集支援装置から書き込み可能なPLC内のプログラムについて、その最終更新者が自身であるのか、あるいは、他のプログラム編集支援装置であるのかを上記プログラム編集支援装置において判別可能にすることを目的とする。また、プログラム編集支援装置からPLCへのプログラムの書き込みによって、他人が作成したPLC内のプログラムが不用意に上書きされるのを抑制することを目的とする。 The present invention has been made in view of the above circumstances, and the last updater of a program in a PLC writable from a plurality of program editing support apparatuses is itself or other program editing support apparatus It is an object of the present invention to make it possible for the program editing support apparatus to determine whether or not it is. It is another object of the present invention to prevent the program in the PLC created by another person from being inadvertently overwritten by writing the program from the program editing support apparatus to the PLC.
第1の本発明によるプログラム編集支援装置は、プログラマブルコントローラ用のプログラムを保持するプログラム記憶手段と、ユーザ操作に基づいて上記プログラムを編集するプログラム編集手段と、上記プログラム編集手段により上記プログラムが編集された場合に、当該編集に固有の識別データを生成する識別データ生成手段と、上記プログラム及び上記識別データをプログラマブルコントローラへ書き込むPLCデータ書込手段と、上記プログラマブルコントローラへ書き込まれる上記識別データを保持する第1識別データ記憶手段と、上記プログラマブルコントローラから識別データを取得するPLCデータ取得手段と、上記プログラマブルコントローラから取得した識別データを第1識別データ記憶手段が保持する識別データと比較する第1比較手段と、上記第1比較手段の比較結果に基づいて表示を行う表示手段とを備えて構成される。 According to a first aspect of the present invention, there is provided a program editing support apparatus comprising: a program storage means for holding a program for a programmable controller; a program editing means for editing the program based on a user operation; and the program editing means editing the program. The identification data generation means for generating identification data unique to the editing, the PLC data writing means for writing the program and the identification data to the programmable controller, and the identification data written to the programmable controller. First identification data storage means, PLC data acquisition means for acquiring identification data from the programmable controller, and identification data held by the first identification data storage means for the identification data acquired from the programmable controller, A first comparison means for compare, and a display means for performing display based on the comparison result of the first comparison means.
第2の本発明によるプログラム編集支援装置は、上記構成に加えて、上記PLCデータ取得手段が、上記プログラマブルコントローラからプログラム及び識別データを取得し、上記プログラム記憶手段が、上記プログラマブルコントローラから取得した上記プログラムを格納し、上記第1識別データ記憶手段が、上記プログラマブルコントローラから取得した上記プログラムが上記プログラム記憶手段に格納される場合に、上記プログラマブルコントローラから取得した上記識別データを格納するように構成される。 In the program editing support apparatus according to the second aspect of the present invention, in addition to the above configuration, the PLC data acquisition means acquires the program and identification data from the programmable controller, and the program storage means acquires from the programmable controller. A program is stored, and the first identification data storage means is configured to store the identification data acquired from the programmable controller when the program acquired from the programmable controller is stored in the program storage means. The
第3の本発明によるプログラム編集支援装置は、上記構成に加えて、上記PLCデータ取得手段が、ユーザが上記プログラム記憶手段に保持されているプログラムの上記プログラマブルコントローラへの書き込みを指示した場合に、当該プログラマブルコントローラから識別データを取得し、上記表示手段が、上記第1比較手段の比較結果に基づいて、上記プログラムの上記プログラマブルコントローラへの書き込み前に警告表示を行うように構成される。 In addition to the above configuration, the program editing support device according to the third aspect of the present invention is configured so that the PLC data acquisition unit instructs the user to write the program held in the program storage unit to the programmable controller. Identification data is acquired from the programmable controller, and the display means is configured to display a warning before writing the program to the programmable controller based on the comparison result of the first comparison means.
第4の本発明によるプログラム編集支援装置は、上記構成に加えて、上記識別データ生成手段によって生成された最新の識別データを記憶する第2識別データ記憶手段と、上記第1及び第2識別データ記憶手段が保持する識別データを比較する第2比較手段とを備え、上記表示手段が、上記第1及び第2の比較手段の比較結果に基づいて表示を行うように構成される。 A program editing support apparatus according to a fourth aspect of the present invention includes a second identification data storage unit for storing the latest identification data generated by the identification data generation unit, and the first and second identification data in addition to the above configuration. Second comparison means for comparing identification data held by the storage means, and the display means is configured to display based on the comparison results of the first and second comparison means.
第5の本発明によるプログラム編集支援装置は、上記構成に加えて、上記プログラム編集手段は、上記モジュールを編集することができ、上記識別データ生成手段は、上記モジュールが編集された場合に、当該編集に固有の識別データを生成し、上記PLCデータ書込手段は、上記モジュール及び上記識別データを上記プログラマブルコントローラへ書き込み、上記第1比較手段は、同一のモジュールについて、上記プログラマブルコントローラから読み出された識別データを第1識別データ記憶手段が保持する識別データと比較し、上記第2比較手段は、同一のモジュールについて、第1及び第2識別データ記憶手段が保持する識別データを比較するように構成される。 In the program editing support apparatus according to the fifth aspect of the present invention, in addition to the above configuration, the program editing means can edit the module, and the identification data generating means The identification data unique to editing is generated, the PLC data writing means writes the module and the identification data to the programmable controller, and the first comparing means is read from the programmable controller for the same module. The identification data stored in the first identification data storage means is compared with the identification data held in the first identification data storage means, and the second comparison means compares the identification data held in the first and second identification data storage means for the same module. Composed.
第6の本発明によるプログラム編集支援装置は、上記構成に加えて、上記表示手段が、同一のモジュールに関する上記第1比較手段及び第2比較手段の比較結果を互いに対応づけ、かつ、同時に閲覧可能となるように表示するように構成される。 In the program editing support apparatus according to the sixth aspect of the present invention, in addition to the above configuration, the display means associates the comparison results of the first comparison means and the second comparison means with respect to the same module, and can be browsed simultaneously. It is comprised so that it may display.
第7の本発明によるプログラム編集支援装置は、上記構成に加えて、上記表示手段が、上記プログラム記憶手段に保持されているプログラムを複製するプログラム複製手段を備え、上記プログラム複製手段が、プログラムを複製する際、上記第2識別データ記憶手段に保持されている当該プログラムの識別データも複製するように構成される。 In addition to the above configuration, the program editing support apparatus according to a seventh aspect of the present invention includes the display unit including a program replication unit that replicates a program held in the program storage unit, and the program replication unit stores the program. When copying, the identification data of the program held in the second identification data storage means is also copied.
第8の本発明によるコンピュータプログラムは、コンピュータをプログラム編集支援装置として機能させるためのコンピュータプログラムであって、プログラマブルコントローラ用の制御プログラムを保持するプログラム記憶手段と、ユーザ操作に基づいて上記制御プログラムを編集するプログラム編集手段と、上記プログラム編集手段により上記制御プログラムが編集された場合に、当該編集に固有の識別データを生成する識別データ生成手段と、上記制御プログラム及び上記識別データをプログラマブルコントローラへ書き込むPLCデータ書込手段と、上記プログラマブルコントローラへ書き込まれる上記識別データを保持する識別データ記憶手段と、上記プログラマブルコントローラから識別データを取得するPLCデータ取得手段と、上記プログラマブルコントローラから取得した識別データを識別データ記憶手段が保持する識別データと比較する比較手段とを備えたプログラム編集支援装置としてコンピュータを機能させるように構成される。 A computer program according to an eighth aspect of the present invention is a computer program for causing a computer to function as a program editing support device, and includes a program storage means for holding a control program for a programmable controller, and the control program based on a user operation. Program editing means for editing, and when the control program is edited by the program editing means, identification data generating means for generating identification data unique to the editing, and writing the control program and the identification data to the programmable controller PLC data writing means, identification data storage means for holding the identification data written to the programmable controller, and PLC data acquisition means for acquiring identification data from the programmable controller Configured to cause a computer to function as a program editing support device including a comparing means for comparing the identification data with identification data acquired from the programmable controller identification data storage means for holding.
第9の本発明によるプログラム編集支援方法は、ユーザ操作に基づいて、プログラム記憶手段が保持するプログラマブルコントローラ用のプログラムを編集するプログラム編集ステップと、上記プログラム編集ステップにより上記プログラムが編集された場合に、当該編集に固有の識別データを生成する識別データ生成ステップと、上記プログラム及び上記識別データをプログラマブルコントローラへ書き込むPLCデータ書込ステップと、上記プログラマブルコントローラへ書き込まれる上記識別データを識別データ記憶手段に格納する識別データ格納ステップと、上記プログラマブルコントローラから識別データを取得するPLCデータ取得ステップと、上記プログラマブルコントローラから取得した識別データを識別データ記憶手段が保持する識別データと比較する比較ステップと、上記比較ステップの比較結果に基づいて表示を行う表示ステップとを備えて構成される。 According to a ninth aspect of the present invention, there is provided a program editing support method comprising: a program editing step for editing a program for a programmable controller held by a program storage means based on a user operation; and the program is edited by the program editing step. An identification data generation step for generating identification data unique to the editing, a PLC data writing step for writing the program and the identification data into the programmable controller, and the identification data written into the programmable controller in the identification data storage means The identification data storage means stores the identification data storage step, the PLC data acquisition step acquires the identification data from the programmable controller, and the identification data storage means stores the identification data acquired from the programmable controller. Configured to include a comparison step of comparing the identification data of lifting, and a display step of performing display based on the comparison result of the comparing step.
第10の本発明によるPLCシステムは、プログラマブルコントローラ及びプログラム編集支援装置からなるPLCシステムであって、上記プログラマブルコントローラが、プログラム及び識別データを保持する記憶手段を備えている。また、上記プログラム編集支援装置は、プログラマブルコントローラ用のプログラムを保持するプログラム記憶手段と、ユーザ操作に基づいて上記プログラムを編集するプログラム編集手段と、上記プログラム編集手段により上記プログラムが編集された場合に、当該編集に固有の識別データを生成する識別データ生成手段と、上記プログラム及び上記識別データをプログラマブルコントローラへ書き込むPLCデータ書込手段と、上記プログラマブルコントローラへ書き込まれる上記識別データを保持する識別データ記憶手段と、上記プログラマブルコントローラから識別データを取得するPLCデータ取得手段と、上記プログラマブルコントローラから取得した識別データを識別データ記憶手段が保持する識別データと比較する比較手段と、上記比較手段の比較結果に基づいて表示を行う表示手段とを備えて構成される。 A PLC system according to a tenth aspect of the present invention is a PLC system including a programmable controller and a program editing support device, and the programmable controller includes storage means for holding a program and identification data. The program editing support apparatus includes a program storage unit that holds a program for a programmable controller, a program editing unit that edits the program based on a user operation, and the program editing unit that edits the program. , Identification data generating means for generating identification data unique to the editing, PLC data writing means for writing the program and the identification data to the programmable controller, and identification data storage for holding the identification data written to the programmable controller Means, PLC data acquisition means for acquiring identification data from the programmable controller, and comparison means for comparing the identification data acquired from the programmable controller with the identification data held by the identification data storage means , And a display means for performing display based on the comparison result of the comparing means.
本発明によれば、複数のプログラム編集支援装置から書き込み可能なPLC内のプログラムについて、その最終更新者が自分自身であるのか、あるいは、他のプログラム編集支援装置であるのかを各プログラム編集支援装置において判別することができる。また、プログラム編集支援装置からPLCへのプログラムの書き込みによって、他人が作成したPLC内のプログラムが不用意に上書きされるのを抑制することができる。 According to the present invention, each program editing support apparatus determines whether the last updater of the program in the PLC that can be written from a plurality of program editing support apparatuses is itself or another program editing support apparatus. Can be determined. Moreover, it is possible to prevent the program in the PLC created by another person from being overwritten inadvertently by writing the program from the program editing support apparatus to the PLC.
実施の形態1.
[システムの概略構成]
図1は、本発明の実施の形態1によるPLC(Programable Logic Controller)システムの概略構成の一例を示した図である。このシステムは、1つのPLC1、当該PLC1に接続された複数のプログラム編集支援装置2、入力装置3及び出力装置4によって構成される。
[Schematic configuration of the system]
FIG. 1 is a diagram showing an example of a schematic configuration of a PLC (Programmable Logic Controller) system according to
PLC1は、センサーなどの入力装置3と、モータなどの出力装置4が接続され、入力装置3からの検出信号に基づいて、出力装置4への制御信号を生成する小型コントローラであり、その動作は、PLC1内に保持しているプログラムによって決定される。
The
プログラム編集支援装置2は、ユーザがPLC1用のプログラムを作成するための端末装置であり、専用の端末装置であってもよいが、通常は、パーソナルコンピュータに専用ソフトウエアをインストールすることによって実現される。ユーザは、このプログラム編集支援装置2上において、プログラムを作成し、作成されたプログラムのシミュレーションを行ってその動作を検証し、検証後のプログラムをコンパイルしてソースコードからオブジェクトコード(実行コード)へ変換する。この様にして生成されたプログラムのオブジェクトコードが、プログラム編集支援装置2からPLC1へアップロードされる。また、アップロードだけでなく、PLC1内のプログラムをプログラム編集支援装置2へダウンロードして編集することもできる。
The program
図示したPLCシステムは、1つのプログラムを複数の設計者が共同で開発するためのものである。各プログラム編集支援装置2は、それぞれ異なる設計者が利用している端末装置であり、複数のプログラム編集支援装置2が、通信ケーブルを介して、1つのPLC1にネットワーク接続されている。従って、各設計者は、独自にプログラムの編集、検証、コンパイル及びアップロードをそれぞれ行うことができる。
The illustrated PLC system is for jointly developing one program by a plurality of designers. Each program
なお、複数のプログラム編集支援装置2は、それぞれが異なるハードウエア上で実現されるものであってもよいし、同一のハードウエア上で実現されるものであってもよい。同一のハードウエア上において複数のプログラム編集支援装置2が実現される場合とは、例えば、複数の設計者が同一の端末装置を使用しているが、互いに異なるログイン名でログインして編集作業を行っており、編集対象となるデータはログイン名ごとに異なっているような場合である。
The plurality of program
図2は、PLC1用のプログラム5の概略について説明するための図である。本実施の形態では、1つのプログラム5、つまり、PLC1内において同時に実行することができるプログラム5を「プロジェクト」と呼ぶことにする。PLC1内には、複数のプロジェクトPj1〜Pj3を保持することができるが、これらのプログラム5は選択的にしか実行することができず、ユーザは、いずれか1つのプロジェクトPj1〜Pj3を実行対象としてプログラム実行前に指定しなければならない。同様にして、プログラム編集支援装置2内にも複数のプロジェクトPj1〜Pj3を保持することができるが、編集、動作検証、コンパイル等は各プロジェクトPj1〜Pj3ごとに行われる。
FIG. 2 is a diagram for explaining the outline of the
1つのプロジェクトPj1は、1又は2以上のモジュールmodA〜modDによって構成される。1つのプロジェクトPj1を複数の設計者で共同開発する場合、プロジェクトPj1を複数のモジュールmodA〜modDに分割し、各モジュールmodA〜modDに異なる設計者が割り当てられる。つまり、各モジュールmodA〜modDは、図1に示された異なるプログラム編集支援装置2において、それぞれ作成され、共通のPLC1へアップロードされる。ただし、動作検証のためのシミュレーションを行うためには、他の設計者が担当しているモジュールも必要となるため、これらのモジュールは、シミュレーション実行前に、PLC1からダウンロードし、あるいは、他のプログラム編集支援装置2から受信しておく。一方、全てのモジュールmodA〜modDがアップロードされたPLC1は、予め指定されている実行順序に従って、これらのモジュールmodA〜modDを順次に実行していく。
One project Pj1 includes one or more modules modA to modD. When a project Pj1 is jointly developed by a plurality of designers, the project Pj1 is divided into a plurality of modules modA to modD, and different designers are assigned to the modules modA to modD. That is, each of the modules modA to modD is created and uploaded to the
また、各モジュールmodA〜modDには、識別データidA〜idDがそれぞれ含まれている。識別データidA〜idDは、モジュールの新規作成時に生成され、その後もモジュールが変更されるたびに更新されるデータであり、異なるモジュールmodA〜modDには異なる識別データidA〜idDが格納されており、同じモジュールmodA〜modDであっても、バージョンが異なれば、異なる識別データidA〜idDが格納されている。ただし、複製されたモジュールには、複製前のモジュールと同じ識別データが格納されている。つまり、識別データidA〜idDは、モジュールmodA〜modDの編集に固有のデータである。 Each module modA to modD includes identification data idA to idD, respectively. The identification data idA to idD is data that is generated when a module is newly created and is updated every time the module is changed. Different identification data idA to idD are stored in different modules modA to modD. Even if the modules modA to modD are different in version, different identification data idA to idD are stored. However, the same identification data as the module before duplication is stored in the duplicated module. That is, the identification data idA to idD are data unique to editing of the modules modA to modD.
[プログラム編集支援装置2の詳細構成]
図3は、図1のプログラム編集支援装置2の一構成例を示したブロック図である。このプログラム編集支援装置2は、プログラム記憶部201、前回データ記憶部202、プログラム編集部21、識別データ生成部22、シミュレーション部23、コンパイル部24、データ出力部25、データ入力部26、通信I/F(Interface)部27、プログラム照合部28及び照合結果出力部29により構成される。
[Detailed Configuration of Program Editing Support Device 2]
FIG. 3 is a block diagram showing a configuration example of the program
プログラム記憶部201は、PLC1用のプログラム5を記憶する記憶手段である。プログラム5は、複数の設計者で共同開発されるプログラムであり、複数のモジュールmodA〜modDからなり、各モジュールmodA〜modD内には、識別データidA〜idDがそれぞれ格納されている。
The
このプログラム編集支援装置2を利用している設計者は、モジュールmodAの作成を担当しているものとする。つまり、プログラム記憶部201内に保持されているモジュールmodA〜modDのうち、モジュールmodAのみが当該プログラム編集支援装置2内で作成されたモジュールであり、他のモジュールmodB〜modDは、他のプログラム編集支援装置2において作成されたモジュールであり、PLC1からダウンロードされたものである。
It is assumed that the designer who uses this program
前回データ記憶部202は、識別データidA〜idDを記憶する記憶手段であり、プログラム5のアップロード時及びダウンロード時に更新される。当該プログラム編集支援装置2における編集対象はモジュールmodAであるため、前回データ記憶部202内に保持されている識別データidAは、モジュールmodAのPLC1へのアップロード時に更新され、その他の識別データidB〜idDは、モジュールmodB〜modDのPLC1からのダウンロード時に更新される。従って、前回データ記憶部202には、PLC1内に保持されていると推定される識別データidA〜idDが保持されており、他のプログラム編集支援装置2からPLC1へモジュールmodA〜modDのアップロードが行われない限り、前回データ記憶部202内及びPLC1内に保持されている識別データidA〜idDは一致する。
The previous
プログラム編集部21は、ユーザがプログラム5を新規に作成し、あるいは、既に作成されているプログラム5を変更するための手段である。本明細書では「プログラムの編集」をプログラムの新規作成及びその後の変更を含む語として使用する。プログラムの編集は、例えば、ユーザが画面表示を見ながら操作入力を行い、新たなデバイスシンボルを画面上に配置し、そのデバイス名などのパラメータを定義したり、あるいは、不要になった配置済みのデバイスシンボルを削除することによって行われる。また、デバイスシンボルについて置換、コピー又はペーストなどを行うこともできる。さらに、プログラムには、これらのデバイスシンボルから生成される命令コード以外に、PLC内の各種パラメータを設定するための設定データも含まれており、これらの設定データを編集することもできる。ここでは、プログラム5が複数のモジュールmodA〜modDで構成されているため、モジュールmodA〜modDごとに編集が行われ、編集後のモジュールmodA〜modDには、識別データidA〜idD及び更新時刻データ(例えば更新日時)が加えられて、プログラム記憶部201へ書き込まれる。
The
識別データ生成部22は、プログラム編集部21による編集終了時に、編集後のプログラム5に基づいて、識別データを生成する。ここでは、プログラム編集部21による編集対象がモジュールmodAであるため、編集後のモジュールmodAに基づいて、識別データidAを生成している。この識別データは、編集処理ごとに固有のデータとして生成される。例えば、予め定められたハッシュ関数を用いて、編集後のモジュールmodAから求められるハッシュ値を識別データidAとして利用することができる。また、モジュールmodAの編集が行われた日時や、編集を行った設計者の識別情報や、端末装置の識別情報などに基づいて識別データを生成することもできる。
The identification
なお、プログラム5又はモジュールmodA〜modDを複製する場合には、識別データも含めて複製される。つまり、プログラム記憶部201内に保持されているモジュールを複製する場合、同じ識別データをもつ別のモジュールとして、プログラム記憶部201へ書き込まれる。
When the
シミュレーション部23は、プログラム記憶部201内に保持されているプログラム5のシミュレーションを行う。ユーザは、このシミュレーション結果を見て、プログラム5が所望の動作を行うものであることを確認する。このシミュレーションは、プログラム5が複数のモジュールmodA〜modDで構成される場合であっても、モジュール単位ではなく、プログラム5単位で行われ、1つのプログラム5を構成している複数のモジュールmodA〜modD間の連携を含めた動作検証が行われる。
The
コンパイル部24は、プログラム記憶部201に記憶されているプログラム5のソースコードをオブジェクトコードに変換する処理を行う。プログラム5が複数のモジュールmodA〜modDで構成される場合、このコンパイル処理によって、モジュールmodA〜modDごとのオブジェクトコードを生成することができる。なお、生成されたオブジェクトコード内には、ソースコードに含まれていた識別データと同じデータが格納されており、コンパイル処理によって識別データidA〜idDは変更されない。
The compiling
データ出力部25は、通信I/F部27を介して、PLC1へのプログラム5の書き込み(アップロード)を行っている。また、プログラム5のアップロード時には、当該プログラム5に含まれる識別データが前回データ記憶部202に書き込まれる。プログラム5が複数のモジュールmodA〜modDで構成されている場合には、モジュールmodA〜modDごとにアップロードすることができる。このプログラム編集支援装置2の場合、プログラム記憶部201からモジュールmodAが読み出され、当該モジュールmodAに含まれる識別データidAが前回データ記憶部202に書き込まれ、その後に、当該識別データを含むモジュールmodAがPLC1へアップロードされる。
The
データ入力部26は、通信I/F部27を介して、PLC1からのプログラム5の取得(ダウンロード)を行っている。また、プログラム5のダウンロード時には、ダウンロードしたプログラム5に含まれる識別データが前回データ記憶部202にも書き込まれる。プログラム5が複数のモジュールmodA〜modDで構成されている場合には、モジュールごとにダウンロードすることができる。このプログラム編集支援装置2の場合、他のプログラム編集支援装置2で生成され、PLC1へアップロードされたモジュールmodB〜modDが、PLC1からダウンロードされる。ダウンロードされたモジュールmodB〜modDは、プログラム記憶部201へ書き込まれるとともに、当該モジュールmodB〜modDから識別データidB〜idDが抽出され、前回データ記憶部202に書き込まれる。
The
PLC1に対するアップロード及びダウンロード時に前回データ記憶部202を更新することによって、前回データ記憶部202内には、常に、PLC1に最後にアクセスした時点における識別データが保持されている。つまり、モジュールmodAについては、最後のアップロード時における識別データidAが保持されており、モジュールmodB〜modDについては、最後のダウンロード時における識別データidB〜idDが保持されている。
By updating the previous
また、データ入力部26は、PLC1からプログラム5又はモジュールmodA〜modDをダウンロードすることなく、識別データidA〜idDのみを取得することもできる。この様にしてPLC1からダウンロードされた識別データidA〜idDは、プログラム照合部28へ出力される。
The
プログラム照合部28は、注目しているプログラム5について最後のアップロード又はダウンロードが行われた後に、当該プログラム編集支援装置2内又はPLC1内のいずれかで当該プログラム5が更新されたか否かを判別する。この判別処理は、プログラム記憶部201内、前回データ記憶部202内及びPLC1内に保持されている識別データを比較することによって行われる。ここでは、ユーザによってプロジェクトPj1が予め指定されており、当該プロジェクトPj1に属する各モジュールmodA〜modDの識別情報idA〜idDについて比較が行われる。
The
PLC1内のモジュールmodA〜modDを他人が更新したか否かは、前回データ記憶部202内に保持されている識別データidA〜idDと、PLC1からダウンロードした識別データidA〜idDとを比較することによって判別できる。両者が一致しなければ、前回データ記憶部202の更新後に、PLC1内のモジュールmodA〜modDが、他のプログラム編集支援装置2からのアップロードによって更新されたと判別することができる。
Whether another person has updated the modules modA to modD in the
また、プログラム記憶部201内のモジュールmodA〜modDが編集されたか否かは、前回データ記憶部202内の識別データidA〜idDと、プログラム記憶部201内の識別データidA〜idDとを比較することによって判別できる。両者が一致しなければ、前回データ記憶部202の更新後に、PLC1内のモジュールmodA〜modDが、プログラム編集部21によって更新されたと判別することができる。
Whether or not the modules modA to modD in the
照合結果出力部29は、プログラム照合部28の照合結果に基づいて出力動作を行っている。例えば、ユーザがプログラム照合処理を指示した場合であれば、上記照合結果が画面表示される。また、ユーザがモジュールのアップロードを指示した場合であって、当該アップロードによって更新されるPLC1内のモジュールが他のプログラム編集支援装置2によって先に更新されていた場合には、警告メッセージを画面表示し、ユーザに確認のための操作入力を行わせたり、あるいは、ダウンロード処理を禁止する。
The verification
[PLC1の詳細構成]
図4は、図1のPLC1の一構成例を示したブロック図である。このPLC1は、通信I/F部11、データ入力部12、データ出力部13、プログラム記憶部14、プログラム実行部15、入力装置I/F部16及び出力装置I/F部17により構成される。
[Detailed configuration of PLC 1]
FIG. 4 is a block diagram showing a configuration example of the
プログラム記憶部14は、プログラム5を記憶する記憶手段であり、プログラム編集支援装置2からアップロードされたプログラム5が保持されている。このプログラム5は、プログラム編集支援装置2のプログラム記憶部201と同様、複数のモジュールmodA〜modDからなり、各モジュールmodA〜modD内には、識別データidA〜idD及び更新時刻データがそれぞれ格納されている。
The
通信I/F部11は、有線又は無線の通信回線を介して、各プログラム編集支援装置2と接続され、双方向のデータ通信を行っている。データ入力部12は、プログラム編集支援装置2からアップロードされたモジュールmodA〜modDをプログラム記憶部14へ書き込む。一方、データ出力部13は、いずれかのプログラム編集支援装置2からモジュールmodA〜modD又は識別データidA〜idDのダウンロード要求があった場合に、要求されたデータをプログラム記憶部14から読み出し、要求元のプログラム編集支援装置2へ送信する。
The communication I /
プログラム実行部15は、プログラム記憶部14内のプログラム5に基づいて制御を行うプロセッサである。例えば、入力装置I/F部16を介して、入力装置3から入力される検出信号に基づいて制御信号を生成し、出力装置I/F部17を介して、上記制御信号を出力装置4へ出力している。
The
[プログラム編集支援装置2の動作]
図5は、本発明の実施の形態1によるプログラム照合処理を簡略化して示した説明図である。プログラム編集支援装置2内のプログラム記憶部201には、複数のモジュールA〜Dにより構成されるプログラム5が格納されている。同様にして、PLC1内のプログラム記憶部14にも、複数のモジュールA〜Dにより構成されるプログラム5が格納されている。これらの各モジュール内には、識別データがそれぞれ格納されている。また、 プログラム編集支援装置2内の前回データ記憶部202には、プログラム記憶部201及びプログラム記憶部14間における最後のアップロード又はダウンロード時における識別データが格納されている。
[Operation of Program Editing Support Device 2]
FIG. 5 is an explanatory diagram showing a simplified program verification process according to the first embodiment of the present invention. A
従って、プログラム記憶部14及び前回データ記憶部202内の識別データを対応するモジュールごとに比較すれば、PLC1への最後のアクセス後に、他のプログラム編集支援装置2によってPLC1内のモジュールが更新されたか否かを判別することができる。また、プログラム記憶部201及び前回データ記憶部202内の識別データを対応するモジュールごとに比較すれば、PLC1への最後のアクセス後に、プログラム編集支援装置2内のモジュールが編集されたか否かを判別することができる。
Therefore, if the identification data in the
図6のステップS101〜S103は、図3のプログラム編集支援装置2の動作の一例を示したフローチャートであり、モジュールのアップロード時におけるデータ出力部25の動作が示されている。
Steps S101 to S103 in FIG. 6 are flowcharts showing an example of the operation of the program
モジュールmodAをアップロードする場合、モジュールmodAが、転送対象としてユーザによって指定され、プログラム記憶部201から読み出される(ステップS101)。データ出力部25は、読み出されたモジュールmodAから識別データidAを抽出し、前回データ記憶部202内の識別データidAを更新する(ステップS102)。この前回データ記憶部202の更新後に、上記モジュールmodAは、通信I/F部27からPLC1へ送信される(ステップS103)。
When uploading the module modA, the module modA is designated by the user as a transfer target and is read from the program storage unit 201 (step S101). The
図7のステップS201〜S204は、図3のプログラム編集支援装置2の動作の一例を示したフローチャートであり、モジュールのダウンロード時におけるデータ入力部26の動作が示されている。
Steps S201 to S204 in FIG. 7 are flowcharts showing an example of the operation of the program
モジュールmodB〜modDをダウンロードする場合、まずPLC1へダウンロード要求を送信した後(ステップS201)、PLC1からモジュールmodB〜modDを受信する(ステップS202)。データ入力部26は、受信したモジュールmodB〜modDから識別データidB〜idDを抽出し、前回データ記憶部202内の識別データidB〜idDを更新する(ステップS203)。この前回データ記憶部202の更新後に、上記モジュールmodB〜modDは、プログラム記憶部201に書き込まれる(ステップS204)。
When downloading the modules modB to modD, first, after transmitting a download request to the PLC 1 (step S201), the modules modB to modD are received from the PLC 1 (step S202). The
図8のステップS301〜S306は、図3のプログラム編集支援装置2の動作の一例を示したフローチャートであり、プログラム照合処理が示されている。このプログラム照合処理は、プログラム編集支援装置2において、ユーザがプログラム照合を指示した場合に、プログラム照合部28によって実行される。
Steps S301 to S306 in FIG. 8 are flowcharts showing an example of the operation of the program
ユーザがプロジェクトPj1を指定してプログラム照合を指示すると、プログラム照合部28は、当該プロジェクトPj1に属する全てのモジュールmodA〜modDについて、その識別データidA〜idD及び更新時刻データをPLC1からダウンロードする(ステップS301)。このとき、モジュールmodA〜modD自体をダウンロードしてもよいが、プログラム照合に必要となる識別データidA〜idD及び更新時刻データのみをダウンロードすれば、ダウンロード時間を大幅に短縮することができる。
When the user designates the project Pj1 and instructs the program collation, the
次に、前回データ記憶部202から識別データidA〜idDが読み出され(ステップS302)、ダウンロードされた識別データidA〜idDとの比較が行われる(ステップS303)。つまり、照合対象となる各モジュールmodA〜modDごとに、前回データ記憶部202内に保持されている識別データと、PLC1のプログラム記憶部14内に保持されている識別データとの比較が行われる。
Next, the identification data idA to idD are read from the previous data storage unit 202 (step S302), and compared with the downloaded identification data idA to idD (step S303). That is, for each of the modules modA to modD to be collated, the identification data held in the previous
同様にして、プログラム記憶部201から識別データidA〜idD及び更新時刻データが読み出され(ステップS304)、ダウンロードされた識別データidA〜idDとの比較が行われる(ステップS305)。つまり、照合対象となる各モジュールmodA〜modDごとに、プログラム編集支援装置2のプログラムデータ記憶部201内に保持されている識別データと、PLC1のプログラム記憶部14内に保持されている識別データとの比較が行われる。
Similarly, identification data idA to idD and update time data are read from the program storage unit 201 (step S304) and compared with the downloaded identification data idA to idD (step S305). That is, the identification data held in the program
照合結果出力部29は、ステップS303及びS305の比較結果を画面表示してユーザに知らせる(ステップS306)。例えば、ステップS303及びS305における各比較結果が、モジュールmodA〜modDごとに対応づけられて画面表示される。
The collation
なお、このプログラム照合処理では、プログラム編集支援装置2及びPLC1間で、識別データのダウンロードが行われているが、モジュールのアップロード及びダウンロードは行われていない。このため、前回データ記憶部202は更新されない。
In this program collation process, the identification data is downloaded between the program
図9は、プログラム照合部28による比較結果についての説明図である。プログラム照合部28では、プログラム照合処理の結果として、モジュールごとに2つの比較結果が得られる(図8のステップS303及びS305)。従って、これらの比較結果を組み合わせることによって、図示した4通りの照合結果(a)〜(d)が得られる。
FIG. 9 is an explanatory diagram of a comparison result by the
照合結果(a)は、注目しているモジュールmodAに関する識別データの比較結果として、ステップS303及びS305のいずれにおいても一致するという結果が出た場合である。つまり、モジュールmodAの識別データとして、プログラム記憶部201、前回データ記憶部202及びプログラム記憶部14のいずれにも同じデータが保持されていた場合である。この場合、モジュールmodAに関する最後のアクセス(アップロード又はダウンロード)後に、PLC1内のモジュールmodAは他人によって更新されておらず、また、当該プログラム編集支援装置2内のモジュールmodAも編集されていないことがわかる。
The collation result (a) is a case where a result of matching in both steps S303 and S305 is obtained as a comparison result of the identification data regarding the module modA of interest. That is, the same data is held in any of the
照合結果(b)は、注目しているモジュールmodAに関する識別データの比較結果として、ステップS303では一致するという結果が出る一方、ステップS305では一致しないという結果が出た場合である。この場合、モジュールmodAに関する最後のアクセス(アップロード又はダウンロード)後に、PLC1内のモジュールmodAは他人によって更新されていないが、当該プログラム編集支援装置2内のモジュールmodAは編集されていることがわかる。
The collation result (b) is a case where, as the comparison result of the identification data regarding the module modA of interest, a result of matching is obtained in step S303, but a result of not matching is obtained in step S305. In this case, after the last access (upload or download) related to the module modA, the module modA in the
照合結果(c)は、注目しているモジュールmodAに関する識別データの比較結果として、ステップS303では一致しないという結果が出る一方、ステップS305では一致するという結果が出た場合である。この場合、モジュールmodAに関する最後のアクセス(アップロード又はダウンロード)後に、PLC1内のモジュールmodAが他人によって更新されているが、当該プログラム編集支援装置2内のモジュールmodAは編集されていないことがわかる。
The collation result (c) is a case where, as a comparison result of identification data regarding the module modA of interest, a result that does not match is obtained in step S303, but a result that matches is obtained in step S305. In this case, after the last access (upload or download) related to the module modA, the module modA in the
照合結果(d)は、注目しているモジュールmodAに関する識別データの比較結果として、ステップS303及びS305のいずれにおいても一致しないという結果が出た場合である。この場合、モジュールmodAに関する最後のアクセス(アップロード又はダウンロード)後に、PLC1内のモジュールmodAが他人によって更新されており、当該プログラム編集支援装置2内のモジュールmodAも編集されていることがわかる。
The collation result (d) is a case in which a result indicating that there is no coincidence in either step S303 or S305 is obtained as a comparison result of the identification data regarding the module modA of interest. In this case, after the last access (upload or download) related to the module modA, it can be seen that the module modA in the
図10は、照合結果出力部29によって表示されるPLC照合/同期画面6の一例を示した図である。ユーザは、いずれかのプロジェクトを指定した後に、PLC照合/同期画面6を表示させることができる。このPLC照合/同期画面6上には、照合ボタン61、PLC書込ボタン62、PLC読出ボタン63及び照合結果表示エリア64が設けられている。これらのボタン61〜63は、マウスなどのポインティング入力手段を用いて操作することができ、ユーザは、プログラム照合処理、アップロード処理又はダウンロード処理を指示することができる。
FIG. 10 is a diagram showing an example of the PLC collation / synchronization screen 6 displayed by the collation
ユーザが照合ボタン61を操作すれば、図8に示したプログラム照合処理が実行され、その照合結果が照合結果表示エリア64に表示される。図示した照合結果表示エリア64内には、指定されたプロジェクトに属するモジュールA〜Dが異なる行にそれぞれ表示される例が示されている。
When the user operates the
各行の左側のエリアは、当該プログラム編集支援装置2のプログラム記憶部201内に保持されているモジュール名と、その更新時刻データが表示されるエディタ表示欄641である。同様にして、各行の右側のエリアは、PLC1のプログラム記憶部14内に保持されているモジュール名と、その更新時刻データが表示されるPLC表示欄643である。
The area on the left side of each row is an
各行の中央のエリアは、プログラム照合部28による照合結果を文字で表示する照合結果表示欄642である。ステップS303及びS305による照合結果が、ともに一致であったモジュールについては、照合結果表示欄642に「OK」が表示される。一方、いずれかが不一致であったモジュールについては、照合結果表示欄642には何も表示されず、エディタ表示欄641又はPLC表示欄643内の当該モジュールがハイライト(強調)表示される。つまり、ステップS303で不一致であった場合には、PLC表示欄643内の当該モジュールがハイライト表示66となり、ステップS305で不一致であった場合には、エディタ表示欄641内の当該モジュールがハイライト表示66となる。この様にして、ステップS303及びS305の比較結果をモジュールごとに対応づけて表示している。
The center area of each line is a collation
チェックボックス65は、アップロード又はダウンロードの対象となるモジュールをユーザが指定するためのチェックボックスであり、各行の左端に設けられている。ユーザは、このチェックボックス65をクリック操作し、アップロード又はダウンロードするモジュールを選択する。
The
PLC書込ボタン62は、PLC1へのアップロードを指示するための操作ボタンである。ユーザがPLC書込ボタン62を操作すれば、図6に示したアップロード処理が実行される。アップロードされるモジュールは、チェックボックス65のユーザ操作によって選択されたモジュールである。
The PLC write
PLC読出ボタン63は、PLC1からのダウンロードを指示するための操作ボタンである。ユーザがPLC読出ボタン63を操作すれば、図7に示したダウンロード処理が実行される。ダウンロードされるモジュールは、チェックボックス65のユーザ操作によって選択されたモジュールである。
The PLC read
図10に示された各モジュールA〜Dの照合結果の例について説明する。プログラム編集支援装置2内のモジュールAは編集済みであるが、この編集はPLC1内のモジュールAには反映されておらず、モジュールAをPLC1へアップロードしておく必要があることがわかる。また、PLC1内のモジュールAは他人によって更新されておらず、上記アップロードは安全に行うことができる。
An example of the matching result of each module A to D shown in FIG. 10 will be described. Although the module A in the program
プログラム編集支援装置2内のモジュールBは編集されていないが、PLC1内のモジュールBは、他のプログラム編集支援装置2によって更新されている。このため、シミュレーションを正しく行うためには、モジュールBをPLC1からダウンロードしておく必要があることがわかる。
Although the module B in the program
モジュールCについては「OK」が表示されており、プログラム編集支援装置2内及びPLC1内のモジュールが一致していることが示されている。この場合、モジュールCについてはアップロード及びダウンロードのいずれも行う必要がないことがわかる。
“OK” is displayed for the module C, indicating that the modules in the program
プログラム編集支援装置2内のモジュールDは編集済みであるが、この編集はPLC1内のモジュールDには反映されていない。一方、PLC1内のモジュールDは他のプログラム編集支援装置2によって先に更新されている。この場合、モジュールDのPLC1へのアップロードは、他人が先に更新したPLC1内のモジュールDを上書きすることになるため、慎重に行わなければならないことがわかる。
Although the module D in the program
本実施の形態によれば、プログラム照合処理によって、プログラム5の最後のアップロード又はダウンロード後に、プログラム編集支援装置2内の当該プログラムが編集されたか否かを判別することができる。また、プログラム5の最後のアップロード又はダウンロード後に、PLC1内の当該プログラムが更新されたか否かを判別することができる。従って、PLC1用のプログラム5を複数の設計者が共同で開発している場合に、自分自身によるプログラム5の変更と、他人によるプログラム5の変更とを区別して適切なバージョン管理を行うことができ、開発効率を向上させることができる。
According to the present embodiment, it is possible to determine whether or not the program in the program
実施の形態2.
実施の形態1では、プログラム照合処理を行って照合結果を表示するプログラム編集支援装置2の例について説明した。これに対し、実施の形態2では、プログラム5のアップロード時に、プログラム照合結果に基づいて警告表示を行うプログラム編集支援装置2の動作について説明する。なお、本実施の形態では、実施の形態1との相違点を中心に説明し、その他の点については実施の形態1及び2と同様であるものとする。
In the first embodiment, the example of the program
図11のステップS401〜S409は、本発明の実施の形態2によるプログラム編集支援装置2の動作の一例を示したフローチャートであり、モジュールのアップロード処理の例が示されている。このアップロード処理は、図10のPLC照合/同期画面6において、いずれかのモジュールが選択された後にPLC書込ボタン62が操作された場合に実行される。なお、2以上のモジュールが選択されている場合には、各モジュールごとに実行される。
Steps S401 to S409 in FIG. 11 are flowcharts showing an example of the operation of the program
ステップS401〜S403では、アップロード対象に指定されたモジュールについて、図8のプログラム照合処理の一部(S301〜S303)と同様の処理が行われる。すなわち、指定されたモジュールの識別データが、PLC1からダウンロードされるとともに(ステップS401)、これに対応する識別データが、前回データ記憶部202から読み出され(ステップS401)、これらの識別データが比較される(ステップS403)。 In steps S401 to S403, processing similar to part of the program collation processing (S301 to S303) in FIG. 8 is performed for the module designated as the upload target. That is, the identification data of the specified module is downloaded from the PLC 1 (step S401), and the corresponding identification data is read from the previous data storage unit 202 (step S401), and these identification data are compared. (Step S403).
この結果、識別データが一致していれば、指定されたモジュールがPLC1へアップロードされる(ステップS407〜S409)。このアップロード処理は、図6のアップロード処理(S101〜S103)と同様である。 As a result, if the identification data matches, the designated module is uploaded to the PLC 1 (steps S407 to S409). This upload process is the same as the upload process (S101 to S103) of FIG.
一方、ステップS403における比較の結果、識別データが一致していなかった場合には、画面上に警告メッセージが表示される(ステップS404,S405)。例えば「他人による更新済みモジュールに上書きしますか?」と表示され、安全なアップロードではないことをユーザに知らせて特段の注意を払うように促す。その後に、ユーザが、アップロードを了承する操作を行えば、アップロード処理(ステップS407〜S409)が行われ、アップロードを中止する操作を行えば、アップロード処理は行われない。 On the other hand, if the identification data does not match as a result of the comparison in step S403, a warning message is displayed on the screen (steps S404 and S405). For example, “Do you want to overwrite the module updated by another person?” Is displayed, and informs the user that the upload is not safe and prompts them to pay special attention. Thereafter, if the user performs an operation of approving the upload, the upload process (steps S407 to S409) is performed, and if the user cancels the upload, the upload process is not performed.
図12のステップS401〜S409は、モジュールのアップロード処理の他の例を示したフローチャートである。このフローチャートを図11と比較すれば、ユーザの意思確認のためのステップS406が省略され、ステップS405からステップS407へ遷移することができない点で異なる。つまり、アップロードが安全でない場合には、ユーザの意思にかかわらずアップロード処理が禁止されている。従って、他人が先に更新したPLC1内のモジュールを更新しようとすれば、そのモジュールを一旦ダウンロードしなければならない。
Steps S401 to S409 in FIG. 12 are flowcharts showing other examples of module upload processing. If this flowchart is compared with FIG. 11, step S406 for a user's intention confirmation is abbreviate | omitted, and it is different in the point which cannot change to step S407 from step S405. That is, when the upload is not safe, the upload process is prohibited regardless of the user's intention. Therefore, if a module in
本実施の形態によれば、プログラム編集支援装置2からPLC1へプログラム5をアップロードする際、アップロード前にプログラム照合を行って、PLC1内のプログラムが他人によって先に更新されていれば警告表示が行われる。従って、複数の設計者がプログラムを共同開発している場合、PLC1内のプログラムが不用意に上書きされるのを防止することができ、開発効率を向上させることができる。
According to the present embodiment, when the
実施の形態3.
実施の形態1では、1つのPLC1に対し、複数のプログラム編集支援装置2が接続され、各プログラム編集支援装置2を用いて、同じPLC1のプログラム5を共同で開発するPLCシステムの例について説明した。これに対し、本実施の形態では、複数のプログラム編集支援装置2と、複数のPLC1a〜1cとが互いに接続されたPLCシステムの場合について説明する。なお、本実施の形態では、実施の形態1及び2との相違点を中心に説明し、その他の点については実施の形態1と同様であるものとする。
In the first embodiment, an example of a PLC system in which a plurality of program
図13は、本発明の実施の形態3によるPLCシステムの概略構成の一例を示した図である。このPLCシステムは、複数のPLC1a〜1cと、複数のプログラム編集支援装置2a〜2dによって構成される。なお、図1に示された入力装置3及び出力装置4は省略している。
FIG. 13 is a diagram showing an example of a schematic configuration of a PLC system according to the third embodiment of the present invention. This PLC system includes a plurality of
各PLC1a〜1cは、いずれも同じプログラム5を内蔵し、同じ制御動作を行っている。また、このプログラム5は、複数のプログラム編集支援装置2a〜2dを用いて、複数の設計者によって共同開発されている。つまり、実施の形態1の場合と同様、プログラム5は複数のモジュールからなり、各モジュールが、プログラム編集支援装置2a〜2dにおいて作成されている。ただし、作成されたモジュールが1つのプログラム編集支援装置から全てのPLC1a〜1cへアップロードされる点において、実施の形態1の場合とは異なっている。
Each of the
図14は、本発明の実施の形態3によるプログラム照合処理を簡略化して示した説明図である。この図では、説明の都合上、照合対象となっている1種類のモジュールのみについて識別データが表示されている。プログラム記憶部201及び前回データ記憶部202間における識別データの比較は、図8のステップS302、305及びS306(実施の形態1)と同様である。
FIG. 14 is an explanatory diagram showing a simplified program collation process according to the third embodiment of the present invention. In this figure, for convenience of explanation, identification data is displayed for only one type of module to be verified. Comparison of identification data between the
一方、PLC1a〜1c及び前回データ記憶部202間における識別データの比較は、前回データ記憶部202から読み出された同じ識別データを各PLC1a〜1c内の識別データと順次に比較することによって行われる。つまり、図8のステップS301及びS303が、PLC1a〜1cの数だけ繰り返され、PLC1a〜1cごとの比較結果が得られる。そして、いずれかのPLC1a〜1cとの比較において、不一致という結果が得られた場合には、当該モジュールは、他人によって先に更新されたモジュールであると判断され、図10のPLC表示欄643にハイライト66が表示される。なお、この様な表示に代えて、照合結果として、PLC1a〜1cごとの比較結果をそれぞれ表示してもよい。
On the other hand, comparison of identification data between the
実施の形態4.
実施の形態3では、プログラム編集支援装置2a〜2dが、前回データ記憶部202内に複数のPLC1a〜1cに共通の識別データを保持している例について説明した。これに対し、本実施の形態では、プログラム編集支援装置2が、前回データ記憶部202内に、複数のPLC1a〜1cごとに識別データを保持している場合について説明する。なお、本実施の形態では、実施の形態1〜3との相違点を中心に説明し、その他の点については実施の形態1〜3と同様であるものとする。
Embodiment 4 FIG.
In the third embodiment, the example in which the program
図15は、本発明の実施の形態4によるプログラム照合処理を簡略化して示した説明図である。この図では、説明の都合上、照合対象となっている1種類のモジュールのみについて識別データが表示されいている。 FIG. 15 is an explanatory diagram showing a simplified program verification process according to the fourth embodiment of the present invention. In this figure, for convenience of explanation, identification data is displayed for only one type of module to be verified.
前回データ記憶部202内には、同じモジュールについて、各PLC1a〜1cごとの識別データが記憶されている。これらの識別データは、それぞれが対応するPLC1a〜1cへの最後のアップロード又はダウンロード時に更新されている。従って、同じモジュールの識別データであっても、各PLC1a〜1c内に保持されている当該モジュールのバージョンが異なっていれば、異なる識別データとなる。
In the previous
プログラム記憶部201及び前回データ記憶部202間における識別データの比較は、プログラム記憶部201から読み出された同じ識別データを前回データ記憶部202から読み出されたPLC1a〜1cごとの識別データと順次に比較することによって行われる。つまり、図8のステップS302及びS305が、PLC1a〜1cの数だけ繰り返され、PLC1a〜1cごとの比較結果が得られる。そして、いずれかの比較において、不一致という結果が得られた場合には、当該モジュールは、いずれかのPLC1a〜1cとの関係において、アップロード後に編集されたモジュールであると判断され、図10のエディタ表示欄641にハイライト66が表示される。なお、この様な表示に代えて、照合結果として、PLC1a〜1cごとの比較結果をそれぞれ表示してもよい。
The comparison of identification data between the
一方、PLC1a〜1c及び前回データ記憶部202間における識別データの比較は、各PLC1a〜1cからダウンロードされた識別データが、当該PLC1a〜1cに対応づけられた前回データ記憶部202内の識別データと順次に比較することによって行われる。つまり、図8のステップS301〜S303が、PLC1a〜1cの数だけ繰り返される。そして、いずれかのPLC1a〜1cとの比較において、不一致という結果が得られた場合には、当該モジュールは、他人によって先に更新されたモジュールであると判断され、図10のPLC表示欄643にハイライト66が表示される。なお、この様な表示に代えて、照合結果として、PLC1a〜1cごとの比較結果をそれぞれ表示してもよい。
On the other hand, comparison of identification data between the
なお、上記の各実施の形態では、主として、プログラム5が複数のモジュールにより構成される場合の例について説明したが、本発明は、このような場合には限定されない。すなわち、モジュールに分割されていないプログラム5(1つのモジュールで構成されるプログラム)についても本発明を適用することができる。
In each of the above embodiments, an example in which the
また、上記の各実施の形態では、プログラム編集支援装置2及びPLC1内において、識別データがモジュール内に格納されている場合の例について説明したが、本発明は、このような場合には限定されない。すなわち、モジュールと、その識別データとが対応づけて保持されていればよく、識別データがモジュール内に格納されている必要は必ずしもない。
In each of the above-described embodiments, an example in which identification data is stored in a module in the program
idA〜idD 識別データ
modA〜modD モジュール
Pj1〜Pj3 プロジェクト
1,1a〜1c PLC
11 通信I/F部
12 データ入力部
13 データ出力部
14 プログラム記憶部
15 プログラム実行部
2,2a〜2d プログラム編集支援装置
201 プログラム記憶部
202 前回データ記憶部
21 プログラム編集部
22 識別データ生成部
23 シミュレーション部
24 コンパイル部
25 データ出力部
26 データ入力部
27 通信I/F部
28 プログラム照合部
29 照合結果出力部
5 プログラム
6 PLC照合/同期画面
61 照合ボタン
62 書込ボタン
63 読出ボタン
64 照合結果表示エリア
641 エディタ表示欄
642 照合結果表示欄
643 PLC表示欄
65 チェックボックス
66 ハイライト表示
idA-idD Identification data modA-modD Module Pj1-
DESCRIPTION OF
Claims (10)
ユーザ操作に基づいて上記プログラムを編集するプログラム編集手段と、
上記プログラム編集手段により上記プログラムが編集された場合に、当該編集に固有の識別データを生成する識別データ生成手段と、
上記プログラム及び上記識別データをプログラマブルコントローラへ書き込むPLCデータ書込手段と、
上記プログラマブルコントローラへ書き込まれる上記識別データを保持する第1識別データ記憶手段と、
上記プログラマブルコントローラから識別データを取得するPLCデータ取得手段と、
上記プログラマブルコントローラから取得した識別データを第1識別データ記憶手段が保持する識別データと比較する第1比較手段と、
上記第1比較手段の比較結果に基づいて表示を行う表示手段とを備えたことを特徴とするプログラム編集支援装置。 Program storage means for holding a program for a programmable controller;
Program editing means for editing the program based on a user operation;
When the program is edited by the program editing means, identification data generating means for generating identification data unique to the editing;
PLC data writing means for writing the program and the identification data into the programmable controller;
First identification data storage means for holding the identification data written to the programmable controller;
PLC data acquisition means for acquiring identification data from the programmable controller;
First comparison means for comparing the identification data acquired from the programmable controller with the identification data held by the first identification data storage means;
A program editing support apparatus comprising: display means for performing display based on a comparison result of the first comparison means.
上記プログラム記憶手段は、上記プログラマブルコントローラから取得した上記プログラムを格納し、
上記第1識別データ記憶手段は、上記プログラマブルコントローラから取得した上記プログラムが上記プログラム記憶手段に格納される場合に、上記プログラマブルコントローラから取得した上記識別データを格納することを特徴とする請求項1に記載のプログラム編集支援装置。 The PLC data acquisition means acquires a program and identification data from the programmable controller,
The program storage means stores the program acquired from the programmable controller,
The first identification data storage unit stores the identification data acquired from the programmable controller when the program acquired from the programmable controller is stored in the program storage unit. The program editing support apparatus described.
上記表示手段は、上記第1比較手段の比較結果に基づいて、上記プログラムの上記プログラマブルコントローラへの書き込み前に警告表示を行うことを特徴とする請求項1又は2に記載のプログラム編集支援装置。 The PLC data acquisition means acquires identification data from the programmable controller when the user instructs writing of the program held in the program storage means to the programmable controller,
3. The program editing support apparatus according to claim 1, wherein the display unit displays a warning before writing the program into the programmable controller based on a comparison result of the first comparison unit.
上記第1及び第2識別データ記憶手段が保持する識別データを比較する第2比較手段とを備え、
上記表示手段が、上記第1及び第2の比較手段の比較結果に基づいて表示を行うことを特徴とする請求項1又は2に記載のプログラム編集支援装置。 Second identification data storage means for storing the latest identification data generated by the identification data generation means;
Second comparison means for comparing the identification data held by the first and second identification data storage means,
3. The program editing support apparatus according to claim 1, wherein the display means performs display based on a comparison result of the first and second comparison means.
上記プログラム編集手段は、上記モジュールを編集することができ、
上記識別データ生成手段は、上記モジュールが編集された場合に、当該編集に固有の識別データを生成し、
上記PLCデータ書込手段は、上記モジュール及び上記識別データを上記プログラマブルコントローラへ書き込み、
上記第1比較手段は、同一のモジュールについて、上記プログラマブルコントローラから読み出された識別データを第1識別データ記憶手段が保持する識別データと比較し、
上記第2比較手段は、同一のモジュールについて、第1及び第2識別データ記憶手段が保持する識別データを比較することを特徴とする請求項4に記載のプログラム編集支援装置。 The above program consists of two or more modules.
The program editing means can edit the module,
The identification data generation means generates identification data unique to the editing when the module is edited,
The PLC data writing means writes the module and the identification data to the programmable controller,
The first comparison unit compares the identification data read from the programmable controller with the identification data held by the first identification data storage unit for the same module;
5. The program editing support apparatus according to claim 4, wherein the second comparison unit compares identification data held by the first and second identification data storage units for the same module.
上記プログラム複製手段は、プログラムを複製する際、上記第2識別データ記憶手段に保持されている当該プログラムの識別データも複製することを特徴とする請求項4に記載のプログラム編集支援装置。 A program duplicating unit for duplicating the program held in the program storing unit;
5. The program editing support apparatus according to claim 4, wherein when the program is duplicated, the identification data of the program held in the second identification data storage means is also duplicated.
プログラマブルコントローラ用の制御プログラムを保持するプログラム記憶手段と、
ユーザ操作に基づいて上記制御プログラムを編集するプログラム編集手段と、
上記プログラム編集手段により上記制御プログラムが編集された場合に、当該編集に固有の識別データを生成する識別データ生成手段と、
上記制御プログラム及び上記識別データをプログラマブルコントローラへ書き込むPLCデータ書込手段と、
上記プログラマブルコントローラへ書き込まれる上記識別データを保持する識別データ記憶手段と、
上記プログラマブルコントローラから識別データを取得するPLCデータ取得手段と、
上記プログラマブルコントローラから取得した識別データを識別データ記憶手段が保持する識別データと比較する比較手段とを備えたプログラム編集支援装置としてコンピュータを機能させることを特徴とするコンピュータプログラム。 A computer program for causing a computer to function as a program editing support device,
Program storage means for holding a control program for a programmable controller;
Program editing means for editing the control program based on a user operation;
When the control program is edited by the program editing means, identification data generating means for generating identification data unique to the editing,
PLC data writing means for writing the control program and the identification data to the programmable controller;
Identification data storage means for holding the identification data written to the programmable controller;
PLC data acquisition means for acquiring identification data from the programmable controller;
A computer program for causing a computer to function as a program editing support apparatus comprising comparison means for comparing identification data acquired from the programmable controller with identification data held by an identification data storage means.
上記プログラム編集ステップにより上記プログラムが編集された場合に、当該編集に固有の識別データを生成する識別データ生成ステップと、
上記プログラム及び上記識別データをプログラマブルコントローラへ書き込むPLCデータ書込ステップと、
上記プログラマブルコントローラへ書き込まれる上記識別データを識別データ記憶手段に格納する識別データ格納ステップと、
上記プログラマブルコントローラから識別データを取得するPLCデータ取得ステップと、
上記プログラマブルコントローラから取得した識別データを識別データ記憶手段が保持する識別データと比較する比較ステップと、
上記比較ステップの比較結果に基づいて表示を行う表示ステップとを備えたことを特徴とするプログラム編集支援方法。 A program editing step for editing a program for a programmable controller held by the program storage unit based on a user operation;
An identification data generating step for generating identification data unique to the editing when the program is edited by the program editing step;
PLC data writing step for writing the program and the identification data into the programmable controller;
An identification data storage step of storing the identification data written to the programmable controller in an identification data storage means;
PLC data acquisition step of acquiring identification data from the programmable controller;
A comparison step of comparing the identification data acquired from the programmable controller with the identification data held by the identification data storage means;
A program editing support method comprising: a display step for performing display based on a comparison result of the comparison step.
上記プログラマブルコントローラが、プログラム及び識別データを保持する記憶手段を備え、
上記プログラム編集支援装置が、
プログラマブルコントローラ用のプログラムを保持するプログラム記憶手段と、
ユーザ操作に基づいて上記プログラムを編集するプログラム編集手段と、
上記プログラム編集手段により上記プログラムが編集された場合に、当該編集に固有の識別データを生成する識別データ生成手段と、
上記プログラム及び上記識別データをプログラマブルコントローラへ書き込むPLCデータ書込手段と、
上記プログラマブルコントローラへ書き込まれる上記識別データを保持する識別データ記憶手段と、
上記プログラマブルコントローラから識別データを取得するPLCデータ取得手段と、
上記プログラマブルコントローラから取得した識別データを識別データ記憶手段が保持する識別データと比較する比較手段と、
上記比較手段の比較結果に基づいて表示を行う表示手段とを備えたことを特徴とするPLCシステム。 A PLC system comprising a programmable controller and a plurality of program editing support devices,
The programmable controller comprises storage means for holding a program and identification data,
The program editing support device is
Program storage means for holding a program for a programmable controller;
Program editing means for editing the program based on a user operation;
When the program is edited by the program editing means, identification data generating means for generating identification data unique to the editing;
PLC data writing means for writing the program and the identification data into the programmable controller;
Identification data storage means for holding the identification data written to the programmable controller;
PLC data acquisition means for acquiring identification data from the programmable controller;
Comparison means for comparing the identification data acquired from the programmable controller with the identification data held by the identification data storage means;
A PLC system comprising: display means for performing display based on a comparison result of the comparison means.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007128550A JP4865634B2 (en) | 2007-05-14 | 2007-05-14 | Program editing support apparatus, computer program, program editing support method, and PLC system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007128550A JP4865634B2 (en) | 2007-05-14 | 2007-05-14 | Program editing support apparatus, computer program, program editing support method, and PLC system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008282362A true JP2008282362A (en) | 2008-11-20 |
JP4865634B2 JP4865634B2 (en) | 2012-02-01 |
Family
ID=40143099
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007128550A Active JP4865634B2 (en) | 2007-05-14 | 2007-05-14 | Program editing support apparatus, computer program, program editing support method, and PLC system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4865634B2 (en) |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102236333A (en) * | 2010-04-30 | 2011-11-09 | 深圳市合信自动化技术有限公司 | Programmable logic controller program uploading device and method |
WO2012017522A1 (en) * | 2010-08-03 | 2012-02-09 | 富士通株式会社 | Verification program and verification device |
JPWO2011104935A1 (en) * | 2010-02-25 | 2013-06-17 | 三菱電機株式会社 | Maintenance controller, maintenance method and maintenance system |
JP2013168031A (en) * | 2012-02-15 | 2013-08-29 | Fuji Electric Co Ltd | Programmable controller system, support device thereof, and program |
JP2014127055A (en) * | 2012-12-27 | 2014-07-07 | Jtekt Corp | Peripheral device of plc |
JP5551767B2 (en) * | 2010-04-14 | 2014-07-16 | 三菱電機株式会社 | Security method between engineering tool and industrial product, and security system |
JP2015018349A (en) * | 2013-07-09 | 2015-01-29 | 富士電機株式会社 | Sharing data definition support system, master device thereof, local terminal, program |
JP2015022511A (en) * | 2013-07-18 | 2015-02-02 | 富士電機株式会社 | Programmable controller system, and support device and program thereof |
JP2015156068A (en) * | 2014-02-20 | 2015-08-27 | 三菱電機株式会社 | Program collating device |
WO2015136970A1 (en) * | 2014-03-14 | 2015-09-17 | オムロン株式会社 | Control apparatus and control system |
JP2016099899A (en) * | 2014-11-25 | 2016-05-30 | 富士電機株式会社 | Control system, support device of the same, and programmable control device |
JP2016110493A (en) * | 2014-12-09 | 2016-06-20 | 株式会社キーエンス | Monitoring system, area monitoring sensor, and setting data creation device |
JP2016207150A (en) * | 2015-04-28 | 2016-12-08 | 株式会社日立製作所 | Process control system, maintenance assist device, and controller |
JP2017150859A (en) * | 2016-02-22 | 2017-08-31 | 株式会社キーエンス | Setting assistance device for optical safety sensor, setting assistance program, optical safety system, and optical safety sensor |
JP2017211747A (en) * | 2016-05-24 | 2017-11-30 | 株式会社日立ビルシステム | Remote writing system and program file update method thereof |
JP2019028955A (en) * | 2017-08-04 | 2019-02-21 | 株式会社明電舎 | Programmable controller management system |
GB2568368A (en) * | 2017-09-13 | 2019-05-15 | Fisher Rosemount Systems Inc | Assistant application for a modular control system |
US10409253B2 (en) | 2016-10-24 | 2019-09-10 | Fisher-Rosemount Systems, Inc. | Systems and methods for merging modular control systems into a process plant |
WO2020012881A1 (en) * | 2018-07-13 | 2020-01-16 | オムロン株式会社 | Program development device and controller |
JP2020119294A (en) * | 2019-01-24 | 2020-08-06 | ファナック株式会社 | Ladder program editing system, server, terminal device, ladder program editing method and program |
KR20200140382A (en) * | 2018-05-29 | 2020-12-15 | 미쓰비시덴키 가부시키가이샤 | Program management system, programming support device, program management method and programming support program |
US10962962B2 (en) | 2019-05-20 | 2021-03-30 | Fisher-Rosemount Systems, Inc. | Quick connection techniques for skid communicator tool |
US11568112B2 (en) | 2017-03-30 | 2023-01-31 | Mitsubishi Electric Corporation | System design support apparatus and system design support method |
JP7539593B1 (en) | 2023-06-20 | 2024-08-23 | 三菱電機株式会社 | Programmable device, version management method and program |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08278809A (en) * | 1995-04-07 | 1996-10-22 | Toshiba Corp | Plant controller |
JP2000003270A (en) * | 1998-06-12 | 2000-01-07 | Mitsubishi Electric Corp | Version managing device and shipping managing device |
JP2003208327A (en) * | 2002-01-15 | 2003-07-25 | Konica Corp | Method, device and program for managing data |
JP2005316778A (en) * | 2004-04-28 | 2005-11-10 | Toshiba Corp | Plant monitoring controller |
JP2007079651A (en) * | 2005-09-12 | 2007-03-29 | Fuji Electric Fa Components & Systems Co Ltd | Programming device for programmable controller |
-
2007
- 2007-05-14 JP JP2007128550A patent/JP4865634B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08278809A (en) * | 1995-04-07 | 1996-10-22 | Toshiba Corp | Plant controller |
JP2000003270A (en) * | 1998-06-12 | 2000-01-07 | Mitsubishi Electric Corp | Version managing device and shipping managing device |
JP2003208327A (en) * | 2002-01-15 | 2003-07-25 | Konica Corp | Method, device and program for managing data |
JP2005316778A (en) * | 2004-04-28 | 2005-11-10 | Toshiba Corp | Plant monitoring controller |
JP2007079651A (en) * | 2005-09-12 | 2007-03-29 | Fuji Electric Fa Components & Systems Co Ltd | Programming device for programmable controller |
Cited By (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2011104935A1 (en) * | 2010-02-25 | 2013-06-17 | 三菱電機株式会社 | Maintenance controller, maintenance method and maintenance system |
US9672363B2 (en) | 2010-04-14 | 2017-06-06 | Mitsubishi Electric Corporation | Security method for engineering tools and industrial products, and security system |
JP5551767B2 (en) * | 2010-04-14 | 2014-07-16 | 三菱電機株式会社 | Security method between engineering tool and industrial product, and security system |
CN102236333A (en) * | 2010-04-30 | 2011-11-09 | 深圳市合信自动化技术有限公司 | Programmable logic controller program uploading device and method |
WO2012017522A1 (en) * | 2010-08-03 | 2012-02-09 | 富士通株式会社 | Verification program and verification device |
JP5316719B2 (en) * | 2010-08-03 | 2013-10-16 | 富士通株式会社 | Verification program and verification device |
JP2013168031A (en) * | 2012-02-15 | 2013-08-29 | Fuji Electric Co Ltd | Programmable controller system, support device thereof, and program |
JP2014127055A (en) * | 2012-12-27 | 2014-07-07 | Jtekt Corp | Peripheral device of plc |
JP2015018349A (en) * | 2013-07-09 | 2015-01-29 | 富士電機株式会社 | Sharing data definition support system, master device thereof, local terminal, program |
JP2015022511A (en) * | 2013-07-18 | 2015-02-02 | 富士電機株式会社 | Programmable controller system, and support device and program thereof |
JP2015156068A (en) * | 2014-02-20 | 2015-08-27 | 三菱電機株式会社 | Program collating device |
WO2015136970A1 (en) * | 2014-03-14 | 2015-09-17 | オムロン株式会社 | Control apparatus and control system |
CN106104397A (en) * | 2014-03-14 | 2016-11-09 | 欧姆龙株式会社 | Control device and control system |
JPWO2015136970A1 (en) * | 2014-03-14 | 2017-04-06 | オムロン株式会社 | Control device and control system |
US10162328B2 (en) | 2014-03-14 | 2018-12-25 | Omron Corporation | Controller and control system |
JP2016099899A (en) * | 2014-11-25 | 2016-05-30 | 富士電機株式会社 | Control system, support device of the same, and programmable control device |
JP2016110493A (en) * | 2014-12-09 | 2016-06-20 | 株式会社キーエンス | Monitoring system, area monitoring sensor, and setting data creation device |
JP2016207150A (en) * | 2015-04-28 | 2016-12-08 | 株式会社日立製作所 | Process control system, maintenance assist device, and controller |
JP2017150859A (en) * | 2016-02-22 | 2017-08-31 | 株式会社キーエンス | Setting assistance device for optical safety sensor, setting assistance program, optical safety system, and optical safety sensor |
JP2017211747A (en) * | 2016-05-24 | 2017-11-30 | 株式会社日立ビルシステム | Remote writing system and program file update method thereof |
US10409253B2 (en) | 2016-10-24 | 2019-09-10 | Fisher-Rosemount Systems, Inc. | Systems and methods for merging modular control systems into a process plant |
US11568112B2 (en) | 2017-03-30 | 2023-01-31 | Mitsubishi Electric Corporation | System design support apparatus and system design support method |
JP2019028955A (en) * | 2017-08-04 | 2019-02-21 | 株式会社明電舎 | Programmable controller management system |
JP7087299B2 (en) | 2017-08-04 | 2022-06-21 | 株式会社明電舎 | Programmable controller management system and program |
GB2568368A (en) * | 2017-09-13 | 2019-05-15 | Fisher Rosemount Systems Inc | Assistant application for a modular control system |
GB2568368B (en) * | 2017-09-13 | 2022-08-24 | Fisher Rosemount Systems Inc | Assistant application for a modular control system |
US11209806B2 (en) | 2017-09-13 | 2021-12-28 | Fisher-Rosemount Systems, Inc. | Assistant application for a modular control system |
KR102225850B1 (en) | 2018-05-29 | 2021-03-11 | 미쓰비시덴키 가부시키가이샤 | Program management system, programming support device, program management method and programming support program |
KR20200140382A (en) * | 2018-05-29 | 2020-12-15 | 미쓰비시덴키 가부시키가이샤 | Program management system, programming support device, program management method and programming support program |
CN112219172A (en) * | 2018-07-13 | 2021-01-12 | 欧姆龙株式会社 | Program development device and controller |
EP3822719A4 (en) * | 2018-07-13 | 2022-04-20 | OMRON Corporation | Program development device and controller |
JP2020013211A (en) * | 2018-07-13 | 2020-01-23 | オムロン株式会社 | Program development device and controller |
JP7180158B2 (en) | 2018-07-13 | 2022-11-30 | オムロン株式会社 | Program development device and controller |
WO2020012881A1 (en) * | 2018-07-13 | 2020-01-16 | オムロン株式会社 | Program development device and controller |
JP2020119294A (en) * | 2019-01-24 | 2020-08-06 | ファナック株式会社 | Ladder program editing system, server, terminal device, ladder program editing method and program |
JP7227015B2 (en) | 2019-01-24 | 2023-02-21 | ファナック株式会社 | LADDER PROGRAM EDITING SYSTEM, SERVER, TERMINAL DEVICE, LADDER PROGRAM EDITING METHOD AND PROGRAM |
US10962962B2 (en) | 2019-05-20 | 2021-03-30 | Fisher-Rosemount Systems, Inc. | Quick connection techniques for skid communicator tool |
US11656610B2 (en) | 2019-05-20 | 2023-05-23 | Fisher-Rosemount Systems, Inc | Quick connection techniques for skid communicator tool |
JP7539593B1 (en) | 2023-06-20 | 2024-08-23 | 三菱電機株式会社 | Programmable device, version management method and program |
Also Published As
Publication number | Publication date |
---|---|
JP4865634B2 (en) | 2012-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4865634B2 (en) | Program editing support apparatus, computer program, program editing support method, and PLC system | |
JP5039428B2 (en) | Programmable controller and PLC system | |
US10705500B2 (en) | Support device, method, and recording medium for simplifying control program changing operation | |
JP2008276690A (en) | Development system, server for development system, and development method | |
JP7067273B2 (en) | Support equipment, control systems, and development support programs | |
JP5425317B2 (en) | Motion SFC program parts creation device | |
JP6541902B1 (en) | Program management system, programming support apparatus, program management method, and programming support program | |
JP2005242682A (en) | Graphical programming apparatus and programmable display unit | |
JP2016224559A (en) | Program creation support device, control method and program | |
JP2006330866A (en) | Programmable logic controller | |
JP6794668B2 (en) | Programming device | |
JP7238678B2 (en) | Information processing equipment, support programs and support systems | |
JP2015022511A (en) | Programmable controller system, and support device and program thereof | |
KR20150127163A (en) | Program editing device, program editing method and program editing program | |
JP6455096B2 (en) | Control system, its support device, programmable control device | |
JP5481267B2 (en) | Control program creation device and control program creation device drive method | |
JP6566151B2 (en) | System design support apparatus and system design support method | |
EP4261678A1 (en) | Generation of a technical instruction | |
JP2006163657A (en) | Playback simulator | |
JP2016200872A (en) | Control program creation device, control program debug method | |
Stürmer et al. | Modeling Guidelines and Model Analysis Tools in Embedded Automotive Software Development. | |
JP7447574B2 (en) | Support equipment, support programs and support methods | |
JP2009098963A (en) | Automatic module generation system | |
JP2015097029A (en) | Software development support device, software development support method, and program | |
JP6355861B1 (en) | Program development support apparatus, program development support method, program development support program, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100319 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110420 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110426 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110620 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20111101 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20111110 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20141118 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4865634 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |