JP2020155044A - プログラム編集装置、プログラム編集方法、および、プログラム編集プログラム - Google Patents
プログラム編集装置、プログラム編集方法、および、プログラム編集プログラム Download PDFInfo
- Publication number
- JP2020155044A JP2020155044A JP2019055348A JP2019055348A JP2020155044A JP 2020155044 A JP2020155044 A JP 2020155044A JP 2019055348 A JP2019055348 A JP 2019055348A JP 2019055348 A JP2019055348 A JP 2019055348A JP 2020155044 A JP2020155044 A JP 2020155044A
- Authority
- JP
- Japan
- Prior art keywords
- program
- graphic
- unit
- processing
- pair
- 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
Images
Landscapes
- Programmable Controllers (AREA)
Abstract
Description
図1を参照して、まず、本発明が適用された構成の一例を説明する。図1は、本実施形態の全体概要を示す図である。図1には、本発明に係るプログラム編集装置が端末装置100に適用された一構成例を示している。
以下、端末装置100の構成例について、詳細に説明する。
プログラム編集部110は、図形プログラムの編集を行うが、例えば、図形プログラム群に変更が生じる際、ユーザが編集前後の差分を確認したいと考える場合が生ずる。プログラム編集部110は、ユーザの操作を受け付けた場合には、図形プログラム群の比較を行う。
ステップS301において、プログラム編集部110は、プログラム記憶部121に保存されている第一の図形プログラム群PA及び第二の図形プログラム群PBを読み込む。
ステップS302において、プログラム編集部110は、ユーザからの比較操作を受け付ける。
ステップS303において、比較部111は、比較対象として2以上の図形プログラム群が選択されているかどうかを判断する。2以上の図形プログラム群が比較対象として選択されている場合、比較部111は、ステップS304に移行する。2未満の図形プログラム群のみが選択されている場合、比較部111は、比較操作の受付状態を維持するためステップS302へ移行する。
ステップS304において、比較部111は、選択された図形プログラム群同士を比較し、処理内容に差異がある部分を特定する。詳細には、実質的な差異が生じている箇所を特定する。具体的には、まず、差分表示ペア選定部112は、一方の図形プログラム群の中のある図形プログラムに対して、もう一方の図形プログラム群の中のいずれの図形プログラムと比較するかを決定する。ユーザの感覚上もっとも似ている図形プログラム同士の組み合わせを比較する方がよりユーザが直感的に差分を把握できるようになるため、差分表示ペア選定部112は、可能な限り類似した図形プログラム同士を選出する。後述するように、そのような方法は複数考えられる。比較の対象となる図形プログラムの組のパターンを決定した後、比較部111は、図形プログラムのペアについて、処理内容に差異がある部分を特定する。
ステップS305において、比較部111は、処理内容として実質的に差異が生じている部分の図形を明示して図形プログラムを表示する。図形プログラム表示制御部114は、該差異をより見やすくするために図形プログラムの座標を再設定し、例えば表示部140を通じてスクリーンに表示する。
以下、図形プログラム群を比較する方法の例について説明する。
ステップS401において、差分表示ペア選定部112は、両図形プログラム群内の図形プログラムの数が同じかどうかを判断する。もし同数でない場合、差分表示ペア選定部112はステップS402へ移行し、図形プログラムの数が少ない方の図形プログラム群に、単位処理図形も有向線も持たない図形プログラムを仮想的に追加して、ステップS401の判断を再び行う。もし同数である場合、差分表示ペア選定部112は、ステップS404からステップS406までを、各図形プログラム群から1件ずつ選びだした図形プログラムの全ペアについて繰り返す。全てのペアについて繰り返した後、ステップS407に移行する。
ステップS404において、差分表示ペア選定部112は、各図形プログラム群から図形プログラムの組を一つずつ抽出する。
ステップS405において、編集操作量導出部113は、ステップS404で抽出された図形プログラムの組において、抽出した組み合わせに係る最短編集操作量を算出する。最短編集操作量とは、一方の図形プログラムから他方の図形プログラムへ変化させるために必要な操作量のことであり、例えば、「単位処理図形の追加」「単位処理図形の削除」「単位処理図形の変更」「有向線の追加」「有向線の削除」「有向線の変更」についてそれぞれ編集操作量を1として算出する。
ステップS406において、編集操作量導出部113は、ステップS405で算出された最短編集距離を、例えばマトリクス内に保存して、求められた値を再使用できるようにする。
ステップS407において、差分表示ペア選定部112は、図形プログラムのペアパターンからペアパターン表を生成する。ペアパターン表は、両図形プログラム群内で可能な図形プログラムの組み合わせパターンを定義するものである。
ステップS408において、差分表示ペア選定部112は、ステップS407で定義されたペアパターンごとに、例えば、当該ペアパターンにおける各図形プログラムのペアにおける編集操作量の合計を求める。なお、編集操作量の合計の代わりに、編集操作量の総乗(総乗算値)を求めてもよい。ただし、この場合には、編集操作量が0となる組み合わせが1つでも存在する場合にそのペアパターンの編集操作量の総乗(総乗算値)が0となってしまうことを防ぐため、編集操作量が0となる組み合わせは総乗(総乗算値)の計算から除外される。全てのペアパターンについて計算が完了したのち、ステップS410に移行する。
ステップS409において、差分表示ペア選定部112は、最も編集操作量の合計の小さいペアパターンを選定する。なお、最も編集操作量の合計の小さいペアパターンの代わりに、最も編集操作量の総乗(総乗算値)の小さいペアパターンを選定してもよい。どちらの選定方法によっても、ユーザの直感に近い類似度で図形プログラムのペアを選定することができる。
ステップS410において、比較部111は、両図形プログラム群において実質的な差異が生じている箇所を特定する。実質的な差異は、最短編集操作において行われる操作、例えば、単位処理図形の追加・削除・パラメータの変更等である。または、編集操作を求める方法の精度によって最短編集操作を求めることができない場合には、最短に近い編集操作における操作であってもよい。
図8は、図形プログラム表示制御部114が図5の例の図形プログラム群PA及び図形プログラム群PBを、それぞれ「変更前」「変更後」として表示する場合の一例を示した画面図である。
図10は、差分表示ペア選定部112の処理の流れの一例として、各図形プログラム群から選定されうる図形プログラムのペアの、編集操作量の合計が最小となる組み合わせを求める、図4とは別の方法を示したフローチャートである。なお、図4で説明したステップと同内容のステップについては、詳細な説明を繰り返さない。
ステップS4031において、差分表示ペア選定部112は、図形プログラムのペアパターンからペアパターン表を生成する。このステップは、図4のステップS406に相当する。生成されたペアパターンごとに、以下ステップS4041からステップS410までを繰り返す。
まず、ペアパターンに含まれるペアごとにステップS4041からステップS4091までを繰り返す。ステップS4041において、差分表示ペア選定部112は、当該ペアの最短編集操作量を既に計算したかどうかを判定する。未計算の場合、ステップS4051へ移行する。計算済みの場合、ステップS4071へ移行する。
ステップS4051は、図4のステップS404に相当する。
ステップS4061は、図4のステップS405に相当する。
ステップS4071において、差分表示ペア選定部112は、当該ペアに係る計算済みの最短編集操作量を読み込む。
ステップS4081において、差分表示ペア選定部112は、現在ペアの最短編集操作量を現在ペアパターンの最短編集量合計に加算する。
ステップS4091において、差分表示ペア選定部112は、現在ペアパターンの計算済み最短編集操作量の合計が他のペアパターンの最短編集操作量の合計以上であるかどうかを判断する。現在ペアパターンの計算済み最短編集操作量の合計が、編集操作量の合計が最小のペアパターンの編集操作量の合計未満である場合、次のペアについてステップS4041に移行し、そうでない場合は、次のペアパターンについてステップS4041に移行する。
図11は、図4のステップS405で、編集操作量の合計の代わりに、該ペアにおける共部の単位処理図形及び有向線の最大数(以下、最大共通単位数という)を用いる場合のフローチャートである。なお、図4で説明したステップと同内容のステップについては、詳細な説明を繰り返さない。
ステップS4042において、編集操作量導出部113は、選定されたペアにおいて単位処理図形及び単位処理図形に接続された有向線が同一となっている部分について、何個の単位処理図形及び有向線が同一であるかを算出する。図5の例で言えば、例えば、図形プログラムPA3と図形プログラムPB3とは、単位処理図形F31及び単位処理図形F31を始点とする有向線において同一であり、他に同一の単位処理図形を持たないので、最大共通単位数は2と計算される。
ステップS4072において、編集操作量導出部113は、当該ペアパターンにおける最大共通単位数の合計を求める。
ステップS4082において、差分表示ペア選定部112は、最大共通単位数の合計が最大となるペアパターンを選定する。
図12は、差分表示ペア選定部112が図形プログラムのペアを選定する際に図形プログラムの仮想平面上の座標を用いる場合の処理の流れを示したフローチャートである。なお、図4で説明したステップと同内容のステップについては、詳細な説明を繰り返さない。
ステップS4033において、差分表示ペア選定部112は、各図形プログラムの基準座標値を取得する。基準座標値とは、例えば、各図形プログラムの始点となっている単位処理図形の仮想平面上の座標でもよく、各図形プログラムの始点から最も多くの単位処理図形及び有向線を介した単位処理図形の単位処理図形でもよい。また、別の例では、各図形プログラム内の単位処理図形のX座標又はY座標の最大値・最小値・平均値・中央値等を基準座標値として用いてもよい。
ステップS4043において、差分表示ペア選定部112は、基準座標値をもとに、一方の図形プログラム群の各図形プログラムに対し、もう一方の図形プログラム群から図形プログラムを選び出してペアパターンを選定する。例えば、差分表示ペア選定部112は、各図形プログラムのペアにおける基準座標値の差の合計が最小になるようペアパターンを選定しても良いし、基準座標値の差の総乗(総乗算値)(差が0のペアを除く)が最小になるようペアパターンを選定しても良い。
図14は、図4のステップS405において、編集操作量の算出の際に各操作の内容に応じた重みづけを示した場合の図である。例えば、「単位処理図形の置換」操作は、単位処理図形を削除及び追加する操作と同じとも考えられるため、編集操作量は「単位処理図形の削除」及び「単位処理図形の追加」の和である2としている。また、単位処理図形にて実行される内容が同じで、パラメータのみが異なる場合、実質的な差異は小さいと考えられるため、「単位処理図形の置換」の4分の1の値である0.5に設定されている。
また、プログラム編集部110は、各単位処理図形に重複しない番号を付して、各図形プログラム群における座標を比較し、座標が異なる単位処理図形を差分として表示することもできる。本変形例によれば、図形プログラムのペアを選定することなく、差分を比較することができるため、計算量を減らし高速に処理することができる。
プログラム編集部110は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。
110 プログラム編集部
111 比較部
112 差分表示ペア選定部
113 編集操作量導出部
114 図形プログラム表示制御部
123 図形プログラム表示部
140 表示部
210 PLC
PA、PB 図形プログラム群
PA1、PA2、PA3、PA4、PB1、PB2、PB3、PB4 図形プログラム
Claims (10)
- 通信ネットワークを介して制御対象機器を制御するPLC(Programmable Logic Controller)で実行されるプログラムを編集するプログラム編集装置であって、
ユーザからの入力に応じて、処理ステップを示す単位処理図形を有向線によって接続し、複数の処理ステップを順に実行する前記プログラムを図形プログラムとして生成し、表示する制御を行うプログラム編集部を備え、
ユーザによって選択された複数の前記図形プログラム同士を比較し、処理内容に差異がある部分の前記単位処理図形および前記有向線を明示して表示する制御を行う比較部を、
さらに備えるプログラム編集装置。 - 前記比較部は、複数の前記図形プログラムを含む図形プログラム群がユーザによって複数選択される指示入力を受け付けるとともに、選択された複数の前記図形プログラム群に含まれる複数の前記図形プログラムの中から、比較すべき前記図形プログラムのペアを選定する選定部をさらに備える請求項1に記載のプログラム編集装置。
- 前記選定部は、比較すべき前記図形プログラムのペアの候補のそれぞれについて、一方の前記図形プログラムから、他方の前記図形プログラムへ変更するために必要な編集操作量を算出し、前記編集操作量に基づいて、比較すべき前記図形プログラムのペアを選定する請求項2に記載のプログラム編集装置。
- 前記選定部は、候補となる全ての前記ペアの中から、(1)前記編集操作量の合計が最小となる前記ペア、(2)前記編集操作量の総乗算値が最小となる前記ペア、または、(3)共通となる前記単位処理図形の数および前記有向線の数の合計が最大となる前記ペアを選定する請求項3に記載のプログラム編集装置。
- 前記図形プログラム群のそれぞれについて、含まれる複数の前記図形プログラムの順番が決まっており、
前記選定部は、前記順番に基づいて、比較すべき前記図形プログラムのペアを選定する請求項2に記載のプログラム編集装置。 - 前記比較部は、処理内容に差異がない部分の前記単位処理図形および前記有向線に関して、比較対象の複数の前記図形プログラム同士で互いに位置が対応するように表示する制御を行う請求項1〜5のいずれか一項に記載のプログラム編集装置。
- 前記比較部は、処理内容に差異がない部分の前記単位処理図形および前記有向線に関して、比較対象の複数の前記図形プログラムのそれぞれにおいて省略表示をする制御を行う請求項1〜5のいずれか一項に記載のプログラム編集装置。
- 前記比較部は、処理内容に差異がある部分の前記単位処理図形に関して、前記単位処理図形の処理内容に係るパラメータに差異がある場合に、該パラメータを表示する制御を行う請求項1〜7のいずれか一項に記載のプログラム編集装置。
- 通信ネットワークを介して制御対象機器を制御するPLC(Programmable Logic Controller)で実行されるプログラムを編集するプログラム編集方法であって、
ユーザからの入力に応じて、処理ステップを示す単位処理図形を有向線によって接続し、複数の処理ステップを順に実行する前記プログラムを図形プログラムとして生成し、表示する制御を行う編集ステップと、
ユーザによって選択された複数の前記図形プログラム同士を比較し、処理内容に差異がある部分の前記単位処理図形および前記有向線を明示して表示する制御を行う比較ステップと、
を含むプログラム編集方法。 - 請求項1〜8のいずれか一項に記載のプログラム編集装置としてコンピュータを機能させるためのプログラム編集プログラムであって、上記各部としてコンピュータを機能させるためのプログラム編集プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019055348A JP7192603B2 (ja) | 2019-03-22 | 2019-03-22 | プログラム編集装置、プログラム編集方法、および、プログラム編集プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019055348A JP7192603B2 (ja) | 2019-03-22 | 2019-03-22 | プログラム編集装置、プログラム編集方法、および、プログラム編集プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020155044A true JP2020155044A (ja) | 2020-09-24 |
JP7192603B2 JP7192603B2 (ja) | 2022-12-20 |
Family
ID=72559438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019055348A Active JP7192603B2 (ja) | 2019-03-22 | 2019-03-22 | プログラム編集装置、プログラム編集方法、および、プログラム編集プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7192603B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7483183B1 (ja) | 2023-08-31 | 2024-05-14 | 三菱電機株式会社 | 画像生成プログラム、画像生成装置、支援システム及び画像生成方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08314702A (ja) * | 1995-05-19 | 1996-11-29 | Nec Corp | 視覚プログラミングシステムおよび図形プログラム編集方法 |
JP2016115017A (ja) * | 2014-12-12 | 2016-06-23 | 日本電信電話株式会社 | フローチャート作成方法及びプログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4370805B2 (ja) | 2003-05-13 | 2009-11-25 | トヨタ自動車株式会社 | 車両用自動変速機の油温判定装置 |
-
2019
- 2019-03-22 JP JP2019055348A patent/JP7192603B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08314702A (ja) * | 1995-05-19 | 1996-11-29 | Nec Corp | 視覚プログラミングシステムおよび図形プログラム編集方法 |
JP2016115017A (ja) * | 2014-12-12 | 2016-06-23 | 日本電信電話株式会社 | フローチャート作成方法及びプログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7483183B1 (ja) | 2023-08-31 | 2024-05-14 | 三菱電機株式会社 | 画像生成プログラム、画像生成装置、支援システム及び画像生成方法 |
Also Published As
Publication number | Publication date |
---|---|
JP7192603B2 (ja) | 2022-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107643728B (zh) | 机械学习模型构筑装置及方法、数值控制装置 | |
US9129075B2 (en) | Mesh generation system | |
CN113656533A (zh) | 一种树形控件处理方法、装置及电子设备 | |
JP7192603B2 (ja) | プログラム編集装置、プログラム編集方法、および、プログラム編集プログラム | |
CN112292659B (zh) | 通过从语义变焦增强用户接口调用开发工具来从控制计算机编写装置的代码 | |
US10269150B1 (en) | Curve editing based on inferred control points | |
JPWO2018062465A1 (ja) | プログラム開発支援装置、プログラム開発支援方法、および、プログラム開発支援プログラム | |
US20220111515A1 (en) | Method and Apparatus for Managing Robot Program | |
US10994381B2 (en) | Controller, data generation device, control method, and control program | |
KR101926463B1 (ko) | 영상 처리를 위한 공정 관리장치 및 그 동작 방법 | |
CN116048492A (zh) | 虚拟道具搭建方法、图形化编程方法及装置、电子设备 | |
KR101769129B1 (ko) | 온라인 환경에서 구현되는 대시보드 내 차트간 인터랙션 방법 | |
CN107256004B (zh) | 产品加工方法及装置 | |
US20150370547A1 (en) | Program editing device, program editing method and program editing program | |
CN114564268A (zh) | 一种设备管理方法、装置、电子设备和存储介质 | |
JP2015197796A (ja) | 電子ホワイトボード装置、電子ホワイトボードの入力支援方法、及びプログラム | |
CN114022105A (zh) | 数据处理方法、装置、电子设备和可读存储介质 | |
JP2012128609A (ja) | 図面作成支援方法及び装置 | |
JP2007004687A (ja) | グリッド生成方法 | |
CN113781608A (zh) | 一种动画编辑方法及装置 | |
JP2022115747A (ja) | コンテンツ作成システム及び方法 | |
CN117725767B (zh) | 参数化构件模型自动生成方法、插件、系统、终端及介质 | |
JP2013218736A (ja) | 情報処理装置、設計モデル管理システム、情報処理装置の制御方法、及びプログラム | |
JP7180524B2 (ja) | プログラム編集装置、プログラム編集方法、および、プログラム編集プログラム | |
EP4362057A1 (en) | Electron beam rendering device, electron beam rendering method, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201215 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210825 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211102 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220517 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220708 |
|
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: 20221108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221121 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7192603 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |