KR102682629B1 - Method and apparatus for monitoring battery status in real time - Google Patents

Method and apparatus for monitoring battery status in real time Download PDF

Info

Publication number
KR102682629B1
KR102682629B1 KR1020230094157A KR20230094157A KR102682629B1 KR 102682629 B1 KR102682629 B1 KR 102682629B1 KR 1020230094157 A KR1020230094157 A KR 1020230094157A KR 20230094157 A KR20230094157 A KR 20230094157A KR 102682629 B1 KR102682629 B1 KR 102682629B1
Authority
KR
South Korea
Prior art keywords
battery
impedance
input
output
vector
Prior art date
Application number
KR1020230094157A
Other languages
Korean (ko)
Inventor
이민영
이정재
Original Assignee
주식회사 엘와이솔루션
Filing date
Publication date
Application filed by 주식회사 엘와이솔루션 filed Critical 주식회사 엘와이솔루션
Application granted granted Critical
Publication of KR102682629B1 publication Critical patent/KR102682629B1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/36Arrangements for testing, measuring or monitoring the electrical condition of accumulators or electric batteries, e.g. capacity or state of charge [SoC]
    • G01R31/367Software therefor, e.g. for battery testing using modelling or look-up tables
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R19/00Arrangements for measuring currents or voltages or for indicating presence or sign thereof
    • G01R19/165Indicating that current or voltage is either above or below a predetermined value or within or outside a predetermined range of values
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/36Arrangements for testing, measuring or monitoring the electrical condition of accumulators or electric batteries, e.g. capacity or state of charge [SoC]
    • G01R31/385Arrangements for measuring battery or accumulator variables
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/36Arrangements for testing, measuring or monitoring the electrical condition of accumulators or electric batteries, e.g. capacity or state of charge [SoC]
    • G01R31/389Measuring internal impedance, internal conductance or related variables
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/36Arrangements for testing, measuring or monitoring the electrical condition of accumulators or electric batteries, e.g. capacity or state of charge [SoC]
    • G01R31/392Determining battery ageing or deterioration, e.g. state of health
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/36Arrangements for testing, measuring or monitoring the electrical condition of accumulators or electric batteries, e.g. capacity or state of charge [SoC]
    • G01R31/396Acquisition or processing of data for testing or for monitoring individual cells or groups of cells within a battery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01MPROCESSES OR MEANS, e.g. BATTERIES, FOR THE DIRECT CONVERSION OF CHEMICAL ENERGY INTO ELECTRICAL ENERGY
    • H01M10/00Secondary cells; Manufacture thereof
    • H01M10/42Methods or arrangements for servicing or maintenance of secondary cells or secondary half-cells
    • H01M10/48Accumulators combined with arrangements for measuring, testing or indicating the condition of cells, e.g. the level or density of the electrolyte
    • H01M10/486Accumulators combined with arrangements for measuring, testing or indicating the condition of cells, e.g. the level or density of the electrolyte for measuring temperature

Abstract

배터리의 상태를 실시간으로 모니터링하는 시스템이 제시된다. 실시예들은 배터리의 충전 상태를 표시하는 충전 상태 표시부; 상기 배터리의 온도를 측정하는 온도 센서; 상기 배터리에 정전류를 입력하는 출력부; 상기 배터리의 전압, 전류 및 임피던스를 측정하는 측정부; 프로세서; 및 메모리를 포함하고, 상기 출력부는, 상기 배터리로부터 전달되는 전류의 잡음을 필터링하고, 상기 출력부에 인가되는 정전기를 제거하고, 상기 캐패시터에 남아있는 전하에 의해 발생하는 스파크를 제거하고, 상기 측정부에 의해 측정된 전압에 대응하여 캐패시터를 선택하고, 상기 배터리의 임피던스의 저항 및 리액턴스 측정을 위하여 입력 전류의 주파수를 선택하고, 상기 측정부에 의해 측정되는 임피던스에 대응하여 입력 전류의 크기를 설정하고, 상기 메모리는 상기 배터리의 충전 횟수, 상기 온도 센서에 의해 측정된 온도, 상기 배터리의 사용 시간, 상기 배터리의 용량, 상기 배터리에 대한 프로파일 및 배터리의 수명을 예측하기 위한 뉴럴 네트워크 모델을 저장하고, 상기 측정부는, 제1 시점에 상기 배터리의 임피던스를 측정하여 제1 임피던스를 결정하고, 제2 시점에 상기 배터리의 임피던스를 측정하여 제2 임피던스를 결정하고, 상기 프로세서는, 상기 제1 임피던스, 상기 제2 임피던스, 상기 배터리의 충전 횟수, 상기 온도 센서에 의해 측정된 온도, 상기 배터리의 사용 시간, 상기 배터리의 용량을 기초로 상기 뉴럴 네트워크 모델을 이용하여 상기 배터리의 수명을 추정하는 배터리 관리 시스템을 제공한다.A system for monitoring the status of a battery in real time is presented. Embodiments include a charging status display unit that displays the charging status of the battery; a temperature sensor that measures the temperature of the battery; an output unit that inputs a constant current to the battery; a measuring unit that measures voltage, current, and impedance of the battery; processor; and a memory, wherein the output unit filters noise of the current transmitted from the battery, removes static electricity applied to the output unit, removes sparks generated by the charge remaining in the capacitor, and performs the measurement. Select a capacitor in response to the voltage measured by the unit, select the frequency of the input current to measure the resistance and reactance of the impedance of the battery, and set the size of the input current in response to the impedance measured by the measurement unit. And, the memory stores the number of charging times of the battery, the temperature measured by the temperature sensor, the usage time of the battery, the capacity of the battery, the profile for the battery, and a neural network model for predicting the life of the battery, , the measuring unit determines the first impedance by measuring the impedance of the battery at a first time, and determines the second impedance by measuring the impedance of the battery at a second time, and the processor determines the first impedance, A battery management system that estimates the life of the battery using the neural network model based on the second impedance, the number of charging times of the battery, the temperature measured by the temperature sensor, the usage time of the battery, and the capacity of the battery. provides.

Description

배터리의 상태를 실시간으로 모니터링하는 방법 및 장치{Method and apparatus for monitoring battery status in real time}Method and apparatus for monitoring battery status in real time}

본 발명의 실시예들은 배터리의 상태를 실시간으로 모니터링하는 기술에 관한 것으로, 배터리의 수명을 추정하는 기술에 대한 것이다.Embodiments of the present invention relate to a technology for monitoring the state of a battery in real time and a technology for estimating the life of a battery.

배터리는 안전성이 매우 중요한다. 제조업체의 지침을 준수하고, 올바른 충전기와 충전 방법을 사용해야 한다. 배터리를 잘못 다루면 과열, 폭발 또는 화재와 같은 위험을 초래할 수 있으므로 항상 안전을 최우선으로 생각해야 한다. Safety is very important for batteries. Be sure to follow the manufacturer's instructions and use the correct charger and charging method. Safety should always be your top priority, as incorrect handling of batteries can result in hazards such as overheating, explosion, or fire.

배터리의 수명을 추정함으로써 시스템의 안전한 운영, 비용 절감 및 성능 최적화에 도움을 줄 수 있다. 배터리의 상태와 수명을 추정함으로써 운영자는 중간에 배터리 부족으로 인한 사고나 감속을 방지할 수 있다. 배터리는 전자 장치의 주요 구성 요소 중 하나이며, 배터리 수명의 예측을 통해 효율적인 관리를 할 수 있다. 수명을 추정하면 배터리 교체 시기를 예상하고, 교체 주기를 최적화하여 비용을 절감할 수 있다. 불필요한 배터리 교체를 피하고, 최대한 수명을 확보하여 비용을 절감할 수 있다. 배터리 상태와 수명을 모니터링하면 성능을 최적화할 수 있다. Estimating the life of a battery can help ensure safe operation of the system, reduce costs, and optimize performance. By estimating the condition and life of the battery, operators can prevent accidents or slowdowns due to insufficient batteries. Batteries are one of the main components of electronic devices, and prediction of battery life allows for efficient management. By estimating the lifespan, you can predict when to replace the battery and save costs by optimizing the replacement cycle. You can reduce costs by avoiding unnecessary battery replacement and ensuring maximum lifespan. Monitoring battery health and lifespan can help you optimize performance.

실시예들에 따르면, 배터리 관리 시스템은, 배터리의 충전 상태를 표시하는 충전 상태 표시부; 상기 배터리의 온도를 측정하는 온도 센서; 상기 배터리에 정전류를 입력하는 출력부; 상기 배터리의 전압, 전류 및 임피던스를 측정하는 측정부; 프로세서; 및 메모리를 포함하고, 상기 출력부는, 상기 배터리로부터 전달되는 전류의 잡음을 필터링하고, 상기 출력부에 인가되는 정전기를 제거하고, 상기 캐패시터에 남아있는 전하에 의해 발생하는 스파크를 제거하고, 상기 측정부에 의해 측정된 전압에 대응하여 캐패시터를 선택하고, 상기 배터리의 임피던스의 저항 및 리액턴스 측정을 위하여 입력 전류의 주파수를 선택하고, 상기 측정부에 의해 측정되는 임피던스에 대응하여 입력 전류의 크기를 설정하고, 상기 메모리는 상기 배터리의 충전 횟수, 상기 온도 센서에 의해 측정된 온도, 상기 배터리의 사용 시간, 상기 배터리의 용량, 상기 배터리에 대한 프로파일 및 배터리의 수명을 예측하기 위한 뉴럴 네트워크 모델을 저장하고, 상기 측정부는, 제1 시점에 상기 배터리의 임피던스를 측정하여 제1 임피던스를 결정하고, 제2 시점에 상기 배터리의 임피던스를 측정하여 제2 임피던스를 결정하고, 상기 프로세서는, 상기 제1 임피던스, 상기 제2 임피던스, 상기 배터리의 충전 횟수, 상기 온도 센서에 의해 측정된 온도, 상기 배터리의 사용 시간, 상기 배터리의 용량을 기초로 상기 뉴럴 네트워크 모델을 이용하여 상기 배터리의 수명을 추정할 수 있다.According to embodiments, a battery management system includes a charging status display unit that displays the charging status of a battery; a temperature sensor that measures the temperature of the battery; an output unit that inputs a constant current to the battery; a measuring unit that measures voltage, current, and impedance of the battery; processor; and a memory, wherein the output unit filters noise of the current transmitted from the battery, removes static electricity applied to the output unit, removes sparks generated by the charge remaining in the capacitor, and performs the measurement. Select a capacitor in response to the voltage measured by the unit, select the frequency of the input current to measure the resistance and reactance of the impedance of the battery, and set the size of the input current in response to the impedance measured by the measurement unit. And, the memory stores the number of charging times of the battery, the temperature measured by the temperature sensor, the usage time of the battery, the capacity of the battery, the profile for the battery, and a neural network model for predicting the life of the battery, , the measuring unit determines the first impedance by measuring the impedance of the battery at a first time, and determines the second impedance by measuring the impedance of the battery at a second time, and the processor determines the first impedance, The lifespan of the battery can be estimated using the neural network model based on the second impedance, the number of charging times of the battery, the temperature measured by the temperature sensor, the usage time of the battery, and the capacity of the battery.

상기 프로세서는, 상기 제1 임피던스, 상기 제2 임피던스, 상기 배터리의 충전 횟수, 상기 온도 센서에 의해 측정된 온도, 상기 배터리의 사용 시간, 상기 배터리의 용량을 기초로 상기 배터리의 수명의 추정을 진행할지 여부를 결정하고, 진행하기로 결정된 경우, 상기 뉴럴 네트워크 모델을 이용하여 상기 배터리의 수명을 추정할 수 있다.The processor estimates the life of the battery based on the first impedance, the second impedance, the number of charging times of the battery, the temperature measured by the temperature sensor, the usage time of the battery, and the capacity of the battery. If it is decided to proceed, the lifespan of the battery can be estimated using the neural network model.

상기 뉴럴 네트워크 모델은 입력 레이어, 하나 이상의 은닉 레이어 및 출력 레이어를 포함하고, 상기 프로세서는, 상기 제1 임피던스의 저항 및 리액턴스, 제1 시점의 충전 횟수, 제1 시점의 온도, 제1 시점의 사용 시간, 제1 시점의 용량으로 구성되는 제1 입력 벡터 및 상기 제2 임피던스의 저항 및 리액턴스, 제2 시점의 충전 횟수, 제2 시점의 온도, 제2 시점의 사용 시간, 제2 시점의 용량으로 구성되는 제2 입력 벡터를 결정하고, 은닉 레이어에서, 상기 제1 입력 벡터에 대응하는 제1 은닉 상태에 은닉 가중치를 적용하고 상기 제2 입력 벡터에 입력 가중치를 적용하여 상기 제2 입력 벡터에 대응하는 제2 은닉 상태를 계산하고, 상기 제2 은닉 상태를 비선형 활성화 함수에 입력하여 출력 벡터를 출력하고, 출력 레이어에서, 상기 출력 벡터를 기초로 소프트맥스 함수를 이용하여 확률 벡터를 출력하고, 상기 확률 벡터를 기초로 상기 배터리의 수명을 추정할 수 있다.The neural network model includes an input layer, one or more hidden layers, and an output layer, and the processor determines the resistance and reactance of the first impedance, the number of charging times at the first time point, the temperature at the first time point, and the use of the first time point. A first input vector consisting of time, capacity at a first point in time, resistance and reactance of the second impedance, number of charges at a second point in time, temperature at a second point in time, usage time at a second point in time, and capacity at a second point in time. Determine a second input vector to be constructed, and in a hidden layer, apply a hidden weight to a first hidden state corresponding to the first input vector and apply an input weight to the second input vector to correspond to the second input vector. Calculate a second hidden state, input the second hidden state into a non-linear activation function to output an output vector, and in the output layer, output a probability vector using a softmax function based on the output vector, The lifespan of the battery can be estimated based on the probability vector.

상기 출력부는 배터리와 연결되는 고주파 필터링 회로, 상기 고주파 필터링 회로와 연결되는 서지 보호 회로, 스파크 방지 회로, 캐패시터 선택 회로 및 정전류 입력 회로를 포함하고, 상기 스파크 방지 회로는 상기 서지 보호 회로, 상기 캐패시터 선택 회로 및 상기 정전류 입력 회로와 연결되고, 상기 고주파 필터링 회로는 상기 배터리로부터 전달되는 전류에 포함된 노이즈를 필터링하여 상기 스파크 방지 회로로 전달하고, 상기 서지 보호 회로는 상기 출력부의 내부의 정전기를 제거하고, 상기 스파크 방지 회로는, 상기 배터리가 상기 출력부에 연결될 때 발생하는 스파크를 제거하고, 상기 배터리가 상기 출력부와 개방될 때 발생하는 스파크를 제거하고, 상기 캐패시터 선택 회로는 제1 캐패시터 및 제2 캐패시터를 포함하고, 상기 측정부에 의해 측정된 상기 배터리의 전압이 임계 전압 이하인 경우 상기 제1 캐패시터 및 상기 제2 캐패시터를 병렬로 연결하고, 상기 측정부에 의해 측정된 상기 배터리의 전압이 임계 전압을 초과하는 경우 상기 제1 캐패시터 및 상기 제2 캐패시터를 직렬로 연결하고, 상기 정전류 입력 회로는, 상기 배터리의 임피던스의 저항을 측정하기 위하여 제1 주파수를 선택하고, 상기 배터리의 임피던스의 리액턴스를 측정하기 위하여 제2 주파수를 선택하고, 상기 제1 주파수는 상기 제2 주파수보다 크고, 상기 제1 주파수 또는 상기 제2 주파수를 기초로, 복수의 전류의 크기를 포함하는 프로파일에 따라 가장 작은 전류부터 순차적으로 전류를 변경하며 상기 배터리의 임피던스를 측정할 수 있다.The output unit includes a high-frequency filtering circuit connected to a battery, a surge protection circuit connected to the high-frequency filtering circuit, a spark prevention circuit, a capacitor selection circuit, and a constant current input circuit, and the spark prevention circuit includes the surge protection circuit and the capacitor selection circuit. circuit and the constant current input circuit, the high-frequency filtering circuit filters noise contained in the current transmitted from the battery and transfers it to the spark prevention circuit, and the surge protection circuit removes static electricity inside the output unit. , the spark prevention circuit removes sparks that occur when the battery is connected to the output unit, and removes sparks that occur when the battery is opened with the output unit, and the capacitor selection circuit includes a first capacitor and a second capacitor. 2 capacitors, and when the voltage of the battery measured by the measuring unit is below the threshold voltage, the first capacitor and the second capacitor are connected in parallel, and the voltage of the battery measured by the measuring unit is below the threshold voltage. When the voltage exceeds the first capacitor and the second capacitor are connected in series, the constant current input circuit selects a first frequency to measure the resistance of the impedance of the battery, and the reactance of the impedance of the battery is Select a second frequency to measure, wherein the first frequency is greater than the second frequency, and based on the first frequency or the second frequency, according to a profile including the magnitude of a plurality of currents, starting from the smallest current. The impedance of the battery can be measured by sequentially changing the current.

상기 뉴럴 네트워크 모델은 입력 레이어, 하나 이상의 은닉 레이어 및 출력 레이어를 포함하고, 임피던스의 저항 및 리액턴스, 충전 횟수, 온도, 사용 시간, 용량으로 구성된 각각의 학습 데이터는 상기 뉴럴 네트워크 모델의 상기 입력 레이어에 입력되어 상기 하나 이상의 은닉 레이어 및 출력 레이어를 통과하여 출력 벡터를 출력하고, 상기 출력 벡터는 상기 출력 레이어에 연결된 손실함수 레이어에 입력되고, 상기 손실함수 레이어는 상기 출력 벡터와 각각의 학습 데이터에 대한 정답 벡터를 비교하는 손실 함수를 이용하여 손실값을 출력하고, 상기 뉴럴 네트워크 모델의 파라미터는 상기 손실값이 작아지는 방향으로 학습될 수 있다. The neural network model includes an input layer, one or more hidden layers, and an output layer, and each learning data consisting of impedance resistance and reactance, number of charges, temperature, usage time, and capacity is sent to the input layer of the neural network model. It is input and passes through the one or more hidden layers and the output layer to output an output vector, and the output vector is input to a loss function layer connected to the output layer, and the loss function layer is a function for the output vector and each training data. A loss value is output using a loss function that compares the correct answer vector, and the parameters of the neural network model can be learned in a direction that reduces the loss value.

실시예들에 대한 이해를 돕기 위해 상세한 설명의 일부로 포함된, 첨부 도면은 다양한 실시예들을 제공하고, 상세한 설명과 함께 다양한 실시예들의 기술적 특징을 설명한다.
도 1은 일 실시예에 따른 전자 장치의 구성을 나타내는 도면이다.
도 2는 일 실시예에 따른 프로그램의 구성을 나타내는 도면이다.
도 3은 일 실시예에 따른 배터리 관리 시스템의 전체 구성을 나타내는 도면이다.
도 4는 일 실시예에 따른 출력부의 구조를 도시한 도면이다.
도 5는 일 실시예에 따른 뉴럴 네트워크 모델의 구조를 설명하기 위한 예시적인 도면이다.
The accompanying drawings, which are included as part of the detailed description to aid understanding of the embodiments, provide various embodiments and together with the detailed description describe technical features of the various embodiments.
1 is a diagram showing the configuration of an electronic device according to an embodiment.
Figure 2 is a diagram showing the configuration of a program according to one embodiment.
Figure 3 is a diagram showing the overall configuration of a battery management system according to an embodiment.
Figure 4 is a diagram showing the structure of an output unit according to one embodiment.
Figure 5 is an example diagram for explaining the structure of a neural network model according to an embodiment.

이하의 실시예들은 실시예들의 구성요소들과 특징들을 소정 형태로 결합한 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려될 수 있다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 다양한 실시예들을 구성할 수도 있다. 다양한 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다.The following embodiments combine elements and features of the embodiments in a predetermined form. Each component or feature may be considered optional unless explicitly stated otherwise. Each component or feature may be implemented in a form that is not combined with other components or features. Additionally, various embodiments may be configured by combining some components and/or features. The order of operations described in various embodiments may change. Some features or features of one embodiment may be included in other embodiments or may be replaced with corresponding features or features of other embodiments.

도면에 대한 설명에서, 다양한 실시예들의 요지를 흐릴 수 있는 절차 또는 단계 등은 기술하지 않았으며, 당해 기술분야에서 통상의 지식을 가진 자의 수준에서 이해할 수 있을 정도의 절차 또는 단계는 또한 기술하지 아니하였다.In the description of the drawings, procedures or steps that may obscure the gist of the various embodiments are not described, and procedures or steps that can be understood at the level of a person with ordinary knowledge in the relevant technical field are not described. did.

명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함(comprising 또는 including)"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "...부", "...기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, "일(a 또는 an)", "하나(one)", "그(the)" 및 유사 관련어는 다양한 실시예들을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다.Throughout the specification, when a part is said to “comprise or include” a certain element, this means that it may further include other elements rather than excluding other elements, unless specifically stated to the contrary. do. In addition, terms such as "... unit", "... unit", and "module" used in the specification refer to a unit that processes at least one function or operation, which refers to hardware, software, or a combination of hardware and software. It can be implemented as: Additionally, the terms “a or an,” “one,” “the,” and similar related terms are used herein in the context of describing various embodiments (particularly in the context of the claims below). Unless otherwise indicated or clearly contradicted by context, it may be used in both singular and plural terms.

이하, 다양한 실시예들에 따른 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 다양한 실시예들의 예시적인 실시형태를 설명하고자 하는 것이며, 유일한 실시형태를 나타내고자 하는 것이 아니다.Hereinafter, embodiments according to various embodiments will be described in detail with reference to the attached drawings. The detailed description set forth below in conjunction with the accompanying drawings is intended to illustrate exemplary embodiments of various embodiments and is not intended to represent the only embodiment.

또한, 다양한 실시예들에서 사용되는 특정(特定) 용어들은 다양한 실시예들의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 다양한 실시예들의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.In addition, specific terms used in various embodiments are provided to aid understanding of the various embodiments, and the use of such specific terms may be changed to other forms without departing from the technical spirit of the various embodiments. .

도 1은 일 실시예에 따른 전자 장치의 구성을 나타내는 도면이다.1 is a diagram showing the configuration of an electronic device according to an embodiment.

도 1은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블록도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108) 중 적어도 하나와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다. 전자 장치(101)는 클라이언트, 단말기 또는 피어로 지칭될 수도 있다.1 is a block diagram of an electronic device 101 in a network environment 100, according to various embodiments. Referring to FIG. 1, in the network environment 100, the electronic device 101 communicates with the electronic device 102 through a first network 198 (e.g., a short-range wireless communication network) or a second network 199. It is possible to communicate with at least one of the electronic device 104 or the server 108 through (e.g., a long-distance wireless communication network). According to one embodiment, the electronic device 101 may communicate with the electronic device 104 through the server 108. According to one embodiment, the electronic device 101 includes a processor 120, a memory 130, an input module 150, an audio output module 155, a display module 160, an audio module 170, and a sensor module ( 176), interface 177, connection terminal 178, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196 , or may include an antenna module 197. In some embodiments, at least one of these components (eg, the connection terminal 178) may be omitted or one or more other components may be added to the electronic device 101. In some embodiments, some of these components (e.g., sensor module 176, camera module 180, or antenna module 197) are integrated into one component (e.g., display module 160). It can be. The electronic device 101 may also be referred to as a client, terminal, or peer.

프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 저장하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서(121) 및 보조 프로세서(123)를 포함하는 경우, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.The processor 120, for example, executes software (e.g., program 140) to operate at least one other component (e.g., hardware or software component) of the electronic device 101 connected to the processor 120. It can be controlled and various data processing or operations can be performed. According to one embodiment, as at least part of data processing or computation, the processor 120 stores commands or data received from another component (e.g., sensor module 176 or communication module 190) in volatile memory 132. The commands or data stored in the volatile memory 132 can be processed, and the resulting data can be stored in the non-volatile memory 134. According to one embodiment, the processor 120 includes the main processor 121 (e.g., a central processing unit or an application processor) or an auxiliary processor 123 that can operate independently or together (e.g., a graphics processing unit, a neural network processing unit ( It may include a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor). For example, if the electronic device 101 includes a main processor 121 and a secondary processor 123, the secondary processor 123 may be set to use lower power than the main processor 121 or be specialized for a designated function. You can. The auxiliary processor 123 may be implemented separately from the main processor 121 or as part of it.

보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능 모델이 수행되는 전자 장치(101) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(108))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다. The auxiliary processor 123 may, for example, act on behalf of the main processor 121 while the main processor 121 is in an inactive (e.g., sleep) state, or while the main processor 121 is in an active (e.g., application execution) state. ), together with the main processor 121, at least one of the components of the electronic device 101 (e.g., the display module 160, the sensor module 176, or the communication module 190) At least some of the functions or states related to can be controlled. According to one embodiment, co-processor 123 (e.g., image signal processor or communication processor) may be implemented as part of another functionally related component (e.g., camera module 180 or communication module 190). there is. According to one embodiment, the auxiliary processor 123 (eg, neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. Artificial intelligence models can be created through machine learning. For example, such learning may be performed in the electronic device 101 itself on which the artificial intelligence model is performed, or may be performed through a separate server (e.g., server 108). Learning algorithms may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but It is not limited. An artificial intelligence model may include multiple artificial neural network layers. Artificial neural networks include deep neural network (DNN), convolutional neural network (CNN), recurrent neural network (RNN), restricted boltzmann machine (RBM), belief deep network (DBN), bidirectional recurrent deep neural network (BRDNN), It may be one of deep Q-networks or a combination of two or more of the above, but is not limited to the examples described above. In addition to hardware structures, artificial intelligence models may additionally or alternatively include software structures.

메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다. The memory 130 may store various data used by at least one component (eg, the processor 120 or the sensor module 176) of the electronic device 101. Data may include, for example, input data or output data for software (e.g., program 140) and instructions related thereto. Memory 130 may include volatile memory 132 or non-volatile memory 134.

프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다. The program 140 may be stored as software in the memory 130 and may include, for example, an operating system 142, middleware 144, or application 146.

입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다. The input module 150 may receive commands or data to be used in a component of the electronic device 101 (e.g., the processor 120) from outside the electronic device 101 (e.g., a user). The input module 150 may include, for example, a microphone, mouse, keyboard, keys (eg, buttons), or digital pen (eg, stylus pen).

음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.The sound output module 155 may output sound signals to the outside of the electronic device 101. The sound output module 155 may include, for example, a speaker or a receiver. Speakers can be used for general purposes such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. According to one embodiment, the receiver may be implemented separately from the speaker or as part of it.

디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 디스플레이 모듈(160)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다. The display module 160 can visually provide information to the outside of the electronic device 101 (eg, a user). The display module 160 may include, for example, a display, a hologram device, or a projector, and a control circuit for controlling the device. According to one embodiment, the display module 160 may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of force generated by the touch.

오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.The audio module 170 can convert sound into an electrical signal or, conversely, convert an electrical signal into sound. According to one embodiment, the audio module 170 acquires sound through the input module 150, the sound output module 155, or an external electronic device (e.g., directly or wirelessly connected to the electronic device 101). Sound may be output through the electronic device 102 (e.g., speaker or headphone).

센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다. The sensor module 176 detects the operating state (e.g., power or temperature) of the electronic device 101 or the external environmental state (e.g., user state) and generates an electrical signal or data value corresponding to the detected state. can do. According to one embodiment, the sensor module 176 includes, for example, a gesture sensor, a gyro sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, It may include a temperature sensor, humidity sensor, or light sensor.

인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.The interface 177 may support one or more designated protocols that can be used to connect the electronic device 101 directly or wirelessly with an external electronic device (eg, the electronic device 102). According to one embodiment, the interface 177 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.

연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.The connection terminal 178 may include a connector through which the electronic device 101 can be physically connected to an external electronic device (eg, the electronic device 102). According to one embodiment, the connection terminal 178 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).

햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.The haptic module 179 can convert electrical signals into mechanical stimulation (e.g., vibration or movement) or electrical stimulation that the user can perceive through tactile or kinesthetic senses. According to one embodiment, the haptic module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.The camera module 180 can capture still images and moving images. According to one embodiment, the camera module 180 may include one or more lenses, image sensors, image signal processors, or flashes.

전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.The power management module 188 can manage power supplied to the electronic device 101. According to one embodiment, the power management module 188 may be implemented as at least a part of, for example, a power management integrated circuit (PMIC).

배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.Battery 189 may supply power to at least one component of electronic device 101. According to one embodiment, the battery 189 may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.

통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다. Communication module 190 is configured to provide a direct (e.g., wired) communication channel or wireless communication channel between electronic device 101 and an external electronic device (e.g., electronic device 102, electronic device 104, or server 108). It can support establishment and communication through established communication channels. Communication module 190 operates independently of processor 120 (e.g., an application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module 190 is a wireless communication module 192 (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 194 (e.g., : LAN (local area network) communication module, or power line communication module) may be included. Among these communication modules, the corresponding communication module is a first network 198 (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network 199 (e.g., legacy It may communicate with an external electronic device 104 through a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN). These various types of communication modules may be integrated into one component (e.g., a single chip) or may be implemented as a plurality of separate components (e.g., multiple chips). The wireless communication module 192 uses subscriber information (e.g., International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 196 within a communication network such as the first network 198 or the second network 199. The electronic device 101 can be confirmed or authenticated.

무선 통신 모듈(192)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(192)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(192)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(192)은 전자 장치(101), 외부 전자 장치(예: 전자 장치(104)) 또는 네트워크 시스템(예: 제 2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일실시예에 따르면, 무선 통신 모듈(192)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.The wireless communication module 192 may support 5G networks after 4G networks and next-generation communication technologies, for example, NR access technology (new radio access technology). NR access technology provides high-speed transmission of high-capacity data (enhanced mobile broadband (eMBB)), minimization of terminal power and access to multiple terminals (massive machine type communications (mMTC)), or ultra-reliable and low-latency (URLLC). -latency communications)) can be supported. The wireless communication module 192 may support high frequency bands (eg, mmWave bands), for example, to achieve high data rates. The wireless communication module 192 uses various technologies to secure performance in high frequency bands, for example, beamforming, massive array multiple-input and multiple-output (MIMO), and full-dimensional multiplexing. It can support technologies such as input/output (FD-MIMO: full dimensional MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module 192 may support various requirements specified in the electronic device 101, an external electronic device (e.g., electronic device 104), or a network system (e.g., second network 199). According to one embodiment, the wireless communication module 192 supports Peak data rate (e.g., 20 Gbps or more) for realizing eMBB, loss coverage (e.g., 164 dB or less) for realizing mmTC, or U-plane latency (e.g., 164 dB or less) for realizing URLLC. Example: Downlink (DL) and uplink (UL) each of 0.5 ms or less, or round trip 1 ms or less) can be supported.

안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다. The antenna module 197 may transmit or receive signals or power to or from the outside (eg, an external electronic device). According to one embodiment, the antenna module 197 may include an antenna including a radiator made of a conductor or a conductive pattern formed on a substrate (eg, PCB). According to one embodiment, the antenna module 197 may include a plurality of antennas (eg, an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network such as the first network 198 or the second network 199 is connected to the plurality of antennas by, for example, the communication module 190. can be selected. Signals or power may be transmitted or received between the communication module 190 and an external electronic device through the at least one selected antenna. According to some embodiments, in addition to the radiator, other components (eg, radio frequency integrated circuit (RFIC)) may be additionally formed as part of the antenna module 197.

다양한 실시예에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 형성할 수 있다. 일실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.According to various embodiments, the antenna module 197 may form a mmWave antenna module. According to one embodiment, a mmWave antenna module includes a printed circuit board, an RFIC disposed on or adjacent to a first side (e.g., bottom side) of the printed circuit board and capable of supporting a designated high frequency band (e.g., mmWave band), And a plurality of antennas (e.g., array antennas) disposed on or adjacent to the second side (e.g., top or side) of the printed circuit board and capable of transmitting or receiving signals in the designated high frequency band. can do.

상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.At least some of the components are connected to each other through a communication method between peripheral devices (e.g., bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)) and signal ( (e.g. commands or data) can be exchanged with each other.

일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(102, 또는 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(102, 104, 또는 108) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시예에 있어서, 외부의 전자 장치(104)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일실시예에 따르면, 외부의 전자 장치(104) 또는 서버(108)는 제 2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다. According to one embodiment, commands or data may be transmitted or received between the electronic device 101 and the external electronic device 104 through the server 108 connected to the second network 199. Each of the external electronic devices 102 or 104 may be of the same or different type as the electronic device 101. According to one embodiment, all or part of the operations performed in the electronic device 101 may be executed in one or more of the external electronic devices 102, 104, or 108. For example, when the electronic device 101 must perform a certain function or service automatically or in response to a request from a user or another device, the electronic device 101 may perform the function or service instead of executing the function or service on its own. Alternatively, or additionally, one or more external electronic devices may be requested to perform at least part of the function or service. One or more external electronic devices that have received the request may execute at least part of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device 101. The electronic device 101 may process the result as is or additionally and provide it as at least part of a response to the request. For this purpose, for example, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology can be used. The electronic device 101 may provide an ultra-low latency service using, for example, distributed computing or mobile edge computing. In another embodiment, the external electronic device 104 may include an Internet of Things (IoT) device. Server 108 may be an intelligent server using machine learning and/or neural networks. According to one embodiment, the external electronic device 104 or server 108 may be included in the second network 199. The electronic device 101 may be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.

서버(108)는 전자 장치(101)가 접속되며, 접속된 전자 장치(101)로 서비스를 제공할 수 있다. 또한, 서버(108)는 회원 가입 절차를 진행하여 그에 따라 회원으로 가입된 사용자의 각종 정보를 저장하여 관리하고, 서비스에 관련된 각종 구매 및 결제 기능을 제공할 수도 있다. 또한, 서버(108)는, 사용자 간에 서비스를 공유할 수 있도록, 복수의 전자 장치(101) 각각에서 실행되는 서비스 애플리케이션의 실행 데이터를 실시간으로 공유할 수도 있다. 이러한 서버(108)는 하드웨어적으로는 통상적인 웹 서버(Web Server) 또는 왑 서버(WAP Server)와 동일한 구성을 가질 수 있다. 그러나, 소프트웨어적으로는, C, C++, Java, Visual Basic, Visual C 등 여하한 언어를 통하여 구현되어 여러 가지 기능을 하는 프로그램 모듈(Module)을 포함할 수 있다. 또한, 서버(108)는 일반적으로 인터넷과 같은 개방형 컴퓨터 네트워크를 통하여 불특정 다수 클라이언트 및/또는 다른 서버와 연결되어 있고, 클라이언트 또는 다른 서버의 작업수행 요청을 접수하고 그에 대한 작업 결과를 도출하여 제공하는 컴퓨터 시스템 및 그를 위하여 설치되어 있는 컴퓨터 소프트웨어(서버 프로그램)를 뜻하는 것이다. 또한, 서버(108)는, 전술한 서버 프로그램 이외에도, 서버(108) 상에서 동작하는 일련의 응용 프로그램(Application Program)과 경우에 따라서는 내부 또는 외부에 구축되어 있는 각종 데이터베이스(DB: Database, 이하 "DB"라 칭함)를 포함하는 넓은 개념으로 이해되어야 할 것이다. 따라서, 서버(108)는, 회원 가입 정보와, 게임에 대한 각종 정보 및 데이터를 분류하여 DB에 저장시키고 관리하는데, 이러한 DB는 서버(108)의 내부 또는 외부에 구현될 수 있다. 또한, 서버(108)는, 일반적인 서버용 하드웨어에 도스(DOS), 윈도우(windows), 리눅스(Linux), 유닉스(UNIX), 매킨토시(Macintosh) 등의 운영체제에 따라 다양하게 제공되고 있는 서버 프로그램을 이용하여 구현될 수 있으며, 대표적인 것으로는 윈도우 환경에서 사용되는 웹사이트(Website), IIS(Internet Information Server)와 유닉스환경에서 사용되는 CERN, NCSA, APPACH등이 이용될 수 있다. 또한, 서버(108)는, 서비스의 사용자 인증이나 서비스와 관련된 구매 결제를 위한 인증 시스템 및 결제 시스템과 연동할 수도 있다.The server 108 is connected to the electronic device 101 and can provide services to the connected electronic device 101. In addition, the server 108 may perform a membership registration process, store and manage various information of users who have registered as members, and provide various purchase and payment functions related to the service. Additionally, the server 108 may share execution data of service applications running on each of the plurality of electronic devices 101 in real time so that services can be shared between users. This server 108 may have the same hardware configuration as a typical web server or WAP server. However, in terms of software, it may be implemented through any language such as C, C++, Java, Visual Basic, and Visual C, and may include program modules that perform various functions. In addition, the server 108 is generally connected to an unspecified number of clients and/or other servers through an open computer network such as the Internet, and receives work performance requests from clients or other servers and derives and provides work results in response. It refers to a computer system and the computer software (server program) installed for it. In addition, in addition to the server program described above, the server 108 includes a series of application programs running on the server 108 and, in some cases, various databases (DBs) built internally or externally, hereinafter " It should be understood as a broad concept including “DB”). Accordingly, the server 108 classifies membership registration information and various information and data about games, stores them in a DB, and manages this DB, which may be implemented inside or outside the server 108. In addition, the server 108 uses a variety of server programs provided depending on the operating system such as DOS, Windows, Linux, UNIX, and Macintosh on general server hardware. Representative examples include Website, IIS (Internet Information Server) used in a Windows environment, and CERN, NCSA, and APPACH used in a Unix environment. Additionally, the server 108 may be linked with an authentication system and payment system for user authentication of the service or payment for purchases related to the service.

제1 네트워크(198) 및 제2 네트워크(199)는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조 또는 서버(108)와 전자 장치들(101, 104)을 연결하는 망(Network)을 의미한다. 제1 네트워크(198) 및 제2 네트워크(199)는 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 3G, 4G, LTE, 5G, Wi-Fi 등이 포함되나 이에 한정되지는 않는다. 제1 네트워크(198) 및 제2 네트워크(199)는 LAN, WAN 등의 폐쇄형 제1 네트워크(198) 및 제2 네트워크(199)일 수도 있으나, 인터넷(Internet)과 같은 개방형인 것이 바람직하다. 인터넷은 TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(HyperText Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service)를 제공하는 전 세계적인 개방형 컴퓨터 제1 네트워크(198) 및 제2 네트워크(199) 구조를 의미한다.The first network 198 and the second network 199 are a connection structure that allows information exchange between each node, such as terminals and servers, or a network connecting the server 108 and the electronic devices 101 and 104. It means (Network). The first network 198 and the second network 199 are the Internet, LAN (Local Area Network), Wireless LAN (Wireless Local Area Network), WAN (Wide Area Network), PAN (Personal Area Network), and 3G. , 4G, LTE, 5G, Wi-Fi, etc., but are not limited to these. The first network 198 and the second network 199 may be closed, such as a LAN or WAN, but are preferably open, such as the Internet. The Internet uses the TCP/IP protocol and several services existing at its upper layer, namely HTTP (HyperText Transfer Protocol), Telnet, FTP (File Transfer Protocol), DNS (Domain Name System), SMTP (Simple Mail Transfer Protocol), and SNMP ( It refers to a worldwide open computer first network (198) and second network (199) structure that provides Simple Network Management Protocol (NFS), Network File Service (NFS), and Network Information Service (NIS).

데이터베이스는 데이터베이스 관리 프로그램(DBMS)을 이용하여 컴퓨터 시스템의 저장공간(하드디스크 또는 메모리)에 구현된 일반적인 데이터구조를 가질 수 가질 수 있다. 데이터베이스는 데이터의 검색(추출), 삭제, 편집, 추가 등을 자유롭게 행할 수 있는 데이터 저장형태를 가질 수 있다. 데이터베이스는 오라클(Oracle), 인포믹스(Infomix), 사이베이스(Sybase), DB2와 같은 관계형 데이타베이스 관리 시스템(RDBMS)이나, 겜스톤(Gemston), 오리온(Orion), O2 등과 같은 객체 지향 데이타베이스 관리 시스템(OODBMS) 및 엑셀론(Excelon), 타미노(Tamino), 세카이주(Sekaiju) 등의 XML 전용 데이터베이스(XML Native Database)를 이용하여 본 개시의 일 실시예의 목적에 맞게 구현될 수 있고, 자신의 기능을 달성하기 위하여 적당한 필드(Field) 또는 엘리먼트들을 가질 수 있다.A database can have a general data structure implemented in the storage space (hard disk or memory) of a computer system using a database management program (DBMS). A database may have a data storage format that allows for free search (extraction), deletion, editing, addition, etc. of data. Databases are relational database management systems (RDBMS) such as Oracle, Infomix, Sybase, and DB2, or object-oriented database management such as Gemston, Orion, and O2. It can be implemented according to the purpose of an embodiment of the present disclosure using a system (OODBMS) and an XML native database such as Excelon, Tamino, and Sekaiju, and has its own function. To achieve this, you can have appropriate fields or elements.

도 2는 일 실시예에 따른 프로그램의 구성을 나타내는 도면이다.Figure 2 is a diagram showing the configuration of a program according to one embodiment.

도 2은 다양한 실시예에 따른 프로그램(140)을 예시하는 블록도(200)이다. 일실시예에 따르면, 프로그램(140)은 전자 장치(101)의 하나 이상의 리소스들을 제어하기 위한 운영 체제(142), 미들웨어(144), 또는 상기 운영 체제(142)에서 실행 가능한 어플리케이션(146)을 포함할 수 있다. 운영 체제(142)는, 예를 들면, AndroidTM, iOSTM, WindowsTM, SymbianTM, TizenTM, 또는 BadaTM를 포함할 수 있다. 프로그램(140) 중 적어도 일부 프로그램은, 예를 들면, 제조 시에 전자 장치(101)에 프리로드되거나, 또는 사용자에 의해 사용 시 외부 전자 장치(예: 전자 장치(102 또는 104), 또는 서버(108))로부터 다운로드되거나 갱신 될 수 있다. 프로그램(140)의 전부 또는 일부는 뉴럴 네트워크를 포함할 수 있다. Figure 2 is a block diagram 200 illustrating program 140 according to various embodiments. According to one embodiment, the program 140 includes an operating system 142, middleware 144, or an application 146 executable on the operating system 142 for controlling one or more resources of the electronic device 101. It can be included. Operating system 142 may include, for example, AndroidTM, iOSTM, WindowsTM, SymbianTM, TizenTM, or BadaTM. At least some of the programs 140 are preloaded into the electronic device 101, for example, at the time of manufacture, or are stored in an external electronic device (e.g., the electronic device 102 or 104, or a server) when used by a user. It can be downloaded or updated from 108)). All or part of the program 140 may include a neural network.

운영 체제(142)는 전자 장치(101)의 하나 이상의 시스템 리소스들(예: 프로세스, 메모리, 또는 전원)의 관리(예: 할당 또는 회수)를 제어할 수 있다. 운영 체제(142)는, 추가적으로 또는 대체적으로, 전자 장치(101)의 다른 하드웨어 디바이스, 예를 들면, 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 구동하기 위한 하나 이상의 드라이버 프로그램들을 포함할 수 있다.The operating system 142 may control management (eg, allocation or retrieval) of one or more system resources (eg, process, memory, or power) of the electronic device 101 . Operating system 142 may additionally or alternatively operate on other hardware devices of electronic device 101, such as input module 150, audio output module 155, display module 160, and audio module 170. , sensor module 176, interface 177, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196, or It may include one or more driver programs for driving the antenna module 197.

미들웨어(144)는 전자 장치(101)의 하나 이상의 리소스들로부터 제공되는 기능 또는 정보가 어플리케이션(146)에 의해 사용될 수 있도록 다양한 기능들을 어플리케이션(146)으로 제공할 수 있다. 미들웨어(144)는, 예를 들면, 어플리케이션 매니저(201), 윈도우 매니저(203), 멀티미디어 매니저(205), 리소스 매니저(207), 파워 매니저(209), 데이터베이스 매니저(211), 패키지 매니저(213), 커넥티비티 매니저(215), 노티피케이션 매니저(217), 로케이션 매니저(219), 그래픽 매니저(221), 시큐리티 매니저(223), 통화 매니저(225), 또는 음성 인식 매니저(227)를 포함할 수 있다. The middleware 144 may provide various functions to the application 146 so that functions or information provided from one or more resources of the electronic device 101 can be used by the application 146. The middleware 144 includes, for example, an application manager 201, a window manager 203, a multimedia manager 205, a resource manager 207, a power manager 209, a database manager 211, and a package manager 213. ), connectivity manager (215), notification manager (217), location manager (219), graphics manager (221), security manager (223), call manager (225), or voice recognition manager (227). You can.

어플리케이션 매니저(201)는, 예를 들면, 어플리케이션(146)의 생명 주기를 관리할 수 있다. 윈도우 매니저(203)는, 예를 들면, 화면에서 사용되는 하나 이상의 GUI 자원들을 관리할 수 있다. 멀티미디어 매니저(205)는, 예를 들면, 미디어 파일들의 재생에 필요한 하나 이상의 포맷들을 파악하고, 그 중 선택된 해당하는 포맷에 맞는 코덱을 이용하여 상기 미디어 파일들 중 해당하는 미디어 파일의 인코딩 또는 디코딩을 수행할 수 있다. 리소스 매니저(207)는, 예를 들면, 어플리케이션(146)의 소스 코드 또는 메모리(130)의 메모리의 공간을 관리할 수 있다. 파워 매니저(209)는, 예를 들면, 배터리(189)의 용량, 온도 또는 전원을 관리하고, 이 중 해당 정보를 이용하여 전자 장치(101)의 동작에 필요한 관련 정보를 결정 또는 제공할 수 있다. 일실시예에 따르면, 파워 매니저(209)는 전자 장치(101)의 바이오스(BIOS: basic input/output system)(미도시)와 연동할 수 있다.The application manager 201 may, for example, manage the life cycle of the application 146. The window manager 203 may, for example, manage one or more GUI resources used on the screen. For example, the multimedia manager 205 identifies one or more formats required for playing media files, and encodes or decodes the corresponding media file using a codec suitable for the selected format. It can be done. The resource manager 207 may, for example, manage the source code of the application 146 or the memory space of the memory 130. The power manager 209 manages, for example, the capacity, temperature, or power of the battery 189, and may use this information to determine or provide related information necessary for the operation of the electronic device 101. . According to one embodiment, the power manager 209 may interface with a basic input/output system (BIOS) (not shown) of the electronic device 101.

데이터베이스 매니저(211)는, 예를 들면, 어플리케이션(146)에 의해 사용될 데이터베이스를 생성, 검색, 또는 변경할 수 있다. 패키지 매니저(213)는, 예를 들면, 패키지 파일의 형태로 배포되는 어플리케이션의 설치 또는 갱신을 관리할 수 있다. 커넥티비티 매니저(215)는, 예를 들면, 전자 장치(101)와 외부 전자 장치 간의 무선 연결 또는 직접 연결을 관리할 수 있다. 노티피케이션 매니저(217)는, 예를 들면, 지정된 이벤트(예: 착신 통화, 메시지, 또는 알람)의 발생을 사용자에게 알리기 위한 기능을 제공할 수 있다. 로케이션 매니저(219)는, 예를 들면, 전자 장치(101)의 위치 정보를 관리할 수 있다. 그래픽 매니저(221)는, 예를 들면, 사용자에게 제공될 하나 이상의 그래픽 효과들 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. Database manager 211 may create, search, or change a database to be used by application 146, for example. The package manager 213 may, for example, manage the installation or update of applications distributed in the form of package files. The connectivity manager 215 may manage, for example, a wireless connection or direct connection between the electronic device 101 and an external electronic device. For example, the notification manager 217 may provide a function for notifying the user of the occurrence of a designated event (eg, an incoming call, message, or alarm). The location manager 219 may, for example, manage location information of the electronic device 101. The graphics manager 221 may, for example, manage one or more graphic effects to be provided to the user or a user interface related thereto.

시큐리티 매니저(223)는, 예를 들면, 시스템 보안 또는 사용자 인증을 제공할 수 있다. 통화(telephony) 매니저(225)는, 예를 들면, 전자 장치(101)에 의해 제공되는 음성 통화 기능 또는 영상 통화 기능을 관리할 수 있다. 음성 인식 매니저(227)는, 예를 들면, 사용자의 음성 데이터를 서버(108)로 전송하고, 그 음성 데이터에 적어도 일부 기반하여 전자 장치(101)에서 수행될 기능에 대응하는 명령어(command), 또는 그 음성 데이터에 적어도 일부 기반하여 변환된 문자 데이터를 서버(108)로부터 수신할 수 있다. 일 실시예에 따르면, 미들웨어(244)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. 일 실시예에 따르면, 미들웨어(144)의 적어도 일부는 운영 체제(142)의 일부로 포함되거나, 또는 운영 체제(142)와는 다른 별도의 소프트웨어로 구현될 수 있다.Security manager 223 may provide, for example, system security or user authentication. The telephony manager 225 may manage, for example, a voice call function or a video call function provided by the electronic device 101. For example, the voice recognition manager 227 transmits the user's voice data to the server 108 and provides a command corresponding to a function to be performed in the electronic device 101 based at least in part on the voice data, Alternatively, text data converted based at least in part on the voice data may be received from the server 108. According to one embodiment, the middleware 244 may dynamically delete some existing components or add new components. According to one embodiment, at least a portion of the middleware 144 may be included as part of the operating system 142 or may be implemented as separate software different from the operating system 142.

어플리케이션(146)은, 예를 들면, 홈(251), 다이얼러(253), SMS/MMS(255), IM(instant message)(257), 브라우저(259), 카메라(261), 알람(263), 컨택트(265), 음성 인식(267), 이메일(269), 달력(271), 미디어 플레이어(273), 앨범(275), 와치(277), 헬스(279)(예: 운동량 또는 혈당과 같은 생체 정보를 측정), 또는 환경 정보(281)(예: 기압, 습도, 또는 온도 정보 측정) 어플리케이션을 포함할 수 있다. 일실시예에 따르면, 어플리케이션(146)은 전자 장치(101)와 외부 전자 장치 사이의 정보 교환을 지원할 수 있는 정보 교환 어플리케이션(미도시)을 더 포함할 수 있다. 정보 교환 어플리케이션은, 예를 들면, 외부 전자 장치로 지정된 정보 (예: 통화, 메시지, 또는 알람)를 전달하도록 설정된 노티피케이션 릴레이 어플리케이션, 또는 외부 전자 장치를 관리하도록 설정된 장치 관리 어플리케이션을 포함할 수 있다. 노티피케이션 릴레이 어플리케이션은, 예를 들면, 전자 장치(101)의 다른 어플리케이션(예: 이메일 어플리케이션(269))에서 발생된 지정된 이벤트(예: 메일 수신)에 대응하는 알림 정보를 외부 전자 장치로 전달할 수 있다. 추가적으로 또는 대체적으로, 노티피케이션 릴레이 어플리케이션은 외부 전자 장치로부터 알림 정보를 수신하여 전자 장치(101)의 사용자에게 제공할 수 있다. The application 146 includes, for example, home 251, dialer 253, SMS/MMS (255), instant message (IM) 257, browser 259, camera 261, and alarm 263. , Contacts (265), Voice Recognition (267), Email (269), Calendar (271), Media Player (273), Album (275), Watch (277), Health (279) (such as exercise amount or blood sugar) It may include applications that measure biometric information) or environmental information 281 (e.g., measure atmospheric pressure, humidity, or temperature information). According to one embodiment, the application 146 may further include an information exchange application (not shown) that can support information exchange between the electronic device 101 and an external electronic device. The information exchange application may include, for example, a notification relay application configured to deliver designated information (e.g., calls, messages, or alarms) to an external electronic device, or a device management application configured to manage the external electronic device. there is. The notification relay application, for example, transmits notification information corresponding to a specified event (e.g., mail reception) generated in another application (e.g., email application 269) of the electronic device 101 to an external electronic device. You can. Additionally or alternatively, the notification relay application may receive notification information from an external electronic device and provide it to the user of the electronic device 101.

장치 관리 어플리케이션은, 예를 들면, 전자 장치(101)와 통신하는 외부 전자 장치 또는 그 일부 구성 요소(예: 외부 전자장치의 디스플레이 모듈 또는 카메라 모듈)의 전원(예: 턴-온 또는 턴-오프) 또는 기능(예: 밝기, 해상도, 또는 포커스)을 제어할 수 있다. 장치 관리 어플리케이션은, 추가적으로 또는 대체적으로, 외부 전자 장치에서 동작하는 어플리케이션의 설치, 삭제, 또는 갱신을 지원할 수 있다.The device management application, for example, controls the power (e.g., turn-on or turn-off) of an external electronic device or some component thereof (e.g., a display module or camera module of the external electronic device) that communicates with the electronic device 101. ) or functions (such as brightness, resolution, or focus). A device management application may additionally or alternatively support installation, deletion, or update of applications running on external electronic devices.

도 3은 일 실시예에 따른 배터리 관리 시스템의 전체 구성을 나타내는 도면이다. Figure 3 is a diagram showing the overall configuration of a battery management system according to an embodiment.

일 실시예에 따르면, 배터리 관리 시스템(300) (Battery Management System, BMS)은 배터리의 상태를 실시간으로 모니터링할 수 있다. 배터리 관리 시스템(300)은 배터리의 잔존 수명을 체크하거나 배터리의 불량 셀을 체크하는 등 배터리의 상태를 실시간으로 판단할 수 있다. 배터리 관리 시스템(300)은 실시간으로 배터리의 상태를 체크하고 이상 상태를 발견한 경우 빠르게 사용자에게 경고함으로써 시스템의 안전성을 향상시킬 수 있다.According to one embodiment, the battery management system 300 (Battery Management System, BMS) can monitor the status of the battery in real time. The battery management system 300 can determine the status of the battery in real time, such as checking the remaining life of the battery or checking for defective cells in the battery. The battery management system 300 can improve the safety of the system by checking the status of the battery in real time and quickly warning the user when an abnormal condition is detected.

배터리 관리 시스템(300)은 배터리의 안전 및 성능을 모니터링하고 이상 상태를 감지할 수 있는 기능을 제공한다. 배터리 관리 시스템(300)은 신뢰할 수 있는 정보를 제공하여 비행 중에 발생할 수 있는 문제를 사전에 예방하고 안전을 유지할 수 있도록 도와준다. The battery management system 300 provides functions to monitor the safety and performance of the battery and detect abnormal conditions. The battery management system 300 provides reliable information to help prevent problems that may occur during flight and maintain safety.

배터리 관리 시스템(300)은 배터리의 전압, 전류, 온도 등의 핵심 매개 변수를 모니터링하고 제어하는 시스템이다. 배터리 관리 시스템(300)은 배터리의 충전 상태, 방전 상태, 충전 및 방전 속도 등을 추적하여 운전자에게 배터리 상태에 대한 정보를 제공한다. 또한, 배터리 관리 시스템(300)은 과충전, 과방전, 과열 등의 위험 상황을 탐지하고 이에 대한 경고를 발생시키거나 배터리를 보호하기 위한 조치를 취할 수 있다The battery management system 300 is a system that monitors and controls key parameters such as voltage, current, and temperature of the battery. The battery management system 300 tracks the charging state, discharging state, charging and discharging speed, etc. of the battery and provides information about the battery state to the driver. Additionally, the battery management system 300 can detect dangerous situations such as overcharging, overdischarging, and overheating and issue a warning or take action to protect the battery.

배터리 관리 시스템(300)은 전압 및 전류 센서를 통해 실시간으로 전압과 전류 값을 모니터링한다. 이러한 센서를 통하여 배터리 관리 시스템(300)은 배터리의 충전 상태와 방전 상태를 추적하고, 전압이나 전류의 급격한 변화를 감지하여 문제가 발생할 수 있는 상황에 대한 경고를 제공한다.The battery management system 300 monitors voltage and current values in real time through voltage and current sensors. Through these sensors, the battery management system 300 tracks the charging and discharging states of the battery, detects sudden changes in voltage or current, and provides warnings about situations in which problems may occur.

배터리 관리 시스템(300)은 온도 센서를 통하여 배터리의 온도를 모니터링하여 과열을 감지한다. 과열은 배터리의 성능 저하를 초래하거나, 더 나쁜 경우에는 화재나 폭발의 위험을 야기할 수 있다. 배터리 관리 시스템(300)은 온도 센서를 통하여 배터리의 안전 온도 범위를 모니터링하고, 범위를 벗어나면 운전자에게 경고를 보내어 조치를 취할 수 있도록 돕는다.The battery management system 300 detects overheating by monitoring the temperature of the battery through a temperature sensor. Overheating can cause battery performance to deteriorate, or even worse, create a risk of fire or explosion. The battery management system 300 monitors the safe temperature range of the battery through a temperature sensor, and sends a warning to the driver when the temperature exceeds the range to help the driver take action.

배터리 관리 시스템(300)은 내장된 LED 등으로 표현되는 충전 상태 표시기를 가지고 있다 이 표시기는 배터리의 현재 충전 상태를 나타내어 운전자가 배터리의 잔량을 확인할 수 있도록 한다.The battery management system 300 has a charging status indicator represented by a built-in LED, etc. This indicator indicates the current charging status of the battery and allows the driver to check the remaining battery capacity.

배터리 관리 시스템(300)은 배터리 용량이나 잔존 수명을 추정하는 기능을 제공한다. 이는 배터리의 남은 에너지를 추적하고 예상 비행 시간 등의 정보를 제공하여 운전자가 비행 계획을 수립할 때 도움을 준다.The battery management system 300 provides a function to estimate battery capacity or remaining life. It tracks the remaining energy in the battery and provides information such as expected flight time to help drivers plan their flights.

이처럼, 배터리 관리 시스템(300)은 시스템의 안전과 성능에 중요한 역할을 한다. 운전자는 이러한 시스템을 통해 정기적인 점검과 유지 관리를 수행함으로써 배터리의 안전한 운영을 달성할 수 있다.In this way, the battery management system 300 plays an important role in the safety and performance of the system. Through these systems, drivers can achieve safe operation of the battery by performing regular inspection and maintenance.

이를 위하여, 일 실시예에 따르면, 배터리 관리 시스템(300)은 출력부(310), 측정부(320), 프로세서(330), 메모리(340), 온도 센서(350) 및 충전 상태 표시부(360)을 포함할 수 있다.To this end, according to one embodiment, the battery management system 300 includes an output unit 310, a measurement unit 320, a processor 330, a memory 340, a temperature sensor 350, and a charging status display unit 360. may include.

측정부(320)는 출력부(310)를 통해 인가된 전류에 반응하여 배터리에 흐르는 전류, 배터리의 전압을 측정하고, 이들을 통해 배터리의 임피던스를 측정할 수 있다. 일반적으로 배터리의 사용 시간이 증가하게 되면 배터리 내부에 화학적인 부산물이 쌓이게 되고 이러한 부산물은 임피던스를 증가시키게 된다. 측정부(320)는 배터리의 임피던스를 측정함으로써 배터리의 수명을 추정하기 위한 데이터를 수집할 수 있다. 측정부(320)는 서로 다른 시점에서 배터리의 임피던스를 측정할 수 있다. 복수의 시점은 주기성을 가질 수 있다. 예를 들어, 측정부(320)는 제1 시점에 상기 배터리의 임피던스를 측정하여 제1 임피던스를 결정하고, 제2 시점에 상기 배터리의 임피던스를 측정하여 제2 임피던스를 결정하고, 각 시점과 임피던스를 매칭하여 메모리(340)에 저장할 수 있다.The measuring unit 320 measures the current flowing in the battery and the voltage of the battery in response to the current applied through the output unit 310, and can measure the impedance of the battery through these. Generally, as the usage time of the battery increases, chemical by-products accumulate inside the battery, and these by-products increase impedance. The measuring unit 320 may collect data for estimating the life of the battery by measuring the impedance of the battery. The measuring unit 320 may measure the impedance of the battery at different points in time. Multiple time points may have periodicity. For example, the measuring unit 320 determines the first impedance by measuring the impedance of the battery at a first time point, determines the second impedance by measuring the impedance of the battery at a second time point, and determines the impedance at each time point and the impedance. can be matched and stored in the memory 340.

출력부(310)는 배터리의 상태를 측정하기 위하여 특정한 전류를 인가하는 구성이다. 출력부(310)는 배터리의 전류, 배터리의 전압, 배터리의 임피던스를 측정하기 위하여 배터리의 특성에 맞는 전류를 인가할 수 있다. 출력부(310)는 배터리에 정전류를 단계별로 입력할 수 있다.The output unit 310 is configured to apply a specific current to measure the state of the battery. The output unit 310 may apply a current suitable for the characteristics of the battery to measure the battery current, battery voltage, and battery impedance. The output unit 310 can input constant current to the battery step by step.

출력부(310)는 측정부에 의해 측정된 전압에 대응하여 캐패시터를 선택할 수 있다. 출력부(310)는 배터리의 임피던스의 저항 및 리액턴스 측정을 위하여 입력 전류의 주파수를 선택할 수 있다. 측정부(320)는 출력부(310)를 통해 인가되는 전류의 주파수를 조정함으로써 배터리의 저항과 리액턴스를 선택적으로 측정할 수 있다. 출력부(310)는 측정부에 의해 측정되는 임피던스에 대응하여 입력 전류의 크기를 설정할 수 있다. 측정부(320)는 계측 범위가 800V에 이르며, 고전압 배터리까지 전압 측정이 가능하여 400V 이하의 타사 제품에 비해 높은 범용성을 가진다. 또한, 저항만 측정하는 타사 제품에 비해 측정부(320)는 리액턴스까지 측정함으로써 임피던스 자체를 정확하게 측정할 수 있는 장점이 있다. 임피던스 전체를 정확하게 측정함으로써 배터리의 불량 상태 및 잔존 수명은 보다 정확하게 추정될 수 있다. The output unit 310 may select a capacitor in response to the voltage measured by the measurement unit. The output unit 310 may select the frequency of the input current to measure the resistance and reactance of the impedance of the battery. The measuring unit 320 can selectively measure the resistance and reactance of the battery by adjusting the frequency of the current applied through the output unit 310. The output unit 310 may set the size of the input current in response to the impedance measured by the measurement unit. The measurement unit 320 has a measurement range of up to 800V and can measure voltage up to high-voltage batteries, making it highly versatile compared to other products below 400V. Additionally, compared to other products that only measure resistance, the measuring unit 320 has the advantage of being able to accurately measure the impedance itself by measuring reactance as well. By accurately measuring the entire impedance, the battery's defective state and remaining life can be more accurately estimated.

출력부(310)는 배터리로부터 전달되는 전류의 잡음을 필터링하여 보다 정확성을 높일 수 있다. 출력부(310)는 출력부에 인가되는 정전기를 제거할 수 있다. 출력부(310)는 캐패시터에 남아있는 전하에 의해 발생하는 스파크를 제거할 수 있다. 출력부(310)는 고전압이 회로에 인가되는 경우 커플링 캐패시터에 발생하는 순간적인 차징으로 인한 합선을 완화시켜 주는 보조 회로를 포함함으로써 높은 안전성을 확보할 수 있다.The output unit 310 can improve accuracy by filtering noise in the current transmitted from the battery. The output unit 310 can remove static electricity applied to the output unit. The output unit 310 can remove sparks generated by charges remaining in the capacitor. The output unit 310 can ensure high safety by including an auxiliary circuit that alleviates a short circuit due to momentary charging that occurs in the coupling capacitor when a high voltage is applied to the circuit.

온도 센서(350)는 배터리의 온도를 모니터링하여 과열을 감지한다. 온도 센서(350)는 배터리의 안전 온도 범위를 모니터링하고, 범위를 벗어나면 운전자에게 경고를 보내어 조치를 취할 수 있도록 돕는다.The temperature sensor 350 monitors the temperature of the battery and detects overheating. Temperature sensor 350 monitors the battery's safe temperature range and alerts the driver if the temperature exceeds the range so that he or she can take action.

프로세서(330)는 배터리의 임피던스를 실시간으로 모니터링할 수 있다. 프로세서(330)는 일정한 시간 주기로 배터리의 임피던스를 측정하고 임피던스의 변화를 분석할 수 있다. 프로세서(330)는 임피던스의 분석 결과를 통해 배터리의 수명을 추청할 수 있다. 프로세서(330)는 배터리의 수명이 위험 수준인 경우 경고하거나 교체를 권고할 수 있다. 또한, 프로세서(330)는 실시간으로 불필요한 에너지를 절약함으로써 배터리의 에너지를 효율적으로 관리할 수 있다.The processor 330 can monitor the impedance of the battery in real time. The processor 330 can measure the impedance of the battery at regular time periods and analyze changes in impedance. The processor 330 can estimate the lifespan of the battery through the impedance analysis results. The processor 330 can warn or recommend replacement when the battery life is at a critical level. Additionally, the processor 330 can efficiently manage battery energy by saving unnecessary energy in real time.

메모리(340)는 시간에 따라 측정되는 임피던스를 저장할 수 있다. 메모리(340)는 기본 재원, 배터리의 기본 정보 또는 프로파일, 배터리의 용량, 배터리의 사용 시간, 배터리의 충전 횟수, 온도 센서에 의해 측정된 온도, 배터리의 수명을 추정하기 위한 뉴럴 네트워크 모델을 저장할 수 있다.Memory 340 may store impedance measured over time. The memory 340 can store basic resources, basic information or profile of the battery, capacity of the battery, usage time of the battery, number of charging times of the battery, temperature measured by the temperature sensor, and a neural network model for estimating the life of the battery. there is.

충전 상태 표시부(360)는 내장된 LED 등으로 배터리의 충전 상태를 표현할 수 있다. 충전 상태 표시부(360)는 배터리의 현재 충전 상태를 나타내어 운전자가 배터리의 잔량을 확인할 수 있다.The charging status display unit 360 can express the charging status of the battery using a built-in LED. The charging status display unit 360 indicates the current charging status of the battery so that the driver can check the remaining battery capacity.

이하에서는, 배터리의 잔존 수명을 추정하는 과정이 설명된다.Below, the process of estimating the remaining life of the battery is described.

프로세서(330)는 초기 임피던스보다 높은 임피던스를 감지하여 배터리의 수명이 줄어들었다고 판단할 수 있다. 프로세서(330)는 초기 임피던스를 기준으로 설정한다. 이 초기 임피던스는 배터리의 최적 상태를 나타내며, 수명이 최대치인 상태이다. 초기 임피던스는 배터리의 사용 전에 정확하게 측정하고 저장하여 비교에 활용한다.The processor 330 may detect an impedance higher than the initial impedance and determine that the life of the battery has been reduced. The processor 330 sets the initial impedance as a reference. This initial impedance represents the optimal state of the battery and is at its maximum lifetime. The initial impedance is accurately measured and stored before use of the battery and used for comparison.

프로세서(330)는 실시간 임피던스 값을 초기 임피던스 값과 비교하여 차이를 분석한다. 임피던스가 초기 임피던스보다 상당히 증가한 경우, 이는 배터리의 내부 저항이 증가하여 수명이 줄어들었을 가능성을 나타낼 수 있다. 임피던스의 증가는 배터리의 내부 구성 요소인 화학물질의 변화나 축적된 부식 등으로 인해 발생할 수 있다. 프로세서(330)는 임피던스 증가에 따른 수명 감소 패턴을 분석하여 배터리의 예상 수명을 추정할 수 있다. 이를 통해 프로세서(330)는 운전자에게 수명이 줄어드는 배터리에 대한 사전 경고를 제공할 수 있다.The processor 330 compares the real-time impedance value with the initial impedance value and analyzes the difference. If the impedance has increased significantly from the initial impedance, this may indicate that the internal resistance of the battery has increased, possibly reducing its lifespan. An increase in impedance may occur due to changes in chemicals or accumulated corrosion, which are internal components of the battery. The processor 330 may estimate the expected lifespan of the battery by analyzing the pattern of lifespan decrease as impedance increases. Through this, the processor 330 can provide the driver with an advance warning about a battery whose lifespan is decreasing.

프로세서(330)는 임피던스 증가가 감지될 경우 운전자에게 경고를 보내어 배터리의 수명이 줄어들었음을 알릴 수 있다. 경고는 비행 중이더라도 시각적, 오디오적 또는 알림 메시지를 통해 전달될 수 있다. 또한, 프로세서(330)는 배터리의 교체 권고를 제공하여 운전자가 수명이 감소한 배터리를 교체할 수 있도록 안내할 수 있다.If an increase in impedance is detected, the processor 330 can send a warning to the driver to inform him or her that the life of the battery has decreased. Alerts can be delivered visually, audio or through notification messages, even during flight. Additionally, the processor 330 may provide battery replacement recommendations and guide the driver to replace a battery whose lifespan has decreased.

이처럼, 배터리 관리 시스템(300)은 임피던스 측정과 비교를 통해 배터리의 수명 변화를 감지하고, 운전자에게 해당 정보를 제공하여 배터리의 상태를 모니터링하고 유지보수를 수행할 수 있도록 도와줄 수 있다.In this way, the battery management system 300 can detect changes in the lifespan of the battery through impedance measurement and comparison, and provide the corresponding information to the driver to help monitor the state of the battery and perform maintenance.

수명 감소 예측을 위해 뉴럴 네트워크 모델을 사용하는 방식은 다음과 같이 설명될 수 있다.The method of using a neural network model to predict lifespan decline can be explained as follows.

배터리 관리 시스템(300)은 수명 감소 예측을 위해 다양한 배터리의 특성과 수명 정보를 수집할 수 있다. 이 데이터는 초기 임피던스, 배터리 용량, 주행 시간, 충전 횟수, 온도 등과 같은 다양한 입력 변수를 포함할 수 있다. 또한, 각 배터리의 실제 수명을 기록한 레이블 데이터도 포함될 수 있다.The battery management system 300 may collect characteristics and lifespan information of various batteries to predict lifespan reduction. This data can include a variety of input variables such as initial impedance, battery capacity, driving time, number of charges, temperature, etc. Additionally, label data recording the actual lifespan of each battery may be included.

뉴럴 네트워크 모델의 입력 변수는 배터리의 특성을 나타내는 다양한 변수로 구성된다. 이 변수들은 배터리의 상태 및 사용 정보를 나타내며, 예를 들어 초기 임피던스, 배터리 용량, 주행 시간, 충전 횟수, 온도, 현재 임피던스 등이 될 수 있다. The input variables of the neural network model consist of various variables that represent the characteristics of the battery. These variables represent the status and usage information of the battery and can be, for example, initial impedance, battery capacity, driving time, number of charges, temperature, current impedance, etc.

수집한 데이터는 전처리 과정을 거쳐 모델 학습에 적합한 형태로 가공된다. 이 과정에서 데이터의 정규화, 이상치 처리, 누락된 값 대체 등이 수행될 수 있다. 데이터는 학습 데이터와 검증 데이터, 테스트 데이터로 분할하여 모델을 평가하는 데 사용된다.The collected data goes through a preprocessing process and is processed into a form suitable for model learning. In this process, data normalization, outlier processing, missing value replacement, etc. can be performed. The data is divided into training data, validation data, and test data and is used to evaluate the model.

수명 감소 예측을 위한 뉴럴 네트워크 모델은 입력 변수와 해당 배터리의 수명 정보를 활용하여 모델의 학습 및 예측을 수행한다. 모델의 구조는 다층 퍼셉트론(MLP), 순환 신경망(RNN), 변형된 자기 회귀 모델(LSTM, GRU) 등 다양한 아키텍처를 고려될 수 있다. 본 명세서에서 뉴럴 네트워크 모델은 RNN 모델로 설계될 수 있다.The neural network model for predicting lifespan reduction uses input variables and the lifespan information of the relevant battery to learn and predict the model. The structure of the model can consider various architectures, such as multilayer perceptron (MLP), recurrent neural network (RNN), and modified autoregressive models (LSTM, GRU). In this specification, the neural network model may be designed as an RNN model.

뉴럴 네트워크 모델은 학습 데이터를 통해 학습될 수 있다. 이 과정에서 모델은 입력 변수와 수명 정보 간의 관계를 학습하여 수명 감소를 예측할 수 있도록 한다. 검증 데이터에 대해 학습된 모델의 성능이 평가되고, 최적의 모델 파라미터를 결정된다.Neural network models can be learned through training data. In this process, the model learns the relationship between input variables and lifespan information to predict lifespan decline. The performance of the learned model on validation data is evaluated, and optimal model parameters are determined.

임피던스의 저항 및 리액턴스, 충전 횟수, 온도, 사용 시간, 용량으로 구성된 각각의 학습 데이터는 뉴럴 네트워크 모델의 입력 레이어에 입력되어 하나 이상의 은닉 레이어 및 출력 레이어를 통과하여 출력 벡터를 출력하고, 출력 벡터는 출력 레이어에 연결된 손실함수 레이어에 입력되고, 손실함수 레이어는 출력 벡터와 각각의 학습 데이터에 대한 정답 벡터를 비교하는 손실 함수를 이용하여 손실값을 출력하고, 뉴럴 네트워크 모델의 파라미터는 손실값이 작아지는 방향으로 학습될 수 있다.Each learning data consisting of impedance resistance and reactance, number of charges, temperature, usage time, and capacity is input to the input layer of the neural network model and passes through one or more hidden layers and output layers to output an output vector, and the output vector is It is input to the loss function layer connected to the output layer, and the loss function layer outputs the loss value using a loss function that compares the output vector with the correct answer vector for each training data, and the parameters of the neural network model have a small loss value. It can be learned in a losing direction.

[수학식 1][Equation 1]

상기 손실 함수는 상기 수학식 1을 따를 수 있다.The loss function may follow Equation 1 above.

상기 수학식 1에서, n은 클래스 별 학습 데이터의 수, y와 j는 클래스를 나타내는 식별자, C는 상수값, M은 클래스의 개수, x_y는 학습 데이터가 클래스 y에 속할 확률값, x_j는 학습 데이터가 클래스 j에 속할 확률값, L은 손실값을 의미하는,In Equation 1, n is the number of learning data for each class, y and j are identifiers representing the classes, C is a constant value, M is the number of classes, x_y is the probability that the learning data belongs to class y, and x_j is the learning data. is the probability value of belonging to class j, L is the loss value,

수학식 1에는 클래스 별 학습 데이터의 수가 반영되기 때문에, 학습 데이터의 수가 작은 클래스는 학습에 작은 영향을 미치고 학습 데이터의 수가 큰 클래스는 학습에 큰 영향을 미칠 수 있다.Since Equation 1 reflects the number of learning data for each class, a class with a small number of learning data may have a small impact on learning, and a class with a large number of learning data may have a large impact on learning.

프로세서(330)는 수명 감소 예측을 수행할지 여부를 먼저 결정할 수 있다. 프로세서(330)는 배터리의 수명을 추정하기에 앞서, 배터리의 수명을 추정할지 여부를 결정할 수 있다. 프로세서(330)는 제1 임피던스, 제2 임피던스, 배터리의 충전 횟수, 온도 센서에 의해 측정된 온도, 배터리의 사용 시간, 배터리의 용량을 기초로 배터리의 수명의 추정을 진행할지 여부를 결정할 수 있다. 여기서, 제1 임피던스는 제1 시점에 측정된 임피던스를 의미하고, 제2 임피던스는 제2 시점에 측정된 임피던스를 의미한다. 진행하기로 결정된 경우, 프로세서(330)는 뉴럴 네트워크 모델을 이용하여 배터리의 수명을 추정할 수 있다. 프로세서(330)는 매 시점마다 모델을 돌리지 않고 배터리 수명에 영향을 미치는 경우라고 판단될 때에만 예측을 함으로써 배터리 관리 시스템(300)의 리소스를 절약할 수 있다. Processor 330 may first determine whether to perform lifetime reduction prediction. Before estimating the life of the battery, the processor 330 may determine whether to estimate the life of the battery. The processor 330 may determine whether to proceed with estimating the life of the battery based on the first impedance, the second impedance, the number of charging times of the battery, the temperature measured by the temperature sensor, the usage time of the battery, and the capacity of the battery. . Here, the first impedance refers to the impedance measured at the first time point, and the second impedance refers to the impedance measured at the second time point. If it is decided to proceed, the processor 330 can estimate the lifespan of the battery using a neural network model. The processor 330 can save resources of the battery management system 300 by making predictions only when it is determined that battery life will be affected, rather than running the model at every time.

프로세서(330)는 수학식 2를 이용하여 비교값을 구하고, 비교값을 기준값과 비교하여 수명 감소 예측을 수행할지 여부를 먼저 결정할 수 있다. 프로세서(330)는 비교값이 기준값보다 더 큰 경우에 수명 감소 예측을 수행할 수 있다. 기준값은 배터리의 종류에 따라 학습을 통해 미리 설정될 수 있다.The processor 330 may obtain a comparison value using Equation 2, and compare the comparison value with a reference value to first determine whether to perform a lifespan reduction prediction. The processor 330 may perform a lifespan reduction prediction when the comparison value is greater than the reference value. The reference value can be set in advance through learning depending on the type of battery.

[수학식 2][Equation 2]

프로세서(330)는 제1 임피던스, 제2 임피던스, 배터리의 충전 횟수, 온도 센서에 의해 측정된 온도, 배터리의 사용 시간, 배터리의 용량에 관한 정보를 기초로 상태 벡터를 결정할 수 있다. 상태 벡터는 특정 시점에서 배터리의 상태와 관련된 데이터로 구성된 벡터 형태의 데이터이다. 예를 들어, 상태 벡터 S1, S2은, 각각 제1 시점, 제2 시점의 임피던스의 R값, X값, 충전 횟수, 온도, 사용 시간, 용량의 7차원의 벡터일 수 있다.The processor 330 may determine the state vector based on information about the first impedance, the second impedance, the number of times the battery has been charged, the temperature measured by the temperature sensor, the usage time of the battery, and the capacity of the battery. A state vector is data in the form of a vector consisting of data related to the state of the battery at a specific point in time. For example, the state vectors S1 and S2 may be 7-dimensional vectors of impedance R value, X value, number of charges, temperature, usage time, and capacity at the first and second time points, respectively.

n은 상태 벡터의 차원의 수, P1i는 제1 상태 벡터의 i번째 차원의 값, P2i는 제2 상태 벡터의 i번째 차원의 값, ai는 학습에 의해 설정된 i번째 차원에 대응하는 가중치, b는 학습에 의해 설정된 summation에 적용되는 가중치를 의미한다. min 함수는 괄호 안의 두 값 중에서 더 작은 값을 결정하는 함수이다.n is the number of dimensions of the state vector, P1i is the value of the ith dimension of the first state vector, P2i is the value of the ith dimension of the second state vector, ai is the weight corresponding to the ith dimension set by learning, b refers to the weight applied to the summary set by learning. The min function is a function that determines the smaller value among the two values in parentheses.

학습된 모델은 새로운 배터리에 대한 수명 감소 예측을 수행할 수 있다. 이를 위해 새로운 배터리의 입력 변수를 모델에 제공하면 모델은 해당 배터리의 수명 감소를 예측할 수 있다. 모델의 출력은 예상 수명 또는 수명에 대한 상대적인 저하 정도일 수 있다.The learned model can perform lifespan reduction predictions for new batteries. To do this, if the input variables of a new battery are provided to the model, the model can predict the decrease in life of that battery. The output of the model may be the expected lifespan or the relative degradation of the lifespan.

뉴럴 네트워크 모델은 입력 레이어, 하나 이상의 은닉 레이어 및 출력 레이어를 포함할 수 있다. 뉴럴 네트워크 모델은 시계열 데이터와 같은 순차적인 입력에 대해 강력한 모델링 능력을 가지고 있다. A neural network model may include an input layer, one or more hidden layers, and an output layer. Neural network models have powerful modeling capabilities for sequential inputs such as time series data.

프로세서(330)는 제1 임피던스, 제2 임피던스, 배터리의 충전 횟수, 온도 센서에 의해 측정된 온도, 배터리의 사용 시간, 배터리의 용량을 기초로 뉴럴 네트워크 모델을 이용하여 배터리의 수명을 추정할 수 있다. 여기서, 제1 임피던스는 제1 시점에 측정된 임피던스를 의미하고, 제2 임피던스는 제2 시점에 측정된 임피던스를 의미한다. 제1 시점은 제2 시점보다 앞선 시점이다. 이하에서는 설명의 편의를 위하여 두 시점만을 가정하지만, 이는 예시일 뿐이며, 3개 이상의 복수의 시점의 데이터가 관여될 수 있다. 각 시점 사이의 시간은 일정할 수도 있고, 특정한 이벤트에 따라 측정될 경우에는 일정하지 않을 수도 있다.The processor 330 can estimate the life of the battery using a neural network model based on the first impedance, the second impedance, the number of charging times of the battery, the temperature measured by the temperature sensor, the usage time of the battery, and the capacity of the battery. there is. Here, the first impedance refers to the impedance measured at the first time point, and the second impedance refers to the impedance measured at the second time point. The first point in time is a point in time preceding the second point in time. In the following, only two viewpoints are assumed for convenience of explanation, but this is only an example, and data from three or more viewpoints may be involved. The time between each point in time may be constant, or it may be inconsistent if measured according to a specific event.

입력 레이어는 특정 시점의 임피던스의 R값, X값, 충전 횟수, 온도, 사용 시간, 용량의 7차원의 배터리 상태와 관련된 다양한 변수를 기초로 구성된 상태 벡터를 입력으로서 받을 수 있다. 프로세서(330)는 제1 임피던스의 저항 및 리액턴스, 제1 시점의 충전 횟수, 제1 시점의 온도, 제1 시점의 사용 시간, 제1 시점의 용량으로 구성되는 제1 입력 벡터 및 제2 임피던스의 저항 및 리액턴스, 제2 시점의 충전 횟수, 제2 시점의 온도, 제2 시점의 사용 시간, 제2 시점의 용량으로 구성되는 제2 입력 벡터를 결정할 수 있다.The input layer can receive as input a state vector constructed based on various variables related to the seven-dimensional battery state such as impedance R value, X value, number of charges, temperature, usage time, and capacity at a specific point in time. The processor 330 is a first input vector consisting of the resistance and reactance of the first impedance, the number of charging times at the first time, the temperature at the first time, the usage time at the first time, and the capacity at the first time. A second input vector consisting of resistance and reactance, the number of charges at the second point in time, the temperature at the second point in time, the usage time at the second point in time, and the capacity at the second point in time can be determined.

은닉 레이어는 재귀 레이어를 포함할 수 있다. 은닉 레이어는 이전 시간 단계의 입력 값을 기억하고 현재 시간 단계의 입력과 함께 처리한다. 은닉 레이어는 내부적으로 가중치와 활성화 함수를 사용하여 입력 데이터를 처리하고 출력을 생성한다. 은닉 레이어는 이전 시간 단계의 입력 값을 기억하여 현재 시간 단계에서 이를 고려하고 예측에 반영한다. 은닉 레이어에서, 프로세서(330)는 제1 입력 벡터에 대응하는 제1 은닉 상태에 은닉 가중치를 적용하고 제2 입력 벡터에 입력 가중치를 적용하여 제2 입력 벡터에 대응하는 제2 은닉 상태를 계산하고, 제2 은닉 상태를 비선형 활성화 함수에 입력하여 출력 벡터를 출력할 수 있다.Hidden layers may contain recursive layers. The hidden layer remembers the input values of the previous time step and processes them together with the input of the current time step. The hidden layer internally uses weights and activation functions to process input data and produce output. The hidden layer remembers the input values from the previous time step, considers them at the current time step, and reflects them in the prediction. In the hidden layer, processor 330 calculates a second hidden state corresponding to the second input vector by applying a hidden weight to the first hidden state corresponding to the first input vector and applying the input weight to the second input vector. , the second hidden state can be input to the non-linear activation function to output an output vector.

출력 레이어는 뉴럴 네트워크 모델의 최종 출력을 생성한다. 이 출력은 예측된 배터리 수명과 같은 원하는 출력 데이터를 포함한다. 출력 레이어는 활성화 함수를 통해 모델의 출력 값을 조정하여 예측 범위에 맞게 조절한다. 출력 레이어에서, 프로세서(330)는 출력 벡터를 기초로 소프트맥스 함수를 이용하여 확률 벡터를 출력할 수 있다. 프로세서(330)는 확률 벡터를 기초로 배터리의 수명을 추정할 수 있다.The output layer produces the final output of the neural network model. This output contains desired output data, such as predicted battery life. The output layer adjusts the model's output value through an activation function to fit the prediction range. In the output layer, the processor 330 may output a probability vector using a softmax function based on the output vector. The processor 330 may estimate the lifespan of the battery based on the probability vector.

예를 들어, 다중 클래스 분류를 해야 하는 경우, 출력 레이어에서 소프트맥스 함수가 사용될 수 있다. 예를 들어, 출력 레이어는 10% 수명 감소, 20% 수명 감소 ?? 90 % 수명 감소 100% 수명 감소의 10개의 클래스를 분류할 수 있으며, 최종 벡터는 각 클래스에 대한 확률을 나타낼 수 있다. 예를 들어, 최종 벡터가 (0.001,0.987, ?? ,0.003)인 경우, 프로세서(330)는 초기 상태에 비해 20%의 수명이 감소된 것으로 추정할 수 있다.For example, if multi-class classification is required, the softmax function can be used in the output layer. For example, output layer has 10% lifetime reduction, 20% lifetime reduction ?? Ten classes of 90% lifespan reduction and 100% lifespan reduction can be classified, and the final vector can represent the probability for each class. For example, if the final vector is (0.001,0.987, ??,0.003), the processor 330 may estimate that the lifespan has been reduced by 20% compared to the initial state.

이와 같이 배터리 관리 시스템(300)은 뉴럴 네트워크 모델을 활용하여 배터리의 임피던스 증가와 수명 감소 사이의 관계를 학습하고 예측함으로써 배터리의 성능과 효율성이 제고될 수 있다.In this way, the battery management system 300 can improve the performance and efficiency of the battery by learning and predicting the relationship between the increase in impedance of the battery and the decrease in lifespan using a neural network model.

본 명세서에 걸쳐, 뉴럴 네트워크(neural network), 신경망 네트워크, 네트워크 함수는, 동일한 의미로 사용될 수 있다. 뉴럴 네트워크는, 일반적으로 "노드"라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 "노드"들은, "뉴런(neuron)"들로 지칭될 수도 있다. 뉴럴 네트워크는, 적어도 둘 이상의 노드들을 포함하여 구성된다. 뉴럴 네트워크들을 구성하는 노드(또는 뉴런)들은 하나 이상의 "링크"에 의해 상호 연결될 수 있다.Throughout this specification, neural network, neural network, and network function may be used with the same meaning. A neural network may consist of a set of interconnected computational units, which may generally be referred to as “nodes.” These “nodes” may also be referred to as “neurons.” A neural network is composed of at least two or more nodes. Nodes (or neurons) that make up neural networks may be interconnected by one or more “links.”

뉴럴 네트워크 내에서, 링크를 통해 연결된 둘 이상의 노드들은 상대적으로 입력 노드 및 출력 노드의 관계를 형성할 수 있다. 입력 노드 및 출력 노드의 개념은 상대적인 것으로서, 하나의 노드에 대하여 출력 노드 관계에 있는 임의의 노드는 다른 노드와의 관계에서 입력 노드 관계에 있을 수 있으며, 그 역도 성립할 수 있다. 전술한 바와 같이, 입력 노드 대 출력 노드 관계는 링크를 중심으로 생성될 수 있다. 하나의 입력 노드에 하나 이상의 출력 노드가 링크를 통해 연결될 수 있으며, 그 역도 성립할 수 있다.Within a neural network, two or more nodes connected through a link can relatively form a relationship as an input node and an output node. The concepts of input node and output node are relative, and any node in an output node relationship with one node may be in an input node relationship with another node, and vice versa. As described above, input node to output node relationships can be created around links. One or more output nodes can be connected to one input node through a link, and vice versa.

하나의 링크를 통해 연결된 입력 노드 및 출력 노드 관계에서, 출력 노드는 입력 노드에 입력된 데이터에 기초하여 그 값이 결정될 수 있다. 여기서, 입력 노드와 출력 노드를 상호 연결하는 노드는 가중치를 가질 수 있다. 가중치는 가변적일 수 있으며, 뉴럴 네트워크가 원하는 기능을 수행하기 위해, 사용자 또는 알고리즘에 의해 가변될 수 있다. 예를 들어, 하나의 출력 노드에 하나 이상의 입력 노드가 각각의 링크에 의해 상호 연결된 경우, 출력 노드는 상기 출력 노드와 연결된 입력 노드들에 입력된 값들 및 각각의 입력 노드들에 대응하는 링크에 설정된 가중치에 기초하여 출력 노드 값을 결정할 수 있다.In a relationship between an input node and an output node connected through one link, the value of the output node may be determined based on data input to the input node. Here, nodes connecting the input node and the output node may have weights. Weights may be variable and may be varied by a user or algorithm in order for the neural network to perform a desired function. For example, when one or more input nodes are connected to one output node by respective links, the output node is set to the values input to the input nodes connected to the output node and the links corresponding to each input node. The output node value can be determined based on the weight.

전술한 바와 같이, 뉴럴 네트워크는, 둘 이상의 노드들이 하나 이상의 링크를 통해 상호연결 되어 뉴럴 네트워크 내에서 입력 노드 및 출력 노드 관계를 형성한다. 뉴럴 네트워크 내에서 노드들과 링크들의 개수 및 노드들과 링크들 사이의 연관관계, 링크들 각각에 부여된 가중치의 값에 따라, 신경망 네트워크의 특성이 결정될 수 있다. 예를 들어, 동일한 개수의 노드 및 링크들이 존재하고, 링크들 사이의 가중치 값이 상이한 두 신경망 네트워크가 존재하는 경우, 두 개의 신경망 네트워크들은 서로 상이한 것으로 인식될 수 있다.As described above, in a neural network, two or more nodes are interconnected through one or more links to form an input node and output node relationship within the neural network. The characteristics of the neural network may be determined according to the number of nodes and links in the neural network, the correlation between the nodes and links, and the value of the weight assigned to each link. For example, if there are two neural networks with the same number of nodes and links and different weight values between the links, the two neural networks may be recognized as different from each other.

도 4는 일 실시예에 따른 출력부의 구조를 도시한 도면이다. Figure 4 is a diagram showing the structure of an output unit according to one embodiment.

도 4를 참조하면, 출력부(310)는 배터리(401)와 연결되는 고주파 필터링 회로(311), 고주파 필터링 회로(311)와 연결되는 서지 보호 회로(315), 스파크 방지 회로(317), 캐패시터 선택 회로(313) 및 정전류 입력 회로(319)를 포함할 수 있다. 스파크 방지 회로(317)는 서지 보호 회로(315), 캐패시터 선택 회로(313) 및 정전류 입력 회로(319)와 연결될 수 있다.Referring to FIG. 4, the output unit 310 includes a high-frequency filtering circuit 311 connected to the battery 401, a surge protection circuit 315 connected to the high-frequency filtering circuit 311, a spark prevention circuit 317, and a capacitor. It may include a selection circuit 313 and a constant current input circuit 319. The spark prevention circuit 317 may be connected to the surge protection circuit 315, the capacitor selection circuit 313, and the constant current input circuit 319.

고주파 필터링 회로(311)는 배터리(401)로부터 전달되는 전압에 포함된 노이즈를 필터링하여 스파크 방지 회로(317)로 전달할 수 있다. 도 4에서, BD1은 배터리의 플러스 단자에 연결되는 비드이고, BD2는 배터리의 마이너스 단자에 연결되는 비드이다. BD1, BD2는 고주파 잡음을 필터링한다.The high-frequency filtering circuit 311 may filter noise contained in the voltage transmitted from the battery 401 and transmit it to the spark prevention circuit 317. In Figure 4, BD1 is a bead connected to the positive terminal of the battery, and BD2 is a bead connected to the negative terminal of the battery. BD1 and BD2 filter high-frequency noise.

서지 보호 회로(315)(Transient Voltage Suppressors, TVS) 는 출력부(310)의 내부의 정전기를 제거할 수 있다. 예를 들어, 출력부(310)의 내부에는 몇 천에서 몇 만 볼트의 정전기가 발생할 수 있는데, 서지 보호 회로(315)는 이러한 고전압을 그라운드로 보낼 수 있다.The surge protection circuit 315 (Transient Voltage Suppressors, TVS) can remove static electricity inside the output unit 310. For example, static electricity of several thousand to tens of thousands of volts may be generated inside the output unit 310, and the surge protection circuit 315 can send this high voltage to the ground.

스파크 방지 회로(317)는 배터리가 출력부에 연결될 때 발생하는 스파크를 제거하고, 배터리가 출력부와 개방될 때 발생하는 스파크를 제거할 수 있다. 배터리(401)가 측정부(310)에서 떨어지는 순간 측정부(310)에 스파크가 발생할 수 있는데, 스파크 방지 회로(317)는 R1, R2를 통해 전하를 그라운드로 전달함으로써 스파크를 방지할 수 있다. 예를 들어, R1은 220k, R2는 10M일 수 있다. 이때, 스파크 방지 회로(317)는 두 개의 스위치를 각각 7번 단자 및 2번 단자에 연결할 수 있다. 배터리(401)가 측정부(310)에 접촉하는 순간 측정부(310)에 스파크가 발생할 수 있는데, 스파크 방지 회로(317)는 R3, R4, D4를 통해 전하를 그라운드로 전달함으로써 스파크를 방지할 수 있다. 이때, 스파크 방지 회로(317)는 두 개의 스위치를 각각 4번 단자 및 5번 단자에 연결할 수 있다. The spark prevention circuit 317 may remove sparks that occur when the battery is connected to the output unit and remove sparks that occur when the battery is opened to the output unit. The moment the battery 401 falls from the measuring unit 310, sparks may occur in the measuring unit 310, and the spark prevention circuit 317 can prevent sparks by transferring charge to the ground through R1 and R2. For example, R1 may be 220k and R2 may be 10M. At this time, the spark prevention circuit 317 may connect two switches to terminal 7 and terminal 2, respectively. The moment the battery 401 contacts the measuring part 310, a spark may occur in the measuring part 310, and the spark prevention circuit 317 prevents sparks by transferring charge to the ground through R3, R4, and D4. You can. At this time, the spark prevention circuit 317 may connect two switches to terminals 4 and 5, respectively.

캐패시터 선택 회로(313)는 제1 캐패시터(C1) 및 제2 캐패시터(C2)를 포함할 수 있다. 캐패시터 선택 회로(313)는 측정부(320)에 의해 측정된 배터리(401)의 전압이 임계 전압 이하인 경우 제1 캐패시터 및 제2 캐패시터를 병렬로 연결할 수 있다. 캐패시터 선택 회로(313)는 측정부(320)에 의해 측정된 배터리(401)의 전압이 임계 전압을 초과하는 경우 제1 캐패시터 및 제2 캐패시터를 직렬로 연결할 수 있다. The capacitor selection circuit 313 may include a first capacitor (C1) and a second capacitor (C2). The capacitor selection circuit 313 may connect the first capacitor and the second capacitor in parallel when the voltage of the battery 401 measured by the measuring unit 320 is below the threshold voltage. The capacitor selection circuit 313 may connect the first capacitor and the second capacitor in series when the voltage of the battery 401 measured by the measurement unit 320 exceeds the threshold voltage.

예를 들어, 임계 전압은 200V일 수 있다. 저압 배터리의 임피던스를 측정하기 위해, 캐패시터 선택 회로(313)는 제1 캐패시터 및 제2 캐패시터를 병렬로 연결할 수 있다. 캐패시터 선택 회로(313)는 두 개의 스위치를 각각 5번 단자 및 4번 단자에 연결할 수 있다. 여기서 저압은 DC 0V - 200V를 의미할 수 있다. 고압 배터리의 임피던스를 측정하기 위해, 캐패시터 선택 회로(313)는 제1 캐패시터 및 제2 캐패시터를 직렬로 연결할 수 있다. 캐패시터 선택 회로(313)는 두 개의 스위치를 각각 7번 단자 및 2번 단자에 연결할 수 있다. 여기서 고압은 DC 201V - 800V를 의미할 수 있다. 이처럼, 캐패시터의 선택적인 결합을 통해 저전압과 고전압의 배터리의 임피던스가 모두 측정될 수 있다.For example, the threshold voltage may be 200V. To measure the impedance of the low-voltage battery, the capacitor selection circuit 313 may connect the first capacitor and the second capacitor in parallel. The capacitor selection circuit 313 can connect two switches to terminals 5 and 4, respectively. Here, low voltage may mean DC 0V - 200V. To measure the impedance of the high-voltage battery, the capacitor selection circuit 313 may connect a first capacitor and a second capacitor in series. The capacitor selection circuit 313 may connect two switches to terminal 7 and terminal 2, respectively. Here, high voltage may mean DC 201V - 800V. In this way, the impedance of both low-voltage and high-voltage batteries can be measured through selective combination of capacitors.

정전류 입력 회로(319)는 배터리(401)의 임피던스의 저항을 측정하기 위하여 제1 주파수를 선택할 수 있다. 정전류 입력 회로(319)는 배터리의 임피던스의 리액턴스를 측정하기 위하여 제2 주파수를 선택할 수 있다. 여기서, 제1 주파수는 제2 주파수보다 크다. 예를 들어, 제1 주파수는 1kHz이고, 제2 주파수는 100Hz일 수 있다. 배터리를 대용량의 캐패시터라고 가정할 때, 1kHz의 소스를 인가하면 캐패시터의 값이 정확하게 측정되지 않을 수 있고, 100Hz의 소스를 인가함으로써 캐패시터의 값이 보다 정확하게 측정될 수 있다. 여기서, 100Hz는 일반적으로 사용되는 배터리의 캐패시터의 측정의 정확도가 가장 높은 주파수이며, 이에 한정하지 않고 다른 저주파수가 적용될 수도 있다.The constant current input circuit 319 may select a first frequency to measure the resistance of the impedance of the battery 401. The constant current input circuit 319 may select a second frequency to measure the reactance of the impedance of the battery. Here, the first frequency is greater than the second frequency. For example, the first frequency may be 1 kHz and the second frequency may be 100 Hz. Assuming that the battery is a large capacitor, the capacitor value may not be measured accurately if a 1 kHz source is applied, and the capacitor value may be measured more accurately by applying a 100 Hz source. Here, 100Hz is the frequency with the highest measurement accuracy of the capacitor of a commonly used battery, but is not limited to this and other low frequencies may be applied.

제1 주파수 또는 제2 주파수를 기초로, 정전류 입력 회로(319)는 복수의 전류의 크기를 포함하는 프로파일에 따라 가장 작은 전류부터 순차적으로 전류를 변경할 수 있고, 측정부(310)는 이에 대응하여 배터리의 임피던스를 측정할 수 있다. 정전류 입력 회로(319)는 U1, U2, U3를 포함할 수 있다. 정전류 입력 회로(319)는 100mA, 10mA, 1mA, 0.1mA의 크기의 프로파일을 사용할 수 있다. 저항이 높은데 전류까지 높으면 회로 내부의 특정한 소자의 전압이 포화 전압에 이를 수 있으므로, 정전류 입력 회로(319)는 가장 낮은 전류부터 커지는 방향으로 전류를 인가하면서 임피던스를 측정할 수 있다. 예를 들어, 정전류 입력 회로(319)는 0.1mA의 전류를 인가하고 측정부(320)에 의해 저항의 크기를 피드백 받을 수 있다. 피드백의 결과가 허용 범위 내인 경우 정전류 입력 회로(319)는 전류의 크기를 1mA로 변경하고 같은 과정을 반복할 수 있다. 피드백의 결과가 허용 범위를 넘는 경우 정전류 입력 회로(319)는 0.1mA의 전류를 유지할 수 있다. 상기 과정이 반복되면서 최적의 전류의 크기가 선택될 수 있다.Based on the first frequency or the second frequency, the constant current input circuit 319 can sequentially change the current starting from the smallest current according to a profile including the magnitude of a plurality of currents, and the measuring unit 310 responds accordingly. You can measure the impedance of the battery. The constant current input circuit 319 may include U1, U2, and U3. The constant current input circuit 319 can use profiles with sizes of 100 mA, 10 mA, 1 mA, and 0.1 mA. If the resistance is high but the current is also high, the voltage of a specific element within the circuit may reach a saturation voltage, so the constant current input circuit 319 can measure impedance while applying current in a direction starting from the lowest current and increasing. For example, the constant current input circuit 319 can apply a current of 0.1 mA and receive feedback on the size of the resistance from the measuring unit 320. If the feedback result is within the allowable range, the constant current input circuit 319 can change the size of the current to 1 mA and repeat the same process. If the result of the feedback exceeds the allowable range, the constant current input circuit 319 can maintain a current of 0.1 mA. As the above process is repeated, the optimal current size can be selected.

도 5는 일 실시예에 따른 뉴럴 네트워크 모델의 구조를 설명하기 위한 예시적인 도면이다. Figure 5 is an example diagram for explaining the structure of a neural network model according to an embodiment.

일 실시예에 따르면, 배터리 관리 시스템(300)에서 사용되는 뉴럴 네트워크 모델은 순환형 뉴럴 네트워크(Recurrent Neural Network) 모델을 포함할 수 있다. 뉴럴 네트워크 모델은 입력을 시퀀스 단위로 처리하는 시퀀스(Sequence) 모델이다. According to one embodiment, the neural network model used in the battery management system 300 may include a recurrent neural network model. The neural network model is a sequence model that processes input in sequence units.

뉴럴 네트워크 모델은 입력 레이어, 하나 이상의 은닉 레이어 및 출력 레이어를 포함할 수 있다. 은닉 레이어는 재귀 레이어를 포함할 수 있다. 은닉 레이어는 노드에서 활성화 함수를 통해 나온 결과값을 출력 방향으로 보내면서, 다시 은닉 레이어의 노드의 다음 계산의 입력으로 보내는 특징을 가진다. 은닉 레이어에서 활성화 함수를 통해 결과를 내보내는 역할을 하는 노드는 셀(cell)로 지칭될 수 있다. 셀은 이전의 값을 기억하는 일종의 메모리 역할을 동시에 수행할 수 있다.A neural network model may include an input layer, one or more hidden layers, and an output layer. Hidden layers may contain recursive layers. The hidden layer has the characteristic of sending the result value from the activation function at the node to the output direction and then sending it back to the input of the next calculation of the node of the hidden layer. The node responsible for sending out results through the activation function in the hidden layer may be referred to as a cell. Cells can simultaneously serve as a type of memory that remembers previous values.

셀이 출력 방향 또는 다음 시점인 t+1의 셀로 보내는 값은 은닉 상태(hidden state)라고 지칭될 수 있다. t 시점의 셀은 t-1 시점의 셀이 보낸 은닉 상태를 t 시점의 은닉 상태 계산을 위한 입력으로 사용할 수 있다. 모델(520)를 참조하면, 제1 시점, 제2 시점, 제3 시점 ?? 제 t 시점에서의 출력 벡터(521, 523, 525, 527)이 표시된다. 출력 벡터 y1(521)는 시작 은닉 상태 및 제1 시점의 입력 벡터 x1를 기초로 결정될 수 있다. 출력 벡터 y2(523)는 제1 시점의 은닉 상태 및 제2 시점의 입력 벡터 x2를 기초로 결정될 수 있다. 같은 방식으로 제t 시점까지 동일한 과정이 반복되어 제 t 시점의 출력 벡터 yt (527)가 출력될 수 있다. The value sent by the cell to the output direction or to the cell at the next point in time, t+1, may be referred to as a hidden state. The cell at time t can use the hidden state sent by the cell at time t-1 as an input for calculating the hidden state at time t. Referring to model 520, first viewpoint, second viewpoint, third viewpoint ?? Output vectors (521, 523, 525, 527) at time t are displayed. The output vector y1 521 may be determined based on the starting hidden state and the input vector x1 at the first time point. The output vector y2 523 may be determined based on the hidden state at the first time point and the input vector x2 at the second time point. In the same way, the same process is repeated until the tth time point, and the output vector yt (527) at the tth time point can be output.

예를 들어, 배터리 관리 시스템(300)은 10개 단위의 시점의 상태 벡터마다 배터리의 수명을 추정할 수 있다. 이 경우, 제1 시점에서 제10 시점의 상태 벡터가 10개의 셀에 입력되며, 각 셀에서 출력되는 출력 벡터들 중에서 마지막 출력 벡터만 출력 레이어로 전달되고 나머지 출력 벡터들은 폐기된다. 예를 들어, 뉴럴 네트워크 모델은 여러 개의 입력에 대해서 하나의 출력을 출력하는 다 대 일(many-to-one) 구조의 모델일 수 있다. 마지막 출력 벡터는 소프트맥스 함수를 통해 10개의 클래스 중의 하나의 클래스로 분류된다. 각 클래스는 배터리의 초기 수명 대비 줄어든 수명의 퍼센트를 나타내며, 가장 높은 확률을 가지는 클래스에 대응하는 줄어든 수명을 기초로 잔존 수명이 추정된다.For example, the battery management system 300 may estimate the lifespan of the battery for each state vector at 10 units of time. In this case, state vectors from the first to the tenth time points are input to 10 cells, and among the output vectors output from each cell, only the last output vector is delivered to the output layer and the remaining output vectors are discarded. For example, a neural network model may be a model with a many-to-one structure that outputs one output for multiple inputs. The final output vector is classified into one of 10 classes through the softmax function. Each class represents the percentage of reduced life compared to the initial life of the battery, and the remaining life is estimated based on the reduced life corresponding to the class with the highest probability.

모델(510)은 모델(520)의 특정한 두 셀을 구체화한 예시로서, 입력 벡터의 차원이 4, 은닉 상태의 차원이 2, 출력층의 출력 벡터의 차원이 2이다. 다시 말해 뉴런 단위로 해석하면 입력 레이어의 뉴런 수는 4, 은닉 레이어의 뉴런 수는 2, 출력 레이어의 뉴런 수는 2이다. 제 t 시점(512)에서, 제 t 시점의 2차원의 출력 벡터는 제 t 시점의 4차원의 입력 벡터 및 제 t-1 시점의 2차원의 은닉 상태를 기초로 계산된다. The model 510 is an example that embodies two specific cells of the model 520, and the input vector has a dimension of 4, the hidden state has a dimension of 2, and the output vector of the output layer has a dimension of 2. In other words, when interpreted in units of neurons, the number of neurons in the input layer is 4, the number of neurons in the hidden layer is 2, and the number of neurons in the output layer is 2. At time t 512, the two-dimensional output vector at time t is calculated based on the four-dimensional input vector at time t and the two-dimensional hidden state at time t-1.

모델(530)는 모델(510)의 단순화된 버전이다. 현재 시점 t에서의 은닉 상태 값을 ht라고 정의하는 경우, 은닉 레이어의 셀은 ht를 계산하기 위해 총 두 개의 가중치를 가진다. 하나는 입력 레이어를 위한 가중치 W2이고, 다른 하나는 이전 시점 t-1의 은닉 상태인 ht-1을 위한 가중치 Wh이다. Model 530 is a simplified version of model 510. If the hidden state value at the current time t is defined as ht, the cells of the hidden layer have a total of two weights to calculate ht. One is the weight W2 for the input layer, and the other is the weight Wh for ht-1, which is the hidden state of the previous time t-1.

[수학식 3][Equation 3]

[수학식 4][Equation 4]

현재 시점 t에서의 은닉 상태는 수학식 3에 의해 계산될 수 있다. 여기에 사용되는 활성화 함수는 하이퍼볼릭탄젠트 함수(tanh)일 수 있다. 현재 시점 t에서의 출력 벡터는 수학식 4에 의해 계산될 수 있다. 여기서, 함수 f는 비선형 활성화 함수이다. b는 편향이다. The hidden state at the current time t can be calculated by Equation 3. The activation function used here may be a hyperbolic tangent function (tanh). The output vector at the current time t can be calculated by Equation 4. Here, function f is a non-linear activation function. b is bias.

이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented with hardware components, software components, and/or a combination of hardware components and software components. For example, the devices, methods, and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, and a field programmable gate (FPGA). It may be implemented using one or more general-purpose or special-purpose computers, such as an array, programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. A processing device may execute an operating system (OS) and one or more software applications that run on the operating system. Additionally, a processing device may access, store, manipulate, process, and generate data in response to the execution of software. For ease of understanding, a single processing device may be described as being used; however, those skilled in the art will understand that a processing device includes multiple processing elements and/or multiple types of processing elements. It can be seen that it may include. For example, a processing device may include a plurality of processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are possible.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing unit to operate as desired, or may be processed independently or collectively. You can command the device. Software and/or data may be used on any type of machine, component, physical device, virtual equipment, computer storage medium or device to be interpreted by or to provide instructions or data to a processing device. , or may be permanently or temporarily embodied in a transmitted signal wave. Software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination. Program instructions recorded on the medium may be specially designed and configured for the embodiment or may be known and available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -Includes magneto-optical media and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described with limited drawings as described above, those skilled in the art can apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order than the described method, and/or components of the described system, structure, device, circuit, etc. are combined or combined in a different form than the described method, or other components are used. Alternatively, appropriate results may be achieved even if substituted or substituted by an equivalent.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims also fall within the scope of the claims described below.

Claims (5)

배터리의 충전 상태를 표시하는 충전 상태 표시부;
상기 배터리의 온도를 측정하는 온도 센서;
상기 배터리에 정전류를 입력하는 출력부;
상기 배터리의 전압, 전류 및 임피던스를 측정하는 측정부;
프로세서; 및
메모리를 포함하고,
상기 출력부는,
상기 배터리로부터 전달되는 전류의 잡음을 필터링하고,
상기 출력부에 인가되는 정전기를 제거하고,
상기 배터리의 캐패시터에 남아있는 전하에 의해 발생하는 스파크를 제거하고,
상기 측정부에 의해 측정된 전압에 대응하여 캐패시터를 선택하고,
상기 배터리의 임피던스의 저항 및 리액턴스 측정을 위하여 입력 전류의 주파수를 선택하고,
상기 측정부에 의해 측정되는 임피던스에 대응하여 입력 전류의 크기를 설정하고,
상기 메모리는 상기 배터리의 충전 횟수, 상기 온도 센서에 의해 측정된 온도, 상기 배터리의 사용 시간, 상기 배터리의 용량, 상기 배터리에 대한 프로파일 및 배터리의 수명을 예측하기 위한 뉴럴 네트워크 모델을 저장하고,
상기 측정부는,
제1 시점에 상기 배터리의 임피던스를 측정하여 제1 임피던스를 결정하고,
제2 시점에 상기 배터리의 임피던스를 측정하여 제2 임피던스를 결정하고,
상기 프로세서는,
상기 제1 임피던스, 상기 제2 임피던스, 상기 배터리의 충전 횟수, 상기 온도 센서에 의해 측정된 온도, 상기 배터리의 사용 시간, 상기 배터리의 용량을 기초로 상기 뉴럴 네트워크 모델을 이용하여 상기 배터리의 수명을 추정하고,
상기 프로세서는,
상기 제1 임피던스, 상기 제2 임피던스, 상기 배터리의 충전 횟수, 상기 온도 센서에 의해 측정된 온도, 상기 배터리의 사용 시간, 상기 배터리의 용량을 기초로 수학식 2와 기준값을 비교하여 상기 배터리의 수명의 추정을 진행할지 여부를 결정하고,
진행하기로 결정된 경우, 상기 뉴럴 네트워크 모델을 이용하여 상기 배터리의 수명을 추정하고,
상기 뉴럴 네트워크 모델은 입력 레이어, 하나 이상의 은닉 레이어 및 출력 레이어를 포함하고,
임피던스의 저항 및 리액턴스, 충전 횟수, 온도, 사용 시간, 용량으로 구성된 각각의 학습 데이터는 상기 뉴럴 네트워크 모델의 상기 입력 레이어에 입력되어 상기 하나 이상의 은닉 레이어 및 출력 레이어를 통과하여 출력 벡터를 출력하고, 상기 출력 벡터는 상기 출력 레이어에 연결된 손실함수 레이어에 입력되고, 상기 손실함수 레이어는 상기 출력 벡터와 각각의 학습 데이터에 대한 정답 벡터를 비교하는 수학식 1의 손실 함수를 이용하여 손실값을 출력하고, 상기 뉴럴 네트워크 모델의 파라미터는 상기 손실값이 작아지는 방향으로 학습되고,
[수학식 1]

상기 수학식 1에서, n은 클래스 별 학습 데이터의 수, y와 j는 클래스를 나타내는 식별자, C는 상수값, M은 클래스의 개수, x_y는 학습 데이터가 클래스 y에 속할 확률값, x_j는 학습 데이터가 클래스 j에 속할 확률값, L은 손실값을 의미하고,
[수학식 2]

수학식 2에서, n은 상태 벡터의 차원의 수, P1i는 제1 상태 벡터의 i번째 차원의 값, P2i는 제2 상태 벡터의 i번째 차원의 값, ai는 학습에 의해 설정된 i번째 차원에 대응하는 가중치, b는 학습에 의해 설정된 summation에 적용되는 가중치, min 함수는 괄호 안의 두 값 중에서 더 작은 값을 결정하는 함수를 나타내는,
배터리 관리 시스템.
A charging status display unit that displays the charging status of the battery;
a temperature sensor that measures the temperature of the battery;
an output unit that inputs a constant current to the battery;
a measuring unit that measures voltage, current, and impedance of the battery;
processor; and
contains memory,
The output unit,
Filtering out noise from the current delivered from the battery,
Remove static electricity applied to the output unit,
Eliminate sparks caused by charges remaining in the capacitor of the battery,
Selecting a capacitor in response to the voltage measured by the measuring unit,
Select the frequency of the input current to measure the resistance and reactance of the impedance of the battery,
Set the size of the input current in response to the impedance measured by the measuring unit,
The memory stores a neural network model for predicting the number of charges of the battery, the temperature measured by the temperature sensor, the usage time of the battery, the capacity of the battery, the profile for the battery, and the life of the battery,
The measuring unit,
Determine a first impedance by measuring the impedance of the battery at a first time,
Determine a second impedance by measuring the impedance of the battery at a second time point,
The processor,
The lifespan of the battery is determined using the neural network model based on the first impedance, the second impedance, the number of charging times of the battery, the temperature measured by the temperature sensor, the usage time of the battery, and the capacity of the battery. estimate,
The processor,
Life of the battery by comparing Equation 2 and a reference value based on the first impedance, the second impedance, the number of charging times of the battery, the temperature measured by the temperature sensor, the usage time of the battery, and the capacity of the battery. Decide whether to proceed with the estimation,
If it is decided to proceed, estimate the lifespan of the battery using the neural network model,
The neural network model includes an input layer, one or more hidden layers, and an output layer,
Each learning data consisting of impedance resistance and reactance, number of charges, temperature, usage time, and capacity is input to the input layer of the neural network model, passes through the one or more hidden layers and the output layer, and outputs an output vector, The output vector is input to a loss function layer connected to the output layer, and the loss function layer outputs a loss value using the loss function of Equation 1, which compares the output vector with the correct answer vector for each training data, , the parameters of the neural network model are learned in the direction of decreasing the loss value,
[Equation 1]

In Equation 1, n is the number of learning data for each class, y and j are identifiers representing the classes, C is a constant value, M is the number of classes, x_y is the probability that the learning data belongs to class y, and x_j is the learning data. is the probability value of belonging to class j, L is the loss value,
[Equation 2]

In Equation 2, n is the number of dimensions of the state vector, P1i is the value of the ith dimension of the first state vector, P2i is the value of the ith dimension of the second state vector, and ai is the ith dimension set by learning. The corresponding weight, b, is the weight applied to the summation set by learning, and the min function represents a function that determines the smaller value among the two values in parentheses.
Battery management system.
삭제delete 제1항에 있어서,
상기 뉴럴 네트워크 모델은 입력 레이어, 하나 이상의 은닉 레이어 및 출력 레이어를 포함하고,
상기 프로세서는,
상기 제1 임피던스의 저항 및 리액턴스, 제1 시점의 충전 횟수, 제1 시점의 온도, 제1 시점의 사용 시간, 제1 시점의 용량으로 구성되는 제1 입력 벡터 및 상기 제2 임피던스의 저항 및 리액턴스, 제2 시점의 충전 횟수, 제2 시점의 온도, 제2 시점의 사용 시간, 제2 시점의 용량으로 구성되는 제2 입력 벡터를 결정하고,
은닉 레이어에서, 상기 제1 입력 벡터에 대응하는 제1 은닉 상태에 은닉 가중치를 적용하고 상기 제2 입력 벡터에 입력 가중치를 적용하여 상기 제2 입력 벡터에 대응하는 제2 은닉 상태를 계산하고, 상기 제2 은닉 상태를 비선형 활성화 함수에 입력하여 출력 벡터를 출력하고,
출력 레이어에서, 상기 출력 벡터를 기초로 소프트맥스 함수를 이용하여 확률 벡터를 출력하고,
상기 확률 벡터를 기초로 상기 배터리의 수명을 추정하는,
배터리 관리 시스템.
According to paragraph 1,
The neural network model includes an input layer, one or more hidden layers, and an output layer,
The processor,
A first input vector consisting of the resistance and reactance of the first impedance, the number of charges at the first time, the temperature at the first time, the usage time at the first time, and the capacity at the first time, and the resistance and reactance of the second impedance , determine a second input vector consisting of the number of charges at the second time point, the temperature at the second time point, the usage time at the second time point, and the capacity at the second time point,
In the hidden layer, calculate a second hidden state corresponding to the second input vector by applying a hidden weight to the first hidden state corresponding to the first input vector and applying the input weight to the second input vector, and Input the second hidden state into a nonlinear activation function to output an output vector,
In the output layer, a probability vector is output using the softmax function based on the output vector,
Estimating the life of the battery based on the probability vector,
Battery management system.
제1항에 있어서,
상기 출력부는 배터리와 연결되는 고주파 필터링 회로, 상기 고주파 필터링 회로와 연결되는 서지 보호 회로, 스파크 방지 회로, 캐패시터 선택 회로 및 정전류 입력 회로를 포함하고, 상기 스파크 방지 회로는 상기 서지 보호 회로, 상기 캐패시터 선택 회로 및 상기 정전류 입력 회로와 연결되고,
상기 고주파 필터링 회로는 상기 배터리로부터 전달되는 전류에 포함된 노이즈를 필터링하여 상기 스파크 방지 회로로 전달하고,
상기 서지 보호 회로는 상기 출력부의 내부의 정전기를 제거하고,
상기 스파크 방지 회로는, 상기 배터리가 상기 출력부에 연결될 때 발생하는 스파크를 제거하고, 상기 배터리가 상기 출력부와 개방될 때 발생하는 스파크를 제거하고,
상기 캐패시터 선택 회로는 제1 캐패시터 및 제2 캐패시터를 포함하고, 상기 측정부에 의해 측정된 상기 배터리의 전압이 임계 전압 이하인 경우 상기 제1 캐패시터 및 상기 제2 캐패시터를 병렬로 연결하고, 상기 측정부에 의해 측정된 상기 배터리의 전압이 임계 전압을 초과하는 경우 상기 제1 캐패시터 및 상기 제2 캐패시터를 직렬로 연결하고,
상기 정전류 입력 회로는,
상기 배터리의 임피던스의 저항을 측정하기 위하여 제1 주파수를 선택하고, 상기 배터리의 임피던스의 리액턴스를 측정하기 위하여 제2 주파수를 선택하고, 상기 제1 주파수는 상기 제2 주파수보다 크고,
상기 제1 주파수 또는 상기 제2 주파수를 기초로, 복수의 전류의 크기를 포함하는 프로파일에 따라 가장 작은 전류부터 순차적으로 전류를 변경하며 상기 배터리의 임피던스를 측정하는,
배터리 관리 시스템.
According to paragraph 1,
The output unit includes a high-frequency filtering circuit connected to a battery, a surge protection circuit connected to the high-frequency filtering circuit, a spark prevention circuit, a capacitor selection circuit, and a constant current input circuit, and the spark prevention circuit includes the surge protection circuit and the capacitor selection circuit. connected to the circuit and the constant current input circuit,
The high-frequency filtering circuit filters noise contained in the current transmitted from the battery and transmits it to the spark prevention circuit,
The surge protection circuit removes static electricity inside the output unit,
The spark prevention circuit removes sparks that occur when the battery is connected to the output portion and removes sparks that occur when the battery is opened with the output portion,
The capacitor selection circuit includes a first capacitor and a second capacitor, connects the first capacitor and the second capacitor in parallel when the voltage of the battery measured by the measuring unit is below the threshold voltage, and connects the measuring unit to the first capacitor. When the voltage of the battery measured by exceeds the threshold voltage, connect the first capacitor and the second capacitor in series,
The constant current input circuit is,
A first frequency is selected to measure the resistance of the impedance of the battery, and a second frequency is selected to measure the reactance of the impedance of the battery, wherein the first frequency is greater than the second frequency,
Based on the first frequency or the second frequency, changing the current sequentially from the smallest current according to a profile including the magnitude of a plurality of currents and measuring the impedance of the battery,
Battery management system.
삭제delete
KR1020230094157A 2023-07-19 Method and apparatus for monitoring battery status in real time KR102682629B1 (en)

Publications (1)

Publication Number Publication Date
KR102682629B1 true KR102682629B1 (en) 2024-07-08

Family

ID=

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101792975B1 (en) * 2017-04-25 2017-11-02 한국기술교육대학교 산학협력단 Method for Predicting State of Health of Battery Based on Numerical Simulation Data
KR102010181B1 (en) * 2018-05-08 2019-08-12 임한용 Smart Bypass Backup Power Supply For Charger
JP2021035061A (en) * 2019-08-13 2021-03-01 株式会社リコー Power storage apparatus, controller and power storage system
KR102424916B1 (en) * 2021-10-14 2022-07-22 모나일렉트릭 주식회사 Battery diagnostic method and apparatus
KR102548112B1 (en) * 2023-03-23 2023-06-28 (주)월드홈닥터 Ground sensing plug for determining the amount of electrostatic discharge using a neural network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101792975B1 (en) * 2017-04-25 2017-11-02 한국기술교육대학교 산학협력단 Method for Predicting State of Health of Battery Based on Numerical Simulation Data
KR102010181B1 (en) * 2018-05-08 2019-08-12 임한용 Smart Bypass Backup Power Supply For Charger
JP2021035061A (en) * 2019-08-13 2021-03-01 株式会社リコー Power storage apparatus, controller and power storage system
KR102424916B1 (en) * 2021-10-14 2022-07-22 모나일렉트릭 주식회사 Battery diagnostic method and apparatus
KR102548112B1 (en) * 2023-03-23 2023-06-28 (주)월드홈닥터 Ground sensing plug for determining the amount of electrostatic discharge using a neural network

Similar Documents

Publication Publication Date Title
Mao et al. Deep learning for intelligent wireless networks: A comprehensive survey
KR102480969B1 (en) Method and apparatus for supplying power according to a result of detecting a hidden camera based on a value set using a neural network
KR102360727B1 (en) Method and apparatus for garmet suggestion using neural networks
KR102582594B1 (en) Method and apparatus for garmet suggestion using neural networks
KR102414167B1 (en) Method and apparatus for security using packet sending using neural networks
KR102682629B1 (en) Method and apparatus for monitoring battery status in real time
KR102433654B1 (en) Method and apparatus for providing information related to a psychological state based on a color image to a terminal by a server using neural network
KR102452577B1 (en) Method and apparatus for providing visualization information about a webtoon by a server using neural network
KR102479512B1 (en) Performance-oriented education method, server and terminal practicing the method
KR102661926B1 (en) Method and device for checking remaining amount of drone battery in real time
KR102645034B1 (en) Methods and apparatus for real-time checking and responding to drone battery malfunctions
KR20230090979A (en) Method and apparatus for suggestion of consultation guide information using neural networks
KR102643021B1 (en) Method and system for automatically notifying unauthorized intrusion to a user terminal based on neural networks
KR102481347B1 (en) Method and apparatus for determining an order quantity of hmr food according to a predicted sales volume by a sever using a neural network
KR102468193B1 (en) Method and apparatus for monitoring ip-cam
KR102658699B1 (en) APPARATUS AND METHOD FOR MONITORING REAL-TIME MEASUREMENT DATA BASED ON IoT
KR102450024B1 (en) Neural network based building fire detection system
KR102575856B1 (en) Method and apparauts for compatibility of input devices
KR102390412B1 (en) Ai-based anti-phishing chatbot system
KR102471214B1 (en) Method and apparatus for monitoring ip-cam
KR102655405B1 (en) Skin care treatment device that regulates galvanic current by recognizing skin conditions
KR102557467B1 (en) Apparatus and method for monitoring hydrolysis treatment process for waste treatment
KR102438865B1 (en) Method and apparatus for security of data using text filtering
KR102632300B1 (en) Method and system for managing environment-related information of companies based on neural networks
KR102465106B1 (en) Method and apparatus for analyzing stock item using neural networks