KR20210070656A - Apparatus for back up user data file of plc and method of the same - Google Patents
Apparatus for back up user data file of plc and method of the same Download PDFInfo
- Publication number
- KR20210070656A KR20210070656A KR1020190160683A KR20190160683A KR20210070656A KR 20210070656 A KR20210070656 A KR 20210070656A KR 1020190160683 A KR1020190160683 A KR 1020190160683A KR 20190160683 A KR20190160683 A KR 20190160683A KR 20210070656 A KR20210070656 A KR 20210070656A
- Authority
- KR
- South Korea
- Prior art keywords
- user data
- file
- data file
- backup
- plc
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1461—Backup scheduling policy
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3438—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/14—Plc safety
- G05B2219/14018—IN, plc and comparator, error detector, backup, standby plc, switch, update OUT
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Automation & Control Theory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Programmable Controllers (AREA)
Abstract
Description
본 발명은 PLC의 사용자 데이터 파일 백업 장치 및 방법에 관한 것으로, 더욱 상세하게는 프로세서의 유휴 시간에 운영 체제가 제공하는 파일 시스템에서 사용자 데이터의 변경을 감지하여 자동으로 사용자 데이터를 파일로 백업하는 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for backing up a user data file of a PLC, and more particularly, an apparatus for automatically backing up user data to a file by detecting a change in user data in a file system provided by an operating system during idle time of a processor and methods.
PLC(Programmable Logic Controller)는 산업 환경에서 기계의 제어, 진단 및 안전 등의 기능을 관리 및 운용하는 핵심 장비이다. PLC (Programmable Logic Controller) is a core equipment that manages and operates functions such as machine control, diagnosis and safety in an industrial environment.
종래의 PLC에서는 운영 체제 및 컴퓨팅 파워의 제한으로 백업에 대한 기능이 제한적으로 제공되었다.In the conventional PLC, a function for backup was limited due to limitations of the operating system and computing power.
또한, 종래의 PLC의 경우 사용자가 요청하거나 사용자가 원하는 시간을 지정하거나 PLC가 종료 되는 시점 등에 사용자 데이터를 백업하도록 구현되어 있어서 예기치 않은 동작(정전 또는 사용자 프로그램의 오작동에 의한 리셋 등)에 의해 백업을 하는 경우 사용자 데이터가 완벽하게 백업되기 전에 종료가 되어 사용자 데이터가 손실되는 문제점이 있었다.In addition, in the case of the conventional PLC, it is implemented to back up user data when the user requests, designates the user's desired time, or when the PLC is terminated, so it is backed up by unexpected operations (such as reset due to power failure or malfunction of the user program). In this case, there was a problem in that the user data was lost because it was terminated before the user data was completely backed up.
도 1은 종래의 사용자 데이터 파일 백업 방법을 설명하기 위한 도면이다.1 is a diagram for explaining a conventional user data file backup method.
도 1을 참조하면, 종래의 사용자 데이터 백업 방법은 PADT(Programmable And Debugging Tool)(또는 HMI(Human Machine Interface))(2)에서 사용자에 의한 백업 요청 또는 정전 등의 비정상 종료에 의한 백업 요청에 의해, 또는 PLC(1)가 비정상 종료되는 경우 PLC(1) 내부의 메모리(3)에 저장된 운전 정보 및 환경 변수 설정 정보 등의 사용자 데이터를 PADT(또는 HMI)(2)의 내부 저장 장치(4)에 파일이 아닌 이미지 방식으로 백업이 되었다.Referring to FIG. 1 , in the conventional method of backing up user data, a backup request by a user in a Programmable And Debugging Tool (PADT) (or Human Machine Interface) 2 or a backup request due to abnormal termination such as a power outage , or when PLC(1) is abnormally terminated, user data such as operation information and environment variable setting information stored in the memory (3) inside the PLC(1) is saved to the internal storage device (4) of the PADT (or HMI)(2). It was backed up as an image, not a file.
이와 같은 종래의 사용자 데이터 백업 방법의 경우 외부 환경에 의해 PLC(1)의 구동이 정지되는 경우(정전 및 사용자 프로그램의 오동작 등) 백업이 완전히 완료되기 전 PLC(1)의 전원이 종료되어 사용자 데이터가 손실되는 경우가 발생할 수 있다. In the case of such a conventional user data backup method, when the operation of the
이러한 경우를 대비하여 슈퍼 커패시터 등을 이용하여 백업 시간을 오래 유지하도록 하여 백업 성공률을 높이는 방법 등이 사용되어 왔다. 그러나 최근 사용자 데이터의 크기가 대용량화 되고, CPU의 소모 전력량이 증가함에 따라 백업에 소요되는 시간이 점점 길어져 상기의 방법으로는 완전한 해결책이 되지 못하고 있는 실정이다.In preparation for such a case, a method of increasing the backup success rate by using a supercapacitor or the like to maintain the backup time for a long time has been used. However, recently, as the size of user data increases and the amount of power consumed by the CPU increases, the time required for the backup becomes longer and the above method is not a complete solution.
본 발명은 프로세서의 유휴 시간에 운영 체제가 제공하는 파일 시스템에서 사용자 데이터의 변경을 감지하여 자동으로 사용자 데이터를 파일로 백업을 수행하는 PLC의 사용자 데이터 파일 백업 장치를 제공하는 것을 목적으로 한다.An object of the present invention is to provide a user data file backup device of a PLC that automatically backs up user data to a file by detecting a change in user data in a file system provided by an operating system during idle time of a processor.
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned above can be clearly understood by those of ordinary skill in the art to which the present invention belongs from the description below. There will be.
이러한 과제를 해결하기 위해, 본 발명은, PLC의 운영 체제에서 제공하는 파일 시스템을 이용해 사용자 데이터 파일을 백업하는 장치로서, 사용자 프로그램 실행 시 사용자 데이터 파일의 위치를 백업 대상 파일 리스트에 등록하는 파일 위치 등록부와, 백업 대상 파일 리스트를 확인하여 사용자 데이터 파일의 변경 여부를 감지하는 파일 변경 감지부와, 사용자 데이터 파일이 변경되면 변경 전 사용자 데이터 파일을 백업 파일 저장부에 저장하는 백업 처리부를 포함하는 PLC의 사용자 데이터 파일 백업 장치를 제공한다.In order to solve this problem, the present invention is a device for backing up a user data file using a file system provided by an operating system of a PLC, and a file location that registers the location of the user data file in the backup target file list when the user program is executed PLC comprising a register, a file change detection unit that detects whether a user data file is changed by checking a list of files to be backed up, and a backup processing unit that stores the user data file before the change in a backup file storage unit when the user data file is changed Provides a backup device for user data files.
여기서, 파일 변경 감지부는, 운영 체제의 스케쥴러를 이용하여 프로세서의 유휴 시간에 사용자 데이터 파일의 변경 여부를 감지할 수 있다.Here, the file change detection unit may detect whether the user data file is changed during idle time of the processor using a scheduler of the operating system.
또한, 백업 처리부는, 운영 체제의 스케쥴러를 이용하여 프로세서의 유휴 시간에 변경 전 사용자 데이터 파일을 저장할 수 있다.Also, the backup processing unit may store the user data file before the change in idle time of the processor using a scheduler of the operating system.
또한, 파일 변경 감지부는, 사용자 데이터 파일의 타임 스탬프가 변경되면 사용자 데이터 파일의 변경으로 판단할 수 있다. In addition, the file change detection unit may determine that the user data file is changed when the time stamp of the user data file is changed.
또한, 파일 위치 등록부는, 사용자 데이터 파일의 절대 경로를 백업 대상 파일 리스트에 등록할 수 있다.Also, the file location registration unit may register the absolute path of the user data file in the backup target file list.
또한, 백업 처리부는, 변경 전 사용자 데이터 파일을 외부 저장 장치와 동기화하거나 외부 저장 장치에 복사할 수 있다.In addition, the backup processing unit may synchronize the user data file before the change with the external storage device or copy it to the external storage device.
PLC의 운영 체제에서 제공하는 파일 시스템을 이용해 사용자 데이터 파일을 백업하는 방법으로서,A method of backing up user data files using a file system provided by an operating system of a PLC, comprising:
또한, 본 발명은, 사용자 프로그램 실행 시 사용자 데이터 파일의 위치를 백업 대상 파일 리스트에 등록하는 단계와, 운영 체제의 스케쥴러를 이용하여 프로세서의 유휴 시간인지 확인하는 단계와, 프로세서의 유휴 시간으로 확인되면 백업 대상 파일 리스트를 확인하여 사용자 데이터 파일의 변경 여부를 감지하는 단계와, 사용자 데이터 파일이 변경되면 변경 전 사용자 데이터 파일을 백업 파일 저장부에 저장하는 단계를 포함하는 PLC의 사용자 데이터 파일 백업 방법을 제공한다.In addition, the present invention includes the steps of registering the location of the user data file in the backup target file list when executing the user program, checking whether the processor is idle time using the scheduler of the operating system, and checking the idle time of the processor A method of backing up user data files in PLC, including detecting whether the user data file has been changed by checking the backup target file list, and storing the user data file before the change in the backup file storage unit when the user data file is changed. to provide.
본 발명에 따르면, 프로세서의 유휴 시간에 운영 체제가 제공하는 파일 시스템에서 사용자 데이터의 변경을 감지하여 자동으로 사용자 데이터를 파일로 백업을 수행하여 백업 시간을 최소화하고 백업 파일을 안정적으로 관리할 수 있는 효과가 있다.According to the present invention, a change in user data is detected in the file system provided by the operating system during the idle time of the processor, and the user data is automatically backed up to a file, thereby minimizing the backup time and stably managing the backup file. It works.
본 발명의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당해 기술분야에 있어서의 통상의 지식을 가진 자가 명확하게 이해할 수 있을 것이다.Effects of the present invention are not limited to those mentioned above, and other effects not mentioned will be clearly understood by those of ordinary skill in the art from the following description.
도 1은 종래의 사용자 데이터 파일 백업 방법을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 장치의 개략적인 블록도이다.
도 3은 본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 방법의 흐름도이다.1 is a diagram for explaining a conventional user data file backup method.
2 is a schematic block diagram of a user data file backup apparatus of a PLC according to an embodiment of the present invention.
3 is a diagram for explaining a user data file backup method of a PLC according to an embodiment of the present invention.
4 is a flowchart of a user data file backup method of a PLC according to an embodiment of the present invention.
본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.The terms or words used in the present specification and claims should not be construed as being limited to their ordinary or dictionary meanings, and the inventor may properly define the concept of the term in order to best describe his invention. It should be interpreted as meaning and concept consistent with the technical idea of the present invention based on the principle that there is.
따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원 시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.Accordingly, the embodiments described in this specification and the configurations shown in the drawings are only the most preferred embodiments of the present invention and do not represent all the technical spirit of the present invention, so various equivalents that can be substituted for them at the time of the present application It should be understood that there may be variations and examples.
이하, 첨부된 도면을 참조하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다.Hereinafter, with reference to the accompanying drawings, embodiments of the present invention will be described in detail so that those of ordinary skill in the art can easily implement them.
PLC(Programmable Logic Controller)는 종래에 사용하던 제어반 내의 릴레이, 타이머 및 카운터 등의 기능을 대규모 집적 회로 및 트랜지스터 등의 반도체 소자로 대체시켜, 기본적인 시퀀스 제어 기능에 수치 연산 기능을 추가하여 프로그램 제어가 가능하도록 한 자율성이 높은 제어 장치이다.PLC (Programmable Logic Controller) replaces the conventional functions of relays, timers and counters in the control panel with semiconductor devices such as large-scale integrated circuits and transistors. It is a control device with high autonomy.
미국 전기 공업회 규격(NEMA: National Electrical Manufactrurers Association)에서는 PLC를 "디지털 또는 아날로그 입출력 모듈을 통하여 로직, 시퀀싱, 타이밍, 카운팅 및 연산과 같은 특수한 기능을 수행하기 위하여 프로그램 가능한 메모리를 사용하고 여러 종류의 기계나 프로세서를 제어하는 디지털 동작의 전자 장치"로 정의하고 있다.The National Electrical Manufacturers Association (NEMA) defines a PLC as “using a programmable memory to perform special functions such as logic, sequencing, timing, counting, and arithmetic through digital or analog input/output modules, It is defined as "a digitally operated electronic device that controls a processor".
설비의 자동화와 고능률화의 요구에 따라 PLC의 적용 범위는 점차 확대 되고 있다. 특히 공장 자동화와 FMS(Flexible Manufacturing System)에 따른 PLC 의 요구는 과거 중규모 이상의 릴레이 제어반 대체 효과에서 현재 고기능화, 고속화의 추세로 소규모 공작 기계에서 대규모 시스템 설비에 이르기까지 적용되고 있다.The application range of PLC is gradually expanding according to the demand for automation and high efficiency of equipment. In particular, the PLC's demands following factory automation and FMS (Flexible Manufacturing System) are being applied from small-scale machine tools to large-scale system facilities with the current trend of high-functionality and high-speed, from the effect of replacing medium-sized or larger relay control panels in the past.
최근 운영 체제의 발전과 CPU의 컴퓨팅 파워가 증가함에 따라 PLC의 프로세서의 유휴 시간도 증가하고 있는 실정이다. 이에 본 발명은 사용자가 백업 시간을 별도로 지정하지 않더라도 운영 체제의 스케쥴러를 이용하여 프로세서의 유휴 시간에 운영 체제가 제공하는 파일 시스템에서 사용자 데이터의 변경을 감지하여 자동으로 사용자 데이터를 파일로 백업을 수행함으로써 백업 시간을 최소화하고 백업 파일을 안정적으로 관리할 수 있는 방안을 제안한다.With the recent development of the operating system and the increase in the computing power of the CPU, the idle time of the processor of the PLC is also increasing. Accordingly, the present invention automatically backs up user data to a file by detecting a change in user data in the file system provided by the operating system during idle time of the processor using the scheduler of the operating system, even if the user does not specify a backup time separately. By doing this, we propose a method to minimize the backup time and manage the backup file stably.
여기서, 운영 체제가 리눅스인 경우 오픈 소스인 cron 데몬과, rsync 기능을 이용하여 더욱 효과적이고 안정적으로 본 발명을 구현할 수 있으며, 리눅스가 아닌 운영 체제인 경우 시스템 프로그램(C code)으로 구현이 가능하다. Here, when the operating system is Linux, the present invention can be implemented more effectively and stably by using the open source cron daemon and the rsync function, and in the case of an operating system other than Linux, it can be implemented as a system program (C code) .
도 2는 본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 장치의 개략적인 블록도이다.2 is a schematic block diagram of a user data file backup apparatus of a PLC according to an embodiment of the present invention.
본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 장치(100)는 PLC의 운영 체제에서 제공하는 파일 시스템을 이용해 사용자 데이터 파일을 백업하는 것을 특징으로 한다.The user data
도 2에 도시한 바와 같이, 본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 장치(100)는 파일 위치 등록부(110), 파일 변경 감지부(120) 및 백업 처리부(130)를 포함하여 구성될 수 있다. 그리고, 이들 각 구성들은 운영 체제에서 제공하는 파일 시스템을 이용하여 구현될 수 있다.As shown in FIG. 2 , the PLC user data
파일 위치 등록부(110)는 사용자 프로그램(10) 실행 시 사용자 데이터 파일의 위치를 백업 대상 파일 리스트에 등록한다. The file
여기서, 사용자 프로그램은 PLC를 제어하는 프로그램을 의미하며, 사용자에 의해 작성된다. PLC는 릴레이 시퀀스와 같은 접점이나 코일이 존재하지 않으며, 접점이나 코일을 연결하는 동작은 사용자 프로그램에 의해 소프트웨어적으로 처리된다. 즉, 사용자 프로그램은 PLC의 메모리에 저장되며, PLC는 저장된 사용자 프로그램을 순차적으로 읽어 그 내용에 따라 동작한다.Here, the user program means a program that controls the PLC, and is created by the user. PLC does not have contacts or coils such as relay sequences, and the operation of connecting contacts or coils is handled in software by a user program. That is, the user program is stored in the memory of the PLC, and the PLC sequentially reads the stored user program and operates according to the contents.
또한, 사용자 데이터는 운전 정보 및 환경 변수 설정 정보 등을 포함할 수 있다. 또한, 사용자 데이터 파일이란 사용자 프로그램에서 사용한 메모리 데이터의 덤프 파일을 의미하며 이는 단순히 메모리 영역에 저장된 데이터가 아닌 파일로 저장된 데이터를 의미한다.In addition, the user data may include driving information and environment variable setting information. In addition, the user data file means a dump file of memory data used in a user program, which means data stored as a file, not simply data stored in a memory area.
이러한 PLC의 모드에는 사용자 프로그램을 작성하는 프로그램모드와, 사용자가 작성한 프로그램을 실제 수행하는 런모드와, 사용자 프로그램의 실행을 일시 정지하는 일시정지모드와, 사용자가 프로그램을 디버그하기 위해 사용하는 디버그모드가 있다. 즉, PLC는 사용자가 프로그램모드에서 주변기기를 통하여 프로그램을 작성한 후, 런 모드로 전환하면 PLC는 입력부로부터 외부 입력을 받아 들이고 사용자가 작성한 프로그램에 따라 연산을 수행하며 그 결과를 데이터 영역에 저장한 후 외부로 출력할 데이터를 출력부를 통하여 출력하게 된다.These PLC modes include a program mode for creating a user program, a run mode for actually executing the program written by the user, a pause mode for temporarily stopping the execution of the user program, and a debug mode for the user to debug the program. there is That is, after the user writes a program through the peripheral device in the program mode, and then switches to the run mode, the PLC receives an external input from the input unit, performs an operation according to the program written by the user, and stores the result in the data area. The data to be output to the outside is output through the output unit.
파일 위치 등록부(110)는 사용자 데이터 파일의 절대 경로를 백업 대상 파일 리스트에 등록할 수 있다. 여기서, 절대 경로란 파일 시스템의 루트(root)로부터 시작해 명기된 파일의 경로를 의미한다.The file
파일 변경 감지부(120)는 백업 대상 파일 리스트를 확인하여 사용자 프로그램에 의한 사용자 데이터 파일의 변경 여부를 감지한다.The file change detection unit 120 detects whether the user data file is changed by the user program by checking the backup target file list.
여기서, 파일 변경 감지부(120)는 운영 체제의 스케쥴러(20)를 이용하여 프로세서의 유휴 시간에 사용자 데이터 파일의 변경 여부를 감지할 수 있다. 이와 달리, 사용자가 지정한 시간에 주기적으로 사용자 데이터 파일의 변경 여부를 감지할 수도 있다.Here, the file change detection unit 120 may detect whether the user data file is changed during idle time of the processor using the
파일 변경 감지부(120)는 사용자 데이터 파일의 타임 스탬프(파일의 생성 또는 수정 시간)가 변경되면 사용자 데이터 파일이 변경된 것으로 판단할 수 있다.The file change detection unit 120 may determine that the user data file has been changed when the time stamp (file creation or modification time) of the user data file is changed.
예를 들어, 운영 체제가 리눅스인 경우 find 명령어를 통해 사용자 데이터 파일의 변경을 감지할 수 있다. find 명령어를 이용한 예제는 다음과 같다.For example, if your operating system is Linux, you can use the find command to detect changes in user data files. An example using the find command is as follows.
<예제 1><Example 1>
root@uz3eg_iocc_2019_1:~# touch a b → a 파일 및 b 파일 생성root@uz3eg_iocc_2019_1:~# touch a b → Create file a and file b
root@uz3eg_iocc_2019_1:~# find . -newer a → 파일 리스트에서 a 파일보다 변경 시간이 최신인 파일 찾기(a 파일 및 b 파일은 동일 시간에 생성되어 디스플레이 되지 않음)root@uz3eg_iocc_2019_1:~# find . -newer a → Find files with a newer change time than file a in the file list (file a and file b are not displayed because they were created at the same time)
root@uz3eg_iocc_2019_1:~# touch b → b 파일 시간 변경root@uz3eg_iocc_2019_1:~# touch b → change b file time
root@uz3eg_iocc_2019_1:~# find . -newer a → 파일 리스트에서 a 파일보다 변경 시간이 최신인 파일 찾기(b가 디스플레이 됨)root@uz3eg_iocc_2019_1:~# find . -newer a → Find files with a newer change time than file a in the file list (b is displayed)
./b./b
백업 처리부(130)는 사용자 데이터 파일이 변경되면 변경 전 사용자 데이터 파일을 백업 파일 저장부(30)에 저장한다.When the user data file is changed, the
백업 처리부(130)는 운영 체제의 스케쥴러(20)를 이용하여 프로세서의 유휴 시간에 변경 전 사용자 데이터 파일을 저장할 수 있다. 이와 달리, 사용자가 지정한 시간에 주기적으로 사용자 데이터 파일을 저장할 수도 있다.The
백업 처리부(130)는 변경 전 사용자 데이터 파일을 외부 저장 장치와 동기화하거나 외부 저장 장치에 복사할 수 있다.The
도 3은 본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 방법을 설명하기 위한 도면이다.3 is a diagram for explaining a user data file backup method of a PLC according to an embodiment of the present invention.
도 3을 참조하면, 본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 방법은 프로세서의 유휴 시간에 사용자 데이터 파일을 PLC 측의 외부 저장 장치(210) 및 외부의 네트워크 저장 장치(220)에 자동으로 백업될 수 있다.Referring to FIG. 3 , the user data file backup method of the PLC according to the embodiment of the present invention automatically stores the user data file in the PLC side
여기서, 운영 체제가 리눅스인 경우 rsync 명령어를 이용해 백업할 수 있다. rsync 명령어를 이용한 예제는 다음과 같다.Here, if the operating system is Linux, the backup can be performed using the rsync command. An example using the rsync command is as follows.
<예제 2><Example 2>
root@uz3eg_iocc_2019_1:~# mkdir /home/backup → /home/backup 디렉토리 생성root@uz3eg_iocc_2019_1:~# mkdir /home/backup → Create /home/backup directory
root@uz3eg_iocc_2019_1:~# ls -l /home/backup → /home/backup 디렉토리 파일 정보 출력(파일이 없음을 확인)root@uz3eg_iocc_2019_1:~# ls -l /home/backup → /home/backup directory file information output (check that the file does not exist)
total 0total 0
root@uz3eg_iocc_2019_1:~# ls -l → 현재 디렉토리 파일 정보 출력root@uz3eg_iocc_2019_1:~# ls -l → Display current directory file information
total 0total 0
-rw-r--r-- 1 root root 0 Aug 19 00:39 a-rw-r--r-- 1 root root 0 Aug 19 00:39 a
-rw-r--r-- 1 root root 0 Aug 19 00:39 b-rw-r--r-- 1 root root 0 Aug 19 00:39 b
root@uz3eg_iocc_2019_1:~# rsync -azvh * /home/backup → 현재 디렉토리를 /home/backup 디렉토리로 동기화root@uz3eg_iocc_2019_1:~# rsync -azvh * /home/backup → Sync the current directory to the /home/backup directory
root@uz3eg_iocc_2019_1:~# ls -l /home/backup → /home/backup 디렉토리 파일 정보 출력(현재 디렉토리와 동기화 되었음을 확인)root@uz3eg_iocc_2019_1:~# ls -l /home/backup → /home/backup directory file information output (confirm that it is synchronized with the current directory)
total 0total 0
-rw-r--r-- 1 root root 0 Aug 19 00:39 a-rw-r--r-- 1 root root 0 Aug 19 00:39 a
-rw-r--r-- 1 root root 0 Aug 19 00:39 b-rw-r--r-- 1 root root 0 Aug 19 00:39 b
root@uz3eg_iocc_2019_1:~# touch b → b 파일을 최신 시간으로 변경root@uz3eg_iocc_2019_1:~# touch b → change b file to the latest time
root@uz3eg_iocc_2019_1:~# ls -l → 현재 디렉토리 파일 정보 출력(b 파일 시간 변경 확인)root@uz3eg_iocc_2019_1:~# ls -l → Output current directory file information (check b file time change)
total 0total 0
-rw-r--r-- 1 root root 0 Aug 19 00:39 a-rw-r--r-- 1 root root 0 Aug 19 00:39 a
-rw-r--r-- 1 root root 0 Aug 19 00:46 b-rw-r--r-- 1 root root 0 Aug 19 00:46 b
root@uz3eg_iocc_2019_1:~# rsync -azvh * /home/backup → 현재 디렉토리를 /home/backup 디렉토리로 동기화root@uz3eg_iocc_2019_1:~# rsync -azvh * /home/backup → Sync the current directory to the /home/backup directory
sending incremental file listsending incremental file list
bb
sent 95 bytes received 35 bytes 260.00 bytes/secsent 95 bytes received 35 bytes 260.00 bytes/sec
total size is 0 speedup is 0.00total size is 0 speedup is 0.00
root@uz3eg_iocc_2019_1:~# ls -l /home/backup → b만 동기화가 된 것 확인root@uz3eg_iocc_2019_1:~# ls -l /home/backup → Check that only b is synchronized
total 0total 0
-rw-r--r-- 1 root root 0 Aug 19 00:39 a-rw-r--r-- 1 root root 0 Aug 19 00:39 a
-rw-r--r-- 1 root root 0 Aug 19 00:46 b-rw-r--r-- 1 root root 0 Aug 19 00:46 b
이와 더불어, PADT(Programmable And Debugging Tool)(또는 HMI(Human Machine Interface))(2)에서 사용자에 의한 백업 요청 또는 정전 등의 비정상 종료에 의한 백업 요청에 의해, 또는 PLC(1)가 비정상 종료되는 경우 PLC(1) 내부의 메모리(3)에 저장된 사용자 데이터를 PADT(또는 HMI)(2)의 내부 저장 장치(4)에 파일이 아닌 이미지 방식으로 백업될 수 있다.In addition, when the programmable and debugging tool (PADT) (or human machine interface (HMI)) (2) requests a backup by the user or a backup request due to abnormal termination such as power failure, or the PLC (1) is abnormally terminated In this case, the user data stored in the
본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 방법은 운영 체제가 리눅스인 경우 cron 데몬을 이용하여 자동 백업 프로그램으로 구현이 가능하며, 다른 운영 체제인 경우 앞서 언급한 find, rsync, cron 데몬 등이 모두 오픈 소스로 구현된 명령어이므로 C code program으로 유사하게 작성이 가능하다.The PLC user data file backup method according to the embodiment of the present invention can be implemented as an automatic backup program using the cron daemon when the operating system is Linux, and in the case of other operating systems, the aforementioned find, rsync, cron daemons, etc. Since all of these commands are implemented as open source, it can be similarly written as a C code program.
도 4는 본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 방법의 흐름도이다.4 is a flowchart of a user data file backup method of a PLC according to an embodiment of the present invention.
본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 방법은, 백업 파일 리스트 등록 단계(S10), 프로세스 유휴 시간 확인 단계(S20), 사용자 데이터 파일 변경 확인 단계(S30) 및 사용자 데이터 파일 백업 단계(S40)을 포함하여 구성될 수 있다.The PLC user data file backup method according to an embodiment of the present invention includes a backup file list registration step (S10), a process idle time check step (S20), a user data file change check step (S30), and a user data file backup step ( S40) may be included.
먼저, 사용자 프로그램(10) 실행 시 사용자 데이터 파일의 위치를 백업 대상 파일 리스트에 등록한다(S10). 이 때, 사용자 데이터 파일의 위치는 사용자 데이터 파일의 절대 경로를 포함할 수 있다.First, when the
다음, 운영 체제의 스케쥴러(20)를 이용하여 프로세서의 유휴 시간인지 확인한다(S20).Next, it is checked whether the processor is idle using the
다음, 프로세서의 유휴 시간으로 확인되면 백업 대상 파일 리스트를 확인하여 사용자 프로그램에 의한 사용자 데이터 파일의 변경 여부를 확인한다(S30). 이 때, 사용자 데이터 파일의 타임 스탬프(파일의 생성 또는 수정 시간)가 변경되면 사용자 데이터 파일의 변경으로 판단할 수 있다.Next, if it is confirmed as the idle time of the processor, it is checked whether the user data file is changed by the user program by checking the backup target file list (S30). At this time, if the time stamp (creation or modification time of the file) of the user data file is changed, it may be determined that the user data file is changed.
다음, 사용자 데이터 파일이 변경되면 변경 전 사용자 데이터 파일을 백업 파일 저장부(30)에 저장한다(S40). 이 때, 변경 전 사용자 데이터 파일을 외부 저장 장치와 동기화하거나 외부 저장 장치에 복사할 수 있다.Next, when the user data file is changed, the user data file before the change is stored in the backup file storage unit 30 (S40). In this case, the user data file before the change may be synchronized with the external storage device or copied to the external storage device.
이와 같이, 본 발명의 실시예에 따른 PLC의 사용자 데이터 파일 백업 방법은, PLC의 구성 요소인 프로세서의 유휴 시간에 사용자 데이터 파일에 대한 백업을 주기적으로 수행하고, PLC의 구성 요소인 외부 저장 장치 또는 네트워크 저장 위치에 최신 사용자 데이터 파일로 주기적으로 갱신함으로써, 신속하고 안정적인 백업을 수행할 수 있다.As such, in the method for backing up user data files of PLC according to an embodiment of the present invention, the user data files are periodically backed up during the idle time of the processor, which is a component of the PLC, and an external storage device or an external storage device that is a component of the PLC. By periodically updating the network storage location with the latest user data files, you can perform fast and reliable backups.
한편, 컴퓨팅 파워가 부족한 CPU를 사용할 때에는 따로 백업을 위한 사용자 프로그램을 구성할 수 있도록 명령어를 제공하여 사용자가 해당 기능의 사용 여부를 결정하게 함으로써 동일한 효과를 나타낼 수 있도록 유도할 수도 있다.On the other hand, when a CPU with insufficient computing power is used, a command to configure a user program for backup is provided so that the user can decide whether to use the corresponding function, thereby leading to the same effect.
이상의 상세한 설명은 본 발명을 예시하는 것이다. 또한 전술한 내용은 본 발명의 바람직한 실시 형태를 나타내고 설명하는 것에 불과하며, 본 발명은 다양한 다른 조합, 변경 및 환경에서 사용할 수 있다. 즉, 본 명세서에 개시된 발명의 개념의 범위, 저술한 개시 내용과 균등한 범위 및/또는 당업계의 기술 또는 지식의 범위 내에서 변경 또는 수정이 가능하다. 전술한 실시예들은 본 발명을 실시하는데 있어 최선의 상태를 설명하기 위한 것이며, 본 발명과 같은 다른 발명을 이용하는데 당업계에 알려진 다른 상태로의 실시, 그리고 발명의 구체적인 적용 분야 및 용도에서 요구되는 다양한 변경도 가능하다. 따라서 이상의 발명의 상세한 설명은 개시된 실시 상태로 본 발명을 제한하려는 의도가 아니다. 또한 첨부된 청구범위는 다른 실시 상태도 포함하는 것으로 해석되어야 한다.The above detailed description is illustrative of the present invention. Further, the foregoing is merely illustrative of preferred embodiments of the present invention, and the present invention can be used in various other combinations, modifications, and environments. That is, changes or modifications are possible within the scope of the concept of the invention disclosed herein, the scope equivalent to the written disclosure, and/or within the scope of skill or knowledge in the art. The above-described embodiments are for illustrating the best state for carrying out the present invention, and the implementation in other states known in the art for using other inventions such as the present invention, and the specific application fields and uses of the present invention. Various changes are also possible. Accordingly, the detailed description of the present invention is not intended to limit the present invention to the disclosed embodiments. Also, the appended claims should be construed as including other embodiments.
10: 사용자 프로그램
20: 스케쥴러
30: 백업 파일 저장부
110: 파일 위치 등록부
120: 파일 변경 감지부
130: 백업 처리부10: User program
20: Scheduler
30: backup file storage
110: file location register
120: file change detection unit
130: backup processing unit
Claims (7)
사용자 프로그램 실행 시 사용자 데이터 파일의 위치를 백업 대상 파일 리스트에 등록하는 파일 위치 등록부;
상기 백업 대상 파일 리스트를 확인하여 상기 사용자 데이터 파일의 변경 여부를 감지하는 파일 변경 감지부; 및
상기 사용자 데이터 파일이 변경되면 변경 전 상기 사용자 데이터 파일을 백업 파일 저장부에 저장하는 백업 처리부;
를 포함하는 PLC의 사용자 데이터 파일 백업 장치.
A device that backs up user data files using the file system provided by the PLC's operating system.
a file location registration unit that registers the location of the user data file in the backup target file list when the user program is executed;
a file change detection unit for detecting whether the user data file has been changed by checking the backup target file list; and
a backup processing unit for storing the user data file before the change in a backup file storage unit when the user data file is changed;
PLC user data file backup device including
상기 파일 변경 감지부는
상기 운영 체제의 스케쥴러를 이용하여 프로세서의 유휴 시간에 상기 사용자 데이터 파일의 변경 여부를 감지하는
PLC의 사용자 데이터 파일 백업 장치.
The method of claim 1,
The file change detection unit
Detecting whether the user data file is changed during idle time of the processor using the scheduler of the operating system
User data file backup device in PLC.
상기 백업 처리부는
상기 운영 체제의 스케쥴러를 이용하여 프로세서의 유휴 시간에 상기 변경 전 사용자 데이터 파일을 저장하는
PLC의 사용자 데이터 파일 백업 장치.
The method of claim 1,
The backup processing unit
Using the scheduler of the operating system to store the user data file before the change in the idle time of the processor
User data file backup device in PLC.
상기 파일 변경 감지부는
상기 사용자 데이터 파일의 타임 스탬프가 변경되면 상기 사용자 데이터 파일의 변경으로 판단하는
PLC의 사용자 데이터 파일 백업 장치.
The method of claim 1,
The file change detection unit
When the timestamp of the user data file is changed, it is determined that the user data file is changed.
User data file backup device in PLC.
상기 파일 위치 등록부는
상기 사용자 데이터 파일의 절대 경로를 상기 백업 대상 파일 리스트에 등록하는
PLC의 사용자 데이터 파일 백업 장치.
The method of claim 1,
The file location register
Registering the absolute path of the user data file in the backup target file list
User data file backup device in PLC.
상기 백업 처리부는
상기 변경 전 사용자 데이터 파일을 외부 저장 장치와 동기화하거나 상기 외부 저장 장치에 복사하는
PLC의 사용자 데이터 파일 백업 장치.
The method of claim 1,
The backup processing unit
Synchronizing the user data file before the change with an external storage device or copying it to the external storage device
User data file backup device in PLC.
사용자 프로그램 실행 시 사용자 데이터 파일의 위치를 백업 대상 파일 리스트에 등록하는 단계;
상기 운영 체제의 스케쥴러를 이용하여 프로세서의 유휴 시간인지 확인하는 단계;
상기 프로세서의 유휴 시간으로 확인되면 상기 백업 대상 파일 리스트를 확인하여 상기 사용자 데이터 파일의 변경 여부를 감지하는 단계; 및
상기 사용자 데이터 파일이 변경되면 변경 전 상기 사용자 데이터 파일을 백업 파일 저장부에 저장하는 단계
를 포함하는 PLC의 사용자 데이터 파일 백업 방법.A method of backing up user data files using a file system provided by an operating system of a PLC, comprising:
registering the location of the user data file in the backup target file list when the user program is executed;
checking whether the processor is idle using a scheduler of the operating system;
detecting whether the user data file has been changed by checking the backup target file list when it is confirmed as the idle time of the processor; and
When the user data file is changed, storing the user data file before the change in a backup file storage unit
PLC user data file backup method including.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190160683A KR20210070656A (en) | 2019-12-05 | 2019-12-05 | Apparatus for back up user data file of plc and method of the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190160683A KR20210070656A (en) | 2019-12-05 | 2019-12-05 | Apparatus for back up user data file of plc and method of the same |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210070656A true KR20210070656A (en) | 2021-06-15 |
Family
ID=76412297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190160683A KR20210070656A (en) | 2019-12-05 | 2019-12-05 | Apparatus for back up user data file of plc and method of the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20210070656A (en) |
-
2019
- 2019-12-05 KR KR1020190160683A patent/KR20210070656A/en active Search and Examination
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3059647B1 (en) | Techniques for improving industrial control systems | |
US10025286B2 (en) | Simulation system, programmable controller, simulation device, and engineering tool | |
JP4788912B2 (en) | PLC | |
CN110663006B (en) | Method for performing failover of programmable logic controller and controlling physical system | |
US9696692B2 (en) | Industrial automation control system | |
CN109070345B (en) | Robot controller system and method | |
JP6971016B2 (en) | Controls, control methods and programs | |
CN107885305B (en) | Control device, control method, and recording medium | |
US7168075B1 (en) | Automation device and updating method | |
CN115616973B (en) | Implementation method, system, equipment and medium for breakpoint debugging function | |
CN109582506B (en) | Touch screen failure recovery method and device, host equipment and touch system | |
WO2013145940A1 (en) | Information processing device, information processing method, and program | |
EP3540593A2 (en) | Program development assist system, program development assist method, and program development assist program | |
CN111095138A (en) | Control device, control method for control device, information processing program, and recording medium | |
KR20210070656A (en) | Apparatus for back up user data file of plc and method of the same | |
US7657895B2 (en) | Real time-capable control system having an sps application under a non-real time-capable operating system | |
KR101653925B1 (en) | Engineering apparatus, engineering system, and download processing method | |
JP5365875B2 (en) | Industrial controller | |
US20020082721A1 (en) | Programming of cyclical machines | |
US20020082718A1 (en) | Method of operating an industrial controller | |
US7805716B2 (en) | Method for executing a first software program, developed for a stored-program controller, on a computer | |
JP2004280305A (en) | Device for programmable controller, programmable controller, and method for transferring data | |
EP3633471B1 (en) | Program development support device, program development support system, program development support method, and program development support program | |
JPH01142801A (en) | Programmable controller backup device | |
CN117873582A (en) | PLC program heat transfer method, hot standby implementation method and device and electronic equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination |