KR20100060111A - Communication arbituration apparatus and method for dual microcontroller system - Google Patents

Communication arbituration apparatus and method for dual microcontroller system Download PDF

Info

Publication number
KR20100060111A
KR20100060111A KR1020080118558A KR20080118558A KR20100060111A KR 20100060111 A KR20100060111 A KR 20100060111A KR 1020080118558 A KR1020080118558 A KR 1020080118558A KR 20080118558 A KR20080118558 A KR 20080118558A KR 20100060111 A KR20100060111 A KR 20100060111A
Authority
KR
South Korea
Prior art keywords
data
controller
signal
enable signal
module
Prior art date
Application number
KR1020080118558A
Other languages
Korean (ko)
Other versions
KR100998416B1 (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 KR1020080118558A priority Critical patent/KR100998416B1/en
Publication of KR20100060111A publication Critical patent/KR20100060111A/en
Application granted granted Critical
Publication of KR100998416B1 publication Critical patent/KR100998416B1/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/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40019Details regarding a bus master
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Steering Mechanism (AREA)

Abstract

PURPOSE: A communications relay device and a method thereof in a dual controller system for improving stability and reliability of data communications are provided to prevent data collision in communication. CONSTITUTION: A second CAN(Controller Area Network) module(130) operates a second use signal of a slave controller. The second CAN module transmits a second data transmitted from the slave controller according to the CAN protocol. The second CAN module sets up output as an open drain according to the second use signal. A CAN transceiver(140) receives data from the first CAN module or the second CAN module. The CAN transceiver transmits data received through the controller area network bus.

Description

듀얼 콘트롤러 시스템의 통신 중재 장치 및 방법{ COMMUNICATION ARBITURATION APPARATUS AND METHOD FOR DUAL MICROCONTROLLER SYSTEM }COMMUNICATION ARBITURATION APPARATUS AND METHOD FOR DUAL MICROCONTROLLER SYSTEM}

본 발명은 CAN(Controller Area Network)에서 콘트롤러의 통신 장치 및 방법에 관한 것으로, 더욱 상세하게는 스티어링 휠의 조향각을 산출하는 콘트롤러를 이중으로 구성하면서도 네트워크에서 하나의 노드로 인식될 수 있도록 하나의 트랜시버를 사용하는 듀얼 콘트롤러 시스템에서 통신시 충돌을 방지하는 듀얼 콘트롤러 시스템의 통신 중재 장치 및 방법에 관한 것이다.The present invention relates to a communication device and a method of a controller in a controller area network (CAN), and more particularly, to configure a controller that calculates a steering angle of a steering wheel in a double, but to be recognized as one node in a network. The present invention relates to a communication mediation apparatus and method of a dual controller system for preventing a collision during communication in a dual controller system using the controller.

일반적으로, 캔(Controller Area Network:CAN)은 자동차 분야에서 엔진 관리 시스템, 자동변속장치, 에어백 시스템, 차체자세제어장치(ESP) 등에 사용되는 온-보드 전자제어장치(ECUs)들 간의 정보 교환에 사용되는 통신 프로토콜이다. CAN 프로토콜은 매우 높은 레벨의 안전성을 갖은 실시간 시리얼 방식의 브로드캐스팅 프로토콜로서, 고속의 ISO 11898과 저속의 ISO 11519-2로 정의된 국제 표준이다. 이러한 CAN 프로토콜은 두개의 메시지 프레임 형식을 제공하는데, CAN 표준 프레임은 11 비트 길이의 ID를 제공하고, CAN 확장 프레임은 29비트 ID를 제공한다. In general, CANs are used to exchange information between on-board electronic control units (ECUs) used in engine management systems, automatic transmissions, airbag systems, body position control systems (ESPs), etc. in the automotive sector. The communication protocol used. The CAN protocol is a real-time serial broadcasting protocol with a very high level of safety. It is an international standard defined by high speed ISO 11898 and low speed ISO 11519-2. The CAN protocol provides two message frame formats: the CAN standard frame provides an 11-bit long ID and the CAN extended frame provides a 29-bit ID.

한편, 자동차에서 스티어링 휠의 조향각을 산출하는 종래의 조향각 산출 시스템(10)은 도 1에 도시된 바와 같이, AMR(Anisotropic Magneto Resistance)센서(11)로부터 감지신호를 입력받아 하나의 MCU(Micro Controller Unit)(12)가 소정의 알고리즘에 따라 조향각을 산출하여 CAN 버스(15)를 통해 다른 노드들(ECU:Electronic Control Unit)에 전송하였다. 이때 산출된 데이터(조향각 데이터)를 CAN 버스(15)를 통해 전송하기 위해 CAN모듈(13)은 MCU(12)의 조향각 데이터를 전달받아 CAN 프로토콜에 따른 메시지 프레임으로 형성한 후, CAN 트랜시버(14)를 통해 CAN 버스(15)로 전송하였다.Meanwhile, the conventional steering angle calculation system 10 for calculating a steering angle of a steering wheel in a vehicle receives a detection signal from an anisotropic magneto resistance (AMR) sensor 11 as shown in FIG. The unit 12 calculates a steering angle according to a predetermined algorithm and transmits the steering angle to other nodes (ECUs) through the CAN bus 15. In this case, in order to transmit the calculated data (steering angle data) through the CAN bus 15, the CAN module 13 receives the steering angle data of the MCU 12 and forms a message frame according to the CAN protocol, and then the CAN transceiver 14 Is transmitted to the CAN bus 15.

그런데 CAN과 같이 실시간으로 운영되는 시스템에서 하나의 MCU(Micro Control Unit)를 사용할 경우에는 MCU에서 연산오류나 시스템 장애(fail), 혹은 데드 록(Dead Lock) 등의 장애가 발생될 경우에는 데이터(Data)를 전송할 수 없게 되고, 이에 따라 실시간으로 데이터가 필요한 시스템에서는 데이터가 입력되지 않아 고장으로 인지하거나 오동작을 일으킬 수 있는 문제점이 있다.However, when using a single micro control unit (MCU) in a system operating in real time, such as CAN, if a fault such as operation error, system failure, or dead lock occurs in the MCU, data (Data) There is a problem that can not be transmitted, and therefore in a system that requires data in real time because the data is not input is recognized as a failure or cause a malfunction.

본 발명은 상기와 같은 문제점을 해소하기 위하여 제안된 것으로, 본 발명의 목적은 콘트롤러를 이중으로 구성하면서도 네트워크에서 하나의 노드로 인식될 수 있도록 하나의 트랜시버를 사용하는 듀얼 콘트롤러 시스템에서 통신시 데이터 충돌을 방지하는 듀얼 콘트롤러 시스템의 통신 중재 장치 및 방법을 제공하는 것이다.The present invention has been proposed in order to solve the above problems, and an object of the present invention is to configure data controllers in a dual controller system using a transceiver so that it can be recognized as a node in a network while dually configuring a controller. It is to provide a communication mediation apparatus and method of the dual controller system to prevent.

상기와 같은 목적을 달성하기 위하여 본 발명의 장치는, 센서로부터 감지 데이터를 입력받아 소정의 알고리즘에 따라 제1 데이터를 산출하여 슬레이브 콘트롤러로 전송함과 아울러 슬레이브 콘트롤러로부터 제2 데이터를 전송받아 에러를 검출한 후 제1 인에이블신호를 슬레이브 콘트롤러로 출력하고, 슬레이브 콘트롤러의 제2 인에이블신호를 수신받아 송신 결정 테이블에 의해 송신 콘트롤러를 결정하여 최종적으로 제1 사용신호를 출력하는 마스터 콘트롤러; 상기 마스터 콘트롤러의 제1 사용신호에 따라 동작하여 상기 마스터 콘트롤러로부터 전송된 제1 데이터를 CAN 프로토콜에 따라 처리하여 전송하거나 상기 제1 사용신호에 따라 출력을 오픈 드레인으로 설정하는 제1 캔(CAN) 모듈; 센서로부터 감지 데이터를 입력받아 소정의 알고리즘에 따라 제2 데이터를 산출하여 상기 마스터 콘트롤러로 전송함과 아울러 상기 마스터 콘트롤러로부터 제1 데이터를 전송받아 에러를 검출한 후 제2 인에이블신호를 상기 마스터 콘트롤러로 출력하고, 상기 마스터 콘트롤러의 제1 인에이블신 호를 수신받아 송신 결정 테이블에 의해 송신할 콘트롤러를 결정하여 최종적으로 제2 사용신호를 출력하는 슬레이브 콘트롤러; 상기 슬레이브 콘트롤러의 제2 사용신호에 따라 동작하여 상기 슬레이브 콘트롤러로부터 전송된 제2 데이터를 CAN 프로토콜에 따라 처리하여 전송하거나 상기 제2 사용신호에 따라 출력을 오픈 드레인으로 설정하는 제2 캔(CAN) 모듈; 및 상기 제1 캔(CAN) 모듈이나 상기 제2 캔(CAN) 모듈로부터 데이터를 수신받아 캔(CAN) 버스를 통해 전송하는 캔(CAN) 트랜시버를 포함하는 것을 특징으로 한다.In order to achieve the above object, the apparatus of the present invention receives sensing data from a sensor, calculates first data according to a predetermined algorithm, transmits the first data to the slave controller, and receives the second data from the slave controller to receive an error. A master controller which outputs the first enable signal to the slave controller after detection, receives the second enable signal of the slave controller, determines the transmission controller by the transmission decision table, and finally outputs the first use signal; A first can configured to operate according to a first use signal of the master controller to process and transmit first data transmitted from the master controller according to a CAN protocol, or to set an output to open drain according to the first use signal module; The sensor receives the sensed data from the sensor, calculates the second data according to a predetermined algorithm, transmits the second data to the master controller, receives the first data from the master controller, detects an error, and then transmits a second enable signal to the master controller. A slave controller configured to receive a first enable signal of the master controller, determine a controller to be transmitted by a transmission determination table, and finally output a second use signal; A second can configured to operate according to a second use signal of the slave controller to process and transmit second data transmitted from the slave controller according to a CAN protocol or to set an output to open drain according to the second use signal module; And a CAN transceiver which receives data from the first CAN module or the second CAN module and transmits the data through a CAN bus.

상기 송신 결정 테이블은, 상기 제1 인에이블신호와 상기 제2 인에이블신호가 모두 오프이면 제1 사용신호를 온시키고 제2 사용신호를 오프시켜 상기 마스터 콘트롤러가 출력하게 하고, 상기 제1 인에이블신호가 오프이고 상기 제2 인에이블신호가 온이면 제1 사용신호를 오프시키고 제2 사용신호를 온시켜 슬레이브 콘트롤러가 출력하게 하고, 상기 제1 인에이블신호가 온이고 상기 제2 인에이블신호가 오프이면 제1 사용신호를 온시키고 제2 사용신호를 오프시켜 마스터 콘트롤러가 출력하게 하며, 상기 제1 인에이블신호와 상기 제2 인에이블신호가 모두 온이면 제1 사용신호를 온시키고 제2 사용신호를 오프시켜 상기 마스터 콘트롤러가 출력하게 하는 것이다.The transmission determination table may turn on a first use signal and turn off a second use signal when the first enable signal and the second enable signal are both off so that the master controller outputs the first enable signal. When the signal is off and the second enable signal is on, the first use signal is turned off and the second use signal is turned on so that the slave controller outputs the first enable signal and the second enable signal is turned on. When off, the first use signal is turned on and the second use signal is turned off so that the master controller outputs the signal. When both the first enable signal and the second enable signal are on, the first use signal is turned on and the second use signal is turned on. The signal is turned off so that the master controller outputs.

또한 상기와 같은 목적을 달성하기 위하여 본 발명의 방법은, 마스터 콘트롤러가 센서로부터 수신된 감지데이터를 연산하여 제1 데이터를 산출한 후 슬레이브 콘트롤러로 전송하는 단계; 슬레이브 콘트롤러가 센서로부터 수신된 감지데이터를 연산하여 제2 데이터를 산출한 후 상기 마스터 콘트롤러로 전송하는 단계; 상기 마 스터 콘트롤러가 제1 데이터와 제2 데이터의 에러 여부를 판단한 후 제1 인에이블신호를 상기 슬레이브 콘트롤러로 전송하는 단계; 슬레이브 콘트롤러가 제1 데이터와 제2 데이터의 에러 여부를 판단한 후 제2 인에이블신호를 상기 마스터 콘트롤러로 전송하는 단계; 상기 마스터 콘트롤러와 슬레이브 콘트롤러가 송신 결정 테이블에 따라 제1 인에이블신호와 제2 인에이블신호를 판단하여 송신할 콘트롤러를 결정하는 단계; 및 상기 송신 결정 테이블에 의해 결정된 송신할 콘트롤러는 자신의 사용신호를 해당 캔모듈로 출력하여 해당 캔모듈이 데이터를 출력하게 하고, 송신하지 않는 콘트롤러는 해당 캔모듈을 오픈 드레인으로 설정하게 하는 단계를 구비한 것을 특징으로 한다.In addition, to achieve the above object, the method of the present invention, the master controller calculates the first data by calculating the received data received from the sensor and transmitting to the slave controller; Calculating, by the slave controller, the sensing data received from the sensor, and calculating the second data and transmitting the second data to the master controller; Transmitting, by the master controller, a first enable signal to the slave controller after determining whether an error occurs between the first data and the second data; After the slave controller determines whether the first data and the second data are in error, transmitting a second enable signal to the master controller; Determining, by the master controller and the slave controller, a controller to transmit by determining a first enable signal and a second enable signal according to a transmission determination table; And the controller to be transmitted determined by the transmission determination table outputs its use signal to the corresponding can module so that the corresponding can module outputs data, and the controller which does not transmit sets the can module to open drain. Characterized in that provided.

본 발명에 따른 듀얼 콘트롤러 시스템은 콘트롤러(MCU)가 이중(Dual)으로 구성되어 있지만 통신 모듈(Transceiver)은 1개만 사용하여 하나의 노드로 인식될 수 있게 한다. 그리고 2개의 콘트롤러가 동시에 통신모듈을 선택할 경우 데이터가 충돌하므로 이를 방지하기 위하여 본 발명에서는 각 콘트롤러에서 먼저 소프트웨어적으로 중재를 수행한 후 다시 하드웨어적으로 출력신호를 감시하여 송신 결정 테이블에 의해 다시 중재를 처리함으로써 2차에 걸친 중재 절차에 의해 데이터 충돌을 방지하여 데이터 통신의 안정성과 신뢰성을 향상시킬 수 있다. 특히, 본 발명이 자동차의 CAN 네트워크에 절용될 경우에는 2개의 MCU와 2개의 CAN모듈, 하나의 CAN 트랜시버(Transceiver)를 사용하여 두 MCU의 CAN모듈이 CAN Transceiver를 선택할 때 두 MCU가 충돌없이 실시간으로 데이터를 출력할 수 있게 한다. 즉, CAN 트랜시버(Transceiver)를 선택할 경우에 1차 각 MCU에서 동일한 Data로 CAN모듈을 결정하고, H/W적으로 출력되는 실제 출력신호(Signal)를 검출하여 2차로 중재함으로써 이중으로 중재하여 CAN 네트워크의 안정성을 보장할 수 있다.In the dual controller system according to the present invention, the controller (MCU) is configured as a dual (Dual), but only one communication module (Transceiver) can be recognized as a node. If two controllers select communication module at the same time, data is collided. In order to prevent this problem, in the present invention, the controller first performs the software arbitration, and then monitors the output signal in hardware and mediates again by the transmission decision table. By dealing with, we can improve the stability and reliability of data communication by preventing data collision by the second arbitration procedure. In particular, when the present invention is used in a CAN network of an automobile, two MCUs, two CAN modules, and one CAN transceiver using one CAN transceiver, when two CAN modules of the CAN module select a CAN transceiver, two MCUs do not collide in real time. To output data. In other words, when selecting a CAN transceiver, each CAN module determines the CAN module with the same data, detects the actual output signal (Signal) output in H / W, and arbitrates twice to arbitrate the CAN. The stability of the network can be guaranteed.

본 발명과 본 발명의 실시에 의해 달성되는 기술적 과제는 다음에서 설명하는 본 발명의 바람직한 실시예들에 의하여 보다 명확해질 것이다. 다음의 실시예들은 단지 본 발명을 설명하기 위하여 예시된 것에 불과하며, 본 발명의 범위를 제한하기 위한 것은 아니다. The technical problems achieved by the present invention and the practice of the present invention will be more clearly understood by the preferred embodiments of the present invention described below. The following examples are merely illustrative of the present invention and are not intended to limit the scope of the present invention.

본 발명은 콘트롤러(MCU)가 이중화됨과 아울러 하나의 통신모듈(트랜시버)을 갖도록 구성된 실시간 듀얼 콘트롤러 시스템에서 2개의 콘트롤러가 하나의 통신모듈을 통해 네트워크로 데이터를 전송할 경우에 발생하는 데이터 충돌을 방지하기 위한 통신 중재 방법을 개시한다. 이러한 본 발명은 네트워크에서 하나의 노드로 인식될 수 있도록 하나의 통신모듈을 갖는 모든 듀얼 콘트롤러 시스템에 적용될 수 있는데, 본 발명의 바람직한 실시예에서는 자동차에서 스티어링 휠의 조향각을 연산하는 듀얼 컨트롤러 시스템이 CAN 프로토콜에 따라 다른 노드들에 데이터를 전송하는 경우를 예로들어 설명한다.The present invention is to prevent data collision caused when two controllers transmit data to a network through one communication module in a real-time dual controller system configured to have a redundant controller (MCU) and one communication module (transceiver). Disclosed is a communication arbitration method. The present invention can be applied to all dual controller systems having one communication module to be recognized as one node in a network. In a preferred embodiment of the present invention, a dual controller system for calculating a steering angle of a steering wheel in a vehicle is CAN. An example of transmitting data to other nodes according to a protocol will be described.

도 2는 본 발명에 따라 조향각을 산출하기 위한 듀얼 콘트롤러 시스템을 도시한 구성 블럭도이고, 도 3은 본 발명에 따른 듀얼 콘트롤러 시스템의 통신 중재 개념을 도시한 개략도이다.2 is a block diagram illustrating a dual controller system for calculating a steering angle according to the present invention, and FIG. 3 is a schematic diagram illustrating a communication arbitration concept of the dual controller system according to the present invention.

본 발명의 실시예에 따른 듀얼 콘트롤러 시스템(100)은 도 2에 도시된 바와 같이, AMR 센서(11)로부터 감지신호를 입력받아 소정의 알고리즘에 따라 제1 조향각 데이터를 산출하여 슬레이브 콘트롤러(120S)로 전송함과 아울러 슬레이브 콘트롤러로부터 제2 조향각 데이터를 전송받아 에러를 검출한 후 제1 CAN인에이블신호(CAN_EN1)를 출력하는 마스터 콘트롤러(120M)와, 마스터 콘트롤러(120M)의 제1 인에이블신호(CAN_EN1)에 따라 동작하여 마스터 콘트롤러(120M)로부터 전송된 제1 조향각 데이터를 CAN 프로토콜에 따라 처리하여 전송하는 제1 CAN 모듈(130M)과, AMR 센서(11)로부터 감지신호를 입력받아 소정의 알고리즘에 따라 제2 조향각 데이터를 산출하여 마스터 콘트롤러(120M)로 전송함과 아울러 마스터 콘트롤러(120M)로부터 제1 조향각 데이터를 전송받아 에러를 검출한 후 제2 CAN인에이블신호(CAN_EN2)를 출력하는 슬레이브 콘트롤러(120S)와, 슬레이브 콘트롤러의 제2 인에이블신호(CAN_EN1)에 따라 동작하여 슬레이브 콘트롤러로부터 전송된 제2 조향각 데이터를 CAN 프로토콜에 따라 처리하여 전송하는 제2 CAN 모듈(130S)과, 제1 CAN 모듈(130M)이나 제2 CAN 모듈(130S)로부터 조향각 데이터를 수신받아 CAN 버스(15)를 통해 전송하는 CAN 트랜시버(140)로 구성된다.As shown in FIG. 2, the dual controller system 100 according to an exemplary embodiment of the present invention receives a detection signal from the AMR sensor 11 and calculates first steering angle data according to a predetermined algorithm to determine a slave controller 120S. The master controller 120M outputs the first CAN enable signal CAN_EN1 after receiving the second steering angle data from the slave controller and detects an error, and the first enable signal of the master controller 120M. A first CAN module 130M that operates according to CAN_EN1 to process and transmit the first steering angle data transmitted from the master controller 120M according to the CAN protocol, and receives a detection signal from the AMR sensor 11. The second steering angle data is calculated and transmitted to the master controller 120M according to an algorithm, and the first steering angle data is received from the master controller 120M to detect an error. Afterwards, the slave controller 120S outputs the second CAN enable signal CAN_EN2 and the second enable signal CAN_EN1 of the slave controller operates to process the second steering angle data transmitted from the slave controller according to the CAN protocol. Second CAN module (130S) and transmits the steering angle data from the first CAN module (130M) or the second CAN module (130S) and transmits through the CAN bus (15). .

도 2를 참조하면, 센서(11)는 스티어링 휠의 조향각을 감지하기 위한 AMR(Anisotropic Magneto Resistance)센서이고, 제1 MCU(120M)와 제2 MCU(120S)는 IPC(Inter Processor Communication)채널을 통해 서로 데이터를 교환할 수 있으며 마스터-슬레이브 방식으로 동작한다. 본 발명의 실시예에서 제1 MCU(120M)는 마스 터이고, 제2 MCU(120S)는 슬레이브이다.Referring to FIG. 2, the sensor 11 is an anisotropic magneto resistance (AMR) sensor for detecting a steering angle of a steering wheel, and the first MCU 120M and the second MCU 120S use an IPC (Inter Processor Communication) channel. They can exchange data with each other and operate in a master-slave fashion. In an embodiment of the present invention, the first MCU 120M is a master and the second MCU 120S is a slave.

마스터 콘트롤러(120M)는 센서(11)로부터 감지신호를 입력받아 소정의 알고리즘에 따라 제1 조향각 데이터를 산출하여 슬레이브 콘트롤러(120S)로 전송함과 아울러 슬레이브 콘트롤러(120S)로부터 제2 조향각 데이터를 전송받아 에러를 검출한 후 제1 인에이블신호(CAN_EN1)를 슬레이브 콘트롤러(120S)로 출력하고, 슬레이브 콘트롤러(120S)의 제2 인에이블신호(CAN_EN2)를 수신받아 다음 표1과 같은 송신 결정 테이블(TX Decision Table)에 의해 송신할 콘트롤러를 결정하여 최종적으로 제1 사용신호(USE_CAN_MCU1)를 출력한다. 슬레이브 콘트롤러(120S)는 센서(11)로부터 감지신호를 입력받아 소정의 알고리즘에 따라 제2 조향각 데이터를 산출하여 마스터 콘트롤러(120M)로 전송함과 아울러 마스터 콘트롤러(120M)로부터 제1 조향각 데이터를 전송받아 에러를 검출한 후 제2 인에이블신호(CAN_EN2)를 마스터 콘트롤러(120M)로 출력하고, 마스터 콘트롤러(120M)의 제1 인에이블신호(CAN_EN1)를 수신받아 다음 표1과 같은 송신 결정 테이블에 의해 송신할 콘트롤러를 결정하여 최종적으로 제2 사용신호(USE_CAN_MCU2)를 출력한다.The master controller 120M receives the detection signal from the sensor 11, calculates the first steering angle data according to a predetermined algorithm, transmits the first steering angle data to the slave controller 120S, and transmits the second steering angle data from the slave controller 120S. After receiving the error detection, the first enable signal CAN_EN1 is outputted to the slave controller 120S, and the second enable signal CAN_EN2 of the slave controller 120S is received. The controller to be transmitted is determined by the TX Decision Table, and finally the first use signal USE_CAN_MCU1 is output. The slave controller 120S receives the detection signal from the sensor 11, calculates the second steering angle data according to a predetermined algorithm, transmits the second steering angle data to the master controller 120M, and transmits the first steering angle data from the master controller 120M. In response to the error detection, the second enable signal CAN_EN2 is output to the master controller 120M, and the first enable signal CAN_EN1 of the master controller 120M is received. The controller to be transmitted is determined by the controller, and finally the second use signal USE_CAN_MCU2 is output.

CAN_EN1
(MCU1)
CAN_EN1
(MCU1)
CAN_EN2
(MCU2)
CAN_EN2
(MCU2)
USE_CAN_MCU1USE_CAN_MCU1 USE_CAN_MCU2USE_CAN_MCU2 DecisionDecision
OFFOFF OFFOFF ONON OFFOFF 양 MCU 이상More than MCU OFFOFF ONON OFFOFF ONON MCU1 이상MCU1 or later ONON OFFOFF ONON OFFOFF 정상 혹은 MCU2 이상Normal or MCU2 or above ONON ONON ONON OFFOFF 데이터 교환 이상Data exchange error

상기 표 1을 참조하면, 제1 MCU(120M)가 출력하는 제1 인에이블신호(CAN_EN1)와 제2 MCU(120S)가 출력하는 제2 인에이블신호(CAN_EN2)가 모두 오프(OFF)이면 양 MCU가 모두 이상이 있는 경우이므로 마스터인 제1 MCU의 제1 사용신호(USE_CAN_MCU1)를 온(ON)시키고 슬레이브인 제2 MCU의 제2 사용신호(USE_CAN_MCU2)는 오프시킨다. 이에 따라 제1 CAN모듈(130M)이 선택되고 제1 CAN모듈(130M)은 마스터인 제1 MCU의 조향각 데이터를 CAN 프로토콜에 따라 처리하여 CAN 트랜시버(140)로 전송하고, 제2 CAN모듈(130S)은 출력을 오픈 드레인으로 설정하여 제1 CAN모듈(130M)이 데이터를 정상적으로 출력할 수 있게 한다.Referring to Table 1, when both of the first enable signal CAN_EN1 output by the first MCU 120M and the second enable signal CAN_EN2 output by the second MCU 120S are both OFF. Since all of the MCUs have abnormalities, the first use signal USE_CAN_MCU1 of the first MCU, which is a master, is turned on and the second use signal USE_CAN_MCU2 of the second MCU, which is a slave, is turned off. Accordingly, the first CAN module 130M is selected, and the first CAN module 130M processes the steering angle data of the first MCU, which is the master, according to the CAN protocol and transmits the data to the CAN transceiver 140 and the second CAN module 130S. ) Sets the output to open drain so that the first CAN module 130M can normally output data.

또한 제1 MCU(120M)가 출력하는 제1 인에이블신호(CAN_EN1)가 오프(OFF)이고, 제2 MCU(120S)가 출력하는 제2 인에이블신호(CAN_EN2)가 온(ON)이면 마스터인 제1 MCU(120M)가 이상이 있는 경우이므로 마스터인 제1 MCU(120M)의 제1 사용신호(USE_CAN_MCU1)를 오프(OFF)시키고 슬레이브인 제2 MCU(120S)의 제2 사용신호(USE_CAN_MCU2)는 온(ON)시킨다. 이에 따라 제2 CAN모듈(130S)이 선택되고 제2 CAN모듈(130S)은 슬레이브인 제2 MCU(120S)의 조향각 데이터를 CAN 프로토콜에 따라 처리하여 CAN 트랜시버(140)로 전송하고, 제1 CAN모듈(130M)은 출력을 오픈 드레인으로 설정하여 제2 CAN모듈(130S)이 데이터를 정상적으로 출력할 수 있게 한다.In addition, when the first enable signal CAN_EN1 output by the first MCU 120M is OFF and the second enable signal CAN_EN2 output by the second MCU 120S is ON, the master is a master. Since the first MCU 120M has an error, the first use signal USE_CAN_MCU1 of the first MCU 120M, which is a master, is turned off, and the second use signal USE_CAN_MCU2 of the second MCU 120S, which is a slave, is turned off. Turns on. Accordingly, the second CAN module 130S is selected, and the second CAN module 130S processes the steering angle data of the second MCU 120S, which is a slave, according to the CAN protocol and transmits the data to the CAN transceiver 140, and the first CAN. The module 130M sets the output to open drain so that the second CAN module 130S can normally output data.

또한 제1 MCU(120M)가 출력하는 제1 인에이블신호(CAN_EN1)가 온(ON)이고, 제2 MCU(120S)가 출력하는 제2 인에이블신호(CAN_EN2)가 오프(OFF)이면 제1 MCU(120M)와 제2 MCU(120S)가 정상이거나 슬레이브인 제2 MCU(120S)가 이상이 있는 경우이므로 마스터인 제1 MCU(120M)의 제1 사용신호(USE_CAN_MCU1)를 온(ON)시키고 슬레이브인 제2 MCU(120S)의 제2 사용신호(USE_CAN_MCU2)는 오프(OFF)시킨다. 이에 따라 제1 CAN모듈(130M)이 선택되어 제1 CAN모듈(130M)은 마스터인 제1 MCU의 데이터를 CAN 트랜시버(140)로 전송하고, 제2 CAN모듈(130S)은 출력을 오픈 드레인으로 설정하여 제1 CAN모듈(130M)이 데이터를 출력할 수 있게 한다.In addition, if the first enable signal CAN_EN1 output by the first MCU 120M is ON and the second enable signal CAN_EN2 output by the second MCU 120S is OFF, the first enable signal CAN_EN1 is turned OFF. Since the MCU 120M and the second MCU 120S are normal or the second MCU 120S that is a slave is abnormal, the first use signal USE_CAN_MCU1 of the first MCU 120M, which is a master, is turned on. The second use signal USE_CAN_MCU2 of the second MCU 120S as a slave is turned off. Accordingly, the first CAN module 130M is selected so that the first CAN module 130M transmits data of the first MCU, which is a master, to the CAN transceiver 140, and the second CAN module 130S sends the output to open drain. By setting, the first CAN module 130M can output data.

그리고 제1 MCU(120M)가 출력하는 제1 인에이블신호(CAN_EN1)와 제2 MCU(120S)가 출력하는 제2 인에이블신호(CAN_EN2)가 모두 온(ON)이면 두 MCU 사이의 데이터 교환에 이상이 있는 경우이므로 마스터인 제1 MCU(120M)의 제1 사용신호(USE_CAN_MCU1)를 온시키고 슬레이브인 제2 MCU의 제2 사용신호(USE_CAN_MCU2)는 오프시킨다. 이에 따라 제1 CAN모듈(130M)이 선택되어 제1 CAN모듈(130M)은 마스터인 제1 MCU의 데이터를 CAN 트랜시버(140)로 전송하고, 제2 CAN모듈(130S)은 출력을 오픈 드레인으로 설정하여 제1 CAN모듈(130M)이 데이터를 출력할 수 있게 한다.If both of the first enable signal CAN_EN1 output from the first MCU 120M and the second enable signal CAN_EN2 output from the second MCU 120S are ON, a data exchange between the two MCUs is performed. In this case, the first use signal USE_CAN_MCU1 of the first MCU 120M, which is a master, is turned on, and the second use signal USE_CAN_MCU2 of the second MCU, which is a slave, is turned off. Accordingly, the first CAN module 130M is selected so that the first CAN module 130M transmits data of the first MCU, which is a master, to the CAN transceiver 140, and the second CAN module 130S sends the output to open drain. By setting, the first CAN module 130M can output data.

캔 트랜시버(140)는 제1 캔(CAN) 모듈(130M)이나 제2 캔(CAN) 모듈(130S)로부터 조향각 데이터를 수신받아 캔(CAN) 버스(15)를 통해 다른 노드로 전송한다.The can transceiver 140 receives steering angle data from the first CAN module 130M or the second CAN module 130S and transmits the steering angle data to another node through the CAN bus 15.

도 3을 참조하면, 본 발명의 듀얼 콘트롤러 시스템(100)에서 2개의 MCU(120M,120S)는 각각 데이터를 연산하여 CAN모듈(130M,130S)을 통해 트랜시버(140)로 시그널을 전송한다. 이때 1개의 트랜시버(140)에 2개의 MCU(120M,120S)가 서로 데이터를 전송하면 2의 데이터가 중복되어 비정상적인 데이터가 출력된다.따라서 본 발명의 실시예에 따른 듀얼 콘트롤러 시스템(100)은 각 MCU가 데이터를 전송하기에 앞서 중재 과정을 처리하여 정상인 어느 하나의 MCU만이 CAN 모듈을 거쳐 트랜시버(140)로 데이터를 전송하게 한다.Referring to FIG. 3, in the dual controller system 100 of the present invention, two MCUs 120M and 120S calculate data and transmit signals to the transceiver 140 through the CAN modules 130M and 130S. In this case, when two MCUs 120M and 120S transmit data to one transceiver 140, data of two is overlapped and abnormal data is output. Accordingly, the dual controller system 100 according to the embodiment of the present invention is used in each case. Before the MCU transmits the data, the arbitration process is performed so that only one MCU that is normal transmits data to the transceiver 140 via the CAN module.

두 MCU(120M,120S)는 동일한 시점에 연산이 완료되어 조향각 데이터를 각각의 상대 MCU에게 MCU간 통신(IPC)을 이용하여 전송한다. 각각의 MCU(120M,120S)는 CAN 트랜시버(140)를 사용하기 위하여 검출된 데이터와 전송받은 데이터를 비교 검출하여 CAN모듈을 인에이블(Enable) 혹은 디스에이블(Disable)한다. 비교 검출 시 MCU1의 데이터1과 MCU2의 데이터2가 공통으로 정상적일 경우, 서로 CAN 트랜시버(140)에 데이터를 출력하기 때문에 충돌이 발생한다. 이를 방지하기 위해 MCU1과 MCU2가 정상적인 데이터일 경우, 마스터인 MCU1을 기준으로 데이터를 전송한다. 또한 두 MCU가 비정상적인 데이터를 검출할 경우도 마스터인 MCU1이 데이터를 전송한다(S11,S21).The two MCUs 120M and 120S complete the calculation at the same time and transmit steering angle data to each counterpart MCU using inter-MCU communication (IPC). Each of the MCUs 120M and 120S compares the detected data with the received data in order to use the CAN transceiver 140 to enable or disable the CAN module. When data 1 of MCU 1 and data 2 of MCU 2 are normally normal at the time of comparison detection, a collision occurs because data is output to CAN transceiver 140 with each other. To prevent this, when MCU1 and MCU2 are normal data, data is transmitted based on MCU1 which is master. In addition, when two MCUs detect abnormal data, MCU1, which is a master, transmits data (S11 and S21).

각 MCU(120M,120S)는 검출된 데이터과 전송된 데이터의 에러를 검출한다. 에러는 기존 Dual SAS에서 검출된 기법과 동일하다. 예컨대, 1ms 샘플링하여 기존 1ms전 데이터에서 기존 데이터가 이동할 수 있는 허용범위를 초과하면 에러로 검출한다. MCU1에서 검출된 데이터와 전송된 데이터를 차례로 에러 검출을 한다. MCU1에서 검출된 데이터에 에러검출 중 에러가 없을 경우, 기준으로 설정이 되어 있으므로 출력ON 신호를 MCU2에게 전송한다. MCU2에서 검출된 데이터에 에러 검출 중 에러가 없을 경우 출력OFF 신호를 MCU1에게 전송한다. 하지만 MCU2는 MCU1 시스템 fail이 발생했을 때는 출력ON신호를 MCU1에게 전송한다. 출력신호 ON시 CAN모듈은 Enable, OFF시 Disable로 설정된다(S12,S13,S22,S23). Each MCU 120M and 120S detects an error between the detected data and the transmitted data. The error is the same as that detected by the existing Dual SAS. For example, if 1ms is sampled and the existing data exceeds the allowable range in which the existing data can move, data is detected as an error. Error detection is performed in order from the data detected by MCU1 and the transmitted data. If there is no error during error detection in the data detected by MCU1, the output ON signal is transmitted to MCU2 because it is set as a reference. If there is no error in error detection in the data detected by MCU2, send output OFF signal to MCU1. However, MCU2 sends output ON signal to MCU1 when MCU1 system fail occurs. When the output signal is ON, the CAN module is set to Enable, and OFF when it is disabled (S12, S13, S22, S23).

각 MCU는 에러 검출 후 출력신호를 입력받아 송신 결정 테이블(TX Decision table)을 참조하여 다시 한번 CAN모듈을 선택(Select)하여 이중으로 확인하여 최종 선택된 MCU의 CAN모듈이 인에이블(Enable)되어 트랜시버(Transceiver:140)로 출력된다. MCU간 Data통신 불량으로 각 MCU에게 Data를 전송하지 못하면, 각 MCU는 검출된 데이터와 비교할 데이터가 없기 때문에 정상으로 인식하여 출력하게 되어 충돌이 발생한다. 이를 방지하기 위하여 각 MCU의 출력신호를 체크(Check)하여 송신 결정 테이블(TX Decision Table)을 거쳐서 최종적으로 출력한다. 즉, 통신이 정상적일 경우 각 MCU는 전송받은 Data와 검출된 Data로 CAN모듈을 선택하며, 각 MCU는 출력신호를 입력받아 송신 결정 테이블(TX Decision Table)을 통해 재확인하여 CAN모듈을 선택한다. 비 정상적일 경우 두 MCU는 모두 정상인 출력 ON신호를 출력함으로 이를 송신 결정 테이블(TX Decision Table)에서 검출하여 충돌을 방지한다(S14,S24).Each MCU receives the output signal after error detection and selects CAN module once more by referring to TX Decision table and double-checks the CAN module of the last selected MCU. It is output as (Transceiver: 140). If data cannot be transmitted to each MCU due to bad data communication between MCUs, each MCU recognizes as normal and outputs because there is no data to compare with the detected data. In order to prevent this, the output signal of each MCU is checked and finally output through the TX Decision Table. In other words, when the communication is normal, each MCU selects the CAN module as the received data and the detected data, and each MCU receives the output signal and reconfirms it through the TX Decision Table to select the CAN module. In case of abnormality, both MCUs output normal output ON signals, thereby detecting them in the transmission decision table (TX Decision Table) to prevent collision (S14, S24).

또한 CAN모듈(130M,130S)에서 CAN 트랜시버(140)로 Data가 전송될 때, 전기적인 신호 High(5v)에서 Low(0v)의 전위차로 Data를 전송한다. CAN모듈(130M,130S)은 Data를 출력하지 않고 대기 상태에서는 전기적인 신호 High를 기본적으로 출력한다. 두 MCU 중 CAN모듈이 선택되어 1개의 MCU만 Data를 출력하면 Low신호에 의해 Transceiver(140)의 입력으로 인가되는데, 선택되지 않은 MCU의 CAN모듈은 대기상태의 High신호를 나타내고 있기 때문에 실제 Data를 Transceiver(140)가 입력으로 인지하지 못한다. 즉, MCU1의 Data가 Low이고 MCU2는 High이므로 실제 입력으로는 2.5V로 Transceiver(140)에 입력된다. 이를 해결하고자 각 MCU의 CAN모듈(TX Port)을 오픈 드레인(Open Drain)으로 설정하여 대기 상태인 MCU의 출력신호를 출력 상태의 신호에 영향이 없게 설정하여 CAN모듈(130M,130S)에서 CAN Transceiver(140)로 Data 전송 시 문제가 없게 한다. 오픈 드레인(Open Drain) 설정은 CAN모듈을 선택(Selecting)할 때 출력되지 않는 MCU만 오픈 드레인(Open Drain)을 설정하여 정상적인 출력이 가능하게 한다(S30).In addition, when data is transmitted from the CAN module (130M, 130S) to the CAN transceiver 140, the data is transmitted from the electrical signal High (5v) to the potential difference of Low (0v). CAN module (130M, 130S) does not output the data, but in the standby state basically outputs the electrical signal High. If the CAN module is selected among the two MCUs and only one MCU outputs data, it is applied to the input of the transceiver 140 by the low signal.The CAN module of the unselected MCUs shows the high signal in the standby state, so the actual data is displayed. Transceiver 140 does not recognize it as an input. That is, since Data of MCU1 is Low and MCU2 is High, it is input to Transceiver 140 at 2.5V as the actual input. To solve this problem, the CAN module (TX port) of each MCU is set to open drain, so that the output signal of the MCU in standby state is not affected by the signal of the output state, and thus the CAN transceiver (CAN Transceiver) in the CAN module (130M, 130S). At 140, there is no problem during data transmission. Open Drain setting enables the normal output by setting Open Drain only for MCUs that are not output when the CAN module is selected (S30).

도 4는 본 발명에 따라 마스터 콘트롤러가 통신을 중재하는 절차를 도시한 순서도이고, 도 5는 본 발명에 따라 슬레이브 콘트롤러가 통신을 중재하는 절차를 도시한 순서도이다.4 is a flowchart illustrating a procedure in which a master controller mediates communication according to the present invention, and FIG. 5 is a flowchart illustrating a procedure in which a slave controller mediates communication according to the present invention.

마스터 콘트롤러(120M)는 도 4에 도시된 바와 같이, 슬레이브 콘트롤러(120S;MCU2)가 비정상인지를 판단하여 정상이면, 데이터가 교환되었는지를 판단하여 데이터가 교환되었으면 산출된 데이터가 유효한 값인지를 판단하여 유효하지 않으면 제1 인에이블신호(CAN_EN1)를 거짓(False)으로 처리한다(S401~S404). MCU2가 장애이거나 데이터가 교환되지 않으면 제1 인에이블신호(CAN_EN1)를 참(True)으로 설정한다(S405).As illustrated in FIG. 4, the master controller 120M determines whether the slave controller 120S (MCU2) is abnormal, and if it is normal, determines whether data has been exchanged, and if the data has been exchanged, determines whether the calculated data is a valid value. If it is not valid, the first enable signal CAN_EN1 is processed as false (S401 to S404). If MCU2 fails or data is not exchanged, the first enable signal CAN_EN1 is set to true (S405).

제1 인에이블신호(CAN_EN1)를 MCU2(120S)로 전송하고, MCU2(120S)로부터 제2 인에이블신호(CAN_EN2)를 수신받아 송신 결정 테이블에 의해 송신 여부를 결정한다(S406~S408).The first enable signal CAN_EN1 is transmitted to the MCU2 120S, the second enable signal CAN_EN2 is received from the MCU2 120S, and it is determined whether to transmit the data using the transmission determination table (S406 to S408).

송신 결정 테이블에 의해 마스터 콘트롤러가 송신 MCU로 결정되면(USE_CAN_MCU1 = ON), 제1 CAN 모듈(130M)을 통해 조향각 데이터를 송신하고 이에 따라 트랜시버(140)가 조향각 데이터를 CAN버스(15)로 송신하게 된다(S409,S410). 만일, 송신 결정 테이블에 의해 마스터 콘트롤러(MCU1)가 송신 MCU가 아니면(USE_CAN_MCU1 = OFF), 제1 CAN모듈(130M)을 디스에이블시킴과 아울러 출력을 오픈 드레인으로 설정하게 한다.When the master controller determines the transmission MCU by the transmission determination table (USE_CAN_MCU1 = ON), the steering angle data is transmitted through the first CAN module 130M, and the transceiver 140 transmits the steering angle data to the CAN bus 15 accordingly. (S409, S410). If the master controller MCU1 is not a transmitting MCU (USE_CAN_MCU1 = OFF) according to the transmission determination table, the first CAN module 130M is disabled and the output is set to open drain.

한편, 슬레이브 콘트롤러(120S)는 도 5에 도시된 바와 같이, 마스터 콘트롤러(MCU1)가 비정상인지를 판단하여 정상이면, 데이터가 교환되었는지를 판단하여 데이터가 교환되었으면 산출된 데이터가 유효한 값인지를 판단하여 유효하지 않으면 제2 인에이블신호(CAN_EN2)를 거짓(False)으로 처리한다(S501~S504). MCU1이 장애이거나 데이터가 교환되지 않으면 제2 인에이블신호(CAN_EN2)를 참(True)으로 설정한다(S505).On the other hand, as shown in FIG. 5, the slave controller 120S determines whether the master controller MCU1 is abnormal, and if it is normal, determines whether data has been exchanged, and if the data has been exchanged, determines whether the calculated data is a valid value. If it is not valid, the second enable signal CAN_EN2 is processed as false (S501 to S504). If MCU1 fails or data is not exchanged, the second enable signal CAN_EN2 is set to true (S505).

제2 인에이블신호(CAN_EN2)를 MCU1로 출력하고, MCU1로부터 제1 인에이블신호(CAN_EN1)를 수신받아 송신 결정 테이블에 의해 송신 여부를 결정한다(S506~S508).The second enable signal CAN_EN2 is output to the MCU1, and the first enable signal CAN_EN1 is received from the MCU1 to determine whether to transmit the data using the transmission determination table (S506 to S508).

송신 결정 테이블에 의해 슬레이브 콘트롤러(120S)가 송신할 MCU로 결정되면(USE_CAN_MCU2 = ON), 제2 CAN 모듈(130S)을 인에이블시켜 제2 CAN모듈(130S)을 통해 데이터를 송신하고 이에 따라 트랜시버(140)가 CAN버스(15)로 데이터를 송신하게 한다(S509,S510). 만일, 송신 결정 테이블에 의해 슬레이브 콘트롤러(120S)가 송신할 MCU가 아니면(USE_CAN_MCU2 = OFF), 제2 CAN모듈(130S)을 디스에이블시킴과 아울러 제2 CAN모듈(130S)의 출력을 오픈 드레인으로 설정하게 한다.When the slave controller 120S determines the MCU to transmit (USE_CAN_MCU2 = ON) according to the transmission decision table, the second CAN module 130S is enabled to transmit data through the second CAN module 130S and accordingly the transceiver Allow the 140 to transmit data to the CAN bus 15 (S509 and S510). If the slave controller 120S is not an MCU to transmit (USE_CAN_MCU2 = OFF) according to the transmission decision table, the second CAN module 130S is disabled and the output of the second CAN module 130S is open drained. To be set.

이상에서 본 발명은 도면에 도시된 일 실시예를 참고로 설명되었으나, 본 발명은 캔(CAN)통신에 한정되지 아니하고, 다른 통신시스템인 Flex Ray 또는 LIN통신 등 여타 통신에서도 적용되며, 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. Although the present invention has been described with reference to an embodiment shown in the drawings, the present invention is not limited to CAN communication, but is also applicable to other communication systems, such as Flex Ray or LIN communication, which are other communication systems. Those skilled in the art will appreciate that various modifications and equivalent other embodiments are possible from this.

도 1은 종래의 조향각 산출 시스템을 도시한 구성 블럭도,1 is a block diagram illustrating a conventional steering angle calculation system;

도 2는 본 발명에 따라 조향각을 산출하기 위한 듀얼 콘트롤러 시스템을 도시한 구성 블럭도, 2 is a block diagram illustrating a dual controller system for calculating a steering angle according to the present invention;

도 3은 본 발명에 따른 듀얼 콘트롤러 시스템의 통신 중재 개념을 도시한 개략도,3 is a schematic diagram illustrating a communication arbitration concept of a dual controller system according to the present invention;

도 4는 본 발명에 따라 마스터 콘트롤러가 통신을 수행하는 절차를 도시한 순서도, 4 is a flowchart illustrating a procedure of performing communication by a master controller according to the present invention;

도 5는 본 발명에 따라 슬레이브 콘트롤러가 통신을 수행하는 절차를 도시한 순서도이다.5 is a flowchart illustrating a procedure in which a slave controller performs communication according to the present invention.

*도면의 주요부분에 대한 부호의 설명DESCRIPTION OF THE REFERENCE NUMERALS

11: 센서 15: CAN 버스11: sensor 15: CAN bus

100: 듀얼 콘트롤러 시스템 120M,120S: MCU100: Dual controller system 120M, 120S: MCU

130M,130S: CAN 모듈 140: CAN 트랜시버130M, 130S: CAN Module 140: CAN Transceiver

Claims (5)

센서로부터 감지 데이터를 입력받아 소정의 알고리즘에 따라 제1 데이터를 산출하여 슬레이브 콘트롤러로 전송함과 아울러 슬레이브 콘트롤러로부터 제2 데이터를 전송받아 에러를 검출한 후 제1 인에이블신호를 슬레이브 콘트롤러로 출력하고, 슬레이브 콘트롤러의 제2 인에이블신호를 수신받아 송신 결정 테이블에 의해 송신 콘트롤러를 결정하여 최종적으로 제1 사용신호를 출력하는 마스터 콘트롤러;After receiving the sensed data from the sensor, the first data is calculated and transmitted to the slave controller according to a predetermined algorithm. The second data is received from the slave controller to detect an error, and then the first enable signal is output to the slave controller. A master controller receiving the second enable signal of the slave controller and determining a transmission controller by a transmission determination table and finally outputting a first use signal; 상기 마스터 콘트롤러의 제1 사용신호에 따라 동작하여 상기 마스터 콘트롤러로부터 전송된 제1 데이터를 CAN 프로토콜에 따라 처리하여 전송하거나 상기 제1 사용신호에 따라 출력을 오픈 드레인으로 설정하는 제1 캔(CAN) 모듈;A first can configured to operate according to a first use signal of the master controller to process and transmit first data transmitted from the master controller according to a CAN protocol, or to set an output to open drain according to the first use signal module; 센서로부터 감지 데이터를 입력받아 소정의 알고리즘에 따라 제2 데이터를 산출하여 상기 마스터 콘트롤러로 전송함과 아울러 상기 마스터 콘트롤러로부터 제1 데이터를 전송받아 에러를 검출한 후 제2 인에이블신호를 상기 마스터 콘트롤러로 출력하고, 상기 마스터 콘트롤러의 제1 인에이블신호를 수신받아 송신 결정 테이블에 의해 송신할 콘트롤러를 결정하여 최종적으로 제2 사용신호를 출력하는 슬레이브 콘트롤러;The sensor receives the sensed data from the sensor, calculates the second data according to a predetermined algorithm, and transmits the second data to the master controller. A slave controller configured to receive a first enable signal of the master controller, determine a controller to be transmitted by a transmission determination table, and finally output a second use signal; 상기 슬레이브 콘트롤러의 제2 사용신호에 따라 동작하여 상기 슬레이브 콘트롤러로부터 전송된 제2 데이터를 CAN 프로토콜에 따라 처리하여 전송하거나 상기 제2 사용신호에 따라 출력을 오픈 드레인으로 설정하는 제2 캔(CAN) 모듈; 및A second can configured to operate according to a second use signal of the slave controller to process and transmit second data transmitted from the slave controller according to a CAN protocol or to set an output to open drain according to the second use signal module; And 상기 제1 캔(CAN) 모듈이나 상기 제2 캔(CAN) 모듈로부터 데이터를 수신받아 캔(CAN) 버스를 통해 전송하는 캔(CAN) 트랜시버를 포함하는 듀얼 콘트롤러 시스템의 통신 중재 장치.And a CAN transceiver configured to receive data from the first CAN module or the second CAN module and transmit the data through a CAN bus. 제1항에 있어서, 상기 송신 결정 테이블은,The method of claim 1, wherein the transmission determination table, 상기 제1 인에이블신호와 상기 제2 인에이블신호가 모두 오프이면 제1 사용신호를 온시키고 제2 사용신호를 오프시켜 상기 마스터 콘트롤러가 출력하게 하고,When the first enable signal and the second enable signal are both off, the first use signal is turned on and the second use signal is turned off so that the master controller outputs it. 상기 제1 인에이블신호가 오프이고 상기 제2 인에이블신호가 온이면 제1 사용신호를 오프시키고 제2 사용신호를 온시켜 슬레이브 콘트롤러가 출력하게 하고,When the first enable signal is off and the second enable signal is on, the first use signal is turned off and the second use signal is turned on so that the slave controller outputs the signal. 상기 제1 인에이블신호가 온이고 상기 제2 인에이블신호가 오프이면 제1 사용신호를 온시키고 제2 사용신호를 오프시켜 마스터 콘트롤러가 출력하게 하며,If the first enable signal is on and the second enable signal is off, the first use signal is turned on and the second use signal is turned off to be output by the master controller. 상기 제1 인에이블신호와 상기 제2 인에이블신호가 모두 온이면 제1 사용신호를 온시키고 제2 사용신호를 오프시켜 상기 마스터 콘트롤러가 출력하게 하는 것을 특징으로 하는 듀얼 콘트롤러 시스템의 통신 중재 장치.And when both of the first enable signal and the second enable signal are on, turn on a first use signal and turn off a second use signal to output the master controller. 마스터 콘트롤러가 센서로부터 수신된 감지데이터를 연산하여 제1 데이터를 산출한 후 슬레이브 콘트롤러로 전송하는 단계;Calculating, by the master controller, the sensed data received from the sensor, and transmitting the first data to the slave controller; 슬레이브 콘트롤러가 센서로부터 수신된 감지데이터를 연산하여 제2 데이터를 산출한 후 상기 마스터 콘트롤러로 전송하는 단계;Calculating, by the slave controller, the sensing data received from the sensor, and calculating the second data and transmitting the second data to the master controller; 상기 마스터 콘트롤러가 제1 데이터와 제2 데이터의 에러 여부를 판단한 후 제1 인에이블신호를 상기 슬레이브 콘트롤러로 전송하는 단계;Determining, by the master controller, whether an error occurs between the first data and the second data and transmitting a first enable signal to the slave controller; 슬레이브 콘트롤러가 제1 데이터와 제2 데이터의 에러 여부를 판단한 후 제2 인에이블신호를 상기 마스터 콘트롤러로 전송하는 단계;After the slave controller determines whether the first data and the second data are in error, transmitting a second enable signal to the master controller; 상기 마스터 콘트롤러와 슬레이브 콘트롤러가 송신 결정 테이블에 따라 제1 인에이블신호와 제2 인에이블신호를 판단하여 송신할 콘트롤러를 결정하는 단계; 및Determining, by the master controller and the slave controller, a controller to transmit by determining a first enable signal and a second enable signal according to a transmission determination table; And 상기 송신 결정 테이블에 의해 결정된 송신할 콘트롤러는 자신의 사용신호를 해당 통신모듈로 출력하여 해당 통신모듈이 데이터를 출력하게 하고, 송신하지 않는 콘트롤러는 해당 통신모듈을 오픈 드레인으로 설정하게 하는 단계를 구비한 것을 특징으로 하는 듀얼 콘트롤러 시스템의 통신 중재 방법.The controller to be transmitted determined by the transmission determination table outputs its use signal to the corresponding communication module so that the corresponding communication module outputs data, and the controller not transmitting sets the corresponding communication module to open drain. Communication arbitration method of a dual controller system, characterized in that. 제3항에 있어서, 상기 송신 결정 테이블은,The method of claim 3, wherein the transmission determination table, 상기 제1 인에이블신호와 상기 제2 인에이블신호가 모두 오프이면 제1 사용신호를 온시키고 제2 사용신호를 오프시켜 상기 마스터 콘트롤러가 출력하게 하고,When the first enable signal and the second enable signal are both off, the first use signal is turned on and the second use signal is turned off so that the master controller outputs it. 상기 제1 인에이블신호가 오프이고 상기 제2 인에이블신호가 온이면 제1 사용신호를 오프시키고 제2 사용신호를 온시켜 슬레이브 콘트롤러가 출력하게 하고,When the first enable signal is off and the second enable signal is on, the first use signal is turned off and the second use signal is turned on so that the slave controller outputs the signal. 상기 제1 인에이블신호가 온이고 상기 제2 인에이블신호가 오프이면 제1 사용신호를 온시키고 제2 사용신호를 오프시켜 마스터 콘트롤러가 출력하게 하며,If the first enable signal is on and the second enable signal is off, the first use signal is turned on and the second use signal is turned off to be output by the master controller. 상기 제1 인에이블신호와 상기 제2 인에이블신호가 모두 온이면 제1 사용신호를 온시키고 제2 사용신호를 오프시켜 상기 마스터 콘트롤러가 출력하게 하는 것을 특징으로 하는 듀얼 콘트롤러 시스템의 통신 중재 방법.And when both of the first enable signal and the second enable signal are on, turn on a first use signal and turn off a second use signal to output the master controller. 제3항에 있어서, 상기 통신 중재 방법은The method of claim 3, wherein the communication arbitration method 자동차에서 스티어링 휠의 조향각을 산출하기 위한 실시간 연산 시스템에 적용되고, 상기 데이터는 조향각 데이터이며, 소정 시간간격으로 샘플링하여 이전의 샘플링 데이터에서 이동할 수 있는 허용범위를 초과하면 에러로 검출하는 것을 특징으로 하는 듀얼 콘트롤러 시스템의 통신 중재 방법.Applied to a real-time arithmetic system for calculating the steering angle of a steering wheel in a vehicle, the data is steering angle data, characterized in that it is detected as an error when the sample exceeds a permissible range of movement from previous sampling data by sampling at a predetermined time interval. Communication arbitration method of a dual controller system.
KR1020080118558A 2008-11-27 2008-11-27 Communication arbituration apparatus and method for dual microcontroller system KR100998416B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080118558A KR100998416B1 (en) 2008-11-27 2008-11-27 Communication arbituration apparatus and method for dual microcontroller system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080118558A KR100998416B1 (en) 2008-11-27 2008-11-27 Communication arbituration apparatus and method for dual microcontroller system

Publications (2)

Publication Number Publication Date
KR20100060111A true KR20100060111A (en) 2010-06-07
KR100998416B1 KR100998416B1 (en) 2010-12-03

Family

ID=42361066

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080118558A KR100998416B1 (en) 2008-11-27 2008-11-27 Communication arbituration apparatus and method for dual microcontroller system

Country Status (1)

Country Link
KR (1) KR100998416B1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012169687A1 (en) * 2011-06-07 2012-12-13 대성전기공업 주식회사 Device and method for detecting error in dual controller system
KR101242396B1 (en) * 2011-10-11 2013-03-12 대성전기공업 주식회사 Error detection apparatus and method for dual microcontroller system
KR101242398B1 (en) * 2011-06-07 2013-03-12 대성전기공업 주식회사 Error detection apparatus and method for dual microcontroller system
KR101242407B1 (en) * 2011-10-18 2013-03-18 대성전기공업 주식회사 Error detection apparatus and method for dual microcontroller system
KR101273278B1 (en) * 2011-10-11 2013-06-11 대성전기공업 주식회사 Error detection apparatus and method for dual microcontroller system
CN103838189A (en) * 2012-11-20 2014-06-04 北汽福田汽车股份有限公司 CAN communication monitoring protection device and vehicle
KR20160114851A (en) * 2015-03-25 2016-10-06 현대오토에버 주식회사 Vehicle network control system and vehicel network control method
CN110579986A (en) * 2018-06-08 2019-12-17 硅工厂股份有限公司 System and method for wirelessly transmitting and receiving security information

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101752454B1 (en) 2015-06-03 2017-07-03 코츠테크놀로지주식회사 Data loss prevention system when automatic switching of fiber channel duplex communication channel and method thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100738572B1 (en) * 2006-06-07 2007-07-11 현대중공업 주식회사 H-bridge multi-level inverter having a dual controller

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102933443B (en) * 2011-06-07 2015-11-25 大星电机工业株式会社 The error detector element of double-controller system and method
CN102933443A (en) * 2011-06-07 2013-02-13 大星电机工业株式会社 Device and method for detecting error in dual controller system
KR101242398B1 (en) * 2011-06-07 2013-03-12 대성전기공업 주식회사 Error detection apparatus and method for dual microcontroller system
WO2012169687A1 (en) * 2011-06-07 2012-12-13 대성전기공업 주식회사 Device and method for detecting error in dual controller system
US9003271B2 (en) 2011-06-07 2015-04-07 Daesung Electric Co., Ltd. Error detecting device and method of a dual controller system
KR101242396B1 (en) * 2011-10-11 2013-03-12 대성전기공업 주식회사 Error detection apparatus and method for dual microcontroller system
KR101273278B1 (en) * 2011-10-11 2013-06-11 대성전기공업 주식회사 Error detection apparatus and method for dual microcontroller system
KR101242407B1 (en) * 2011-10-18 2013-03-18 대성전기공업 주식회사 Error detection apparatus and method for dual microcontroller system
CN103838189A (en) * 2012-11-20 2014-06-04 北汽福田汽车股份有限公司 CAN communication monitoring protection device and vehicle
CN103838189B (en) * 2012-11-20 2016-05-04 北汽福田汽车股份有限公司 CAN communication monitoring protector and vehicle
KR20160114851A (en) * 2015-03-25 2016-10-06 현대오토에버 주식회사 Vehicle network control system and vehicel network control method
CN110579986A (en) * 2018-06-08 2019-12-17 硅工厂股份有限公司 System and method for wirelessly transmitting and receiving security information
US11953873B2 (en) 2018-06-08 2024-04-09 Silicon Works Co., Ltd. System and method for wirelessly transmitting and receiving safety information

Also Published As

Publication number Publication date
KR100998416B1 (en) 2010-12-03

Similar Documents

Publication Publication Date Title
KR100998416B1 (en) Communication arbituration apparatus and method for dual microcontroller system
US9003271B2 (en) Error detecting device and method of a dual controller system
US7483778B2 (en) Redundant array of control devices
US9578047B2 (en) Method and system for reflectometry based communication network monitoring, intrusion detection, and message authentication
KR101572940B1 (en) Method and system for restoring communication disruption using gateway
EP3042471B1 (en) Safety firlter in a vehicle network
JP2018518857A (en) Method and apparatus for providing redundancy to a vehicle electronic control system
US20210258187A1 (en) Electronic control device, electronic control method, and recording medium
US20150178166A1 (en) Apparatus and method for monitoring multiple micro-cores
US10951547B2 (en) Message sequence evaluation for redundant communication system
JP7206410B2 (en) Safety systems and methods of operating safety systems
KR101203872B1 (en) Error detection apparatus and method for dual microcontroller system
JP5071340B2 (en) Gateway device, vehicle network, one-side disconnection detection method
KR101937407B1 (en) Apparatus and method for monitoring Microcontroller Unit
CN109613846B (en) Dual-redundancy overload voting starting method
KR101242398B1 (en) Error detection apparatus and method for dual microcontroller system
JP2009302783A (en) Failure detecting method and failure detection system of communication network
CA3004563A1 (en) Methods for managing communications involving a lockstep processing system
AU2012323190B2 (en) Method for operating a control network, and control network
KR101039926B1 (en) Control system for fault diagnosis in vehicle
JP2009111911A (en) Communication apparatus, communication system, and communication method
US10541830B2 (en) Serial communication system
KR101242407B1 (en) Error detection apparatus and method for dual microcontroller system
JP2008005191A (en) Communication system
US20130211661A1 (en) Method and control system for carrying out a plausibility check of a first driver input sensor with regard to a second driver input sensor which is different from the first drivewr input sensor of a motor vehicle

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20131105

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141024

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151019

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161018

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181016

Year of fee payment: 9