Program creation device and programmable logic controller
09557727 ยท 2017-01-31
Assignee
Inventors
Cpc classification
International classification
Abstract
An engineering tool is used for editing data of program components of programmable logic controllers which form a programmable logic controller system which enables a plurality of users to simultaneously edit the program components, and for writing the edited data of the program components to the programmable logic controllers. The engineering tool includes a program component editing method setting unit configured to set the timing at which the data of the program components changed by the editing is transmitted to other engineering tools in which the data of the program components is being edited, for each of the program components.
Claims
1. A program creation device which is used for editing data of program components of programmable logic controllers that form a programmable logic controller system which enables a plurality of users to simultaneously edit the program components, and writing the edited data of the program components to the programmable logic controllers, the program creation device comprising a program component editing method setter to set a timing for transmitting the data of the program components changed by the editing to other program creation devices in which the data of the program components is being edited, for each of the program components, wherein the program component editing method setter sets, in response to a first command, the timing for transmitting the changed data to a first timing at which the data of the program components is changed, and wherein the program component editing method setter sets, in response to a second command, the timing for transmitting the changed data to a second timing at which the changed data of the program components is written to the programmable logic controllers.
2. A master programmable logic controller which, in combination with slave programmable logic controllers, forms a programmable logic controller system which enables a plurality of program creation devices to simultaneously edit program components, and in which a plurality of program creation devices perform editing of each of the program components of the master programmable logic controller and the slave programmable logic controllers, the master programmable logic controller comprising: a data memory which stores data of the program components and simultaneous edition control information indicating whether or not the program components are being edited; a tool communicator to read out in response to a request from any one of the plurality of program creation devices, data of the program components and the simultaneous edition control information indicating whether or not the data of the program components are being edited, from the data memory, and to transmit, and receive data of the program components and the data changed by the editing of the data of the simultaneous edition control information, from the program creation device that is a request source; a data updater to cause the data memory to store the data of the program components and the simultaneous edition control information received by the tool communicator; and an other-constituent-device communicator to transmit data of the program components of the slave programmable logic controllers and the simultaneous edition control information from the master programmable logic controller to the slave programmable logic controllers.
Description
BRIEF DESCRIPTION OF DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
DESCRIPTION OF EMBODIMENTS
(7) An embodiment of a program creation device and a programmable logic controller according to the present invention will be described in detail below with reference to the drawings. It is to be understood that the present invention is not limited by this embodiment.
Embodiment
(8)
(9) The programmable logic controller system 2 includes one programmable logic controller 3 as a master (hereinafter may be referred to just as a master programmable logic controller), and (m1) programmable logic controllers 4 as slaves (where m denotes a natural number equal to or more than 2, and hereinafter may be referred to just as slave programmable logic controllers), and the programmable logic controllers 3 and 4 are connected through a data bus 5. Incidentally, the slave programmable logic controllers 4.sub.2 to 4.sub.m are not essential components for the programmable logic controller system 2. In other words, the programmable logic controller system 2 may also be configured without including the programmable logic controllers 4.sub.2 to 4.sub.m as the slaves.
(10) The programmable logic controller 3 as the master includes a data communication unit 21, a data update unit 22 and a data memory 23.
(11) The data communication unit 21 includes a tool communication unit 21A and an other-constituent-device communication unit 21B. The tool communication unit 21A transmits a program component 23A stored in the data memory 23, and program components 23A.sub.2 to 23A.sub.m acquired from the slave programmable logic controllers 4.sub.2 to 4.sub.m through the other-constituent-device communication unit 21B, to the engineering tools 1.sub.1 to 1.sub.k as request sources, in response to requests from the engineering tools 1.sub.1 to 1.sub.k. Also, the tool communication unit 21A receives edited data (or changed contents) of the program components 23A, 23A.sub.2 to 23A.sub.m, and simultaneous edition control information 23B, from the engineering tools 1.sub.1 to 1.sub.k. The data update unit 22 includes a program component update unit 22A and a simultaneous edition control information update unit 22B. The data memory 23 is a storage element such as a nonvolatile memory, and retains two types of information, namely, the program component 23A and the simultaneous edition control information 23B. The simultaneous edition control information 23B will be described in detail later.
(12) The engineering tool 1.sub.w (where w denotes a natural number which lies between 1 and k inclusive (1wk)) includes a communication unit 11.sub.w, a data change monitoring unit 12.sub.w, a program component editing method setting unit 13.sub.w and a program component editing unit 10.sub.w. Here, the engineering tools 1.sub.2 to 1.sub.k, although illustration of their internal configuration is omitted, have the same configuration as the engineering tool 1.sub.1.
(13) The communication unit 11.sub.w carries out data communication with the tool communication unit 21A of the programmable logic controller 3. Data to be transmitted and received by the communication is the changed content of the program components and of the simultaneous edition control information (lock or unlock) of the master programmable logic controller 3 and the slave programmable logic controllers 4.sub.2 to 4.sub.m.
(14) The data change monitoring unit 12.sub.w monitors user's operation on the program component editing unit 10.sub.w and data changes, and notifies the master programmable logic controller 3 and the other engineering tools 1.sub.1 to 1.sub.k of the operation performed by the user and the changes made in data via the communication unit 11.sub.w as needed. Operation of the data change monitoring unit 12.sub.w will be described in detail later.
(15) The program component editing unit 10.sub.w is a functional unit as a tool for actually performing editing operation of data of the program components of the devices of the programmable logic controller system 2. In other words, the program component editing unit 10.sub.w allows the user to perform edition of the program components 23A, 23A.sub.2 to 23A.sub.m acquired from the master programmable logic controller 3 by the communication unit 11.sub.w. When editing the program components 23A, 23A.sub.2 to 23A.sub.m, the program component editing unit 10.sub.w performs lock-based control on simultaneous edition in accordance with the simultaneous edition control information 23B acquired from the programmable logic controller 3; however, known technology is applicable to this control, and therefore, explanation of the control will be omitted. Data of the program components 23A, 23A.sub.2 to 23A.sub.m edited by the program component editing unit 10.sub.w is transmitted to the master programmable logic controller 3 through the communication unit 11.sub.w.
(16)
(17) The advance-notice-existence information 15.sub.wx is information as to whether to notify another user of the fact that a user is going to change the program component x, when the user is going to do so. The provision of the advance-notice-existence information 15.sub.wx makes it possible to grasp in advance that contents may be changed in a case where a plurality of users simultaneously edit the program components of the programmable logic controller system 2, and thus possible reworks may be suppressed during the user's programming time.
(18) Further, the editing method 16.sub.wx is information which is set for each of the program components 1 to n, and is information as to which of the methods given below, namely, a lock-based simultaneous edition control method and a method in which after the completion of data input operation the date is reflected on the editing screen of a plurality of users, should be applied at the time of editing the program component x.
(19) By making it possible to set two different methods for each of the program components, a flexible selection between those methods can be performed according to the type or property of data, so that suppression of reworks is enabled and working efficiency in designing of the programmable logic controller system 2 is improved.
(20) Changed contents transmitted from the communication unit 11.sub.w to the tool communication unit 21A are transmitted from the program component update unit 22A and the simultaneous edition control information update unit 22B via the other-constituent-device communication unit 21B to other programmable logic controllers. Due to this, the master programmable logic controller 3 can centrally receive the changed contents of the program components and the simultaneous edition control information of all programmable logic controllers present in the programmable logic controller system 2, and perform processing for transmission to other constituent devices. In short, one single programmable logic controller 3 centrally manages simultaneous edition control on the a plurality of programmable logic controllers 3, 4.sub.2 to 4.sub.m in the programmable logic controller system 2, and thereby, control of simultaneous edition by a plurality of users is made possible with a single path, which thus enables improving the working efficiency in designing the programmable logic controller system 2, such as eliminating a need for cable reconnection.
(21) The program component update unit 22A has a function of causing the changed contents of the program components received by the tool communication unit 21A to be reflected. To change the program components in its own programmable logic controller 3, the changed contents are reflected in the program component 23A. To change the program components of other programmable logic controllers (i.e. the programmable logic controllers 4.sub.2 to 4.sub.m), the changed contents are transmitted to the other-constituent-device communication unit 21B.
(22) The simultaneous edition control information update unit 22B has a function of causing the changed contents of the simultaneous edition control information received by the tool communication unit 21A to be reflected. The simultaneous edition control information update unit 22B causes the changed contents of the simultaneous edition control information regarding all devices belonging to the programmable logic controller system 2 to be reflected in the simultaneous edition control information 23B.
(23)
(24) Description will be given with regard to the slave programmable logic controller 4.sub.z (where z denotes a natural number which lies between 2 and m inclusive (2zm)). The slave programmable logic controller 4.sub.z includes a data communication unit 21.sub.z, a data update unit 22.sub.z, and a data memory 23.sub.z, in the same manner as the master programmable logic controller 3. The data communication unit 21, includes an other-constituent-device communication unit 21B.sub.z. Also, the data update unit 22.sub.z includes a program component update unit 22A.sub.z. Further, the data memory 23.sub.z includes a program component 23A.sub.z.
(25) The other-constituent-device communication unit 21B, receives the changed contents of the program components from the master programmable logic controller 3. The program component update unit 22A.sub.z reflects the received program changes in the program component 23A.sub.z.
(26) Detailed description will be given with reference to
(27) Using the editing method 16.sub.wx provided to each of the program components, a decision is made as to which of the following methods, namely, the lock-based simultaneous edition control method and the method in which data is reflected on the editing screen of a plurality of users after the completion of its input operation, is to be applied for the program component which is edited by a user (step S404). In the case of the lock-based simultaneous edition control method (Lock-Based Simultaneous Edition Control method at step S404), the changed contents of the simultaneous edition control information (i.e. a lock on the program component) are transmitted to the master programmable logic controller 3, and the lock-based simultaneous edition control is performed based on the simultaneous edition control information 23B stored in the data memory 23 (step S405). Since the lock-based control method in step S405 is conventional technology, description of this method will be omitted. In the case of the method in which after the completion of data input operation the date is reflected on the editing screen of a plurality of users (Method in which date is reflected on the editing screen of a plurality of users after the completion of data input operation at step S404), data change is constantly monitored (step S406), and, if a data change occurs (Yes at step S406), the content of the change is notified to other users (step S407).
(28) According to the present embodiment, in a case where a plurality of users simultaneously edit the program components of the programmable logic controller system 2, it is possible to grasp in advance that the program components may be changed, thereby enabling suppression of reworks in designing the programmable logic controller system 2, leading thus to an improvement in the working efficiency in designing the programmable logic controller system.
(29) Also, according to the present embodiment, fine control of simultaneous edition is performed according to the type or property of data by a flexible combination of two different methods: namely, the lock-based simultaneous edition control method and the method in which data is reflected on the editing screen of a plurality of users after the completion of its input operation, thereby to enable suppressing the rework in the design of the programmable logic controller system and thus improving the working efficiency of the users.
(30) Further, according to the present embodiment, one programmable logic controller centrally manages simultaneous edition of a plurality of programmable logic controllers in the programmable logic controller system, and thereby, simultaneous edition by a plurality of users can be controlled with a single path, which thus enables an improvement of the working efficiency in designing the programmable logic controller system, such as eliminating a need for cable reconnection.
(31) Incidentally, in the above-mentioned embodiment, the engineering tool has been described by way of example as being capable of setting both the information as to whether or not an advance notification of the start of editing of the program component should be provided, and the timing at which another engineering tool is notified of data of the edited program component; however, only either one of these may be settable.
INDUSTRIAL APPLICABILITY
(32) As described above, when a plurality of users simultaneously edit program components, the program creation device and the programmable logic controller according to the present invention are useful, because suppression of reworks may thereby be realized, and thus improving working efficiency.
REFERENCE SIGNS LIST
(33) 1.sub.1-1.sub.k engineering tools
(34) 2 programmable logic controller system
(35) 3 programmable logic controller (master)
(36) 4.sub.2, 4.sub.m programmable logic controllers (slaves)
(37) 5 data bus
(38) 6 communication medium
(39) 10.sub.1 program component editing unit
(40) 11.sub.1 communication unit
(41) 12.sub.1 data change monitoring unit
(42) 13.sub.1, 13.sub.w program component editing method setting units
(43) 14.sub.wx program-component-x editing method
(44) 15.sub.wx advance-notice-existence information
(45) 16.sub.wx editing method
(46) 21 data communication unit
(47) 21A tool communication unit
(48) 21B other-constituent-device communication unit
(49) 22 data update unit
(50) 22A program component update unit
(51) 22B simultaneous edition control information update unit
(52) 23 data memory
(53) 23A program component
(54) 23B simultaneous edition control information
(55) 111.sub.y device-y simultaneous edition control information
(56) 112.sub.yn program-component-n simultaneous edition control information