KR20180053838A - 인버터에서 인터럽트 제어방법 - Google Patents

인버터에서 인터럽트 제어방법 Download PDF

Info

Publication number
KR20180053838A
KR20180053838A KR1020160150879A KR20160150879A KR20180053838A KR 20180053838 A KR20180053838 A KR 20180053838A KR 1020160150879 A KR1020160150879 A KR 1020160150879A KR 20160150879 A KR20160150879 A KR 20160150879A KR 20180053838 A KR20180053838 A KR 20180053838A
Authority
KR
South Korea
Prior art keywords
interrupt
function
present
inverter
software
Prior art date
Application number
KR1020160150879A
Other languages
English (en)
Other versions
KR101936565B1 (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 KR1020160150879A priority Critical patent/KR101936565B1/ko
Priority to EP17159537.4A priority patent/EP3321813B1/en
Priority to ES17159537T priority patent/ES2841078T3/es
Priority to JP2017050173A priority patent/JP6478251B2/ja
Priority to CN201710161655.0A priority patent/CN108073108A/zh
Priority to US15/463,674 priority patent/US10275374B2/en
Publication of KR20180053838A publication Critical patent/KR20180053838A/ko
Application granted granted Critical
Publication of KR101936565B1 publication Critical patent/KR101936565B1/ko

Links

Images

Classifications

    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/327Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for interrupts
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02MAPPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
    • H02M1/00Details of apparatus for conversion
    • H02M1/0003Details of control, feedback or regulation circuits
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02MAPPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
    • H02M5/00Conversion of ac power input into ac power output, e.g. for change of voltage, for change of frequency, for change of number of phases
    • H02M5/40Conversion of ac power input into ac power output, e.g. for change of voltage, for change of frequency, for change of number of phases with intermediate conversion into dc
    • H02M5/42Conversion of ac power input into ac power output, e.g. for change of voltage, for change of frequency, for change of number of phases with intermediate conversion into dc by static converters
    • H02M5/44Conversion of ac power input into ac power output, e.g. for change of voltage, for change of frequency, for change of number of phases with intermediate conversion into dc by static converters using discharge tubes or semiconductor devices to convert the intermediate dc into ac
    • H02M5/453Conversion of ac power input into ac power output, e.g. for change of voltage, for change of frequency, for change of number of phases with intermediate conversion into dc by static converters using discharge tubes or semiconductor devices to convert the intermediate dc into ac using devices of a triode or transistor type requiring continuous application of a control signal
    • H02M5/458Conversion of ac power input into ac power output, e.g. for change of voltage, for change of frequency, for change of number of phases with intermediate conversion into dc by static converters using discharge tubes or semiconductor devices to convert the intermediate dc into ac using devices of a triode or transistor type requiring continuous application of a control signal using semiconductor devices only
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02MAPPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
    • H02M7/00Conversion of ac power input into dc power output; Conversion of dc power input into ac power output
    • H02M7/42Conversion of dc power input into ac power output without possibility of reversal
    • H02M7/44Conversion of dc power input into ac power output without possibility of reversal by static converters
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02MAPPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
    • H02M7/00Conversion of ac power input into dc power output; Conversion of dc power input into ac power output
    • H02M7/42Conversion of dc power input into ac power output without possibility of reversal
    • H02M7/44Conversion of dc power input into ac power output without possibility of reversal by static converters
    • H02M7/48Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode
    • H02M7/53Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal
    • H02M7/537Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal using semiconductor devices only, e.g. single switched pulse inverters
    • H02M7/5387Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal using semiconductor devices only, e.g. single switched pulse inverters in a bridge configuration
    • H02M7/53871Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal using semiconductor devices only, e.g. single switched pulse inverters in a bridge configuration with automatic control of output voltage or current
    • H02M7/53873Conversion of dc power input into ac power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode using devices of a triode or transistor type requiring continuous application of a control signal using semiconductor devices only, e.g. single switched pulse inverters in a bridge configuration with automatic control of output voltage or current with digital control
    • 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/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25257Microcontroller
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02MAPPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
    • H02M1/00Details of apparatus for conversion
    • H02M1/0003Details of control, feedback or regulation circuits
    • H02M1/0012Control circuits using digital or numerical techniques
    • H02M2001/0003

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Inverter Devices (AREA)

Abstract

인버터에서 인터럽트 제어방법이 개시된다. 본 발명의 방법은, 인버터 동작중 제어부가 인터럽트 발생을 확인하는 경우, 메인 소프트웨어에서 발생한 인터럽트의 종류를 분석하여, 상기 인터럽트를 기능별 인터럽트 아이디(ID)로 변환하고, 상기 인터럽트 ID가 기등록된 인터럽트 ID인 경우, 상기 기등록된 인터럽트 ID에 대응하는 인터럽트 함수를 수행한다.

Description

인버터에서 인터럽트 제어방법{METHOD FOR CONTROLLING INTERRUPT IN INVERTER}
본 발명은 인버터에서 인터럽트 제어방법에 대한 것이다.
일반적으로, 인버터는 상용 교류전원을 입력으로 하여 이를 직류전원으로 변환한 후, 다시 전동기에 적합한 교류전원으로 변환하여 전동기에 공급하는 전력변환장치이다. 이러한 인버터는 전동기를 효율적으로 제어함으로써 전동기의 소모전력을 감소시켜 에너지 효율을 높인다. 현재 전 세계 전기의 50% 이상을 전동기가 소모하므로, 이러한 인버터를 사용하여 에너지 효율을 높임으로써 전기 사용량을 줄일 필요가 있다. 전동기는 용도와 크기에 따라 여러 용량으로 나뉘어지며, 따라서 이에 따라 인버터도 여러 용량으로 개발되어 왔다.
한편, 임베디드(embedded) 시스템이란, 어떤 제품이나 솔루션에 추가로 탑재되어 그 제품 안에서 특정한 작업을 수행하도록 프로그래밍되어 동작하는 솔루션을 말한다. 현재 사물인터넷(internet of things, IoT)과 스마트 팩토리(smart factory) 등과 관련된 이슈로 이러한 임베디드 시장은 점차 커지고 있다. 이에 반도체 회사들은 임베디드용 자사의 마이크로제어유닛(micro controller unit, MCU)를 앞다투어 출시하고 있다.
인터럽트(interrupt)는 임베디드 소프트웨어(embedded software)에서 가장 중요한 기능 중 하나이다. 임베디드 소프트웨어에서 인터럽트란, MCU가 프로그램을 실행하고 있을 때 입출력 하드웨어 등의 장치에 처리가 필요하거나, 또는 예외상황이 발생하여 처리가 필요한 경우 MCU에게 알려 자동으로 메인 프로그램의 수행을 정지하고 인터럽트 프로그램을 수행하는 것을 말한다.
그러나, 이러한 인터럽트는 제작사의 코어나 MCU 시리즈에 따라 종류 및 이름이 다르므로, MCU에 따라 인터럽트 소프트웨어의 변경이 필요하고 다른 MCU를 사용하는 개발자간 소통이 어려운 문제점이 있다. 이를 도면을 참조로 설명한다.
도 1a 및 도 1b는 종래의 임베디드 소프트웨어의 인터럽트를 설명하기 위한 예시도로서, 같은 인버터의 임베디드 소프트웨어에서 발생하는 인터럽트에 따라 함수들의 이름과 구성이 다른 것을 설명하기 위한 것이다.
도 1a와 같이, 메인 소프트웨어(100)는, 펄스폭 변조(pulse width modulation, PWM) 캐리어에 따라 발생하는 인터럽트(QEP 인터럽트)에 의해 PWM 출력을 연산하는 인터럽트 함수[PWM_ISR()]를 처리하게 하며, 이에 의해 PWM 출력을 연산하는 인터럽트 함수[PWM_ISR()]는 PWM 출력연산을 수행한다. 또한, 메인 소프트웨어(100)는 타이머 카운트에 따라 발생하는 인터럽트(타이머 인터럽트)에 의해 1msec마다 수행하는 인터럽트 함수(SWT_1MS_ISR()]를 처리하게 하며, 이에 의해 인버터 출력주파수 연산, 오토튜닝 연산, 인버터 출력전압 연산, 인버터 시간 연산 등을 수행하게 된다. 또, 메인 소프트웨어(100)는 PWM 외부차단신호(PDP 인터럽트)에 의해 PWM PDP를 수행하는 인터럽트 함수[PDPINTA_ISR()]을 처리하게 하며, 이에 의해 과전류 검출, 암쇼트(arm short) 검출, 과전류 억제 등을 수행하게 된다.
한편, 도 1b와 같이, 메인 소프트웨어(100)는, PWM 업로드 인터럽트(PWM 인터럽트)에 의해 PWM 출력을 연산하는 인터럽트 함수[ISR_pwmb()]를 처리하게 하며, 이에 의해 PWM 출력을 연산하는 인터럽트 함수[ISR_pwmb()]는 PWM 출력연산을 수행한다. 또, 메인 소프트웨어(100)는 타이머 카운트 인터럽트(타이머 인터럽트)에 의해 1msec마다 수행하는 인터럽트 함수[ISR_SW1msec()]를 처리하게 하며, 이에 의해 1msec마다 수행하는 인터럽트 함수[ISR_SW1msec()]는 인버터 출력주파수 연산, 오토튜닝 연산, 인버터 출력전압 연산, 인버터 시간 연산 등을 수행하게 된다. 또, 메인 소프트웨어(100)는 제1트립존 인터럽트(PWM 트립1 인터럽트)에 의해 암쇼트 검출 인터럽트 함수[ISR_PwmTrip1()]를 처리하게 하며, 이에 의해 암쇼트를 검출할 수 있다. 또, 또, 메인 소프트웨어(100)는 제2트립존 인터럽트(PWM 트립2 인터럽트)에 의해 과전류 검출 인터럽트 함수[ISR_PwmTrip2()]를 처리하게 하며, 이에 의해 과전류를 검출할 수 있다. 또, 메인 소프트웨어(100)는 제3트립존 인터럽트(PWM 트립3 인터럽트)에 의해 과전류 억제검출 인터럽트 함수[ISR_PwmTrip3()]를 처리하게 하며, 이에 의해 암쇼트를 검출할 수 있다.
이와 같이, 종래에는 MCU에 정의되어 있는 인터럽트에 함수를 등록하여 직접 프로그램을 실행하였다. 따라서 인버터의 중앙처리장치(Central Processor Unit, CPU)가 달라질 때마다 인터럽트 함수를 합치거나 분리하거나 또는 다시 정의하였으며, 인터럽트 함수의 변경으로 인해 어플리케이션 프로그램도 수정하여야 하였다.
특히, 어떤 메인 프로그램에서는 PWM의 탑(top) 또는 바텀(bottom)의 구분없이 인터럽트가 발생하고, 또 다른 메인 프로그램에서는 구분되어 발생하는 경우도 있으므로, 프로그램의 재활용성이 저하되며, 인버터 종류에 따라 인터럽트가 달라지는 경우가 발생하는 문제점이 있다.
또한, 도 1a 및 도 1b와 같이 동일한 기능의 인터럽트 함수가 인버터에 따라 이름과 구성이 달라지므로, 인터럽트 함수만으로는 무슨 기능을 수행하는지 알기 어려워 소프트웨어 분석이 어려워지는 문제점이 있다.
또, 하나의 인터럽트 함수에서 여러 기능을 수행하여야 하는 경우 코드 복잡도가 상승하여 소프트웨어의 품질이 떨어지고, 기능을 추가 또는 삭제하는 경우 코드 참조도가 복잡하게 되는 문제점이 있다.
결국, 이는 인버터의 품질저하를 야기하며, 인버터 소프트웨어의 개발기간이 늘어나게 되는 문제점이 있다.
본 발명이 해결하고자 하는 기술적 과제는, 인버터의 임베디드 소프트웨어에서 인터럽트를 기능별로 추상화하여 MCU에 관계없이 소프트웨어 구현이 가능하게 하고 소프트웨어의 재활용성을 높여 개발기간을 단축하고 코드품질을 향상하는, 인버터에서 인터럽트 제어방법을 제공하는 것이다.
또한, 본 발명이 해결하고자 하는 다른 기술적 과제는, 기능의 사용여부에 따라 기능별 인터럽트 함수의 수행여부가 결정되도록 하여 소프트웨어 수행 효율성을 높이는 인버터에서 인터럽트 제어방법을 제공하는 것이다.
상기와 같은 기술적 과제를 해결하기 위해, 본 발명의 일실시예의 인버터에서 인터럽트 제어방법은, 인버터 동작중 제어부가 인터럽트 발생을 확인하는 단계; 상기 제어부가 메인 소프트웨어에서 발생한 인터럽트의 종류를 분석하는 단계; 상기 제어부가 상기 인터럽트를 기능별 인터럽트 아이디(ID)로 변환하는 단계; 및 상기 제어부가 상기 인터럽트 ID가 기등록된 인터럽트 ID인 경우, 상기 기등록된 인터럽트 ID에 대응하는 인터럽트 함수를 수행하는 단계를 포함할 수 있다.
본 발명의 일실시예에서, 상기 인터럽트의 종류를 분석하는 단계는, 상기 인터럽트가 메인 소프트웨어가 어떤 상태에서 발생하였는지 함께 분석할 수 있다.
본 발명의 일실시예의 인터럽트 제어방법은, 상기 인터럽트 ID가 등록되지 않은 인터럽트 ID인 경우 메인 소프트웨어의 수행으로 리턴하는 단계를 더 포함할 수 있다.
본 발명의 일실시예의 인터럽트 제어방법은, 상기 인터럽트 ID의 기능이 인에이블인지 판단하는 단계를 더 포함할 수 있다.
상기 인터럽트 ID의 기능이 디스에이블인 경우 메인 소프트웨어의 수행으로 리턴하는 단계를 더 포함할 수 있다.
본 발명의 일실시예의 인터럽트 제어방법은, 기능별로 분류된 인터럽트 ID와 이에 대응하는 인터럽트 함수를 각각 저장하는 단계를 더 포함할 수 있다.
상기와 같은 본 발명은, 보통 MCU별 각각 정의되는 인터럽트를 기능별 인터럽트 ID로 변환함으로써 MCU와 관계없이 소프트웨어를 구현할 수 있으므로, 소프트웨어 개발기간을 단축하게 하는 효과가 있다.
또한, 본 발명은 동일한 MCU의 인터럽트에 여러가지 기능이 한 함수에서 실행되는 경우에도 기능별로 함수를 분리하여, 소프트웨어 품질을 향상하게 하는 효과가 있다.
또한, 본 발명은, 기능의 사용(인에이블) 여부에 따라 종속되어 있는 인터럽트 합수의 수행여부를 결정함으로써, 소프트웨어 수행 효율성을 향상하게 하는 효과가 있다.
도 1a 및 도 1b는 종래의 임베디드 소프트웨어의 인터럽트를 설명하기 위한 예시도이다.
도 2는 본 발명의 일실시예의 인버터 임베디드 소프트웨어의 기능별 인터럽트 관리 장치를 설명하기 위한 일예시도이다.
도 3은 본 발명의 일실시예의 인버터 임베디드 소프트웨어의 기능별 인터럽트 관리방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 일실시예에 따라 본 발명의 적용예를 설명하기 위한 일예시도이다.
본 발명의 구성 및 효과를 충분히 이해하기 위하여, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예들을 설명한다. 그러나 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라, 여러가지 형태로 구현될 수 있고 다양한 변경을 가할 수 있다. 단지, 본 실시예에 대한 설명은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위하여 제공되는 것이다. 첨부된 도면에서 구성요소는 설명의 편의를 위하여 그 크기를 실제보다 확대하여 도시한 것이며, 각 구성요소의 비율은 과장되거나 축소될 수 있다.
어떤 구성요소가 다른 구성요소의 '상에' 있다거나 '접하여' 있다고 기재된 경우, 다른 구성요소에 상에 직접 맞닿아 있거나 또는 연결되어 있을 수 있지만, 중간에 또 다른 구성요소가 존재할 수 있다고 이해되어야 할 것이다. 반면, 어떤 구성요소가 다른 구성요소의 '바로 위에' 있다거나 '직접 접하여' 있다고 기재된 경우에는, 중간에 또 다른 구성요소가 존재하지 않은 것으로 이해될 수 있다. 구성요소간의 관계를 설명하는 다른 표현들, 예를 들면, '~사이에'와 '직접 ~사이에' 등도 마찬가지로 해석될 수 있다.
'제1', '제2' 등의 용어는 다양한 구성요소를 설명하는데 사용될 수 있지만, 상기 구성요소는 위 용어에 의해 한정되어서는 안 된다. 위 용어는 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 수 있다. 예를 들어, 본 발명의 권리범위를 벗어나지 않으면서 '제1구성요소'는 '제2구성요소'로 명명될 수 있고, 유사하게 '제2구성요소'도 '제1구성요소'로 명명될 수 있다.
단수의 표현은 문맥상 명백하게 다르게 표현하지 않는 한, 복수의 표현을 포함한다. '포함한다' 또는 '가진다' 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하기 위한 것으로, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 부가될 수 있는 것으로 해석될 수 있다.
본 발명의 실시예에서 사용되는 용어는 다르게 정의되지 않는 한, 해당 기술분야에서 통상의 지식을 가진 자에게 통상적으로 알려진 의미로 해석될 수 있다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써 본 발명을 상세히 설명한다.
도 2는 본 발명의 일실시예의 인버터 임베디드 소프트웨어의 기능별 인터럽트 관리 장치를 설명하기 위한 일예시도이다.
도면에 도시된 바와 같이, 본 발명의 일실시예의 장치는, 제어부(10) 및 저장부(20)를 포함할 수 있다. 또한, 저장부(20)는, 인터럽트 아이디(ID) 저장부(21) 및 인터럽트 함수 저장부(23)를 포함할 수 있다. 인터럽트 ID 저장부(21)에는 태스크별로 사용하는 기능의 인터럽트 ID가 저장될 수 있으며, 인터럽트 함수 저장부(23)에는 기능별 인터럽트 함수가 저장될 수 있다. 이때 각 기능의 인터럽트 ID와 인터럽트 함수는 기능별로 대응되도록 저장될 수 있다. 즉, 인터럽트 ID 저장부(21)와 인터럽트 함수 저장부(23)는 별개의 구성요소로 도시되어 있으나, 각 기능별로 대응되도록 하나의 구성요소로 이루어질 수도 있을 것이다.
제어부(10)는 본 발명의 기능별 인터럽트 관리방법을 수행하는 것으로서, 예를 들어 마이크로 제어유닛(MCU) 또는 중앙처리유닛(CPU) 일 수 있다. 이하, 도면을 참조로 제어부(10)의 동작을 상세하게 설명하기로 한다.
도 3은 본 발명의 일실시예의 인버터 임베디드 소프트웨어의 기능별 인터럽트 관리방법을 설명하기 위한 흐름도로서, 도 2의 제어부(10)의 동작을 중심으로 나타낸 것이다.
도면에 도시된 바와 같이, 제어부(10)는 사용자의 입력에 따라, 인버터에서 태스크(task)별로 사용하는 기능의 인터럽트 ID와 인터럽트 함수를 각각 인터럽트 ID 저장부(21) 및 인터럽트 함수 저장부(23)에 저장할 수 있다(S31).
이후 제어부(10)는 인버터 동작시 메인 소프트웨어를 수행하다가(S32), 인터럽트가 발생한 것을 확인하면(S33), 인터럽트의 종류 및 현재 소프트웨어의 상태를 분석할 수 있다(S34). 즉, 제어부(10)는 인터럽트가 발생한 경우, 어떠한 인터럽트가 발생하였으며, 이 인터럽트가 메인 소프트웨어가 어떤 상태인 경우에 발생하였는지 분석하여 어떤 인터럽트를 발생시킬지 판단할 수 있다.
이때, 인터럽트의 종류는, 예를 들어 펄스폭변조(PWM) 캐리어에 따라 발생하는 인터럽트일 수도 있고, 타이머 카운트에 따라 발생하는 인터럽트일 수도 있고, PWM 외부차단신호인 PDP 인터럽트일 수도 있고, PWM 업로드 인터럽트일 수도 있고, 암쇼트 검출 인터럽트일 수도 있고, 과전류 검출 인터럽트일 수도 있고, 과전류 억제검출 인터럽트일 수도 있다. 이와 같이 제어부(10)가 분석할 수 있는 인터럽트의 종류는 다양하며, 이러한 인터럽트의 종류를 분석하기 위해 카운터(도시되지 않음)로부터 신호를 수신하거나, 또는 제어부(10) 스스로 인터럽트를 검출할 수 있을 것이다.
이후, 제어부(10)는 해당 인터럽트를 기능별 인터럽트 ID로 변환하고(S35), 변환한 인터럽트 ID가 인터럽트 ID 저장부(21)에 기능별로 저장되어 있는지 여부를 확인할 수 있다(S36). 이때, 인터럽트 ID 저장부(21)에 미등록된 인터럽트 ID인 경우 사용하지 않는 기능의 인터럽트이므로 이를 무시하고 다시 메인 소프트웨어를 수행하는 S32로 리턴할 수 있다. 만약 인터럽트 ID 저장부(21)에 등록된 인터럽트 ID인 경우 해당 기능이 인에이블(enable)한지 판단할 수 있다(S37). 인터럽트 인에이블(interrupt enable)이란, 메인 소프트웨어의 실행 중에 중단되어서는 안되는 중요한 처리를 위하여 잠정적으로 디세이블(disable)된 인터럽트를 다시 가능하게 하는 것으로서, 이와 같이 중요한 처리가 이루어진 다음에 다시 정상상태로 되돌려져 인터럽트가 접수되는 상태를 인터럽트 인에이블이라 한다. 제어부(10)는 외부 신호 또는 사용자의 선택에 의해 메인 소프트웨어 수행중 인터럽트 인에이블을 수신할 수 있는데, 이때 인터럽트 디세이블인 경우 다시 메인 소프트웨어를 수행하는 S32로 리턴할 수 있다. 만약 인터럽트 인에이블인 경우에는 인터럽트 함수 저장부(23)에 저장된 기능별 인터럽트 함수를 실행할 수 있다(S38).
도 4는 본 발명의 일실시예에 따라 본 발명의 적용예를 설명하기 위한 일예시도이다.
제어부(10)는 메인 소프트웨어(41)의 실행중에, PWM 업로드 인터럽트(42a), 타이머 인터럽트(42b), PWM 블럭 인터럽트(42c) 등 각종 인터럽트(42)가 발생하면, 본 발명의 기능별 인터럽트 관리(43)를 시작하게 된다. 즉, 제어부(10)가 인터럽트를 분석하여, 각종 인터럽트를 기능별 인터럽트 ID(44)로 변환하게 된다.
이와 같이 변환된 인터럽트 ID를 이용하여, 제어부(10)는 해당 인터럽트 ID에 대응하는 인터럽트 함수(45)를 수행할 수 있다. 본 발명의 일실시예에서, 예를 들어, PWM 업로드 인터럽트가 발생한 경우(42a), 제어부(10)는 해당 PWM의 상부(TOP)에서 인터럽트가 발생한 것을 확인하고 인터럽트 ID 'IRQ_PWM_TOP'(44a)으로 해당 인터럽트를 변환할 수 있으며, 이에 대응하는 [PwmTopIrq()] 함수(45a)를 수행할 수 있게 된다. 즉, 인터럽트 ID에 대응하는 인터럽트 함수를 쉽게 수행할 수 있게 된다.
본 발명의 일실시예에서 인터럽트 ID와 이에 대응하는 인터럽트 함수가 다양하게 제시되어 있으나, 이는 예시적인 것으로서 본 발명이 이에 한정되는 것이 아님은 자명하다.
이와 같이, 본 발명은 보통 MCU별 각각 정의되는 인터럽트를 기능별 인터럽트 ID로 변환함으로써 MCU와 관계없이 소프트웨어를 구현할 수 있으므로, 소프트웨어 개발기간이 단축될 수 있다.
또한, 본 발명은 동일한 MCU의 인터럽트에 여러가지 기능이 한 함수에서 실행되는 경우에도 기능별로 함수를 분리하여, 소프트웨어 품질을 향상할 수 있다.
또한, 본 발명은, 기능의 사용(인에이블) 여부에 따라 종속되어 있는 인터럽트 합수의 수행여부를 결정함으로써, 소프트웨어 수행 효율성을 향상할 수 있다.
이상에서 본 발명에 따른 실시예들이 설명되었으나, 이는 예시적인 것에 불과하며, 당해 분야에서 통상적 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 범위의 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 다음의 특허청구범위에 의해서 정해져야 할 것이다.
10: 제어부 20: 저장부
21: 인터럽트 ID 저장부 23: 인터럽트 함수 저장부

Claims (6)

  1. 인버터 동작중 제어부가 인터럽트 발생을 확인하는 단계;
    상기 제어부가 메인 소프트웨어에서 발생한 인터럽트의 종류를 분석하는 단계;
    상기 제어부가 상기 인터럽트를 기능별 인터럽트 아이디(ID)로 변환하는 단계; 및
    상기 제어부가 상기 인터럽트 ID가 기등록된 인터럽트 ID인 경우, 상기 기등록된 인터럽트 ID에 대응하는 인터럽트 함수를 수행하는 단계를 포함하는 인버터에서 인터럽트 제어방법.
  2. 제1항에 있어서, 상기 인터럽트의 종류를 분석하는 단계는,
    상기 인터럽트가 메인 소프트웨어가 어떤 상태에서 발생하였는지 함께 분석하는 것을 특징으로 하는 인터럽트 제어방법.
  3. 제1항에 있어서,
    상기 인터럽트 ID가 등록되지 않은 인터럽트 ID인 경우 메인 소프트웨어의 수행으로 리턴하는 단계를 더 포함하는 인터럽트 제어방법.
  4. 제1항에 있어서,
    상기 인터럽트 ID의 기능이 인에이블인지 판단하는 단계를 더 포함하는 인터럽트 제어방법.
  5. 제4항에 있어서,
    상기 인터럽트 ID의 기능이 디스에이블인 경우 메인 소프트웨어의 수행으로 리턴하는 단계를 더 포함하는 인터럽트 제어방법.
  6. 제1항에 있어서,
    기능별로 분류된 인터럽트 ID와 이에 대응하는 인터럽트 함수를 각각 저장하는 단계를 더 포함하는 인터럽트 제어방법.
KR1020160150879A 2016-11-14 2016-11-14 인버터에서 인터럽트 제어방법 KR101936565B1 (ko)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020160150879A KR101936565B1 (ko) 2016-11-14 2016-11-14 인버터에서 인터럽트 제어방법
EP17159537.4A EP3321813B1 (en) 2016-11-14 2017-03-07 Method for controlling interrupt in inverter
ES17159537T ES2841078T3 (es) 2016-11-14 2017-03-07 Método para controlar interrupciones en un inversor
JP2017050173A JP6478251B2 (ja) 2016-11-14 2017-03-15 インバータでの割り込み制御方法
CN201710161655.0A CN108073108A (zh) 2016-11-14 2017-03-17 用于控制逆变器中的中断的方法
US15/463,674 US10275374B2 (en) 2016-11-14 2017-03-20 Method for controlling interrupt in inverter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160150879A KR101936565B1 (ko) 2016-11-14 2016-11-14 인버터에서 인터럽트 제어방법

Publications (2)

Publication Number Publication Date
KR20180053838A true KR20180053838A (ko) 2018-05-24
KR101936565B1 KR101936565B1 (ko) 2019-01-09

Family

ID=58428054

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160150879A KR101936565B1 (ko) 2016-11-14 2016-11-14 인버터에서 인터럽트 제어방법

Country Status (6)

Country Link
US (1) US10275374B2 (ko)
EP (1) EP3321813B1 (ko)
JP (1) JP6478251B2 (ko)
KR (1) KR101936565B1 (ko)
CN (1) CN108073108A (ko)
ES (1) ES2841078T3 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220043342A (ko) * 2020-09-29 2022-04-05 엘에스일렉트릭(주) 이벤트 기반 전력기기 제어장치

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102363118B1 (ko) 2017-07-27 2022-02-15 아사히 가세이 메디컬 가부시키가이샤 혈액 정화 장치, 혈액 정화막의 막간 차압을 구하는 방법, 결정하는 방법 및 장치
KR20210066288A (ko) 2019-11-28 2021-06-07 한국전자통신연구원 전자 장치, 인터럽트 설정 제어 방법 및 저장 매체

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100304976B1 (ko) * 1998-01-16 2001-09-24 김영환 인터럽트 발생 회로
KR100317237B1 (ko) * 1999-10-01 2001-12-22 윤종용 유사 벡터 방식의 인터럽트 컨트롤러 및 그것의 인터럽트 처리 방법
KR100319317B1 (ko) * 1999-01-21 2002-01-09 구자홍 인버터 회로 제어방법 및 장치
KR100655985B1 (ko) * 2000-05-29 2006-12-08 세이코 엡슨 가부시키가이샤 인터럽트 신호 생성 장치 및 인터럽트 신호 생성 방법
KR20090065232A (ko) * 2007-12-17 2009-06-22 한국전자통신연구원 다중플랫폼 기반의 mac프로그램실행장치, mac 기반의센서노드에 최적화된 태스크스케줄링장치 및 방법
JP2010531508A (ja) * 2007-06-27 2010-09-24 ノキア ユーケー リミテッド 割り込み処理
JP4865213B2 (ja) * 2004-12-16 2012-02-01 キヤノン株式会社 割込みコントローラ
JP2015056039A (ja) * 2013-09-12 2015-03-23 株式会社東芝 制御装置、制御システムおよび制御方法

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4618810A (en) * 1983-02-04 1986-10-21 Emerson Electric Company Variable speed AC motor control system
JPH0934753A (ja) * 1995-07-14 1997-02-07 Fuji Electric Co Ltd 事象識別方法、事象識別装置及び識別子参照装置
KR100192526B1 (ko) 1996-12-06 1999-06-15 구본준 인터럽트 정합 장치
JPH11210635A (ja) * 1998-01-29 1999-08-03 Ebara Corp 制御装置一体型回転機械
JP2001016868A (ja) 1999-07-01 2001-01-19 Matsushita Electric Ind Co Ltd 系統連系インバータ
US7082610B2 (en) * 2001-06-02 2006-07-25 Redback Networks, Inc. Method and apparatus for exception handling in a multi-processing environment
JP2004110120A (ja) 2002-09-13 2004-04-08 Yaskawa Electric Corp モジュラ型プログラマブルコントローラの同期方法およびモジュラ型プログラマブルコントローラ
US7340547B1 (en) * 2003-12-02 2008-03-04 Nvidia Corporation Servicing of multiple interrupts using a deferred procedure call in a multiprocessor system
JP4336214B2 (ja) * 2004-01-29 2009-09-30 三菱電機株式会社 電力用半導体装置
US7362600B2 (en) * 2004-10-01 2008-04-22 Continental Automotive Systems Us, Inc. Method and apparatus for cycle error correction for a power converter device, such as an electronic power inverter
JP2007049770A (ja) * 2005-08-05 2007-02-22 Toshiba Kyaria Kk 電源装置
US7778271B2 (en) * 2005-08-19 2010-08-17 International Business Machines Corporation Method for communicating instructions and data between a processor and external devices
CN100583047C (zh) * 2006-11-14 2010-01-20 中兴通讯股份有限公司 实时中断与多个进程状态同步的方法
JP4769755B2 (ja) * 2007-03-29 2011-09-07 富士通株式会社 プロファイリング支援プログラム、プロファイリング支援方法、およびコンピュータ
JP4390843B2 (ja) * 2007-10-05 2009-12-24 ファナック株式会社 モータ駆動装置
JP5547208B2 (ja) * 2008-11-24 2014-07-09 インテル コーポレイション シーケンシャル・プログラムを複数スレッドに分解し、スレッドを実行し、シーケンシャルな実行を再構成するシステム、方法および装置
CN101419459B (zh) * 2008-12-12 2011-08-17 北京交通大学 感应电机的网络控制方法及其装置
KR101079898B1 (ko) 2010-04-09 2011-11-04 엘에스산전 주식회사 피엘씨의 입력 모듈
US8478974B2 (en) * 2010-06-23 2013-07-02 Assured Information Security, Inc. Method and system for reducing an impact of malware during a booting sequence
US9658877B2 (en) * 2010-08-23 2017-05-23 Empire Technology Development Llc Context switching using a context controller and on-chip context cache
JP2012208567A (ja) * 2011-03-29 2012-10-25 Keihin Corp 電子機器
CN102135912A (zh) * 2011-04-02 2011-07-27 大唐移动通信设备有限公司 中断抖动的处理方法和设备
CN103631649B (zh) * 2012-08-24 2018-08-28 深圳市中兴微电子技术有限公司 中断处理方法、装置及中断控制器
US9715385B2 (en) * 2013-01-23 2017-07-25 International Business Machines Corporation Vector exception code
JP6029553B2 (ja) * 2013-08-22 2016-11-24 日立オートモティブシステムズ株式会社 車両制御装置
CN103645714B (zh) * 2013-12-11 2015-11-11 东方电气集团东方汽轮机有限公司 用dsp实现modbus异步串行通信协议的方法
CN105335222B (zh) * 2014-06-04 2019-03-19 华为技术有限公司 中断信息的处理方法、虚拟机监控器及中断控制器
KR101571635B1 (ko) * 2014-10-30 2015-11-24 엘에스산전 주식회사 Plc 고속 카운터의 동작 방법
KR102064614B1 (ko) * 2015-03-10 2020-01-09 엘에스산전 주식회사 Plc 이더넷 통신 모듈의 ip 주소 충돌 확인방법
CN105224403B (zh) * 2015-09-17 2018-09-28 华为技术有限公司 一种中断处理方法及装置
CN105117269B (zh) * 2015-10-09 2018-07-24 天津国芯科技有限公司 基于向量中断的编译器的优化方法
CN105094976A (zh) * 2015-10-09 2015-11-25 天津国芯科技有限公司 一种中断控制方法和中断控制器
CN105279021B (zh) * 2015-10-16 2019-05-07 华为技术有限公司 执行不可屏蔽中断的方法和装置
CN105630555A (zh) * 2015-12-25 2016-06-01 深圳创动科技有限公司 一种控制芯片中软件在线升级方法及装置
CN105676808B (zh) * 2015-12-31 2018-06-26 北京四方继保自动化股份有限公司 一种工业控制系统逻辑断点调试功能的实现方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100304976B1 (ko) * 1998-01-16 2001-09-24 김영환 인터럽트 발생 회로
KR100319317B1 (ko) * 1999-01-21 2002-01-09 구자홍 인버터 회로 제어방법 및 장치
KR100317237B1 (ko) * 1999-10-01 2001-12-22 윤종용 유사 벡터 방식의 인터럽트 컨트롤러 및 그것의 인터럽트 처리 방법
KR100655985B1 (ko) * 2000-05-29 2006-12-08 세이코 엡슨 가부시키가이샤 인터럽트 신호 생성 장치 및 인터럽트 신호 생성 방법
JP4865213B2 (ja) * 2004-12-16 2012-02-01 キヤノン株式会社 割込みコントローラ
JP2010531508A (ja) * 2007-06-27 2010-09-24 ノキア ユーケー リミテッド 割り込み処理
KR20090065232A (ko) * 2007-12-17 2009-06-22 한국전자통신연구원 다중플랫폼 기반의 mac프로그램실행장치, mac 기반의센서노드에 최적화된 태스크스케줄링장치 및 방법
JP2015056039A (ja) * 2013-09-12 2015-03-23 株式会社東芝 制御装置、制御システムおよび制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220043342A (ko) * 2020-09-29 2022-04-05 엘에스일렉트릭(주) 이벤트 기반 전력기기 제어장치

Also Published As

Publication number Publication date
CN108073108A (zh) 2018-05-25
EP3321813B1 (en) 2020-11-11
JP2018081667A (ja) 2018-05-24
ES2841078T3 (es) 2021-07-07
KR101936565B1 (ko) 2019-01-09
EP3321813A1 (en) 2018-05-16
US20180137068A1 (en) 2018-05-17
US10275374B2 (en) 2019-04-30
JP6478251B2 (ja) 2019-03-06

Similar Documents

Publication Publication Date Title
US11983517B2 (en) Hardware acceleration method, compiler, and device
KR101936565B1 (ko) 인버터에서 인터럽트 제어방법
CN108639881B (zh) 电梯制动器的控制方法、装置、制动器、设备和存储介质
CN109542744A (zh) 检测终端开机异常问题的方法、装置、存储介质及终端
US20210004212A1 (en) Method and apparatus for compiling source code object, and computer
US20110208505A1 (en) Assigning floating-point operations to a floating-point unit and an arithmetic logic unit
US11460909B2 (en) Device for reducing standby power and electronic device therefor
US11831151B2 (en) Photovoltaic electric appliance system, method and device of controlling voltage protection value thereof
JP2019122157A (ja) 無停電電源装置
WO2024051290A1 (zh) 代码编译方法、装置、存储介质及电子设备
CN110647401B (zh) 调频方法、调频装置、存储介质与电子设备
CN111140529B (zh) 吹风机控制方法、装置及存储介质
CN110802301A (zh) 焊接脉冲控制方法、装置与焊机控制装置
CN118033381B (zh) 一种芯片负载检测方法及电路
CN115470048B (zh) 复位方法及系统级芯片、电子设备和存储介质
CN108398996B (zh) 电源管理方法及电子系统
CN117632388A (zh) 任务合并处理方法、装置、设备及计算机可读存储介质
JP2024524885A (ja) 障害検出方法及び関連装置
CN117148949A (zh) 一种电源模块工作模式的转换方法、装置、服务器
CN115864499A (zh) 供能控制方法、装置、供能系统和存储介质
KR890003479B1 (ko) 마이콤의 순간 정전 대비 방법
JPWO2022064840A5 (ko)
CN112803595A (zh) 具有断点恢复功能的高可靠性智能配电控制开关及方法
CN114741176A (zh) 中断隔离方法、中断控制器、片上系统和电子设备
CN117472454A (zh) 外围设备管理方法、系统、装置、计算机设备及存储介质

Legal Events

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