본문 바로가기
MELSEC PLC 중급 강좌

[17] PLC 중급 강좌

by lemy 2019. 7. 1.
반응형

[17] PLC 중급 강좌

4. 제어 네트워크 유니트

 

4.4. MODBUS 모듈 

4.4.1. MODBUS 모듈 개요.
MODBUS는 Schneider Electric SA에서 제안 한 오픈 FA 네트워크 통신 프로토콜로, RS-485기반의 MODBUS/RTU 및 TCP/IP기반의 MODBUS /TCP가 있습니다.
QJ71MB91은 MELSEC-Q 시리즈 PLC를 MODBUS/RTU 프로토콜의 시스템에 접속하는 경우에 사용하고, QJ71MT91은 MELSEC-Q 시리즈 PLC를 MODBUS/TCP 네트워크에 접속하는 경우에 사용합니다.
◈ MODBUS/RTU 프로토콜 시스템 예.

◈ MODBUS/TCP 프로토콜 시스템 예.


QJ71MB91, QJ71MT91은 각각 오픈 FA 네트워크인 MODBUS/RTU, MODBUS /TCP는 통신의 마스터 기능을 지원하고 있으며, 타사의 각종 MODBUS 슬레이브 기기와 통신할 수 있습니다.


마스터 기능은 아래 2종류의 기능을 지원하고 있습니다.
1) 자동 교신 기능
자동 교신 파라미터를 설정하면, MODBUS모듈의 버퍼메모리를 사용하여 슬레이브에 대한 MODBUS 디바이스 읽기 / 쓰기를 지정 간격으로 자동으로 실행할 수 있습니다. MODBUS모듈의 버퍼메모리와 PLC CPU 의 디바이스 메모리 간의 전송은 유틸리티 패키지 (GX Configurator-MB)에 의한 자동 리프레시 설정 또는 시퀀스 프로그램에 의한 인텔리전트 기능 모듈 디바이스 액세스에 의해 실행할 수 있습니다.

2) 전용 명령에 의한 교신
임의의 타이밍에 전용 명령에 의해 시퀀스 프로그램으로 교신할 수 있습니다. MODBUS모듈은 아래의 전용 명령으로 교신할 수 있습니다.
MBRW 명령: 슬레이브에 대해서 MODBUS 디바이스의 읽기/쓰기를 실행합니다. 따라서 슬레이브의 데이터를 PLC CPU 의 디바이스 메모리에서 읽거나 PLC CPU 의 데이터를 슬레이브에 쓸 수 있습니다.
MBREQ 명령: 슬레이브에 대해서 사용자 임의의 요구 스테이트먼트 포맷(펑션 코드+데이터부)을 발행할 수 있습니다.

3) QJ71MB91 지원 MODBUS 표준 펑션
MODBUS 표준 펑션을 사용하면 PLC CPU 의 디바이스에 읽기, 쓰기를 실행하거나 QJ71MB91 상태를 마스터에 수집할 수 있습니다.


4) 프레임 사양


◈ RTU-BIN 모드: 프레임을 바이너리 코드로 송수신하는 모드입니다.


RTU 모드의 에러 체크는 CRC(Cyclic Redundancy Check) 로 실행됩니다.
QJ71MB91 에서는 다음의 순서로 CRC 가 계산됩니다. 상대 기기에서 에러 체크를 실행하는 경우, 아래의 순서로 CRC 를 계산하십시오.
① 16비트가 모두 "1" 인 레지스터를 로드 합니다.
② CRC는 프레임의 상위 비트부터 8비트 마다 계산합니다. 
프레임의 8 비트와 상기 ①의 비트의 배타적 논리합(XOR)을 계산합니다.
③ 상기 ②의 결과를 오른쪽 방향으로 1비트 시프트 합니다.
④ 상기 ②의 최하위 비트가 "1"이면, 상기 ③의 결과와 생성 다항식(A001H)의 배타적 논리합 (XOR) 을 계산합니다. 최하위 비트가 "0" 일 때는 배타적 논리합 (XOR)을 계산하지 않고, 그대로 오른쪽 방향으로 1 비트 시프트 합니다.
⑤ 비트 시프트가 8 회가 될 때까지 상기 ③과 ④의 조작을 반복합니다.
⑥ 상기 ⑤의 결과와 프레임의 다음 8 비트의 배타적 논리합 (XOR)을 계산합니다.
⑦ 상기 ③~⑥의 조작을 반복합니다.
⑧ 상기의 조작을 데이터부의 끝까지 반복합니다. 마지막 값이 계산된 CRC 값이 됩니다.
⑨ 프레임에 대한 CRC 값은 하위 8 비트→상위 8 비트의 순서로 저장됩니다.

◈ RTU-ASCII 모드: 프레임을 ASCII 코드의 2 캐릭터로(2바이트) 송수신하는 모드입니다.


ASCII 모드의 에러 체크는 LRC(Longitudinal Redundancy Check) 로 실행됩니다.
QJ71MB91 에서는 다음의 순서로 LRC가 계산됩니다.
상대 기기에서 에러 체크를 실행하는 경우, 아래의 순서로 LRC를 계산하십시오.
① LRC 의 계산 시는 에러 체크 계산 범위의 ASCII 코드를 RTU 형식 (바이너리)으로 변환합니다.
② 프레임 중의 연속된 8비트로 덧셈을 합니다. (덧셈 시는 자리 올림 제외 )
③ 상기 ②의 결과를 2의 보수로 합니다. (비트를 반전하여 01H 을 더합니다.)
④ 상기 ③의 결과를 ASCII 코드로 변환합니다.

4.4.2. MODBUS-RTU 모듈. (QJ71MB91)
1) RS-232 회선을 사용하여 슬레이브국과 1:1 로 접속한 경우

2) RS-485 회선을 사용하여 슬레이브국과 1:n 으로 접속한 경우

3) QJ71MB91 모듈 I/O

4) QJ71MB91 모듈 파라미터 설정
다음의 시스템 구성에서 자동 교신 파라미터를 등록하는 프로그램 예를 나타냅니다. 

설정 대상 QJ71MB91 과 MODBUS 슬레이브 기기 (국번1, 국번2) 간에 자동 교신 기능으로 교신합니다. 자동 교신 파라미터는 설정 대상 QJ71MB91 에 설정하십시오.

샘플 프로그램 예에서 설정하는 자동 교신 파라미터의 설정 내용은 아래와 같습니다.

◈ 파라미터 스위치 설정.

◈ 자동 교신 파라미터 설정.
- GX Configurator-MB 를 사용하는 경우

- GX Configurator-MB 를 사용하지 않는 경우
시퀀스 프로그램으로 자동 교신 파라미터를 설정합니다.

◈ 자동 리프레시 설정
자동 리프레시 설정은 GX Configurator-MB 에서 아래와 같이 설정합니다.

GX Configurator-MB 를 사용하지 않는 경우, 인텔리전트 기능 모듈 디바이스를 사용하여 자동 리프레시 처리에 상당하는 처리를 합니다.

프로그램 예제 4.4_RTU  

4.4 Intelligent PGM_RTU.gxw
1.86MB

 

반응형

'MELSEC PLC 중급 강좌' 카테고리의 다른 글

[19] PLC 중급 강좌  (0) 2019.07.11
[18] PLC 중급 강좌  (0) 2019.07.08
[16] PLC 중급 강좌  (1) 2019.06.24
[15] PLC 중급 강좌  (0) 2019.06.21
[14] PLC 중급 강좌  (0) 2019.06.18

댓글