WO2015166953A1 - 設計支援装置、設計支援方法およびプログラム - Google Patents

設計支援装置、設計支援方法およびプログラム Download PDF

Info

Publication number
WO2015166953A1
WO2015166953A1 PCT/JP2015/062856 JP2015062856W WO2015166953A1 WO 2015166953 A1 WO2015166953 A1 WO 2015166953A1 JP 2015062856 W JP2015062856 W JP 2015062856W WO 2015166953 A1 WO2015166953 A1 WO 2015166953A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
information
data
slave
slave unit
Prior art date
Application number
PCT/JP2015/062856
Other languages
English (en)
French (fr)
Inventor
真人 岩井
貴雅 植田
成憲 澤田
寛仁 水本
敏克 中村
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Priority to EP15786701.1A priority Critical patent/EP3119041B1/en
Priority to US15/129,861 priority patent/US20170170983A1/en
Priority to CN201580017399.7A priority patent/CN106165350B/zh
Priority to JP2016516392A priority patent/JP6369539B2/ja
Publication of WO2015166953A1 publication Critical patent/WO2015166953A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/437Ring fault isolation or reconfiguration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/4026Bus for use in automation systems

Definitions

  • This application discloses a design support apparatus, a design support method, and a program.
  • EtherCAT Ethernet Control Technology
  • a frame sent from a higher-order master unit passes through all lower-order slave units connected to the network in order, so that handshaking is omitted and high-speed communication can be realized.
  • each slave unit sequentially transfers frames sent from the master unit
  • a diagnosis is made as to whether or not the frame transfer is normally performed in each slave unit. Therefore, when communication including all control information related to the control of each slave unit in one frame is performed under such a protocol, the slave unit may leave the network or join the network. If a diagnosis is made that there is an abnormality in frame transfer in the slave unit, the operation of all slave units connected to the network may be affected.
  • An object of the present invention is to provide a design support apparatus, a design support method, and a program that can be generated.
  • the present invention provides each slave unit based on device information of each slave unit that sequentially transfers frames sent from the master unit, and information on a definition file that describes group information to which the slave unit belongs from network configuration information.
  • a data field included in a data frame in which the units are grouped and the control data of each slave unit is stored, and a data field for each unit in which data is invalidated due to abnormal frame transfer is secured for each group It was decided to generate configuration information that would be sent in the format.
  • it is a design support apparatus for setting network communication of a slave unit connected to a master unit via a network, and device information for acquiring device information of each slave unit connected to the master unit.
  • An acquisition unit a storage unit that stores information on a group to which the slave unit belongs from device information or network configuration information; and each slave unit from the device information and definition file information of each slave unit.
  • a setting unit that generates setting information that defines a communication operation including data frame generation transmitted from the master unit to the slave unit, and the setting unit includes the slave units.
  • the data frame in which the control data is stored A data field included in the beam, and generates a setting information as transmitted data fields for each unit of data is invalidated by the transfer abnormality of the frame in the format of a frame secured to each group.
  • the format of the frame in which the design support device generates the setting information includes not only the format of the frame sent from the master unit, but also the rules on how to allocate the control data of each slave unit allocated in the form.
  • the design support device For each slave unit that sequentially transfers frames sent from the master unit, the design support device performs grouping based on the definition file information describing the group information to which the slave unit belongs from the device information of each slave unit and the network configuration information. I do.
  • the device information is information relating to the slave unit, and can include, for example, information relating to the attribute and operation content of the slave unit.
  • the design support apparatus generates setting information that is transmitted in a frame format having a data field in which control data of each slave unit is stored. This data field is reserved for each unit in which data is invalidated due to abnormal frame transfer, and is reserved for each group in one frame.
  • the group determination unit performs grouping of the slave units according to the operation content based on the operation content information of the slave units obtained from the device information, and the setting unit determines the data field as the operation content.
  • the setting information may be generated such that it is transmitted in a frame format reserved for each of the separately divided groups. If the above grouping is performed according to the operation contents of each slave unit, the control data of slave units with low relevance of operation contents are divided into separate data fields, so the range of slave units that are affected by data invalidation Can be limited by operation content.
  • the group determination unit performs grouping of the slave units based on attribute information indicating whether the operation content of the slave units obtained from the device information is automatically stopped when an abnormality is detected,
  • the setting unit generates setting information such that the data field is transmitted in a frame format secured for each group divided into a safety device that automatically stops when an abnormality is detected and a non-safe device that is not. It may be. If the above grouping is performed from the viewpoint of whether or not the safety device automatically stops, the control data of the slave unit related to safety and the control data of the slave unit not related to safety can be divided into separate data fields.
  • the range of slave units that are affected by data invalidation can be limited to the range related to safety and the range not related to safety.
  • the present invention is a design support method for setting network communication of a slave unit connected to a master unit via a network, and acquires device information of each slave unit connected to the master unit. From the device information and definition file information of each slave unit stored in the storage unit for storing the definition file describing the information of the group to which the slave unit belongs from the device information or network configuration information, When the unit is grouped and setting information for defining a communication operation including data frame generation transmitted from the master unit to the slave unit is generated, and the setting information is generated, the control data of each slave unit is Data contained in the data frame to be stored A field may be one that generates setting information as sent in the format of a frame data field of each unit of data is invalidated secured in each group by the transfer abnormality of the frame.
  • the present invention can be grasped from the aspect of the program.
  • the present invention is a design support program for setting a network communication of a slave unit connected to a master unit via a network, and device information of each slave unit connected to the master unit in a computer Device information and definition file information of each slave unit stored in a storage unit for storing a definition file describing information on a group to which the slave unit belongs from the device information or network configuration information.
  • To generate the setting information by executing a process for grouping the slave units and a process for generating setting information for defining a communication operation including data frame transmission transmitted from the master unit to the slave unit.
  • FIG. 1 is a diagram showing an example of the overall configuration of a PLC (Programmable logic controller) system.
  • FIG. 2 is a schematic diagram showing a hardware configuration of the design support apparatus according to the embodiment of the present invention.
  • FIG. 3 is a diagram illustrating an example of a hardware configuration of the CPU unit.
  • FIG. 4 is a diagram illustrating an example of functional blocks implemented in the CPU unit.
  • FIG. 5 is a diagram showing an example of a processing flow realized in the CPU unit.
  • FIG. 6 is a diagram showing an example of a design support display screen output by the operation unit.
  • FIG. 7 is an example of a table showing the joining conditions of each group when the units are grouped.
  • FIG. 8 is a diagram showing an example of a table in which each group is arranged for each unit attribute.
  • FIG. 1 is a diagram showing an example of the overall configuration of a PLC (Programmable logic controller) system.
  • FIG. 2 is a schematic diagram showing a hardware configuration of the design support apparatus
  • FIG. 9 is a diagram illustrating a second example of a design support display screen output by the operation unit.
  • FIG. 10 is a diagram illustrating an example of a frame generated by the frame generation unit.
  • FIG. 11 is a diagram showing an example of the breakdown of the allocation of slave units.
  • FIG. 12 is a diagram illustrating an example of how the WKC in a frame changes in the process of visiting each node that configures the network.
  • FIG. 13A is a diagram showing the contents of the definition file according to the first example.
  • FIG. 13B is a diagram showing the contents of the definition file according to the second example.
  • FIG. 13C is a diagram showing the contents of the definition file according to the third example.
  • FIG. 13D is a diagram showing the contents of the definition file according to the fourth example.
  • Embodiment shown below is one aspect
  • FIG. 1 is a diagram showing an example of the overall configuration of the PLC system.
  • the PLC system S has a PLC 1 and a slave unit 3 connected via a network 2.
  • a design support device 4 is connected to the PLC 1.
  • the PLC 1 includes a CPU (Central Processing Unit) unit 5, an IO (Input / Output) unit 6, and a special unit 7 that execute various arithmetic processes.
  • the CPU unit 5, the IO unit 6, and the special unit 7 are configured to exchange data with each other via the PLC system bus 8.
  • a power of an appropriate voltage is supplied from the power supply unit 9 to the CPU unit 5, the IO unit 6, and the special unit 7.
  • the IO unit 6 is a unit that manages various input / output processes.
  • the IO unit 6 acquires signals output from sensors such as detection switches, or outputs signals to various devices such as relays and actuators.
  • the special unit 7 is a unit responsible for realizing various functions not supported by the IO unit 6, such as input / output of analog data, temperature control, and communication using a specific communication method.
  • the network 2 is a communication line through which various data exchanged between the CPU unit 5 and each slave unit 3 is transmitted.
  • the frames sent from the CPU unit 5 are sequentially transferred by the slave units 3.
  • An example of a protocol that conforms to a communication scheme in which each slave unit 3 sequentially transfers frames sent from the CPU unit 5 is EtherCAT.
  • FIG. 1 illustrates the PLC system S having both the PLC system bus 8 and the network 2, but in this embodiment, for example, the IO unit 6 and the special unit 7 are connected to the CPU unit 5 via the network 2. You may connect.
  • the CPU unit 5 of the PLC 1 functions as a master unit in the EtherCAT. Therefore, the PLC 1 corresponds to an example of a “master unit” in the present application. However, this embodiment does not exclude, for example, a unit in which another unit functions as a master unit in EtherCAT instead of the CPU unit 5.
  • the PLC system S can be applied to, for example, a manufacturing plant that manufactures various industrial products, a chemical plant that performs various chemical processes on raw materials, and other various mechanical equipment.
  • FIG. 2 is a schematic diagram showing a hardware configuration of the design support apparatus 4 according to the embodiment of the present invention.
  • the design support apparatus 4 is typically configured by a general-purpose computer.
  • the design support apparatus 4 includes a CPU 41 that executes various programs including an OS, a ROM (Read Only Memory) 44 that stores BIOS and various data, and data necessary for the CPU 41 to execute the programs.
  • a memory RAM 43 that provides a work area for storing the program, and a hard disk (HDD) 42 that stores a program executed by the CPU 41 in a nonvolatile manner.
  • HDD hard disk
  • the design support apparatus 4 further includes a keyboard 45 and a mouse 46 that accept operations from the user, and a monitor 47 for presenting information to the user.
  • the design support device 4 includes a communication interface (IF) 48 for communicating with the PLC 1 and the like, and a CD-ROM drive device 49 for accessing the CD-ROM.
  • IF communication interface
  • FIG. 3 is a diagram showing an example of the hardware configuration of the CPU unit 5.
  • the CPU unit 5 includes a microprocessor 51, a chip set 52, a main memory 53, a nonvolatile memory 54, a system timer 55, a PLC system bus controller 56, a field network controller 57, and a USB connector 58.
  • the chip set 52 and other components are connected to each other via various buses.
  • the CPU unit 5 uses an interrupt signal generated by the system timer 55 to process various programs such as a real-time OS (Operating System), PLC1 system program, user program, motion calculation program, and system setting parameters. While the microprocessor 51 performs processing, a control operation for each motion control cycle is realized.
  • OS Operating System
  • the PLC system bus controller 56 is a controller that controls the exchange of data via the PLC system bus 8 and temporarily holds data exchanged with the IO unit 6 and the special unit 7 via the PLC system bus 8. Or transfer the data held.
  • the field network controller 57 is a controller that controls the exchange of data via the network 2, and temporarily holds or holds data exchanged with each slave unit 3 via the network 2 in accordance with the EtherCAT protocol. The data that is being transferred is transferred.
  • FIG. 4 is a diagram showing an example of functional blocks realized in each of the design support apparatus 4 and the CPU unit 5.
  • the power of the design support apparatus 4 is turned on and the CPU 41 executes the program loaded in the RAM 43 of the CPU unit 4, the tool function unit 10 is realized.
  • the power of the PLC 1 is turned on and the microprocessor 51 executes the program loaded in the main memory 53 of the CPU unit 5, the PLC function unit 20 is realized.
  • the tool function unit 10 is a function unit that provides a user with tools that support creation of a network topology, and includes a device information management unit 11, an operation unit 12, a group determination unit 13, a setting information construction unit 14, and a setting information output unit. 15 includes various functional units such as a usage definition file management unit 17 and a definition file group 16.
  • the device information management unit 11 acquires and manages device information such as the model of each slave unit 3.
  • the device information management unit 11 may read and manage device information from an external file, or may read and manage the device information from a file managed by itself.
  • the device information management unit 11 corresponds to an example of a “device information acquisition unit” in the present application.
  • the operation unit 12 outputs a network topology screen displayed on the display device of the design support device 4 or accepts an input operation from the user in the input device of the design support device 4.
  • the network topology screen generated by the operation unit 12 shows, for example, each device such as the slave unit 3 and the connection status between the devices.
  • the group determination unit 13 groups each slave unit 3 from the device information and definition file information of each slave unit 3.
  • the setting information construction unit 14 generates configuration data based on the grouping determination result by the group determination unit 13.
  • the configuration data is data that defines the format of the frame. For example, the data that specifies the size of the data field reserved for each group, the expected value of the working counter, the address of the slave unit 3 belonging to each group, etc. It is.
  • the setting information construction unit 14 corresponds to an example of a “setting unit” in the present application.
  • the setting information output unit 15 compiles the network setting data generated by the setting information construction unit 14 and the program created by the user, and transfers them to the CPU unit 5 through the communication IF 48.
  • the definition file group 16 is one or a plurality of files describing logic or the like when the group determination unit 13 groups the slave units 3 from the device information. For example, each of the slave units 3 connected to the network 2 is defined. The group information to which each slave unit 3 should belong is described from the device information or network 2 configuration information.
  • the definition file group 16 is stored in a storage unit such as the HDD 42 or the ROM 44.
  • the usage definition file management unit 17 manages the definition file to be used in accordance with the input received via the operation unit 12.
  • the tool function unit 10 described above is not limited to that realized by the design support apparatus 4, and may be realized by the CPU unit 5, for example.
  • the design support apparatus 4 accepts input from the user and creates or edits a control program, or setting of the operation mode when there are a plurality of operation modes of the unit.
  • the unit setting function for performing the above may be integrated.
  • the PLC function unit 20 is a function unit that manages the function of generating a frame to be sent to each slave unit 3 via the network 2 in accordance with the network settings created by the user using the tools provided by the tool function unit 10.
  • Various functional units such as a reading unit 21, an activation processing unit 22, a system configuration recognition unit 23, an application data generation unit 24, and a frame generation unit 25 are included.
  • the setting file reading unit 21 reads the contents of the setting file created by the tool function unit 10 and develops them in the main memory 53. When there is a read request from the frame generation unit 25, the setting file reading unit 21 outputs data related to the contents of the setting file developed in the main memory 53.
  • the activation processing unit 22 causes the setting file reading unit 21 to read information on the system configuration from the setting file, and causes the system configuration recognition unit 23 to output the information.
  • the system configuration recognition unit 23 manages the current state of the system configuration based on information about the system configuration output from the setting file reading unit 21 when the PLC 1 is activated and information from each slave unit 3 obtained via the network 2. To do.
  • the application data generation unit 24 captures output data to be output to each slave unit 3 from the storage area of the main memory 53, and stores the data of the slave unit 3 to be exchanged in the current system configuration to the frame generation unit 25. Output.
  • the frame generation unit 25 makes a read request to the setting file reading unit 21 for each motion control cycle, and refers to data related to the contents of the setting file output from the setting file reading unit 21. Then, the frame generation unit 25 generates a frame to which the output data output from the application data generation unit 24 is added according to the format of the contents defined in the setting file.
  • FIG. 5 is a diagram showing an example of a processing flow realized in the design support apparatus 4.
  • the tool function unit 10 of the design support apparatus 4 receives the network topology from the user via the operation unit 12.
  • the input of the addition of a new unit and the addition of the network configuration is accepted as a change, and the presence / absence of change of the unit forming the network topology is confirmed (S101).
  • the tool function unit 10 receives an input of the network configuration designated from the operation unit 12 and reads out device information from the device information management unit 11.
  • the group determination unit 13 groups units that form a network topology using the read device information (S102).
  • the setting information construction unit 14 generates setting information for dividing the datagram for the group determined by the group determination unit 13. (S103)
  • FIG. 6 is a diagram showing an example of a display screen for design support output from the operation unit 12.
  • the operation unit 12 displays a network topology screen representing the network topology of the PLC system S on the left side, and displays a unit list screen in which units that can be added to the network topology are arranged on the right side. ) Is displayed.
  • the display screen for design support is generated based on device information and the like managed by the device information management unit 11.
  • Each unit displayed on the unit list screen is displayed as an icon with a unit name and a display relating to unit attributes (corresponding to the description of “standard” and “safe” in FIG. 6).
  • Each icon is provided with a connection line.
  • the connection line corresponds to the number of connection interface ports provided in the unit.
  • the import is a port for connecting a higher-level device positioned higher than the own device in the network topology, and corresponds to a port of a connection line that goes from the left side of each icon to the upper side.
  • Examples of the host device include the PLC 1 or the slave unit 3 connected between the own device and the PLC 1.
  • the outport is a port for connecting a lower level device located lower than the own device in the network topology, and corresponds to a port of a connection line from the left side of each icon to the lower side.
  • An example of the subordinate device is the slave unit 3 connected to a port on the opposite side of the side where the PLC 1 is present when viewed from the own device in terms of the network topology.
  • the PLC 1 and each slave unit 3 forming the network of the PLC system S are displayed so as to be one component per line.
  • the upper device is displayed in the upper row
  • the lower device is displayed in the lower row.
  • the PLC 1 having the design support device 4 that functions as a master unit in EtherCAT that constitutes the PLC system S is displayed.
  • the slave units 3 corresponding to the lower devices as viewed from the PLC 1 are displayed on the lower side of the PLC 1 in order from the unit with the highest priority.
  • the connection relationship of each slave unit 3 is displayed in such a manner that it can be easily understood visually by the difference in the row where the slave unit 3 is arranged.
  • the network can be designed while easily grasping the order.
  • the operation unit 12 displays such a design support screen and accepts a user operation using a pointing device such as a mouse 46.
  • the user drags and drops the unit icon to perform a join operation for adding the unit icon displayed in the unit list to the network topology, or a detachment operation for removing the unit icon from the network topology.
  • FIG. 6 illustrates an operation of adding a unit icon in the unit list to the network topology.
  • the group determination unit 13 performs a process of grouping units in the network topology (S102).
  • FIG. 7 is an example of a table showing the joining conditions of each group when each unit is grouped, and is an example of the description contents of the definition file held by the definition file group 16.
  • TxPdo Transmission Process Data Object
  • FIG. 7 is the size of the process data sent from the slave unit to the master unit.
  • the slave unit transmits the control state of the slave unit and data such as the current value to the master unit.
  • TxPdo becomes a value larger than 0.
  • RxPdo Receiveive Process Data Object
  • FIG. 7 is the size of process data that the slave unit receives from the master unit. For example, in the case of a slave unit that receives data such as control commands and control target values from the master unit.
  • RxPdo has a value greater than zero.
  • “Safety” shown in FIG. 7 is an example of an attribute of a slave unit defined as a part of device information in each slave unit, and is an attribute to which a unit having a safety function that automatically stops when an abnormality occurs belongs. .
  • “Non-safe” shown in FIG. 7 is an attribute to which a unit having no safety function belongs. Units that can affect the safety of the equipment as a whole are, for example, watchdogs that perform exceptional operations when data refresh using frames that circulate the network 2 is not performed for a certain period of time. Provided.
  • Non-axis shown in FIG. 7 is an attribute to which a unit that realizes discontinuous operation belongs, contrary to “axis”.
  • the group determination unit 13 determines each unit according to the unit attribute and the presence of TxPdo or RxPdo. Will be grouped.
  • FIG. 8 is a diagram showing an example of a table in which each group is arranged for each unit attribute.
  • the group determination unit 13 arranges the groups to which each unit belongs according to the description of the definition file specified by the usage definition file management unit 17 for each unit attribute, for example, as shown in FIG. There are four types.
  • FIG. 9 is a diagram showing a second example of a design support display screen output from the operation unit 12.
  • the slave unit 3 can be configured by combining one or a plurality of units with a coupler on a design support GUI, for example.
  • the coupler is connected to the PLC and one or more units.
  • the coupler has a function of receiving data from the PLC, transmitting the received data to the unit, and receiving data from the unit and transmitting the data to the PLC.
  • the units that can be combined with the coupler include standard units belonging to “non-safety”, units belonging to “safety”, units belonging to “axis” (servo, motor, etc.), and the like.
  • the coupler represents a unit that can be combined.
  • the group to which the coupler belongs is determined when there are a plurality of unit attributes such as “safe” / “non-safe” and “axis” / “non-axis”.
  • Couplers will be classified into groups 10-12.
  • the coupler is classified into groups 7 to 9 according to the table of FIG. .
  • the coupler remains classified into groups 7 to 9 and is not changed.
  • the couplers are classified into groups 1 to 3 according to the table of FIG.
  • the attribute of each slave unit 3 is determined according to the unit combined with the coupler.
  • the setting information construction unit 14 After grouping the units in the network topology in accordance with the group joining conditions as described above, the setting information construction unit 14 performs processing for generating frame format setting information (S103). .
  • FIG. 10 is a diagram illustrating an example of a frame generated by the frame generation unit 25. Since EtherCAT is a protocol based on Ethernet, the frame generated by the frame generation unit 25 stores a preamble, a transmission destination address, and a transmission source address that make each device on the network 2 recognize the start of frame transmission. Header field (corresponding to “Ethernet H.” shown in FIG. 10), data field storing control information of each slave unit 3 (corresponding to “Ethernet Data” shown in FIG. 10), and frame error detection An FCS (Frame Check Sequence) field (corresponding to “FCS” shown in FIG. 10) is prepared. In the “Ethernet Data” field, an EtherCAT header field (corresponding to “Ethernet CAT H.” shown in FIG.
  • EtherCAT Datagrams n data fields from 1 to n (corresponding to “EtherCAT Datagram” from 1st to nth shown in FIG. 10) can be prepared.
  • Each “EtherCAT Datagram” includes a header field (corresponding to “Data.Header” shown in FIG. 10), a data field (corresponding to “Data” shown in FIG. 10) in which control information of each slave unit 3 is stored, A WKC (Working Counter) field (corresponding to “WKC” shown in FIG. 10) for detecting an error of “EtherCAT Datagram” is prepared.
  • a WKC which is a field for checking whether data in the “EtherCAT Datagrams” is correctly exchanged with the target slave unit, is prepared for each “EtherCAT Datagram”. Therefore, even if “EtherCAT Datagram” indicating a data exchange error with a slave unit targeted by WKC exists and data is handled as invalid, it indicates a data exchange error with the slave unit targeted by WKC. Control that is performed based on other “EtherCAT Datagram” data that has not been performed can be performed normally.
  • the setting information construction unit 14 generates setting information related to the frame format that defines the data allocation of the slave units 3 to be assigned to the data fields of each “EtherCAT Datagram” according to the grouping result performed by the group determination unit 13. To do. Data allocation is affected by invalidation of data in the data field when a data error in the data field of a specific “EtherCAT Datagram” is detected by a WKC check and the data in the field is invalidated. This is done from the viewpoint of limiting the range of the slave unit.
  • FIG. 11 is a diagram showing an example of the allocation breakdown of the slave units 3.
  • data related to the slave unit 3 standard device in which only a standard unit belonging to “unsafe” is combined with a coupler is assigned to the field of “1st EtherCAT Datagram”.
  • the slave unit 3 in which only a standard unit belonging to “non-safety” is combined with a coupler corresponds to an example of “non-safety device” in the present application.
  • data related to the slave unit 3 including the unit belonging to “safe” is assigned to the data field of “2nd EtherCAT Datagram”.
  • the slave unit 3 including a unit belonging to “safety” has a safety function of automatically stopping when an abnormality is detected, and corresponds to an example of “safety device” in the present application.
  • the content of the setting information generated by the setting information construction unit 14 is included in the setting file generated by the setting information output unit 15 and is taken over by the PLC function unit 20.
  • examples of “safe” and “non-safe” are shown, but the same applies to the cases of “axis” and “non-axis”.
  • each slave unit 3 is automatically performed. Therefore, even if there is no knowledge of advanced protocols for setting the frame format and it is difficult to grasp the detailed configuration of the network 2 and the information of each slave unit 3, the frame transfer in the slave unit 3 It is possible to easily generate a frame format that limits the range of the slave unit 3 that is affected when there is an abnormality.
  • the PLC function unit 20 of the CPU unit 5 generates a frame according to the format defined by the setting file inherited from the tool function unit 10 of the design support apparatus 4 and uses it for communication within the network 2. That is, in the PLC function unit 20, the setting file reading unit 21 reads the contents of the setting file, and the generation of a frame in which the data output from the application data generation unit 24 is stored in the data field in accordance with the setting file setting This is performed in the generation unit 25. Then, the frame generated in the PLC function unit 20 circulates in the network 2, and the control information of each slave unit 3 is periodically refreshed.
  • FIG. 12 is a diagram showing an example of how the WKC in the frame changes in the process of circulating through each node (corresponding to the slave unit 3) constituting the network 2. For example, it is assumed that an appropriate value is added to each “EtherCAT Datagram” WKC sent from the PLC 1 every time it passes through each node. In the PLC 1, an expected value of the WKC of each “EtherCAT Datagram” of a frame returned from a node located at the lowest position in the network 2 is set in advance.
  • the tool function unit 10 automatically assigns the data of the slave unit 3 to a separate “EtherCAT Datagram” data field for each group. Therefore, the user can limit the range of the slave units 3 that are affected by the invalidation of data without having to know the detailed configuration of the network 2 and the information of each slave unit 3 in detail.
  • the case where it is applied to EtherCAT has been described as an example.
  • the above embodiment is not limited to that applied to EtherCAT.
  • the above embodiment can also be applied to protocols other than EtherCAT as long as each slave unit sequentially transfers frames sent from the master unit.
  • FIG. 13A is a diagram showing the contents of the definition file according to the first example.
  • the definition file group 16 of the above embodiment may include, for example, a definition file according to the following first example.
  • the definition file according to the first example defines the logic for grouping the units in terms of whether each unit has a synchronization function. For example, as shown in FIG. It is stipulated that the affiliation of the unit to be assigned is group 1, and the affiliation of the unit not to be synchronized is group 2.
  • the unit has a synchronization function and the synchronization function is enabled (synchronous refresh mode), and the unit has a synchronization function but the synchronization function is disabled (free-run mode) Some have no synchronization function.
  • the setting (mode setting) for enabling / disabling the synchronization function is performed, for example, when setting the network topology or programming.
  • the definition file according to the first example stipulates that a group having a synchronization function and having the synchronization function being effective is set as group 1, and other files are set as group 2. Therefore, when the group determination unit 13 performs grouping with reference to the definition file according to the first example, the format of the frame in which the setting information construction unit 14 has generated the setting information in the above step S103 includes a synchronized unit.
  • the “EtherCAT Datagram” field in which the (Group 1) data is stored and the “EtherCAT Datagram” field in which the data of the unsynchronized unit (Group 2) are stored are prepared separately.
  • the range of units that will be affected when an error occurs in a specific data field is within the range of synchronized units or units that are not synchronized. It can be kept within the range of each other.
  • FIG. 13B shows the contents of the definition file according to the second example.
  • the definition file group 16 of the above embodiment may include, for example, a definition file according to the second example as described below.
  • the definition file according to the second example defines the logic for grouping the units from the viewpoint of whether the control cycle (data exchange cycle) of each unit is short. For example, as shown in FIG. 13B As described above, it is defined that the affiliation of an output unit or input unit whose control cycle is X or more is group 1, and the affiliation of an output unit or input unit whose control cycle is less than X is group 2.
  • X is a threshold of the control cycle, and may be changed as appropriate according to the control cycle of each slave unit 3 connected to the network 2, or a predetermined fixed value is set. May be.
  • the definition file according to the second example stipulates that a group with a long control cycle is set as group 1 and other files are set as group 2. Therefore, when the group determination unit 13 performs grouping with reference to the definition file according to the second example, the format of the frame in which the setting information construction unit 14 generates the setting information in step S103 has a control cycle.
  • the “EtherCAT Datagram” field that stores data for long units (Group 1) and the “EtherCAT Datagram” field that stores data for units with short control cycles (Group 2) will be prepared separately. Become.
  • the logic content of the definition file according to the second example may be such that each unit is grouped into three or more according to the control cycle.
  • the range of units that are affected when an error occurs in a specific data field can be controlled within the range of units with a short control cycle or control. It can be kept within the range of units with a long period.
  • FIG. 13C shows the contents of the definition file according to the third example.
  • the definition file group 16 of the above embodiment may include, for example, a definition file according to a third example as follows.
  • the definition file according to the third example defines the logic for grouping each unit in terms of whether each unit is located before the extension unit on the network 2 path.
  • the affiliation of the unit located before the expansion unit is defined as group 1
  • the affiliation of the unit located after the expansion unit is defined as group 2.
  • the expansion unit is a network device connected to the slave unit 3 connected to the network 2, and the unit can be expanded by connecting another unit below the slave unit 3 on the path of the network 2. It is a device to do.
  • the definition file according to the third example stipulates that each unit is located in the path of the network 2 before the extension unit is group 1, and the other is group 2. . Therefore, when the group determination unit 13 performs grouping with reference to the definition file according to the third example, the format of the frame for which the setting information construction unit 14 has generated the setting information in the above step S103 includes The field of “EtherCAT Datagram” that stores the data of the unit (group 1) located in is prepared separately from the field of “EtherCAT Datagram” that stores the data of the unit (group 2) located after the expansion unit Will be.
  • the range of units affected when an error occurs in a specific data field is within the range of units located before the expansion unit, or It can be kept within the range of units located after the expansion unit.
  • FIG. 13D is a diagram showing the contents of the definition file according to the fourth example.
  • the definition file group 16 of the above embodiment may include, for example, a definition file according to the following fourth example.
  • the definition file according to the fourth example is defined in terms of grouping logic for grouping each unit for each data size of input / output data of each unit. For example, as shown in FIG. 13D
  • the group to which the unit whose input data size and output data size are both larger than X belongs to group 1
  • the unit to which the unit whose input data size is X or less and the output data size is larger than X belongs to group 2
  • the input data size is smaller than X.
  • X is a data size threshold, and may be changed as appropriate according to the data size of the input / output data of each slave unit 3 connected to the network 2. A fixed value may be set.
  • the definition file according to the fourth example stipulates grouping according to the data size of input / output data. Therefore, when the group determination unit 13 performs grouping with reference to the definition file according to the fourth example, the format of the frame for which the setting information construction unit 14 has generated the setting information in step S103 includes input / output data. Separate “EtherCAT Datagram” fields are prepared according to the size of the data.
  • the logic content of the definition file according to the fourth example may be one in which each unit is grouped into two or more according to the data size of the input data, or the data size of the output data Each unit may be grouped into two or more according to the size. Further, the logic content of the definition file according to the fourth example may be such that each unit is grouped according to the size of the data size in three or more stages.
  • the data size of input / output data is relatively approximate to the range of units that are affected when an error occurs in a specific data field. It can be kept within the range of units.
  • Computer-readable recording medium A program for causing a computer or other machine or device (hereinafter, a computer or the like) to realize any of the above functions can be recorded on a recording medium that can be read by the computer or the like.
  • the function can be provided by causing a computer or the like to read and execute the program of the recording medium.
  • a computer-readable recording medium is a non-temporary accumulation of information such as data and programs by electrical, magnetic, optical, mechanical, or chemical action, and is read from a computer or the like.
  • a recording medium capable of recording examples include flexible disks, magneto-optical disks, CD-ROMs, CD-R / Ws, DVDs, Blu-ray discs (Blu-ray is a registered trademark), DAT, and 8 mm tapes.
  • memory cards such as flash memory.
  • a recording medium fixed to a computer or the like there are a hard disk, a ROM (read only memory) and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Programmable Controllers (AREA)
  • Small-Scale Networks (AREA)

Abstract

各スレーブユニットの機器情報を取得し、各スレーブユニットの機器情報、定義ファイルの情報から各スレーブユニットをグループ分けし、マスターユニットからスレーブユニットに送信されるデータフレーム生成を含む通信動作を規定する設定情報を生成する際、各スレーブユニットの制御データが格納されるデータフレームに含まれるデータフィールドであって、フレームの転送異常によりデータが無効化される単位毎のデータフィールドをグループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成する。

Description

設計支援装置、設計支援方法およびプログラム
 本願は、設計支援装置、設計支援方法およびプログラムを開示する。
 近年、FA(Factory Automation)機器等の各種機器をネットワーク経由で制御する技術が普及している。設備の制御を司るネットワークのプロトコルには様々なものが提案されており、近年では、例えば、EtherCAT(Ethernet Control Automation Technology)(EtherCATとEthernetは何れも登録商標)と呼ばれるプロトコルが注目されている(例えば、特許文献1-2を参照)。EtherCATは、上位のマスターユニットから送られるフレームが、ネットワークに繋がる下位の全てのスレーブユニットを順に通過させることでハンドシェイクを省略し、高速な通信を実現可能にしたものである。
特許第5195955号公報 特開2013-90335号公報
 マスターユニットから送られるフレームを各スレーブユニットが順に転送するネットワークのプロトコルにおいては、フレームの転送が各スレーブユニットで正常になされたか否かの診断が行われる。よって、このようなプロトコルの下、各々のスレーブユニットの制御に関わる全ての制御情報を1つのフレームに含めた通信が行われている場合に、スレーブユニットのネットワークからの離脱あるいはネットワークへの加入により、スレーブユニットにおけるフレームの転送に異常があるとの診断がなされると、ネットワークに繋がる全てのスレーブユニットの動作に影響が及び得る。
 そこで、本願は、マスターユニットから送られるフレームを各スレーブユニットが順に転送するネットワークにおいて、スレーブユニットにおけるフレームの転送に異常があった場合に影響が及ぶスレーブユニットの範囲を限定するフレームのフォーマットを容易に生成できる設計支援装置、設計支援方法およびプログラムを提供することを目的とする。
 上記課題を解決するため、本発明は、マスターユニットから送られるフレームを順に転送する各スレーブユニットの機器情報、ネットワークの構成情報からスレーブユニットが属するグループの情報を記述した定義ファイルの情報から各スレーブユニットをグループ分けし、各スレーブユニットの制御データが格納されるデータフレームに含まれるデータフィールドであって、フレームの転送異常によりデータが無効化される単位毎のデータフィールドをグループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成することにした。
 詳細には、マスターユニットとネットワークを介して接続されるスレーブユニットのネットワークの通信の設定を行う設計支援装置であって、前記マスターユニットと接続される、各スレーブユニットの機器情報を取得する機器情報取得部と、機器情報またはネットワークの構成情報から前記スレーブユニットが属するグループの情報を記述した定義ファイルを格納する格納部と、前記各スレーブユニットの機器情報、定義ファイルの情報から、前記各スレーブユニットをグループ分けするグループ判定部と、前記マスターユニットから前記スレーブユニットに送信されるデータフレーム生成を含む通信動作を規定する設定情報を生成する設定部とを備え、前記設定部は、前記各スレーブユニットの制御データが格納される前記データフレームに含まれるデータフィールドであって、前記フレームの転送異常によりデータが無効化される単位毎のデータフィールドを前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成する。
 上記設計支援装置が設定情報を生成するフレームのフォーマットには、マスターユニットから送られるフレームの様式のみならず、フォーム内に割り付けられる各スレーブユニットの制御データの割り付け方に関する規定が含まれる。上記設計支援装置は、マスターユニットから送られるフレームを順に転送する各スレーブユニットについて、各スレーブユニットの機器情報、ネットワークの構成情報からスレーブユニットが属するグループの情報を記述した定義ファイルの情報からグループ分けを行う。機器情報とは、スレーブユニットに関する情報であり、例えば、スレーブユニットの属性や動作内容に関する情報を挙げることができる。そして、上記設計支援装置は、各スレーブユニットの制御データが格納されるデータフィールドを有するフレームのフォーマットで送信されるような設定情報を生成する。このデータフィールドは、フレームの転送異常によりデータが無効化される単位毎に確保されるものであり、1つのフレーム内でグループ毎に確保される。
 このように、上記設計支援装置であれば、各スレーブユニットのグルーピングが自動的に行われる。このため、フレームのフォーマットを設定するための高度なプロトコルの知識が無く、機器間がどのようなネットワークのトポロジで構成されているか、どのような接続形態となっているか等のネットワークの詳細な構成や各スレーブユニットの情報の把握が困難な場合であっても、スレーブユニットにおけるフレームの転送に異常があった場合に影響が及ぶスレーブユニットの範囲を限定するフレームのフォーマットを容易に生成することができる。
 なお、前記グループ判定部は、前記機器情報から得られる前記各スレーブユニットの動作内容の情報から、前記各スレーブユニットを動作内容別にグループ分けを行い、前記設定部は、前記データフィールドを、動作内容別に分けられた前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成するものであってもよい。上記グループ分けが各スレーブユニットの動作内容別に行われれば、動作内容の関連性が低いスレーブユニットの制御データ同士が別々のデータフィールドに分けられるので、データの無効化により影響が及ぶスレーブユニットの範囲を動作内容別に限定することができる。
 また、前記グループ判定部は、前記機器情報から得られる前記各スレーブユニットの動作内容が異常を感知すると自動停止するものか否かの属性の情報から、前記各スレーブユニットのグループ分けを行い、前記設定部は、前記データフィールドを、異常を感知すると自動停止する安全機器と否の非安全機器とに分けられた前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成するものであってもよい。上記グループ分けが自動停止する安全機器か否かという観点の下で行われれば、安全性に関わるスレーブユニットの制御データと安全性に関わらないスレーブユニットの制御データが別々のデータフィールドに分けられるので、データの無効化により影響が及ぶスレーブユニットの範囲を安全性に関わるものの範囲と否のものの範囲とに限定することができる。
 なお、本発明は、方法の側面から捉えることもできる。例えば、本発明は、マスターユニットとネットワークを介して接続されるスレーブユニットのネットワークの通信の設定を行う設計支援方法であって、前記マスターユニットと接続される、各スレーブユニットの機器情報を取得し、機器情報またはネットワークの構成情報から前記スレーブユニットが属するグループの情報を記述した定義ファイルを格納する格納部に格納されている、前記各スレーブユニットの機器情報、定義ファイルの情報から、前記各スレーブユニットをグループ分けし、前記マスターユニットから前記スレーブユニットに送信されるデータフレーム生成を含む通信動作を規定する設定情報を生成し、前記設定情報を生成する際は、前記各スレーブユニットの制御データが格納される前記データフレームに含まれるデータフィールドであって、前記フレームの転送異常によりデータが無効化される単位毎のデータフィールドを前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成するものであってもよい。
 また、本発明は、プログラムの側面から捉えることもできる。例えば、本発明は、マスターユニットとネットワークを介して接続されるスレーブユニットのネットワークの通信の設定を行う設計支援プログラムであって、コンピュータに、前記マスターユニットと接続される、各スレーブユニットの機器情報を取得する処理と、機器情報またはネットワークの構成情報から前記スレーブユニットが属するグループの情報を記述した定義ファイルを格納する格納部に格納されている、前記各スレーブユニットの機器情報、定義ファイルの情報から、前記各スレーブユニットをグループ分けする処理と、前記マスターユニットから前記スレーブユニットに送信されるデータフレーム生成を含む通信動作を規定する設定情報を生成する処理とを実行させ、前記設定情報を生成する処理を実行させる際は、前記各スレーブユニットの制御データが格納される前記データフレームに含まれるデータフィールドであって、前記フレームの転送異常によりデータが無効化される単位毎のデータフィールドを前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成する処理と、を実行させるものであってもよい。
 上記設計支援装置、方法およびプログラムであれば、マスターユニットから送られるフレームを各スレーブユニットが順に転送するネットワークにおいて、スレーブユニットにおけるフレームの転送に異常があった場合に影響が及ぶスレーブユニットの範囲を限定するフレームのフォーマットを容易に生成できる。
図1は、PLC(Programmable logic controller)システムの全体構成の一例を示した図である。 図2は、本発明の実施の形態に係る設計支援装置のハードウェア構成を示す模式図である。 図3は、CPUユニットのハードウェア構成の一例を示した図である。 図4は、CPUユニットにおいて実現される機能ブロックの一例を示した図である。 図5は、CPUユニットにおいて実現される処理フローの一例を示した図である。 図6は、操作部が出力する設計支援用の表示画面の一例を示した図である。 図7は、各ユニットをグループ分けする際の各グループの加入条件を示した表の一例である。 図8は、各グループをユニットの属性毎に整理した表の一例を示した図である。 図9は、操作部が出力する設計支援用の表示画面の第2例を示した図である。 図10は、フレーム生成部が生成するフレームの一例を示した図である。 図11は、スレーブユニットの割り当ての内訳の一例を示した図である。 図12は、ネットワークを構成する各ノードを巡回する過程において、フレーム内のWKCが変化する様子の一例を示した図である。 図13Aは、第1例に係る定義ファイルの内容を示した図である。 図13Bは、第2例に係る定義ファイルの内容を示した図である。 図13Cは、第3例に係る定義ファイルの内容を示した図である。 図13Dは、第4例に係る定義ファイルの内容を示した図である。
 以下、本願発明の実施形態について説明する。以下に示す実施形態は、本願発明の一態様であり、本願発明の技術的範囲を限定するものではない。
 図1は、PLCシステムの全体構成の一例を示した図である。PLCシステムSは、PLC1と、ネットワーク2を経由して接続されるスレーブユニット3とを有する。PLC1には、設計支援装置4が接続される。
 PLC1は、各種の演算処理を実行するCPU(Central Processing Unit)ユニット5やIO(Input/Output)ユニット6、特殊ユニット7を有する。CPUユニット5やIOユニット6、特殊ユニット7は、PLCシステムバス8を介してデータを互いに遣り取りできるように構成される。CPUユニット5やIOユニット6、特殊ユニット7には、電源ユニット9から適切な電圧の電力が供給される。
 IOユニット6は、各種の入出力処理を司るユニットである。IOユニット6は、例えば、検出スイッチ等のセンサ類から出力される信号を取得し、或いは、リレーやアクチュエータといった各種デバイスに対して信号を出力する。特殊ユニット7は、アナログデータの入出力や温度制御、特定の通信方式による通信といった、IOユニット6ではサポートしない各種機能の実現を司るユニットである。
 ネットワーク2は、CPUユニット5と各スレーブユニット3との間で取り交わされる各種データが伝送される通信線である。ネットワーク2では、CPUユニット5から送られるフレームが各スレーブユニット3により順に転送される。CPUユニット5から送られるフレームを各スレーブユニット3が順に転送する通信方式に準拠するプロトコルとしては、例えば、EtherCATを挙げることができる。
 なお、図1では、PLCシステムバス8およびネットワーク2の両方を有するPLCシステムSを例示しているが、本実施形態は、例えば、IOユニット6および特殊ユニット7をネットワーク2経由でCPUユニット5に接続してもよい。
 PLCシステムSにおいては、PLC1のCPUユニット5がEtherCATにおけるマスターユニットとして機能する。よって、PLC1は、本願でいう「マスターユニット」の一例に相当する。しかし、本実施形態は、例えば、CPUユニット5の代わりに他のユニットがEtherCATにおけるマスターユニットとして機能するものを排除するものではない。
 PLCシステムSは、例えば、各種の工業製品を製造する製造工場や、原材料に対する各種の化学プロセスが施される化学プラント、その他の各種機械設備類に適用可能である。
 図2は、本発明の実施の形態に係る設計支援装置4のハードウェア構成を示す模式図である。図2を参照して、設計支援装置4は、典型的には、汎用のコンピュータで構成される。
 図2を参照して、設計支援装置4は、OSを含む各種プログラムを実行するCPU41と、BIOSや各種データを格納するROM(Read Only Memory)44と、CPU41でのプログラムの実行に必要なデータを格納するための作業領域を提供するメモリRAM43と、CPU41で実行されるプログラムなどを不揮発的に格納するハードディスク(HDD)42とを含む。
 設計支援装置4は、さらに、ユーザからの操作を受け付けるキーボード45およびマウス46と、情報をユーザに提示するためのモニタ47とを含む。設計支援装置4は、PLC1などと通信するための通信インターフェイス(IF)48、CD-ROMにアクセスするCD-ROM駆動装置49を含む。
 図3は、CPUユニット5のハードウェア構成の一例を示した図である。CPUユニット5は、マイクロプロセッサ51、チップセット52、メインメモリ53、不揮発性メモリ54、システムタイマ55、PLCシステムバスコントローラ56、フィールドネットワークコントローラ57、USBコネクタ58を有する。チップセット52と他のコンポーネントとの間は、各種のバスを介して互いに接続されている。
 CPUユニット5は、リアルタイムOS(Operating System)やPLC1のシステムプログラム、ユーザプログラム、モーション演算プログラムといった各種のプログラム、及び、システム設定パラメータといった各種データの処理を、システムタイマ55が発生する割り込み信号を利用しながらマイクロプロセッサ51が処理することにより、モーション制御サイクルごとの制御動作を実現する。
 PLCシステムバスコントローラ56は、PLCシステムバス8を介したデータの遣り取りを制御するコントローラであり、PLCシステムバス8を介してIOユニット6や特殊ユニット7と遣り取りされるデータを一時的に保持したり、保持しているデータの転送を行ったりする。
 フィールドネットワークコントローラ57は、ネットワーク2を介したデータの遣り取りを制御するコントローラであり、EtherCATのプロトコルに従い、ネットワーク2を介して各スレーブユニット3と遣り取りされるデータを一時的に保持したり、保持しているデータの転送を行ったりする。
 図4は、設計支援装置4およびCPUユニット5の各々において実現される機能ブロックの一例を示した図である。設計支援装置4の電源がオンになり、CPUユニット4のRAM43にロードされたプログラムをCPU41が実行するとツール機能部10が実現される。また、PLC1の電源がオンになり、CPUユニット5のメインメモリ53にロードされたプログラムをマイクロプロセッサ51が実行するとPLC機能部20が実現される。
 ツール機能部10は、ネットワークトポロジの作成を支援するツール類をユーザに提供する機能部であり、機器情報管理部11や操作部12、グループ判定部13、設定情報構築部14、設定情報出力部15、使用定義ファイル管理部17等の各種機能部や定義ファイル群16を擁する。
 機器情報管理部11は、各スレーブユニット3の型式等の機器情報を取得して管理する。機器情報管理部11は、機器情報を外部のファイルから読み出して管理してもよいし、或いは自身が管理するファイルから読みだして管理してもよい。機器情報管理部11は、本願でいう「機器情報取得部」の一例に相当する。
 操作部12は、設計支援装置4の表示装置に表示されるネットワークトポロジの画面を出力し、或いは、設計支援装置4の入力装置におけるユーザからの入力操作を受け付ける。操作部12が生成するネットワークトポロジの画面には、例えば、スレーブユニット3等の各機器や機器間の接続状況が示される。
 グループ判定部13は、各スレーブユニット3の機器情報、定義ファイルの情報から各スレーブユニット3をグループ分けする。
 設定情報構築部14は、グループ判定部13によるグループ分けの判定結果に基づいてコンフィグレーションデータを生成する。コンフィグレーションデータは、フレームのフォーマットを規定したデータであり、例えば、グループ毎に確保されるデータフィールドのサイズ、ワーキングカウンタの期待値、各グループに属しているスレーブユニット3のアドレス等を規定したデータである。設定情報構築部14は、本願でいう「設定部」の一例に相当する。
 設定情報出力部15は、設定情報構築部14が生成したネットワーク設定のデータやユーザが作成したプログラムをコンパイルし、通信IF48を通じてCPUユニット5へ転送する。
 定義ファイル群16は、グループ判定部13が機器情報から各スレーブユニット3をグループ分けする際のロジック等を記述した一又は複数のファイルであり、例えば、ネットワーク2に接続されている各スレーブユニット3の機器情報またはネットワーク2構成の情報から各スレーブユニット3が属すべきグループの情報を記述したものである。定義ファイル群16は、HDD42又はROM44等の格納部に格納されている。
 使用定義ファイル管理部17は、操作部12を介して受け付ける入力に従い、使用する定義ファイルを管理する。
 なお、上記のツール機能部10は、設計支援装置4において実現されるものに限定されるものでなく、例えば、CPUユニット5において実現されるものであってもよい。
 また、設計支援装置4は、ツール機能部10だけでなく、ユーザからの入力を受け付けて制御プログラムを作成または編集するプログラムエディット機能や、ユニットの複数の動作モードがある場合に当該動作モードの設定を行うユニット設定機能を一体で有していても良い。
 次に、PLC機能部20について説明する。PLC機能部20は、ツール機能部10が提供するツール類を使ってユーザが作成したネットワーク設定に従い、ネットワーク2経由で各スレーブユニット3へ送るフレームを生成する機能を司る機能部であり、設定ファイル読出部21や起動処理部22、システム構成認識部23、アプリデータ生成部24、フレーム生成部25等の各種機能部を擁する。
 設定ファイル読出部21は、ツール機能部10によって作成された設定ファイルの内容を読み出してメインメモリ53に展開する。設定ファイル読出部21は、フレーム生成部25から読出しの要求があると、メインメモリ53に展開された設定ファイルの内容に関するデータを出力する。
 起動処理部22は、PLC1が起動する際に、設定ファイル読出部21に設定ファイルからシステム構成に関する情報を読み出させ、システム構成認識部23へ出力させる。
 システム構成認識部23は、PLC1が起動する際に設定ファイル読出部21から出力されるシステム構成に関する情報や、ネットワーク2経由で得られる各スレーブユニット3からの情報に基づき、システム構成の現状を管理する。
 アプリデータ生成部24は、メインメモリ53の記憶領域から、各スレーブユニット3へ出力する出力データを取り込むとともに、現状のシステム構成においてデータ交換の対象となるスレーブユニット3のデータをフレーム生成部25に出力する。
 フレーム生成部25は、モーション制御サイクルごとに設定ファイル読出部21へ読出し要求を行い、設定ファイル読出部21から出力される設定ファイルの内容に関するデータを参照する。そして、フレーム生成部25は、アプリデータ生成部24から出力された出力データを加えたフレームを、設定ファイルに規定された内容のフォーマットに従って生成する。
 図5は、設計支援装置4において実現される処理フローの一例を示した図である。以下、設計支援装置4において実現される各処理について、図5のフロー図に沿って説明する。設計支援装置4の電源がオンになり、CPU41によるプログラムの実行によってツール機能部10が実現されると、設計支援装置4のツール機能部10は、操作部12を介してユーザからのネットワークトポロジの変更として新しいユニットの追加及びネットワーク構成の追加の入力を受付、ネットワークトポロジを形成するユニットの変更の有無を確認する(S101)。ツール機能部10は、操作部12から指定されたネットワーク構成の入力を受付、機器情報管理部11から機器情報を読み出す。グループ判定部13は、読み出した機器情報を用いてネットワークトポロジを形成するユニットをグループ化する(S102)。設定情報構築部14は、グループ判定部13によって判定されたグループについてデータグラムを分けるための設定情報を生成する。(S103)
 図6は、操作部12が出力する設計支援用の表示画面の一例を示した図である。操作部12は、PLCシステムSのネットワークトポロジを表したネットワークトポロジ画面を左側に表示し、ネットワークトポロジに追加可能なユニットを並べたユニットリスト画面を右側に表示した設計支援用のGUI(Graphical User Interface)を表示する。設計支援用の表示画面は、機器情報管理部11が管理する機器情報等に基づいて生成される。
 ユニットリスト画面に表示される各ユニットは、ユニットの名称、及びユニットの属性に関する表示(図6でいう「標準」および「安全」という記載に相当)を付したアイコンとして表示される。各アイコンには、接続ラインが付与されている。接続ラインは、ユニットに設けられている接続インターフェイスのポート数に対応している。ポートには、インポートとアウトポートの2種類がある。インポートは、ネットワークトポロジにおいて自装置よりも上位に位置する上位装置を接続するためのポートであり、各アイコンの左辺から上側へ向かう接続ラインのポートに対応している。上位装置としては、例えば、PLC1、或いは、自装置とPLC1との間に接続されるスレーブユニット3が挙げられる。また、アウトポートは、ネットワークトポロジにおいて自装置よりも下位に位置する下位装置を接続するためのポートであり、各アイコンの左辺から下側へ向かう接続ラインのポートに対応している。下位装置としては、例えば、ネットワークトポロジ上、自装置から見てPLC1がある側の反対側のポートに接続されるスレーブユニット3が挙げられる。
 ネットワークトポロジ画面には、PLCシステムSのネットワークを形成するPLC1や各スレーブユニット3が、1行につき1部品となるように表示される。ネットワークトポロジ画面には、上位装置が上側の行に表示され、下位装置が下側の行に表示される。最も上側の行には、PLCシステムSを構成するEtherCATにおけるマスターユニットとして機能する設計支援装置4を有するPLC1が表示される。そして、PLC1から見て下位装置にあたる各スレーブユニット3が、順位の高いユニットから順にPLC1の下側に表示される。ネットワークトポロジ画面では、このように、各スレーブユニット3の接続関係が、スレーブユニット3が配置される行の相違によって視覚的に判りやすいように表示されるので、ユーザは、各スレーブユニット3の接続順序を容易に把握しながらネットワークを設計することができる。
 操作部12は、このような設計支援用の画面を表示し、マウス46等のポインティングデバイスを使ったユーザ操作を受け付ける。ユーザは、ユニットのアイコンをドラッグアンドドロップする操作を行うことにより、ユニットリストに表示されるユニットのアイコンをネットワークトポロジに加える加入操作を行ったり、ネットワークトポロジからユニットのアイコンを離脱させる離脱操作を行ったりすることができる。図6では、ユニットリストにあるユニットのアイコンをネットワークトポロジに加える操作の様子が例示されている。
 設計支援用の上記GUIにおいて、ユーザがユニットの加入操作あるいは離脱操作を行った場合、ネットワークトポロジを形成するユニットが変更されたことになる。そこで、ユーザによるユニットの加入操作あるいは離脱操作が行われた場合、設計支援装置4では、ネットワークトポロジ内の各ユニットをグループ化する処理がグループ判定部13によって行われる(S102)。
 図7は、各ユニットをグループ分けする際の各グループの加入条件を示した表の一例であり、定義ファイル群16が擁する定義ファイルの記述内容の一例である。図7に示す「TxPdo」(Transmission Process Data Object)は、スレーブユニットがマスターユニットへ送るプロセスデータのサイズであり、例えば、スレーブユニットの制御状態や現在値等のデータをマスターユニットへ送信するスレーブユニットの場合にはTxPdoが0より大きい値になる。図7に示す「RxPdo」(Receive Process Data Object)は、スレーブユニットがマスターユニットから受け取るプロセスデータのサイズであり、例えば、制御コマンドや制御目標値等のデータをマスターユニットから受信するスレーブユニットの場合にはRxPdoが0より大きい値になる。図7に示す「安全」とは、各スレーブユニットに機器情報の一部として規定されているスレーブユニットの属性の一例であり、異常発生時に自動停止する安全機能を有するユニットが所属する属性である。図7に示す「非安全」は、安全機能を有さないユニットが所属する属性である。機器の動作内容が設備全体の安全性に影響を及ぼし得るユニットには、例えば、ネットワーク2を巡回するフレームによるデータのリフレッシュが一定時間行われない場合に例外動作を実行するウォッチドッグ(Watchdog)が設けられる。また、図7に示す「軸」とは、各スレーブユニットに機器情報の一部として規定されているスレーブユニットの属性の一例であり、連続的な動作を実現するユニットが所属する属性である。図7に示す「非軸」は、「軸」とは反対に、非連続的な動作を実現するユニットが所属する属性である。使用定義ファイル管理部17が、記述内容が図7の表に示されるような定義ファイルの使用を指定している場合、グループ判定部13は、ユニットの属性、およびTxPdoやRxPdoの有無に従って各ユニットをグループ分けすることになる。
 図8は、各グループをユニットの属性毎に整理した表の一例を示した図である。グループ判定部13が、使用定義ファイル管理部17が指定する定義ファイルの記述内容に従い、各ユニットが所属するグループをユニットの属性毎に整理すると、例えば、図8に示されるように、各グループは4種類に分けられる。
 図9は、操作部12が出力する設計支援用の表示画面の第2例を示した図である。スレーブユニット3は、例えば、一又は複数のユニットを設計支援用のGUI上でカプラーに組み合わせて構成することができる。カプラーはPLCおよび1または複数のユニットと接続される。カプラーはPLCからデータを受信し、受信したデータをユニットに送信する機能とユニットからデータを受信し、PLCに送信する機能を有する。カプラーに組み合わせ可能なユニットには、「非安全」に属する標準的なユニットや、「安全」に属するユニット、「軸」に属するユニット(サーボ、モータ等)等が存在する。このように、スレーブユニット3を構成する各ユニットの属性が多岐に渡っていても、図8に示す表に従えば、グループ1~3、グループ4~6、グループ7~9、グループ10~12の4つのうち何れかに属することになる。この例ではカプラーは、組み合わせ可能なユニットを代表する。この例ではユニットの属性が「安全」/「非安全」、「軸」/「非軸」と複数あった場合に当該カプラーが属するグループが決められる例を示す。
 例えば、ネットワークトポロジにカプラーが追加された場合、当該カプラーには「軸」に属するユニットおよび「安全」に属するユニットの何れのユニットも組み合わされていない状態なので、図8の表に従えば、当該カプラーはグループ10~12に分類されることになる。ここで、例えば、「安全」に属するユニット(図9の「ユニット(安全)」)が追加された場合、図8の表に従えば、当該カプラーはグループ7~9に分類されることになる。また、「非安全」に属するユニット(図9の「ユニット(標準)」)が更に追加された場合、図8の表に従えば、当該カプラーはグループ7~9に分類されたまま変更されない。また、「軸」に属するユニット(図9の「ユニット(軸)」)が更に追加された場合、図8の表に従えば、当該カプラーはグループ1~3に分類されることになる。このように、各スレーブユニット3の属性は、カプラーに組み合わされるユニットに応じて定まる。
 上記に説明したような各グループの加入条件に従い、ネットワークトポロジ内の各ユニットのグループ分けが行われた後は、フレームフォーマットの設定情報を生成する処理が設定情報構築部14によって行われる(S103)。
 図10は、フレーム生成部25が生成するフレームの一例を示した図である。EtherCATは、Ethernetをベースにしたプロトコルであるため、フレーム生成部25が生成するフレームには、ネットワーク2上の各機器にフレーム送信の開始を認識させるプリアンブルや送信先アドレス、送信元アドレスが格納されるヘッダフィールド(図10に示す「Ethernet H.」に相当)、各スレーブユニット3の制御情報等が格納されるデータフィールド(図10に示す「Ethernet Data」に相当)、フレームのエラーを検出するためのFCS(Frame Check Sequence)フィールド(図10に示す「FCS」に相当)が用意されている。「Ethernet Data」のフィールドには、EtherCATのヘッダフィールド(図10に示す「EtherCAT H.」に相当)およびEtherCATのデータフィールド(図10に示す「EtherCAT Datagrams」に相当)が用意されている。「EtherCAT Datagrams」のフィールドには、1からnまでn個のデータフィールド(図10に示す1stからnthまでの「EtherCAT Datagram」に相当)を用意することができる。各「EtherCAT Datagram」には、ヘッダフィールド(図10に示す「Datag.Header」に相当)、各スレーブユニット3の制御情報等が格納されるデータフィールド(図10に示す「Data」に相当)、「EtherCAT Datagram」のエラーを検出するためのWKC(Working Counter)フィールド(図10に示す「WKC」に相当)が各々用意されている。
 EtherCATには、「EtherCAT Datagrams」内のデータが対象となるスレーブユニットとのデータ交換が正しく行われたか否かをチェックするためのフィールドであるWKCが「EtherCAT Datagram」毎に用意されている。よって、WKCが対象となるスレーブユニットとのデータ交換異常を示す「EtherCAT Datagram」が存在し、データが無効として取り扱われる場合であっても、WKCが対象となるスレーブユニットとのデータ交換異常を示していない他の「EtherCAT Datagram」のデータに基づいて行われる制御については正常に行うことができる。
 そこで、設定情報構築部14は、グループ判定部13が行ったグループ分けの結果に従い、各「EtherCAT Datagram」のデータフィールドに割り当てるスレーブユニット3のデータの割り当てを規定したフレームのフォーマットに関する設定情報を生成する。データの割り当ては、特定の「EtherCAT Datagram」のデータフィールドにおけるデータのエラーがWKCによるチェックで発覚し、当該フィールドのデータが無効化された場合に、当該データフィールドのデータの無効化による影響が及ぶスレーブユニットの範囲を限定する観点で行われる。
 図11は、スレーブユニット3の割り当ての内訳の一例を示した図である。図11に示す例では、「非安全」に属する標準的なユニットのみをカプラーに組み合わせたスレーブユニット3(標準機器)に関わるデータが「1st EtherCAT Datagram」のフィールドに割り当てられる。「非安全」に属する標準的なユニットのみをカプラーに組み合わせたスレーブユニット3は、本願でいう「非安全機器」の一例に相当する。また、「安全」に属するユニットが含まれているスレーブユニット3に関わるデータが「2nd EtherCAT Datagram」のデータフィールドに割り当てられる。「安全」に属するユニットが含まれているスレーブユニット3は、異常を感知すると自動停止する安全機能を有し、本願でいう「安全機器」の一例に相当する。設定情報構築部14によって生成された設定情報の内容は、設定情報出力部15において生成される設定ファイルに含められ、PLC機能部20へ引き継がれる。この例では、「安全」、「非安全」の例を示したが、「軸」、「非軸」の場合であっても同様である。
 このように、上記設計支援装置4であれば、各スレーブユニット3のグルーピングが自動的に行われる。このため、フレームのフォーマットを設定するための高度なプロトコルの知識が無く、ネットワーク2の詳細な構成や各スレーブユニット3の情報の把握が困難な場合であっても、スレーブユニット3におけるフレームの転送に異常があった場合に影響が及ぶスレーブユニット3の範囲を限定するフレームのフォーマットを容易に生成することができる。
 なお、CPUユニット5のPLC機能部20では、設計支援装置4のツール機能部10から引き継がれた設定ファイルが規定するフォーマットに従ったフレームが生成され、ネットワーク2内の通信に用いられる。すなわち、PLC機能部20では、設定ファイルの内容の読み出しが設定ファイル読出部21において行われ、アプリデータ生成部24から出力されるデータを設定ファイルの規定に従ってデータフィールドに格納したフレームの生成がフレーム生成部25において行われる。そして、PLC機能部20において生成されたフレームがネットワーク2内を巡回し、各スレーブユニット3の制御情報が定期的にリフレッシュされる。
 図12は、ネットワーク2を構成する各ノード(スレーブユニット3に対応)を巡回する過程において、フレーム内のWKCが変化する様子の一例を示した図である。例えば、PLC1から送られたフレームの各「EtherCAT Datagram」のWKCに対し、各ノードを通過する度に適当な値が加算されていくものとする。PLC1には、ネットワーク2において最下位に位置するノードから折り返されるフレームの各「EtherCAT Datagram」のWKCの期待値が予め設定されている。このようなEtherCATのネットワーク2において、最下位に位置するノードからPLC1へ折り返されたフレーム中の特定の「EtherCAT Datagram」のWKCが既定の期待値と一致しない場合、当該「EtherCAT Datagram」のフィールド内のデータは異常として取り扱われ、当該データは無効化される。よって、無効化されたデータ中に、例えば、制御コマンドや制御目標値が含まれている場合、ネットワーク2に繋がるスレーブユニット3で正常な動作が行われない場合が生じ得る。しかし、PLC機能部20が生成するフレームは、特定の「EtherCAT Datagram」のデータフィールドのデータがエラーで無効化されても、データの無効化により影響が及ぶスレーブユニットの範囲が限定されるように、ツール機能部10がスレーブユニット3のデータをグループ毎に別々の「EtherCAT Datagram」のデータフィールドに自動的に割り当てている。従って、ユーザは、ネットワーク2の詳細な構成や各スレーブユニット3の情報を詳細に把握しなくても、データの無効化により影響が及ぶスレーブユニット3の範囲を限定的にすることができる。
 なお、上記実施形態においては、EtherCATに適用される場合を例にしながら説明したが、上記実施形態は、EtherCATに適用されるものに限定されるものではない。上記実施形態は、マスターユニットから送られるフレームを各スレーブユニットが順に転送するネットワークであればEtherCAT以外のプロトコルに適用することも可能である。
 以下、グループ判定部13が参照可能な定義ファイルのバリエーションについて説明する。
 図13Aは、第1例に係る定義ファイルの内容を示した図である。上記実施形態の定義ファイル群16には、例えば、以下のような第1例に係る定義ファイルが含まれていてもよい。本第1例に係る定義ファイルは、各ユニットをグループ分けする際のロジックを各ユニットが同期機能を有するものか否かという観点で規定したものであり、例えば、図13Aに示すように、同期するユニットの所属をグループ1、同期しないユニットの所属をグループ2とすることを規定している。ユニットには、同期機能を有しており且つ当該同期機能が有効(同期リフレッシュモード)に設定されているもの、同期機能を有しているものの当該同期機能が無効(フリーランモード)に設定されているもの、同期機能自体を有していないものがある。同期機能の有効/無効の設定(モードの設定)は、例えば、ネットワークトポロジの設定時やプログラミングの際に行われる。
 このように、本第1例に係る定義ファイルは、同期機能を有しており且つ当該同期機能が有効なものをグループ1とし、それ以外のものをグループ2とすることを規定している。よって、グループ判定部13が本第1例に係る定義ファイルを参照してグループ分けを行った場合、上記ステップS103において設定情報構築部14が設定情報を生成したフレームのフォーマットには、同期するユニット(グループ1)のデータが格納される「EtherCAT Datagram」のフィールドと、同期しないユニット(グループ2)のデータが格納される「EtherCAT Datagram」のフィールドとが別々に用意されることになる。
 このようなフレームのフォーマットに従った通信がネットワーク2で行われれば、特定のデータフィールドでエラーが生じた場合に影響が及ぶユニットの範囲を、同期するユニット同士の範囲内、或いは、同期しないユニット同士の範囲内に留めることができる。
 図13Bは、第2例に係る定義ファイルの内容を示した図である。上記実施形態の定義ファイル群16には、例えば、以下のような第2例に係る定義ファイルが含まれていてもよい。本第2例に係る定義ファイルは、各ユニットをグループ分けする際のロジックを各ユニットの制御周期(データ交換周期)が短いか否かという観点で規定したものであり、例えば、図13Bに示すように、制御周期がX以上の出力ユニットや入力ユニットの所属をグループ1、制御周期がX未満の出力ユニットや入力ユニットの所属をグループ2とすることを規定している。本第2例に係る定義ファイルにおいてXは、制御周期の閾値であり、ネットワーク2に接続されている各スレーブユニット3の制御周期に応じて適宜変更してもよいし、既定の固定値が設定されていてもよい。
 このように、本第2例に係る定義ファイルは、制御周期が長いものをグループ1とし、それ以外のものをグループ2とすることを規定している。よって、グループ判定部13が本第2例に係る定義ファイルを参照してグループ分けを行った場合、上記ステップS103において設定情報構築部14が設定情報を生成したフレームのフォーマットには、制御周期が長いユニット(グループ1)のデータが格納される「EtherCAT Datagram」のフィールドと、制御周期が短いユニット(グループ2)のデータが格納される「EtherCAT Datagram」のフィールドとが別々に用意されることになる。なお、本第2例に係る定義ファイルのロジックの内容は、制御周期に応じて各ユニットを3つ以上にグループ分けするものであってもよい。
 このようなフレームのフォーマットに従った通信がネットワーク2で行われれば、特定のデータフィールドでエラーが生じた場合に影響が及ぶユニットの範囲を、制御周期が短いユニット同士の範囲内、或いは、制御周期が長いユニット同士の範囲内に留めることができる。
 図13Cは、第3例に係る定義ファイルの内容を示した図である。上記実施形態の定義ファイル群16には、例えば、以下のような第3例に係る定義ファイルが含まれていてもよい。本第3例に係る定義ファイルは、各ユニットをグループ分けする際のロジックを、ネットワーク2の経路上、各ユニットが拡張ユニット以前に位置するのか否かという観点で規定したものであり、例えば、図13Cに示すように、拡張ユニット以前に位置するユニットの所属をグループ1、拡張ユニット以降に位置するユニットの所属をグループ2とすることを規定している。ここで、拡張ユニットとは、ネットワーク2に繋がるスレーブユニット3に接続されるネットワーク機器であり、ネットワーク2の経路上、当該スレーブユニット3の下位に他のユニットを接続してユニットの拡張を可能にする装置である。
 このように、本第3例に係る定義ファイルは、各ユニットがネットワーク2の経路上、拡張ユニット以前に位置するものをグループ1とし、それ以外のものをグループ2とすることを規定している。よって、グループ判定部13が本第3例に係る定義ファイルを参照してグループ分けを行った場合、上記ステップS103において設定情報構築部14が設定情報を生成したフレームのフォーマットには、拡張ユニット以前に位置するユニット(グループ1)のデータが格納される「EtherCAT Datagram」のフィールドと、拡張ユニット以降に位置するユニット(グループ2)のデータが格納される「EtherCAT Datagram」のフィールドとが別々に用意されることになる。
 このようなフレームのフォーマットに従った通信がネットワーク2で行われれば、特定のデータフィールドでエラーが生じた場合に影響が及ぶユニットの範囲を、拡張ユニット以前に位置するユニット同士の範囲内、或いは、拡張ユニット以降に位置するユニット同士の範囲内に留めることができる。
 図13Dは、第4例に係る定義ファイルの内容を示した図である。上記実施形態の定義ファイル群16には、例えば、以下のような第4例に係る定義ファイルが含まれていてもよい。本第4例に係る定義ファイルは、各ユニットをグループ分けする際のロジックを各ユニットの入出力データのデータサイズ毎にグループ分けするという観点で規定したものであり、例えば、図13Dに示すように、入力データサイズおよび出力データサイズが何れもXより大きいユニットの所属をグループ1、入力データサイズがX以下であり出力データサイズがXより大きいユニットの所属をグループ2、入力データサイズがXより大きく出力データサイズがX以下のユニットの所属をグループ3、入力データサイズおよび出力データサイズが何れもX以下のユニットの所属をグループ4とすることを規定している。本第4例に係る定義ファイルにおいてXは、データサイズの閾値であり、ネットワーク2に接続されている各スレーブユニット3の入出力データのデータサイズに応じて適宜変更してもよいし、既定の固定値が設定されていてもよい。
 このように、本第4例に係る定義ファイルは、入出力データのデータサイズの大小に応じてグループ分けすることを規定している。よって、グループ判定部13が本第4例に係る定義ファイルを参照してグループ分けを行った場合、上記ステップS103において設定情報構築部14が設定情報を生成したフレームのフォーマットには、入出力データのデータサイズの大小に応じた別々の「EtherCAT Datagram」のフィールドが用意されることになる。なお、本第4例に係る定義ファイルのロジックの内容は、入力データのデータサイズの大小に応じて各ユニットを2つ以上にグループ分けするものであってもよいし、出力データのデータサイズの大小に応じて各ユニットを2つ以上にグループ分けするものであってもよい。また、本第4例に係る定義ファイルのロジックの内容は、3段階以上のデータサイズの大小によって各ユニットをグループ分けするものであってもよい。
 このようなフレームのフォーマットに従った通信がネットワーク2で行われれば、特定のデータフィールドでエラーが生じた場合に影響が及ぶユニットの範囲を、入出力データのデータサイズが比較的近似しているユニット同士の範囲内に留めることができる。
《コンピュータが読み取り可能な記録媒体》
 コンピュータその他の機械、装置(以下、コンピュータ等)に上記いずれかの機能を実現させるプログラムをコンピュータ等が読み取り可能な記録媒体に記録することができる。そして、コンピュータ等に、この記録媒体のプログラムを読み込ませて実行させることにより、その機能を提供させることができる。
 ここで、コンピュータ等が読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって非一時的に蓄積し、コンピュータ等から読み取ることができる記録媒体をいう。このような記録媒体のうちコンピュータ等から取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、CD-ROM、CD-R/W、DVD、ブルーレイディスク(ブルーレイは登録商標)、DAT、8mmテープ、フラッシュメモリなどのメモリカード等がある。また、コンピュータ等に固定された記録媒体としてハードディスクやROM(リードオンリーメモリ)等がある。
S・・PLCシステム;1・・PLC;2・・ネットワーク;3・・スレーブユニット;4・・設計支援装置;5・・CPUユニット;6・・IOユニット;7・・特殊ユニット;8・・PLCシステムバス;9・・電源ユニット;41,51・・マイクロプロセッサ;42・・HDD;43・・RAM;44・・ROM;45・・キーボード;46・・マウス;47・・モニタ;48・・通信IF;49・・CD-ROM駆動装置;52・・チップセット;53・・メインメモリ;54・・不揮発性メモリ;55・・システムタイマ;56・・PLCシステムバスコントローラ;57・・フィールドネットワークコントローラ;58・・USBコネクタ;10・・ツール機能部;11・・機器情報管理部;12・・操作部;13・・グループ判定部;14・・設定情報構築部;15・・設定情報出力部;16・・定義ファイル群;17・・使用定義ファイル管理部;20・・PLC機能部;21・・設定ファイル読出部;22・・起動処理部;23・・システム構成認識部;24・・アプリデータ生成部;25・・フレーム生成部

Claims (9)

  1.  マスターユニットとネットワークを介して接続されるスレーブユニットのネットワークの通信の設定を行う設計支援装置であって、
     前記マスターユニットと接続される、各スレーブユニットの機器情報を取得する機器情報取得部と、
     機器情報またはネットワークの構成情報から前記スレーブユニットが属するグループの情報を記述した定義ファイルを格納する格納部と、
     前記各スレーブユニットの機器情報、定義ファイルの情報から、前記各スレーブユニットをグループ分けするグループ判定部と、
     前記マスターユニットから前記スレーブユニットに送信されるデータフレーム生成を含む通信動作を規定する設定情報を生成する設定部とを備え、
     前記設定部は、前記各スレーブユニットの制御データが格納される前記データフレームに含まれるデータフィールドであって、前記フレームの転送異常によりデータが無効化される単位毎のデータフィールドを前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成する、
     設計支援装置。
  2.  前記グループ判定部は、前記機器情報から得られる前記各スレーブユニットの動作内容の情報から、前記各スレーブユニットを動作内容別にグループ分けを行い、
     前記設定部は、前記データフィールドを、動作内容別に分けられた前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成する、
     請求項1に記載の設計支援装置。
  3.  前記グループ判定部は、前記機器情報から得られる前記各スレーブユニットの動作内容が異常を感知すると自動停止するものか否かの属性の情報から、前記各スレーブユニットのグループ分けを行い、
     前記設定部は、前記データフィールドを、異常を感知すると自動停止する安全機器と否の非安全機器とに分けられた前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成する、
     請求項1または2に記載の設計支援装置。
  4.  マスターユニットとネットワークを介して接続されるスレーブユニットのネットワークの通信の設定を行う設計支援方法であって、
     前記マスターユニットと接続される、各スレーブユニットの機器情報を取得し、
     機器情報またはネットワークの構成情報から前記スレーブユニットが属するグループの情報を記述した定義ファイルを格納する格納部に格納されている、前記各スレーブユニットの機器情報、定義ファイルの情報から、前記各スレーブユニットをグループ分けし、
     前記マスターユニットから前記スレーブユニットに送信されるデータフレーム生成を含む通信動作を規定する設定情報を生成し、
     前記設定情報を生成する際は、前記各スレーブユニットの制御データが格納される前記データフレームに含まれるデータフィールドであって、前記フレームの転送異常によりデータが無効化される単位毎のデータフィールドを前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成する、
     設計支援方法。
  5.  前記グループ分けの際は、前記機器情報から得られる前記各スレーブユニットの動作内容の情報から、前記各スレーブユニットを動作内容別にグループ分けを行い、
     前記フォーマットの生成の際は、前記データフィールドを、動作内容別に分けられた前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成する、
     請求項4に記載の設計支援方法。
  6.  前記グループ分けの際は、前記機器情報から得られる前記各スレーブユニットの動作内容が異常を感知すると自動停止するものか否かの属性の情報から、前記各スレーブユニットのグループ分けを行い、
     前記フォーマットの生成の際は、前記データフィールドを、異常を感知すると自動停止する安全機器と否の非安全機器とに分けられた前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成する、
     請求項4または5に記載の設計支援方法。
  7.  マスターユニットとネットワークを介して接続されるスレーブユニットのネットワークの通信の設定を行う設計支援プログラムであって、
     コンピュータに、
     前記マスターユニットと接続される、各スレーブユニットの機器情報を取得する処理と、
     機器情報またはネットワークの構成情報から前記スレーブユニットが属するグループの情報を記述した定義ファイルを格納する格納部に格納されている、前記各スレーブユニットの機器情報、定義ファイルの情報から、前記各スレーブユニットをグループ分けする処理と、
     前記マスターユニットから前記スレーブユニットに送信されるデータフレーム生成を含む通信動作を規定する設定情報を生成する処理とを実行させ、
     前記設定情報を生成する処理を実行させる際は、前記各スレーブユニットの制御データが格納される前記データフレームに含まれるデータフィールドであって、前記フレームの転送異常によりデータが無効化される単位毎のデータフィールドを前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成する処理と、を実行させる
     設計支援プログラム。
  8.  前記グループ分けの際は、前記機器情報から得られる前記各スレーブユニットの動作内容の情報から、前記各スレーブユニットを動作内容別にグループ分けを行わせ、
     前記フォーマットの生成の際は、前記データフィールドを、動作内容別に分けられた前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成させる、
     請求項7に記載の設計支援プログラム。
  9.  前記グループ分けの際は、前記機器情報から得られる前記各スレーブユニットの動作内容が異常を感知すると自動停止するものか否かの属性の情報から、前記各スレーブユニットのグループ分けを行わせ、
     前記フォーマットの生成の際は、前記データフィールドを、異常を感知すると自動停止する安全機器と否の非安全機器とに分けられた前記グループ毎に確保したフレームのフォーマットで送信されるような設定情報を生成させる、
     請求項7または8に記載の設計支援プログラム。
PCT/JP2015/062856 2014-04-28 2015-04-28 設計支援装置、設計支援方法およびプログラム WO2015166953A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP15786701.1A EP3119041B1 (en) 2014-04-28 2015-04-28 Design assistance device, design assistance method, and program
US15/129,861 US20170170983A1 (en) 2014-04-28 2015-04-28 Design assistance device, design assistance method, and design assistance program
CN201580017399.7A CN106165350B (zh) 2014-04-28 2015-04-28 设计辅助装置、设计辅助方法及计算机可读存储介质
JP2016516392A JP6369539B2 (ja) 2014-04-28 2015-04-28 設計支援装置、設計支援方法およびプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014-092947 2014-04-28
JP2014092947 2014-04-28

Publications (1)

Publication Number Publication Date
WO2015166953A1 true WO2015166953A1 (ja) 2015-11-05

Family

ID=54358680

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/062856 WO2015166953A1 (ja) 2014-04-28 2015-04-28 設計支援装置、設計支援方法およびプログラム

Country Status (5)

Country Link
US (1) US20170170983A1 (ja)
EP (1) EP3119041B1 (ja)
JP (1) JP6369539B2 (ja)
CN (1) CN106165350B (ja)
WO (1) WO2015166953A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017204263A (ja) * 2016-05-10 2017-11-16 エルエス産電株式会社Lsis Co., Ltd. スレーブデバイスの制御方法
JP2019086901A (ja) * 2017-11-02 2019-06-06 オムロン株式会社 制御システム、排他制御方法、対象装置

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6977265B2 (ja) * 2017-01-27 2021-12-08 オムロン株式会社 マスタースレーブ制御システム、およびマスタースレーブ制御システムの制御方法
JP6874438B2 (ja) * 2017-03-14 2021-05-19 オムロン株式会社 スレーブ装置、スレーブ装置の制御方法、情報処理プログラム、および記録媒体
JP6848730B2 (ja) * 2017-07-07 2021-03-24 オムロン株式会社 制御システム、および、制御方法
US11300936B2 (en) 2019-03-26 2022-04-12 Lenovo (Singapore) Pte. Ltd. Extracting EtherCAT datagrams from an EtherCAT frame
EP3949284A1 (en) * 2019-03-26 2022-02-09 Lenovo (Singapore) Pte. Ltd. Extracting ethercat datagrams from an ethercat frame
JP6723493B1 (ja) * 2019-07-25 2020-07-15 三菱電機株式会社 生産支援装置、生産システム及びプログラム
JP7375360B2 (ja) * 2019-08-02 2023-11-08 オムロン株式会社 ネットワークシステム、情報処理装置、および情報処理方法
JP2024040913A (ja) * 2022-09-13 2024-03-26 キヤノン株式会社 システム、その制御方法およびプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006195766A (ja) * 2005-01-14 2006-07-27 Mitsubishi Electric Corp ファームウェア更新方法およびファームウェア更新システム
JP2012194637A (ja) * 2011-03-15 2012-10-11 Omron Corp 設計支援システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101283716B1 (ko) * 2011-10-18 2013-07-08 엘에스산전 주식회사 이더캣 기반의 네트워크 시스템 및 이의 운용방법
US9647880B2 (en) * 2011-11-04 2017-05-09 Nxp Usa, Inc. Real-time distributed network slave device, real-time distributed network and method therefor
US20130173868A1 (en) * 2011-12-29 2013-07-04 Texas Instruments Incorporated Generation of Activation List for Memory Translation and Memory Access Protection in Industrial Ethernet Standard
EP2642811B1 (de) * 2012-03-23 2014-11-26 Siemens Aktiengesellschaft Vorrichtung sowie Verfahren zum Festlegen eines Übertragungskanals eines Slaves

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006195766A (ja) * 2005-01-14 2006-07-27 Mitsubishi Electric Corp ファームウェア更新方法およびファームウェア更新システム
JP2012194637A (ja) * 2011-03-15 2012-10-11 Omron Corp 設計支援システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017204263A (ja) * 2016-05-10 2017-11-16 エルエス産電株式会社Lsis Co., Ltd. スレーブデバイスの制御方法
US10277502B2 (en) 2016-05-10 2019-04-30 Lsis Co., Ltd. Slave device control method
JP2019086901A (ja) * 2017-11-02 2019-06-06 オムロン株式会社 制御システム、排他制御方法、対象装置

Also Published As

Publication number Publication date
EP3119041A1 (en) 2017-01-18
CN106165350A (zh) 2016-11-23
US20170170983A1 (en) 2017-06-15
JPWO2015166953A1 (ja) 2017-04-20
CN106165350B (zh) 2019-05-10
EP3119041A4 (en) 2017-05-03
JP6369539B2 (ja) 2018-08-08
EP3119041B1 (en) 2019-11-13

Similar Documents

Publication Publication Date Title
JP6369539B2 (ja) 設計支援装置、設計支援方法およびプログラム
JP6705266B2 (ja) 制御装置、制御方法およびプログラム
JP6822153B2 (ja) 工業用自動化制御装置のための改良型テストマネージャ
JP2018097663A (ja) 制御システム、制御プログラムおよび制御方法
JP6406466B1 (ja) 制御装置、制御方法および制御プログラム
EP3428750B1 (en) Slave device, method for controlling slave device, information processing program, and recording medium
US10579031B2 (en) Controller
JP6299064B2 (ja) 制御装置、制御方法、およびプログラム
WO2020240944A1 (ja) 制御システム、サポート装置およびサポートプログラム
US20140005808A1 (en) Cpu of plc, system program for plc, and recording medium storing system program for plc
JP2014222871A (ja) プロフィバスdpのマスタ装置
JP6937626B2 (ja) コントローラ装置、及び二重化システムの同期化方法
JP5921781B2 (ja) プログラマブルコントローラおよびプログラマブルコントローラの制御方法
US9563181B2 (en) Method for operating an automation system
TW201823888A (zh) 數值控制系統及其控制方法
EP3885856A1 (en) Control system, control method, and drive device
JP2015215669A (ja) 数値制御装置および制御システム
JP6969454B2 (ja) 制御装置、制御方法、および、制御プログラム
JP7115195B2 (ja) 制御システム、サポート装置、サポートプログラム
EP3885855A1 (en) Control system, support device, and support program
JP7314620B2 (ja) 制御システム、制御装置および制御プログラム
JP7231073B2 (ja) 制御装置および制御システム
JP2010220141A (ja) 分散システム

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15129861

Country of ref document: US

REEP Request for entry into the european phase

Ref document number: 2015786701

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015786701

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2016516392

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE