Post

[Robot] TCP & IP 통신

[Robot] TCP & IP 통신

이더넷(Ethernet) 통신

직렬(Serial) 통신 방식 중 BNT, UTP, STP 케이블을 사용하여 LAN 통신

이더넷 통신을 하는 디바이스는 48비트 길이의 고유 MAC 주소를 가짐

10Mbps 이상의 고속 네트워크 통신 지원

매우 빠른 응답속도를 지원함으로 협동로봇 제어기와 Arm의 통신 지연속도 최소화 가능

대표적으로 TCP/IP 산업 표준 프로토콜 사용

TCP/IP (Transmission Control Protocol / Internet Protocol)

TCP/IP를 지원하는 디바이스는 고유한 IP 주소를 가짐

IP 주소는 0~255 까지의 숫자로 구성된 네 개의 필드

단일 네트워크여도 IP 주소 및 서브넷 마스크 필요

네트워크 부분과 호스트 부분으로 나누어짐

동일 네트워크 영역에서 Host IP는 달라야 함

서브넷 마스크

서브넷팅 : 서브넷 마스크가 필요한 네트워크 주소만 효율적으로 호스트 IP로 분배하는 기능

IP와 같이 32비트의 네 개의 필드로 구성

네트워크 관리 및 호스트IP를 지정함

기본적으로 Class A, B, C로 분류

연속된 1비트로 구성되며 0의 값을 가지면 이후 값은 모두 0

클래스서브넷 마스크CIDR 표기법
Class A255.0.0.0/8
Class B255.255.0.0/16
Class C255.255.255.0/24

Host IP 범위는 서브넷 마스크의 0의 개수가 n개일 때, 2의 n승 -2개(서브넷 네트워크, 브로드캐스트)만큼 할당 가능

항목10진수2진수
IP 주소192.168.137.10011000000.10101000.10001001.01100100
서브넷 마스크255.255.255.011111111.11111111.11111111.00000000
서브넷 네트워크192.168.137.011000000.10101000.10001001.00000000
브로드캐스트 주소192.168.137.25511000000.10101000.10001001.11111111
  • 서브넷 네트워크: IP 주소와 서브넷 마스크의 AND 연산 결과
  • 사용 가능한 Host IP 범위: 192.168.137.1 ~ 192.168.137.254 (254개)
  • 브로드캐스트 주소: 서브넷 네트워크의 호스트 부분을 모두 1로 설정한 주소

브로드 캐스트

해당하는 네트워크에 있는 모든 호스트에게 데이터를 전송하는 역할

네트워크에 속하는 모든 IP 주소 중 마지막 주소

서브넷 마스크에서 0에 해당하는 비트를 1로 바꾸고 서브넷 네트워크와 AND 연산을 하면 구할 수 있음

서버 & 클라이언트

하나의 서버에 다중 클라이언트가 접속 가능

서버의 전원이 OFF되면 클라이언트가 접근할 수 없지만, 클라이언트가 전원이 OFF되도 서버에는 영향이 없다

서버는 각 클라이언트에서 요청이 오면 데이터를 클라이언트에 전송

TCP/IP 의 경우 IP + PORT 번호를 서버가 오픈하면 클라이언트가 서버 IP + PORT 번호로 접속

통신 포트(TCP/IP)

TCP/IP 통신을 지원하는 장비에서 내부의 다양한 어플리케이션과 연결하는 통로

각 통로 마다 고유의 PORT 사용(모드버스 TCP = 502, 텔넷 = 23)

프로토콜

통신 규약, 규칙

고속 통신에서 오류 보완 및 데이터의 신뢰도를 높이고 약속되지 않은 외부 통신을 차단

국제 협약에 따라 다양한 프로토콜 및 통신 보안을 위한 사용자 정의 프로토콜이 존재

모드버스 프로토콜

제조사별로 다양한 프로토콜이 존재하며, 보안을 위한 전용 프로토콜이 존재하여 제품을 판매 할 때 프로토콜을 사용자가 이해할 필요가 있음

새로운 장비를 구축 할 때마다 매번 새로운 프로토콜을 배워야 하는 문제 발생

Modicon에서 만든 PLC와 통신을 하기 위해 개발된 프로토콜

단순하며, 자동화에 필요한 제어와 모니터링 기능을 수행 가능하여 사실상 표준 프로토콜 규격으로 등장

대부분의 통신 장비는 자체 프로토콜과 모드버스 통신을 추가로 지원

보안에 취약

Socket 통신 프로토콜

서버-클라이언트 간 1:1 통신을 하며 다중 접속 시 서버에서 대기열을 부여하여 1:1 처리

산업용 로봇에서 주로 Vision 통신에 사용

포트는 자유롭게 구성 가능

HTTP(Hypertext Transfer Protocol) 통신 프로토콜

텍스트 기반의 요청-응답 기반 통신 프로토콜

클라이언트가 요청을 하고 서버에서 응답을 함

초기에는 텍스트만 전송했으나, 현재는 JSON파일, 이미지도 전송

Request와 Response로 이루어짐

Request는 Request Line, Header Line, Body 로 구성

Response는 Status Line, Header Line, Body 로 구성

This post is licensed under CC BY 4.0 by the author.