KR100434147B1 - Task control method for plc - Google Patents

Task control method for plc Download PDF

Info

Publication number
KR100434147B1
KR100434147B1 KR10-2002-0011408A KR20020011408A KR100434147B1 KR 100434147 B1 KR100434147 B1 KR 100434147B1 KR 20020011408 A KR20020011408 A KR 20020011408A KR 100434147 B1 KR100434147 B1 KR 100434147B1
Authority
KR
South Korea
Prior art keywords
task
interrupt
program
processed
designated
Prior art date
Application number
KR10-2002-0011408A
Other languages
Korean (ko)
Other versions
KR20030072532A (en
Inventor
이상백
Original Assignee
엘지산전 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지산전 주식회사 filed Critical 엘지산전 주식회사
Priority to KR10-2002-0011408A priority Critical patent/KR100434147B1/en
Publication of KR20030072532A publication Critical patent/KR20030072532A/en
Application granted granted Critical
Publication of KR100434147B1 publication Critical patent/KR100434147B1/en

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13086Priority interrupt
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14041Influence of execution of interrupts

Landscapes

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

Abstract

본 발명은 피엘씨 태스크 제어방법에 관한 것으로, 빠른 태스크 프로그램 처리에 적당하도록 한 범용 씨피유의 인터럽트 기능을 실시간으로 태스크 우선순위에 적당하게 처리하도록 한 것이다. 이를 위하여 본 발명은 태스크 이벤트가 발생하고, 그 태스크가 현재 발생한 태스크 보다 우선순위가 높거나 같은 태스크가 수행중이지 않으면 태스크 처리 가능으로 판단하고, 현재 발생한 태스크 보다 우선순위가 높거나 같은 태스크가 수행중이면 태스크 처리 불가능으로 판단 하는 단계와; 상기 판단결과, 태스크 처리 가능하면, 기설정한 미사용 인터럽트 발생 조건을 만족시켜 강제로 온시키는 제2 단계와; 수행중이거나 펜딩된 인터럽트 루틴이 종료되면, 태스크용으로 지정된 미사용 인터럽트를 발생하는 제3 단계와; 태스크용 인터럽트를 종료할 때 지정된 태스크 처리 루틴으로 점프하기 위하여 스택 포인터를 조작하는 제4 단계와; 태스크용 인터럽트가 종료되면, 조작된 스택에 따라 지정된 태스크 처리 루틴을 수행한후, 요구된 태스크 번호에 해당하는 태스크 프로그램으로 점프하는 제5 단계와; 사용자가 작성한 태스크 프로그램을 실행하는 제6 단계와; 태스크 이벤트가 발생하기 바로 직전의 PC값으로 복귀하면서 태스크 프로그램 처리를 완료하는 제7 단계로 이루어진다.The present invention relates to a PLC task control method, and to interrupt the general-purpose CPI interrupt function that is suitable for fast task program processing in real time to suit the task priority. To this end, in the present invention, if a task event occurs and the task is higher in priority than the currently occurring task or the same task is not being executed, the present invention determines that the task can be processed, and the task is higher in priority or higher than the currently occurring task. Determining that the task cannot be processed; A second step of forcibly turning on a predetermined unused interrupt occurrence condition if a task can be processed as a result of the determination; A third step of, when an executing or pending interrupt routine ends, generating an unused interrupt designated for the task; Manipulating the stack pointer to jump to a designated task processing routine when terminating the interrupt for the task; A fifth step of, when the interrupt for the task is finished, performing a designated task processing routine according to the operated stack and then jumping to a task program corresponding to the requested task number; A sixth step of executing a task program created by the user; The seventh step of completing the task program processing is returned to the PC value immediately before the task event occurs.

Description

피엘씨의 태스크 제어방법{TASK CONTROL METHOD FOR PLC}PLC task control method {TASK CONTROL METHOD FOR PLC}

본 발명은 피엘씨 태스크 제어방법에 관한 것으로, 특히 빠른 태스크 프로그램 처리에 적당하도록 한 범용 씨피유의 인터럽트 기능을 실시간으로 태스크 우선순위에 적당하게 처리하도록 한 피엘씨 태스크 제어방법에 관한 것이다.The present invention relates to a PLC task control method, and more particularly, to a PLC task control method for appropriately processing the interrupt function of the general-purpose CPI for real-time task priority.

일반적으로, 피엘씨의 태스크 프로그램은 스캔 실행 도중 어떤 이벤트가 발생한 경우, 현재 실행루틴을 빠져 나가 미리 작성된 태스크 프로그램을 수행하는 기법이다.In general, PLC's task program is a technique for exiting the current execution routine and executing a pre-written task program when an event occurs during the scan execution.

또한 태스크 프로그램 수행도중 우선순위가 높은 다른 태스크 요구가 있는 경우, 다시 우선순위가 높은 태스크 프로그램을 수행하여야 한다.In addition, when there is another task request with high priority while the task program is being executed, the task program with high priority must be executed again.

또한, 태스크 프로그램 수행도중 다른 인터럽트 처리를 원활히 해주어야 한다.In addition, other interrupt processing must be performed smoothly during task program execution.

예를 들면, 태스크 프로그램이 긴경우, 통신 인터럽트등을 처리하지 못하여 통신이 끊기는 경우가 발생하지 않아야 하는데, 즉, 태스크 프로그램은 시스템에서 우선순위가 가장 낮은 인터럽트로 처리되어야 한다.For example, if the task program is long, the communication interruption should not occur because the communication interrupt cannot be processed, that is, the task program should be treated as the lowest priority interrupt in the system.

만약, 태스크 프로그램이 발생 이벤트가 발생한 경우(ST3), 어떤 일정한 버퍼에 우선순위와 함께 태스크 요구가 발생했음을 마크하는데, 도1과 같이 프로그램 수행중에는, 일정한 스텝마다 태스크 요구가 발생했는지를 체크하여(ST3) 발생한 태스크를 우선순위에 따라 모두 수행한다.If the task program generates an event (ST3), it indicates that a task request has occurred with a priority in a certain buffer. While the program is running as shown in FIG. ST3) Perform all the tasks that occurred according to the priority.

상기 프로그램 수행이 끝나고 엔드 처리시에도, 어떠한 일의 수행이 끝날때마다 태스크 요구가 발생하였는지를 체크하여(ST2) 발생한 태스크를 우선순위에 따라 모두 수행한다.When the end of the program execution and the end processing, it checks whether a task request is generated every time the execution of any work (ST2) is performed, and all the generated tasks are performed in order of priority.

상기 태스크 프로그램은 사용자가 설정하는 인터럽트 프로그램이므로 신속한 처리가 최우선되는데, 태스크 프로그램 처리시 시간지연이 발생하여 긴급 처리 명령의 경우에 오류가 발생하는 문제점이 있다.Since the task program is an interrupt program set by a user, rapid processing is a top priority. There is a problem in that an error occurs in the case of an emergency processing instruction due to a time delay in processing the task program.

즉, 외부로부터 긴급사항을 빨리 접수는 하였지만 조치 태스크 프로그램의 수행이 늦어져 심각한 문제가 발생할 소지가 있고, 또한, 시간지연은 상황에 따라 다르게 나타나므로 정확한 지연시간 예측도 어렵다.In other words, although the emergency matters were quickly received from the outside, the execution of the action task program may be delayed, which may cause serious problems. Also, since the time delay may vary depending on the situation, it is difficult to accurately predict the delay time.

본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로, 빠른 태스크 프로그램 처리에 적당하도록 한 범용 씨피유의 인터럽트 기능을 실시간으로 태스크 우선순위에 적당하게 처리하도록 한 피엘씨 태스크 제어방법을 제공함에 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and provides a PLC task control method for processing the interrupt function of the general-purpose CPI, which is suitable for fast task program processing, in accordance with task priority in real time. There is this.

도1은 종래 피엘씨의 태스크 제어방법에 대한 동작흐름도.1 is a flowchart illustrating a conventional task control method of PLC.

도2는 본 발명 피엘씨의 태스크 제어방법에 대한 동작흐름도.2 is a flowchart illustrating a task control method of the present invention.

도3은 일반적인 스택의 구조를 보인 개략도.3 is a schematic view showing a structure of a general stack.

도4는 도2에 있어서, 스택의 구조를 보인 개략도.Figure 4 is a schematic diagram showing the structure of the stack in Figure 2;

상기와 같은 목적을 달성하기 위한 본 발명은, 태스크 이벤트가 발생하고, 그 태스크가 현재 발생한 태스크 보다 우선순위가 높거나 같은 태스크가 수행중이지 않으면 태스크 처리 가능으로 판단하고, 현재 발생한 태스크 보다 우선순위가 높거나 같은 태스크가 수행중이면 태스크 처리 불가능으로 판단 하는 단계와; 상기 판단결과, 태스크 처리 가능하면, 기설정한 미사용 인터럽트 발생 조건을 만족시켜 강제로 온시키는 제2 단계와; 수행중이거나 펜딩된 인터럽트 루틴이 종료되면, 태스크용으로 지정된 미사용 인터럽트를 발생하는 제3 단계와; 태스크용 인터럽트를 종료할 때 지정된 태스크 처리 루틴으로 점프하기 위하여 스택 포인터를 조작하는 제4 단계와; 태스크용 인터럽트가 종료되면, 조작된 스택에 따라 지정된 태스크 처리 루틴을 수행한후, 요구된 태스크 번호에 해당하는 태스크 프로그램으로 점프하는 제5 단계와; 사용자가 작성한 태스크 프로그램을 실행하는 제6 단계와; 태스크 이벤트가 발생하기 바로 직전의 PC값으로 복귀하면서 태스크 프로그램 처리를 완료하는 제7 단계로 수행함을 특징으로 한다.According to the present invention for achieving the above object, if a task event occurs and the task is higher in priority than the currently occurring task or the same task is not being performed, the task is determined to be capable of processing, and the priority is higher than the currently occurring task. Determining that the task cannot be processed if a task equal to or greater than is being performed; A second step of forcibly turning on a predetermined unused interrupt occurrence condition if a task can be processed as a result of the determination; A third step of, when an executing or pending interrupt routine ends, generating an unused interrupt designated for the task; Manipulating the stack pointer to jump to a designated task processing routine when terminating the interrupt for the task; A fifth step of, when the interrupt for the task is finished, performing a designated task processing routine according to the operated stack and then jumping to a task program corresponding to the requested task number; A sixth step of executing a task program created by the user; And performing the seventh step of completing the task program processing while returning to the PC value immediately before the task event occurs.

이하, 본 발명에 의한 피엘씨의 태스크 제어방법에 대한 작용 및 효과를 첨부한 도면을 참조하여 상세히 설명한다.Hereinafter, with reference to the accompanying drawings, the operation and effects of the task control method of PL according to the present invention will be described in detail.

도2는 본 발명 피엘씨의 태스크 제어방법에 대한 동작흐름도로서, 이에 도시한 바와같이 태스크 이벤트가 발생하면 그 태스크를 현시점에서 처리 가능한지 판단하는 제1 단계(ST21,ST22)와; 상기 판단결과, 태스크 처리 가능하면, 기설정한 미사용 인터럽트 발생 조건을 만족시켜 강제로 온시키는 제2 단계(ST23)와; 수행중이거나 펜딩된 인터럽트 루틴이 종료되면, 태스크용으로 지정된 미사용 인터럽트를 발생하는 제3 단계(ST24,ST25)와; 스택을 조작하는 제4 단계(ST26)와; 태스크용 인터럽트가 종료되면, 조작된 스택에 따라 지정된 태스크 처리 루틴을 수행한후, 요구된 태스크 번호에 해당하는 태스크 프로그램으로 점프하는 제5 단계(ST27,ST28)와; 사용자가 작성한 태스크 프로그램을 실행하는 제6 단계(ST29)와; 태스크 프로그램 종료 명령을 실행한후, 재수행 여부를 체크하여 요청된 다른 태스크가 없으면 종료하는 제7 단계(ST30~ST32)로 이루어지며, 이와같은 본 발명의 동작을 설명한다.FIG. 2 is a flowchart illustrating a task control method of the present invention, in which the first steps ST21 and ST22 determine whether the task can be processed at this time when a task event occurs; A second step (ST23) of forcibly turning on by satisfying a predetermined unused interrupt occurrence condition if a task can be processed as a result of the determination; A third step (ST24, ST25) for generating an unused interrupt designated for the task when the running or pending interrupt routine is terminated; A fourth step ST26 of manipulating the stack; A fifth step (ST27, ST28) for jumping to a task program corresponding to the requested task number after performing a task processing routine designated according to the manipulated stack when the task interrupt is finished; A sixth step ST29 for executing a task program created by the user; After executing the task program termination command, it checks whether to re-execute and terminates if there are no other tasks requested. The operation of the present invention will be described.

먼저, 태스크 이벤트가 발생하면(ST21), 그 태스크를 현시점에서 처리가능한지 판단하는데(ST22), 현재 발생한 태스크 보다 우선순위가 높거나 같은 태스크가 수행중이지 않으면 태스크 처리 가능으로 판단하고, 현재 발생한 태스크 보다 우선순위가 높거나 같은 태스크가 수행중이면 태스크 처리 불가능으로 판단한다.First, when a task event occurs (ST21), it is determined whether the task can be processed at this time (ST22). If a task having a higher priority than the currently occurring task or the same task is not running, it is determined that the task can be processed. If a higher priority or the same task is running, it is determined that the task cannot be processed.

상기 태스크 이벤트는,타임 인터럽트 발생하거나, 외부 인터럽트가 발생하거나,인터럽트 인에이블 명령 수행시에 발생한다.The task event occurs when a time interrupt occurs, an external interrupt occurs, or an interrupt enable command is executed.

이때, 태스크 요구는 인터럽트 루틴에서 이루어지기 때문에, 만약 현재 태스크 프로그램을 수행중일 경우에도, 더 높은 우선순위의 태스크가 발생한 경우에는 높은 우선순위의 태스크를 먼저 수행하게 된다.At this time, since the task request is made in the interrupt routine, even if the current task program is being executed, if the task with the higher priority occurs, the task with the higher priority is performed first.

상기 판단결과, 태스크 프로그램 수행조건을 만족한 경우, 기설정한 미사용 인터럽트 발생 조건을 만족시켜 강제로 온시키는데(ST23), 이 인터럽트의 우선순위는 최하위로 설정하여, 현재 수행중인 인터럽트 루틴뿐만 아니라, 인터럽트 컨트롤러에 펜딩되어 있는 모든 인터럽트를 수행한후, 태스크용 인터럽트가 발생되도록 하여야 한다.As a result of the determination, when the task program execution condition is satisfied, the predetermined unused interrupt occurrence condition is satisfied and forcibly turned on (ST23). The priority of the interrupt is set to the lowest level, so that not only the interrupt routine currently being executed, After performing all interrupts pending in the interrupt controller, the interrupt for the task should be generated.

그 다음, 수행중이거나 펜딩된 인터럽트 루틴이 종료되면(ST24), 태스크용으로 지정된 미사용 인터럽트를 발생하는데(ST25), 이때 스택은 도3과 같이 태스크 프로그램이 종료되면 돌아갈 PC(Program Counter)값을 가진다.Then, when the running or pending interrupt routine is terminated (ST24), an unused interrupt designated for the task is generated (ST25). At this time, the stack returns a PC (Program Counter) value to be returned when the task program ends as shown in FIG. Have

그 다음, 스택조작을 수행하는데(ST26), 즉 태스크용 인터럽트를 종료할 때 지정된 태스크 처리 루틴으로 점프하기 위하여 스택 포인터를 조작한다.Then, the stack pointer is manipulated to perform the stack operation (ST26), that is, jump to the specified task processing routine when terminating the interrupt for the task.

이때, 상기 스택은, 도4와 같이, 모든 인터럽트를 허용하기 위해 '0'으로 마스크된 인터럽트 마스크 레지스터영역과, 태스크 처리 루틴의 PC값을 PUSH하는 PC영역이 더 포함된다.In this case, as shown in FIG. 4, the stack further includes an interrupt mask register area masked with '0' to allow all interrupts, and a PC area for pushing the PC value of the task processing routine.

상기 스택 조작방법은, 도3과 같이, 현재 발생한 태스크 번호에 해당하는 태스크 처리루틴의 번지를 PC영역에 저장한다.In the stack operation method, as shown in Fig. 3, the address of the task processing routine corresponding to the currently generated task number is stored in the PC area.

또한, 태스크 프로그램 수행중에 우선순위가 높은 다른 태스크를 허용하기 위하여, 인터럽트 마크 레지스터에 인터럽트 마크 레지스터값으로 '0'을 써준다.In addition, in order to allow other high-priority tasks while the task program is running, '0' is written as the interrupt mark register value in the interrupt mark register.

만약, 스택의 인터럽트 마크 레지스터값이 '0'인 경우, 인터럽트 종료시, 엠피유의 인터럽트 마크 레지스터가 '0'이 되어 우선순위가 높은 다른 태스크 프로그램 발생이 허용된다.If the interrupt mark register value of the stack is '0', the interrupt mark register of MPU becomes '0' at the end of the interrupt, and other task programs with high priority are allowed to be generated.

그 다음, 태스크용 인터럽트가 종료되면(ST27), 조작된 스택에 따라 지정된 태스크 처리 루틴을 수행한후, 요구된 태스크 번호에 해당하는 태스크 프로그램으로 점프하는데(ST28) 여기서, 레지스터 및 대피가 필요한 영역에 대하여 스택에 Push한후, 요구된 태스크 번호에 해당하는 태스크 프로그램으로 점프한다.Then, when the interrupt for the task is finished (ST27), after performing the designated task processing routine according to the manipulated stack, jumping to the task program corresponding to the requested task number (ST28), where the register and the evacuation area are required. Push to the stack and jump to the task program corresponding to the requested task number.

그 다음, 사용자가 작성한 태스크 프로그램을 실행한후(ST29), 그 태스크 프로그램의 종료 명령 실행루틴에서 요구된 태스크가 모두 실행되었는지를 체크하여 모두 실행이 완료된 경우에는 스택에 대피한 레지스터등을 복귀시키고, 도3의 PC값으로 돌아가 태스크 프로그램 수행을 마치게 된다(ST30~ST32).Then, after executing the task program created by the user (ST29), it is checked whether all of the required tasks have been executed by the end instruction execution routine of the task program. If all execution is completed, the register etc. evacuated to the stack are returned. Returning to the PC value of Fig. 3, the task program execution is completed (ST30 to ST32).

만약, 수행할 태스크가 남아 있으면, 가장 우선순위가 높은 태스크를 수행하기 위하여, 상기 태스크 처리루틴으로 점프하는데, 이 루틴은 남아있는 태스크가 모두 없어질때까지 반복 실행하게 된다.If there are remaining tasks to be performed, in order to perform the highest priority task, jump to the task processing routine, which is repeated until all remaining tasks are gone.

상기 본 발명의 상세한 설명에서 행해진 구체적인 실시 양태 또는 실시예는어디까지나 본 발명의 기술 내용을 명확하게 하기 위한 것으로 이러한 구체적 실시예에 한정해서 협의로 해석해서는 안되며, 본 발명의 정신과 다음에 기재된 특허 청구의 범위내에서 여러가지 변경 실시가 가능한 것이다.The specific embodiments or examples made in the detailed description of the present invention are for the purpose of clarifying the technical contents of the present invention only, and should not be construed as limited to these specific embodiments by consultation, and the spirit of the present invention and the claims Various changes can be made within the scope of.

이상에서 상세히 설명한 바와같이 본 발명은, 태스크용 인터럽트는 우선순위가 가장 낮으면, 현재 펜딩 되어 있는 다른 모든 인터럽트 처리가 끝나는 시점에 태스크용 인터럽트가 발생하고, 스택 조작에 의해 해당 태스크를 수행하게 되고, 또한, 태스크 프로그램 도중에 우선순위가 높은 다른 태스크 프로그램을 허용하기 위해, 인터럽트 종료시에 인터럽트 마크 레지스터를 클리어시켜 다른 모든 인터럽트를 허용함으로써, 실시간으로 태스크 처리 및 태스크 우선순위 처리를 가능하게 하는 효과가 있다.As described in detail above, in the present invention, if the interrupt for the task has the lowest priority, the task interrupt occurs at the end of all other interrupt processing currently pending, and the task is performed by the stack operation. In addition, in order to allow other high-priority task programs during the task program, the interrupt mark register is cleared at the end of the interrupt to allow all other interrupts, thereby enabling task processing and task priority processing in real time. .

Claims (6)

태스크 이벤트가 발생하고, 그 태스크가 현재 발생한 태스크 보다 우선순위가 높거나 같은 태스크가 수행중이지 않으면 태스크 처리 가능으로 판단하고, 현재 발생한 태스크 보다 우선순위가 높거나 같은 태스크가 수행중이면 태스크 처리 불가능으로 판단 하는 단계와;If a task event occurs and the task has a higher priority than the currently occurring task or the same task is not running, it is determined that the task can be processed.If the task has a higher priority or the same task than the currently occurring task, the task cannot be processed. Judging by; 상기 판단결과, 태스크 처리 가능하면, 기설정한 미사용 인터럽트 발생 조건을 만족시켜 강제로 온시키는 제2 단계와;A second step of forcibly turning on a predetermined unused interrupt occurrence condition if a task can be processed as a result of the determination; 수행중이거나 펜딩된 인터럽트 루틴이 종료되면, 태스크용으로 지정된 미사용 인터럽트를 발생하는 제3 단계와;A third step of, when an executing or pending interrupt routine ends, generating an unused interrupt designated for the task; 태스크용 인터럽트를 종료할 때 지정된 태스크 처리 루틴으로 점프하기 위하여 스택 포인터를 조작하는 제4 단계와;Manipulating the stack pointer to jump to a designated task processing routine when terminating the interrupt for the task; 태스크용 인터럽트가 종료되면, 조작된 스택에 따라 지정된 태스크 처리 루틴을 수행한후, 요구된 태스크 번호에 해당하는 태스크 프로그램으로 점프하는 제5 단계와;A fifth step of, when the interrupt for the task is finished, performing a designated task processing routine according to the operated stack and then jumping to a task program corresponding to the requested task number; 사용자가 작성한 태스크 프로그램을 실행하는 제6 단계와;A sixth step of executing a task program created by the user; 태스크 이벤트가 발생하기 바로 직전의 PC값으로 복귀하면서 태스크 프로그램 처리를 완료하는 제7 단계로 수행함을 특징으로 하는 피엘씨 태스크 제어방법.And a seventh step of completing the task program processing while returning to the PC value immediately before the task event occurs. 제1 항에 있어서, 제1 단계의 태스크 이벤트는,The method of claim 1, wherein the task event of the first step, 타임 인터럽트 발생하거나, 외부 인터럽트가 발생하거나,인터럽트 인에이블 명령 수행시에 발생하는 것을 특징으로 하는 피엘씨 태스크 제어방법.PLC task control method characterized in that occurs when a time interrupt occurs, an external interrupt occurs, or an interrupt enable instruction is executed. 삭제delete 삭제delete 제1 항에 있어서, 스택은,The method of claim 1, wherein the stack is 모든 인터럽트를 허용하기 위해 '0'으로 마스크된 인터럽트 마스크 레지스터영역과, 태스크 처리 루틴의 PC값을 PUSH하는 PC영역이 더 포함되는 것을 특징으로 하는 피엘씨 태스크 제어방법.And an interrupt mask register area masked with '0' to allow all interrupts, and a PC area for pushing the PC value of the task processing routine. 삭제delete
KR10-2002-0011408A 2002-03-04 2002-03-04 Task control method for plc KR100434147B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0011408A KR100434147B1 (en) 2002-03-04 2002-03-04 Task control method for plc

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0011408A KR100434147B1 (en) 2002-03-04 2002-03-04 Task control method for plc

Publications (2)

Publication Number Publication Date
KR20030072532A KR20030072532A (en) 2003-09-15
KR100434147B1 true KR100434147B1 (en) 2004-06-04

Family

ID=32223343

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0011408A KR100434147B1 (en) 2002-03-04 2002-03-04 Task control method for plc

Country Status (1)

Country Link
KR (1) KR100434147B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5193189A (en) * 1987-10-07 1993-03-09 Allen-Bradley Company, Inc. Programmable controller with multiple priority level task processing
JPH0877025A (en) * 1994-09-01 1996-03-22 Kokusai Electric Co Ltd Method and device for controlling priority of task
KR19980083128A (en) * 1997-05-12 1998-12-05 이종수 Multitask fast performance device in PLC system
US6240358B1 (en) * 1998-07-31 2001-05-29 Denso Corporation Task control method with reduced stacked memory requirement

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5193189A (en) * 1987-10-07 1993-03-09 Allen-Bradley Company, Inc. Programmable controller with multiple priority level task processing
JPH0877025A (en) * 1994-09-01 1996-03-22 Kokusai Electric Co Ltd Method and device for controlling priority of task
KR19980083128A (en) * 1997-05-12 1998-12-05 이종수 Multitask fast performance device in PLC system
US6240358B1 (en) * 1998-07-31 2001-05-29 Denso Corporation Task control method with reduced stacked memory requirement

Also Published As

Publication number Publication date
KR20030072532A (en) 2003-09-15

Similar Documents

Publication Publication Date Title
US7069507B1 (en) Event routing model for an extensible editor
KR100434147B1 (en) Task control method for plc
KR970033457A (en) Memory means access control method and numerical control device in numerical control device
Wan et al. Key technology of embedded system implementation for software-based CNC system
JP2000020352A (en) Stack overflow detecting method and stack underflow detecting method
JPH0895798A (en) Data processor
KR100302566B1 (en) Apparatus for interpreting SFC in a control system
JPH0451329A (en) Context switching device
KR100229427B1 (en) Apparatus for generating interrupt signals
JPH0766369B2 (en) Command processing method for image processing
JP2000242319A (en) Numerical controller
JPS6022768B2 (en) Data processing method
JP2007102399A (en) Data processor
KR100241343B1 (en) Same-level interrupt execution sequence control method
WO1990013071A1 (en) Programmable controller
KR100337083B1 (en) Programmer's External Equipment Control Method
CN117632411A (en) Interrupt processing program processing method, interrupt control method and processor
JP3120841B2 (en) In-circuit emulator
KR930002855B1 (en) Error signal discriminating method
KR100221487B1 (en) Method for input program to robot controller
JPS61267137A (en) System for controlling interrupting action
JP2679685B2 (en) Core file generation method
JPH05158707A (en) Real register assigning method
JPH04134534A (en) Method and mechanism for calling exit of timer run-out
JPH01116833A (en) Interruption processing system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120327

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20130222

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160401

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20170403

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20180502

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20190502

Year of fee payment: 16