JP7186689B2 - Plcプログラム開発支援装置 - Google Patents
Plcプログラム開発支援装置 Download PDFInfo
- Publication number
- JP7186689B2 JP7186689B2 JP2019204484A JP2019204484A JP7186689B2 JP 7186689 B2 JP7186689 B2 JP 7186689B2 JP 2019204484 A JP2019204484 A JP 2019204484A JP 2019204484 A JP2019204484 A JP 2019204484A JP 7186689 B2 JP7186689 B2 JP 7186689B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- template
- unit
- design
- information
- 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.)
- Active
Links
Images
Landscapes
- Programmable Controllers (AREA)
Description
したがって、ユーザにとっては、所望の設計項目に第一の記号を付しておくことにより、所望の設計項目を確認する際には、特定の設計項目として一括して表示されるため、特定の設計項目を検索するのみでよい。その結果、操作性を向上することができる。
しかしながら、PLCプログラム開発における未熟練者にとっては、必要な設計項目のみ抽出し、選択するのは、非常に困難であるという問題があった。
実施の形態1では、部品名称とその部品に付属の特記処理に対応するテンプレートプログラムに対して、機場情報あるいは過去のランタイム情報を基に、当該テンプレートプログラムに、機能情報または非機能要件で構成される設計項目を自動付与できるようにしている。
ここで、部品とは、どの機場においても標準的に用いられるものであり、また、部品に付属の特記処理とは、機場の要件に合わせた特別な処理のことを指す。
例えば、「ポンプAに対し、ある警報が発生した場合にダイアログ表示を行う」という事象において、特記処理にあたるのは「警報発生時にダイアログ表示を行う」という処理である。
また、設計項目とは、部品に関するPLCの制御内容について設計を行なうためのもので、上述のように、機能情報または非機能要件で構成される。
図1において、PLCプログラム開発支援装置は、次のように構成されている。
開発用端末1は、例えば、パーソナルコンピュータのような端末である。テンプレートプログラム管理装置2は、開発用端末1と交信し、ユーザが入力したテンプレートプログラムを取得して管理する。機場データ管理装置3は、過去の機場データを管理し、解析するとともに、テンプレートプログラム管理装置2との間で情報の送受信を行う。
図2において、符号2、3は図1におけるものと同一のものである。
テンプレートプログラム管理装置2は、次のように構成されている。
テンプレートプログラム管理部21(テンプレートプログラム取得部)は、ユーザが開発用端末1を介して、入力した部品の名称と特記処理(例えば、警報鳴動処理が組み込まれたポンプ)に対応するテンプレートプログラムを受け付ける。テンプレートプログラム管理DB(database)22は、受け付けたテンプレートプログラムを格納する。設計項目付与部23は、ユーザが入力したテンプレートプログラムに、そのテンプレートプログラムに対応する設計項目を付与する。
機場プログラム管理DB31には、機場ごとの過去のプログラムが格納されている。
機場プログラム解析部32(機場プログラム取得部)は、テンプレートプログラム管理部21から送信されたテンプレートプログラムを機場プログラム管理DB31と比較し、同一のプログラムがあるかどうかを解析する。
機場情報DB33には、機場ごとの部品名称と特記処理の名称を含む機場情報(例えば、機場A、αエリア、βポンプなどの名称、警報名称および故障種別などの特記処理名称など)が格納されている。
ランタイム情報DB35には、プログラム実行時の情報であるランタイム情報(例えば、日時、警報情報、鳴動時間、警報発生時の挙動など)が格納されている。
設計項目管理部36(設計項目成形部)は、ランタイムデータ取得部34から得られたランタイム情報を、プログラム設計に用いられる設計項目(例えば、「βポンプにγ警報を発生させる」、「鳴動時間をt秒とする」、「警報発生時は~という挙動とする」)に成形する。
PLCプログラム開発支援装置の動作を図3のフローチャートに基づいて説明する。
ユーザが、開発用端末1により、部品の名称と特記処理に対応するテンプレートプログラムを入力すると、テンプレートプログラム管理部21にてテンプレートプログラムを取得する(ステップST100)。
次いで、テンプレートプログラム管理部21で取得したテンプレートプログラムを機場プログラム解析部32に送信する(ステップST101)。
次いで、機場プログラム解析部32が、機場プログラム管理DB31に、ステップST101で取得したテンプレートプログラムを送信する(ステップST102)。
ステップST103で、同一のプログラムが見つかれば、機場プログラム管理DB31から機場プログラム解析部32に機場プログラムを送信する(ステップST104)。
ステップST103で、機場プログラム管理DB31内に同一のプログラムが見つからなければ、終了する。
ステップST105で得られたアドレスを、機場プログラム解析部32から機場情報DB33に送信する(ステップST106)。
機場情報DB33は、受信したアドレスに基づいた機場情報を取得し、機場プログラム解析部32に機場情報を送信する(ステップST107)。ここで、機場情報とは、部品名称と特記処理の名称などを指している。
ランタイムデータ取得部34は、受信した機場情報を、ランタイム情報DB35に送信する(ステップST109)。
ランタイム情報DB35内に、送信された機場情報を含むものがあれば、ランタイム情報DB35からランタイムデータ取得部34に、該当するランタイム情報を送信する(ステップST111)。
ステップST110で、ランタイム情報DB35内に機場情報を含むものがなければ、終了する。
ステップST112で成形した設計項目を、機場データ管理装置3から設計項目付与部23に送信し、設計項目付与部23が、その設計項目をテンプレートプログラム管理部21から送信されたテンプレートプログラムに付与する(ステップST113)。
次に、ステップST113で生成された設計項目つきテンプレートプログラムを、テンプレートプログラム管理DB22に格納する(ステップST114)。
ユーザが「警報鳴動処理が組み込まれたポンプ」のテンプレートプログラムを作成した場合、入力したテンプレートプログラムと同一の機場プログラムがないかどうかを、ステップST103で解析する。
同一のプログラムがあれば、機場プログラムを機場プログラム解析部32に送信し(ステップST104)、その機場プログラムを解析することで、部品に割り付けられているアドレス(デジタル信号DI×××)が取得できる(ステップST105)。
該当するランタイム情報があれば、そのランタイム情報(例えば、日時、警報情報、鳴動時間、警報発生時の挙動)をランタイムデータ取得部34に送信する(ステップST111)。
次に、成形できた設計項目をテンプレートプログラムに付与する(ステップST113)。
次いで、設計項目が付与されたテンプレートプログラムをテンプレートプログラム管理DB22に格納する(ステップST114)。
これにより、ユーザが特定の設計項目で検索すると、その設計項目を実現するために、どのようなテンプレートプログラムが用いられているかを知ることができる。
図4は、実施の形態2によるPLCプログラム開発支援装置の構成を示すブロック図である。
図4において、符号2、3、21~23、31~36は図2におけるものと同一のものである。図4では、機場データ管理装置3に、部品に割り付けられているアドレスの種別の解析、および通信規約からアドレスの範囲の確認を行い、テンプレートプログラムに付与するI/O(Input/Output)コメントの生成を行うI/Oコメント付与部37を設けている。
図5において、監視制御装置のシステムとして、機器7の監視制御を行う監視制御装置4と、機器7の制御を行うPLC6と、監視制御装置4とPLC6の双方向で情報、制御指令の伝達を実現するプラント制御バス5とを有する。
また、アドレスの種別について説明するために、図5に、PLCプログラム開発支援装置が用いられる監視制御装置のシステム構成を示す。
アドレスの種別は、大きく分けて3種類存在し、プラント制御バス5のアドレス、PLC6のプログラム内のアドレス、監視制御対象の機器7のアドレスがある。アドレスの頭文字を見ることで、3種類のアドレスのどれに該当するかが判別できるようになっている。
図6に示されるフローチャートのうち、ステップST200~ステップST205は、図3のステップST100~ステップST105の処理と同じ処理であるため、その説明を省略する。
以下では、実施の形態1と異なる、ステップST206~ステップST211について説明する。
I/Oコメント付与部37において、受信したアドレスの種別の解析および通信規約からアドレスの範囲の確認を行う(ステップST207)。
ステップST208で生成されたI/OコメントつきのテンプレートプログラムをI/Oコメント付与部37から設計項目管理部36に送信する(ステップST209)。
ステップST210で生成された設計項目と、I/Oコメントつきテンプレートプログラムをテンプレートプログラム管理DB22に格納する(ステップST211)。
機場プログラム解析部32は、部品に割り付けられたアドレス(例えば、DI×××)を取得すると、I/Oコメント付与部37に取得したアドレスとテンプレートプログラムを送信する(ステップST206)。
次に、I/Oコメント付与部37において、受信したデジタル信号DI×××の解析を行うと、アドレスの頭文字が「DI」なので、プラント制御バスのアドレスであること、また通信規約のメモリマップを見ることで「DI」のアドレス値の範囲を知ることができる(ステップST207)。
具体的なI/Oコメント例は、「βポンプの部品には制御バスのアドレスを入力してください。」あるいは「アドレスの範囲は100から200までの値を入力してください。」のようなものがある。
図7は、実施の形態3によるPLCプログラム開発支援装置の構成を示すブロック図である。
図7において、符号2、3、21~23、31~37は図4におけるものと同一のものである。図7では、テンプレートプログラム管理装置2に、部品名と部品に付与される設計項目を関係図として生成する関係図生成部24と、部品名とそのプログラムが格納された部品DB25と、関係図生成部24で生成された関係図の表示を行う関係図表示部26とを設けている。
図9において、ポンプA8に付与される設計項目の関係を表わす図を示す。ポンプA8に付与される設計項目には、設計項目A&設計項目B9の両設計項目を含む場合、設計項目A10のみの場合、設計項目B11のみの場合、設計項目C12のみの場合がある。このように標準的に用いられる部品と部品に関わる設計項目を関係図として表している。
ユーザが入力した部品名を関係図表示部26が取得する(ステップST300)。
次いで、関係図表示部26は、取得した部品名を関係図生成部24に送信する(ステップST301)。
関係図生成部24は、部品DB25に部品名(例えば、ポンプA)を送信する(ステップST302)。
関係図生成部24は、受信した部品のプログラムをテンプレートプログラム管理DB22に送信する(ステップST304)。
テンプレートプログラム管理DB22内に、部品のプログラムが含まれているテンプレートプログラムが ステップST305で抽出されたもの以外にあるかどうかを解析する(ステップST306)。
関係図としては、例えばツリー図などが挙げられ、具体的なツリー図を図9に示す。生成した関係図を関係図表示部26に送信する(ステップST308)。
関係図表示部26は、受信した関係図を表示する(ステップST309)。
図10は、実施の形態4によるPLCプログラム開発支援装置の構成を示すブロック図である。
図10において、符号2、3、21~26、31~37は図7におけるものと同一のものである。図10では、テンプレートプログラム管理装置2に、テンプレートプログラム解析部27とテンプレートプログラム表示部28を設けている。テンプレートプログラム解析部27とテンプレートプログラム表示部28とは、テンプレートプログラム生成部を形成する。
テンプレートプログラム解析部27は、設計項目が付与されているテンプレートプログラムを、ユーザが選択した部品と設計項目のプログラムに分割する。テンプレートプログラム表示部28は、ユーザが選択した部品名と設計項目に対応するプログラムを結合し、新たなテンプレートプログラムの表示を行う。
ユーザが、表示された関係図の部品名と設計項目をクリックする(ステップST400)。
これにより、関係図表示部26に、クリックした部品名とユーザが選択した設計項目が送信される(ステップST401)。
部品DB25は、受信した部品名が部品DB25内にあるかどうかを検索し、部品名に対応するプログラムを関係図表示部26に送信する(ステップST403)。
テンプレートプログラム管理DB22は、受信した設計項目が付与されているテンプレートプログラムが、テンプレートプログラム管理DB22内にあるかどうかを検索し、対応するテンプレートプログラムがあれば、関係図表示部26に送信する(ステップST405)。
送信していない設計項目がある場合、ステップST404とステップST405を繰り返す。ない場合は、関係図表示部26が、取得した部品のプログラムとテンプレートプログラムとをテンプレートプログラム解析部27に送信する(ステップST407)。
次いで、関係図表示部26が、取得した部品のプログラムをテンプレートプログラム表示部28に送信する(ステップST408)。
テンプレートプログラムを、特記処理と部品のプログラムとに分割する(ステップST410)。
特記処理の入出力情報とプログラムをテンプレートプログラム表示部28に送信する(ステップST411)。
テンプレートプログラム解析部27に、分割されていないテンプレートプログラムがあるかどうか解析する(ステップST413)。
分割されていないテンプレートプログラムがある場合は、ステップST409~ステップST412を繰り返す。
分割されていないテンプレートプログラムがない場合は、テンプレートプログラム表示部28にて、結合したプログラムを表示する(ステップST414)。
従って、例示されていない無数の変形例が、本願明細書に開示される技術の範囲内において想定される。例えば、少なくとも1つの構成要素を変形する場合、追加する場合または省略する場合、さらには、少なくとも1つの構成要素を抽出し、他の実施の形態の構成要素と組み合わせる場合が含まれるものとする。
4 監視制御装置、5 プラント制御バス、6 PLC、7 機器、8 ポンプA、
9 設計項目A&設計項目B、10 設計項目A、11 設計項目B、
12 設計項目C、21 テンプレートプログラム管理部、
22 テンプレートプログラム管理DB、23 設計項目付与部、
24 関係図生成部、25 部品DB、26 関係図表示部、
27 テンプレートプログラム解析部、28 テンプレートプログラム表示部、
31 機場プログラム管理DB、32 機場プログラム解析部、33 機場情報DB、
34 ランタイムデータ取得部、35 ランタイム情報DB、36 設計項目管理部、
37 I/Oコメント付与部、100 プロセッサ、101 記憶装置
Claims (4)
- プラント監視制御に用いられるプログラマブルロジックコントローラのプログラム開発を支援するPLCプログラム開発支援装置であって、
制御の対象となる部品およびこの部品についての処理に対応するテンプレートプログラムを取得するテンプレートプログラム取得部、
機場ごとに作成された過去の機場プログラムから、上記テンプレートプログラムと同一の機場プログラムを取得するとともに、当該機場プログラムの上記部品に関する情報である機場情報を取得する機場プログラム取得部、
この機場プログラム取得部により取得された機場情報に関連する、上記機場プログラムの実行時の情報であるランタイム情報を取得するランタイム情報取得部、
このランタイム情報取得部により取得された上記ランタイム情報を、上記部品の制御設計のための設計項目に成形する設計項目成形部、
この設計項目成形部により成形された上記設計項目を上記テンプレートプログラムに付与する設計項目付与部を備えたことを特徴とするPLCプログラム開発支援装置。 - 上記テンプレートプログラムにI/Oコメントを付与するI/Oコメント付与部を備え、
上記部品には、アドレスが割り付けられ、
上記機場プログラム取得部は、上記機場プログラムを解析し、上記部品に割り付けられたアドレスを取得し、
上記I/Oコメント付与部によって付与される上記I/Oコメントには、上記機場プログラム取得部によって取得された上記アドレスと、このアドレスの種別および上下限値とが含まれることを特徴とする請求項1に記載のPLCプログラム開発支援装置。 - 部品名の入力に応じて、当該部品が使用されているテンプレートプログラムを取得し、上記取得したテンプレートプログラムに付与されている設計項目を取得して、上記部品と上記設計項目との関係図を生成する関係図生成部、
この関係図生成部により生成された上記関係図を表示する関係図表示部を備えたことを特徴とする請求項1または請求項2に記載のPLCプログラム開発支援装置 - 上記関係図表示部により表示された上記関係図上の上記部品および上記設計項目が選択されることにより、上記部品に対応して作成された部品プログラムと上記設計項目に関連する上記テンプレートプログラムとを抽出し、この抽出した上記部品プログラムおよび上記テンプレートプログラムに基づき、上記部品および上記設計項目に対応する新しいテンプレートプログラムを生成するテンプレートプログラム生成部を備えたことを特徴とする請求項3に記載のPLCプログラム開発支援装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019204484A JP7186689B2 (ja) | 2019-11-12 | 2019-11-12 | Plcプログラム開発支援装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019204484A JP7186689B2 (ja) | 2019-11-12 | 2019-11-12 | Plcプログラム開発支援装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021077189A JP2021077189A (ja) | 2021-05-20 |
JP7186689B2 true JP7186689B2 (ja) | 2022-12-09 |
Family
ID=75898095
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019204484A Active JP7186689B2 (ja) | 2019-11-12 | 2019-11-12 | Plcプログラム開発支援装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7186689B2 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003108220A (ja) | 2001-09-28 | 2003-04-11 | Omron Corp | 制御プログラム開発支援方法及び装置 |
US20090327991A1 (en) | 2008-06-30 | 2009-12-31 | Rockwell Automation Technologies, Inc. | Industry template customization and transclusion for use in industrial automation and information solutions |
JP2011198237A (ja) | 2010-03-23 | 2011-10-06 | Metawater Co Ltd | プログラム作成支援装置および方法ならびにプログラム |
JP2018173699A (ja) | 2017-03-31 | 2018-11-08 | 株式会社日立社会情報サービス | テンプレート生成装置、テンプレート生成方法およびプログラム |
JP2019175310A (ja) | 2018-03-29 | 2019-10-10 | Necソリューションイノベータ株式会社 | 情報処理装置、情報処理方法、およびプログラム |
-
2019
- 2019-11-12 JP JP2019204484A patent/JP7186689B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003108220A (ja) | 2001-09-28 | 2003-04-11 | Omron Corp | 制御プログラム開発支援方法及び装置 |
US20090327991A1 (en) | 2008-06-30 | 2009-12-31 | Rockwell Automation Technologies, Inc. | Industry template customization and transclusion for use in industrial automation and information solutions |
JP2011198237A (ja) | 2010-03-23 | 2011-10-06 | Metawater Co Ltd | プログラム作成支援装置および方法ならびにプログラム |
JP2018173699A (ja) | 2017-03-31 | 2018-11-08 | 株式会社日立社会情報サービス | テンプレート生成装置、テンプレート生成方法およびプログラム |
JP2019175310A (ja) | 2018-03-29 | 2019-10-10 | Necソリューションイノベータ株式会社 | 情報処理装置、情報処理方法、およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2021077189A (ja) | 2021-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112162753B (zh) | 软件部署方法、装置、计算机设备和存储介质 | |
CN109542529B (zh) | 基于函数名称的埋点方法、装置、计算机设备及存储介质 | |
CN107590214B (zh) | 搜索关键词的推荐方法、装置及电子设备 | |
CN109284321B (zh) | 数据加载方法、装置、计算设备和计算机可读存储介质 | |
US20210374110A1 (en) | Detection system and method, and related apparatus | |
US10496818B2 (en) | Systems and methods for software security scanning employing a scan quality index | |
JP6117760B2 (ja) | 静的解析警告のユーザインタフェース使用可能レビューを促進するシステム及び方法 | |
CN110716866A (zh) | 代码质量扫描方法、装置、计算机设备及存储介质 | |
CN111124540A (zh) | 服务控制系统的动态配置方法和业务请求转发方法 | |
CN110647459A (zh) | 应用测试方法及装置 | |
CN107871055B (zh) | 一种数据分析方法和装置 | |
JP7186689B2 (ja) | Plcプログラム開発支援装置 | |
CN110515979A (zh) | 数据查询方法、装置、设备和存储介质 | |
US8219966B2 (en) | Method and system for integrating an application floorplan and an external service | |
CN106485520B (zh) | 跨渠道通讯控制方法及服务器 | |
CN112069236B (zh) | 关联文件的展示方法、装置、设备及存储介质 | |
CN112073511B (zh) | 一种应用页面的生成系统及方法 | |
CN113051299A (zh) | 代理信息处理方法、装置、计算机设备和存储介质 | |
CN107766228B (zh) | 一种基于多语种的自动化测试方法和装置 | |
CN107679198B (zh) | 信息的查询方法及装置 | |
CN110955449A (zh) | 客户端的灰度发布方法及装置 | |
CN113918606B (zh) | 日志查询方法及装置 | |
CN112486497A (zh) | 编译配置文件的生成方法、装置、电子设备及存储介质 | |
CN110704729A (zh) | 应用搜索方法及云端服务器 | |
KR100949800B1 (ko) | 단위 테스트 코드를 이용하는 단위 코드의 테스트 방법 및테스트 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211206 |
|
TRDD | Decision of grant or rejection written | ||
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221031 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20221101 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20221129 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7186689 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |