This application claims the benefit of and priority to Japanese Patent Application No. 2016-211458, filed on Oct. 28, 2016, the entire content of which is incorporated herein by reference.
The present invention relates to a ladder-library management apparatus that is suitable for use in managing a library incorporated into a ladder program included in a machine connected via a network.
In the related art, there are known programmable controllers that automatically incorporate a device driver for a connected sensor, a robot, or the like, thus realizing a plug-and-play function suitable for system construction (for example, see Publication of Japanese Patent No. 5921781).
The present invention provides the following solutions.
According to one aspect, the present invention provides a ladder-library management apparatus that manages a library incorporated into a ladder program used in a machine connected via a network, the ladder-library management apparatus including: an incorporated-information storage area that stores incorporated information in which the machine is associated with identification information of a device connected to the machine and a version number of the library used for the device; a library storage area that stores library data in which the identification information, information about the device having the identification information, and information about the library used in the device having the identification information are associated with each other; and a library server that adds or updates the library provided in the machine on the basis of the library data stored in the library storage area and that updates the incorporated information stored in the incorporated-information storage area.
A ladder-library management apparatus and a ladder-library management system according to one embodiment of the present invention will be described below with reference to the drawings.
As shown in
Note that, in
Furthermore, in
Furthermore, as shown in
The ladder-library management apparatus 1 is provided with: a processor (not shown); a main storage device, such as a ROM (Read Only Memory) and a RAM (Random Access Memory); an auxiliary storage device, such as an HDD (Hard Disk Drive); an external interface with which various types of data are exchanged with an external device; and the like. These devices in the ladder-library management apparatus 1 are connected to each other via a bus. Specifically, the ladder-library management apparatus 1 of this embodiment is provided with a computer.
The auxiliary storage device stores a program that provides the function of a library server 13 of this embodiment and data that includes an incorporated-information storage area 11 and a library storage area 12. The processor reads the program and the data from the auxiliary storage device to the main storage device and executes the program, thereby realizing various types of processing to be described below.
As shown in
The incorporated-information storage area 11 stores information about I/O devices incorporated into the respective machines 3 and information about the version numbers of libraries in use. As shown in
The library storage area 12 stores libraries that are necessary to use various I/O devices. As shown in
The library server 13 is configured to add or update, as needed, libraries used in ladder programs provided in the respective machines 3 on the basis of the library data stored in the library storage area 12 and to update incorporated information stored in the incorporated-information storage area 11.
The configuration of the library server 13 will be described in detail below with reference to
As shown in
In this embodiment, although the library server 13 is provided with both the function block A and the function block B, the present invention is not limited thereto, and the library server 13 may be configured to include only the function block A, i.e., the connection determining unit 131, the library-data searching unit 132, and the library adding unit 133. Furthermore, the library server 13 may be configured to include only the function block B, i.e., the library-data obtaining unit 134, the library-storage-area updating unit 135, and the library updating unit 136.
The function block A is configured to, when a new I/O device is added to any of the machines 3, search for a library necessary for the added I/O device and to add the searched-for library to a ladder program included in the machine 3, thus updating the ladder program.
As shown in
The connection determining unit 131 is configured to obtain connection information of the I/O devices held by the machines 3, which are connected to the network via the communication unit 137, and to periodically determine whether the obtained connection information differs from the previously obtained connection information by comparing them. As shown in
For example, when an I/O device, such as a temperature sensor, is connected to any of the machines 3, because the identification information of the new I/O device is added to the connection information, the identification information of the added I/O device can be identified from the difference from the previously obtained connection information.
The library-data searching unit 132 is configured to search the library storage area 12 for library data that has identification information matching the identification information of the added I/O device. Furthermore, if library data that has identification information matching the identification information of the added I/O device cannot be found in the library storage area 12, the library-data searching unit 132 is configured to be able to request library data that has identification information matching the identification information of the added I/O device, from the other ladder-library management apparatus 1, which is referred to as FA computer #2, and the high-order network (see
The library adding unit 133 is configured to set a connection of the I/O device on the basis of the library data searched for by the library-data searching unit 132, to add the library to a ladder program provided in the corresponding machine 3, and to update the processing of the ladder program so as to use the function of the library.
Note that the library adding unit 133 may be implemented such that the function of updating ladder programs provided in advance in the machines 3 is incorporated therein, and the programs provided in the machines 3 are updated by using this function. Alternatively, it is also possible to install, in advance in the ladder-library management apparatus 1, special editing software for updating programs provided in the machines 3, to prepare, in the library data, a macro or batch in which procedures for activating the editing software and updating ladder programs are described, and to update the ladder programs provided in the machines 3 when the library adding unit 133 executes the macro or batch. Alternatively, the library adding unit 133 may issue a library adding request to a corresponding machine 3, and the machine 3 may update the ladder program so as to add the library, according to the library adding request.
Furthermore, the library adding unit 133 is configured to, after the ladder program is updated, add the identification information of the added I/O device and the library version number to the corresponding machine in the incorporated-information storage area 11.
The function block B is configured to, when a library in the library storage area 12 is updated to that having a new version number, replace the library incorporated into the ladder program of the machine in which the identical library having an old version number is used, with that having the new version number, to automatically update the ladder program.
As shown in
The library-data obtaining unit 134 is configured to obtain new library data through an input operation performed by an operator or from the other ladder-library management apparatus 1, which is referred to as FA computer #2, or the high-order network (see
The library-storage-area updating unit 135 is configured to update the library storage area 12 on the basis of the library data obtained by the library-data obtaining unit 134. Specifically, the library-storage-area updating unit 135 is configured to search the library storage area 12 for library data that has identification information matching the identification information contained in the obtained library data. If identification information matching the identification information contained in the obtained library data is found in the library storage area 12, the library version number contained in the library information corresponding to the identification information contained in the obtained library data is compared with the library version number contained in the library information corresponding to the identification information found in the library storage area 12 and matching the identification information contained in the obtained library data. If the library version number in the obtained library data is newer than the library version number contained in the corresponding library information of the library data in the library storage area 12, the library data that has the identification information found in the library storage area 12 and matching the identification information contained in the obtained library data is updated to the obtained library data.
The library updating unit 136 is configured to, when the library storage area 12 is updated by the library-storage-area updating unit 135, obtain the identification information and the library version number, which are contained in the updated library data, and to search the incorporated-information storage area 11 for the incorporated information that has identification information matching the identification information contained in the updated library data, for each of the machines 3. If the incorporated information that has identification information matching the identification information contained in the updated library data is found, the library version number contained in the incorporated information is compared with the library version number of the updated library data. If the library version number contained in the incorporated information is old, the library updating unit 136 is configured to extract the machines 3 corresponding to the incorporated information, as machines 3 in which the library needs to be updated.
The library updating unit 136 is configured to decide, among the extracted machines 3 in which the library needs to be updated, a machine 3 in which the library is to be actually updated, according to a pre-given rule or an instruction from the operator, and to update, with respect to the decided machine 3, the update-target library incorporated into the ladder program of the machine 3. Here, the pre-given rule is, for example, a rule indicating that “all machines are to be updated”, “a registered machine is a target for automatic updating”, or the like. Furthermore, the instruction from the operator is a confirmation instruction indicating whether to perform an update or not, or the like.
Furthermore, the library updating unit 136 is configured to update, in the incorporated information corresponding to the decided machine 3 in the incorporated-information storage area 11, the library version number matching the identification information, thus making the library version number match the version number of the library actually incorporated into the ladder program of the decided machine 3.
Next, a ladder-library management method of this embodiment performed in the function block A of the library server 13, which has the above-described configuration, will be described with reference to
First, in the connection determining unit 131, connection information of the I/O devices included in the machines 3 is periodically checked (Step SA1 in
Then, the library-data searching unit 132 searches the library storage area 12 for library data that has identification information matching the identification information of the added I/O device (Step SA3 in
If the corresponding library data has been found in the library storage area 12, the processing flow advances to Step SA9.
If the corresponding library data has not been found in the library storage area 12, the library-data searching unit 132 sends, to the other ladder-library management apparatus 1, which is referred to as FA computer #2, and the high-order network, which are connected to the network via the communication unit 137, an obtainment request for library data that has identification information matching the identification information of the added I/O device (Step SA5 in
In Step SA9, the library adding unit 133 adds the library to the machine 3. More specifically, as shown in
By doing so, when an I/O device is connected to the machine 3, it is possible to automatically search for the library required by the I/O device and to update the ladder program provided in the machine 3. As a result, there is no need to manually update the ladder program of the machine 3, thus making it possible to enhance the maintainability of the library.
Next, a ladder-library management method of this embodiment performed in the function block B of the library server 13, which has the above-described configuration, will be described with reference to
First, in the library-data obtaining unit 134, new library data is obtained through an input operation performed by the operator or from the other ladder-library management apparatus 1, which is referred to as FA computer #2, or the high-order network (see
Then, the library-storage-area updating unit 135 performs addition/updating of the library data with respect to the library storage area 12 on the basis of the obtained library data (Step SB2 in
More specifically, as shown in
Next, the flow returns to
More specifically, in the confirmation/updating of the library version number in the machine 3, as shown in
More specifically, in the updating of the library in the machine 3, as shown in
Next, the flow returns to
By doing so, the library version number of the library data is updated, and, even if the version number of the library incorporated into the machine 3 becomes old, the library can be automatically updated. As a result, the library maintainability can be enhanced.
Although the embodiment of the present invention has been described above in detail with reference to the drawings, specific configurations are not limited to those in the embodiment, and design changes etc. that do not depart from the scope of the present invention are also encompassed.
As a result, the above-described embodiment leads to the following aspect.
According to one aspect, the present invention provides a ladder-library management apparatus that manages a library incorporated into a ladder program used in a machine connected via a network, the ladder-library management apparatus including: an incorporated-information storage area that stores incorporated information in which the machine is associated with identification information of a device connected to the machine and a version number of the library used for the device; a library storage area that stores library data in which the identification information, information about the device having the identification information, and information about the library used in the device having the identification information are associated with each other; and a library server that adds or updates the library provided in the machine on the basis of the library data stored in the library storage area and that updates the incorporated information stored in the incorporated-information storage area.
According to the ladder-library management apparatus of the above-described one aspect of the present invention, the incorporated-information storage area stores incorporated information in which a machine connected via a network is associated with identification information of a device connected to the machine and a version number of a library used for the device. Furthermore, the library storage area stores library data in which identification information, information about a device having this identification information, and information about a library used in the device having this identification information are associated with each other. Then, the library server adds or updates the library provided in the machine on the basis of the library data stored in the library storage area and also updates the incorporated information stored in the incorporated-information storage area.
By doing so, centralized management of addition/updating of the library incorporated into the machine connected via the network can be achieved. Thus, even when a plurality of machines are connected via the network, there is no need to manually manage the library for each machine, thus making it possible to enhance the maintainability of the library.
In the ladder-library management apparatus of the above-described one aspect of the present invention, the library server may be provided with: a connection determining unit that determines whether a new device has been connected to the machine; a library-data searching unit that searches the library storage area for the library data that has identification information matching identification information of the new device; and a library adding unit that adds the library to the machine on the basis of the searched-for library data.
According to this configuration, the connection determining unit determines whether a new device has been connected to the machine, the library-data searching unit searches the library storage area for library data having identification information matching the identification information of the new device, and the library adding unit adds the library to the machine on the basis of the searched-for library data.
Accordingly, when a new device, such as a temperature sensor, is added to the machine, the library can be automatically added to the ladder program included in the machine.
In the above-described configuration, the library-data searching unit may request the library data that has identification information matching the identification information of the new device, from another ladder-library management apparatus connected via the network.
By doing so, if the library storage area has no library data that has identification information matching the identification information of the new device, it is possible to perform search by expanding the search range to the other ladder-library management apparatus.
In the ladder-library management apparatus of the above-described one aspect of the present invention, the library server may be provided with: a library-data obtaining unit that obtains new library data through an operation by an operator or from another ladder-library management apparatus; a library-storage-area updating unit that updates the library storage area on the basis of the obtained new library data; and a library updating unit that updates the library provided in the machine on the basis of the new library data, when a library version number contained in the new library data stored in the updated library storage area is newer than the library version number stored in the incorporated-information storage area.
According to this configuration, the library-data obtaining unit obtains new library data through an operation by the operator or from the other ladder-library management apparatus, the library-storage-area updating unit updates the library storage area on the basis of the obtained new library data, and the library updating unit updates the library provided in the machine on the basis of the new library data, when the library version number contained in the new library data stored in the updated library storage area is newer than the library version number stored in the incorporated-information storage area.
By doing so, when the version number of the library stored in the library storage area becomes new, the version number of the library incorporated into the machine can be automatically updated.
According to the present invention, an advantageous effect is afforded in that the maintainability of a ladder library can be enhanced.
Number | Date | Country | Kind |
---|---|---|---|
2016-211458 | Oct 2016 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
20020083228 | Chiloyan et al. | Jun 2002 | A1 |
20020133240 | Nagao et al. | Sep 2002 | A1 |
20040123270 | Zhuang | Jun 2004 | A1 |
20130036090 | Akiyama | Feb 2013 | A1 |
20140089583 | Hayakawa | Mar 2014 | A1 |
20160170397 | Takehisa | Jun 2016 | A1 |
20160209823 | Hotta | Jul 2016 | A1 |
20170351508 | Jahn et al. | Dec 2017 | A1 |
Number | Date | Country |
---|---|---|
102014118546 | Jun 2016 | DE |
1225744 | Jul 2002 | EP |
2000315149 | Nov 2000 | JP |
3275968 | Apr 2002 | JP |
2002268983 | Sep 2002 | JP |
2002269024 | Sep 2002 | JP |
2008226005 | Sep 2008 | JP |
2011170419 | Sep 2011 | JP |
WO2015045004 | May 2016 | JP |
2015045004 | Mar 2017 | JP |
2015186178 | Dec 2012 | WO |
Entry |
---|
Japanese Decision to Grant a Patent dated Mar. 20, 2018, for Japanese Patent Application No. 2016-211458. |
German Office Action dated Apr. 3, 2019, for German Patent Application No. 102017124730.0. |
Number | Date | Country | |
---|---|---|---|
20180129182 A1 | May 2018 | US |