본문 바로가기
  • Masacorgi 's Dev Bloggg
TIL/Embedded

[스크랩] 모드버스란 무엇일까

by masacorgi 2025. 3. 8.

https://m.blog.naver.com/crucian2k3/222647237589

 

Modbus Protocol(프로토콜)이란 무엇인가?

** 수정이력 ** 2023.07.14 CRC 포멧을 리틀엔디안으로 정정 2023.12.04 송수신 패킷예제 보강 ** 이어...

blog.naver.com

 

Modbus Protocol은 기성품과의 연동을 위해서 널리 사용된다.

Modicon이라는 회사가 1979년 만든 직렬 통신 프로토콜로써 공장 자동화에 사용되는 PLC 통신을 위해 개발되었다.

요약하자면 1대의 마스터노드가 다수의 슬레이브 노드를 제어하기 위한 약속라고 할 수 있다.

 

1. 통신 주소

* Register Address : 일반적으로 생각하는 주소(1부터 시작)

* Protocol Address : 실제 프로그래밍 때 접근해야 하는 주소(0부터 시작)

 

2. 모드버스 종류

* Modbus RTU(Remote Terminal Unit) : 바이너리 데이터형 전송방식, 산업현장에서 많이 이용

* Modbus ASCII : ASCII 문자를 사용하는 텍스트형 전송방식

* Modbus TCP/IP : Modbus RTU와 유사하지만 TCP/IP 계층에서 사용

 

3. 대표적 시리얼 통신

* RS-232, RS-422, RS-485

 

4. 통신 특징

* Master 1대, Slave 최대 247개 연결 가능

* Master의 Slave 호출 모드

    - Unicast mode     : 마스터가 특정 슬레이브에게 요구, 해당 슬레이브는 응답

    - Broadcast mode : 마스터가 보낸 요구패킷이 모든 슬레이브에게 동시 적용

 

 

 

-- 추가 -- 

MQTT와의 차이점은 무엇일까?

다음은 Chat GPT가 요약한 Modbus와 MQTT의 정리표이다.

 

Chat GPT : 

ModbusMQTT는 각각 산업용 통신 프로토콜과 IoT 메시징 프로토콜로, 목적과 동작 방식이 다릅니다. 주요 차이점을 정리하면 다음과 같습니다.

🔹 Modbus vs. MQTT 비교표

항목 Modbus MQTT

프로토콜 유형 필드버스 통신 (산업 자동화) 메시지 브로커 기반 (IoT)
통신 방식 마스터-슬레이브 (요청-응답) 퍼블리셔-서브스크라이버 (비동기 메시징)
네트워크 구조 Point-to-Point (P2P) 클라이언트-브로커-클라이언트
전송 방식 폴링 기반 (Master가 Slave에 주기적으로 요청) 이벤트 기반 (필요할 때만 전송)
데이터 포맷 레지스터(16비트) 기반 JSON, 바이너리 등 자유로운 포맷
연결 방식 RS-232, RS-485, TCP/IP (Modbus RTU, Modbus TCP) TCP/IP (주로 MQTT over TCP)
지연시간 낮음 (로컬 네트워크 중심) 상대적으로 높음 (클라우드 기반)
보안 기본적인 CRC 오류 검사 TLS/SSL 암호화 지원
사용 분야 산업 자동화, PLC, 센서 네트워크 IoT 디바이스, 클라우드 통신, 스마트 팩토리

🔹 Modbus란?

Modbus는 1979년 **Modicon(현 Schneider Electric)**에서 개발한 산업용 필드버스(Fieldbus) 프로토콜입니다. 주로 PLC, HMI, 센서, 계측기 등에서 사용됩니다.

Modbus 특징

  • 마스터-슬레이브 구조 (Master가 Slave에게 요청, Slave가 응답)
  • Modbus RTU (RS-485/RS-232 기반)와 Modbus TCP (이더넷 기반) 지원
  • 폴링(Polling) 방식: 마스터가 주기적으로 데이터를 요청
  • 낮은 대역폭으로 동작하며, 실시간성이 뛰어남

🔸 Modbus 사용 사례

  • 공장 자동화 (PLC → 센서 데이터 읽기)
  • 스마트 미터링 (전력, 온도 센서 통신)
  • 로컬 네트워크에서 빠른 데이터 교환

🔹 MQTT란?

MQTT(Message Queuing Telemetry Transport)는 1999년 IBM이 개발한 경량 메시지 프로토콜로, IoT 시스템에서 널리 사용됩니다.

MQTT 특징

  • 퍼블리셔-서브스크라이버 구조 (중앙 메시지 브로커를 통해 통신)
  • 이벤트 기반으로 데이터가 변경될 때만 전송 → 네트워크 트래픽 절감
  • QoS (Quality of Service) 레벨 지원: 0, 1, 2 단계의 전송 신뢰성 제공
  • TLS/SSL 보안 지원 (Modbus보다 높은 보안성)

🔸 MQTT 사용 사례

  • 클라우드 기반 IoT 센서 네트워크
  • 스마트 팩토리 (센서 데이터 수집 및 분석)
  • 스마트홈 (온도 조절, 조명 제어 등)

🔹 어떤 경우에 사용해야 할까?

  • 로컬 산업 자동화Modbus (빠른 응답, 간단한 데이터 교환)
  • 클라우드 기반 IoT 시스템MQTT (원격 데이터 수집, 확장성)

📌 정리하면?
Modbus는 PLC와 센서 간의 로컬 통신에 적합하고, MQTT는 IoT 기기에서 인터넷을 통한 데이터 전송에 적합합니다. 🚀

'TIL > Embedded' 카테고리의 다른 글

[스크랩] 펌웨어 개발 방법  (0) 2025.03.18
ESP32 칩 백도어 공격 우려  (0) 2025.03.11
VI 친숙해지기  (0) 2025.03.08
Fuse bit 란?  (0) 2025.02.17
하이퍼터미널이란?  (0) 2025.02.12