RS-485가 그렇게 간단합니까?

Jul 31, 2026 메시지를 남겨주세요

RS-485 개요


RS-232와 마찬가지로 RS-485도 직렬 통신 표준입니다. 현재 공식 명칭은 TIA-485/EIA-485-A이지만 일반적으로 RS-485 표준이라고 합니다. RS-485는 산업 자동화, 자동차, 빌딩 관리 등의 산업에서 널리 사용됩니다.


RS-485 버스는 짧은 통신 거리와 낮은 데이터 속도 등 RS-232의 단점을 극복합니다. RS-485는 최대 10Mbit/s의 데이터 속도를 지원하며 이론상 최대 1,200m의 통신 거리를 제공합니다. RS-232의 단일 종단 전송과 달리 RS-485는 한 쌍의 연선 전선을 통한 차동 전송을 사용하며, 한 전선은 A로 지정되고 다른 전선은 B로 지정됩니다.


RS-485 물리 계층


RS-485 물리 계층은 장치와 물리 전송 매체 간의 원시 데이터 전송을 담당합니다. 전기 신호를 디지털 데이터로 변환하는 동시에 전압 레벨, 타이밍, 데이터 속도 및 기타 매개변수를 정의합니다.

 

① 차동 신호

장거리-케이블 연결은 신호 감쇠를 초래하고 소음 및 간섭 가능성을 높입니다. 이는 케이블 A와 B의 전압 진폭 변화로 나타납니다. 그러나 차동 라인을 사용하면 두 신호 간의 차이를 빼면 간섭이 상쇄되어 정상적인 신호가 출력된다는 장점이 있습니다. 두 신호 라인 모두에서 동일한 전압을 무시하는 차동 수신기의 기능을 공통{4}}모드 거부라고 합니다.

02f4c218-c803-11ed-bfe3-dac502259ad0.png

 

031047e0-c803-11ed-bfe3-dac502259ad0.png

표준에서는 논리 1이 +2V ~ +6V이고 논리 0이 -6V ~ -2V라고 지정합니다.

RS-485에는 특정 버스 전압이 필요하지 않습니다. 최소 차동 전압만 고려합니다. 케이블 길이가 길어지면 수신기가 수신하는 전압이 +/- 200mV로 떨어질 수 있으며 이는 여전히 RS-485에 완벽하게 허용됩니다. 이는 RS-485의 장점 중 하나입니다.

많은 트랜시버가 TIA/EIA-485A 표준을 충족하거나 심지어 초과합니다. 그러나 실제 응용 분야에서는 장치에 지정된 매개변수가 우선합니다. 예를 들어 특정 트랜시버의 최소 음수 입력 임계값은 -200mV입니다.

03301b4c-c803-11ed-bfe3-dac502259ad0.png

 

03445314-c803-11ed-bfe3-dac502259ad0.png

② 신호 정의

오늘날 많은 RS-485 변환기는 RS-422와 호환되므로 이러한 변환기에서 RS-485의 A+ 및 B-에 해당하는 T/R+ 및 T/R- 레이블이 붙은 신호를 자주 볼 수 있습니다.

 

 

DB9 암 커넥터의 경우 RS-485 배선 정의는 다음과 같습니다. 핀 6~9는 N/A이므로 연결하면 안 됩니다.

DB9 출력 신호 RS-422 전이중 배선 RS-485 반이중 배선
1 T/R+ 보내기(A+) RS-485(A+)
2 T/R- 보내기(B-) RS-485(B-)
3 RXD+ 수신(A+) 비어 있는
4 RXD- 수신(B-) 비어 있는
5 접지 접지선 접지선

③ 토폴로지

RS-485는 2{2}}와이어 및 4{4}}와이어 구성을 모두 지원합니다. 4{5}}와이어 구성은 지점간 통신으로 제한되며 현재는 거의 사용되지 않습니다. 2선 구성이 더 일반적으로 사용됩니다. 이 구성은 버스 토폴로지를 사용하여 단일 버스에 최대 32개의 노드를 연결할 수 있습니다.

I²C와 마찬가지로 RS-485 버스는 마스터-슬레이브 모드에서 작동합니다. 지점-대-단일-슬레이브 모드와 다중-슬레이브 모드를 모두 지원하지만 다중 마스터 모드는 지원하지 않습니다.

035cfae0-c803-11ed-bfe3-dac502259ad0.jpg

 

037c5d54-c803-11ed-bfe3-dac502259ad0.jpg

RS-485 트랜시버

RS-485는 차동 전송을 사용합니다. 마이크로컨트롤러를 사용하여 RS-485 장치를 제어하려면 CAN 버스와 유사한 트랜시버가 필요합니다. 다음 다이어그램은 RS-485 장치를 제어하는 ​​MCU를 보여줍니다.

 

트랜시버 내부에는 수신기(상부)와 송신기(하부)가 있습니다. 다음은 MCU가 485 장치와 통신하는 방법을 이해하는 데 도움이 되는 트랜시버의 작동 방식에 대한 간략한 설명입니다.

0396d684-c803-11ed-bfe3-dac502259ad0.png

 

RS-485 트랜시버의 내부 구조

어디:

A와 B는 버스입니다.

R은 수신기 입력입니다.

RE는 수신기 활성화 신호입니다.

DE는 송신기 활성화 신호입니다.

D는 송신기 출력입니다.

활성화 신호의 경우 문자 위에 선이 있는 신호는 액티브-로우(예: 위 그림의 RE)이고 선이 없는 신호는 액티브-하이(예: DE)입니다.

 

03acba6c-c803-11ed-bfe3-dac502259ad0.png수신기 진리표

 

송신기의 경우 진리표는 다음과 같습니다.

1. 드라이버 활성화 핀 DE가 로직 하이이면 차동 출력 A와 B는 데이터 입력 D의 로직 상태를 따릅니다. D의 로직 하이로 인해 A는 하이가 되고 B는 로우가 됩니다. 이 경우 VOD=VA – VB로 정의된 차동 출력 전압은 양수입니다. D가 로우이면 출력 상태가 반전됩니다. 즉, B는 하이가 되고 A는 로우가 되며 VOD는 음수입니다.

2. DE가 로우이면 두 출력 모두 하이-임피던스가 됩니다. 이 경우 D의 논리 상태는 관련이 없습니다.

 

다음 진리표가 수신기에 적용됩니다.

1. 수신기의 활성화 핀(RE)이 로직 로우이면 수신기가 활성화됩니다. VID=VA – VB로 정의된 차동 입력 전압이 양수이고 양수 입력 임계값 VIT+를 초과하면 수신기의 출력 R이 높아집니다. VID가 음수이고 음수 입력 임계값 VIT-보다 낮으면 수신기 출력 R이 낮아집니다. VID가 VIT+와 VIT- 사이에 있으면 출력이 정의되지 않습니다.

2. RE가 로직 하이 또는 플로팅인 경우 VID의 크기나 극성에 관계없이 수신기 출력은 하이 임피던스입니다.

03c45672-c803-11ed-bfe3-dac502259ad0.png

수신기 진리표

 

03dd2350-c803-11ed-bfe3-dac502259ad0.jpg

RS-485 데이터 링크

위에서 RS-485 트랜시버의 작동 원리를 논의한 후 이제 RS{4}}485 데이터 링크에 대해 간략하게 설명하겠습니다. 먼저 이해하기 쉬운 UART 프로토콜 프레임 형식을 살펴보세요.

마스터가 슬레이브로 데이터를 보내든 슬레이브가 마스터로 데이터를 보내든 A와 B 라인이 모두 사용됩니다. 따라서 RS-485는 일반적으로 반이중 모드에서 사용됩니다.


호스트의 GPIO는 RS-485 트랜시버의 DE 핀을 제어하여 전송 모드를 설정합니다. 단일 바이트는 UART TXD 라인에서 RS-485 트랜시버의 데이터(D 또는 DI) 라인으로 전송됩니다. 트랜시버는 단일 종단 UART 비트 스트림을 A 및 B 라인의 차동 비트 스트림으로 변환합니다. 데이터가 트랜시버를 떠나면 호스트는 즉시 트랜시버를 수신 모드로 전환합니다.


슬레이브는 마스터와 유사하게 작동합니다. 슬레이브는 RS-485 트랜시버의 /RE 핀을 제어하여 수신 모드로 설정하고 마스터가 보낸 비트 스트림을 수신하여 단일 종단 신호로 변환한 후 슬레이브의 UART RXD 라인을 통해 수신합니다. 슬레이브가 응답할 준비가 되면 마스터와 동일한 방식으로 데이터를 전송하고 마스터는 수신 모드로 전환됩니다.

 

RS-232에서 RS-485로의 변환


RS-232와 RS-485 간 변환이 가능합니다. 한 가지 방법은 RS-232를 TTL로 변환한 다음 TTL을 RS-485로 변환하는 것입니다. 물론 RS-232에서 RS-485로의 직접 변환을 지원하는 칩도 있으며 이러한 모듈은 온라인에서 많이 구할 수 있습니다.

RS-232-RS-485 변환 모듈


RS-485와 CAN의 차이점


RS-485에는 표준화된 데이터 프로토콜 형식이 없지만 CAN 버스와 많은 유사점을 공유합니다. 예를 들어, A&B와 CANH&CANL은 모두 차동 신호입니다. 둘 다 통신을 위해 트랜시버가 필요합니다. 둘 다 120옴 터미네이션 저항을 사용한다는 점은 유사점입니다.

 

버스 특성 CAN 버스 RS-485 버스
하드웨어 비용 약간 높음 저렴하다
버스 활용 자동 우선순위 중재, 높은 활용도 폴링을 사용합니다. 낮은 활용도
데이터 전송률 높은 낮은
오류 감지 메커니즘 컨트롤러에는 낮은 수준의 데이터 전송의 정확성을 보장하는 체크섬 메커니즘이 포함되어 있습니다- 물리 계층 사양만 해당. 데이터링크 계층 사양 없음
단일-노드 장애가 미치는 영향 버스에 영향 없음 버스 마비
개발 비용 유연한 소프트웨어 개발, 낮은 시간 비용 개발이 어렵다
시스템 비용 상대적으로 낮음 높은

일반적인 RS-485 회로

다음은 온라인에서 찾은 일반적인 RS-485 회로입니다. 주목해야 할 두 가지 사항이 있습니다.

1. 활성화 신호 RE 및 DE는 리소스를 절약하기 위해 단일 GPIO로 제어할 수 있습니다. GPIO25가 하이 레벨을 출력하면 RE와 DE는 0V이고 장치는 수신 모드로 들어갑니다. GPIO25가 로우 레벨을 출력하면 RE 및 DE는 3.3V이고 장치는 전송 모드로 들어갑니다.

2. 일부 회로에서는 풀-저항이 핀 A에 추가되고 풀다운 저항이 핀 B에 추가됩니다. 그 주된 이유는 RS-485 버스가 유휴 상태에 있을 때 전압 레벨이 고정되지 않고-즉, -200mV와 +200mV 사이에서 변동하며 트랜시버가 높거나 낮은 레벨을 출력할 수 있기 때문입니다. UART는 유휴 상태일 때 높은 수준을 유지해야 합니다. 이때 트랜시버가 로우 레벨을 출력하면 UART는 이를 시작 비트로 해석하여 통신 오류를 일으킬 수 있습니다. R_u 및 R_d의 특정 값은 여기서 자세히 설명하지 않습니다. 나는 앞으로 이 주제에 관해 자세한 글을 쓸 계획이다.

041d65e6-c803-11ed-bfe3-dac502259ad0.png

 

두 번째 사항에 대해서는 다음 사항에 유의하시기 바랍니다.

① A핀에 풀{0}}저항을 적용하고 B핀에 풀다운 저항을- 적용할 경우, 역접속으로 인해 데이터 통신이 실패할 수 있습니다.

② 트랜시버에 내장된 -풀업-및 풀다운 저항-저항이 있는 경우 외부 저항을 추가할 필요가 없습니다.

문의 보내기

whatsapp

전화

이메일

문의