JP6477553B2 - プログラム開発支援装置、プログラム開発支援プログラムおよびプログラム開発支援方法 - Google Patents
プログラム開発支援装置、プログラム開発支援プログラムおよびプログラム開発支援方法 Download PDFInfo
- Publication number
- JP6477553B2 JP6477553B2 JP2016049247A JP2016049247A JP6477553B2 JP 6477553 B2 JP6477553 B2 JP 6477553B2 JP 2016049247 A JP2016049247 A JP 2016049247A JP 2016049247 A JP2016049247 A JP 2016049247A JP 6477553 B2 JP6477553 B2 JP 6477553B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- safety
- document
- identification value
- development support
- 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
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/058—Safety, monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/73—Program documentation
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44552—Conflict resolution, i.e. enabling coexistence of conflicting executables
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13129—Automatic documentation of program
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/14—Plc safety
- G05B2219/14014—Redundant processors and I-O
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/23—Pc programming
- G05B2219/23009—Automatic documentation of program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/006—Identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Library & Information Science (AREA)
- Programmable Controllers (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
Description
まず、本実施の形態に従う安全コントローラで実行される安全プログラムに関するドキュメント管理の概要について説明する。図1は、本実施の形態に従う安全システムで実行される安全プログラムに関するドキュメント管理の概要について説明する模式図である。
次に、本実施の形態に従うドキュメント出力機能を有する支援装置100の構成について概略する。図4は、本実施の形態に従う支援装置100の構成例を示す模式図である。
次に、本実施の形態に従うドキュメント出力機能に用いる署名コードの生成処理について説明する。
上述したような安全コントローラは、一種のPLC(Programmable Logic Controller)であり、上述したような安全プログラムの他、一般的な制御プログラムも実行可能である。また、安全プログラムには、図5に示すような非機能安全部も含まれ得る。一方で、上述したような署名コードは、少なくとも、機能安全の評価に関連する部分についてのみ存在すれば機能を果たす。そのため、出力されるドキュメントの全体(すなわち、全ページ)に対して署名コードを付与するのではなく、機能安全に係る部分(すなわち、一部のページ)のみに対して、署名コードを付与するようにしてもよい。
次に、支援装置100がドキュメントを出力するソースとなる安全プログラムの検証機能について説明する。図1を参照して説明したように、支援装置100から出力されるドキュメントの内容が、安全コントローラ200で実行される安全プログラムの内容と一致していなければ、ドキュメントに基づいて機能安全を評価することができない。そのため、本実施の形態に従う支援装置100では、以下に示すような、安全コントローラ200との間で安全プログラムの同一性を検証する機能を有している。
本実施の形態に従う支援装置100は、出力されるドキュメントの安全プログラムに係るページのすべてに、当該安全プログラムの同一性を担保するための識別値である署名コードが付与されるので、一部ページの差し替えといった改ざんなどを容易に発見することができ、安全コントローラで実行される安全プログラムに係るドキュメントの取り扱いを厳密化できる。
Claims (7)
- 安全コントローラで実行される安全プログラムの開発を支援するプログラム開発支援装置であって、
ユーザ操作に応じて安全プログラムを開発する開発手段と、
特定の規則に従った演算を行う関数に従って、開発された安全プログラムのデータに応じた識別値を計算する計算手段と、
前記安全プログラムに係るドキュメントを出力する出力手段とを備え、
前記出力手段は、前記ドキュメントの前記安全プログラムに係るページのすべてに、前記計算手段により計算された識別値を付与する、プログラム開発支援装置。 - 前記出力手段は、出力されるドキュメントを構成するページのうち、機能安全に係るページについて、当該ページのすべてに前記計算手段により計算された識別値を付与する、請求項1に記載のプログラム開発支援装置。
- 前記計算手段は、前記開発手段により生成される複数のデータからそれぞれ第1の識別値を計算するとともに、複数の第1の識別値から前記ドキュメントに付与する第2の識別値を計算する、請求項1または2に記載のプログラム開発支援装置。
- 前記計算手段は、予め定められた生成多項式に従って計算される巡回冗長検査コードを前記識別値として出力する、請求項1〜3のいずれか1項に記載のプログラム開発支援装置。
- 前記出力手段は、前記プログラム開発支援装置にて保持される安全プログラムから計算される識別値と、前記安全コントローラで実行される安全プログラムから計算される識別値とが同一であることを条件として、前記ドキュメントを出力する、請求項1〜4のいずれか1項に記載のプログラム開発支援装置。
- 安全コントローラで実行される安全プログラムの開発を支援するプログラム開発支援プログラムであって、前記プログラム開発支援プログラムはコンピュータに
ユーザ操作に応じて安全プログラムを開発するステップと、
特定の規則に従った演算を行う関数に従って、開発された安全プログラムのデータに応じた識別値を計算するステップと、
前記安全プログラムに係るドキュメントを出力するステップとを実行させ、
前記出力するステップは、前記ドキュメントの前記安全プログラムに係るページのすべてに、前記計算された識別値を付与するステップを含む、プログラム開発支援プログラム。 - 安全コントローラで実行される安全プログラムの開発を支援する装置で実行されるプログラム開発支援方法であって、
ユーザ操作に応じて安全プログラムを開発するステップと、
特定の規則に従った演算を行う関数に従って、開発された安全プログラムのデータに応じた識別値を計算するステップと、
前記安全プログラムに係るドキュメントを出力するステップとを備え、
前記出力するステップは、前記ドキュメントの前記安全プログラムに係るページのすべてに、前記計算された識別値を付与するステップを含む、プログラム開発支援方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016049247A JP6477553B2 (ja) | 2016-03-14 | 2016-03-14 | プログラム開発支援装置、プログラム開発支援プログラムおよびプログラム開発支援方法 |
EP17151107.4A EP3220218B1 (en) | 2016-03-14 | 2017-01-12 | Program development support device, program development support method, and program development support program |
CN201710020384.7A CN107193249B (zh) | 2016-03-14 | 2017-01-12 | 程序开发辅助装置以及程序开发辅助方法 |
US15/407,506 US10095512B2 (en) | 2016-03-14 | 2017-01-17 | Program development support device, non-transitory storage medium storing thereon computer-readable program development support program, and program development support method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016049247A JP6477553B2 (ja) | 2016-03-14 | 2016-03-14 | プログラム開発支援装置、プログラム開発支援プログラムおよびプログラム開発支援方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017167588A JP2017167588A (ja) | 2017-09-21 |
JP6477553B2 true JP6477553B2 (ja) | 2019-03-06 |
Family
ID=58017892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016049247A Active JP6477553B2 (ja) | 2016-03-14 | 2016-03-14 | プログラム開発支援装置、プログラム開発支援プログラムおよびプログラム開発支援方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10095512B2 (ja) |
EP (1) | EP3220218B1 (ja) |
JP (1) | JP6477553B2 (ja) |
CN (1) | CN107193249B (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6816553B2 (ja) * | 2017-02-21 | 2021-01-20 | オムロン株式会社 | 制御システム |
JP7024678B2 (ja) * | 2018-09-28 | 2022-02-24 | オムロン株式会社 | 制御システム、サポート装置、サポートプログラム |
DE102018129354A1 (de) * | 2018-11-21 | 2020-05-28 | Phoenix Contact Gmbh & Co. Kg | Verfahren zum Bearbeiten von Anwendungsprogrammen auf einem verteilten Automatisierungssystem |
JP7404748B2 (ja) * | 2019-10-03 | 2023-12-26 | オムロン株式会社 | プログラム開発装置およびプログラム開発装置を実現するためのプログラム |
JP7563281B2 (ja) * | 2021-04-12 | 2024-10-08 | オムロン株式会社 | 制御装置、制御システム、管理方法およびプログラム |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4864569A (en) * | 1987-11-25 | 1989-09-05 | Westinghouse Electric Corp. | Software verification and validation configuration management system |
US5359659A (en) * | 1992-06-19 | 1994-10-25 | Doren Rosenthal | Method for securing software against corruption by computer viruses |
JP2001022574A (ja) * | 1999-07-05 | 2001-01-26 | Mitsubishi Electric Corp | モジュール保守管理システム |
US20030028774A1 (en) * | 2001-08-06 | 2003-02-06 | Meka Anil Kumar | Ensuring the integrity of an electronic document |
CA2484015A1 (en) * | 2002-04-03 | 2003-10-09 | Gsbs Development Corporation | Communication system |
US7571370B2 (en) * | 2003-06-19 | 2009-08-04 | Lsi Logic Corporation | Configurable, fast, 32-bit CRC generator for 1-byte to 16-bytes variable width input data |
US7533369B2 (en) * | 2004-03-15 | 2009-05-12 | Ramco Systems Limited | Method and system for providing documentation and training in a software development activity |
US7788640B2 (en) * | 2004-12-28 | 2010-08-31 | Microsoft Corporation | Using code analysis to generate documentation |
US20080250394A1 (en) * | 2007-04-04 | 2008-10-09 | Microsoft Corporation | Synchronizing external documentation with code development |
EP2447843B1 (de) * | 2010-10-06 | 2013-07-03 | Siemens Aktiengesellschaft | Verfahren zur Verifizierung eines Anwendungsprogramms einer fehlersicheren Speicherprogrammierbaren Steuerung, und Speicherprogrammierbare Steuerung zur Ausführung des Verfahrens |
JP2013016013A (ja) * | 2011-07-04 | 2013-01-24 | Omron Corp | 開発支援装置および開発支援プログラム |
US20140046457A1 (en) * | 2012-07-05 | 2014-02-13 | Renewable Process Technologies Llc | System and related method to facilitate process control |
KR20140099126A (ko) * | 2013-02-01 | 2014-08-11 | 삼성전자주식회사 | 소프트웨어를 보안하기 위하여 해시 함수를 이용한 소프트웨어 처리 방법, 그 장치 및 그 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체 |
JP5777837B2 (ja) * | 2013-03-04 | 2015-09-09 | 三菱電機株式会社 | プログラム開発支援装置およびその方法 |
US9086688B2 (en) | 2013-07-09 | 2015-07-21 | Fisher-Rosemount Systems, Inc. | State machine function block with user-definable actions on a transition between states |
JP5619331B1 (ja) * | 2014-03-25 | 2014-11-05 | 三菱電機株式会社 | プログラミング装置及び実行コード生成方法 |
-
2016
- 2016-03-14 JP JP2016049247A patent/JP6477553B2/ja active Active
-
2017
- 2017-01-12 CN CN201710020384.7A patent/CN107193249B/zh active Active
- 2017-01-12 EP EP17151107.4A patent/EP3220218B1/en active Active
- 2017-01-17 US US15/407,506 patent/US10095512B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP3220218A1 (en) | 2017-09-20 |
US10095512B2 (en) | 2018-10-09 |
CN107193249B (zh) | 2020-06-23 |
EP3220218B1 (en) | 2022-08-31 |
JP2017167588A (ja) | 2017-09-21 |
CN107193249A (zh) | 2017-09-22 |
US20170262278A1 (en) | 2017-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6477553B2 (ja) | プログラム開発支援装置、プログラム開発支援プログラムおよびプログラム開発支援方法 | |
EP3616066B1 (en) | Human-readable, language-independent stack trace summary generation | |
US12008144B2 (en) | Method and apparatus for tamper-proof storage of information in respect of object-related measures | |
JP4525681B2 (ja) | プログラマブルコントローラ用プログラム生成装置、プログラマブルコントローラ用プログラム生成方法およびその方法のプログラムを記録した記録媒体 | |
US9384020B2 (en) | Domain scripting language framework for service and system integration | |
CN111679989A (zh) | 接口健壮性测试方法、装置、电子设备及存储介质 | |
CN114237754B (zh) | 一种数据加载方法、装置、电子设备以及存储介质 | |
CN110209105B (zh) | 数据的处理方法、控制系统及控制装置 | |
US20150082287A1 (en) | Scenario based test design | |
CN114385196A (zh) | 结合rpa和ai的软件部署方法及装置 | |
CN103425932A (zh) | 签名校验方法和终端设备 | |
CN111338940A (zh) | 代码处理方法、装置及系统 | |
JP6451417B2 (ja) | デバッグ支援装置、デバッグ支援システム、デバッグ支援方法、および、デバッグ支援プログラム | |
JP5811859B2 (ja) | ソースコードの静的解析装置、システム、方法、及びそのためのプログラム | |
CN111752600B (zh) | 代码异常检测方法、装置、计算机设备及存储介质 | |
WO2015121982A1 (ja) | ドキュメント管理プログラム、装置、および方法 | |
JP5093508B2 (ja) | ループ最適化システム、ループ最適化方法、及びループ最適化用プログラム | |
JP2013109532A (ja) | 診断修復装置、診断修復方法、及び診断修復プログラム | |
US20230153231A1 (en) | Method and computing environment for creating and applying a test algorithm for computational processes | |
US11703833B2 (en) | Program providing device, program providing method, and program providing system | |
JP7574170B2 (ja) | 状態分析装置、及び状態推定方法 | |
CN102024117A (zh) | 对运行窗口操作系统的计算机的验证方法 | |
JP6576873B2 (ja) | ジョブネット検証装置及びジョブネット検証方法 | |
JP2019021037A (ja) | ソースコード評価装置、ソースコード評価方法及びソースコード評価プログラム | |
EP4361818A1 (en) | Generation of a computer simulation package |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171026 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180511 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180612 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180705 |
|
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: 20190108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190121 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6477553 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |