KR102485286B1 - 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
KR102485286B1
KR102485286B1 KR1020200165977A KR20200165977A KR102485286B1 KR 102485286 B1 KR102485286 B1 KR 102485286B1 KR 1020200165977 A KR1020200165977 A KR 1020200165977A KR 20200165977 A KR20200165977 A KR 20200165977A KR 102485286 B1 KR102485286 B1 KR 102485286B1
Authority
KR
South Korea
Prior art keywords
task
scheduling
message
vehicle
scheduling information
Prior art date
Application number
KR1020200165977A
Other languages
Korean (ko)
Other versions
KR20220076961A (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]

Abstract

본 발명의 바람직한 실시예에 따른 차량용 마스터 제어기는, 복수의 슬레이브 제어기 각각의 태스크 수행과 관련한 스케줄링 정보를 포함하는 스케줄 테이블이 저장되는 테이블 저장부, 상기 스케줄 테이블의 스케줄링 정보가 포함되도록 스케줄링 캔 메시지를 생성하는 메시지 생성부, 및 상기 스케줄링 캔 메시지를 상기 복수의 슬레이브 제어기로 전송하는 송수신부를 포함한다.A vehicle master controller according to a preferred embodiment of the present invention includes a table storage unit 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 including the scheduling information of the schedule table. It includes a message generator to generate a message, and a transceiver to transmit 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}Vehicle master controller, vehicle slave controller, and task performance method of vehicle slave controller

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

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

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

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

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

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

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

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

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

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

상기 스케줄링 캔 메시지는, 상기 스케줄링 캔 메시지에 대응하는 메시지 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 is divided based on 1 byte and includes 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 of a slave controller to perform the task, a TASK ID capable of identifying the task, a TASK Priority indicating the priority of the task, and a table for specifying 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 offset time, task function, and duration.

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

상기 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 차량용 슬레이브 제어기의 태스크 수행 방법은, 마스터 제어기로 스케줄링 정보를 요청하는 스케줄링 정보 요청 단계; 상기 마스터 제어기로부터 상기 스케줄링 정보가 포함된 스케줄링 캔 메시지를 수신하는 수신 단계; 및 상기 스케줄링 정보에 따라 태스크를 수행하는 태스크 수행 단계;를 포함한다.To achieve the above object, a task performing method of a vehicle slave controller according to a preferred embodiment of the present invention includes 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.

상기 태스크의 동작 주기 변경이 필요한지 판단하는 동작 주기 판단 단계를 더 포함할 수 있다.An operation period determination step of determining whether the operation period of the task needs to be changed may be further included.

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

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

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

또한, 특정 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 the development and application of additional software for synchronization in the OS is not required, an increase in cost due to this is not required.

도 1은 본 발명의 바람직한 실시예에 따른 차량용 마스터 제어기와 차량용 슬레이브 제어기의 블록도이다.
도 2는 도 1의 마스터 제어기의 스케줄 테이블과 슬레이브 제어기의 태스크 기능을 보여주는 도면이다.
도 3은 본 발명의 바람직한 실시예에 따른 스케줄링 캔 메시지의 표준 데이터 프레임을 보여주는 도면이다.
도 4는 도 1의 슬레이브 제어기의 스케줄링 캔 메시지를 이용한 태스크 수행 과정을 시간 흐름으로 보여주는 도면이다.
도 5는 본 발명의 바람직한 실시예에 따른 차량용 슬레이브 제어기의 태스크 수행 방법의 순서도이다.
1 is a block diagram of a vehicle master controller and a vehicle slave controller according to a preferred embodiment of the present invention.
FIG. 2 is a diagram showing 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 showing a process of performing a task using a scheduling can message of the slave controller of FIG. 1 in a time flow.
5 is a flowchart of a method of performing a task by a slave controller for a vehicle 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, in adding reference numerals to components of each drawing, it should be noted that the same components have the same numerals as much as possible even if they are displayed on different drawings. In addition, although preferred embodiments of the present invention will be described below, the technical idea of the present invention is not limited or limited thereto and can be modified and implemented in various ways by those skilled in the art.

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

도 1 및 도 2를 참고하면, 본 발명의 바람직한 실시예에 따른 차량용 마스터 제어기(100)는, 차량용 캔 버스(CAN Bus)를 통해 스케줄링 캔 메시지를 복수의 슬레이브 제어기로 전송함으로써, 별도의 소프트웨어 없이 스케줄링 캔 메시지를 통해 복수의 슬레이브 제어기 각각의 태스크 스케줄링 알고리즘을 구현하는 것을 특징으로 한다.Referring to FIGS. 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 a task scheduling algorithm of each of a plurality of slave controllers is implemented through a scheduling can message.

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

차량용 슬레이브 제어기는 복수 구비될 수 있다. 복수의 슬레이브 제어기는 제1 슬레이브 제어기(200)와 제2 슬레이브 제어기(300)를 포함할 수 있다. 복수의 슬레이브 제어기는 복잡한 기능을 가지는 차량의 전자 제어 시스템의 제어를 위해 더욱 많은 수의 슬레이브 제어기를 포함할 수 있다.A plurality of vehicle slave controllers 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 larger 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 a preferred embodiment of the present invention includes a table storage unit 110, a message generator 120, and a transceiver 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 a plurality of slave controllers. 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 of the schedule table. The message generating unit 120 may generate a scheduling can message according to a pre-prepared standard data frame.

송수신부(130)는 스케줄링 캔 메시지를 복수의 슬레이브 제어기로 전송할 수 있다. 복수의 슬레이브 제어기 각각은 스케줄링 캔 메시지를 수신하는 경우, 스케줄링 캔 메시지에 포함된 스케줄링 정보에 따라 내부 태스크를 처리할 수 있다.The transceiver 130 may transmit the scheduling can message to a 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 one embodiment, the task includes a task that needs to be performed all the time and a task that does not need to be performed all the time. When a task that does not need to be performed at all times continues to operate, there is a problem in that other tasks prioritizing real-time performance are not smoothly operated due to a CPU load of the corresponding controller.

이러한 문제 해결을 위해 본 발명에 따른 차량용 슬레이브 제어기는, 상시 수행이 불필요한 태스크(예, 진단 태스크)의 수행이 필요하다고 판단되는 경우, 마스터 제어기(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 (eg, a diagnostic task) that does not need to be performed at all times. . After receiving the scheduling can message from the master controller 100, the vehicle slave controller may perform a corresponding diagnosis task. Accordingly, the slave controller for the vehicle is provided with a method of arbitrarily turning on or off the diagnostic task, so that the diagnostic task can be operated only when necessary.

일 실시예에 있어서, 특정 태스크의 경우, 동작 주기가 런 타임(Run-Time)중에 변경될 수 있다.In one embodiment, in the case of 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, the abnormal operation of the vehicle slave controller is monitored. Various tasks other than the watchdog task include factors that can determine whether the vehicle slave controller operates abnormally (e.g., whether Ethernet messages are transmitted or not, It already has the Alive Count of CAN messages and Peripheral I/O.

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

본 발명에 따른 차량용 슬레이브 제어기는 워치독 태스크와 같은 특정 태스크의 동작 주기를 조절할 수 있다. 예컨대, 차량용 슬레이브 제어기는 특정 태스크의 동작 주기를 100ms에서 500ms로 늘릴 수 있다.The vehicle slave controller 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 부하만큼 중요한 다른 태스크를 여유롭게 수행할 수 있다.When receiving the scheduling can message from the master controller 100, the vehicle slave controller may perform a specific task with a changed operation cycle 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 vehicle can communication can be checked. In FIG. 3, an arbitration field includes an identifier area and a remote transmission request (RTR) area. A message ID is input in the identifier field. 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. A message ID may have a size of 11 bits. In one embodiment, the message ID may be expressed as 0x6FF, but is not limited thereto. A message ID can be defined as any identifiable value. The message ID affects the message transmission priority in case of collision of can messages through the can bus.

데이터(Data) 필드에는 복수의 슬레이브 제어기 각각의 태스크 수행 시간 관련한 스케줄링 정보(또는 페이로드 정보)가 입력된다. 데이터 필드는 아스키 코드(ASCII Code)로 구성될 수 있다. 데이터 필드는 최대 8바이트의 크기를 가질 수 있다.Scheduling information (or payload information) related to task execution time of each of a plurality of slave controllers is input to the Data field. The data field may be composed of ASCII code. The data field may 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 divided on the basis of 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 the 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 among scheduling information may be input to the 0th 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 the 0th sub data field to check whether it is the scheduling information requested from it.

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

인덱스 2에 대응하는 제2 서브 데이터 필드에는 TASK Priority가 입력될 수 있다. TASK Priority는 태스크 수행 관련한 우선순위(예, 0 부터 255까지의 값)를 나타낸다.TASK Priority may be input to the second sub data field corresponding to index 2. TASK Priority indicates the priority (for example, 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 the table index value to set the task duration (duration of execution).

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

인덱스 6과 인덱스 7 각각에 대응하는 제6 서브 데이터 필드와 제7 서브 데이터 필드에는 Reserved가 입력될 수 있다. Reserved는 예약된 정보를 나타낼 수 있다.Reserved may be input to the sixth sub data field and the seventh sub data field corresponding to index 6 and 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 referred to by TASK Start Offset Time Table Index, TASK Duration Table Index, and TASK Function Table Index of Table 1. This reference table may be previously stored in each of a 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 that has received the scheduling can message reprocesses the format of the scheduling can message by referring to the value indicated by each index, and determines which scheduling function to execute. can

도 4는 도 1의 슬레이브 제어기의 스케줄링 캔 메시지를 이용한 태스크 수행 과정을 시간 흐름으로 보여주는 도면이다.FIG. 4 is a diagram showing a process of performing a task using a scheduling can message of the slave controller of FIG. 1 in 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 one function of a task (eg, Func#2) from the master controller 100 . In one 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 a task. .

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

그런 다음 제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 scheduling can message includes scheduling information by checking the message ID.

그런 다음 제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 scheduling can message is received, the first slave controller 200 checks the scheduling information of the data field. The first slave controller 200 may check whether the ECU ID corresponds to itself and whether 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, 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 a 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 of the task (eg, Func#2).

마스터 제어기(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 change request for the operation cycle of the second function (Func#2) of the task, the first slave controller 200 sets the offset time and duration of the second function (Func#2) in the reference table according to the change request. can be changed. In one embodiment, the first slave controller 200 may change the offset time for the second function (Func#2) from 2ms to 5ms and 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. At this time, the first slave controller 200 may perform the second function (Func#2) of the task according to the changed offset time and duration. In this way, the first slave controller 200 can change the operation cycle of a specific task during runtime, so that another task can be performed during the corresponding operation cycle.

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

도 1, 도 2, 및 도 5를 참고하면, 본 발명의 바람직한 실시예에 따른 차량용 슬레이브 제어기의 태스크 수행 방법은, 동작 주기 판단 단계(S510), 밸류 변경 단계(S520), 요청 단계(S530), 수신 단계(S540), 및 태스크 수행 단계(S550)를 포함한다.Referring to FIGS. 1, 2, and 5 , a method of performing a task by a slave controller for a vehicle 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 cycle determination step (S510), the slave controller 200 determines whether the operation cycle of the task to be performed needs to be changed. Whether the operation cycle needs to be changed may be determined according to a user's need or an external request. In one embodiment, when the type of task is a specific task including a watchdog task, etc., the slave controller 200 may determine that the operation cycle of the task needs to be changed.

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

요청 단계(S530)에서, 슬레이브 제어기(200)는 태스크 수행을 위해 마스터 제어기(100)로 스케줄링 정보를 요청한다.In the request step (S530), the slave controller 200 requests scheduling information from the master controller 100 to perform the 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 using scheduling information of a previously prepared schedule table.

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

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

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

실시 예에 따라서는, 단계들 및/또는 동작들의 일부 또는 전부는 하나 이상의 비-일시적 컴퓨터-판독가능 매체에 저장된 명령, 프로그램, 상호작용 데이터 구조(interactive data structure), 클라이언트 및/또는 서버를 구동하는 하나 이상의 프로세서들을 사용하여 적어도 일부가 구현되거나 또는 수행될 수 있다. 하나 이상의 비-일시적 컴퓨터-판독가능 매체는 예시적으로 소프트웨어, 펌웨어, 하드웨어, 및/또는 그것들의 어떠한 조합일 수 있다. 또한, 본 명세서에서 논의된 "모듈"의 기능은 소프트웨어, 펌웨어, 하드웨어, 및/또는 그것들의 어떠한 조합으로 구현될 수 있다.In some embodiments, some or all of the steps and/or actions may include instructions, programs, interactive data structures, clients and/or servers stored on one or more non-transitory computer-readable media. At least some of them may be implemented or performed using one or more processors that do. The one or more non-transitory computer-readable media may illustratively be software, firmware, hardware, and/or any combination thereof. Additionally, the functions 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 generating unit generating a scheduling can message to include the scheduling information of the schedule table; and
a transmitting/receiving unit transmitting the scheduling can message to the plurality of slave controllers;
including,
Wherein the transmission/reception unit transmits the scheduling can message to a slave controller whose task operation period is changed when a task operation period of at least one slave controller among the plurality of slave controllers is changed.
제 1 항에 있어서,
상기 스케줄링 캔 메시지는,
상기 스케줄링 캔 메시지에 대응하는 메시지 ID가 입력되는 아이덴티파이어 필드와 상기 스케줄링 정보가 입력되는 데이터 필드를 포함하는 데이터 프레임으로 구성되는 것을 특징으로 하는 차량용 마스터 제어기.
According to claim 1,
The scheduling can message,
The vehicle master controller, characterized in that composed of a data frame including an identifier field into which a message ID corresponding to the scheduling can message is input and a data field into which the scheduling information is input.
제 2 항에 있어서,
상기 데이터 필드는 1 바이트를 기준으로 구분되어 복수의 서브 데이터 필드를 포함하고,
상기 복수의 서브 데이터 필드 각각에 상기 스케줄링 정보가 입력되는 것을 특징으로 하는 차량용 마스터 제어기.
According to claim 2,
The data field is divided on the basis of 1 byte and includes a plurality of sub data fields,
The vehicle master controller, 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
를 포함하는 것을 특징으로 하는 차량용 마스터 제어기.
According to claim 1,
The scheduling information,
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;
TASK Start Offset Time Table Index indicating a table index value to designate an offset time for the start time of the task;
A 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.
Vehicle master controller comprising a.
마스터 제어기로부터 스케줄링 정보가 포함된 스케줄링 캔 메시지를 수신하고, 상기 스케줄링 정보에 따라 태스크를 수행하며, 상기 스케줄링 정보에서 참조하는 테이블 밸류를 포함하는 참조 테이블이 저장되어 있으며, 상기 태스크를 수행하기 전에 상기 태스크의 동작 주기 변경이 필요한지 판단하는 것을 특징으로 하는 차량용 슬레이브 제어기.Receives a scheduling can message including scheduling information from the master controller, performs a task according to the scheduling information, stores a reference table including table values referred to in the scheduling information, and prior to performing the task A slave controller for a vehicle, characterized in that it determines whether a change in the operation cycle of a task is necessary. 제 5 항에 있어서,
상기 테이블 밸류는 오프셋 시간, 태스크의 기능, 및 듀레이션을 포함하는 것을 특징으로 하는 차량용 슬레이브 제어기.
According to claim 5,
The vehicular slave controller of claim 1 , wherein the table value includes an offset time, a function of a task, and a duration.
제 6 항에 있어서,
태스크의 동작 주기 변경 요청이 있는 경우, 동작 주기 변경 요청이 있는 태스크에 대한 상기 테이블 밸류의 오프셋 시간과 듀레이션을 변경하는 것을 특징으로 하는 차량용 슬레이브 제어기.
According to claim 6,
A slave controller for a vehicle, characterized in that, when there is a request for changing the operation period of a task, the offset time and duration of the table values for the task having the request for changing the operation period are 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;
including,
Prior to the scheduling information request step, an operation cycle determination step of determining whether a change in the operation cycle of the task is necessary.
A method of performing a task by a slave controller for a vehicle, further comprising:
삭제delete 제 8 항에 있어서,
상기 태스크의 동작 주기의 변경이 필요하면, 미리 마련된 참조 테이블의 테이블 밸류를 변경하는 밸류 변경 단계
를 더 포함하는 것을 특징으로 하는 차량용 슬레이브 제어기의 태스크 수행 방법.
According to claim 8,
A value change step of changing a table value of a pre-prepared reference table, if the operation cycle of the task needs to be changed
A method of performing a task by a slave controller for a vehicle, further comprising:
제 10 항에 있어서,
상기 밸류 변경 단계는,
상기 태스크의 동작 주기와 관련한 상기 테이블 밸류의 오프셋 시간과 듀레이션을 변경하는 것을 특징으로 하는 차량용 슬레이브 제어기의 태스크 수행 방법.
According to claim 10,
In the value change step,
A method of performing a task of a slave controller for a vehicle, characterized in that changing an offset time and duration of the table value related to the operation period of the task.
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 KR20220076961A (en) 2022-06-08
KR102485286B1 true 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 (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100583811B1 (en) * 2004-09-21 2006-05-26 인하대학교 산학협력단 The can message identifier allocation method and the can message transfer arbitration method for the humanoid robot
KR100667045B1 (en) * 2005-05-16 2007-01-10 현대모비스 주식회사 Network system for vehicles utilizing power lines
KR20200056838A (en) 2018-11-15 2020-05-25 현대자동차주식회사 Communication system for vehicle and control method of the same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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

Also Published As

Publication number Publication date
KR20220076961A (en) 2022-06-08

Similar Documents

Publication Publication Date Title
CN111934966B (en) Abnormality detection electronic control unit, vehicle-mounted network system, and abnormality detection method
CN107659494B (en) Data processing method and intelligent vehicle-mounted gateway
CN105659532B (en) Electrical subsystem, message filter and method for a vehicle
EP3113351A1 (en) Motor control system and motor control method
JP2009278615A (en) Method and apparatus for monitoring status of node of communication network
WO2022001745A1 (en) Data instruction processing method and apparatus, vehicle, and storage medium
WO2018163665A1 (en) Control device and control method
US10659536B2 (en) Method of controlling inverters
KR102485286B1 (en) Master controller of vehicle, slave controller of vehicle, and task scehduling message sending mehotd thereof
US10541830B2 (en) Serial communication system
US11290881B2 (en) Method for functionally secure connection identification
CN110450850B (en) Steering control device, steering control method, and steering system
EP4059206B1 (en) Data communication network in a vehicle
KR101995515B1 (en) Method and system for assigning a control authorization to a computer
US10963354B2 (en) Control apparatus and recovery processing method for control apparatus
CN110727248B (en) Method and industrial facility system for changing configuration
CN114967634A (en) Processor diagnostic device, processor diagnostic method, and electronic apparatus
CN115224685B (en) Power distribution management method, device, vehicle and storage medium
KR102029371B1 (en) Power Supply system and method for ethernet communication network in vehicle
KR101593338B1 (en) Apparatus for lin communication of vehicle and control method thereof
US20220229797A1 (en) Method, communication system and system for secure communication between a master and a slave of a bus system
Moniruzzaman et al. Optimizing controller area network system for vehicular automation
US20220269546A1 (en) Control device, method, program, and vehicle
KR102543841B1 (en) Efficient slave parameter management method of communication-based control system, and apparatus thereof
JPH06149320A (en) Remote i/o system for programmable controller

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