KR20240037099A - Electronic control unit for update and Vehicle having the same - Google Patents

Electronic control unit for update and Vehicle having the same Download PDF

Info

Publication number
KR20240037099A
KR20240037099A KR1020220115937A KR20220115937A KR20240037099A KR 20240037099 A KR20240037099 A KR 20240037099A KR 1020220115937 A KR1020220115937 A KR 1020220115937A KR 20220115937 A KR20220115937 A KR 20220115937A KR 20240037099 A KR20240037099 A KR 20240037099A
Authority
KR
South Korea
Prior art keywords
software update
controllers
received
signal
software
Prior art date
Application number
KR1020220115937A
Other languages
Korean (ko)
Inventor
전성환
Original Assignee
현대자동차주식회사
기아 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 현대자동차주식회사, 기아 주식회사 filed Critical 현대자동차주식회사
Priority to KR1020220115937A priority Critical patent/KR20240037099A/en
Publication of KR20240037099A publication Critical patent/KR20240037099A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Abstract

본 발명은 차량에 마련된 복수 개의 제어기들의 소프트웨어를 업데이트하기 위한 전자 제어 장치 및 그를 가지는 차량을 개시한다.
전자 제어 장치는 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 복수 개의 제어기들에 전송 중, 전원 변동에 의해 소프트웨어 업데이트용 데이터의 전송이 중단되면 전송이 중단된 제어기의 기기 회차를 확인하고, 전원이 복구되면 확인한 제어기의 기기 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하도록 한다.
전자 제어 장치는 소프트웨어 업데이트용 데이터의 전송 중, 전원 변동에 의해 소프트웨어 업데이트용 데이터의 전송이 중단되면 전송이 중단된 프레임 회차를 확인하고, 전원이 복구되면 확인한 프레임 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하도록 한다
The present invention discloses an electronic control device for updating software of a plurality of controllers provided in a vehicle and a vehicle having the same.
The electronic control device is transmitting data for software update of a plurality of controllers to a plurality of controllers. If the transmission of software update data is interrupted due to power fluctuation, it checks the device turn of the controller for which transmission was interrupted, and when power is restored, the electronic control device checks the device turn of the controller for which transmission was interrupted. Resume transmission of software update data based on the confirmed device rotation of the controller.
During the transmission of software update data, if the transmission of software update data is interrupted due to power fluctuations, the electronic control device checks the frame turn in which transmission was interrupted, and when power is restored, the software update data is transferred based on the confirmed frame turn. Let the transmission resume

Description

업데이트를 위한 전자 제어 장치 및 그를 가지는 차량 {Electronic control unit for update and Vehicle having the same} Electronic control unit for update and Vehicle having the same}

본 발명은 무선으로 소프트웨어를 업데이트 하는 업데이트를 위한 전자 제어 장치 및 그를 가지는 차량에 관한 것이다.The present invention relates to an electronic control device for wirelessly updating software and a vehicle having the same.

차량은 기본적인 주행 기능 외에도 오디오 기능, 비디오 기능, 내비게이션 기능, 공조 기능, 시트 열선 기능, 외부 단말기와의 통신 기능 등의 사용자 편의를 위한 부가적인 기능을 더 수행하며, 부가적인 기능을 수행하기 위한 복수의 부하들을 포함하고, 복수의 부하들의 동작을 제어하기 위한 다수의 제어기를 더 포함한다. In addition to basic driving functions, the vehicle performs additional functions for user convenience such as audio functions, video functions, navigation functions, air conditioning functions, seat heating functions, and communication functions with external terminals. of loads, and further includes a plurality of controllers for controlling the operation of the plurality of loads.

이러한 차량은 클라우드 서버에서 전송한 다수의 제어기의 소프트웨어(S/W)의 설정 정보나 튜닝 정보 등을 무선 통신망을 통해 수신함으로써, 정비소 등 오프라인 상의 사업소를 방문하지 않고도 주행 중 또는 주행 종료 후 업데이트를 수행할 수 있는OTA(Over-the-Air) 서비스를 제공받고 있다. 이를 통해 차량은 다수 제어기의 기능을 향상시키거나, 신규 기능을 수행하도록 할 수 있다.These vehicles receive software (S/W) setting information or tuning information of multiple controllers transmitted from a cloud server through a wireless communication network, allowing updates during or after driving without visiting an offline business location such as a repair shop. We are providing OTA (Over-the-Air) service that can be performed. Through this, the vehicle can improve the functions of multiple controllers or perform new functions.

차량은 OTA 서비스의 수행 시, 차량의 주행 중 업데이트하고자 하는 소프트웨어를 다운로드 받아 저장하고, 차량의 주행이 완료되면 저장된 소프트웨어를 이용하여 다수의 제어기를 업데이트하였다. When performing an OTA service, the vehicle downloads and stores software to be updated while driving the vehicle, and updates multiple controllers using the stored software when the vehicle is completed.

이 경우, 차량의 시동 오프 후 일정 시간 이내에 차량의 시동이 온(ON) 상태로 변경되면, 차량에서 다수 제어기의 수 및 각 제어기의 옵션 수에 따라 버전 정보를 수집하는데 많은 시간이 소요되는 문제가 있었다. In this case, if the vehicle's ignition is changed to the ON state within a certain period of time after the vehicle's ignition is turned off, there is a problem that it takes a lot of time to collect version information depending on the number of multiple controllers in the vehicle and the number of options for each controller. there was.

또한 차량의 시동 오프 후 저장된 소프트웨어를 다수의 제어기에 전송할 때, 차량의 배터리의 전원이 리셋되거나 다시 시동이 온되면, 업데이트하고자 하는 소프트웨어를 다수의 제어기에 처음부터 다시 전송해야 하기 때문에, 소프트웨어를 다시 전송하는데 많은 시간이 소요되는 문제가 있었다.Additionally, when transmitting stored software to multiple controllers after turning off the vehicle's ignition, if the vehicle's battery power is reset or the engine is turned on again, the software to be updated must be retransmitted to multiple controllers from the beginning, so the software must be reinstalled. There was a problem with it taking a lot of time to transmit.

이처럼, 기존에는 차량의 배터리의 공급 여부 및 시동 온오프 여부에 따라 OTA 수행에 소요되는 시간이 과도하게 길어지는 문제가 있었다.As such, there has been a problem in the past where the time required to perform OTA becomes excessively long depending on whether the vehicle's battery is supplied and whether the ignition is turned on or off.

일 측면은 복수 개의 제어기들의 소프트웨어 업데이트 시, 전원 변동에 대응하여 소프트웨어 업데이트용 데이터의 전송이 중단되거나 또는 복수 개의 제어기들의 소프트웨어의 업데이트가 중단되면 중단된 제어기의 기기 회차를 확인하고, 전원 복구에 대응하여 확인한 제어기의 기기 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하거나 업데이트를 재개하는 업데이트를 위한 전자 제어 장치 및 그를 가지는 차량을 제공한다.One aspect is that when updating the software of a plurality of controllers, if the transmission of software update data is interrupted in response to power fluctuations or the software update of the plurality of controllers is interrupted, the device rotation of the interrupted controller is checked and response to power recovery is performed. Provided is an electronic control device for update that resumes transmission of software update data or resumes update based on the confirmed device rotation of the controller, and a vehicle having the same.

다른 측면은 어느 하나의 제어기의 소프트웨어 업데이트 시, 전원 변동에 대응하여 소프트웨어 업데이트용 데이터의 전송이 중단되거나 업데이트가 중단되면 중단된 프레임 회차를 확인하고, 전원 복구에 대응하여 확인한 프레임 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하거나 업데이트를 재개하는 업데이트를 위한 전자 제어 장치 및 그를 가지는 차량을 제공한다.Another aspect is that when updating the software of any one controller, if the transmission of software update data is interrupted or the update is stopped in response to power fluctuations, the interrupted frame turn is checked, and the software is updated based on the frame turn confirmed in response to power recovery. Provided is an electronic control device for updating that resumes transmission of update data or resumes updating, and a vehicle having the same.

일 측면에 따른 업데이트를 위한 전자 제어 장치는, 서버, 입력부 및 복수 개의 제어기들과 통신을 수행하는 통신부; 서버를 통해 수신된 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 저장하는 메모리; 및 입력부를 통해 차량의 시동 온 신호가 수신되면 미리 설정된 복수 개의 제어기들의 기기 회차에 기초하여 저장된 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 복수 개의 제어기들에 전송 중, 전원 변동에 의해 소프트웨어 업데이트용 데이터의 전송이 중단된 후 전원이 복구되면 소프트웨어 업데이트용 데이터의 전송이 중단된 제어기의 기기 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하도록 통신부를 제어하는 프로세서를 포함한다.An electronic control device for updating according to one aspect includes a communication unit that communicates with a server, an input unit, and a plurality of controllers; a memory that stores data for software update of a plurality of controllers received through a server; And when a vehicle start-up signal is received through the input unit, the software update data of the plurality of controllers stored based on the preset device rotation of the plurality of controllers is being transmitted to the plurality of controllers, and the software update data is transmitted to the plurality of controllers due to power fluctuations. When power is restored after transmission is interrupted, it includes a processor that controls the communication unit to resume transmission of software update data based on the device turn of the controller where transmission of software update data was interrupted.

일 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 소프트웨어 업데이트용 데이터를 복수 개의 제어기들에 전송 중, 입력부를 통해 차량의 시동 오프 신호가 수신되면 전원 변동으로 판단하고, 입력부를 통해 차량의 시동 온 신호가 재수신되면 전원 복구로 판단한다.The processor of the electronic control device for update according to one aspect determines a power change when a vehicle start-off signal is received through the input unit while transmitting data for software update to a plurality of controllers, and starts the vehicle through the input unit. When the on signal is re-received, it is judged as power recovery.

일 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 소프트웨어 업데이트용 데이터를 복수 개의 제어기들에 전송 중 통신부를 통해 배터리의 리셋 신호가 수신되면 전원 변동으로 판단한다.The processor of the electronic control device for update according to one aspect determines a power change when a battery reset signal is received through a communication unit while transmitting data for software update to a plurality of controllers.

일 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 입력부를 통해 차량의 시동 온 신호가 수신되면 서버로부터 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 수신하도록 통신부를 제어하고 수신한 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 저장하도록 메모리를 제어한다.According to one aspect, the processor of the electronic control device for update controls the communication unit to receive data for software update of a plurality of controllers from the server when a vehicle start-up signal is received through the input unit and updates the software of the received plurality of controllers. Controls memory to store data.

일 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 차량의 시동 오프 신호가 수신된 오프 시점부터 카운트한 시간이 기준 시간을 초과한 후에 시동 온 신호가 수신되면 복수 개의 제어기들의 소프트웨어의 버전 정보를 수집하고, 오프 시점부터 기준 시간 이내에 시동 온 신호가 수신되면 복수 개의 제어기들의 소프트웨어의 버전 정보 수집을 스킵한다. 복수 개의 제어기들의 소프트웨어의 버전 정보는, 복수 개의 제어기들의 소프트웨어 업데이트의 필요 여부를 판단하기 위한 정보이다.According to one aspect, the processor of the electronic control device for update may provide version information of the software of the plurality of controllers when the ignition on signal is received after the time counted from the off point when the ignition off signal of the vehicle is received exceeds the reference time. If a start-on signal is received within a reference time from the off point, the collection of software version information of a plurality of controllers is skipped. The version information of the software of the plurality of controllers is information for determining whether a software update of the plurality of controllers is necessary.

일 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 복수 개의 제어기들의 교체 시간을 각각 확인하고 확인한 각각의 교체 시간 중 가장 짧은 교체 시간을 기준 시간으로 설정한다.The processor of the electronic control device for update according to one aspect checks the replacement times of each of the plurality of controllers and sets the shortest replacement time among the confirmed replacement times as the reference time.

일 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 복수 개의 제어기들의 수동 업데이트의 소요 시간을 각각 확인하고, 확인한 각각 소요 시간 중 가장 짧은 소요 시간을 기준 시간으로 설정한다.The processor of the electronic control device for update according to one aspect checks the time required for manual updating of a plurality of controllers, and sets the shortest time required among the confirmed times as the reference time.

일 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 입력부를 통해 시동 오프 신호가 수신되면 복수 개의 제어기들의 소프트웨어 업데이트용 데이터에 기초하여 복수 개의 제어기들의 소프트웨어 업데이트를 제어하고, 소프트웨어 업데이트의 제어 중, 시동 온 신호의 수신에 의해 소프트웨어 업데이트가 중단되면 업데이트가 중단된 제어기의 기기 회차를 확인하고, 시동 오프 신호가 재수신되면 확인한 제어기의 기기 회차에 기초하여 소프트웨어 업데이트를 재개한다.The processor of the electronic control device for update according to one aspect controls software update of a plurality of controllers based on software update data of the plurality of controllers when a start-off signal is received through an input unit, and while controlling the software update, When the software update is interrupted by reception of the ignition on signal, the device cycle of the controller where the update was interrupted is checked, and when the ignition off signal is received again, the software update is resumed based on the confirmed device cycle of the controller.

일 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 복수 개의 제어기들의 소프트웨어 업데이트용 데이터의 각 프레임에 프레임 회차를 설정하고, 설정한 프레임 회차에 기초하여 각각의 제어기들의 소프트웨어 업데이트를 제어하고, 소프트웨어 업데이트의 제어 중 시동 온 신호가 수신되면 소프트웨어 업데이트가 중단된 프레임 회차를 확인하고, 시동 오프 신호가 재수신되면 확인한 프레임 회차에 기초하여 소프트웨어 업데이트를 재개한다.According to one aspect, the processor of the electronic control device for update sets a frame turn for each frame of software update data of a plurality of controllers, controls the software update of each controller based on the set frame turn, and controls the software update. When a start-up signal is received during update control, the frame turn at which the software update was interrupted is checked, and when the start-off signal is received again, the software update is resumed based on the confirmed frame turn.

일 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 복수 개의 제어기들 각각에 전송할 소프트웨어 업데이트용 데이터의 각 프레임에 프레임 회차를 설정하고, 설정한 프레임 회차에 기초하여 각각의 제어기들에 소프트웨어 업데이트용 데이터를 전송하도록 통신부를 제어하고, 복수 개의 제어기들 중 어느 하나의 제어기에 소프트웨어 업데이트용 데이터의 전송 중, 전원 변동에 의해 소프트웨어 업데이트용 데이터의 전송이 중단되면, 전송이 중단된 프레임 회차를 확인하고, 전원이 복구되면 확인한 프레임 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하도록 통신부를 제어한다.According to one aspect, the processor of the electronic control device for update sets a frame turn for each frame of software update data to be transmitted to each of a plurality of controllers, and sends the software update data to each of the controllers based on the set frame turn. Controls the communication unit to transmit data, and if transmission of software update data is interrupted due to power fluctuation while transmitting software update data to any one of the plurality of controllers, check the frame turn at which transmission was interrupted. , When power is restored, the communication unit is controlled to resume transmission of software update data based on the confirmed frame turn.

다른 측면에 따른 업데이트를 위한 전자 제어 장치는, 서버, 입력부 및 제어기와 통신을 수행하는 통신부; 서버를 통해 수신된 제어기의 소프트웨어 업데이트용 데이터를 저장하는 메모리; 및 입력부를 통해 시동 온 신호가 수신되면 미리 설정된 프레임 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송 중, 전원 변동에 의해 소프트웨어 업데이트용 데이터의 전송이 중단된 후 전원이 복구되면 소프트웨어 업데이트용 데이터의 전송이 중단된 프레임 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하도록 통신부를 제어하는 프로세서를 포함한다.An electronic control device for updating according to another aspect includes a communication unit that communicates with a server, an input unit, and a controller; A memory that stores data for software update of the controller received through the server; And when the start-up signal is received through the input unit, the software update data is transmitted based on a preset frame turn. If the power is restored after the software update data is interrupted due to power fluctuations, the software update data is transmitted. It includes a processor that controls the communication unit to resume transmission of software update data based on the interrupted frame turn.

다른 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 입력부를 통해 차량의 시동 오프 신호되거나 배터리의 리셋 신호가 수신되면 전원 변동으로 판단하고, 입력부를 통해 차량의 시동 온 신호가 재수신되면 전원 복구로 판단한다.According to another aspect, the processor of the electronic control device for update determines a power change when a vehicle start-off signal or a battery reset signal is received through the input unit, and restores power when the vehicle start-on signal is re-received through the input unit. It is judged by

다른 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 입력부를 통해 차량의 시동 온 신호가 수신되면 서버로부터 제어기의 소프트웨어 업데이트용 데이터를 수신하도록 통신부를 제어하고 수신한 제어기의 소프트웨어 업데이트용 데이터를 저장하도록 메모리를 제어한다.According to another aspect, the processor of the electronic control device for update controls the communication unit to receive data for software update of the controller from the server when a vehicle start-up signal is received through the input unit and stores the received data for software update of the controller. Control the memory to

다른 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 차량의 시동 오프 신호가 수신된 오프 시점부터 카운트한 시간이 기준 시간을 초과한 후에 시동 온 신호가 수신되면 제어기의 소프트웨어의 버전 정보를 수집하고, 오프 시점부터 기준 시간 이내에 시동 온 신호가 수신되면 제어기의 소프트웨어의 버전 정보 수집을 스킵한다.According to another aspect, the processor of the electronic control device for update collects version information of the software of the controller when the ignition on signal is received after the time counted from the off point when the vehicle ignition off signal is received exceeds the reference time, and , if the start-on signal is received within the reference time from the off point, the collection of version information of the controller software is skipped.

다른 측면에 따른 업데이트를 위한 전자 제어 장치의 프로세서는, 입력부를 통해 시동 오프 신호가 수신되면 설정한 프레임 회차에 기초하여 제어기의 소프트웨어 업데이트를 제어하고, 소프트웨어 업데이트의 제어 중 시동 온 신호가 수신되면 소프트웨어 업데이트가 중단된 프레임 회차를 확인하고, 시동 오프 신호가 재수신되면 확인한 프레임 회차에 기초하여 소프트웨어 업데이트를 재개하도록 제어한다.According to another aspect, the processor of the electronic control device for update controls the software update of the controller based on a set frame turn when a ignition off signal is received through the input unit, and when a ignition on signal is received during control of the software update, the processor controls the software update. The frame turn in which the update was interrupted is checked, and when the ignition off signal is received again, the software update is controlled to resume based on the confirmed frame turn.

또 다른 측면에 따른 차량은, 서버와 통신을 수행하는 통신부; 시동 온 신호 또는 시동 오프 신호를 수신하는 입력부; 적어도 하나의 기능을 수행하기 위한 소프트웨어를 각각 저장하는 복수 개의 제어기들; 및 시동 온 신호가 수신되면 서버를 통해 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 수신하여 저장하고, 시동 오프 신호가 수신되면 저장한 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 이용하여 복수 개의 제어기들에 저장된 소프트웨어의 업데이트를 제어하는 전자 제어 장치를 포함한다. 차량의 전자 제어 장치는, 시동 오프 신호가 수신되면 미리 설정된 복수 개의 제어기들의 기기 회차에 기초하여 저장된 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 복수 개의 제어기들에 각각 전송하고, 소프트웨어 업데이트용 데이터의 전송 중, 전원 변동 후 전원이 복구되면 전송이 중단된 제어기의 기기 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개한다.A vehicle according to another aspect includes a communication unit that communicates with a server; An input unit that receives a ignition on signal or a ignition off signal; a plurality of controllers each storing software for performing at least one function; And when a ignition on signal is received, software update data of a plurality of controllers is received and stored through the server, and when a ignition off signal is received, software is stored in a plurality of controllers using the stored software update data of the plurality of controllers. Includes an electronic control device that controls the update. When an ignition off signal is received, the electronic control device of the vehicle transmits the stored software update data of the plurality of controllers to each of the plurality of controllers based on the preset device rotation of the plurality of controllers, and transmits the software update data to the plurality of controllers while transmitting the software update data. , When power is restored after a power change, transmission of data for software update is resumed based on the device rotation of the controller where transmission was interrupted.

차량의 전자 제어 장치는, 시동 오프 신호 또는 배터리의 리셋 신호가 수신되면 전원 변동으로 판단하고, 시동 오프 신호가 재수신되면 전원 복구로 판단한다.The electronic control device of the vehicle determines a power change when an ignition-off signal or a battery reset signal is received, and determines a power recovery when the ignition-off signal is received again.

차량의 전자 제어 장치는, 시동 오프 신호가 수신된 오프 시점부터 카운트한 시간이 기준 시간을 초과한 후에 시동 온 신호가 수신되면 복수 개의 제어기들의 소프트웨어의 버전 정보를 수집하고, 오프 시점부터 기준 시간 이내에 시동 온 신호가 수신되면 복수 개의 제어기들의 소프트웨어의 버전 정보 수집을 스킵한다.The electronic control device of the vehicle collects software version information of a plurality of controllers when the ignition on signal is received after the time counted from the off point when the ignition off signal is received exceeds the standard time, and within the reference time from the off point. When a start-up signal is received, the collection of software version information of a plurality of controllers is skipped.

차량의 전자 제어 장치는, 복수 개의 제어기들 각각에 전송할 소프트웨어 업데이트용 데이터의 각 프레임에 프레임 회차를 설정하고, 설정한 프레임 회차에 기초하여 각각의 제어기들에 소프트웨어 업데이트용 데이터를 전송하고, 복수 개의 제어기들 중 어느 하나의 제어기에 소프트웨어 업데이트용 데이터의 전송 중, 전원 변동에 의해 소프트웨어 업데이트용 데이터의 전송이 중단되면, 전송이 중단된 프레임 회차를 확인하고, 전원이 복구되면 확인한 프레임 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개한다.The electronic control device of the vehicle sets a frame rotation for each frame of software update data to be transmitted to each of the plurality of controllers, transmits the software update data to each controller based on the set frame rotation, and transmits the software update data to each of the controllers. While transmitting data for software update to any one of the controllers, if the transmission of data for software update is interrupted due to power fluctuation, the frame turn in which transmission was interrupted is checked, and when power is restored, the frame turn is checked based on the confirmed frame turn. Resume transmission of data for software update.

차량의 전자 제어 장치는, 복수 개의 제어기들의 소프트웨어 업데이트의 제어 중, 시동 온 신호의 수신에 의해 소프트웨어 업데이트가 중단되면 업데이트가 중단된 제어기의 기기 회차를 확인하고, 시동 오프 신호가 재수신되면 확인한 제어기의 기기 회차에 기초하여 소프트웨어 업데이트를 재개하도록 제어한다.While controlling the software update of a plurality of controllers, the electronic control device of the vehicle checks the device rotation of the controller for which the update was interrupted when the software update is interrupted by reception of the ignition on signal, and when the ignition off signal is received again, the confirmed controller Controls to resume software update based on the device cycle.

차량의 전자 제어 장치는, 복수 개의 제어기들의 소프트웨어 업데이트용 데이터의 각 프레임에 프레임 회차를 설정하고, 복수 개의 제어기들의 소프트웨어 업데이트의 제어 중, 시동 온 신호가 수신되면 소프트웨어 업데이트가 중단된 프레임 회차를 확인하고, 시동 오프 신호가 재수신되면 확인한 프레임 회차에 기초하여 소프트웨어 업데이트를 재개하도록 제어한다.The electronic control device of the vehicle sets a frame turn for each frame of software update data of a plurality of controllers, and when a start-up signal is received while controlling the software update of a plurality of controllers, it checks the frame turn at which the software update is stopped. And, when the start-off signal is received again, the software update is controlled to resume based on the confirmed frame turn.

본 발명은 복수 제어기들의 버전 정보 수집에 대한 러닝(Learning) 시간을 최소화하여 무선 업데이트에 소요되는 시간을 최소화할 수 있다. 이를 통해 본 발명은 적극적으로 무선 업데이트를 릴리즈하게 할 수 있는 환경을 제공할 수 있다.The present invention can minimize the time required for wireless update by minimizing the learning time for collecting version information of multiple controllers. Through this, the present invention can provide an environment that can actively release wireless updates.

본 발명은 소프트웨어 업데이트용 데이터를 전송(BackgroundSend)하거나 또는 복수 개의 제어기의 소프트웨어를 업데이트 하는 도중, 배터리의 리셋이나, 시동 온오프와 같은 전원 변동에 의해 복수 개의 제어기의 업데이트가 처음부터 재 시작되는 것을 방지함으로써, 무선 업데이트(OTA)를 신속하고 안정적으로 수행할 수 있다.The present invention prevents the update of a plurality of controllers from restarting from the beginning due to power fluctuations such as battery reset or ignition on/off while transmitting (BackgroundSend) data for software update or updating the software of a plurality of controllers. By preventing this, over-the-air updates (OTA) can be performed quickly and reliably.

본 발명은 하드웨어의 추가 구성없이, 무선으로 업데이트를 진행함으로써 비용의 증가를 방지할 수 있다.The present invention can prevent an increase in cost by performing updates wirelessly without additional configuration of hardware.

본 발명은 차량의 품질 및 상품성을 향상시킬 수 있고 나아가 사용자의 만족도를 높일 수 있으며 사용자의 편리성을 향상시킬 수 있다.The present invention can improve the quality and marketability of vehicles, further increase user satisfaction, and improve user convenience.

도 1은 실시 예에 따른 차량의 구성도이다.
도 2는 도 1에 도시된 차량 내 복수 개의 디바이스들의 제어 구성도이다.
도 3은 도 1에 도시된 차량 내 전자 제어 장치의 제어 구성도이다.
도 4는 실시 예에 따른 전자 제어 장치의 소프트웨어 버전 정보의 수집 예시도이다.
도 5는 실시 예에 따른 전자 제어 장치의 소프트웨어 업데이트용 데이터의 전송 순서도이다.
도 6은 실시 예에 따른 전자 제어 장치의 기기 회차 설정 예시도이다.
도 7은 실시 예에 따른 전자 제어 장치의 프레임 회차 설정 예시도이다.
도 8은 실시 예에 따른 전자 제어 장치의 업데이트 제어 순서도이다.
1 is a configuration diagram of a vehicle according to an embodiment.
FIG. 2 is a control configuration diagram of a plurality of devices in the vehicle shown in FIG. 1.
FIG. 3 is a control configuration diagram of the electronic control device in the vehicle shown in FIG. 1.
Figure 4 is an example of collection of software version information of an electronic control device according to an embodiment.
Figure 5 is a flowchart of transmission of data for software update of an electronic control device according to an embodiment.
Figure 6 is an example of device turn setting of an electronic control device according to an embodiment.
Figure 7 is an example of frame turn setting of an electronic control device according to an embodiment.
8 is a flowchart of update control of an electronic control device according to an embodiment.

명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 명세서가 실시 예들의 모든 요소들을 설명하는 것은 아니며, 본 발명이 속하는 기술분야에서 일반적인 내용 또는 실시 예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 디바이스, 장치'라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 디바이스, 장치'가 하나의 구성요소로 구현되거나, 하나의 '부, 디바이스, 장치'가 복수의 구성요소들을 포함하는 것도 가능하다.Like reference numerals refer to like elements throughout the specification. This specification does not describe all elements of the embodiments, and general content or overlapping content between the embodiments in the technical field to which the present invention pertains is omitted. The terms 'unit, device, and apparatus' used in the specification may be implemented as software or hardware, and depending on embodiments, a plurality of 'units, devices, and apparatus' may be implemented as one component, or a single 'unit' may be implemented as a single component. It is also possible for ', device, or apparatus' to include multiple components.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.Throughout the specification, when a part is said to be “connected” to another part, this includes not only direct connection but also indirect connection, and indirect connection includes connection through a wireless communication network. do.

또한 어떤 부분이 어떤 구성요소를"포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Additionally, when it is said that a part "includes" a certain component, this does not mean that other components are excluded, but that it can further include other components, unless specifically stated to the contrary.

명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.Throughout the specification, when a member is said to be located “on” another member, this includes not only cases where a member is in contact with another member, but also cases where another member exists between the two members.

제 1, 제 2, 제3, 제4 및 제5 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다. Terms such as first, second, third, fourth, and fifth are used to distinguish one component from another component, and the components are not limited by the above-mentioned terms.

단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.Singular expressions include plural expressions unless the context clearly makes an exception.

각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다. The identification code for each step is used for convenience of explanation. The identification code does not explain the order of each step, and each step may be performed differently from the specified order unless a specific order is clearly stated in the context. there is.

이하 첨부된 도면들을 참고하여 본 발명의 작용 원리 및 실시 예들에 대해 설명한다.Hereinafter, the operating principle and embodiments of the present invention will be described with reference to the attached drawings.

도 1은 실시 예에 따른 차량의 구성도이고, 도 2는 도 1에 도시된 차량 내 복수 개의 디바이스들의 제어 구성도이고, 도 3은 도 1에 도시된 차량 내 전자 제어 장치의 제어 구성도이다.FIG. 1 is a configuration diagram of a vehicle according to an embodiment, FIG. 2 is a control configuration diagram of a plurality of devices in the vehicle shown in FIG. 1, and FIG. 3 is a control configuration diagram of an electronic control device in the vehicle shown in FIG. 1. .

도 1에 도시된 바와 같이, 차량(1)은 복수 개의 디바이스들(100: 110, 120, 130, 140, 150), 복수 개의 디바이스들(100)과 통신을 수행하는 중앙 통신 장치(200)와, 중앙 통신 장치(200)를 통해 복수 개의 디바이스들 중 적어도 하나와 통신을 수행하는 전자 제어 장치(300)을 포함한다.As shown in FIG. 1, the vehicle 1 includes a plurality of devices 100 (110, 120, 130, 140, 150), a central communication device 200 that communicates with the plurality of devices 100, and , and includes an electronic control device 300 that communicates with at least one of a plurality of devices through a central communication device 200.

복수 개의 디바이스들(100: 110, 120, 130, 140, 150) 각각은, 적어도 하나의 기능을 수행할 수 있다. 각 디바이스에서 수행되는 기능은, 서로 상이할 수 있다.Each of the plurality of devices 100: 110, 120, 130, 140, and 150 may perform at least one function. Functions performed in each device may be different.

적어도 하나의 디바이스는 미리 정해진 기능과 상이한 새로운 기능을 수행하는 것도 가능하다.It is also possible for at least one device to perform a new function that is different from a predetermined function.

복수 개의 디바이스(100: 110, 120, 130, 140, 150)는 내부에 각각 마련된 통신 장치를 이용하여 서로 간의 통신을 수행하며, 통신 수행 중 적어도 하나의 기능을 수행하기 위한 각종 메시지를 송수신할 수 있다.A plurality of devices (100: 110, 120, 130, 140, 150) communicate with each other using communication devices provided therein, and can transmit and receive various messages to perform at least one function during communication. there is.

복수 개의 디바이스들은, 차체의 외장에 마련되고 전방시야를 주시하면서 주변의 정보를 쉽게 볼 수 있도록 하고 다른 차량과 보행자에 대한 신호, 커뮤니케이션의 기능을 수행하는 램프와, GPS 위성, 방송국 등의 신호를 수신하고, 다른 차량과의 통신(V2V) 및 인프라와의 통신(V2I) 등의 무선 차량 네트워크(V2X: Vehicle to everything)를 수행하기 위한 안테나와, 차체의 내장에 마련된 클러스터와, 오디오 기기와 공기 조화기의 동작 명령을 입력받고 동작 정보를 표시하는 헤드 유닛과, 오디오 기능, 비디오 기능 및 내비게이션 기능을 수행하는 AVN(Audio Video Navigation) 단말기와, 사용자의 안전 및 편의를 위해 차량의 주변 상황에 대한 영상을 수집하는 적어도 하나의 카메라와, 내비게이션 기능에 대응하는 내비게이션 정보가 프론트 윈도우 글래스에 표시되도록 프론트 윈도우 글래스에 내비게이션 정보를 투영시키는 헤드 업 디스플레이(HUD)와, 운전 보조 장치(ADAS: Advanced Driver Assistance System) 중 적어도 두 개의 디바이스를 포함할 수 있다. A plurality of devices are provided on the exterior of the vehicle body to easily view surrounding information while keeping an eye on the front view, and provide signals to other vehicles and pedestrians, lamps that perform communication functions, and signals from GPS satellites, broadcasting stations, etc. An antenna for receiving and performing a wireless vehicle network (V2X: Vehicle to everything) such as communication with other vehicles (V2V) and communication with infrastructure (V2I), a cluster provided inside the vehicle body, audio equipment, and air A head unit that receives the operation commands of the harmony unit and displays operation information, an AVN (Audio Video Navigation) terminal that performs audio functions, video functions, and navigation functions, and provides information about the surrounding situation of the vehicle for the user's safety and convenience. At least one camera that collects images, a head-up display (HUD) that projects navigation information on the front window glass so that navigation information corresponding to the navigation function is displayed on the front window glass, and a driver assistance device (ADAS: Advanced Driver Assistance) System) may include at least two devices.

복수 개의 디바이스들은, 입력부, 표시부, 변속 레버와, 전자식 주차 브레이크 장치(미도시)의 동작 명령을 입력받는 주차 버튼(EPB 버튼), 동력 장치, 조향 장치, 차륜에 제동력을 인가하기 위한 제동 장치, 차량의 서스펜션을 조절하기 위한 현가 장치 및 배터리를 관리하기 위한 배터리 관리 장치 등과 같은 각종 전자 장치를 더 포함할 수 있다.A plurality of devices include an input unit, a display unit, a shift lever, a parking button (EPB button) that receives an operation command of an electronic parking brake device (not shown), a power unit, a steering unit, a braking unit for applying braking force to the wheels, It may further include various electronic devices such as a suspension device for adjusting the vehicle's suspension and a battery management device for managing the battery.

여기서 배터리 관리 장치(420, 도 3 참조)는, 배터리(430, 도 3참조)의 충전 상태를 모니터링 할 수 있고, 배터리가 차량으로부터 분리될 때 분리 신호를 출력할 수 있고, 배터리(430)가 차량에 연결될 때 연결 신호를 출력할 수 있다.Here, the battery management device 420 (see FIG. 3) can monitor the charging state of the battery 430 (see FIG. 3) and output a separation signal when the battery is separated from the vehicle. A connection signal can be output when connected to a vehicle.

배터리 관리 장치(420, 도 3 참조)는 배터리(430, 도 3참조)의 분리 신호가 수신되면 분리 신호를 중앙 통신 장치(200)를 통해 전자 제어 장치(300)에 전송할 수 있고, 배터리의 연결 신호가 수신되면 연결 신호를 중앙 통신 장치(200)를 통해 전자 제어 장치(300)에 전송할 수 있다.When the battery management device 420 (see FIG. 3) receives the disconnection signal of the battery 430 (see FIG. 3), it can transmit the disconnection signal to the electronic control device 300 through the central communication device 200, and connect the battery. When the signal is received, the connection signal can be transmitted to the electronic control device 300 through the central communication device 200.

여기서 배터리(430)는 충방전을 수행할 수 있다. 배터리(430)는 차량에 마련된 복수 개의 디바이스들(100), 중앙 통신 장치(200) 및 전자 제어 장치(300) 등 각종 기기에 전력을 공급할 수 있고, 차량의 구동 전력을 공급할 수도 있다.Here, the battery 430 can perform charging and discharging. The battery 430 can supply power to various devices such as a plurality of devices 100, the central communication device 200, and the electronic control device 300 provided in the vehicle, and can also supply driving power for the vehicle.

복수 개의 디바이스들은, 휠 속도 센서, 가속도 센서, 조향각 센서, 레인센서, 요센서, 가압 센서, 장애물 센서 등과 같은 검출 장치를 더 포함할 수 있다.The plurality of devices may further include a detection device such as a wheel speed sensor, an acceleration sensor, a steering angle sensor, a rain sensor, a yaw sensor, a pressure sensor, an obstacle sensor, etc.

복수 개의 디바이스들은, 운전자가 사고의 위험 상황을 인지하도록 위험한 상황 시에 경보 정보를 출력하는 경보장치(Warning System)와, 자 차량의 전방에 자 차량과 일정 거리 이내인 타 차량이 위치하면 제동 장치를 동작시키고 엔진의 출력을 저하시켜 비상 제동을 수행하는 자동 비상 제동 장치(AEBS: Automatic Emergency Braking System)와, 에어백 제어 장치와, 차량의 가속 또는 코너링 시 차량의 자세를 제어하는 차량 자세 안정 제어 장치(ESC: Electronic Stability Control), 타이어 공기압 모니터링 장치(TPMS)와, 급제동 시 차륜이 잠기는 현상을 방지하기 위한 ABS(Anti-lock Brake System)를 더 포함할 수 있다.A plurality of devices include a warning system that outputs warning information in a dangerous situation so that the driver is aware of the risk of an accident, and a braking system when another vehicle is within a certain distance from the vehicle in front of the vehicle. An Automatic Emergency Braking System (AEBS) that operates and reduces engine output to perform emergency braking, an airbag control device, and a vehicle stability control device that controls the vehicle's posture when accelerating or cornering the vehicle. (ESC: Electronic Stability Control), a tire pressure monitoring system (TPMS), and an Anti-lock Brake System (ABS) to prevent the wheels from locking during sudden braking.

여기서 경보장치는 자 차로의 이탈을 알리는 차로 이탈 경보 장치(LDWS: Lane Departure Warning System)와, 운전자가 졸음 상태임을 알리는 졸음 경보 장치, 자 차로를 기준으로 좌우의 차로에 위치한 타 차량과의 충돌 위험성을 알리는 사각지대 경보 장치(Blind Spot Warning System: BSW, BSA 또는 BSD), 자 차로의 전후방에 위치한 타 차량과의 충돌 위험성을 알리는 충돌 경보 장치(Forward Collision Warning System: FCWS, Back Warning System: BWS)를 포함할 수 있다.Here, the warning devices include a Lane Departure Warning System (LDWS) that notifies the driver of leaving his or her own lane, a drowsiness warning device that notifies that the driver is drowsy, and the risk of collision with other vehicles located in the lanes to the left and right of the driver's own lane. A blind spot warning system (BSW, BSA or BSD) that alerts you of a collision warning system (Forward Collision Warning System: FCWS, Back Warning System: BWS) that alerts you of the risk of collision with other vehicles located in front and behind your own lane. may include.

복수 개의 디바이스들, 위에 기재된 디바이스들에 한정되지 않는다.A plurality of devices, but not limited to the devices described above.

도 2에 도시된 바와 같이, 각 디바이스(110, 120, 130, 140, 150)는 전자 제어 장치(300) 및 적어도 하나의 다른 디바이스와의 통신을 수행하는 통신 장치(111, 121, 131, 141, 151)와, 통신 장치(111, 121, 131, 141, 151)를 통해 수신되는 메시지 및 내부의 소프트웨어에 기초하여 제어 신호를 생성하는 제어기(112, 122, 132, 142, 152)와, 생성된 제어 신호에 대응하여 동작하는 부하(113, 123, 133, 143)와, 다른 디바이스의 식별 정보를 저장하는 메모리(114, 124, 134, 144, 145)를 포함할 수 있다. As shown in Figure 2, each device (110, 120, 130, 140, 150) is a communication device (111, 121, 131, 141) that performs communication with the electronic control device 300 and at least one other device. , 151) and controllers (112, 122, 132, 142, 152) that generate control signals based on messages received through communication devices (111, 121, 131, 141, 151) and internal software. It may include loads (113, 123, 133, 143) that operate in response to the control signal, and memories (114, 124, 134, 144, 145) that store identification information of other devices.

각 제어기(112, 122, 132, 142, 152)는 제어 신호에 대응하는 메시지를 다른 디바이스에 송신하도록 각 통신장치를 제어하는 것도 가능하다.Each controller (112, 122, 132, 142, 152) can also control each communication device to transmit a message corresponding to the control signal to another device.

각 제어기(112, 122, 132, 142, 152)는 전자 제어 장치(300)에서 전송된 소프트웨어 업데이트용 데이터를 수신하고 수신한 소프트웨어 업데이트용 데이터를 이용하여 각 메모리(114, 124, 134, 144, 145)에 저장된 소프트웨어를 업데이트할 수 있다.Each controller (112, 122, 132, 142, 152) receives software update data transmitted from the electronic control device 300, and uses the received software update data to update each memory (114, 124, 134, 144, You can update software stored in 145).

각 제어기(112, 122, 132, 142, 152)의 내부에는 메모리(114, 124, 134, 144, 145)가 각각 마련되는 것도 가능하다.It is also possible for memories 114, 124, 134, 144, and 145 to be provided inside each controller (112, 122, 132, 142, and 152).

각 제어기(112, 122, 132, 142, 152)는 메모리(114, 124, 134, 144, 154)와 별도로 마련되는 것도 가능하다.Each controller (112, 122, 132, 142, 152) may be provided separately from the memory (114, 124, 134, 144, 154).

복수 개의 제어기들 중 제1, 2, 3, 4 제어기(112, 122, 132, 142)와 같이, 일부의 제어기는 적어도 하나의 기능을 수행하는 부하의 동작을 제어하는 부하용 제어기일 수 있다. 복수 개의 제어기들 중 제5제어기(152)와 같이 나머지 제어기는 다른 디바이스에 마련된 부하에서 다른 기능이 수행되도록 하기 위해 제어 신호를 생성 및 전송하는 기능 수행용 제어기일 수 있다. Some of the controllers, such as the first, second, third, and fourth controllers 112, 122, 132, and 142 among the plurality of controllers, may be load controllers that control the operation of a load that performs at least one function. Among the plurality of controllers, the remaining controllers, such as the fifth controller 152, may be controllers for generating and transmitting control signals to enable other functions to be performed on loads provided in other devices.

각 디바이스의 메모리(114, 124, 134, 144, 145)에는 각 디바이스의 부하의 기능을 제어하기 위한 소프트웨어가 저장되어 있을 수 있다. 이 소프트웨어는 업데이트될 수 있다.Software for controlling the function of the load of each device may be stored in the memories 114, 124, 134, 144, and 145 of each device. This software may be updated.

복수 개의 디바이스들을 예를 들어, 좀 더 구체적으로 설명한다.A plurality of devices will be described in more detail using examples.

복수 개의 디바이스들을 예를 들면, 제1디바이스(110)는 AVN 단말기일 수 있고, 제2디바이스(120)는 헤드 업 디스플레이일 수 있으며, 제3디바이스(130)는 클러스터일 수 있고, 제4디바이스(140)는 헤드유닛일 수 있으며, 제5디바이스(150)는 운전 보조 장치일 수 있다.Taking a plurality of devices as an example, the first device 110 may be an AVN terminal, the second device 120 may be a head-up display, the third device 130 may be a cluster, and the fourth device 140 may be a head unit, and the fifth device 150 may be a driving assistance device.

제1디바이스(110)는 제1통신장치(111), 제1제어기(112), 제1부하(113) 및 제1메모리(114)를 포함할 수 있다.The first device 110 may include a first communication device 111, a first controller 112, a first load 113, and a first memory 114.

제1통신장치(111)는 전자제어 장치(300) 및 제2, 3, 4, 5 디바이스(120, 130, 140, 150)에 마련된 통신장치와 통신을 수행할 수 있다.The first communication device 111 can communicate with the electronic control device 300 and communication devices provided in the second, third, fourth, and fifth devices 120, 130, 140, and 150.

제1제어기(112)는 입력부에 입력된 입력 정보에 기초하여 오디오 기능, 비디오 기능 중 적어도 하나의 기능을 제어하거나, 입력부에 입력된 입력 정보 및 적어도 하나의 검출장치(즉, 센서)에서 검출된 검출 정보에 기초하여 내비게이션 기능을 제어하며, 수행 중인 적어도 하나의 기능에 대한 정보를 표시부 및 스피커를 통해 출력하도록 표시부 및 스피커 중 적어도 하나의 동작을 제어한다.The first controller 112 controls at least one of the audio function and the video function based on the input information input to the input unit, or the input information input to the input unit and the information detected by at least one detection device (i.e., sensor). The navigation function is controlled based on the detection information, and the operation of at least one of the display unit and the speaker is controlled to output information about at least one function being performed through the display unit and the speaker.

제1제어기(112)는 제4디바이스(140)를 통해 수신된 정보를 표시하도록 표시부를 제어하는 것도 가능하다. 여기서 제4디바이스(140)를 통해 수신된 정보는 차량의 외부의 영상일 수 있다.The first controller 112 can also control the display unit to display information received through the fourth device 140. Here, the information received through the fourth device 140 may be an image of the exterior of the vehicle.

제1제어기(112)는 전자 제어 장치(300)을 통해 전송된 소프트웨어 업데이트용 데이터를 수신할 수 있고, 수신한 소프트웨어 업데이트용 데이터를 제1메모리에 저장하도록 할 수 있으며, 제1메모리에 저장된 소프트웨어 업데이트용 데이터를 이용하여 제1메모리(114)에 저장된 소프트웨어를 업데이트할 수 있다.The first controller 112 may receive software update data transmitted through the electronic control device 300, store the received software update data in the first memory, and store the software stored in the first memory. Software stored in the first memory 114 can be updated using the update data.

제1부하(113)는 입력부, 표시부 및 스피커 중 적어도 하나를 포함하고, 제1제어기(112)의 제어 신호에 기초하여 표시부 및 스피커 중 적어도 하나를 동작시키고, 입력부에 입력된 입력정보를 제1제어기(112)에 전송한다.The first load 113 includes at least one of an input unit, a display unit, and a speaker, operates at least one of the display unit and the speaker based on a control signal from the first controller 112, and transmits the input information input to the input unit to the first load 113. transmitted to the controller 112.

제1메모리(114)는 제1디바이스(110)의 소스 IP 주소를 저장하고, 제1디바이스(110)와 통신을 수행하는 다른 디바이스의 식별 정보 및 IP 주소를 저장할 수 있다. The first memory 114 may store the source IP address of the first device 110 and the identification information and IP address of another device that communicates with the first device 110.

제1메모리(114)는 제1부하(113)의 동작을 통해 적어도 하나의 기능이 수행되도록 하는 소프트웨어를 저장할 수 있고 저장된 소프트웨어의 버전 정보를 저장할 수 있다. The first memory 114 may store software that allows at least one function to be performed through the operation of the first load 113 and may store version information of the stored software.

예를 들어, 제1메모리(114)는 오디오, 비디오, 내비게이션 기능을 수행하기 위한 소프트웨어를 저장할 수 있다.For example, the first memory 114 may store software for performing audio, video, and navigation functions.

제1부하(113)의 동작을 통해 복수 개의 기능이 수행되는 경우, 제1메모리(114)는 복수 개의 기능에 각각 대응하는 복수 개의 소프트웨어와, 복수 개의 소프트웨어에 각각 대응하는 버전 정보를 저장할 수 있다.When a plurality of functions are performed through the operation of the first load 113, the first memory 114 may store a plurality of software corresponding to the plurality of functions and version information corresponding to the plurality of software. .

제1메모리(114)는 제1제어기(112)의 제어 명령에 대응하여 수신된 소프트웨어 업데이트용 데이터를 저장할 수 있다.The first memory 114 may store software update data received in response to a control command from the first controller 112.

제1메모리(114)는 복수 개의 저장 영역을 포함할 수 있다. 이 경우 제1메모리(114)는 제1영역에 소프트웨어를 저장하고, 제2영역에 수신된 소프트웨어 업데이트용 데이터를 저장할 수 있다.The first memory 114 may include a plurality of storage areas. In this case, the first memory 114 may store software in the first area and the received software update data in the second area.

제1메모리(114)는 업데이트 완료에 대응하여 제1영역에 저장된 소프트웨어를 삭제하고, 제1영역에 소프트웨어 업데이트용 데이터를 저장할 수 있으며, 제 2영역에 저장된 소프트웨어 업데이트용 데이터를 삭제하여 빈 영역으로 변경할 수 있다.The first memory 114 may delete software stored in the first area in response to completion of the update, store software update data in the first area, and delete software update data stored in the second area to create an empty area. You can change it.

제1메모리(114)는 업데이트된 소프트웨어의 버전 정보를 저장할 수 있다.The first memory 114 may store version information of updated software.

제2디바이스(120)는 제2통신장치(121), 제2제어기(122), 제2부하(123) 및 제2메모리(124)를 포함할 수 있다.The second device 120 may include a second communication device 121, a second controller 122, a second load 123, and a second memory 124.

제2통신장치(121)는 제1 디바이스(110)의 제1통신장치(111)와 통신을 수행할 수 있다. 아울러 제2통신장치(121)는 전자 제어 장치(300) 및 제3, 4, 5 디바이스(130, 140, 150) 중 적어도 하나의 통신장치와 통신을 수행하는 것도 가능하다.The second communication device 121 may communicate with the first communication device 111 of the first device 110. In addition, the second communication device 121 is also capable of communicating with at least one communication device among the electronic control device 300 and the third, fourth, and fifth devices 130, 140, and 150.

제2제어기(122)는 AVN 단말기에서 입력된 입력 정보(예, 메시지)에 기초하여 길을 안내하는 길 안내 정보의 표시를 제어할 수 있다.The second controller 122 may control the display of route guidance information based on input information (eg, message) input from the AVN terminal.

제2제어기(122)는 전자 제어 장치(300)을 통해 전송된 소프트웨어 업데이트용 데이터를 수신할 수 있고, 수신한 소프트웨어 업데이트용 데이터를 제2메모리에 저장하도록 할 수 있으며, 제2메모리에 저장된 소프트웨어 업데이트용 데이터를 이용하여 제2메모리(124)에 저장된 소프트웨어를 업데이트할 수 있다.The second controller 122 may receive software update data transmitted through the electronic control device 300, store the received software update data in the second memory, and store the software stored in the second memory. Software stored in the second memory 124 can be updated using the update data.

제2부하(123)는 디스플레이 모듈일 수 있다. 디스플레이 모듈은 길 안내 정보를 표시하고 표시된 길 안내 정보를 반사시켜 프론트 윈도우 글래스에 투영되도록 한다.The second load 123 may be a display module. The display module displays route information and reflects the displayed route information to be projected onto the front window glass.

제2메모리(124)는 제2디바이스(120)와 통신을 수행하는 다른 디바이스의 식별 정보 및 IP 주소를 저장할 수 있고 전자 제어 장치(300)의 식별 정보를 저장할 수 있다.The second memory 124 may store identification information and IP addresses of other devices that communicate with the second device 120 and may store identification information of the electronic control device 300 .

제2메모리(124)는 제2부하(123)의 동작을 통해 적어도 하나의 기능이 수행되도록 하는 소프트웨어를 저장할 수 있고 저장된 소프트웨어의 버전 정보를 저장할 수 있다. The second memory 124 may store software that allows at least one function to be performed through the operation of the second load 123 and may store version information of the stored software.

예를 들어, 제2메모리(124)는 길 안내 정보의 표시 기능을 수행하기 위한 소프트웨어를 저장할 수 있다.For example, the second memory 124 may store software to perform a function of displaying route information.

제2부하(123)의 동작을 통해 복수 개의 기능이 수행되는 경우, 제2메모리(124)는 복수 개의 기능에 각각 대응하는 복수 개의 소프트웨어와, 복수 개의 소프트웨어에 각각 대응하는 버전 정보를 저장할 수 있다.When a plurality of functions are performed through the operation of the second load 123, the second memory 124 may store a plurality of software corresponding to the plurality of functions and version information corresponding to the plurality of software. .

제2메모리(124)는 제2제어기(122)의 제어 명령에 대응하여 수신된 소프트웨어 업데이트용 데이터를 저장할 수 있다.The second memory 124 may store software update data received in response to a control command from the second controller 122.

제2메모리(124)는 복수 개의 저장 영역을 포함할 수 있다. 이 경우 제2메모리(124)는 제1영역에 소프트웨어를 저장하고, 제2영역에 수신된 소프트웨어 업데이트용 데이터를 저장할 수 있다.The second memory 124 may include a plurality of storage areas. In this case, the second memory 124 may store software in the first area and store received software update data in the second area.

제2메모리(124)는 업데이트 완료에 대응하여 제1영역에 저장된 소프트웨어를 삭제하고, 제1영역에 소프트웨어 업데이트용 데이터를 저장할 수 있으며, 제 2영역에 저장된 소프트웨어 업데이트용 데이터를 삭제하여 빈 영역으로 변경할 수 있다.The second memory 124 may delete the software stored in the first area in response to completion of the update, store software update data in the first area, and delete the software update data stored in the second area to create an empty area. You can change it.

제2메모리(124)는 업데이트된 소프트웨어의 버전 정보를 저장할 수 있다.The second memory 124 may store version information of updated software.

제3디바이스(130)는 제3통신장치(131), 제3제어기(132), 제3부하(133) 및 제3메모리(134)를 포함할 수 있다.The third device 130 may include a third communication device 131, a third controller 132, a third load 133, and a third memory 134.

제3통신장치(131)는 전자 제어 장치(300) 및 제1, 4 디바이스(110, 140)의 통신장치와 통신을 수행한다. 아울러 제3통신장치(131)는 제2, 5 디바이스(120, 150) 중 적어도 하나의 통신장치와 통신을 수행하는 것도 가능하다.The third communication device 131 communicates with the electronic control device 300 and the communication devices of the first and fourth devices 110 and 140. In addition, the third communication device 131 is also capable of communicating with at least one communication device among the second and fifth devices 120 and 150.

제3제어기(132)는 적어도 하나의 검출 장치(즉, 센서)에서 검출된 검출 정보에 기초하여 타코미터, 속도계, 냉각수 온도계, 연료계 등의 정보를 다이얼 방식으로 표시하도록 제어하고, 방향전환 지시 램프, 상향등 표시 램프, 각종 경고 램프, 변속 레버 지시 램프의 온오프를 제어하며 주행 거리계, 주행 기록계 등을 문자로 표시하도록 제어한다.The third controller 132 controls to display information such as a tachometer, speedometer, coolant temperature gauge, and fuel gauge in a dial manner based on detection information detected by at least one detection device (i.e., sensor), and displays a direction change indicator lamp. , controls the on/off of high beam indicator lamps, various warning lamps, and shift lever indicator lamps, and controls the odometer, odometer, etc. to be displayed in text.

제3부하(133)는 램프, 표시부(예, LCD), 다이얼 방식의 게이지를 포함한다.The third load 133 includes a lamp, a display unit (eg, LCD), and a dial-type gauge.

제3부하(133)는 제3제어기(132)의 제어 신호에 기초하여 램프를 온오프시키고, 표시부에 문자를 표시하며, 게이지의 바늘을 이동시킨다.The third load 133 turns the lamp on and off based on the control signal from the third controller 132, displays characters on the display, and moves the gauge needle.

제3메모리(134)는 제3디바이스의 소스 IP 주소를 저장하고, 제3디바이스와 통신을 수행하는 전자 제어 장치(300) 및 다른 디바이스의 식별 정보 및 IP 주소를 저장할 수 있다. The third memory 134 may store the source IP address of the third device, and may store identification information and IP addresses of the electronic control device 300 and other devices that communicate with the third device.

제3제어기(132)는 전자 제어 장치(300)을 통해 전송된 소프트웨어 업데이트용 데이터를 수신할 수 있고, 수신한 소프트웨어 업데이트용 데이터를 제3메모리에 저장하도록 할 수 있으며, 제3메모리에 저장된 소프트웨어 업데이트용 데이터를 이용하여 제3메모리(134)에 저장된 소프트웨어를 업데이트할 수 있다.The third controller 132 can receive software update data transmitted through the electronic control device 300, store the received software update data in the third memory, and store the software stored in the third memory. Software stored in the third memory 134 can be updated using the update data.

제3메모리(134)는 제3부하(133)의 동작을 통해 적어도 하나의 기능이 수행되도록 하는 소프트웨어를 저장할 수 있고 저장된 소프트웨어의 버전 정보를 저장할 수 있다. The third memory 134 can store software that allows at least one function to be performed through the operation of the third load 133 and can store version information of the stored software.

예를 들어, 제3메모리(134)는 램프를 온오프 기능, 문자 표시 기능 및 게이지의 바늘 이동 기능 등 알림 기능을 수행하기 위한 소프트웨어를 저장할 수 있다.For example, the third memory 134 may store software to perform notification functions, such as a lamp on/off function, a character display function, and a gauge needle movement function.

제3부하(123)의 동작을 통해 복수 개의 기능이 수행되는 경우, 제3메모리(134)는 복수 개의 기능에 각각 대응하는 복수 개의 소프트웨어와, 복수 개의 소프트웨어에 각각 대응하는 버전 정보를 저장할 수 있다.When a plurality of functions are performed through the operation of the third load 123, the third memory 134 may store a plurality of software corresponding to the plurality of functions, and version information corresponding to the plurality of software. .

제3메모리(134)는 제3제어기(132)의 제어 명령에 대응하여 수신된 소프트웨어 업데이트용 데이터를 저장할 수 있다.The third memory 134 may store software update data received in response to a control command from the third controller 132.

제3메모리(134)는 복수 개의 저장 영역을 포함할 수 있다. 이 경우 제3메모리(134)는 제1영역에 소프트웨어를 저장하고, 제2영역에 수신된 소프트웨어 업데이트용 데이터를 저장할 수 있다.The third memory 134 may include a plurality of storage areas. In this case, the third memory 134 may store software in the first area and the received software update data in the second area.

제3메모리(134)는 업데이트 완료에 대응하여 제1영역에 저장된 소프트웨어를 삭제하고, 제1영역에 소프트웨어 업데이트용 데이터를 저장할 수 있으며, 제 2영역에 저장된 소프트웨어 업데이트용 데이터를 삭제하여 빈 영역으로 변경할 수 있다.The third memory 134 may delete the software stored in the first area in response to completion of the update, store software update data in the first area, and delete the software update data stored in the second area to create an empty area. You can change it.

제3메모리(134)는 업데이트된 소프트웨어의 버전 정보를 저장할 수 있다.The third memory 134 may store version information of updated software.

제4디바이스(140)는 제4통신장치(141), 제4제어기(142), 제4부하(143) 및 제4메모리(144)를 포함할 수 있다.The fourth device 140 may include a fourth communication device 141, a fourth controller 142, a fourth load 143, and a fourth memory 144.

제4통신장치(141)는 제1, 3 디바이스(110, 130)의 제1, 3 통신장치와 통신을 수행한다. 제4통신장치(141)는 제2, 5 디바이스(120, 150) 중 적어도 하나의 통신장치와 통신을 수행하는 것도 가능하다.The fourth communication device 141 communicates with the first and third communication devices of the first and third devices 110 and 130. The fourth communication device 141 is also capable of communicating with at least one of the second and fifth devices 120 and 150.

제4제어기(142)는 입력부에 입력된 입력 정보를 AVN 단말기에 전송하거나, 클러스터에 전송하도록 제어하고 입력부에 입력된 입력 정보에 기초하여 오디오 기능, 라디오 기능, 공조 기능 및 열선 기능 중 적어도 하나를 제어하며, 수행 중인 기능에 대한 정보를 표시부를 통해 표시하도록 표시부의 동작을 제어하며, 통신 단자에 사용자용 단말기가 연결되면 사용자용 단말기와의 통신을 제어하는 것도 가능하다.The fourth controller 142 controls the input information input to the input unit to be transmitted to the AVN terminal or to the cluster and operates at least one of an audio function, a radio function, an air conditioning function, and a heating function based on the input information input to the input unit. The operation of the display unit is controlled to display information about the function being performed through the display unit, and when the user terminal is connected to the communication terminal, it is also possible to control communication with the user terminal.

제4제어기(142)는 전자 제어 장치(300)을 통해 전송된 소프트웨어 업데이트용 데이터를 수신할 수 있고, 수신한 소프트웨어 업데이트용 데이터를 제4메모리에 저장하도록 할 수 있으며, 제4메모리(144)에 저장된 소프트웨어 업데이트용 데이터를 이용하여 제4메모리(144)에 저장된 소프트웨어를 업데이트할 수 있다.The fourth controller 142 can receive software update data transmitted through the electronic control device 300 and store the received software update data in the fourth memory, and the fourth memory 144 The software stored in the fourth memory 144 can be updated using the software update data stored in .

제4부하(143)는 헤드유닛에 마련된 입력부, 표시부 및 통신 단자를 포함할 수 있다.The fourth load 143 may include an input unit, a display unit, and a communication terminal provided in the head unit.

여기서 입력부는 사용자 입력을 수신할 수 있다.Here, the input unit can receive user input.

입력부(410, 도 3 참조)는 시동 온 신호 및 시동 오프 신호를 수신할 수 있다. 입력부는 시동 온 신호가 수신되면 시동 온 신호를 중앙 통신 장치(200)를 통해 전자 제어 장치(300)에 전송할 수 있고, 시동 오프 신호가 수신되면 시동 오프 신호를 중앙 통신 장치(200)를 통해 전자 제어 장치(300)에 전송할 수 있다.The input unit 410 (see FIG. 3) can receive a ignition on signal and an ignition off signal. When the ignition on signal is received, the input unit may transmit the ignition on signal to the electronic control device 300 through the central communication device 200, and when the ignition off signal is received, the ignition off signal may be transmitted to the electronic control device 300 through the central communication device 200. It can be transmitted to the control device 300.

여기서 시동 온 신호는 키 온 신호라고도 하고, 시동 오프 신호는 키 오프 신호라고도 한다. Here, the ignition on signal is also called a key on signal, and the ignition off signal is also called a key off signal.

제4메모리(144)는 제4디바이스의 소스 IP 주소를 저장하고, 제4디바이스와 통신을 수행하는 다른 디바이스의 식별 정보 및 IP 주소를 저장할 수 있고, 전자 제어 장치(300)의 식별 정보 및 IP 주소를 저장할 수 있다.The fourth memory 144 may store the source IP address of the fourth device, the identification information and IP address of another device that communicates with the fourth device, and the identification information and IP address of the electronic control device 300. You can save the address.

제4메모리(144)는 제4부하(143)의 동작을 통해 적어도 하나의 기능이 수행되도록 하는 소프트웨어를 저장할 수 있고 저장된 소프트웨어의 버전 정보를 저장할 수 있다. The fourth memory 144 can store software that allows at least one function to be performed through the operation of the fourth load 143 and can store version information of the stored software.

제4부하(143)의 동작을 통해 복수 개의 기능이 수행되는 경우, 제4메모리(144)는 복수 개의 기능에 각각 대응하는 복수 개의 소프트웨어와, 복수 개의 소프트웨어에 각각 대응하는 버전 정보를 저장할 수 있다.When a plurality of functions are performed through the operation of the fourth load 143, the fourth memory 144 may store a plurality of software corresponding to the plurality of functions, and version information corresponding to the plurality of software. .

제4메모리(144)는 제4제어기(142)의 제어 명령에 대응하여 수신된 소프트웨어 업데이트용 데이터를 저장할 수 있다.The fourth memory 144 may store software update data received in response to a control command from the fourth controller 142.

제4메모리(144)는 복수 개의 저장 영역을 포함할 수 있다. 이 경우 제4메모리(144)는 제1영역에 소프트웨어를 저장하고, 제2영역에 수신된 소프트웨어 업데이트용 데이터를 저장할 수 있다.The fourth memory 144 may include a plurality of storage areas. In this case, the fourth memory 144 may store software in the first area and the received software update data in the second area.

제4메모리(144)는 업데이트 완료에 대응하여 제1영역에 저장된 소프트웨어를 삭제하고, 제1영역에 소프트웨어 업데이트용 데이터를 저장할 수 있으며, 제 2영역에 저장된 소프트웨어 업데이트용 데이터를 삭제하여 빈 영역으로 변경할 수 있다.The fourth memory 144 may delete the software stored in the first area in response to completion of the update, store software update data in the first area, and delete the software update data stored in the second area to create an empty area. You can change it.

제4메모리(144)는 업데이트된 소프트웨어의 버전 정보를 저장할 수 있다.The fourth memory 144 may store version information of updated software.

제5디바이스(150)는 제5통신장치(151), 제5제어기(152) 및 제5메모리(154)를 포함할 수 있다.The fifth device 150 may include a fifth communication device 151, a fifth controller 152, and a fifth memory 154.

제5통신장치(151)는 제1 디바이스(110)의 통신장치와 통신을 수행한다. 아울러 제5통신장치(151)는 제1, 2, 3, 4 디바이스(120, 130, 140, 150) 및 전자 제어 장치(300) 중 적어도 하나의 통신장치와 통신을 수행하는 것도 가능하다.The fifth communication device 151 communicates with the communication device of the first device 110. In addition, the fifth communication device 151 is also capable of communicating with at least one communication device among the first, second, third, and fourth devices (120, 130, 140, and 150) and the electronic control device 300.

제5제어기(152)는 적어도 하나의 카메라를 통해 영상이 수신되면 수신된 영상을 AVN 단말기에 전송하도록 제어한다.When an image is received through at least one camera, the fifth controller 152 controls the received image to be transmitted to the AVN terminal.

제5제어기(152)는 전자 제어 장치(300)을 통해 전송된 소프트웨어 업데이트용 데이터를 수신할 수 있고, 수신한 소프트웨어 업데이트용 데이터를 제5메모리에 저장하도록 할 수 있으며, 제5메모리(154)에 저장된 소프트웨어 업데이트용 데이터를 이용하여 제5메모리(154)에 저장된 소프트웨어를 업데이트할 수 있다.The fifth controller 152 can receive software update data transmitted through the electronic control device 300 and store the received software update data in the fifth memory, and the fifth memory 154 The software stored in the fifth memory 154 can be updated using the software update data stored in .

제5메모리(154)는 제5디바이스(150)의 소스 IP 주소를 저장하고, 제5디바이스와 통신을 수행하는 다른 디바이스의 식별 정보 및 IP 주소를 저장한다.The fifth memory 154 stores the source IP address of the fifth device 150 and the identification information and IP address of another device that communicates with the fifth device.

제5메모리(154)는 전자 제어 장치(300)의 식별 정보 및 IP 주소를 저장하는 것도 가능하다.The fifth memory 154 can also store identification information and IP address of the electronic control device 300.

제5메모리(154)는 제1부하(113)의 동작을 통해 적어도 하나의 기능이 수행되도록 하는 소프트웨어를 저장할 수 있고 저장된 소프트웨어의 버전 정보를 저장할 수 있다. The fifth memory 154 can store software that allows at least one function to be performed through the operation of the first load 113 and can store version information of the stored software.

제5제어기(152)를 제어를 통해 제1부하(113)에서 복수 개의 기능이 수행되는 경우, 제5메모리(154)는 복수 개의 기능에 각각 대응하는 복수 개의 소프트웨어와, 복수 개의 소프트웨어에 각각 대응하는 버전 정보를 저장할 수 있다.When a plurality of functions are performed in the first load 113 through control of the fifth controller 152, the fifth memory 154 corresponds to a plurality of software and a plurality of software respectively corresponding to the plurality of functions. You can save version information.

제5메모리(154)는 제5제어기(152)의 제어 명령에 대응하여 수신된 소프트웨어 업데이트용 데이터를 저장할 수 있다.The fifth memory 154 may store software update data received in response to a control command from the fifth controller 152.

제5메모리(154)는 복수 개의 저장 영역을 포함할 수 있다. 이 경우 제5메모리(154)는 제1영역에 소프트웨어를 저장하고, 제2영역에 수신된 소프트웨어 업데이트용 데이터를 저장할 수 있다.The fifth memory 154 may include a plurality of storage areas. In this case, the fifth memory 154 may store software in the first area and the received software update data in the second area.

제5메모리(154)는 업데이트 완료에 대응하여 제1영역에 저장된 소프트웨어를 삭제하고, 제1영역에 소프트웨어 업데이트용 데이터를 저장할 수 있으며, 제 2영역에 저장된 소프트웨어 업데이트용 데이터를 삭제하여 빈 영역으로 변경할 수 있다.The fifth memory 154 may delete the software stored in the first area in response to completion of the update, store software update data in the first area, and delete the software update data stored in the second area to create an empty area. You can change it.

제5메모리(154)는 업데이트된 소프트웨어의 버전 정보를 저장할 수 있다.The fifth memory 154 may store version information of updated software.

이와 같이 복수 개의 디바이스 중 적어도 하나의 디바이스(150)는, 다른 디바이스와의 통신을 수행하는 통신 장치(151)와, 통신 장치(151)를 통해 수신된 메시지 및 내부 소프트웨어에 기초하여 제어 신호를 생성하고 생성된 제어 신호에 대응하는 메시지를 다른 디바이스에 송신하도록 통신장치를 제어하는 제어기(152)와, 메시지의 식별 정보 별로 메시지를 송신할 다른 디바이스의 식별 정보를 저장하고 목적지 IP 주소를 저장하는 메모리(154)를 포함하는 것도 가능하다.As such, at least one device 150 among the plurality of devices generates a control signal based on a communication device 151 that performs communication with another device, a message received through the communication device 151, and internal software. a controller 152 that controls the communication device to transmit a message corresponding to the generated control signal to another device, and a memory that stores the identification information of the other device to transmit the message for each identification information of the message and stores the destination IP address. It is also possible to include (154).

다른 예로, 제5디바이스(150)는, 제너레이터와 엔진의 동작을 제어하는 엔진 제어기(ECU: Engine Control Unit), 모터 제어기((MCU: Motor Control Unit), 액추에이터의 동작을 제어하여 클러치가 오픈 상태 또는 클로즈 상태가 되도록 하는 로컬 제어기(LCU: Local Control Unit)에 각각 제어 신호를 출력하는 하이브리드 제어기(HCU: HEV Control Unit)일 수 있다. 즉 통신 장치, 제어기 및 메모리를 포함하는 디바이스는, 통신, 저장 및 다른 제어기에 제어 신호를 출력하는 기능을 가진 하이브리드 제어기일 수 있다.As another example, the fifth device 150 controls the operation of the engine controller (ECU: Engine Control Unit), the motor controller (MCU: Motor Control Unit), and the actuator, which control the operation of the generator and the engine, so that the clutch is in the open state. Alternatively, it may be a hybrid controller (HCU: HEV Control Unit) that outputs a control signal to a local controller (LCU: Local Control Unit) that puts it in a closed state. That is, a device including a communication device, a controller, and a memory may be used for communication, It may be a hybrid controller with the function of storing and outputting control signals to another controller.

각 디바이스의 제어기는 디바이스기 내 구성요소들의 동작을 제어하기 위한 알고리즘 또는 알고리즘을 재현한 소프트웨어에 대한 데이터를 저장하는 메모리(미도시), 및 메모리에 저장된 데이터를 이용하여 전술한 동작을 수행하는 프로세서(미도시)로 구현될 수 있다. 이때, 메모리와 프로세서는 각각 별개의 칩으로 구현될 수 있다. 또는, 메모리와 프로세서는 단일 칩으로 구현될 수도 있다.The controller of each device includes a memory (not shown) that stores data for an algorithm for controlling the operation of components within the device or software that reproduces the algorithm, and a processor that performs the above operations using the data stored in the memory. It can be implemented as (not shown). At this time, the memory and processor may each be implemented as separate chips. Alternatively, the memory and processor may be implemented as a single chip.

각 디바이스의 메모리는 캐쉬, ROM(Read Only Memory), PROM(Programmable ROM), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM) 및 플래쉬 메모리(Flash memory)와 같은 비휘발성 메모리 소자 또는 RAM(Random Access Memory)과 같은 휘발성 메모리 소자 또는 하드디스크 드라이브(HDD, Hard Disk Drive), CD-ROM과 같은 저장 매체 중 적어도 하나로 구현될 수 있으나 이에 한정되지는 않는다.The memory of each device consists of non-volatile memory elements such as cache, read only memory (ROM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), and flash memory, or RAM (RAM). It may be implemented as at least one of a volatile memory device such as Random Access Memory (Random Access Memory) or a storage medium such as a hard disk drive (HDD) or CD-ROM, but is not limited thereto.

중앙 통신 장치(200)는 복수 개의 디바이스들(110, 120, 130, 140, 150) 사이에서 통신을 제어하고, 복수 개들의 디바이스들 중 적어도 하나와 전자 제어 장치(300) 사이에서 통신을 제어한다.The central communication device 200 controls communication between a plurality of devices 110, 120, 130, 140, and 150, and controls communication between at least one of the plurality of devices and the electronic control device 300. .

중앙 통신 장치(200)는 복수 개의 디바이스(110, 120, 130, 140) 중 하나의 디바이스에서 적어도 하나의 다른 디바이스로 메시지를 전송할 때 적어도 하나의 다른 디바이스로 메시지 전송 경로를 설정할 수 있다.When transmitting a message from one of the plurality of devices 110, 120, 130, and 140 to at least one other device, the central communication device 200 may set a message transmission path to at least one other device.

중앙 통신 장치(200)는 적어도 하나의 디바이스와 전자 제어 장치 사이에서 통신을 제어할 때, 전자 제어 장치(300)에 저장된 소프트웨어 업데이트용 데이터를 적어도 하나의 디바이스에 전송할 수 있고, 전자 제어 장치(300)의 업데이트 제어 명령을 적어도 하나의 디바이스에 전송할 수 있다.When controlling communication between at least one device and the electronic control device, the central communication device 200 may transmit software update data stored in the electronic control device 300 to the at least one device, and the electronic control device 300 ) update control command can be transmitted to at least one device.

중앙 통신 장치(200)는 복수 개의 디바이스들의 메모리에 저장된 소프트웨어의 버전 정보를 전자 제어 장치(300)에 전송하는 것도 가능하다.The central communication device 200 can also transmit version information of software stored in the memory of a plurality of devices to the electronic control device 300.

중앙 통신 장치(200)는 서버(2)와 통신을 수행할 수 있고, 서버(2)로부터 전송된 소프트웨어 업데이트용 데이터 및 버전 정보를 전자 제어 장치(300)에 전송할 수 있다.The central communication device 200 can communicate with the server 2 and transmit software update data and version information transmitted from the server 2 to the electronic control device 300.

여기서 서버(2)는 제어기별 소프트웨어 업데이트용 데이터 및 버전 정보를 저장할 수 있고, 차량(1)의 요청에 대응하여 저장된 제어기별 소프트웨어 업데이트용 데이터 및 버전 정보를 차량(1)에 전송할 수 있다.Here, the server 2 can store software update data and version information for each controller, and transmit the stored software update data and version information for each controller to the vehicle 1 in response to a request from the vehicle 1.

서버(2)는 차량 제조사의 서버일 수 있고, 정비 센터의 서버일 수 있다.The server 2 may be a server of a vehicle manufacturer or a server of a maintenance center.

중앙 통신 장치(200)는 차량의 내부 구성 요소들 사이의 통신 및 외부 장치와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어 근거리 통신 모듈, 유선 통신 모듈 및 무선 통신 모듈 중 적어도 하나를 포함할 수 있다. 여기서 외부 장치는 서버(2) 및 사용자용 단말기(미도시)를 포함할 수 있다.The central communication device 200 may include one or more components that enable communication between internal components of the vehicle and communication with external devices, for example, among a short-range communication module, a wired communication module, and a wireless communication module. It can contain at least one. Here, the external device may include a server 2 and a user terminal (not shown).

근거리 통신 모듈은 블루투스 모듈, 적외선 통신 모듈, RFID(Radio Frequency Identification) 통신 모듈, WLAN(Wireless Local Access Network) 통신 모듈, NFC 통신 모듈, 직비(Zigbee) 통신 모듈 등 근거리에서 무선 통신망을 이용하여 신호를 송수신하는 다양한 근거리 통신 모듈을 포함할 수 있다.The short-range communication module transmits signals using a wireless communication network at a short distance, such as a Bluetooth module, infrared communication module, RFID (Radio Frequency Identification) communication module, WLAN (Wireless Local Access Network) communication module, NFC communication module, and Zigbee communication module. It may include various short-range communication modules that transmit and receive.

유선 통신 모듈은 캔(Controller Area Network; CAN) 통신 모듈, 지역 통신(Local Area Network; LAN) 모듈, 광역 통신(Wide Area Network; WAN) 모듈 또는 부가가치 통신(Value Added Network; VAN) 모듈 등 다양한 유선 통신 모듈뿐만 아니라, USB(Universal Serial Bus), HDMI(High Definition Multimedia Interface), DVI(Digital Visual Interface), RS-232(recommended standard232), 전력선 통신, 또는 POTS(plain old telephone service) 등 다양한 케이블 통신 모듈을 포함할 수 있다. Wired communication modules include a variety of wired communication modules, such as Controller Area Network (CAN) communication modules, Local Area Network (LAN) modules, Wide Area Network (WAN) modules, or Value Added Network (VAN) modules. In addition to communication modules, various cable communications such as USB (Universal Serial Bus), HDMI (High Definition Multimedia Interface), DVI (Digital Visual Interface), RS-232 (recommended standard232), power line communication, or POTS (plain old telephone service) Can contain modules.

무선 통신 모듈은 와이파이(Wifi) 모듈, 와이브로(Wireless broadband) 모듈 외에도, GSM(global System for Mobile Communication), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), UMTS(universal mobile telecommunications system), TDMA(Time Division Multiple Access), LTE(Long Term Evolution) 등 다양한 무선 통신 방식을 지원하는 무선 통신 모듈을 포함할 수 있다.In addition to Wi-Fi modules and WiBro (Wireless broadband) modules, wireless communication modules include GSM (global System for Mobile Communication), CDMA (Code Division Multiple Access), WCDMA (Wideband Code Division Multiple Access), and UMTS (universal mobile telecommunications system). ), TDMA (Time Division Multiple Access), and LTE (Long Term Evolution) may include a wireless communication module that supports various wireless communication methods.

중앙 통신 장치(200)는 적어도 두 개의 디바이스들 사이에서 통신을 중계한다. 예를 들어, 중앙 통신 장치(200)는 유선을 통해 서로 다른 제어기 사이에서 제어 신호를 송수신한다. 이러한 통신 장치는 게이트웨이를 포함할 수 있다.The central communication device 200 relays communication between at least two devices. For example, the central communication device 200 transmits and receives control signals between different controllers through wires. These communication devices may include gateways.

유선 통신 모듈 중 캔 통신 모듈을 예를 들어 설명한다.Among wired communication modules, the can communication module will be explained as an example.

캔 통신 모듈은 두 개의 통신 선인 하이 라인과 로우 라인을 통하여 적어도 하나의 제어기, 전자 장치 및 검출 장치 중 적어도 하나에 제어 신호를 전송하며, 신호 전송 시 초당 수천 개의 신호를 전송할 수 있다.The CAN communication module transmits a control signal to at least one of at least one controller, an electronic device, and a detection device through two communication lines, a high line and a low line, and can transmit thousands of signals per second when transmitting a signal.

이러한 캔 통신 모듈은 제어 신호를 송수신하는 통신 속도에 따라 저속 캔 통신 모듈과 고속 캔 통신 모듈로 구분될 수 있다.These CAN communication modules can be divided into low-speed CAN communication modules and high-speed CAN communication modules depending on the communication speed at which control signals are transmitted and received.

여기서 저속 캔 통신 모듈은 기준 속도 미만의 통신 속도를 가진 캔 통신 모듈일 수 있고, 고속 캔 통신 모듈은 기준 속도 이상의 통신 속도를 가진 캔 통신 모듈일 수 있다.Here, the low-speed CAN communication module may be a CAN communication module with a communication speed less than the standard speed, and the high-speed CAN communication module may be a CAN communication module with a communication speed greater than the standard speed.

저속 캔 통신 모듈은 멀티미디어 캔(M-CAN: Multimedia Controller Area Network)통신 모듈과, 각종 전자 장치를 동작시키기 위한 신호를 송수신하는 바디 캔(B-CAN: Body Controller Area Network) 통신 모듈을 포함할 수 있다.The low-speed CAN communication module may include a Multimedia Controller Area Network (M-CAN) communication module and a Body Controller Area Network (B-CAN) communication module that transmits and receives signals for operating various electronic devices. there is.

고속 캔 통신 모듈은 파워 트레인, 안정성 제어(ABS, 액티브 서스펜션 등), 변속 기능을 실시간으로 제어하기 위한 신호를 송수신하는 파워 트레인 캔(P-CAN: Power Train Controller Area Network) 통신 모듈과, 섀시 캔(C-CAN: Chassis Controller Area Network) 통신 모듈을 포함하고 에러를 진단하기 위한 진단 캔(D-CAN) 통신 모듈을 포함할 수 있다.The high-speed CAN communication module is a power train CAN (P-CAN: Power Train Controller Area Network) communication module that transmits and receives signals to control the power train, stability control (ABS, active suspension, etc.), and shifting functions in real time, and the chassis can It may include a (C-CAN: Chassis Controller Area Network) communication module and a diagnostic CAN (D-CAN) communication module for diagnosing errors.

전자 제어 장치(300)은 서버(2)로부터 제어기별 소프트웨어 업데이트용 데이터와 버전 정보를 수신하고, 수신한 제어기별 소프트웨어 업데이트용 데이터와 버전 정보를 저장하며, 저장한 제어기별 소프트웨어 업데이트용 데이터와 버전 정보를 복수 개의 디바이스들의 제어기에 각각 전송할 수 있다.The electronic control device 300 receives software update data and version information for each controller from the server 2, stores the received software update data and version information for each controller, and stores the stored software update data and version for each controller. Information can be transmitted to each of the controllers of a plurality of devices.

전자 제어 장치(300)은 복수 개의 디이바이스들에 각각 마련된 제어기(112, 122, 132, 142, 152)의 알고리즘을 재현한 소프트웨어의 업데이트를 제어할 수 있다.The electronic control device 300 can control the update of software that reproduces the algorithms of the controllers 112, 122, 132, 142, and 152 provided in each of the plurality of devices.

전자 제어 장치(300)은 복수 개의 디이바이스들의 제어기(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보를 각각 수집하고, 수집한 제어기(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보와 서버(2)로부터 수신된 제어기별 소프트웨어 업데이트용 데이터의 버전 정보에 기초하여 복수 개의 제어기 각각에 대한 업데이트의 필요 여부를 판단하고, 업데이트가 필요하다고 판단된 적어도 하나의 제어기의 업데이트를 제어할 수 있다.The electronic control device 300 collects the version information of the software of the controllers 112, 122, 132, 142, and 152 of the plurality of devices, and Based on the version information and the version information of the software update data for each controller received from the server 2, it is determined whether an update is necessary for each of the plurality of controllers, and the update of at least one controller determined to need an update is performed. You can control it.

도 3을 참조하여, 전자 제어 장치(300)의 구성을 좀 더 구체적으로 설명한다.Referring to FIG. 3, the configuration of the electronic control device 300 will be described in more detail.

도 3에 도시된 바와 같이, 전자 제어 장치(300)은 통신부(310), 프로세서(320) 및 메모리(330)를 포함한다. As shown in FIG. 3, the electronic control device 300 includes a communication unit 310, a processor 320, and a memory 330.

통신부(310)는 중앙 통신 장치(200)를 통해 복수 개의 디바이스들(110, 120, 130, 140, 150) 중 적어도 하나의 디바이스와 통신을 수행할 수 있다.The communication unit 310 may communicate with at least one device among the plurality of devices 110, 120, 130, 140, and 150 through the central communication device 200.

적어도 하나의 디바이스와 통신을 수행하는 것은, 적어도 하나의 디바이스에 마련된 통신 장치를 통해 적어도 하나의 제어기와 통신하는 것을 포함할 수 있다.Performing communication with at least one device may include communicating with at least one controller through a communication device provided in the at least one device.

통신부(310)는 중앙 통신 장치(200)를 통해 서버(2), 입력부(410), 배터리 관리 장치(420) 및 복수 개의 제어기들(112, 122, 132, 142, 152)과 통신을 수행할 수 있다.The communication unit 310 communicates with the server 2, the input unit 410, the battery management device 420, and a plurality of controllers 112, 122, 132, 142, and 152 through the central communication device 200. You can.

통신부(310)는 서버(2)를 통해 수신된 복수 개의 제어기들의 소프트웨어 업데이트용 데이터 및 버전 정보를 프로세서(320)에 전송할 수 있다.The communication unit 310 may transmit software update data and version information of a plurality of controllers received through the server 2 to the processor 320 .

통신부(310)는 프로세서(320)의 제어 명령에 대응하여 복수 개의 디바이스들에 소프트웨어의 버전 정보의 제공을 요청할 수 있다.The communication unit 310 may request a plurality of devices to provide software version information in response to a control command from the processor 320.

통신부(310)는 복수 개의 디바이스들로부터 전송된 제어기들의 소프트웨어의 버전 정보를 수신하고, 수신한 복수 개의 디바이스들의 각 메모리에 저장된 제어기의 소프트웨어의 버전 정보를 프로세서(320)에 전송할 수 있다.The communication unit 310 may receive version information of software of the controllers transmitted from a plurality of devices, and transmit the version information of the software of the controllers stored in each memory of the plurality of devices to the processor 320 .

통신부(310)는 시동 온 신호가 수신되면 수신된 시동 온 신호를 프로세서(320)에 전송할 수 있고, 시동 오프 신호가 수신되면 수신된 시동 오프 신호를 프로세서(320)에 전송할 수 있다.When a ignition-on signal is received, the communication unit 310 may transmit the received ignition-on signal to the processor 320, and when a ignition-off signal is received, the communication unit 310 may transmit the received ignition-off signal to the processor 320.

통신부(310)는 배터리의 분리 신호 및 연결 신호가 수신되면 수신된 배터리의 분리 신호 및 연결 신호를 프로세서(320)에 전송할 수 있다.When the battery disconnection and connection signals are received, the communication unit 310 may transmit the received battery disconnection and connection signals to the processor 320.

배터리의 분리 신호의 수신 후에 수신된 연결 신호는, 배터리의 리셋 신호일 수 있다. The connection signal received after receiving the battery disconnection signal may be a battery reset signal.

프로세서(320)는 시동 온 신호가 수신되면 서버(2)로부터 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어 업데이트용 데이터의 수신을 제어하고, 복수 개의 제어기들 중 적어도 하나의 제어기의 소프트웨어 업데이트용 데이터가 수신되면 수신된 적어도 하나의 제어기의 소프트웨어 업데이트용 데이터를 저장할 수 있다.When a start-up signal is received, the processor 320 controls the reception of data for software update of a plurality of controllers 112, 122, 132, 142, and 152 from the server 2, and at least one of the plurality of controllers When data for software update of a controller is received, the received data for software update of at least one controller may be stored.

프로세서(320)는 시동 오프 신호가 수신되면 서버(2)로부터 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어 업데이트용 데이터의 수신 및 저장을 제어하는 것도 가능하다.When a start-off signal is received, the processor 320 may control the reception and storage of software update data of the plurality of controllers 112, 122, 132, 142, and 152 from the server 2.

프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152)의 교체 시간을 각각 확인하고 확인한 각각의 교체 시간 중 가장 짧은 교체 시간을 기준 시간으로 설정할 수 있다.The processor 320 may check the replacement times of each of the plurality of controllers 112, 122, 132, 142, and 152 and set the shortest replacement time among the confirmed replacement times as the reference time.

프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152)의 수동 업데이트의 소요 시간을 각각 확인하고, 확인한 각각 소요 시간 중 가장 짧은 소요 시간을 기준 시간으로 설정할 수 있다.The processor 320 may check the time required for manual updating of the plurality of controllers 112, 122, 132, 142, and 152, and set the shortest time required among the confirmed times as the reference time.

프로세서(320)는 확인한 교체 시간 중 가장 짧은 교체 시간과, 가장 짧은 소요 시간 중 더 짧은 시간을 기준 시간으로 설정할 수 있다.The processor 320 may set the shorter of the confirmed replacement times and the shortest replacement time as the reference time.

프로세서(320)는 배터리(320)의 분리 신호 및 연결 신호에 기초하여 배터리(430)의 교체 시간을 확인하고, 확인한 배터리(430)의 교체 시간에 기초하여 기준 시간을 설정하는 것도 가능하다. 여기서 배터리의 교체 시간은, 배터리를 분리시킨 시점부터 연결하는 시점 사이의 시간일 수 있다.The processor 320 may check the replacement time of the battery 430 based on the disconnection signal and connection signal of the battery 320, and may set a reference time based on the confirmed replacement time of the battery 430. Here, the battery replacement time may be the time between the time the battery is disconnected and the time it is connected.

프로세서(320)는 차량의 시동이 오프되는 시점부터 차량의 시동이 온되는 시점 사이의 시간을 카운트하고 카운트한 시간을 저장하며, 카운트한 시간의 저장 횟수가 미리 설정된 횟수이면 카운트한 시간의 평균 시간을 획득하고 획득한 평균 시간을 기준 시간으로 설정하는 것도 가능하다.The processor 320 counts the time between the time when the vehicle's engine is turned off and the time when the vehicle's engine is turned on, and stores the counted time. If the number of stored times of the counted time is a preset number, the average time of the counted time It is also possible to obtain and set the obtained average time as the reference time.

도 4에 도시된 바와 같이, 프로세서(320)는 시동 오프 신호(IG_Off)가 수신되면 차량의 시동 오프 상태라고 판단하고, 차량의 시동 오프 신호가 수신된 시동 오프 시점부터 오프 시간을 카운트한다.As shown in FIG. 4, the processor 320 determines that the vehicle is in an ignition-off state when the ignition-off signal (IG_Off) is received, and counts the off-time from the ignition-off point when the vehicle ignition-off signal is received.

프로세서(320)는 카운트한 오프 시간(Toff)이 기준 시간(Tr)을 경과하면, 시동 온 신호(IG-On)가 수신되었는지를 판단하고, 시동 온 신호가 수신되었다고 판단되면 복수 개의 제어기들의 소프트웨어의 버전 정보를 수집하고 수집한 복수 개의 제어기들의 소프트웨어의 버전 정보를 메모리(330)에 저장한다.When the counted off time (Toff) elapses the reference time (Tr), the processor 320 determines whether the ignition on signal (IG-On) has been received, and when it is determined that the ignition on signal has been received, the processor 320 determines whether the ignition on signal has been received. Version information is collected and the collected software version information of the plurality of controllers is stored in the memory 330.

즉 프로세서(320)는 차량의 시동 오프 시점부터 기준 시간이 경과한 후에, 시동 온 신호가 수신되면 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보를 수집한다.That is, the processor 320 collects software version information of the plurality of controllers 112, 122, 132, 142, and 152 when an ignition on signal is received after a reference time has elapsed from the time the vehicle's ignition is turned off.

복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보는, 복수 개의 디바이스들에 각각 마련된 메모리에 저장된 정보일 수 있다.Software version information of the plurality of controllers 112, 122, 132, 142, and 152 may be information stored in memories provided in each of the plurality of devices.

복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보는, 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어 업데이트의 필요 여부를 판단하기 위한 정보로 이용될 수 있다.The software version information of the plurality of controllers (112, 122, 132, 142, and 152) is used as information to determine whether a software update of the plurality of controllers (112, 122, 132, 142, and 152) is necessary. It can be.

각 제어기의 소프트웨어는 하나 또는 복수 개일 수 있다. 어느 하나의 제어기에서 수행되는 복수 개의 기능 재현을 위한 복수 개 소프트웨어는, 각각의 버전 정보를 포함할 수 있다.Each controller may have one or more software. A plurality of software for reproducing a plurality of functions performed in one controller may include respective version information.

도 4에 도시된 바와 같이, 프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보를 수집 및 저장한 상태에서, 차량의 시동 오프 신호(IG_Off)가 수신되었다고 판단되면 차량의 시동 오프 신호가 수신된 시동 오프 시점부터 오프 시간을 카운트하고 카운트한 오프 시간(Toff)이 기준 시간(Tr)을 경과하기 전에 시동 온 신호(IG_On)가 수신되었다고 판단되면 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보의 수집을 스킵(Skip)할 수 있다.As shown in FIG. 4, the processor 320 collects and stores software version information of a plurality of controllers 112, 122, 132, 142, and 152, and when the vehicle ignition off signal (IG_Off) is If it is determined that the vehicle's ignition-off signal has been received, the off time is counted from the ignition-off point when the vehicle's ignition-off signal is received. If it is determined that the ignition-on signal (IG_On) is received before the counted off time (Toff) has elapsed the reference time (Tr), the vehicle's ignition-off signal is received. The collection of software version information of the controllers 112, 122, 132, 142, and 152 can be skipped.

즉 프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보를 수집 및 저장한 상태에서, 차량의 시동 오프 신호가 수신되었다고 판단되면 차량의 시동 오프 신호가 수신된 시동 오프 시점을 확인하고, 확인한 시동 오프 시점부터 기준 시간 이내에 시동 온 신호가 수신되었다고 판단되면 복수 개의 제어기들(112, 122, 132, 142, 152)의 버전 정보의 수집을 스킵(Skip)할 수 있다.That is, the processor 320 collects and stores software version information of the plurality of controllers 112, 122, 132, 142, and 152, and when it is determined that the vehicle ignition-off signal has been received, the vehicle ignition-off signal is Check the received ignition-off time, and if it is determined that the ignition-on signal has been received within a reference time from the confirmed ignition-off time, skip the collection of version information of the plurality of controllers (112, 122, 132, 142, 152). can do.

프로세서(320)는 배터리의 리셋 신호가 수신되었다고 판단되면 배터리가 리셋된 시간을 확인하고 확인한 시간이 기준 시간을 초과하였다고 판단되면 복수 개의 제어기들의 버전 정보를 수집할 수 있다.When the processor 320 determines that a battery reset signal has been received, the processor 320 may check the time at which the battery was reset, and if it determines that the confirmed time exceeds the reference time, it may collect version information of a plurality of controllers.

프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보를 수집 및 저장한 상태에서, 배터리의 리셋 신호가 수신되었다고 판단되면 배터리가 리셋된 시간을 확인하고 확인한 시간이 기준 시간 이내라고 판단되면 복수 개의 제어기들의 버전 정보의 수집을 스킵(Skip)할 수 있다.The processor 320 collects and stores software version information of a plurality of controllers 112, 122, 132, 142, and 152, and when it is determined that a battery reset signal has been received, it checks the time when the battery was reset and If it is determined that the checked time is within the standard time, the collection of version information of a plurality of controllers can be skipped.

이를 통해 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보를 수집하는 횟수를 줄일 수 있고, 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보를 수집하는 데 소요되는 시간을 최소화할 수 있다.Through this, the number of times to collect software version information of a plurality of controllers (112, 122, 132, 142, 152) can be reduced, and the software version of a plurality of controllers (112, 122, 132, 142, 152) can be collected. The time required to collect information can be minimized.

프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보의 수집을 스킵(Skip)한 상태에서, 이전의 시동 온 상태에서 저장된 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보를 이용하여 복수 개의 제어기들(112, 122, 132, 142, 152)의 업데이트를 제어할 수 있다.The processor 320 skips the collection of software version information of the plurality of controllers 112, 122, 132, 142, and 152, and stores the plurality of controllers 112, The update of the plurality of controllers 112, 122, 132, 142, and 152 can be controlled using the software version information of the software 122, 132, 142, and 152.

프로세서(320)는 수집된 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 버전 정보와 서버(2)로부터 전송된 복수 개의 제어기들의(112, 122, 132, 142, 152) 소프트웨어의 버전 정보를 비교하고, 수집된 소프트웨어의 버전 보다 서버로부터 전송된 소프트웨어의 버전이 더 높은 제어기를 확인하며, 확인한 제어기의 소프트웨어의 업데이트를 제어할 수 있다.The processor 320 collects the version information of the software of the plurality of controllers 112, 122, 132, 142, and 152 and the software version information of the plurality of controllers 112, 122, 132, 142, and 152 transmitted from the server 2. You can compare software version information, check the controller whose software version transmitted from the server is higher than the collected software version, and control the update of the software of the confirmed controller.

예를 들어, 제1디바이스의 제1메모리에 저장된 제1제어기의 소프트웨어의 버전이 1.1버전이고, 서버로부터 수신된 제1제어기의 소프트웨어 업데이트용 데이터의 버전이 1.6버전이면, 프로세서(320)는 제1제어기의 업데이트가 필요하다고 판단할 수 있다.For example, if the version of the software of the first controller stored in the first memory of the first device is version 1.1 and the version of the software update data of the first controller received from the server is version 1.6, the processor 320 1It may be determined that the controller needs to be updated.

반면, 제1디바이스의 제1메모리에 저장된 제1제어기의 소프트웨어의 버전이 1.1버전이고, 서버로부터 수신된 제1제어기의 소프트웨어 업데이트용 데이터의 버전이 1.1버전이면, 프로세서(320)는 제1제어기의 업데이트가 불필요하다고 판단할 수 있다.On the other hand, if the version of the software of the first controller stored in the first memory of the first device is version 1.1 and the version of the software update data of the first controller received from the server is version 1.1, the processor 320 It may be judged that updating is unnecessary.

프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152) 중 적어도 하나의 제어기에 대한 소프트웨어를 업데이트할 수 있다.The processor 320 may update software for at least one of the plurality of controllers 112, 122, 132, 142, and 152.

메모리(330)는 프로세서(320)의 제어 명령에 대응하여 복수 개의 디바이스들의 각 메모리에 저장된 각 제어기의 소프트웨어의 버전 정보를 저장할 수 있다.The memory 330 may store version information of software of each controller stored in each memory of a plurality of devices in response to a control command of the processor 320.

메모리(330)는 서버(2)를 통해 수신된 복수 개의 제어기들의 소프트웨어 업데이트용 데이터 및 버전 정보를 저장할 수 있다.The memory 330 may store data and version information for software updates of a plurality of controllers received through the server 2.

메모리(330)는 프로세서(320)의 제어 명령에 대응하여 저장된 복수 개의 제어기들의 소프트웨어 업데이트용 데이터 및 버전 정보를 삭제하는 것도 가능하다.The memory 330 is also capable of deleting software update data and version information of a plurality of controllers stored in response to a control command of the processor 320.

복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어의 업데이트를 수행하는 프로세서(320)의 제어 구성 및 제어 순서를, 도 5 내지 8을 참조하여 좀 더 구체적으로 설명한다.The control configuration and control sequence of the processor 320 that updates the software of the plurality of controllers 112, 122, 132, 142, and 152 will be described in more detail with reference to FIGS. 5 to 8.

도 5는 실시 예에 따른 전자 제어 장치의 소프트웨어 업데이트용 데이터의 전송 순서도이고, 도 6은 실시 예에 따른 전자 제어 장치의 기기 회차 설정 예시도이며, 도 7은 실시 예에 따른 전자 제어 장치의 프레임 회차 설정 예시도이고, 도 8은 실시 예에 따른 전자 제어 장치의 업데이트 제어 순서도이다.FIG. 5 is a flowchart of transmission of data for software update of an electronic control device according to an embodiment, FIG. 6 is an exemplary device turn setting diagram of an electronic control device according to an embodiment, and FIG. 7 is a frame of an electronic control device according to an embodiment. This is an example of a turn setting, and Figure 8 is an update control flowchart of an electronic control device according to an embodiment.

여기서 회차는 페이즈(Phase)라고도 한다.Here, the rounds are also called phases.

프로세서(320)는 시동 온 신호가 수신(501)되면 복수 개의 제어기들의 기기 회차를 설정(502)하고 설정한 복수 개의 제어기들의 기기 회차에 기초하여 메모리(330)에 저장된 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어 업데이트용 데이터를 복수 개의 제어기들(112, 122, 132, 142, 152)에 각각 전송하되 순차적으로 전송(503)하도록 통신부(310)를 제어할 수 있다.When a start-up signal is received (501), the processor 320 sets the device rotation of a plurality of controllers (502) and selects a plurality of controllers (112, 112, The communication unit 310 may be controlled to transmit the software update data of 122, 132, 142, and 152 to the plurality of controllers 112, 122, 132, 142, and 152, respectively, sequentially (503).

프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어 업데이트용 데이터를 전송하면서, 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어 업데이트용 데이터의 전송이 완료되었는지를 판단하고, 전송이 완료된 상태가 아니라고 판단되면 계속적으로 전원 변동 여부를 판단(505)하고, 전원 변동이 발생하였다고 판단되면 소프트웨어 업데이트용 데이터의 전송을 중단한다.The processor 320 transmits data for software update of the plurality of controllers (112, 122, 132, 142, and 152) and It is determined whether the transmission has been completed, and if it is determined that the transmission is not completed, it is continuously determined whether there is a power change (505). If it is determined that a power change has occurred, the transmission of the software update data is stopped.

즉 프로세서(320)는 메모리(330)에 저장된 복수 개의 제어기들(112, 122, 132, 142, 152)의 소프트웨어 업데이트용 데이터를 복수 개의 제어기들(112, 122, 132, 142, 152)에 순차적으로 전송 중, 전원 변동이 발생하면 소프트웨어 업데이트용 데이터의 전송을 중단(506)하고, 전송이 중단된 제어기의 기기 회차를 확인 및 저장(507)한다.That is, the processor 320 sequentially updates software update data of the plurality of controllers 112, 122, 132, 142, and 152 stored in the memory 330 to the plurality of controllers 112, 122, 132, 142, and 152. If a power change occurs during transmission, the transmission of software update data is stopped (506), and the device turn of the controller where transmission was stopped is checked and stored (507).

프로세서(320)는 전원 복구 여부를 판단(508)하고, 전원이 복구되었다고 판단되면 저장된 기기 회차를 확인(509)하고 확인한 기기 회차가 설정된 제어기를 확인하며, 확인한 제어기부터 소프트웨어 업데이트용 데이터를 재전송(510)하도록 통신부(310)를 제어할 수 있다.The processor 320 determines whether power has been restored (508), and if it is determined that power has been restored, checks the stored device turn (509), checks the controller for which the confirmed device turn is set, and retransmits the software update data from the confirmed controller (509). 510), the communication unit 310 can be controlled.

복수 개의 제어기 모두에 소프트웨어 업데이트용 데이터를 전송하는 경우를 예를 들어 설명한다.The case where software update data is transmitted to all of a plurality of controllers will be described as an example.

도 6에 도시된 바와 같이, 프로세서(320)는 제1제어기(112)에 기기 회차 1, 제2제어기(122)에 기기 회차2, 제3제어기(132)에 기기 회차 3, 제4제어기(142)에 기기 회차4, 제5제어기(152)에 기기 회차5를 설정한다.As shown in FIG. 6, the processor 320 configures the first controller 112 with device number 1, the second controller 122 with device number 2, the third controller 132 with device number 3, and the fourth controller ( Device number 4 is set in 142) and device number 5 is set in the fifth controller (152).

프로세서(320)는 기기 회차 1이 설정된 제1제어기(112)에 제1소프트웨어 업데이트용 데이터를 전송하며, 제1소프트웨어 업데이트용 데이터의 전송이 완료되면 기기 회차 2가 설정된 제2제어기(122)에 제2소프트웨어 업데이트용 데이터를 전송하고, 제2소프트웨어 업데이트용 데이터의 전송이 완료되면 기기 회차 3이 설정된 제3제어기(132)에 제3소프트웨어 업데이트용 데이터를 전송하며, 제3소프트웨어 업데이트용 데이터의 전송이 완료되면 기기 회차 4가 설정된 제4제어기(142)에 제4소프트웨어 업데이트용 데이터를 전송하고, 제4소프트웨어 업데이트용 데이터의 전송이 완료되면 기기 회차 5가 설정된 제5제어기(152)에 제5소프트웨어 업데이트용 데이터를 전송하고 제5소프트웨어 업데이트용 데이터의 전송이 완료되면 모든 소프트웨어 업데이트용 데이터의 전송이 완료되었다고 판단하고, 소프트웨어 업데이트용 데이터의 전송을 종료한다.The processor 320 transmits the first software update data to the first controller 112 set to device number 1, and when the transmission of the first software update data is completed, to the second controller 122 set to device number 2. The data for the second software update is transmitted, and when the transmission of the data for the second software update is completed, the data for the third software update is transmitted to the third controller 132 with device turn 3 set, and the data for the third software update is transmitted. When the transmission is completed, the fourth software update data is transmitted to the fourth controller 142 set to device turn 4, and when the transmission of the fourth software update data is completed, it is sent to the fifth controller 152 set to device turn 5. 5 When the software update data is transmitted and the 5th software update data is completed, it is determined that the transmission of all software update data has been completed, and the transmission of the software update data is terminated.

프로세서(320)는 기기 회차 4가 설정된 제4제어기(142)에 제4소프트웨어 업데이트용 데이터의 전송 중, 전원 변동이 발생하였다고 판단되면 제4소프트웨어 업데이트용 데이터의 전송을 중단하고, 전원이 복구되었다고 판단되면 중단된 제어기의 기기 회차 4를 확인하고, 기기 회차 4가 설정된 제4제어기(142)에 제4소프트웨어 업데이트용 데이터의 전송을 재개하고, 제4소프트웨어 업데이트용 데이터의 전송이 완료되면 기기 회차 5가 설정된 제5제어기(145)에 제5소프트웨어 업데이트용 데이터를 전송하고 제5소프트웨어 업데이트용 데이터의 전송이 완료되면 소프트웨어 업데이트용 데이터의 전송을 종료할 수 있다.If the processor 320 determines that a power change has occurred while transmitting the fourth software update data to the fourth controller 142 with device turn 4 set, the processor 320 stops transmitting the fourth software update data and reports that the power has been restored. If determined, check the device turn 4 of the interrupted controller, resume transmission of the fourth software update data to the fourth controller 142 with device turn 4 set, and when the transmission of the fourth software update data is completed, the device turn 4 The fifth software update data is transmitted to the fifth controller 145 set to 5, and when the fifth software update data transmission is completed, the software update data transmission can be terminated.

프로세서(320)는 소프트웨어 업데이트용 데이터의 전송 중, 통신부(310)를 통해 배터리의 분리 신호가 수신되면 전원이 변동되었다고 판단할 수 있다.The processor 320 may determine that the power has changed when a battery disconnection signal is received through the communication unit 310 while transmitting software update data.

프로세서(320)는 소프트웨어 업데이트용 데이터의 전송 중단 상태에서 배터리의 연결 신호가 수신되면 전원이 복구되었다고 판단할 수 있다.The processor 320 may determine that power has been restored when a battery connection signal is received while transmission of data for software update is interrupted.

프로세서(320)는 소프트웨어 업데이트용 데이터의 전송 중단 상태에서 배터리의 리셋 신호가 수신되면 전원 변동 후의 전원 복구로 판단할 수 있다.If a reset signal from the battery is received while transmission of software update data is interrupted, the processor 320 may determine power recovery after a power change.

프로세서(320)는 소프트웨어 업데이트용 데이터의 전송 중, 시동 오프 신호가 수신되면 전원이 변동되었다고 판단할 수 있다.The processor 320 may determine that the power has changed when a start-off signal is received while transmitting software update data.

프로세서(320)는 소프트웨어 업데이트용 데이터의 전송 중단 상태에서 시동 온 신호가 재수신되면 전원이 복구되었다고 판단할 수 있다.The processor 320 may determine that power has been restored when the start-up signal is re-received while the transmission of data for software update is interrupted.

프로세서(320)는 업데이트가 수행되는 수행 시간에 기초하여 복수 개의 제어기들의 기기 회차를 설정하는 것도 가능하다. 여기서 업데이트가 수행되는 수행 시간은 제어기별로 과거의 수행 시간들을 평균화한 것일 수 있다.The processor 320 can also set the device rotation of a plurality of controllers based on the execution time when the update is performed. Here, the execution time for performing the update may be an average of past execution times for each controller.

프로세서(320)는 진단을 위한 통신 가능성에 기초하여 복수 개의 제어기들의 기기 회차를 설정하는 것도 가능하다. 진단을 위한 통신 가능성은, 과거의 진단 히스토리에 기초하여 획득될 수 있다.The processor 320 may also set the device rotation of a plurality of controllers based on communication possibilities for diagnosis. Communication possibilities for diagnosis can be obtained based on past diagnosis history.

프로세서(320)는 복수 개의 제어기의 기기 회차에 기초하여 복수 개의 제어기들에 소프트웨어 업데이트용 데이터를 순차적으로 전송할 때, 각각의 제어기에 전송할 소프트웨어 업데이트용 데이터에 프레임 회차를 설정하고, 설정한 프레임 회차에 기초하여 소프트웨어 업데이트용 데이터를 전송할 수 있다. 이를 도 7을 참조하여 설명한다.When the processor 320 sequentially transmits software update data to a plurality of controllers based on the device rotation of the plurality of controllers, the processor 320 sets a frame rotation for the software update data to be transmitted to each controller and matches the set frame rotation. Based on this, data for software update can be transmitted. This will be explained with reference to FIG. 7 .

도 7에 도시된 바와 같이, 제1제어기(112)에 전송할 제1소프트웨어 업데이트용 데이터가 데이터 프레임 11, 12로 구분되고, 제2제어기(122)에 전송할 제2소프트웨어 업데이트용 데이터가 데이터 프레임 21로 구분되며, 제3제어기(132)에 전송할 제3소프트웨어 업데이트용 데이터가 데이터 프레임 31, 32로 구분되고, 제4제어기(142)에 전송할 제4소프트웨어 업데이트용 데이터가 데이터 프레임 41로 구분되고, 제5제어기(152)에 전송할 제4소프트웨어 업데이트용 데이터가 데이터 프레임 51, 52, 53으로 구분된다고 가정한다.As shown in FIG. 7, the first software update data to be transmitted to the first controller 112 is divided into data frames 11 and 12, and the second software update data to be transmitted to the second controller 122 is data frame 21. The data for the third software update to be transmitted to the third controller 132 is divided into data frames 31 and 32, and the data for the fourth software update to be transmitted to the fourth controller 142 is divided into data frame 41, Assume that the fourth software update data to be transmitted to the fifth controller 152 is divided into data frames 51, 52, and 53.

이때, 프로세서(320)는 데이터 프레임 11에 프레임 회차(FP) 1을 설정하고, 데이터 프레임 12에 프레임 회차(FP) 2를 설정하고, 데이터 프레임 21에 프레임 회차(FP) 3을 설정하고, 데이터 프레임 31에 프레임 회차(FP) 4를 설정하고, 데이터 프레임 32에 프레임 회차(FP) 5를 설정하고, 데이터 프레임 41에 프레임 회차(FP) 6을 설정하고, 데이터 프레임 51에 프레임 회차(FP) 7을 설정하고, 데이터 프레임 52에 프레임 회차(FP) 8을 설정하고, 데이터 프레임 53에 프레임 회차(FP) 9를 설정할 수 있다.At this time, the processor 320 sets frame number (FP) 1 to data frame 11, sets frame number (FP) 2 to data frame 12, sets frame number (FP) 3 to data frame 21, and sets data frame number (FP) 3 to data frame 11. Set frame count (FP) 4 for data frame 31, set frame count (FP) 5 for data frame 32, set frame count (FP) 6 for data frame 41, and set frame count (FP) for data frame 51. You can set 7, set frame count (FP) 8 in data frame 52, and set frame count (FP) 9 in data frame 53.

프로세서(320)는 제1제어기(112)에 제1소프트웨어 업데이트용 데이터의 전송 시, 프레임 회차(FP) 1이 설정된 데이터 프레임 11을 전송하고 데이터 프레임 11의 전송이 완료되면 프레임 회차(FP) 2가 설정된 데이터 프레임 12를 전송하며, 데이터 프레임 12의 전송이 완료되면 제2제어기(122)에 제2소프트웨어 업데이트용 데이터의 전송을 제어한다.When transmitting data for the first software update to the first controller 112, the processor 320 transmits data frame 11 with frame turn (FP) 1 set, and when transmission of data frame 11 is completed, frame turn (FP) 2 The set data frame 12 is transmitted, and when transmission of data frame 12 is completed, transmission of the second software update data is controlled to the second controller 122.

프로세서(320)는 제2제어기(122)에 제2소프트웨어 업데이트용 데이터의 전송 시, 프레임 회차(FP) 3이 설정된 데이터 프레임 21을 전송하고 데이터 프레임 21의 전송이 완료되면 제3제어기(132)에 제3소프트웨어 업데이트용 데이터의 전송을 제어한다.When transmitting data for a second software update to the second controller 122, the processor 320 transmits data frame 21 with a frame turn (FP) set to 3, and when transmission of data frame 21 is completed, the third controller 132 Controls the transmission of data for third-party software updates.

프로세서(320)는 제3제어기(132)에 제3소프트웨어 업데이트용 데이터의 전송 시, 프레임 회차(FP) 4가 설정된 데이터 프레임 31을 전송하고 데이터 프레임 31의 전송이 완료되면 프레임 회차(FP) 5가 설정된 데이터 프레임 32를 전송하며, 데이터 프레임 32의 전송이 완료되면 제4제어기(142)에 제4소프트웨어 업데이트용 데이터의 전송을 제어한다.When transmitting data for third software update to the third controller 132, the processor 320 transmits data frame 31 with frame number (FP) 4 set, and when transmission of data frame 31 is completed, frame number FP (FP) 5. The set data frame 32 is transmitted, and when the transmission of data frame 32 is completed, transmission of the fourth software update data is controlled to the fourth controller 142.

이와 같은 방식으로, 프로세서(320)는 제4제어기(142)에 제4소프트웨어 업데이트용 데이터를 전송하고, 제5제어기(142)에 제5소프트웨어 업데이트용 데이터를 전송할 수 있다.In this way, the processor 320 can transmit data for a fourth software update to the fourth controller 142 and transmit data for a fifth software update to the fifth controller 142.

프로세서(320)는 프레임 회차(FP) 5가 설정된 데이터 프레임 32의 전송 중 전원 변동이 발생하면 프레임 회차(FP) 5가 설정된 데이터 프레임 32의 전송을 중단하고 전송이 중단된 프레임 회차5를 확인한다.If a power fluctuation occurs during transmission of data frame 32 with frame number (FP) 5 set, the processor 320 stops transmission of data frame 32 with frame number (FP) 5 set and checks frame number 5 for which transmission was interrupted. .

프로세서(320)는 전원이 복구되면 전송이 중단된 프레임 회차5를 확인하고 확인한 프레임 회차 5가 설정된 데이터 프레임 32의 전송을 재개하고, 데이터 프레임 32의 전송이 완료되면 4제어기(142)에 제4소프트웨어 업데이트용 데이터의 전송을 제어한다.When the power is restored, the processor 320 checks the frame number 5 whose transmission was interrupted and resumes transmission of the data frame 32 in which the confirmed frame number 5 is set. When the transmission of the data frame 32 is completed, the fourth message is sent to the fourth controller 142. Controls transmission of data for software updates.

프로세서(320)는 하나의 제어기에 소프트웨어 업데이트용 데이터를 전송할 때, 소프트웨어 업데이트용 데이터를 데이터 프레임별로 구분하고 구분한 데이터 프레임별로 프레임 회차를 설정한 후, 설정한 프레임 회차에 기초하여 데이터 프레임을 순차적으로 전송하도록 통신부(310)를 제어할 수 있다.When transmitting software update data to one controller, the processor 320 divides the software update data into data frames, sets a frame turn for each divided data frame, and then sequentially sends the data frames based on the set frame turn. The communication unit 310 can be controlled to transmit.

도 8에 도시된 바와 같이, 프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152)에 소프트웨어 업데이트용 데이터를 모두 전송한 상태에서, 시동 오프 신호가 수신되었는지를 판단(511)하고, 시동 오프 신호가 수신되었다고 판단되면 복수 개의 제어기들의 기기 회차를 설정(512)한다.As shown in FIG. 8, the processor 320 determines whether an ignition off signal has been received while transmitting all software update data to the plurality of controllers 112, 122, 132, 142, and 152 (511). ), and when it is determined that a start-off signal has been received, the device rotation of a plurality of controllers is set (512).

업데이트 제어를 위한 기기 회차와, 소프트웨어 업데이트용 데이터를 전송하기 위한 기기 회차는, 동일할 수도 있고, 상이할 수도 있다.The device cycle for update control and the device cycle for transmitting software update data may be the same or different.

프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152)의 기기 회차에 기초하여 복수 개의 제어기들의 소프트웨어 업데이트를 순차적으로 제어(513)할 수 있다.The processor 320 may sequentially control software updates of the plurality of controllers (513) based on the device rotation of the plurality of controllers (112, 122, 132, 142, and 152).

프로세서(320)는 복수 개의 제어기들(112, 122, 132, 142, 152)의 업데이트 제어 중, 업데이트 완료 여부를 판단(514)하고, 업데이트가 완료되지 않은 상태라고 판단되면 주기적으로 시동 온 신호의 수신 여부를 판단(515)할 수 있다.The processor 320 determines whether the update is complete while controlling the update of the plurality of controllers 112, 122, 132, 142, and 152 (514), and if it is determined that the update is not completed, it periodically sends a start-up signal. Reception can be determined (515).

프로세서(320)는 데이트가 완료되지 않은 상태라고 판단되면 주기적으로 배터리의 리셋 신호의 수신 여부를 판단하는 것도 가능하다.If it is determined that data is not complete, the processor 320 may periodically determine whether a battery reset signal is received.

프로세서(320)는 소프트웨어 업데이트의 제어 중, 시동 온 신호가 수신되었다고 판단되면 소프트웨어 업데이트의 중단을 제어하고 업데이트가 중단된 제어기의 회차를 확인 및 저장(516)한다.If the processor 320 determines that a start-up signal has been received while controlling the software update, the processor 320 controls the interruption of the software update, and checks and stores the time of the controller in which the update was interrupted (516).

프로세서(320)는 업데이트가 중단된 상태에서 시동 오프 신호가 수신되는지를 판단(517)한다.The processor 320 determines whether an ignition off signal is received while the update is stopped (517).

프로세서(320)는 시동 오프 신호가 수신되었다고 판단되면 저장한 기기 회차를 확인(518)하고 확인한 기기 회차가 설정된 제어기를 확인하며 확인한 제어기부터 소프트웨어 업데이트를 재개(519)한다. 이들 도 5를 참조하여 설명한다.When the processor 320 determines that a start-off signal has been received, the processor 320 checks the stored device turn (518), checks the controller for which the confirmed device turn is set, and resumes the software update starting from the confirmed controller (519). These will be described with reference to FIG. 5 .

프로세서(320)는 기기 회차 1이 설정된 제1제어기(112)의 업데이트를 제어하고, 제1제어기의 업데이트가 완료되면 기기 회차 2가 설정된 제2제어기(122)의 업데이트를 제어하며, 제2제어기의 업데이트가 완료되면 기기 회차 3이 설정된 제3제어기(132)의 업데이트를 제어하고, 제3제어기의 업데이트가 완료되면 기기 회차 4가 설정된 제4제어기(142)의 업데이트를 제어하고, 제4제어기의 업데이트가 완료되면 기기 회차 5가 설정된 제5제어기(152)의 업데이트를 제어하고, 제5제어기의 업데이트가 완료되면 복수 개의 제어기들에 대한 업데이트 제어를 종료한다.The processor 320 controls the update of the first controller 112 set to device cycle 1, and when the update of the first controller is completed, it controls the update of the second controller 122 set to device cycle 2, and the second controller When the update of is completed, the update of the third controller 132 set to device turn 3 is controlled, and when the update of the third controller is completed, the update of the fourth controller 142 set to device turn 4 is controlled, and the fourth controller When the update is completed, the update of the fifth controller 152 set to device number 5 is controlled, and when the update of the fifth controller is completed, the update control for the plurality of controllers is terminated.

프로세서(320)는 기기 회차 4가 설정된 제4제어기(142)의 업데이트 제어 중, 시동 온 신호가 수신되면 업데이트를 중단하고, 업데이트가 중단된 제어기의 회차를 확인 및 저장한다.The processor 320 stops the update when a start-up signal is received during update control of the fourth controller 142 with device cycle 4 set, and checks and stores the cycle of the controller for which the update was stopped.

프로세서(320)는 업데이트가 중단된 상태에서 시동 오프 신호가 수신되면 업데이트 중단 시에 저장된 기기 회차를 확인하고 확인한 기기 회차가 설정된 제어기를 확인하며 확인한 제어기부터 업데이트를 다시 제어한다. 즉 프로세서(320)는 확인한 기기 회차가 기기 회차 4이면 회차 4가 설정된 제4제어기(142)의 업데이트를 제어하고, 제4제어기의 업데이트가 완료되면 기기 회차 5가 설정된 제5제어기(152)의 업데이트를 제어하고, 제5제어기의 업데이트가 완료되면 복수 개의 제어기들에 대한 업데이트 제어를 종료한다.When a start-off signal is received while the update is stopped, the processor 320 checks the device turn stored when the update was stopped, checks the controller for which the confirmed device turn is set, and controls the update again from the confirmed controller. That is, if the confirmed device cycle is 4, the processor 320 controls the update of the fourth controller 142 set to device cycle 4, and when the update of the fourth controller is completed, the processor 320 controls the update of the fifth controller 152 set to device cycle 5. The update is controlled, and when the update of the fifth controller is completed, the update control for the plurality of controllers is terminated.

프로세서(320)는 복수 개의 제어기의 기기 회차에 기초하여 복수 개의 제어기들의 업데이트를 순차적으로 전송할 때, 각각의 제어기에 전송할 소프트웨어 업데이트용 데이터에 프레임 회차를 설정하고, 설정한 프레임 회차에 기초하여 업데이트를 제어할 수 있다. 이를 도 7을 참조하여 설명한다.When sequentially transmitting updates to a plurality of controllers based on the device rotation of the plurality of controllers, the processor 320 sets a frame rotation for the software update data to be transmitted to each controller, and updates based on the set frame rotation. You can control it. This is explained with reference to FIG. 7 .

도 7에 도시된 바와 같이, 프로세서(320)는 제1제어기(112)의 업데이트 제어 시, 프레임 회차(FP) 1이 설정된 데이터 프레임 11을 이용하여 업데이트를 제어하고, 데이터 프레임 11을 이용한 업데이트가 완료되면 프레임 회차(FP) 2가 설정된 데이터 프레임 12를 이용하여 업데이트를 제어하며, 데이터 프레임 12을 이용한 업데이트가 완료되면 제2제어기(122)의 업데이트를 제어한다.As shown in FIG. 7, when controlling the update of the first controller 112, the processor 320 controls the update using data frame 11 with frame turn (FP) 1 set, and the update using data frame 11 is performed. Once completed, the update is controlled using data frame 12 with frame turn (FP) 2 set, and when the update using data frame 12 is completed, the update of the second controller 122 is controlled.

프로세서(320)는 제2제어기(122)의 업데이트 제어 시, 프레임 회차(FP) 3이 설정된 데이터 프레임 21을 이용하여 업데이트를 제어하고 데이터 프레임 21을 이용한 업데이트가 완료되면 제3제어기(132)의 업데이트를 제어한다.When controlling the update of the second controller 122, the processor 320 controls the update using the data frame 21 with frame number (FP) 3 set, and when the update using the data frame 21 is completed, the update of the third controller 132 is performed. Control updates.

이와 같은 방식으로, 프로세서(320)는 제3, 4, 5제어기(132, 142, 152)의 업데이트를 제어할 수 있다.In this way, the processor 320 can control updates of the third, fourth, and fifth controllers 132, 142, and 152.

프로세서(320)는 프레임 회차(FP) 5가 설정된 데이터 프레임 32를 이용하여 업데이트 제어 중 시동 온 신호가 수신되면 프레임 회차(FP) 5가 설정된 데이터 프레임 32를 이용한 업데이트를 중단하고 업데이트가 중단된 프레임 회차 5를 확인 및 저장한다.When a start-up signal is received during update control using the data frame 32 with a frame number (FP) 5 set, the processor 320 stops the update using the data frame 32 with a frame number (FP) 5 set and returns the frame for which the update was stopped. Check and save episode 5.

프로세서(320)는 전원이 복구되면 업데이트 중단 시에 저장된 프레임 회차를 확인하고, 즉 프레임 회차 5를 확인하고 확인한 프레임 회차 5가 설정된 데이터 프레임 32을 이용하여 업데이트를 제어한다.When power is restored, the processor 320 checks the frame number stored when the update was interrupted, that is, checks frame number 5 and controls the update using data frame 32 in which the confirmed frame number 5 is set.

이와 같은 방식으로, 프로세서(320)는 데이터 프레임 32를 이용한 업데이트가 완료되면 데이터 프레임 41을 이용하여 제4제어기(142)의 업데이트를 제어하고, 데이터 프레임 51, 52, 53을 이용하여 제5제어기(152)의 업데이트를 제어한다.In this way, when the update using the data frame 32 is completed, the processor 320 controls the update of the fourth controller 142 using the data frame 41 and the fifth controller using the data frames 51, 52, and 53. Controls the update of (152).

각각의 제어기는, 소프트웨어 업데이트용 데이터를 수신 및 저장한 상태에서, 시동 오프 신호가 수신되면 설정된 회차에 기초하여 순차적으로 업데이트를 수행하는 것도 가능하다.It is also possible for each controller, while receiving and storing data for software update, to sequentially perform updates based on a set number of rounds when an ignition off signal is received.

예를 들어, 기기 회차 1이 설정된 제1제어기는 시동 오프 신호가 수신되면 제1소프트웨어 업데이트용 데이터를 이용하여 업데이트를 수행하고, 업데이트가 완료되면 업데이트 완료 신호를 기기 회차 2가 설정된 제2제어기에 전송할 수 있다.For example, the first controller set to device turn 1 performs an update using the first software update data when a start-off signal is received, and when the update is completed, it sends an update completion signal to the second controller set to device turn 2. Can be transmitted.

제2제어기는 제2소프트웨어 업데이트용 데이터를 이용하여 업데이트를 수행하고, 업데이트가 완료되면 업데이트 완료 신호를 기기 회차 3이 설정된 제3제어기에 전송할 수 있다. 이와 같은 방식으로, 제3, 4, 5 제어기는 순차적으로 업데이트를 수행할 수 있다.The second controller performs an update using the second software update data, and when the update is completed, it can transmit an update completion signal to the third controller with device turn 3 set. In this way, the third, fourth, and fifth controllers can sequentially perform updates.

각각의 제어기는, 소프트웨어 업데이트용 데이터를 수신 및 저장한 상태에서, 시동 오프 신호가 수신되면 소프트웨어 업데이트용 데이터를 하나 또는 두 개 이상의 데이터 프레임으로 구분하고 구분한 데이터 프레임이 프레임 회차를 설정하며 설정한 프레임 회차에 기초하여 순차적으로 업데이트를 수행하는 것도 가능하다.Each controller receives and stores software update data, and when an ignition off signal is received, each controller divides the software update data into one or two or more data frames, and the divided data frames set the frame number and set the frame number. It is also possible to perform updates sequentially based on frame rotation.

예를 들어, 제1제어기는 프레임 회차 1이 설정된 데이터 프레임 11을 이용하여 업데이트를 수행하고, 데이트 프레임 11을 이용하여 업데이트가 완료되면 프레임 회차 2가 설정된 데이터 프레임 12를 이용하여 업데이트를 수행하고, 업데이트가 완료되면 업데이트 완료 신호를 제2제어기에 전송할 수 있다.For example, the first controller performs an update using data frame 11 with frame number 1 set, and when the update is completed using data frame 11, it performs the update using data frame 12 with frame number 2 set, When the update is completed, an update completion signal can be transmitted to the second controller.

이후, 제2제어기는 제1제어기로부터 업데이트 완료 신호가 수신되면 프레임 회차 3이 설정된 데이터 프레임 21을 이용하여 업데이트를 수행하고, 업데이트가 완료되면 업데이트 완료 신호를 제3제어기에 전송할 수 있다.Thereafter, when an update completion signal is received from the first controller, the second controller performs an update using data frame 21 with frame number 3 set, and when the update is completed, the update completion signal can be transmitted to the third controller.

이와 같은 방식으로, 제3제어기는 데이터 프레임 31, 32를 이용하여 업데이트를 수행할 수 있고, 제 4제어기는 데이터 프레임 41을 이용하여 업데이트를 수행할 수 있으며 제 5 제어기는 데이터 프레임 51, 52, 53을 이용하여 업데이트를 수행할 수 있다.In this way, the third controller can perform an update using data frames 31 and 32, the fourth controller can perform an update using data frames 41, and the fifth controller can perform updates using data frames 51, 52, You can perform an update using 53.

각 제어기는, 업데이트의 수행 중, 시동 온 신호가 수신되거나 배터리의 분리 신호가 수신되면 업데이트를 중단하고, 업데이트가 중단된 프레임 회차를 확인 및 저장할 수 있다.Each controller may stop the update when a start-up signal or a battery disconnection signal is received while performing the update, and check and store the frame turn at which the update was stopped.

이후, 각 제어기는 시동 오프 신호가 재수신되거나 배터리의 연결 신호(즉 리셋 신호)가 수신되면 업데이트의 중단 여부를 판단할 수 있다.Afterwards, each controller can determine whether to stop the update when the ignition off signal is received again or the battery connection signal (i.e., reset signal) is received.

이 경우, 업데이트가 중단된 제어기는, 업데이트가 중단된 프레임 회차를 확인하고, 확인한 프레임 회차를 이용하여 업데이트를 수행할 수 있다.In this case, the controller in which the update has been stopped can check the frame turn in which the update has been stopped and perform the update using the confirmed frame turn.

예를 들어, 제3제어기에서 데이터 프레임 21을 이용하여 업데이트 수행 중 시동 온 신호가 수신되면, 제3제어기는 업데이트를 중단하고, 업데이트가 중단된 프레임 회차 3을 확인 및 저장하고, 시동 오프 신호가 수신되면 업데이트가 중단된 프레임 회차 3을 확인하고 프레임 회차 3이 설정된 데이터 프레임 21을 이용하여 업데이트를 수행하며, 업데이트가 완료되면 업데이트 완료 신호를 제4제어기에 전송할 수 있다.For example, when a start-up signal is received while performing an update using data frame 21 in the third controller, the third controller stops the update, checks and stores frame turn 3 for which the update was stopped, and receives a start-up off signal. When received, frame turn 3 where the update has been stopped is checked and update is performed using data frame 21 in which frame turn 3 is set. When the update is completed, an update completion signal can be transmitted to the fourth controller.

도 1, 2 및 3에 도시된 배터리 관리 시스템의 구성 요소들의 성능에 대응하여 적어도 하나의 구성요소가 추가되거나 삭제될 수 있다. 또한, 구성 요소들의 상호 위치는 시스템의 성능 또는 구조에 대응하여 변경될 수 있다는 것은 당해 기술 분야에서 통상의 지식을 가진 자에게 용이하게 이해될 것이다.At least one component may be added or deleted in response to the performance of the components of the battery management system shown in FIGS. 1, 2, and 3. Additionally, it will be easily understood by those skilled in the art that the mutual positions of the components may be changed in response to the performance or structure of the system.

한편, 도 1, 2 및 3에 도시된 각각의 구성요소는 소프트웨어 및/또는 Field Programmable Gate Array(FPGA) 및 주문형 반도체(ASIC, Application Specific Integrated Circuit)와 같은 하드웨어 구성요소를 의미한다. Meanwhile, each component shown in FIGS. 1, 2, and 3 refers to software and/or hardware components such as Field Programmable Gate Array (FPGA) and Application Specific Integrated Circuit (ASIC).

한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 소프트웨어 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 소프트웨어 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.Meanwhile, the disclosed embodiments may be implemented in the form of a recording medium that stores instructions executable by a computer. Instructions may be stored in the form of software code and, when executed by a processor, may create software modules to perform operations of the disclosed embodiments. The recording medium may be implemented as a computer-readable recording medium.

컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. 낵 Computer-readable recording media include all types of recording media storing instructions that can be decoded by a computer. For example, there may be read only memory (ROM), random access memory (RAM), magnetic tape, magnetic disk, flash memory, optical data storage device, etc. I

이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다.본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 발명이 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.As described above, the disclosed embodiments have been described with reference to the attached drawings. Those skilled in the art will understand that the present invention may be formed in a form different from the disclosed embodiments without changing the technical idea or essential features of the present invention. It will be understood that the present invention can be practiced. The disclosed embodiments are illustrative and should not be construed as limiting.

1: 차량
110: 제1디바이스
120: 제2디바이스
130: 제3디바이스
140: 제4디바이스
150: 제5디바이스
200: 중앙 통신 장치
300: 전자 제어 장치
1: vehicle
110: first device
120: Second device
130: Third device
140: Fourth device
150: Fifth device
200: central communication device
300: electronic control device

Claims (21)

서버, 입력부 및 복수 개의 제어기들과 통신을 수행하는 통신부;
상기 서버를 통해 수신된 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 저장하는 메모리; 및
상기 입력부를 통해 차량의 시동 온 신호가 수신되면 미리 설정된 복수 개의 제어기들의 기기 회차에 기초하여 상기 저장된 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 상기 복수 개의 제어기들에 전송 중, 전원 변동에 의해 소프트웨어 업데이트용 데이터의 전송이 중단된 후 상기 전원이 복구되면, 상기 소프트웨어 업데이트용 데이터의 전송이 중단된 제어기의 기기 회차에 기초하여 상기 소프트웨어 업데이트용 데이터의 전송을 재개하도록 상기 통신부를 제어하는 프로세서를 포함하는, 업데이트를 위한 전자 제어 장치.
a communication unit that communicates with a server, an input unit, and a plurality of controllers;
a memory that stores software update data for a plurality of controllers received through the server; and
When a vehicle start-up signal is received through the input unit, the stored software update data of the plurality of controllers is transmitted to the plurality of controllers based on the preset device rotation of the plurality of controllers, and the software update data is transmitted to the plurality of controllers due to power fluctuations. When the power is restored after data transmission is interrupted, comprising a processor that controls the communication unit to resume transmission of the software update data based on the device rotation of the controller where transmission of the software update data was interrupted, Electronic control unit for updates.
제 1 항에 있어서, 상기 프로세서는,
상기 소프트웨어 업데이트용 데이터를 상기 복수 개의 제어기들에 전송 중, 상기 입력부를 통해 차량의 시동 오프 신호가 수신되면 전원 변동으로 판단하고, 상기 입력부를 통해 차량의 시동 온 신호가 재수신되면 전원 복구로 판단하는, 업데이트를 위한 전자 제어 장치.
The method of claim 1, wherein the processor:
While transmitting the software update data to the plurality of controllers, if a vehicle ignition-off signal is received through the input unit, it is determined as a power change, and if a vehicle ignition-on signal is re-received through the input unit, it is determined as power recovery. Electronic control unit for updating.
제 1 항에 있어서, 상기 프로세서는,
상기 소프트웨어 업데이트용 데이터를 상기 복수 개의 제어기들에 전송 중 상기 통신부를 통해 배터리의 리셋 신호가 수신되면 전원 변동으로 판단하는, 업데이트를 위한 전자 제어 장치.
The method of claim 1, wherein the processor:
An electronic control device for an update that determines a power change when a battery reset signal is received through the communication unit while transmitting the software update data to the plurality of controllers.
제 1 항에 있어서, 상기 프로세서는,
상기 입력부를 통해 차량의 시동 온 신호가 수신되면 상기 서버로부터 상기 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 수신하도록 상기 통신부를 제어하고 상기 수신한 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 저장하도록 상기 메모리를 제어하는, 업데이트를 위한 전자 제어 장치.
The method of claim 1, wherein the processor:
When a vehicle start-up signal is received through the input unit, the communication unit is controlled to receive software update data for the plurality of controllers from the server, and the memory is controlled to store the received software update data for the plurality of controllers. Electronic control unit for updating.
제 1 항에 있어서, 상기 프로세서는,
상기 차량의 시동 오프 신호가 수신된 오프 시점부터 카운트한 시간이 기준 시간을 초과한 후에 시동 온 신호가 수신되면 상기 복수 개의 제어기들의 소프트웨어의 버전 정보를 수집하고, 상기 오프 시점부터 상기 기준 시간 이내에 상기 시동 온 신호가 수신되면 상기 복수 개의 제어기들의 소프트웨어의 버전 정보 수집을 스킵하고,
상기 복수 개의 제어기들의 소프트웨어의 버전 정보는, 상기 복수 개의 제어기들의 소프트웨어 업데이트의 필요 여부를 판단하기 위한 정보인, 업데이트를 위한 전자 제어 장치.
The method of claim 1, wherein the processor:
When the ignition on signal is received after the time counted from the off point when the vehicle ignition off signal is received exceeds the reference time, the version information of the software of the plurality of controllers is collected, and within the reference time from the off point When a start-up signal is received, the collection of software version information of the plurality of controllers is skipped,
The version information of the software of the plurality of controllers is information for determining whether a software update of the plurality of controllers is necessary.
제 5 항에 있어서, 상기 프로세서는,
상기 복수 개의 제어기들의 교체 시간을 각각 확인하고 상기 확인한 각각의 교체 시간 중 가장 짧은 교체 시간을 기준 시간으로 설정하는, 업데이트를 위한 전자 제어 장치.
The method of claim 5, wherein the processor:
An electronic control device for updating, which checks the replacement times of each of the plurality of controllers and sets the shortest replacement time among the confirmed replacement times as a reference time.
제 5 항에 있어서, 상기 프로세서는,
상기 복수 개의 제어기들의 수동 업데이트의 소요 시간을 각각 확인하고, 상기 확인한 각각 소요 시간 중 가장 짧은 소요 시간을 기준 시간으로 설정하는, 업데이트를 위한 전자 제어 장치.
The method of claim 5, wherein the processor:
An electronic control device for updating, wherein the time required for manual updating of the plurality of controllers is confirmed, and the shortest time required among the confirmed time points is set as a reference time.
제 1 항에 있어서, 상기 프로세서는,
상기 입력부를 통해 시동 오프 신호가 수신되면 상기 복수 개의 제어기들의 소프트웨어 업데이트용 데이터에 기초하여 상기 복수 개의 제어기들의 소프트웨어 업데이트를 제어하고, 상기 소프트웨어 업데이트의 제어 중, 상기 시동 온 신호의 수신에 의해 소프트웨어 업데이트가 중단되면 업데이트가 중단된 제어기의 기기 회차를 확인하고, 상기 시동 오프 신호가 재수신되면 상기 확인한 제어기의 기기 회차에 기초하여 소프트웨어 업데이트를 재개하는, 업데이트를 위한 전자 제어 장치.
The method of claim 1, wherein the processor:
When a ignition off signal is received through the input unit, software update of the plurality of controllers is controlled based on software update data of the plurality of controllers, and during control of the software update, software is updated by receiving the ignition on signal. When the update is interrupted, the device cycle of the controller whose update was interrupted is confirmed, and when the ignition off signal is re-received, the software update is resumed based on the confirmed device cycle of the controller.
제 8 항에 있어서, 상기 프로세서는,
상기 복수 개의 제어기들의 소프트웨어 업데이트용 데이터의 각 프레임에 프레임 회차를 설정하고, 상기 설정한 프레임 회차에 기초하여 각각의 제어기들의 소프트웨어 업데이트를 제어하고, 상기 소프트웨어 업데이트의 제어 중 상기 시동 온 신호가 수신되면 소프트웨어 업데이트가 중단된 프레임 회차를 확인하고, 상기 시동 오프 신호가 재수신되면 상기 확인한 프레임 회차에 기초하여 소프트웨어 업데이트를 재개하는, 업데이트를 위한 전자 제어 장치.
The method of claim 8, wherein the processor:
A frame turn is set for each frame of software update data of the plurality of controllers, software update of each controller is controlled based on the set frame turn, and when the start-up signal is received during the control of the software update, An electronic control device for updating, which determines the frame turn in which software update was interrupted, and resumes software update based on the confirmed frame turn when the ignition off signal is re-received.
제 1 항에 있어서, 상기 프로세서는,
상기 복수 개의 제어기들 각각에 전송할 소프트웨어 업데이트용 데이터의 각 프레임에 프레임 회차를 설정하고, 상기 설정한 프레임 회차에 기초하여 각각의 제어기들에 소프트웨어 업데이트용 데이터를 전송하도록 상기 통신부를 제어하고,
상기 복수 개의 제어기들 중 어느 하나의 제어기에 소프트웨어 업데이트용 데이터의 전송 중, 전원 변동에 의해 상기 소프트웨어 업데이트용 데이터의 전송이 중단되면, 전송이 중단된 프레임 회차를 확인하고, 상기 전원이 복구되면 상기 확인한 프레임 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하도록 상기 통신부를 제어하는, 업데이트를 위한 전자 제어 장치.
The method of claim 1, wherein the processor:
Setting a frame turn for each frame of software update data to be transmitted to each of the plurality of controllers, and controlling the communication unit to transmit software update data to each controller based on the set frame turn,
While transmitting software update data to any one of the plurality of controllers, if transmission of the software update data is interrupted due to power fluctuation, the frame turn in which transmission was interrupted is checked, and when the power is restored, the frame turn is checked. An electronic control device for updating, controlling the communication unit to resume transmission of software update data based on the confirmed frame turn.
서버, 입력부 및 제어기와 통신을 수행하는 통신부;
상기 서버를 통해 수신된 제어기의 소프트웨어 업데이트용 데이터를 저장하는 메모리; 및
상기 입력부를 통해 시동 온 신호가 수신되면 미리 설정된 프레임 회차에 기초하여 상기 소프트웨어 업데이트용 데이터의 전송 중, 전원 변동에 의해 소프트웨어 업데이트용 데이터의 전송이 중단된 후 상기 전원이 복구되면, 소프트웨어 업데이트용 데이터의 전송이 중단된 프레임 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하도록 상기 통신부를 제어하는 프로세서를 포함하는, 업데이트를 위한 전자 제어 장치.
A communication unit that communicates with the server, input unit, and controller;
a memory that stores data for software update of the controller received through the server; and
When a start-up signal is received through the input unit, while transmitting the software update data based on a preset frame turn, transmission of the software update data is interrupted due to power fluctuation, and when the power is restored, the software update data is transmitted. An electronic control device for updating, comprising a processor that controls the communication unit to resume transmission of software update data based on the frame turn in which transmission of the data was interrupted.
제 11 항에 있어서, 상기 프로세서는,
상기 입력부를 통해 차량의 시동 오프 신호되거나 배터리의 리셋 신호가 수신되면 전원 변동으로 판단하고, 상기 입력부를 통해 차량의 시동 온 신호가 재수신되면 전원 복구로 판단하는, 업데이트를 위한 전자 제어 장치.
The method of claim 11, wherein the processor:
An electronic control device for updating that determines a power change when a vehicle start-off signal or a battery reset signal is received through the input unit, and determines power recovery when a vehicle start-up signal is received again through the input unit.
제 11 항에 있어서, 상기 프로세서는,
상기 입력부를 통해 차량의 시동 온 신호가 수신되면 상기 서버로부터 상기 제어기의 소프트웨어 업데이트용 데이터를 수신하도록 상기 통신부를 제어하고 상기 수신한 제어기의 소프트웨어 업데이트용 데이터를 저장하도록 상기 메모리를 제어하는, 업데이트를 위한 전자 제어 장치.
The method of claim 11, wherein the processor:
When a vehicle start-up signal is received through the input unit, the communication unit is controlled to receive software update data of the controller from the server, and the memory is controlled to store the received software update data of the controller. Electronic control unit for.
제 11 항에 있어서, 상기 프로세서는,
상기 차량의 시동 오프 신호가 수신된 오프 시점부터 카운트한 시간이 기준 시간을 초과한 후에 시동 온 신호가 수신되면 상기 제어기의 소프트웨어의 버전 정보를 수집하고, 상기 오프 시점부터 상기 기준 시간 이내에 상기 시동 온 신호가 수신되면 상기 제어기의 소프트웨어의 버전 정보 수집을 스킵하는, 업데이트를 위한 전자 제어 장치.
The method of claim 11, wherein the processor:
If the start-on signal is received after the time counted from the off point when the vehicle's start-off signal is received exceeds the reference time, the version information of the software of the controller is collected, and the ignition is turned on within the reference time from the off point. An electronic control device for updating that skips collecting version information of software of the controller when a signal is received.
제 11 항에 있어서, 상기 프로세서는,
상기 입력부를 통해 시동 오프 신호가 수신되면 상기 설정한 프레임 회차에 기초하여 상기 제어기의 소프트웨어 업데이트를 제어하고, 상기 소프트웨어 업데이트의 제어 중 상기 시동 온 신호가 수신되면 소프트웨어 업데이트가 중단된 프레임 회차를 확인하고, 상기 시동 오프 신호가 재수신되면 상기 확인한 프레임 회차에 기초하여 소프트웨어 업데이트를 재개하도록 제어하는, 업데이트를 위한 전자 제어 장치.
The method of claim 11, wherein the processor:
When a ignition off signal is received through the input unit, the software update of the controller is controlled based on the set frame turn, and when the ignition on signal is received during control of the software update, the frame turn at which the software update is stopped is checked, and , An electronic control device for updating that controls to resume software update based on the confirmed frame turn when the ignition off signal is re-received.
서버와 통신을 수행하는 통신부;
시동 온 신호 또는 시동 오프 신호를 수신하는 입력부;
적어도 하나의 기능을 수행하기 위한 소프트웨어를 각각 저장하는 복수 개의 제어기들; 및
상기 시동 온 신호가 수신되면 상기 서버를 통해 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 수신하여 저장하고, 상기 시동 오프 신호가 수신되면 상기 저장한 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 이용하여 상기 복수 개의 제어기들에 저장된 소프트웨어의 업데이트를 제어하는 전자 제어 장치를 포함하고,
상기 전자 제어 장치는, 상기 시동 오프 신호가 수신되면 미리 설정된 복수 개의 제어기들의 기기 회차에 기초하여 상기 저장된 복수 개의 제어기들의 소프트웨어 업데이트용 데이터를 상기 복수 개의 제어기들에 각각 전송하고, 상기 소프트웨어 업데이트용 데이터의 전송 중, 전원 변동 후 상기 전원이 복구되면 전송이 중단된 제어기의 기기 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하는, 차량.
A communication unit that communicates with the server;
An input unit that receives a ignition on signal or a ignition off signal;
a plurality of controllers each storing software for performing at least one function; and
When the ignition on signal is received, software update data for a plurality of controllers is received and stored through the server, and when the ignition off signal is received, the stored software update data for the plurality of controllers is used to update the plurality of controllers. comprising an electronic control device that controls updates of software stored in the
When the ignition off signal is received, the electronic control device transmits the stored software update data of the plurality of controllers to each of the plurality of controllers based on a preset device rotation of the plurality of controllers, and transmits the software update data to the plurality of controllers. During transmission, when the power is restored after a power change, transmission of data for software update is resumed based on the device rotation of the controller where transmission was interrupted.
제 16 항에 있어서, 상기 전자 제어 장치는,
상기 시동 오프 신호 또는 배터리의 리셋 신호가 수신되면 상기 전원 변동으로 판단하고, 상기 시동 오프 신호가 재수신되면 전원 복구로 판단하는 차량.
The method of claim 16, wherein the electronic control device:
A vehicle that determines the power change when the ignition-off signal or the battery reset signal is received, and determines power recovery when the ignition-off signal is received again.
제 16 항에 있어서, 상기 전자 제어 장치는,
상기 시동 오프 신호가 수신된 오프 시점부터 카운트한 시간이 기준 시간을 초과한 후에 시동 온 신호가 수신되면 상기 복수 개의 제어기들의 소프트웨어의 버전 정보를 수집하고, 상기 오프 시점부터 상기 기준 시간 이내에 상기 시동 온 신호가 수신되면 상기 복수 개의 제어기들의 소프트웨어의 버전 정보 수집을 스킵하는, 차량.
17. The method of claim 16, wherein the electronic control device:
If the ignition on signal is received after the time counted from the off point when the ignition off signal is received exceeds the reference time, version information of the software of the plurality of controllers is collected, and the ignition is turned on within the reference time from the off point. A vehicle that skips collecting version information of software of the plurality of controllers when a signal is received.
제 16 항에 있어서, 상기 전자 제어 장치는,
상기 복수 개의 제어기들 각각에 전송할 소프트웨어 업데이트용 데이터의 각 프레임에 프레임 회차를 설정하고, 상기 설정한 프레임 회차에 기초하여 각각의 제어기들에 소프트웨어 업데이트용 데이터를 전송하고, 상기 복수 개의 제어기들 중 어느 하나의 제어기에 소프트웨어 업데이트용 데이터의 전송 중, 상기 전원 변동에 의해 상기 소프트웨어 업데이트용 데이터의 전송이 중단되면, 전송이 중단된 프레임 회차를 확인하고, 상기 전원이 복구되면 상기 확인한 프레임 회차에 기초하여 소프트웨어 업데이트용 데이터의 전송을 재개하는, 차량.
The method of claim 16, wherein the electronic control device:
A frame turn is set for each frame of software update data to be transmitted to each of the plurality of controllers, software update data is transmitted to each controller based on the set frame turn, and one of the plurality of controllers During transmission of software update data to one controller, if the transmission of the software update data is interrupted due to the power change, the frame turn in which transmission was interrupted is checked, and when the power is restored, the frame turn is determined based on the confirmed frame turn. Vehicle resuming transmission of data for software updates.
제 16 항에 있어서, 상기 전자 제어 장치는,
상기 복수 개의 제어기들의 소프트웨어 업데이트의 제어 중, 상기 시동 온 신호의 수신에 의해 소프트웨어 업데이트가 중단되면 업데이트가 중단된 제어기의 기기 회차를 확인하고, 상기 시동 오프 신호가 재수신되면 상기 확인한 제어기의 기기 회차에 기초하여 소프트웨어 업데이트를 재개하도록 제어하는 차량.
The method of claim 16, wherein the electronic control device:
During control of the software update of the plurality of controllers, if the software update is interrupted by reception of the ignition on signal, the device rotation of the controller for which the update was interrupted is confirmed, and if the ignition off signal is received again, the device rotation of the confirmed controller Controlling the vehicle to resume software updates based on
제 16 항에 있어서, 상기 전자 제어 장치는,
상기 복수 개의 제어기들의 소프트웨어 업데이트용 데이터의 각 프레임에 프레임 회차를 설정하고, 상기 복수 개의 제어기들의 소프트웨어 업데이트의 제어 중, 상기 시동 온 신호가 수신되면 소프트웨어 업데이트가 중단된 프레임 회차를 확인하고, 상기 시동 오프 신호가 재수신되면 상기 확인한 프레임 회차에 기초하여 소프트웨어 업데이트를 재개하도록 제어하는 차량.




The method of claim 16, wherein the electronic control device:
A frame turn is set for each frame of software update data of the plurality of controllers, and when the start-up signal is received while controlling the software update of the plurality of controllers, the frame turn at which the software update is stopped is confirmed, and the start-up is performed. A vehicle that controls to resume software update based on the confirmed frame turn when the off signal is re-received.




KR1020220115937A 2022-09-14 2022-09-14 Electronic control unit for update and Vehicle having the same KR20240037099A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220115937A KR20240037099A (en) 2022-09-14 2022-09-14 Electronic control unit for update and Vehicle having the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220115937A KR20240037099A (en) 2022-09-14 2022-09-14 Electronic control unit for update and Vehicle having the same

Publications (1)

Publication Number Publication Date
KR20240037099A true KR20240037099A (en) 2024-03-21

Family

ID=90472397

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220115937A KR20240037099A (en) 2022-09-14 2022-09-14 Electronic control unit for update and Vehicle having the same

Country Status (1)

Country Link
KR (1) KR20240037099A (en)

Similar Documents

Publication Publication Date Title
US10593211B2 (en) Apparatus and method for controlling platooning of vehicles
US11054821B2 (en) Remote-operation apparatus and remote-operation method
US20200043254A1 (en) Data storage device of vehicle
US10185329B2 (en) Methods and systems for vehicle-to-vehicle communication
US9573601B2 (en) Automatic engagement of a driver assistance system
CN107945555B (en) Dynamic update of route eligibility for semi-autonomous driving
US10504303B2 (en) Server, vehicle communicating with the server, and control method of the server
US10093320B2 (en) Drive support device for controlling drive support functions and evaluating driver performance
CN111152797B (en) User-defined vehicle notification
KR102575640B1 (en) Automatic Driving control apparatus, vehicle having the same and method for controlling the same
US20170213461A1 (en) System and method for vehicle group communication via dedicated short range communication
CN111688710B (en) Configuration of in-vehicle entertainment system based on driver attention
US20200235950A1 (en) Communication device, vehicle having the same and method for controlling the same
KR20210120287A (en) Diagnostic system, and vehicle
CN112927524A (en) Intersection signal prediction system and method
CN106671899B (en) Communication module and vehicle comprising a communication module
KR101339527B1 (en) Wireless updating apparatus and method for providing additional car information
KR20240037099A (en) Electronic control unit for update and Vehicle having the same
US10833817B2 (en) Vehicle and method for controlling the same
KR102382998B1 (en) Vehicle diagnosis apparatus, vehicle diagnosis system having the same, and vehicle diagnosis method
JP2008035201A (en) Camera system
US11150641B2 (en) System and method to initiate remote control of an autonomous vehicle
US11599281B2 (en) Data processing apparatus and vehicle having the same
KR20200033435A (en) Control apparatus for vechicle, vehicle, and controlling method for vehicle
KR20200032884A (en) Vehicle and controlling method for the same