WO2020213853A1 - Plc 시스템 및 이의 입출력 리프레시 주기 제어방법 - Google Patents

Plc 시스템 및 이의 입출력 리프레시 주기 제어방법 Download PDF

Info

Publication number
WO2020213853A1
WO2020213853A1 PCT/KR2020/004276 KR2020004276W WO2020213853A1 WO 2020213853 A1 WO2020213853 A1 WO 2020213853A1 KR 2020004276 W KR2020004276 W KR 2020004276W WO 2020213853 A1 WO2020213853 A1 WO 2020213853A1
Authority
WO
WIPO (PCT)
Prior art keywords
input
program
output refresh
output
control
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/KR2020/004276
Other languages
English (en)
French (fr)
Inventor
박창우
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LS Electric Co Ltd
Original Assignee
LS Electric Co Ltd
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 LS Electric Co Ltd filed Critical LS Electric Co Ltd
Priority to US17/603,850 priority Critical patent/US12001185B2/en
Priority to JP2021560921A priority patent/JP7457730B2/ja
Priority to CN202080028873.7A priority patent/CN113692558B/zh
Publication of WO2020213853A1 publication Critical patent/WO2020213853A1/ko
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program 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
    • G05B19/054Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program 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
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/048Monitoring; Safety
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program 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
    • G05B19/052Linking several PLC's
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program 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
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/10Program control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches
    • G05B19/102Program control other than numerical control, i.e. in sequence controllers or logic controllers using selector switches for input of program steps, i.e. setting up sequence
    • 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/11Plc I-O input output
    • G05B2219/1105I-O

Definitions

  • the present invention relates to a PLC system capable of extracting and securing processing result data for at least one expansion module during a driving control period of a plurality of expansion modules with a programmable logic controller (PLC), and a method for controlling the input/output refresh period thereof.
  • PLC programmable logic controller
  • PLC refers to a controller that controls individual modules (eg, expansion modules) according to a predetermined control sequence through digital/analog input/output modules.
  • the PLC provides services of various functions to control at least one expansion module, and such PLC services are processed based on an operating system (OS) mounted in the central processing unit of the PLC.
  • OS operating system
  • the central processing unit of the PLC may be composed of a Micro Processor Unit (MPU) including at least one microprocessor or the like.
  • MPU Micro Processor Unit
  • PLC is a program command written by the user with PADT (Programming and Debugging Tool), such as LD (Ladder Diagram), IL (Instruction List), SFC (Sequential Function Chart), FBD (Function Block Diagram), ST (Structured Text). Instructions such as, and ladder programs are compiled and stored in a memory for each extension module control program. In addition, each extension module is driven according to an instruction generated by a result of operation processing of each control program performed in the central processing unit.
  • PADT Programming and Debugging Tool
  • FIG. 1 is a flow chart showing a PLC service processing process according to the prior art.
  • the central processing unit of the PLC performs initialization processing such as reset of the input/output module, self-diagnosis, clear data, and registration of the input/output module according to the compiled control program (S1).
  • the central processing unit reads the operation readiness status information of input modules (or extension modules) connected to each input/output ports before starting operation and command control according to each control program and stores them in the input image area.
  • the input image area refresh operation is performed (S2).
  • the central processing unit performs a control program processing process of performing operations and command control in order from the start stage to the last stage of the control programs based on the state of each connected input module (S3).
  • the processing result according to the control programs is stored in the output image area, and the central processing unit performs an output image area refresh operation of outputting the result data stored in the output image area to each output module (S4).
  • the central processing unit performs END processing such as self-diagnosis, updating of timers and counters, and data transmission in order to return to step S2 again (S5). .
  • Such a conventional PLC performs an output image area refresh operation (S4) only when the PLC service processing of one cycle is ended, and then performs an input image area refresh operation (S1) again. Accordingly, during the operation and command control period S3 according to the control programs, there is a problem in that it is impossible to secure the processing result data for each expansion module in real time.
  • the present invention is to solve the above problems, in the process of inputting each control program so that a plurality of expansion modules can be controlled with one PLC, the periods in which at least one control program has been executed are input/output refresh execution commands. It is to provide a PLC system that can support additional input of data and its input/output refresh cycle control method.
  • the present invention allows an input/output refresh operation to be additionally performed during the completion period of at least one control program in the process of driving a plurality of extension modules according to the plurality of input control programs, so that the processing result for at least one control program It is to provide a PLC system capable of extracting and securing data and a method of controlling the input/output refresh cycle thereof.
  • the present invention compares the result data for each control program executed and extracted during the previous cycle with the result data for each control program executed and extracted during the current cycle time. It is to provide a PLC system capable of selecting whether to perform an input/output refresh operation or not according to a method and a method for controlling the input/output refresh cycle thereof.
  • the PLC system for achieving the above technical problem includes a memory for storing an integrated driving program compiled with an input/output refresh execution command added through a program support unit, and a plurality of integrated driving programs included in the integrated driving program. And a central processing unit that sequentially operates and processes a control program of a plurality of expansion modules to control driving of a plurality of expansion modules, wherein the central processing unit is additionally input when the operation processing for at least one control program among the plurality of control programs is completed. Outputs processing result data for at least one control program for which operation processing has been completed according to the input/output refresh execution instruction.
  • the program support unit provides a PADT (Programming and Debugging Tool) display program that allows a user to design and input an integrated driving program including a plurality of input/output refresh execution instructions in units of at least one cycle, and set the integrated driving program to be repeatedly executed. It includes a supporting code input program support unit, and a PADT compiler that compiles an integrated driving program including a plurality of input/output refresh execution instructions and provides them to a memory and a central processing unit.
  • PADT Program and Debugging Tool
  • the integrated drive program is configured so that start and initialization commands, input refresh commands, multiple control programs, and output refresh commands are sequentially arranged, and an input/output refresh command is additionally arranged between at least one control program among the plurality of control programs. do.
  • the central processing unit executes at least one control program in the process of sequentially calculating and processing a plurality of control programs, and when an additional input/output refresh execution instruction is read, the output refresh operation and input refresh output the result data. Perform the operation sequentially. Then, when the next control program is read, the next control program is executed.
  • the central processing unit executes the integrated driving program in the first cycle and then repeatedly executes the integrated driving program in the next cycle
  • the result data according to the execution of the integrated driving program in the previous cycle and the result of the integrated driving program executed in the current cycle Compare the data sequentially. Accordingly, the input/output refresh operation is performed by reducing the input/output refresh operation process in the current cycle compared to the input/output refresh operation process in the previous cycle.
  • the PLC system includes an input port for transmitting operation status information of each expansion module to a central processing unit, and an output port for transmitting processing result data for each of a plurality of control programs to each expansion module.
  • the input/output refresh cycle control method of the PLC system for achieving the above technical task is to store the compiled integrated driving program in the memory with the input/output refresh execution command added through the program support unit. And controlling the driving of the plurality of expansion modules by sequentially calculating and processing the plurality of control programs included in the integrated driving program with the central processing unit.
  • the step of sequentially arithmetic processing a plurality of control programs is, when the arithmetic processing for at least one control program among the plurality of control programs is completed, the calculation processing is completed in accordance with an additional input input/output refresh execution command. And outputting the result data for the processing.
  • the user may design and input an integrated driving program including a plurality of input/output refresh execution commands in units of at least one cycle, and set the integrated driving program to be repeatedly executed.
  • Debugging Tool supporting a display program, and compiling an integrated driving program including a plurality of input/output refresh execution instructions and providing them to a memory and the central processing unit.
  • the integrated drive program is configured so that start and initialization commands, input refresh commands, multiple control programs, and output refresh commands are sequentially arranged, and an input/output refresh command is additionally arranged between at least one control program among the plurality of control programs. do.
  • step of outputting the processing result data for at least one control program when the input/output refresh execution instruction added after executing and processing at least one control program is read in the process of sequentially processing a plurality of control programs, And sequentially performing an output refresh operation for outputting the processing result data and an input refresh operation, and executing a next control program when the next control program is read.
  • the step of outputting the processing result data for at least one control program includes executing the integrated driving program in the first cycle and then repeatedly executing the integrated driving program in the next cycle, the result data according to the execution of the integrated driving program in the previous cycle. And performing an input/output refresh operation by sequentially comparing result data of the integrated driving program executed in the current cycle and reducing the input/output refresh operation process in the current cycle compared to the input/output refresh operation process of the previous cycle.
  • the PLC control step further includes transmitting operation state information of each expansion module to the central processing unit, and transmitting processing result data for each of a plurality of control programs to each expansion module.
  • the PLC system and its input/output refresh cycle control method having various technical features as described above support to control a plurality of expansion modules with one PLC, thereby improving the application efficiency and management efficiency of the PLC system.
  • the effect that can be improved can be achieved.
  • an input/output refresh execution command is performed to additionally perform the input/output refresh operation during the period in which at least one control program has been executed. Can support additional input of.
  • the PLC system of the present invention allows an additional input/output refresh operation to be performed at the time when the at least one control program is executed, so that the at least one control program executed It is possible to extract and secure the result data for processing. Accordingly, it is possible to increase the management efficiency and convenience of the user and further increase the reliability.
  • the PLC system of the present invention compares the result data for each control program executed and extracted during the previous cycle with the result data for each control program executed and extracted during the current cycle time in the process of additionally performing the input/output refresh operation, It is possible to select whether to perform the I/O refresh operation according to the comparison result. Accordingly, it is possible to minimize the effect of increasing the processing speed and processing period due to additionally performing an input/output refresh operation.
  • FIG. 1 is a flow chart showing a PLC service processing process according to the prior art.
  • FIG. 2 is a block diagram showing the configuration of a PLC system in detail according to an embodiment of the present invention.
  • FIG. 3 is a diagram showing an input/output refresh additional setting screen of a PADT supported by the program support unit shown in FIG. 1.
  • FIG. 4 is a diagram showing a control program input and setting screen of the PADT shown in FIG. 3.
  • FIG. 5 is a diagram illustrating an integrated driving program processing sequence and arrangement structure of expansion modules set and stored in the memory and the central processing unit of FIG. 2.
  • FIG. 6 is a flowchart illustrating a method of processing an integrated drive program of a PLC system according to an embodiment of the present invention.
  • FIG. 7 is a flowchart illustrating a process of performing the input/output refresh shown in FIG. 6 in more detail.
  • FIG. 2 is a block diagram showing the configuration of a PLC system in detail according to an embodiment of the present invention.
  • the PLC system shown in FIG. 2 sequentially includes a memory 220 for storing an integrated driving program compiled with an input/output refresh execution command added through the program support unit 100, and a plurality of control programs included in the integrated driving program.
  • the central processing unit 210 for controlling the driving of the plurality of expansion modules 300 by arithmetic processing, the input port 230 for transmitting operation state information of each expansion module 300 to the central processing unit 210, and a plurality of It includes an output port 240 for transmitting the processing result data for each control program to each expansion module 300.
  • the program support unit 100 supports a PADT (Programming and Debugging Tool) display program so that the user can preset the control sequence and control operations of the PLC 200 that controls the plurality of expansion modules 300.
  • PADT Process and Debugging Tool
  • the program support unit 100 includes a code input program support unit 110 and a PADT compiler 120.
  • the code input program support unit 110 supports the PADT display program so that the user can design and input an integrated driving program in units of at least one cycle by including a plurality of input/output refresh execution commands.
  • the program support unit 100 supports the user to design and input an integrated driving program that enables the PLC 200 to drive and control the plurality of expansion modules 300 in units of at least one cycle.
  • the program support unit 100 supports a PADT display program so that a user can design and input an integrated driving program.
  • the program support unit 100 adds an input/output refresh execution command that enables the user to add an input/output refresh execution command in units of at least one control program in the process of setting and inputting a plurality of control programs included in the integrated driving program. Menu and code are supported.
  • the user executes the PADT display program on a terminal device such as a personal computer or notebook, and writes commands and execution codes through the menu bar, tool bar, and execution window of the PADT display program, so that the plurality of extension modules 300 are at least
  • An integrated drive program can be designed that allows it to be driven and controlled in cycles.
  • the user may separately write and set control programs for controlling each extension module 300 through a menu selection function. Accordingly, in the process of inputting and setting at least one control program, the user may add the input/output refresh execution command at the time when at least one control program operation processing is completed using the input/output refresh execution command addition menu and the selection code.
  • the input/output refresh execution command addition support screen and a method of addition will be described in more detail later with reference to the accompanying drawings.
  • the PADT compiler 120 compiles an integrated driving program in which an input/output refresh execution command is added to at least one control program according to a user's compilation command, that is, an integrated driving program including a plurality of input/output refresh execution commands. Then, the compiled integrated driving program is provided to the memory 220 and the central processing unit 210.
  • the memory 220 stores the integrated driving program compiled by the PADT compiler 120 and shares it with the central processing unit 210.
  • the memory 220 stores operation state information of each expansion module 300 input through the input port 230 and shares it with the central processing unit 210.
  • the memory 220 may store processing result data for each of a plurality of control programs executed by the central processing unit 210 and share it with the central processing unit 210 at the request of the central processing unit 210.
  • the central processing unit 210 operates and processes the integrated driving program compiled by the PADT compiler 120 for each of a plurality of control programs, and controls the driving of each extension module 300 according to the result data of the operation processing for each of the plurality of control programs. .
  • the central processing unit 210 performs an input/output refresh operation according to an additional input input/output refresh execution instruction when the operation processing for at least one control program is completed in the process of performing operation processing for each of a plurality of control programs. . Further, processing result data for at least one control program for which the input/output refresh operation has been completed is output to the output port 240 and the memory 220.
  • the central processing unit 210 resets, self-diagnoses, and transfers each of the expansion modules 300 and input/output ports 230 and 240.
  • Initialization processing such as data clearing, input/output code registration for each extension module 300, and data input/output pin registration is performed.
  • the central processing unit 210 reads operation preparation state information for the plurality of extension modules 300 respectively connected through the input/output ports 230 and 240 before sequentially executing the plurality of control programs. Then, an input refresh operation of storing information on each operation preparation state in an image area set for each extension module 300 is performed.
  • the central processing unit 210 executes and processes a first control program for controlling the driving of at least one expansion module among the plurality of expansion modules 300, so that at least one of the plurality of expansion modules 300 is processed. Calculates and stores first result data for controlling driving of the expansion module.
  • the output refresh operation of outputting the first result data may be performed, and then the input refresh operation may be performed again.
  • the second control program for controlling the driving of at least one of the plurality of expansion modules 300 is executed and the operation is processed. do.
  • second result data for controlling driving of at least one of the plurality of expansion modules 300 is calculated, the second result data is stored.
  • an output refresh operation of outputting both the first and second result data may be performed, and then the input refresh operation may be performed again.
  • the third control for controlling driving of at least one of the plurality of expansion modules 300 Runs and operates programs.
  • third result data for controlling driving of at least one of the plurality of expansion modules 300 is calculated, the third result data is stored.
  • an output refresh operation of outputting all of the first to third result data is performed. Then, the input refresh operation may be performed again.
  • Such an integrated driving program execution and operation process is performed during one cycle from the above initialization process to the output refresh operation of outputting all of the first to third result data.
  • the central processing unit 210 executes the integrated program for one cycle from the initial processing to performing the output refresh operation of outputting all the first to third result data, and then executes the integrated drive program again in the second cycle.
  • the result data according to the execution of the integrated driving program in the previous first cycle and the result data of the integrated driving program executed in the current cycle are sequentially compared. Accordingly, the input/output refresh operation can be performed by reducing the input/output refresh operation process in the current cycle compared to the input/output refresh operation process in the previous cycle.
  • the central processing unit 210 executes the integrated driving program in the first cycle and then executes the integrated driving program in the second cycle.
  • the central processing unit 210 performs the result data for each control program executed and extracted during the previous cycle. Compare result data for each control program that is executed and extracted at the current cycle time. And, the result data of the control program executed in the previous cycle (for example, the first integrated drive program execution cycle) and the result data of the control program executed in the current cycle (for example, the second cycle) are the same. Then, only the same result data is output for a control program having the same result data. In this case, the I/O refresh operation can be stopped and the next control program can be executed.
  • a method of executing the integrated driving program and processing the operation of the central processing unit 210 will be described in more detail later with reference to the accompanying drawings.
  • FIG. 3 is a diagram showing an input/output refresh additional setting screen of a PADT supported by the program support unit shown in FIG. 1.
  • the program support unit 100 supports the user to execute the PADT display program with a terminal device such as a personal computer or a notebook computer. At this time, the program support unit 100 supports the user to add and select each control program (Program1 to Program1) in order through the menu bar of the PADT display program. In addition, when the user selects one control program (one of Program 1 to Program 3) on the menu bar, it supports an option selection tool bar that allows an input/output refresh command to be selectively added to the selected one control program (Program 1). . Accordingly, the user may select an input/output refresh command addition option for each control program (Program1 to Program1).
  • FIG. 4 is a diagram showing a control program input and setting screen of the PADT shown in FIG. 3.
  • the program support unit 100 selects one of the selected control programs (Program1 to Program1). It provides an execution window, menu bar, and tool bar for design and setting.
  • the user can design each control program (Program1 to Program1) in at least one cycle unit by writing commands and execution codes using the execution window, menu bar, and toolbar of the PADT display program.
  • FIG. 5 is a diagram illustrating an integrated driving program processing sequence and arrangement structure of expansion modules set and stored in the memory and the central processing unit of FIG. 2.
  • an input/output refresh command (or input refresh command) and a first control program Program1 are sequentially arranged in the integrated driving program starting with a start command and an initialization command.
  • an input/output refresh command (I/O Refresh) may be additionally arranged.
  • At least one program for example, second and third control programs Program2 and Program3, may be sequentially arranged in the first control program Program1 or the input/output refresh command I/O Refresh.
  • an input/output refresh command (I/O Refresh) may be additionally disposed between the second and third control programs Program2 and Program3.
  • an output refresh command I/O Refresh is arranged at the end of all arrangements of a plurality of control programs and an input/output refresh command (I/O Refresh) according to the extension modules 300 to operate one cycle. You can let this complete.
  • FIG. 6 is a flowchart illustrating a method of processing an integrated drive program of a PLC system according to an embodiment of the present invention.
  • the central processing unit 210 resets each expansion module 300 and input/output ports 230 and 240, self-diagnosis, clears previous data, and expands each.
  • Initialization processing such as input/output code registration and data input/output pin registration for the modules 300 are performed (ST1).
  • Initialization result data is stored in the memory 220.
  • the central processing unit 210 before sequentially executing the plurality of control programs (Program1 to Program3) according to the input/output refresh command (I/O Refresh), a plurality of expansion modules connected through the input/output ports 230 and 240, respectively. 300) reads the operation readiness status information. Then, an input image area is set for each extension module 300 and an input refresh operation of storing information on each operation preparation state in the set image area is performed (ST2).
  • the central processing unit 210 executes and processes a first control program (Program1) for selectively controlling driving of at least one expansion module among the plurality of expansion modules 300, so that the plurality of expansion modules 300 ) Calculates and stores first result data for controlling the driving of at least one expansion module (ST3).
  • a first control program Program1 for selectively controlling driving of at least one expansion module among the plurality of expansion modules 300, so that the plurality of expansion modules 300 )
  • first result data for controlling the driving of at least one expansion module (ST3).
  • ST4 when the input/output refresh execution command is read (ST4) when the operation processing of the first control program (Program1) is completed (ST4), an output image area for storing the first result data is set, and the first result data is transferred to the output image area.
  • an output refresh operation of outputting to the output port 240 and the memory 220 is performed.
  • the input image region may be set again and an input refresh operation of storing information on each operation preparation state in the set image region may be performed (ST5).
  • the memory 220 stores the first result data, and may transmit the data to the central processing unit 210 when the central processing unit 210 requests sharing thereafter.
  • the central processing unit 210 executes the second control program and The operation processing is performed to selectively control driving of at least one expansion module among the plurality of expansion modules 300 (ST6).
  • second result data for controlling the driving of at least one extension module is calculated, the second result data is stored.
  • the input/output refresh execution command is read (ST7) when the operation processing of the second control program is completed, the output refresh operation of outputting both the first and second result data to the output port 240 and the memory 220 is performed. Then, the input refresh operation may be performed again (ST8).
  • the central processing unit 210 is a third control program for selectively controlling driving of at least one of the plurality of expansion modules 300. Execute and process (Program3). Then, when third result data for controlling driving of at least one extension module is calculated, the third result data is stored. Subsequently, when the input/output refresh execution command is read at the time when the operation processing of the third control program is completed, an output refresh operation of outputting all the first to third result data to the output port 240 and the memory 220 is performed, The input refresh operation can be performed again. Such an integrated drive program execution and operation process is repeatedly performed for at least one cycle.
  • FIG. 7 is a flowchart illustrating a process of performing the input/output refresh shown in FIG. 6 in more detail.
  • the central processing unit 210 executes the integrated driving program in a plurality of cycles after performing the integrated driving program in the first cycle
  • the integrated driving program of the previous cycle for example, the previous first cycle
  • the I/O refresh operation process in the current cycle is reduced compared to the I/O refresh operation process in the previous cycle. I/O refresh operation can be performed.
  • the central processing unit 210 executes the integrated driving program in the first cycle and then executes the integrated driving program in a plurality of cycles again, the corresponding expansion module, for example, the input/output type of the first expansion module according to the input/output refresh command.
  • the corresponding expansion module for example, the input/output type of the first expansion module according to the input/output refresh command.
  • Check (SS1, SS2).
  • the input slot of the first expansion module is checked (SS3), and the first result data of the first control program that was executed and extracted in the previous cycle period and the first result data of the first control program are executed and extracted at the current cycle time.
  • the first result data of the first control program is compared (SS4). And, if the first result data of the first control program executed in the process of the previous cycle and the first result data of the control program executed in the current cycle are the same, the same first result data for the first control program having the same result data Only output, but the I/O refresh operation can be stopped and the next control program can be executed (SS5).
  • the output image area for storing the first result data is set and the first result data is output.
  • An output refresh operation of storing the first result data in the image area and outputting the first result data to the output port 240 and the memory 220 is performed.
  • the input image region may be set again and an input refresh operation of storing information on each operation preparation state in the set image region may be performed (ST6).
  • the output slot of the first expansion module is checked (SS7), and the first result data of the first control program extracted by executing in the previous cycle period and The first result data of the first control program executed and extracted at the current cycle time is compared (SS8). And, if the first result data of the first control program executed in the process of the previous cycle and the first result data of the control program executed in the current cycle are the same, the same first result data for the first control program having the same result data Only output, but I/O refresh operation can be stopped and the next control program can be executed (SS9).
  • the output image area for storing the first result data is set and the first result data is output.
  • An output refresh operation of storing the first result data in the image area and outputting the first result data to the output port 240 and the memory 220 is performed.
  • the input image area may be set again and an input refresh operation of storing information on each operation preparation state in the set image area may be performed (ST10).
  • the PLC system and its input/output refresh cycle control method support one PLC to control a plurality of expansion modules, thereby improving the application efficiency and management efficiency of the PLC system. I can.
  • an I/O refresh execution command is added to additionally perform the I/O refresh operation when at least one control program is completed. Can support input.
  • the PLC system of the present invention extracts processing result data for at least one control program by performing an input/output refresh operation additionally at the time of completion of at least one control program in the process of driving a plurality of extension modules with one PLC.
  • Wheat can be secured. Accordingly, it is possible to increase the management efficiency and convenience of the user and further increase the reliability.
  • the PLC system of the present invention compares the result value of the control program executed in the previous cycle with the result value of the control program executed in the current cycle. Accordingly, it is possible to select whether or not to perform the input/output refresh operation, thereby minimizing the effect of increasing the processing speed and the processing period due to additionally performing the input/output refresh operation.

Landscapes

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

Abstract

PLC 시스템 및 이의 입출력 리프레시 주기 제어방법에 대해 개시한다. 본 발명의 실시예에 따른 PLC 시스템은 프로그램 지원부를 통해 입출력 리프레시 실행 명령이 추가되어 컴파일된 통합 구동 프로그램을 저장하는 메모리, 및 통합 구동 프로그램에 포함된 복수의 제어 프로그램을 순차적으로 연산 처리하여 복수의 증설모듈 구동을 제어하는 중앙 처리유닛을 포함하고, 여기서 중앙 처리유닛은 복수의 제어 프로그램 중 적어도 하나의 제어 프로그램에 대한 연산 처리가 완료되면 추가 입력된 입출력 리프레시 실행 명령에 따라 연산 처리가 완료된 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 출력하는바, 다수의 증설모듈을 구동 제어하는 기간에 적어도 하나의 증설모듈에 대한 처리 결과 데이터를 추출 및 확보할 수 있다.

Description

PLC 시스템 및 이의 입출력 리프레시 주기 제어방법
본 발명은 PLC(Programmable Logic Controller)로 다수의 증설모듈을 구동 제어하는 기간에 적어도 하나의 증설모듈에 대한 처리 결과 데이터를 추출 및 확보할 수 있도록 한 PLC 시스템 및 이의 입출력 리프레시 주기 제어방법에 관한 것이다.
PLC는 디지털/아날로그 입출력 모듈을 통해 미리 정해진 제어 순서에 따라 개별 모듈(예를 들어, 증설 모듈)을 제어하는 제어기를 의미한다.
PLC는 적어도 하나의 증설 모듈을 제어하기 위한 여러 가지 기능의 서비스를 제공하는데, 이러한 PLC 서비스는 PLC의 중앙 처리유닛에 탑재된 운영체제(Operating System; OS)를 기반으로 처리된다. 여기서, PLC의 중앙 처리유닛은 적어도 하나의 마이크로프로세서 등을 포함하는 MPU(Micro Processor Unit) 등으로 구성될 수 있다.
PLC는 사용자가 PADT(Programming and Debugging Tool)로 작성한 프로그램 명령어, 예를 들어 LD(Ladder Diagram), IL(Instruction List), SFC(Sequential Function Chart), FBD(Function Block Diagram), ST(Structured Text), 및 레더 프로그램 등의 명령어들이 컴파일되어, 각각의 증설모듈 제어 프로그램별로 메모리에 저장되도록 한다. 그리고, 중앙 처리유닛에서 수행된 각각의 제어 프로그램 연산 처리 결과에 의해 발생된 명령어에 따라 각각의 증설모듈이 구동되도록 한다.
도 1은 종래 기술에 따른 PLC 서비스 처리 과정을 나타낸 순서도이다.
도 1을 참조하면, 먼저 PLC의 중앙 처리유닛은 컴파일된 제어 프로그램에 따라 입출력 모듈의 리셋, 자기 진단, 데이터 클리어 및 입출력 모듈의 등록 등과 같은 초기화 처리를 수행한다(S1).
다음으로, 중앙 처리유닛은 각각의 제어 프로그램에 따른 연산 및 명령 제어를 시작하기 전에 입출력 포트들을 통에 각각 연결된 입력 모듈(또는, 증설 모듈)들의 동작 준비 상태 정보를 읽어들여, 입력 이미지 영역에 저장하는 입력 이미지 영역 리프레시 동작을 수행한다(S2).
이어, 중앙 처리유닛은 각각 연결된 입력 모듈의 상태에 기초해서, 제어 프로그램들의 시작 단계부터 마지막 단계까지 순서대로 연산 및 명령 제어를 수행하는 제어 프로그램 처리 과정을 수행한다(S3). 여기서, 제어 프로그램들에 따른 처리 결과는 출력 이미지 영역에 저장되고, 중앙 처리유닛은 출력 이미지 영역에 저장된 결과 데이터를 각각의 출력 모듈로 출력하는 출력 이미지 영역 리프레시 동작을 수행한다(S4).
마지막으로, 중앙 처리유닛은 한 사이클의 PLC 서비스 과정을 종료한 후, 다시 단계(S2)로 돌아가기 위해, 자기 진단, 타이머 및 카운터의 갱신, 데이터 전송 등과 같은 END 처리 과정을 수행한다(S5).
이러한 종래의 PLC는 한 사이클의 PLC 서비스 처리를 종료하는 시점에만 출력 이미지 영역 리프레시 동작(S4)을 수행하고, 다시 입력 이미지 영역 리프레시 동작(S1)을 수행한다. 이에 따라, 제어 프로그램들에 따른 연산 및 명령 제어 기간(S3) 동안에는 각 증설 모듈에 대한 처리 결과 데이터를 실시간으로 확보할 수 없는 문제가 있었다.
다시 말해, 종래에는 하나의 PLC로 다수의 증설 모듈을 구동하기 위해, PADT를 통해 다수의 증설 모듈을 제어할 수 있도록 다수의 제어 프로그램을 입력 및 컴파일하고, 컴파일된 제어 프로그램들을 실행해서 PLC 서비스 동작을 수행하게 된다. 그러나, 이렇게 제어 프로그램들이 순서대로 모두 연산 처리되는 한 사이클 처리 기간중에는 제어 프로그램별로 처리 결과 데이터를 추출해서 확인해볼 수 없는 문제가 있었다.
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로, 하나의 PLC로 다수의 증설 모듈을 제어할 수 있도록 각각의 제어 프로그램들을 입력하는 과정에서, 적어도 하나의 제어 프로그램이 수행 완료된 기간들이 입출력 리프레시 실행 명령을 추가로 입력할 수 있도록 지원 가능한 PLC 시스템 및 이의 입출력 리프레시 주기 제어방법을 제공하는 것이다.
또한, 본 발명은 다수 입력된 제어 프로그램들에 따라 다수의 증설 모듈을 구동하는 과정에서, 적어도 하나의 제어 프로그램 완료 기간에 추가로 입출력 리프레시 동작이 수행되도록 하여, 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 추출 및 확보할 수 있도록 한 PLC 시스템 및 이의 입출력 리프레시 주기 제어 방법을 제공하는 것이다.
또한, 본 발명은 추가로 입출력 리프레시 동작을 수행하는 과정에서, 이전 사이클 기간에 실행되어 추출된 제어 프로그램별 결과 데이터와 현재 사이클 시간에 실행되어 추출된 제어 프로그램별 결과 데이터를 비교함으로써, 그 비교 결과에 따라 입출력 리프레시 동작의 수행 여부를 선택할 수 있도록 한 PLC 시스템 및 이의 입출력 리프레시 주기 제어 방법을 제공하는 것이다.
본 발명의 목적은 상기에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시예에 의해 보다 분명하게 이해될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기와 같은 기술 과제를 달성하기 위한 본 발명의 실시예에 따른 PLC 시스템은 프로그램 지원부를 통해 입출력 리프레시 실행 명령이 추가된 상태로 컴파일된 통합 구동 프로그램을 저장하는 메모리, 및 통합 구동 프로그램에 포함된 복수의 제어 프로그램을 순차적으로 연산 처리하여 복수의 증설모듈 구동을 제어하는 중앙 처리유닛을 포함하고, 여기서, 중앙 처리유닛은 복수의 제어 프로그램 중 적어도 하나의 제어 프로그램에 대한 연산 처리가 완료되면 추가 입력된 입출력 리프레시 실행 명령에 따라 연산 처리가 완료된 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 출력한다.
프로그램 지원부는 사용자가 복수의 입출력 리프레시 실행 명령이 포함된 통합 구동 프로그램을 적어도 한 사이클 단위로 설계해서 입력하고, 상기 통합 구동 프로그램이 반복해서 실행되도록 설정할 수 있는 PADT(Programming and Debugging Tool) 표시 프로그램을 지원하는 코드 입력 프로그램 지원부, 및 복수의 입출력 리프레시 실행 명령이 포함된 통합 구동 프로그램을 컴파일해서 메모리와 중앙 처리유닛으로 제공하는 PADT 컴파일러를 포함한다.
통합 구동 프로그램은 시작 및 초기화 명령어, 입력 리프레시 명령, 복수의 제어 프로그램, 출력 리프레시 명령이 순차적으로 배치되도록 구성되며, 입출력 리프레시 명령이 복수의 제어 프로그램 중 적어도 하나씩의 제어 프로그램 사이에 배치되도록 추가로 구성된다.
중앙 처리유닛은 복수의 제어 프로그램을 순차적으로 연산 처리하는 과정에서 적어도 하나의 제어 프로그램을 실행 및 연산 처리한 이후에 추가된 입출력 리프레시 실행 명령이 리드되면, 결과 데이터를 출력하는 출력 리프레시 동작과 입력 리프레시 동작을 순차적으로 수행한다. 그리고, 다음 제어 프로그램이 리드되면 다음 제어 프로그램을 실행한다.
중앙 처리유닛은 첫번째 사이클로 상기 통합 구동 프로그램을 실행한 이후에 반복해서 다음 사이클로 통합 구동 프로그램을 실행하게 되면, 이전 사이클의 통합 구동 프로그램 실행에 따른 결과 데이터들과 현재 사이클에서 실행된 통합 구동 프로그램의 결과 데이터들을 순차적으로 비교한다. 이에 따라, 이전 사이클의 입출력 리프레시 동작 과정 대비 현재 사이클에서의 입출력 리프레시 동작 과정을 줄여서 입출력 리프레시 동작을 수행한다.
PLC 시스템은 각각의 증설모듈 동작 상태정보를 중앙 처리유닛으로 전송하는 입력포트, 및 복수의 제어 프로그램별 처리 결과 데이터를 각 증설모듈로 전송하는 출력 포트를 포함한다.
또한, 상기와 같은 기술 과제를 달성하기 위한 본 발명의 실시예에 따른 PLC 시스템의 입출력 리프레시 주기 제어방법은 프로그램 지원부를 통해 입출력 리프레시 실행 명령이 추가된 상태로 컴파일된 통합 구동 프로그램을 메모리에 저장하는 단계, 및 중앙 처리유닛으로 통합 구동 프로그램에 포함된 복수의 제어 프로그램을 순차적으로 연산 처리하여 복수의 증설모듈 구동을 제어하는 단계를 포함한다.
복수의 제어 프로그램을 순차적으로 연산 처리하는 단계는 복수의 제어 프로그램 중 적어도 하나의 제어 프로그램에 대한 연산 처리가 완료되면, 추가 입력된 입출력 리프레시 실행 명령에 따라 상기 연산 처리가 완료된 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 출력하는 단계를 포함한다.
통합 구동 프로그램을 메모리에 저장하는 단계는 사용자가 복수의 입출력 리프레시 실행 명령이 포함된 통합 구동 프로그램을 적어도 한 사이클 단위로 설계해서 입력하고, 상기 통합 구동 프로그램이 반복해서 실행되도록 설정할 수 있는 PADT(Programming and Debugging Tool) 표시 프로그램을 지원하는 단계, 및 복수의 입출력 리프레시 실행 명령이 포함된 통합 구동 프로그램을 컴파일해서 메모리와 상기 중앙 처리유닛으로 제공하는 단계를 포함한다.
통합 구동 프로그램은 시작 및 초기화 명령어, 입력 리프레시 명령, 복수의 제어 프로그램, 출력 리프레시 명령이 순차적으로 배치되도록 구성되며, 입출력 리프레시 명령이 복수의 제어 프로그램 중 적어도 하나씩의 제어 프로그램 사이에 배치되도록 추가로 구성된다.
적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 출력하는 단계는 복수의 제어 프로그램을 순차적으로 연산 처리하는 과정에서 적어도 하나의 제어 프로그램을 실행 및 연산 처리한 이후에 추가된 입출력 리프레시 실행 명령이 리드되면, 처리 결과 데이터를 출력하는 출력 리프레시 동작과 입력 리프레시 동작을 순차적으로 수행하는 단계, 및 다음 제어 프로그램이 리드되면 다음 제어 프로그램을 실행하는 단계를 포함한다.
적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 출력하는 단계는 첫번째 사이클로 상기 통합 구동 프로그램을 실행한 이후에 반복해서 다음 사이클로 통합 구동 프로그램을 실행하게 되면, 이전 사이클의 통합 구동 프로그램 실행에 따른 결과 데이터들과 현재 사이클에서 실행된 통합 구동 프로그램의 결과 데이터들을 순차적으로 비교함으로써, 이전 사이클의 입출력 리프레시 동작 과정 대비 현재 사이클에서의 입출력 리프레시 동작 과정을 줄여서 입출력 리프레시 동작을 수행하는 단계를 더 포함한다.
또한, PLC 제어 단계는 각 증설모듈의 동작 상태정보를 상기 중앙 처리유닛으로 전송하는 단계, 및 복수의 제어 프로그램별 처리 결과 데이터를 각 증설모듈로 전송하는 단계를 더 포함한다.
상기와 같은 다양한 기술 특징을 갖는 본 발명의 실시예에 따른 PLC 시스템 및 이의 입출력 리프레시 주기 제어 방법은 하나의 PLC로 다수의 증설 모듈을 제어할 수 있도록 지원하여, PLC 시스템의 적용 효율과 관리 효율을 향상시킬 수 있는 효과를 이룰 수 있다.
또한, 하나의 PLC로 다수의 증설 모듈을 제어할 수 있도록 다수의 제어 프로그램들을 입력하는 과정에서, 적어도 하나의 제어 프로그램이 수행 완료된 기간에 입출력 리프레시 동작이 추가로 수행되도록 하기 위해, 입출력 리프레시 실행 명령의 추가 입력을 지원할 수 있다.
이에, 본 발명의 PLC 시스템은 하나의 PLC로 다수의 증설 모듈을 구동하는 과정에서, 적어도 하나의 제어 프로그램이 실행 완료된 시점에 추가로 입출력 리프레시 동작이 수행되도록 하여 실행 처리된 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 추출 및 확보할 수 있다. 이에, 사용자의 관리 효율과 편의성을 증대시키고 더 나아가서는 신뢰도를 높일 수 있다.
또한, 본 발명의 PLC 시스템은 추가로 입출력 리프레시 동작을 수행하는 과정에서, 이전 사이클 기간에 실행되어 추출된 제어 프로그램별 결과 데이터와 현재 사이클 시간에 실행되어 추출된 제어 프로그램별 결과 데이터를 비교함으로써, 그 비교 결과에 따라 입출력 리프레시 동작의 수행 여부를 선택할 수 있도록 한다. 이에, 추가로 입출력 리프레시 동작을 수행하게 됨에 따른 처리 속도 및 처리 기간 증가 영향을 최소화할 수 있다.
도 1은 종래 기술에 따른 PLC 서비스 처리 과정을 나타낸 순서도이다.
도 2는 본 발명의 실시예에 따른 PLC 시스템을 구체적으로 나타낸 구성 블록도이다.
도 3은 도 1에 도시된 프로그램 지원부에서 지원하는 PADT의 입출력 리프레시 추가 설정 화면을 나타낸 도면이다.
도 4는 도 3에 도시된 PADT의 제어 프로그램 입력 및 설정 화면을 나타낸 도면이다.
도 5는 도 2의 메모리와 중앙 처리 유닛에 설정 및 저장된 증설 모듈들의 통합 구동 프로그램 처리 순서 및 배치 구조를 나타낸 도면이다.
도 6은 본 발명의 실시예에 따른 PLC 시스템의 통합 구동 프로그램 처리 방법을 설명하기 위한 순서도이다.
도 7은 도 6에 도시된 입출력 리프레시 수행 과정을 더욱 구체적으로 설명하기 위한 순서도이다.
본 명세서 및 특허청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합되는 의미와 개념으로 해석되어야만 한다. 또한, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 하나의 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
이하, 본 발명의 실시예에 따른 PLC 시스템 및 이의 입출력 리프레시 주기 제어방법에 대해 첨부된 도면들을 참조하여 상세하게 설명하기로 한다.
도 2는 본 발명의 실시예에 따른 PLC 시스템을 구체적으로 나타낸 구성 블록도이다.
도 2에 도시된 PLC 시스템은 프로그램 지원부(100)를 통해 입출력 리프레시 실행 명령이 추가된 상태로 컴파일된 통합 구동 프로그램을 저장하는 메모리(220), 통합 구동 프로그램에 포함된 복수의 제어 프로그램을 순차적으로 연산 처리하여 복수의 증설모듈(300) 구동을 제어하는 중앙 처리유닛(210), 각 증설모듈(300)의 동작 상태정보를 중앙 처리유닛(210)으로 전송하는 입력포트(230), 및 복수의 제어 프로그램별 처리 결과 데이터를 각각의 증설모듈(300)로 전송하는 출력 포트(240)를 포함한다.
프로그램 지원부(100)는 복수의 증설모듈(300)을 제어하는 PLC(200)의 제어 순서와 제어 동작들을 사용자가 미리 설정할 수 있도록 PADT(Programming and Debugging Tool) 표시 프로그램을 지원한다.
프로그램 지원부(100)는 코드 입력 프로그램 지원부(110), 및 PADT 컴파일러(120)를 포함한다. 여기서, 코드 입력 프로그램 지원부(110)는 사용자가 복수의 입출력 리프레시 실행 명령을 포함시켜서 통합 구동 프로그램을 적어도 한 사이클 단위로 설계하고 입력할 수 있도록 PADT 표시 프로그램을 지원한다.
구체적으로, 프로그램 지원부(100)는 PLC(200)에서 복수의 증설모듈(300)을 적어도 한 사이클 단위로 구동 및 제어할 수 있도록 하는 통합 구동 프로그램을 사용자가 설계해서 입력할 수 있도록 지원한다. 프로그램 지원부(100)는 사용자가 통합 구동 프로그램 설계해서 입력할 수 있도록 PADT 표시 프로그램을 지원한다. 이때, 프로그램 지원부(100)는 사용자가 통합 구동 프로그램에 포함되는 복수의 제어 프로그램을 설정 및 입력하는 과정에서, 적어도 하나의 제어 프로그램 단위로 입출력 리프레시 실행 명령을 추가할 수 있도록 하는 입출력 리프레시 실행 명령 추가 메뉴 및 코드를 지원한다.
이에, 사용자는 퍼스널 컴퓨터나 노트북 등의 단말기기에 PADT 표시 프로그램을 실행시키고, PADT 표시 프로그램의 메뉴 바와 툴 바 및 실행창을 통해 명령어와 실행 코드 등을 기입함으로써, 복수의 증설모듈(300)을 적어도 한 사이클 단위로 구동 및 제어할 수 있도록 하는 통합 구동 프로그램을 설계할 수 있다.
사용자는 통합 구동 프로그램 설계시, 메뉴 선택 기능을 통해 각각의 증설모듈(300)을 제어하기 위한 제어 프로그램들을 각각 구분해서 기입하고 설정할 수 있다. 이에, 사용자는 적어도 하나씩의 제어 프로그램 입력 및 설정 과정에서, 입출력 리프레시 실행 명령 추가 메뉴 및 선택 코드를 이용해서 적어도 하나의 제어 프로그램 연산 처리 완료 시점에 입출력 리프레시 실행 명령을 추가할 수 있다. 이러한, 입출력 리프레시 실행 명령 추가 지원 화면과 추가 방법에 대해서는 첨부된 도면을 참조하여 이후에 좀 더 구체적으로 설명하기로 한다.
PADT 컴파일러(120)는 사용자의 컴파일 명령에 따라 적어도 하나씩의 제어 프로그램에 입출력 리프레시 실행 명령이 추가된 통합 구동 프로그램, 즉 복수의 입출력 리프레시 실행 명령이 포함된 통합 구동 프로그램을 컴파일한다. 그리고, 컴파일된 통합 구동 프로그램을 메모리(220)와 중앙 처리유닛(210)으로 제공한다.
메모리(220)는 PADT 컴파일러(120)에서 컴파일된 통합 구동 프로그램을 저장하고 중앙 처리유닛(210)과 공유한다. 또한, 메모리(220)는 입력포트(230)를 통해 입력되는 각 증설 모듈(300)들의 동작 상태정보를 저장하고, 이를 중앙 처리유닛(210)과 공유한다. 그리고, 메모리(220)는 중앙 처리유닛(210)에서 실행되는 복수의 제어 프로그램별 처리 결과 데이터를 저장하고, 중앙 처리유닛(210)의 요청에 따라 중앙 처리유닛(210)과 공유할 수 있다.
중앙 처리유닛(210)은 PADT 컴파일러(120)에서 컴파일된 통합 구동 프로그램을 복수의 제어 프로그램별로 연산 처리하고, 복수의 제어 프로그램별 연산 처리 결과 데이터에 따라 각 증설모듈(300)의 구동을 제어한다.
특히, 중앙 처리유닛(210)은 복수의 제어 프로그램별로 연산 처리를 수행하는 과정에서, 적어도 하나의 제어 프로그램에 대한 연산 처리가 완료되면, 추가 입력된 입출력 리프레시 실행 명령에 따라 입출력 리프레시 동작을 수행한다. 그리고 입출력 리프레시 동작이 완료된 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 출력 포트(240)와 메모리(220)로 출력한다.
좀 더 구체적으로 설명하면, 중앙 처리유닛(210)은 컴파일된 통합 구동 프로그램의 시작 명령 및 초기화 명령이 리드되면, 각각의 증설모듈(300)과 입출력 포트(230,240)에 대한 리셋, 자가 진단, 이전 데이터 클리어, 각 증설모듈(300)들에 대한 입출력 코드 등록, 및 데이터 입출력 핀 등록 등의 초기화 처리를 수행한다.
그리고, 중앙 처리유닛(210)은 복수의 제어 프로그램을 순서대로 실행하기 전에 입출력 포트(230,240)들을 통해 각각 연결된 복수의 증설모듈(300)에 대한 동작 준비 상태 정보를 읽어들인다. 그리고, 각각의 증설모듈(300)별로 설정된 이미지 영역에 각각의 동작 준비 상태 정보를 저장하는 입력 리프레시 동작을 수행한다.
이어, 중앙 처리유닛(210)은 복수의 증설모듈(300) 중 적어도 하나의 증설모듈의 구동을 제어하기 위한 제1 제어 프로그램을 실행 및 연산 처리하여, 복수의 증설모듈(300) 중 적어도 하나의 증설모듈의 구동을 제어하기 위한 제1 결과 데이터를 산출 및 저장한다. 여기서, 제1 제어 프로그램의 연산 처리가 완료된 시점에 입출력 리프레시 실행 명령이 리드되면, 제1 결과 데이터를 출력하는 출력 리프레시 동작을 수행하고, 다시 입력 리프레시 동작을 수행할 수 있다.
하지만, 입출력 리프레시 실행 명령이 기입 및 리드되지 않은 상태로 제2 제어 프로그램에 리드되면, 복수의 증설모듈(300) 중 적어도 하나의 증설모듈의 구동을 제어하기 위한 제2 제어 프로그램을 실행 및 연산 처리한다. 그리고, 복수의 증설모듈(300) 중 적어도 하나의 증설모듈의 구동을 제어하기 위한 제2 결과 데이터가 산출되면 제2 결과 데이터를 저장한다. 여기서, 제2 제어 프로그램의 연산 처리가 완료된 시점에 입출력 리프레시 실행 명령이 리드되면, 제1 및 제2 결과 데이터를 모두 출력하는 출력 리프레시 동작을 수행하고, 다시 입력 리프레시 동작을 수행할 수 있다.
반면, 제2 제어 프로그램 연산 처리 후에도 입출력 리프레시 실행 명령이 기입 및 리드되지 않은 상태로 제3 제어 프로그램에 리드되면, 복수의 증설모듈(300) 중 적어도 하나의 증설모듈 구동을 제어하기 위한 제3 제어 프로그램을 실행 및 연산 처리한다. 그리고, 복수의 증설모듈(300) 중 적어도 하나의 증설모듈의 구동을 제어하기 위한 제3 결과 데이터가 산출되면 제3 결과 데이터를 저장한다. 이어서, 제3 제어 프로그램의 연산 처리가 완료된 시점에 입출력 리프레시 실행 명령이 리드되면, 제1 내지 제3 결과 데이터를 모두 출력하는 출력 리프레시 동작을 수행한다. 그리고, 다시 입력 리프레시 동작을 수행할 수 있다. 이와 같은 통합 구동 프로그램 실행 및 연산 처리 과정은 상기의 초기화 처리 과정부터 제1 내지 제3 결과 데이터를 모두 출력하는 출력 리프레시 동작을 수행하기 까지의 한 사이클 동안 수행된다.
중앙 처리유닛(210)은 초기화 처리 과정부터 제1 내지 제3 결과 데이터를 모두 출력하는 출력 리프레시 동작을 수행하기까지의 한 사이클 동안 통합 프로그램을 수행한 이후, 다시 두번째 사이클로 통합 구동 프로그램을 실행하게 되면, 이전 첫번째 사이클의 통합 구동 프로그램 실행에 따른 결과 데이터들과 현재 사이클에서 실행된 통합 구동 프로그램의 결과 데이터들을 순차적으로 비교한다. 이에 따라, 이전 사이클의 입출력 리프레시 동작 과정 대비 현재 사이클에서의 입출력 리프레시 동작 과정을 줄여서 입출력 리프레시 동작을 수행할 수 있다.
구체적으로, 중앙 처리유닛(210)은 첫번째 사이클로 통합 구동 프로그램을 수행한 이후 두번째의 사이클로 통합 구동 프로그램을 실행하는 시점부터는 입출력 리프레시 동작 수행시, 이전 사이클 기간에 실행되어 추출된 제어 프로그램별 결과 데이터와 현재 사이클 시간에 실행되어 추출된 제어 프로그램별 결과 데이터를 비교한다. 그리고, 이전 사이클(예를 들어, 첫번째 진행된 통합 구동 프로그램 진행 사이클) 진행 과정에서 수행된 제어 프로그램의 결과 데이터와 현재 사이클(예를 들어, 두번째 진행되는 사이클)에서 수행된 제어 프로그램의 결과 데이터가 동일하면, 결과 데이터가 동일한 제어 프로그램에 대해서는 동일한 결과 데이터만 출력한다. 이때는 입출력 리프레시 동작 중단하고 다음 제어 프로그램을 실행할 수 있다. 이와 같은, 중앙 처리유닛(210)의 통합 구동 프로그램 실행 및 연산 처리 방법에 대해서는 첨부된 도면을 참조하여 이후에 좀 더 구체적으로 설명하기로 한다.
도 3은 도 1에 도시된 프로그램 지원부에서 지원하는 PADT의 입출력 리프레시 추가 설정 화면을 나타낸 도면이다.
도 3을 참조하여 입출력 리프레시 명령 추가 입력 지원 방법을 설명하면 다음과 같다.
즉, 프로그램 지원부(100)는 사용자가 퍼스널 컴퓨터나 노트북 등의 단말기기로 PADT 표시 프로그램을 실행할 수 있도록 지원한다. 이때, 프로그램 지원부(100)는 사용자가 PADT 표시 프로그램의 메뉴 바를 통해 순서대로 각각의 제어 프로그램(Program1 내지 Program1)을 추가 및 선택할 수 있도록 지원한다. 그리고 사용자가 메뉴 바의 어느 한 제어 프로그램(Program1 내지 Program 3 중 하나의 프로그램)을 선택하면, 선택된 하나의 제어 프로그램(Program1)에 입출력 리프레시 명령을 선택적으로 추가할 수 있도록 하는 옵션 선택 툴 바를 지원한다. 이에, 사용자는 제어 프로그램(Program1 내지 Program1)별로 입출력 리프레시 명령 추가 옵션을 선택할 수 있다.
도 4는 도 3에 도시된 PADT의 제어 프로그램 입력 및 설정 화면을 나타낸 도면이다.
도 4에 도시된 바와 같이, 사용자가 어느 한 제어 프로그램(Program1 내지 Program1)을 선택해서 입출력 리프레시 명령 추가 여부를 선택한 후 확인하면, 프로그램 지원부(100)는 선택한 어느 한 제어 프로그램(Program1 내지 Program1)을 설계 및 설정할 수 있도록 실행창과 메뉴 바, 및 툴 바 등을 제공한다.
이에, 사용자는 PADT 표시 프로그램의 실행 창과 메뉴 바, 및 툴바 등을 이용해서 명령어와 실행 코드 등을 기입함으로써, 적어도 한 사이클 단위로 각각의 제어 프로그램(Program1 내지 Program1)을 설계할 수 있다.
도 5는 도 2의 메모리와 중앙 처리 유닛에 설정 및 저장된 증설 모듈들의 통합 구동 프로그램 처리 순서 및 배치 구조를 나타낸 도면이다.
도 5를 참조하면, 통합 구동 프로그램에는 시작 명령 및 초기화 명령어를 시작으로 입출력 리프레시 명령(또는, 입력 리프레시 명령)과 제1 제어 프로그램(Program1)이 순서대로 배치된다. 제1 제어 프로그램(Program1) 배치 이후에는 입출력 리프레시 명령(I/O Refresh)이 추가로 배치될 수 있다.
제1 제어 프로그램(Program1)이나 입출력 리프레시 명령(I/O Refresh)에는 적어도 하나의 프로그램, 예를 들어 제2 및 제3 제어 프로그램(Program2, Program3)이 순서대로 배치될 수 있다. 이때, 제2 및 제3 제어 프로그램(Program2, Program3)의 사이에도 입출력 리프레시 명령(I/O Refresh)이 추가 배치될 수도 있다. 이와 같은 방식으로, 증설모듈(300)들에 따라 복수의 제어 프로그램들과 입출력 리프레시 명령(I/O Refresh)이 모두 배치된 마지막에는 출력 리프레시 명령(I/O Refresh)이 배치되어 한 사이클의 동작이 완료되도록 할 수 있다.
도 6은 본 발명의 실시예에 따른 PLC 시스템의 통합 구동 프로그램 처리 방법을 설명하기 위한 순서도이다.
도 5 및 도 6을 참조하여, 컴파일된 통합 구동 프로그램의 실행 및 처리 과정을 순서대로 설명하면 다음과 같다.
먼저, 중앙 처리유닛(210)은 컴파일된 통합 구동 프로그램의 시작 명령 및 초기화 명령이 리드되면, 각각의 증설모듈(300)과 입출력 포트(230,240)에 대한 리셋, 자가 진단, 이전 데이터 클리어, 각 증설모듈(300)들에 대한 입출력 코드 등록, 및 데이터 입출력 핀 등록 등의 초기화 처리를 수행한다(ST1). 초기화 결과 데이터는 메모리(220)에 저장된다.
이어, 중앙 처리유닛(210)은 입출력 리프레시 명령(I/O Refresh)에 따라 복수의 제어 프로그램(Program1 내지 Program3)을 순서대로 실행하기 전에, 입출력 포트(230,240)들을 통해 각각 연결된 복수의 증설모듈(300)에 대한 동작 준비 상태 정보를 읽어들인다. 그리고, 각각의 증설모듈(300)별로 입력 이미지 영역을 설정하고 설정된 이미지 영역에 각각의 동작 준비 상태 정보를 저장하는 입력 리프레시 동작을 수행한다(ST2).
다음으로, 중앙 처리유닛(210)은 복수의 증설모듈(300) 중 적어도 하나의 증설모듈 구동을 선택적으로 제어하기 위한 제1 제어 프로그램(Program1)을 실행 및 연산 처리하여, 복수의 증설모듈(300) 중 적어도 하나의 증설모듈 의 구동을 제어하기 위한 제1 결과 데이터를 산출 및 저장한다(ST3). 여기서, 제1 제어 프로그램(Program1)의 연산 처리가 완료된 시점에 입출력 리프레시 실행 명령이 리드되면(ST4), 제1 결과 데이터를 저장하기 위한 출력 이미지 영역을 설정하고 제1 결과 데이터를 출력 이미지 영역에 저장함과 아울러 출력포트(240)와 메모리(220)로 출력하는 출력 리프레시 동작을 수행한다. 그리고, 다시 입력 이미지 영역을 설정하고 설정된 이미지 영역에 각각의 동작 준비 상태 정보를 저장하는 입력 리프레시 동작을 수행할 수 있다(ST5). 이에, 메모리(220)는 제1 결과 데이터를 저장하며, 이후 중앙 처리유닛(210)의 공유 요청시에는 중앙 처리유닛(210)으로 전송할 수 있다.
이어, 중앙 처리유닛(210)은 입출력 리프레시 동작 실행 이후에 복수의 증설모듈(300) 중 적어도 하나의 증설모듈을 구동시키기 위한 제2 제어 프로그램(Program2)이 리드되면, 제2 제어 프로그램을 실행 및 연산 처리하여 복수의 증설모듈(300) 중 적어도 하나의 증설모듈 구동을 선택적으로 제어한다(ST6). 그리고, 적어도 하나의 증설모듈의 구동을 제어하기 위한 제2 결과 데이터가 산출되면 제2 결과 데이터를 저장한다. 여기서, 제2 제어 프로그램의 연산 처리가 완료된 시점에 입출력 리프레시 실행 명령이 리드되면(ST7), 제1 및 제2 결과 데이터를 모두 출력포트(240)와 메모리(220)로 출력하는 출력 리프레시 동작을 수행하고, 다시 입력 리프레시 동작을 수행할 수 있다(ST8).
이어, 중앙 처리유닛(210)은 입출력 리프레시 동작 실행 이후에 제3 제어 프로그램(Program3)이 리드되면, 복수의 증설모듈(300) 중 적어도 하나의 증설모듈 구동을 선택적으로 제어하기 위한 제3 제어 프로그램(Program3)을 실행 및 연산 처리 한다. 그리고, 적어도 하나의 증설모듈 구동을 제어하기 위한 제3 결과 데이터가 산출되면 제3 결과 데이터를 저장한다. 이어서, 제3 제어 프로그램의 연산 처리가 완료된 시점에 입출력 리프레시 실행 명령이 리드되면, 제1 내지 제3 결과 데이터를 모두 출력포트(240)와 메모리(220)로 출력하는 출력 리프레시 동작을 수행하고, 다시 입력 리프레시 동작을 수행할 수 있다. 이와 같은 통합 구동 프로그램 실행 및 연산 처리 과정은 적어도 한 사이클 동안 반복해서 수행된다.
도 7은 도 6에 도시된 입출력 리프레시 수행 과정을 더욱 구체적으로 설명하기 위한 순서도이다.
전술한 바와 같이, 중앙 처리유닛(210)은 첫번째 사이클로 통합 구동 프로그램을 수행한 이후 다시 복수번째의 사이클로 통합 구동 프로그램을 실행하게 되면, 이전 사이클(예를 들어, 이전의 첫번째 사이클)의 통합 구동 프로그램 실행에 따른 결과 데이터들과 현재 사이클(예를 들어, 두번째 사이클)에서 실행된 통합 구동 프로그램의 결과 데이터를 순차적으로 비교함으로써, 이전 사이클의 입출력 리프레시 동작 과정 대비 현재 사이클에서의 입출력 리프레시 동작 과정을 줄여서 입출력 리프레시 동작을 수행할 수 있다.
구체적으로, 도 7을 참조하여 입출력 리프레시 동작 과정을 줄여서 수행하는 방법을 좀 더 구체적으로 설명하면 다음과 같다.
중앙 처리유닛(210)은 첫번째 사이클로 통합 구동 프로그램을 수행한 이후 다시 복수번째의 사이클로 통합 구동 프로그램을 실행하게 되면, 입출력 리프레시 명령에 따라 해당 증설모듈 예를 들어, 제1 증설모듈의 입/출력 타입을 확인한다(SS1,SS2).
만일, 제1 증설모듈이 입력 타입이면 제1 증설모듈의 입력 슬롯을 확인(SS3)하고, 이전 사이클 기간에 실행되어 추출된 제1 제어 프로그램의 제1 결과 데이터와 현재 사이클 시간에 실행되어 추출된 제1 제어 프로그램의 제1 결과 데이터를 비교한다(SS4). 그리고, 이전 사이클 진행 과정에서 수행된 제1 제어 프로그램의 제1 결과 데이터와 현재 사이클에서 수행된 제어 프로그램의 제1 결과 데이터가 동일하면, 결과 데이터가 동일한 제1 제어 프로그램에 대해서는 동일한 제1 결과 데이터만 출력하되, 입출력 리프레시 동작 중단하고 다음 제어 프로그램을 실행할 수 있다(SS5).
반면, 이전 사이클 진행 과정에서 수행된 제어 프로그램의 결과 데이터와 현재 사이클에서 수행된 제어 프로그램의 결과 데이터가 상이할 때만, 제1 결과 데이터를 저장하기 위한 출력 이미지 영역을 설정하고 제1 결과 데이터를 출력 이미지 영역에 저장함과 아울러 제1 결과 데이터를 출력포트(240)와 메모리(220)로 출력하는 출력 리프레시 동작을 수행한다. 그리고, 다시 입력 이미지 영역을 설정하고 설정된 이미지 영역에 각각의 동작 준비 상태 정보를 저장하는 입력 리프레시 동작을 수행할 수 있다(ST6).
만일, 제1 증설모듈의 입/출력 타입을 확인한 결과가 출력 타입이면 제1 증설모듈의 출력 슬롯을 확인(SS7)하고, 이전 사이클 기간에 실행되어 추출된 제1 제어 프로그램의 제1 결과 데이터와 현재 사이클 시간에 실행되어 추출된 제1 제어 프로그램의 제1 결과 데이터를 비교한다(SS8). 그리고, 이전 사이클 진행 과정에서 수행된 제1 제어 프로그램의 제1 결과 데이터와 현재 사이클에서 수행된 제어 프로그램의 제1 결과 데이터가 동일하면, 결과 데이터가 동일한 제1 제어 프로그램에 대해서는 동일한 제1 결과 데이터만 출력하되, 입출력 리프레시 동작 중단하고 다음 제어 프로그램을 실행할 수 있다(SS9).
반면, 이전 사이클 진행 과정에서 수행된 제어 프로그램의 결과 데이터와 현재 사이클에서 수행된 제어 프로그램의 결과 데이터가 상이할 때만, 제1 결과 데이터를 저장하기 위한 출력 이미지 영역을 설정하고 제1 결과 데이터를 출력 이미지 영역에 저장함과 아울러 제1 결과 데이터를 출력포트(240)와 메모리(220)로 출력하는 출력 리프레시 동작을 수행한다. 그리고, 다시 입력 이미지 영역을 설정하고 설정된 이미지 영역에 각각의 동작 준비 상태 정보를 저장하는 입력 리프레시 동작을 수행할 수 있다(ST10).
이상 상술한 바와 같이, 본 발명의 실시예에 따른 PLC 시스템 및 이의 입출력 리프레시 주기 제어 방법은 하나의 PLC가 다수의 증설 모듈을 제어할 수 있도록 지원하여, PLC 시스템의 적용 효율과 관리 효율을 향상시킬 수 있다.
또한, 하나의 PLC로 다수의 증설 모듈을 제어할 수 있도록 다수의 제어 프로그램을 입력하는 과정에서, 적어도 하나의 제어 프로그램 수행 완료 시점에 입출력 리프레시 동작이 추가로 수행되도록 하기 위해, 입출력 리프레시 실행 명령 추가 입력을 지원할 수 있다.
이에, 본 발명의 PLC 시스템은 하나의 PLC로 다수의 증설 모듈을 구동하는 과정에서, 적어도 하나의 제어 프로그램 완료 시점에 추가로 입출력 리프레시 동작을 수행하여 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 추출 밀 확보할 수 있다. 이에, 사용자의 관리 효율과 편의성을 증대시키고 더 나아가서는 신뢰도를 높일 수 있다.
또한, 본 발명의 PLC 시스템은 추가로 입출력 리프레시 동작을 수행하는 과정에서, 이전 사이클 진행 과정에서 수행된 제어 프로그램의 결과 값과 현재 사이클에서 수행된 제어 프로그램의 결과 값을 비교하고, 그 비교 결과에 따라 입출력 리프레시 동작의 수행 여부를 선택할 수 있도록 함으로써, 추가로 입출력 리프레시 동작을 수행하게 됨에 따른 처리 속도 및 처리 기간 증가 영향을 최소화할 수 있다.
전술된 실시예는 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해되어야 하며, 본 발명의 범위는 전술된 상세한 설명보다는 후술될 특허청구범위에 의해 나타내어질 것이다. 그리고 후술될 특허청구범위의 의미 및 범위는 물론, 그 등가 개념으로부터 도출되는 모든 변경 및 변형 가능한 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (12)

  1. 입출력 리프레시 주기를 제어하는 PLC 시스템에 있어서,
    프로그램 지원부를 통해 입출력 리프레시 실행 명령이 추가된 상태로 컴파일된 통합 구동 프로그램을 저장하는 메모리; 및
    상기 통합 구동 프로그램에 포함된 복수의 제어 프로그램을 순차적으로 연산 처리하여 복수의 증설모듈 구동을 제어하는 중앙 처리유닛을 포함하고,
    상기 중앙 처리유닛은
    상기 복수의 제어 프로그램 중 적어도 하나의 제어 프로그램에 대한 연산 처리가 완료되면, 상기 추가 입력된 입출력 리프레시 실행 명령에 따라 상기 연산 처리가 완료된 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 출력하는,
    PLC 시스템.
  2. 제 1 항에 있어서,
    상기 프로그램 지원부는
    사용자가 복수의 입출력 리프레시 실행 명령이 포함된 상기 통합 구동 프로그램을 설계해서 입력하고, 상기 통합 구동 프로그램이 반복해서 실행되도록 설정할 수 있는 PADT(Programming and Debugging Tool) 표시 프로그램을 지원하는 코드 입력 프로그램 지원부; 및
    상기 복수의 입출력 리프레시 실행 명령이 포함된 통합 구동 프로그램을 컴파일해서 상기 메모리와 상기 중앙 처리유닛으로 제공하는 PADT 컴파일러를 포함하는,
    PLC 시스템.
  3. 제 1 항에 있어서,
    상기 통합 구동 프로그램은
    시작 및 초기화 명령어, 입력 리프레시 명령, 복수의 제어 프로그램, 출력 리프레시 명령이 순차적으로 배치되도록 구성되며,
    상기 입출력 리프레시 명령이 상기 복수의 제어 프로그램 중 적어도 하나씩의 제어 프로그램 사이에 배치되도록 추가로 구성된,
    PLC 시스템.
  4. 제 3 항에 있어서,
    상기 중앙 처리유닛은
    상기 복수의 제어 프로그램을 순차적으로 연산 처리하는 과정에서 적어도 하나의 제어 프로그램을 실행 및 연산 처리한 이후에 상기 추가된 입출력 리프레시 실행 명령이 리드되면, 결과 데이터를 출력하는 출력 리프레시 동작과 입력 리프레시 동작을 순차적으로 수행하며,
    다음 제어 프로그램이 리드되면 상기 다음 제어 프로그램을 실행하는,
    PLC 시스템.
  5. 제 4 항에 있어서,
    상기 중앙 처리유닛은
    첫번째 사이클로 상기 통합 구동 프로그램을 실행한 이후에 반복해서 다음 사이클로 통합 구동 프로그램을 실행하게 되면, 이전 사이클의 통합 구동 프로그램 실행에 따른 결과 데이터들과 현재 사이클에서 실행된 통합 구동 프로그램의 결과 데이터들을 순차적으로 비교함으로써, 이전 사이클의 입출력 리프레시 동작 과정 대비 현재 사이클에서의 입출력 리프레시 동작 과정을 줄여서 입출력 리프레시 동작을 수행하는,
    PLC 시스템.
  6. 제 1 항에 있어서,
    각 증설모듈의 동작 상태정보를 상기 중앙 처리유닛으로 전송하는 입력포트; 및
    상기 복수의 제어 프로그램별 처리 결과 데이터를 상기 각 증설모듈로 전송하는 출력 포트를 포함하는,
    PLC 시스템.
  7. 프로그램 지원부를 통해 입출력 리프레시 실행 명령이 추가된 상태로 컴파일된 통합 구동 프로그램을 메모리에 저장하는 단계; 및
    중앙 처리유닛으로 상기 통합 구동 프로그램에 포함된 복수의 제어 프로그램을 순차적으로 연산 처리하여 복수의 증설모듈 구동을 제어하는 단계를 포함하고,
    상기 복수의 제어 프로그램을 순차적으로 연산 처리하는 단계는,
    상기 복수의 제어 프로그램 중 적어도 하나의 제어 프로그램에 대한 연산 처리가 완료되면, 상기 추가 입력된 입출력 리프레시 실행 명령에 따라 상기 연산 처리가 완료된 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 출력하는 단계를 포함하는,
    PLC 시스템의 입출력 리프레시 주기 제어방법.
  8. 제 7 항에 있어서,
    상기 통합 구동 프로그램을 메모리에 저장하는 단계는
    사용자가 복수의 입출력 리프레시 실행 명령이 포함된 상기 통합 구동 프로그램을 설계해서 입력하고, 상기 통합 구동 프로그램에 반복해서 실행되도록 설정할 수 있는 PADT(Programming and Debugging Tool) 표시 프로그램을 지원하는 단계; 및
    상기 복수의 입출력 리프레시 실행 명령이 포함된 통합 구동 프로그램을 컴파일해서 상기 메모리와 상기 중앙 처리유닛으로 제공하는 단계를 포함하는,
    PLC 시스템의 입출력 리프레시 주기 제어방법.
  9. 제 7 항에 있어서,
    상기 통합 구동 프로그램은
    시작 및 초기화 명령어, 입력 리프레시 명령, 복수의 제어 프로그램, 출력 리프레시 명령이 순차적으로 배치되도록 구성되며,
    상기 입출력 리프레시 명령이 상기 복수의 제어 프로그램 중 적어도 하나씩의 제어 프로그램 사이에 배치되도록 추가로 구성된,
    PLC 시스템의 입출력 리프레시 주기 제어방법.
  10. 제 9 항에 있어서,
    상기 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 출력하는 단계는
    상기 복수의 제어 프로그램을 순차적으로 연산 처리하는 과정에서 적어도 하나의 제어 프로그램을 실행 및 연산 처리한 이후에 상기 추가된 입출력 리프레시 실행 명령이 리드되면, 상기 처리 결과 데이터를 출력하는 출력 리프레시 동작과 입력 리프레시 동작을 순차적으로 수행하는 단계; 및
    다음 제어 프로그램이 리드되면 상기 다음 제어 프로그램을 실행하는 단계를 포함하는,
    PLC 시스템의 입출력 리프레시 주기 제어방법.
  11. 제 10 항에 있어서,
    상기 적어도 하나의 제어 프로그램에 대한 처리 결과 데이터를 출력하는 단계는
    첫번째 사이클로 상기 통합 구동 프로그램이 실행된 이후에 다시 반복해서 다음 사이클로 통합 구동 프로그램을 실행하게 되면, 이전 사이클의 통합 구동 프로그램 실행에 따른 결과 데이터들과 현재 사이클에서 실행된 통합 구동 프로그램의 결과 데이터들을 순차적으로 비교함으로써, 이전 사이클의 입출력 리프레시 동작 과정 대비 현재 사이클에서의 입출력 리프레시 동작 과정을 줄여서 입출력 리프레시 동작을 수행하는 단계를 더 포함하는,
    PLC 시스템의 입출력 리프레시 주기 제어방법.
  12. 제 7 항에 있어서,
    각 증설모듈의 동작 상태정보를 상기 중앙 처리유닛으로 전송하는 단계; 및
    상기 복수의 제어 프로그램별 처리 결과 데이터를 상기 각 증설모듈로 전송하는 단계를 더 포함하는,
    PLC 시스템의 입출력 리프레시 주기 제어방법.
PCT/KR2020/004276 2019-04-15 2020-03-27 Plc 시스템 및 이의 입출력 리프레시 주기 제어방법 Ceased WO2020213853A1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/603,850 US12001185B2 (en) 2019-04-15 2020-03-27 PLC system, and method for controlling input/output refresh period thereof
JP2021560921A JP7457730B2 (ja) 2019-04-15 2020-03-27 Plcシステム、及びこれの入出力リフレッシュ周期の制御方法
CN202080028873.7A CN113692558B (zh) 2019-04-15 2020-03-27 Plc系统及其输入输出刷新周期的控制方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190043672A KR102763676B1 (ko) 2019-04-15 2019-04-15 Plc 시스템 및 이의 입출력 리프레시 주기 제어방법
KR10-2019-0043672 2019-04-15

Publications (1)

Publication Number Publication Date
WO2020213853A1 true WO2020213853A1 (ko) 2020-10-22

Family

ID=72837374

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/004276 Ceased WO2020213853A1 (ko) 2019-04-15 2020-03-27 Plc 시스템 및 이의 입출력 리프레시 주기 제어방법

Country Status (5)

Country Link
US (1) US12001185B2 (ko)
JP (1) JP7457730B2 (ko)
KR (1) KR102763676B1 (ko)
CN (1) CN113692558B (ko)
WO (1) WO2020213853A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2025052825A1 (ja) * 2023-09-05 2025-03-13 パナソニックIpマネジメント株式会社 処理方法、プログラム、及び処理システム
CN119002390B (zh) * 2024-10-25 2025-01-28 四川东大恒泰电气有限责任公司 一种皮带式抽油机控制方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100125752A (ko) * 2009-05-21 2010-12-01 엘에스산전 주식회사 Plc에서의 컨트롤 명령 처리 장치 및 방법
JP2016110458A (ja) * 2014-12-08 2016-06-20 株式会社キーエンス プログラマブル・ロジック・コントローラ、基本ユニット、制御方法およびプログラム
KR20160141938A (ko) * 2015-06-01 2016-12-12 엘에스산전 주식회사 Plc용 스캔 프로그램의 구동 방법
US20170068236A1 (en) * 2014-03-14 2017-03-09 Omron Corporation Control system
KR101782252B1 (ko) * 2016-03-25 2017-09-26 엘에스산전 주식회사 Plc 시스템의 고정주기 운전 방법

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09265306A (ja) * 1996-03-29 1997-10-07 Hitachi Ltd プロセス制御装置および不動作制御回路の検出方法
JP3775466B2 (ja) 1999-10-15 2006-05-17 オムロン株式会社 プログラマブルコントローラ
US7143366B1 (en) * 2001-06-11 2006-11-28 Rockwell Automation Technologies, Inc. Graphical compare utility
JP2005084800A (ja) * 2003-09-05 2005-03-31 Fanuc Ltd プログラマブルコントローラ
EP2228698B1 (en) * 2005-03-14 2012-06-27 Omron Corporation Programmable controller system
JP4537336B2 (ja) 2006-03-20 2010-09-01 三菱電機株式会社 プログラムデバッグ装置、プログラムデバッグ方法およびデバッグプログラム
US8065666B2 (en) * 2006-06-02 2011-11-22 Rockwell Automation Technologies, Inc. Change management methodologies for industrial automation and information systems
JP5508098B2 (ja) 2010-03-31 2014-05-28 株式会社キーエンス プログラマブルコントローラ、データ通信方法及びコンピュータプログラム
JP2011231698A (ja) 2010-04-28 2011-11-17 Suzuki Motor Corp 車載電子制御装置
US8595561B1 (en) * 2010-10-27 2013-11-26 Xilinx, Inc. Integrated debugging within an integrated circuit having an embedded processor
US8184775B1 (en) 2010-10-29 2012-05-22 General Electric Company Dynamic collimator for wide coverage and low dose cardiac CT imaging
US8595442B1 (en) * 2010-11-16 2013-11-26 Xilinx, Inc. Redundantly validating values with a processor and a check circuit
WO2014167622A1 (ja) * 2013-04-08 2014-10-16 三菱電機株式会社 プログラム編集装置、プログラム編集方法およびプログラム編集プログラム
JP5911044B1 (ja) * 2015-07-10 2016-04-27 三菱電機株式会社 プログラム生成装置及びその方法
CN106249685B (zh) * 2016-08-26 2018-08-28 清远蓄能发电有限公司 抽水蓄能机组控制程序全工况动态仿真测试系统及方法
JP6457467B2 (ja) * 2016-11-29 2019-01-23 ファナック株式会社 ラダープログラム管理装置
CN108958157B (zh) * 2018-07-09 2020-09-18 北京东土科技股份有限公司 控制程序控制调度方法、装置、计算机设备以及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100125752A (ko) * 2009-05-21 2010-12-01 엘에스산전 주식회사 Plc에서의 컨트롤 명령 처리 장치 및 방법
US20170068236A1 (en) * 2014-03-14 2017-03-09 Omron Corporation Control system
JP2016110458A (ja) * 2014-12-08 2016-06-20 株式会社キーエンス プログラマブル・ロジック・コントローラ、基本ユニット、制御方法およびプログラム
KR20160141938A (ko) * 2015-06-01 2016-12-12 엘에스산전 주식회사 Plc용 스캔 프로그램의 구동 방법
KR101782252B1 (ko) * 2016-03-25 2017-09-26 엘에스산전 주식회사 Plc 시스템의 고정주기 운전 방법

Also Published As

Publication number Publication date
JP2022529260A (ja) 2022-06-20
CN113692558B (zh) 2024-11-05
US12001185B2 (en) 2024-06-04
US20220236714A1 (en) 2022-07-28
KR102763676B1 (ko) 2025-02-05
KR20200121090A (ko) 2020-10-23
JP7457730B2 (ja) 2024-03-28
CN113692558A (zh) 2021-11-23

Similar Documents

Publication Publication Date Title
KR940002324B1 (ko) 프로그래머블 콘트롤러
WO2020213853A1 (ko) Plc 시스템 및 이의 입출력 리프레시 주기 제어방법
WO2019164205A1 (ko) 전자 장치 및 그의 동작 방법
WO2023101165A1 (ko) 생산 계획 수립 장치 및 방법
JP2016110460A (ja) プログラマブルコントローラ、プログラマブルコントローラの制御方法およびプログラム
WO2016159624A1 (ko) 단어 학습을 제공하는 방법과 시스템 및 기록 매체
WO2021132905A1 (ko) 멀티-마스터를 지원하는 그래픽 처리 장치를 공유하는 시스템 온 칩 및 그래픽 처리 장치의 동작 방법
WO2011132807A1 (ko) 로봇 시스템 제어 방법 및 그 장치
WO2022114423A1 (ko) 공간 효율적 입출력 인터페이스를 제공하는 plc
JPS6246894B2 (ko)
JP7093979B2 (ja) デバイスプロキシ装置及びそれを含む計算機システム
JP6484015B2 (ja) プログラマブル・ロジック・コントローラおよびその制御方法
WO2013015569A2 (ko) 시뮬레이션 장치 및 그의 시뮬레이션 방법
WO2024117342A1 (ko) 가상머신 시스템 및 이를 이용한 가상머신 프로비저닝 방법
WO2013042972A2 (ko) 바이패스 경로를 이용하여 신뢰성 검증을 할 수 있는 플래시 메모리 저장 장치, 및 이를 이용한 플래시 메모리 저장 장치의 신뢰성 검증 시스템 및 방법
JPH04149658A (ja) 情報処理装置
US8825897B2 (en) Positional addressing for a computer cluster
CN114721893B (zh) 一种全自动设备的数据处理方法及相关装置
WO2024214849A1 (ko) 프론트엔드 프레임워크 제공 방법 및 그 시스템
CN113900700B (zh) 数据处理方法、设备和存储介质
WO2023128357A1 (ko) 소프트웨어 기반의 개별분리 아키텍처 시스템 시뮬레이터 및 그의 방법
WO2024257935A1 (ko) 휴대폰 번호를 이용한 로그인 지원 방법 및 그 시스템
WO2024262677A1 (ko) 스트리밍 서비스를 위한 비디오 가공 방법 및 그 시스템
WO2022108363A1 (ko) 윈도우즈 운영체제 환경에서 리눅스 운영체제용 응용 소프트웨어의 실행 방법, 이를 실행하는 프로그램을 저장한 기록 매체
WO2023058867A1 (ko) 블루투스 연결 제어 장치 및 방법

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021560921

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20792076

Country of ref document: EP

Kind code of ref document: A1