KR20170040326A - 버스 시스템의 가입자국용 통신 제어 장치, 프로그래밍 툴, 그리고 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 가입자국들의 프로그래밍 방법 - Google Patents

버스 시스템의 가입자국용 통신 제어 장치, 프로그래밍 툴, 그리고 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 가입자국들의 프로그래밍 방법 Download PDF

Info

Publication number
KR20170040326A
KR20170040326A KR1020177006117A KR20177006117A KR20170040326A KR 20170040326 A KR20170040326 A KR 20170040326A KR 1020177006117 A KR1020177006117 A KR 1020177006117A KR 20177006117 A KR20177006117 A KR 20177006117A KR 20170040326 A KR20170040326 A KR 20170040326A
Authority
KR
South Korea
Prior art keywords
subscriber
bus system
programming
subscriber stations
stations
Prior art date
Application number
KR1020177006117A
Other languages
English (en)
Other versions
KR102423667B1 (ko
Inventor
크리스티안 호어스트
디어크 외어텔
림 당
Original Assignee
로베르트 보쉬 게엠베하
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 로베르트 보쉬 게엠베하 filed Critical 로베르트 보쉬 게엠베하
Publication of KR20170040326A publication Critical patent/KR20170040326A/ko
Application granted granted Critical
Publication of KR102423667B1 publication Critical patent/KR102423667B1/ko

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/40169Flexible bus arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/0816Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle

Abstract

본 발명은, 버스 시스템(1)용 가입자국(20), 그리고 상이한 프로토콜에 따라 통신하는 가입자국들(10, 20)을 포함하는 버스 시스템(1)에서 개별 가입자국들(20)을 프로그래밍하기 위한 방법에 관한 것이다. 가입자국(20)은, 버스 시스템(1)의 버스(5)에 대한 가입자국(10, 20)의 충돌없는 배타적 액세스가 적어도 일시적으로 보장되는 버스 시스템(1)의 하나 이상의 추가 가입자국(10; 20)을 위해/추가 가입자국으로부터 하나 이상의 메시지(7, 8, 9)를 생성하거나 판독하기 위한 통신 제어 장치(21)를 가지며, 이 통신 제어 장치(21)는, 버스 시스템(1)에서 하나 이상의 추가 가입자국(10)의 프로그래밍 준비를 위해, 하나 이상의 추가 가입자국(10)이 능동 에러 플래그를 포함한 에러 프레임(8)을 더 이상 송출하지 않는 에러 상태에 있게 될 때까지, 상기 하나 이상의 추가 가입자국(10)으로 하여금 에러 프레임(8)을 송출하게 하는 메시지들(7)을 송신하도록 구성된다.

Description

버스 시스템의 가입자국용 통신 제어 장치, 프로그래밍 툴, 그리고 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 가입자국들의 프로그래밍 방법{COMMUNICATION CONTROL DEVICE FOR A SUBSCRIBER STATION OF A BUS SYSTEM, PROGRAMMING TOOL AND METHOD FOR PROGRAMMING SUBSCRIBER STATIONS IN A BUS SYSTEM WHICH HAS SUBSCRIBER STATIONS COMMUNICATING ACCORDING TO DIFFERENT PROTOCOLS}
본 발명은, 버스 시스템의 가입자국을 위한 통신 제어 장치, 프로그래밍 툴, 그리고 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 개별 가입자국들을 프로그래밍하기 위한 방법에 관한 것으로, 상기 버스 시스템은 특히, 클래식-CAN 가입자국들과 CAN-FD 가입자국들이 존재하며 통신할 수 있는 버스 시스템이다.
센서들과 제어 유닛들 간의 통신을 위해, CAN 버스 시스템이 널리 보급되었다. 이런 CAN 버스 시스템은 예컨대 자동차에서 이용된다. CAN 버스 시스템의 경우, 메시지는, ISO11898에서 CAN 규격에 기술된 것과 같은 CAN 프로토콜을 이용하여 전송된다. 최근에는 이를 위해 추가로, 예컨대 규격 "CAN with Flexible Data-Rate, 규격 버전 1.0"(출처: http://www.semiconductors.bosch.de)에 상응하게 메시지가 전송되는 CAN-FD 등과 같은 기술들도 소개되었다. 상기 기술들의 경우, 데이터 필드들의 영역에서 더 상위의 클록 제어를 이용함으로써, 최대로 가능한 데이터 전송률이 1Mbit/s의 값 이상으로 상승한다.
본 출원서에 따른 클래식-CAN 가입자국은 현재 유효한 ISO11898-1에 준하여 구현된 것이면서 CAN FD를 지원하지 않으며, CAN FD를 허용하지도 않는다. 클래식-CAN 가입자국이 CAN-FD 메시지를 수신하면, 상기 가입자국은 에러 메시지(ErrorMessages) 또는 에러 프레임(Error Frames)을 송신한다.
그와 달리, CAN-FD 가입자국의 경우, 향후 도입될 ISO11898-1 표준 CAN FD(CAN with Flexible Datarate) 프로토콜(현재 초안 작업 중이며, 작업은 2014년 연말에 끝날 것으로 추측하고 있음)이 실행된다고 한다. CAN-FD 가입자국은 CAN-FD 메시지뿐만 아니라 클래식-CAN 메시지도 송신하고 수신할 수 있다.
클래식-CAN 및 CAN-FD 가입자국들로 구성되는 네트워크 또는 버스 시스템에서는 클래식-CAN 메시지들만 송신될 수 있는데, 그 이유는 그렇지 않으면 CAN 에러 프레임 메커니즘이 작용함에 따라 통신을 상당히 교란시키기 때문이다. 그러나 특정 작동 모드들에서는, 특히 차량 내부의 버스 시스템에서 개별 제어 유닛들을 업데이트 프로그래밍하는 용례에서, 버스 시스템의 두 가입자 간에 더욱 신속한 점대점 통신이 이용되어야 한다.
상기 구성에서도 CAN-FD 메시지들의 송신을 가능하게 하기 위해, 클래식-CAN 가입자국들이 에러 메시지들을 송신하지 않는 점을 생각해볼 수 있다. 그 가능성 중 하나는, 관련 클래식-CAN 가입자국들이 이들의 CAN 프로토콜 컨트롤러를 비활성화하거나, 모니터링 모드(MonitorMode)로 전환되는 것이다. 또 다른 가능성은, 클래식-CAN 가입자국들에서 부분 네트워킹 트랜시버를 사용하고, 상기 가입자국들은 이들이 비활성화되는 "수면 모드" 상태로 전환되는 것이다.
상기 두 가지 가능성 모두 상황에 따라 네트워크 내 클래식-CAN 가입자국의 매칭을 요구한다. 상기 매칭은, 프로토콜 컨트롤러를 비활성화시키기 위해, 소프트웨어 기술로 수행되어야 한다. 또는, 하드웨어에 부분 네트워킹 가능 트랜시버를 확장시키는 방식으로도 수행될 수 있다.
문제는, 언급한 가능성들이 차량 내 기존 네트워크에서 항시 구현될 수 있는 것이 아니라는 데 있다.
혼합 네트워크에서 CAN-FD 메시지들의 송신이 가능한, 앞에서 언급한 문제의 해결을 위한 추가 가능성은, 네트워크로부터 프로그래밍할 CAN-FD 가입자국을 분리하여 별도의 프로그래밍국(programming station)에서 CAN FD를 통해 프로그래밍하는 것이다.
그러나 생산 중 프로그래밍은 엄격한 클록 주기와 관련되어 있기 때문에, 상기 분리 버전도 항상 구현될 수는 없다. 기존 네트워크의 클래식-CAN 가입자국들이 매칭될 수 없고 프로그래밍할 CAN-FD 가입자국의 분리 역시 불가능하다면, 최소의 공통분모인 클래식-CAN 포맷이 프로그래밍할 데이터의 전송을 위해 이용된다. 그에 따라, CAN-FD 가입자국들을 위해서도 CAN FD 포맷에 따른 전송은 더 이상 불가능하다.
그러므로 본 발명의 과제는, 앞에서 언급한 문제들을 해결하는, 버스 시스템의 가입자국을 위한 통신 제어 장치, 프로그래밍 툴, 그리고 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 개별 가입자국들을 프로그래밍하기 위한 방법을 제공하는 것이다. 특히, 본 발명의 과제는, 클래식-CAN 가입자국들과 CAN-FD 가입자국들을 포함하는 혼합 버스 시스템에서도 CAN-FD 포맷에 따른 전송을 가능하게 하는, 버스 시스템의 가입자국을 위한 통신 제어 장치, 프로그래밍 툴, 그리고 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 개별 가입자국들을 프로그래밍하기 위한 방법을 제공하는 것이다.
상기 과제는, 청구항 제1항의 특징들을 갖는, 버스 시스템의 가입자국용 통신 제어 장치를 통해 해결된다. 통신 제어 장치는, 버스 시스템의 버스에 대한 가입자국의 충돌없는 배타적 액세스가 적어도 일시적으로 보장되는 버스 시스템의 하나 이상의 추가 가입자국을 위해/추가 가입자국으로부터 하나 이상의 메시지를 생성하거나 판독하도록 구성되며, 상기 통신 제어 장치는, 하나 이상의 추가 가입자국이 능동 에러 플래그(active error flag)를 포함한 에러 프레임을 더 이상 송출하지 않는 에러 상태에 있게 될 때까지, 상기 하나 이상의 추가 가입자국으로 하여금 에러 프레임을 송출하게 하는 메시지들을 송신하는 동안, 버스 시스템에서 하나 이상의 추가 가입자국의 프로그래밍을 준비하도록 구성된다.
통신 제어 장치는, 기존 클래식-CAN 가입자국들을 변경하거나 프로그래밍할 CAN-FD 가입자국을 분리하지 않고도, 클래식-CAN 및 CAN-FD 가입자국들로 구성된 혼합 네트워크에서 CAN-FD 전송을 통한 CAN-FD 가입자국의 프로그래밍을 가능하게 한다.
통신 제어 장치에 의해 실행되는 상기 방법은, 오늘날 모든 가입자국에서 전형적으로 구현되고 있고, 따라서 이미 가용한 CAN 가입자국들의 메커니즘을 이용한다. 그 결과, 클래식-CAN 가입자국들을 위한 개장 비용(retrofitting costs)이 최소화된다.
통신 제어 장치의 바람직한 추가 구현예들은 특허 종속 청구항들에 명시되어 있다.
추가 가입자국들이 에러 프레임을 더 이상 송출하지 않는 에러 상태는 ISO11898의 CAN 규격에 따른 "Error Passive" 또는 Bus Off" 상태일 수 있다.
가입자국들의 메시지들은 CAN-FD 메시지들일 수 있다.
그 외에도, 앞에서 언급한 과제는, 특허 청구항 제4항에 따른 버스 시스템용 프로그래밍 툴을 통해 해결된다. 프로그래밍 툴은, 버스 시스템의 버스에 대한 가입자국의 충돌없는 배타적 액세스가 적어도 일시적으로 보장되는 버스 시스템의 가입자국을 프로그래밍하기 위한 장치를 포함하며, 이 장치는, 추가 가입자국이 능동 에러 플래그를 포함한 에러 프레임을 더 이상 송출하지 않는 에러 상태에 있게 될 때까지, 상기 추가 가입자국으로 하여금 에러 프레임을 송출하게 하는 메시지들을 송신하는 동안, 버스 시스템에서 가입자국의 프로그래밍을 준비하도록 구성된다.
프로그래밍 툴은, 앞에서 통신 제어 장치와 관련하여 언급한 것과 동일한 장점들을 제공한다.
전술한 통신 제어 장치는, 하나의 버스 라인과, 상기 버스 라인을 통해 서로 통신할 수 있게 연결된 가입자국들을 추가로 포함하는 버스 시스템의 부분일 수 있다. 이 경우, 가입자국들 중 적어도 2개의 가입자국은 전술한 통신 제어 장치를 포함하며, 가입자국들 중 적어도 하나의 가입자국은 추가 가입자국이다.
그 외에, 버스 시스템은 전술한 프로그래밍 툴을 추가로 포함할 수 있으며, 이 경우, 메시지의 송신을 위해, 프로그래밍할 가입자국들 또는 프로그래밍 툴은, 가입자국들 중 하나의 가입자국의 프로그래밍을 준비하도록 구성된다.
프로그래밍 툴은, 프로그래밍할 가입자국들을 통한 메시지의 송신을 UDS 진단 서비스를 통해 시작하도록 구성될 수도 있다.
앞에서 언급한 과제는, 특허 청구항 제8항에 따른, 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 개별 가입자국들을 프로그래밍하기 위한 방법을 통해서도 해결된다. 상기 방법은, 통신 제어 장치를 이용하여, 버스 시스템의 버스에 대한 가입자국의 충돌없는 배타적 액세스가 적어도 일시적으로 보장되는 버스 시스템의 하나 이상의 추가 가입자국을 위해/추가 가입자국으로부터 하나 이상의 메시지를 생성하거나 판독하는 단계와, 버스 시스템에서 하나 이상의 추가 가입자국의 프로그래밍을 준비하기 위해, 하나 이상의 추가 가입자국이 능동 에러 플래그를 포함한 에러 프레임을 더 이상 송출하지 않는 에러 상태에 있게 될 때까지, 하나 이상의 추가 가입자국으로 하여금 에러 프레임을 송출하게 하는 메시지들을 송신하는 단계를 포함한다.
본원의 방법은, 가급적 UDS 진단 서비스("Control Communication - disable non-diagnostic communication")를 이용한다.
본원의 방법은, 앞에서 통신 제어 장치와 관련하여 언급한 것과 동일한 장점들을 제공한다.
본 발명의 또 다른 가능한 구현예들은 전술한 또는 하기에서 실시예들과 관련하여 기술되는 특징들 또는 실시형태들의 명시되지 않은 조합들도 포함한다. 이 경우, 통상의 기술자는 개별 양태들도 개선 또는 보완으로서 본 발명의 각각의 기본 형태에 부가할 것이다.
하기에서 본 발명은 첨부한 도면을 참조하여 실시예들에 따라 더 상세하게 기재된다.
도 1은 제1 실시예에 따른 버스 시스템의 간략한 블록회로도이다.
도 2는 제1 실시예에 따른 프로그래밍 동안 이용되는 ISO 11898-1에 따른 CAN 가입자국의 상태 전환을 도시한 개략도이다.
도 3은 제1 실시예에 따른 방법의 흐름도이다.
도면들에서 동일하거나 기능이 동일한 요소들은, 달리 명시되지 않는 한, 동일한 도면부호들을 갖는다.
도 1에는, 예컨대 CAN 버스 시스템, CAN-FD 버스 시스템 등일 수 있는 버스 시스템(1)이 도시되어 있다. 버스 시스템(1)은 차량, 특히 자동차, 항공기 등에서, 또는 병원 등에서 이용될 수 있다.
도 1에서, 버스 시스템(1)은 버스 라인(5)에 각각 연결되어 있는 복수의 가입자국(10, 20)과 하나의 프로그래밍 툴(30)을 포함한다. 버스 라인(5)을 경유하여, 메시지들(7, 8, 9)은 신호들의 형태로 개별 가입자국들(10, 20) 간에 전송될 수 있다. 이를 위해, 가입자국들(10)은 통신 제어 장치(11)와, 송/수신 장치(12)(트랜시버)와, 수신 에러 카운터(REC)와, 송신 에러 카운터(TEC)를 포함한다. 가입자국들(20)은 통신 제어 장치(21)와, 송/수신 장치(22)(트랜시버)와, 수신 에러 카운터(REC)와, 송신 에러 카운터(TEC)를 포함한다. 프로그래밍 툴(30)은 장치(31)를 포함한다. 송/수신 장치들(21, 22)은, 도 1에는 도시되어 있지 않지만, 버스 라인(5)에 각각 연결되어 있다.
가입자국들(10, 20)은 예컨대 자동차의 제어 유닛들 또는 표시 장치들일 수 있다. 가입자국들(10)은 현재 유효한 ISO11898-1에 준하는 클래식-CAN 가입자국들이며, CAN FD를 지원하지도, 그리고 CAN FD를 허용하지도 않는다. 이와 달리, 가입자국들(20)은, 향후 도입될 ISO11898-1 표준 CAN FD(CAN with Flexible Datarate) 프로토콜(현재 초안 작업 중이며, 작업은 2014년 연말에 끝날 것으로 추측하고 있음)을 실행하는 CAN-FD 가입자국들이다. 가입자국(20)은 CAN-FD 메시지(7, 8)뿐만 아니라 클래식-CAN 메시지(9)도 송신하고 수신할 수 있다. 클래식-CAN 메시지들(8)은 능동 에러 플래그를 포함하는 에러 프레임들이다. CAN-FD 메시지들(9)은 메시지들(7) 중 하나의 수신 긍정 응답(positive acknowledgement)을 위한 프레임들이다. 프로그래밍 툴(30)도 마찬가지로 메시지들(7)을 버스(5)로 송신할 수 있다.
따라서, 메시지들(7, 8)은 CAN-FD 메시지들인 한편, 메시지들(9)은 클래식-CAN 메시지들이다. 그러므로 통신 제어 장치들(11)은 많은 부분에서 CAN 컨트롤러와 같은 기능들을 갖는다. 통신 제어 장치들(21) 및 장치(31)는 많은 부분에서 CAN-FD 컨트롤러와 같은 기능들을 가지지만, 메시지들(9)도 CAN 프로토콜에 따라 판독되고 생성될 수 있다.
가입자국들(10) 중 하나가 메시지(7)를 수신하면, 그 가입자국(10)은 그에 대한 반응으로서 에러 메시지(이른바 ErrorMessage) 또는 에러 프레임(이른바 Error Frame), 말하자면 메시지(9)를 송신한다. 그에 따라, 버스 라인(5) 상에서의 통신이 교란된다.
개별 가입자국들(10, 20)의 업데이트 프로그래밍 작동 모드에서는, 버스 시스템(1)의 두 가입자국(10, 20) 간에 더욱 신속한 점대점 통신이 이용되어야 한다. 그러므로 가입자국들(20) 중 하나에 의해 하기 방법이 실행된다. 이 방법의 수행에 따라, 기존 클래식-CAN 가입자국들(10)을 변경하거나 프로그래밍할 CAN-FD 가입자국들(20)을 분리하지 않고도, 클래식-CAN 및 CAN-FD 가입자국들(10, 20)로 구성된 혼합 버스 시스템(1)에서 CAN-FD 전송을 통한 CAN-FD 가입자국의 프로그래밍이 수행될 수 있다.
즉, 본원의 방법은 가입자국(20)의 프로그래밍을 준비하고, 그에 따라 예컨대 차량 내에 장착되어 있는 가입자국들(10, 20) 및 버스 시스템(1)의 정상 모드는 아니다. 그러므로 정상 모드로 버스 시스템(1)의 복귀는 모든 가입자국(10, 20)의 재시작에 의해 허용된다.
본원의 방법에서는, 더욱 신속한 전송 변형예를 지원하지 않는 모든 가입자국(10)이, 전용으로, 자신들이 메시지들(9), 즉, 능동 에러 플래그(6개의 연속 우성 비트)를 포함한 CAN 에러 프레임들을 송신하지 않는 에러 상태로 전환된다.
도 2에는, ISO 11898-1에 기반한 CAN 가입자국들(10)의 가능한 상태들(40, 50, 60)이 도시되어 있다. 상태(40)는, CAN 가입자국(10)이 메시지(7, 8)의 수신기로서 메시지(9), 즉, 능동 에러 플래그(6개의 연속 우성 비트)를 포함한 CAN 에러 프레임을 송신하는 "Error Active"(수신기) 상태이다. 이 상태는 ISO 11898-1에 따라 초기화 요청(R1)(Initialization_Request Init)을 통해, 또는 CAN-FD 메시지(7)의 송신을 통해 달성된다. 수신 에러 카운터(REC) > 127이거나, 송신 에러 카운터(TEC) > 127인 점이 적용되는 조건 R2가 충족되면, CAN 가입자국(10)은 메시지(7, 8)의 수신기로서 "Error Passive" 상태(50)로 전환된다. 그런 다음 반대로 조건 R21이 충족되면, CAN 가입자국(10)은 메시지(7, 8)의 수신기로서 "Error Passive" 상태(50)로부터 다시 "Error Active" 상태(40)로 복귀한다. 그러나 상태(50)에서, 송신 에러 카운터(TEC) > 255가 적용되는 조건 R3이 충족되면, CAN 가입자국(10)이 메시지(7, 8)의 수신기로서 "Bus Off" 상태(60)로 전환되고, 그에 따라 메시지들을 더 이상 송신할 수 없다. 사용자 요청이면서 11개의 연속 열성 비트의 128회 발생이라는 조건 R4를 통해, CAN 가입자국(10)은 다시 "Error Active"(수신기) 상태(40)로 복귀한다.
상태들(50, 60), 즉, "Error Passive" 및 "Bus Off" 상태에서, 가입자국들(10)은 메시지들(9), 즉, 능동 에러 플래그를 포함한 에러 프레임들을 송신하지 않거나, 극히 소량의 메시지들(9), 즉, 소량의 에러 프레임을 송신함으로써, CAN-FD 가입자국들(20)의 통신은 CAN 가입자국들(10)의 더욱 신속한 전송 버전, CAN FD를 이용하여 설사 있다고 하더라도 중대하게 교란되지 않게 된다.
그런 후에 비로소, 프로그래밍 툴(30)로부터 프로그래밍할 가입자국(20)으로 CAN FD 포맷에서 프로그래밍할 데이터의 전송이 시작된다. "Error Passive" 상태(50) 또는 "Bus Off" 상태(60)에 있는 가입자국들(10)은, CAN FD에 따른 더욱 신속한 전송 동안에도 프로그래밍할 가입자국(20)의 프로그래밍을 위해 상기 상태들(50, 60) 중 하나의 상태에서 유지되어야 한다.
도 3에는, 전술한 방법이 흐름도로 훨씬 더 정확하게 도시되어 있다. 개략도에서, 전술한 방법은, 프로그래밍 툴(30)에 의해, UDS 진단 서비스("Routine Control - change error state of Classic-CAN nodes")를 통해 호출된다. 프로그래밍할 가입자국(20)이 상기 루틴을 제공하고 초기 CAN-FD 메시지들(7)의 송신기의 역할을 담당한다. 상기 루틴은, 프로그래밍할 가입자국(20)으로부터 송신된 CAN-FD 메시지들(7)이 버스 시스템(1)에서 메시지들(8)(에러 프레임들)을 생성하지 않는 경우, 긍정적으로 종결된다. 본원 방법의 루틴의 긍정적인 종결 후에 비로소, 표준 프로그래밍 시퀀스가 진행된다. 이 시점부터, CAN-FD 메시지들(7)이 프로그래밍에 이용될 수 있으며, 유리한 시점은, 예컨대 프로그래밍할 가입자국(20)이 이미 부트로더(Bootloader)로 전환된 이후일 수 있다. 프로그래밍 툴(30)은, UDS 명령 "Link Control - switch to CAN FD communications"을 통해, 프로그래밍할 가입자국(20)에 언제부터 통신이 CAN-FD 메시지들(7)의 사용으로 전환될 것인지를 시그널링할 수 있는 가능성을 갖는다.
상기 방법은, 오늘날 모든 가입자국(10, 20)에서 전형적으로 구현되고 그에 따라 이미 가용한 CAN 가입자국들(10)의 메커니즘들을 이용한다. 명백하게는 UDS 진단 서비스("Control Communication - disable non-diagnostic communication")가 이용된다. UDS(Unified Diagnostic Services)는 ISO 14229에 규정되어 있는 자동차 전자 장치의 통신 프로토콜이다. UDS 진단 서비스("통신 제어 - 비진단 통신 비활성화")는 오늘날 일반적으로 이미 프로그래밍 시퀀스의 부분이며 그에 따라 모든 가입자국(10, 20)에 구현되어 있다.
가입자국(20)의 프로그래밍을 위한 방법이 시작됨에 따라, 단계 S1에서 프로그래밍 툴(30)에 의해 모든 가입자국(10, 20)으로 기능적으로 주소 지정된 UDS 명령(Tester Present)의 주기적 전송이 시작된다. 그럼으로써, 클래식-CAN 가입자국들(10)이 다시 송신을 착수하는 점이 방지되어야 한다("Tester Present - suppress positive response"). UDS 명령의 주기적인 송신은 차후에 전체 프로그래밍 시퀀스 동안 실시된다. 그런 다음, 흐름도는 단계 S2로 진행한다.
단계 S2에서, 모든 가입자국(10, 20)으로, 확장된 기능으로 전환하기 위해(switch to extended session), 기능적으로 주소 지정된 UDS 명령(Diagnostic Session Control)이 시작된다. 그런 다음, 흐름도는 단계 S3으로 진행한다.
단계 S3에서, 모든 가입자국(10, 20)으로, 비진단 통신을 비활성화하기 위해(disable non-diagnostic communication), 기능적으로 주소 지정된 UDS 명령(Communication Control)이 시작된다. 그런 다음, 흐름도는 단계 S4로 진행한다.
단계 S4에서는, 경우에 따라 에러 검출의 비활성화, 논리 플래그의 검사 등과 같은 추가의 준비 단계들이 수행된다. 그러므로 단계 S4는 생략될 수도 있다. 그런 다음, 흐름도는 단계 S31로 진행한다.
단계 S31에서는 다시, 단계 S3에서처럼, 모든 가입자국(10, 20)으로, 비진단 통신을 비활성화하기 위해(disable non-diagnostic communication), 기능적으로 주소 지정된 UDS 명령(Communication Control)이 시작된다. 그런 다음, 흐름도는 단계 S5로 진행한다.
단계 S5에서, 프로그래밍할 가입자국(20)으로, 가입자국들(10)의 에러 상태를 변경하기 위해(change error state of Classic-CAN node), 물리적으로 주소 지정된 UDS 명령(Routine Control)이 시작된다. 이는, 프로그래밍 프로세스에 관여하지 않는 클래식-CAN 가입자국(10)을 에러 상태로 전환하기 위해 수행된다. 이를 위해, 가입자국들(20) 중 하나의 가입자국 또는 프로그래밍 툴이 메시지들(7), 다시 말해 CAN-FD 메시지들을 송신한다. 그에 이어서, 클래식-CAN 가입자국(10)은 메시지들(9), 다시 말해 에러 프레임들을 송신하고, 자신의 내부 수신 에러 카운터(REC)를 증분시킨다. CAN-FD 메시지(7)의 송신기로서의 가입자국(20)은 메시지들(8)로 인해 자신의 내부 송신 에러 카운터(TEC)를 증분시킨다. 그러나 버스 시스템(1)에서는 하나 이상의 추가 CAN-FD 가입자국(20)이 가용하기 때문에, CAN-FD 메시지들(7)은 메시지(8)로써 긍정 응답이 되고, 그에 따라 송신기의 송신 에러 카운터(TEC)는 다시 감분된다. 카운터들(REC, TEC)의 값에 따라, CAN 가입자국들(10)은, 도 2와 관련하여 기술한 것처럼, 자신들의 상태를 변경한다. 이 경우, CAN-FD 가입자국(20)은 메시지들(7)의 송신기로서 마찬가지로 "Error Passive" 상태(50)로, 그리고 그에 이어서 "Bus Off" 상태(60)로 전환될 수 있다.
CAN-FD 가입자국(20)이 메시지들(7)의 송신기로서 자신의 상태를 전환하는 점, 다시 말해 더 이상 "Error Active" 상태(40)에 있지 않은 점에 한해, CAN-FD 가입자국(20)은 메시지들(7)의 송신기로서 상기 상태 전환을 검출하여, 자체적으로 다시 "Error Active" 상태(40)로 전환되어야 한다. 이러한 전환은, 예컨대 통신 제어 장치(21)가 다시 시작됨으로써 수행될 수 있다. 그런 다음, CAN-FD 가입자국(20)은 CAN FD에 따른 더욱 빠른 전송률로 추가 메시지들(7)을 송신한다. CAN-FD 가입자국(20)은, 자신의 내부 에러 카운터들(REC 및 TEC)이 CAN-FD 메시지(7)의 송신 후에 더 이상 증분되지 않을 때까지, 상기 과정을 반복한다. 이는, 수행될 프로그래밍에 관여하지 않은 모든 가입자국(10)이 에러 상태(50 또는 60)에 도달했고, 이들이 에러 상태(50 또는 60)에 있는 동안에는 메시지들(9), 다시 말해 에러 프레임들(Error Frames)을 더 이상 송신하지 않는다는 점을 의미한다.
그런 다음, 흐름도는 단계 S6으로 진행한다.
단계 S6 및 후속하는 단계들 S7 및 S8에서, 프로그래밍할 가입자국(20)은 프로그래밍 툴(30)로 프로그래밍된다. 그에 따라, 단계 S6에서, 프로그래밍할 가입자국(20)으로, 프로그래밍 모드로 전환하기 위해(switch to programming session), 부트로더로의 변경을 위한 물리적으로 주소 지정된 UDS 명령(Diagnostic Session Control)이 시작된다. 그런 다음, 흐름도는 단계 S7로 진행한다.
단계 S7에서, 프로그래밍할 가입자국(20)으로, CAN-FD 통신으로 전환하기 위해, 물리적으로 주소 지정된 UDS 명령(Link Control)이 송신된다. 그런 다음, 흐름도는 단계 S8로 진행한다.
단계 S8에서, 프로그래밍의 표준 시퀀스가 실행된다. 그런 다음, 본원의 방법은 종료된다. 가입자국들(10, 20)의 재시작 후에, 버스 시스템(1)의 정상 모드가 다시 시작될 수 있다.
상기 방법은, 본 실시예에서, 실질적인 프로그래밍이 시작되기 전에, 프로그래밍 툴(30)을 통해 수행된다. 이를 위해, 전술한 것처럼, 특히 프로그래밍 툴(30)에 의해 UDS 진단 서비스("Control Communication - disable non-diagnostic communication")가, 단계들 S3 및 S31과 관련하여 기t술한 것처럼, 기능적으로 모든 가입자국(10, 20)으로 송신된다. 그에 이어서, 가입자국들(10, 20)은 CAN 메시지들(7, 8, 9)의 독자적인 송신을 설정한다. 클래식-CAN 가입자국(10)이 메시지들(9)을 더 이상 송신하지 않음으로써, 자신의 내부 에러 카운터도 더 이상 감분되지 않으며, 그에 따라 상기 가입자국들(10)은, 단계 S5와 관련하여 기술한 것처럼, 에러 상태에 유지된다. 클래식-CAN 가입자국들(10)이 다시 송신을 시작하지 않도록 하기 위해, 프로그래밍 툴(30)은, 단계 S2와 관련하여 기재한 것처럼, 전체 프로그래밍 시퀀스 동안 주기적으로 UDS 프로토콜을 통해 "Tester Present - suppress positive response" 명령을 적어도 모든 가입자국(10)으로 송신한다.
관여하지 않은 가입자국들(10)을 정의한 방식으로 에러 상태(50, 60)로 전환하고 그에 이어서 더욱 신속한 전송률로 실질적인 프로그래밍을 실행하는 전술한 방법은, 기술한 준비 단계들 이후에 비로소 실행되어야 한다. 그에 따라, 상응하는 가입자국이 "Error Passive" 상태(50) 또는 "Bus Off" 상태(60)에서 유지되는 점이 보장될 수 있다. 상기 가입자국들(10)이 메시지들을 성공적으로 송신하고 그에 이어서 자신들의 내부 에러 카운터들을 감분시키면, 가입자국들(10)은 다시 "Error Active" 상태에 도달할 수도 있다.
본 발명의 적용 사례는 가입자의 프로그래밍이며, 그에 따라 차량 및 버스 시스템(1)의 정상 모드가 아니다. 그러므로 정상 모드로의 버스 시스템(1)의 복귀는 모든 가입자국(10, 20)의 재시작을 통해 허용된다.
그에 따라, 프로토콜 컨트롤러를 비활성화하기 위해, 버스 시스템(1)에서 클래식-CAN 가입자국(10)의 매칭은 소프트웨어 기술로, 또는 하드웨어에 부분 네트워킹 가능 트랜시버를 확장시킴으로써 가능해진다.
제2 실시예에 따라 본원의 방법은, 프로그래밍 툴(30) 대신, 실질적인 프로그래밍이 시작되기 전에, 프로그래밍할 가입자국(20)을 통해 수행된다. 그렇지 않은 경우, 버스 시스템 및 이 버스 시스템에 의해 실행되는 방법은, 제1 실시예에 대해 기재한 것과 동일한 방식으로 구현된다.
버스 시스템(1), 가입자국들(10, 20), 통신 제어 장치(21), 프로그래밍 툴(30) 및 방법의 전술한 모든 구성들은 개별적으로도, 또는 모든 가능한 조합으로도 이용될 수 있다. 추가로 특히 하기 변형예들을 생각해볼 수 있다.
실시예들에 따른 전술한 버스 시스템(1)은, CAN 프로토콜을 기반으로 하는 버스 시스템에 기초하여 기술된 것이다. 그러나 실시예들에 따른 버스 시스템(1)은 또 다른 유형의 통신 네트워크일 수도 있다. 이 경우, 버스 시스템(1)에서 공통 채널에 대한 가입자국(10, 20)의 충돌없는 배타적인 액세스가 적어도 특정 시간 간격 동안 보장되는 점은 바람직하긴 하지만 필수 전제조건은 아니다.
실시예들의 버스 시스템(1)에서 가입자국들(10, 20)의 개수 및 배치는 임의적이다.

Claims (9)

  1. 버스 시스템(1)의 가입자국(20)을 위한 통신 제어 장치(21)로서,
    상기 통신 제어 장치(21)는, 버스 시스템(1)의 버스(5)에 대한 가입자국(10, 20)의 충돌없는 배타적 액세스가 적어도 일시적으로 보장되는 버스 시스템(1)의 하나 이상의 추가 가입자국(10; 20)을 위해/추가 가입자국으로부터 하나 이상의 메시지(7, 8, 9)를 생성하거나 판독하도록 구성되며,
    상기 통신 제어 장치(21)는, 하나 이상의 추가 가입자국(10)이 능동 에러 플래그를 포함한 에러 프레임(8)을 더 이상 송출하지 않는 에러 상태에 있게 될 때까지, 상기 하나 이상의 추가 가입자국(10)으로 하여금 에러 프레임(8)을 송출하게 하는 메시지들(7)을 송신하기 위해, 버스 시스템(1)에서 하나 이상의 추가 가입자국(10)의 프로그래밍을 준비하도록 구성되는, 통신 제어 장치(21).
  2. 제1항에 있어서, 추가 가입자국(10)이 에러 프레임(8)을 더 이상 송출하지 않는 에러 상태는 ISO11898의 CAN 규격에 따른 "Error Passive" 상태 또는 "Bus Off" 상태(50, 60)인, 통신 제어 장치(21).
  3. 제1항 또는 제2항에 있어서, 가입자국(20)의 메시지들(7)은 CAN-FD 메시지들인, 통신 제어 장치(21).
  4. 버스 시스템(1)의 버스(5)에 대한 가입자국(10, 20)의 충돌없는 배타적 액세스가 적어도 일시적으로 보장되는 버스 시스템(1)의 가입자국(20)을 프로그래밍하기 위한 장치(31)를 포함하는 버스 시스템(1)용 프로그래밍 툴(30)로서,
    상기 장치(31)는, 추가 가입자국(10)이 능동 에러 플래그를 포함한 에러 프레임(8)을 더 이상 송출하지 않는 에러 상태에 있게 될 때까지, 상기 추가 가입자국(10)으로 하여금 에러 프레임(8)을 송출하게 하는 메시지들(7)을 송신하는 동안, 버스 시스템(1)에서 가입자국(20)의 프로그래밍을 준비하도록 구성되는, 버스 시스템용 프로그래밍 툴(30).
  5. 버스 라인(5)과;
    상기 버스 라인(5)을 통해 서로 통신할 수 있게 서로 연결된 가입자국들(10, 20);을 포함하는 버스 시스템(1)으로서,
    상기 가입자국들(10, 20) 중 적어도 2개의 가입자국은 제1항 내지 제3항 중 어느 한 항에 따른 통신 제어 장치(21)를 포함하며,
    상기 가입자국들(10, 20) 중 적어도 하나는 추가 가입자국(10)인, 버스 시스템(1).
  6. 제5항에 있어서,
    버스 시스템(1)은 제4항에 따른 프로그래밍 툴(30)을 추가로 포함하며,
    메시지들(7)의 송신을 위해, 프로그래밍할 가입자국들(20) 또는 프로그래밍 툴(30)은, 적어도 2개의 가입자국 중 하나의 가입자국(20)의 프로그래밍을 준비하도록 구성되는, 버스 시스템(1).
  7. 제6항에 있어서, 프로그래밍 툴(30)은, 프로그래밍할 가입자국들(20)을 통한 메시지(7)의 송신을 UDS 진단 서비스를 통해 시작하도록 구성되는, 버스 시스템(1).
  8. 상이한 프로토콜에 따라 통신하는 가입자국들(10, 20)을 포함하는 버스 시스템(1)에서 개별 가입자국들(20)을 프로그래밍하기 위한 방법에 있어서,
    통신 제어 장치(21)를 이용하여, 버스 시스템(1)의 버스(5)에 대한 가입자국(10, 20)의 충돌없는 배타적 액세스가 적어도 일시적으로 보장되는 버스 시스템(1)의 하나 이상의 추가 가입자국(10; 20)을 위해/추가 가입자국으로부터 하나 이상의 메시지(7, 8, 9)를 생성하거나 판독하는 단계와,
    버스 시스템(1)에서 하나 이상의 추가 가입자국(10)의 프로그래밍을 준비하기 위해, 상기 하나 이상의 추가 가입자국(10)이 능동 에러 플래그를 포함한 에러 프레임(8)을 더 이상 송출하지 않는 에러 상태에 있게 될 때까지, 상기 하나 이상의 추가 가입자국(10)으로 하여금 에러 프레임(8)을 송출하게 하는 메시지들(7)을 송신하는 단계를 포함하는, 버스 시스템 내 가입자국들의 프로그래밍 방법.
  9. 제8항에 있어서, 상기 방법은 UDS 진단 서비스("Control Communication - disable non-diagnostic communication")를 이용하는, 버스 시스템 내 가입자국들의 프로그래밍 방법.
KR1020177006117A 2014-08-05 2015-07-28 버스 시스템의 가입자국용 통신 제어 장치, 프로그래밍 툴, 그리고 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 가입자국들의 프로그래밍 방법 KR102423667B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102014215469.3 2014-08-05
DE102014215469.3A DE102014215469A1 (de) 2014-08-05 2014-08-05 Kommunikationssteuereinrichtung für eine Teilnehmerstation eines Bussystems, Programmierwerkzeug und Verfahren zum Programmieren von Teilnehmerstationen in einem Bussystem, das nach unterschiedlichen Protokollen kommunizierende Teilnehmerstationen aufweist
PCT/EP2015/067254 WO2016020225A1 (de) 2014-08-05 2015-07-28 Kommunikationssteuereinrichtung für eine teilnehmerstation eines bussystems, programmierwerkzeug und verfahren zum programmieren von teilnehmerstationen in einem bussystem, das nach unterschiedlichen protokollen kommunizierende teilnehmerstationen aufweist

Publications (2)

Publication Number Publication Date
KR20170040326A true KR20170040326A (ko) 2017-04-12
KR102423667B1 KR102423667B1 (ko) 2022-07-22

Family

ID=53783210

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177006117A KR102423667B1 (ko) 2014-08-05 2015-07-28 버스 시스템의 가입자국용 통신 제어 장치, 프로그래밍 툴, 그리고 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 가입자국들의 프로그래밍 방법

Country Status (5)

Country Link
EP (1) EP3178204A1 (ko)
KR (1) KR102423667B1 (ko)
CN (1) CN107113209B (ko)
DE (1) DE102014215469A1 (ko)
WO (1) WO2016020225A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017213835A1 (de) * 2017-08-08 2019-02-14 Robert Bosch Gmbh Schwingungsreduktionseinheit für ein Bussystem und Verfahren zur Reduzierung einer Schwingneigung beim Übergang zwischen unterschiedlichen Bitzuständen
DE102018202164A1 (de) * 2017-12-22 2019-06-27 Robert Bosch Gmbh Teilnehmerstation für ein serielles Bussystem und Verfahren zum Senden einer Nachricht in einem seriellen Bussystem
DE102017223774A1 (de) 2017-12-22 2019-06-27 Robert Bosch Gmbh Teilnehmerstation für ein serielles Bussystem und Verfahren zur Fehlersignalisierung für eine in einem seriellen Bussystem empfangene Nachricht
DE102018221679A1 (de) * 2018-12-13 2020-06-18 Robert Bosch Gmbh Überlagerungserfassungseinheit für eine Teilnehmerstation eines seriellen Bussystems und Verfahren zur Kommunikation in einem seriellen Bussystem
DE102019208058A1 (de) * 2019-06-03 2020-12-03 Robert Bosch Gmbh Fehlererkennung-Testeinrichtung für eine Teilnehmerstation eines seriellen Bussystems und Verfahren zum Testen von Mechanismen zur Fehlererkennung bei einer Kommunikation in einem seriellen Bussystem
DE102019212033A1 (de) * 2019-08-12 2021-02-18 Robert Bosch Gmbh Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem
CN111736873B (zh) * 2020-06-22 2023-02-24 中国第一汽车股份有限公司 电子控制单元的程序更新方法、装置、设备和存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102011528B1 (ko) * 2011-06-29 2019-10-21 로베르트 보쉬 게엠베하 유연한 메시지 크기 및 가변 비트 길이로 직렬 데이터 전송을 하기 위한 방법 및 장치
DE102012205988A1 (de) * 2012-04-12 2013-10-17 Robert Bosch Gmbh Teilnehmerstation für ein Bussystem und Verfahren zur Übertragung von Nachrichten zwischen Teilnehmerstationen eines Bussystems
EP2712123A1 (en) * 2012-09-20 2014-03-26 Robert Bosch Gmbh Standard CAN implementation tolerating CAN FD frames

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Armin Happel 외 4 명, ‘High-Speed Reprogramming and Calibration with CAN FD: A Case Study’, iCC 2013, (2013.11.13.)* *
Scott Monroe 외 2 명, 'Policy Convergence for Next Generation Fixed and 3GPP Wireless NetworksSolutions of CAN and CAN FD in a mixed network topology,' iCC 2013, (2013.11.13)* *

Also Published As

Publication number Publication date
WO2016020225A1 (de) 2016-02-11
EP3178204A1 (de) 2017-06-14
KR102423667B1 (ko) 2022-07-22
CN107113209A (zh) 2017-08-29
CN107113209B (zh) 2021-04-20
DE102014215469A1 (de) 2016-02-11

Similar Documents

Publication Publication Date Title
KR20170040326A (ko) 버스 시스템의 가입자국용 통신 제어 장치, 프로그래밍 툴, 그리고 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 가입자국들의 프로그래밍 방법
US9832038B2 (en) Communication system having a can bus and a method for operating such a communication system
US9740655B2 (en) Data transmission using a protocol exception state
KR102044723B1 (ko) 버스 시스템의 가입자 국, 그리고 버스 시스템의 가입자 국들 간의 메시지 전송 방법
CN105324960A (zh) 控制器局域网络灵活的数据率
US8306004B2 (en) Communication network system having high-ranking network and low-ranking networks, interchange terminal connecting high-ranking network and low-ranking network, microcomputer controlling connection between transmission line of low-ranking network and transmission line of high-ranking network, and communication transmitter-receiver connected with transmission line of low-ranking network and transmission line of high-ranking network
US10892913B2 (en) Gateway, on-vehicle communication system, communication control method and recording medium
CN111264051B (zh) 检查通过在两个第一接口单元之间实现的第一通信连接在两个数据处理装置之间进行的数据传输的方法及机动车
US11362859B2 (en) In-vehicle communication device and in-vehicle system
CN115242825A (zh) 一种远程控制方法及装置
JP2016500503A (ja) プロトコル例外状態を用いたデータ伝送プロトコル
KR102292771B1 (ko) 버스 시스템용 가입자국, 그리고 버스 시스템의 데이터 전송률 증가 방법
JP2018113505A (ja) スイッチ装置、通信制御方法および通信制御プログラム
US9485327B2 (en) Motor vehicle having a vehicle communication bus and method for generating bus messages
KR101958477B1 (ko) 차량용 lin 통신 시스템 및 이 시스템에서 슬레이브 모듈의 동작 방법
US11929998B2 (en) Control apparatus, in-vehicle communication system, communication control method and program
US10541830B2 (en) Serial communication system
KR102256153B1 (ko) 버스 시스템에서 결정성 데이터 전송을 위한 방법 및 버스 시스템
US20080021573A1 (en) Communication system for flexible use in different application scenarios in automation technology
CN115733729B (zh) 通信故障处理方法、系统及设备
KR20130064500A (ko) 캔통신 시스템에서 메시지 송수신 시의 오류 복구 방법
CN106959620A (zh) 一种车载can总线数据通讯装置及其设计方法
US20220329614A1 (en) Method for monitoring communication on a communication bus, electronic device for connection to a communication bus, and central monitoring device for connection to a communication bus
JP2020150442A (ja) ゲートウェイ装置
CN108141357B (zh) 用于在网络中生成秘密的电路装置

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