Modbus는 1979년 Schneider Electric에서 PLC 통신을 위해 개발되었다.
2004년 Schneider가 Modbus 협회(Modbus Organization)에 모든 권리를 이양 하였고, 무료로 사용할 수 있다. Modbus 협회는 Modbus 사용자와 제품 개발자로 구성되어 있다.
Modbus는 산업용 통신에 굉장히 많이 사용된다.
Modbus는 프로토콜이 비교적 단순하여 쉽게 구현할 수 있다.
기본적으로 Modbus는 Single-master multi-slave이다. Master에서 Request를 보내면 Slave에서 Reply하는 방식이다.
Modbus 프레임 구조는 다음과 같다. Request와 Reply 모두 동일하며 Data 부분만 다르다. Data 부분을 제외하고 모두 1바이트이고 Data는 Function Code에 따라 달라진다.
한 프레임의 최대 크기는 256바이트 이다.
프레임 사이는 최소 3.5 character 이상(t3.5)이어야 하고 character 사이는 1.5 character 이하여야 한다.
노드 최대 개수는 255개이다. 노드 주소 0은 broadcasting에 사용된다. Master의 주소는 없어도 된다.
Modbus는 OSI 모델의 Data Link layer에 해당한다.
Modbus 협회 홈페이지에서 자세한 Spec을 다운 받을 수 있다.
Modbus 종류
Modbus RTU : RS-485/422 등을 이용한 Modbus 통신, 16bit CRC 사용, 가장 기본적인 방식
Modbus ASCII : ASCII 방식 통신
Modbus TCP/IP : TCP를 통한 Modbus 통신, 포트번호 502, CRC가 없음 (MAC 프로토콜에서 CRC를 하기 때문에 없음)
Modbus Plus (Modbus+) : Multi-master 가능 (Peer-to-peer 통신), Schneider Electric 소유
'컴퓨터공학 > 네트워크' 카테고리의 다른 글
One's complement sum (0) | 2017.12.03 |
---|---|
네트워크 토큰 링 (Token Ring) 동작 방식 (0) | 2017.09.29 |
이더넷 뜻 (0) | 2017.09.09 |
통신 계층 모델 : OSI 모델과 TCP/IP 모델 (0) | 2017.09.06 |
TCP/UDP의 포트 (0) | 2017.08.16 |
댓글