IP Library Granted Patent US 9,618,922
Granted Patent B2
US 9,618,922 · App. 14/017,929 · Granted Apr 11, 2017

CPU of PLC, system program for PLC, and recording medium storing system program for PLC

Inventors: Yoshihide Nishiyama (Kanagawa, JP); Osamu Hamasaki (Kyoto, JP); Shigeyuki Eguchi (Kyoto, JP); Yoshihide Tamura (Kyoto, JP)
Assignee: OMRON CORPORATION
G05B19/0426G05B19/05G06F9/4887G05B2219/13086G05B2219/15079G05B2219/15126G05B2219/25419
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,618,922
App. No.
14/017,929
Granted
Apr 11, 2017
Kind
B2
Abstract

A scheduler causes a microprocessor to start execution of a first control program after a communication circuit transmits output data and receives input data in a control cycle following a control circle in which execution of the first control program has ended, and causes execution of an unexecuted portion of the first control program in a control cycle following a control cycle in which execution of the first control cycle has not ended.

Claims (48)

1. A central processing unit (CPU) of a programmable logic controller (PLC), the CPU comprising:

a microprocessor that executes a first control program and a scheduler program, the first control program, when executed by the microprocessor, generates output data using input data, and the scheduler program, when executed by the microprocessor, controls execution of the first control program;

a memory that stores the first control program and the scheduler program;

a setting unit that determines a period of a control cycle; and

a communication circuit that transmits the output data and receives the input data for every control cycle;

the scheduler program, when executed by the microprocessor,

causes the microprocessor to start execution of the first control program after the communication circuit transmits the output data and receives the input data, in a control cycle following a control cycle in which the first control program has ended; and

causes the microprocessor to execute an unexecuted portion of the first control program in a control cycle following a control cycle in which the first control program has not ended,

wherein the CPU is configured to control a control target of the PLC by repeating transmission of the output data, reception of the input data, and execution of the first control program.

2. The CPU of the PLC according to claim 1 , wherein the first control program further includes a motion calculation program, that when executed by the microprocessor, calculates an instruction value to be output to a motor driver, and wherein

the motion calculation program requires an amount of time for a first execution longer than an amount of time for a subsequent execution, the first execution requires initial processing to start calculation of the instruction value, and the first execution is started by a user program created in accordance with a control instruction of a user.

3. The CPU of the PLC according to claim 2 , wherein the first control program further includes the user program.

4. The CPU of the PLC according to claim 1 , wherein the memory further stores a second control program, a period of an execution cycle of the second control program being at least twice as fast as the period of the control cycle, and

wherein the scheduler program, when executed by the microprocessor, causes the microprocessor to execute the second control program in accordance with the execution cycle within the control cycle and after completion of the first control program.

5. The CPU of the PLC according to claim 2 , wherein the memory further stores a second control program, a period of an execution cycle of the second control program being at least twice as fast as the period of the control cycle,

wherein the scheduler program, when executed by the microprocessor, causes the microprocessor to execute the second control program in accordance with the execution cycle within the control cycle and after completion of the first control program,

wherein the first control program includes the motion calculation program, and

wherein the second control program includes the user program.

6. The CPU of the PLC according to claim 1 , wherein the memory further stores setting information and an abnormal processing program, in which the setting information sets a count limit for a number of control cycles over which the first control program continues one execution, and the abnormal processing program is executed by the microprocessor when the number of control cycles is over the count limit, and wherein

the scheduler program, when executed by the microprocessor, and when the number of control cycles reaches the count limit and when execution of the first control program has not ended within the control cycle, executes the abnormal processing program without executing the unexecuted portion of the first control program in the following control cycle.

7. The CPU of the PLC according to claim 1 , wherein the communication circuit is configured to start transmission of the output data and reception of the input data controlled by the microprocessor, and wherein

the scheduler program, when executed by the microprocessor causes the communication circuit to start the communication for every control cycle.

8. The CPU of the PLC according to claim 7 , wherein the scheduler program, when executed by the microprocessor, and when execution of the first control program has not ended within a control cycle, causes the communication circuit to start the communication and then executes the unexecuted portion of the first control program in the following control cycle.

9. The CPU of the PLC according to claim 1 , wherein the CPU further comprises a timer circuit generating a signal with the period of the control cycle, and wherein

the communication circuit is configured to start transmission of the output data and reception of the input data, triggered by the signal generated by the timer circuit.

10. The CPU of the PLC according to one of claim 1 , wherein the microprocessor includes a first core and a second core,

the first core executes the scheduler program, and the second core executes the first control program, and

the scheduler program, when executed by the microprocessor, executes the unexecuted portion of the first control program in the control cycle following the control cycle in which execution of the first control program has not ended so that the execution of the first control program is not interrupted.

11. A system for controlling programmable logic controller (PLC) comprising:

a memory that stores executable instructions;

a microprocessor of a central processing unit (CPU) that executes the executable instructions; and

a communication circuit configured to transmit output data and receive input data, wherein the CPU controls a control target by repeating, for each control cycle, transmission of the output data and reception of the input data with the communication circuit, and by repeating execution of a first control program which is stored in the memory and generates the output data using the input data,

wherein a scheduler controls execution of the first control program; and

a setting unit sets a period of a control cycle,

wherein the scheduler causes the microprocessor to start execution of the first control program after the communication circuit transmits the output data and receives the input data, in a control cycle following a control cycle in which the first control program has ended execution, and

wherein the scheduler causes the microprocessor to execute an unexecuted portion of the first control program in a control cycle following a control cycle in which the first control program has not ended execution.

12. The system according to claim 11 , wherein the PLC further comprises a motion calculator that is at least a portion of the first control program and calculates at every execution an instruction value output to a motor driver, and

wherein the motion calculator requires an amount of time for a first execution longer than an amount of time required for subsequent execution due to execution of initial processing required to start calculation of the instruction value in the first execution.

13. A non-transitory computer readable storage medium encoded with an executable computer program for a PLC and that, when executed by a microprocessor, causes the microprocessor to perform operations comprising:

transmitting output data and receiving input data via a communication circuit;

controlling a control target by repeating, for each control cycle, transmission of the output data and reception of the input data with the communication circuit, and by repeating execution of a first control program that generates the output data using the input data;

controlling execution of the first control program;

setting a period of a control cycle;

starting execution of the first control program after the communication circuit transmits the output data and receives the input data, in a control cycle following a control cycle in which the first control program has ended execution; and

executing an unexecuted portion of the first control program in a control cycle following a control cycle in which the first control program has not ended execution.

14. The non-transitory computer readable storage medium according to claim 13 , the operations further comprising:

calculating an instruction value output to a motor driver, wherein

an amount of time for a first calculation of an instruction value is longer than an amount of time required for subsequent calculation of an instruction value due to initial processing required to start a calculation of motion instruction data generated in accordance with a control instruction of a user.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2013
From: NISHIYAMA, YOSHIHIDE; HAMASAKI, OSAMU; EGUCHI, SHIGEYUKI; TAMURA, YOSHIHIDE
To: OMRON CORPORATION
Reel/Frame 031414/0873 →
Priority Claims (1)
JP 2011-056767 · Mar 15, 2011 · national
Continuity (2)
Continuation PCTJP2011056769 · Mar 22, 2011
Related Publication 20140012402A1 · Jan 9, 2014