WO2013129212A1 - 制御プログラム管理システム、及び制御プログラムの変更方法 - Google Patents

制御プログラム管理システム、及び制御プログラムの変更方法 Download PDF

Info

Publication number
WO2013129212A1
WO2013129212A1 PCT/JP2013/054227 JP2013054227W WO2013129212A1 WO 2013129212 A1 WO2013129212 A1 WO 2013129212A1 JP 2013054227 W JP2013054227 W JP 2013054227W WO 2013129212 A1 WO2013129212 A1 WO 2013129212A1
Authority
WO
WIPO (PCT)
Prior art keywords
control program
control
approval
unit
program
Prior art date
Application number
PCT/JP2013/054227
Other languages
English (en)
French (fr)
Inventor
安西 史圭
禎詠 山中
賢一 森本
Original Assignee
三菱重工業株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 三菱重工業株式会社 filed Critical 三菱重工業株式会社
Priority to EP13755169.3A priority Critical patent/EP2821866B1/en
Priority to CN201380004412.6A priority patent/CN104011612B/zh
Priority to KR1020147017307A priority patent/KR101598738B1/ko
Publication of WO2013129212A1 publication Critical patent/WO2013129212A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/048Monitoring; Safety
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0876Aspects of the degree of configuration automation
    • H04L41/0883Semiautomatic configuration, e.g. proposals from system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/28Restricting access to network management systems or functions, e.g. using authorisation function to access network configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them

Definitions

  • the present invention relates to a control program management system that manages changes in a control program executed by a control arithmetic device, and a control program change method executed by the control arithmetic device.
  • IEC International Electrotechnical Commission
  • JIS Japanese Industrial Standards
  • An object of the present invention is to provide a control program management system and a control program changing method for preventing the contents of the control program from being changed to erroneous control parameters or logic.
  • One aspect of the present invention has been made to solve the above-described problem, and is a control program management system, which includes a control arithmetic device and the control arithmetic instead of the control program executed by the control arithmetic device.
  • An editing apparatus that generates a new control program to be executed by the apparatus and transmits the control program to the control arithmetic apparatus, and input of approval information indicating whether the control arithmetic apparatus is to execute the new control program generated by the editing apparatus
  • an approval receiving device that transmits to the control arithmetic device, the control program management system manages a change in the control program executed by the control arithmetic device, and the control arithmetic device stores a control program to be executed.
  • a program storage unit for storing, a program execution unit for executing a control program stored in the program storage unit, and the editing device
  • the temporary recording unit that receives the new control program from the buffer and records the control program in a buffer
  • the presentation unit that displays the content of the control program stored in the buffer on the approval receiving device
  • the approval information from the approval receiving device When the approval information received by the approval information receiving unit and the approval information received by the approval information receiving unit approve the control program, the control program stored in the program storage unit is rewritten to the control program stored in the buffer.
  • a program change unit is used to change the control program stored in the buffer.
  • each user further includes identification information for identifying the user, authentication information used for authentication of the ID, and a user database that stores the authority of the user in association with each other.
  • the editing device transmits identification information and authentication information of the user who generated the new control program to the control arithmetic device, and the approval receiving device includes the approval information.
  • the identification information and authentication information of the user who has input the approval information are transmitted to the control arithmetic device, and the program changing unit of the control arithmetic device is associated with the identification information and authentication information received from the editing device.
  • the authority stored in the user database is the authority permitted to edit the control program, and the identification information and authentication received from the approval receiving device
  • the authority stored in the user database in association with the information is the authority permitted to approve the control program
  • the approval information received by the approval information receiving unit is for approving the control program.
  • the control program stored in the program storage unit may be rewritten to the control program stored in the buffer.
  • the editing device generates a first error detection code generated using the new control program and information generated by bit-inversion of the new control program.
  • the error detection code of 2 is attached to the new control program and transmitted to the control arithmetic device
  • the program changing unit of the control arithmetic device is the first control program attached to the new control program received from the editing device.
  • the program storage unit stores the approval information received by the approval information receiving unit to approve the control program.
  • the control program may be rewritten to a control program stored in the buffer.
  • the presentation unit of the control arithmetic device may simulate execution of a control program stored in the buffer and display the simulation result on the approval receiving device.
  • the presentation unit of the control arithmetic device may cause the approval receiving device to display a difference between the control program executed by the program execution unit and the control program stored in the buffer. Good.
  • a program repository device that stores each control program stored in the program storage unit in the past is provided, and the presentation unit of the control arithmetic device is a control stored in the program repository device. A difference between each program and the control program stored in the buffer may be displayed on the approval receiving apparatus.
  • the editing device checks out a control program executed by the program execution unit from the program repository device and locks the program so that the program cannot be edited.
  • An editing unit that generates a new control program by editing the checked-out control program, a transmission unit that transmits the new control program generated by the editing unit to the control arithmetic device, and the checked-out
  • a check-in unit that unlocks the control program and checks in the new control program to the program repository device, and the program repository device uses the locked user of the control program and the unlocked use Determine whether or not the person is the same, If it is not one, it may notify the user that has the approval authority to that effect.
  • the editing device checks out a control program being executed by the program execution unit from the program repository device, and locks the control program so that the control program cannot be edited.
  • the lock of the control program stored in the program repository device may be released after the approval receiving device receives the approval information.
  • the approval receiving device may unlock the control program stored in the program repository device when the approval information is received.
  • the approval receiving device issues a notification to the editing device when the approval information is received, and the editing device receives the notification from the approval receiving device,
  • the control program stored in the program repository apparatus may be unlocked.
  • the control arithmetic device is a plurality of control arithmetic devices that execute the same control program in a redundant configuration, and the approval accepting device receives the approval information as the control arithmetic device.
  • the editing device transmits the new control program to all the control arithmetic devices to which the new control program is applied, and receives the approval information received from the approval receiving device.
  • the approval information reception unit of the control calculation device may receive the approval information from the editing device instead of the approval reception device.
  • Another aspect of the present invention is a method for changing a control program executed by a control arithmetic device, wherein the editing device causes the control arithmetic device to execute instead of the control program executed by the control arithmetic device.
  • a new control program is generated and transmitted to the control arithmetic device, and the temporary recording unit of the control arithmetic device receives the new control program from the editing device, records the control program in a buffer, and the control arithmetic device
  • the presentation unit of the device displays the contents of the control program stored in the buffer on the approval receiving device, and the approval receiving device determines whether or not the control arithmetic device executes the new control program generated by the editing device.
  • the program change unit of the control arithmetic device stores a program storage unit that stores a control program to be executed when the approval information received by the approval information reception unit approves the control program.
  • the control program to be rewritten is replaced with the control program stored in the buffer.
  • the control arithmetic device displays the contents of the new control program generated by the editing device on the approval reception device, so that the third party other than the operator and the maintenance personnel can make new information. Check the contents of the control program. After that, when receiving the approval information indicating the approval by the third party from the approval receiving device, the control arithmetic device sets the new control program as a control program to be executed. Thereby, the control program management system can prevent the contents of the control program from being changed to erroneous control parameters or logic.
  • FIG. 1 is a diagram showing a configuration of a control program management system according to the first embodiment of the present invention.
  • the control program management system includes a control arithmetic device 100, an editing device 200, and an approval receiving device 300.
  • the control arithmetic device 100 operates the plant by executing a control program.
  • the editing device 200 is mounted on a terminal (operator station or engineering station) in the central operation room, and edits a control program executed by the control arithmetic device 100.
  • the editing device 200 is operated by an operator or maintenance staff (user).
  • the approval receiving device 300 receives an approval for operating the control arithmetic device 100 with the control program generated by the editing device 200 from an administrator (user), and receives approval information indicating whether approval is possible or not in the control arithmetic device 100. Send.
  • the manager is a third party other than the operator and maintenance personnel.
  • FIG. 2 is a schematic block diagram showing the configuration of the control arithmetic device 100 according to the first embodiment of the present invention.
  • the control arithmetic device 100 includes a program storage unit 101, a program execution unit 102, a user database 103, a user-side I / F unit 104, a temporary recording unit 105, a buffer 106, a presentation unit 107, an approval information reception unit 108, a program change Part 109 and field side I / F part 110.
  • the program storage unit 101 stores a control program to be executed for plant control.
  • the program execution unit 102 executes a control program stored in the program storage unit 101 and controls field devices (turbine, boiler, etc.) via the plant-side I / F unit 110.
  • the user database 103 stores information on users (operators, maintenance personnel, managers, etc.) of the control program management system.
  • the user-side I / F unit 104 communicates with the editing device 200 and the approval receiving device 300
  • the user-side I / F unit 104 collates the information of the user of the device with the information stored in the user database 103, and uses the information properly.
  • communication with the apparatus is performed.
  • the temporary recording unit 105 receives a new control program generated by the editing apparatus 200 and records the new control program in the buffer 106.
  • the buffer 106 temporarily stores a new control program generated by the editing apparatus 200.
  • the presentation unit 107 causes the approval receiving apparatus 300 to display the contents of the new control program stored in the buffer 106.
  • the approval information receiving unit 108 receives input of approval information from the approval receiving device 300.
  • the program change unit 109 determines whether to record the control program stored in the buffer 106 in the program storage unit 101 based on the approval information.
  • the field side I / F unit 110 performs communication between the field device and the program execution unit.
  • FIG. 3 is a diagram illustrating an example of information stored in the user database 103.
  • the user database 103 associates, for each user, an ID (identification information) for identifying the user, a password (authentication information) used to authenticate the ID, and the authority of the user.
  • the user database 103 stores the password encrypted or hashed.
  • an editing authority for generating a new control program in the editing apparatus 200 As the user authority, an editing authority for generating a new control program in the editing apparatus 200, a verification authority for verifying the operation of the new control program, and the operation of the control arithmetic apparatus 100 with the new control program are approved.
  • a user having editing authority In order to prevent the same person from editing and approving, a user having editing authority must not be given approval authority, and similarly, a user having approval authority should not be given editing authority. Don't be.
  • the user A is an auditor of the control arithmetic device 100 and thus has only a viewing authority.
  • the user B is an administrator of the control arithmetic device 100
  • the user B has an authorization authority and a browsing authority.
  • the user C is an operator or maintenance worker of the control arithmetic device 100
  • the user C has editing authority, verification authority, and browsing authority.
  • the user D is a person in charge of checking the edited contents of the control program by the operator or maintenance staff, the user D has verification authority and browsing authority without having editing authority.
  • “ ⁇ ” indicates that the user has the corresponding authority (permission permission)
  • “X” indicates that the user does not have the corresponding authority (rejection of execution).
  • FIG. 4 is a flowchart showing the operation of the control arithmetic device 100 according to the first embodiment of the present invention.
  • the editing apparatus 200 accesses the control arithmetic apparatus 100 in order to transmit the control program to the control arithmetic apparatus 100.
  • the user side I / F unit 104 of the control arithmetic device 100 requests the editing device 200 to transmit an ID and a password (step S1).
  • the editing device 200 When the user of the editing device 200 inputs an ID and password to the editing device 200, the editing device 200 transmits the ID and password to the control arithmetic device 100. At this time, it is preferable to use an authentication protocol such as PAP (Password Authentication Protocol) or CHAP (Challenge Handshake Authentication Protocol) with enhanced confidentiality for user authentication.
  • PAP Password Authentication Protocol
  • CHAP CHAP (Challenge Handshake Authentication Protocol) with enhanced confidentiality for user authentication.
  • the user-side I / F unit 104 of the control arithmetic device 100 determines whether or not the combination of the ID and password is stored in the user database 103 (step S2). ).
  • step S2 NO
  • a notification indicating that the combination of ID and password is incorrect is transmitted to the editing apparatus 200, and step S1 is performed. The process returns to the step of waiting for receiving the ID and password again.
  • step S2 when the received combination of ID and password is stored in the user database 103 (step S2: YES), the user-side I / F unit 104 associates the received ID and password with the user database 103. Whether the editing authority is included in the authority stored in (1) is determined. When the user-side I / F unit 104 determines that the editing authority is not included in the authority associated with the combination of the ID and password (step S3: NO), the user's control program for the editing device 200 A notification indicating that editing is not permitted is transmitted, and the process ends without changing the control program.
  • the user-side I / F unit 104 determines that editing authority is included in the authority associated with the combination of ID and password (step S3: YES)
  • the user-side I / F unit 104 receives a new control program from the editing apparatus 200.
  • the editing apparatus 200 generates a CRC (Cyclic Redundancy Check) code (first error detection code) generated using the new control program and information obtained by bit-inverting the new control program.
  • the CRC code (second error detection code) that has been sent is attached to the new control program and transmitted to the control arithmetic device 100.
  • the user-side I / F unit 104 establishes a session with the editing apparatus 200, and permits communication without performing authentication in steps S1 to S3 for a certain period of time. To do.
  • the temporary recording unit 105 records the new control program in the buffer 106 (step S5). At this time, the temporary recording unit 105 records the two CRC codes attached to the received new control program in the buffer 106 without removing them. Next, the presentation unit 107 notifies the approval reception apparatus 300 that a new control program has been registered (step S6).
  • the approval receiving device 300 When the approval receiving device 300 receives a notification indicating that a new control program has been registered, the approval receiving device 300 accesses the control arithmetic device 100 to view the contents of the new control program by the operation of the administrator. To do.
  • the approval receiving device 300 accesses the control arithmetic device 100
  • the user side I / F unit 104 of the control arithmetic device 100 requests the approval receiving device 300 to transmit an ID and a password (step S7).
  • the user of the approval receiving device 300 inputs an ID and password to the control arithmetic device 100, the approval receiving device 300 transmits the ID and password to the control arithmetic device 100.
  • the user-side I / F unit 104 of the control arithmetic device 100 determines whether or not the combination of the ID and password is stored in the user database 103 (step). S8).
  • step S8: NO a notification indicating that the combination of ID and password is incorrect is transmitted to the approval receiving apparatus 300, and the ID And wait for the password to be received again.
  • step S8 when the received combination of ID and password is stored in the user database 103 (step S8: YES), the user side I / F unit 104 associates the combination of the ID and password with the user database 103. It is determined whether or not browsing authority is included in the authority stored in (step S9). When the user-side I / F unit 104 determines that the viewing authority is not included in the authority associated with the combination of the ID and password (step S9: NO), the user's control over the approval receiving device 300 is performed. A notification indicating that browsing of the contents of the program is not permitted is transmitted, and the process returns to step S7 to wait for access from a user having browsing authority.
  • step S9 YES
  • the approval receiving apparatus 300 receives a new control program. By transmitting information indicating the contents, the information is displayed on the approval receiving apparatus 300 (step S10). Specifically, the presentation unit 107 simulates a new control program and transmits information indicating the simulation result to the approval receiving apparatus 300.
  • the user side I / F unit 104 establishes a session with the approval receiving apparatus 300, and communicates without performing the authentication in steps S7 to S9 for a certain period of time. to approve.
  • the approval receiving apparatus 300 displays information indicating the contents of the new control program received from the control arithmetic apparatus 100
  • the approval receiving apparatus 300 receives an input from the administrator regarding whether to approve the contents of the new control program.
  • the approval receiving device 300 transmits the approval information received from the administrator to the control arithmetic device 100.
  • the user-side I / F unit 104 of the control arithmetic device 100 determines whether or not the authorization authority is included in the authority stored in the user database 103 in association with the combination of the ID and password received in step S7. (Step S11). If the user-side I / F unit 104 determines that the authorization associated with the combination of ID and password does not include the authorization authority (step S11: NO), the user-side I / F unit 104 does not receive the authorization information from the authorization acceptance device 300, A notification indicating that there is no authorization authority is transmitted, the communication with the approval receiving apparatus 300 is terminated, the process returns to step S7, and the access from the approval receiving apparatus 300 by another user is awaited.
  • the authorization information reception unit 108 determines from the authorization reception device 300.
  • the transmitted approval information is received (step S12).
  • the program change unit 109 determines whether or not the received approval information indicates that the change to the new control program is approved (step S13).
  • step S13 When the received approval information indicates that the change to the new control program is approved (step S13: YES), the program change unit 109 reads the new control program, the first CRC code, and the second from the buffer 106. The CRC code is read out, and error detection of a new control program is performed using the first CRC code or the second CRC code (step S14).
  • step S14 If no error in the new control program is detected by either the first CRC code or the second CRC code (step S14: NO), the program changing unit 109 has no disconnection in the connection in the control logic. Then, after confirming that no compilation error occurs, the control program stored in the program storage unit 101 is rewritten to a new control program (step S15).
  • step S13 when the approval information received at step S13 indicates that the change to the new control program is not approved (step S13: NO), or when a new control program error is detected at step S14 (step S14). : YES), the process is terminated without changing the control program.
  • the control arithmetic device 100 determines whether the user who has generated the new control program has editing authority (step S3), whether the user who has input the approval information has approval authority (step S11), The verification results of whether or not an error is detected by the CRC code (step S14), whether or not there is a disconnection in the control logic, and whether or not a compile error occurs may be recorded as a log. preferable.
  • the control arithmetic device 100 causes the approval accepting device 300 to display the contents of the new control program accepted from the editing device 200.
  • the approval information received from the approval receiving device 300 is to approve a new control program
  • the control program stored in the program storage unit 101 is rewritten with a new control program.
  • the control program management system can prevent the contents of the control program executed by the control arithmetic device 100 from being changed to erroneous control parameters or logic.
  • the control arithmetic device 100 has the authority associated with the combination of the ID and password received from the editing apparatus 200 that is permitted to edit the control program, and from the approval receiving apparatus 300. If the authority associated with the received combination of ID and password is an authority permitted to approve the control program, the control program is changed. Thereby, the control program management system can change the control program through a check by a third party other than the operator and the maintenance staff.
  • the control arithmetic device 100 controls the control program when no error is detected by the first CRC code and the second CRC code attached to the new control program received from the editing device 200. Make changes. If an error cannot be detected by the first CRC code when a new control program has been tampered with, the error is detected by error detection using the second CRC code based on information obtained by inverting the bits of the control program. It is likely that you can. Therefore, according to the present embodiment, even when a new control program transmitted from the editing apparatus 200 is falsified, the falsification can be detected with high accuracy.
  • FIG. 5 is a diagram showing a configuration of a control program management system according to the second embodiment of the present invention.
  • the control program management system according to the second embodiment includes a design and maintenance management device 400 (program repository device) in addition to the configuration of the first embodiment.
  • the design and maintenance management device 400 stores and manages the control program currently executed by the control arithmetic device 100 and the past control programs executed in the past in association with the version information.
  • FIG. 6 is a schematic block diagram showing the configuration of the editing apparatus 200 according to the second embodiment of the present invention.
  • the editing apparatus 200 includes a check-out unit 201, an editing unit 202, a transmission unit 203, and a check-in unit 204.
  • the checkout unit 201 checks out the control program currently executed by the control arithmetic device 100 from the design and maintenance management device 400 and locks the control program so that it cannot be edited. Checkout means retrieving data from the repository and storing it locally.
  • the editing unit 202 generates a new control program by editing the control program checked out by the checkout unit 201.
  • the transmission unit 203 transmits the new control program generated by the editing unit 202 to the control arithmetic device 100.
  • the check-in unit 204 checks in a new control program to the design and maintenance management apparatus 400 and releases the lock of the control program. Check-in means writing a file to the repository.
  • the check-out unit 201 of the editing apparatus 200 is currently executed by the control arithmetic apparatus 100 from the design and maintenance management apparatus 400.
  • the control program being checked out from the design and maintenance management device 400 is checked out.
  • the checkout unit 201 locks the checked-out control program.
  • a new control program is generated by editing the control program checked out by the editing unit 202 in accordance with the operation of the operator or maintenance staff.
  • the transmission unit 203 transmits the new control program to the control arithmetic device 100.
  • the check-in unit 204 releases the lock of the new control program after checking in the new control program.
  • the design and maintenance management apparatus 400 determines whether or not the user of the editing apparatus 200 when the control program is locked and the user of the editing apparatus 200 when the lock is released are the same. This can be done by acquiring the user's ID during communication with the editing apparatus 200 and determining whether the IDs match. If the users are not the same at the time of locking and unlocking, the design / maintenance management apparatus 400 transmits a notification to that effect to the approval receiving apparatus 300. Thereby, by visually recognizing the notification, it is possible to notify the user having the authorization authority that the control program has not been properly edited.
  • the presenting unit 107 of the control arithmetic device 100 includes the version information of the control program currently executed by the program execution unit 102 and the version information of the control program stored in the buffer 106 in step S10 described above. Is transmitted to the approval receiving apparatus 300. Then, the approval receiving apparatus 300 reads out a control program associated with the received two version information from the design and maintenance management apparatus 400. At this time, the approval receiving apparatus 300 may retrieve the change specification from the design and maintenance management apparatus 400 and transmit the document to the change authentication apparatus. Then, the approval receiving apparatus 300 generates a difference between the new control program and the control program currently being executed, and displays the difference information.
  • the approval accepting apparatus 300 can display the changed part (difference) in red in the new control program and display the part without change in black so that the difference is emphasized. That is, the presenting unit 107 according to the present embodiment displays the difference between the new control program and the currently executed control program on the approval receiving apparatus 300.
  • the approval receiving apparatus 300 highlights and displays portions that are different from the currently executed control program. As a result, the administrator can reduce the possibility of overlooking an erroneous part of the parameter or logic to be changed in the control program.
  • the approval receiving device 300 notifies the design and maintenance management device 400 of the version information of the changed control program when the control arithmetic device 100 completes the change of the control program. Then, the design and maintenance management apparatus 400 stores and manages a new control program in association with the version information.
  • the design and maintenance management device 400 is provided as an external device.
  • the present invention is not limited to this, and the design / maintenance management device 400 may be mounted on the control arithmetic device 100.
  • the presentation unit 107 not the approval receiving apparatus 300, generates control program difference information and causes the approval receiving apparatus 300 to display the difference information.
  • the presentation unit 107 adds the difference between each of the control programs of a plurality of generations stored in the design and maintenance management device 400 in addition to the difference between the new control program and the control program currently being executed. You may make it display on the approval reception apparatus 300. FIG. As a result, it is possible to prevent a new control program from returning to the logic of the control program of a plurality of generations before.
  • Third Embodiment a case has been described in which the approval apparatus 300 performs the approval process after the editing apparatus 200 performs check-in and unlocking of the control program to the design and maintenance management apparatus 400.
  • the approval receiving apparatus 300 receives the approval information from the administrator, the control program stored in the design and maintenance management apparatus 400 is checked in and unlocked.
  • FIG. 7 is a diagram showing a configuration of a control program management system according to the third embodiment of the present invention. As shown in FIG. 7, in the third embodiment, the approval receiving device 300 communicates with the editing device 200.
  • the check-in unit 204 of the editing apparatus 200 according to the third embodiment does not check in and unlock a new control program when editing by the editing unit 202 is completed. Also, unlike the second embodiment, the transmission unit 203 of the editing device 200 according to the third embodiment transmits a new control program to the control arithmetic device 100 and the approval receiving device 300 when editing by the editing unit 202 is completed. Send to.
  • the approval receiving device 300 displays the difference between the new control program and the currently executed control program and receives the input of the approval information
  • the approval receiving device 300 transmits the approval information to the control arithmetic device 100 and the editing device 200. To do.
  • the check-in unit 204 of the editing apparatus 200 checks in the new control program received from the editing apparatus 200 and releases the lock when the approval information indicates approval of the change.
  • the check-in unit 204 of the editing apparatus 200 releases the lock without checking in a new control program.
  • the design and maintenance management device 400 may be mounted on the control arithmetic device 100, and the approval reception device 300 stores the design and maintenance management device 400. Differences from the control programs of a plurality of previous generations may be displayed.
  • the editing apparatus 200 does not check in and unlock a new control program when editing by the editing unit 202 is completed, and does not execute a new control program. It transmits to the control arithmetic device 100 and the approval receiving device 300.
  • the approval receiving apparatus 300 determines whether the approval information indicates that the change to the new control program is approved.
  • the approval receiving apparatus 300 checks in the new control program received from the editing apparatus 200 to the design / maintenance management apparatus 400 and releases the lock of the control program.
  • the approval receiving apparatus 300 unlocks the control program without checking in a new control program.
  • the present embodiment it is possible to prevent a control program that is not approved from being recorded in the design and maintenance management apparatus 400. Further, since the control program of the design and maintenance management apparatus 400 is locked until approval is given, it is possible to prevent different design changes from being made at the same time for the same version of the control program. Further, since the approval receiving device 300, not the editing device 200, releases the lock, the new control program is checked into the design and maintenance management device 400 without delay from the time when the approval information is received, and the lock is released. be able to.
  • the design and maintenance management device 400 may be mounted on the control arithmetic device 100, and the approval reception device 300 is designed as a design and maintenance management device. Differences from the control programs of a plurality of previous generations stored in 400 may be displayed.
  • FIG. 8 is a diagram showing the configuration of a control program management system according to the fifth embodiment of the present invention.
  • the case where the control program is changed for one control arithmetic device 100 has been described.
  • a plant is often operated using a plurality of control arithmetic devices 100 for redundancy and load distribution. The purpose of this is to reduce the load on the control arithmetic device 100 and to calculate a large amount of control logic, or to adopt an inexpensive CPU (Central Processing Unit). Therefore, when the control program is changed by the control program management system according to the first to fourth embodiments, the administrator needs to input approval information to each of the redundant editing apparatuses 200. . Therefore, in the fifth embodiment, a method for changing a control program for a plurality of control arithmetic devices 100 will be described.
  • the editing device 200 has a function of selecting the control arithmetic device 100 to which a new control program is applied. Then, the editing device 200 transmits the generated new control program to all the control arithmetic devices 100 selected by the above function.
  • the approval receiving device 300 displays information indicating the contents of the new control program from the plurality of control arithmetic devices 100
  • the approval accepting device 300 edits the approval information that comprehensively indicates whether or not the control arithmetic devices 100 can be approved. To device 200.
  • the editing device 200 transfers the approval information received from the approval receiving device 300 to the control arithmetic device 100. Then, the approval information receiving unit 108 of the control arithmetic device 100 receives the approval information from the editing device 200, and the program changing unit 109 determines whether or not the control program can be changed based on the approval information. Since the control arithmetic devices 100 having a redundant configuration are synchronized with each other, the processing of all the control arithmetic devices 100 is performed when the control programs recorded in the program storage unit 101 are synchronized. Will start.
  • control program can be changed simultaneously for a plurality of control arithmetic devices 100. Thereby, the burden on the user for changing the control program can be reduced.
  • the control arithmetic device 100, the editing device 200, and the approval receiving device 300 described above have a computer system inside.
  • the operation of each processing unit described above is stored in a computer-readable recording medium in the form of a program, and the above processing is performed by the computer reading and executing this program.
  • the computer-readable recording medium means a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, a semiconductor memory, or the like.
  • the computer program may be distributed to the computer via a communication line, and the computer that has received the distribution may execute the program.
  • the program may be for realizing a part of the functions described above. Furthermore, what can implement
  • DESCRIPTION OF SYMBOLS 100 Control arithmetic unit 101 ... Program memory

Abstract

 制御演算装置は、編集装置から受け付けた新たな制御プログラムの内容を承認受付装置に表示させる。承認受付装置は、管理者から制御プログラムの変更を承認するか否かを示す承認情報の入力を受け付ける。制御演算装置は、承認受付装置から受け付けた承認情報が新たな制御プログラムを承認するものである場合に、制御プログラムを新たな制御プログラムに変更する。

Description

制御プログラム管理システム、及び制御プログラムの変更方法
 本発明は、制御演算装置が実行する制御プログラムの変更を管理する制御プログラム管理システム、及び当該制御演算装置が実行する制御プログラムの変更方法に関する。
 本願は、2012年2月27日に、日本に出願された特願2012-039997号に基づき優先権を主張し、その内容をここに援用する。
 発電プラントでは、当該発電プラントにおいて制御プログラムを実行する制御演算装置の稼働中に、当該制御プログラムの制御パラメータやロジックを、運転員や保守員が変更したいという要望がある。なお、制御パラメータやロジックの変更は、中央操作室の端末(オペレータステーション、エンジニアリングステーション)から行う。このため、オンラインで設定ファイルや制御プログラムを変更する方法が開発されている(特許文献1、2を参照)。
 この際、運転員や保守員が制御プログラムのパラメータを誤った値に設定したり、不完全なロジックに変更したりすることで、プラントの挙動が不安定にならないよう、変更前にチェックを行うことが好ましい。このような誤動作を防止する方法として、プログラムのバージョンチェックを行う方法(特許文献3を参照)や、プログラムの編集権限を有しているか否かのチェックを行う方法(特許文献4を参照)が開示されている。
 また、国際機能安全規格(IEC(International Electrotechnical Commission)61508、JIS(Japanese Industrial Standards) C 0508)では、運転員が誤った制御プログラムに変更しない誤操作防止手段を採ることを推奨している。
特表2010-507848号公報 特開平7-99674号公報 特開平11-110197号公報 特表2005-535945号公報
 しかしながら、特許文献3、4に開示されている方法を用いたとしても、内容自体に過誤がある制御パラメータやロジックへ変更されることを防止することができないという問題がある。また、特許文献3、4に記載の方法では、IEC61508やJIS C 0508で要求されている誤操作防止手段が実現されないという問題がある。
 本発明の目的は、制御プログラムの内容が、過誤がある制御パラメータやロジックへ変更されることを防止する制御プログラム管理システム、及び制御プログラムの変更方法を提供することにある。
 本発明の一態様は上記の課題を解決するためになされたものであり、制御プログラム管理システムであって、制御演算装置と、前記制御演算装置が実行している制御プログラムに代えて前記制御演算装置に実行させる新たな制御プログラムを生成し、前記制御演算装置に送信する編集装置と、前記編集装置が生成した新たな制御プログラムを前記制御演算装置に実行させるか否かを示す承認情報の入力を受け付け、前記制御演算装置に送信する承認受付装置とを備え、前記制御プログラム管理システムは、制御演算装置が実行する制御プログラムの変更を管理し、前記制御演算装置は、実行すべき制御プログラムを記憶するプログラム記憶部と、前記プログラム記憶部が記憶する制御プログラムを実行するプログラム実行部と、前記編集装置から前記新たな制御プログラムを受け付け、前記制御プログラムをバッファに記録する一時記録部と、前記バッファが記憶する制御プログラムの内容を前記承認受付装置に表示させる提示部と、前記承認受付装置から承認情報を受け付ける承認情報受付部と、前記承認情報受付部が受け付けた承認情報が前記制御プログラムを承認するものである場合に、前記プログラム記憶部が記憶する制御プログラムを前記バッファが記憶する制御プログラムに書き換えるプログラム変更部とを備える。
 また、本発明の一態様においては、利用者毎に、前記利用者を識別する識別情報、前記IDの認証に用いる認証情報、及び当該利用者の権限を関連付けて記憶する利用者データベースをさらに備え、前記編集装置は、前記新たな制御プログラムに加えて、前記新たな制御プログラムを生成した利用者の識別情報及び認証情報を前記制御演算装置に送信し、前記承認受付装置は、前記承認情報に加えて、前記承認情報を入力した利用者の識別情報及び認証情報を前記制御演算装置に送信し、前記制御演算装置のプログラム変更部は、前記編集装置から受信した識別情報及び認証情報に関連付けて前記利用者データベースが記憶する権限が、制御プログラムの編集を許可された権限であり、かつ前記承認受付装置から受信した識別情報及び認証情報に関連付けて前記利用者データベースが記憶する権限が、制御プログラムの承認を許可された権限である場合において、前記承認情報受付部が受け付けた承認情報が、前記制御プログラムを承認するものであるときに、前記プログラム記憶部が記憶する制御プログラムを前記バッファが記憶する制御プログラムに書き換えてもよい。
 また、本発明の一態様においては、前記編集装置は、前記新たな制御プログラムを用いて生成した第1の誤り検出符号と、前記新たな制御プログラムをビット反転させた情報を用いて生成した第2の誤り検出符号とを、前記新たな制御プログラムに付して前記制御演算装置に送信し、前記制御演算装置のプログラム変更部は、前記編集装置から受信した新たな制御プログラムに付された第1の誤り検出符号及び第2の誤り検出符号によって誤りが検出されない場合において、前記承認情報受付部が受け付けた承認情報が前記制御プログラムを承認するものであるときに、前記プログラム記憶部が記憶する制御プログラムを前記バッファが記憶する制御プログラムに書き換えてもよい。
 また、本発明の一態様においては、前記制御演算装置の提示部は、前記バッファが記憶する制御プログラムの実行をシミュレートし、前記シミュレートの結果を前記承認受付装置に表示させてもよい。
 また、本発明の一態様においては、前記制御演算装置の提示部は、前記プログラム実行部が実行している制御プログラムと前記バッファが記憶する制御プログラムの差分を前記承認受付装置に表示させてもよい。
 また、本発明の一態様においては、過去に前記プログラム記憶部に記憶されていた制御プログラムをそれぞれ記憶するプログラムリポジトリ装置を備え、前記制御演算装置の提示部は、前記プログラムリポジトリ装置が記憶する制御プログラムそれぞれと前記バッファが記憶する制御プログラムの差分を前記承認受付装置に表示させてもよい。
 また、本発明の一態様においては、前記編集装置は、前記プログラム実行部が実行している制御プログラムを前記プログラムリポジトリ装置からチェックアウトし、前記御プログラムの編集ができないようロックをかけるチェックアウト部と、前記チェックアウトした制御プログラムを編集することで新たな制御プログラムを生成する編集部と、前記編集部が生成した新たな制御プログラムを前記制御演算装置に送信する送信部と、前記チェックアウトした制御プログラムのロックを解除し、前記新たな制御プログラムを前記プログラムリポジトリ装置にチェックインするチェックイン部とを備え、前記プログラムリポジトリ装置は、前記制御プログラムのロックした利用者と当該ロックを解除した利用者とが同一であるか否かを判定し、同一でない場合、その旨を承認権限を有する利用者に通知してもよい。
 また、本発明の一態様においては、前記編集装置は、前記プログラム実行部が実行している制御プログラムを前記プログラムリポジトリ装置からチェックアウトし、当該制御プログラムの編集ができないようロックをかけるチェックアウト部と、前記チェックアウトした制御プログラムを編集することで新たな制御プログラムを生成する編集部と、前記編集部が生成した新たな制御プログラムを前記制御演算装置に送信する送信部と、を備え、前記プログラムリポジトリ装置が記憶する制御プログラムのロックは、前記承認受付装置が前記承認情報を受け付けた後に解除されてもよい。
 また、本発明の一態様においては、前記承認受付装置は、前記承認情報を受け付けた場合に前記プログラムリポジトリ装置が記憶する制御プログラムのロックを解除してもよい。
 また、本発明の一態様においては、前記承認受付装置は、前記承認情報を受け付けた場合に前記編集装置に通知を発し、前記編集装置は、前記承認受付装置から通知を受けた場合に、前記プログラムリポジトリ装置が記憶する制御プログラムのロックを解除してもよい。
 また、本発明の一態様においては、前記制御演算装置は、冗長構成により同一の制御プログラムを実行する複数の制御演算装置であって、前記承認受付装置は、前記承認情報を、前記制御演算装置に代えて前記編集装置に送信し、前記編集装置は、前記新たな制御プログラムを、前記新たな制御プログラムを適用する全ての前記制御演算装置に送信し、前記承認受付装置から受信した承認情報を制御演算装置に転送し、前記制御演算装置の承認情報受付部は、前記承認受付装置に代えて前記編集装置から承認情報を受け付けてもよい。
 また、本発明の他の態様は、制御演算装置が実行する制御プログラムの変更方法であって、編集装置は、前記制御演算装置が実行している制御プログラムに代えて前記制御演算装置に実行させる新たな制御プログラムを生成して前記制御演算装置に送信し、前記制御演算装置の一時記録部は、前記編集装置から前記新たな制御プログラムを受け付けて前記制御プログラムをバッファに記録し、前記制御演算装置の提示部は、前記バッファが記憶する制御プログラムの内容を承認受付装置に表示させ、前記承認受付装置は、前記編集装置が生成した新たな制御プログラムを前記制御演算装置に実行させるか否かを示す承認情報の入力を受け付けて前記制御演算装置に送信し、前記制御演算装置の承認情報受付部は、前記承認受付装置から承認情報を受け付け、前記制御演算装置のプログラム変更部は、前記承認情報受付部が受け付けた承認情報が前記制御プログラムを承認するものである場合に、実行すべき制御プログラムを記憶するプログラム記憶部が記憶する制御プログラムを、前記バッファが記憶する制御プログラムに書き換える。
 本発明のいくつかの態様によれば、制御演算装置は、編集装置が生成した新たな制御プログラムの内容を承認受付装置に表示させることで、運転員や保守員以外の第三者に新たな制御プログラムの内容の確認をさせる。その後、制御演算装置は、承認受付装置から当該第三者による承認を示す承認情報を受信したときに、当該新たな制御プログラムを、実行すべき制御プログラムとする。これにより、制御プログラム管理システムは、制御プログラムの内容が過誤がある制御パラメータやロジックへ変更されることを防止することができる。
本発明の第1の実施形態による制御プログラム管理システムの構成を示す図である。 本発明の第1の実施形態による制御演算装置の構成を示す概略ブロック図である。 利用者データベースが記憶する情報の例を示す図である。 本発明の第1の実施形態による制御演算装置の動作を示すフローチャートである。 本発明の第2の実施形態による制御プログラム管理システムの構成を示す図である。 本発明の第2の実施形態による編集装置の構成を示す概略ブロック図である。 本発明の第3の実施形態による制御プログラム管理システムの構成を示す図である。 本発明の第5の実施形態による制御プログラム管理システムの構成を示す図である。
《第1の実施形態》
 以下、図面を参照しながら本発明の実施形態について詳しく説明する。
 図1は、本発明の第1の実施形態による制御プログラム管理システムの構成を示す図である。
 制御プログラム管理システムは、制御演算装置100、編集装置200、承認受付装置300を備える。
 制御演算装置100は、制御プログラムを実行することで、プラントを稼動させる。
 編集装置200は、中央操作室の端末(オペレータステーションやエンジニアリングステーション)に実装され、制御演算装置100が実行する制御プログラムの編集を行う。
編集装置200は、運転員や保守員(利用者)によって操作される。
 承認受付装置300は、編集装置200によって生成された制御プログラムで制御演算装置100を動作させることについての承認を管理者(利用者)から受け付け、承認の可否を示す承認情報を制御演算装置100に送信する。なお、管理者は、運転員や保守員以外の第三者である。
 図2は、本発明の第1の実施形態による制御演算装置100の構成を示す概略ブロック図である。
 制御演算装置100は、プログラム記憶部101、プログラム実行部102、利用者データベース103、利用者側I/F部104、一時記録部105、バッファ106、提示部107、承認情報受付部108、プログラム変更部109、フィールド側I/F部110を備える。
 プログラム記憶部101は、プラントの制御のために実行すべき制御プログラムを記憶する。
 プログラム実行部102は、プログラム記憶部101が記憶する制御プログラムを実行し、プラント側I/F部110を介してフィールド装置(タービン、ボイラ等)を制御する。
 利用者データベース103は、制御プログラム管理システムの利用者(運転員、保守員、管理者など)の情報を記憶する。
 利用者側I/F部104は、編集装置200及び承認受付装置300との通信を行う際に、当該装置の利用者の情報と利用者データベース103が記憶する情報とを照合し、正当な利用者であることが確認できた場合に、当該装置との通信を行う。
 一時記録部105は、編集装置200が生成した新たな制御プログラムを受け付け、当該新たな制御プログラムをバッファ106に記録する。
 バッファ106は、編集装置200が生成した新たな制御プログラムを一時的に記憶する。
 提示部107は、バッファ106が記憶する新たな制御プログラムの内容を承認受付装置300に表示させる。
 承認情報受付部108は、承認受付装置300から承認情報の入力を受け付ける。
 プログラム変更部109は、承認情報に基づいてバッファ106が記憶する制御プログラムをプログラム記憶部101に記録するか否かを判定する。
 フィールド側I/F部110は、フィールド装置とプログラム実行部との通信を行う。
 次に、利用者データベース103が記憶する情報について説明する。
 図3は、利用者データベース103が記憶する情報の例を示す図である。
 図3に示すように、利用者データベース103は、利用者毎に、当該利用者を識別するID(識別情報)、IDの認証に用いるパスワード(認証情報)、及び当該利用者の権限を関連付けて記憶する。なお、利用者データベース103は、パスワードを暗号化またはハッシュ化して記憶している。
 利用者の権限には、編集装置200にて新たな制御プログラムを生成する編集権限、新たな制御プログラムの動作を検証する検証権限、新たな制御プログラムで制御演算装置100を動作させることを承認する承認権限、新たな制御プログラムの内容を閲覧する閲覧権限の4つの権限がある。このとき、同一人物が編集及び承認することを防ぐため、編集権限を有する利用者には承認権限が与えられてはならず、同様に承認権限を有する利用者には編集権限が与えられてはならない。
 図3に示す例では、利用者Aは、制御演算装置100の監査者であるため、閲覧権限のみを有する。また、利用者Bは、制御演算装置100の管理者であるため、承認権限及び閲覧権限を有する。また、利用者Cは、制御演算装置100の運転員または保守員であるため、編集権限、検証権限、及び閲覧権限を有する。また、利用者Dは、運転員または保守員による制御プログラムの編集内容をチェックするチェック担当者であるため、編集権限を有さずに検証権限及び閲覧権限を有する。
 なお、図3において「○」は該当する権限を有する(実施許可)ことを示し、「×」は該当する権限を有しない(実施拒否)ことを示す。
 次に、本実施形態による制御プログラム管理システムの動作について説明する。
 図4は、本発明の第1の実施形態による制御演算装置100の動作を示すフローチャートである。
 まず、運転員または保守員が、編集装置200を操作して新たな制御プログラムを生成すると、当該制御プログラムを制御演算装置100に送信するため、編集装置200は、制御演算装置100にアクセスする。編集装置200が制御演算装置100にアクセスすると、制御演算装置100の利用者側I/F部104は、編集装置200に対し、ID及びパスワードの送信を要求する(ステップS1)。編集装置200の利用者が、編集装置200にID及びパスワードを入力すると、編集装置200は当該ID及びパスワードを制御演算装置100に送信する。このとき、ユーザ認証のために、PAP(Password Authentication Protocol)や秘匿性を高めたCHAP(Challenge Handshake Authentication Protocol)などの認証プロトコルを用いることが好ましい。
 制御演算装置100の利用者側I/F部104は、編集装置200からID及びパスワードを受信すると、当該ID及びパスワードの組み合わせが利用者データベース103に記憶されているか否かを判定する(ステップS2)。受信したID及びパスワードの組み合わせが利用者データベース103に記憶されていない場合(ステップS2:NO)、編集装置200に対してID及びパスワードの組み合わせが誤っている旨を示す通知を送信し、ステップS1に戻り、ID及びパスワードの再度の受信を待機する。
 他方、受信したID及びパスワードの組み合わせが利用者データベース103に記憶されている場合(ステップS2:YES)、利用者側I/F部104は、当該ID及びパスワードの組み合わせに関連付けて利用者データベース103に記憶されている権限に、編集権限が含まれるか否かを判定する(ステップS3)。利用者側I/F部104は、ID及びパスワードの組み合わせに関連付けられた権限に編集権限が含まれないと判定した場合(ステップS3:NO)、編集装置200に対して当該利用者による制御プログラムの編集が許可されていない旨を示す通知を送信し、制御プログラムの変更を行わずに、処理を終了する。
 他方、利用者側I/F部104は、ID及びパスワードの組み合わせに関連付けられた権限に編集権限が含まれると判定した場合(ステップS3:YES)、編集装置200から新たな制御プログラムを受信する(ステップS4)。このとき、編集装置200は、当該新たな制御プログラムを用いて生成したCRC(Cyclic Redundancy Check)符号(第1の誤り検出符号)と、当該新たな制御プログラムをビット反転させた情報を用いて生成したCRC符号(第2の誤り検出符号)とを、当該新たな制御プログラムに付して制御演算装置100に送信する。なお、利用者側I/F部104は、ステップS3において認証が完了すると、編集装置200との間でセッションを張り、一定時間の間はステップS1~ステップS3による認証を行わずとも通信を許可する。
 利用者側I/F部104が編集装置200から新たな制御プログラムを受信すると、一時記録部105は、当該新たな制御プログラムをバッファ106に記録する(ステップS5)。このとき、一時記録部105は、受信した新たな制御プログラムに付された2つのCRC符号を除去せずそのままバッファ106に記録する。
 次に、提示部107は、新たな制御プログラムが登録されたことを承認受付装置300に通知する(ステップS6)。
 新たな制御プログラムが登録されたことを示す通知を承認受付装置300が受信すると、承認受付装置300は、管理者の操作により、当該新たな制御プログラムの内容を閲覧するため制御演算装置100にアクセスする。承認受付装置300が制御演算装置100にアクセスすると、制御演算装置100の利用者側I/F部104は、承認受付装置300に対し、ID及びパスワードの送信を要求する(ステップS7)。承認受付装置300の利用者が、制御演算装置100にID及びパスワードを入力すると、承認受付装置300は当該ID及びパスワードを制御演算装置100に送信する。
 制御演算装置100の利用者側I/F部104は、承認受付装置300からID及びパスワードを受信すると、当該ID及びパスワードの組み合わせが利用者データベース103に記憶されているか否かを判定する(ステップS8)。受信したID及びパスワードの組み合わせが利用者データベース103に記憶されていない場合(ステップS8:NO)、承認受付装置300に対してID及びパスワードの組み合わせが誤っている旨を示す通知を送信し、ID及びパスワードの再度の受信を待機する。
 他方、受信したID及びパスワードの組み合わせが利用者データベース103に記憶されている場合(ステップS8:YES)、利用者側I/F部104は、当該ID及びパスワードの組み合わせに関連付けて利用者データベース103に記憶されている権限に、閲覧権限が含まれるか否かを判定する(ステップS9)。利用者側I/F部104は、ID及びパスワードの組み合わせに関連付けられた権限に閲覧権限が含まれないと判定した場合(ステップS9:NO)、承認受付装置300に対して当該利用者による制御プログラムの内容の閲覧が許可されていない旨を示す通知を送信してステップS7に戻り、閲覧権限を有する利用者からのアクセスを待機する。
 他方、利用者側I/F部104は、ID及びパスワードの組み合わせに関連付けられた権限に閲覧権限が含まれると判定した場合(ステップS9:YES)、承認受付装置300に、新たな制御プログラムの内容を示す情報を送信することで、当該情報を承認受付装置300に表示させる(ステップS10)。具体的には、提示部107は、新たな制御プログラムをシミュレートし、当該シミュレートの結果を示す情報を、承認受付装置300に送信する。なお、利用者側I/F部104は、ステップS9において認証が完了すると、承認受付装置300との間でセッションを張り、一定時間の間はステップS7~ステップS9による認証を行わずとも通信を許可する。
 承認受付装置300は、制御演算装置100から受信した新たな制御プログラムの内容を示す情報を表示すると、管理者から当該新たな制御プログラムの内容を承認するか否かの入力を受け付ける。次に、承認受付装置300は、管理者から受け付けた承認情報を制御演算装置100に送信する。
 制御演算装置100の利用者側I/F部104は、ステップS7で受信したID及びパスワードの組み合わせに関連付けて利用者データベース103に記憶されている権限に、承認権限が含まれるか否かを判定する(ステップS11)。利用者側I/F部104は、ID及びパスワードの組み合わせに関連付けられた権限に承認権限が含まれないと判定した場合(ステップS11:NO)、承認受付装置300から承認情報を受信せず、承認の権限が無い旨を示す通知を送信し、承認受付装置300との通信を終了してステップS7に戻り、他の利用者による承認受付装置300からのアクセスを待機する。
 他方、利用者側I/F部104は、ID及びパスワードの組み合わせに関連付けられた権限に承認権限が含まれると判定した場合(ステップS11:YES)、承認情報受付部108は承認受付装置300から送信された承認情報を受信する(ステップS12)。次に、プログラム変更部109は、受信した承認情報が、新たな制御プログラムへの変更を承認することを示すか否かを判定する(ステップS13)。
 受信した承認情報が、新たな制御プログラムへの変更を承認することを示す場合(ステップS13:YES)、プログラム変更部109は、バッファ106から新たな制御プログラム並びに第1のCRC符号及び第2のCRC符号を読み出し、第1のCRC符号または第2のCRC符号を用いて、新たな制御プログラムの誤り検出を行う(ステップS14)。
 第1のCRC符号及び第2のCRC符号の何れによっても、新たな制御プログラムの誤りが検出されない場合(ステップS14:NO)、プログラム変更部109は、制御ロジック内での結線に断線が無いこと、及びコンパイルエラーが発生しないことを確認して、プログラム記憶部101が記憶する制御プログラムを新たな制御プログラムに書き換える(ステップS15)。
 他方、ステップS13で受信した承認情報が、新たな制御プログラムへの変更を承認しないことを示す場合(ステップS13:NO)、またはステップS14で新たな制御プログラムの誤りが検出された場合(ステップS14:YES)、制御プログラムの変更を行わずに、処理を終了する。
 なお、制御演算装置100は、新たな制御プログラムを生成した利用者が編集権限を有するか否か(ステップS3)、承認情報を入力した利用者が承認権限を有するか否か(ステップS11)、CRC符号によって誤りが検出されたか否か(ステップS14)、制御ロジック内の結線に断線があるか否か、コンパイルエラーが生じるか否か、の検証結果を、それぞれログとして記録しておくことが好ましい。
 このように、本実施形態によれば、制御演算装置100は、編集装置200から受け付けた新たな制御プログラムの内容を承認受付装置300に表示させる。承認受付装置300から受け付けた承認情報が新たな制御プログラムを承認するものである場合に、プログラム記憶部101が記憶する制御プログラムを新たな制御プログラムに書き換える。これにより、制御プログラム管理システムは、制御演算装置100が実施する制御プログラムの内容が、過誤がある制御パラメータやロジックへ変更されることを防止することができる。
 また、本実施形態によれば、制御演算装置100は、編集装置200から受信したID及びパスワードの組み合わせに関連付けられた権限が制御プログラムの編集を許可された権限であり、かつ承認受付装置300から受信したID及びパスワードの組み合わせに関連付けられた権限が制御プログラムの承認を許可された権限である場合に、制御プログラムの変更を行う。これにより、制御プログラム管理システムは、運転員や保守員以外の第三者によるチェックを経て制御プログラムを変更することができる。
 また、本実施形態によれば、制御演算装置100は、編集装置200から受信した新たな制御プログラムに付された第1のCRC符号及び第2のCRC符号によって誤りが検出されない場合に、制御プログラムの変更を行う。新たな制御プログラムの改ざんがされた場合において、偶然に第1のCRC符号によって誤りが検出できないとき、制御プログラムのビットを反転させた情報に基づく第2のCRC符号による誤り検出によって誤りを検出することができる可能性が高い。したがって、本実施形態によれば、編集装置200が送信した新たな制御プログラムが改ざんされた場合にも、当該改ざんを精度良く検出することができる。
《第2の実施形態》
 次に、本発明の第2の実施形態について説明する。
 図5は、本発明の第2の実施形態による制御プログラム管理システムの構成を示す図である。
 第2の実施形態による制御プログラム管理システムは、第1の実施形態の構成に加え、設計及び保守管理装置400(プログラムリポジトリ装置)を備える。
 設計及び保守管理装置400は、制御演算装置100が現在実行している制御プログラム、及び過去に実行していた歴代の制御プログラムを、バージョン情報に関連付けて記憶及び管理する。
 図6は、本発明の第2の実施形態による編集装置200の構成を示す概略ブロック図である。
 編集装置200は、チェックアウト部201、編集部202、送信部203、チェックイン部204を備える。
 チェックアウト部201は、制御演算装置100が現在実行している制御プログラムを設計及び保守管理装置400からチェックアウトし、編集ができないよう当該制御プログラムにロックをかける。チェックアウトとは、リポジトリからデータを取り出してローカルに保存することをいう。
 編集部202は、チェックアウト部201がチェックアウトした制御プログラムを編集することで新たな制御プログラムを生成する。
 送信部203は、編集部202が生成した新たな制御プログラムを制御演算装置100に送信する。
 チェックイン部204は、設計及び保守管理装置400に新たな制御プログラムをチェックインし、当該制御プログラムのロックを解除する。チェックインとは、リポジトリへファイルを書き込むことをいう。
 ここで、第2の実施形態による編集装置200が制御プログラムの編集を行う際の動作について説明する。
 運転員や保守員が、制御プログラムの編集を行うために編集装置200の操作を開始すると、編集装置200のチェックアウト部201は、設計及び保守管理装置400から、制御演算装置100が現在実行している制御プログラムを設計及び保守管理装置400からチェックアウトする。そして、チェックアウト部201は、当該チェックアウトした制御プログラムのロックを行う。次に、運転員や保守員の操作に従って、編集部202がチェックアウトした制御プログラムの編集を行うことで、新たな制御プログラムを生成する。編集が完了すると、送信部203は、当該新たな制御プログラムを制御演算装置100に送信する。また、チェックイン部204は、新たな制御プログラムをチェックインした後、当該新たな制御プログラムのロックを解除する。
 このとき、設計及び保守管理装置400は、制御プログラムのロックしたときの編集装置200の利用者と当該ロックを解除したときの編集装置200の利用者とが同一であるか否かを判定する。これは、編集装置200との通信の際に利用者のIDを取得し、当該IDが一致するか否かを判定することで行うことができる。ロック時とロック解除時とで利用者が同一でない場合、設計・保守管理装置400は、その旨を示す通知を承認受付装置300に送信する。これにより、当該通知を視認することで、制御プログラムが正当に編集されていないことを、承認権限を有する利用者に知らせることができる。
 次に、承認受付装置300の動作について説明する。
 第2の実施形態において、制御演算装置100の提示部107は上述したステップS10において、プログラム実行部102が現在実行している制御プログラムのバージョン情報と、バッファ106が記憶する制御プログラムのバージョン情報とを、承認受付装置300に送信する。そして、承認受付装置300は、設計及び保守管理装置400から、受信した2つのバージョン情報に関連付けられた制御プログラムを読み出す。このとき、承認受付装置300は、設計及び保守管理装置400から変更仕様書を検索し、当該文書を変更認証装置へ送信するようにしても良い。そして、承認受付装置300は、新たな制御プログラムと現在実行している制御プログラムの差分を生成し、当該差分の情報を表示する。
例えば、承認受付装置300は、新たな制御プログラムのうち、変更部分(差分)を赤で表示し、変更が無い部分を黒で表示することで、差分を強調した表示をすることができる。
 つまり、本実施形態における提示部107は、新たな制御プログラムと現在実行している制御プログラムとの差分を承認受付装置300に表示させる。
 このように、本実施形態によれば、承認受付装置300は、現在実行している制御プログラムと異なる部分を強調して表示する。これにより、管理者は制御プログラムのうち変更しようとするパラメータやロジックの過誤部分を見逃す可能性を低減させることができる。
 また、承認受付装置300は、制御演算装置100において制御プログラムの変更が完了したときに、設計及び保守管理装置400に変更後の制御プログラムのバージョン情報を通知する。そして、設計及び保守管理装置400は、当該バージョン情報に関連付けて新たな制御プログラムを記憶・管理する。
 なお、本実施形態では、設計及び保守管理装置400を外部装置として設ける場合について説明したが、これに限られず設計・保守管理装置400は、制御演算装置100に実装されていても良い。この場合、承認受付装置300でなく提示部107が制御プログラムの差分の情報を生成し、当該差分の情報を承認受付装置300に表示させる。
 また、本実施形態において提示部107は、新たな制御プログラムと現在実行している制御プログラムとの差分に加え、設計及び保守管理装置400が記憶する複数世代前の制御プログラムそれぞれとの差分を、承認受付装置300に表示させるようにしても良い。これにより、新たな制御プログラムが複数世代前の制御プログラムのロジックに先祖返りすることを防止することができる。
《第3の実施形態》
 第2の実施形態では、編集装置200が設計及び保守管理装置400に対して制御プログラムのチェックイン及びロック解除を行った後に承認受付装置300による承認処理を行う場合について説明した。第3の実施形態では、承認受付装置300が管理者からの承認情報を受け付けた後に、設計及び保守管理装置400が記憶する制御プログラムのチェックイン及びロック解除を行う。
 図7は、本発明の第3の実施形態による制御プログラム管理システムの構成を示す図である。
 図7に示すように、第3の実施形態では、承認受付装置300が編集装置200と通信を行う。
 第3の実施形態による編集装置200のチェックイン部204は、第2の実施形態と異なり、編集部202による編集が完了したときには、新たな制御プログラムのチェックイン及びロック解除を行わない。また、第3の実施形態による編集装置200の送信部203は、第2の実施形態と異なり、編集部202による編集が完了したときに、新たな制御プログラムを制御演算装置100及び承認受付装置300に送信する。
 他方、承認受付装置300は、新たな制御プログラムと現在実行している制御プログラムの差分を生成を表示して承認情報の入力を受け付けると、当該承認情報を制御演算装置100及び編集装置200に送信する。そして、編集装置200のチェックイン部204は、当該承認情報が変更の承認を示す場合に、編集装置200から受信した新たな制御プログラムをチェックインしてロックを解除する。他方、編集装置200のチェックイン部204は、当該承認情報が変更の否認を示す場合に、新たな制御プログラムをチェックインせずに、ロックを解除する。
 なお、本実施形態においても、第2の実施形態と同様に、設計及び保守管理装置400が制御演算装置100に実装されていても良く、また承認受付装置300が設計及び保守管理装置400が記憶する複数世代前の制御プログラムそれぞれとの差分を表示しても良い。
《第4の実施形態》
 第3の実施形態では、承認受付装置300が管理者からの承認情報を受け付けた後に、編集装置200が制御プログラムのロックを解除する場合について説明した。第4の実施形態では、編集装置200が制御プログラムをロックし、承認受付装置300が管理者からの承認情報を受け付けたときに当該ロックを解除する。
 第4の実施形態による編集装置200は、第3の実施形態と同様に、編集部202による編集が完了したときには、新たな制御プログラムのチェックイン及びロック解除を行わず、また新たな制御プログラムを制御演算装置100及び承認受付装置300に送信する。
 他方、承認受付装置300は、利用者から承認情報の入力を受け付けると、当該承認情報が新たな制御プログラムへの変更を承認することを示すか否かを判定する。承認情報が変更の承認を示す場合、承認受付装置300は、編集装置200から受信した新たな制御プログラムを設計・保守管理装置400にチェックインして、制御プログラムのロックを解除する。他方、承認情報が変更の否認を示す場合、承認受付装置300は、新たな制御プログラムをチェックインせずに、制御プログラムのロックを解除する。
 このように、本実施形態によれば、承認されない制御プログラムが設計及び保守管理装置400に記録されることを防ぐことができる。また、承認があるまで設計及び保守管理装置400の制御プログラムがロックされるため、同一のバージョンの制御プログラムに対して同時に異なる設計変更がなされることを防止することができる。また、編集装置200でなく承認受付装置300がロックを解除するため、承認情報を受け付けたときから遅滞無く、新たな制御プログラムを設計及び保守管理装置400にチェックインし、またそのロックを解除することができる。
 なお、本実施形態においても、第2、第3の実施形態と同様に、設計及び保守管理装置400を制御演算装置100に実装されていても良く、また承認受付装置300が設計及び保守管理装置400が記憶する複数世代前の制御プログラムそれぞれとの差分を表示しても良い。
《第5の実施形態》
 図8は、本発明の第5の実施形態による制御プログラム管理システムの構成を示す図である。
 第1~第4の実施形態では、1つの制御演算装置100に対して制御プログラムの変更を行う場合について説明した。しかし、実際には冗長化や負荷分散のため、複数の制御演算装置100を用いてプラントの運用することが多い。これは、制御演算装置100の負荷を減らし、多くの制御ロジックを演算させること、または廉価なCPU(Central Processing Unit)を採用することを目的とするものである。そのため、第1~第4の実施形態の制御プログラム管理システムによって制御プログラムの変更を行おうとすると、管理者は、冗長化された編集装置200のそれぞれに対して承認情報の入力を行う必要がある。そこで、第5の実施形態では、複数の制御演算装置100についての制御プログラムを変更する方法について説明する。
 編集装置200は、新たな制御プログラムを適用する制御演算装置100を選択する機能を有する。そして、編集装置200は、生成した新たな制御プログラムを、上記機能によって選択された全ての制御演算装置100に送信する。他方、承認受付装置300は、複数の制御演算装置100から新たな制御プログラムの内容を示す情報を表示すると、全ての制御演算装置100に対する変更の承認の可否を包括して示す承認情報を、編集装置200に送信する。
 編集装置200は、承認受付装置300から受信した承認情報を制御演算装置100に転送する。そして、制御演算装置100の承認情報受付部108は、編集装置200から承認情報を受け付け、プログラム変更部109は、当該承認情報に基づいて制御プログラムの変更の可否を決定する。なお、冗長構成をとる制御演算装置100は、それぞれ処理タイミングの同期を取っているので、プログラム記憶部101に記録された制御プログラムで同期が取れた時点で、全ての制御演算装置100の処理が始まることとなる。
 このように、本実施形態によれば、複数の制御演算装置100に対して同時に制御プログラムの変更を行うことができる。これにより、制御プログラムの変更のための利用者の負担を低減させることができる。
 以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
 上述の制御演算装置100、編集装置200及び承認受付装置300は内部に、コンピュータシステムを有している。そして、上述した各処理部の動作は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD-ROM、DVD-ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
 また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。
さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
 制御プログラムの内容が、過誤がある制御パラメータやロジックへ変更されることを防止する。
 100…制御演算装置 101…プログラム記憶部 102…プログラム実行部 103…利用者データベース 104…利用者側I/F部 105…一時記録部 106…バッファ 107…提示部 108…承認情報受付部 109…プログラム変更部 110…フィールド側I/F部 200…編集装置 201…チェックアウト部 202…編集部 203…送信部 204…チェックイン部 300…承認受付装置 400…設計・保守管理装置

Claims (12)

  1.  制御プログラム管理システムであって、
     制御演算装置と、
     前記制御演算装置が実行している制御プログラムに代えて制御演算装置に実行させる新たな制御プログラムを生成し、前記制御演算装置に送信する編集装置と、
     前記編集装置が生成した新たな制御プログラムを前記制御演算装置に実行させるか否かを示す承認情報の入力を受け付け、前記制御演算装置に送信する承認受付装置と
     を備え、
     前記制御プログラム管理システムは、前記制御演算装置が実行する制御プログラムの変更を管理し、
     前記制御演算装置は、
     実行すべき制御プログラムを記憶するプログラム記憶部と、
     前記プログラム記憶部が記憶する制御プログラムを実行するプログラム実行部と、
     前記編集装置から前記新たな制御プログラムを受け付け、前記制御プログラムをバッファに記録する一時記録部と、
     前記バッファが記憶する制御プログラムの内容を前記承認受付装置に表示させる提示部と、
     前記承認受付装置から承認情報を受け付ける承認情報受付部と、
     前記承認情報受付部が受け付けた承認情報が前記制御プログラムを承認するものである場合に、前記プログラム記憶部が記憶する制御プログラムを前記バッファが記憶する制御プログラムに書き換えるプログラム変更部と
     を備える制御プログラム管理システム。
  2.  利用者毎に、前記利用者を識別する識別情報、当該IDの認証に用いる認証情報、及び前記利用者の権限を関連付けて記憶する利用者データベースをさらに備え、
     前記編集装置は、前記新たな制御プログラムに加えて、前記新たな制御プログラムを生成した利用者の識別情報及び認証情報を前記制御演算装置に送信し、
     前記承認受付装置は、前記承認情報に加えて、前記承認情報を入力した利用者の識別情報及び認証情報を前記制御演算装置に送信し、
     前記制御演算装置のプログラム変更部は、前記編集装置から受信した識別情報及び認証情報に関連付けて前記利用者データベースが記憶する権限が、制御プログラムの編集を許可された権限であり、かつ前記承認受付装置から受信した識別情報及び認証情報に関連付けて前記利用者データベースが記憶する権限が、制御プログラムの承認を許可された権限である場合において、前記承認情報受付部が受け付けた承認情報が、前記制御プログラムを承認するものであるときに、前記プログラム記憶部が記憶する制御プログラムを前記バッファが記憶する制御プログラムに書き換える
     請求項1に記載の制御プログラム管理システム。
  3.  前記編集装置は、前記新たな制御プログラムを用いて生成した第1の誤り検出符号と、前記新たな制御プログラムをビット反転させた情報を用いて生成した第2の誤り検出符号とを、前記新たな制御プログラムに付して前記制御演算装置に送信し、
     前記制御演算装置のプログラム変更部は、前記編集装置から受信した新たな制御プログラムに付された第1の誤り検出符号及び第2の誤り検出符号によって誤りが検出されない場合において、前記承認情報受付部が受け付けた承認情報が前記制御プログラムを承認するものであるときに、前記プログラム記憶部が記憶する制御プログラムを前記バッファが記憶する制御プログラムに書き換える
     請求項1または請求項2に記載の制御プログラム管理システム。
  4.  前記制御演算装置の提示部は、前記バッファが記憶する制御プログラムの実行をシミュレートし、前記シミュレートの結果を前記承認受付装置に表示させる
     請求項1から請求項3の何れか1項に記載の制御プログラム管理システム。
  5.  前記制御演算装置の提示部は、前記プログラム実行部が実行している制御プログラムと前記バッファが記憶する制御プログラムの差分を前記承認受付装置に表示させる
     請求項1から請求項4の何れか1項に記載の制御プログラム管理システム。
  6.  過去に前記プログラム記憶部に記憶されていた制御プログラムをそれぞれ記憶するプログラムリポジトリ装置を備え、
     前記制御演算装置の提示部は、前記プログラムリポジトリ装置が記憶する制御プログラムそれぞれと前記バッファが記憶する制御プログラムの差分を前記承認受付装置に表示させる
     請求項5に記載の制御プログラム管理システム。
  7.  前記編集装置は、
     前記プログラム実行部が実行している制御プログラムを前記プログラムリポジトリ装置からチェックアウトし、前記制御プログラムの編集ができないようロックをかけるチェックアウト部と、
     前記チェックアウトした制御プログラムを編集することで新たな制御プログラムを生成する編集部と、
     前記編集部が生成した新たな制御プログラムを前記制御演算装置に送信する送信部と、
     前記チェックアウトした制御プログラムのロックを解除し、前記新たな制御プログラムを前記プログラムリポジトリ装置にチェックインするチェックイン部と
     を備え、
     前記プログラムリポジトリ装置は、前記制御プログラムのロックした利用者と当該ロックを解除した利用者とが同一であるか否かを判定し、同一でない場合、その旨を承認権限を有する利用者に通知する
     請求項6に記載の制御プログラム管理システム。
  8.  前記編集装置は、
     前記プログラム実行部が実行している制御プログラムを前記プログラムリポジトリ装置からチェックアウトし、当該制御プログラムの編集ができないようロックをかけるチェックアウト部と、
     前記チェックアウトした制御プログラムを編集することで新たな制御プログラムを生成する編集部と、
     前記編集部が生成した新たな制御プログラムを前記制御演算装置に送信する送信部と、
     を備え、
     前記プログラムリポジトリ装置が記憶する制御プログラムのロックは、前記承認受付装置が前記承認情報を受け付けた後に解除される
     請求項6に記載の制御プログラム管理システム。
  9.  前記承認受付装置は、前記承認情報を受け付けた場合に前記プログラムリポジトリ装置が記憶する制御プログラムのロックを解除する
     請求項8に記載の制御プログラム管理システム。
  10.  前記承認受付装置は、前記承認情報を受け付けた場合に前記編集装置に通知を発し、
     前記編集装置は、前記承認受付装置から通知を受けた場合に、前記プログラムリポジトリ装置が記憶する制御プログラムのロックを解除する
     請求項8に記載の制御プログラム管理システム。
  11.  前記制御演算装置は、冗長構成により同一の制御プログラムを実行する複数の制御演算装置であって、
     前記承認受付装置は、前記承認情報を、前記制御演算装置に代えて前記編集装置に送信し、
     前記編集装置は、前記新たな制御プログラムを、新たな制御プログラムを適用する全ての前記制御演算装置に送信し、前記承認受付装置から受信した承認情報を制御演算装置に転送し、
     前記制御演算装置の承認情報受付部は、前記承認受付装置に代えて前記編集装置から承認情報を受け付ける
     請求項1から請求項10の何れか1項に記載の制御プログラム管理システム。
  12.  制御演算装置が実行する制御プログラムの変更方法であって、
     編集装置は、前記制御演算装置が実行している制御プログラムに代えて前記制御演算装置に実行させる新たな制御プログラムを生成して前記制御演算装置に送信し、
     前記制御演算装置の一時記録部は、前記編集装置から前記新たな制御プログラムを受け付けて前記制御プログラムをバッファに記録し、
     前記制御演算装置の提示部は、前記バッファが記憶する制御プログラムの内容を承認受付装置に表示させ、
     前記承認受付装置は、前記編集装置が生成した新たな制御プログラムを前記制御演算装置に実行させるか否かを示す承認情報の入力を受け付けて前記制御演算装置に送信し、
     前記制御演算装置の承認情報受付部は、前記承認受付装置から承認情報を受け付け、
     前記制御演算装置のプログラム変更部は、前記承認情報受付部が受け付けた承認情報が前記制御プログラムを承認するものである場合に、実行すべき制御プログラムを記憶するプログラム記憶部が記憶する制御プログラムを、前記バッファが記憶する制御プログラムに書き換える
     制御プログラムの変更方法。
PCT/JP2013/054227 2012-02-27 2013-02-20 制御プログラム管理システム、及び制御プログラムの変更方法 WO2013129212A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP13755169.3A EP2821866B1 (en) 2012-02-27 2013-02-20 Control program management system and method for changing control program
CN201380004412.6A CN104011612B (zh) 2012-02-27 2013-02-20 控制程序管理系统以及控制程序的变更方法
KR1020147017307A KR101598738B1 (ko) 2012-02-27 2013-02-20 제어 프로그램 관리 시스템, 및 제어 프로그램의 변경 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-039997 2012-02-27
JP2012039997A JP5964077B2 (ja) 2012-02-27 2012-02-27 制御プログラム管理システム、及び制御プログラムの変更方法

Publications (1)

Publication Number Publication Date
WO2013129212A1 true WO2013129212A1 (ja) 2013-09-06

Family

ID=49082412

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/054227 WO2013129212A1 (ja) 2012-02-27 2013-02-20 制御プログラム管理システム、及び制御プログラムの変更方法

Country Status (6)

Country Link
US (1) US9823639B2 (ja)
EP (1) EP2821866B1 (ja)
JP (1) JP5964077B2 (ja)
KR (1) KR101598738B1 (ja)
CN (1) CN104011612B (ja)
WO (1) WO2013129212A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023062753A1 (ja) * 2021-10-13 2023-04-20 ファナック株式会社 数値制御装置

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015049683A (ja) * 2013-08-30 2015-03-16 株式会社東芝 制御プログラム管理装置、情報処理装置、及び制御プログラム処理方法
CN106462398B (zh) 2014-06-11 2020-01-17 三菱电机株式会社 程序编辑装置及程序管理装置
JP5890477B2 (ja) * 2014-07-09 2016-03-22 ファナック株式会社 ロボットプログラム修正システム
JP6686496B2 (ja) * 2015-09-25 2020-04-22 富士電機株式会社 コントローラシステム、その支援装置
IL243025A0 (en) * 2015-12-10 2016-02-29 Shabtai Asaf Method and system for detecting a malicious attempt to reprogram a plc in scada systems
EP3220223B1 (de) * 2016-03-16 2021-07-14 Siemens Aktiengesellschaft Verfahren zur bearbeitung eines werkstücks in einer werkzeugmaschine mit optimierter bearbeitungszeit
WO2018216083A1 (ja) * 2017-05-22 2018-11-29 三菱電機株式会社 制御装置および編集装置
JP6984301B2 (ja) * 2017-10-13 2021-12-17 横河電機株式会社 設定システム、設定装置、設定方法、及び設定プログラム
JP7052755B2 (ja) * 2019-02-27 2022-04-12 オムロン株式会社 制御装置、管理プログラムおよび制御システム
US11625683B2 (en) 2021-01-14 2023-04-11 Rockwell Automation Technologies, Inc. System and method of industrial automation multi-developer control code change commits
US11609750B2 (en) 2021-01-25 2023-03-21 Rockwell Automation Technologies, Inc. Industrial automation multi-developer control code synchronization
US11656866B2 (en) 2021-03-19 2023-05-23 Rockwell Automation Technologies, Inc. Industrial automation distributed project control with milestone rollback

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0799674A (ja) 1993-09-27 1995-04-11 Fujitsu Ltd 情報処理装置の部分ファイル更新方式
JPH11110197A (ja) 1997-10-06 1999-04-23 Sanyo Electric Co Ltd ソフトウェア管理装置
JP2003039359A (ja) * 2001-07-26 2003-02-13 Matsushita Electric Ind Co Ltd ロボット制御装置
JP2005535945A (ja) 2002-03-26 2005-11-24 ソテレスゲーエムベーハー コンピュータプログラムの完全性の保護方法
JP2007058368A (ja) * 2005-08-23 2007-03-08 Yokogawa Electric Corp プログラムの照合装置
JP2009086964A (ja) * 2007-09-28 2009-04-23 Fanuc Ltd オペレータのレベルに応じた操作を可能とする数値制御装置
JP2010507848A (ja) 2006-10-26 2010-03-11 シーメンス アクチエンゲゼルシヤフト 自動化システムでオンラインプログラム変更を実行するための方法
JP2011501294A (ja) * 2007-10-17 2011-01-06 ジーイー・インテリジェント・プラットフォームズ・インコーポレイテッド 補修および診断論理スキャンの装置ならびに方法
JP2012008872A (ja) * 2010-06-25 2012-01-12 Hitachi Ltd 制御装置の保守ツール

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3224970B2 (ja) 1995-08-22 2001-11-05 株式会社日立製作所 プログラム交換可能な磁気記憶装置制御システム及びプログラム交換方法
JPH09198266A (ja) * 1996-01-19 1997-07-31 Hitachi Ltd プロセス制御システム
US6584499B1 (en) * 1999-07-09 2003-06-24 Lsi Logic Corporation Methods and apparatus for performing mass operations on a plurality of managed devices on a network
JP2002063045A (ja) 2000-08-22 2002-02-28 Mitsubishi Heavy Ind Ltd 動作中プログラムの変更方法
US6928328B2 (en) * 2002-08-02 2005-08-09 Fisher-Rosemount Systems, Inc. Integrated electronic signatures for approval of process control system software objects
JP4403945B2 (ja) * 2003-12-19 2010-01-27 株式会社デンソー 制御プログラムの検査方法及び検査装置及び検査プログラム
EP1703667A1 (de) * 2005-03-15 2006-09-20 Siemens Aktiengesellschaft Netzwerkmanagement unter Verwendung eines Master-Replica-Verfahrens
JP2006268172A (ja) * 2005-03-22 2006-10-05 Nec Corp サーバシステムおよびオンラインソフトウェア更新方法
WO2006110991A1 (en) * 2005-04-18 2006-10-26 Research In Motion Limited Method and system for controlling software version updates
JP4838109B2 (ja) 2006-12-15 2011-12-14 三菱電機株式会社 プログラム修正システム及びプログラム修正装置
US8239732B2 (en) * 2007-10-30 2012-08-07 Spansion Llc Error correction coding in flash memory devices
WO2009111408A1 (en) * 2008-03-04 2009-09-11 Apple Inc. System and method of authorizing execution of software code based on at least one installed profile
JP5574627B2 (ja) 2009-06-12 2014-08-20 三菱重工業株式会社 冗長化システム
US8204908B2 (en) * 2009-11-24 2012-06-19 Sap Ag Team support in change recording and versioning systems
JP5627477B2 (ja) 2011-01-20 2014-11-19 三菱重工業株式会社 プラント安全設計支援装置及びプラント監視保守支援装置
JP5836504B2 (ja) * 2012-12-20 2015-12-24 三菱電機株式会社 制御システム及びプログラム送信装置及び認証サーバ及びプログラム保護方法及びプログラム送信方法及びプログラム送信装置のプログラム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0799674A (ja) 1993-09-27 1995-04-11 Fujitsu Ltd 情報処理装置の部分ファイル更新方式
JPH11110197A (ja) 1997-10-06 1999-04-23 Sanyo Electric Co Ltd ソフトウェア管理装置
JP2003039359A (ja) * 2001-07-26 2003-02-13 Matsushita Electric Ind Co Ltd ロボット制御装置
JP2005535945A (ja) 2002-03-26 2005-11-24 ソテレスゲーエムベーハー コンピュータプログラムの完全性の保護方法
JP2007058368A (ja) * 2005-08-23 2007-03-08 Yokogawa Electric Corp プログラムの照合装置
JP2010507848A (ja) 2006-10-26 2010-03-11 シーメンス アクチエンゲゼルシヤフト 自動化システムでオンラインプログラム変更を実行するための方法
JP2009086964A (ja) * 2007-09-28 2009-04-23 Fanuc Ltd オペレータのレベルに応じた操作を可能とする数値制御装置
JP2011501294A (ja) * 2007-10-17 2011-01-06 ジーイー・インテリジェント・プラットフォームズ・インコーポレイテッド 補修および診断論理スキャンの装置ならびに方法
JP2012008872A (ja) * 2010-06-25 2012-01-12 Hitachi Ltd 制御装置の保守ツール

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2821866A4

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023062753A1 (ja) * 2021-10-13 2023-04-20 ファナック株式会社 数値制御装置

Also Published As

Publication number Publication date
KR101598738B1 (ko) 2016-02-29
US20130245792A1 (en) 2013-09-19
US9823639B2 (en) 2017-11-21
KR20140097445A (ko) 2014-08-06
JP5964077B2 (ja) 2016-08-03
CN104011612A (zh) 2014-08-27
EP2821866A4 (en) 2015-11-04
EP2821866A1 (en) 2015-01-07
JP2013175098A (ja) 2013-09-05
EP2821866B1 (en) 2017-12-13
CN104011612B (zh) 2016-10-05

Similar Documents

Publication Publication Date Title
JP5964077B2 (ja) 制御プログラム管理システム、及び制御プログラムの変更方法
CN102156840B (zh) 控制装置以及管理装置
KR101676980B1 (ko) 제어 시스템 및 프로그램 송신 장치 및 인증 서버 및 프로그램 보호 방법 및 프로그램 송신 방법 및 프로그램 송신 장치의 프로그램
CN109272617B (zh) 开锁验证方法、服务器、门锁、电子设备和存储介质
JP5171907B2 (ja) 情報処理装置、情報処理プログラム
CN104104672A (zh) 基于身份认证建立动态授权码的方法
CN107871081A (zh) 一种计算机信息安全系统
Olaniyi et al. Design of secure electronic voting system using multifactor authentication and cryptographic hash functions
Kobashi et al. Validating security design patterns application using model testing
JP5005746B2 (ja) パスワード照合装置および方法
CN110955897A (zh) 基于大数据的软件研发安全管控可视化方法及系统
CN110322610A (zh) 一种机房机柜操作权限信息匹配方法
JP2009003501A (ja) ワンタイムパスワード認証システム
JP4584196B2 (ja) 情報処理システム、情報処理方法、およびプログラム
CN110472423A (zh) 一种核电站文件权限管理方法、装置及设备
JP5534514B2 (ja) 情報処理装置、情報処理方法、及びプログラム
JP2009258906A (ja) 外部メディア制御方法、システム及び装置
KR102378989B1 (ko) 산업제어시스템 운영 환경을 고려한 취약점 시험 결과 확인 시스템 및 방법
CN115114670B (zh) 基于外链的文件解锁方法、装置、网盘及存储介质
Zeinali et al. Threat extraction method based on uml software description
JP2012133606A (ja) シンクライアントシステム、リモートアクセス処理制御方法、プログラム及び記憶媒体
CN117454342A (zh) 基于区块链的数据处理方法、装置、设备及可读存储介质
KR101551065B1 (ko) 직원 인증 관리 시스템 및 직원 인증 관리 방법
Gomaa et al. Separating application and security concerns in use case models
CN117079370A (zh) 一种保信工作站钥匙管理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13755169

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2013755169

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 20147017307

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE