안녕하세요!
RS-485 통신은 거의 모든 산업분야에서 범용적으로 쓰이는 통신 방식 중 하나이죠.
Differential Voltage를 활용한 통신 방법으로, Data 전송에 있어서 안정성이 상당히 높아 장거리 통신도 가능하며, 한 Bus 선로에 최대 32개까지 모듈을 연결할 수 있기 때문에 다양한 분야에 Application이 가능합니다.
RS485 통신 요약:
1. Differenctial 통신이기 때문에 선 2가닥만 있으면 된다.
1. 전송 안정성이 높다.
2. 한 Bus 선로에 최대 32개까지 모듈 연결이 가능하다
아마 이 글을 보고 계시다면 RS485에 대해는 알지만 Failsafe 회로를 정확히 어떻게 구성해야 하는지, 혹은 그 개념이 무엇인지 알아보고자 들어오셨을 거라고 생각이 되네요!
그래서 오늘은 RS485 통신의 개념보다는 Failsafe 기능과 설계방법에 초점을 맞춰서 설명을 드리겠습니다.
About Failsafe
Failsafe는 말 그대로 통신에 실패했을 경우에 대한 안전장치라고 생각하면 됩니다. Differential Input을 통해서 Data가 high인지 Low인지 판별하게 되는데, 이해를 위해 아래의 그림을 봐봅시다.
입력 A와 B 사이의 Differential Voltage가 Vid 입니다. 보통의 경우 0.2V와 -0.2V를 기준으로 Logic High Low가 정해집니다.
문제는 입력이 없어서 Floating 상태일 때 발생합니다. 과연 전압은 어떤 상태로 머무르게 될까요?
그런 상태를 방지하기 위해 구성하는 것이 Failsafe 회로입니다. 일반적으로 회로를 구성할 때 Random 값을 방지하기 위해 Pull-up, 혹은 Pull-down 하는 것과 원리는 거의 똑같습니다.
위 그림은 Failsafe bias resistor 가 추가된 RS485회로입니다.
Vs에서 고정 전압을 넣어주고 bias 저항인 Rfs를 거쳐서 전압이 A, B input line에 동등하게 공급되고 있습니다.
만약에 failsafe 회로가 없다면 연결된 모든 모듈들이 idle 상태라면 bus의 전압은 floating 상태가 되기 때문에 random 한 전압값을 가지게 됩니다.
따라서 입력이 랜덤으로 들어올 수 있다는 얘기죠.
그것이 바로 통신에서의 Fail을 의미합니다.
이제 Failsafe 회로가 무엇인지 개념이 잡혔을 거라 생각됩니다.
그렇다면 Rfs와 Rt는 어떻게 계산해야 할까요?
심플한 Rfs 및 Rt 계산 방법
정말 심플하게는 전압분배로 간단하게 계산할 수 있습니다.
(실제론 모듈들이 얼마나 연결되었는지에 따라 값이 약간씩 달라질 수 있습니다만, 대부분의 경우에선 그렇게 복잡하게 계산하지 않아도 됩니다)
Rfs - Rt1//Rt2 - Rfs 이렇게 저항이 구성되어 있고 여기에 Vs를 입력하고 있다고 생각해봅시다.
그러면 전압분배를 통해 Rt(Rt1 혹은 Rt2)에 걸리는 전압이 0.2V 이상이면 Pull-up 기능을 수행한다고 볼 수 있을 것입니다.
일반적으로 설계 과정을 보면, Rt1과 Rt2는 Termination resistor의 개념으로 정해집니다.
Failsafe회로를 구성하기 이전에 이미 정해져 있다는 뜻입니다.
따라서 그 저항값을 기준으로 Rfs 값을 전압분배 공식으로 계산해주면 필요한 값을 찾을 수 있습니다.
약간의 안전마진을 두어 0.2V가 아닌 0.3V 이상이 Rt에 걸리도록 하는 것이 좋겠죠?
복잡한 Rfs 및 Rt 계산 방법
아마 좀 더 정교한 통신, 높은 안정성이 필요한 경우에는 이 복잡한 계산방법을 따라야 할 것입니다.
노드 A와 노드 B에 걸려있는 모든 Transceiver의 저항을 합해 등가 변환한 것이 Rineq입니다.
이를 고려하여 계산하면 시스템의 더 정확한 Rfs 요구 값이 나오겠죠?
계산 방법은 노드 A에 걸린 전압과 노드 B에 걸린 전압 방정식을 통해서 Va-Vb로 Rt에 걸리는 전압을 구하고...
....
계산 과정은 상당히 복잡할 수 있습니다.
따라서 아래의 Reference 문서를 검색하여 보시는 것을 추천드립니다.
Reference: RS-485: Passive failsafe for an idle bus - Texas Instrument
LVDS 통신과의 비교
LVDS도 Differential Voltage를 활용한다는 점에서 매우 비슷합니다.
그렇다면 LVDS는 어떤지 아래 글을 통해서 확인해보세요!
[Wiki] LVDS 란? (저전압 차등 시그널링, Low Voltage Differential Signaling)
[Wiki] LVDS의 Fail-Safe 회로 이해 및 설계하기
도움이 되었다면 즐겨찾기 추가, 공감 및 댓글 부탁드려요!
'전자 | 제어 | 항공우주 > 전자 HW 설계' 카테고리의 다른 글
[실무] Push Pull Converter 설계 방법 - 기본 이론, 설계 (2) | 2022.05.04 |
---|---|
[기본&실무] LDO 레귤레이터 (ft.TI Datasheet) (0) | 2022.04.28 |
[기초&실무] 슈미트 트리거(Schmitt Trigger) 및 디지털 회로 설계 (2) | 2022.04.18 |
[실무] LVDS의 Fail-Safe 회로 이해 및 설계하기 (0) | 2022.04.12 |
[실무] LVDS 란? (저전압 차등 시그널링, Low Voltage Differential Signaling) (0) | 2022.04.12 |
댓글