WO2019239884A1 - Dispositif de commande, et procédé de commande associé - Google Patents

Dispositif de commande, et procédé de commande associé Download PDF

Info

Publication number
WO2019239884A1
WO2019239884A1 PCT/JP2019/021152 JP2019021152W WO2019239884A1 WO 2019239884 A1 WO2019239884 A1 WO 2019239884A1 JP 2019021152 W JP2019021152 W JP 2019021152W WO 2019239884 A1 WO2019239884 A1 WO 2019239884A1
Authority
WO
WIPO (PCT)
Prior art keywords
transmission
period
cycle
data
time
Prior art date
Application number
PCT/JP2019/021152
Other languages
English (en)
Japanese (ja)
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 オムロン株式会社
Publication of WO2019239884A1 publication Critical patent/WO2019239884A1/fr

Links

Images

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
    • 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]

Definitions

  • the present invention relates to control devices such as a programmable controller (hereinafter also referred to as PLC).
  • PLC programmable controller
  • Patent Document 1 listed below discloses a communication system in which a transmission prohibition period having a length corresponding to the size of data transmitted at one communication rate is set for transmission at one communication rate. .
  • FIG. 8 is a diagram for explaining a conventional adjustment method for transmission of the first cycle data CD and transmission of the second cycle data ND using the same route.
  • the second cycle data ND cannot be transmitted.
  • the transmission of the first cycle data CD is periodically executed in preference to the transmission of the second cycle data ND.
  • the first cycle data CD is buffered (that is, stored) in the first transmission queue TXQ0 together with the “transmission start time S” that is the time at which the first cycle data CD should be transmitted, and the buffering is completed. Then, transmission is possible. Then, transmission of the first cycle data CD that has become ready for transmission to the network is started at the transmission start time S. That is, the “transmission start time S”, which is the time at which the first cycle data CD is to be transmitted, and the actual transmission start time of the first cycle data CD are the same.
  • the second cycle data ND is buffered in the second transmission queue TXQ1, and becomes ready for transmission when the buffering is completed. Then, transmission of the second cycle data ND in the transmittable state to the network is started in a period other than the “period during transmission of the first cycle data CD” and the “period of the transmission prohibition period B”. That is, in the “period during transmission of the first cycle data CD” and “period of the transmission prohibition period B”, the transmission of the second cycle data ND cannot be started.
  • the transmission prohibition period B is set to start transmission of the first cycle data CD at the transmission start time S. During the transmission prohibition period B, transmission start of the second cycle data ND is prohibited.
  • the first cycle data CD is periodically transmitted, and the transmission start time S of the first cycle data CD to be transmitted in the N cycle is “transmission start time S (n)”, and is transmitted in the N + 1 cycle.
  • the transmission start time S of the power first cycle data CD is expressed as “transmission start time S (n + 1)”.
  • N is a “natural number greater than or equal to zero”.
  • the transmission prohibition period B the transmission prohibition period B set for transmission of the first period data CD to be transmitted in the (N + 1) period is particularly expressed as “transmission prohibition period B (n + 1)”.
  • the transmission start time S of the first cycle data CD can be acquired only at the same time as the first cycle data CD, that is, it cannot be grasped in advance.
  • the transmission start time S (n + 1) of the first cycle data CD to be transmitted in the (N + 1) th cycle is unknown at the buffering completion time (transmittable time) of the second cycle data ND,
  • the transmission prohibition period B cannot be set when buffering of the data ND is completed.
  • a time interval corresponding to the transmission cycle C of the first periodic data CD transmitted periodically is added to the transmission start time S.
  • the transmission cycle C is also referred to as “control cycle”.
  • FIG. 9 shows the conventional technique in which “the time required for transmission of the second cycle data ND” is set as the transmission prohibition period B before the reference time T at the reference time T (n + 1) and the transmission start time S (n + 1). It is a figure explaining the problem which generate
  • FIG. 9A is a diagram illustrating a problem that occurs in the related art when the transmission start time S (n) in the Nth cycle is delayed from the reference time T (n) in the Nth cycle.
  • FIG. 9B is a diagram illustrating a problem that occurs in the related art when the transmission start time S (n) in the Nth cycle is earlier than the reference time T (n) in the Nth cycle.
  • the transmission start time S (n) of the Nth cycle is delayed from the reference time T (n) of the Nth cycle, “transmission” is performed at the transmission start time S (n).
  • the reference time T (n + 1) which is the time to which the “time interval corresponding to the period C” is added, shows the following tendency. That is, the reference time T (n + 1) in the (N + 1) th cycle tends to be delayed from the transmission start time S (n + 1) in the (N + 1) th cycle.
  • the “time required for transmission of the second period data ND” is set as the transmission prohibition period B before the reference time T (n + 1).
  • the time later than the transmission start time S (n + 1) is set as the reference time T (n + 1), and “the time required for transmission of the second period data ND” before the reference time T (n + 1).
  • a transmission prohibition period B is set.
  • the transmission prohibition period B is defined as a period from “a time after the time required to transmit the second period data ND from the transmission start time S (n + 1)” to “a transmission start time S (n + 1)”.
  • the transmission of the first period data CD can be started at the transmission start time S (n + 1).
  • the transmission prohibition period B before the reference time T (n + 1) delayed from the transmission start time S (n + 1), the transmission prohibition period B, which is “the time required for transmission of the second period data ND”. Is set. That is, the transmission prohibition period B set by the prior art before the reference time T (n + 1) is “transmission start” from “a time retroactive to the transmission time of the second period data ND from the transmission start time S (n + 1)”. It is later than the period until time S (n + 1) ".
  • the time point at which the second cycle data ND is ready for transmission is not included in the “period during transmission of the first cycle data CD” or the “period of the transmission prohibited period B”. Transmission of the periodic data ND is started immediately after the transmission becomes possible.
  • the time at which the transmission of the second cycle data ND is completed is later than the transmission start time S (n + 1), and the first cycle data CD cannot be transmitted during the transmission of the second cycle data ND. Transmission of the first period data CD cannot be started at the start time S (n + 1).
  • the “transmission cycle” is set at the transmission start time S (n).
  • the reference time T (n + 1) which is the time to which the “time interval corresponding to C” is added, shows the following tendency. That is, the reference time T (n + 1) in the (N + 1) th cycle tends to be earlier than the transmission start time S (n + 1) in the (N + 1) th cycle.
  • the “time required for transmission of the second period data ND” is set as the transmission prohibition period B before the reference time T (n + 1).
  • the time earlier than the transmission start time S (n + 1) is set as the reference time T (n + 1), and “the time required for the transmission of the second period data ND” before the reference time T (n + 1).
  • a certain transmission prohibition period B is set.
  • the transmission prohibition period B is defined as a period from “a time after the time required to transmit the second period data ND from the transmission start time S (n + 1)” to “a transmission start time S (n + 1)”.
  • the transmission of the first period data CD can be started at the transmission start time S (n + 1).
  • the transmission prohibition period B which is “time required for transmission of the second period data ND”, is set before the reference time T (n + 1) earlier than the transmission start time S (n + 1), is set. Is set. That is, the transmission prohibition period B set by the prior art before the reference time T (n + 1) is “transmission start” from “a time retroactive to the transmission time of the second period data ND from the transmission start time S (n + 1)”. It is earlier than the period until “time S (n + 1)”.
  • the time point at which the second cycle data ND is ready for transmission is not included in the “period during transmission of the first cycle data CD” or the “period of the transmission prohibited period B”. Transmission of the periodic data ND is started immediately after the transmission becomes possible.
  • the time when the transmission of the second period data ND is completed is later than the transmission start time S (n + 1), and the first period data CD cannot be transmitted during the transmission of the second period data ND. Transmission of the first period data CD cannot be started at the start time S (n + 1).
  • the “time required for transmission of the second period data ND” calculated based on the data amount of the second period data ND is transmitted.
  • the prohibition period B is set before the reference time T.
  • One aspect of the present disclosure has been made to solve the above-described problem, and the purpose of the present disclosure is for a case where a reference time of a certain cycle and an actual transmission start time are different from each other regarding data to be transmitted periodically
  • Another object is to realize a control device or the like that can transmit data at the scheduled time of the next cycle.
  • a control device is a control device that outputs first cycle data for each control cycle, and the first cycle data is converted into the first cycle data.
  • a time interval corresponding to the control period is added to the transmission start time of the first period data to be transmitted in the control period of the Nth period, where N is a natural number greater than or equal to 0, and is acquired together with the transmission start time.
  • a control method is a control method for a control device that outputs first cycle data for each control cycle, and the first cycle data is the first cycle data.
  • a difference between the calculation step of calculating the reference time of the (N + 1) th cycle, the transmission start time of the first cycle data to be transmitted in the control cycle of the Nth cycle, and the reference time of the Nth cycle is used.
  • a setting step for setting the transmission prohibition period generated at least before or after the reference time of the (N + 1) th cycle, and a period other than the transmission prohibition period set in the setting step Priority than data includes a transmission step of starting transmission of lower second period data.
  • data that is to be transmitted periodically is transmitted at a scheduled time of the next cycle even when the reference time of a certain cycle and the actual transmission start time deviate. There is an effect that can be.
  • Embodiment 1 an embodiment according to one aspect of the present invention (hereinafter, also referred to as “the present embodiment”) will be described with reference to the drawings. Specifically, FIG. 9 will be described in detail. In the drawings, the same or corresponding parts are denoted by the same reference numerals and description thereof will not be repeated.
  • a PLC (Programmable Logic Controller) 10 that controls a control target such as a machine and equipment, in particular, a CPU unit 100 of the PLC 10 will be described as a typical example of a control device.
  • CPU is an abbreviation for “Central Processing Unit”.
  • N represents “a natural number of 0 or more”.
  • the transmission of the first cycle data CD and the transmission of the second cycle data ND use the same path, and during the transmission of the first cycle data CD, the second cycle data ND cannot be transmitted.
  • the first periodic data CD cannot be transmitted.
  • the first cycle data CD is buffered in the first transmission queue TXQ0 together with the “transmission start time S” that is the time at which the first cycle data CD should be transmitted, and becomes ready for transmission when the buffering is completed.
  • the second cycle data ND is buffered in the second transmission queue TXQ1, and becomes ready for transmission when the buffering is completed.
  • the first cycle data CD is periodically transmitted.
  • the transmission start time S of the first cycle data CD to be transmitted in the N cycle is “transmission start time S (n)”, and the first cycle to be transmitted in the N + 1 cycle.
  • the transmission start time S of the data CD is expressed as “transmission start time S (n + 1)”.
  • the “time required for transmission of the second cycle data ND” is based on the data amount of the second cycle data ND.
  • the “time required for transmission of the second period data ND” calculated in the above is used.
  • the time interval corresponding to the transmission cycle C is added to “the transmission start time S (n) of the first cycle data CD in the Nth cycle”, and “the reference time T in the (N + 1) th cycle”. (N + 1) "is calculated. Then, according to the related art, the “time required for transmission of the second cycle data ND” is set to the transmission prohibition period for prohibiting the start of transmission of the second cycle data ND so that the reference time T (n + 1) of the (N + 1) th cycle ends. B (“transmission prohibited period B (n + 1)” in FIG. 8) is set.
  • the PLC 10 sets the adjustment period Ba (margin time), Set as the transmission prohibition period B.
  • the PLC 10 dynamically changes the adjustment period Ba (in the (N + 1) th cycle) according to the state of the previous transmission (that is, the transmission state of the first cycle data CD in the Nth cycle) to optimize the adjustment period Ba. Execute the conversion.
  • the outline of the control system 1 including the PLC 10 will be described with reference to FIG.
  • FIG. 2 is a diagram showing an overall outline of the control system 1.
  • one or more PLCs 10 and devices whose operations are controlled by the PLC 10 are connected to a control network such as the field network 20.
  • 2 is connected to servo drivers 33 and 34 via a network such as the field network 20 and the PLC system bus 400, and each of the servo drivers 41 and 42 is further connected to each of the servo drivers 33 and 34.
  • a control network such as the field network 20.
  • servo drivers 33 and 34 via a network such as the field network 20 and the PLC system bus 400
  • the PLC 10 is a control device that controls input devices and output devices in the production facility.
  • the PLC 10 transmits the first period data CD and the second period data ND to a network such as the field network 20 and the PLC system bus 400, and in particular, regarding the transmission of the first period data CD and the second period data ND.
  • the following processing is executed. That is, the PLC 10 is prohibited from transmitting the second cycle data ND in order to avoid a situation in which “the transmission of the first cycle data CD cannot be started at the transmission start time S due to the transmission of the second cycle data ND”.
  • the transmission prohibition period B is set.
  • the PLC 10 transmits the first cycle data CD periodically (specifically, every control cycle (specifically, transmission cycle C)).
  • transmission / reception of the first cycle data CD and the second cycle data ND controlled by the PLC 10 will be described in detail.
  • first cycle data CD is, for example, such “IO data for executing high-speed and high-precision control for production equipment”, and “data for executing high-speed and high-precision control for production equipment” is “ Also referred to as “control data”.
  • the PLC 10 executes a user program generated by compiling a ladder program (source program) described by ladder logic (ladder language), thereby executing high-speed and high-precision control on a control target.
  • the “user program” is created according to a user's control target (for example, a target line and process), that is, according to a control target line (process) controlled using the control system 1, etc. It is a program designed arbitrarily.
  • the user program in the object program format is stored in the nonvolatile memory 105 of the PLC 10 or the like.
  • the user program is executed by the microprocessor 103 of the CPU unit 100, and the execution result is transmitted to the control target of the PLC 10 as control data, that is, as the first cycle data CD.
  • a user program for high-speed and high-accuracy control on a control target is repeatedly executed by the microprocessor 103 at a high-speed cycle, and the PLC 10 outputs the first cycle data CD that is the execution result at a fixed cycle. Send to control target.
  • the PLC 10 (particularly the CPU unit 100) sends the first cycle data CD to the functional units such as the IO units 301 to 303 and the special unit 304 and the slave devices such as the servo drivers 33 and 34 and the remote IO terminal 35 at a fixed cycle. Send with.
  • the PLC 10 transmits the first cycle data CD to the slave device (field device). Requires communication in the ⁇ s order.
  • the PLC 10 executes the following processing in addition to high-speed and high-precision control of the production facility. That is, the PLC 10 stores, for example, (1) processing related to connection to an external database, (2) processing related to connection to an external display device, and (3) information acquired from a control target. Execute processing to send information to an external server. Specifically, the PLC 10 performs transmission and reception (collection) of data other than the first cycle data CD (control data). For example, the function unit, the slave device, and various external devices (for example, external devices) The second period data ND is transmitted to and received from the information system server.
  • the second cycle data ND is information system data indicating, for example, statistical information on the attenuation value of the sensor light reception signal used for failure diagnosis of the control system 1.
  • the second cycle data ND has a lower priority than the first cycle data CD, and will be described in detail later.
  • transmission of the first cycle data CD at the transmission start time may be hindered by the transmission of the second cycle data ND.
  • the transmission start of the second cycle data ND is controlled (prohibited) so that there is no such.
  • the PLC 10 is required to have the punctuality of the order of “ ⁇ s (one millionth of a second)” for the first cycle data CD transmitted at a fixed cycle.
  • the punctuality required for transmission of the second period data ND is, for example, on the order of ms (thousandth of a second).
  • the PLC 10 is a control device that controls controlled objects such as machines and facilities in the control system 1, and is a master device that manages data transmission via the field network 20 in the control system 1.
  • the PLC 10 executes, for example, a control program that is also called a user program, and controls the overall operation of the control system 1.
  • the PLC 10 includes a CPU unit 100 that executes main arithmetic processing, a power supply unit 200, one or more IO (Input / Output) units (IO units 301 to 303 in the example of FIG. 2), a special unit 304, including.
  • the IO units 301 to 303 and the special unit 304 may be called function units.
  • the CPU unit 100, each of the IO units 301 to 303, and the special unit 304 are configured to exchange data with each other via the PLC system bus 400.
  • the CPU unit 100 executes various processes related to the state of the control target, for example, “transmission of output data, reception of input data, execution of a control program that generates output data using the input data; The process of controlling the control target by repeating is executed. Details of the CPU unit 100 will be described later with reference to FIG.
  • the power supply unit 200 supplies power of an appropriate voltage to the CPU unit 100, the IO units 301 to 303, and the special unit 304.
  • the IO units 301 to 303 are units related to general input / output processing, and control input / output of data such as on / off (that is, binarized data). Specifically, each of the IO units 301 to 303 is in a state in which the device 31 that is an input device such as a sensor detects some target object (ON) and in a state in which no target object is detected (in FIG. Gather information about whether it is off). Each of the IO units 301 to 303 is either a command to activate (on) or a command to deactivate (off) to the device 32 which is an output device such as a relay or an actuator. Is output.
  • the special unit 304 has functions not supported by the IO units 301 to 303, such as input / output of data (for example, analog data) different from data processed by the IO units 301 to 303, temperature control, and communication using a specific communication method. .
  • the field network 20 transmits various data exchanged between the CPU unit 100 and field devices (servo driver 33, servo driver 34, remote IO terminal 35, etc.).
  • field devices servo driver 33, servo driver 34, remote IO terminal 35, etc.
  • various types of industrial Ethernet can be used.
  • industrial Ethernet for example, EtherCAT (registered trademark), Profinet IRT, MECHALINKIN (registered trademark) -III, Powerlink, SERCOS (registered trademark) -III, CIP Motion, and the like are known.
  • a field network other than industrial Ethernet may be used as the field network 20. For example, if the motion control is not performed, DeviceNet, CompoNet / IP (registered trademark), or the like may be used.
  • the PLC 10 allows the CPU unit 100 to directly control the CPU unit 100 within the range covered by such built-in functions by providing the CPU unit 100 with the functions of the IO units 301 to 303 and the functions of the servo drivers 33 and 34. You may control.
  • Each of the servo drivers 33 and 34 is connected to the CPU unit 100 via the field network 20 and drives each of the servo motors 41 and 42 according to a command value from the CPU unit 100.
  • FIG. 2 shows a system example in which each of the servo motors 41 and 42 and each of the servo drivers 33 and 34 are combined.
  • other configurations for example, a system in which a pulse motor and a pulse motor driver are combined. Can also be adopted.
  • the remote IO terminal 35 basically performs processing related to general input / output processing in the same manner as the IO units 301 to 303. More specifically, the remote IO terminal 35 includes a communication coupler 36 for performing processing related to data transmission in the field network 20, and one or more IO units (IO units 37 and 38 in the example of FIG. 2). Including. The communication coupler 36 and each of the IO units 37 and 38 are configured to exchange data with each other via the remote IO terminal bus 39.
  • the PLC 10 is connected to an analysis device 50 by an arbitrary communication cable 40, and may be connected to the PLC 10 by, for example, Ether IP (registered trademark). If the PLC 10 does not transmit the second cycle data ND continuously over a predetermined number of control cycles after the second cycle data ND is in a transmittable state, the PLC 10 indicates that “the second cycle continues over a predetermined number of control cycles. The analysis device 50 is notified that the data ND has not been transmitted. When the analysis device 50 is notified from the PLC 10 that “the second cycle data ND is not transmitted continuously over a predetermined number of control cycles”, the analysis device 50 displays this fact to the user.
  • the analysis device 50 is configured by a normal PC (Personal Computer) and includes input / output devices such as a touch panel and a display.
  • PC Personal Computer
  • the PLC 10 is a control device that outputs the first cycle data CD every control cycle (specifically, the transmission cycle C), and includes an acquisition unit 110, a calculation unit 130, a setting unit 160, and a second transmission unit. 170 (2) (transmission unit).
  • the acquisition unit 110 acquires the first cycle data CD together with the transmission start time S of the first cycle data CD.
  • a time interval is added to calculate a reference time T (n + 1) of the (N + 1) period.
  • the setting unit 160 generates a transmission generated using the difference between the transmission start time S (n) of the first cycle data CD to be transmitted in the control cycle of the Nth cycle and the reference time T (n) of the Nth cycle.
  • the prohibition period B (specifically, the transmission prohibition period B (n + 1)) is set to at least one before or after the reference time T (n + 1) of the N + 1 period.
  • the second transmission unit 170 (2) starts transmission of the second cycle data ND having a lower priority than the first cycle data CD in a period that is not the transmission prohibition period B set by the setting unit 160.
  • the PLC 10 considers the difference between the transmission start time S (n) of the first cycle data CD to be transmitted in the Nth cycle control cycle and the Nth cycle reference time T (n). Then, a transmission prohibition period B for prohibiting the start of transmission of the second cycle data ND is calculated. Then, the PLC 10 calculates at least one before and after the reference time T (n + 1) of the (N + 1) th cycle, which is calculated by adding a time interval corresponding to the transmission cycle C to the transmission start time S (n) of the Nth cycle. The transmission prohibition period B (n + 1) is set. Then, the PLC 10 starts transmitting the second cycle data ND in a period that is not the transmission prohibition period B (n + 1).
  • the PLC 10 determines that the transmission start time S (n) in the Nth cycle and the reference time T (n)
  • the transmission prohibition period B (n + 1) considering the difference is set at least one before or after the reference time T (n + 1) of the (N + 1) th cycle.
  • the PLC 10 sets an appropriate transmission prohibition period B (n + 1) considering the difference between the two, There is an effect that transmission of the first cycle data CD can be started at the transmission start time S (n + 1) of the (N + 1) th cycle.
  • the PLC 10 further includes a first generation unit 140 and a second generation unit 150.
  • generation part 140 produces
  • the transmission prohibition period B set by the setting unit 160 includes a total period of the basic period Bb and the adjustment period Ba.
  • the PLC 10 takes into account “the difference between the transmission start time S (n) and the reference time T (n) in the control cycle of the Nth cycle” and “the data amount of the second cycle data ND”.
  • the transmission prohibition period B in which the transmission start of the second cycle data ND is prohibited is set.
  • the transmission of the first cycle data CD is started at the transmission start time S (n + 1) of the (N + 1) th cycle.
  • the difference between the transmission start time S (n + 1) and the reference time T (n + 1) in the (N + 1) th cycle is “the difference between the transmission start time S (n) and the reference time T (n) in the Nth cycle”. It is common for the difference to be less than or equal to.
  • the PLC 10 sets the “adjustment period Ba generated from the difference between the transmission start time S (n) in the Nth cycle and the reference time T (n)” with respect to the “N + 1th cycle reference time T (n + 1)”.
  • the including period is set as the transmission prohibition period B.
  • the PLC 10 appropriately considers the difference between the two and the data amount of the second cycle data ND. It is possible to set an effective transmission prohibition period B (n + 1).
  • the setting unit 160 when the transmission start time S (n) of the first cycle data CD to be transmitted in the control cycle of the Nth cycle is later than the reference time T (n) of the Nth cycle, the setting unit 160 Thus, the transmission prohibition period B (n + 1) is set. That is, the setting unit 160 sets a period including the total period of the basic period Bb (n + 1) and the adjustment period Ba (n + 1) so that the reference time T (n + 1) in the (N + 1) -th cycle ends. Set as (n + 1).
  • the PLC 10 determines that the reference time T (n + 1) of the (N + 1) th cycle is the end point. In such a manner, a period including the total period of the basic period Bb (n + 1) and the adjustment period Ba (n + 1) is set as the transmission prohibition period B (n + 1).
  • the time interval corresponding to the transmission cycle C at the transmission start time S (n) of the Nth cycle is generally delayed from the transmission start time S (n + 1) of the (N + 1) th cycle.
  • the reference time T (n + 1) in the (N + 1) -th cycle from “the time that has gone back from the basic period Bb (n + 1) corresponding to the time required for transmission of the second cycle data ND from the reference time T (n + 1) in the (N + 1) -th cycle”. If only the period up to “)” is set as the transmission prohibition period B (n + 1), it may not be sufficient. In other words, the desirable transmission prohibition period B (n + 1) is “from the reference time T (n + 1) in the (N + 1) th cycle to the basic period Bb (n + 1)” to “the reference time T (n + 1) in the (N + 1) th cycle”. It is considered to be longer than this period.
  • the PLC 10 further sets a transmission prohibition period B (n + 1) in the (N + 1) th period in consideration of the difference between the transmission start time S (n) in the Nth period and the reference time T (n). That is, the PLC 10 sets the basic period Bb (n + 1) as the transmission prohibition period B (n + 1), and in addition, sets the difference period V that is a difference period between the transmission start time S (n) and the reference time T (n). (N) is set as the transmission prohibition period B (n + 1). Specifically, the PLC 10 determines that the “N + 1 period from the time including the total period of the basic period Bb (n + 1) and the adjustment period Ba (n + 1) from the reference time T (n + 1) of the (N + 1) period”. The period until the “eye reference time T (n + 1)” is set as the transmission prohibition period B (n + 1).
  • the PLC 10 takes into account the difference between the two and the data amount of the second cycle data ND. There is an effect that the transmission prohibition period B (n + 1) can be set.
  • the setting unit 160 when the transmission start time S (n) of the first cycle data CD to be transmitted in the control cycle of the N cycle is earlier than the reference time T (n) of the N cycle, the setting unit 160 Thus, the transmission prohibition period B (n + 1) is set. That is, the setting unit 160 sets the period including the basic period Bb (n + 1) as the transmission prohibition period B (n + 1) so that the reference time T (n + 1) in the (N + 1) th cycle is the end point. In addition, the setting unit 160 sets the period including the adjustment period Ba (n + 1) as the transmission prohibition period B (n + 1) so that the reference time T (n + 1) in the (N + 1) -th cycle starts.
  • the PLC 10 determines that the reference time T (n + 1) of the (N + 1) th cycle is the end point.
  • the period including the basic period Bb (n + 1) is set as the transmission prohibition period B (n + 1).
  • the PLC 10 sets a period including the adjustment period Ba (n + 1) as the transmission prohibition period B (n + 1) so that the reference time T (n + 1) in the (N + 1) -th cycle starts.
  • the time interval corresponding to the transmission cycle C at the transmission start time S (n) of the Nth cycle is generally earlier than the transmission start time S (n + 1) of the (N + 1) th cycle.
  • the reference time T (n + 1) in the (N + 1) -th cycle from “the time that has gone back from the basic period Bb (n + 1) corresponding to the time required for transmission of the second cycle data ND from the reference time T (n + 1) in the (N + 1) -th cycle”. If only the period up to “)” is set as the transmission prohibition period B (n + 1), it may not be sufficient. In other words, the desirable transmission prohibition period B (n + 1) is “from the reference time T (n + 1) in the (N + 1) th cycle to the basic period Bb (n + 1)” to “the reference time T (n + 1) in the (N + 1) th cycle”. It is considered to be longer than this period.
  • the PLC 10 further sets a transmission prohibition period B (n + 1) in the (N + 1) th period in consideration of the difference between the transmission start time S (n) in the Nth period and the reference time T (n). That is, the PLC 10 sets the basic period Bb (n + 1) as the transmission prohibition period B (n + 1), and in addition, sets the difference period V that is a difference period between the transmission start time S (n) and the reference time T (n). (N) is set as the transmission prohibition period B (n + 1).
  • the PLC 10 determines a period from “a time that is based on the basic time Bb (n + 1) from the reference time T (n + 1) in the (N + 1) th cycle” to “a reference time T (n + 1) in the (N + 1) th cycle”. It is set as a transmission prohibition period B (n + 1). Further, the PLC 10 sets a period from “the reference time T (n + 1) in the (N + 1) th cycle” to “the time that has passed through the period including the adjustment period Ba (n + 1) from the reference time T (n + 1) in the (N + 1) th cycle”. The transmission prohibition period B (n + 1) is set.
  • the PLC 10 takes into account the difference between the two and the data amount of the second cycle data ND. There is an effect that the transmission prohibition period B (n + 1) can be set.
  • the PLC 10 further includes an instruction unit 180.
  • the PLC 10 if the PLC 10 does not transmit the second cycle data ND continuously over a predetermined number of control cycles, the PLC 10 forcibly starts transmission of the second cycle data ND even in the transmission prohibition period B. To do. Therefore, the PLC 10 has an effect that it can transmit the second cycle data ND that has not been transmitted continuously over a predetermined number of control cycles.
  • the PLC 10 further includes a notification unit 190.
  • the notification unit 190 indicates that “the second transmission unit 170 (2) does not transmit the second cycle data ND continuously over a predetermined number of control cycles” and “the second transmission unit 170 (2) does not transmit the predetermined number of times. “Not transmit second period data ND continuously over the control period” is notified to the outside.
  • the PLC 10 may notify the outside that such a situation has occurred. There is an effect that you can.
  • FIG. 1 is a diagram illustrating a configuration example of the CPU unit 100 of the PLC 10.
  • the CPU unit 100 includes an FPGA 101, a chip set 102, a microprocessor 103, a main memory 104, and a nonvolatile memory 105 as hardware configurations.
  • the CPU unit 100 may further include a USB connector (not shown).
  • the chip set 102 and other components are coupled via various buses (internal buses). Note that the microprocessor 103 and the chip set 102 may be integrally formed.
  • the microprocessor 103 and the chipset 102 are typically configured according to a general-purpose computer architecture. That is, the microprocessor 103 interprets and executes the instruction codes sequentially supplied from the chip set 102 according to the internal clock.
  • the chip set 102 exchanges internal data with various connected components and generates instruction codes necessary for the microprocessor 103. Further, the chip set 102 has a function of caching data obtained as a result of execution of arithmetic processing in the microprocessor 103.
  • the CPU unit 100 includes a main memory 104 and a nonvolatile memory 105 as storage means.
  • the main memory 104 is a volatile storage area (RAM), and holds various programs to be executed by the microprocessor 103 after the CPU unit 100 is powered on.
  • the main memory 104 is also used as a working memory when the microprocessor 103 executes various programs.
  • a main memory 104 for example, DRAM (Dynamic Random Access Memory), SRAM (Static Random Access Memory), or the like can be used.
  • the non-volatile memory 105 holds data such as various programs and parameters in a non-volatile manner. These data are copied to the main memory 104 so that the microprocessor 103 can access them as necessary.
  • a nonvolatile memory 105 a semiconductor memory such as a flash memory can be used.
  • a magnetic recording medium such as a hard disk drive or an optical recording medium such as a DVD-RAM (Digital Versatile Disk Random Access Memory) may be used.
  • the FPGA 101 is a programmable logic circuit that allows a user to set a circuit configuration after manufacture, and executes various processes including communication processes such as transmission of output data and reception of input data.
  • communication processing the FPGA 101 executes transmission of output data to units other than the CPU unit 100 and devices other than the PLC 10, and reception of input data from units other than the CPU unit 100 and devices other than the PLC 10.
  • the FPGA 101 performs data transmission / reception with the main memory 104 as a communication process.
  • the process executed by the FPGA 101 is not limited to the communication process.
  • data output from the CPU unit 100 to units other than the CPU unit 100 and data output from the PLC 10 to devices other than the PLC 10 are also referred to as “output data”.
  • Data input to the CPU unit 100 from units other than the CPU unit 100 and data input to the PLC 10 from devices other than the PLC 10 are also referred to as “input data”.
  • the microprocessor 103 transmits the first cycle data CD (for example, control data) and the second cycle data ND (for example, data other than the control data) to be transmitted to the outside of the CPU unit 100 via the chipset 102, for example. It is set in the main memory 104 (in other words, data is stored). Then, the microprocessor 103 requests the FPGA 101 to transmit the data set in the main memory 104 via the chip set 102.
  • the microprocessor 103 may be configured by a plurality of cores, and each core may store data assigned to each core in the main memory 104 via the chipset 102.
  • the first core stores the first cycle data CD in the main memory 104
  • the second core stores the second cycle data ND in the main memory 104
  • the FPGA 101 may be requested to transmit the one-cycle data CD.
  • each of the plurality of cores may store data assigned to each core in the main memory 104 and request transmission to the FPGA 101.
  • the main entity that stores and transmits the first cycle data CD in the main memory 104 and the main entity that stores and transmits the second cycle data ND in the main memory 104 are different entities (for example, Another core) may be used.
  • the FPGA 101 (particularly, the acquisition unit 110) transfers data set in the main memory 104 to the internal RAM 120 of the FPGA 101 (particularly, the transmission queue TXQ of the transmission queue table 121) using a DMA (Dynamic Memory Access) function. Specifically, the FPGA 101 acquires the first cycle data CD from the main memory 104, and buffers the acquired first cycle data CD in the first transmission queue TXQ0. Similarly, the FPGA 101 acquires the second cycle data ND from the main memory 104, and buffers the acquired second cycle data ND in the second transmission queue TXQ1.
  • DMA Dynamic Memory Access
  • the FPGA 101 transmits the second cycle data ND stored in the second transmission queue TXQ1.
  • the basic period Bb is calculated from the data length.
  • the FPGA 101 acquires the transmission start time S (n) of the first cycle data CD of the Nth cycle when the transmission of the first cycle data CD of the Nth cycle is started. Then, the acquired transmission start time S (n) is compared with the reference time T (n) of the Nth cycle. If the transmission start time S (n) and the reference time T (n) do not match, the FPGA 101 calculates a difference period V (n) that is the difference between the two.
  • the FPGA 101 (particularly, the setting unit 160) prohibits the difference period V (n) from the N + 1th front transmission.
  • the front transmission prohibition period is a transmission prohibition period B set in addition to the basic period Bb before the reference time T, and is a period during which the start of transmission of the second period data ND is prohibited.
  • a period B (n + 1) is set.
  • the FPGA 101 When the transmission start time S (n) of the Nth cycle is earlier than the reference time T (n) of the Nth cycle, the FPGA 101 (particularly, the setting unit 160) transmits the difference period V (n) to the (N + 1) th rear transmission. Set as a prohibited period. That is, when the transmission start time S (n) is earlier than the reference time T (n), the setting unit 160 sets the difference period V (n) as the adjustment period Ba (n + 1) after the reference time T (n + 1). To do.
  • the rear side transmission prohibition period is a transmission prohibition period B set after the reference time T, and is a period during which the start of transmission of the second cycle data ND is prohibited.
  • the FPGA 101 For the second cycle data ND that is in a transmittable state, the FPGA 101 (particularly, the second transmission unit 170 (2)) is in the second cycle data ND unless it is during the transmission of the first cycle data CD or the transmission prohibited period B. Start sending. If the FPGA 101 is transmitting the first cycle data CD or is in the transmission prohibition period B, the FPGA 101 does not start transmitting the second cycle data ND. After completing the transmission of the first cycle data CD, the FPGA 101 cancels the transmission prohibition period B and starts transmitting the second cycle data ND, for example.
  • the FPGA 101 includes an acquisition unit 110, a calculation unit 130, a first generation unit 140, a second generation unit 150, a setting unit 160, a transmission unit 170, an instruction unit 180, and a notification unit 190 as functional blocks.
  • the acquisition unit 110 acquires the first cycle data CD and the transmission start time S of the first cycle data CD from the main memory 104, for example, via the chipset 102. Then, the acquisition unit 110 stores the acquired first cycle data CD and the transmission start time S in the first transmission queue TXQ0 of the transmission queue table 121, in other words, sets the first period data CD and the transmission start time S in the first transmission queue TXQ0.
  • the transmission start time S is a scheduled time at which transmission of the first cycle data CD, which is high priority data to be transmitted at regular intervals, is started.
  • the transmission start time S is set in the main memory 104 together with the first cycle data CD by the host system, and is stored together with the first cycle data CD in the main memory 104 via the chipset 102 by the microprocessor 103, for example.
  • the acquisition unit 110 acquires the second cycle data ND from, for example, the main memory 104 via the chipset 102, and stores the acquired second cycle data ND in the second transmission queue TXQ1 of the transmission queue table 121. To do.
  • the acquisition unit 110 acquires the second cycle data ND and the transmission start time of the second cycle data ND from the main memory 104, and acquires the acquired second cycle data ND and the transmission start time of the second cycle data ND. May be stored in the second transmission queue TXQ1.
  • the transmission start time of the second cycle data ND is: No particular explanation will be given.
  • the first generation unit 140 stores the data amount (for example, transmission data length) of the second cycle data ND stored in the second transmission queue TXQ1. From this, the basic period Bb is calculated.
  • the basic period Bb is, for example, “time required for transmission of the second period data ND”.
  • the first generation unit 140 notifies the setting unit 160 of the calculated basic period Bb.
  • the second generation unit 150 acquires the transmission start time S (n) of the first cycle data CD in the Nth cycle, and refers to the first transmission queue TXQ0, for example, and stores the first cycle data in the first transmission queue TXQ0.
  • the transmission start time S (n) set with the CD is acquired.
  • the second generation unit 150 refers to the reference time table 122 and acquires the reference time T (n) of the Nth cycle.
  • the second generation unit 150 compares the transmission start time S (n) of the first cycle data CD of the Nth cycle with the reference time T (n) of the Nth cycle of the Nth cycle, and the two do not match
  • the difference period V (n) that is the difference between the two is calculated, and the calculated difference period V (n) is notified to the setting unit 160.
  • the start time (actual transmission start time) is the same.
  • the second generator 150 calculates the difference period V (n) as follows. That is, the second generation unit 150 determines the difference between “the transmission start time S (m) that is the time at which the first cycle data CD should be transmitted in the control cycle M” and “the reference time T (M) of the control cycle M”.
  • the setting unit 160 performs the basic period Bb notified from the first generation unit 140 and the difference period V (notified from the second generation unit 150) with respect to the reference time T acquired with reference to the reference time table 122. n) is used to set the transmission prohibition period B (n + 1) of the (N + 1) th cycle.
  • a period including “V (n))” is set as a transmission prohibition period B (n + 1).
  • the setting unit 160 sets “the time when the basic period Bb (n + 1) is traced back from the reference time T (n + 1)” as the starting point, and “the time when the adjustment period Ba (n + 1) has elapsed from the reference time T (n + 1)”.
  • the period set as the end point is set to the transmission prohibited period B (n + 1).
  • the transmission unit 170 controls data transmission, for example, controls transmission of the first period data CD set in the first transmission queue TXQ0 and the second period data ND set in the second transmission queue TXQ1,
  • the first transmission unit 170 (1) and the second transmission unit 170 (2) are included.
  • the first transmission unit 170 (1) controls the transmission of the first cycle data CD, specifically, the transmission of the first cycle data CD set in the first transmission queue TXQ0 together with the first cycle data CD.
  • the transmission starts at the transmission start time S set in the first transmission queue TXQ0.
  • the first transmission unit 170 (1) cannot transmit the first cycle data CD while the second cycle data ND is being transmitted.
  • the second transmission unit 170 (2) controls the transmission of the second cycle data ND. Specifically, the second transmission unit 170 (2) transmits the second cycle data ND set in the second transmission queue TXQ1 as “first cycle data CD. In the period other than the “transmission period and transmission prohibition period B period”. That is, in the “period during transmission of the first cycle data CD” and the “period of the transmission prohibition period B”, the second transmission unit 170 (2) does not start transmission of the second cycle data ND. When the second transmission unit 170 (2) cannot continuously transmit the second cycle data ND in a transmittable state over a predetermined number of control cycles, the second transmission unit 170 (2) continuously transmits the second cycle data ND over a predetermined number of control cycles.
  • “Not transmitted” is notified to the instruction unit 180 and the notification unit 190.
  • the second transmission unit 170 (2) cannot continuously transmit the second cycle data ND for a predetermined number of control cycles after the second cycle data ND is set in the second transmission queue TXQ1, the second transmission unit 170 (2) notifies the instruction unit 180 of the situation. To the unit 190.
  • the instruction unit 180 instructs the second transmission unit 170 (2) to start transmission of the second cycle data ND even during the transmission prohibition period B, that is, forced transmission of the second cycle data ND. Instruct.
  • the instruction unit 180 indicates from the second transmission unit 170 (2) that “the second cycle data ND has not been transmitted continuously over a predetermined number of control cycles after the second cycle data ND has become transmittable”. When notified, the second transmission unit 170 (2) may be instructed to perform forced transmission automatically. Further, when the instruction unit 180 is instructed by the user to forcibly transmit the second period data ND, the instruction unit 180 may instruct the second transmission unit 170 (2) to perform forcible transmission. Receiving this instruction from the instruction unit 180, the second transmission unit 170 (2) starts transmission of the second period data ND set in the second transmission queue TXQ1 even during the transmission prohibition period B.
  • the notification unit 190 indicates from the second transmission unit 170 (2) that “the second cycle data ND has not been transmitted continuously over a predetermined number of control cycles after the second cycle data ND has become transmittable”. When notified, it instructs execution of the following processing. That is, the notification unit 190 notifies the analyzing device 50 that the second cycle data ND is not transmitted continuously over a predetermined number of control cycles, for example, via the microprocessor 103, and the like. That effect is displayed on the analysis device 50.
  • the FPGA 101 illustrated in FIG. 1 includes an internal RAM 120.
  • the internal RAM 120 is a storage device that stores various data used by the FPGA 101.
  • the internal RAM 120 stores non-temporarily a control program for various processes executed by the FPGA 101 and various data to be read when the control program is executed.
  • the internal RAM 120 further stores a transmission queue table 121, a reference time table 122, and setting information 123.
  • the transmission queue table 121 includes a plurality of transmission queues TXQ0, TXQ1, ..., TXQn.
  • transmission queue TXQ when it is not necessary to distinguish each of the plurality of transmission queues TXQ0, TXQ1,..., TXQn, they are simply referred to as “transmission queue TXQ”.
  • Transmission data from the host system is buffered in the transmission queue TXQ.
  • the transmission data set in the main memory 104 by the microprocessor 103 via the chipset 102 is set in the transmission queue TXQ by the acquisition unit 110. Is done.
  • the first cycle data CD and the transmission start time S of the first cycle data CD are buffered (in other words, the first cycle data CD and the transmission start time S). Is set).
  • the second cycle data ND is buffered (that is, set) in the second transmission queue TXQ1.
  • the transmission queue TXQ employs, for example, a FIFO (first-in, first-out, first-in first-out) system.
  • the internal RAM 120 may further store a reception queue table (not shown) in which data received from the outside of the CPU unit 100 is stored.
  • the reception queue table includes a plurality of reception queues RXQ0, RXQ1, ..., RXQn, and each of RXQ0, RXQ1, ..., RXQn may adopt a FIFO method.
  • the reference time table 122 stores the reference time T calculated by the calculation unit 130.
  • the setting information 123 stores various setting information related to the operation of the control system 1 including the transmission cycle C.
  • the transmission cycle C is also referred to as a “control cycle”, and is a transmission time interval of the first cycle data CD that is high-priority data transmitted at a fixed cycle.
  • the FPGA 101 acquires the transmission cycle C by one of the following two methods. That is, the FPGA 101 may store the time interval notified from the host system (specifically, from the microprocessor 103 via the chipset 102) in the setting information 123 as the transmission cycle C. Further, the FPGA 101 calculates an average time interval between the transmission start times S of the first cycle data CD for a predetermined number of control cycles (for example, N cycles), and uses the calculated average time interval as a transmission cycle C. May be stored in the setting information 123.
  • the CPU unit 100 (especially the FPGA 101) whose outline has been described so far will now be described with reference to FIG. 3 and the like for the processing executed by the CPU unit 100 (particularly, the FPGA 101).
  • FIG. 3 is a flowchart showing an overall outline of processing executed by the CPU unit 100 (particularly, the FPGA 101).
  • the calculation unit 130 acquires the transmission start time S (n) of the Nth cycle (S100), and adds a time corresponding to the transmission cycle C to the acquired transmission start time S (n). Then, the reference time T (n + 1) of the (N + 1) th cycle is calculated (S200). The calculation unit 130 stores the calculated reference time T (n + 1) in the reference time table 122.
  • the first generation unit 140 and the second generation unit 150 execute a transmission prohibition period calculation process (S300). Details of the transmission prohibition period calculation process will be described later with reference to FIG.
  • the setting unit 160 executes a transmission prohibition period setting process (S400). Details of the transmission prohibition period setting process will be described later with reference to FIG.
  • the second transmission unit 170 (2) confirms whether the second cycle data ND is stored in the second transmission queue TXQ1 (S500). When it is confirmed that the second cycle data ND is not stored in the second transmission queue TXQ1 (No in S500), that is, when it is confirmed that there is no second cycle data ND in a transmittable state, the setting is performed. The unit 160 ends the processing, that is, the transmission prohibition period B is not set. Since there is no second cycle data ND in a transmittable state, the second transmission unit 170 (2) does not start transmission of the second cycle data ND. Further, the first transmission unit 170 (1) transmits the transmission of the first cycle data CD set in the first transmission queue TXQ0 together with the first cycle data CD to the transmission start time S set in the first transmission queue TXQ0. To start.
  • the second transmission unit 170 (2) confirms whether it is in the transmission prohibition period B ( S600).
  • the second transmission unit 170 (2) confirms that it is in the transmission prohibition period B (Yes in S600)
  • the second transmission unit 170 (2) Transmission of the periodic data ND is started (S700).
  • the second transmission unit 170 (2) starts transmission of the second cycle data ND (S800).
  • a transmission prohibition period B (n + 1) generated by using the difference between the transmission start time S (n) of the first cycle data CD to be transmitted in the cycle and the reference time T (n) in the Nth cycle is represented as N + 1 cycles.
  • Eye reference time T ( +1) a second period having a lower priority than the first period data CD during the setting step (S400) set at least before and after the transmission period and the transmission prohibition period B (n + 1) set in the setting step
  • the control method is the difference between the transmission start time S (n) of the first cycle data CD to be transmitted in the control cycle of the Nth cycle and the reference time T (n) of the Nth cycle.
  • a transmission prohibition period B (n + 1) for prohibiting the start of transmission of the second period data ND is calculated.
  • the control method calculates at least before and after the reference time T (n + 1) of the (N + 1) th cycle, which is calculated by adding a time interval corresponding to the transmission cycle C to the transmission start time S (n) of the Nth cycle.
  • a transmission prohibition period B (n + 1) is set.
  • the control method starts transmission of the second cycle data ND in a period that is not the transmission prohibition period B (n + 1). That is, in the control method, even when the transmission start time S (n) in the Nth cycle and the reference time T (n) deviate, the transmission start time S in the Nth cycle and the reference time T (n)
  • the transmission prohibition period B (n + 1) considering the difference is set to at least one before or after the reference time T (n + 1) of the (N + 1) th cycle.
  • the control method sets an appropriate transmission prohibition period B (n + 1) considering the difference between the transmission start time S (n) and the reference time T (n) in the Nth cycle.
  • the transmission of the first cycle data CD can be started at the transmission start time S (n + 1) of the (N + 1) th cycle.
  • FIG. 4 is a flowchart for explaining details of the transmission prohibition period calculation processing of FIG.
  • the second generation unit 150 first acquires the transmission start time S (n) of the first cycle data CD in the Nth cycle (S310).
  • the second generation unit 150 may acquire the transmission start time S (n) set in the first transmission queue TXQ0 together with the first cycle data CD with reference to the first transmission queue TXQ0.
  • the second generation unit 150 sets the “actual transmission start time of the first period data CD” from the transmission unit 170 (particularly, the first transmission unit 170 (1)) as the transmission start time S (n). You may get it.
  • the second generation unit 150 refers to the reference time table 122 and acquires the reference time T (n) of the Nth cycle (S320).
  • the second generation unit 150 compares the acquired transmission start time S (n) with the reference time T (n), and transmits the Nth cycle transmission start time S (n) and the Nth cycle reference time T (n).
  • Difference period V (n) is calculated (S330).
  • the second generation unit 150 notifies the setting unit 160 of the calculated difference period V (n).
  • FIG. 5 is a flowchart for explaining the details of the transmission prohibition period setting process of FIG.
  • the setting unit 160 When it is confirmed that the reference time T (n) and the transmission start time S (n) match (that is, the difference period V (n) is 0) (Yes in S410), the setting unit 160: Is set to the transmission prohibition period B (n + 1). That is, the setting unit 160 sets the period including the basic period Bb (n + 1) as the transmission prohibition period B (n + 1) so that the reference time T (n + 1) of the (N + 1) th cycle is the end point (S420). For example, the setting unit 160 sets a period whose start point is “the time when the basic period Bb (n + 1) is traced back from the reference time T (n + 1)” and whose end point is “the reference time T (n + 1)” to the transmission prohibition period B ( n + 1).
  • the setting unit 160 starts from “a time retroactive to the total period of the basic period Bb (n + 1) and the adjustment period Ba (n + 1) from the reference time T (n + 1)” and “the reference time T (n + 1)”. Is set as the transmission prohibition period B (n + 1).
  • the setting unit 160 transmits as follows: A prohibition period B (n + 1) is set. That is, the setting unit 160 sets the period including the basic period Bb (n + 1) as the transmission prohibition period B so that the reference time T (n + 1) of the (N + 1) th cycle is the end point (S450). For example, the setting unit 160 sets a period whose start point is “the time when the basic period Bb (n + 1) is traced back from the reference time T (n + 1)” and whose end point is “the reference time T (n + 1)” to the transmission prohibition period B ( n + 1).
  • the PLC 10 sets the length of the transmission prohibition period B (n + 1) set in the N + 1 period in accordance with the transmission state of the first period data CD in the N period. It is dynamically changed to set the transmission prohibition period B (n + 1) having the optimum length.
  • a specific processing example executed by the PLC 10 will be described with reference to FIGS. 6 and 7.
  • FIG. 6 shows an example of processing executed by the PLC 10 (particularly, the FPGA 101) when the transmission start time S (n) is later than the reference time T (n) in the Nth period, in contrast to the conventional adjustment method. It is a figure explaining.
  • (A) in FIG. 6 is the same as (A) in FIG. 9, that is, the transmission start time S (n) in the Nth cycle is delayed from the reference time T (n) in the Nth cycle.
  • problems that occur in the prior art are shown.
  • FIG. 6A when the transmission start time S (n) of the Nth cycle is delayed from the reference time T (n) of the Nth cycle, “transmission” is performed at the transmission start time S (n).
  • the reference time T (n + 1) which is the time to which the “time interval corresponding to the period C” is added, shows the following tendency.
  • the reference time T (n + 1) in the (N + 1) th cycle tends to be delayed from the transmission start time S (n + 1) in the (N + 1) th cycle.
  • the “time required for transmission of the second period data ND” is set as the transmission prohibition period B before the reference time T (n + 1). That is, according to the prior art, the time later than the transmission start time S (n + 1) is set as the reference time T (n + 1), and “the time required for transmission of the second period data ND” before the reference time T (n + 1).
  • a transmission prohibition period B is set.
  • the transmission prohibition period B is defined as a period from “a time after the time required to transmit the second period data ND from the transmission start time S (n + 1)” to “a transmission start time S (n + 1)”.
  • the transmission of the first period data CD can be started at the transmission start time S (n + 1).
  • the transmission prohibition period B before the reference time T (n + 1) delayed from the transmission start time S (n + 1), the transmission prohibition period B, which is “the time required for transmission of the second period data ND”. Is set. That is, the transmission prohibition period B set by the prior art before the reference time T (n + 1) is “transmission start” from “a time retroactive to the transmission time of the second period data ND from the transmission start time S (n + 1)”. It is later than the period until time S (n + 1) ".
  • the time point at which the second cycle data ND is ready for transmission is not included in the “period during transmission of the first cycle data CD” or the “period of the transmission prohibited period B”. Transmission of the periodic data ND is started immediately after the transmission becomes possible.
  • the time when the transmission of the second period data ND is completed is later than the transmission start time S (n + 1), and the first period data CD cannot be transmitted during the transmission of the second period data ND. Transmission of the first period data CD cannot be started at the start time S (n + 1).
  • (B) in FIG. 6 is a diagram for explaining the transmission prohibition period B (n + 1) set by the PLC 10 when the transmission start time S (n) is delayed from the reference time T (n).
  • the FPGA 101 determines the transmission start time S (n) and the reference time T (n).
  • a difference period V (n) that is a difference period between and N + 1 is set as the N + 1-th front transmission prohibition period.
  • a transmission prohibition period B (n + 1) is set.
  • transmission prohibition period B (n + 1) including the total period of the adjustment period Ba (n + 1) and the basic period Bb (n + 1) so that the end point becomes the reference time T (n + 1), ( In B)
  • transmission of the second period data ND is appropriately prohibited. That is, in FIG. 6B, a transmission prohibition period B (n + 1) longer than the transmission prohibition period B (n + 1) in FIG. 6A by the adjustment period Ba (n + 1) is set.
  • FIG. 7 shows an example of processing executed by the PLC 10 (particularly, the FPGA 101) when the transmission start time S (n) is earlier than the reference time T (n) in the Nth cycle, as compared with the conventional adjustment method. It is a figure explaining.
  • (A) in FIG. 7 is the same as (B) in FIG. 9, that is, the transmission start time S (n) in the Nth cycle is earlier than the reference time T (n) in the Nth cycle.
  • the “transmission cycle” is set at the transmission start time S (n).
  • the reference time T (n + 1) which is the time to which the “time interval corresponding to C” is added, shows the following tendency.
  • the reference time T (n + 1) in the (N + 1) th cycle tends to be earlier than the transmission start time S (n + 1) in the (N + 1) th cycle.
  • the “time required for transmission of the second period data ND” is set as the transmission prohibition period B before the reference time T (n + 1). That is, in the prior art, the time earlier than the transmission start time S (n + 1) is set as the reference time T (n + 1), and “the time required for the transmission of the second period data ND” before the reference time T (n + 1).
  • a certain transmission prohibition period B is set.
  • the transmission prohibition period B is defined as a period from “a time after the time required to transmit the second period data ND from the transmission start time S (n + 1)” to “a transmission start time S (n + 1)”.
  • the transmission of the first period data CD can be started at the transmission start time S (n + 1).
  • the transmission prohibition period B which is “time required for transmission of the second period data ND”, is set. Is set. That is, the transmission prohibition period B set by the prior art before the reference time T (n + 1) is “transmission start” from “a time retroactive to the transmission time of the second period data ND from the transmission start time S (n + 1)”. It is earlier than the period until “time S (n + 1)”.
  • the time point at which the second cycle data ND is ready for transmission is not included in the “period during transmission of the first cycle data CD” or the “period of the transmission prohibited period B”. Transmission of the periodic data ND is started immediately after the transmission becomes possible.
  • the time when the transmission of the second period data ND is completed is later than the transmission start time S (n + 1), and the first period data CD cannot be transmitted during the transmission of the second period data ND. Transmission of the first period data CD cannot be started at the start time S (n + 1).
  • FIG. 7 is a figure explaining the transmission prohibition period B (n + 1) set by the PLC 10 when the transmission start time S (n) is earlier than the reference time T (n).
  • the FPGA 101 determines the transmission start time S (n) and the reference time T (n).
  • a difference period V (n) that is a difference period between and N + 1 is set as the N + 1-th rear transmission prohibition period.
  • the transmission prohibition period B (n + 1) is set.
  • the setting unit 160 sets the basic period Bb (n + 1) as the transmission prohibited period B (n + 1) so that the end point of the basic period Bb (n + 1) is the reference time T (n + 1). Specifically, the setting unit 160 sets the period from “the time when the basic period Bb (n + 1) is traced back from the reference time T (n + 1)” to “the reference time T (n + 1)” as the transmission prohibition period B (n + 1). To do.
  • the setting unit 160 extends from “the time when the basic period Bb (n + 1) is traced back from the reference time T (n + 1)” to “the time when the adjustment period Ba (n + 1) has elapsed from the reference time T (n + 1)”. It is set as a transmission prohibition period B (n + 1).
  • the transmission prohibition period B (n + 1) is from “the time when the basic period Bb (n + 1) is traced back from the reference time T (n + 1)” to “the time when the adjustment period Ba (n + 1) has elapsed from the reference time T (n + 1)”.
  • transmission of the second period data ND is appropriately prohibited. That is, in FIG. 7B, a transmission prohibition period B (n + 1) longer than the transmission prohibition period B (n + 1) of FIG. 7A by the adjustment period Ba (n + 1) is set.
  • the PLC 10 executes notification processing for notifying the occurrence of such a situation to the outside. Regardless of the transmission prohibition period B, the PLC 10 executes forced transmission processing for starting transmission of the second period data ND.
  • the notification unit 190 continuously detects “a state in which the second period data ND cannot be transmitted due to the transmission prohibition period B” over a predetermined number of control cycles (for example, M times). Then, the following processing is executed. In other words, the notification unit 190 notifies the host system (for example, the microprocessor 103) of the occurrence of “a state in which the second period data ND cannot be transmitted continuously for M periods due to the transmission prohibition period B”. ,Notice.
  • the host system causes the analysis device 50 connected to the CPU unit 100 to generate “a state in which the second period data ND cannot be transmitted continuously for M periods due to the transmission prohibition period B”. Notice.
  • the analysis device 50 receives the notification from the host system, it causes the occurrence of “a state in which the second period data ND cannot be transmitted continuously over M periods due to the transmission prohibition period B” to the user. indicate.
  • the host system for example, the microprocessor 103
  • the host system for example, the microprocessor 103 executes the forced transmission process of the second cycle data ND, for example, the chipset 102.
  • the FPGA 101 is instructed via the above.
  • the FPGA 101 (in particular, the instruction unit 180) instructs the second transmission unit 170 (2) to start transmission of the second period data ND even during the transmission prohibition period B.
  • the second transmission unit 170 (2) transmits the second period data ND set in the second transmission queue TXQ1 according to the instruction from the instruction unit 180 regardless of whether or not it is the transmission prohibition period B. Start.
  • the FPGA 101 may include a plurality of transmission queues. That is, a plurality of transmission queues (TXQ 0, TXQ 1, corresponding to each of a plurality of priorities (first, second,... N) given to data transmitted by the CPU unit 100 (in particular, the FPGA 101). ... TXQ (n ⁇ 1)) may be included in the CPU unit 100 (particularly, the FPGA 101) in the PLC 10.
  • the CPU unit 100 controls a plurality of transmissions for controlling transmission of data set in each of a plurality of transmission queues (TXQ0, TXQ1,... TXQ (n ⁇ 1)). May be provided.
  • the FPGA 101 includes the first transmission unit 170 (1) to the (N + 1) th transmission unit 170 (n) that control the transmission of data set in each of the first transmission queue TXQ0 to the N + 1th transmission queue TXQn. May be.
  • the reference time T (n + m) in the (N + M) period may be calculated.
  • the FPGA 101 may be notified of the transmission cycle C from the microprocessor 103 or the like, and calculates the average time interval between the transmission start times S of the first cycle data CD for a predetermined number of control cycles.
  • the calculated average time interval may be used as the transmission cycle C.
  • the FPGA 101 executes the following processing.
  • the FPGA 101 starts the transmission start time S (p ⁇ 1) of the P ⁇ 1th control cycle and the transmission start of the P + 1th control cycle.
  • the time interval from the time S (p + 1) is not used for calculating the transmission period C.
  • the acquisition unit 110, the internal RAM 120, the calculation unit 130, the first generation unit 140, the second generation unit 150, the setting unit 160, the transmission unit 170, the instruction unit 180, and the notification unit 190 have been described as FPGA (Field-Programmable An example has been described which is realized in gate array. However, it is not essential for these functional blocks to be realized using an FPGA, and for example, they may be realized using an ASIC (Application Specific Integrated Circuit). That is, the acquisition unit 110, the internal RAM 120, the calculation unit 130, the first generation unit 140, the second generation unit 150, the setting unit 160, the transmission unit 170, the instruction unit 180, and the notification unit 190 are realized using an ASIC. May be.
  • the control device is a control device that outputs first cycle data for each control cycle, and acquires the first cycle data together with a transmission start time of the first cycle data; , N is a natural number greater than or equal to 0, a time interval corresponding to the control cycle is added to the transmission start time of the first cycle data to be transmitted in the control cycle of the Nth cycle, and the reference time of the (N + 1) th cycle is obtained.
  • a transmission prohibition period generated by using the difference between the calculation unit to calculate, the transmission start time of the first cycle data to be transmitted in the control cycle of the Nth cycle, and the reference time of the Nth cycle is represented as the (N + 1) th cycle.
  • the control device takes into account the difference between the transmission start time of the first cycle data to be transmitted in the control cycle of the Nth cycle and the reference time of the Nth cycle.
  • the transmission prohibition period for prohibiting the start of transmission of periodic data is calculated.
  • the control device calculates the transmission prohibition period at least before or after the reference time of the (N + 1) th cycle, which is calculated by adding a time interval corresponding to the control cycle to the transmission start time of the Nth cycle. Set.
  • the control device starts transmission of the second cycle data during a period that is not the transmission prohibition period.
  • control device sets the transmission prohibition period in consideration of the difference between the transmission start time and the reference time in the Nth cycle to the N + 1th cycle even when the transmission start time and the reference time in the Nth cycle diverge. Set at least one before and after the reference time.
  • the control device sets an appropriate transmission prohibition period considering the difference between the two, and the transmission start time at the (N + 1) th cycle There is an effect that transmission of the first period data can be started.
  • the control apparatus which concerns on 1 aspect of this invention is the 1st production
  • the control period of the Nth period A second generation unit that generates an adjustment period that is the difference between the transmission start time of the first cycle data to be transmitted to the reference time of the Nth cycle, and the transmission set by the setting unit
  • the prohibition period may include a total period of the basic period and the adjustment period.
  • the control device takes into consideration the “difference between the transmission start time and the reference time in the control cycle of the Nth cycle” and the “data amount of the second cycle data” and the second cycle data
  • the transmission prohibition period during which the start of transmission is prohibited is set.
  • the transmission prohibition period as follows. That is, it is necessary to set the period from “the time that is required to transmit the second cycle data from the transmission start time of the (N + 1) th cycle” to “the transmission start time of the (N + 1) th cycle” as the transmission prohibited period. is there.
  • the “time required for transmitting the second cycle data” is considered to be proportional to the data amount of the second cycle data, that is, calculated from the data amount of the second cycle data. Therefore, the control device uses a period including the basic period generated from the data amount of the second cycle data as the transmission prohibition period.
  • the “transmission start time in the (N + 1) th cycle” cannot be grasped before the acquisition of the first cycle data in the (N + 1) th cycle, whereas the “reference time in the (N + 1) th cycle” It can be calculated in advance by adding “a time interval corresponding to the control period” to the “transmission start time”. Further, the difference between the transmission start time and the reference time in the (N + 1) th cycle is generally less than or equal to the difference between the transmission start time and the reference time in the Nth cycle. Therefore, the control device includes a period including the “adjustment period generated from the difference between the transmission start time and the reference time in the Nth cycle” with respect to “the reference time in the (N + 1) th cycle”. Set as.
  • the control device appropriately prohibits the transmission in consideration of the difference between them and the data amount of the second cycle data. There is an effect that the period can be set.
  • the setting section A period including the total period of the basic period and the adjustment period may be set as the transmission prohibition period so that the reference time of the eye becomes the end point.
  • the control device sets the basic period so that the reference time of the (N + 1) th cycle ends. And a period including the total period of the adjustment period are set as the transmission prohibition period.
  • the N + 1th cycle calculated by adding a time interval corresponding to the control cycle to the transmission start time of the Nth cycle
  • the reference time is later than the transmission start time of the (N + 1) th cycle.
  • the transmission prohibition period may not be sufficient. In other words, it is considered that the desirable transmission prohibition period is longer than the period from “the time that goes back the basic period from the reference time in the (N + 1) th cycle” to “the reference time in the (N + 1) th cycle”.
  • the control device further sets the transmission prohibition period of the (N + 1) th period in consideration of the difference between the transmission start time and the reference time in the Nth period. That is, in addition to setting the basic period as the transmission prohibition period, the control apparatus sets the “adjustment period that is a difference period between the transmission start time and the reference time in the Nth period” to the transmission Set as a prohibited period.
  • the control device may be configured such that “from the reference time of the (N + 1) th cycle to the reference time of the (N + 1) th cycle” from “a time retroactive to a period including the total period of the basic period and the adjustment period”. Is set as the transmission prohibition period.
  • the control device takes into account the difference between the two and the data amount of the second cycle data. There is an effect that can be set.
  • the setting section A period including the basic period is set as the transmission prohibition period so that the reference time of the eye becomes the end point, and a period including the adjustment period is set so that the reference time of the (N + 1) th period is the start point. May be set as
  • the control device when the transmission start time of the Nth cycle is earlier than the reference time of the Nth cycle, the control device includes the basic period so that the reference time of the (N + 1) th cycle is the end point. A period is set as the transmission prohibition period. Further, the control device sets a period including the adjustment period as the transmission prohibition period so that the reference time of the (N + 1) -th cycle is the starting point.
  • the N + 1th cycle is calculated by adding a time interval corresponding to the control cycle to the transmission start time of the Nth cycle.
  • the reference time is generally earlier than the transmission start time in the (N + 1) period.
  • the transmission prohibition period may not be sufficient. In other words, it is considered that the desirable transmission prohibition period is longer than the period from “the time that goes back the basic period from the reference time in the (N + 1) th cycle” to “the reference time in the (N + 1) th cycle”.
  • the control device further sets the transmission prohibition period of the (N + 1) th period in consideration of the difference between the transmission start time and the reference time in the Nth period. That is, in addition to setting the basic period as the transmission prohibition period, the control apparatus sets the “adjustment period that is a difference period between the transmission start time and the reference time in the Nth period” to the transmission Set as a prohibited period. Specifically, the control device sets, as the transmission prohibition period, a period from “the time when the basic period is traced back from the reference time in the (N + 1) th cycle” to “the reference time in the (N + 1) th cycle”. . Further, the control device sets a period from “the reference time in the (N + 1) th cycle” to “a time that has advanced through the period including the adjustment period from the reference time in the (N + 1) th cycle” as the transmission prohibition period. To do.
  • the control device takes into account the difference between the two and the data amount of the second cycle data. There is an effect that can be set.
  • the control unit forcibly includes the transmission prohibition period. You may further provide the instruction
  • the control device if the control device does not transmit the second cycle data continuously over a predetermined number of the control cycles, the control device forcibly sets the second cycle data even in the transmission prohibition period. Start sending. Therefore, the control device has an effect that the second cycle data that has not been continuously transmitted over the predetermined number of control cycles can be transmitted.
  • the transmission unit when the transmission unit does not transmit the second cycle data continuously over a predetermined number of control cycles, the transmission unit continues over the predetermined number of control cycles.
  • a notification unit that notifies the outside that the second cycle data is not transmitted may be further provided.
  • the control device if the control device does not continuously transmit the second cycle data over the predetermined number of control cycles, the control device continuously transmits the second cycle data over the predetermined number of control cycles. Notify the outside that it has not. Therefore, when a situation occurs in which the second cycle data is not continuously transmitted over the predetermined number of the control cycles, the control device notifies the outside that such a situation has occurred. There is an effect that you can.
  • a control method is a control method for a control device that outputs first cycle data for each control cycle, and acquires the first cycle data together with a transmission start time of the first cycle data.
  • a setting step that is set at least before or after the reference time of the (N + 1) th cycle, and a second lower priority than the first cycle data during a period that is not the transmission prohibition period set in the setting step
  • a transmission step of starting transmission of the period data includes.
  • the control method takes into account the difference between the transmission start time of the first cycle data to be transmitted in the control cycle of the Nth cycle and the reference time of the Nth cycle.
  • the transmission prohibition period for prohibiting the start of transmission of periodic data is calculated.
  • the transmission prohibition period is calculated at least before or after the reference time of the (N + 1) th cycle, which is calculated by adding a time interval corresponding to the control cycle to the transmission start time of the Nth cycle. Set. Then, the control method starts transmission of the second period data during a period that is not the transmission prohibition period.
  • control method sets the transmission prohibition period in consideration of the difference between the transmission start time and the reference time in the Nth cycle to the N + 1th cycle even when the transmission start time and the reference time in the Nth cycle diverge. Set at least one before and after the reference time.
  • control method sets an appropriate transmission prohibition period considering the difference between the transmission start time and the reference time in the Nth cycle, and sets the transmission start time in the (N + 1) th cycle. There is an effect that transmission of the first period data can be started.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Programmable Controllers (AREA)
  • Small-Scale Networks (AREA)

Abstract

Pour des données à transmettre périodiquement, même lorsqu'un moment de référence et le moment de début de transmission réelle dans une certaine période divergent, la transmission commence à un moment estimé dans la période suivante. À l'aide de la différence entre un moment de référence (T) et un moment de début de transmission (S) dans la nème période, le PLC (10) définit une période d'interdiction de transmission (B) dans la période N+1ème.
PCT/JP2019/021152 2018-06-14 2019-05-28 Dispositif de commande, et procédé de commande associé WO2019239884A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018113843A JP7056395B2 (ja) 2018-06-14 2018-06-14 制御装置およびその制御方法
JP2018-113843 2018-06-14

Publications (1)

Publication Number Publication Date
WO2019239884A1 true WO2019239884A1 (fr) 2019-12-19

Family

ID=68843289

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/021152 WO2019239884A1 (fr) 2018-06-14 2019-05-28 Dispositif de commande, et procédé de commande associé

Country Status (2)

Country Link
JP (1) JP7056395B2 (fr)
WO (1) WO2019239884A1 (fr)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021214966A1 (fr) * 2020-04-24 2021-10-28 三菱電機株式会社 Dispositif de communication, système de communication, procédé de communication, et programme
JP2023138057A (ja) * 2022-03-18 2023-09-29 株式会社東芝 制御システム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011234401A (ja) * 2011-06-30 2011-11-17 Denso Corp 無線通信装置及び無線通信システム
JP2017060042A (ja) * 2015-09-17 2017-03-23 株式会社デンソー 通信装置
JP2018060484A (ja) * 2016-10-07 2018-04-12 オムロン株式会社 演算装置および制御装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011234401A (ja) * 2011-06-30 2011-11-17 Denso Corp 無線通信装置及び無線通信システム
JP2017060042A (ja) * 2015-09-17 2017-03-23 株式会社デンソー 通信装置
JP2018060484A (ja) * 2016-10-07 2018-04-12 オムロン株式会社 演算装置および制御装置

Also Published As

Publication number Publication date
JP2019215818A (ja) 2019-12-19
JP7056395B2 (ja) 2022-04-19

Similar Documents

Publication Publication Date Title
JP6488830B2 (ja) 制御装置
JP6540166B2 (ja) 制御装置
JP4905597B1 (ja) コントローラサポート装置、その装置において実行されるためのコントローラサポートプログラム、およびそのプログラムを格納する記録媒体
JP6409557B2 (ja) 制御装置、コントローラ・システム、出力制御方法、およびプログラム
EP2687927A1 (fr) Cpu de plc, programme de système pour plc et support d'enregistrement stockant un programme de système pour plc
US8977534B2 (en) Controller support apparatus, controller support program executed on the apparatus, storage medium storing the program, and method of estimating execution time of control program
JP6828482B2 (ja) 制御システム、およびパルス出力装置
JP2019053459A (ja) 制御装置および制御方法
US10579031B2 (en) Controller
JP6950385B2 (ja) 制御装置および制御方法
US20190095246A1 (en) Support device and non-transitory storage medium
WO2019239884A1 (fr) Dispositif de commande, et procédé de commande associé
JP6729746B2 (ja) 制御装置
JP4748286B1 (ja) コントローラサポート装置、その装置において実行されるためのコントローラサポートプログラム、そのプログラムを格納した記録媒体、および、制御プログラムの実行時間を推定する方法
EP3582036B1 (fr) Dispositif de contrôle
EP3764175B1 (fr) Dispositif de commande et système de commande
WO2020026622A1 (fr) Dispositif de commande
EP3767407B1 (fr) Diagnostic de système de bus de terrain à l'aide de mesures de temps de propagation
JP7110911B2 (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: 19819562

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19819562

Country of ref document: EP

Kind code of ref document: A1