KR20220015785A - Communication Device and Vehicle having the same - Google Patents

Communication Device and Vehicle having the same Download PDF

Info

Publication number
KR20220015785A
KR20220015785A KR1020200096280A KR20200096280A KR20220015785A KR 20220015785 A KR20220015785 A KR 20220015785A KR 1020200096280 A KR1020200096280 A KR 1020200096280A KR 20200096280 A KR20200096280 A KR 20200096280A KR 20220015785 A KR20220015785 A KR 20220015785A
Authority
KR
South Korea
Prior art keywords
message
data
controller
ethernet
core
Prior art date
Application number
KR1020200096280A
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 KR1020200096280A priority Critical patent/KR20220015785A/en
Publication of KR20220015785A publication Critical patent/KR20220015785A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40143Bus networks involving priority mechanisms
    • H04L12/4015Bus networks involving priority mechanisms by scheduling the transmission of messages at the communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Abstract

The present invention relates to a communication device for preventing a routing delay and a vehicle thereof. The vehicle includes: a plurality of Ethernet controllers controlling the operation of each of a plurality of first electronic devices and performing communication by using a scalable service-oriented middleware over Ethernet/Internet protocol (SOME/IP); an Ethernet switch generating a communication channel between the plurality of Ethernet controllers and controlling communication between the plurality of Ethernet controllers based on the generated channel; a plurality of CAN controllers controlling the operation of each of a plurality of second electronic devices and performing CAN communication; and a gateway controlling the CAN communication with the plurality of CAN controllers and controlling the communication with the Ethernet controllers, and, when receiving data from the Ethernet switch, converting the data into a CAN message and transmitting the converted CAN message to the CAN controllers, and, when determining that a routing delay is occurring, determining whether the CAN message is a periodically transmitted CAN message, and, then, when determining the CAN message as the periodically transmitted CAN message, changing a transmission cycle for the CAN message and transmitting the CAN message to the CAN controllers based on the changed transmission cycle.

Description

통신 장치, 그를 가지는 차량 {Communication Device and Vehicle having the same} Communication Device and Vehicle having the same}

본 발명은 서로 다른 프로토콜을 가진 네트워크 간의 메시지를 송수신하는 통신 장치 및 그를 가지는 차량에 관한 것이다.The present invention relates to a communication device for transmitting and receiving messages between networks having different protocols, and a vehicle having the same.

차량은 기본적인 주행 기능 외에도 오디오 기능, 비디오 기능, 내비게이션 기능, 공조 기능, 시트 열선 기능, 외부 단말기와의 통신 기능 등의 사용자 편의를 위한 부가적인 기능을 더 수행한다.In addition to the basic driving function, the vehicle performs additional functions for user convenience such as an audio function, a video function, a navigation function, an air conditioning function, a seat heating function, and a communication function with an external terminal.

차량은 주행 기능 및 부가적인 기능을 제어 및 수행하기 위한 전자 제어 장치 및 멀티미디어 장치들을 포함할 수 있다. 이러한 전자제어장치 및 멀티미디어 장치들은 서로 동일 또는 서로 다른 프로토콜을 이용하여 서로 간의 메시지 및 데이터를 송수신하며 각자에게 주어진 기능을 수행한다.The vehicle may include electronic control devices and multimedia devices for controlling and performing driving functions and additional functions. These electronic control devices and multimedia devices transmit and receive messages and data between each other using the same or different protocols, and perform functions given to each other.

차량은 서로 다른 프로토콜을 이용하여 통신을 수행하는 전자 장치들 간의 메시지 및 데이터의 송수신을 위한 통신 장치, 즉 게이트웨이를 더 포함한다. The vehicle further includes a communication device, ie, a gateway, for transmitting and receiving messages and data between electronic devices that communicate using different protocols.

통신 장치는 서로 다른 프로토콜을 이용하여 서로 다른 전자 장치들 사이에서 통신을 수행할 때 라우팅 기능을 수행하는데, 이 때 서로 다른 두 프로토콜은 서로 다른 대역폭(Bandwidth)과 통신 방식으로 이로 인해 두 전자 장치 간의 통신 시 라우팅 지연이 발생하는 문제가 있었다. 특히 상대적으로 큰 대역폭 차이를 가지는 프로토콜 사이에서(ex. 이더넷-CAN) 통신하는 전자 장치 간에 데이터를 전송할 때, 라우팅 지연이 많이 발생하는 문제가 있었다.A communication device performs a routing function when performing communication between different electronic devices using different protocols. At this time, the two different protocols have different bandwidths and communication methods, so that There was a problem in that routing delays occurred during communication. In particular, when data is transmitted between electronic devices communicating between protocols having a relatively large bandwidth difference (eg, Ethernet-CAN), there is a problem in that a lot of routing delay occurs.

일 측면은 서로 다른 프로토콜을 이용하여 통신을 수행하는 전자 장치들 사이에서 통신을 제어할 때, 라우팅 지연 시간을 줄이기 위한 통신 장치 및 그를 가지는 차량을 제공한다.One aspect provides a communication device for reducing a routing delay time when controlling communication between electronic devices performing communication using different protocols, and a vehicle having the same.

일 측면에 따른 통신 장치는, 적어도 하나의 부하의 동작을 제어하고 적어도 하나의 부하와 통신을 수행하는 이더넷 제어기; 캔 통신을 수행하고, 다른 부하를 제어하는 캔 제어기; 이더넷 제어기와의 사이에서 데이터를 송수신하는 이더넷 스위치; 캔 제어기와의 사이에서 캔 메시지를 송수신하고, 이더넷 제어기의 데이터가 수신되면 수신된 데이터를 캔 메시지로 변환하고 변환된 캔 메시지를 캔 제어기에 전송하고, 캔 메시지가 주기적으로 전송되는 캔 메시지이면, 주기마다 캔 메시지의 메시지 값을 확인하고 이전 주기와 현재 주기의 메시지 값이 상이하면 캔 메시지의 메시지 값을 현재 주기의 캔 메시지의 메시지 값으로 변경하고, 캔 메시지 값이 변경된 캔 메시지를 캔 제어기에 전송하는 게이트웨이를 포함한다.A communication device according to an aspect includes: an Ethernet controller for controlling the operation of at least one load and performing communication with the at least one load; a can controller for performing can communication and controlling other loads; an Ethernet switch for transmitting and receiving data to and from the Ethernet controller; A CAN message is transmitted and received with the CAN controller, and when data from the Ethernet controller is received, the received data is converted into a CAN message and the converted CAN message is transmitted to the CAN controller. If the CAN message is a CAN message that is transmitted periodically, The message value of the CAN message is checked every cycle. If the message value of the previous cycle and the current cycle is different, the message value of the CAN message is changed to the message value of the CAN message of the current cycle, and the CAN message with the changed CAN message value is sent to the CAN controller. It includes a gateway that transmits.

일 측면에 따른 통신 장치의 이더넷 제어기는, 이더넷 스위치와 스케일러블 서비스 지향적 미들웨어 오버 이더넷/인터넷 프로토콜(SOME/IP)을 이용하여 통신을 수행한다.An Ethernet controller of a communication device according to an aspect performs communication using an Ethernet switch and a scalable service-oriented middleware over Ethernet/Internet protocol (SOME/IP).

일 측면에 따른 통신 장치의 이더넷 제어기는, 이더넷 스위치에 SOME/IP용 데이터를 전송하고, SOME/IP용 데이터는, 캔 메시지를 포함한다.An Ethernet controller of a communication device according to an aspect transmits data for SOME/IP to an Ethernet switch, and the data for SOME/IP includes a CAN message.

일 측면에 따른 통신 장치의 게이트웨이는, 이더넷 스위치와 연결되는 제1코어와, 캔 제어기와 연결되는 제2코어를 포함하고, 제1코어는, SOME/IP용 데이터를 유저 데이터그램 프로토콜(UDP)용 데이터로 변환하고 변환한 UDP용 데이터를 제2코어에 전송하고, 제2코어로부터 UDP용 데이터가 수신되면 수신된 UDP용 데이터를 SOME/IP용 데이터로 변환하고 변환한 SOME/IP용 데이터를 이더넷 제어기에 전송한다. A gateway of a communication device according to an aspect includes a first core connected to an Ethernet switch and a second core connected to a CAN controller, wherein the first core transmits data for SOME/IP to a user datagram protocol (UDP) Transmits the converted UDP data to the second core, and when UDP data is received from the second core, the received UDP data is converted into SOME/IP data, and the converted SOME/IP data transmitted to the Ethernet controller.

일 측면에 따른 통신 장치의 제2코어는, UDP용 데이터를 복수 개의 캔 메시지로 분할하고 복수 개의 캔 메시지 중에 적어도 하나를 캔 제어기에 전송하고, 캔 제어기로부터 캔 메시지가 수신되면 수신된 캔 메시지를 UDP용 데이터로 변환하고 변환한 UDP용 데이터를 제1코어에 전송한다.The second core of the communication device according to an aspect divides UDP data into a plurality of CAN messages, transmits at least one of the plurality of CAN messages to the CAN controller, and when the CAN message is received from the CAN controller, transmits the received CAN message. It converts data for UDP and transmits the converted data for UDP to the first core.

일 측면에 따른 통신 장치의 게이트웨이는, 주기적으로 수신되는 캔 메시지에 대한 메시지 값들의 변화를 주기마다 확인하고, 주기마다 확인된 캔 메시지의 메시지 값들이 일정 횟수 동안 유지되었다고 판단되면 캔 메시지의 주기에 대한 시간을 현재 시간보다 긴 시간으로 변경한다.The gateway of the communication device according to one aspect checks a change in message values for a periodically received CAN message at each cycle, and when it is determined that the message values of the CAN message checked for each cycle are maintained for a predetermined number of times, the CAN message cycle Change the time to a time longer than the current time.

일 측면에 따른 통신 장치의 게이트웨이는, 주기적으로 수신되는 캔 메시지에 대한 메시지 값들의 변화를 주기마다 확인하고, 주기마다 확인된 캔 메시지의 메시지 값들이 일정 횟수 동안 유지되었다고 판단되면 캔 메시지를 이벤트 메시지로 변경하고 변경된 이벤트 메시지를 캔 제어기에 전송한다.The gateway of the communication device according to an aspect checks a change in message values for a periodically received CAN message at each cycle, and when it is determined that the message values of the CAN message checked for each cycle are maintained for a predetermined number of times, displays the CAN message as an event message and send the changed event message to the CAN controller.

일 측면에 따른 통신 장치의 게이트웨이는, 주기적으로 수신되는 캔 메시지에 대한 이벤트 메시지로의 변경을 요청하는 메시지 타입 변경 요청 신호를 캔 제어기에 전송한다.A gateway of a communication device according to an aspect transmits a message type change request signal for requesting a change of a periodically received CAN message to an event message to the CAN controller.

일 측면에 따른 통신 장치의 게이트웨이는, 주기마다 캔 메시지의 메시지 값을 확인하고, 이전 주기와 현재 주기의 메시지 값의 동일 여부를 판단하여 기준 횟수의 변화값을 획득하고, 획득한 변화값이 제1설정 횟수이면 캔 메시지의 전송 주기를 현재 주기보다 시간이 더 긴 주기로 변경하고, 획득한 변화값이 제2설정 횟수이면 캔 메시지의 전송 주기를 현재 주기보다 시간이 더 짧은 주기로 변경한다.The gateway of the communication device according to one aspect obtains a change value of the reference number by checking the message value of the CAN message for each period, determining whether the message value of the previous period and the current period is the same, and the obtained change value is the second If the set number is 1, the transmission period of the CAN message is changed to a period longer than the current period, and if the obtained change value is the second set number, the transmission period of the CAN message is changed to a period shorter than the current period.

일 측면에 따른 통신 장치의 게이트웨이는, 이전 주기와 현재 주기의 메시지 값이 동일하면 기준 횟수에서 제1일정값을 증가시켜 기준 횟수의 변화값을 획득하고, 이전 주기와 현재 주기의 메시지 값이 상이하면 기준 횟수에서 제2일정값을 감소시켜 기준 횟수의 변화값을 획득한다.The gateway of the communication device according to one aspect obtains a change value of the reference number by increasing the first constant value from the reference number when the message value of the previous period and the current period is the same, and the message value of the previous period and the current period is different If the second constant value is decreased from the reference number of times, a change value of the reference number is obtained.

게이트웨이는, 이전 주기와 현재 주기의 캔 메시지의 메시지 값이 동일 일 측면에 따른 통신 장치의 하면 캔 메시지의 메시지 값을 유지시킨다.The gateway maintains the message value of the CAN message on the lower surface of the communication device according to the aspect in which the message value of the CAN message of the previous period and the current period is the same.

일 측면에 따른 통신 장치의 게이트웨이는, 이전 주기와 현재 주기의 메시지 값이 동일하면 현재 주기의 캔 메시지 값의 전송을 보류한다.The gateway of the communication device according to one aspect suspends transmission of the CAN message value of the current period when the message values of the previous period and the current period are the same.

다른 측면에 따른 통신 장치는, 적어도 하나의 부하의 동작을 제어하고 적어도 하나의 부하와 통신을 수행하는 이더넷 제어기; 캔 통신을 수행하고, 다른 부하를 제어하는 캔 제어기; 이더넷 제어기와의 사이에서 데이터를 송수신하는 이더넷 스위치; 캔 제어기와의 사이에서 캔 메시지를 송수신하고, 이더넷 스위치로부터 데이터가 수신되면 수신된 데이터를 캔 메시지로 변환하고 변환한 캔 메시지가 미리 설정된 캔 메시지이면 미리 정해진 캔 메시지가 미리 설정된 횟수만큼 수신되었을 때 미리 설정된 횟수만큼 수신한 캔 메시지들 중 어느 하나를 캔 제어기에 전송하는 게이트웨이를 포함한다.A communication device according to another aspect includes: an Ethernet controller for controlling the operation of at least one load and performing communication with the at least one load; a can controller for performing can communication and controlling other loads; an Ethernet switch for transmitting and receiving data to and from the Ethernet controller; CAN message is transmitted and received with the CAN controller, and when data is received from the Ethernet switch, the received data is converted into CAN message. and a gateway for transmitting any one of the CAN messages received a preset number of times to the CAN controller.

다른 측면에 따른 통신 장치의 이더넷 제어기는, 이더넷 스위치와 스케일러블 서비스 지향적 미들웨어 오버 이더넷/인터넷 프로토콜(SOME/IP)을 이용하여 통신을 수행하고, 이더넷 스위치에 SOME/IP용 데이터를 전송하고, SOME/IP용 데이터는, 캔 메시지를 포함한다.An Ethernet controller of a communication device according to another aspect performs communication using an Ethernet switch and a scalable service-oriented middleware over Ethernet/Internet protocol (SOME/IP), transmits data for SOME/IP to the Ethernet switch, and SOME The data for /IP includes a CAN message.

다른 측면에 따른 통신 장치의 게이트웨이는, 이더넷 스위치와 연결되는 제1코어와, 캔 제어기와 연결되는 제2코어를 포함하고, 제1코어는, SOME/IP용 데이터를 유저 데이터그램 프로토콜(UDP)용 데이터로 변환하고 변환한 UDP용 데이터를 제2코어에 전송하고, 제2코어로부터 UDP용 데이터가 수신되면 수신된 UDP용 데이터를 SOME/IP용 데이터로 변환하고 변환한 SOME/IP용 데이터를 이더넷 제어기에 전송한다.A gateway of a communication device according to another aspect includes a first core connected to an Ethernet switch and a second core connected to a CAN controller, wherein the first core transmits data for SOME/IP to a user datagram protocol (UDP) Transmits the converted UDP data to the second core, and when UDP data is received from the second core, the received UDP data is converted into SOME/IP data, and the converted SOME/IP data transmitted to the Ethernet controller.

다른 측면에 따른 통신 장치의 제2코어는, UDP용 데이터를 복수 개의 캔 메시지로 분할하고 복수 개의 캔 메시지 중에 적어도 하나를 캔 제어기에 전송하고, 캔 제어기로부터 캔 메시지가 수신되면 수신된 캔 메시지를 UDP용 데이터로 변환하고 변환한 UDP용 데이터를 제1코어에 전송한다.The second core of the communication device according to another aspect divides data for UDP into a plurality of CAN messages, transmits at least one of the plurality of CAN messages to the CAN controller, and receives the CAN message from the CAN controller to transmit the received CAN message. It converts data for UDP and transmits the converted data for UDP to the first core.

또 다른 측면에 따른 차량은, 복수 개의 제1 전자 장치의 동작을 각각 제어하고 스케일러블 서비스 지향적 미들웨어 오버 이더넷/인터넷 프로토콜(SOME/IP)을 이용하여 통신을 수행하는 복수 개의 이더넷 제어기; 복수 개의 이더넷 제어기 간의 통신 경로를 생성하고 생성된 경로에 기초하여 복수 개의 이더넷 제어기 사이에서 통신을 제어하는 이더넷 스위치; 복수 개의 제2 전자 장치의 동작을 각각 제어하고 캔 통신을 수행하는 복수 개의 캔 제어기; 및 복수 개의 캔 제어기와 캔 통신을 제어하고 이더넷 스위치와 통신을 제어하며, 이더넷 스위치로부터 데이터가 수신되면 수신된 데이터를 캔 메시지로 변환하고 변환한 캔 메시지를 캔 제어기에 전송하고, 라우팅 지연이 발생한다고 판단되면 캔 메시지가 주기적으로 전송되는 캔 메시지인지 판단하고, 캔 메시지가 주기적으로 전송되는 캔 메시지라고 판단되면 캔 메시지의 전송 주기를 변경하고 변경된 전송 주기에 기초하여 캔 메시지를 캔 제어기에 전송하는 게이트웨이를 포함한다.According to another aspect, a vehicle includes: a plurality of Ethernet controllers each controlling operations of a plurality of first electronic devices and performing communication using a scalable service-oriented middleware over Ethernet/Internet protocol (SOME/IP); an Ethernet switch for creating a communication path between a plurality of Ethernet controllers and controlling communication between the plurality of Ethernet controllers based on the generated path; a plurality of CAN controllers each controlling operations of a plurality of second electronic devices and performing CAN communication; and control CAN communication with a plurality of CAN controllers and control communication with Ethernet switch If it is determined that the CAN message is a periodically transmitted CAN message, it is determined that the CAN message is a periodically transmitted CAN message, the transmission period of the CAN message is changed and the CAN message is transmitted to the CAN controller based on the changed transmission period. Includes gateway.

차량의 이더넷 제어기는, 이더넷 스위치에 SOME/IP용 데이터를 전송하고, SOME/IP용 데이터는, 캔 메시지를 포함한다.The Ethernet controller of the vehicle transmits data for SOME/IP to the Ethernet switch, and the data for SOME/IP includes a CAN message.

차량의 게이트웨이의 제1코어는, SOME/IP용 데이터를 유저 데이터그램 프로토콜(UDP)용 데이터로 변환하고 변환한 UDP용 데이터를 게이트웨이의 제2코어에 전송하고, 제2코어로부터 UDP용 데이터가 수신되면 수신된 UDP용 데이터를 SOME/IP용 데이터로 변환하고 변환한 SOME/IP용 데이터를 이더넷 제어기에 전송한다.The first core of the gateway of the vehicle converts data for SOME/IP into data for user datagram protocol (UDP) and transmits the converted data for UDP to the second core of the gateway, and the data for UDP is transmitted from the second core. When received, the received data for UDP is converted into data for SOME/IP, and the converted data for SOME/IP is transmitted to the Ethernet controller.

차량의 게이트웨이의 제2코어는, UDP용 데이터를 복수 개의 캔 메시지로 분할하고 복수 개의 캔 메시지 중에 적어도 하나를 캔 제어기에 전송하고, 캔 제어기로부터 캔 메시지가 수신되면 수신된 캔 메시지를 UDP용 데이터로 변환하고 변환한 UDP용 데이터를 제1코어에 전송한다.The second core of the vehicle's gateway divides UDP data into a plurality of CAN messages, transmits at least one of the plurality of CAN messages to the CAN controller, and when a CAN message is received from the CAN controller, converts the received CAN message into UDP data and transmits the converted UDP data to the first core.

캔 메시지가 주기적으로 전송되는 캔 메시지는, 미리 정해진 캔 메시지를 포함하고, 게이트웨이는 캔 메시지가 미리 정해진 캔 메시지이면 미리 정해진 캔 메시지의 수신 횟수를 확인하고, 확인한 수신 횟수가 미리 설정된 횟수이면 미리 설정된 횟수만큼 수신한 캔 메시지들 중 어느 하나를 캔 제어기에 전송한다.The CAN message to which the CAN message is periodically transmitted includes a predetermined CAN message. If the CAN message is a predetermined CAN message, the gateway checks the reception number of the predetermined CAN message; Any one of the CAN messages received as many times as the number of times is transmitted to the CAN controller.

캔 메시지가 주기적으로 전송되는 캔 메시지는, 미리 정해진 캔 메시지를 포함하고, 게이트웨이는 미리 정해진 캔 메시지를 이벤트 메시지로 변환하고 변환한 이벤트 메시지를 캔 제어기에 전송한다.The CAN message to which the CAN message is periodically transmitted includes a predetermined CAN message, and the gateway converts the predetermined CAN message into an event message and transmits the converted event message to the CAN controller.

차량의 게이트웨이는, 주기마다 캔 메시지의 메시지 값을 확인하고, 이전 주기와 현재 주기의 메시지 값의 동일 여부를 판단하여 기준 횟수의 변화값을 획득하고, 획득한 변화값이 제1설정 횟수이면 캔 메시지의 전송 주기를 현재 주기보다 시간이 더 긴 주기로 변경하고, 획득한 변화값이 제2설정 횟수이면 캔 메시지의 전송 주기를 현재 주기보다 시간이 더 짧은 주기로 변경한다.The gateway of the vehicle checks the message value of the CAN message for each cycle, determines whether the message value of the previous cycle and the current cycle is the same to obtain a change value of the reference number of times, and if the obtained change value is the first set number of times, the CAN message The transmission period of the message is changed to a period longer than the current period, and if the obtained change value is the second set number, the transmission period of the CAN message is changed to a period shorter than the current period.

본 발명은 서로 다른 프로토콜을 이용하여 통신하는 전자 장치 간에 라우팅 지연을 줄일 수 있다. 이로 인해 본 발명은 서로 다른 전자 장치 간에 송수신하는 메시지 또는 데이터의 송수신 지연을 방지할 수 있다.The present invention can reduce routing delay between electronic devices that communicate using different protocols. For this reason, the present invention can prevent delay in transmission and reception of messages or data transmitted and received between different electronic devices.

본 발명은 서로 다른 프로토콜을 이용하여 통신하는 전자 장치 간의 호환성을 유지할 수 있다.The present invention can maintain compatibility between electronic devices that communicate using different protocols.

본 발명은 라우팅 지연으로 인한 메시지 또는 데이터의 송수신 지연으로 인해 해당 전자 장치의 제어 타이밍을 놓치는 것을 방지할 수 있다. 이로 인해 발생할 수 있는 차량의 사고를 방지할 수 있다.According to the present invention, it is possible to prevent the control timing of the corresponding electronic device from being missed due to delay of transmission/reception of a message or data due to a routing delay. It is possible to prevent a vehicle accident that may occur as a result.

또한 본 발명은 통신 장치 및 제어기의 하드웨어의 변경없이 소프트웨어의 변경 만으로 라우팅 지연을 감소시킬 수 있기 때문에 제조 단가의 상승을 방지할 수 있다.In addition, the present invention can prevent an increase in manufacturing cost because routing delay can be reduced only by changing the software without changing the hardware of the communication device and the controller.

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

도 1은 실시 예에 따른 통신 장치가 마련된 차량의 제어 구성도이다.
도 2는 실시 예에 따른 통신 장치의 일 예시도이다.
도 3은 실시 예에 따른 통신 장치 내 캔 통신부의 연결 예시도이다.
도 4는 실시 예에 따른 통신 장치의 상세 구성도이다.
도 5는 실시 예에 따른 통신 장치의 다른 예시도이다.
도 6은 실시 예에 따른 통신 장치의 동작 예시도이다.
도 7은 실시 예에 따른 통신 장치의 메시지 주기 그래프이다.
1 is a control configuration diagram of a vehicle provided with a communication device according to an embodiment.
2 is an exemplary diagram of a communication device according to an embodiment.
3 is a diagram illustrating a connection of a CAN communication unit in a communication device according to an embodiment.
4 is a detailed configuration diagram of a communication device according to an embodiment.
5 is another exemplary diagram of a communication device according to an embodiment.
6 is a diagram illustrating an operation of a communication device according to an embodiment.
7 is a graph of a message period of a communication device according to an embodiment.

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

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

또한 어떤 부분이 어떤 구성요소를"포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.In addition, when a part "includes" a certain component, this means that other components may be further included, rather than excluding other components, unless otherwise stated.

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

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

단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.The singular expression includes the plural expression unless the context clearly dictates otherwise.

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

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

도 1은 실시 예에 따른 통신 장치가 마련된 차량의 제어 구성도이다. 1 is a control configuration diagram of a vehicle provided with a communication device according to an embodiment.

차량(1)은 내장과 외장을 갖는 차체(Body)와, 차체를 제외한 나머지 부분으로 주행에 필요한 기계 장치가 설치되는 차대(Chassis)를 포함한다.The vehicle 1 includes a body having an interior and exterior, and a chassis in which mechanical devices necessary for driving are installed as the remaining parts except for the body.

차체의 외장은 프론트 패널, 본네트, 루프 패널, 리어 패널, 트렁크, 전후좌우의 도어, 윈도우 글래스를 포함하고, 운전자에게 차량 후방의 시야를 제공하는 사이드 미러 등을 더 포함한다.The exterior of the vehicle body includes a front panel, a bonnet, a roof panel, a rear panel, a trunk, front and rear left and right doors, and window glass, and further includes a side mirror that provides a driver with a view of the rear of the vehicle.

차체의 내장은 탑승자가 앉는 시트와, 대시 보드와, 대시 보드 상에 배치되고 주행 정보 및 상태 정보 등을 표시하는 계기판(즉 클러스터)과, 시트에 열을 공급하는 열선과, 시트 내에서 공기를 순환시키는 통풍 장치를 포함한다.The interior of the vehicle body consists of a seat on which the occupant sits, a dashboard, an instrument panel (i.e. cluster) disposed on the dashboard and displaying driving information and status information, a heating wire that supplies heat to the seat, and air in the seat Including ventilation system for circulation.

차체의 내장은 센터 페시아에 마련된 헤드 유닛을 더 포함한다.The interior of the vehicle body further includes a head unit provided on the center fascia.

헤드 유닛은 오디오 기능, 라디오 기능, 공기 조화 기능 및 시트의 열선 기능, 통풍 기능, 내비게이션 기능, 디엠비 기능, 전화 기능을 수행하는 각종 부하와 연결되어 있고, 각 기능을 수행하기 위한 동작 명령을 입력받고 입력된 동작 명령에 기초하여 각 기능의 동작을 제어하거나 해당 부하로 동작 명령을 전송한다.The head unit is connected to various loads that perform audio functions, radio functions, air conditioning functions and seat heating functions, ventilation functions, navigation functions, DMB functions, and telephone functions, and receives an operation command to perform each function. Based on the input operation command, the operation of each function is controlled or the operation command is transmitted to the corresponding load.

차량(1)은 차량에서 수행 가능한 복수의 기능 중 적어도 하나의 기능의 동작 명령을 입력받기 위한 입력부(111)를 더 포함할 수 있고, 수행 중인 기능에 대한 정보 및 사용자에 의해 입력된 정보를 표시하고, 통신 에러 정보를 표시하는 표시부(112)를 더 포함할 수 있다.The vehicle 1 may further include an input unit 111 for receiving an operation command of at least one function among a plurality of functions that can be performed in the vehicle, and displays information about the function being performed and information input by the user. and may further include a display unit 112 for displaying communication error information.

입력부(111)는 헤드 유닛 또는 센터페시아에 마련될 수 있고, 각종 기능의 동작 온 오프 버튼, 각종 기능의 설정값을 변경하기 위한 버튼 등과 같은 적어도 하나의 물리적인 버튼을 포함한다. The input unit 111 may be provided on the head unit or the center fascia, and includes at least one physical button such as an operation on/off button for various functions and a button for changing setting values of various functions.

입력부(111)는 표시부에 표시된 커서의 이동 명령 및 선택 명령 등을 입력하기 위한 조그 다이얼(미도시) 또는 터치 패드로 마련될 수 있다.The input unit 111 may be provided as a jog dial (not shown) or a touch pad for inputting a cursor movement command and a selection command displayed on the display unit.

입력부(111)는 사용자 입력을 수신하는 것으로, 사용자 입력에 대응하는 입력 정보나, 메시지의 송수신 명령을 수신할 수 있다.The input unit 111 receives a user input, and may receive input information corresponding to the user input or a command for transmitting and receiving a message.

표시부(112)는 전자 장치의 동작 정보 및 전자 장치들 간의 메시지 또는 데이터의 송수신 정보를 표시하고, 전자 장치나 통신의 에러 정보를 표시한다. The display unit 112 displays operation information of the electronic device and information on transmission/reception of messages or data between the electronic devices, and displays error information of the electronic device or communication.

표시부(112)는 LCD, OLED, PDP 등과 같은 평판 표시 장치로 마련될 수 있다.The display unit 112 may be provided as a flat panel display device such as LCD, OLED, or PDP.

차량은 내장에 마련된 차량용 단말기(AVN)를 더 포함할 수 있다.The vehicle may further include a vehicle terminal (AVN) provided in the interior.

이러한 차량용 단말기는 입력부와 표시부를 포함하고, 내비게이션 기능, 디엠비 기능, 오디오 기능, 비디오 기능, 전화 기능, 라디오 기능 중 적어도 하나의 기능이 선택되면 선택된 적어도 하나의 기능을 수행하고 수행 중인 기능의 동작 정보 등을 표시할 수 있다. 차량용 단말기는 멀티미디어 장치일 수 있다.Such a vehicle terminal includes an input unit and a display unit, and when at least one function among a navigation function, a DMB function, an audio function, a video function, a telephone function, and a radio function is selected, the at least one selected function is performed and operation information of the function being performed etc. can be displayed. The vehicle terminal may be a multimedia device.

차량용 단말기의 입력부와 표시부는 터치스크린으로 마련될 수 있다. The input unit and the display unit of the vehicle terminal may be provided as a touch screen.

차량(1)은 시트의 위치 조절 장치, 시트의 열선 및 통풍 장치, 윈도우 글래스의 개폐 장치, 도어의 개폐 및 잠금 장치, 사이드 미러의 각도 조절 장치, 클러스터, 헤드 유닛, 표시부 및 차량용 단말기 등과 같은 전자 장치를 제어하기 위한 전자 제어 유닛(ECU: Electronic Control Unit)을 포함한다.The vehicle 1 includes electronic devices such as a seat position adjusting device, seat heating and ventilation device, window glass opening/closing device, door opening/closing and locking device, side mirror angle adjusting device, cluster, head unit, display unit, and vehicle terminal, etc. and an Electronic Control Unit (ECU) for controlling the device.

차량의 차대는 동력 발생 장치, 동력 전달 장치, 주행 장치, 조향 장치, 제동 장치, 현가 장치, 변속 장치, 연료 장치, 전후좌우 차륜 등을 더 포함한다.The chassis of the vehicle further includes a power generating device, a power transmitting device, a traveling device, a steering device, a braking device, a suspension device, a transmission device, a fuel device, front and rear left and right wheels, and the like.

차량(1)은 동력 발생 장치, 동력 전달 장치, 주행 장치, 조향 장치, 제동 장치, 현가 장치, 변속 장치, 연료 장치, 여러 가지 안전 장치 및 각종 센서들과 같은 전자 장치의 구동을 제어하는 전자 제어 유닛(ECU: Electronic Control Unit)을 포함한다.The vehicle 1 is electronically controlled to control the driving of electronic devices such as a power generating device, a power transmitting device, a traveling device, a steering device, a braking device, a suspension device, a transmission device, a fuel device, various safety devices, and various sensors. It includes an Electronic Control Unit (ECU).

여기서 전자 제어 유닛(ECU, 이하 '제어기'로 기재함)은 전자 장치별로 마련될 수도 있고, 복수의 전자 장치를 통합적으로 제어하도록 하나로 마련될 수도 있다.Here, the electronic control unit (ECU, hereinafter referred to as a 'controller') may be provided for each electronic device or may be provided as one to control a plurality of electronic devices in an integrated manner.

차량은 내부의 각종 전자 장치들 사이에서 통신을 수행하기 위한 통신 장치(120)를 포함한다. The vehicle includes a communication device 120 for performing communication between various electronic devices therein.

통신 장치(120)는 차량의 각종 부하를 제어하기 위한 복수 개의 제어기에 각각 유선으로 연결되고, 메인 제어기(130)에도 유선으로 연결되며, 유선을 통해 서로 다른 제어기들 사이에서 제어 신호, 동작 신호 및 검출 신호 중 적어도 하나를 송수신한다. The communication device 120 is respectively connected to a plurality of controllers for controlling various loads of the vehicle by wire, and is also connected to the main controller 130 by wire, and control signals, operation signals and At least one of the detection signals is transmitted and received.

여기서 부하(150)는 적어도 하나의 기능을 수행하기 위한 전자 장치(151, 152, 153)를 포함하며, 차량의 상태에 대한 적어도 하나의 정보를 검출하기 위한 검출 장치(154)를 더 포함할 수 있다.Here, the load 150 may include electronic devices 151, 152, and 153 for performing at least one function, and may further include a detection device 154 for detecting at least one piece of information about the state of the vehicle. there is.

통신 장치(120)는 위성으로부터 위치 정보를 획득하기 위한 GPS 수신부를 더 포함할 수 있다.The communication device 120 may further include a GPS receiver for acquiring location information from a satellite.

통신 장치(120)는 차량 내부의 전자 장치 및 외부 장치와 통신을 가능하게 하는 하나 이상의 구성 요소를 포함할 수 있으며, 예를 들어 근거리 통신 모듈, 유선 통신 모듈 및 무선 통신 모듈 중 적어도 하나를 포함할 수 있다.The communication device 120 may include one or more components that enable communication with an electronic device inside the vehicle and an external device, and may include, for example, at least one of a short-range communication module, a wired communication module, and a wireless communication module. can

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

유선 통신 모듈은 캔(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) 등 다양한 케이블 통신 모듈을 포함할 수 있다. 여기서 지역 통신(Local Area Network; LAN) 모듈은 가장 대표적인 버스 구조 방식의 이더넷 통신이다. The wired communication module includes various wired communication modules such as a Controller Area Network (CAN) communication module, a Local Area Network (LAN) module, a Wide Area Network (WAN) module, or a Value Added Network (VAN) module. Various cable communication 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) as well as communication module It can contain modules. Here, a local area network (LAN) module is the most representative Ethernet communication using a bus structure.

무선 통신 모듈은 와이파이(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 the Wi-Fi module and the Wireless broadband module, the wireless communication module includes a global system for mobile communication (GSM), a code division multiple access (CDMA), a wideband code division multiple access (WCDMA), and a universal mobile telecommunications system (UMTS). ), Time Division Multiple Access (TDMA), Long Term Evolution (LTE), etc. may include a wireless communication module supporting various wireless communication methods.

본 실시 예의 통신 장치(120)는 서로 동일한 프로토콜을 이용하여 통신을 수행하는 적어도 두 개의 전자 장치들 사이에서 통신을 제어할 수 있고, 서로 다른 프로토콜을 이용하여 통신을 수행하는 서로 다른 전자 장치 사이에서 통신을 제어할 수 있다.The communication device 120 of the present embodiment may control communication between at least two electronic devices that communicate using the same protocol, and perform communication between different electronic devices that communicate using different protocols. Communication can be controlled.

이러한 통신 장치(120)는 서로 다른 전자 장치들 사이에서 통신을 제어하는 복수 개의 통신부를 포함할 수 있다. 여기서 서로 다른 장치들은, 서로 동일한 프로토콜을 이용하여 통신을 수행하는 장치이거나, 서로 다른 프로토콜을 이용하여 통신을 수행하는 장치일 수 있다.The communication device 120 may include a plurality of communication units for controlling communication between different electronic devices. Here, the different devices may be devices performing communication using the same protocol or devices performing communication using different protocols.

본 실시 예에서 통신 장치(120)는 캔 통신부 및 이더넷 통신부를 포함할 수 있다.In this embodiment, the communication device 120 may include a CAN communication unit and an Ethernet communication unit.

캔 통신부는 두 개의 통신 선인 하이 라인과 로우 라인을 통하여 적어도 하나의 제어기, 전자 장치 및 검출 장치 중 적어도 하나에 제어 신호를 전송하며, 신호 전송 시 초당 수천여 개의 신호를 전송할 수 있다.The CAN communication unit 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 may transmit thousands of signals per second during signal transmission.

이러한 캔 통신부는 제어 신호를 송수신하는 통신 속도에 따라 저속 캔 통신부과 고속 캔 통신부로 구분될 수 있다. 여기서 저속 캔 통신부는 기준 속도 미만의 통신 속도를 가진 캔 통신부일 수 있고, 고속 캔 통신부는 기준 속도 이상의 통신 속도를 가진 캔 통신부일 수 있다.The CAN communication unit may be divided into a low-speed CAN communication unit and a high-speed CAN communication unit according to a communication speed for transmitting and receiving control signals. Here, the low-speed CAN communication unit may be a CAN communication unit having a communication speed lower than the reference speed, and the high-speed CAN communication unit may be a CAN communication unit having a communication speed greater than or equal to the reference speed.

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

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

이더넷 통신부는 복수 개의 전자 장치들 사이에서 데이터를 전송할 경로를 생성하고 생성된 경로에 기초하여 복수 개의 전자 장들 사이에서 이더넷 통신을 수행하도록 한다. 이러한 이더넷 통신부는 고속으로 대용량의 데이터를 송수신할 수 있는 통신 모듈로, 복수 개의 전자 장치들 사이에서 데이터를 송수신할 수 있다.The Ethernet communication unit creates a path to transmit data between the plurality of electronic devices and performs Ethernet communication between the plurality of electronic fields based on the generated path. The Ethernet communication unit is a communication module capable of transmitting and receiving large-capacity data at high speed, and may transmit/receive data between a plurality of electronic devices.

이더넷 통신부는 이더넷 스위치(도 2의 120a)를 포함할 수 있다.The Ethernet communication unit may include an Ethernet switch ( 120a in FIG. 2 ).

이더넷 스위치(도 2의 120a)는 아이피 정보에 기초하여 데이터를 전자 장치에 전송한다. The Ethernet switch ( 120a in FIG. 2 ) transmits data to the electronic device based on IP information.

메인 제어기(130)는 입력부(111)에 입력된 사용자 입력을 적어도 하나의 제어기에 전송하도록 하고, 적어도 하나의 제어기로부터 수신된 정보를 표시부(112)에 표시하도록 할 수 있다.The main controller 130 may transmit a user input input to the input unit 111 to at least one controller and display information received from the at least one controller on the display unit 112 .

메인 제어기(130)는 차량에 마련된 복수 개의 제어기들 사이에서 통신을 제어하고, 복수 개의 제어기를 관리하고 복수 개의 제어기의 동작을 제어할 수 있다.The main controller 130 may control communication between a plurality of controllers provided in the vehicle, manage the plurality of controllers, and control operations of the plurality of controllers.

메인 제어기(130)는 적어도 하나의 제어기로부터 에러 진단을 위한 통신 신호가 수신되면 수신된 통신 신호에 대응하는 응답 신호를 적어도 하나의 제어기에 전송할 수 있다.When a communication signal for error diagnosis is received from the at least one controller, the main controller 130 may transmit a response signal corresponding to the received communication signal to the at least one controller.

메인 제어기(130)는 복수 개의 제어기에 통신 신호를 전송할 때, 메인 제어기와 가까운 위치에 마련된 제어기부터 순차적으로 통신 신호를 전송할 수 있다.When transmitting the communication signal to the plurality of controllers, the main controller 130 may sequentially transmit the communication signal from a controller provided in a position close to the main controller.

메인 제어기(130)는 차량 내 구성요소들의 동작을 제어하기 위한 알고리즘 또는 알고리즘을 재현한 프로그램에 대한 데이터를 저장하는 메모리(미도시), 및 메모리에 저장된 데이터를 이용하여 전술한 동작을 수행하는 프로세서(미도시)로 구현될 수 있다. 이때, 메모리와 프로세서는 각각 별개의 칩으로 구현될 수 있다. 또는, 메모리와 프로세서는 단일 칩으로 구현될 수도 있다.The main controller 130 includes a memory (not shown) that stores data for an algorithm for controlling the operation of components in the vehicle or a program that reproduces the algorithm, and a processor that performs the above-described operation using the data stored in the memory (not shown) may be implemented. In this case, the memory and the processor may be implemented as separate chips. Alternatively, the memory and the processor may be implemented as a single chip.

저장부(131)는 복수 개의 전자 장치, 복수 개의 검출 장치 및 복수 개의 제어기의 식별 정보를 저장할 수 있다.The storage unit 131 may store identification information of a plurality of electronic devices, a plurality of detection devices, and a plurality of controllers.

저장부(131)는 복수 개의 전자 장치, 복수 개의 검출 장치 및 복수 개의 제어기의 아이피 정보(즉 아이피 주소)를 저장할 수 있다.The storage unit 131 may store IP information (ie, IP addresses) of a plurality of electronic devices, a plurality of detection devices, and a plurality of controllers.

저장부(131)는 복수 개의 전자 장치, 복수 개의 검출 장치 및 복수 개의 제어기의 통신 스펙(사양) 정보를 저장할 수 있다. The storage unit 131 may store communication specification (specification) information of a plurality of electronic devices, a plurality of detection devices, and a plurality of controllers.

저장부(131)는 복수 개의 제어기의 배치 정보를 저장하는 것도 가능하다. The storage unit 131 may also store arrangement information of a plurality of controllers.

저장부(131)는 캐쉬, 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과 같은 저장 매체 중 적어도 하나로 구현될 수 있으나 이에 한정되지는 않는다. 저장부(131)는 메인 제어기(130)와 관련하여 전술한 프로세서와 별개의 칩으로 구현된 메모리일 수 있고, 프로세서와 단일 칩으로 구현될 수도 있다. The storage unit 131 is a nonvolatile memory device or RAM such as a cache, read only memory (ROM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), and flash memory. It may be implemented as at least one of a volatile memory device such as (Random Access Memory), a hard disk drive (HDD), or a storage medium such as a CD-ROM, but is not limited thereto. The storage unit 131 may be a memory implemented as a chip separate from the processor described above with respect to the main controller 130 , or may be implemented as a single chip with the processor.

제어 그룹부(140)는 서로 다른 프로토콜로 통신을 수행하는 복수 개의 제어 그룹을 포함한다. 여기서 복수 개의 제어 그룹은, 서로 다른 통신부에 각각 연결될 수 있다. 즉 동일한 제어 그룹 내의 복수 개의 제어기는 서로 동일한 통신을 수행할 수 있다.The control group unit 140 includes a plurality of control groups for performing communication using different protocols. Here, the plurality of control groups may be respectively connected to different communication units. That is, a plurality of controllers in the same control group may perform the same communication with each other.

각 제어 그룹은 하나 또는 복수 개의 제어기를 포함하고, 하나 또는 복수 개의 제어기를 이용하여 적어도 하나의 부하의 동작을 제어한다. 복수 개의 제어기 중 일부는 부하 내부에 마련되는 것도 가능하다.Each control group includes one or more controllers, and controls the operation of at least one load by using the one or more controllers. Some of the plurality of controllers may be provided inside the load.

부하부(150)는 복수 개의 부하를 포함한다. 여기서 복수 개의 부하는 적어도 하나의 기능을 수행하기 위한 전자 장치(151-153)를 포함하며, 적어도 하나의 정보를 검출하기 위한 검출 장치(154)를 더 포함할 수 있다.The load unit 150 includes a plurality of loads. Here, the plurality of loads may include electronic devices 151-153 for performing at least one function, and may further include a detection device 154 for detecting at least one piece of information.

각각의 전자 장치(151-153)는 각 전자 장치가 연결된 제어 그룹 내에 마련된 하나 또는 복수 개의 제어기에 의해 제어될 수 있다.Each of the electronic devices 151-153 may be controlled by one or a plurality of controllers provided in a control group to which each electronic device is connected.

검출 장치(154)는 차량의 주행 속도를 검출하는 속도 검출 장치를 포함한다.The detection device 154 includes a speed detection device that detects the traveling speed of the vehicle.

여기서 속도 검출 장치는 전후좌우의 차륜에 마련된 휠 속도 센서 또는 차량의 가속도를 검출하는 가속도 센서일 수 있다.Here, the speed detecting device may be a wheel speed sensor provided on front, rear, left, and right wheels or an acceleration sensor for detecting the acceleration of the vehicle.

검출 장치(154)는 주변의 타 차량 및 장애물과의 거리를 검출하는 복수 개의 거리 센서, 차량의 조향각을 검출하기 위한 스티어링 휠의 각속도를 검출하는 각속도 센서와, 차량의 요 모멘트를 검출하는 요레이트 센서, 외부 조도를 검출하는 조도 센서 및 도어 개폐 센서 중 적어도 하나를 더 포함하는 것도 가능하다.The detection device 154 includes a plurality of distance sensors for detecting a distance to other nearby vehicles and obstacles, an angular velocity sensor for detecting an angular velocity of a steering wheel for detecting a steering angle of the vehicle, and a yaw rate for detecting a yaw moment of the vehicle. It is also possible to further include at least one of a sensor, an illuminance sensor for detecting external illuminance, and a door opening/closing sensor.

캔 통신을 수행하는 전자 장치 중 캔 메시지를 송신하는 전자 장치는, 송신할 캔 메시지를 방송(Broadcast)하고, 캔 메시지를 수신하는 제어기는 방송 중인 캔 메시지 중 자신의 기능 구현을 위해 필요한 캔 메시지의 식별 정보(ID)를 가진 캔 메시지만을 수신한다.Among electronic devices performing CAN communication, an electronic device transmitting a CAN message broadcasts the CAN message to be transmitted, and a controller receiving the CAN message transmits the CAN message necessary for implementing its own function among the CAN messages being broadcast. Only CAN messages with identification information (ID) are received.

이더넷 통신을 수행하는 복수 개의 전자 장치들은, 차량용 단말기(AVN), 헤드 유닛, 카메라 및 클러스터를 포함할 수 있고, 헤드 업 디스플레이(HUD) 및 운전자 보조 장치(ADAS)를 포함할 수 있다. The plurality of electronic devices performing Ethernet communication may include a vehicle terminal (AVN), a head unit, a camera, and a cluster, and may include a head-up display (HUD) and a driver assistance system (ADAS).

이더넷 통신을 수행하는 전자 장치는, 데이터를 송신하되 송신할 전자 장치의 식별정보(또는 아이피 정보)를 함께 이더넷 스위치에 전송한다. 데이터에는 캔 메시지도 포함될 수 있다.The electronic device performing Ethernet communication transmits data, but also transmits identification information (or IP information) of the electronic device to be transmitted to the Ethernet switch. Data may also include can messages.

이더넷 통신을 수행하는 전자 장치는, 데이터와 송신 전자 장치의 식별 정보(ID, 또는 아이피 주소)를 포함하는 이더넷 프레임을 전송할 수 있다. The electronic device performing Ethernet communication may transmit an Ethernet frame including data and identification information (ID or IP address) of the transmitting electronic device.

이더넷 프레임은 MAC 계층 프로토콜에 정의된 MAC 헤더와 트레일러 정보를 추가한 것으로, LLC 계층에서 보낸 모든 정보를 전송 데이터로 취급하며, 데이터의 앞에는 헤더가, 뒤에는 트레일러가 위치할 수 있다.The Ethernet frame is the addition of the MAC header and trailer information defined in the MAC layer protocol, and all information sent from the LLC layer is treated as transmission data.

이더넷 프레임은 송신 전자 장치의 아이피 주소와 수신 전자 장치의 아이피 주소에 대한 정보를 포함할 수 있다.The Ethernet frame may include information on the IP address of the transmitting electronic device and the IP address of the receiving electronic device.

도 2는 실시 예에 따른 차량에 마련된 통신 장치의 일 예시도이고, 도 3은 실시 예에 따른 통신 장치 내 캔 통신부의 연결 예시도이다.FIG. 2 is an exemplary diagram of a communication device provided in a vehicle according to an embodiment, and FIG. 3 is a diagram illustrating a connection of a CAN communication unit in the communication device according to an embodiment.

도 2에 도시된 바와 같이, 통신 장치(120)는 이더넷 스위치(120a), 게이트웨이(120b) 및 캔 통신부(120c)를 포함할 수 있다. 아울러 캔 통신부(120c)는 게이트웨이(120a) 내부에 마련될 수도 있다.2 , the communication device 120 may include an Ethernet switch 120a, a gateway 120b, and a CAN communication unit 120c. In addition, the CAN communication unit 120c may be provided inside the gateway 120a.

이더넷 스위치(120a)는 게이트웨이(120b)와 별도로 마련될 수 있다. The Ethernet switch 120a may be provided separately from the gateway 120b.

이더넷 스위치(120a)는 복수 개의 이더넷 제어기(140a)의 아이피 주소를 저장한다. The Ethernet switch 120a stores the IP addresses of the plurality of Ethernet controllers 140a.

이더넷 스위치(120a)는 복수 개의 이더넷 프레임의 각각에 대해 수신할 이더넷 제어기(140a)의 아이피 주소를 확인하는 것도 가능하다.It is also possible for the Ethernet switch 120a to check the IP address of the Ethernet controller 140a to be received for each of a plurality of Ethernet frames.

이더넷 스위치(120a)는 이더넷 프레임에서 아이피 주소가 확인되면 확인된 아이피 주소에 기초하여 경로를 생성하고, 생성된 경로를 따라 수신된 이더넷 프레임의 전송을 제어할 수 있다.When the IP address is confirmed in the Ethernet frame, the Ethernet switch 120a may generate a path based on the confirmed IP address and control transmission of the received Ethernet frame along the generated path.

이더넷 스위치(120a)는 복수 개의 이더넷 프레임의 각각에 대해 이더넷 프레임을 전송할 전송 경로를 저장할 수도 있다.The Ethernet switch 120a may store a transmission path through which an Ethernet frame is transmitted for each of a plurality of Ethernet frames.

이더넷 스위치(120a)의 경로는 이더넷 프레임을 수신하는 제어기의 개수에 따라 유니 캐스트(unicast(1:1)) 경로가 될 수 있고, 멀티 캐스트(multicast(1:n)) 경로가 될 수도 있다.The path of the Ethernet switch 120a may be a unicast (1:1) path or a multicast (1:n) path depending on the number of controllers that receive an Ethernet frame.

이더넷 프레임 내의 데이터에는 캔 메시지가 포함되는 것도 가능하다. The data in the Ethernet frame may include a CAN message.

즉 이더넷 스위치(120a)는 캔 메시지를 전송하는 것도 가능하다. 이 경우, 이더넷 스위치(120a)는 캔 메시지 별로 송신한 이더넷 제어기의 아이피 주소와, 수신할 캔 제어기의 아이피 주소를 확인하는 것도 가능하다.That is, the Ethernet switch 120a may also transmit a CAN message. In this case, the Ethernet switch 120a may check the IP address of the Ethernet controller transmitted for each CAN message and the IP address of the CAN controller to be received.

이더넷 스위치(120a)에는 이더넷 제어기(140a) 및 제1전자 장치(151)가 연결될 수 있다. 이더넷 스위치(120a)에 연결된 이더넷 제어기(140a)는 하나 또는 복수 개일 수 있다. 이더넷 스위치(120a)에 연결된 제1전자 장치(151)는 하나 또는 복수 개일 수 있다. 복수 개의 제1전자 장치는 서로 다른 기능을 수행하는 장치일 수 있다.The Ethernet controller 140a and the first electronic device 151 may be connected to the Ethernet switch 120a. There may be one or a plurality of Ethernet controllers 140a connected to the Ethernet switch 120a. There may be one or a plurality of first electronic devices 151 connected to the Ethernet switch 120a. The plurality of first electronic devices may be devices that perform different functions.

이더넷 스위치(120a)는 하나 또는 복수 개의 이더넷 제어기(140b)와 이더넷 통신 라인을 통해 연결될 수 있다.The Ethernet switch 120a may be connected to one or a plurality of Ethernet controllers 140b through an Ethernet communication line.

이더넷 스위치(120a)는 적어도 하나의 이더넷 제어기(140a)로부터 SOME/IP를 통해 데이터를 수신할 수 있고, 수신한 데이터를 게이트웨이(120b)에 전송할 수 있다.The Ethernet switch 120a may receive data from at least one Ethernet controller 140a through SOME/IP, and may transmit the received data to the gateway 120b.

게이트웨이(120b)는 캔 통신부(120c)와 통신을 수행하고, 캔 통신부(120c)의 통신을 제어한다. The gateway 120b communicates with the CAN communication unit 120c and controls communication of the CAN communication unit 120c.

게이트웨이(120b)는 제1코어(b1)인 이더넷 SOME/IP 코어와 제2코어(b2)인 애플리케이션 라우팅 코어(Application Routing Core)를 포함할 수 있다.The gateway 120b may include an Ethernet SOME/IP core that is a first core b1 and an application routing core that is a second core b2.

제1코어(b1)인 이더넷 SOME/IP 코어는 제2코어(b2)를 통해 UDP(User Datagram Protocol)용 데이터가 수신되면 수신된 UDP용 데이터를 SOME/IP(Scalable service-Oriented MiddlewarE over IP)를 통해 이더넷 스위치(120a) 또는 이더넷 제어기(140a)에 전송할 수 있다. The Ethernet SOME/IP core, which is the first core (b1), receives UDP (User Datagram Protocol) data through the second core (b2) and converts the received UDP data to SOME/IP (Scalable service-Oriented MiddlewarE over IP). through the Ethernet switch 120a or the Ethernet controller 140a.

제1코어(b1)인 이더넷 SOME/IP 코어는 수신된 UDP용 데이터를 SOME/IP를 통해 전송 가능하도록 SOME/IP용 데이터로 변환할 수 있다. 여기서 SOME/IP (Scalable service-Oriented MiddlewarE over IP)는 동적이고 서비스 지향적인 아이피(IP) 네트워크 통신 버스로, 필요한 시점에 필요로 하는 데이터만 보내는 통신 프로토콜이다. The Ethernet SOME/IP core, which is the first core (b1), may convert the received data for UDP into data for SOME/IP so that it can be transmitted through SOME/IP. Here, SOME/IP (Scalable service-Oriented MiddlewarE over IP) is a dynamic and service-oriented IP network communication bus, and is a communication protocol that transmits only necessary data at a necessary time.

제1코어(b1)인 이더넷 SOME/IP 코어는 적어도 하나의 이더넷 제어기(140a)로부터 SOME/IP를 통해 데이터를 수신할 수 있고, 수신한 데이터를 UDP용 데이터로 변환하고 변환한 UDP용 데이터를 제2코어(b2)에 전송할 수 있다.The Ethernet SOME/IP core, which is the first core (b1), may receive data from at least one Ethernet controller 140a through SOME/IP, convert the received data into data for UDP, and convert the converted data for UDP. It can be transmitted to the second core (b2).

제1코어(b1)는 UDP를 통해 데이터를 전송할 수 있도록 SOME/IP용 데이터를 UDP용 데이터로 변환하는 것이다.The first core b1 converts data for SOME/IP into data for UDP so that data can be transmitted through UDP.

제2코어(b2)인 애플리케이션 라우팅 코어(Application Routing Core, b2) 는 복수 개의 캔 제어기(140b)와 연결되어 있고, 제1코어와 이더넷 통신 라인을 통해 연결될 수 있다.The second core b2, the application routing core b2, is connected to the plurality of CAN controllers 140b, and may be connected to the first core through an Ethernet communication line.

제2코어(b2)는 복수 개의 캔 제어기 중 적어도 하나 또는 복수 개로부터 캔 메시지를 수신할 수 있다.The second core b2 may receive a CAN message from at least one or a plurality of CAN controllers.

제2코어(b2)는 라우팅 지연이 발생하였다고 판단되면 캔 메시지의 전송 주기를 변경한다.If it is determined that the routing delay has occurred, the second core b2 changes the transmission period of the CAN message.

제2코어(b2)는 수신된 캔 메시지들을 모아서 UDP용 데이터로 변환하고 변환한 UDP용 데이터를 제1코어(b1)로 전송한다.The second core b2 collects the received CAN messages, converts them into UDP data, and transmits the converted UDP data to the first core b1.

제2코어(b2)는 제1코어(b1)로부터 수신된 UDP용 데이터를 각각의 캔 메시지로 분할하고 분할한 각각의 캔 메시지를 전송할 캔 제어기를 확인하며 분할한 각각의 캔 메시지를 확인한 캔 제어기에 각각 전송할 수 있다.The second core b2 divides the UDP data received from the first core b1 into respective CAN messages, checks the CAN controller to transmit each split CAN message, and the CAN controller checks each divided CAN message can be sent to each.

제2코어(b2)는 분할한 캔 메시지들의 중요도를 각각 확인하고 확인한 중요도 중 가장 높은 중요도를 가진 메시지의 캔 식별 정보(ID)를 가장 낮게 설정하고, 가장 낮은 중요도를 가진 메시지의 캔 식별 정보(ID)를 가장 높게 설정하며, 가장 낮은 캔 식별 정보가 설정된 메시지의 우선 순위를 가장 높게 설정하고, 가장 높은 캔 식별 정보가 설정된 메시지의 우선 순위를 가장 낮게 설정한다.The second core b2 checks the importance of the divided can messages, sets the can identification information (ID) of the message having the highest importance among the checked importance values to the lowest, and sets the can identification information (ID) of the message with the lowest importance ( ID) is set to the highest, the priority of the message with the lowest can identification information is set to the highest, and the priority of the message with the highest can identification information is set to the lowest.

즉 제2코어(b2)는 캔 메시지의 중요도가 높아질수록 더 낮은 캔 식별 정보를 설정하고, 메시지의 캔 식별 정보가 낮아질수록 더 높은 우선 순위를 설정한다.That is, the second core b2 sets lower CAN identification information as the importance of the CAN message increases, and sets a higher priority as the CAN ID information of the message decreases.

제2코어(b2)는 우선 순위가 높은 캔 메시지부터 전송할 수 있다. The second core b2 may transmit a CAN message having a higher priority first.

제2코어(b2)는 캔 식별 정보가 낮은 캔 메시지부터 전송할 수 있다. The second core b2 may transmit a CAN message having a lower CAN identification information first.

이러한 제2코어(b2)는, 하나의 캔 통신 모듈에 연결된 복수 개의 캔 제어기 또는 복수 개의 전자 장치로 캔 메시지를 전송할 때, 버스 중재(BUS Arbitration)에 의해 발생되는 지연을 방지할 수 있다. 또한 UDP용 데이터를 각각의 캔 메시지로 분할하는 동작에 의해 발생되는 지연을 방지할 수 있다.The second core b2 may prevent a delay caused by bus arbitration when transmitting a CAN message to a plurality of CAN controllers or a plurality of electronic devices connected to one CAN communication module. Also, it is possible to prevent the delay caused by the operation of dividing UDP data into each CAN message.

캔 통신부(120c)는 하나 또는 복수 개의 캔 통신 모듈을 포함할 수 있다.The CAN communication unit 120c may include one or a plurality of CAN communication modules.

복수 개의 캔 통신 모듈은 서로 다른 방식의 캔 통신 모듈일 수 있다. 아울러 복수 개의 캔 통신 모듈은 통신 속도 및 용도가 상이한 캔 통신 모듈일 수 있다. The plurality of CAN communication modules may be CAN communication modules of different types. In addition, the plurality of CAN communication modules may be CAN communication modules having different communication speeds and uses.

캔 통신 모듈은, 멀티미디어 캔(M-CAN: Multimedia Controller Area Network)통신 모듈과, 각종 전자 장치를 동작시키기 위한 신호를 송수신하는 바디 캔(B-CAN: Body Controller Area Network) 통신 모듈과, 파워 트레인, 안정성 제어(ABS, 액티브 서스펜션 등), 변속 기능을 실시간으로 제어하기 위한 신호를 송수신하는 파워 트레인 캔(P-CAN: Power Train Controller Area Network) 통신 모듈과, 섀시 캔(C-CAN: Chassis Controller Area Network) 통신 모듈과, 에러 진단을 위한 진단 캔(D-CAN: Diagnosis Controller Area Network) 통신 모듈 중 적어도 하나일 수 있고, 또는 그 이상일 수 있다.The CAN communication module includes a multimedia CAN (Multimedia Controller Area Network) communication module, a B-CAN (Body Controller Area Network) communication module for transmitting and receiving signals for operating various electronic devices, and a power train. P-CAN (Power Train Controller Area Network) communication module that transmits and receives signals for real-time control of , stability control (ABS, active suspension, etc.) and shifting functions, and C-CAN: Chassis Controller It may be at least one of an Area Network) communication module and a Diagnosis Controller Area Network (D-CAN) communication module for error diagnosis, or more.

캔 통신 모듈의 두 전선에는 적어도 하나의 캔 제어기가 연결될 수 있고, 적어도 하나의 캔 제어기에 의해 동작이 제어되는 전자 장치가 연결될 수도 있으며, 적어도 하나의 캔 제어기에 의해 동작이 제어되고 감지된 신호를 전송하기 위한 검출 장치(즉, 센서)가 연결될 수도 있다.At least one can controller may be connected to the two wires of the can communication module, and an electronic device whose operation is controlled by the at least one can controller may be connected, and the operation is controlled by the at least one can controller and the detected signal is transmitted. A detection device (ie a sensor) for transmitting may be connected.

하나의 캔 통신 모듈에는 동일한 통신 방식 및 동일한 범위 내의 통신 속도를 필요로 하는 캔 제어기, 전자 장치 및 검출 장치가 연결될 수 있다. 그리고 하나의 캔 통신 모듈의 두 개의 전선에 연결된 적어도 하나의 캔 제어기, 전자 장치 및 검출 장치는 커넥터에 의해 서로 접속될 수 있다.A CAN controller, an electronic device, and a detection device that require the same communication method and communication speed within the same range may be connected to one CAN communication module. In addition, at least one can controller, an electronic device, and a detection device connected to two wires of one can communication module may be connected to each other by a connector.

제어 그룹부(140)는 이더넷 제어기(140a)와 캔 제어기(140b)를 포함할 수 있다.The control group unit 140 may include an Ethernet controller 140a and a CAN controller 140b.

이더넷 제어기(140a)는 하나 또는 복수 개일 수 있다. 캔 제어기(140b)는 하나 또는 복수 개일 수 있다.There may be one or a plurality of Ethernet controllers 140a. There may be one or a plurality of can controllers 140b.

이더넷 제어기(140a)는 적어도 하나의 부하(즉, 전자 장치 또는 검출 장치)의 동작을 제어하고, 캔 제어기(140b)는 적어도 하나의 부하(즉, 전자 장치 또는 검출 장치)의 동작을 제어하되, 이더넷 제어기(140a)에 의해 제어되지 않는 부하의 동작을 제어할 수 있다.Ethernet controller 140a controls the operation of at least one load (ie, electronic device or detection device), and CAN controller 140b controls the operation of at least one load (ie, electronic device or detection device), It is possible to control the operation of a load that is not controlled by the Ethernet controller 140a.

예를 들어, 이더넷 제어기(140a)는 제1전자 장치(151)의 동작을 제어할 수 있고, 캔 제어기(140b)는 제2, 3 전자 장치(152, 153) 및 검출 장치(154)의 동작을 제어할 수 있다.For example, the Ethernet controller 140a may control the operation of the first electronic device 151 , and the CAN controller 140b may control the operation of the second and third electronic devices 152 and 153 and the detection device 154 . can be controlled.

이더넷 제어기(140a)는 이더넷 프레임 송수신 제어기일 수 있다.The Ethernet controller 140a may be an Ethernet frame transmission/reception controller.

이더넷 제어기(140a)는 SOME/IP를 통해 데이터를 이더넷 스위치(120a)에 전송할 수 있다. SOME/IP를 통해 전송하는 데이터는 복수 개의 캔 메시지를 포함할 수 있다. 복수 개의 캔 메시지는 캔 메시지의 중요도를 포함할 수 있다.The Ethernet controller 140a may transmit data to the Ethernet switch 120a through SOME/IP. Data transmitted through SOME/IP may include a plurality of CAN messages. The plurality of CAN messages may include the importance of CAN messages.

제1전자 장치(151)의 동작을 제어하기 위한 이더넷 제어기(140a)는, 하나 또는 복수 개 일 수 있다.There may be one or a plurality of Ethernet controllers 140a for controlling the operation of the first electronic device 151 .

도 3에 도시된 바와 같이, 제2, 3 전자 장치(152, 153) 및 검출 장치(154)는 서로 다른 캔 통신을 수행할 수 있고, 이 경우, 캔 통신부 내에 마련된 캔 통신 모듈은 복수 개일 수 있다.3 , the second and third electronic devices 152 and 153 and the detection device 154 may perform different CAN communication. In this case, there may be a plurality of CAN communication modules provided in the CAN communication unit. there is.

제2 전자 장치(152)는 제1캔 통신 모듈(c1)을 통해 제1캔 통신을 수행하고, 제1캔 통신을 수행하는 제1캔 제어기(b11)에 의해 제어될 수 있다.The second electronic device 152 may perform the first CAN communication through the first CAN communication module c1 and may be controlled by the first CAN controller b11 performing the first CAN communication.

제2 전자 장치(152)의 동작을 제어하기 위한 제1캔 제어기(b11)는 하나 또는 복수 개일 수 있다.There may be one or a plurality of first can controllers b11 for controlling the operation of the second electronic device 152 .

제3 전자 장치(153)는 제2캔 통신 모듈(c2)을 통해 제2캔 통신을 수행하고, 제2 캔 통신을 수행하는 제2캔 제어기(b21)에 의해 제어될 수 있다.The third electronic device 153 may perform the second CAN communication through the second CAN communication module c2 and may be controlled by the second CAN controller b21 performing the second CAN communication.

제3전자 장치(153)의 동작을 제어하기 위한 제2캔 제어기(b21)는 하나 또는 복수 개일 수 있다.There may be one or a plurality of second can controllers b21 for controlling the operation of the third electronic device 153 .

검출 장치(154)는 제2, 3 전자 장치(152, 153)와 다른 캔 통신을 수행할 수도 있다. 이 경우, 검출 장치(154)는 제2, 3 전자 장치(152, 153)에 연결된 캔 통신 모듈과 다른 캔 통신 모듈에 연결될 수 있다.The detection device 154 may perform different CAN communication with the second and third electronic devices 152 and 153 . In this case, the detection device 154 may be connected to a CAN communication module different from the CAN communication module connected to the second and third electronic devices 152 and 153 .

즉 검출 장치(154)는 제3캔 통신 모듈(c3)을 통해 제3캔 통신을 수행하고, 제3 캔 통신을 통해 게이트웨이(120b)의 제1코어와 제2코어에 의해 제어될 수 있다.That is, the detection device 154 may perform third CAN communication through the third CAN communication module c3 and may be controlled by the first core and the second core of the gateway 120b through the third CAN communication.

도 4는 실시 예에 따른 통신 장치의 상세 구성도로, 데이터를 송수신하기 위한 게이트웨이(120b)의 상세 구성도이다.4 is a detailed configuration diagram of a communication device according to an embodiment, and is a detailed configuration diagram of a gateway 120b for transmitting and receiving data.

도 4에 도시된 바와 같이, 게이트웨이(120b)는 제1코어(b1)인 이더넷 SOME/IP 코어와 제2코어(b2)인 애플리케이션 라우팅 코어(Application Routing Core)를 포함할 수 있다.제1코어(b1)인 이더넷 SOME/IP 코어는 복수 개의 데이터 컨테이너와 이더넷 인터페이스를 포함할 수 있다.As shown in FIG. 4 , the gateway 120b may include an Ethernet SOME/IP core that is a first core b1 and an application routing core that is a second core b2. First core The Ethernet SOME/IP core of (b1) may include a plurality of data containers and an Ethernet interface.

제1코어(b1)인 이더넷 SOME/IP 코어의 복수 개의 데이터 컨테이너는 제2코어에 연결될 수 있고, 이더넷 인터페이스에는 이더넷 제어기(140a)가 연결될 수 있다.The plurality of data containers of the Ethernet SOME/IP core that is the first core b1 may be connected to the second core, and the Ethernet controller 140a may be connected to the Ethernet interface.

제1코어(b1)는 SOME/IP를 통해 이더넷 제어기(140a)로부터 SOME/IP용 데이터를 수신할 수 있고, SOME/IP용 데이터를 UDP용 데이터로 변환한 후 변환한 UDP용 데이터를 제2데이터 컨테이너를 통해 제2코어(b2)에 전송할 수 있다.The first core b1 may receive SOME/IP data from the Ethernet controller 140a through SOME/IP, convert the SOME/IP data into UDP data, and then convert the converted UDP data to the second It can be transmitted to the second core b2 through the data container.

제1코어(b1)는 제1데이터 컨테이너를 통해 제2코어(b2)에서 전송한 UDP용 데이터를 수신할 수 있고, 수신한 UDP용 데이터를 SOME/IP용 데이터로 변환하고, 변환한 SOME/IP용 데이터를 이더넷 인터페이스를 통해 이더넷 제어기(140a) 또는 이더넷 스위치(120a)에 전송할 수 있다.The first core b1 may receive the UDP data transmitted from the second core b2 through the first data container, convert the received UDP data into SOME/IP data, and convert the converted SOME/ IP data may be transmitted to the Ethernet controller 140a or the Ethernet switch 120a through the Ethernet interface.

제2코어(b2)는 복수 개의 캔 출력 버퍼와 캔 입력 버퍼를 포함할 수 있다. 하나의 캔 출력 버퍼와 하나의 캔 입력 버퍼는 쌍으로 마련될 수 있다.The second core b2 may include a plurality of CAN output buffers and CAN input buffers. One can output buffer and one can input buffer may be provided in pairs.

한 쌍의 캔 출력 버퍼와 캔 입력 버퍼에는 하나의 캔 제어기가 연결될 수 있다.One can controller may be connected to the pair of can output buffers and can input buffers.

예를 들어, 제2코어(b2)의 제1캔 출력 버퍼와 제1캔 입력 버퍼에는 제1캔 제어기가 연결될 수 있고, 제2코어(b2)의 제2캔 출력 버퍼와 제2캔 입력 버퍼에는 제2캔 제어기가 연결될 수 있다. For example, the first CAN controller may be connected to the first CAN output buffer and the first CAN input buffer of the second core b2 , and the second CAN output buffer and the second CAN input buffer of the second core b2 . A second can controller may be connected to the .

제2코어(b2)는 캔 출력 버퍼를 통해 각각의 캔 제어기에 캔 메시지를 송신할 수 있고, 캔 입력 버퍼를 통해 각각의 캔 제어기로부터 캔 메시지를 수신할 수 있다.The second core b2 may transmit a CAN message to each CAN controller through a CAN output buffer, and may receive a CAN message from each CAN controller through a CAN input buffer.

제2코어(b2)는 가상 캔 출력 버퍼와 가상 캔 입력 버퍼를 포함할 수 있다.The second core b2 may include a virtual CAN output buffer and a virtual CAN input buffer.

제2코어(b2)의 가상 캔 출력 버퍼는 이더넷 스위치의 제1데이터 컨테이너에 연결될 수 있고, 가상 캔 입력 버퍼는 이더넷 스위치의 제2데이터 컨테이너에 연결될 수 있다.The virtual CAN output buffer of the second core b2 may be connected to the first data container of the Ethernet switch, and the virtual CAN input buffer may be connected to the second data container of the Ethernet switch.

제2코어(b2)의 가상 캔 출력 버퍼는 이더넷 스위치의 제1데이터 컨테이너를 통해 UDP용 데이터를 제1코어(b1)에 전송할 수 있다.The virtual CAN output buffer of the second core b2 may transmit data for UDP to the first core b1 through the first data container of the Ethernet switch.

제2코어(b2)의 가상 캔 입력 버퍼는 이더넷 스위치의 제2데이터 컨테이너를 통해 UDP용 데이터를 제1코어(b1)로부터 수신할 수 있다.The virtual CAN input buffer of the second core b2 may receive UDP data from the first core b1 through the second data container of the Ethernet switch.

도 5는 실시 예에 따른 차량에 마련된 통신 장치의 다른 예시도이다.5 is another exemplary diagram of a communication device provided in a vehicle according to an embodiment.

도 5에 도시된 바와 같이, 이더넷 스위치 내에 게이트웨이가 마련될 수도 있다.As shown in FIG. 5 , a gateway may be provided in the Ethernet switch.

즉 통신 장치(120)는 이더넷 스위치와 게이트웨이가 일체로 통합된 통합 통신 장치(120d)로 마련될 수 있다. 아울러 통합 통신 장치(120d) 내에 캔 통신부(120c)가 마련되는 것도 가능하다.That is, the communication device 120 may be provided as an integrated communication device 120d in which an Ethernet switch and a gateway are integrated. In addition, the CAN communication unit 120c may be provided in the integrated communication device 120d.

통합 통신 장치(120d)는 도 2에서 설명된 게이트웨이의 기능과 이더넷 스위치의 기능 모두를 수행할 수 있다.The integrated communication device 120d may perform both the function of the gateway and the function of the Ethernet switch described in FIG. 2 .

통합 통신 장치(120d)는 이더넷 제어기(140a)와 데이터를 송수신하기 위한 커넥션을 수행한다. 이 때 통합 통신 장치(120d)와 이더넷 제어기(140a)는 물리적(Physical), 기능적(functional) 데이터를 송수신하기 위한 통신을 수행할 수 있다.The integrated communication device 120d establishes a connection for transmitting and receiving data with the Ethernet controller 140a. In this case, the integrated communication device 120d and the Ethernet controller 140a may perform communication for transmitting and receiving physical and functional data.

도 1, 2, 3, 4 및 5에 도시된 차량 및 통신 장치의 구성 요소들의 성능에 대응하여 적어도 하나의 구성요소가 추가되거나 삭제될 수 있다. 또한, 구성 요소들의 상호 위치는 차량의 성능 또는 구조에 대응하여 변경될 수 있다는 것은 당해 기술 분야에서 통상의 지식을 가진 자에게 용이하게 이해될 것이다.At least one component may be added or deleted according to the performance of the components of the vehicle and the communication device shown in FIGS. 1, 2, 3, 4 and 5 . In addition, it will be readily understood by those skilled in the art that the mutual positions of the components may be changed corresponding to the performance or structure of the vehicle.

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

도 6은 실시 예에 따른 통신 장치의 동작 예시도로, 캔 제어기와 이더넷 제어기 사이에서 통신을 제어하는 게이트웨이의 제2코어의 동작 예시도이다.6 is a diagram illustrating an operation of a communication device according to an embodiment, and is an operation diagram illustrating an operation of a second core of a gateway that controls communication between a CAN controller and an Ethernet controller.

캔 제어기(140b)는 게이트웨이(120b)와 캔 메시지를 송수신할 수 있다. The CAN controller 140b may transmit/receive CAN messages to and from the gateway 120b.

예를 들어, 캔 제어기(140b)는 에러진단을 위한 캔 메시지를 캔 통신부(120c)를 통해 게이트웨이(120b)에 전송할 수 있다. 이 때 게이트웨이(120b)는 캔 제어기(140b)로부터 에러 진단을 위한 캔 메시지가 수신되면 응답 신호에 대응하는 캔 메시지를 캔 제어기(140b)에 전송할 수 있다.For example, the CAN controller 140b may transmit a CAN message for error diagnosis to the gateway 120b through the CAN communication unit 120c. In this case, when a CAN message for error diagnosis is received from the CAN controller 140b, the gateway 120b may transmit a CAN message corresponding to the response signal to the CAN controller 140b.

캔 제어기(140b)는 이더넷 제어기(140a)에 캔 메시지를 전송할 수 있다.The CAN controller 140b may transmit a CAN message to the Ethernet controller 140a.

좀 더 구체적으로, 캔 제어기(140b)는 캔 메시지를 통신부(120c)를 통해 게이트웨이(120b)의 제2코어에 전송할 수 있다. 이 때 제2코어는 캔 메시지가 수신되면 수신된 캔 메시지를 UDP용 데이터로 변환하고 변환한 UDP용 데이터를 제1코어에 전송한다.More specifically, the CAN controller 140b may transmit the CAN message to the second core of the gateway 120b through the communication unit 120c. At this time, when the CAN message is received, the second core converts the received CAN message into data for UDP and transmits the converted data for UDP to the first core.

제1코어는 수신된 UDP용 데이터를 SOME/IP용 데이터로 변환하고 변환한 SOME/IP용 데이터를 이더넷 제어기(140a)에 전송할 수 있다. 이 때 SOME/IP용 데이터는 게이트웨이의 제1코어의 소켓 어댑터, TCPIP 및 이더넷 인터페이스를 통해 이더넷 제어기(140a)에 전송할 수 있다.The first core may convert the received data for UDP into data for SOME/IP and transmit the converted data for SOME/IP to the Ethernet controller 140a. At this time, data for SOME/IP may be transmitted to the Ethernet controller 140a through the socket adapter of the first core of the gateway, TCPIP, and Ethernet interface.

이더넷 제어기(140a)는 이더넷 프레임을 캔 제어기(140b)에 전송할 수 있다.The Ethernet controller 140a may transmit an Ethernet frame to the CAN controller 140b.

여기서 이더넷 프레임은 데이터를 포함하고, 캔 메시지를 더 포함할 수 있다.Here, the Ethernet frame may include data and may further include a CAN message.

좀 더 구체적으로, 이더넷 제어기(140a)는 게이트웨이의 제1코어에 SOME/IP용 데이터를 전송한다.More specifically, the Ethernet controller 140a transmits data for SOME/IP to the first core of the gateway.

제1코어는 수신한 SOME/IP용 데이터를 UDP용 데이터로 변환하고 변환한 UDP용 데이터를 게이트웨이(120b)의 제2코어에 전송할 수 있다. 이때 제1코어는 이더넷 인터페이스, TCPIP 및 소켓 어댑터를 통해 제2코어에 UDP용 데이터를 전송할 수 있다.The first core may convert the received data for SOME/IP into data for UDP, and transmit the converted data for UDP to the second core of the gateway 120b. In this case, the first core may transmit data for UDP to the second core through an Ethernet interface, TCPIP, and a socket adapter.

게이트웨이(120b)의 제2코어는 수신된 UDP용 데이터를 각각의 캔 메시지로 분할하고 분할한 각각의 캔 메시지를 전송할 캔 제어기를 확인하며 분할한 각각의 캔 메시지를 캔 통신부(120c)를 통해 확인한 캔 제어기(140b)에 각각 전송할 수 있다.The second core of the gateway 120b divides the received UDP data into individual CAN messages, checks the CAN controller to transmit each divided CAN message, and checks each divided CAN message through the CAN communication unit 120c. may be transmitted to each of the can controllers 140b.

이더넷 제어기로부터 캔 제어기에 캔 메시지를 전송할 때 게이트웨이에서 처리되지 않은 인더럽트의 수가 많거나, 각각의 인터럽트에 대한 수행 시간이 긴 경우, 라우팅 지연이 발생할 수 있다.When sending a CAN message from the Ethernet controller to the CAN controller, if the number of interrupts that are not handled by the gateway or the execution time for each interrupt is long, routing delay may occur.

라우팅 지연을 방지하기 위한 일 예로, 게이트웨이의 제1코어는 미리 정해진 이더넷 프레임의 전송 주기를 제1주기에서 제2주기로 변경할 수 있다. 즉 게이트웨이의 제1코어는 제2주기에 기초하여 미리 정해진 이더넷 프레임을 제2코어에 전송할 수 있다.As an example for preventing routing delay, the first core of the gateway may change the predetermined transmission period of the Ethernet frame from the first period to the second period. That is, the first core of the gateway may transmit a predetermined Ethernet frame to the second core based on the second period.

여기서 제2주기의 시간은 제1주기의 시간 보다 긴 시간일 수 있다. 미리 정해진 캔 프레임은 차량 또는 통신 장치의 개발 시에 정해진 것일 수 있다.Here, the time of the second period may be longer than the time of the first period. The predetermined can frame may be determined when a vehicle or a communication device is developed.

제1코어는 미리 정해진 캔 메시지를 가지는 이더넷 프레임의 전송 주기를 제1주기에서 제2주기로 변경하는 것도 가능하다. 즉 제1코어는 제2주기에 기초하여 미리 정해진 캔 메시지를 가지는 이더넷 프레임을 제2코어에 전송할 수 있다. 여기서 미리 정해진 캔 메시지는 차량 또는 통신 장치의 개발 시에 정해진 것일 수 있다.The first core may change the transmission period of the Ethernet frame having a predetermined CAN message from the first period to the second period. That is, the first core may transmit an Ethernet frame having a predetermined CAN message to the second core based on the second period. Here, the predetermined CAN message may be determined when a vehicle or a communication device is developed.

제1코어는 이더넷 프레임을 UDP용 데이터로 변환한 후 변환한 UDP용 데이터를 제2코어에 전송할 수 있다. 이더넷 프레임 내의 데이터는 SOME/IP용 데이터일 수 있다. 이 경우, 제2코어는 제2주기마다 수신된 UDP용 데이터를 캔 메시지들로 변환하고 변환한 캔 메시지들을 캔 제어기에 전송할 수 있다.The first core may convert the Ethernet frame into data for UDP and then transmit the converted data for UDP to the second core. The data in the Ethernet frame may be data for SOME/IP. In this case, the second core may convert the UDP data received every second period into CAN messages and transmit the converted CAN messages to the CAN controller.

라우팅 지연을 방지하기 위한 다른 예로, 게이트웨이(120a)의 제2코어는 제1코어로부터 수신된 UDP용 데이터를 캔 메시지로 변환하고, 변환한 캔 메시지들 중 미리 정해진 캔 메시지의 전송 주기를 제1주기에서 제2주기로 변환하는 것도 가능하다.As another example for preventing routing delay, the second core of the gateway 120a converts UDP data received from the first core into a CAN message, and sets a transmission cycle of a predetermined CAN message among the converted CAN messages to the first It is also possible to convert from the period to the second period.

게이트웨이(120a)의 제2코어는 캔 제어기에 캔 메시지의 송수신 주기의 변환을 요청을 위한 주기 변환 요청 신호를 전송할 수 있다. 이때 캔 제어기(140a)는 게이트웨이(120a)의 제2코어로부터 주기 변환 요청 신호가 수신되면 캔 메시지의 송수신 주기를 변환하고, 이에 대한 응답 신호를 게이트웨이(120a)의 제2코어에 전송할 수 있다.The second core of the gateway 120a may transmit a cycle change request signal for requesting the CAN controller to change the transmission/reception cycle of the CAN message. In this case, when a cycle change request signal is received from the second core of the gateway 120a, the CAN controller 140a may change the transmission/reception cycle of the CAN message, and transmit a response signal to the CAN message to the second core of the gateway 120a.

게이트웨이(120a)의 제2코어는 주기적으로 수신된 캔 메시지들의 메시지의 값을 각각 확인하고 캔 메시지들의 메시지의 값의 변화 정도를 인식하되 수신된 시간 순으로 메시지의 값의 변화 정도를 인식한다. The second core of the gateway 120a periodically checks the message values of the received CAN messages, and recognizes the degree of change in the message value of the CAN messages, but recognizes the change degree of the message value in the order of received time.

게이트웨이(120a)의 제2코어는 확인한 메시지들의 값들이 변화되는 시간을 확인하고, 확인한 시간에 기초하여 캔 메시지의 주기를 변경하는 것도 가능하다. 여기서 확인되는 메시지의 값들은 동일한 캔 메시지에 대한 메시지의 값들일 수 있다.The second core of the gateway 120a may check the time at which values of the checked messages change, and may change the period of the CAN message based on the checked time. The values of the message checked here may be values of the message for the same CAN message.

예를 들어, 제1캔메시지가 1초마다 수신된다고 하였을 때, 제1캔메시지의 메시지 값이 변화되는 시점이 30초이면, 게이트웨이(120a)의 제2코어는 제1캔메시지의 수신 주기를 1초에서 30초로 변경할 수 있다. For example, assuming that the first CAN message is received every 1 second, if the time point at which the message value of the first CAN message changes is 30 seconds, the second core of the gateway 120a adjusts the reception period of the first CAN message. It can be changed from 1 second to 30 seconds.

제2캔메시지가 2초마다 수신된다고 하였을 때, 제2캔메시지의 메시지 값이 변화되는 시점이 10초이면, 게이트웨이(120a)는 제2캔메시지의 수신 주기를 2초에서 10초로 변경할 수 있다.Assuming that the second CAN message is received every 2 seconds, if the time point at which the message value of the second CAN message changes is 10 seconds, the gateway 120a may change the reception period of the second CAN message from 2 seconds to 10 seconds .

즉 게이트웨이(120a)의 제2코어는 캔 메시지의 메시지 값을 확인하는 학습을 통해 캔 메시지의 주기를 변경할 수 있다. That is, the second core of the gateway 120a may change the cycle of the CAN message through learning to check the message value of the CAN message.

캔 메시지의 주기를 변경의 예를 도 7을 참조하여 설명한다.An example of changing the cycle of the CAN message will be described with reference to FIG. 7 .

게이트웨이(120a)의 제2코어는 시동이 온된 후 10ms마다 송신되는 캔 메시지가 있다고 할 때, 기준 횟수(Threshold Counter)를 20으로 초기화한다.The second core of the gateway 120a initializes the threshold counter to 20 when there is a CAN message transmitted every 10 ms after the startup is turned on.

게이트웨이(120a)의 제2코어는 두 번째 주기에 수신된 캔 메시지의 메시지 값이 첫 번째 주기에 수신된 캔 메시지의 메시지 값과 동일하다고 판단되면 기준 횟수에서 제1일정값(예, 1)만큼 증가시켜 현재 횟수를 획득하고, 두번째 주기에 수신된 캔 메시지의 메시지 값이 첫 번째 주기에 수신된 캔 메시지의 메시지 값과 상이하다고 판단되면 기준 횟수에서 제2일정값(예, 2)만큼 감소시켜 현재 횟수를 획득한다.If the second core of the gateway 120a determines that the message value of the CAN message received in the second period is the same as the message value of the CAN message received in the first period, the second core increment to obtain the current count, and if it is determined that the message value of the CAN message received in the second cycle is different from the message value of the CAN message received in the first cycle, it is decreased by a second predetermined value (eg, 2) from the reference count Get the current count.

여기서 현재 횟수를 획득하는 것은, 기준 횟수의 변화값을 획득하는 것을 포함한다.Here, obtaining the current number includes obtaining a change value of the reference number of times.

게이트웨이(120b)의 제2코어는 세 번째 주기에 수신된 캔 메시지의 메시지 값이 두 번째 주기에 수신된 캔 메시지의 메시지 값과 동일하다고 판단되면 현재 횟수를 제1일정값(예, 1)만큼 증가시켜 새로운 현재 횟수를 획득하고, 세 번째 주기에 수신된 캔 메시지의 메시지 값이 두 번째 주기에 수신된 캔 메시지의 메시지 값과 상이하다고 판단되면 현재 횟수를 제2일정값(예, 2)만큼 감소시켜 새로운 현재 횟수를 획득한다.If the second core of the gateway 120b determines that the message value of the CAN message received in the third cycle is the same as the message value of the CAN message received in the second cycle, the second core increases the current number by a first predetermined value (eg, 1). incremented to obtain a new current count, and if it is determined that the message value of the CAN message received in the third cycle is different from the message value of the CAN message received in the second cycle, the current count is increased by a second predetermined value (eg, 2) Decrease to obtain a new current count.

게이트웨이(120b)의 제2코어는 매 주기마다 이전 주기의 캔 메시지의 메시지 값과 현재 주기의 캔 메시지의 메시지 값의 동일 여부를 판단하여 현재 횟수를 획득하고, 획득한 현재 횟수가 제1설정 횟수이면 캔 메시지의 전송 주기를 제1주기에서 제2주기로 변경하고, 현재 횟수를 기준 횟수로 초기화한다. 게이트웨이(120a)는 현재 주기의 시간보다 더 긴 시간의 주기로 변경한다.The second core of the gateway 120b determines whether the message value of the CAN message of the previous cycle is the same as the message value of the CAN message of the current cycle every cycle to obtain the current number of times, and the acquired current number is the first set number of times The transmission period of the back CAN message is changed from the first period to the second period, and the current number is initialized as the reference number. The gateway 120a changes to a period of time longer than that of the current period.

여기서 제1주기가 10ms라고 가정하면, 제2주기는 20ms일 수 있다.게이트웨이(120b)의 제2코어는 매 주기마다 이전 주기의 캔 메시지의 메시지 값과 현재 주기의 캔 메시지의 메시지 값의 동일 여부를 판단하여 현재 횟수를 획득하고, 획득한 현재 횟수가 제2설정 횟수이면 캔 메시지의 전송 주기를 제1주기에서 제3주기로 변경하고, 현재 횟수를 기준 횟수로 초기화한다. Here, assuming that the first period is 10 ms, the second period may be 20 ms. The second core of the gateway 120b has the same message value of the CAN message of the previous period and the message value of the CAN message of the current period in every period. It is determined whether or not the current number is obtained, and if the obtained current number is the second set number, the transmission period of the CAN message is changed from the first period to the third period, and the current number is initialized to the reference number.

여기서 현재 횟수는, 주기마다 비교된 캔 메시지의 메시지 값이 동일한 횟수이다. 아울러 현재 횟수는, 주기마다 비교된 캔 메시지의 메시지 값이 변화한 횟수일 수도 있다.Here, the current number is the number of times the message value of the CAN message compared for each period is the same. In addition, the current number may be the number of times the message value of the CAN message compared for each period is changed.

게이트웨이(120b)의 제2코어는, 캔 메시지의 전송 주기가 변경되면, 다음 주기부터 수신되는 캔 메시지의 메시지 값의 변화를 다시 파악하기 위해 현재 카운트된 메시지 값의 현재 횟수를 초기화하는 것이다.When the transmission period of the CAN message is changed, the second core of the gateway 120b initializes the current number of currently counted message values in order to recognize the change in the message value of the CAN message received from the next cycle.

아울러 게이트웨이(120b)의 제2코어는 현재 주기가 제3주기일 때, 전송 주기를 제1주기로 변경한다. 즉 게이트웨이(120b)의 제2코어는 현재 주기보다 시간이 더 짧은 주기를 전송 주기로 변경할 수 있다.In addition, the second core of the gateway 120b changes the transmission period to the first period when the current period is the third period. That is, the second core of the gateway 120b may change a period shorter than the current period as a transmission period.

제1설정 횟수는 기준 횟수 및 제2설정 횟수보다 보다 큰 횟수일 수 있다.The first set number of times may be a number greater than the reference number and the second set number.

제2설정 횟수는 기준 횟수 및 제1설정횟수보다 작은 횟수일 수 있다. The second setting number may be a number smaller than the reference number and the first setting number.

예를 들어 제1설정 횟수는 100일 수 있고, 제2설정 횟수는 0일 수 있다.For example, the first setting number may be 100, and the second setting number may be 0.

여기서 제3주기는 제1주기보다 짧은 시간일 수 있다. 예를 들어, 제1주기(최초 설정 주기)가 10ms라고 가정하면, 제3주기는 5ms일 수 있다.Here, the third period may be shorter than the first period. For example, assuming that the first period (the initial setting period) is 10 ms, the third period may be 5 ms.

게이트웨이(120b)의 제2코어는 매 주기마다 이전 주기의 캔 메시지의 메시지 값과 현재 주기의 캔 메시지의 메시지 값의 동일 여부를 판단하고, 주기마다 메시지 값이 동일한 동일 횟수를 획득하고, 획득한 동일 횟수가 일정 횟수이면 캔 메시지의 전송 주기를 현재 주기의 시간보다 더 긴 시간을 가진 주기로 변경할 수 있다. The second core of the gateway 120b determines whether the message value of the CAN message of the previous cycle is the same as the message value of the CAN message of the current cycle for every cycle, and acquires the same number of times that the message value is the same for each cycle If the same number is a certain number of times, the transmission period of the CAN message may be changed to a period having a longer time than that of the current period.

게이트웨이(120b)의 제2코어는 매 주기마다 이전 주기의 캔 메시지의 메시지 값과 현재 주기의 캔 메시지의 메시지 값의 동일 여부를 판단하고, 주기마다 메시지 값이 동일한 동일 횟수를 획득하고, 획득한 동일 횟수가 일정 횟수이면 캔 메시지를 이벤트 메시지로 변경하고 변경된 이벤트 메시지의 전송을 제어할 수도 있다.The second core of the gateway 120b determines whether the message value of the CAN message of the previous cycle is the same as the message value of the CAN message of the current cycle for every cycle, and acquires the same number of times that the message value is the same for each cycle If the same number of times is a certain number of times, the can message may be changed to an event message and transmission of the changed event message may be controlled.

게이트웨이(120b)의 제2코어는 매 주기마다 이전 주기의 캔 메시지의 메시지 값과 현재 주기의 캔 메시지의 메시지 값의 동일 여부를 판단하고 이전 주기의 캔 메시지의 메시지 값과 현재 주기의 캔 메시지의 메시지 값이 동일하다고 판단되면 동일 횟수를 1증가시킨다.The second core of the gateway 120b determines whether the message value of the CAN message of the previous cycle and the message value of the CAN message of the current cycle are the same for each cycle, and determines whether the message value of the CAN message of the previous cycle and the message value of the CAN message of the current cycle is the same. If it is determined that the message values are the same, the same count is incremented by 1.

게이트웨이(120 b)의 제2코어는 이전 주기의 캔 메시지의 메시지 값과 현재 주기의 캔 메시지의 메시지 값이 상이하다고 판단되면 캔 메시지의 전송 주기를 최초 설정 주기로 변경하고, 현재 횟수를 기준 횟수로 초기화하는 것도 가능하다.If the second core of the gateway 120b determines that the message value of the CAN message of the previous cycle and the message value of the CAN message of the current cycle are different, the second core of the gateway 120b changes the transmission cycle of the CAN message to the initial set cycle, and sets the current count as the reference count. Initialization is also possible.

게이트웨이(120b)의 제2코어는 캔 메시지의 송수신 주기의 변환을 요청을 위한 주기 변환 요청 신호를 캔 제어기에 전송한 후, 이더넷 스위치로부터 수신되는 캔 메시지를 제1주기마다 수신하고, 제1주기마다 수신된 캔 메시지를 제2주기마다 캔 제어기에 전송할 수 있다.The second core of the gateway 120b transmits a cycle change request signal to the CAN controller for requesting conversion of the transmission/reception cycle of the CAN message, and then receives the CAN message received from the Ethernet switch at every first cycle, The received CAN message may be transmitted to the CAN controller every second period.

게이트웨이(120b)의 제2코어는 캔 메시지의 송수신 주기의 변환을 요청을 위한 주기 변환 요청 신호를 캔 제어기에 전송한 후, 제1코어로부터 일정 기간 동안 주기적으로 수신되는 캔 메시지들 중 하나를 제2주기마다 캔 제어기에 전송할 수 있다. 예를 들어, 게이트웨이(120 b)의 제2코어는 제1주기로 5번 수신한 캔 메시지를 캔 제어기에 한번 송신할 수 있다. 이때 게이트웨이(120b)의 제2코어는 송신 시퀀스(Sequence)가 인터럽트 컨텍스트(Interrupt context)에서 수행되지 않도록 할 수 있다. 게이트웨이(120b)의 제2코어는 4번의 캔 메시지의 전송을 보류하고 1번의 캔 메시지를 전송한다.The second core of the gateway 120b transmits a cycle change request signal to the CAN controller for requesting conversion of the transmission/reception cycle of the CAN message, and then generates one of CAN messages periodically received from the first core for a certain period of time. It can be sent to the can controller every two cycles. For example, the second core of the gateway 120b may transmit the CAN message received 5 times in the first cycle to the CAN controller once. In this case, the second core of the gateway 120b may prevent a transmission sequence from being performed in an interrupt context. The second core of the gateway 120b suspends transmission of the 4 CAN messages and transmits the 1 CAN message.

라우팅 지연을 방지하기 위한 또 다른 예로, 게이트웨이(120b)의 제2코어는 캔 메시지를 이벤트 메시지로 변환하고 변환한 이벤트 메시지를 캔 제어기(140a)에 전송하는 것도 가능하다. As another example for preventing routing delay, the second core of the gateway 120b may convert the CAN message into an event message and transmit the converted event message to the CAN controller 140a.

게이트웨이(120b)의 제2코어는 캔 메시지의 메시지 값을 확인하는 학습을 통해 캔 메시지의 타입 변경 여부를 결정하는 것도 가능하다.It is also possible for the second core of the gateway 120b to determine whether to change the type of the CAN message through learning to check the message value of the CAN message.

게이트웨이(120b)의 제2코어는 메시지 변환을 요청하기 위한 메시지 변환 요청 신호를 전송할 수 있다. 이때 캔 제어기는 게이트웨이(120b)의 제2코어로부터 메시지 변환 요청 신호가 수신되면 메시지의 타입을 캔 메시지에서 이벤트 메시지로 변환하고 변환한 이벤트 메시지에 기초하여 전자 장치의 기능 및 동작을 제어할 수 있다. 그리고 캔 제어기는 메시지의 타입 변환에 대한 응답 신호를 게이트웨이(120 b)의 제2코어에 전송할 수 있다.The second core of the gateway 120b may transmit a message conversion request signal for requesting message conversion. In this case, when a message conversion request signal is received from the second core of the gateway 120b, the CAN controller converts the message type from the CAN message to the event message, and controls the function and operation of the electronic device based on the converted event message. . In addition, the CAN controller may transmit a response signal to the type conversion of the message to the second core of the gateway 120b.

이벤트 메시지는 온 체인지(On change) 이벤트 메시지일 수 있다.The event message may be an on change event message.

제1코어는 미리 정해진 이더넷 프레임의 전송 주기를 제1주기에서 제2주기로 변경할 수 있다. 즉 제1코어는 제2주기에 기초하여 미리 정해진 이더넷 프레임을 게이트웨이(120b)의 제2코어에 전송할 수 있다.The first core may change the predetermined transmission period of the Ethernet frame from the first period to the second period. That is, the first core may transmit a predetermined Ethernet frame to the second core of the gateway 120b based on the second period.

여기서 제2주기의 시간은 제1주기의 시간 보다 긴 시간일 수 있다. 미리 정해진 이더넷 프레임은 차량 또는 통신 장치의 개발 시에 정해진 것일 수 있다.Here, the time of the second period may be longer than the time of the first period. The predetermined Ethernet frame may be determined when a vehicle or a communication device is developed.

게이트웨이(120b)의 제1코어는 미리 정해진 캔 메시지를 가지는 이더넷 프레임의 전송 주기를 제1주기에서 제2주기로 변경하는 것도 가능하다. 즉 게이트웨이(120b)의 제1코어는 제2주기에 기초하여 미리 정해진 캔 메시지를 가지는 이더넷 프레임을 게이트웨이(120b)의 제2코어에 전송할 수 있다. 여기서 미리 정해진 캔 메시지는 차량 또는 통신 장치의 개발 시에 정해진 것일 수 있다.The first core of the gateway 120b may change the transmission period of the Ethernet frame having a predetermined CAN message from the first period to the second period. That is, the first core of the gateway 120b may transmit an Ethernet frame having a predetermined CAN message to the second core of the gateway 120b based on the second period. Here, the predetermined CAN message may be determined when a vehicle or a communication device is developed.

아울러 게이트웨이(120b)의 제1코어는 게이트웨이(120b)의 제2코어로 송신하는 이더넷 프레임의 수를 감소시킨다.In addition, the first core of the gateway 120b reduces the number of Ethernet frames transmitted to the second core of the gateway 120b.

게이트웨이(120b)의 제1코어는 주기적으로 송신되는 이더넷 프레임을 확인하고, 확인된 이더넷 프레임 중 일정 기간 동안의 이더넷 프레임 중 하나만을 게이트웨이(120b)의 제2코어에 전송할 수 있다.The first core of the gateway 120b may check the periodically transmitted Ethernet frame and transmit only one of the checked Ethernet frames for a certain period of time to the second core of the gateway 120b.

예를 들어, 제1이더넷 프레임이 제1초 간격으로 송신될 경우, 1분 동안 송신할 60개의 제1이더넷 프레임 중 하나만을 게이트웨이(120b)의 제2코어에 전송한다. 이를 통해 인터럽트의 수를 줄임으로써 라우팅 지연을 방지할 수 있다.For example, when the first Ethernet frame is transmitted at an interval of 1 second, only one of 60 first Ethernet frames to be transmitted for 1 minute is transmitted to the second core of the gateway 120b. Through this, routing delay can be prevented by reducing the number of interrupts.

일정 기간은, 전송할 이더넷 프레임 내의 데이터가 변화하지 않은 시간을 포함할 수 있다. 이는 실험에 의해 획득된 시간일 수 있다.The predetermined period may include a time in which data in an Ethernet frame to be transmitted does not change. This may be a time obtained by experimentation.

이더넷 프레임의 수를 줄이는 것은, 캔 메시지의 수를 줄이는 것을 포함할 수 있다. Reducing the number of Ethernet frames may include reducing the number of CAN messages.

라우팅 지연 방지 수행 및 그 효과에 대한 구성을 예를 들어 설명하면, AEB(Automatic Emergency Braking)는 카메라 또는 레이더 센서를 통해 감지한 차간 거리를 통해 Brake와 Engine Throttle을 제어하는 로직으로, 이 기능은 차량의 속도가 높아질 수록 빠른 반응이 필요하다.Taking the configuration of routing delay prevention and its effect as an example, AEB (Automatic Emergency Braking) is a logic that controls the brake and engine throttle through the inter-vehicle distance detected through a camera or radar sensor. The higher the speed, the faster the reaction is required.

따라서 차량 속도에 따라 라우팅 되는 캔 메시지 또는 이더넷 프레임 의 주기를 조정하거나 이벤트 메시지로 전환함으로써 이더넷 제어기에서 캔 제어기로 라우팅되는 메시지의 Latency를 감소시킬 수 있다.Therefore, the latency of messages routed from the Ethernet controller to the CAN controller can be reduced by adjusting the cycle of the CAN message or Ethernet frame routed according to the vehicle speed or converting it to an event message.

한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.Meanwhile, the disclosed embodiments may be implemented in the form of a recording medium storing instructions executable by a computer. Instructions may be stored in the form of program code, and when executed by a processor, may create a program module to perform the 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), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. The computer-readable recording medium includes any type of recording medium in which instructions readable by the computer are stored. For example, there may be a read only memory (ROM), a random access memory (RAM), a magnetic tape, a magnetic disk, a flash memory, an optical data storage device, and the like.

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

1: 차량 120: 통신 장치
130: 메인 제어기 131: 저장부
140: 제어 그룹부 150: 부하부
1: vehicle 120: communication device
130: main controller 131: storage
140: control group unit 150: load unit

Claims (23)

적어도 하나의 부하의 동작을 제어하고 상기 적어도 하나의 부하와 통신을 수행하는 이더넷 제어기;
캔 통신을 수행하고, 다른 부하를 제어하는 캔 제어기;
상기 이더넷 제어기와의 사이에서 데이터를 송수신하는 이더넷 스위치;
상기 캔 제어기와의 사이에서 캔 메시지를 송수신하고, 상기 이더넷 제어기의 데이터가 수신되면 수신된 데이터를 캔 메시지로 변환하고 변환된 캔 메시지를 상기 캔 제어기에 전송하고, 상기 캔 메시지가 주기적으로 전송되는 캔 메시지이면, 주기마다 캔 메시지의 메시지 값을 확인하고 상기 이전 주기와 현재 주기의 메시지 값이 상이하면 상기 캔 메시지의 메시지 값을 현재 주기의 캔 메시지의 메시지 값으로 변경하고, 캔 메시지 값이 변경된 캔 메시지를 캔 제어기에 전송하는 게이트웨이를 포함하는 통신 장치.
an Ethernet controller controlling the operation of at least one load and communicating with the at least one load;
a can controller for performing can communication and controlling other loads;
an Ethernet switch for transmitting and receiving data to and from the Ethernet controller;
A CAN message is transmitted and received with the CAN controller, and when data of the Ethernet controller is received, the received data is converted into a CAN message, the converted CAN message is transmitted to the CAN controller, and the CAN message is periodically transmitted. In the case of a CAN message, the message value of the CAN message is checked for each cycle. If the message value of the previous cycle and the current cycle is different, the message value of the CAN message is changed to the message value of the CAN message of the current cycle, and the CAN message value is changed. A communication device comprising a gateway for sending a can message to a can controller.
제1항에 있어서, 상기 이더넷 제어기는,
상기 이더넷 스위치와 스케일러블 서비스 지향적 미들웨어 오버 이더넷/인터넷 프로토콜(SOME/IP)을 이용하여 통신을 수행하는 통신 장치.
According to claim 1, wherein the Ethernet controller,
A communication device for performing communication using the Ethernet switch and scalable service-oriented middleware over Ethernet/Internet Protocol (SOME/IP).
제2항에 있어서,
상기 이더넷 제어기는, 상기 이더넷 스위치에 SOME/IP용 데이터를 전송하고,
상기 SOME/IP용 데이터는, 상기 캔 메시지를 포함하는 통신 장치.
3. The method of claim 2,
The Ethernet controller transmits data for SOME/IP to the Ethernet switch,
The data for SOME/IP includes the CAN message.
제3항에 있어서, 상기 게이트웨이는,
상기 이더넷 스위치와 연결되는 제1코어와, 상기 캔 제어기와 연결되는 제2코어를 포함하고,
상기 제1코어는, 상기 SOME/IP용 데이터를 유저 데이터그램 프로토콜(UDP)용 데이터로 변환하고 상기 변환한 UDP용 데이터를 상기 제2코어에 전송하고,
상기 제2코어로부터 상기 UDP용 데이터가 수신되면 수신된 UDP용 데이터를 상기 SOME/IP용 데이터로 변환하고 상기 변환한 SOME/IP용 데이터를 상기 이더넷 제어기에 전송하는 통신 장치.
The method of claim 3, wherein the gateway,
A first core connected to the Ethernet switch and a second core connected to the CAN controller,
The first core converts the SOME/IP data into user datagram protocol (UDP) data and transmits the converted UDP data to the second core,
When the UDP data is received from the second core, the communication device converts the received UDP data into the SOME/IP data and transmits the converted SOME/IP data to the Ethernet controller.
제4항에 있어서, 상기 제2코어는,상기 UDP용 데이터를 복수 개의 캔 메시지로 분할하고 상기 복수 개의 캔 메시지 중에 적어도 하나를 상기 캔 제어기에 전송하고,
상기 캔 제어기로부터 캔 메시지가 수신되면 상기 수신된 캔 메시지를 UDP용 데이터로 변환하고 상기 변환한 UDP용 데이터를 상기 제1코어에 전송하는 통신 장치.
The method of claim 4, wherein the second core divides the UDP data into a plurality of CAN messages and transmits at least one of the plurality of CAN messages to the CAN controller,
When a CAN message is received from the CAN controller, the communication device converts the received CAN message into UDP data and transmits the converted UDP data to the first core.
제1항에 있어서, 상기 게이트웨이는,
상기 주기적으로 수신되는 캔 메시지에 대한 메시지 값들의 변화를 주기마다 확인하고, 상기 주기마다 확인된 캔 메시지의 메시지 값들이 일정 횟수 동안 유지되었다고 판단되면 상기 캔 메시지의 주기에 대한 시간을 현재 시간보다 긴 시간으로 변경하는통신 장치.
According to claim 1, wherein the gateway,
Changes in message values for the periodically received CAN message are checked every cycle, and when it is determined that the message values of the CAN message checked for each cycle are maintained for a predetermined number of times, the time for the CAN message cycle is longer than the current time. A communication device that changes with time.
제1항에 있어서, 상기 게이트웨이는,
상기 주기적으로 수신되는 캔 메시지에 대한 메시지 값들의 변화를 주기마다 확인하고, 상기 주기마다 확인된 캔 메시지의 메시지 값들이 일정 횟수 동안 유지되었다고 판단되면 상기 캔 메시지를 이벤트 메시지로 변경하고 상기 변경된 이벤트 메시지를 상기 캔 제어기에 전송하는 통신 장치.
According to claim 1, wherein the gateway,
Changes in message values for the periodically received CAN message are checked at each cycle, and when it is determined that the message values of the CAN message checked for each cycle are maintained for a predetermined number of times, the CAN message is changed to an event message and the changed event message A communication device for transmitting to the can controller.
제7항에 있어서, 상기 게이트웨이는,
상기 주기적으로 수신되는 캔 메시지에 대한 이벤트 메시지로의 변경을 요청하는 메시지 타입 변경 요청 신호를 상기 캔 제어기에 전송하는 통신 장치.
The method of claim 7, wherein the gateway,
A communication device for transmitting a message type change request signal for requesting a change of the periodically received CAN message to an event message to the CAN controller.
제1항에 있어서, 상기 게이트웨이는,
상기 주기마다 캔 메시지의 메시지 값을 확인하고, 상기 이전 주기와 현재 주기의 메시지 값의 동일 여부를 판단하여 기준 횟수의 변화값을 획득하고, 상기 획득한 변화값이 제1설정 횟수이면 상기 캔 메시지의 전송 주기를 현재 주기보다 시간이 더 긴 주기로 변경하고, 상기 획득한 변화값이 제2설정 횟수이면 상기 캔 메시지의 전송 주기를 현재 주기보다 시간이 더 짧은 주기로 변경하는 통신 장치.
According to claim 1, wherein the gateway,
Check the message value of the CAN message for each period, determine whether the message value of the previous period and the current period are the same to obtain a change value of the reference number of times, and if the obtained change value is the first set number of times, the CAN message A communication device for changing a transmission period of , to a period longer than the current period, and changing the transmission period of the CAN message to a period shorter than the current period when the obtained change value is a second set number of times.
제9항에 있어서, 상기 게이트웨이는,
상기 이전 주기와 현재 주기의 메시지 값이 동일하면 기준 횟수에서 제1일정값을 증가시켜 상기 기준 횟수의 변화값을 획득하고, 상기 이전 주기와 현재 주기의 메시지 값이 상이하면 상기 기준 횟수에서 제2일정값을 감소시켜 상기 기준 횟수의 변화값을 획득하는 통신 장치.
10. The method of claim 9, wherein the gateway,
If the message value of the previous period and the current period is the same, a first constant value is increased from the reference number to obtain a change value of the reference number. A communication device for obtaining a change value of the reference number by decreasing a predetermined value.
제1항에 있어서, 상기 게이트웨이는,
상기 이전 주기와 현재 주기의 캔 메시지의 메시지 값이 동일하면 상기 캔 메시지의 메시지 값을 유지시키는 통신 장치.
According to claim 1, wherein the gateway,
If the message value of the CAN message of the previous period and the current period is the same, the communication device maintains the message value of the CAN message.
제1항에 있어서, 상기 게이트웨이는,
상기 이전 주기와 현재 주기의 메시지 값이 동일하면 현재 주기의 캔 메시지 값의 전송을 보류하는 통신 장치.
According to claim 1, wherein the gateway,
A communication device for suspending transmission of the CAN message value of the current period when the message values of the previous period and the current period are the same.
적어도 하나의 부하의 동작을 제어하고 상기 적어도 하나의 부하와 통신을 수행하는 이더넷 제어기;
캔 통신을 수행하고, 다른 부하를 제어하는 캔 제어기;
상기 이더넷 제어기와의 사이에서 데이터를 송수신하는 이더넷 스위치;
상기 캔 제어기와의 사이에서 캔 메시지를 송수신하고, 상기 이더넷 스위치로부터 데이터가 수신되면 수신된 데이터를 캔 메시지로 변환하고 상기 변환한 캔 메시지가 미리 설정된 캔 메시지이면 상기 미리 정해진 캔 메시지가 미리 설정된 횟수만큼 수신되었을 때 상기 미리 설정된 횟수만큼 수신한 캔 메시지들 중 어느 하나를 상기 캔 제어기에 전송하는 게이트웨이를 포함하는 통신 장치.
an Ethernet controller controlling the operation of at least one load and communicating with the at least one load;
a can controller for performing can communication and controlling other loads;
an Ethernet switch for transmitting and receiving data to and from the Ethernet controller;
A CAN message is transmitted and received with the CAN controller, and when data is received from the Ethernet switch, the received data is converted into a CAN message. If the converted CAN message is a preset CAN message, the predetermined CAN message is set a preset number of times. and a gateway for transmitting any one of the CAN messages received the preset number of times to the CAN controller when the number of CAN messages is received.
제13항에 있어서,
상기 이더넷 제어기는, 상기 이더넷 스위치와 스케일러블 서비스 지향적 미들웨어 오버 이더넷/인터넷 프로토콜(SOME/IP)을 이용하여 통신을 수행하고, 상기 이더넷 스위치에 SOME/IP용 데이터를 전송하고,
상기 SOME/IP용 데이터는, 상기 캔 메시지를 포함하는 통신 장치.
14. The method of claim 13,
The Ethernet controller performs communication with the Ethernet switch using a scalable service-oriented middleware over Ethernet/Internet protocol (SOME/IP), and transmits data for SOME/IP to the Ethernet switch,
The data for SOME/IP includes the CAN message.
제14항에 있어서, 상기 게이트웨이는,
상기 이더넷 스위치와 연결되는 제1코어와, 상기 캔 제어기와 연결되는 제2코어를 포함하고,
상기 제1코어는, 상기 SOME/IP용 데이터를 유저 데이터그램 프로토콜(UDP)용 데이터로 변환하고 상기 변환한 UDP용 데이터를 상기 제2코어에 전송하고,
상기 제2코어로부터 상기 UDP용 데이터가 수신되면 수신된 UDP용 데이터를 상기 SOME/IP용 데이터로 변환하고 상기 변환한 SOME/IP용 데이터를 상기 이더넷 제어기에 전송하는 통신 장치.
15. The method of claim 14, wherein the gateway,
A first core connected to the Ethernet switch and a second core connected to the CAN controller,
The first core converts the SOME/IP data into user datagram protocol (UDP) data and transmits the converted UDP data to the second core,
When the UDP data is received from the second core, the communication device converts the received UDP data into the SOME/IP data and transmits the converted SOME/IP data to the Ethernet controller.
제15항에 있어서, 상기 제2코어는,
상기 UDP용 데이터를 복수 개의 캔 메시지로 분할하고 상기 복수 개의 캔 메시지 중에 적어도 하나를 상기 캔 제어기에 전송하고,
상기 캔 제어기로부터 캔 메시지가 수신되면 상기 수신된 캔 메시지를 UDP용 데이터로 변환하고 상기 변환한 UDP용 데이터를 상기 제1코어에 전송하는 통신 장치.
The method of claim 15, wherein the second core,
dividing the UDP data into a plurality of CAN messages and transmitting at least one of the plurality of CAN messages to the CAN controller;
When a CAN message is received from the CAN controller, the communication device converts the received CAN message into UDP data and transmits the converted UDP data to the first core.
복수 개의 제1 전자 장치의 동작을 각각 제어하고 스케일러블 서비스 지향적 미들웨어 오버 이더넷/인터넷 프로토콜(SOME/IP)을 이용하여 통신을 수행하는 복수 개의 이더넷 제어기;
상기 복수 개의 이더넷 제어기 간의 통신 경로를 생성하고 상기 생성된 경로에 기초하여 상기 복수 개의 이더넷 제어기 사이에서 통신을 제어하는 이더넷 스위치;
복수 개의 제2 전자 장치의 동작을 각각 제어하고 캔 통신을 수행하는 복수 개의 캔 제어기; 및
상기 복수 개의 캔 제어기와 캔 통신을 제어하고 상기 이더넷 스위치와 통신을 제어하며, 상기 이더넷 스위치로부터 데이터가 수신되면 수신된 데이터를 캔 메시지로 변환하고 변환한 캔 메시지를 상기 캔 제어기에 전송하고, 라우팅 지연이 발생한다고 판단되면 상기 캔 메시지가 주기적으로 전송되는 캔 메시지인지 판단하고, 상기 캔 메시지가 주기적으로 전송되는 캔 메시지라고 판단되면 상기 캔 메시지의 전송 주기를 변경하고 변경된 전송 주기에 기초하여 상기 캔 메시지를 상기 캔 제어기에 전송하는 게이트웨이를 포함하는 차량.
a plurality of Ethernet controllers each controlling operations of a plurality of first electronic devices and performing communication using a scalable service-oriented middleware over Ethernet/Internet protocol (SOME/IP);
an Ethernet switch for creating a communication path between the plurality of Ethernet controllers and controlling communication between the plurality of Ethernet controllers based on the generated path;
a plurality of CAN controllers each controlling operations of a plurality of second electronic devices and performing CAN communication; and
Controls CAN communication with the plurality of CAN controllers and controls communication with the Ethernet switch, when data is received from the Ethernet switch, converts the received data into CAN messages and transmits the converted CAN message to the CAN controller, routing If it is determined that a delay occurs, it is determined whether the CAN message is a periodically transmitted CAN message. If it is determined that the CAN message is a periodically transmitted CAN message, the transmission period of the CAN message is changed and the CAN message is transmitted based on the changed transmission period. A vehicle comprising a gateway for sending a message to the CAN controller.
제 17 항에 있어서,
상기 이더넷 제어기는, 상기 이더넷 스위치에 SOME/IP용 데이터를 전송하고,
상기 SOME/IP용 데이터는, 상기 캔 메시지를 포함하는 차량.
18. The method of claim 17,
The Ethernet controller transmits data for SOME/IP to the Ethernet switch,
The data for SOME/IP includes the CAN message.
제18항에 있어서,
상기 게이트웨이의 제1코어는, 상기 SOME/IP용 데이터를 유저 데이터그램 프로토콜(UDP)용 데이터로 변환하고 상기 변환한 UDP용 데이터를 상기 게이트웨이의 제2코어에 전송하고, 상기 제2코어로부터 상기 UDP용 데이터가 수신되면 수신된 UDP용 데이터를 상기 SOME/IP용 데이터로 변환하고 상기 변환한 SOME/IP용 데이터를 상기 이더넷 제어기에 전송하는 차량.
19. The method of claim 18,
The first core of the gateway converts the SOME/IP data into user datagram protocol (UDP) data, and transmits the converted UDP data to a second core of the gateway, and from the second core When UDP data is received, the vehicle converts the received UDP data into the SOME/IP data and transmits the converted SOME/IP data to the Ethernet controller.
제19항에 있어서, 상기 게이트웨이의 제2코어는,
상기 UDP용 데이터를 복수 개의 캔 메시지로 분할하고 상기 복수 개의 캔 메시지 중에 적어도 하나를 상기 캔 제어기에 전송하고,
상기 캔 제어기로부터 캔 메시지가 수신되면 상기 수신된 캔 메시지를 UDP용 데이터로 변환하고 상기 변환한 UDP용 데이터를 상기 제1코어에 전송하는 차량.
The method of claim 19, wherein the second core of the gateway,
dividing the UDP data into a plurality of CAN messages and transmitting at least one of the plurality of CAN messages to the CAN controller;
When a CAN message is received from the CAN controller, the vehicle converts the received CAN message into data for UDP and transmits the converted data for UDP to the first core.
제17항에 있어서,
상기 캔 메시지가 주기적으로 전송되는 캔 메시지는, 미리 정해진 캔 메시지를 포함하고,
상기 게이트웨이는, 상기 캔 메시지가 상기 미리 정해진 캔 메시지이면 상기 미리 정해진 캔 메시지의 수신 횟수를 확인하고, 상기 확인한 수신 횟수가 미리 설정된 횟수이면 미리 설정된 횟수만큼 수신한 캔 메시지들 중 어느 하나를 상기 캔 제어기에 전송하는 차량.
18. The method of claim 17,
The CAN message to which the CAN message is periodically transmitted includes a predetermined CAN message,
If the CAN message is the predetermined CAN message, the gateway checks the number of reception of the predetermined CAN message, and if the checked number of reception is the preset number, selects any one of the CAN messages received the predetermined number of times as the CAN message. The vehicle that transmits to the controller.
제17항에 있어서,
상기 캔 메시지가 주기적으로 전송되는 캔 메시지는, 미리 정해진 캔 메시지를 포함하고,
상기 게이트웨이는, 상기 미리 정해진 캔 메시지를 이벤트 메시지로 변환하고 상기 변환한 이벤트 메시지를 상기 캔 제어기에 전송하는 차량.
18. The method of claim 17,
The CAN message to which the CAN message is periodically transmitted includes a predetermined CAN message,
The gateway converts the predetermined CAN message into an event message and transmits the converted event message to the CAN controller.
제17항에 있어서, 상기 게이트웨이는,
상기 주기마다 캔 메시지의 메시지 값을 확인하고, 상기 이전 주기와 현재 주기의 메시지 값의 동일 여부를 판단하여 기준 횟수의 변화값을 획득하고, 상기 획득한 변화값이 제1설정 횟수이면 상기 캔 메시지의 전송 주기를 현재 주기보다 시간이 더 긴 주기로 변경하고, 상기 획득한 변화값이 제2설정 횟수이면 상기 캔 메시지의 전송 주기를 현재 주기보다 시간이 더 짧은 주기로 변경하는 차량.
The method of claim 17, wherein the gateway,
Check the message value of the CAN message for each period, determine whether the message value of the previous period and the current period are the same to obtain a change value of the reference number of times, and if the obtained change value is the first set number of times, the CAN message A vehicle configured to change a transmission period of the CAN message to a period longer than the current period, and change the transmission period of the CAN message to a period shorter than the current period if the obtained change value is a second set number of times.
KR1020200096280A 2020-07-31 2020-07-31 Communication Device and Vehicle having the same KR20220015785A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200096280A KR20220015785A (en) 2020-07-31 2020-07-31 Communication Device and Vehicle having the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200096280A KR20220015785A (en) 2020-07-31 2020-07-31 Communication Device and Vehicle having the same

Publications (1)

Publication Number Publication Date
KR20220015785A true KR20220015785A (en) 2022-02-08

Family

ID=80251853

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200096280A KR20220015785A (en) 2020-07-31 2020-07-31 Communication Device and Vehicle having the same

Country Status (1)

Country Link
KR (1) KR20220015785A (en)

Similar Documents

Publication Publication Date Title
US10284387B2 (en) Hybrid intra-vehicle communication network
US20200293041A1 (en) Method and system for executing a composite behavior policy for an autonomous vehicle
US9806910B2 (en) Gateway device, vehicle including the same, and control method for the same
US9749147B2 (en) Ethernet AVB for time-sensitive networks
KR102381758B1 (en) Head unit of vehicle, vehicle having the same and control method for the vehicle
US11765016B2 (en) Diagnostic system and vehicle
JP2019508321A (en) Method of establishing a connection of a device to a head unit of a motor vehicle, and a head unit and system therefor
KR102464430B1 (en) Control method of electronic device in vehicle and vehicle having the same
GB2557446A (en) Autonomous vehicle ingress and egress
US20200235950A1 (en) Communication device, vehicle having the same and method for controlling the same
EP3044980B1 (en) Communication system
KR20110024216A (en) Can communication network system and method for changing priority of can message
US8255109B2 (en) Relay connection unit and vehicle-mounted communication system
KR20220015785A (en) Communication Device and Vehicle having the same
KR102486151B1 (en) Communication Device, Vehicle having the same and method for controlling the same
US20190206241A1 (en) Concept for detecting the surroundings of a motor vehicle
JP2021132301A (en) Communication device, communication system, wireless base station, communication control method, and program
US20220159075A1 (en) Method, computer program and apparatus for invoking a tele-operated driving session
JP5239633B2 (en) In-vehicle image data transfer device
JP2021132300A (en) Communication control device, communication device, communication system, wireless base station, communication control method, and program
EP4366248A1 (en) Signal processing device and vehicle communication device comprising same
KR100946486B1 (en) Network gateway for a vehicle
US20230388147A1 (en) Communication network system and method of operating same
US20240053744A1 (en) Methods, Computer Programs and Apparatus for Performing a Teleoperated Driving Session
US11599281B2 (en) Data processing apparatus and vehicle having the same