KR900005548B1 - Programmble controller - Google Patents

Programmble controller Download PDF

Info

Publication number
KR900005548B1
KR900005548B1 KR1019860700360A KR860700360A KR900005548B1 KR 900005548 B1 KR900005548 B1 KR 900005548B1 KR 1019860700360 A KR1019860700360 A KR 1019860700360A KR 860700360 A KR860700360 A KR 860700360A KR 900005548 B1 KR900005548 B1 KR 900005548B1
Authority
KR
South Korea
Prior art keywords
output
flag
unit
program
control unit
Prior art date
Application number
KR1019860700360A
Other languages
Korean (ko)
Other versions
KR880700328A (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 고오요오 덴시 고오교오 가부시기 가이샤
Publication of KR880700328A publication Critical patent/KR880700328A/en
Application granted granted Critical
Publication of KR900005548B1 publication Critical patent/KR900005548B1/en

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

Abstract

내용 없음.No content.

Description

[발명의 명칭][Name of invention]

프로그래머블 제어기Programmable controller

[도면의 간단한 설명][Brief Description of Drawings]

제1도는 자기유지회로의 설명도.1 is an explanatory diagram of a magnetic holding circuit.

제2도는 순서제어에 있어서의 단위공정의 이행의 설명도.2 is an explanatory diagram of transition of a unit process in order control.

제3도-제9도는 본 발명의 대상으로 되어 있는 공정설명도.3 to 9 are process explanatory diagrams of the present invention.

제10도는 본 발명의 한 실시예에 관한 프로그래머블 제어기의 주요부분을 나타낸 블록도.10 is a block diagram showing the main parts of a programmable controller according to an embodiment of the present invention.

제11도는 전술한 제어기의 프로그램기억부에 기억되는 프로그래머의 서식(format)도.11 is a format diagram of a programmer stored in the program memory section of the controller described above.

제12a도 및 제12b도는 입출력내부 계전회로에 있어서의 논리전송의 설명도.12A and 12B are explanatory diagrams of logical transmission in the input / output internal relay circuit.

제13a도는 로봇핸드의 동작설명도.13A is an explanatory diagram of the operation of the robot hand.

제13b도 (a)-(i)는 그 동작을 각 공정에 분해한 설명도.13B (a)-(i) are explanatory diagrams which decomposed the operation in each step.

제13c도는 그 동작의 순서도.13C is a flow chart of its operation.

제14도는 전술한 공정을 실행하기 위한 프로그래머블 제어기에 입력하는 회로조건을 나타낸 블록도.14 is a block diagram showing circuit conditions for inputting into a programmable controller for executing the above-described process.

제15도는 전술한 공정을 실행하기 위한 종래장치(라더법)에 입력하는 회로조건을 나타낸 블록도.Fig. 15 is a block diagram showing circuit conditions input to a conventional apparatus (ladder method) for carrying out the above-described steps.

제16a,b도는 제14도에 있어서의 논리전송의 설명도.16A and 16B are explanatory diagrams of logical transfers in FIG.

제17도는 본 발명의 다른 실시예에 관한 프로그래머블 제어기의 주요부분을 나타낸 블록도.17 is a block diagram showing the main parts of a programmable controller according to another embodiment of the present invention.

제18도는 공정어드레스기억부에 기억된 내용을 나타낸 설명도.18 is an explanatory diagram showing the contents stored in the process address storage unit.

제19도는 제17도의 프로그래머블 제어기의 동작을 나타낸 순서도.19 is a flowchart showing the operation of the programmable controller of FIG.

[발명의 상세한 설명]Detailed description of the invention

[발명의 기술분야]Technical Field of the Invention

본 발명은 공작기계등의 제어시스템을 일정한 공정순서로 동작시키도록 한 프로그래머블 제어기에 관한 것이다.The present invention relates to a programmable controller for operating a control system such as a machine tool in a certain process sequence.

[발명의 배경][Background of invention]

공작기계등의 피제어시스템을 일정한 공정순서로 동작시키도록 제어하는 프로그래머블 제어기로서, 필요로 하는 제어내용을 써넣을 수 있도록 한 프로그램기억부를 구비하고, 설계, 제작의 표준화를 꾀하였으며, 또 피제어체의 규격변경 및 공정순서의 변경등에 용이하게 대처할 수 있도록한 프로그래머블 제어기가 이 근래에 와서 다양화하는 추세에 있다. 이런종류의 장치에 대한 프로그래밍은 예컨대 조작대에 마련한 설정키이의 조작으로 필요로 하는 프로그램을 프로그램기억부에 써넣도록 하여 실행한다. 그런데 종래의 장치에 있어서는 이와같은 프로그래밍을 함에 있어서 프로그래밍설정의 기본으로 하기 위한 계전회로의 설계를 필요로 하였다. 즉, 일단 유접점 또는 무접점의 계전기를 사용하여서되는 회로를 설계하고, 그 회로도를 기호화, 부울대수(blooleam algebra)와, 코우드(code)화 함에 따라서 프로그램을 얻는 것으로 되어 있었다. 따라서 프로그래머블 제어기 그 자체의 설계, 제작은 표준화되어 오기는 하였으나, 피제어 시스템 고유의 프로그램 작성에서는, 계전기를 주요구성부품으로 한 종래의 시이퀀스제어기의 설계에 있어서와 마찬가지로, 계전회로의 설계작업을 요구하게 되어 표준화의 이점을 손감하게 된다고 하는 문제점이 있었다. 또 수요가에 있어서 동작시이퀀스, 피제어체의 규격변경을 하기 위하여 프로그램을 다시 고쳐쓰는 경우에 있어서도 마찬가지로 계전회로의 설계를 필요로 하여, 장치를 널리 잘 이용할 수 있다고 하는 이점을 충분히 형수할 수 없다고 하는 결점이 있었다. 나아가서 프로그램의 용량은 계전회로의 설계종료후까지 산출할 수 없으므로 프로그래머블 제어기의 규격결정에도 지체를 초래케된다고 하는 문제점이 있었다.Programmable controller that controls controlled systems such as machine tools to operate in a certain process order, and has a program memory unit to write necessary control contents, and to standardize design and manufacture. In recent years, programmable controllers that can easily cope with changes in the specification of the sieve and the change of the process order have been diversified. Programming of this kind of device is executed by writing a program required by the operation of the setting key provided on the operating table to the program storage unit. In the conventional apparatus, however, it is necessary to design a relay circuit in order to make a basic programming setting in such programming. In other words, the circuit was designed using a contact or solid state relay, and the program was obtained by encoding the circuit diagram, blooleam algebra, and code. Therefore, although the design and manufacture of the programmable controller itself have been standardized, the design work of the relay circuit is similar to the design of a conventional sequence controller using a relay as a main component in the programming of the controlled system. There was a problem in that it would reduce the benefits of standardization. In addition, in the case of rewriting the program to change the operation sequence and the specification of the controlled object at the demand price, the design of the relay circuit is similarly required, and the advantage that the device can be widely used can be sufficiently determined. There was a flaw that there was no. Furthermore, since the capacity of the program cannot be calculated until after the design of the relay circuit is completed, there is a problem that it causes a delay even in the specification of the programmable controller.

[발명의 개시][Initiation of invention]

본 발명은 그와같은 사정에 비추어 성취한 것으로서, 그 목적은 피제어체의 동작에 따라서 프로그래밍 할 수 있는 구성으로 함에 따라, 상술한 문제점을 해소한 프로그래머제어기를 제공함에 있다.SUMMARY OF THE INVENTION The present invention has been accomplished in view of the above circumstances, and an object thereof is to provide a programmer controller which solves the above-described problems by making the configuration programmable according to the operation of the controlled object.

본 발명의 그밖의 목적은, 상술한 제어기에 있어서 프로그램의 실행처리시간을 빠르게한 프로그래머제어기를 제공함에 있다.Another object of the present invention is to provide a programmer controller which speeds up the execution processing time of a program in the controller described above.

본 발명은, 제어가 단위공정의 조합에 의하여 구성되어 있음에 착안하여 성취한 것으로, 실행중의 단위공정에 대응하여 이 단위공정의 상태를 기억하는 기능을 지니게 한 플라그(flag) 기억수단(여러개)으로 구성한 공정플라그기억부를 구비하고, 프로그램기억부에서 시분할(時分割)로 판독한 프로그래중의 공정 플래그 어드레스의 내용에 대응하는 플라그의 온,오프 상태를 체크하여, 그 플라그가 온상태로 있을 경우에는 그 플라그에 대응하는 단위공정(단수 또는 복수)의 제어를 하고, 각 단위공정에 있어서의 최후에는 다음의 단위공정을 지시하는 내용(이행공정)을 프로그램으로 하여 두어, 희망하는 단위공정으로의 이행을 자유로이 하도록 하는 것이다.SUMMARY OF THE INVENTION The present invention has been accomplished in view of the fact that control is constituted by a combination of unit processes, and a flag storage means (multiple) having a function of storing the state of the unit process in correspondence to a running unit process (multiple) And a flag of the flag corresponding to the contents of the process flag address in the program read out in time divisions from the program memory, and the flag is turned on. If present, control of the unit process (single or plural) corresponding to the plaque is carried out, and at the end of each unit process, a program (content of the following process) instructing the next unit process is used as a program. To make the transition to freedom.

그런데, 본 발명은, 상술한 바와같이, 단위공정 하나하나에 제어동작을 실행하도록 한 프로그램방식, 즉 공정방식을 채용하고 있으므로, 어떤 공정에서 출력한 출력을 다른 공정내에서도 출력하는 것이 요구된다. 이 때문에, 동일한 출력번호에 대한 출력명령(OUT명령)이 프로그램상의 어디서나 기술하게 된다. 예컨대 라더(rudder) 방식의 프로그램에서는 어떤출력번호에 대한 출력명령이 프로그램상에 단 1밖에 나타나지 않으며, 어떤 출력이 온 또는 오프하기 위한 조건만 기술된 조건 일치형의 제어를 실행함에 대하여, 본 발명에 관한 공정방식에서는 임의의 공정에서 자유로이 임의의 출력에 대한 동작을 몇번이라도 기술할 수 있으므로, 제어계의 기술을 함에 있어서, 프로그램의 용이함은 전자에 비하여 격별히 우위성이 있다. 이 사실은 또한, 제어계의 동작의 흐름이 제3자에 있어서도 보다 이해하기쉬운 프로그램방식이라고 말할 수 있다. 이러한 것에 대한 상세는 나중에 설명한다.By the way, since the present invention employs a program method, i.e., a process method, which executes a control operation for each unit process as described above, it is required to output the output output in one process even within another process. For this reason, the output instruction (OUT instruction) for the same output number is described anywhere in the program. For example, in a rudder type program, only one output command for an output number appears in the program, and the present invention provides a condition matching control in which only one output is turned on or off. In the process method related to the above, the operation of any output can be described any number of times in any process. Therefore, in describing the control system, the ease of programming has a distinct advantage over the former. This fact can also be said that the flow of operation of the control system is easier to understand in the third party. Details of this will be described later.

본 발명에서, 공정방식의 뛰어난 점, 즉 공정단위에 동일한 출력번호에 대한 출력명령을 기술할 수 있는 기능을 실현하려면, 다음의 (a)-(c)의 문제를 해결하지 않으면 아니된다.In this invention, in order to realize the outstanding point of a process system, ie, the function which can describe the output command about the same output number in a process unit, the problem of following (a)-(c) must be solved.

(a) 어떤 공정과 다른 어떤 공정의 2개소에서 어떤 출력을 사용할 때, 이 출력에 대한 출력명령이 프로그램 상 2개소에 기술된다. 이때, 어떤 형편의 공정에서 이 출력을 온하게 하고 있을 경우, 다른 공정에서 이 출력을 오프하도록 동작하였을 때 이 출력은 어떻게 처리하여야 하는가?(a) When using an output in two places in one process and another, the output command for this output is described in two places in the program. If the output is turned on in one process, how should the output be handled when the output is turned off in another process?

(b) 공정방식에서는, 공정이 온일때에만 해당하는 공정의 처리를 할 수 있으나, 이 공정이 오프로 되면, 그 공정내의 모든 처리는 실행할 수 없도록 동작한다. 이때, 출력명령이 나와있는 어떤 출력을 온하도록 동작하고 있었을 경우 그 공정이 오프로 되면 이 출력명령으로 출력된 출력은 언제 오프로 하는가?(b) In the process method, the process can be processed only when the process is on, but when this process is off, all the processes in the process are operated so that they cannot be executed. At this time, if the output command is operating to turn on some output, when is the process turned off, when is the output output by this output command turned off?

상술한 (a),(b)의 문제점을 해결하기 위하여는, 1주사 [입력전송(轉送)(읽어넣기)-프로그램 실행(프로그램의 읽어넣기·연산)]의 종료후 외부에 대한 출력조작 완료후 전체출력을 오프함을 생각할 수 있다. 이와같이 함에 따라, 출력을 오프하는 조작은 프로그램상의 출력명령(OUT 명령)으로 실행할 필요가 없어지게되어, 예를들면 어떤 출력을 제어하고 있었던 공정이 오프로 되어도, 출력은 1주사의 완료한 다음에는 반드시 오프할 수 있다.In order to solve the problems of (a) and (b) described above, the output operation to the outside is completed after the completion of one scan [Input Transfer (Read) -Program Execution (Read and Compute)]. We can think of turning off the entire output afterwards. In this way, the operation of turning off the output does not need to be executed by an output instruction (OUT instruction) in the program. For example, even if a process controlling an output is turned off, the output is completed after one scan is completed. You can always turn it off.

(c) 그러나, 1주사의 종료시에 출력을 반드시 오프로 하면, 제1도에서 보는 바와같이 자기유지프로그램을 편성할 수 없다. 즉 어떤공정중에서, 입력 A가 온하면 출력 X가 온하여, 그 출력 X의 점검에 의하여, 입력 A가 오프하여도 출력 X는 온을 계속한다고 하는 회로이다. 이 출력 X을 오프하려면, 이 공정이 오프하면 된다. 그러나, 이 프로그램을 상술한 방법으로 실행하면 자기유지를 할 수 없다. 즉, 어떤 주사중에 입력 A가 온하고(명령 2), 그 결과 OUT 명령(4)에 의하여 출력 X는 온한다.(c) However, if the output is always turned off at the end of one scan, the self-holding program cannot be organized as shown in FIG. That is, in a process, when the input A is turned on, the output X is turned on, and the output X continues to be turned on even when the input A is turned off by checking the output X. In order to turn off this output X, this process should just turn off. However, if this program is executed in the above-described manner, self-maintenance is not possible. That is, during some scan, input A is turned on (command 2), and as a result, output X is turned on by the OUT command 4.

이것으로 1주사가 종료하면 출력은 모두 오프되므로, 다음의 주사에서 입력 A가 오프하고 있으면, 명령(2)은 오프, 명령(3)의 ORX도 X는 오프되므로, 명령(4)의 OUT X도 오프로 되어 버린다.When one scan ends, the outputs are all turned off. Therefore, if the input A is turned off in the next scan, the instruction 2 is turned off, and the ORX of the instruction 3 is also turned off. Therefore, the output X is turned off. Also becomes off.

이상의 (a)-(c)의 문제점을 해결한 것이, 본 발명에 있어서의 논리전송의 기술이며, 그 상세는 나중에 설명한다.The problem of the above-mentioned (a)-(c) is solved by the description of logical transfer in this invention, The detail is demonstrated later.

다음에, 상술한 논리전송의 기술을 채택한 본 발명에 관한 프로그래머제어기는 프로그램기억부에 기억되어, 각기 일정한 제어단위 마다에 공정번호를 부친 여러개의 공정으로 구성된 일련의 프로그램을 명령어드레스레지스터(program counter)가 나타낸 어드래스(adress)에 따라서 판독하여, 해석하고, 실행하여 나아가는 제어방식의 프로그래머블 제어기에서, 제어단위마다에 공정번호, 논리연산 및 (또는) 데이터연산명령, 타이머, 카운터출력 등을 포함하는 처리명령 및 이행공정을 포함하여, 이것들이 여러개 기억하는 프로그램기억부와, 공정번호에 대응하여 플래그를 설정하고, 이 설정한 플래그를 기억하는 공정플래그기억부와를 지니고 있다. 나아가서, 이 프로그래머블 제어기는, 다음에 설명하는 입출력내부계전회로(논리전송회로) 및 제어부를 지니고 있다. 즉 입출력내부계전회로(논리전송회로)는, 입출력부의 온,오프상태를 기억하는 영역을 지니고, 특히 각 출력단자에 대응하여 2개의 기억영역을 지녔으며, 제1기억영역에는 프로그램실행직후의 연산출력의 상태를 기억한다. 그리고 1주사가 끝날때마다, 제1기억영역의 내용을 제2기억영역에 이행함과 동시에, 제1기억영역의 내용을 해제한다. 제어부는 전술한 명령의 판독, 해석, 실행에 따라서, 공정 플래그기억부의 공정번호 대응하는 플래그를 온 또는 오프하여, 이 온한 플래그에 대응하는 제어단위를 프로그램기억부로 부터 순차 정보를 얻어내면서 선택하고 그리고 해당하는 제어단위에 포함되는 명령을 얻어내어, 해석하여 실행한다. 나아가서, 이 제어부는 입출력내부계전회로의 제1기억영역과 제2기억영역의 논리합을 구하여, 논리합이 0일 때, 해당하는 출력단자를 오프로 하며 논리합이 1일 때 해당하는 출력을 온으로 한다(이하 논리전송이라고 칭한다). 이 기술에 의하여, 전술한 (a)-(c)의 문제점을 해결하는 것이 가능하게 되어 있다.Next, the programmer controller according to the present invention adopting the above-described logic transfer technique is stored in the program storage unit, and the instruction counter registers a series of programs composed of a plurality of processes each having a process number for each fixed control unit. In a programmable controller of a control method that reads, interprets, and executes according to an address indicated by), each process unit includes a process number, a logic operation and / or a data operation instruction, a timer, a counter output, and the like. It includes a program memory section for storing these items, a process flag storage section for setting a flag corresponding to the process number, and storing the set flag, including a processing instruction to be executed and a transition process. Furthermore, this programmable controller has an input / output internal relay circuit (logical transfer circuit) and a control unit described below. That is, the input / output internal relay circuit (logical transfer circuit) has an area for storing the on / off states of the input / output part, in particular, has two memory areas corresponding to each output terminal, and the first memory area has an operation immediately after program execution. Remember the state of the output. Each time one scan is finished, the contents of the first storage area are transferred to the second storage area and the contents of the first storage area are released. The control unit turns on or off a flag corresponding to the process number of the process flag storage unit in accordance with reading, interpreting, and executing the above-described command, and selects a control unit corresponding to the at least one flag while obtaining sequential information from the program storage unit, and Obtain, interpret and execute the instructions contained in the corresponding control unit. Further, the control unit obtains the logical sum of the first memory area and the second memory area of the internal / output internal relay circuit, turns off the corresponding output terminal when the logic sum is 0, and turns on the corresponding output when the logic sum is 1. (Hereinafter referred to as logical transfer). By this technique, it is possible to solve the above-mentioned problems of (a)-(c).

본 발명에 관한 프로그래머블 제어기는 상술한 바와같은 공정단위로 제어함과 동시에 상술한 논리전송에 의하여, 전술한 설명 및 후술하는 실시예에 따라 명백한 바와같이, 프로그램작성 작업이 매우 용이하게 되고 또 동작순서등의 변경할때의 프로그램변경을 용이하게 실행할 수 있다고 하는 뛰어난 효과를 성취하였다. 나아가서, 본 발명에 관한 다른 프로그램블 제어기는, 상술한 프로그래머블 제어기에 대하여, 다음의 공정어드레스기억부를 지니고 있다.The programmable controller according to the present invention is controlled by the process unit as described above, and at the same time, by the above-described logical transfer, as is apparent in accordance with the above-described description and the embodiments to be described later, the programming operation becomes very easy and the operation sequence The outstanding effect that the program change at the time of the change of the back was easily performed was achieved. Furthermore, the other programmable controller which concerns on this invention has the following process address memory part with respect to the programmable controller mentioned above.

이 공정어드레스기억부는 프로그램의 모든 공정번호 및 이 공정번호가 기억된 전술한 프로그램기억부의 어드레스가 기억되어 있다. 이 때문에, 이 프로그래머블 제어부는 전술한 하나의 명령만을 판독, 해석, 실행함에 따라서, 공정플래그기억부의 공정번호에 대응하는 플래그를 온 또는 오프하여, 공정어드레스기억부의 기억내용에 따라서 온으로 한 플래그에 대응하는 제어단위를 선택하고, 선택한 제어단위에 포함되는 명령에 대해서만 정보를 얻어내어, 해석하고 실행을 한다.This process address storage unit stores all the process numbers of the program and the address of the above-described program memory unit in which the process numbers are stored. For this reason, the programmable control unit turns on or off the flag corresponding to the process number of the process flag storage unit as it reads, interprets, and executes only one of the above-described instructions, and turns on the flag that is turned on in accordance with the stored contents of the process address storage unit. Select the corresponding control unit, obtain information only on the instructions contained in the selected control unit, interpret it, and execute it.

따라서, 상술한 프로그래머블 제어기는 명령의 판독, 해석, 실행에 따라서 하나의 공정번호에 대응하는 플래그를 온 또는 오프로 하고, 공정어드레스기억부에 기억한 공정번호 및 공정번호가 기억된 어드레스에 따라서 온으로 한 플래그에 대응하는 공정을 선택하여, 이 선택한 공정에 포함된 명령에 대하여서만 판독, 해석, 실행을 하며, 플래그를 오프로 한 공정에 포함되는 명령의 판독을 하지 않으므로, 프로그래머블 제어기의 실행속도가 격별히 향상한다.Therefore, the above-described programmable controller turns on or off a flag corresponding to one process number in accordance with reading, interpreting, and executing the instruction, and turns on the process number stored in the process address storage unit and the address stored in the process number. The execution speed of the programmable controller is selected by selecting a process corresponding to one flag, and reading, interpreting, and executing only the instructions included in the selected process, and not reading the instructions included in the process with the flag off. Improve significantly.

예를들면, 프로그램 전체의 명령수를 N, 플래그가 온하고 있는 공정중의 명령수를 n라고 하면, 본 발명에 관한 프로그래머블 제어기의 실행속도는 상술한 것에 비교하여 n/N 정도로 된다.For example, if the number of instructions in the whole program is N and the number of instructions in the process of turning on the flag is n, the execution speed of the programmable controller according to the present invention is about n / N as compared with the above.

[발명을 실시하기 위한 가장 좋은 형태][Best form for carrying out the invention]

다음에 먼저 본 발명에 관한 프로그래머블 제어기의 제어공정의 흐름을 설명한다.Next, the flow of the control process of the programmable controller according to the present invention will be described first.

순서제어에 있어서의 1스텝의 공정(이하 단위공정이라고 한다)은 제2도에 나타낸 바와같이 단위공정(n)에서 제어하여야 할 피제어체와, 즉 피제어시스템을 구성하는 모우터, 전자밸브등에 출력신호 OUT를 부여하면, 이 출력신호 OUT에 응답하는 입력신호(IN) 즉 조작스위치, 리밋스위치 또는 타이머 등의 신호를 얻을 수 있으며, 이것을 연산한 결과에 따라서 단위공정(n)에서 다음의 단위공정(m)으로 이행한다. 이에 대하여 제3도는 단위공정(n)에 단위공정(m)으로의 점프(jump)를 나타내고 있다.The one-step process (hereinafter referred to as the unit process) in the sequence control is a controlled body to be controlled in the unit process n as shown in FIG. 2, that is, a motor and a solenoid valve constituting the controlled system. When the output signal OUT is assigned to the output signal OUT or the like, an input signal IN corresponding to the output signal OUT, i.e., a signal such as an operation switch, a limit switch, or a timer, can be obtained. Shift to unit process (m). In contrast, FIG. 3 shows a jump to the unit process m in the unit process n.

요컨대 단위공정(n)의 최후에 있어서 차단위공정(이행공정)을 지시하는 내용(K)을 프로그램하고 있으며, 단위공정(n)으로 쓰여진 이행조건이 성립하면 고정플래그기억부의 K에 해당하는 플래그를 온하며, 이 결과 단위공정(K)을 프로그램을 실행하게 된다. 도해한 바와같이 K=m라고 프로그램하여 둘 경우에는, 단위공정(m)으로 점프하여 이행하며, 또 K=n'라고 프로그램하여 둘 경우에는 단위공정(n')으로 진행한다. 그리고 공정플래그기억부의 n에 해당하는 플래그는 오프되어, 단위공정(n)의 제어의 실행은 종료한다.In short, the content (K) is instructed to indicate the blocking step (implementation step) at the end of the unit step (n), and if the transition condition written in the unit step (n) is satisfied, the flag corresponding to K of the fixed flag memory unit is established. On, the result is to run the unit process (K) program. As illustrated, when K = m is programmed, the process jumps to the unit process m, and when it is programmed as K = n ', the process proceeds to the unit process n'. Then, the flag corresponding to n in the process flag storage unit is turned off, and the execution of the control of the unit process n ends.

제4도-제6도는 상기한 이행의 변형예를 나타내고 있다. 즉 제4도는 K=m인 경우이며 단위공정(n)에서 앞의 단위공정(m)으로 점프한다. 제5도는 단위공정(n)에서 단위공정(m)으로 점프하며, 다음에는 단위공정(m')으로 이행시켜서 단위공정 n+1~m+1을 차단하는 경우를 나타내고 있다. 제6도는 단위공정(n)에서 단위공정(m)으로 이행시키고, 그런다음 단위공정 m~m+α을 순차로 실행시킨 다음, 단위공정 m~m+α을 삽입하는 것을 의미하고 있다.4 to 6 show a modification of the above-described transition. 4 is a case where K = m and jumps from the unit process n to the previous unit process m. 5 shows a case in which the jump from the unit process (n) to the unit process (m) is performed, and then the unit process (m ') is blocked to block the unit processes n + 1 to m + 1. FIG. 6 means that the process shifts from the unit process (n) to the unit process (m), and then executes the unit processes m to m + α sequentially, and then inserts the unit processes m to m + α.

이와같은 점프의 이행과 전혀 마찬가지로 하여, 분기제어 또는 병행제어, 이의 반대의 제어, 나아가서 판단제어를 하게 된다.Similarly to the transition of such jumps, branch control or parallel control, vice versa control, and judgment control are performed.

제7도는 분기제어 또는 병행제어를 하게 하는 경우의 공정도이다. 단위공정(n)의 최후에 있어서의 다음의 공정을 지시하는 내용(K)으로서 n' 및 m의 2가지가 프로그램되어있다.7 is a process chart in the case of making branching control or parallel control. Two types, n 'and m, are programmed as the content K indicating the next step at the end of the unit step n.

이와같은 경우에는 단위공정(n)의 이행조건이 성립하면, 나중에 설명하는 바와같이 공정플래그기억부의 단위공정(n''),(m)의 각각에 배당한 플래그가 동시적으로 온되어, 단위공정(n') 및 (m)가 병행제어(시분할제어에 의한)하게 된다. 요컨대 단위공정(n)에서 단위공정(n') 및 (m)에로의 분기제어를 하게 된다. n',m의 플래그가 온함과 동시에 단위공정(n)에 배당하고 있는 플래그가 오프된다는 것은 전술한 경우와 마찬가지이다.In such a case, when the transition conditions of the unit process (n) are satisfied, as described later, flags assigned to each of the unit processes (n '') and (m) of the process flag storage unit are simultaneously turned on, and Steps n 'and (m) are in parallel control (by time division control). In other words, branch control from the unit process (n) to the unit processes (n ') and (m) is performed. It is similar to the above-mentioned case that the flag allocated to the unit process n turns off at the same time as the flag of n 'and m turns on.

제8도는 상술한 바와같이 하여 분기된 제어를 통합하는 경우의 공정을 나타내고 있으며, 단위공정(n) 및 (m)의 차단위공정(K)으로서 함께 n'가 프로그램되어 있다. 따라서 단위공정(n),(m)에서 각각의 이행조건이 성립하면 이에 대응하는 플래그가 온되고 또 단위공정(n')에 대응하는 플래그가 온되어서, 이 단위공정(n')으로 이행한다.8 shows a step in the case of integrating the control branched as described above, and n 'is programmed together as the interruption step K of the unit steps (n) and (m). Therefore, when the respective transition conditions are satisfied in the unit steps n and m, the corresponding flag is turned on and the flag corresponding to the unit step n 'is turned on, and the process proceeds to this unit step n'. .

이상의 분기 또는 통합은 기본적으로는 전술한 펌프와 마찬가지이지만, 다음에 나타낸 판단제어는 이것들과는 조금 내용을 달리한다. 즉 제9도에 나타낸 바와같이 단위공정(n')에 있어서의 이행조건의 성립, 불성립에 따라 단위공정(n') 또는 (m)으로 이행한다. 구체적으로는 단위공정(n)의 프로그램중에 단위공정(n')으로 가는 조건과 단위공정(m)으로 가는 조건과를 프로그램하여 두어, 양조건중 먼저 성립한 조건의 단위공정으로 이행시킨다. 예컨대 이행조건 A가 성립한(또는 단위공정(n')으로의 이행조건이 성립한) 경우는 그 플래그가 온되어, 단위공정(n)의 플래그가 오프되고, 그 결과 단 뒤 n에서 단위공정(n')으로의 이행을 하게 되며, 단위공정(m)의 제어는 실행되지 않는다.The above branching or integration is basically the same as that of the pump described above, but the judgment control shown next differs slightly from these. That is, as shown in FIG. 9, the process proceeds to the unit process n 'or (m) depending on whether the transition conditions in the unit process n' are established or not. Specifically, in the program of the unit process (n), the conditions for going to the unit process (n ') and the conditions for the unit process (m) are programmed, and the process proceeds to the unit process of the condition established first of both conditions. For example, when the transition condition A is satisfied (or the transition condition to the unit process n ') is established, the flag is turned on, and the flag of the unit process n is turned off. The transition to (n ') is performed, and the control of the unit process m is not executed.

이와같이 본 발명에 있어서는 단위공정을 이행시켜, 차단하고 및 삽입을 포함하는 점프를 하게 하여, 분기시키고, 통합하며, 나아가서 판단에 의한 단위공정의 선택을 할 수 있도록 단위공정을 조합할 수 있다.As described above, in the present invention, the unit steps can be combined so that the unit steps can be implemented, the jumps including the interruptions and the insertions can be made, branched and integrated, and the selection of the unit steps can be made by judgment.

한편, 피제어체의 동작에 대하여 보면, 이 동작은 상기한 단위공정의 조합으로서의 표현할 수 있으며, 이것이 본 발명장치에 있어서는 피제어체의 동작에만 주목하여 용이하게 프로그래밍 할 수 있는 이유의 하나이다. 그리고 이와같은 방식으로 실행하는 프로그래밍의 과정에 있어서는 각 단위공정의 동작을 실현할 수 있는 계전회로를 상정(想定)할 필요는 전혀 없다.On the other hand, with respect to the operation of the controlled object, this operation can be expressed as a combination of the above-described unit processes, which is one of the reasons why the apparatus of the present invention can be easily programmed by paying attention only to the operation of the controlled object. In the programming process executed in this manner, it is not necessary to assume a relay circuit capable of realizing the operation of each unit process.

다음에, 본 발명의 한 실시예에 관한 프로그래머블 제어기를 제10도에 따라서 설명한다.Next, a programmable controller according to an embodiment of the present invention will be described with reference to FIG.

동 도면에 있어서, (1)은 마이크로프로세서등으로 구성하는 제어부, (2)는 제11도에 나타낸 프로그램이 기억되어 있는 프로그램기억부, (3)은 제어부(1)가 판독한 해석 및 실행하여야 할 프로그램기억부(2)의 프로그램의 어드레스를 나타내는 프로그램카운터이다. 또, (4)는 프로그램기억부(2)의 프로그램의 각 제어단위마다에 마련되어, 각 제어단위의 동작, 비동작을 나타낸 플래그를 기억하여 두는 공정플래그기억부, 부호(5)는 제어부(1)가 공정플래그기억부(4)의 플래그를 판독할 때에, 또는 플래그를 바꾸어쓸때에 각 플래그가 기억되어 있는 어드레스를 나타낸 공정플래그카운터이다. 또, (6)은 입출력신호로부터 프로그램으로 지정된 어드레스의 입력 또는 출력을 선택하여 출력결과를 래치(latch)하며, 또 입력결과를 집어넣는 입출력부이다. (7)은 입출력내부계전회로이며, 입출력부(6) 중에서 출력단자의 온·오프 상태를 기억하는 영역을 지녔으며, 특히 각 출력단자마다 2개의 기억영역을 지니고 있다.In the figure, reference numeral 1 denotes a control unit which is composed of a microprocessor or the like, reference numeral 2 denotes a program memory unit in which the program shown in FIG. 11 is stored, and reference numeral 3 denotes an analysis and execution performed by the controller 1; It is a program counter indicating the address of the program of the program storage unit 2 to be executed. In addition, (4) is provided in each control unit of the program of the program memory unit 2, and the process flag memory unit which stores the flag which shows operation | movement and non-operation of each control unit, and code | symbol 5 are control parts 1 Is a process flag counter indicating the address at which each flag is stored when the flag of the process flag storage unit 4 is read or when the flag is changed. Reference numeral 6 denotes an input / output unit which selects an input or an output of an address designated by a program from an input / output signal, latches the output result, and inserts the input result. Denoted at 7 is an input / output internal relay circuit, and has an area for storing the on / off states of the output terminals in the input / output unit 6, and particularly has two storage areas for each output terminal.

제12a도에 나타낸 바와같이, 제1기억영역(71)에는 프로그램 실행시의 출력의 상태를 기억한다. 그리고 제12a도에서와 같이, 1주사가 끝나면, 제1기억영역(71)의 내용을 제2기억영역(72)에 이행함과 동시에, 제1기억영역(71) 내용을 해제한다.As shown in Fig. 12A, the first storage area 71 stores the state of the output when the program is executed. As shown in FIG. 12A, when one scan is completed, the contents of the first storage area 71 are transferred to the second storage area 72 and the contents of the first storage area 71 are released.

여기에서, 상술한 프로그래머블 제어기의 동작을 설명함에 있어서, 제11도에 나타낸 프로그램에 대하여 그 개요를 설명한다.Here, in describing the operation of the above-described programmable controller, the outline of the program shown in FIG. 11 will be described.

이 프로그램을 어드레스 0번지의 스텝명령의 어드레스 4번지의 JMP 명령, 5번지의 스텝명령에서 32번지의 JMP 명령…59번지의 스텝명령에서 100번지의 END 명령까지의 5가지 제어단위를 나누어진, 이른바 공정방식으로 되어 있으며, 각 제어단위 마다에 나뉘어진, 이른바 공정방식으로 되어 있으며, 각 제어단위마다에 그 동작, 비동작상태를 나타낸 그래프(도해없음)가 마련되어 있다. 더욱이, 각 스텝명령은 연산수(operand)로서 각기 공정번호 1,3,10,13 및 20을 기억하고 있으며, 또 각 JMP명령은 연산수로서 각기 이 JMP명령의 다음에 실행하여야할 제어단위의 공정번호(이행공정) 10,20,13 및 3이 기억되어 있다.This program is executed by the JMP instruction at address 4 of the step instruction at address 0, the JMP instruction at 32 at the step instruction of address 5, and so on. It is a so-called process method that divides five control units from the 59 step command to the END command of 100, so-called process method divided into each control unit, and the operation is performed for each control unit. A graph (not illustrated) showing a non-operational state is provided. Furthermore, each step instruction stores the process numbers 1, 3, 10, 13 and 20 as an operand, and each JMP instruction is an operand of each control unit to be executed after this JMP instruction. Step numbers 10, 20, 13 and 3 are stored.

이상과 같은 프로그램을 실행하기 위하여는, 제어부(1)는 동작상태로 되면, 프로그램카운터(3)을 0에서 100까지 순차 주사함에 따라 프로그램기억부(2)의 프로그램을 1명령씩 판독한다. 이때, 프로그램 제어기의 초기상태로서, 공정번호(1)에 대응하는 값을 플래그카운터(5)에 세트하여, 이에 따라 공정플래그기억부(4)의 해당하는 플래그를 온으로 하고, 다른 플래그를 오프로 한다. 공정번호(1)의 플래그가 동작상태이기 때문에 공정번호(1)의 각명령을 프로그램기억부(2)에서 1명령씩 판독하고, 해석하여 실행한다. 그리고, 다음에 4번지의 JMJ명령을 판독 해석한다. 이때 만일 이행의 조건 STR(11)이 성립하고 있으면, 이 해석에 따라, 공정플래그카운터(5)를 개재하여 공정플래그기억부(4)의 공정번호(1)에 대응한 플래그를 오프로 함과 동시에, 다음에 실행하여야할 공정번호(10)의 플래그를 온으로 한다.In order to execute the above program, when the control unit 1 is in the operating state, the program counter 3 reads the programs of the program storage unit 2 one by one by sequentially scanning the program counter 3 from 0 to 100. At this time, as the initial state of the program controller, a value corresponding to the process number (1) is set in the flag counter (5), whereby the corresponding flag of the process flag storage unit (4) is turned on and other flags are turned off. Shall be. Since the flag of the step number (1) is in an operating state, each command of the step number (1) is read out from the program storage section 2 one by one, interpreted, and executed. Then, the 4 JMJ instructions are read and analyzed. At this time, if the transition condition STR 11 is established, the flag corresponding to the process number 1 of the process flag storage unit 4 is turned off via the process flag counter 5 according to this analysis. At the same time, the flag of the process number 10 to be executed next is turned on.

이어서, 제어부(1)는 공정번호(3)…의 명령을 순차 판독하지만, 상술한 플래그를 온으로 한 공정번호(10)의 명령을 판독하기 까지 명령의 실행을 하지 않는다. 33번지의 공정번호(10)에 오면, 그 명령을 판독함과 동시에, 명령을 해석, 실행한다. 이상과 같이 이어 100번지에 이르러서, 1주사가 종료하면, 제12a도 및 제12b도에 나타낸 바와같이 입출력내부계전회로(7)에 의하여 논리전송을 하게 되며, 그 결과는 입출력부(6)를 개재하여 외부단자에 송출하게 된다.Subsequently, the control unit 1 selects the process number 3... The instructions are read sequentially, but the instruction is not executed until the instruction of the process number 10 with the above flag turned on is read. At step 33 of address 33, the command is read and the command is interpreted and executed. As described above, when one scan is completed at the 100th address, as shown in Figs. 12A and 12B, logical transfer is performed by the I / O internal relay circuit 7, and the result is that the I / O unit 6 It is sent to the external terminal through the intervening.

요컨대, 1주사중에 어느공정이라도 출력을 내고 있지 않는 경우에는 그 사실을 확인하고 나서 그 출력단자에 오프신호를 보내는 것이며, 반대로 1주사중에 온한 출력은 그 온상태를 유지하게 된다. 이 논리전송에 따라 통상의 순서에 있어서의 자기유지기능을 지닌다.In other words, if any process does not produce an output during one scan, it confirms the fact and then sends an off signal to the output terminal. On the contrary, an output that is warm during one scan maintains its on state. This logical transmission has a self-holding function in a normal order.

이러한 사실은 나중에 설명하는 바와같이 프로그램조작을 극히 용이하게 하고 있다.This fact makes programming very easy, as explained later.

상술한 바와같이 1주사가 종료하면 재차 1번지에서 명령을 판독하여, 플래그가 온으로 되어 있는 공정을 실행하여 나아간다.As described above, when one scan is finished, the instruction is read again at address 1, and the process in which the flag is turned on is executed.

다음에 상기 프로그래머블 제어기의 프로그램조작에 대하여 설명한다. 예컨대 제13a도에 나타낸 바와같은 로봇핸드가 「전진, 후퇴」,「상승, 하강」및「집게의 붙잡음, 개방」의 동작을 할 수 있어, 공작물을 A점에서 B점으로 위치를 옮기는 동작에 대하여 생각하여 본다. 이때의 로봇핸드의 동작은 제13b도 (a)-(i)로 분해할 수 있다.Next, the program operation of the programmable controller will be described. For example, the robot hand as shown in FIG. 13A can move forward, backward, raise, lower, and catch and open the tongs, and move the workpiece from point A to point B. Think about it. The operation of the robot hand at this time can be decomposed into FIGS. 13B (a)-(i).

(a) 로봇핸드는 최초원위치에 있다. (b) 하강한다. (c) 공작물을 붙잡는다. (d) 상승한다. (e) 전진한다. (f)하강한다. (g)공작물을 해방한다. (h) 상승한다. (i) 후퇴하여 원위치에 되돌아온다.(a) The robot hand is in the original home position. (b) to descend. (c) Hold the workpiece. (d) to rise. (e) Go forward. (f) to descend. (g) Free the work. (h) to rise. (i) Retreat and return to its original position.

이와같은 로봇핸드의 동작을 순서도로 표현하면, 제13c도에 나타낸 바와같이 된다. 이것은 프로그램하기 위하여는, 본 발명에 의하면, 상술한 논리전송에 따라 자기유지기능을 수행하므로 제14도에 나타낸 바와같은 회로설계로 충분하다. 종래의 라더법에 의하면 자기유지회로를 필요로 하고, 제15도에 나타낸 바와같은 회로설계를 필요로 하여, 매우 복잡한 것이 있다. 그리고, 본 발명의 경우에는 제14도의 회로도의 기호를 미리 키이 표시함에 따라, 그 회로도에 나타낸 바와같은 순서로 전건조작(Keying)하게 하므로서 프로그램을 입력할 수 있다. 이 때문에, 회로설계 및 프로그램 입력이 극히 용이하게 되어 있다. 또 제3자가 제14도의 회로를 보아도 그 전체의 동작의 흐름을 용이하게 이해할 수 있다고 하는 이점이 있다.When the operation of the robot hand is expressed in a flow chart, it is as shown in Fig. 13C. In order to program this, according to the present invention, a circuit design as shown in Fig. 14 is sufficient because the self-holding function is performed in accordance with the above-described logical transfer. According to the conventional ladder method, a magnetic holding circuit is required, and a circuit design as shown in FIG. 15 is required, which is very complicated. In the case of the present invention, a key is displayed in advance in the symbol of the circuit diagram of FIG. 14, so that a program can be input while keying in the order as shown in the circuit diagram. For this reason, circuit design and program input are extremely easy. In addition, there is an advantage that even if the third party sees the circuit of Fig. 14, the flow of the entire operation can be easily understood.

여기에서, 제14도에 나타낸 공정중에서, 예를들면 제2공정에서 제3공정으로 이행하는 경우의 논리전송에 대하여 설명한다. 제16a,b도는 전술한 논리전송도로서, 동도 (A)는 입출력내부계전회로 중의 제2공정의 하강출력에 대응한 기억영역(71,72)을 나타낸 것이고, 동도(B)는 제3공정의 붙잡음 출력에 대응한 기억영역(71a,72a)을 나타낸 것으로 한다.Here, in the process shown in FIG. 14, for example, the logical transfer in the case of transition from the second process to the third process will be described. 16A and 16B are the above-described logical transfer diagrams, in which Fig. A shows the storage areas 71 and 72 corresponding to the falling output of the second step in the I / O internal relay circuit, and Fig. B shows the third step. It is assumed that the storage areas 71a and 72a corresponding to the capture output of?

여기에서는 제2공정에 대응한 플래그만이 온되어 있으며, 다른 플래그는 오프되어 있는 것으로 한다. 제1회째의 주사로 프로그램을 읽어 넣으면, 플래그는 제2공정에 상당하는 것만이 온으로 되어 있음으로, 제2공정의 프로그램이 해석되어 실행된다. 물론, 제3공정을 포함하는 다른 공정의 프로그램도 읽어 넣을 수 있으나, 플래그가 온되어 있지 않으므로, 그 프로그램은 실행되지 않는다. 따라서 1주사 종료한 다음의 하강출력의 기억영역은 동도(i)에 나타낸 바와같이 영역(71)이 온상태, 영역(72)이 오프상태로 되어 있다.It is assumed here that only the flag corresponding to the second process is on, and the other flags are off. When the program is read in by the first scan, only the flag corresponding to the second step is turned on, so that the program of the second step is interpreted and executed. Of course, programs of other processes including the third process can also be read, but since the flags are not turned on, the programs are not executed. Therefore, as shown in the diagram (i), the area 71 is in the on state and the area 72 is in the off state in the storage area of the falling output after the completion of one scan.

다른 한편 붙잡음 출력의 기억영역(71a,72a)은 동도(i)에 나타낸 바와같이 이 공정은 실행되어 있지 않으므로, 오프상태로 되어 있다. 다음에, 각 출력의 기억영역 중 제1의 기억영역(71,71a)의 내용이 제2의 기억영역(72,72b)으로 이행되어 각기 제1의 기억영역과 제2의 기억영영과의 논리합이 구하여져서, 그 결과가 해당하는 출력단자에 송출된다.On the other hand, the storage areas 71a and 72a of the capture output are turned off because this process is not performed as shown in FIG. Next, the contents of the first storage areas 71 and 71a among the storage areas of the respective outputs are transferred to the second storage areas 72 and 72b so as to logically combine the first storage area and the second storage area, respectively. This is obtained and the result is sent to the corresponding output terminal.

요컨대 제2공정에 대응한 하강출력단자에는 온출력이 나타나서 하강동작을 하게 된다. 제3공정을 대응한 붙잡음출력단자는 오프출력 그대로 되어 있다. 다음의 주사에 있어서도, 제2공정의 플래그만이 온으로 되어 있고, 다른 플래그가 오프로 되어 있는 상태에서는 제16도(ⅱ)에 나타낸 바와같이 마찬가지 논리전송을 하게 된다. 다음에 제2공정의 플래그가 오프로 되고, 제3공정의 플래그가 온으로 된 상태하에서의 주사에 있어서는, 제16도(ⅲ)에 나타낸 바와같이 동작한다. 제2공정의 프로그램의 내용은 실행되지 않으므로, 제1의 기억영역(71)은 오프상태, 제2의 기억영역(72)은 전회의 논리전송에 의하여 온상태로 되어 있다.In other words, the on-output appears at the lowering output terminal corresponding to the second process to perform the lowering operation. The capture output terminal corresponding to the third process remains off output. Also in the next scan, in the state where only the flag of the second process is on and other flags are off, the same logical transfer is performed as shown in Fig. 16 (ii). Next, in the scanning under the state in which the flag of the second process is turned off and the flag of the third process is turned on, it operates as shown in FIG. Since the contents of the program of the second process are not executed, the first storage area 71 is in the off state, and the second storage area 72 is in the on state by the previous logical transfer.

한편, 제3공정의 프로그램의 내용은, 실행되므로, 제1의 기억영역(71a)은 온상태, 제2의 기억영역(72a)은 오프상태로 되어 있다. 이와같은 기억내용을 상술한 경우와 마찬가지로 논리전송하면, 제2공정에 대응한 하강출력단자는 온상태에서 오프상태로 되고, 제3공정에 대응한 붙잡음출력단자는 오프상태에서 온상태로 된다.On the other hand, since the contents of the program of the third step are executed, the first storage area 71a is in the on state and the second storage area 72a is in the off state. When the memory contents are logically transferred as in the case described above, the falling output terminal corresponding to the second process is turned off from the on state, and the capture output terminal corresponding to the third process is turned off from the off state.

더욱이, 상술한 설명은 제2공정에서 제3공정으로 이행하는 경우의 설명이지만, 다른 공정에 있어서도 다름의 공정을 이행하는 경우는 마찬가지로 작용한다. 또, 주사는 일정한 타이밍으로 반복할 수 있다는 것은 다달할 필요없다.Moreover, the above description is a description of the case where the process shifts from the second process to the third process. However, the case where the other processes are performed also in other processes works similarly. In addition, it is not necessary that the scan can be repeated at a constant timing.

다음에 본 발명의 제2실시예를 설명한다.Next, a second embodiment of the present invention will be described.

제17도는 그 블록구성도이며, 제10도의 실시예와의 관계는, 공정어드레스기억부(8) 및 공정어드레스카운터(9)가 추가되어 있을뿐이며 다른구성은 동일하다. 단, 이것들의 요소의 추가에 수반하여 제어부(1A)의 기능도 제10도의 그것과는 약간 차이진 것으로 되어 있다. 공정어드레스기어부(8)는 미리 제어부(1A)가 프로그램기억부(12)의 프로그램을 순차 판독하여 이 프로그램의 스텝명령을 검색하여, 스텝명령의 공정번호 및 이 스텝명령에 대응하는 프로그램카운터(3)의 값, 즉 스텝명령의 기억되어 있는 어드레스는 제18도에 나타낸 바와같이 0번지에서 순차 써 넣어두는 기억부이다.FIG. 17 is a block diagram showing the configuration thereof, and the relationship with the embodiment of FIG. 10 is that only the process address storage section 8 and the process address counter 9 are added, and the other configurations are the same. However, with addition of these elements, the function of the control part 1A also differs slightly from that of FIG. The process address gear unit 8 reads a program of the program storage unit 12 in advance by the control unit 1A and retrieves the step instruction of the program, and the process number of the step instruction and the program counter corresponding to the step instruction ( The value of 3), that is, the address stored in the step instruction, is a storage unit that is sequentially written from address 0 as shown in FIG.

공정어드레스카운터(9)는 상술한 바와같이 제어부(1A)가 공정어드레스기억부(8)에 공정번호 및 어드레스를 써 넣을때에, 및 공정번호 및 어드레스를 판독할 때에, 이 공정번호 및 어드레스가 기억되어 있는 어드레스를 나타낸 카운터이다. 프로그램기억부(2), 프로그램카운터(3), 공정플래그기억부(4) 및 공정플래그카운터(5), 입출력부(6) 및 입출력내부계전회로(7)에 대하여는 상술한 바와같이 제10도의 것과 동일하다. 따라서, 본 실시예에 관한 프로그래머블 제어기의 동작을 제10도의 것과의 상이점에 착안하면서, 제19도의 순서도에 따라서 설명한다. 더욱이 프로그램기억부(2)에는 제11도에 나타낸 프로그램이 기억되어 있는 것으로 한다.As described above, the process address counter 9 has the process number and address when the control unit 1A writes the process number and address into the process address storage unit 8 and reads the process number and address. This counter shows the stored addresses. The program memory unit 2, the program counter 3, the process flag memory unit 4, the process flag counter 5, the input / output unit 6, and the input / output internal relay circuit 7 are described with reference to FIG. Same as Therefore, the operation of the programmable controller according to the present embodiment will be described in accordance with the flowchart of FIG. 19 while focusing on the difference from that of FIG. Further, it is assumed that the program shown in FIG. 11 is stored in the program storage unit 2. As shown in FIG.

(1) 스텝 100(1) step 100

제어부(1A)는 동작상태로 되면 프로그램카운터(3)를 0에서 100까지 순차 주사함에 따라 프로그램기억부(2)의 프로그램을 1명령씩 판독하고, 이 프로그램속의 스텝명령을 검색하여, 스텝명령의 공정번호 및 이 공정번호가 기억되어 있는 어드레드를 스텝어드레스기억부(8)에 써 놓는다.When the control unit 1A enters the operating state, the program counter 3 is sequentially scanned from 0 to 100, and the program of the program storage unit 2 is read out one by one, and the step instructions in the program are searched. The process number and the address in which the process number is stored are written in the step address storage unit 8.

(2) 스텝 101-102(2) step 101-102

제어부(1A)는 공정어드레스카운터(9)에 0을 세트하고(스텝 101), 이 공정어드레스카운터(9)가 나타낸 어드레스에 기억되어 있는 공정번호 및 어드레스를 각가 공정플래그카운터(5) 및 프로그램카운터(3)에 세트한다(스텝 102).The control unit 1A sets 0 in the process address counter 9 (step 101), and sets the process number and address stored in the address indicated by the process address counter 9 to the process flag counter 5 and the program counter. (3) (step 102).

(3) 스텝 103-106(3) step 103-106

제어부(1A)는 프로그램카운터(3)가 나타낸 어드레스에 기억되어 있는 명령을 판독하고(스텝 103), 이 판독한 명령이 JMP 명령인지 아닌지를 판단한다(스텝 104). 그리고 판독한 JMP 명령이외의 명령일때는 이 명령을 해석하여 실행하고 (스텝 105), 프로그램카운터(3)를 1만 중량(increament)하고 (스텝 106), 나아가서, 스텝(103)에 전진한다.The control unit 1A reads the command stored at the address indicated by the program counter 3 (step 103), and determines whether the read command is a JMP instruction (step 104). When the instruction is other than the read JMP instruction, the instruction is interpreted and executed (step 105), the program counter 3 is increased by 10,000 (step 106), and the process proceeds to step 103.

또 JMP 명령인때는 이행의 조건이 성립하고 있을때에만 스텝(107)에 전진하여 이행의 조건이 성립하고 있지 않을 때에는 스텝(106)에 전진한다(스텝 104a).In the case of the JMP instruction, the processing advances to step 107 only when the transition condition is satisfied. When the transition condition is not satisfied, the processing advances to step 106 (step 104a).

(4) 스텝 107-108(4) step 107-108

제어부(1A)는 공정플래그카운터(5)(공정번호가 세트되어 있다)에 대응하는 플래그를 오프로 하고(스텝 107), 판독한 JMP 명령의 공정번호에 대응하는 플래그를 온으로 한다(스텝 108).The control unit 1A turns off the flag corresponding to the process flag counter 5 (the process number is set) (step 107), and turns on the flag corresponding to the process number of the read JMP instruction (step 108). ).

(5) 스텝 109-110(5) step 109-110

제어부(1A)는 공정어드레스카운터(9)를 1만 중량하고(스텝 109), 새로운 스텝어드레스카운터(9)가 나타낸 어드레스에 기억되어 있는 공정번호 및 어드레스를 각기 공정플래그카운터(5) 및 프로그램카운터(3)에 새트한다(스텝 110).The control unit 1A weighs 10,000 of the process address counter 9 (step 109), and sets the process number and address stored in the address indicated by the new step address counter 9, respectively, to the process flag counter 5 and the program counter. (3) (step 110).

(6) 스텝 111(6) step 111

제어부(1A)는 공정플래그카운터(5)에 대응하는 플래그가 오프인지 온인지를 판단하여, 오프인때는 스텝(109)로 전진하고, 온인때는 스텝(103)에 전진한다. 여기에서, 스텝(1)의 실행후는 스텝(10)에 대응하는 플래그가 온으로 되어 있다. 따라서, 공정어드레스카운터(9)는 스텝번호가 (10)으로 되기까지 중량될때에 프로그램카운터(3)는 (33)이 세트되어 프로그램기억부(2)의 프로그램은 5번지에서 32번지까지의 명령이 판독되지 않게 된다.The control unit 1A determines whether the flag corresponding to the process flag counter 5 is off or on, advances to step 109 when it is off, and advances to step 103 when it is on. Here, after execution of step 1, the flag corresponding to step 10 is turned on. Therefore, when the process addresser 9 is weighed until the step number becomes (10), the program counter 3 is set to (33) so that the program of the program storage unit 2 is commanded from addresses 5 to 32. Will not be read.

따라서, 본 실시예에 관한 프로그래머블 제어기는, 온으로 한 플래그에 대응한 공정만을 선택하여 판독하여, 해석하고 실행을 하므로, 제10도의 것에 비하여 실행속도가 극히 빠른 것으로 되어 있다.Therefore, since the programmable controller according to the present embodiment selects, reads, analyzes, and executes only the process corresponding to the flag that is turned on, the execution speed is extremely faster than that of FIG.

Claims (2)

프로그램기억부에 기억되어, 각기 일정한 제어단위 하나하나에 공정번호를 붙인 여러개의 공정으로부터 구성한 일련의 프로그램을 프로그램카운터의 나타낸 어드레스에 따라서 판독하여, 해석하고, 실행하여 나아가는 제어방식의 프로그래머블 제어기에 있어서 : 제어단위 하나하나에 공정번호, 논리연산 및/ 또는 데이터연산명령, 타이머, 카운터출력등의 처리명령 및 이행공정을 포함하여 이런것들을 여러개 기억하는 프로그램기억부이며, 공정번호에 대용하여 플래그를 설정하고, 이 설정한 플래그를 기억하는 공정플래그기억부이며, 입출력부의 상태를 기억하는 영역을 지닌 것으로서, 특히 각 출력단자에 대응하여 2개의 기억영역을 지녔고, 제1의 기억영역에는 실행직후의 출력단자의 출력상태를 기억하며, 그리고 1주사가 끝날때마다, 제1의 기억영역의 내용이 제2의 기억영역으로 이행됨과 동시에, 이 제1의 기억영역의 내용이 해제되는 입출력내부계전회로이며, 전술한 명령의 판독, 해석, 실행에 따라서, 전술한 공정플래그기억부의 공정번호에 대응하는 플래그를 온 또는 오프하여, 이 온한 플래그에 대응하는 제어단위를 프로그램기억부를 순차 판독하면서, 선택하고, 그리고 해당하는 제어단위의 명령을 해석, 실행함과 동시에, 1주사가 끝날때마다, 입출력내부계전회로의 제1의 기억영역과 제2의 기억영역의 논리합을 구하고, 논리합 0인때 해당하는 출력단자를 오프로 하고, 논리합이 1일 때 해당하는 출력을 온으로 하는 제어부로 장비하고 있는 프로그래머블 제어기.In a programmable controller of a control method which is stored in a program storage unit and consists of a series of programs each having a process number assigned to a predetermined control unit, which is read, interpreted, and executed according to the address indicated by the program counter. : Program memory that stores several of these, including process number, logical operation and / or data operation instruction, timer, counter output, etc. in each control unit, and sets a flag for the process number. And a process flag storage unit for storing the set flag, and having an area for storing the state of the input / output unit. In particular, it has two storage areas corresponding to each output terminal, and outputs immediately after execution in the first storage area. Memorizes the output state of the terminal, and every time one scan is finished, It is an input / output internal relay circuit which releases the contents of the storage area to the second storage area and releases the contents of the first storage area. By turning the flag corresponding to the process number on or off, selecting the control unit corresponding to this flag while reading the program storage unit sequentially, interpreting and executing the command of the corresponding control unit, and ending one scan. Each time, the control unit obtains the logical sum of the first storage area and the second storage area of the input / output internal relay circuit, turns off the corresponding output terminal when the logical sum is 0, and turns on the corresponding output when the logical sum is 1. Programmable controller equipped with 프로그램기억부에 기억되어, 각기 일정한 제어단위 하나하나에 공정번호를 붙인 여러개의 공정으로 구성된 일련의 프로그램을 프로그램카운터가 나타내는 어드레스에 따라서 판독하여, 해석하고, 실행하여, 나아가는 제어방식의 프로그래머블 제어기에 있어서, 제어단위마다에 공정번호, 논리연산 및/ 또는 데이터처리명령, 타이머, 카운터 출력 등의 처리명령 및 이행공정을 포함하여, 이것들을 여러개 기억하는 프로그램 기억부로서, 전술한 공정번호에 대응하여 플래그를 설정하고, 설정한 플래그를 기억하는 공정플래그기억부이며, 전술한 공정번호 및 이 공정번호가 기억된 전술한 프로그램기억부의 어드레스가 기억된 공정어드레스기억부이며, 입출력부의 상태를 기억하는 영역을 지닌 것으로서, 특히 각 출력단자에 대응하여 2개의 기억영역을 지녔으며, 제1기억영역에는 실행직후의 출력단자의 출력상태를 기억하고, 그리고 1주사가 끝날때마다, 제1기억영역의 내용이 제2기억영역으로 이행함과 동시에, 당해 제1기억영역의 내용이 해제하는 입출력내부계전회로로서, 전술한 판독, 해석, 실행에 따라서, 전술한 공정플래그기억부의 스텝번호에 대응하는 플래그를 온 또는 오프하여, 전술한 스텝어드레스기억부의 기억내용에 따라서, 이 온으로 한 플래그에 대응하는 제어단위를 선택하여, 이 선택한 제어단위에 포함하게되는 명령에 대해서만 판독, 해석, 실행을 함과 동시에 1주사가 끝날때마다 입출력내부계전회로의 제1기억영역과 제2기억영역의 논리합을 구하여, 논리합이 0일 때 해당하는 출력단자를 오프로 하고, 논리합이 1일 때 해당하는 출력단자를 온으로 하는 제어부를 장비한 프로그래머블 제어기.It is stored in the program storage unit and reads, interprets, executes, and executes a series of programs consisting of a plurality of processes each having a process number assigned to a predetermined control unit according to the address indicated by the program counter. Is a program storage unit for storing a plurality of these, including a process number, a logical operation and / or a data processing instruction, a timer, a counter output, and the like for each control unit. A process flag storage unit for setting a flag and storing the set flag, a process address storage unit for storing the above-described process number and the address of the above-described program memory unit in which the process number is stored, and an area for storing the state of the input / output unit. In particular, two memory areas corresponding to each output terminal In the first memory area, the output state of the output terminal immediately after execution is stored, and each time one scanning ends, the contents of the first memory area are transferred to the second memory area, and the first memory area is stored. As an input / output internal relay circuit for which the contents of? Are released, the flag corresponding to the step number of the above-described process flag storage unit is turned on or off in accordance with the above-described reading, analysis, and execution, and according to the storage contents of the above-described step address storage unit, By selecting the control unit corresponding to the flag which is turned on, only the instruction included in the selected control unit is read, interpreted, and executed, and at the end of each scan, the first memory area of the internal relay circuit A program equipped with a control unit that obtains the logical sum of the second storage area, turns off the corresponding output terminal when the logical sum is 0, and turns on the corresponding output terminal when the logical sum is 1. Rammer Controller.
KR1019860700360A 1984-10-17 1984-10-17 Programmble controller KR900005548B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP1984/000490 WO1986002468A1 (en) 1984-10-17 1984-10-17 Programmable controller

Publications (2)

Publication Number Publication Date
KR880700328A KR880700328A (en) 1988-02-22
KR900005548B1 true KR900005548B1 (en) 1990-07-31

Family

ID=13818438

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019860700360A KR900005548B1 (en) 1984-10-17 1984-10-17 Programmble controller

Country Status (2)

Country Link
KR (1) KR900005548B1 (en)
WO (1) WO1986002468A1 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60683B2 (en) * 1977-10-05 1985-01-09 光洋電子工業株式会社 Sequence control device
JPS5569873A (en) * 1978-11-20 1980-05-26 Toshiba Corp Programmable logic controller

Also Published As

Publication number Publication date
WO1986002468A1 (en) 1986-04-24
KR880700328A (en) 1988-02-22

Similar Documents

Publication Publication Date Title
US4623961A (en) Programmable controller having automatic contact line solving
US5781776A (en) Industrial controller permitting program editing during program execution
US4912623A (en) Multiple processor communications system
US4415965A (en) Programmable sequence controller
CA1085058A (en) Jump structure for a digital control system
US4314329A (en) Method and apparatus for using a computer numerical control to control a machine cycle of operation
US4736340A (en) Processor generating control programs for a programmable controller
CA1077151A (en) Plural-sequence control system
US4244034A (en) Programmable dual stack relay ladder line solver and programming panel therefor
CA1125920A (en) Programmable dual stack relay ladder diagram line solver and programming panel therefor with prompter
US5355482A (en) Apparatus and method for controlling a system process
US4396973A (en) Programmable sequence controller
KR900005548B1 (en) Programmble controller
US5198737A (en) Programmable controller for industrial robots
US20020173860A1 (en) Integrated control system
JPH0321923B2 (en)
US5864479A (en) Programming device for programming state controllers
EP0827053A1 (en) Programming system for motion controller
US4564898A (en) Programmable controller having a drum type sequencer function subject to programming
JPS62154005A (en) Programmable controller
JP3013619B2 (en) Programmable controller
JP3413860B2 (en) Debug method
JPH0679245B2 (en) Programmable controller sequence program execution method
JPH08328793A (en) Machine controller
JPH1027010A (en) System for processing run/stop input signal of programmable controller

Legal Events

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

Payment date: 19960502

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee