트위스트 페어 케이블 대신 PCB 트레이스의 CAN 버스-고려해야 할 사항

Aug 16 2020

현재 프로젝트 중 하나 (케이블 없음)에서 시스템 비용을 절약하기 위해 CAN 케이블을 제거하고 PCB에 트레이스를 추가하고 싶습니다 (커넥터를 연결하기 위해 왼쪽에서 오른쪽으로 한 쌍 + CAN에 스텁 1 개) 각 보드의 트랜시버). 어쨌든 무료 핀이있는 커넥터로 연결된 PCB 체인이 계속되어 있기 때문에 이것은 상당히 합리적입니다. 저는 상당히 느린 속도 (125kbits / sec)로 CAN을 구현할 계획입니다.

각 PCB는 대략 다음과 같습니다.

시스템은 이렇게 설정되어 있으며 길이는 약 50m입니다!

몇 가지 다른 질문 (예 : here , here 및 here )과 기사 및 애플리케이션 노트 (예 : this , this 및 this )를 읽었습니다 . 그러나 그것을 완전히 이해할 곳은 없습니다.

이에 대한 몇 가지 질문이 있습니다.

첫 번째는 전송선 임피던스에 관한 것입니다.

  • 120Ohm 표준은 각 CAN_H 및 CAN_L에 대한 차동 임피던스 또는 단일 종단입니까?
  • 4 레이어 보드에서 120Ohm 임피던스에 도달하는 방법은 무엇입니까? (저는 JLCPCB 표준 4 레이어 스택 업을 사용하고 계산기를 사용하면 단일 종단의 경우 120Ohm에 도달하지 않으며 차동의 경우 3.5mil 트레이스 + 4mil 간격으로 만 가까워집니다. 이는 절대 최소값에 가깝습니다).
  • 120Ohm에 도달하기 위해 버스 트레이스에 추가 구성 요소를 추가 할 수 있습니까?

차폐 관련 :

  • 임피던스 주제에도 불구하고 CAN 사양에서는 차폐 연선 케이블이 권장됩니다. 이 경우 내부 레이어 중 하나에 CAN 라인을 더 잘 라우팅하고 위, 옆 및 아래의 GND 평면으로 차폐해야합니까?

트위스트 페어 관련 :

  • 트위스트 페어와 유사한 PCB의 트레이스를 모델링하는 것이 합리적일까요?

전반적으로 질문은 다음과 같이 요약 할 수 있습니다.

4 레이어 PCB에서 긴 CAN 트레이스에 대해 어떤 트레이스 너비, 어떤 레이어의 간격이 가장 좋은 결과를 제공하며 어떻게 차폐합니까?

답변

1 Mr_Engineer Aug 22 2020 at 02:05

CAN 버스로 특별히 설계하지는 않았지만 USB 차동 쌍과 WiFi (2.4Ghz) 단일 종단 전송 라인을 구현했습니다.

문제는 전형적인 차동 전송선처럼 보입니다. 125kbits / sec는 상당히 관대해야합니다. 1Mb / sec는 더 강합니다.

4 레이어 보드의 고급 스러움이 있다면 반드시 CAN 신호를 내부 레이어로 라우팅하십시오. 이것은 차폐 케이블과 동등한 것을 제공합니다. 외부 레이어는 접지 또는 전원 플레인이어야합니다. 접지면과 전원면은 서로 용량 성으로 결합되어 차폐 목적으로 거의 동일하게 만들어야합니다.

"트위스트"쌍을 만들기 위해 트레이스를 교차하는 아이디어는 흥미롭지 만, 1) 각 비아에서 신호 반사 2) 매립 된 비아는 보드 제조의 잠재적 인 결함 지점입니다. # 2는 보드 하우스의 품질에 따라 다릅니다. 나는 전통적인 차동 쌍 (Zo = 120ohms)을 구현할 것입니다.

전송선 간격을 계산할 때 Saturn PCB의 툴킷이 매우 유용하다는 것을 알았습니다. http://saturnpcb.com/pcb_toolkit/ 120 특성 임피던스에 도달하려면 더 넓은 트레이스가 필요할 것입니다.

이 TI 문서에 따르면 케이블 길이가 일치하지 않으면 CAN 버스에 반사 문제가 발생할 수 있습니다. https://www.ti.com/lit/an/slla279a/slla279a.pdf.

전송 끝과 버스의 마지막 수신기에 120ohm 종단 저항 (캔 버스 라인에 걸쳐)을 제공해야합니다.

커넥터 : 접점이 깨끗한 한 괜찮습니다. 캔 버스 핀을 접지 핀을 사이에두고 다른 고속 핀과 분리합니다. 개인적으로 회로 기판 사이의 배선으로 돌아 가야 할 경우를 대비하여 솔더 패드 또는 CAN 커넥터도 포함합니다. 그렇다면 메인 커넥터의 CAN 라인과 직렬로 0 옴 저항을 배치합니다. 이것은 커넥터의 CAN 라인을 비활성화하고 다시 와이어로 전환 할 수있는 유연성을 제공합니다. 계획 B를 설계하는 것은 회로 기판을 배치하는 동안 저렴합니다.

트레이스 폭과 간격은 PCB 스택 업에 따라 다릅니다. "Differential Pairs"탭과 함께 Saturn PCB의 툴킷을 사용하십시오.

나는 같은 스택 업을 사용합니다

L1 = 접지, L2 = 신호 / 전송 라인, L3 = 전원, L4 = 신호 또는

L1 = 접지, L2 = 신호 / 전송 라인, L3 = 신호, L4 = 전원.

다른 레이어에 구리 채우기가있는 경우 스티칭 비아로 접지 할 수 있습니다. 고속 신호를 접지 충전 (차폐)으로 분리하지 않는 한 차동 쌍과 병렬로 라우팅하지 마십시오. 고속 신호가 인접 레이어에서 교차해야하는 경우 수직으로 만드십시오.

1 schnedan Aug 22 2020 at 03:30

차동 라인을 배치하려면 트위스트 페어 와이어처럼 설계해서는 안됩니다. 비아는 인덕터처럼 작동하며 방향 변경은 일반적으로 반사를 일으 킵니다. 그래서 당신이 원하는 것과 최적은 단순한 직선입니다.

일반적으로 차동 라인을 나란히 배치합니다 (느슨한 커플 링이 아니라면 ... 일부 경우에도 작동합니다). 90 ° 회전이 없으면 두 트레이스를 동일한 길이 (거의)로 유지하고 스텁을 짧게 ( 우리는 몇 cm에 대해 이야기 할 수 있습니까? 표준에서 값을 찾을 수 있다고 생각하십시오). 선 사이의 거리와 트레이스의 너비를 계산해야하므로 PCB 재료와 레이어 두께로 필요한 120Ohm 임피던스를 유지합니다.

당신은 시도 할 수 있습니다 https://sourceforge.net/projects/atlc/ 또는 http://www.hdtvprimer.com/KQ6QV/atlc2.html 차동 전송 라인을 계산합니다.

Kicad는 또한 전송선 계산기 또는 오래된 http://www.hp.woodshot.com/ HP AppCad ... 일반 프로그래밍 가능 계산기에 대한 정보도 찾을 수 있습니다.

LVDS와 같은 훨씬 더 정교한 시스템에 대한 규칙을 따르는 경우 CAN은 절대 실망시키지 않아야합니다. 매우 거친 환경에서도 매우 견고합니다.

https://www.ti.com/lit/an/snla302/snla302.pdf

그것을 확인하지 않았지만 내가 기억하는 한이 숫자는 괜찮습니다 특정 버스 속도의 경우 버스 라인의 길이와 하나의 스텁의 길이가 있습니다 ... PCB에서 CAN에 문제가 발생하지 않습니다

  • 1MBit / s 40m 0.3m
  • 500kBit / s 100m 0.8m
  • 250kBit / s 200m 1.5m
  • 100kBit / s 500m 3.0m
  • 57kBit / s 1000m 5.0m
  • 38kBit / s 2000m 7.0m

추신 : Mr_Engineer가 말했듯이 : 종료해야합니다. 그러나 양쪽 끝 (모든 노드가 듣고 전송하는 실제 버스)! 둘 다 120 Ohm (DC에서 60Ohm, 버스의 중간 / 지배 주파수에 대해서는 120Ohms ...)-한쪽 만 종단 처리 된 제품이 있으며 20m 이상의 라인 길이에서 작동하지만 다음을 수행해야합니다. 값을 조정하십시오. 표준을 따르십시오!