The present invention relates to a PLC distributed control system constructed by connecting a plurality of PLCs (Programmable Logic Controllers) each equipped with a communicating means. The present invention is useful in building up the safety system that conforms to international safety standard, or the like.
As the prior art with regard to the PLC distributed control system in which the memory means, the processing portion, etc. are multiplexed to build up the safety system based on the predetermined safety standards, the safety controller set forth in JP-A-2002-358106, and the like, for example, have been publicly known. Further, in the factory automation applied to control in parallel a plurality of machinery facilities simultaneously, in some cases the distributed control system is constructed by connecting mutually individual PLCs that control the machinery facilities respectively. Further, in such distributed control system, nowadays such a demand for safety orientation is escalating that reliability of the communication process between respective PLCs should be secured sufficiently by multiplexing in parallel the communication lines between respective PLCs, etc.
Further, such a need is increasing that the interlocking mechanism whose reliability in communication control is high enough to hold the safety communication in such distributed control system should be constructed easily and effectively. Further, recently such a need is increasing more and more that the distributed control system should be operated/managed effectively by using the expression format that can express the safety processing sequence in this system in an easy-to-understand manner.
However, in order to realize such safety communication whose reliability is high, such a necessity arises that it should be tested previously every communication line prior to the actual operation of the distributed control system whether or not each communication established by the execution of each ladder diagram on each PLC can be held correctly via each communication line respectively. For this reason, such a problem arises that an operation efficiency of the distributed control system is decreased remarkably in building up the system, exchanging the ladder diagram (the sequence program), or the like.
Further, in the common PLC distributed control systems that are not limited to the safety system, there is the case where the ladder diagrams having the same or similar logic (algorithm) respectively should be operated in parallel simultaneously on a plurality of different PLCs. In such a case, productivity of the object program can be improved significantly by applying similarly the existing programs that concretize similarly these logics (i.e. reuse of the existing programs) in respective PLCs respectively. However, the system configuration of the concerned distributed control system constituting the network becomes complicated at the same time in such case. Consequently, such a new need for operation/management that respective output variables of these PLCs should be systematized again to easily logically identify and then these output variables should be displayed on a ladder diagram, or the like in an easy-to-understand and easy-to-see format respectively.
The present invention has been made in view of the above circumstances, and it is an object of the present invention to realize safety communication with high reliability and improve effectively operation efficiency in a test of communication lines, etc. in a PLC distributed control system.
Further, it is another object of the present invention to improve effectively a reusability of an existing program in a PLC distributed control system, and makes it possible for an SE or an operation manager of the system to identify easily individual output variables that are output from respective PLCs constituting the PLC distributed control system.
In order to solve the above problems, following modes are applicable.
That is, a first aspect of the present invention provides a PLC distributed control system of broadcast type or multicast type, which is constructed by connecting a plurality of PLCs each having a communicating means, wherein each of PLCs includes first storing means for storing output schedule definition frames formed of output schedule definition information, which define whether or not output variables that simulate output coils in a ladder diagram executed on own PLC are scheduled to output to other PLCs every output variable, to correspond to other PLCs respectively, second storing means for storing reference schedule definition frames formed of reference schedule definition information, which define whether or not output variables that simulate output coils in a ladder diagram executed on other PLCs are scheduled to refer to every output variable, to correspond to other PLCs respectively, transmitting means for transmitting the output schedule definition frames or the reference schedule definition frames to other PLCs, receiving means for receiving the output schedule definition frames or the reference schedule definition frames from other PLCs, collating means for collating the output schedule definition frames with the reference schedule definition frames on a corresponding frame basis respectively, and normal communication start deciding means for deciding whether or not a normal communication in the PLC distributed control system is started, based on a collated result from the collating means.
Here, it is desirable that the safety PLCs in which respective processes are duplexed should be employed as the PLCs. Further, the programming language to describe the ladder diagram is not particularly limited, and either the graphic language or the text format language may be employed. Further, it is desirable that the output schedule definition information and the reference schedule definition information of one output variable should be handled as 1-bit information. In this case, respective definition frames are constructed by the bit column data.
Further, it is desirable that these means should be operated in constructing, starting, or restarting the system. Further, these means may be operated periodically.
Further, the communication lines that couple respective PLCs to accomplish the broadcast type or multicast type communication are not always duplexed. Further, the desired safety communication can be realized based on the present invention, by duplexing logically at least the communication lines, for example, by duplexing the packet, or the like.
Further, it is desirable that the physical communication lines should be constructed like a ring or a bus. Further, it is more desirable that such communication lines should be duplexed.
In a second aspect of the present invention, in the above first aspect, the transmitting means has station address attaching means for attaching a station address of own PLC to target transmission data to be transmitted, each of the PLCs has definition information inputting means for accepting an input of the output schedule definition information, and first frame producing means for producing the output schedule definition frames on the first storing means respectively, based on input information being input by the definition information inputting means.
Here, the output schedule definition frames may be produced on the first storing means by the almost similar means to that in the third aspect of the present invention instead of the second aspect of the present invention respectively, based on the extracted information extracted from the source program of the ladder diagram. Further, the PLC distributed control system of the present invention may be constructed by using the PLCs with such means.
Further, in a third aspect of the present invention, in the above first or second aspect, each of the PLCs has definition information extracting means for extracting the reference schedule definition information from a source program of the ladder diagram that is executed on own PLC, and second frame producing means for producing the reference schedule definition frames on the second storing means respectively, based on extracted information extracted by the definition information extracting means.
Here, the definition information extracting means may be constructed as an extension function of the compiler that compiles the source program, or the like, for example, or may be constructed by the independent tool from the compiler (code analysis program).
Further, a fourth aspect of the present invention provide a PLC distributed control system constructed by connecting a plurality of PLCs each having communicating means, which includes transmitting means for attaching a station address of own PLC to a target transmission data to be transmitted, and transmitting the transmission data to other PLCs; wherein each of PLCs has diagram edition displaying means for displaying operation contents of a ladder diagram executed on own PLC on a predetermined screen or a sheet of paper, and the diagram edition displaying means has station address acquiring means for acquiring a station address of own PLC in the PLC distributed control system, and display address code editing means for rewriting address codes of output variables, which simulate output coils on an object program that embodies a ladder diagram, into logical address codes of a format containing the acquired station address.
Here, the PLC in the fourth aspect of the present invention is not limited to the safety PLC in which the safety process is achieved by the various duplexed systems, or the like.
Further, the programming language to describe the ladder diagram is not particularly limited, and either the graphic language or the text format language may be employed. Further, the edition displaying mode about the output result of the diagram edition displaying means may be set arbitrarily. Further, means for causing the user to input directly the station address via a predetermined user interface may be employed as the station address acquiring means. For example, the station address may be acquired automatically by using the query command such as the diagnosis command, or the like.
The logical address code of the type containing the station address acts as the address codes that are recognized (seen with eyes) by the SE or the operation manager in the operation and the management.
Further, in a fifth aspect of the present invention, in any one of the first to third aspects, the transmitting means has station address attaching means for attaching a station address of own PLC to target transmission data to be transmitted, each of PLCs has diagram edition displaying means for displaying operation contents of a ladder diagram executed on own PLC on a predetermined screen or a sheet of paper, and the diagram edition displaying means has station address acquiring means for acquiring a station address of own PLC in the PLC distributed control system, and display address code editing means for rewriting address codes of output variables, which simulate output coils on an object program that embodies a ladder diagram, into logical address codes of a format containing the acquired station address.
Here, the programming language to describe the ladder diagram is not particularly limited, and either the graphic language or the text format language may be employed. Further, the edition displaying mode about the output result of the diagram edition displaying means may be set arbitrarily. Further, means for causing the user to input directly the station address via a predetermined user interface may be employed as the station address acquiring means. For example, the station address may be acquired automatically by using the query command such as the diagnosis command, or the like.
The logical address code of the type containing the station address acts as the address codes that are recognized (seen with eyes) by the SE or the operation manager in the operation and the management.
With the above aspects of the present invention, the above problems can be solved effectively or rationally.
Advantages achieved by the above aspects of the present invention will be given as follows.
That is, according to the first aspect of the present invention, the definition frames (the output schedule definition frames or the reference schedule definition frames) are transmitted/received interactively through the communication lines between the PLCs, and the collating process is executed in the PLCs respectively. Accordingly, the states of at least the logical communication lines between the PLCs can be tested interactively automatically respectively throughout all lines. Further, it is tested at the same time whether or not transmission/reception states of the destination station are normal respectively.
Further, in this collating process, it is checked whether or not input conditions of individual output variables between the PLCs coincide with output conditions of them every corresponding frame. Therefore, it can be decided automatically about all output variables to be transmitted/received without omission whether or not the transmission/reception of the output variables to be input/output between the PLCs are executed correctively respectively.
Further, in executing the normal communication, the similar broadcast type or multicast type communication can be of course carried out safely based on the similar communication system to the above, i.e., by employing the communication system in which the transmission data frame in the same format as the above output schedule definition frame is transmitted/received between the PLCs respectively.
Therefore, according to the first aspect of the present invention, the safety communication can be established easily not to provide the relay station (master station), which performs the relay function of the communication between the slave stations, like the master PLC on the conventional PLC distributed control system employing the master/slave system. Therefore, at least concerning the communication control process, such a necessity can be omitted that the master PLC, in which the memory overhead or the CPU overhead is large and the program structure becomes complicated, should be provided. Otherwise, even when any master function is attached to a particular PLC, symmetry of a system topology (network structure) in the communication system can be maintained highly in the broadcast type or multicast type communication system according to the configuration of the first aspect. Therefore, the overhead of the communication control process of the PLC can be reduced effectively.
Therefore, according to the first aspect of the present invention, the interlocking control mechanism for use in the communication control to embody the safety communication can be constructed very easily without fail. Accordingly, the safety communication with high reliability can be realized very easily in the desired PLC distributed control system.
Further, according to the second aspect of the present invention, when the existing program on one PLC distributed control system is diverted to other PLC distributed control systems, the user can complete the desired diversion procedures equivalent to the address correcting procedures only by inputting the output schedule definition information from the above definition information inputting means, instead of the correction of the addresses of the output variables (coil outputs) of own PLC. In other words, according to the second aspect of the present invention, at a time of the diverting work of the existing program, all output schedule definition frames to be stored in the desired first storing means can be produced respectively by inputting the output schedule definition information from the above definition information inputting means, instead of the correction of the addresses of the output variables on the source program.
The reason why a necessity to amend the real addresses of the output variables on the object code of own PLC can be eliminated in this manner is that, based on the station address attaching action of the transmitting means, which attaches the station address of own PLC to the transmission data containing the output variables and transmits the resultant data to other PLCs, respective PLCs can expand own output variables on the storing area at the same address and that, based on the station address attached to the transmission data, respective PLCs can discriminate easily from which PLC the output variables of the data being received now are output on the CPU modules 20 of respective PLCs.
Further, in embodying the above definition information inputting means, the very simple user interface can be constructed by using GUI, the text input, or the like, for example. Therefore, the desired diverting procedures can be executed very effectively.
As a result, according to the second aspect of the present invention, the diversion of the existing program on the distributed control system can be carried out very effectively.
Further, according to the third aspect of the present invention, the reference schedule definition frames can be produced automatically on the second storing means based on the existing source program by the definition information extracting means and the second frame producing means. Therefore, according to the third aspect of the present invention, the safety communication between the PLCs in the PLC distributed control system can be realized very effectively.
Further, according to fourth or fifth aspect of the present invention, even when the addresses in the definition areas of the output variables overlap with each other between the PLCs, these output variables can be discriminated easily between the PLCs based on the similar action to the foregoing station address attaching action, and the ladder diagrams can be executed exactly not to cause a malfunction. Therefore, even though the operation of correcting the real addresses of the output variables is not applied to these object codes between the slave stations that are constructed symmetrically and operated by the same logic, for example, these object codes can be executed exactly without malfunction.
At the same time, the logical address code (logical expression) in the format containing the station address of the concerned PLC is employed in the address display of the output variables of respective PLCs on the ladder diagram, or the like. Therefore, the addresses of these output variables can be displayed on the ladder diagram, or the like in the easy-to-understand and easy-to-see format by the logical address codes in the format containing the concerned correct station address.
Therefore, according to fourth or fifth aspect of the present invention, even when the addresses in the definition areas of the output variables overlap with each other between the PLCs, the visual recognizability of SE, system operating manager, etc. for the address notation of the output variables displayed on the ladder diagram can be improved. As a result, the operation and management of the distributed control system can be facilitated.
Further, even though the operation of correcting the real addresses of the output variables is not applied to these object codes between the slave stations that are constructed symmetrically and operated by the same logic, for example, in the situation that the addresses in the definition areas of the output variables overlap with each other between the PLCs, these object codes can be executed exactly without malfunction. Therefore, for example, in providing a plurality of slave stations in which at least the processes concerning the communication control are handled by the same logic (i.e., no cascade connection is provided between the slave stations, and the slave stations are constructed similarly to have the same communication relationship with respect to the output variables that are referred to mutually between the master/slave stations) in parallel, the reusability of the existing program can be ensured extremely highly.
The present invention will be explained based on concrete embodiments hereinafter.
Here, it should be noted that embodiments of the present invention are not limited to individual embodiments shown hereunder.
A system configurative view of a PLC distributed control system 1 of Embodiment 1 is shown in
In the PLC distributed control system 1, slave PLCs 11, 12 and a master PLC 10 are connected like a ring by using a ring bus 14, and thus a broadcast type communication network is constructed. Each of these PLCs (10, 11, 12) is constructed by a CPU module 20, a communication control module 30, and I/O modules 40, 60, and these modules are connected mutually through a bus 21. These PLCs are constructed by the safe PLC in which respective portions such as a processing unit, a memory unit, etc. are duplexed as an A system and a B system respectively. Detailed discussions about a dual-redundant configuration of respective portions will be postponed to
A sequence program described in a ladder diagram language is stored in a memory 22 of the CPU module 20. When the CPU module 20 causes a CPU 24 to execute this sequence program, this CPU module 20 can control respective modules or can operate together with respective modules. In this PLC distributed control system 1, the broadcast type safety communication is implemented. Further, the communication control module 30 of the master PLC 10 performs a synchronous controlling function (communication trigger producing/managing function) of sending out the command, the signal, etc., which are used to control a communication state on the ring bus 14, and the like, based on the command from the CPU module 20.
The communication control module 30 of each PLC is equipped with a bus interface 32, a memory 34, and a CPU 36. A communication program executed in compliance with a predetermined packet switching protocol is stored in the memories 34 respectively. When the communication control module 30 causes the CPU 36 to run this communication program based on the command received from the CPU module 20, such communication control module 30 controls transmission/reception of the packet on the ring bus 14 via the bus interface 32.
Further, duplexed emergency stop buttons (ESB0 to 2) are connected to the I/O modules 40 respectively. The unsafety state can be detected based on the status of the module.
In the PLC distributed control system 1 of Embodiment 1, personal computers 50, 51, 52 are also connected individually to an interface 26 of each CPU module 20 respectively. Each personal computer (50, 51, 52) is equipped with a keyboard 54, a display device 55, a memory 57, and the like. Of course, I/O units for a mouse and a printer, an external mobile memory medium, and the like may also be provided.
As the sequence program stored in the memory 22 of the CPU module 20, it is common that the program compiled on these personal computers are employed usually. However, the program that has already been produced (compiled) on other personal computers may be introduced via the external memory medium, for example.
A control mode of the PLC distributed control system 1 is illustrated in
Input contacts (I00 to I05) and coils (Q18 to Q1D) encircled by a broken line in
In the address codes shown on the ladder diagram in
According to the sequence program in which above-mentioned ladder diagrams are coded executably, for example, the PLC distributed control system 1 can be stopped safely as soon as any of the emergency stop buttons (ESB0, ESB1, ESB2) is pressed. For example, when the duplexed emergency stop button ESB0 is pressed, at least any one of the input contact I00 and the input contact I01 is turned OFF and thus all motors (Q18 to Q1D) are urgently stopped. Further, when the emergency stop button ESB1 is pressed, only the motors Q18 to Q1B are urgently stopped.
Of course, instead of the emergency stop buttons or in addition to the emergency stop buttons, safety input devices such as various area sensors (e.g., light curtain, safety mat, etc.), etc. may be introduced.
In the PLC distributed control system 1 of Embodiment 1 constructed by using the safety PLC, as one of very important issues in realizing these safety mechanisms, the safety of the communication between respective PLCs can be listed. That is, it becomes very important to construct the interlocking mechanism for communication control, which ensures that the reference relationships indicated by arrows in
The realizing system applied to construct the interlocking mechanism useful for such safety communication easily and without fail in the above PLC distributed control system 1 will be explained hereunder.
In Embodiment 1, assume that the above output variables (L type variables representing the link relay) transferred between respective PLCs via the ring bus 14 can be defined up to 32 variables at a maximum every respective PLCs (10 to 12) respectively. Further, the output variables (L type variables representing the link relay) of other PLCs, which one PLC can input (refer to), can be defined up to 32 variables in total. Therefore, the settable number of the input contacts and the coils (output variables), which are simulated logically to implement the communication in the system, is limited up to 32 every PLC respectively.
As a result, in compliance with the address notation in
A frame configurative view of the output schedule definition frame RF01 is illustrated in
Therefore, for example, when a value of the first bit constituting the output schedule definition frame RF01, i.e., a value of the output schedule definition bit Rb00, is 1, the output variable 00L00 is scheduled to be output (transmitted) from the PLC 10 (station address=00) to the PLC 11 (station address=01). Of course, presence or absence of this schedule depends upon the contents of the ladder diagram (sequence program) that the CPU module 20 of the PLC 10 (station address=00) executes. Similarly, when the output schedule definition frames RFmn (m=0,1,2; n=0,1,2) are defined hereunder, the bit string constituting the output schedule definition frames RFmn indicates whether or not the output variables (0mL00 to 0mL1F) being output from the station address m are scheduled to be output to the station address n, every corresponding bit.
As a result, at a time when n=m, all values of respective output schedule definition bits constituting the output schedule definition frame RFmn are 0.
A display mode of an output schedule definition screen WD00 (definition information inputting means) in Embodiment 1 is illustrated in
Further, addresses (bit addresses) of respective output variables are displayed in a display field W1 of the output schedule definition screen WD00, and also the station addresses of the destination PLCs of these output variables are displayed in a display field W2.
Further, j×k check boxes (j column: the number of PLCs constituting the PLC distributed control system 1, k row: the maximum value of the number of the output variables that can be defined on each PLC) (W3, W3′, W3″) are aligned in a center of this screen in a matrix fashion. A value of the bit corresponding to the check box W3 in which a check mark (√ mark) is not placed is defined as 0. For example, a bit corresponding to the check box, the output variable address of which is 00L1E and the station address of the destination PLC of which is 2, on the output schedule definition screen WD00 is the output schedule definition bit Rb1E in the output schedule definition frame RF02 stored on the first storing means TBL1. Thus, a value of the output schedule definition bit Rb1E is defined as 0 (: not scheduled to output).
Similarly, a value of the bit corresponding to the check box W3′ in which a check mark (√ mark) is placed is defined as 1. For example, a bit corresponding to the check box, the output variable address (bit address) of which is 00L04 and the station address of the destination PLC of which is 1, on the output schedule definition screen WD00 is the output schedule definition bit Rb04 in the output schedule definition frame RF01 stored on the first storing means TBL1. Thus, a value of the output schedule definition bit Rb04 is defined as 0 (: scheduled to output).
Further, the output variables (L type variables representing the link relay) that own PLC itself outputs are not sent to own PLC itself at all. Therefore, the operator cannot designate (cannot place the √ mark in) the check boxes W3″ located in the leftmost column.
When an OK button W4 is clicked at a point of time the checking operations of above check boxes are completed, respective output schedule definition frames that are defined correctively in accordance with the user's operation on the output schedule definition screen WD00 are transferred at a time from the personal computer 50 to the PLC 10 in response to this clicking (trigger), and then stored on the first storing means TBL1 in
A frame structure of the reference schedule definition frames and a system producing the frames of the present invention, which are compared with these output schedule definition frames, will be explained hereunder.
A frame configurative view of the reference schedule definition frame SF01 is illustrated in
Therefore, for example, when a value of the first bit constituting the reference schedule definition frame SF01, i.e., a value of the reference schedule definition bit Sb00, is 1, the output variable 01L00 is scheduled to be referred to (received) on the PLC 10 (station address=00). Of course, presence or absence of this schedule depends upon the contents of the ladder diagram (sequence program) that the CPU module 20 of the PLC 10 (station address=00) executes. Similarly, when the reference schedule definition frames SFmn (m=0,1,2; n=0,1,2) are defined hereunder, the bit string constituting the reference schedule definition frames SFmn indicates whether or not the output variables (0nL00 to 0nL1F) being output from the station address n are scheduled to be referred to in the station address m, every corresponding bit.
An operation of a reference variable table producing program PGa will be explained with reference to
Then, when these source codes are input into the reference variable table producing program PGa, a reference variable table TBa is produced and output. The output variables referred to at the input contacts that are defined (simulated) logically in such source codes are listed and registered in this reference variable table TBa. The reference variable table TBa is constructed by a set of 2-byte information, which is composed by aligning successively 2-byte information. That is, as can be seen from the correspondence to the ladder diagram in
Such reference variable table producing program PGa may be prepared as an option of the compiler, an extension function, or the like or may be prepared as a single tool. When the reference variable table TBa is transferred from the personal computer 50 to the CPU module 20 of the PLC 10 and the data are converted on the CPU module 20, the reference schedule definition frames SF00, SF01, SF02 are produced in the PLC whose station address is 00 (i.e., the PLC 10), for example, and stored in the second storing means. Of course, the reference schedule definition frames are similarly produced on the second storing means in other PLCs.
An initializing process (initial operation) of the safety communication of Embodiment 1 will be explained with reference to
In this controlling process procedures, in step S1, first the output schedule definition frames and the reference schedule definition frames are produced respectively in the first storing means and the second storing means on respective PLCs by executing such definition frame producing process every PLC.
An operation of step S1 of the initial operation is illustrated in
Therefore, the initial operation of the safety communication explained hereunder are of course executed in parallel in respective processing systems of the A system and the B system mutually respectively. In the following, only the process in one system will be explained along with a flowchart in
Then, in step S2, the process to be executed at the station address 00 is shown. Here, the output schedule definition frame RF01 is sent out to the PLC whose station address is 01, and also the output schedule definition frame RF02 is sent out to the PLC whose station address is 02.
A data structure (frame structure) of the packet sent out at this time is illustrated in
Then, such means for attaching the destination station address to transmission data corresponds to station address attaching means of the present invention.
In this case, a type code of data constituting the information portion I (example: command type, or the like), a control bit concerning the data structure of the frame, etc. are contained in a frame type FT (2 byte). Further, control information used in the synchronization control of communications, the abnormal contact, etc. can be contained in the information portion I.
The ring bus 14 in
Then, in step S3, subsequent processes that are to be executed in the CPU modules 20 of the PLC of the station address 01 and the PLC of the station address 02 are shown. That is, in the CPU modules 20 of the PLC of the station address 01, the contents of the output schedule definition frame RF01 transmitted from the station address 00 to own station are collated bit by bit with the contents of the reference schedule definition frame SF01 stored in the second storing means of own PLC. Further, in the CPU modules 20 of the PLC of the station address 02, the contents of the output schedule definition frame RF02 transmitted from the station address 00 to own station are collated bit by bit with the contents of the reference schedule definition frame SF02 stored in the second storing means of own PLC.
Then, in step S4, it is decided whether or not there is the inconsistent bit in both collating processes. The process goes to step S12 if there exists the inconsistent bit in either of both processes (step S4, abnormal), while the process goes to step S5 if there exists no inconsistent bit (step S4, normal).
In step S5 to step S7, the similar processes to step S2 to step S4 are executed by changing standpoints mutually, while replacing their roles of the PLCs mutually by shifting them cyclically. As the result of collation, if there exists no inconsistent bit (step S7, normal), the process goes to next step S8. Namely, these collating processes are executed in the PLC distributed control system 1 such that such processes are repeated through several PLCs rotationally symmetrically.
Therefore, for example, in step S8 to step S10, the similar processes to step S5 to step S7 are executed by changing standpoints mutually, while replacing their roles of the PLCs mutually by shifting them cyclically. As the result of collation, if there exists no inconsistent bit (step S10, normal), the process goes to next step S11.
Then, in step S11, the process to start the normal communication, i.e., the process of outputting the start command is executed. In contrast, in step S12, the process to inhibit the normal communication, i.e., the process of outputting the inhibit command is executed.
According to above configuration, the output schedule definition frames RFnm are transmitted/received interactively through the communication lines between the PLCs, and the collating process is executed in the PLCs respectively. Accordingly, the states of respective packet lines in the A system and the B system between the PLCs can be tested interactively automatically respectively throughout all lines. Further, it is tested at the same time whether or not transmission/reception states of the destination station are normal respectively.
Further, in the above collating process, it is checked whether or not input conditions of individual output variables between the PLCs coincide with output conditions of them every corresponding frame (the output schedule definition frames RFnm=the reference schedule definition frame SFnm). Therefore, it can be decided automatically about all output variables to be transmitted/received without omission whether or not the transmission/reception of the output variables to be input/output between the PLCs are executed correctively respectively.
As a result, in the normal communication, such a possibility is eliminated that, due to a mismatching of the definition in the reference relationship between the output side and the reference side, a malfunction is caused in the sequence program.
Another using mode of the above output schedule definition frame RFmn in the normal communication is illustrated in
Further, a constant RFm (example: RF0=OR (RF01, RF02)) is 4-byte data that consists of resultant bits of all cumulative logical sums of all entries that are registered in the first storing means on the CPU module 20 of the PLC of the station address m (i.e., the output schedule definition frames RFmi (i=0 to a total number of the PLCs−1)), every corresponding bit.
In this transmitting process, in step S21, first a calculated result of a logical product operation (AND operation) of the output variable frame OUTm and the above constant RFm is stored in a 4-byte working area A1 every corresponding bit. Then, in step S22, the calculated result (A1) is compared with a value of the output variable frame OUTm. Then, the process goes to step S24 if all bit values coincide completely with each other between both numerical values (step S22, YES), while the process goes to step S25 if all bit values do not coincide with each other (step S22, No).
Then, in step S24, the output variable frame OUTm is set in a predetermined area in the information portion I in
According to the above transmitting process, the system can be safely stopped by the actions in steps S21, S22, S25 even though the program defect, e.g., the output variables that are not updated essentially are ON-set needlessly, is contained reluctantly in the sequence program that is applied to control the CPU module 20 of the PLC on the transmitting side.
Otherwise, according to the above transmitting process, the system can be safely stopped even in such a situation that a different program that has no relevance essentially at all is downloaded by mistake as the sequence program that is applied to control the CPU module 20 of the PLC on the receiving side and then the wrong output schedule definition setting operation that goes just along with this wrong downloading is input from the output schedule definition screen in
Meanwhile, another using mode of the reference schedule definition frame in the PLC on the receiving side is illustrated in
Then, in step S32, the output variable frame OUTm (: 32-bit information) of the sender (station address m; m≠n) in the information portion I (
For example, according to the above transmitting/receiving processes, in the normal communication, the transmitting process necessary for the output variation at that time can be completed on the PLC on the transmitting side by using the “all station addressing” when the output variable frame OUTm of own station is sent out only once to the network (ring bus 14). That is, the highly efficient transmitting process can be carried out by using the desired broadcast type communication. Further, in accordance with such safety communication system, mismatching of the reference relationship between the transmitting side and the receiving side with regard to the output variables is not caused. As a result, the sequence program can be executed safely without malfunction.
Instead of step S34, the similar process to that in step S34, i.e., the process of “OUTmn=AND (OUTm,RFmn)” may be provided at the preceding stage of step S24, and the addressing of the destination station address, i.e., the addressing of the station address n on the receiving side may be executed in step S24. According to this, the multicast type communication can be realized instead of the broadcast type communication. That is, according to the collating process of Embodiment 1, upon executing the multicast type safety communication, the sequence program can be executed exactly while eliminating in advance the mismatching of the reference relationship between the transmitting side and the receiving side with regard to the output variables.
A structure and an operation of diagram edition displaying means 200 of Embodiment 2 are shown in
A ladder diagram D1 positioned in a center of
In the PLC distributed control system to which Embodiment 2 is applied, the output variables (L type variables representing the link relay) can be defined up to 32 variables at a maximum every PLCs respectively, and respective PLCs have the transmitting means (the communication control module 30 in
Therefore, the display address code editing means 211 works only on the variables that have the real address ad in this range (L000 to L01F) (i.e., the above output variables).
More concretely, a predetermined editing subroutine (i.e., the display address code editing means 211) is invoked every time when the output variables (L type variables representing the link relay) whose real address is within the above range is detected during the execution of the diagram editing program 210, i.e., while the ladder diagram D1 is being edited by the diagram edition displaying means 200. Thus, a desired address code changing process (L0x1 x2→nnLx1 x2) can be applied to the output variables on the PLCs respectively. Here, “nn” denotes the input station address, and corresponds to the station address ‘01’ input from the station address inputting means 220 in
Meanwhile, the editing process of “L0x1 x2→y1 y2 Lz1 z2” concerning the addresses of the output variables that are referred to at the input contacts defined (simulated) logically, i.e., the code converting process of “x1 x2→(y1 y2, z1 z2)”, can be executed by executing the inverse transformation in compliance with a predetermined compile rule used in producing the object code D0. Accordingly, the logical address codes that the user should recognize in management correspond correctly to the real addresses of respect input contacts on the object code D0 respectively.
A copy of this program (copy program) can be used simultaneously between a plurality of PLCs even if no amendment is applied to the existing program (the object code D0). Accordingly, a diversion rate of the existing program, i.e., productivity of the object program can be improved effectively. Such diversion of the existing program is effective, for example, in the case where the ladder program (object program) executed at the station address “02” in
The station address can be attached to the head portion of the address of the output variables (L000 to L01F) of the same type, which are not discriminated mutually on the object code D0, based on the input information (station address) from the station address inputting means 220 (station address acquiring means). Therefore, the output variables of respective PLCs can be discriminated on the ladder diagram D2 and can be identified precisely, and the identification can be facilitated.
In the address display of the output variables of the PLC#1 on the ladder diagram D2, the logical address code in the format containing the station address “01” of the PLC, i.e., the logical address (01L00, y1 y2 Lz1 z2) of the coding format mentioned by reference to
Therefore, when this diagram edition displaying means 200 is applied to the PLC distributed control system 1 of Embodiment 1, the synergistic effect created from respective advantages/effects by respective embodiments can be achieved, so that an operation efficiency in the test of the communication line, and the like can be improved and the safety communication with high reliability can be realized. Further, the reusability of the existing program can be improved effectively, and also it is possible for the SE or the operation manager of the system to identify easily individual output variables that are output from respective PLCs constituting the PLC distributed control system.
(Other Variations)
The embodiments of the present invention are not limited to above modes, and variations as illustrated hereunder may be applied. The advantages of the present invention can be achieved by the variations or the modifications, based on the operation of the present invention.
(Variation 1)
For example, in above Embodiment 1, in the initial operation process of the safety communication, the output schedule definition frame is transmitted to the destination PLC to collate respective output schedule definition frames that have a correspondence relationship mutually. Conversely, the similar collating process may be executed by transmitting the reference schedule definition frame to the destination PLC. The similar advantages/effects can be achieved by conducting such transmission/reception.
(Variation 2)
Further, the number of PLCs connected mutually to build up the PLC distributed control system of the present invention may be set at will. Further, the number of the I/O modules connected to construct respective PLCs may be set freely. The communication network of the PLC distributed control system may be constructed by using a linear bus instead of the ring bus.
(Variation 3)
Further, in Embodiment 1, one communication line of the duplexed ring bus 14 is prepared for the backup in the abnormal operation, and is not used in the normal operation. However, there is no necessity that the network line should be restricted to the duplexed mode at the logical communication line level of the packet communication. The duplexing of communication may be implemented at the physical communication line level.
(Variation 4)
Further, as the expression mode of the diagram in the ladder diagram D2 in
Further, as the output schedule definition mode in
(Variation 5)
Further, the station address inputting means 220 in
The present invention is very useful in building up the PLC distributed control system using the safety PLC, nevertheless respective PLCs constituting the PLC distributed control system of the present invention are not always constructed by the safety PLCs. That is, the PLC distributed control system of the present invention can be constructed by using any PLCs each having the sequence program that simulates the ladder circuit.
Number | Date | Country | Kind |
---|---|---|---|
2006-339822 | Dec 2006 | JP | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP07/74164 | 12/14/2007 | WO | 00 | 6/18/2009 |