팜테크(FAMTECH)
[CAN 통신]Baud Rate와 버스 로드 계산법(BPS, CAN BUS, BUS Loading Calculation) 본문
[CAN 통신]Baud Rate와 버스 로드 계산법(BPS, CAN BUS, BUS Loading Calculation)
FAMTECH 2024. 2. 6. 16:15
목차
"관련제품 문의는 로고 클릭 또는 공지사항의 연락처를 통해 하실 수 있습니다."
Baud Rate 과 Bit Rate
CAN (Controller Area Network) 버스는 차량 및 산업 자동화 시스템에서 신뢰성 높은 데이터 통신을 제공하는 통신 프로토콜입니다. 이 프로토콜은 다양한 네트워크 장치 간의 메시지 기반 통신을 가능하게 하며, 특히 실시간 시스템에서 센서, 액추에이터, 제어 장치 간의 효율적인 데이터 교환에 사용됩니다. 이러한 통신의 핵심은 바우드율(baud rate)과 비트율(bit rate)의 설정에 있습니다.
Baud Rate
바우드율은 CAN 버스에서 전기적 신호 전환의 속도를 나타냅니다. 이는 초당 고전압과 저전압 사이의 전환 횟수로 표현되며, 데이터의 물리적 전송 속도와 관련이 있습니다. 예를 들어, "500000 baud"라는 바우드율은 초당 500,000번의 신호 전환이 발생함을 의미합니다. 바우드율 설정은 네트워크 상의 모든 장치가 동일해야 하며, 이는 네트워크의 동기화와 데이터 무결성을 유지하는 데 필수적입니다.
Bit Rate
비트율은 실제 데이터 비트가 CAN 버스를 통해 전송되는 속도를 나타냅니다. 이는 네트워크의 데이터 처리량, 즉 단위 시간당 전송되는 실제 정보 비트의 수와 직접적으로 관련이 있습니다. CAN 프로토콜에서는 각 비트 시간을 동기화, 전파 지연, 위상 분할 등 여러 세그먼트로 나눕니다. 이러한 세그먼트는 전체 비트 시간을 구성하며, 선택된 바우드율과 함께 비트율을 결정합니다.
네트워크의 신뢰성과 성능을 최적화하기 위해서는 전송 거리, 전자기 간섭, 연결된 장치의 수 등과 같은 다양한 요소를 고려해야 합니다. 낮은 바우드율은 더 긴 케이블 길이와 높은 신뢰성을 지원하지만, 비트율을 감소시켜 전체 데이터 전송 속도를 떨어뜨립니다. 반면, 높은 바우드율은 더 빠른 데이터 전송을 가능하게 하지만, 네트워크의 길이가 길어지거나 환경이 노이즈가 많은 경우 신뢰성이 저하될 수 있습니다.
위는 팜테크에서 제공하는 ReXgen2 데이터 로거 소프트웨어 설정 화면 입니다. 위와 같이 Baud Rate를 설정합니다.
CAN BUS Load 계산
CAN 버스 시스템은 데이터를 전송하는 효율적인 방법을 제공합니다. 이 시스템은 최대 8바이트 길이의 메시지를 전송할 수 있으며, 이는 차량과 산업 자동화 시스템에서 다양한 데이터를 효율적으로 전송할 수 있게 합니다. 그러나 긴 메시지를 전송하는 것은 더 큰 지연 시간(latency)을 초래할 수 있습니다. 예를 들어, 비트율이 약 1 Mbit/s인 경우, 평균 데이터 길이가 4바이트일 때 최대 10,000개의 메시지를 초당 전송할 수 있습니다. 표준 형식을 사용하고 데이터 길이가 8바이트인 경우, 초당 최대 7,200개의 메시지를 전송할 수 있습니다.
CAN 버스에서 한 프레임을 전송하는 데 걸리는 시간을 계산하기 위해 간단한 공식을 사용할 수 있습니다. 예를 들어, 1개의 CAN 프레임이 대략 125비트를 포함한다고 가정해 보겠습니다.
250 Kbit/s를 사용할 경우
비트율이 250kBits/초일 때, 비트 시간은 비트율의 역수로 계산됩니다. 즉, 1/(250×1000)초, 이는 4마이크로초(µs)입니다. 따라서 250 Kbit/s를 사용할 때 버스에서 1비트를 전송하는 데 4µs가 걸립니다. 그러므로, 1프레임을 전송하는 데 대략적으로 4µs/bit x 125bit = 500 µs가 걸립니다.
이러한 계산을 통해 다양한 비트율에서 CAN 버스를 통해 프레임을 전송하는 데 필요한 시간을 추정할 수 있습니다. 이 정보는 네트워크의 통신 속도와 효율성을 평가하고 최적화하는 데 도움이 됩니다.
버스 부하 계산 공식
CAN 버스에서 버스 부하를 계산하는 방법은 통신 네트워크의 효율성과 성능을 평가하는 데 중요합니다. 버스 부하는 전송되는 데이터의 양과 해당 네트워크의 전송 속도를 기반으로 한 백분율로 계산됩니다. 이는 네트워크가 얼마나 많이 사용되고 있는지를 나타내는 지표입니다.
Bus Load(%) = (bytes to be sent in a second × 8bits)/(Baud Rate) X 100%
예를 들어 초당 전송되어야 하는 바이트 수가 1000일 경우 250kbp의 CAN Bus 라인의 버스 부하는 1000 x 8 /250,000 x 100% = 3.2%가 됩니다.
Influx Trace Viewer
위 화면은 Rebel CT/LT로 캔을 모니터링하는 화면으로 Trace Viewer를 사용해서 해당 채널의 부하 정보를 출력한 화면입니다.
해당 내용과 관련해서 팜테크에서 교육 프로그램, 측정/분석 용역, 장비를 제공하고 있습니다. 관심 있으시면 아래 홈페이지 또는 연락처를 통해 문의 주시면 됩니다. :)
https://famtech.co.kr/sub04/01_01.php