WO2008075631A1 - Plc分散制御システム - Google Patents

Plc分散制御システム Download PDF

Info

Publication number
WO2008075631A1
WO2008075631A1 PCT/JP2007/074164 JP2007074164W WO2008075631A1 WO 2008075631 A1 WO2008075631 A1 WO 2008075631A1 JP 2007074164 W JP2007074164 W JP 2007074164W WO 2008075631 A1 WO2008075631 A1 WO 2008075631A1
Authority
WO
WIPO (PCT)
Prior art keywords
plc
output
station number
control system
schedule definition
Prior art date
Application number
PCT/JP2007/074164
Other languages
English (en)
French (fr)
Inventor
Tsutomu Araki
Original Assignee
Jtekt Corporation
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 Jtekt Corporation filed Critical Jtekt Corporation
Priority to US12/519,881 priority Critical patent/US8321037B2/en
Priority to EP07859838.0A priority patent/EP2098927B1/en
Publication of WO2008075631A1 publication Critical patent/WO2008075631A1/ja

Links

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/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/12Plc mp multi processor system
    • G05B2219/1204Multiprocessing, several plc's, distributed logic control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15026Detection of data transmission faults

Definitions

  • the present invention relates to a PLC distributed control system configured by connecting a plurality of PLCs (programmable controllers) having communication means.
  • PLCs programmable controllers
  • the present invention is particularly useful when, for example, a safety system that complies with international safety standards is constructed.
  • Japanese Unexamined Patent Application Publication No. 2002-358106 discloses a conventional technique related to a PLC distributed control system in which storage means, an arithmetic processing unit, and the like are multiplexed in order to configure a safety system compliant with a predetermined safety standard.
  • Such safety controllers are known.
  • a distributed control system may be configured by interconnecting individual PLCs that control each machinery and equipment.
  • the communication line between PLCs has been further parallelized to ensure that the reliability of communication processing between PLCs should be sufficiently secured.
  • each communication line generated by executing each ladder diagram on each PLC is connected to each communication line before the system is actually operated. It is necessary to test each line in advance to see if it is performed correctly. For this reason, it is said that the operational efficiency of the system is significantly reduced when the system is created or when ladder diagrams (sequence programs) are replaced. Issue arises.
  • the present invention has been made to solve the above-described problems, and an object of the present invention is to realize highly reliable safety communication and to test a communication line in a PLC distributed control system. It is to effectively improve the operational efficiency.
  • Another object of the present invention is to effectively improve the reusability of existing programs in a PLC distributed control system and to identify individual output variables output by each PLC constituting the PLC distributed control system. It is easy for SE and operation manager of the system.
  • each of the PLCs described above Output schedule definition frame consisting of output schedule definition information that defines for each output variable whether or not each output variable that simulates the output coil in the ladder diagram executed on the PLC is to be output to the other PLC.
  • Reference schedule definition frame consisting of schedule definition information Second storage means for storing each corresponding to the PLC, transmission means for transmitting the above output schedule definition frame or reference schedule definition frame to each other PLC, and the above output schedule definition frame or reference schedule definition frame Receiving means received from each other PLC, collating means for collating each output schedule definition frame and reference schedule definition frame for each corresponding frame, and based on the collation result by this collating means And a normal communication start judging means for judging whether or not normal communication is started in the PLC distributed control system.
  • each process is duplicated as each PLC.
  • the programming language for describing the ladder diagram is not particularly limited, and a graphic language or a text language may be used.
  • each of these means is preferably operated at the time of system configuration, startup, or restart, but may be operated periodically.
  • the communication wiring that connects each PLC in order to realize broadcast-type or multicast-type communication does not necessarily have to be duplicated.
  • desired safety communication can be realized based on the present invention by logically duplicating a communication line at least by duplication of a packet, for example.
  • a station number assigning means for assigning a station number of the own PLC to the target transmission data to be transmitted is provided in the transmission means, Definition information input means for receiving the input of the output schedule definition information, and first output means for generating the output schedule definition frame on the first storage means based on the input information input by the definition information input means.
  • One frame generation means is provided in each PLC.
  • the output schedule definition frame may be generated on the first storage means based on the extracted information extracted from the ladder diagram source program by each means.
  • the PLC distributed control system of the present invention may be configured using a PLC equipped with such means! /.
  • the reference schedule definition described above is selected from the ladder diagram source program executed on the own PLC.
  • the definition information extraction means may be configured as, for example, an extended function of a compiler that compiles the source program, or may be realized by a tool (code analysis program) independent of the compiler.
  • the fourth aspect of the present invention is a PLC distributed control system configured by connecting a plurality of PLCs having communication means.
  • a diagram edit display means is provided, and in this diagram edit display means, a station number acquisition means for acquiring the station number of the own PLC in the PLC distributed control system and an output coil on the object program that implements the above ladder diagram are simulated.
  • Display address code editing means for rewriting the address code of each output variable to a logical address code in a format including the acquired station number.
  • the PLC in the fourth aspect of the present invention is not limited to a safety PLC that has been subjected to safety processing by various types of duplication.
  • the programming language for describing the ladder diagram is not particularly limited, and a graphic language or a text language may be used.
  • the edit display form relating to the output result of the diagram edit display means has the same arbitraryness.
  • the station number acquisition means described above is via a predetermined user interface. A means for allowing the user to directly input the station number may be used, or it may be configured such that it is automatically obtained by using an inquiry command such as a diagnosis command.
  • the logical address code in the format including the above station number is the address code for operation management for the SE and the operation manager to recognize (view).
  • the fifth aspect of the present invention provides the station number assigning means for assigning the station number of the own PLC to the target transmission data to be transmitted in any one of the first to third aspects.
  • each PLC described above is provided with a diagram edit display means for displaying the contents of the ladder diagram executed on its own PLC on a predetermined screen or paper, and this diagram edit display Means for acquiring the station number of the PLC in the PLC distributed control system, and the address code of each output variable that simulates the output coil on the object program that implements the ladder diagram above.
  • a display address code editing means for rewriting the logical address code in a format including the acquired station number.
  • the programming language for describing the ladder diagram is not particularly limited, and a graphic language or a text language may be used.
  • the edit display form related to the output result of the diagram edit display means has the same arbitraryness.
  • the station number acquisition means may be a means for allowing the user to directly input a station number via a predetermined user interface.
  • the station number acquisition means may be automatically acquired by using an inquiry command such as a diagnosis command. It may be configured.
  • the logical address code in the format including the above station number is the address code for operation management for the SE and the operation manager to recognize (view).
  • the above definition frame ie, the output schedule definition frame or the reference schedule definition frame
  • the above verification process is performed in each PLC.
  • each output variable between each PLC is input for each corresponding frame. Check that the condition matches the output condition. For this reason, all output variables to be transmitted / received should be automatically judged without omission to determine whether the transmission / reception of each output variable to / from each PLC is executed correctly. Touch with force S.
  • a relay station that performs a relay function related to communication between slave stations, such as a master PLC in a conventional distributed control system that employs a master-slave system.
  • Safety communication can be easily realized without installing a system. For this reason, at least for communication control processing, there is no need to provide a master PLC with a large memory overhead and CPU overhead and a complicated program configuration. Or, even if some master function is given to a specific PLC, according to the configuration of the first aspect, the system topology (network structure) in the communication system is symmetrical by the broadcast type or multicast type communication method. Therefore, the communication control processing overhead of the PLC can be effectively reduced. Therefore, according to the first aspect of the present invention, the interlock related to the communication control for realizing the safety communication is achieved.
  • the control mechanism can be configured very easily and reliably, which makes it possible to realize highly reliable safety communication in the desired PLC distributed control system very easily.
  • the user can perform a distributed control system of a certain PLC.
  • the address of the output variable (coinore output) of the own PLC is not modified.
  • the above output schedule definition information is read from the above definition information input means.
  • the desired diversion procedure equivalent to the above address correction procedure can be completed simply by inputting. That is, according to the second aspect of the present invention, instead of correcting the address of the output variable on the source program at the time of diversion work of the existing program as described above, the output schedule is output from the definition information input means. By only inputting the definition information, it is possible to generate all the output schedule definition frames to be stored in the desired first storage means.
  • each PLC assigns the station number of its own PLC to the transmission data including the output variable. This is because, based on the station number assigning action of the transmission means to be transmitted to each PLC, each output variable can be expanded on the storage area of the same address on any PLC. This is because on the module 20, it is possible to easily distinguish from which PLC the output variable in the received data is based on the station number assigned to the transmission data.
  • an extremely simple user interface can be configured by, for example, a GUI or text input, so that the desired diversion procedure is very efficient. Can perform well.
  • the existing program on the distributed control system can be utilized very efficiently.
  • the above-mentioned second storage means based on the existing source program by the above-mentioned definition information extracting means and the above-mentioned second frame generating means.
  • the above reference schedule definition frame can be automatically generated. For this reason, according to the third aspect of the present invention, it is possible to realize safety communication between the PLCs in the PLC distributed control system with extremely high efficiency.
  • the station number assignment described above is performed between the PLCs. Almost distinguish each of these output variables based on actions similar to actions Each ladder diagram can be executed accurately without malfunction. For this reason, for example, between symmetrically configured slave stations that operate with the same logic, these object codes can be operated without error even if correction operations related to the real addresses of the output variables are not performed. Can be performed accurately.
  • a logical address code (logical expression) in the form including the station number of each PLC is used to display the address of each PLC output variable on the ladder diagram. Therefore, the address of each of these output variables can be displayed on the ladder diagram etc. in a format that is easy to read and easy to view with a logical address code that includes the correct correct station number.
  • the visibility of variable address notations such as SEs and system operation managers is improved, which facilitates the operation management of the distributed control system.
  • the object code is corrected for the real address of the output variable. Even if no operation is performed, these object codes can be executed accurately without malfunction. For example, at least communication control-related processing is performed by the same logic.
  • FIG. 1 System configuration diagram of PLC distributed control system 1 of Embodiment 1
  • FIG. 6 Explanatory drawing explaining the operation of the reference variable table generation program PGa
  • FIG. 8 is an explanatory diagram for explaining the operation in step S1 of the initial operation in FIG.
  • FIG. 9 Frame structure diagram illustrating the data structure of transmission and reception packets
  • FIG. 10A is a flowchart illustrating another usage form of the output schedule definition frame.
  • FIG. 10B is a flowchart illustrating another usage form of the reference schedule definition frame.
  • FIG. 11 Program structure diagram showing structure and operation of diagram editing and displaying means 200
  • FIG. 1 shows a system configuration diagram of the PLC distributed control system 1 according to the first embodiment.
  • This distributed control system is intended to operate a total of six motors with addresses Q18 to Q1D asynchronously or synchronized as necessary and safely, and these motors are used for industrial machines. Used to drive robots and processing equipment.
  • slave PLCs 11 and 12 and a master PLC 10 are connected in a ring shape by using a ring bus 14, and thus a broadcast type communication network is configured.
  • Each of these PLCs (10, 11, 12) consists of a CPU module 20, a communication control module 30, and I / O modules 40, 60. These modules are connected to each other via a bus 21. Yes.
  • Each of these PLCs is a power S composed of a safety PLC in which each part of the processing unit, storage device, etc. is duplicated in the A system and the B system, and a detailed explanation on the duplication structure of each part. Will be handed over to Fig. 8, etc., and in the following, each will be abbreviated as a single configuration.
  • the memory 22 of the CPU module 20 stores a sequence program written in a ladder diagram language.
  • the CPU module 20 transfers this sequence program to the CPU 24. Therefore, by executing, it is possible to control each module and to link with each module.
  • broadcast-type safety communication is realized, but the communication control module 30 of the master PLC 10 determines the communication state on the ring bus 14 based on a command from the CPU module 20. It also provides a synchronous control function (communication trigger generation management function) that sends commands and signals for control.
  • the communication control module 30 of each PLC includes a bus interface 32, a memory 34, and a CPU 36, and each memory 34 stores a communication program according to a predetermined packet switching protocol.
  • the communication control module 30 controls transmission / reception of packets on the ring bus 14 via the bus interface 32 by executing this communication program on the CPU 36 based on a command received from the CPU module 20.
  • Double emergency stop buttons (ESB0 to 2) are connected to the / O module 40, and an unsafe state can be detected based on the state.
  • personal computers 50, 51, 52 are individually connected to the interface 26 of each CPU module 20.
  • Each of these personal computers (50, 51, 52) is provided with a keyboard 54, a display device 55, a memory 57, and the like.
  • a mouse, a printer, or an input / output device for a portable external storage medium may be provided.
  • FIG. 2 illustrates a control form of the PLC distributed control system 1 described above.
  • Fig. 2 shows the sequence program to be executed on each CPU module 20 of each PLC 10 to 12 using a ladder diagram.
  • the station number “00” indicates the station address of PLC10 and the station number “01”.
  • the station address of SPLC11 and the station number “02” indicate the station address of PLC12! /, Respectively.
  • the input contacts (I00 to I05) and coils (Q18 to Q1D) surrounded by broken lines in FIG. 2 correspond to the variable addresses (I00 to I05, Q18 to Q1D) in FIG. These indicate state variables that directly correspond to the actual physical input / output objects such as emergency stop buttons and motors.
  • state variables (00L04, 01L08, 02L08) not surrounded by a broken line represent states of a coil or the like that are logically simulated.
  • these logically simulated state variables are called L-type variables representing link relays or simply output variables.
  • each output variable L-type variable indicating link relay
  • the arrows in the figure indicate the reference relationship for each output variable.
  • any emergency stop button (ESBO, ESB1, ESB2) is pressed by a sequence program in which the ladder diagram as described above is encoded to be executable
  • the PLC distributed control is performed.
  • System 1 can be shut down safely.
  • the double emergency stop button ESBO is pressed, at least one of the input contact 100 or the input contact 101 is turned off, so that all motors (Q18 to Q1D) stop abnormally. To do.
  • the emergency stop button ESB1 is pressed, only the motors Q18 to Q1B will be in an emergency stop.
  • safety input devices such as various area sensors (eg light curtain and safety mat) may be introduced instead of or in addition to the emergency stop button! / ⁇
  • the above output variable (L-type variable representing the link relay) exchanged between the PLCs via the ring bus 14 is the same for each PLC (10-12) that outputs it.
  • Each can define up to 32 variables.
  • the output variables (L-type variables representing link relays) of other PLCs that can be input (referenced) by one PLC are limited to 32 variables in total. Therefore, the maximum number of input contacts and coils (output variables) that can be logically simulated to realize communication within the system is 32 maximum for each PLC.
  • the logical addresses of output variables that can be defined in the PLC 10 with the station number “00” are 32 addresses 00L00 to 00L1F.
  • FIG. 3A is a table structure diagram of the first storage means TBL1 in the first embodiment.
  • This first storage means TBL1 is a means provided for each PLC, and is composed of four consecutive frame storage areas TBL10-TBL13. Each storage area consists of a 4-byte area.
  • Each of these frame storage areas TBL10 to TBL13 for example, on the PLC whose station number is 00 (that is, PLC10), output scheduled definition frames RFOO, RF01, and RF02, each of which is 4-byte data, are stored.
  • the TBL13 is a reserved area.
  • FIG. 3B illustrates a frame structure diagram of the output schedule definition frame RF01.
  • the bit string constituting the output schedule definition frame RFmn is output from the station number m. Indicates whether each output variable (OmL 00 to OmLlF) is scheduled to be output for station number n for each corresponding bit.
  • each value of each output schedule definition bit constituting the output schedule definition frame RFmn is 0.
  • FIG. 4 illustrates a display form of the output schedule definition screen WDOO (definition information input means) in the first embodiment.
  • each output variable is displayed in the display field wl of this output schedule definition screen WDOO, and the station number of each PLC to which these output variables are sent is displayed in the display field w2. ! /
  • the corresponding bit corresponding to the check box on the output schedule definition screen WDOO whose output variable address is OOL1E and whose destination PLC station number is 2 is the output stored in the first storage means TBL1 Since it is the output schedule definition bit RblE in the schedule definition frame RF02, the value of this output schedule definition bit RblE is defined as 0 (: no output schedule).
  • the value of the bit corresponding to the check box w3 'in which the check mark (remark) is specified is defined as 1.
  • the corresponding bit corresponding to the check box on this output schedule definition screen WDOO whose output variable address (bit address) is 00L04 and whose destination PLC station number is 1 is stored in the first storage means TBL1. Since this is the output schedule definition bit Rb04 in the stored output schedule definition frame RF01, the value of this output schedule definition bit Rb04 is defined as 1 (: output scheduled).
  • the output variable (L-type variable representing the link relay) output by the PLC is not sent to the PLC itself, the specification for each check box w3 ⁇ in the leftmost column (remarked) Input operation) is not possible.
  • each operation that has been correctly defined according to the user's operation on the above output schedule definition screen WD00 is triggered by that operation (trigger).
  • the output schedule definition frame force S is collectively transferred from the computer 50 to the PLC 10 and stored in the first storage means TBL1 in FIG. 3A.
  • FIG. 5A is a table structure diagram of the second storage means TBL2 in Embodiment 1.
  • This second storage means TBL2 is provided for each PLC and consists of four consecutive frame storage areas TBL20-TBL23. Each storage area consists of a 4-byte area.
  • the reference schedule definition frames SF00, SF01, SF02 force S that are 4 byte data respectively are stored. Is done.
  • TBL23 is a reserved area.
  • FIG. 5B illustrates a frame structure diagram of the reference schedule definition frame SF01.
  • the address of the output variable (L-type variable representing the link relay) is logically formatted. In other words, it is represented by a logical address of the form “yl y2 Lzl z2”. Where yl y2 is the PLC station number and zl z2 is the output variable definition area.
  • the reference variable table TBa When these source codes are input to the reference variable table generation program PGa, the reference variable table TBa is generated and output.
  • This reference variable table TBa enumerates and registers output variables that are referenced at input contacts that are logically defined (simulated) in the source code as described above. In general, it consists of a collection of the 2-byte information. In other words, the lower byte of each 2-byte information indicates the station number of the PLC that outputs the output variable referred to at the input contact so that it can also be divided from the correspondence with the ladder diagram of FIG. . Also, the upper byte is its output.
  • Such a reference variable table generation program PGa may be prepared as a compiler option or extended function, or as a single tool.
  • this reference variable table TBa By transferring this reference variable table TBa from the CPU 50 to the CPU module 20 of the PLC 10 and converting the data on the CPU module 20, for example, on the PLC whose station number is 00 (ie PLC 10)
  • the reference schedule definition frames SF00, SF01, SF02 are generated and stored in the second storage means.
  • each reference schedule definition frame is generated on the second storage means.
  • FIG. 7 is a flowchart showing the initial operation of the entire PLC distributed control system 1.
  • step S1 the above-described definition frame generation processing is executed for each PLC, whereby each output schedule is sent to the first storage means and the second storage means on each PLC.
  • a definition frame and each reference schedule definition frame are generated.
  • FIG. 8 illustrates the operation of step S1.
  • each CPU module 20 in FIG. 1 having the memory 24 is actually duplexed in parallel in two processing systems, system A and system B.
  • the first storage means and the second storage means are generated by being duplicated on each of the microprocessors (MP-A, MP-B) of the A system and the B system on each CPU 20.
  • MP-A, MP-B microprocessors
  • the next step S2 shows the processing to be executed at the station number 00.
  • the output schedule definition frame RF01 is assigned to the PLC of the station number 01
  • the output schedule definition frame RF02 is assigned to the PLC of the station number 02. Send it out.
  • the data structure (frame structure) of the packet sent at this time is illustrated in Fig. 9.
  • This packet is for transmitting and receiving the above output schedule definition frame RF01 (4 bytes) as a part of the information part I, and conforms to a general packet switching protocol.
  • a destination address (PLC station number DA) and a source address (PLC station number SA) are assigned to each packet.
  • Such means for assigning the source station number to the transmission data corresponds to the station number assigning means in the present invention.
  • the frame type FT (2 bytes) includes the type code (eg, command type) of the data making up the information part I and the control bits related to the data structure of the frame.
  • the information part I can include control information that can be used for synchronous control of communication and abnormal communication.
  • the ring bus 14 in FIG. 8 is duplexed into a backup optical fiber cable and an optical fiber cable during normal communication, and the duplex related to safety communication during normal communication here.
  • the addresses of the microprocessors (MP-A, MP-B) constituting each communication control module 30 are different from each other, and the communication processing of the A system and the communication processing of the B system are always a pair. It is executed while configuring.
  • MP-A first transmits data a
  • MP-B then transmits data b obtained by inverting each bit of the data a. (However, the test bit (TEST) is not inverted.)
  • the next step S3 shows processing to be executed by the CPU module 20 of each PLC of station number 01 and station number 02 thereafter. That is, in the PLC CPU module 20 of the station number 01, the contents of the output schedule definition frame RF01 transmitted from the station number 00 to the own station are stored in the reference schedule definition frame SF01 stored in the second storage means of the own PLC. Is checked against the contents of each bit. Also, in the PLC CPU module 20 of the station number 02, the contents of the output schedule definition frame RF02 transmitted from the station number 00 to the own station are stored in the reference schedule definition frame SF02 stored in the second storage means of the own PLC. The contents are compared with each bit correspondence.
  • step S4 it is determined whether or not there is a mismatch bit in both of the above-mentioned collation processes! If there is at least one mismatch bit, Moves to step S12, otherwise to step S5.
  • steps S5 to S7 the same processes as in steps S2 to S4 are performed by mutually replacing the roles of the PLCs in a cyclic manner. If there is no mismatch bit as a result of the collation, the process moves to the next step S8. In other words, these verification processes are repeated in the PLC distributed control system 1 for the number of PLCs in a rotationally symmetrical manner.
  • steps S8 to S10 are performed in the same manner as the steps S5 to S7 described above by cyclically shifting the roles of the PLCs to replace each other.
  • Each of these processes is executed from a different standpoint. If there is no mismatch bit as a result of the comparison, the process proceeds to the next step S11.
  • step S11 processing for starting normal communication, that is, start command output processing is performed. Do.
  • step S12 processing for prohibiting normal communication, that is, processing for outputting a prohibition command is performed.
  • the output schedule definition frame RFnm is transmitted and received bidirectionally on each communication line between the PLCs, and the above-described verification process is performed on each PLC.
  • the output schedule definition frame RFnm is transmitted and received bidirectionally on each communication line between the PLCs, and the above-described verification process is performed on each PLC.
  • FIG. 10A illustrates an example of how the above output schedule definition frame RFmn is used during normal communication.
  • the transmission process in FIG. 10A is for realizing broadcast-type communication, and is performed every time normal communication is executed to send the output variable from each PLC.
  • the output variable frame OUTm in the figure represents 4-byte data consisting of 32 bits at the time of output (ie, as the operation result) for the output variable 0mL00 to 0mLlF defined on the PCL of station number m. /!
  • step S21 a 4-byte work area A1 is ANDed for each corresponding bit of the output variable frame OUTm and the constant RFm (AND operation). ) Is stored.
  • step S22 the calculation result (A1) Is compared with the value of the output variable frame OUTm. If all the bit values of both match, the process proceeds to step S24. Otherwise, the process proceeds to step S25.
  • step S24 the output variable frame OUTm is set in a predetermined area in the information section I in FIG. 9 and all the PLCs are designated as the destination (designation of all stations). Send to each PLC.
  • step S25 the PLC distribution control system 1 is safely stopped according to a predetermined emergency stop processing program.
  • an output variable that should not be updated in the sequence program for controlling the CPU module 20 of the transmission side PLC is added, for example, by the actions of steps S21, S22, and S25.
  • the system can be shut down safely even if a program failure such as turning ON is unexpectedly present.
  • another program that has nothing to do with the original program has been downloaded by mistake as a sequence program that controls the CPU module 20 of the receiving PLC.
  • an incorrect output schedule definition setting operation such as just accepting, is performed from the output schedule definition screen in Fig. 4, the system can be safely stopped.
  • FIG. 10B illustrates another usage pattern of the reference schedule definition frame in each PLC on the receiving side.
  • a packet addressed to its own station (station number n) is received from the ring bus 14.
  • the packet addressed to all stations is also a packet addressed to the local station.
  • step S32 the output variable frame OUTm (: 32-bit information) of the transmission source (station number m; m ⁇ n) in the information part 1 (FIG. 9) of the packet is extracted.
  • step S36 an output variable frame OUTmn in which only the reference bits (each output variable) to be referred to by the own station are selected is determined in step S36. Copy over the area.
  • the address designation of each destination station number that is, the designation of the receiving station number n
  • multicast communication can be realized instead of the broadcast communication described above.
  • inconsistency of the reference relationship between the transmission side and the reception side regarding the output variable is eliminated even when multicast type secure communication is performed.
  • the sequence program can be operated accurately.
  • FIG. 11 shows the structure and operation of the diagram edit display means 200 of the second embodiment.
  • the diagram editing / displaying means 200 edits a ladder diagram D2 representing the operation based on the object code DO, and displays the edited result on a predetermined output medium (screen or paper) that can be visually checked.
  • the station number input means 220 can be composed of the keyboard 54 of FIG. 1 of the first embodiment, etc., which corresponds to the station number acquisition means of the present invention. That is, for example, by connecting the personal computers 50, 51, and 52 shown in FIG. 1 to each PLC, it is possible to generate the diagram editing display means 200 on the personal computer.
  • the display device 55 shown in FIG. 1 can be used, and a printer or the like can be used instead.
  • a ladder diagram D1 in the center of FIG. 11 shows an intermediate result in the ladder diagram editing process of the diagram editing program 210.
  • the values on the object code D0 are shown as they are at the real addresses (LOxl x2, L000) of the input contact and output variable in the ladder diagram D1.
  • Intermediate results like this (Ladder Diagram) Dl) is a force that can be edited based on the prior art.
  • This diagram editing display means 200 further includes a station number input means 220 for inputting the station number of each PLC on which the ladder diagram is executed.
  • Display address code editing means 211 is provided for rewriting the actual address of each output variable into a logical address code including the station number based on the inputted station number. For this reason, for example, the address display code such as the output variable L000 is edited as follows and then displayed in the ladder diagram D2 output by the diagram display means 230.
  • each PLC has a transmission means (communication control module 30 in Fig. 1) that assigns the PLC's station number to the transmitted data and transmits it to each other PLC.
  • the actual address ad of the variable on the PLC is expanded as an actual address (L000 ⁇ ad ⁇ L01F) within the same range on each object code DO. That is, on the CPU module 20 of each PLC, the output variable storage areas overlap each other. This is based on the station number assigned to the transmission data. On the CPU module 20 of each PLC, it is possible to easily distinguish those received output variables 1S, which are output variables from the PLC. It is because it can do.
  • the display address code editing means 211 operates only on the variable having the real address ad within this range (L000 to L01F) (that is, the above output variable).
  • an output variable whose real address is within the above range (representing a link relay).
  • a desired editing process (LOxl x2 ⁇ nnLxl x2) is performed by calling a predetermined editing subroutine (that is, display address code editing means 211) each time. This can be done for each output variable on the LC.
  • nn is the input station number, and corresponds to the station number “01” input from the station number input means 220 in FIG.
  • the address of each output variable referenced by a logically defined (simulated) input contact is the predetermined compilation used to generate the object code DO. According to the rules, it can be executed by performing the inverse transformation, which makes it possible for the management logical address code to be recognized by the user and the actual address of each input contact on the object code DO to be correct. Correspond.
  • a copy (copy program) of this program without any modification to the existing program (object code DO) can be used simultaneously between multiple PLCs.
  • Productivity is effectively improved.
  • Such diversion of existing programs is effective when, for example, a ladder program (object program) executed at station number “02” in FIG. 2 is applied to station number “01” in FIG. 2 as it is.
  • a ladder program object program executed at station number “02” in FIG. 2 is applied to station number “01” in FIG. 2 as it is.
  • the same actions can be entrusted many times in the same way. it can.
  • station number Based on the input information (station number) from station number input means 220 (station number acquisition means), for the output variables (L000 to L01F) of the same format that cannot be distinguished on the object code DO, the station number ( Station address). Therefore, on the ladder diagram D2, it is easy to distinguish the output variables of each PLC and accurately identify them.
  • the embodiment of the present invention is not limited to the above-described embodiment, but may be modified as exemplified below. Even with such modifications and applications, the effects of the present invention can be obtained based on the functions of the present invention.
  • the power of sending the output schedule definition frame to the other PLC is reversed.
  • the same reference processing may be performed by sending the reference schedule definition frame to each other PLC. Even if such transmission / reception is performed, it is possible to obtain the same effect.
  • the number of PLCs connected to each other to configure the PLC distributed control system of the present invention is arbitrary, and the number of I / O modules connected to configure each PLC may be arbitrary.
  • the PLC distributed control system communication network can be configured using a linear bus instead of a ring bus.
  • one of the communication wires of the duplex ring bus 14 is used for backup in the event of an abnormality and is not used during normal operation. It is not always necessary to limit to the duplex form at the logical communication line level based on the above. Duplication of communication may be attempted at the physical communication wiring level. [0077] (Modification 4)
  • a text display method may be adopted.
  • a text format input method may be adopted instead of using a GUI with a check box 'matrix' or the like.
  • the station number input means 220 in FIG. 11 of the second embodiment is a means for allowing the user to input a station number.
  • a diagnosis command, a question! / You can make it so that the station number is automatically obtained! Industrial applicability
  • the present invention is very useful when configuring a PLC distributed control system using a safety PLC, but each PLC constituting the PLC distributed control system of the present invention is not necessarily a safety PLC. There is no need. That is, the PLC distributed control system of the present invention can be configured using any PLC having a sequence program that simulates a ladder circuit.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

 出力変数(00L04、01L08、02L08)毎に出力予定の有無を定義した出力予定定義フレームと、該出力変数毎に参照予定の有無を定義した参照予定定義フレームとを、複数のPLC間で交換し、これらフレーム毎に照合を行うことで、通信を開始するか否かを判定する。

Description

明 細 書
PLC分散制御システム
技術分野
[0001] 本発明は、通信手段を有する PLC (プログラマブルコントローラ)を複数台接続する ことによって構成される PLC分散制御システムに関する。本発明は、例えば、国際安 全規格に準拠する安全システム等を構築する際などに特に有用である。
背景技術
[0002] 所定の安全規格に準拠する安全システムを構成するために、記憶手段や演算処理 部などを多重化した PLC分散制御システムに関する従来技術としては、例えば特開 2002— 358106号公報に記載されている安全コントローラなどが公知である。また、 複数の機械設備を同時に並列制御するファクトリーオートメーションにおいては、各 機械設備を制御する個々の PLCを相互に接続して、分散制御システムを構成するこ とがある。そして、近年、この様な分散制御システムにおいては、各 PLC間の通信回 線などをも更に多重並列化することによって、各 PLC間の通信処理に関する信頼性 をも十分に確保すべきとする安全指向の要請が強くなりつつある。
[0003] また、この様な分散制御システムにおける安全通信を実現するための、通信制御に 係わる信頼性が十分に高!/、インターロック機構を容易かつ効率よく構成した!/、と言う ニーズが高まりつつあり、また、分散制御システム内における安全処理シーケンスを 分かり易く表した表現形式によって、当該システムを効率的に運用管理したいと言う ニーズも、近年ますます高まりつつある。
発明の開示
発明が解決しょうとする課題
[0004] しかしながら、上記の様な信頼性の高い安全通信を実現するには、システムの実稼 働前に、各 PLC上の各ラダーダイアグラムの実行によって発生する個々の通信が、 各通信回線を介してそれぞれ正しく行なわれるか否かを予め各回線毎に全てテスト しておく必要が生じる。このため、システム生成時やラダーダイアグラム(シーケンスプ ログラム)の入れ換え時などに、当該システムの運用効率が、著しく低下すると言う問 題が発生する。
[0005] また、安全システムに限定されない一般の PLC分散制御システムにおいても、同一 または類似のロジック(アルゴリズム)を有するラダーダイアグラムを相異なる複数台の PLC上において同時に並列に動作させたいと言うケースがある。この様な場合に、各 PLCにおいては、それらのロジックを同様に具現する既存プログラムをそれぞれ同様 に適用すること(即ち、既存プログラムの再利用)によって、オブジェクトプログラムの 生産性が大幅に向上する。しかし、それと同時に、この様な場合には、ネットワークを 構成する当該分散制御システムのシステム構成が複雑となるため、それらの各 PLC の各出力変数を論理的に識別し易く体系化し直して、各出力変数をそれぞれ分かり 易く見易い形式でラダー図上などに表示したいと言う、新たな運用管理上のニーズ が発生する。
[0006] 本発明は、上記の課題を解決するために成されたものであり、その目的は、 PLC分 散制御システムにおいて、信頼性の高い安全通信を実現するとともに、通信回線の テストなどに係わる運用効率を効果的に向上させることである。
また、本発明のその他の目的は、 PLC分散制御システムにおいて、既存プログラム の再利用性を効果的に向上させるとともに、該 PLC分散制御システムを構成する各 PLCが出力する個々の出力変数の識別を、該システムの SEや運用管理者に対して 容易にすることである。
課題を解決するための手段
[0007] 上記の課題を解決するためには、以下の態様が有効である。
即ち、本発明の第 1の態様は、通信手段を有する PLCを複数台接続することによつ て構成されるブロードキャスト型又はマルチキャスト型の PLC分散制御システムにお いて、上記の各 PLCに、自 PLC上において実行されるラダーダイアグラム中の出力 コイルを模擬する各出力変数の他の PLCに対する出力予定の有無をその各出力変 数毎に定義する出力予定定義情報からなる出力予定定義フレームを他の各 PLC対 応にそれぞれ記憶する第 1の記憶手段と、他の PLC上において実行されるラダーダ ィアグラム中の出力コイルを模擬する各出力変数に対する参照予定の有無をその各 出力変数毎に定義する参照予定定義情報からなる参照予定定義フレームを他の各 PLC対応にそれぞれ記憶する第 2の記憶手段と、上記の出力予定定義フレームまた は参照予定定義フレームを他の各 PLCに送信する送信手段と、上記の出力予定定 義フレームまたは参照予定定義フレームを他の各 PLCから受信する受信手段と、そ れらの出力予定定義フレームと参照予定定義フレームとを各対応フレーム毎にそれ ぞれ照合する照合手段と、この照合手段による照合結果に基づいて当該 PLC分散 制御システムにおける通常通信の開始の是非を判定する通常通信開始判定手段と を備えることである。
[0008] ただし、上記の各 PLCには、各処理が二重化された安全 PLCを用いることが望まし い。また、上記のラダーダイアグラムを記述するためのプログラミング言語は、特に限 定されず、グラフィック形言語を用いてもテキスト形言語をもちいてもよい。また、 1つ の出力変数に対する上記の出力予定定義情報や上記の参照予定定義情報は、何 れも 1ビット情報として取り扱うことが望ましぐこの場合には、上記の各定義フレーム は、それらのビット列データで構成される。
[0009] また、これらの各手段は、システムの構成時、起動時、または再起動時に、動作さ せることが望ましいが、更に、定期的に動作させてもよい。
また、ブロードキャスト型又はマルチキャスト型の通信を実現するために各 PLCを繋 げる通信配線は、必ずしも二重化しなくてもよい。また、例えばパケットの二重化など によって、少なくとも、論理的に通信回線を二重化することによって、本発明に基づい て、所望の安全通信を実現することができる。
また、物理的な通信配線は、リング形力、バス形に構成することが望ましぐ更には、 二重化しておくことがより望ましレ、。
[0010] また、本発明の第 2の態様は、上記の第 1の態様において、送信すべき目的の送信 データに自 PLCの局番を付与する局番付与手段を上記の送信手段に設け、更に、 上記の出力予定定義情報の入力を受け付ける定義情報入力手段と、この定義情報 入力手段によって入力された入力情報に基づいて上記の出力予定定義フレームを 上記の第 1の記憶手段上にそれぞれ生成する第 1のフレーム生成手段とを各 PLCに 設けることである。
[0011] ただし、上記の本発明の第 2の態様の代わりに、以下の本発明の第 3の態様と略同 様の手段によって、ラダーダイアグラムのソースプログラム中から抽出された抽出情 報に基づいて、上記の出力予定定義フレームを上記の第 1の記憶手段上にそれぞ れ生成する様にしてもよぐかつ、その様な手段を備えた PLCを用いて、本発明の P LC分散制御システムを構成してもよ!/、。
[0012] 次に、本発明の第 3の態様は、上記の第 1又は第 2の態様の各 PLCにおいて、自 P LC上において実行されるラダーダイアグラムのソースプログラム中から、上記の参照 予定定義情報を抽出する定義情報抽出手段と、この定義情報抽出手段によって抽 出された抽出情報に基づいて、上記の参照予定定義フレームを上記の第 2の記憶 手段上にそれぞれ生成する第 2のフレーム生成手段とを備えることである。
ただし、上記の定義情報抽出手段は、上記のソースプログラムをコンパイルするコ ンパイラの例えば拡張機能などとして構成してもよいし、コンパイラとは独立のツール (コード解析プログラム)によって実現してもよい。
[0013] また、本発明の第 4の態様は、通信手段を有する PLCを複数台接続することによつ て構成される PLC分散制御システムにおいて、送信すべき目的の送信データに自 P LCの局番を付与して他の各前記 PLCに送信する送信手段を設け、更に、上記の各 PLCに、自 PLC上で実行されるラダーダイアグラムの動作内容を所定の画面上また は紙面上に表示するダイアグラム編集表示手段を設け、このダイアグラム編集表示 手段に、当該 PLC分散制御システムにおける自 PLCの局番を取得する局番取得手 段と、上記のラダーダイアグラムを具現するオブジェクトプログラム上において出力コ ィルを模擬する各出力変数のアドレスコードを、取得された上記の局番を含む形式 の論理的なアドレスコードに書き換える表示アドレスコード編集手段とを備えることで ある。
[0014] ただし、本発明の第 4の態様における上記の PLCは、各種の二重化などによって 安全処理が図られた安全 PLCに限定されるものではない。
また、上記のラダーダイアグラムを記述するためのプログラミング言語は、特に限定 されず、グラフィック形言語を用いてもテキスト形言語をもちいてもよい。また、ダイァ グラム編集表示手段の出力結果に関する編集表示形態についても同様の任意性を 有する。また、上記の局番取得手段は、所定のユーザーインターフェイスを介して、 ユーザーに局番を直接入力させる手段でもよいし、例えば診断命令などの問い合わ せコマンド等を用いて、 自動的に取得する様に構成してもよい。
なお、上記の局番を含む形式の論理アドレスコードが、 SEや運用管理者に対して 認識(目視)させるための運用管理上のアドレスコードとなる。
[0015] また、本発明の第 5の態様は、上記の第 1乃至第 3の何れか 1つの態様において、 送信すべき目的の送信データに前記自 PLCの局番を付与する局番付与手段を上 記の送信手段に設け、更に、上記の各 PLCに、自 PLC上で実行されるラダーダイァ グラムの動作内容を所定の画面上または紙面上に表示するダイアグラム編集表示手 段を設け、このダイアグラム編集表示手段に、当該 PLC分散制御システムにおける 自 PLCの局番を取得する局番取得手段と、上記のラダーダイアグラムを具現するォ ブジェクトプログラム上において出力コイルを模擬する各出力変数のアドレスコードを
、取得された上記の局番を含む形式の論理的なアドレスコードに書き換える表示アド レスコード編集手段とを備えることである。
[0016] ただし、上記のラダーダイアグラムを記述するためのプログラミング言語は、特に限 定されず、グラフィック形言語を用いてもテキスト形言語をもちいてもよい。また、ダイ アグラム編集表示手段の出力結果に関する編集表示形態についても同様の任意性 を有する。また、上記の局番取得手段は、所定のユーザーインターフェイスを介して 、ユーザーに局番を直接入力させる手段でもよいし、例えば診断命令などの問い合 わせコマンド等を用いて、自動的に取得する様に構成してもよい。
なお、上記の局番を含む形式の論理アドレスコードが、 SEや運用管理者に対して 認識(目視)させるための運用管理上のアドレスコードとなる。
以上の本発明の態様により、前記の課題を効果的、或いは合理的に解決すること ができる。
発明の効果
[0017] 以上の本発明の態様によって得られる効果は以下の通りである。
即ち、本発明の第 1の態様によれば、上記の定義フレーム(即ち、出力予定定義フ レームまたは参照予定定義フレーム)は各 PLC間の各通信回線にお!/、てそれぞれ 双方向にて送受信され、上記の照合処理は各 PLCにおいてそれぞれ実施されるの で、これによつて、各 PLC間における少なくとも論理的な各通信回線の状態を全回 線にわたって双方向に自動的にそれぞれテストすることができる。また、これによつて 、各相手局の送受信状態がそれぞれ正常であるか否かについても同時にテストされ 更に、この照合処理では、各 PLC間における個々の出力変数について、各対応フ レーム毎に入力条件と出力条件とがー致することがチェックされる。このため、各 PL C間で入出力すべき各出力変数の送受信が、それぞれ正しく実行される状態にある か否かを、送受信されるべき各出力変数について、全て漏れなく自動的に判定する こと力 Sでさる。
また、上記と同様の通信方式に基づいて、即ち、上記の出力予定定義フレームと同 一形式の送信データフレームを、各 PLC間においてそれぞれ送受信する通信方式 を採用することによって、通常通信実行時においても勿論、同様のブロードキャスト型 又はマルチキャスト型の通信を安全に実施することができる。
[0018] したがって、本発明の第 1の態様によれば、マスタースレーブ方式を採用する従来 の分散制御システムにおけるマスター PLCの様な、子局間の通信に関する中継機能 を奏する中継局(マスター局)を設置することなく、安全通信を容易に実現することが できる。このため、少なくとも通信制御処理に関しては、メモリーオーバーヘッドや CP Uオーバーヘッドが大きくプログラム構成が複雑となるマスター PLCを設ける必要が なくなる。或いは、ある特定の PLCに何らかのマスター機能を付与したとしても、この 第 1の態様の構成に従えば、ブロードキャスト型又はマルチキャスト型の通信方式に より、通信系におけるシステムトポロジー(ネットワーク構造)の対称性は高く維持でき るので、その PLCの通信制御処理オーバーヘッドをも効果的に軽減することができる したがって、本発明の第 1の態様によれば、安全通信を具現するための通信制御 に係わるインターロック制御機構を非常に容易かつ確実に構成することができ、これ によって、所望の PLC分散制御システムにおいて信頼性の高い安全通信を非常に 容易に実現することができる。
[0019] また、本発明の第 2の態様によれば、ユーザーは、ある 1台の PLCの分散制御シス テム上の既存プログラムを他の PLCに流用する場合に、自 PLCの出力変数(コィノレ 出力)のアドレスを修正せず、その代わりに、上記の定義情報入力手段から上記の出 力予定定義情報を入力するだけで、上記のアドレス修正手続きと等価な所望の流用 手続きを完了することができる。即ち、本発明の第 2の態様によれば、上記の様な既 存プログラムの流用作業時に、ソースプログラム上の出力変数のアドレスを修正する 代わりに、上記の定義情報入力手段から上記の出力予定定義情報を入力するだけ で、所望の第 1の記憶手段に格納すべき各出力予定定義フレームをそれぞれ全て 生成することが可能となる。
[0020] この様に、自 PLCのオブジェクトコード上の出力変数の実アドレスを修正する必要 がなくなるのは、出力変数を含んだ送信データに各 PLCが各自の PLCの局番を付 与して他の各 PLCに送信する送信手段の局番付与作用に基づいて、何れの PLC上 においても、各自の出力変数を同じ番地の記憶領域上に展開することができるため であり、また、各 PLCの CPUモジュール 20上においては、送信データに付与された 局番に基づいて、受信データ中の出力変数が、どの PLCからの出力変数であるのか を容易に区別することができるためである。
[0021] また、上記の定義情報入力手段を具現するに当たっては、例えば GUIやテキスト 入力などによって、極めて簡潔なユーザーインターフェイスを構成することができるの で、上記の所望の流用手続きは、非常に効率よく実行することができる。
したがって、本発明の第 2の態様によれば、極めて効率よぐ分散制御システム上 の既存プログラムの流用を図ることができる。
[0022] また、本発明の第 3の態様によれば、上記の定義情報抽出手段と上記の第 2のフレ ーム生成手段により、既存のソースプログラムに基づいて、上記の第 2の記憶手段上 に自動的に上記の参照予定定義フレームを生成することができる。このため、本発明 の第 3の態様によれば、極めて効率よぐ該 PLC分散制御システムにおける各 PLC 間の安全通信を実現することができる。
[0023] また、本発明の第 4または第 5の態様によれば、出力変数の定義領域のアドレスが 各 PLC間において互いに重なっている場合においても、各 PLC間においては、前 述の局番付与作用と同様の作用に基づいてそれらの各出力変数を容易に区別する こと力 Sでき、各ラダーダイアグラムは誤動作なく正確に実行することができる。このた め、例えば、同一ロジックで動作する対称構成の子局間などにおいては、それらのォ ブジェクトコードについて、出力変数の実アドレスに関する修正操作を実施しなくても 、それらのオブジェクトコードを誤動作なく正確に実行することができる。
[0024] また、これと同時に、ラダー図上などにおける各 PLCの出力変数のアドレス表示に おいては、該当する各 PLCの局番を含む形式の論理的なアドレスコード(論理的表 現)が用いられるので、それらの各出力変数のアドレスは、該当する正しい局番を含 む形式の論理的なアドレスコードによって、それぞれ分力、り易く見易い形式でラダー 図上などに表示することができる。
[0025] したがって、本発明の第 4または第 5の態様によれば、出力変数の定義領域のアド レスが各 PLC間において互いに重なっている場合においても、ラダー図上などに表 示される各出力変数のアドレス表記に対する、 SEやシステム運用管理者などの視覚 的な認識性が向上し、これによつて、当該分散制御システムの運用管理が容易とな また、出力変数の定義領域のアドレスが各 PLC間にお!/、て互いに重なって!/、る場 合においても、例えば、同一ロジックで動作する対称構成の子局間などにおいては、 それらのオブジェクトコードについて、出力変数の実アドレスに関する修正操作を実 施しなくても、それらのオブジェクトコードを誤動作なく正確に実行することができるの で、例えば、少なくとも通信制御関連の処理が同一ロジックによって動作する子局( 即ち、子局間にカスケード接続がなぐかつ、親子間で参照し合う出力変数に関する 通信関係が同一である類似構成の子局)を並列に複数設ける際などに、既存プログ ラムの再利用性を極めて高く確保することができる。
図面の簡単な説明
[0026] [図 1]実施例 1の PLC分散制御システム 1のシステム構成図
[図 2]PLC分散制御システム 1の制御形態を例示するラダーダイアグラム
[図 3A]第 1の記憶手段 TBL1のテーブル構造図
[図 3B]出力予定定義フレーム RF01のフレーム構造図
[図 4]出力予定定義画面 WD00の表示形態を例示するレイアウト図 [図 5A]第 2の記憶手段 TBL2のテーブル構造図
[図 5B]参照予定定義フレーム SF01のフレーム構造図
[図 6]参照変数テーブル生成プログラム PGaの動作を説明する説明図
[図 7]PLC分散制御システム 1のイニシャル動作を示すフローチャート
[図 8]図 7のイニシャル動作のステップ S1の動作を説明する説明図
[図 9]送受信パケットのデータ構造を例示するフレーム構造図
[図 10A]出力予定定義フレームの他の利用形態を例示するフローチャート
[図 10B]参照予定定義フレームの他の利用形態を例示するフローチャート
[図 11]ダイアグラム編集表示手段 200の構造と動作を示すプログラム構造図
発明を実施するための最良の形態
[0027] 以下、本発明を具体的な実施例に基づいて説明する。
ただし、本発明の実施形態は、以下に示す個々の実施例に限定されるものではな い。
実施例 1
[0028] 図 1に本実施例 1の PLC分散制御システム 1のシステム構成図を示す。この分散制 御システムは、アドレス Q18〜Q1Dの合計 6つの各モータを、非同期または必要に 応じて同期させつつ、かつ、安全に動作させるためのものであり、これらの各モータ は工業用の工作ロボットや加工装置などを駆動するために使用される。
この PLC分散制御システム 1は、スレーブ PLC11、 12とマスター PLC10をリングバ ス 14を用いてリング状に接続したものであり、これによつて、ブロードキャスト型の通信 ネットワークが構成されている。これらの各 PLC (10、 11、 12)はそれぞれ、 CPUモ ジュール 20と通信制御モジュール 30と I/Oモジュール 40、 60から構成されており、 これらのモジュールは、バス 21によって相互に接続されている。これらの各 PLCは、 A系統と B系統とに演算処理装置や記憶装置などの各部がそれぞれ 2重化された安 全 PLCで構成されている力 S、その各部の 2重化構成に関する詳しい解説は図 8など に譲ることとし、以下では何れもそれぞれ 1重構成に省略して説明する。
[0029] CPUモジュール 20のメモリ 22には、ラダー図言語で記述されたシーケンスプログラ ムが記憶されている。 CPUモジュール 20は、このシーケンスプログラムを CPU24に よって実行することによって、各モジュールを制御したり各モジュールと連動したりす ること力 Sできる。なお、この PLC分散制御システム 1においては、ブロードキャスト型の 安全通信が実現されるが、マスター PLC10の通信制御モジュール 30は、その CPU モジュール 20からの指令に基づいて、リングバス 14上における通信状態を制御する ための指令や信号等を送出する同期制御機能(通信トリガー生成管理機能)などをも 奏する。
[0030] 各 PLCの通信制御モジュール 30は、バスインターフェイス 32、メモリ 34、及び CP U36が具備されており、各メモリ 34にはそれぞれ、所定のパケット交換プロトコルに 従う通信プログラムが記憶されている。通信制御モジュール 30は、 CPUモジュール 2 0から受ける指令に基づいて、この通信プログラムを CPU36にて実行することにより 、リングバス 14上におけるパケットの送受信をバスインターフェイス 32を介して制御す また、各 I/Oモジュール 40には、二重化された非常停止ボタン (ESB0〜2)がそ れぞれ接続されており、その状態に基づいて非安全状態を検出することができる。
[0031] 本実施例 1の PLC分散制御システム 1では、更に、各 CPUモジュール 20のインタ 一フェイス 26にパソコン 50、 51、 52がそれぞれ個別に接続されている。これらの各 パソコン(50、 51、 52)はそれぞれ、キーボード 54、表示装置 55及びメモリ 57などが 具備されている。勿論、その他にも、マウスやプリンターや、或いは携帯可能な外部 記憶媒体に対する入出力装置などを備えてもよい。
CPUモジュール 20のメモリ 22に記憶させる上記のシーケンスプログラムとしては、 通常、これらのパソコン上でコンパイルされたものを用いるのが普通である力 既にそ の他のコンピュータ上において生成(コンパイル)されたものを、例えば上記の外部記 憶媒体などを介して導入してもよい。
[0032] 図 2に、上記の PLC分散制御システム 1の制御形態を例示する。本図 2は、各 PLC 10〜12の各 CPUモジュール 20上にて実行すべきシーケンスプログラムをラダーダ ィアグラムを用いて表したものであり、局番「00」が PLC10のステーションアドレスを、 局番「01」力 SPLC11のステーションアドレスを、局番「02」が PLC12のステーションァ ドレスをそれぞれ示して!/、る。 [0033] 図 2中の破線で囲まれた入力接点(I00〜I05)やコイル(Q18〜Q1D)は、それぞ れ図 1の各変数アドレス(I00〜I05, Q18〜Q1D)と対応しており、これらは、非常停 止ボタンやモータなどの実際に存在する物理的な入出力対象と直接 1対 1に対応す る状態変数を示している。また、破線で囲まれていないその他の状態変数(00L04, 01L08, 02L08)は、論理的に模擬されたコイルなどの状態を表す。以下、論理的 に模擬されたこれらの状態変数のことをリンクリレーを表す L型変数または単に出力 変数と呼ぶ。
図 2のラダー図上に表示されているアドレスコードにつては、各出力変数(リンクリレ 一を表す L型変数)のアドレス表記の頭 2文字は、それぞれ各局番と一致しており、 3 文字目は' L'に固定されている。また、図中の矢印は、各出力変数に対する参照関 係を示している。
[0034] そして、例えば、以上の様なラダーダイアグラムを実行可能にコード化したシーケン スプログラムによって、何れかの非常停止ボタン(ESBO, ESB1 , ESB2)が押下され た際には、当該 PLC分散制御システム 1を安全に停止させることができる。例えば、 2 重化された非常停止ボタン ESBOが押下された際には、入力接点 100または入力接 点 101の少なくとも何れか一方が OFF状態となるため、全モータ(Q18〜Q1D)が非 常停止する。また、非常停止ボタン ESB1が押下された際には、モータ Q18〜Q1B だけが非常停止する。
勿論、非常停止ボタンの代わりに、または、更に非常停止ボタンに加えて、各種の エリアセンサ(例:ライトカーテンや安全マット)などの安全入力機器を導入してもよ!/ヽ
[0035] 安全 PLCを用いて構成される本実施例 1の PLC分散制御システム 1において、こ れらの安全機構を実現する上で非常に重要となる課題の 1つに、各 PLC間における 通信の安全性を挙げることができる。即ち、図 2の矢印で示されている参照関係が常 時安全に成り立つことを保証するための通信制御に関するインターロック機構を確実 に構成することが、非常に重要となる。
以下、上記の PLC分散制御システム 1において、その様な安全通信に有用なイン ターロック機構を容易かつ確実に構成するための実現方式について説明する。 [0036] 本実施例 1では、各 PLC間においてリングバス 14を介してやり取りされる上記の出 力変数 (リンクリレーを表す L型変数)は、それを出力する各 PLC (10〜12)毎にそれ ぞれ最大 32変数まで定義できるものとする。また、 1台の PLCが入力(参照)すること のできる他の PLCの出力変数(リンクリレーを表す L型変数)についても、合計で 32 変数までとする。したがって、システム内の通信を実現するために論理的に模擬され る入力接点やコイル(出力変数)の設定可能数は何れも、各 PLCにっきそれぞれ最 大 32個までとする。
したがって、例えば図 2におけるアドレス表現に従えば、局番が「00」である PLC10 において定義することができる出力変数の論理アドレスは、 00L00〜00L1Fの 32通 りとなる。
[0037] 図 3Aは、本実施例 1における第 1の記憶手段 TBL1のテーブル構造図である。こ の第 1の記憶手段 TBL1は、各 PLC毎に設けられる手段であり、 TBL10-TBL13 の連続した 4つのフレーム格納領域から構成されて!/、る。各格納領域は何れも 4バイ ト領域からなる。そして、これらの各フレーム格納領域 TBL10〜TBL13には、例え ば、局番が 00である PLC (即ち PLC10)上においては、それぞれ 4バイトデータであ る出力予定定義フレーム RFOO, RF01 , RF02が格納される。 TBL13は予備領域 である。
[0038] 図 3Bには、出力予定定義フレーム RF01のフレーム構造図を例示する。この出力 予定定義フレーム RF01は、 PLC10 (局番 = 00)上において実行されるラダーダイ アグラム中の出力コイルを模擬する各出力変数(00L00〜00L1F)の、 PLC11 (局 番 = 01)に対する出力予定の有無をその各出力変数毎にそれぞれ定義したもので あり、合計 32ビットある該ビット列の各出力予定定義ビット RbOO〜RblF力 その出 力予定の有無を示している。即ち、この各出力予定定義ビット RbOO〜RMF力 本 発明の出力予定定義情報に相当している。
[0039] したがって、例えば、出力予定定義フレーム RF01を構成するその先頭ビットの値、 即ち出力予定定義ビット RbOOの値が 1であった場合には、出力変数 00L00は、 PL C10 (局番 = 00)力 PLC11 (局番 = 01)に対して出力(送信)される予定がある。 勿論、この予定の有無は、 PLC10 (局番 = 00)が有する CPUモジュール 20が実行 するラダーダイアグラム(シーケンスプログラム)の内容に依存する。以下、同様に、出 力予定定義フレーム RFmn (m = 0, 1 , 2 ;n = 0, 1 , 2)を定義すると、その出力予定 定義フレーム RFmnを構成するビット列は、局番 mから出力される各出力変数(OmL 00〜OmLlF)の、局番 nに対する出力予定の有無を各対応ビット毎に示す。
したがって、 n = mの時、その出力予定定義フレーム RFmnを構成する各出力予定 定義ビットの各値は何れも 0となる。
[0040] 図 4に、本実施例 1における出力予定定義画面 WDOO (定義情報入力手段)の表 示形態を例示する。この画面は、 PLC10に接続されたパソコン 50の表示装置 55に 表示されるもので、局番を指定するための前段の操作画面の操作後に、その次段の 操作画面として出力される。即ち、表示フィールド w5に表示されている局番(PLC # = 00)は、このパソコン 50が接続されて!/、る PLCの局番と一致して!/、る。
また、この出力予定定義画面 WDOOの表示フィールド wlには各出力変数の番地( ビットアドレス)が表示されており、表示フィールド w2にはそれらの出力変数の送出先 の各 PLCの局番が表示されて!/、る。
[0041] そして、この画面の中央には、(j歹 IJ :該 PLC分散制御システム 1を構成する PLC台 数) X (k行:各 PLC上に定義可能な出力変数の個数の最大値)個のチェックボックス (w3, w3' , w3" )力 マトリックス状に配列されている。チェックマーク(レ印)が指 定されていないチェックボックス w3に対応するビットの値は 0と定義される。例えば、 出力変数の番地が OOL1Eで、その送信先の PLC局番が 2である本出力予定定義画 面 WDOO上のチェックボックスに対応する対応ビットは、第 1の記憶手段 TBL1上に 格納される出力予定定義フレーム RF02中の出力予定定義ビット RblEであるので、 この出力予定定義ビット RblEの値は 0 (:出力予定無し)と定義される。
[0042] 同様にして、チェックマーク(レ印)が指定されているチェックボックス w3' に対応す るビットの値は 1と定義される。例えば、出力変数の番地(ビットアドレス)が 00L04で 、その送信先の PLC局番が 1である本出力予定定義画面 WDOO上のチェックボック スに対応する対応ビットは、第 1の記憶手段 TBL1上に格納される出力予定定義フレ ーム RF01中の出力予定定義ビット Rb04であるので、この出力予定定義ビット Rb04 の値は 1 (:出力予定有り)と定義される。 また、自 PLCが出力する出力変数 (リンクリレーを表す L型変数)の自 PLC自身に 対する送出は一切行われないので、一番左側の列にある各チェックボックス w3〃 に 対する指定 (レ印の入力操作)はできない。
以上の各チェックボックスに対する指定が完了した時点で OKボタン w4をクリックす ると、その操作を契機(トリガー)として、上記の出力予定定義画面 WD00に対するュ 一ザの操作にしたがって正しく定義された各出力予定定義フレーム力 S、まとめてパソ コン 50より PLC10に転送されて、図 3Aの第 1の記憶手段 TBL1上にそれぞれ格納 される。
[0043] 以下、これらの出力予定定義フレームと照合されるべき、本発明の参照予定定義フ レームのフレーム構造とその生成方式につ!/、て説明する。
図 5Aは、本実施例 1における第 2の記憶手段 TBL2のテーブル構造図である。こ の第 2の記憶手段 TBL2は、各 PLC毎に設けられる手段であり、 TBL20—TBL23 の連続した 4つのフレーム格納領域から構成されて!/、る。各格納領域は何れも 4バイ ト領域からなる。そして、これらの各フレーム格納領域 TBL20〜TBL23には、例え ば、局番が 00である PLC (即ち PLC10)上においては、それぞれ 4バイトデータであ る参照予定定義フレーム SF00, SF01 , SF02力 S格納される。 TBL23は予備領域で ある。
[0044] 図 5Bには、参照予定定義フレーム SF01のフレーム構造図を例示する。この参照 予定定義フレーム SF01は、 PLC11 (局番 = 01)上において実行されるラダーダイ アグラム中の出力コイルを模擬する各出力変数(01L00〜01L1F)に対する、 PLC 10 (局番 = 00)上における参照予定の有無を各出力変数毎にそれぞれ定義したも のであり、合計 32ビットある該ビット列の各参照予定定義ビット Sb00〜SblF力 S、そ の参照予定の有無を示している。即ち、この各参照予定定義ビット Sb00〜SblFが 、本発明の参照予定定義情報に相当している。
[0045] したがって、例えば、参照予定定義フレーム SF01を構成するその先頭ビットの値、 即ち参照予定定義ビット SbOOの値が 1であった場合には、出力変数 01L00は、 PL C10 (局番 = 00)上において参照(受信)される予定がある。勿論、この予定の有無 は、 PLC10 (局番 = 00)が有する CPUモジュール 20が実行するラダーダイアグラム (シーケンスプログラム)の内容に依存する。以下、同様に、参照予定定義フレーム S Fmn (m = 0, 1 , 2 ;n = 0, 1 , 2)を定義すると、その参照予定定義フレーム SFmnを 構成するビット列は、局番 nから出力される各出力変数(0nL00〜0nLlF)の、局番 mにおける参照予定の有無を各対応ビット毎に示す。
[0046] 以下、図 6を用いて、参照変数テーブル生成プログラム PGaの動作について説明 する。例えば、局番「00」の PLC上にて実行される本図中のラダーダイアグラム等の 各個々のソースコード上においては、出力変数(リンクリレーを表す L型変数)のアド レスを論理的な形式のアドレスで、即ち「yl y2 Lzl z2 」なる形式の論理アドレス で表す。ただし、ここで、 yl y2 はその PLCの局番で、 zl z2 が出力変数定義領
[0047] そして、これらのソースコードをこの参照変数テーブル生成プログラム PGaに入力 すると、参照変数テーブル TBaが生成されて出力される。この参照変数テーブル TB aは、上記の様なソースコード中において論理的に定義 (模擬)された入力接点にお いて参照される出力変数を列挙して登録したものであり、 2バイト情報を連続的に並 ベた、該 2バイト情報の集合体から構成されている。即ち、その各 2バイト情報の下位 バイトは、図 6のラダーダイアグラムとの対応からも分力、る様に、その入力接点にて参 照される出力変数を出力する PLCの局番を表している。また、上位バイトは、その出
[0048] この様な参照変数テーブル生成プログラム PGaは、コンパイラのオプションまたは 拡張機能などとして用意してもよいし、単独のツールとして用意してもよい。ノ ソコン 5 0よりこの参照変数テーブル TBaを PLC10の CPUモジュール 20上へ転送して、該 データを CPUモジュール 20上で変換処理することによって、例えば、局番が 00であ る PLC (即ち PLC10)上においては、各参照予定定義フレーム SF00, SF01 , SF0 2が生成されて、上記の第 2の記憶手段に格納される。他の PLCについても勿論同 様にして、第 2の記憶手段上に各参照予定定義フレームが生成される。
[0049] 本実施例 1の安全通信に係わる初期処理 (イニシャル動作)について、以下、図 7、 図 8を用いて説明する。図 7は、当該 PLC分散制御システム 1全体のイニシャル動作 を示すフローチャートである。 この制御処理手順では、まずステップ S1において、上記の様な定義フレーム生成 処理を各 PLC毎に実行することにより、各 PLC上における第 1の記憶手段及び第 2 の記憶手段に、それぞれ各出力予定定義フレーム及び各参照予定定義フレームを 生成する。
図 8に、そのステップ S1の動作を図示する。メモリ 24を有する図 1の各 CPUモジュ 一ノレ 20は、実際には図 8に示す様に、 A系統と B系統の 2系統の処理系に並列 2重 化されており、各 PLC上における上記の第 1の記憶手段及び第 2の記憶手段は、勿 論、各 CPU20上の A系統と B系統の各マイクロプロセッサ(MP— A, MP— B)の上 に、 2重化されて生成される。
したがって、以下に示す安全通信に係わるイニシャル動作についても、勿論、それ ぞれ A系統と B系統の各処理系で互いに並列に実行される力、以下ではその 1系統 の処理についてのみ、図 8のフローチャートに沿って説明する。
[0050] 次のステップ S2は、局番 00にて実行すべき処理を示しており、ここでは、出力予定 定義フレーム RF01を局番 01の PLCに、出力予定定義フレーム RF02を局番 02の P LCにそれぞれ送出する。
この時送出されるパケットのデータ構造 (フレーム構成)を図 9に例示する。このパケ ットは、上記の出力予定定義フレーム RF01 (4バイト)を情報部 Iの一部として送受信 するためのものであり、一般的なパケット交換プロトコルに準拠している。ここでは、特 に、送信先アドレス(PLC局番 DA)や送信元アドレス(PLC局番 SA)が各パケット毎 に付与される点に特徴がある。
[0051] そして、送信元の局番を送信データに付与するこの様な手段が、本発明における 局番付与手段に相当する。
なお、フレーム 'タイプ FT(2バイト)には、情報部 Iを構成しているデータの種別コー ド(例:コマンドタイプなど)や、当該フレームのデータ構造等に係わる制御ビットなど が含まれる。また、情報部 Iには、通信の同期制御や異常連絡などに可用な制御情 報などを含めることができる。
[0052] 図 8のリングバス 14は、バックアップ用の光ファイバケーブルと通常通信時の光ファ ィバケーブルとに 2重化されており、ここでの通常通信時の安全通信に係わる 2重化 は、パケットレベルにて多重並列化される。即ち、各通信制御モジュール 30を構成す る各マイクロプロセッサ(MP— A, MP— B)のアドレスは、それぞれ互いに異なり、 A 系統の通信処理と B系統の通信処理とが、常時 1ペアの組を構成しつつ実行される。 この時、例えば先に MP— Aがデータ aを送信すると、次に MP— Bがそのデータ aの 各ビットをそれぞれ反転したデータ bを送信する。 (ただし、テストビット (TEST)は反 転させない。 )
[0053] 次のステップ S3は、その後局番 01及び局番 02の各 PLCの CPUモジュール 20に て実行すべき処理を示している。即ち、局番 01の PLCの CPUモジュール 20では、 局番 00から自局宛に送信された出力予定定義フレーム RF01の内容を、 自 PLCの 第 2の記憶手段上に格納されている参照予定定義フレーム SF01の内容と各ビット対 応に照合する。また、局番 02の PLCの CPUモジュール 20では、局番 00から自局宛 に送信された出力予定定義フレーム RF02の内容を、自 PLCの第 2の記憶手段上に 格納されている参照予定定義フレーム SF02の内容と各ビット対応に照合する。
[0054] 次のステップ S4では、上記の両照合処理にお!/、て、不一致ビットが存在して!/、たか 否かを判定して、 1つでも不一致ビットが存在していた場合にはステップ S 12へ、そう でなければステップ S 5へ処理を移す。
[0055] ステップ S5〜ステップ S7の各ステップは、上記の各 PLCの役割をサイクリックにず らして相互に置き替えることによって、上記のステップ S2〜ステップ S4の各ステップと 同様の処理を、互いに立場を替えて実行するものであり、その照合の結果、不一致 ビットが存在しない場合には、次のステップ S8へ処理を移す。即ち、これらの照合処 理は、 PLC分散制御システム 1内において、回転対称的に PLC台数分繰り返してそ れぞれ実行する。
[0056] したがって、例えば、ステップ S8〜ステップ S10の各ステップは、上記の各 PLCの 役割をサイクリックにずらして相互に置き替えることによって、上記のステップ S5〜ス テツプ S7の各ステップと同様に、それらの各処理を、互いに立場を替えて実行するも のであり、その照合の結果、不一致ビットが存在しない場合には、次のステップ S 11 へ処理を移す。
[0057] ステップ S11では、通常通信を開始するための処理、即ち開始指令の出力処理を 行う。他方、ステップ S12では、通常通信を禁止するための処理、即ち禁止指令の出 力処理を行う。
[0058] 以上の様な構成に従えば、上記の出力予定定義フレーム RFnmは各 PLC間の各 通信回線においてそれぞれ双方向にて送受信され、上記の照合処理は各 PLCにお いてそれぞれ実施されるので、これによつて、各 PLC間における A系統及び B系統の 各パケット回線の状態を全回線にわたって双方向に自動的にそれぞれテストすること 力 Sできる。また、これによつて、各相手局の送受信状態がそれぞれ正常であるか否か につ!/ヽても同時にテストされる。
更に、上記の照合処理では、各 PLC間における個々の出力変数について、各対 応フレーム毎に入力条件と出力条件とがー致すること(出力予定定義フレーム RFn m =参照予定定義フレーム SFnm)がチェックされる。このため、各 PLC間で入出力 すべき各出力変数の送受信が、それぞれ正しく実行される状態にあるか否かを、送 受信されるべき各出力変数について、全て漏れなく自動的に判定することができる。 したがって、通常通信時には、出力側と参照側との参照関係の定義の不整合によ つて、シーケンスプログラムに誤動作が生じる恐れがなくなる。
[0059] 図 10Aに、上記の出力予定定義フレーム RFmnの通常通信時の利用形態を例示 する。本図 10Aの送信処理は、ブロードキャスト型の通信を実現するためのものであ り、各 PLCからその出力変数を送出する通常通信実行時に毎回行われるものである 。ただし、ここで、図中の出力変数フレーム OUTmは、局番 mの PCL上で定義され た出力変数 0mL00〜0mLlFに関するその出力時の(即ち、演算結果としての) 32 ビットから成る 4バイトデータを表して!/、る。
また、定数!¾¾1 (例:1¾^0 = 01^(1¾^01 , RF02) )は、局番 mの PCLの CPUモジュ ール 20上の第 1の記憶手段に登録されている全てのエントリー(即ち、各出力変数 定義フレーム RFmi (i = 0〜全 PLC台数— 1) )に関する、各対応ビット毎の累計的な 全論理和の結果ビットから成る 4バイトデータである。
[0060] そして、この送信処理では、まず最初に、ステップ S 21において、 4バイトの作業領 域 A1に、出力変数フレーム OUTmと上記定数 RFmとの各対応ビット毎の論理積演 算 (AND演算)の演算結果を格納する。次にステップ S22では、その演算結果 (A1) と出力変数フレーム OUTmの値とを比較し、両者の各ビット値が全て一致していれ ばステップ S24へ、そうでなければステップ S25に処理を移す。
そして、次のステップ S24では、出力変数フレーム OUTmを、図 9の情報部 I内の 所定の領域にセットし、その宛て先として全 PLCを指定すること(全局指定)によって 、その送信パケットを他の各 PLCに送信する。一方、ステップ S25では、当該 PLC分 散制御システム 1を所定の非常停止処理プログラムに従って安全に停止させる。
[0061] 以上の様な送信処理を行えば、ステップ S21 , S22, S25の作用によって、送信側 の PLCの CPUモジュール 20を制御するシーケンスプログラム中に、例えば本来は 更新されないはずの出力変数を余計に ON設定してしまう様なプログラム不良が万 一不本意ながら存在してレ、た場合にも、システムを安全に停止させることができる。 或いは、以上の様な送信処理を行えば、受信側の PLCの CPUモジュール 20を制 御するシーケンスプログラムとして、本来とは何ら関係のない別のプログラムが誤って ダウンロードされていて、かつ、この誤操作に対して更に丁度迎合する様な誤った出 力予定定義の設定操作が、図 4の出力予定定義画面から行われていた場合にも、シ ステムを安全に停止させることができる。
[0062] 他方、受信側の各 PLCにおける参照予定定義フレームの他の利用形態を図 10B に例示する。各 PLCの受信処理においては、まず最初にステップ S30において、自 局(局番 n)宛てのパケットをリングバス 14から受け取る。勿論、宛て先が全局指定の パケットも自局宛てのパケットである。
次に、ステップ S32では、そのパケットの情報部 1 (図 9)内にある送信元(局番 m;m ≠n)の出力変数フレーム OUTm( : 32ビット情報)を取り出す。次に、ステップ S34で は、「OUTmn= AND (OUTm, SFmn)」なる論理積演算処理、即ち出力変数フレ ーム OUTmに対する自局(:受信局)向けのマスキング処理を行!/、、自局が参照す べき出力変数だけを選別する。そして、自局にて参照すべき参照ビット (各出力変数 )だけが選別された出力変数フレーム OUTmnを、ステップ S36にて、自局の各入力 接点(即ち参照処理プログラム)が参照可能な所定の領域上にコピーする。
[0063] 例えば、以上の様な送受信処理を行えば、通常通信時に送信側の PLCでは、上 記の「全局指定」によって、 自局の出力変数フレーム OUTmを 1回だけネットワーク 回線 (リングバス 14)へ送出するだけで、その回の出力変数に関する必要な送信処 理を完了すること力できる。即ち、所望のブロードキャスト型の通信により、高効率な 送信処理を実施することができる。また、この様な安全通信方式に従えば、出力変数 に関する送信側と受信側との間の参照関係の不整合が生じな!/、ので、シーケンスプ ログラムを誤動作なく安全に実行させることができる。
[0064] なお、上記のステップ S34の代わりに、上記のステップ S24の前段にステップ S34と 同等の処理、即ち、「OUTmn=AND (OUTm, RFmn)」なる処理を設け、かつ、 上記のステップ S24において、各送信先局番のアドレス指定、即ち受信側局番 nの 指定をそれぞれ行う様にすれば、これによつて、上記のブロードキャスト型の通信の 代わりにマルチキャスト型の通信を実現することもできる。即ち、本実施例 1の照合処 理方式に従えば、マルチキャスト型の安全通信を実施する際にも、出力変数に関す る送信側と受信側との間の参照関係の不整合を未然に排除しつつ、シーケンスプロ グラムを正確に動作させることができる。
実施例 2
[0065] 図 11に、本実施例 2のダイアグラム編集表示手段 200の構造と動作を示す。このダ ィアグラム編集表示手段 200は、オブジェクトコード DOに基づいてその動作を表すラ ダーダイアグラム D2を編集し、その編集結果を目視可能な所定の出力媒体(画面ま たは紙面)上に表示するためのものであり、ダイアグラム編集プログラム 210と局番入 力手段 220とダイアグラム表示手段 230とを有している。例えば、局番入力手段 220 は、先の実施例 1の図 1のキーボード 54などから構成することができ、これが本発明 の局番取得手段に相当する。即ち、例えば図 1のパソコン 50、 51、 52などを各 PLC 毎に接続することによって、そのパソコン上に当該ダイアグラム編集表示手段 200を 生成すること力 Sできる。また、ダイアグラム表示手段 230には、同図 1の表示装置 55 などを用いてもょレ、し、その代わりにプリンターなどを用いてもょレ、。
[0066] 図 11の中央のラダーダイアグラム D1は、ダイアグラム編集プログラム 210のラダー ダイアグラム編集処理における中間結果を示している。このラダーダイアグラム D1中 の入力接点及び出力変数の各実アドレス(LOxl x2 , L000)には、オブジェクトコ ード D0上における値がそのまま示されている。この様な中間結果 (ラダーダイアグラ ム Dl)は、従来技術に基づいて編集することが可能である力 このダイアグラム編集 表示手段 200には、更に、ラダーダイアグラムが実行される各 PLCの局番を入力す るための局番入力手段 220と、その入力された局番に基づいて、各出力変数の実ァ ドレスを局番が含まれた論理的なアドレスコードに書き直す表示アドレスコード編集 手段 211とが具備されている。このため、例えば、出力変数 L000などのアドレス表示 コードは、以下の様にして編集されてから、ダイアグラム表示手段 230が出力するラ ダーダイアグラム D2中に表示される。
[0067] 本実施例 2が適用される PLC分散制御システムにおいては、出力変数 (リンクリレー を表す L型変数)を各 PLC毎にそれぞれ最大 32変数まで定義することができ、かつ 、出力変数を含んだ送信データに各 PLCが各自の PLCの局番を付与して他の各 P LCに送信する送信手段(図 1の通信制御モジュール 30)を有しているため、何れの PLCにおいてもその出力変数の当該 PLC上における実アドレス adは、個々のォブ ジェタトコード DO上において、同じ範囲内の実アドレス(L000≤ad≤L01F)として 展開される。即ち、各 PLCの CPUモジュール 20上においては、それぞれ互いに、出 力変数の格納領域が全く重なっている。これは、送信データに付与された局番に基 づいて、各 PLCの CPUモジュール 20上においては、受信されたそれらの出力変数 1S どの PLCからの出力変数であるの力、を容易に区別することができるためである。
[0068] このため、表示アドレスコード編集手段 211は、この範囲内(L000〜L01F)にその 実アドレス adを有する変数 (即ち、上記の出力変数)に対してのみ作用する。
より具体的には、ダイアグラム編集プログラム 210の実行中に、即ちダイアグラム編 集表示手段 200においてラダーダイアグラム D1を編集している途中で、実アドレスが 上記の範囲内にある出力変数 (リンクリレーを表す L型変数)が検出された時点で、所 定の編集サブルーチン (即ち、表示アドレスコード編集手段 211)を毎回呼び出すこ とによって、所望のアドレスコードの変更処理(LOxl x2 →nnLxl x2 )を当該 P LC上における各出力変数に対してそれぞれ実施することができる。ただし、ここで nn は入力された局番で、図 11では、局番入力手段 220から入力される局番' 01 'に相 当する。
[0069] 他方、論理的に定義 (模擬)された入力接点で参照される各出力変数のアドレスに 関する「L0xl x2 →yl y2 Lzl z2 」なる編集処理、即ち、「xl x2 →(yl y 2 , zl z2 )」なるコード変換処理は、オブジェクトコード DOを生成する際に用いら れた所定のコンパイル規則に従って、その逆変換を行うことによって実行することが でき、これによつて、ユーザが認識するべき管理用の論理アドレスコードと、オブジェ タトコード DO上における各入力接点の実アドレスとが、それぞれ正しく対応する。
[0070] (本実施例 2の効果 1)
既存プログラム(オブジェクトコード DO)に何ら修正を加えることなぐこのプログラム の複製(コピープログラム)を複数台の PLC間で、同時に使用することができ、これに よって、既存プログラムの流用率、即ちオブジェクトプログラムの生産性が効果的に 向上する。この様な、既存プログラムの流用は、例えば図 2の局番「02」にて実行され るラダープログラム(オブジェクトプログラム)をそのまま同図 2の局番「01」に適用しよ うとする際などに有効となる。また、同図 2の局番「01」や局番「02」と同様のスレーブ PLCが多数並列に配備される PLC分散制御システムにおいては、更に同様の作用 •効果を多数回にわたって同様に受託することができる。
[0071] (本実施例 2の効果 2)
局番入力手段 220 (局番取得手段)からの入力情報 (局番)に基づいて、オブジェ タトコード DO上では区別がつかない同一形式の出力変数(L000〜L01F)に対して 、そのアドレスの先頭に局番(ステーション ·アドレス)を付与することができる。したが つて、ラダーダイアグラム D2上においては、各 PLCの出力変数を区別して正確に識 另リすること力 Sでさ、その識另あ容易となる。
[0072] (本実施例 2の効果 3)
ラダーダイアグラム D2上における PLC # 01の出力変数のアドレス表示において、 該 PLCの局番「01」を含む形式の論理的なアドレスコード、即ち、図 6のところでも言 及したコーディング形式の論理アドレス(01L00, yl y2 Lzl z2 )が用いられ、こ れによって、ラダーダイアグラム D2上に表示される出力変数のアドレス表記に対する SEやシステム運用管理者などの視覚的な認識性が向上するため、当該分散制御シ ステムの運用管理が容易となる。
[0073] (実施例 1、 2の相乗効果) したがって、このダイアグラム編集表示手段 200を実施例 1の PLC分散制御システ ム 1に適用すれば、以上の各実施例に示したそれぞれの作用 ·効果に係わる更なる 相乗効果に基づいて、通信回線のテストなどに係わる運用効率を効果的に向上させ ること力 Sできると共に、信頼性の高い安全通信を実現することができ、更には、既存プ ログラムの再利用性を効果的に向上させると同時に、該 PLC分散制御システムを構 成する各 PLCが出力する個々の出力変数の識別を、該システムの SEや運用管理者 に対して容易にすること力 Sできる。
[0074] 〔その他の変形例〕
本発明の実施形態は、上記の形態に限定されるものではなぐその他にも以下に 例示される様な変形を行っても良い。この様な変形や応用によっても、本発明の作用 に基づいて本発明の効果を得ることができる。
(変形例 1)
例えば、上記の実施例 1では、安全通信のイニシャル動作処理において、対応関 係にある各予定定義フレームを照合するために、出力予定定義フレームの方を相手 方の PLCに送信している力 逆に、参照予定定義フレームの方を相手方の各 PLC に送信して、同様の照合処理を行ってもよい。この様な送受信を行っても、同様の作 用 ·¾]果を得ること力できる。
[0075] (変形例 2)
また、本発明の PLC分散制御システムを構成するために相互に接続する PLCの台 数は任意でよぐまた、各 PLCを構成するために接続する I/Oモジュールの接続台 数も任意でよい。 PLC分散制御システムの通信ネットワークについては、リングバス の代わりに線形バスを用いてそれを構成してもよレ、。
[0076] (変形例 3)
また、上記の実施例 1においては、 2重化されたリングバス 14の片方の通信配線を 異常時のバックアップ用とし、平常時には用いない構成とした力 ネットワーク回線の 2重化については、パケット通信に基づく論理的な通信回線レベルでの 2重化形態 に必ずしも限定する必要はなぐ物理的な通信配線レベルで通信の 2重化を図って あよい。 [0077] (変形例 4)
また、実施例 2の図 11のラダーダイアグラム D2におけるダイヤグラムの表現形態に ついては、テキスト形式の表示方式を採用してもよい。
また、実施例 1の図 4の出力予定定義形態についても、チェックボックス 'マトリックス などによる GUIを用いる代わりに、テキスト形式の入力方式を採用してもよい。
[0078] (変形例 5)
また、実施例 2の図 11の局番入力手段 220は、ユーザーに局番を入力させるため の手段であつたが、本発明の局番取得手段を構成するに当たっては、診断命令や 問!/、合わせコマンドなどを用いて、自動的に局番が取得される様にしてもよ!/、。 産業上の利用可能性
[0079] 本発明は、安全 PLCを用いた PLC分散制御システムを構成する際に、非常に有用 なものであるが、本発明の PLC分散制御システムを構成する各 PLCは、必ずしも安 全 PLCである必要はない。即ち、ラダー回路を模擬するシーケンスプログラムを有す る任意の PLCを用いて、本発明の PLC分散制御システムを構成することができる。

Claims

請求の範囲
[1] 通信手段を有する PLCを複数台接続することによって構成されるブロードキャスト 型又はマルチキャスト型の PLC分散制御システムにおいて、各前記 PLCは、 自 PLC上において実行されるラダーダイアグラム中の出力コイルを模擬する各出 力変数の他の前記 PLCに対する出力予定の有無を、その各出力変数毎に定義する 出力予定定義情報からなる出力予定定義フレームを他の各前記 PLC対応にそれぞ れ記憶する第 1の記憶手段と、
他の前記 PLC上において実行されるラダーダイアグラム中の出力コイルを模擬す る各出力変数に対する参照予定の有無を、その各出力変数毎に定義する参照予定 定義情報からなる参照予定定義フレームを他の各前記 PLC対応にそれぞれ記憶す る第 2の記憶手段と、
前記出力予定定義フレームまたは前記参照予定定義フレームを他の各前記 PLC に送信する送信手段と、
前記出力予定定義フレームまたは前記参照予定定義フレームを他の各前記 PLC から受信する受信手段と、
前記出力予定定義フレームと前記参照予定定義フレームとを各対応フレーム毎に それぞれ照合する照合手段と、
前記照合手段による照合結果に基づ!/、て、前記 PLC分散制御システムにおける通 常通信の開始の是非を判定する通常通信開始判定手段と
を有する
ことを特徴とする PLC分散制御システム。
[2] 前記送信手段は、
送信すべき目的の送信データに前記自 PLCの局番を付与する局番付与手段を有 し、
各前記 PLCは、
前記出力予定定義情報の入力を受け付ける定義情報入力手段と、
前記定義情報入力手段によって入力された入力情報に基づいて、前記出力予定 定義フレームを前記第 1の記憶手段上にそれぞれ生成する第 1のフレーム生成手段 と
を有する
ことを特徴とする請求項 1に記載の PLC分散制御システム。
[3] 各前記 PLCは、
自 PLC上において実行される前記ラダーダイアグラムのソースプログラム中から前 記参照予定定義情報を抽出する定義情報抽出手段と、
前記定義情報抽出手段によって抽出された抽出情報に基づいて、前記参照予定 定義フレームを前記第 2の記憶手段上にそれぞれ生成する第 2のフレーム生成手段 と
を有する
ことを特徴とする請求項 1または請求項 2に記載の PLC分散制御システム。
[4] 通信手段を有する PLCを複数台接続することによって構成される PLC分散制御シ ステムにおいて、
送信すべき目的の送信データに自 PLCの局番を付与して他の各前記 PLCに送信 する送信手段を有し、
各前記 PLCは、
自 PLC上で実行されるラダーダイアグラムの動作内容を所定の画面上または紙面 上に表示するダイアグラム編集表示手段を有し、
前記ダイアグラム編集表示手段は、
前記 PLC分散制御システムにおける前記自 PLCの局番を取得する局番取得手段 と、
前記ラダーダイアグラムを具現するオブジェクトプログラム上において出力コイルを 模擬する各出力変数のアドレスコードを、取得された前記局番を含む形式の論理的 なアドレスコードに書き換える表示アドレスコード編集手段と
を有する
ことを特徴とする PLC分散制御システム。
[5] 前記送信手段は、
送信すべき目的の送信データに前記自 PLCの局番を付与する局番付与手段を有 し、
各前記 PLCは、
自 PLC上で実行されるラダーダイアグラムの動作内容を所定の画面上または紙面 上に表示するダイアグラム編集表示手段を有し、
前記ダイアグラム編集表示手段は、
前記 PLC分散制御システムにおける前記自 PLCの局番を取得する局番取得手段 と、
前記ラダーダイアグラムを具現するオブジェクトプログラム上において出力コイルを 模擬する各出力変数のアドレスコードを、取得された前記局番を含む形式の論理的 なアドレスコードに書き換える表示アドレスコード編集手段と
を有する
ことを特徴とする請求項 1乃至請求項 3の何れ力、 1項に記載の PLC分散制御システ ム。
PCT/JP2007/074164 2006-12-18 2007-12-14 Plc分散制御システム WO2008075631A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US12/519,881 US8321037B2 (en) 2006-12-18 2007-12-14 PLC distributed control system
EP07859838.0A EP2098927B1 (en) 2006-12-18 2007-12-14 Plc dispersion control system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006339822A JP4952228B2 (ja) 2006-12-18 2006-12-18 Plc分散制御システム
JP2006-339822 2006-12-18

Publications (1)

Publication Number Publication Date
WO2008075631A1 true WO2008075631A1 (ja) 2008-06-26

Family

ID=39536262

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/074164 WO2008075631A1 (ja) 2006-12-18 2007-12-14 Plc分散制御システム

Country Status (4)

Country Link
US (1) US8321037B2 (ja)
EP (1) EP2098927B1 (ja)
JP (1) JP4952228B2 (ja)
WO (1) WO2008075631A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021527245A (ja) * 2018-06-04 2021-10-11 ノードソン コーポレーションNordson Corporation 液体吐出システム通信のシステム及び方法
CN114740796A (zh) * 2022-04-26 2022-07-12 傲拓科技股份有限公司 一种具有分布式处理器的大型plc系统
US11853026B2 (en) 2018-05-07 2023-12-26 Lam Research Corporation Configurable distributed-interlock-system
TWI835791B (zh) 2018-05-07 2024-03-21 美商蘭姆研究公司 可配置分散式互鎖系統

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5339071B2 (ja) * 2009-04-02 2013-11-13 横河電機株式会社 制御装置及び通信管理方法
JP4902823B1 (ja) * 2011-07-28 2012-03-21 三菱電機株式会社 通信装置
KR101240703B1 (ko) * 2011-08-17 2013-03-11 엘에스산전 주식회사 Plc 네트워크 증설방법 및 이를 이용한 네트워크 증설시스템
US20130065207A1 (en) * 2011-09-13 2013-03-14 Matthew Alan Russell Computer program products and machines for emulating a machine and presenting training scenarios to a user
US8660830B2 (en) * 2011-09-13 2014-02-25 The Procter & Gamble Company Machine emulator methods
US8670965B2 (en) * 2011-09-13 2014-03-11 The Procter & Gamble Company Machine emulator products
US8660829B2 (en) * 2011-09-13 2014-02-25 The Procter & Gamble Company Machine emulator machines
JP6375666B2 (ja) 2014-03-31 2018-08-22 株式会社ジェイテクト Plcおよびplc用のプログラミングツール
JP6381268B2 (ja) * 2014-04-17 2018-08-29 キヤノン株式会社 ロボット制御システム及びロボットの制御方法
US11627014B2 (en) 2019-08-06 2023-04-11 Rosemount Aerospace Inc. Distributed electric air data module system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04261241A (ja) * 1991-01-28 1992-09-17 Mitsubishi Electric Corp 通信ネットワーク装置
JP2002358106A (ja) 2001-05-31 2002-12-13 Omron Corp 安全コントローラ
JP2006302216A (ja) * 2005-04-25 2006-11-02 Keyence Corp 表示装置、画面データ作成装置及び画面表示システム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3005379B2 (ja) * 1993-02-26 2000-01-31 トヨタ自動車株式会社 プログラマブルコントローラ間通信システム
JP3317156B2 (ja) * 1996-09-18 2002-08-26 三菱電機株式会社 リモートplc装置を備えた数値制御装置
WO2001027701A1 (fr) 1999-10-15 2001-04-19 Omron Corporation Systeme de reseau, procede de commande, dispositif de commande et multiprocesseur
JP4261241B2 (ja) 2003-04-11 2009-04-30 株式会社コガネイ 加圧装置
JP4461485B2 (ja) 2005-04-05 2010-05-12 株式会社ジェイテクト 分散制御装置
JP4722613B2 (ja) * 2005-08-02 2011-07-13 株式会社ジェイテクト 分散制御システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04261241A (ja) * 1991-01-28 1992-09-17 Mitsubishi Electric Corp 通信ネットワーク装置
JP2002358106A (ja) 2001-05-31 2002-12-13 Omron Corp 安全コントローラ
JP2006302216A (ja) * 2005-04-25 2006-11-02 Keyence Corp 表示装置、画面データ作成装置及び画面表示システム

Non-Patent Citations (1)

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

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11853026B2 (en) 2018-05-07 2023-12-26 Lam Research Corporation Configurable distributed-interlock-system
TWI835791B (zh) 2018-05-07 2024-03-21 美商蘭姆研究公司 可配置分散式互鎖系統
JP2021527245A (ja) * 2018-06-04 2021-10-11 ノードソン コーポレーションNordson Corporation 液体吐出システム通信のシステム及び方法
US11880185B2 (en) 2018-06-04 2024-01-23 Nordson Corporation Systems and methods for liquid dispensing system communications
US11996301B2 (en) 2020-04-14 2024-05-28 Lam Research Corporation Modular-component system for gas delivery
CN114740796A (zh) * 2022-04-26 2022-07-12 傲拓科技股份有限公司 一种具有分布式处理器的大型plc系统
CN114740796B (zh) * 2022-04-26 2023-09-12 傲拓科技股份有限公司 一种具有分布式处理器的大型plc系统

Also Published As

Publication number Publication date
EP2098927A1 (en) 2009-09-09
US20100057220A1 (en) 2010-03-04
EP2098927A4 (en) 2011-08-31
JP2008152532A (ja) 2008-07-03
US8321037B2 (en) 2012-11-27
EP2098927B1 (en) 2014-02-12
JP4952228B2 (ja) 2012-06-13

Similar Documents

Publication Publication Date Title
JP4952228B2 (ja) Plc分散制御システム
US9596124B2 (en) Assistance device of network system
JP5584584B2 (ja) 安全制御装置
US20140122631A1 (en) Network system, master device, and method for controlling network system
US20110238188A1 (en) Engineering tool
JP6375666B2 (ja) Plcおよびplc用のプログラミングツール
US20150088286A1 (en) Method and Apparatus for Automatically Creating an Executable Safety Function for a Device
JP4962725B2 (ja) マルチplc・分散制御システムにおけるツール装置
US9276762B2 (en) Method for allocating subscriber addresses to bus subscribers of a bus-based control system
CN102809948A (zh) 用于块实例化的系统和方法
JP5062426B2 (ja) 安全機器並びに安全条件設定支援システム
JP4656335B2 (ja) 安全デバイスの設定ファイル作成支援装置
CN115004118A (zh) 用于配置和参数化现场总线用户的方法和工程系统
JP5725974B2 (ja) 受配電監視制御システム
TW201444328A (zh) 可程式顯示器
WO2017049124A1 (en) Distributed networking system and method
JP5894553B2 (ja) 制御システム、回線接続診断方法及びプログラム
JP5212509B2 (ja) ネットワークシステムにおけるアドレス設定方法
EP3952222A1 (en) Network management device, management method, management program, and recording medium
JP6484015B2 (ja) プログラマブル・ロジック・コントローラおよびその制御方法
JP2020087328A (ja) プラント制御装置
Sollfrank et al. Integration of safety aspects in modeling of Networked Control Systems
Dehof et al. An approach for modelling communication networks in industrial control systems
JP2009020716A (ja) ツール装置及びメッセージ送信プログラムの作成方法
JP6547020B2 (ja) Ipアドレス付与のない隔離運転での仮想コンポーネントによる機械の試運転

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: 07859838

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2007859838

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 12519881

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE