KR20220076961A - Master controller of vehicle, slave controller of vehicle, and task scehduling message sending mehotd thereof - Google Patents

Master controller of vehicle, slave controller of vehicle, and task scehduling message sending mehotd thereof Download PDF

Info

Publication number
KR20220076961A
KR20220076961A KR1020200165977A KR20200165977A KR20220076961A KR 20220076961 A KR20220076961 A KR 20220076961A KR 1020200165977 A KR1020200165977 A KR 1020200165977A KR 20200165977 A KR20200165977 A KR 20200165977A KR 20220076961 A KR20220076961 A KR 20220076961A
Authority
KR
South Korea
Prior art keywords
task
vehicle
scheduling
message
scheduling information
Prior art date
Application number
KR1020200165977A
Other languages
Korean (ko)
Other versions
KR102485286B1 (en
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 KR1020200165977A priority Critical patent/KR102485286B1/en
Publication of KR20220076961A publication Critical patent/KR20220076961A/en
Application granted granted Critical
Publication of KR102485286B1 publication Critical patent/KR102485286B1/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
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

본 발명의 바람직한 실시예에 따른 차량용 마스터 제어기는, 복수의 슬레이브 제어기 각각의 태스크 수행과 관련한 스케줄링 정보를 포함하는 스케줄 테이블이 저장되는 테이블 저장부, 상기 스케줄 테이블의 스케줄링 정보가 포함되도록 스케줄링 캔 메시지를 생성하는 메시지 생성부, 및 상기 스케줄링 캔 메시지를 상기 복수의 슬레이브 제어기로 전송하는 송수신부를 포함한다.The master controller for a vehicle according to a preferred embodiment of the present invention includes a table storage in which a schedule table including scheduling information related to task performance of each of a plurality of slave controllers is stored, and a scheduling can message to include the scheduling information of the schedule table. and a message generator for generating the message, and a transceiver for transmitting the scheduling CAN message to the plurality of slave controllers.

Description

차량용 마스터 제어기, 차량용 슬레이브 제어기, 및 차량용 슬레이브 제어기의 태스크 수행 방법{MASTER CONTROLLER OF VEHICLE, SLAVE CONTROLLER OF VEHICLE, AND TASK SCEHDULING MESSAGE SENDING MEHOTD THEREOF}A master controller for a vehicle, a slave controller for a vehicle, and a method for performing tasks of a vehicle slave controller

본 발명은 차량용 마스터 제어기, 차량용 슬레이브 제어기, 및 차량용 슬레이브 제어기의 태스크 수행 방법에 관한 것이다.The present invention relates to a vehicle master controller, a vehicle slave controller, and a method of performing a task of the vehicle slave controller.

최근 차량에는 다양한 종류의 전자 시스템이 탑재되며 해당하는 전자 시스템의 제어를 위한 복수의 제어기가 탑재되고 있다. 복수의 차량용 제어기는 차량의 통신 시스템을 통해 서로 연결되며, 서로의 정보를 공유함으로써 차량의 다양한 기능이 수행되도록 하고 있다.Recently, various types of electronic systems are mounted on vehicles, and a plurality of controllers for controlling the corresponding electronic systems are mounted. A plurality of vehicle controllers are connected to each other through a vehicle communication system, and various functions of the vehicle are performed by sharing information with each other.

이러한 차량용 제어기는 운영체제(OS: Operating system) 내부의 태스크(Task)를 수행하는 경우, 캔 버스(CAN Bus)에 연결되는 다른 제어기들과의 동기화를 위한 스케줄링 기술이 필수적으로 요구되고 있다.When such a vehicle controller performs a task inside an operating system (OS), a scheduling technology for synchronization with other controllers connected to a CAN bus is essential.

한편, 최근에는 복잡도가 증가한 첨단 운전자 지원 시스템(ADAS: Advanced Driver Assistance Systems) 등의 다양한 전자 제어 시스템이 차량에 적용되고 있다.Meanwhile, various electronic control systems, such as advanced driver assistance systems (ADAS), which have increased in complexity, have recently been applied to vehicles.

이러한 전자 제어 시스템용 애플리케이션의 태스크 수행을 위해서는, 단일 차량용 제어기만으로 한계가 있어 복수의 제어기의 연동이 요구된다.In order to perform the task of such an application for an electronic control system, there is a limit to only a single vehicle controller, and interlocking of a plurality of controllers is required.

복수의 제어기의 연동을 위해서는, 태스크 수행 시간 관련한 스케줄링 알고리즘을 복수의 제어기 각각에 구현하는 기술의 필요성이 요구된다.For interworking of a plurality of controllers, a technique for implementing a scheduling algorithm related to task execution time to each of the plurality of controllers is required.

현재 스케줄링 알고리즘을 구현하는 기술이 여러 방안으로 제시되어 있는데, 여러 방안 중에서 복수의 제어기 간 동기화를 구현하는 별도의 소프트웨어를 제작하는 방안의 경우, 소프트웨어의 동작에 대한 신뢰성 확보, 및 OS의 추가가 더욱 요구되고, 이로 인해 비용과 개발 난이도가 증가하는 문제가 있으며, 이에 따라 상기한 방안이 산업 표준화로 정의되지 못하는 실정이다.Currently, a technique for implementing a scheduling algorithm has been proposed in several ways. Among the various methods, in the case of a method of manufacturing separate software that implements synchronization between a plurality of controllers, it is more important to secure reliability of the operation of the software and add an OS. It is required, and there is a problem in that cost and development difficulty increase. Accordingly, the above-described method cannot be defined as industrial standardization.

대한민국 공개특허 제2020-0056838호Republic of Korea Patent Publication No. 2020-0056838

이에 본 발명은 상기한 사정을 감안하여 안출된 것으로, 차량용 캔 통신을 이용하여 복수의 제어기 사이의 태스크 스케줄링 알고리즘을 구현하는 차량용 마스터 제어기, 차량용 슬레이브 제어기, 및 차량용 슬레이브 제어기의 태스크 수행 방법을 제공하는 것을 목적으로 한다.Accordingly, the present invention has been devised in view of the above circumstances, and it provides a method for performing tasks of a vehicle master controller, a vehicle slave controller, and a vehicle slave controller that implements a task scheduling algorithm between a plurality of controllers using vehicle CAN communication. aim to

상기 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 차량용 마스터 제어기는, 복수의 슬레이브 제어기 각각의 태스크 수행과 관련한 스케줄링 정보를 포함하는 스케줄 테이블이 저장되는 테이블 저장부; 상기 스케줄 테이블의 스케줄링 정보가 포함되도록 스케줄링 캔 메시지를 생성하는 메시지 생성부; 및 상기 스케줄링 캔 메시지를 상기 복수의 슬레이브 제어기로 전송하는 송수신부;를 포함한다.In accordance with a preferred embodiment of the present invention for achieving the above object, there is provided a vehicle master controller, comprising: a table storage unit for storing a schedule table including scheduling information related to task performance of each of a plurality of slave controllers; a message generator for generating a scheduling CAN message to include the scheduling information of the schedule table; and a transceiver configured to transmit the scheduling CAN message to the plurality of slave controllers.

상기 스케줄링 캔 메시지는, 상기 스케줄링 캔 메시지에 대응하는 메시지 ID가 입력되는 아이덴티파이어 필드와 상기 스케줄링 정보가 입력되는 데이터 필드를 포함하는 데이터 프레임으로 구성될 수 있다.The scheduling CAN message may include a data frame including an identifier field in which a message ID corresponding to the scheduling CAN message is input and a data field in which the scheduling information is input.

상기 데이터 필드는 1 바이트를 기준으로 구분되어 복수의 서브 데이터 필드를 포함하고, 상기 복수의 서브 데이터 필드 각각에 상기 스케줄링 정보가 입력될 수 있다.The data field may be divided on the basis of one byte to include a plurality of sub data fields, and the scheduling information may be input to each of the plurality of sub data fields.

상기 스케줄링 정보는, 상기 태스크를 수행할 슬레이브 제어기에 대한 ID를 나타내는 ECU ID, 상기 태스크를 식별 가능한 TASK ID, 상기 태스크의 우선순위를 나타내는 TASK Priority, 상기 태스크의 시작 시간에 대한 오프셋 타임을 지정할 테이블 인덱스 값을 나타내는 TASK Start Offset Time Table Index, 상기 태스크의 듀레이션을 설정할 테이블 인덱스 값을 나타내는 TASK Duration Table Index, 및 상기 태스크의 기능을 설정할 테이블 인덱스 값을 나타내는 TASK Function Table Index를 포함할 수 있다.The scheduling information includes an ECU ID indicating an ID for a slave controller to perform the task, a TASK ID capable of identifying the task, TASK Priority indicating the priority of the task, and a table to designate an offset time for the start time of the task It may include a TASK Start Offset Time Table Index indicating an index value, a TASK Duration Table Index indicating a table index value for setting the duration of the task, and a TASK Function Table Index indicating a table index value for setting the function of the task.

상기 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 차량용 슬레이브 제어기는, 마스터 제어기로부터 스케줄링 정보가 포함된 스케줄링 캔 메시지를 수신하고, 상기 스케줄링 정보에 따라 태스크를 수행하며, 상기 스케줄링 정보에서 참조하는 테이블 밸류를 포함하는 참조 테이블이 저장되는 것을 특징으로 한다.In order to achieve the above object, a vehicle slave controller according to a preferred embodiment of the present invention receives a scheduling CAN message including scheduling information from a master controller, performs a task according to the scheduling information, and refers to the scheduling information. It is characterized in that a reference table including table values is stored.

상기 테이블 밸류는 오프셋 시간, 태스크의 기능, 및 듀레이션을 포함할 수 있다.The table value may include an offset time, a function of a task, and a duration.

태스크의 동작 주기 변경 요청이 있는 경우, 동작 주기 변경 요청이 있는 태스크에 대한 상기 테이블 밸류의 오프셋 시간과 듀레이션을 변경할 수 있다.When there is a request to change the operation period of the task, the offset time and duration of the table value for the task for which the operation period change request is made may be changed.

상기 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 차량용 슬레이브 제어기의 태스크 수행 방법은, 마스터 제어기로 스케줄링 정보를 요청하는 스케줄링 정보 요청 단계; 상기 마스터 제어기로부터 상기 스케줄링 정보가 포함된 스케줄링 캔 메시지를 수신하는 수신 단계; 및 상기 스케줄링 정보에 따라 태스크를 수행하는 태스크 수행 단계;를 포함한다.In order to achieve the above object, a method of performing a task of a vehicle slave controller according to a preferred embodiment of the present invention includes: a scheduling information requesting step of requesting scheduling information to a master controller; a receiving step of receiving a scheduling CAN message including the scheduling information from the master controller; and a task performing step of performing a task according to the scheduling information.

상기 태스크의 동작 주기 변경이 필요한지 판단하는 동작 주기 판단 단계를 더 포함할 수 있다.The method may further include an operation period determining step of determining whether an operation period change of the task is necessary.

상기 태스크의 동작 주기의 변경이 필요하면, 미리 마련된 참조 테이블의 테이블 밸류를 변경하는 밸류 변경 단계를 더 포함할 수 있다.If it is necessary to change the operation period of the task, the method may further include a value changing step of changing a table value of a pre-prepared reference table.

상기 밸류 변경 단계는, 상기 태스크의 동작 주기와 관련한 상기 테이블 밸류의 오프셋 시간과 듀레이션을 변경할 수 있다.The value changing step may change an offset time and duration of the table value related to an operation period of the task.

본 발명의 바람직한 실시예에 따른 차량용 마스터 제어기, 차량용 슬레이브 제어기, 및 차량용 슬레이브 제어기의 태스크 수행 방법에 의하면, 차량용 캔 통신을 통해 태스크 스케줄링 정보가 포함된 스케줄링 캔 메시지를 전송함으로써, 복수의 제어기 사이의 태스크 스케줄링 알고리즘을 구현할 수 있다.According to the method for performing tasks of the vehicle master controller, the vehicle slave controller, and the vehicle slave controller according to a preferred embodiment of the present invention, by transmitting a scheduling CAN message including task scheduling information through the vehicle CAN communication, the A task scheduling algorithm can be implemented.

또한, 태스크 스케줄링 알고리즘을 구현하는 별도의 소프트웨어의 개발 및 적용이 요구되지 않아 이로 인한 비용 증가가 방지되는 효과가 있다.In addition, since the development and application of separate software for implementing the task scheduling algorithm is not required, an increase in cost due to this is prevented.

또한, 특정 OS 사용으로 인한 비용 증가가 방지되는 효과가 있다.In addition, there is an effect of preventing an increase in cost due to the use of a specific OS.

또한, OS 내의 동기화를 위한 부수적인 소프트웨어의 개발 및 적용이 요구되지 않아 이로 인한 비용 증가가 방지되는 효과가 있다.In addition, since development and application of additional software for synchronization within the OS is not required, there is an effect of preventing an increase in cost due to this.

도 1은 본 발명의 바람직한 실시예에 따른 차량용 마스터 제어기와 차량용 슬레이브 제어기의 블록도이다.
도 2는 도 1의 마스터 제어기의 스케줄 테이블과 슬레이브 제어기의 태스크 기능을 보여주는 도면이다.
도 3은 본 발명의 바람직한 실시예에 따른 스케줄링 캔 메시지의 표준 데이터 프레임을 보여주는 도면이다.
도 4는 도 1의 슬레이브 제어기의 스케줄링 캔 메시지를 이용한 태스크 수행 과정을 시간 흐름으로 보여주는 도면이다.
도 5는 본 발명의 바람직한 실시예에 따른 차량용 슬레이브 제어기의 태스크 수행 방법의 순서도이다.
1 is a block diagram of a master controller for a vehicle and a slave controller for a vehicle according to a preferred embodiment of the present invention.
FIG. 2 is a diagram illustrating a schedule table of the master controller of FIG. 1 and a task function of a slave controller.
3 is a diagram showing a standard data frame of a scheduling CAN message according to a preferred embodiment of the present invention.
FIG. 4 is a diagram illustrating a task execution process using the scheduling CAN message of the slave controller of FIG. 1 as a time flow.
5 is a flowchart of a method for performing a task of a vehicle slave controller according to a preferred embodiment of the present invention.

이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. First of all, it should be noted that in adding reference numerals to the components of each drawing, the same components are given the same reference numerals as much as possible even though they are indicated on different drawings. In addition, preferred embodiments of the present invention will be described below, but the technical spirit of the present invention is not limited thereto and may be variously implemented by those skilled in the art without being limited thereto.

도 1은 본 발명의 바람직한 실시예에 따른 차량용 마스터 제어기와 차량용 슬레이브 제어기의 블록도이다. 도 2는 도 1의 마스터 제어기의 스케줄 테이블과 슬레이브 제어기의 태스크 기능을 보여주는 도면이다.1 is a block diagram of a master controller for a vehicle and a slave controller for a vehicle according to a preferred embodiment of the present invention. FIG. 2 is a diagram illustrating a schedule table of the master controller of FIG. 1 and a task function of a slave controller.

도 1 및 도 2를 참고하면, 본 발명의 바람직한 실시예에 따른 차량용 마스터 제어기(100)는, 차량용 캔 버스(CAN Bus)를 통해 스케줄링 캔 메시지를 복수의 슬레이브 제어기로 전송함으로써, 별도의 소프트웨어 없이 스케줄링 캔 메시지를 통해 복수의 슬레이브 제어기 각각의 태스크 스케줄링 알고리즘을 구현하는 것을 특징으로 한다.1 and 2 , the vehicle master controller 100 according to a preferred embodiment of the present invention transmits a scheduling CAN message to a plurality of slave controllers through a vehicle CAN bus, without separate software. It is characterized in that the task scheduling algorithm of each of the plurality of slave controllers is implemented through the scheduling CAN message.

차량용 슬레이브 제어기는, 마스터 제어기(100)로부터 스케줄링 캔 메시지를 수신하면, 스케줄링 캔 메시지에 포함된 스케줄링 정보를 이용하여 태스크를 수행하는 것을 특징으로 한다.The vehicle slave controller, upon receiving the scheduling CAN message from the master controller 100, performs a task by using scheduling information included in the scheduling CAN message.

차량용 슬레이브 제어기는 복수 구비될 수 있다. 복수의 슬레이브 제어기는 제1 슬레이브 제어기(200)와 제2 슬레이브 제어기(300)를 포함할 수 있다. 복수의 슬레이브 제어기는 복잡한 기능을 가지는 차량의 전자 제어 시스템의 제어를 위해 더욱 많은 수의 슬레이브 제어기를 포함할 수 있다.A plurality of slave controllers for a vehicle may be provided. The plurality of slave controllers may include a first slave controller 200 and a second slave controller 300 . The plurality of slave controllers may include a greater number of slave controllers for controlling an electronic control system of a vehicle having complex functions.

본 발명의 바람직한 실시예에 따른 차량용 마스터 제어기(100)는, 테이블 저장부(110), 메시지 생성부(120), 및 송수신부(130)를 포함한다.The vehicle master controller 100 according to the preferred embodiment of the present invention includes a table storage unit 110 , a message generating unit 120 , and a transmitting/receiving unit 130 .

테이블 저장부(110)는, 스케줄 테이블이 저장되는 일종의 메모리 장치일 수 있다. 여기서, 스케줄 테이블은 복수의 슬레이브 제어기 각각의 태스크 수행과 관련한 스케줄링 정보를 포함할 수 있다. 스케줄링 정보는 마스터 제어기(100)와 복수의 슬레이브 제어기에서 제어하고자 하는 차량의 전자 제어 시스템에 따라 미리 마련될 수 있다.The table storage unit 110 may be a kind of memory device in which a schedule table is stored. Here, the schedule table may include scheduling information related to task performance of each of the plurality of slave controllers. The scheduling information may be prepared in advance according to the electronic control system of the vehicle to be controlled by the master controller 100 and the plurality of slave controllers.

메시지 생성부(120)는 스케줄 테이블의 어느 하나 이상의 스케줄링 정보가 포함되도록 스케줄링 캔 메시지를 생성할 수 있다. 메시지 생성부(120)는 미리 마련된 표준 데이터 프레임에 따라 스케줄링 캔 메시지를 생성할 수 있다.The message generating unit 120 may generate a scheduling CAN message to include any one or more scheduling information in the schedule table. The message generator 120 may generate a scheduling CAN message according to a standard data frame prepared in advance.

송수신부(130)는 스케줄링 캔 메시지를 복수의 슬레이브 제어기로 전송할 수 있다. 복수의 슬레이브 제어기 각각은 스케줄링 캔 메시지를 수신하는 경우, 스케줄링 캔 메시지에 포함된 스케줄링 정보에 따라 내부 태스크를 처리할 수 있다.The transceiver 130 may transmit the scheduling CAN message to the plurality of slave controllers. When receiving the scheduling CAN message, each of the plurality of slave controllers may process an internal task according to scheduling information included in the scheduling CAN message.

일 실시예에 있어서, 태스크는 상시 수행이 필요한 태스크와 상시 수행이 불필요한 태스크를 포함한다. 상시 수행이 불필요한 태스크가 계속해서 동작할 경우, 해당 제어기의 CPU 부하가 발생하여 실시간성을 우선시하는 다른 태스크의 동작이 원활하게 이루어지지 않는 문제가 있다.In an embodiment, the task includes a task that needs to be always performed and a task that is not always performed. If a task that is not always performed continuously operates, the CPU load of the corresponding controller is generated, and there is a problem in that the operation of other tasks that prioritize real-time is not performed smoothly.

이러한 문제 해결을 위해 본 발명에 따른 차량용 슬레이브 제어기는, 상시 수행이 불필요한 태스크(예, 진단 태스크)의 수행이 필요하다고 판단되는 경우, 마스터 제어기(100)로 진단 태스크에 대한 스케줄링 정보를 요청할 수 있다. 차량용 슬레이브 제어기는 마스터 제어기(100)로부터 스케줄링 캔 메시지를 수신한 이후 해당하는 진단 태스크를 수행할 수 있다. 따라서, 차량용 슬레이브 제어기는 진단 태스크를 임의로 온(On) 또는 오프(Off)할 수 있는 방안이 마련되어, 필요시에만 진단 태스크를 동작하는 것이 가능하다.To solve this problem, the slave controller for a vehicle according to the present invention may request scheduling information for a diagnostic task from the master controller 100 when it is determined that it is necessary to perform a task that is not always performed (eg, a diagnostic task). . The vehicle slave controller may perform a corresponding diagnosis task after receiving the scheduling CAN message from the master controller 100 . Accordingly, the vehicle slave controller is provided with a method for arbitrarily turning on or off the diagnostic task, and it is possible to operate the diagnostic task only when necessary.

일 실시예에 있어서, 특정 태스크의 경우, 동작 주기가 런 타임(Run-Time)중에 변경될 수 있다.In one embodiment, for a specific task, the operation period may be changed during run-time.

워치독 태스크(Watchdog Task)의 경우, 차량용 슬레이브 제어기의 이상 동작 여부를 감시하게 되는데, 워치독 태스크와 다른 다양한 태스크는 이러한 차량용 슬레이브 제어기의 이상 동작 여부를 판단할만한 요소(예, 이더넷 메시지 송출 여부, 캔 메시지의 얼라이브 카운트(Alive Count), 주변 입출력 인터페이스(Peripheral I/O))를 이미 가지고 있다.In the case of the watchdog task, abnormal operation of the vehicle slave controller is monitored, and the watchdog task and various other tasks are factors that can determine whether the vehicle slave controller operates abnormally (e.g., whether an Ethernet message is transmitted, It already has the live count (Alive Count) of the CAN message and the peripheral input/output interface (Peripheral I/O).

또한, 워치독 태스크는, 하드웨어적 고장 상태를 수백 ms 단위로 주기적으로 감시하고 있는데, 소프트웨어의 사양으로 10ms 내지 100ms 단위의 주기가 요구되고 있어, 미연의 사태에 대비한다 하더라도 과도하게 동작되고 있다.In addition, the watchdog task periodically monitors the hardware failure state in units of hundreds of ms, but as a software specification requires a period of 10 ms to 100 ms, it is operated excessively even in preparation for an unforeseen situation.

본 발명에 따른 차량용 슬레이브 제어기는 워치독 태스크와 같은 특정 태스크의 동작 주기를 조절할 수 있다. 예컨대, 차량용 슬레이브 제어기는 특정 태스크의 동작 주기를 100ms에서 500ms로 늘릴 수 있다.The slave controller for a vehicle according to the present invention may adjust the operation period of a specific task, such as a watchdog task. For example, the vehicle slave controller may increase the operation period of a specific task from 100 ms to 500 ms.

차량용 슬레이브 제어기는 마스터 제어기(100)로부터 스케줄링 캔 메시지를 수신하면, 스케줄링 캔 메시지가 지시하는 변경된 동작 주기로 특정 태스크를 수행할 수 있다. 이때 차량용 슬레이브 제어기는 해당 구간에서 남은 CPU 부하만큼 중요한 다른 태스크를 여유롭게 수행할 수 있다.Upon receiving the scheduling CAN message from the master controller 100 , the vehicle slave controller may perform a specific task with a changed operation period indicated by the scheduling CAN message. At this time, the vehicle slave controller can leisurely perform other tasks as important as the remaining CPU load in the corresponding section.

도 3은 본 발명의 바람직한 실시예에 따른 스케줄링 캔 메시지의 표준 데이터 프레임을 보여주는 도면이다.3 is a diagram showing a standard data frame of a scheduling CAN message according to a preferred embodiment of the present invention.

도 3을 참고하면, 차량용 캔 통신에서 사용되는 스케줄링 캔 메시지의 표준 데이터 프레임을 확인할 수 있다. 도 3에서 중재 필드(Arbitration Field)는 아이덴티파이어(Identifier) 영역과 RTR(Remote Transmission Request) 영역을 포함한다. 아이덴티파이어 영역에는 메시지 ID가 입력된다. 메시지 ID는 해당 차량에서 유일한 값으로 정의된다. 메시지 ID는 리눅스 기반의 차량용 마스터 제어기의 스케줄링 캔 메시지에 대응하는 ID를 의미한다. 메시지 ID는 11bits의 크기를 가질 수 있다. 일 실시예에 있어서, 메시지 ID는 0x6FF로 표현될 수 있으나, 이에 한정되지 않는다. 메시지 ID는 임의의 식별 가능한 값으로 정의될 수 있다. 메시지 ID는 캔 버스를 통한 캔 메시지의 충돌 시 메시지 전송우선순위에 영향을 준다.Referring to FIG. 3 , a standard data frame of a scheduling CAN message used in in-vehicle CAN communication may be identified. In FIG. 3, the arbitration field includes an identifier area and a remote transmission request (RTR) area. A message ID is input in the identifier area. The message ID is defined as a unique value in the vehicle. The message ID means an ID corresponding to the scheduling CAN message of the Linux-based vehicle master controller. The message ID may have a size of 11 bits. In an embodiment, the message ID may be expressed as 0x6FF, but is not limited thereto. The message ID may be defined as any identifiable value. The message ID affects the message transmission priority in case of CAN message collision through the CAN bus.

데이터(Data) 필드에는 복수의 슬레이브 제어기 각각의 태스크 수행 시간 관련한 스케줄링 정보(또는 페이로드 정보)가 입력된다. 데이터 필드는 아스키 코드(ASCII Code)로 구성될 수 있다. 데이터 필드는 최대 8바이트의 크기를 가질 수 있다.In the Data field, scheduling information (or payload information) related to task execution time of each of the plurality of slave controllers is input. The data field may be composed of ASCII code. The data field can have a maximum size of 8 bytes.

나머지 필드는 일반적인 캔 메시지 프레임에 포함되는 내용이므로, 이에 대한 상세 설명은 생략한다.Since the remaining fields are included in a general CAN message frame, a detailed description thereof will be omitted.

이하에서는, 표 1을 참고하여 데이터 필드에 입력되는 스케줄링 정보에 대해 설명한다.Hereinafter, scheduling information input to the data field will be described with reference to Table 1.

IndexIndex 00 1One 22 33 44 55 66 77 스케줄링 정보Scheduling information ECU IDECU ID TASK IDTASK ID TASK PriorityTASK Priority TASK Start Offset Time Table IndexTASK Start Offset Time Table Index TASK Duration Table IndexTASK Duration Table Index TASK Function Table IndexTASK Function Table Index ReservedReserved ReservedReserved

표 1을 참고하면, 데이터 필드는 8 바이트 크기를 가지며, 1 바이트를 기준으로 구분되어 복수의 서브 데이터 필드를 포함할 수 있다. 데이터 필드는 제0 내지 제7 서브 데이터 필드로 구분될 수 있다. 제0 내지 제7 서브 데이터 필드는 인덱스 0 내지 7에 대응한다. 제0 내지 제7 서브 데이터 필드 각각에는 스케줄 테이블의 스케줄링 정보가 입력될 수 있다.Referring to Table 1, the data field has a size of 8 bytes, and may include a plurality of sub data fields by being divided based on 1 byte. The data field may be divided into 0th to 7th sub data fields. The 0th to 7th sub data fields correspond to indices 0 to 7. Scheduling information of a schedule table may be input to each of the 0th to 7th sub data fields.

인덱스 0에 대응하는 제0 서브 데이터 필드에는 스케줄링 정보 중에서 ECU ID가 입력될 수 있다. 여기서, ECU ID는 태스크를 수행할 슬레이브 제어기에 대한 ID를 나타낸다. 스케줄링 캔 메시지는 캔 버스에 접속한 슬레이브 제어기 모두에게 전송되므로, 스케줄링 캔 메시지를 수신한 슬레이브 제어기는 자신에게 요청하는 스케줄링 정보인지를 확인하기 위해 제0 서브 데이터 필드를 참조한다.An ECU ID from the scheduling information may be input to the 0 th sub data field corresponding to index 0. Here, the ECU ID represents the ID of the slave controller to perform the task. Since the scheduling CAN message is transmitted to all slave controllers connected to the CAN bus, the slave controller receiving the scheduling CAN message refers to sub data field 0 to check whether it is scheduling information requested by it.

인덱스 1에 대응하는 제1 서브 데이터 필드에는 스케줄링 정보 중에서 TASK ID가 입력될 수 있다. 여기서, TASK ID는 태스크를 식별 가능한 고유의 ID를 나타낸다.In the first sub data field corresponding to index 1, a TASK ID from among scheduling information may be input. Here, the TASK ID indicates a unique ID capable of identifying a task.

인덱스 2에 대응하는 제2 서브 데이터 필드에는 TASK Priority가 입력될 수 있다. TASK Priority는 태스크 수행 관련한 우선순위(예, 0 부터 255까지의 값)를 나타낸다.In the second sub data field corresponding to index 2, TASK Priority may be input. TASK Priority indicates the priority (eg, a value from 0 to 255) related to task execution.

인덱스 3에 대응하는 제3 서브 데이터 필드에는 TASK Start Offset Time Table Index가 입력될 수 있다. TASK Start Offset Time Table Index는 태스크 시작 시간에 대한 오프셋 타임을 지정할 테이블 인덱스 값을 나타낸다.A TASK Start Offset Time Table Index may be input to the third sub data field corresponding to index 3 . TASK Start Offset Time Table Index indicates the table index value to designate the offset time for the task start time.

인덱스 4에 대응하는 제4 서브 데이터 필드에는 TASK Duration Table Index가 입력될 수 있다. TASK Duration Table Index는 태스크 듀레이션(수행 지속 시간)을 설정할 테이블 인덱스 값을 나타낸다.A TASK Duration Table Index may be input to the fourth sub data field corresponding to index 4. TASK Duration Table Index indicates a table index value to set the task duration (execution duration).

인덱스 5에 대응하는 제5 서브 데이터 필드에는 TASK Function Table Index가 입력될 수 있다. TASK Function Table Index는 태스크의 기능을 설정할 테이블 인덱스 값을 나타낸다.In the fifth sub data field corresponding to index 5, a TASK function table index may be input. TASK Function Table Index indicates the table index value to set the task function.

인덱스 6과 인덱스 7 각각에 대응하는 제6 서브 데이터 필드와 제7 서브 데이터 필드에는 Reserved가 입력될 수 있다. Reserved는 예약된 정보를 나타낼 수 있다.Reserved may be input to the sixth sub data field and the seventh sub data field corresponding to the index 6 and the index 7, respectively. Reserved may indicate reserved information.

표 2 내지 표 4는 표 1의 TASK Start Offset Time Table Index, TASK Duration Table Index, TASK Function Table Index가 참조하는 참조 테이블을 나타낸다. 이러한 참조 테이블은 복수의 슬레이브 제어기 각각에 미리 저장된 상태일 수 있다.Tables 2 to 4 show reference tables referenced by the TASK Start Offset Time Table Index, the TASK Duration Table Index, and the TASK Function Table Index of Table 1. Such a reference table may be stored in advance in each of the plurality of slave controllers.

TASK Start Offset Time Table IndexTASK Start Offset Time Table Index TASK Start Offset Time Table Value(ms) (=Index*1ms)TASK Start Offset Time Table Value(ms) (=Index*1ms) 00 00 1One 1One 22 22 33 33 255255 255255

TASK Function Table IndexTASK Function Table Index TASK Function Table ValueTASK Function Table Value 00 NULL Function(NO Function)NULL Function(NO Function) 1One FUNC_#1FUNC_#1 22 FUNC_#2FUNC_#2 33 FUNC_#3FUNC_#3 255255 FUNC_#255FUNC_#255

TASK Duration Table IndexTASK Duration Table Index TASK Duration Table Value(ms) (=Index*1ms)TASK Duration Table Value(ms) (=Index*1ms) 00 00 1One 1One 22 22 33 33 255255 255255

표 2 내지 표 4를 참조하면, 스케줄링 캔 메시지를 수신한 슬레이브 제어기는 각 인덱스에서 지시하는 밸류(Value)를 참조하여 스케줄링 캔 메시지의 포맷을 재처리하고, 어떠한 스케줄링 함수를 실행할지에 대하여 판단할 수 있다.Referring to Tables 2 to 4, the slave controller receiving the scheduling CAN message reprocesses the format of the scheduling CAN message with reference to the value indicated by each index, and determines which scheduling function to execute. can

도 4는 도 1의 슬레이브 제어기의 스케줄링 캔 메시지를 이용한 태스크 수행 과정을 시간 흐름으로 보여주는 도면이다.FIG. 4 is a diagram illustrating a task execution process using the scheduling CAN message of the slave controller of FIG. 1 as a time flow.

도 4를 참고하면, 제1 슬레이브 제어기(200)의 동작 예를 확인할 수 있다. 먼저 제1 슬레이브 제어기(200)는 태스크의 어느 하나의 기능(예, Func#2)에 대한 스케줄링 정보를 마스터 제어기(100)로 요청한다. 일 실시예에 있어서, 제1 슬레이브 제어기(200)는 태스크의 제1 기능(Func#1), 제2 기능(Func#2), 및 제3 기능(Func#3)을 수행하도록 구성될 수 있다.Referring to FIG. 4 , an operation example of the first slave controller 200 can be confirmed. First, the first slave controller 200 requests scheduling information for any one function (eg, Func#2) of the task from the master controller 100 . In an embodiment, the first slave controller 200 may be configured to perform a first function (Func#1), a second function (Func#2), and a third function (Func#3) of the task. .

마스터 제어기(100)는 이에 응답하여 스케줄링 정보가 포함된 스케줄링 캔 메시지를 제1 슬레이브 제어기(200)로 전송한다.The master controller 100 transmits a scheduling CAN message including scheduling information to the first slave controller 200 in response thereto.

그런 다음 제1 슬레이브 제어기(200)는 스케줄링 캔 메시지를 수신한다. 제1 슬레이브 제어기(200)는 스케줄링 캔 메시지의 아이덴티파이어 필드에서 메시지 ID를 확인한다. 제1 슬레이브 제어기(200)는 메시지 ID를 확인을 통해 스케줄링 정보가 포함된 스케줄링 캔 메시지인지를 확인한다.Then, the first slave controller 200 receives the scheduling CAN message. The first slave controller 200 checks the message ID in the identifier field of the scheduling CAN message. The first slave controller 200 checks whether the message ID is a scheduling CAN message including scheduling information.

그런 다음 제1 슬레이브 제어기(200)는 스케줄링 캔 메시지인 것으로 확인되면, 데이터 필드의 스케줄링 정보를 확인한다. 제1 슬레이브 제어기(200)는 ECU ID가 자신에 대응하고, TASK ID가 자신이 요청한 태스크의 제2 기능(Func#2)에 대응하는지를 확인할 수 있다. 일 실시예에 있어서, 스케줄링 캔 메시지에 포함된 스케줄링 정보는 ECU ID = 1, TASK ID = 2, TASK Priority = 6, TASK Start Offset time = 2, TASK Duration time = 3ms, TASK Function index = 2를 포함할 수 있다.Then, when it is confirmed that the first slave controller 200 is a scheduling CAN message, it checks scheduling information in the data field. The first slave controller 200 may check whether the ECU ID corresponds to itself and the TASK ID corresponds to the second function (Func#2) of the task requested by the first slave controller 200 . In one embodiment, the scheduling information included in the scheduling CAN message includes ECU ID = 1, TASK ID = 2, TASK Priority = 6, TASK Start Offset time = 2, TASK Duration time = 3 ms, and TASK Function index = 2 can do.

제1 슬레이브 제어기(200)는 ECU ID와 TASK ID의 확인이 완료되면, 오프셋 타임 2ms 이후에 듀레이션 3ms 동안 태스크의 제2 기능(Func#2)을 수행할 수 있다. 제1 슬레이브 제어기(200)는 스케줄링 캔 메시지를 수신하고 나서 10ms 동안 태스크에 대한 새로운 스케줄링 정보를 요청하지 않는다.When the confirmation of the ECU ID and the TASK ID is completed, the first slave controller 200 may perform the second function (Func#2) of the task for a duration of 3 ms after the offset time of 2 ms. The first slave controller 200 does not request new scheduling information for the task for 10 ms after receiving the scheduling CAN message.

한편, 제1 슬레이브 제어기(200)는 태스크의 제2 기능(예, Func#2)의 수행이 필요할 때마다 스케줄링 정보를 마스터 제어기(100)로 요청할 수 있다.Meanwhile, the first slave controller 200 may request scheduling information from the master controller 100 whenever it is necessary to perform the second function (eg, Func#2) of the task.

마스터 제어기(100)는 제1 슬레이브 제어기(200)의 요청에 따라 스케줄링 캔 메시지를 재차 전송할 수 있다.The master controller 100 may transmit the scheduling CAN message again according to the request of the first slave controller 200 .

제1 슬레이브 제어기(200)는 태스크의 제2 기능(Func#2)에 대한 동작 주기의 변경 요청이 있는 경우, 변경 요청에 따라 참조 테이블의 제2 기능(Func#2)에 대한 오프셋 시간과 듀레이션을 변경할 수 있다. 일 실시예에 있어서, 제1 슬레이브 제어기(200)는 제2 기능(Func#2)에 대한 오프셋 시간을 2ms 에서 5ms로 변경하고, 듀레이션을 3ms에서 4ms로 변경할 수 있다.When there is a request to change the operation period for the second function (Func#2) of the task, the first slave controller 200 sets the offset time and duration for the second function (Func#2) of the reference table according to the change request. can be changed In an embodiment, the first slave controller 200 may change the offset time for the second function Func#2 from 2ms to 5ms, and change the duration from 3ms to 4ms.

제1 슬레이브 제어기(200)는 마스터 제어기(100)로부터 스케줄링 캔 메시지를 수신하면, 상술한 동작을 재차 수행할 수 있다. 이때 제1 슬레이브 제어기(200)는 변경된 오프셋 시간과 듀레이션에 따라 태스크의 제2 기능(Func#2)을 수행할 수 있다. 이와 같이, 제1 슬레이브 제어기(200)는 런타임 중에 특정 태스크의 동작 주기를 변경 가능함으로써, 해당 동작 주기 동안에 다른 태스크의 수행이 가능한 효과가 있다.When receiving the scheduling CAN message from the master controller 100 , the first slave controller 200 may perform the above-described operation again. In this case, the first slave controller 200 may perform the second function (Func#2) of the task according to the changed offset time and duration. As such, since the first slave controller 200 can change the operation period of a specific task during runtime, other tasks can be performed during the operation period.

도 5는 본 발명의 바람직한 실시예에 따른 차량용 슬레이브 제어기의 태스크 수행 방법의 순서도이다.5 is a flowchart of a method for performing a task of a vehicle slave controller according to a preferred embodiment of the present invention.

도 1, 도 2, 및 도 5를 참고하면, 본 발명의 바람직한 실시예에 따른 차량용 슬레이브 제어기의 태스크 수행 방법은, 동작 주기 판단 단계(S510), 밸류 변경 단계(S520), 요청 단계(S530), 수신 단계(S540), 및 태스크 수행 단계(S550)를 포함한다.1, 2, and 5 , the method for performing a task of a vehicle slave controller according to a preferred embodiment of the present invention includes an operation cycle determination step (S510), a value change step (S520), and a request step (S530). , a receiving step (S540), and a task performing step (S550).

동작 주기 판단 단계(S510)에서, 슬레이브 제어기(200)는 수행할 태스크의 동작 주기 변경이 필요한지 판단한다. 동작 주기의 변경 필요 여부는 사용자의 필요 또는 외부 요청에 따라 결정될 수 있다. 일 실시예에 있어서, 슬레이브 제어기(200)는 태스크 종류가 워치독 태스크 등을 포함하는 특정 태스크일 경우, 태스크의 동작 주기의 변경이 필요한 것으로 판단할 수 있다.In the operation period determination step S510 , the slave controller 200 determines whether the operation period of the task to be performed needs to be changed. Whether the operation period needs to be changed may be determined according to a user's need or an external request. In an embodiment, when the task type is a specific task including a watchdog task, the slave controller 200 may determine that a change in the operation period of the task is necessary.

밸류 변경 단계(S520)에서, 슬레이브 제어기(200)는 태스크의 동작 주기의 변경이 필요하면, 미리 마련된 참조 테이블의 테이블 밸류를 변경한다. 여기서, 슬레이브 제어기(200)는 테이블 밸류의 오프셋 시간과 듀레이션을 변경할 수 있다.In the value change step S520 , the slave controller 200 changes the table value of the pre-prepared reference table when it is necessary to change the operation period of the task. Here, the slave controller 200 may change the offset time and duration of the table value.

요청 단계(S530)에서, 슬레이브 제어기(200)는 태스크 수행을 위해 마스터 제어기(100)로 스케줄링 정보를 요청한다.In the request step (S530), the slave controller 200 requests scheduling information from the master controller 100 to perform a task.

수신 단계(S540)에서, 슬레이브 제어기(200)는 마스터 제어기(100)로부터 스케줄링 정보가 포함된 스케줄링 캔 메시지를 수신한다. 여기서, 마스터 제어기(100)는 미리 마련된 스케줄 테이블의 스케줄링 정보를 이용하여 스케줄링 캔 메시지를 생성할 수 있다.In the receiving step S540 , the slave controller 200 receives a scheduling CAN message including scheduling information from the master controller 100 . Here, the master controller 100 may generate a scheduling CAN message by using scheduling information of a pre-prepared schedule table.

태스크 수행 단계(S550)에서, 슬레이브 제어기(200)는 스케줄링 캔 메시지의 스케줄링 정보에 따라 태스크를 수행한다.In the task execution step ( S550 ), the slave controller 200 performs a task according to the scheduling information of the scheduling CAN message.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다.The above description is merely illustrative of the technical idea of the present invention, and those of ordinary skill in the art to which the present invention pertains may make various modifications, changes and substitutions within the scope without departing from the essential characteristics of the present invention. will be. Accordingly, the embodiments disclosed in the present invention and the accompanying drawings are for explaining, not limiting, the technical spirit of the present invention, and the scope of the technical spirit of the present invention is not limited by these embodiments and the accompanying drawings .

본 발명에 따른 단계들 및/또는 동작들은 기술분야의 통상의 기술자에 의해 이해될 수 있는 것과 같이, 다른 순서로, 또는 병렬적으로, 또는 다른 에포크(epoch) 등을 위해 다른 실시 예들에서 동시에 일어날 수 있다.Steps and/or operations according to the present invention may occur concurrently in different embodiments, either in a different order, or in parallel, or for different epochs, etc., as would be understood by one of ordinary skill in the art. can

실시 예에 따라서는, 단계들 및/또는 동작들의 일부 또는 전부는 하나 이상의 비-일시적 컴퓨터-판독가능 매체에 저장된 명령, 프로그램, 상호작용 데이터 구조(interactive data structure), 클라이언트 및/또는 서버를 구동하는 하나 이상의 프로세서들을 사용하여 적어도 일부가 구현되거나 또는 수행될 수 있다. 하나 이상의 비-일시적 컴퓨터-판독가능 매체는 예시적으로 소프트웨어, 펌웨어, 하드웨어, 및/또는 그것들의 어떠한 조합일 수 있다. 또한, 본 명세서에서 논의된 "모듈"의 기능은 소프트웨어, 펌웨어, 하드웨어, 및/또는 그것들의 어떠한 조합으로 구현될 수 있다.Depending on the embodiment, some or all of the steps and/or operations run instructions, a program, an interactive data structure, a client and/or a server stored in one or more non-transitory computer-readable media. At least some may be implemented or performed using one or more processors. The one or more non-transitory computer-readable media may be illustratively software, firmware, hardware, and/or any combination thereof. Further, the functionality of a “module” discussed herein may be implemented in software, firmware, hardware, and/or any combination thereof.

100: 마스터 제어기
110: 테이블 저장부
120: 메시지 생성부
130: 송수신부
200: 제1 슬레이브 제어기
300: 제2 슬레이브 제어기
100: master controller
110: table storage unit
120: message generator
130: transceiver
200: first slave controller
300: second slave controller

Claims (11)

복수의 슬레이브 제어기 각각의 태스크 수행과 관련한 스케줄링 정보를 포함하는 스케줄 테이블이 저장되는 테이블 저장부;
상기 스케줄 테이블의 스케줄링 정보가 포함되도록 스케줄링 캔 메시지를 생성하는 메시지 생성부; 및
상기 스케줄링 캔 메시지를 상기 복수의 슬레이브 제어기로 전송하는 송수신부;
를 포함하는 차량용 마스터 제어기.
a table storage unit for storing a schedule table including scheduling information related to task performance of each of the plurality of slave controllers;
a message generator for generating a scheduling CAN message to include the scheduling information of the schedule table; and
a transceiver for transmitting the scheduling CAN message to the plurality of slave controllers;
A vehicle master controller comprising a.
제 1 항에 있어서,
상기 스케줄링 캔 메시지는,
상기 스케줄링 캔 메시지에 대응하는 메시지 ID가 입력되는 아이덴티파이어 필드와 상기 스케줄링 정보가 입력되는 데이터 필드를 포함하는 데이터 프레임으로 구성되는 것을 특징으로 하는 차량용 마스터 제어기.
The method of claim 1,
The scheduling can message is
and a data frame including an identifier field in which a message ID corresponding to the scheduling CAN message is input and a data field in which the scheduling information is input.
제 2 항에 있어서,
상기 데이터 필드는 1 바이트를 기준으로 구분되어 복수의 서브 데이터 필드를 포함하고,
상기 복수의 서브 데이터 필드 각각에 상기 스케줄링 정보가 입력되는 것을 특징으로 하는 차량용 마스터 제어기.
3. The method of claim 2,
The data field is divided on the basis of one byte and includes a plurality of sub data fields,
The master controller for a vehicle, characterized in that the scheduling information is input to each of the plurality of sub data fields.
제 1 항에 있어서,
상기 스케줄링 정보는,
상기 태스크를 수행할 슬레이브 제어기에 대한 ID를 나타내는 ECU ID,
상기 태스크를 식별 가능한 TASK ID,
상기 태스크의 우선순위를 나타내는 TASK Priority,
상기 태스크의 시작 시간에 대한 오프셋 타임을 지정할 테이블 인덱스 값을 나타내는 TASK Start Offset Time Table Index,
상기 태스크의 듀레이션을 설정할 테이블 인덱스 값을 나타내는 TASK Duration Table Index, 및
상기 태스크의 기능을 설정할 테이블 인덱스 값을 나타내는 TASK Function Table Index
를 포함하는 것을 특징으로 하는 차량용 마스터 제어기.
The method of claim 1,
The scheduling information is
ECU ID indicating the ID for the slave controller to perform the task;
A TASK ID that can identify the task;
TASK Priority indicating the priority of the task,
TASK Start Offset Time Table Index indicating a table index value to designate an offset time for the start time of the task;
TASK Duration Table Index indicating a table index value to set the duration of the task, and
TASK Function Table Index indicating the table index value to set the function of the task
A vehicle master controller comprising a.
마스터 제어기로부터 스케줄링 정보가 포함된 스케줄링 캔 메시지를 수신하고, 상기 스케줄링 정보에 따라 태스크를 수행하며, 상기 스케줄링 정보에서 참조하는 테이블 밸류를 포함하는 참조 테이블이 저장되어 있는 차량용 슬레이브 제어기.A slave controller for a vehicle that receives a scheduling CAN message including scheduling information from a master controller, performs a task according to the scheduling information, and stores a reference table including table values referenced in the scheduling information. 제 5 항에 있어서,
상기 테이블 밸류는 오프셋 시간, 태스크의 기능, 및 듀레이션을 포함하는 것을 특징으로 하는 차량용 슬레이브 제어기.
6. The method of claim 5,
The table value is a vehicle slave controller, characterized in that it includes an offset time, a function of a task, and a duration.
제 6 항에 있어서,
태스크의 동작 주기 변경 요청이 있는 경우, 동작 주기 변경 요청이 있는 태스크에 대한 상기 테이블 밸류의 오프셋 시간과 듀레이션을 변경하는 것을 특징으로 하는 차량용 슬레이브 제어기.
7. The method of claim 6,
When there is a request for changing the operation period of the task, the slave controller for a vehicle, characterized in that the offset time and duration of the table value for the task for which the operation period change request is changed is changed.
마스터 제어기로 스케줄링 정보를 요청하는 스케줄링 정보 요청 단계;
상기 마스터 제어기로부터 상기 스케줄링 정보가 포함된 스케줄링 캔 메시지를 수신하는 수신 단계; 및
상기 스케줄링 정보에 따라 태스크를 수행하는 태스크 수행 단계;
를 포함하는 차량용 슬레이브 제어기의 태스크 수행 방법.
a scheduling information request step of requesting scheduling information from a master controller;
a receiving step of receiving a scheduling CAN message including the scheduling information from the master controller; and
a task performing step of performing a task according to the scheduling information;
A method of performing a task of a vehicle slave controller comprising a.
제 8 항에 있어서,
상기 태스크의 동작 주기 변경이 필요한지 판단하는 동작 주기 판단 단계
를 더 포함하는 것을 특징으로 하는 차량용 슬레이브 제어기의 태스크 수행 방법.
9. The method of claim 8,
Operation period determination step of determining whether it is necessary to change the operation period of the task
A method of performing a task of a slave controller for a vehicle, characterized in that it further comprises a.
제 9 항에 있어서,
상기 태스크의 동작 주기의 변경이 필요하면, 미리 마련된 참조 테이블의 테이블 밸류를 변경하는 밸류 변경 단계
를 더 포함하는 것을 특징으로 하는 차량용 슬레이브 제어기의 태스크 수행 방법.
10. The method of claim 9,
When it is necessary to change the operation period of the task, a value change step of changing the table value of the reference table prepared in advance
A method of performing a task of a slave controller for a vehicle, characterized in that it further comprises a.
제 10 항에 있어서,
상기 밸류 변경 단계는,
상기 태스크의 동작 주기와 관련한 상기 테이블 밸류의 오프셋 시간과 듀레이션을 변경하는 것을 특징으로 하는 차량용 슬레이브 제어기의 태스크 수행 방법.
11. The method of claim 10,
The value change step is
The method of performing a task of a slave controller for a vehicle, characterized in that the offset time and duration of the table value related to the operation period of the task are changed.
KR1020200165977A 2020-12-01 2020-12-01 Master controller of vehicle, slave controller of vehicle, and task scehduling message sending mehotd thereof KR102485286B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200165977A KR102485286B1 (en) 2020-12-01 2020-12-01 Master controller of vehicle, slave controller of vehicle, and task scehduling message sending mehotd thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200165977A KR102485286B1 (en) 2020-12-01 2020-12-01 Master controller of vehicle, slave controller of vehicle, and task scehduling message sending mehotd thereof

Publications (2)

Publication Number Publication Date
KR20220076961A true KR20220076961A (en) 2022-06-08
KR102485286B1 KR102485286B1 (en) 2023-01-04

Family

ID=81980712

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200165977A KR102485286B1 (en) 2020-12-01 2020-12-01 Master controller of vehicle, slave controller of vehicle, and task scehduling message sending mehotd thereof

Country Status (1)

Country Link
KR (1) KR102485286B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060026711A (en) * 2004-09-21 2006-03-24 인하대학교 산학협력단 The can message identifier allocation method and the can message transfer arbitration method for the humanoid robot
KR20060118635A (en) * 2005-05-16 2006-11-24 현대모비스 주식회사 Network system for vehicles utilizing power lines
KR100747760B1 (en) * 2006-09-04 2007-08-08 한양대학교 산학협력단 Time division scheduling method on can and the can system thereof
KR100850803B1 (en) * 2007-02-09 2008-08-06 한양대학교 산학협력단 Time-triggered message scheduling method in can system and device, system thereof
KR20200056838A (en) 2018-11-15 2020-05-25 현대자동차주식회사 Communication system for vehicle and control method of the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060026711A (en) * 2004-09-21 2006-03-24 인하대학교 산학협력단 The can message identifier allocation method and the can message transfer arbitration method for the humanoid robot
KR20060118635A (en) * 2005-05-16 2006-11-24 현대모비스 주식회사 Network system for vehicles utilizing power lines
KR100747760B1 (en) * 2006-09-04 2007-08-08 한양대학교 산학협력단 Time division scheduling method on can and the can system thereof
KR100850803B1 (en) * 2007-02-09 2008-08-06 한양대학교 산학협력단 Time-triggered message scheduling method in can system and device, system thereof
KR20200056838A (en) 2018-11-15 2020-05-25 현대자동차주식회사 Communication system for vehicle and control method of the same

Also Published As

Publication number Publication date
KR102485286B1 (en) 2023-01-04

Similar Documents

Publication Publication Date Title
CN105981336B (en) Abnormality detection electronic control unit, vehicle-mounted network system, and abnormality detection method
CN106796538B (en) Gateway device, in-vehicle network system, and firmware update method
CN107659494B (en) Data processing method and intelligent vehicle-mounted gateway
JP7280412B2 (en) GATEWAY DEVICE, IN-VEHICLE NETWORK SYSTEM AND FIRMWARE UPDATE METHOD
CN105659532B (en) Electrical subsystem, message filter and method for a vehicle
CN105703991B (en) Local interconnect network system and method
US9709963B2 (en) Control device for controlling safety-critical processes in an automated plant and method for parameterizing the control device
WO2012050734A1 (en) Intelligent interface for a distributed control system
US11036402B2 (en) Control device, control method and recording medium
JP2013235300A (en) Safety signal processing system
CN112840277B (en) Real-time automation device with real-time data bus
US10659536B2 (en) Method of controlling inverters
KR102485286B1 (en) Master controller of vehicle, slave controller of vehicle, and task scehduling message sending mehotd thereof
US11290881B2 (en) Method for functionally secure connection identification
US20190165968A1 (en) Serial communication system
KR20130022804A (en) Re-programming control module and re-programming system and method using the re-programming control module
US20190344800A1 (en) Steering control apparatus and steering control method and, steering system
JP2020022019A (en) Vehicle system
CN115883278A (en) Software architecture based on whole vehicle domain control, signal processing method, vehicle and equipment
EP4059206B1 (en) Data communication network in a vehicle
CN110727248B (en) Method and industrial facility system for changing configuration
KR102273410B1 (en) A device, system and a method for reprograming electronic control unit
CN114967634A (en) Processor diagnostic device, processor diagnostic method, and electronic apparatus
US11362857B2 (en) Message processing method, apparatus, electronic control unit and readable storage medium
JP7140011B2 (en) Gateway device

Legal Events

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