Modbus는 산업 자동화 분야에서 매우 널리 사용되는 통신 프로토콜입니다. 이번 글에서는 PLC(Programmable Logic Controller)에서 Modbus 통신을 설정하는 방법을 단계별로 안내합니다. 하드웨어 준비부터 소프트웨어 설정, 그리고 간단한 실습 예제까지 포함되어 있으니, 처음 Modbus를 접하는 분들도 쉽게 따라 할 수 있습니다. Siemens, Mitsubishi, Omron 등의 주요 PLC 브랜드를 기준으로 설명할 예정입니다. 자, 이제 바로 시작해볼까요?
1. Modbus 통신을 위한 하드웨어 준비
1-1. 통신 방식 선택하기
Modbus는 크게 Modbus RTU와 Modbus TCP라는 두 가지 주요 통신 방식을 지원합니다. 두 가지 방식은 다르게 작동하며, 필요에 맞는 방식을 선택하는 것이 중요합니다.
- Modbus RTU (Remote Terminal Unit):
- 직렬 통신 방식으로 RS-232 또는 RS-485를 사용합니다.
- 장점: 주로 장거리 통신에 적합하며, 데이터 전송 속도가 빠릅니다. RS-485를 사용하면 여러 장치를 연결할 수 있습니다.
- 사용 예시: 여러 개의 PLC를 연결해야 하는 경우, 직렬 연결이 필요한 경우.
- Modbus TCP:
- 이더넷 기반의 통신 방식입니다. PLC와 다른 장치들이 동일한 네트워크에 연결되어 있어야 합니다.
- 장점: 속도가 빠르고, 네트워크가 유연하여 확장성이 좋습니다. 연결이 용이하고, 전송 거리가 길지 않아도 됩니다.
- 사용 예시: PLC와 PC 또는 다른 스마트 장치들이 같은 로컬 네트워크 내에 있을 때.
어떤 방식이 적합할까?
- PLC와 연결할 장치의 통신 포트(직렬 포트 또는 이더넷 포트)와
- 네트워크 거리(RS-485는 장거리, TCP는 유연한 네트워크 환경에 적합)를 고려해 선택하세요.
1-2. 하드웨어 연결
- Modbus RTU (RS-485):
- PLC의 RS-485 포트에 연결할 장치를 준비합니다.
- A, B 신호선을 정확히 연결합니다. A선은 신호를 전송하고, B선은 신호를 받습니다.
- **종단 저항(120Ω)**을 네트워크 양 끝에 설치합니다. 이 저항은 신호 반사를 방지해 통신이 원활하게 이루어지도록 돕습니다.
- Modbus TCP (이더넷):
- PLC의 이더넷 포트에 RJ45 케이블을 사용하여 PLC와 PC 또는 다른 장치를 연결합니다.
- PLC의 IP 주소를 설정합니다. 네트워크 내에서 PLC가 고유한 IP 주소를 가져야 통신이 가능하므로, 네트워크 관리자에게 확인 후 IP를 설정하세요.
1-3. 필요 장치와 매뉴얼 준비하기
- PLC 사용자 매뉴얼: 각 PLC마다 통신 설정이 다를 수 있으므로, 사용 중인 PLC의 매뉴얼을 참고하는 것이 중요합니다. 예를 들어, Siemens S7-1200, Mitsubishi FX5U, Omron CP1H 등 각각에 대한 매뉴얼이 필요합니다.
- Modbus 지원 장치의 데이터 시트: 연결할 Modbus 장치에 대한 데이터 시트를 준비하여, 필요한 파라미터(예: 슬레이브 주소, 보레이트 등)를 정확히 설정할 수 있도록 합니다.
TIP: 제조사의 공식 매뉴얼을 참고하면 설정 중 발생할 수 있는 문제를 빠르게 해결할 수 있습니다.
2. PLC 소프트웨어에서 Modbus 설정하기
2-1. Siemens PLC에서 Modbus 설정 (예: S7-1200)
Siemens S7-1200 PLC에서 Modbus RTU 또는 TCP 통신을 설정하는 방법은 다음과 같습니다.
- TIA Portal 열기:
- TIA Portal을 실행하고, 새로운 프로젝트를 시작하거나 기존 프로젝트를 엽니다.
- 하드웨어 구성:
- 프로젝트에 Siemens S7-1200 PLC를 추가합니다.
- Modbus RTU 또는 TCP 통신을 위해 CM 1241 통신 모듈(Modbus RTU용)을 추가합니다.
- Modbus 설정:
- 통신 프로토콜에서 Modbus RTU 또는 Modbus TCP를 선택합니다.
- 슬레이브 장치의 ID, 보레이트, 데이터 비트, 정지 비트 등의 통신 파라미터를 설정합니다.
- 블록 생성:
- MB_CLIENT 또는 MB_SERVER 블록을 사용하여 PLC에서 Modbus 통신을 처리하는 논리를 작성합니다.
- 데이터 교환 주기와 읽기/쓰기 작업을 설정합니다.
참고: Siemens 공식 매뉴얼에서 “S7-1200 Modbus 설정” 챕터를 확인하세요.
2-2. Mitsubishi PLC에서 Modbus 설정 (예: FX5U)
Mitsubishi FX5U PLC에서 Modbus 설정 방법은 다음과 같습니다.
- GX Works2 또는 GX Works3 실행:
- 새로운 프로젝트를 생성하고, PLC 모델을 선택합니다.
- 하드웨어 설정:
- FX5U의 내장 RS-485 포트를 설정하거나 추가 통신 모듈을 사용해 연결합니다.
- Modbus 유틸리티 사용:
- Mitsubishi에서 제공하는 Modbus 유틸리티를 사용하여 Modbus 파라미터를 설정합니다.
- 통신 명령어 작성:
- ZP.MBR 명령어를 사용하여 Modbus 프레임을 생성하고 데이터를 송수신합니다.
참고: Mitsubishi 공식 매뉴얼에서 “FX5U Modbus Communication” 섹션을 확인하세요.
2-3. Omron PLC에서 Modbus 설정 (예: CP1H)
Omron CP1H PLC에서 Modbus 설정 방법은 다음과 같습니다.
- CX-Programmer 실행:
- CX-Programmer에서 새로운 프로젝트를 시작합니다.
- 모드 설정:
- PLC의 시리얼 포트를 Modbus 모드로 설정합니다.
- 기본 데이터 설정:
- 슬레이브 주소, 보레이트, 파리티 등을 설정합니다.
- DM 영역 설정:
- 데이터를 저장할 **메모리 영역(DM)**을 정의하고, Modbus 명령어를 사용하여 읽기/쓰기 작업을 설정합니다.
참고: Omron의 “Modbus Protocol Setup” 가이드를 활용하세요.
3. 실습 예제: 간단한 Modbus RTU 설정
이제 실제로 Modbus RTU를 설정해 보겠습니다. 목표는 온도 센서 데이터를 PLC로 읽어오는 것입니다.
하드웨어 연결:
- RS-485 케이블을 사용하여 온도 센서와 PLC를 연결합니다.
- A/B 선이 올바르게 연결되었는지 확인합니다.
PLC 설정:
- Siemens S7-1200 기준으로 TIA Portal에서 MB_CLIENT 블록을 추가합니다.
- 슬레이브 ID를 온도 센서의 ID로 설정합니다.
- 기능 코드(Function Code) 03(Read Holding Registers)을 사용하여 온도 센서 데이터를 읽어옵니다.
테스트 및 디버깅:
- PLC에서 실시간 데이터를 읽어오는지 확인합니다.
- 데이터 값이 예상 범위에 있는지 PLC HMI 또는 모니터링 툴을 사용해 점검합니다.
TIP: 실제 장비를 연결하기 전에 시뮬레이터를 사용하여 설정을 미리 점검하면 시간을 절약할 수 있습니다.
마무리
이 글에서는 PLC에서 Modbus 통신을 설정하는 방법을 상세히 살펴보았습니다. Modbus는 설정 과정이 비교적 간단하지만, 각 장치의 통신 파라미터를 정확히 맞추는 것이 중요합니다. 실제 설정 전에 공식 매뉴얼을 참고하고, 실습을 통해 이해를 넓혀보세요.
궁금한 점이 있다면 댓글로 남겨주세요!
'PLC' 카테고리의 다른 글
Modbus 통신의 고급 활용: 여러 슬레이브와의 동시 통신 (0) | 2024.12.16 |
---|---|
Modbus 통신 문제 해결: 오류 진단과 해결 방법 (2) | 2024.12.16 |
Modbus 데이터 읽기와 쓰기: 레지스터와 코일의 이해 (0) | 2024.12.16 |
Modbus 네트워크의 핵심 (2) | 2024.12.12 |
PLC와 Modbus 통신의 이해 (0) | 2024.12.12 |