KR101947487B1 - monitoring control device for automatic data recovery - Google Patents

monitoring control device for automatic data recovery Download PDF

Info

Publication number
KR101947487B1
KR101947487B1 KR1020180042477A KR20180042477A KR101947487B1 KR 101947487 B1 KR101947487 B1 KR 101947487B1 KR 1020180042477 A KR1020180042477 A KR 1020180042477A KR 20180042477 A KR20180042477 A KR 20180042477A KR 101947487 B1 KR101947487 B1 KR 101947487B1
Authority
KR
South Korea
Prior art keywords
recovery
cpu
mcu
boot
kernel
Prior art date
Application number
KR1020180042477A
Other languages
Korean (ko)
Inventor
권영복
허세준
김홍우
Original Assignee
주식회사 케이디티
권영복
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이디티, 권영복 filed Critical 주식회사 케이디티
Priority to KR1020180042477A priority Critical patent/KR101947487B1/en
Application granted granted Critical
Publication of KR101947487B1 publication Critical patent/KR101947487B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The present invention relates to a monitoring control device with automatic data recovery, capable of making maintenance convenient by including a memory card storing a recovery program automatically executed when an error is detected from data. The monitoring control device with automatic data recovery comprises: a CPU sequentially botting a boot loader, a kernel, and an application; and an MCU receiving and confirming an operation signal from the CPU when the application is booted. The MCU determines whether the application is operated depending on whether the operation signal is received from the CPU, functions as a watchdog when receiving the operation signal from the CPU or resets itself through a recovery count when not being able to receive the operation signal, controls the boot loader to make the boot loader operate in a recovery boot mode by requesting the CPU for a recovery mode when the recovery count exceeds a predetermined number, and executes image writing on kernel and file systems by operating a memory card storing a recovery data program during the operation in the recovery boot mode.

Description

데이터 자동복구가 가능한 감시 제어 장치{monitoring control device for automatic data recovery}[0001] The present invention relates to a monitoring control device for automatic data recovery,

본 발명은 데이터 자동복구가 가능한 감시 제어 장치에 관한 것으로서, 보다 상세하게는 복구용 프로그램이 저장된 메모리 카드를 탑재하여 데이터에 이상이 발생할 경우에 자동으로 복구 프로그램을 동작하도록 한 데이터 자동복구가 가능한 감시 제어 장치에 관한 것이다.The present invention relates to a surveillance controller capable of automatically restoring data, and more particularly, to a surveillance controller capable of automatically restoring data when a memory card storing a recovery program is mounted and an abnormality occurs in data, And a control device.

각종 산업 설비를 관리하기 위해 현장에 설치된 각종 감시 제어 장치를 실행하기 위한 OS(operating system)의 데이터는 서지나 습기 및 노이즈 등에 의한 손상에 항상 노출되어 있다. 전압의 과전류, 쇼트(short), 트립(trip), 사고(accidents), 인간의 실수, 바이러스 침입, 하드웨어 고장 및 전력 문제는 감시 제어 장치에 저장된 정보의 손실 또는 오동작에 대한 원인 중 일부에 불과하다.In order to manage various industrial facilities, data of an operating system (OS) for executing various monitoring control devices installed in the field is always exposed to damage by surge, moisture, noise, and the like. Voltage overcurrent, shorts, trips, accidents, human error, virus invasion, hardware failure and power problems are just a few of the causes of loss or malfunction of information stored in the supervisory control .

그러나 상기와 같이 종래 기술에 의한 감시 제어 장치는 주변의 낙뢰 또는 임펄스성 노이즈 등 일회성 원인에 의해 민감하게 작동되어 감시 제어 장치의 운용 효율을 떨어뜨리는 일이 비일비재하였다.However, as described above, the surveillance control apparatus according to the related art is operated sensitively due to a one-time cause such as lightning strike or impulsive noise in the periphery, thereby reducing the operation efficiency of the surveillance control apparatus.

또한, 합선이나 일시적인 누전 및 전원선을 타고 들어오는 서지로 인하여 감시 제어 장치의 내부에 설치된 OS의 에러나 고장으로 인해 동작 불능 상태에 빠질 경우, OS의 데이터를 복구시키기 위해 A/S 요원이 사고 발생했을 때마다 현장에 직접 출동하여 일일이 데이터를 복구함에 따른, 즉 인위적으로 감시 제어 장치를 수작업으로 복구시켜야 함에 따른 관리인력의 손실을 초래하였다.In addition, when an operating system installed in the monitor and control unit is out of operation due to a short circuit, a temporary short circuit, or a surge entering the power line, an A / S agent The data was directly recovered to the site every time the data was restored, resulting in the loss of management personnel due to the manual restoration of the monitoring control device by artificially.

이에 따라 원거리 상의 수많은 무인 시설물의 감시 등에 따른 감시 제어 장치를 유지보수하는데 많은 어려움이 따를 뿐 아니라 상기의 유지보수에 많은 인적자원과 유지보수경비가 소요되는 매우 비경제적인 문제점이 있었다.As a result, there are many difficulties in maintaining and monitoring the monitoring and control apparatuses due to the monitoring of a large number of unmanned facilities on a long distance, and there is a very uneconomical problem in that the maintenance and repair require a lot of human resources and maintenance expenses.

본 발명은 상기와 같은 문제를 개선하기 위하여 안출된 것으로, 복구용 프로그램이 저장된 메모리 카드를 탑재하여 데이터에 이상이 발생할 경우에 자동으로 복구 프로그램을 실행하여 유지 관리가 편리하도록 한 데이터 자동복구가 가능한 감시 제어 장치를 제공하는데 그 목적이 있다.The present invention has been conceived in order to solve the above problems, and it is an object of the present invention to provide a memory card in which a memory card storing a recovery program is mounted and automatically executes a recovery program when data abnormality occurs, A monitoring control device is provided.

상기와 같은 목적을 달성하기 위한 본 발명에 의한 데이터 자동복구가 가능한 감시 제어 장치는 부트 로더, 커널, 어플리케이션을 순차적으로 부팅하는 CPU와, 상기 어플리케이션이 부팅되면 상기 CPU에서 동작신호를 전달받아 확인하는 MCU을 포함하여 이루어진 데이터 자동복구가 가능한 감시 제어 장치이고, 상기 MCU는 상기 CPU에서 전달된 동작신호의 수신 여부에 따라 상기 어플리케이션의 동작 유무를 판단하고, 상기 CPU에서 동작신호를 수신하면 Watchdog로의 역할을 수행하며 동작신호를 받지 못한 경우에 리커버리 카운트를 통해 리셋하고, 상기 리커버리 카운트가 일정 횟수 이상이면 상기 CPU에 리커버리 모드를 요청하여 상기 부트 로더에서 리커버리 부트 모드로 동작하도록 제어하며, 상기 리커버리 부트 모드로 동작시에 복구 데이터 프로그램이 내장된 메모리 카드를 동작하여 커널 및 파일 시스템 이미지 라이트 작업을 수행하는 것을 특징으로 한다.According to an aspect of the present invention, there is provided a monitoring and control apparatus capable of automatically recovering data, including: a CPU for sequentially booting a boot loader, a kernel, and an application; The MCU determines whether or not the application is operated according to whether the operation signal transmitted from the CPU is received or not. When the operation signal is received from the CPU, the MCU performs a role as a watchdog And if the recovery count is equal to or greater than a predetermined number of times, requests a recovery mode to the CPU and controls the boot loader to operate in a recovery boot mode. In the recovery boot mode, The recovery data program And the built-in memory card is operated to perform a kernel and file system image writing operation.

본 발명의 실시예에 의한 데이터 자동복구가 가능한 감시 제어 장치는 다음과 같은 효과가 있다.The monitoring and control apparatus capable of automatically recovering data according to the embodiment of the present invention has the following effects.

즉, 복구용 프로그램이 저장된 메모리 카드를 탑재하여 정상적으로 데이터가 실행되지 않을 경우에 리셋 동작을 카운트하여 일정 횟수에 메모리 카드의 복구 프로그램을 실행하여 데이터를 복구함으로써 유지 관리가 편리함과 더불어 유지 관리비를 줄일 수 있다.That is, when the memory card storing the recovery program is loaded and the data is not normally executed, the reset operation is counted and the memory card recovery program is executed a predetermined number of times to recover the data, thereby reducing the maintenance cost .

도 1은 본 발명에 의한 데이터 자동복구가 가능한 감시 제어 장치의 하드웨어(핀 구조)를 나타낸 구성도
도 2는 본 발명에 의한 데이터 자동복구가 가능한 감시 제어 장치의 동작을 설명하기 위한 도면
도 3은 도 2의 MCU 동작을 설명하기 위한 순서도
도 4는 도 2의 CPU 동작을 설명하기 위한 순서도
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing a hardware (pin structure) of a supervisory control apparatus capable of automatic data restoration according to the present invention; FIG.
2 is a view for explaining the operation of the monitoring and controlling apparatus capable of automatically recovering data according to the present invention;
FIG. 3 is a flowchart for explaining the MCU operation of FIG.
Fig. 4 is a flowchart for explaining the CPU operation of Fig. 2

이하, 본 발명의 바람직한 실시예를 첨부한 도면에 의거하여 상세하게 설명하면 다음과 같다. 이에 앞서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory only and are not restrictive of the invention, It should be understood that various equivalents and modifications may be present.

본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 동일 또는 유사한 구성요소에 대해서는 동일한 참조 부호를 붙이도록 한다.In order to clearly illustrate the present invention, parts not related to the description are omitted, and the same or similar components are denoted by the same reference numerals throughout the specification.

도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도면에 도시된 바에 한정되지 않으며, 여러 부분 및 영역을 명확하게 표현하기 위하여 두께를 확대하여 나타내었다.It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory and are intended to provide further explanation of the invention as claimed.

그리고 명세서 전체에서, 어떤 부분이 어떤 구성요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.And throughout the specification, when an element is referred to as " comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise.

또한, 명세서에 기재된 “...부”, “...부재” 등의 용어는 적어도 하나의 기능이나 동작을 하는 포괄적인 구성의 단위를 의미한다.Also, the terms " part, " " absence, " and the like in the specification mean a unit of a comprehensive constitution that performs at least one function or operation.

도 1은 본 발명에 의한 데이터 자동복구가 가능한 감시 제어 장치의 하드웨어(핀 구조)를 나타낸 구성도이고, 도 2는 본 발명에 의한 데이터 자동복구가 가능한 감시 제어 장치의 동작을 설명하기 위한 도면이다.FIG. 1 is a block diagram showing hardware (pin structure) of a monitoring control device capable of automatic data restoration according to the present invention, and FIG. 2 is a view for explaining the operation of a monitoring control device capable of automatic data restoration according to the present invention .

본 발명에 의한 데이터 자동복구가 가능한 감시 제어 장치는 도 1 및 도 2에 도시된 바와 같이, OS(operating system)의 정상 부팅을 모니터링하기 위해 슬라이드 스위치(300)의 조작에 의해 전원이 인가되면 대기상태로 존재하는 MCU(200)와, 부트 로더(110), 커널(120), 어플리케이션(130)을 순차적으로 부팅하고 상기 어플리케이션(130)이 부팅되면 상기 MCU(200)에 동작신호인 GPIO_WDT 및 MICOM_WATCHDOG 신호를 출력하는 CPU(100)를 포함한다.As shown in FIGS. 1 and 2, when the power is applied by the operation of the slide switch 300 to monitor normal boot of an operating system (OS) When the application 130 is booted and the boot loader 110, the kernel 120 and the application 130 are sequentially booted, the MCU 200 receives the operation signals GPIO_WDT and MICOM_WATCHDOG And a CPU 100 for outputting a signal.

여기서, 상기 MCU(200)는 정상 부팅 및 실행이 이루어지지 않을 경우 시스템 전체를 리셋(reset)하고 해당 리셋 수를 카운트하여 4회 이상 반복시에 부트 로더(110)에서 메모리 카드(150)에 저장된 커널과 파일 시스템 이미지 라이트(file system image write)를 실행하여 데이터를 복구하도록 지시한다.If the normal boot and execution are not performed, the MCU 200 resets the entire system, counts a corresponding reset number, and stores it in the boot loader 110 in the memory card 150 It instructs the kernel and file system image write to recover the data.

또한, 상기 MCU(200)는 핀이 High일 경우 Watchdog Disable, Low일 경우 Watchdog enable를 처리하고, Low에서 High일 때 리커버리 부트 모드를 종료하며, 리커버리 부트 모드(140)에 진입한 상태에서 Low에서 High로 변경될 경우 리커버리 부트 모드(140)가 종료되었음을 알려준다.The MCU 200 processes Watchdog when the pin is High and Watchdog is enabled when the pin is High and terminates the recovery boot mode when the pin is High to Low. When the MCU 200 enters the recovery boot mode 140, High indicates that the recovery boot mode 140 has been terminated.

상기 CPU(100)에서는 핀을 Default로 Low로 설정하고 리커버리 부트 모드(140)에 진입한 상태에서 리커버리 부트 모드(140)가 종료가 될 경우 해당 핀을 High로 변경하고 1초 뒤에 리셋을 진행한다.When the recovery boot mode 140 is terminated in the state where the pin is set to the low level as the default and the recovery boot mode 140 is entered in the recovery boot mode 140, the CPU 100 changes the corresponding pin to High and performs the reset after 1 second .

상기 MICOM_WATCHDOG 신호는 정상 부팅이 완료가 된 후 MCU(200)에서 정상 유무 확인을 위해 CPU(100)가 MCU(200)에게 보내는 신호이다.The MICOM_WATCHDOG signal is a signal sent from the CPU 100 to the MCU 200 to check whether the MICOM_WATCHDOG signal is normal in the MCU 200 after the normal boot is completed.

상기 MCU(200)는 정상 부팅이 완료되고 요구사항에 따라 구형파를 동작시켜야 하는데, 상기 MCU(200)에서는 해당 구형파를 통하여 CPU(100)가 정상 부팅이 완료되었는지 아닌지 확인할 수 있다. 상기 MCU(200)는 부팅이 시작되면서 1분동안 해당 핀을 확인하고 구형파가 동작하지 않을 경우 리셋과 함께 리셋 카운트를 카운팅한다.The MCU 200 is required to perform normal booting and operate a square wave according to the requirements. In the MCU 200, the CPU 100 can check whether or not the normal booting has been completed through the corresponding square wave. The MCU 200 checks the corresponding pin for one minute while the booting is started and counts the reset count together with the reset when the square wave does not operate.

상기 MCU(200)가 CPU(100)에게 정상 동작하고 있음을 알리는 신호로 MICOM_INT를 출력하는데, 상기 MICOM_INT는 비정상 부팅으로 4회 리셋 반복시 CPU(100)에게 리커버리 모드를 요청하기 위해 발생하는 신호이다.The MICOM_INT is a signal generated to request the CPU 100 to request the recovery mode in the case of four times of resetting due to an abnormal boot .

상기 MCU(200)에서 발생하는 구형파를 통해 상기 CPU(100)가 정상 동작하고 있음을 알 수가 있고, 상기 MCU(200)가 정상 동작 중에는 5초 주기의 구형파를 발생하여 상기 CPU(100)에서 MCU(200)의 동작 상태를 확인할 수 있다.It is possible to know that the CPU 100 is operating normally through a square wave generated by the MCU 200. When the MCU 200 operates normally, a square wave having a period of 5 seconds is generated, It is possible to confirm the operation state of the mobile terminal 200.

상기 MCU(200)는 Watchdog 리셋을 4회 이상 발생할 경우 해당 핀을 이용하여 리커버리 모드를 요청할 수 있는데, 리커버리 모드를 요청할 때 해당 핀을 Low로 25초 유지하고, GPIO_WDT에서 리커버리 부트 모드(140)가 종료될 때까지 High로 유지한다.When the MCU 200 requests the recovery mode, the MCU 200 keeps the corresponding pin low for 25 seconds, and the recovery boot mode 140 in the GPIO_WDT is set to " And remains high until termination.

상기 CPU(100)의 부트 로더(110)는 부팅시 부트 딜레이(bootdleay)가 끝난 후 해당 핀을 통해 4회 이상 리셋이 수행하였는지 확인한다. 만약, 4회 이상 리셋이 발생하여 오는 신호를 감지할 경우 부트 로더(110)에서 리커버리 부트 모드(140)에 진입하여 메모리 카드(150)를 통해 커널 및 파일 시스템 이미지 라이팅 작업을 시작하여 손상된 데이터를 복구한다.The boot loader 110 of the CPU 100 checks whether the reset has been performed four times or more through the corresponding pin after the boot delay is completed at boot time. If it detects a signal that occurs more than four times, the boot loader 110 enters the recovery boot mode 140 to start the kernel and file system image writing operations through the memory card 150, Restore.

상기 리커버리 부트 모드(140)에서 수행하는 절차가 완료되면 반드시 GPIO_WDT 핀을 High로 변경을 하고 20초 뒤에 리셋을 수행한다. 이때 20초를 설정하는 이유는 MOCOM_INT의 리커버리 요청 시간을 보장하기 위해서이다.When the procedure to be performed in the recovery boot mode 140 is completed, the GPIO_WDT pin is changed to High and a reset is performed after 20 seconds. The reason for setting 20 seconds is to guarantee the recovery request time of MOCOM_INT.

상기 CPU(100)를 리셋하기 위해 상기 MCU(200)에서 MCU_NRESET 신호가 출력된다. 상기 MICOM_WATCHDOG 핀에서 약속된 신호가 오지 않을 경우 MCU(200)는 해당 핀을 통해 CPU(100)의 리셋을 수행한다. 상기 CPU(100)의 리셋을 수행하면서 리셋 카운트를 MCU(200)에서 관리한다.In order to reset the CPU 100, the MCU 200 outputs an MCU_NRESET signal. If no signal is received from the MICOM_WATCHDOG pin, the MCU 200 performs a reset of the CPU 100 through the corresponding pin. The MCU 200 manages the reset count while performing the reset of the CPU 100. [

상기 슬라이드 스위치(300)에서 출력되는 Watchdog_Switch 신호는 Watchdog를 ON/OFF하는 신호이다. 이 핀은 물리적은 슬라이드 스위치(300)로 다루며 ON/OFF 상태에 따라 MCU(200)에서 Watchdog 수행을 결정한다.The Watchdog_Switch signal output from the slide switch 300 is a signal for turning on / off the watchdog. The pin is physically handled by the slide switch 300 and the MCU 200 determines the watchdog performance according to the ON / OFF state.

상기 GIPO_WDT 신호와 상관이 없이 해당 슬라이드 스위치(300)로 MCU(200)의 Watchdog 수행이 결정된다. 이때 상기 GIPO_WDT가 Low로 유지가 되더라도 슬라이드 스위치(300)가 OFF이면 MCU(200)에서 Watchdog를 수행하지 않는다.The watchdog performance of the MCU 200 is determined by the slide switch 300 regardless of the GIPO_WDT signal. At this time, even if the GIPO_WDT is held low, the MCU 200 does not perform a watchdog when the slide switch 300 is turned off.

즉, 본 발명에 의한 데이터 자동복구가 가능한 감시 제어 장치는 도 2에 도시된 바와 같이, 부트 로더(boot loader)(110), 커널(kernel)(120), 어플리케이션(application)(130)을 순차적으로 부팅을 수행하는 CPU(100)와, 상기 어플리케이션(130)이 부팅되면 상기 CPU(100)에서 동작신호를 전달받아 동작신호의 유무를 확인하는 MCU(200)을 포함하여 이루어지고, 상기 MCU(200)는 상기 CPU(100)에서 전달된 동작신호의 수신여부에 따라 상기 어플리케이션(130)의 동작 유무를 판단하고, 상기 CPU(100)에서 동작신호를 수신하면 Watchdog의 역할을 수행하며 동작신호를 받지 못한 경우에 리커버리 카운트를 통해 리셋하고, 상기 리커버리 카운트가 일정 횟수 이상이면 상기 CPU(100)에 리커버리 모드를 요청하여 상기 부트 로더(110)에서 부트 모드가 아닌 리커버리 부트 모드(140)로 동작하며, 상기 리커버리 부트 모드(140)로 동작시에 복구 데이터 프로그램이 내장된 메모리 카드(150)를 동작하여 복구용 커널 및 파일 시스템 이미지 라이트(file system image write)를 실행하여 손상된 데이터를 복구한다.That is, the monitoring control apparatus capable of automatically restoring data according to the present invention includes a boot loader 110, a kernel 120, and an application 130 sequentially And an MCU 200 for receiving an operation signal from the CPU 100 and checking the presence or absence of an operation signal when the application 130 is booted, 200 determines the operation of the application 130 according to whether the operation signal transmitted from the CPU 100 is received or not. When the operation signal is received from the CPU 100, the CPU 100 plays a role of a watchdog, If the recovery count is equal to or greater than a predetermined number, the recovery mode is requested by the CPU 100 and the boot loader 110 operates in the recovery boot mode 140 instead of the boot mode , remind In operation in the recovery boot mode 140, the memory card 150 having the recovery data program built therein is operated to execute a recovery kernel and a file system image write to recover the damaged data.

상기 MCU(200)는 OS의 정상 부팅을 모니터링하기 위해 전원이 인가되면 대기상태로 있으며, 이때 상기 CPU(100)는 부트 로더(110), 커널(120), 어플리케이션(130)이 순차적으로 부팅이 되고, 상기 어플리케이션(130)이 부팅되면서 CPU(100)에서 동작신호를 발생하여 상기 MCU(200)에서 동작신호의 유무를 확인할 수 있도록 한다.When the power is applied to monitor the normal boot of the OS, the MCU 200 is in a standby state. At this time, the CPU 100 can boot the boot loader 110, the kernel 120, and the application 130 sequentially The application 130 is booted and generates an operation signal from the CPU 100 so that the MCU 200 can check whether there is an operation signal.

상기 MCU(200)는 상기 CPU(100)에서 전달된 동작신호의 전달유무를 체크하여 상기 어플리케이션(130)이 정상적으로 실행되고 있는지를 판단하며, 상기 MCU(200)에서 동작신호의 존재가 확인되면 상기 어플리케이션(130)이 정상적으로 동작한다고 판단하여 Watchdog로의 역할을 수행하게 되고 동작신호가 존재하지 않는 경우에 상기 MCU(200)에서 리커버리 카운트(CPU 리셋 카운트)를 발생하면서 전체 시스템을 리셋하게 된다.The MCU 200 checks whether the application 130 is normally executed by checking whether the operation signal transmitted from the CPU 100 is delivered or not. If the presence of the operation signal is confirmed in the MCU 200, The MCU 200 resets the entire system while generating a recovery count (CPU reset count) in the case where the application 130 functions normally as a watchdog.

이때 상기 MCU(200)에서 발생된 리커버리 카운트 횟수를 카운팅하여 총 4회가 발생한 경우 상기 CPU(100)에 리커버리 모드를 요청하여 상기 부트 로더(110)에서는 일반적인 부트 모드가 아니 리커버리 부트 모드(140)로 동작한다.In this case, when a total of four times of recovery counts are counted, a recovery mode is requested to the CPU 100, and the recovery boot mode 140, which is not a general boot mode, is requested from the boot loader 110, .

상기 부트 로더(110)가 리커버리 부트 모드(140)로 동작할 때 상기 CPU(100)에 구성된 SD-카드 또는 USB 등의 메모리 카드(150)에 저장된 데이터 복구용 커널 및 파일 시스템 이미지를 사용하여 손상된 데이터를 복구하게 된다.When the boot loader 110 operates in the recovery boot mode 140, the data recovery kernel and the file system image stored in the memory card 150 such as the SD-card or USB configured in the CPU 100 are used to determine whether the damaged Data is restored.

한편, 상기 메모리 카드(150)는 복구용 프로그램을 내장하고 있고 상기 부트 로더(110)에서 리커버리 부트 모드(140)로 동작할 때 상기 커널(120)을 복구하는 동작을 수행한다.Meanwhile, the memory card 150 has a built-in recovery program, and when the boot loader 110 operates in the recovery boot mode 140, the memory card 150 performs the operation of restoring the kernel 120.

상기 MCU(200)는 상기 CPU(100)에서 전달하는 동작신호를 확인하면서 상기 어플리케이션(130)이 정상동작인지 비정상 동작인지를 확인한다. 이때 상기 MCU(200)에서 상기 어플리케이션(130)의 정상 유무에 대한 동작 확인 기준은 Watchdog 스위치가 ON 상태이고 GPIO_WDT의 상태가 로우(low)일 때 감지를 하도록 한다.The MCU 200 confirms whether the application 130 is a normal operation or an abnormal operation while checking an operation signal transmitted from the CPU 100. [ At this time, the MCU 200 checks whether the application 130 is normal or not when the Watchdog switch is ON and the GPIO_WDT is low.

상기 MCU(200)에서 내부적으로 리셋 카운트(reset count)를 알아야 하며, 비정상 주기일 경우에 리셋 동작 이전의 횟수를 관리한다. 만약, 비정상 동작이 4번 이상이 발생한 경우에 상기 MCU(200)에서는 MICOM_INT 핀에 25초 동안 Low를 유지한다.The MCU 200 needs to know the reset count internally and manages the number of times before the reset operation in case of an abnormal cycle. If the abnormal operation occurs more than four times, the MCU 200 keeps the MICOM_INT pin Low for 25 seconds.

상기 CPU(100)는 상기 부트 로더(110)에서 부트 딜레이(bootdelay)가 완료된 후 MICOM_INT 신호를 확인한다. 만약 비정상 동작을 감지하였을 경우 MICOM_INT 신호를 한번 더 확인한다. 이때 비정상 동작이 맞으면 상기 부트 로더(110)는 리커버리 부트 모드(140)에 진입한다.The CPU 100 checks the MICOM_INT signal after the bootdelay is completed in the boot loader 110. If abnormal operation is detected, check the MICOM_INT signal again. At this time, if the abnormal operation is correct, the boot loader 110 enters the recovery boot mode 140.

상기 부트 로더(110)가 리커버리 부트 모드(140)에 진입하면 상기 메모리 카드(150)에서 커널 이미지와 파일 시스템 이미지를 RAM에 다운로드한 후 eMMC에 Writing 절차를 거친다.When the boot loader 110 enters the recovery boot mode 140, the kernel image and the file system image are downloaded to the RAM from the memory card 150, and then the writing process is performed on the eMMC.

상기 Writing이 완료 및 실패가 되면 GPIO_WDT를 High로 변경하여 20초 유지한 후에 리셋을 수행한다.If the writing is completed or failed, the GPIO_WDT is changed to High to hold for 20 seconds, and then the reset is performed.

상기 MCU(200)에서는 CPU 리셋 카운트를 체크하여 4회 미만인 경우 CPU(100)의 동작 신호를 감지하여 정상 동작하지 않으면 CPU 리셋을 요청하면서 카운트를 증가한다. 이 작업을 4회 반복하여 4회 이상의 조건을 충족하면 CPU(100)에 리커버리 모드를 요청하여 복구하도록 한다.The MCU 200 checks the CPU reset count and when it is less than four times, it detects the operation signal of the CPU 100 and if it does not operate normally, it requests the CPU reset and increases the count. If this operation is repeated four times and four or more conditions are satisfied, the recovery mode is requested to the CPU 100 for recovery.

상기 CPU(100)는 상기 MCU(200)에서 리커버리 모드 요청이 들어오면 신호를 확인하여 리커버리 부트 모드(140)로 진입하고 상기 메모리 카드(150)를 통해 커널 및 파일 시스템 이미지 라이트 작업을 수행하여 손상된 데이터를 복구한다.When the recovery mode request is received from the MCU 200, the CPU 100 checks the signal to enter the recovery boot mode 140, performs a kernel and file system image write operation through the memory card 150, Restore the data.

따라서 본 발명에 의한 데이터 자동복구 기능을 구비한 감시 제어 장치에서 비정상 동작 감지 및 복구 방안은 다음과 같다.Accordingly, the abnormal operation detection and recovery method in the supervisory control apparatus having the data auto restoration function according to the present invention is as follows.

즉, MCU(200)에서는 CPU(100)에서 전달되는 동작신호인 MICOM_WATCHDOG 핀을 확인하면서 정상동작인지 비정상 동작인지를 판단한다. 이때 상기 MCU(200)에서 감지하는 기준은 Watchdog_Switch가 ON 상태이고, GIPO_WDT의 상태가 Low일 때 감지한다.That is, the MCU 200 determines whether it is a normal operation or an abnormal operation by checking the MICOM_WATCHDOG pin, which is an operation signal transmitted from the CPU 100. At this time, the MCU 200 senses when the Watchdog_Switch is ON and the GIPO_WDT is Low.

한편, 상기 MCU(200)에서 내부적으로 리셋 카운트(reset count)를 알아야 하며, 비정상주기일 경우에 리셋 동작 이전의 횟수를 관리한다.On the other hand, the MCU 200 internally needs to know a reset count, and manages the number of times before the reset operation in case of an abnormal cycle.

만약, 비정상동작이 4번 이상 발생할 경우 MCU(200)에서는 MICOM_INT 핀을 25초 동안 Low를 유지한다.If the abnormal operation occurs more than four times, the MCU 200 keeps the MICOM_INT pin low for 25 seconds.

상기 CPU(100)는 부트 로더(110, u-boot)에서 부트 딜레이(bootdelay)가 완료된 후 상기 MCU(200)의 MICOM_INT를 한번 더 확인한다.The CPU 100 confirms the MICOM_INT of the MCU 200 once the bootdelay is completed in the boot loader 110 (u-boot).

만약, 비정상 동작을 감지하였을 경우 MICOM_INT를 한번 더 확인하고, 이때 비정상 동작이 맞으면 부트 로더(110)는 리커버리 부트 모드(140)로 진입한다.If the abnormal operation is detected, the MICOM_INT is checked once more. If the abnormal operation is detected, the boot loader 110 enters the recovery boot mode 140.

상기 부트 로더(110)가 리커버리 부트 모드(140)로 진입하면 메모리 카드(150)에 저장된 복구용 프로그램인 커널 이미지와 파일 시스템 이미지를 실행하여 라이팅(writing) 절차를 진행한다.When the boot loader 110 enters the recovery boot mode 140, the kernel image and the file system image, which are programs for restoration stored in the memory card 150, are executed to advance the writing procedure.

이어서, 상기 복구를 위해 라이팅 절차가 완료 및 실패가 되면 GPIO_WDT를 High로 변경하여 20초 유지한 후 리셋을 수행한다.Then, if the lighting procedure is completed or failed for the recovery, the GPIO_WDT is changed to High to hold for 20 seconds, and reset is performed.

도 3은 도 2의 MCU 동작을 설명하기 위한 순서도이다.3 is a flow chart for explaining the MCU operation of FIG.

도 3에 도시된 바와 같이, 상기 MCU(200)는 CPU 리셋 카운트를 체크하여 4회 미만인 경우 CPU의 동작신호를 감지하여 정상 동작하지 않으면 CPU 리셋을 요청하면서 카운트를 증가한다. 이 작업을 4회 반복하여 4회 이상의 조건을 충족하면 CPU에 리커버리 모드를 요청하여 메모리 카드에 저장된 복구용 프로그램을 동작하여 데이터를 복구한다.As shown in FIG. 3, the MCU 200 checks the CPU reset count, and if it is less than four times, detects an operation signal of the CPU and if it does not operate normally, it increments the count while requesting a CPU reset. If this operation is repeated four times and four or more conditions are satisfied, a recovery mode stored in the memory card is operated by the CPU to request the recovery mode to recover the data.

먼저, 상기 MCU(200)는 CPU(100) 리셋 카운트를 체크하여 CPU의 동작 유무를 확인하고, CPU 리셋 카운트가 4회 미만인지를 체크한다.First, the MCU 200 checks the reset count of the CPU 100 to check whether the CPU operates, and checks whether the CPU reset count is less than four times.

이어서, 상기 CPU 리셋 카운트가 4회 미만이면 Watchdog가 Enable 상태인지를 확인하고, Enable 상태인 경우 CPU 동작신호를 감지한다.Then, if the CPU reset count is less than four times, it is checked whether the watchdog is in an enable state, and if it is enabled, a CPU operation signal is detected.

상기 CPU의 동작신호를 전달받아 CPU가 정상적으로 동작하고 있는지를 판단하고, 상기 CPU가 정상적으로 동작하는 경우에 다시 Watchdog가 Enable 상태인지를 확인하는 단계로 피드백한다.Receives the operation signal of the CPU, determines whether the CPU is normally operating, and returns to the step of confirming whether the watchdog is enabled or not when the CPU operates normally.

만약, 상기 CPU 리셋 카운트 횟수가 4회 이상인 경우에 이미지 리커버리(Image Recovery)를 요청하고, 상기 이미지 리커버리가 완료되었는지를 체크(Check)한다.If the number of the CPU reset counts is four or more, an image recovery is requested and the image recovery is checked.

이어서, 상기 Recovery 완료되었는지를 판단하여 완료가 되지 않는 경우에 전단계인 Recovery 완료가 되었는지 Check하는 단계를 피드백한다.Then, it is judged whether or not the recovery has been completed. If the recovery is not completed, a step of checking whether the recovery of the previous stage is completed is fed back.

이어서, 상기 Recovery가 완료된 경우에 상기 CPU Reset 카운트를 초기화하고 처음 단계로 피드백하여 MCU를 재시작한다.Then, when the recovery is completed, the CPU reset count is initialized and the MCU is restarted by feeding back to the first step.

이어서, 상기 Watchdog가 Enable이 아닌 경우에는 MCU를 재시작하고, 상기 CPU가 정상동작 하지 않는 경우에 CPU Reset를 요청하고 상기 CPU Reset 카운트를 1 증가하면서 상기 CPU 리셋 카운트의 체크 단계로 피드백한다 If the watchdog is not enabled, the MCU is restarted. If the CPU does not operate normally, a CPU reset is requested, and the CPU reset count is incremented by one to feed back to the CPU reset count check step

도 4는 도 2의 CPU 동작을 설명하기 위한 순서도이다.4 is a flowchart for explaining the CPU operation of FIG.

도 4에서와 같이, 상기 CPU(100)에서는 MCU(200)에서 Recovery 요청이 들어오면 그 신호를 확인하여 Recovery 모드로 진입하여 메모리 카드(150)를 통해 커널 및 파일 시스템 이미지 라이트(file system image write) 작업을 수행한다.As shown in FIG. 4, when the MCU 200 receives a recovery request, the CPU 100 checks the signal to enter a recovery mode, and transmits a kernel file system image write through the memory card 150 ).

즉, 부트 로더(110), 커널(120) 및 어플리케이션(130)이 순차적으로 부팅하여 동작신호를 발생하면, 상기 MCU(200)에서 동작 신호를 전달받아 확인하고 MICOM_INT 신호를 CPU(100)에 전달한다.That is, when the boot loader 110, the kernel 120, and the application 130 sequentially boot up to generate an operation signal, the MCU 200 receives the operation signal and confirms the operation signal and transmits the MICOM_INT signal to the CPU 100 do.

이어서, 상기 동작 신호의 발생 유무를 최대 12초간 확인하고 동작신호가 정상적으로 발생하면 OS를 부팅한다.Next, the presence or absence of the operation signal is checked for a maximum of 12 seconds, and the OS is booted if an operation signal normally occurs.

만약, 상기 동작신호가 정상적으로 발생하지 않는 경우에 리커버리 요청을 통해 Memory Card Mount Check, Memory Card FAT Partition Check, Kernel Write, File System Write를 차례로 수행하면서 Set GPIO_WDT High가 되었을 때 20초 후 리셋(GPIO_WDT Low)을 실시한다.If the operation signal does not normally occur, a memory card mount check, a memory card FAT partition check, a kernel write, and a file system write are sequentially performed through a recovery request, and when the set GPIO_WDT becomes High, a reset is performed after 20 seconds (GPIO_WDT Low ).

본 발명은 도면에 도시된 실시 예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. I will understand.

따라서 본 발명의 진정한 기술적 보호범위는 아래의 특허청구범위에 의해서 정하여져야 할 것이다.Accordingly, the true scope of the present invention should be determined by the following claims.

100 : CPU 110 : 부트 로더
120 : 커널 130 : 어플리케이션
200 : MCU 300 : 슬라이드 스위치
100: CPU 110: Boot loader
120: Kernel 130: Application
200: MCU 300: Slide switch

Claims (5)

부트 로더, 커널, 어플리케이션을 순차적으로 부팅하는 CPU와, 상기 어플리케이션이 부팅되면 상기 CPU에서 GPIO_WDT 및 MICOM_WATCHDOG의 동작신호를 전달받아 확인하는 MCU을 포함하여 이루어진 데이터 자동복구가 가능한 감시 제어 장치이고,
상기 MCU는 상기 CPU에서 전달된 GPIO_WDT 및 MICOM_WATCHDOG의 동작신호에 대한 수신 여부에 따라 상기 어플리케이션의 동작 유무를 판단하고, 상기 CPU에서 동작신호를 수신하면 Watchdog로의 역할을 수행하며 동작신호를 받지 못한 경우에 리커버리 카운트를 통해 시스템 전체를 리셋하고,
상기 리커버리 카운트가 4회 이상이면 상기 CPU에 리커버리 모드를 요청하여 상기 부트 로더에서 리커버리 부트 모드로 동작하도록 제어하며,
상기 리커버리 부트 모드로 동작시에 복구 데이터 프로그램이 내장된 메모리 카드를 동작하여 복구용 커널 및 파일 시스템 이미지 라이트를 실행하여 손상된 데이터를 복구하고,
상기 MCU는 OS의 정상 부팅을 모니터링하기 위해 전원이 인가되면 대기상태로 있고, 상기 CPU는 부트 로더, 커널, 어플리케이션이 순차적으로 부팅이 되고 상기 어플리케이션이 부팅되면서 상기 CPU에서 동작신호를 발생하여 상기 MCU에서 동작신호의 유무를 확인하고,
상기 CPU는 상기 MCU에게 Watchdog Enable 또는 Disable 신호를 결정하고, 상기 리커버리 부트 모드를 진입한 후 상기 CPU에서 리커버리 완료 유무를 확인하고,
상기 CPU를 리셋하기 위해 상기 MCU에서 MCU_NRESET 신호가 출력되고 MICOM_WATCHDOG 핀에서 약속된 신호가 오지 않을 경우 상기 MCU는 해당 핀을 통해 CPU의 리셋을 수행하면서 리셋 카운트를 MCU에서 관리하고,
상기 MCU는 OS의 정상 부팅을 모니터링하기 위해 슬라이드 스위치의 조작에 의해 전원이 인가되면 대기상태로 존재하고,
상기 메모리 카드는 복구용 프로그램을 내장하고 있고 상기 부트 로더에서 리커버리 부트 모드로 동작할 때 상기 커널을 복구하는 동작을 수행하고,
상기 리커버리 부트 모드에서 수행하는 절차가 완료되면 GPIO_WDT 핀을 High로 변경을 하고 20초 뒤에 리셋을 수행하는 것을 특징으로 하는 데이터 자동복구가 가능한 감시 제어 장치.
A CPU for sequentially booting a boot loader, a kernel, and an application; and an MCU for receiving an operation signal of GPIO_WDT and MICOM_WATCHDOG from the CPU when the application is booted,
The MCU determines whether the application is operating according to whether the operation signal of the GPIO_WDT and the MICOM_WATCHDOG is received from the CPU. When the CPU receives an operation signal from the CPU, the MCU performs a role as a watchdog. The recovery count resets the entire system,
Requesting a recovery mode to the CPU and controlling the boot loader to operate in a recovery boot mode if the recovery count is four or more times,
A memory card having a built-in recovery data program is operated to restore a damaged kernel and a file system image by executing a recovery kernel and a file system image in operation in the recovery boot mode,
When the MCU is powered on to monitor the normal boot of the OS, the CPU is in a standby state. The boot loader, the kernel, and the application are sequentially booted and the CPU boots the application, The presence or absence of an operation signal is checked,
The CPU determines a Watchdog Enable or Disable signal to the MCU, checks whether the recovery has been completed in the CPU after entering the recovery boot mode,
When an MCU_NRESET signal is output from the MCU to reset the CPU and a signal from the MICOM_WATCHDOG pin is not received, the MCU performs a reset of the CPU through the corresponding pin and manages a reset count by the MCU,
The MCU is in a standby state when power is applied by the operation of the slide switch to monitor the normal boot of the OS,
Wherein the memory card includes a recovery program and performs an operation of restoring the kernel when operating in a recovery boot mode in the boot loader,
When the recovery boot mode is completed, resetting the GPIO_WDT pin to High and performing a reset after 20 seconds.
삭제delete 삭제delete 삭제delete 삭제delete
KR1020180042477A 2018-04-12 2018-04-12 monitoring control device for automatic data recovery KR101947487B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180042477A KR101947487B1 (en) 2018-04-12 2018-04-12 monitoring control device for automatic data recovery

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180042477A KR101947487B1 (en) 2018-04-12 2018-04-12 monitoring control device for automatic data recovery

Publications (1)

Publication Number Publication Date
KR101947487B1 true KR101947487B1 (en) 2019-05-02

Family

ID=66581462

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180042477A KR101947487B1 (en) 2018-04-12 2018-04-12 monitoring control device for automatic data recovery

Country Status (1)

Country Link
KR (1) KR101947487B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102221593B1 (en) 2020-10-23 2021-03-02 주식회사 오파스넷 System for maintaining the installation envoronment of computer terminals
CN112596798A (en) * 2020-12-25 2021-04-02 珠海市一微半导体有限公司 Chip starting control circuit and control method
KR102384589B1 (en) * 2021-12-17 2022-04-08 주식회사 티머니 Method for monitoring and controlling status of an embedded terminal device using Power Management IC and an embedded terminal device for the same
KR102664022B1 (en) 2023-12-07 2024-05-08 주식회사 에이텍 Environmental maintenance system by reducing terminal backup and restoration time

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050014991A (en) * 2003-08-01 2005-02-21 매그나칩 반도체 유한회사 Watch Dog Timer
KR20070035164A (en) * 2005-09-27 2007-03-30 삼성전자주식회사 Method and system for booting, updating software automatically and recovering update error, and computer readable medium recording the method
KR20090041060A (en) * 2007-10-23 2009-04-28 브로드밴드미디어주식회사 Internet protocol television system and method for self-recovering using the same
KR20110055841A (en) * 2009-11-20 2011-05-26 삼성전자주식회사 Recovery method of system and apparatus for supplying the same
KR101529713B1 (en) * 2014-01-07 2015-06-17 주식회사 텔레칩스 Method for improving system stability of android devices in abnormal power switching, and computer-readable recording medium for the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050014991A (en) * 2003-08-01 2005-02-21 매그나칩 반도체 유한회사 Watch Dog Timer
KR20070035164A (en) * 2005-09-27 2007-03-30 삼성전자주식회사 Method and system for booting, updating software automatically and recovering update error, and computer readable medium recording the method
KR20090041060A (en) * 2007-10-23 2009-04-28 브로드밴드미디어주식회사 Internet protocol television system and method for self-recovering using the same
KR20110055841A (en) * 2009-11-20 2011-05-26 삼성전자주식회사 Recovery method of system and apparatus for supplying the same
KR101529713B1 (en) * 2014-01-07 2015-06-17 주식회사 텔레칩스 Method for improving system stability of android devices in abnormal power switching, and computer-readable recording medium for the same

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102221593B1 (en) 2020-10-23 2021-03-02 주식회사 오파스넷 System for maintaining the installation envoronment of computer terminals
CN112596798A (en) * 2020-12-25 2021-04-02 珠海市一微半导体有限公司 Chip starting control circuit and control method
KR102384589B1 (en) * 2021-12-17 2022-04-08 주식회사 티머니 Method for monitoring and controlling status of an embedded terminal device using Power Management IC and an embedded terminal device for the same
KR102664022B1 (en) 2023-12-07 2024-05-08 주식회사 에이텍 Environmental maintenance system by reducing terminal backup and restoration time

Similar Documents

Publication Publication Date Title
KR101947487B1 (en) monitoring control device for automatic data recovery
TWI633487B (en) Method and computer system for automatically recovering the bios image file
US10250325B2 (en) Network switching system
US10509646B2 (en) Software update rollbacks using file system volume snapshots
EP2947568A1 (en) Upgrade processing method, apparatus and system
CN111694710A (en) Method, device and equipment for monitoring faults of substrate management controller and storage medium
TWI786871B (en) Computer and system bootup method
US20180322020A1 (en) Backup and recovery of configuration files in management device
CN104081311A (en) Apparatus and method for managing operation of a mobile device
CN109976886B (en) Kernel remote switching method and device
CN106909382B (en) Method and device for outputting different types of system starting information
CN111078452A (en) BMC firmware image recovery method and device
CN104035784B (en) A kind of equipment activation system and method
CN111221683A (en) Double-flash hot backup method, system, terminal and storage medium for data center switch
CN107179911B (en) Method and equipment for restarting management engine
CN110502267A (en) Update method, device, equipment and the storage medium of appliance applications
CN107273291B (en) Processor debugging method and system
US9996134B2 (en) Method to avoid over-rebooting of power supply device
CN111522718A (en) Server power supply system and server
US20190250685A1 (en) Computer system, operational method for a microcontroller, and computer program product
JP5268820B2 (en) Rewriting method for monitoring device program
CN114636852B (en) Overcurrent test method and device for server, server and readable storage medium
CN116991637B (en) Operation control method and device of embedded system, electronic equipment and storage medium
CN111966548B (en) Fault detection method and system for slow startup of server
JP7557898B1 (en) Device and method of control