데이터계측분석/데이터통신 기술자료

시리얼 통신 기본 - RS-232 / RS-422 / RS-485

에이티에스 2023. 5. 10. 08:47
728x90

직렬 통신이란 무엇입니까?

직렬 통신은 하나 또는 두 개의 전송 라인을 사용하여 데이터를 송수신하고 해당 데이터를 한 번에 한 비트씩 연속적으로 송수신하는 통신 방식입니다. 신호선이 거의 없는 연결이 가능하기 때문에 배선 재료 및 중계 장비 비용을 절감할 수 있다는 장점이 있습니다.

 

시리얼 통신 표준

RS-232/RS-422/RS-485는 EIA(Electronic Industries Association) 통신 표준입니다. 이러한 통신 표준 중 RS-232는 다양한 응용 분야에서 널리 채택되었으며 컴퓨터의 표준 장비이기도 하며 모뎀과 마우스를 연결하는 데 자주 사용됩니다. 센서와 액추에이터에는 이러한 인터페이스도 포함되어 있으며, 그 중 다수는 직렬 통신을 통해 제어할 수 있습니다.

RS-232

이 직렬 통신 표준은 널리 사용되며 종종 컴퓨터에 표준으로 장착됩니다. "EIA-232"라고도합니다. 신호 라인과 커넥터의 목적과 타이밍이 정의되었습니다(D-sub 25핀 또는 D-sub 9핀). 현재 표준은 신호 라인이 추가되어 개정되었으며 공식적으로 "ANSI/EIA-232-E"라고 합니다. 그러나 지금도 일반적으로 "RS-232C"라고합니다.

 

RS-422

이 표준은 짧은 전송 거리와 느린 전송 속도와 같은 RS-232C의 문제를 해결합니다. "EIA-422A"라고도합니다. 신호 라인의 목적과 타이밍은 정의되어 있지만 커넥터는 정의되어 있지 않습니다. 호환되는 많은 제품은 주로 D-sub 25핀 및 D-sub 9핀 커넥터를 채택합니다.

 

RS-485 

이 표준은 RS-422A에서 연결된 장치가 거의 없는 문제를 해결합니다. "EIA-485"라고도 불립니다.

RS-485는 RS-422A와 상위 호환되는 표준입니다.신호 라인의 목적과 타이밍은 정의되지만 커넥터는 정의되지 않습니다.많은 호환 제품은 주로 D-sub 25-pin 및 D-sub 9-pin 커넥터를 채택합니다.

 

 
 

신호 할당 및 커넥터

RS-232C에서는 사용할 커넥터와 신호 할당이 정의되고 표준화되어 있습니다.

아래 그림은 D-sub 9핀 신호 할당 및 신호 라인을 설명합니다.

 

 

연결 방법

RS-232C에서는 커넥터와 신호 할당이 표준화되어 있어 많은 표준 호환 케이블이 시판되고 있습니다. 그러나 장비는 다음과 같은 유형이 있으며 연결할 장비에 따라 직선 케이블 또는 크로스 오버 케이블이 필요합니다.

 

장비 유형

DCE

데이터 통신 장비. 이 용어는 모뎀, 프린터 및 플로터와 같이 수동적으로 작동하는 장비를 나타냅니다.

DTE

데이터 단말 장비. 이 용어는 컴퓨터와 같이 활발하게 작동하는 장비를 나타냅니다.

 
크로스오버 케이블 연결(1)
크로스오버 케이블 연결(2)
스트레이트 케이블 연결

 

반이중 통신 및 전이중 통신

전이중 통신송신 및 수신 모두 자체 전송 회선을 가지고 있어 데이터를 동시에 송수신할 수 있는 방법입니다.

반이중 통신송신과 수신 사이를 전환하면서 하나의 전송 회선을 사용하여 통신을 수행하는 방법입니다. 이러한 이유로 동시 통신을 수행 할 수 없습니다.

 

비동기식 통신 및 동기식 통신

직렬 통신에서는 하나의 신호선을 사용하여 한 번에 한 비트씩 데이터를 전송하므로 수신 측에서 데이터를 정확하게 수신하려면 송신 측에서 각 비트를 전송하는 속도를 알아야 합니다. RS-232C에서는 동기식 통신 및 비동기식 통신 표준이 정의되었습니다. 측정 또는 제어에 사용되는 주변 장비의 경우 앞서 언급한 전이중 통신 및 비동기 통신이 일반적으로 사용됩니다.

동기식 통신이 방법은 다른 장비 또는 자체 생성 클럭에 의해 생성된 클럭에 동기화된 데이터를 보내고 받습니다. 통신은 송신측에서 각 비트에 추가된 동기 신호를 기반으로 수행된다. 이것은 데이터 전송 효율은 좋지만 전송 절차가 복잡해진다는 단점이 있습니다.비동기식 통신이 메서드는 각 측의 자체 생성 클록에 동기화된 데이터를 보내고 받습니다. 전송 속도 설정이 일치하지 않으면 정상적인 통신이 불가능합니다.

즉, 송신측과 수신측 모두 처음에 초당 전송할 비트 수에 동의한 다음 각각 해당 전송 속도와 일치하는 주파수의 동기화 신호를 생성합니다. 비동기 통신에서는 하나의 데이터 라인에서 한 번에 한 비트씩 데이터를 송수신하기 때문에 초기에 양측의 통신 조건 설정이 일치하지 않으면 정상적인 통신이 불가능합니다.

 

컴퓨터(컨트롤러) 측 설정을 주변 기기 측 설정과 일치시키는 것이 일반적인 설정 방법입니다.전송 속도초당 보낼 비트 수를 지정합니다. 단위는 bps(초당 비트 수)이며 300, 600, 1200, 2400, 4800, 9600, 19200 등에서 선택됩니다. 설정과 타이밍을 일치시킴으로써, 데이터 구분 기호가 일치하고, 데이터는 정상적으로 송수신될 수 있습니다. 이러한 이유로 정확한 타이밍을 얻기 위해 각 데이터 항목(1바이트)에 시작 비트가 추가됩니다.

 

정지 비트 길이데이터의 끝을 나타내는 비트의 길이를 설정합니다. 일반적으로 1비트, 1.5비트 또는 2비트로 선택됩니다. 시작 비트 길이는 1비트로 고정되므로 이 설정이 필요하지 않습니다.

 

데이터 비트 길이이는 각 데이터 항목이 구성되는 비트 수를 지정합니다. 이는 사용 중인 디바이스에 따라 다르지만 일반적으로 영숫자 문자 및 기호에 대해 7비트를 지정하고 8바이트 이진 데이터에 대해 1비트를 지정합니다.

패리티 검사 설정데이터의 오류를 찾아내는 기능으로, "짝수 패리티 검사(EVEN)", "홀수 패리티 검사(ODD)" 또는 "패리티 검사 없음(NONE)" 중에서 선택된다.패리티 검사 세부 정보송신 측에서는 "1" 또는 "0"의 패리티 비트가 데이터에 추가되어 ODD에 대해 짝수 및 홀수에 대해 "1" 데이터 비트 수를 만듭니다. 수신 측에서는 "1" 데이터 비트의 수를 계산하여 짝수일 때 짝수, ODD일 때 홀수이면 데이터가 정확한 것으로 판단합니다.

 

핸드셰이크(흐름 제어)디바이스 간에 데이터를 송수신할 때 수신측이 수신 상태가 아닐 때 데이터를 송신하면 데이터가 손실될 수 있으므로 통신에서는 상대방의 상태를 확인하는 것이 중요합니다. 핸드셰이크(흐름 제어)는 통신의 신뢰성을 유지하는 기능입니다.

송신측에서 수신측으로 "데이터가 전송되고 있다"는 신호가 전송되고, 수신측은 해당 신호를 수신하여 신호선에서 데이터를 읽습니다. 그런 다음 "데이터가 수신되었습니다"라는 회신을 보내는 쪽에 보냅니다. 즉, 양측이 데이터 송수신을 확인하면서 데이터를 전송할 수 있습니다.소프트웨어 핸드셰이크(XON/XOFF 흐름 제어)수신 측에서 수신 버퍼의 나머지 여유 공간이 부족할 때 송신을 일시적으로 중단하도록 요청하기 위해 송신 측으로 "XOFF 코드"를 보내는 제어 방법입니다.

 

충분한 여유 공간이 있을 때, 송신측이 송신을 다시 시작하도록 요청하기 위해 "XON 코드"가 송신된다.하드웨어 핸드셰이크제어 라인(RTS 또는 DTR)은 소프트웨어 흐름 제어에서 XON/XOFF 코드를 보내는 대신 자동으로 켜지거나 꺼집니다. RTS 신호와 CTS 신호 또는 DTR 신호와 DSR 신호는 서로 연결되어야 합니다.

 

 

728x90
반응형
그리드형