플렉스레이

FlexRay

FlexRay는 온보드 자동차 컴퓨팅을 제어하기 위해 FlexRay 컨소시엄이 개발한 자동차 네트워크 통신 프로토콜이다. CAN, TTP보다 빠르고 안정적이도록 설계됐지만 가격도 비싸다. FlexRay 컨소시엄은 2009년에 해체되었지만, FlexRay 표준은 현재 ISO 표준인 ISO 17458-1 ~ 17458-5의 집합이 되었다.[1]

FlexRay는 높은 데이터 전송 속도, 내결함성, 시간 주기 작동, 이벤트 트리거 및 시간 트리거 통신을 위해 정적 및 동적 세그먼트로 분할되도록 설계된 통신 버스다.[2]

특징들

FlexRay는 최대 10Mbit/s의 데이터 전송 속도를 지원하고, 스타와 "파티라인" 버스 토폴로지를 모두 명시적으로 지원하며, 고장 내구성을 위해 두 개의 독립적인 데이터 채널을 가질 수 있다(한 채널이 작동하지 않을 경우 통신으로 대역폭을 줄일 수 있음). 버스는 시간 주기로 작동하며, 정적 세그먼트와 동적 세그먼트의 두 부분으로 나뉜다. 정적 세그먼트는 개별 통신 유형의 슬라이스로 사전 할당되어 이전 CAN보다 더 강력한 결정론을 제공한다. 동적 세그먼트는 CAN과 더 비슷하게 작동하며, 노드가 사용 가능한 버스를 제어하여 이벤트 트리거 동작을 허용한다.[3]

컨소시엄

FlexRay 컨소시엄은 다음과 같은 핵심 구성원으로 구성되었다.

FlexRay 컨소시엄에는 프리미엄 어소시에이트 및 어소시에이트 멤버도 있었다. 2009년 9월까지 28명의 프리미엄 부위원과 60명 이상의 부위원이 있었다. 2009년 말에 컨소시엄은 해체되었다.

상용전개

FlexRay를 탑재한 첫 번째 시리즈 생산 차량은 2006년 말 BMW X5(E70)[4]에 탑재되어 있어 새롭고 빠른 어댑티브 댐핑 시스템이 가능했다. FlexRay의 전면 사용은 2008년 신형 BMW 7 시리즈(F01)에서 도입되었다.

차량

세부 사항

시계

FlexRay 시스템은 버스와 ECU(전자 컨트롤 유닛)로 구성된다. 각 ECU는 독립적인 시계가 있다. 클럭 드리프트는 기준 시계에서 0.15% 이상 떨어져서는 안 되므로 시스템에서 가장 느린 클럭과 가장 빠른 클럭의 차이는 0.3%를 넘지 않아야 한다.

즉, ECU가 송신자이고 ECU-r이 수신자일 경우 송신자의 300 사이클마다 수신기의 299~301 사이클이 존재하게 된다. 시계는 이것이 문제를 일으키지 않는다는 것을 보장할 만큼 자주 다시 동기화된다. 시계는 정적 세그먼트로 전송된다.[15]

버스 위의 비트

0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0

오류가 없는 경우 평균을 수정하십시오. 신호는 단지 2 사이클 정도 지연될 뿐이다.

0 0 0 0 0 0 1 1 1 1 0 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0

8주기 중반 부근의 오류는 취소된다.

0 0 0 1 0 1 1 1 1 1 1 1 1 0 0 0 0
0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0

8주기 영역의 경계 부근에 있는 오류는 경계 비트에 영향을 미칠 수 있다.

매번, 오직 하나의 ECU만이 버스에 쓴다. 보낼 각 비트는 8번의 샘플 클럭 사이클 동안 버스에 고정된다. 수신기는 마지막 5개 샘플의 버퍼를 유지하고, 마지막 5개 샘플의 대부분을 입력 신호로 사용한다.

단일 사이클 전송 오류는 비트의 경계 부근의 결과에 영향을 미칠 수 있지만, 8 사이클 영역의 중간에 있는 사이클에는 영향을 미치지 않는다.

샘플 비트

비트 값은 8비트 영역의 중간에 샘플링된다. 오차는 극한 사이클로 이동하며, 클럭은 드리프트가 작을 정도로 자주 동기화된다. (드립프트는 300 사이클당 1 사이클보다 작으며, 전송 중에는 클럭이 300 사이클에 1회 이상 동기화된다.)

모든 통신은 프레임 형태로 전송된다. 메시지는 다음과 같은 방법으로 포장된 바이트{ x x , m - 로 구성된다.

  • 변속기 시동 신호(TSS) – 비트 0
  • 프레임 시작 신호(FST) – 비트 1
  • m times:
    • 바이트 시작 신호 0(BSS0) – 비트 1
    • 바이트 시작 신호 1(BSS1) – 비트 0
    • i-th 바이트의 0번째 비트
    • i-th 바이트의 첫 번째 비트
    • i-th 바이트의 두 번째 비트
    • ...
    • i-th 바이트의 7비트
  • 프레임 끝 신호(FES) – 비트 0
  • 변속기 엔드 신호(TES) – 비트 1

아무 것도 통신되지 않으면 버스는 상태 1(고전압)으로 유지되기 때문에 모든 수신자는 전압이 0으로 떨어질 때 통신이 시작된다는 것을 안다.

수신자는 BSS0(1) 또는 FES(0)의 수신 여부를 확인하여 메시지가 완료되는 시기를 알 수 있다.

비트당 8 사이클은 바이트와 관련이 없다는 점에 유의하십시오. 각 바이트는 전송하는 데 80 사이클이 걸린다. BSS0과 BSS1의 경우 16 사이클, 비트의 경우 64 사이클이다. 또한 BSS0은 값 1을 가지며, BSS1은 값 0을 갖는다.

시계 동기화

시계는 수신기가 유휴 상태이거나 예상 BSS1일 경우, 투표된 신호가 1에서 0으로 변경될 때 다시 동기화된다.

투표된 신호에서 동기화가 수행되므로, 경계 비트에 영향을 미치는 동기화 중 작은 전송 오류는 동기화를 1 사이클 이하로 왜곡시킬 수 있다. 동기화 사이에 최대 88 사이클(BSS1, 마지막 바이트의 8비트, FES와 TES - 각각 8 사이클의 11비트)이 있고 클럭 드리프트가 300 사이클당 1비트 이하가므로 드리프트는 클럭을 1 사이클 이하로 기울일 수 있다. 수신 중 작은 전송 오류는 경계 비트에만 영향을 미칠 수 있다. 따라서 최악의 경우 두 개의 중간 비트가 올바르고 따라서 샘플링된 값이 정확하다.

여기 특히 나쁜 사례의 예가 있다. 동기화 중 오류, 클럭 드리프트로 인한 사이클 손실 및 전송 오류.

예제에서 발생한 오류:

  • 동기화 중 단일 비트 오류로 인해 동기화가 1 사이클 지연됨
  • 수신기 시계가 송신기 시계보다 느려서 수신기가 한 사이클을 놓쳤다(X 표시). 최대 허용 클럭 드리프트 제한으로 인해 다음 동기화 전에는 이러한 일이 다시 발생하지 않을 것이다.
  • 전송 중 단일 비트 오류로 인해, 비트가 결과 근처에서 잘못 투표되었다.

그렇게 많은 오류에도 불구하고, 통신은 정확하게 수신되었다.

녹색 세포들이 시료 채취 지점이다. 첫 번째를 제외한 모든 것은 표시된 변속기 파편의 1->0 에지에 의해 동기화된다.

보낼 신호 1 0 1 0 1
신호 전송 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1
버스에서요. 1 1 1 1 1 1 1 1 0 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 1 1
받았다 1 1 1 1 1 1 1 1 0 1 0 0 0 0 0 0 1 1 1 1 1 1 X 1 0 0 0 0 0 0 1 0 1 1
5명 투표 1 1 1 1 1 1 1 0 1 0 0 0 0 0 0 1 1 1 1 1 1 X 1 0 0 0 0 0 0 1 0 1 1

개발 도구

FlexRay 버스를 개발하거나 문제를 해결할 때 하드웨어 신호의 검사가 매우 중요할 수 있다. 로직 분석기버스 분석기는 신호를 수집, 분석, 해독, 저장하여 사람들이 여유롭게 고속 파형을 볼 수 있도록 하는 도구다.

FlexRay의 미래

이더넷은 대역폭 집약적이고 안전하지 않은 중요 애플리케이션을 위해 FlexRay를 대체할 수 있다.[16]

참고 항목

참조

  1. ^ Lorenz, Steffen (2010). "The FlexRay Electrical Physical Layer Evolution" (PDF). Automotive 2010. Archived from the original (PDF) on 16 February 2015. Retrieved 16 February 2015.
  2. ^ Vaz, R. M.; Hodel, K. N.; Santos, M. M. D.; Arruda, B. A.; Netto, M. L.; Justo, J. F. (2020). "An efficient formulation for optimization of FlexRay frame scheduling". Vehic. Commun. 24: 100234. doi:10.1016/j.vehcom.2020.100234.
  3. ^ "How FlexRay Works". Freescale Semiconductor. Retrieved 21 March 2014.
  4. ^ a b c d e f Otto, Strobel (2013-02-28). Communication in Transportation Systems. IGI Global. p. 61. ISBN 9781466629776.
  5. ^ "The driver assistance systems and integrated safety". Audi MediaCenter. Retrieved 2019-02-21.
  6. ^ "Driver assistance systems". Audi MediaCenter. Retrieved 2019-02-21.
  7. ^ Regler, Richard; Schlinkheider, Jörg; Maier, Markus; Prechler, Reinhard; Berger, Eduard; Pröll, Leo (2011). "Intelligent electrics / electronics architecture". ATZextra Worldwide. 15 (11): 246–251. doi:10.1365/s40111-010-0269-9. S2CID 107330814.
  8. ^ "Audi Technology Portal - Networking". Audi Technology Portal. Retrieved 2019-02-21.
  9. ^ "The BMW X6". BMW Press Portal. Retrieved 2019-03-08.
  10. ^ "The new BMW 6 Series Convertible". BMW Press Portal. p. 32. Retrieved 2019-03-08.
  11. ^ "2322446_83_Fahrwerk_S_Klasse_en.doc". marsMediaSite (in German). Retrieved 2019-03-08.
  12. ^ "2480996_PI_Kurvenneigung_C217_ENG.docx". marsMediaSite (in German). Retrieved 2019-03-08.
  13. ^ Scoltock, James (16 April 2013). "Mercedes-Benz E-Class". Automotive Engineer. Retrieved 16 February 2015.
  14. ^ Fleiss, Michael; Müller, Thomas M.; Nilsson, Martin; Carlsson, Jonas (2016-03-01). "Fahrzeugintegration des Antriebsstrangs bei Volvo". ATZ - Automobiltechnische Zeitschrift (in German). 118 (3): 16–21. doi:10.1007/s35148-015-0202-7. ISSN 2192-8800.
  15. ^ "Introduction to FlexRay". www.star-cooperation.com. STAR ELECTRONICS. Archived from the original on 2016-12-20. Retrieved 2016-12-09.
  16. ^ Hammerschmidt, Christoph (18 June 2010). "Beyond FlexRay: BMW airs Ethernet plans". EE Times. Retrieved 16 February 2015.

외부 링크