FP_MODBUS_MASTER

슬레이브에 데이터 쓰기 또는 슬레이브에서 데이터 읽기

이 명령을 사용하여 마스터에서 슬레이브로 데이터를 쓰거나 사용되는 포트의 시스템 레지스터에 정의된 대로 Modbus RTU 프로토콜을 사용하는 통신 포트를 통해 슬레이브에서 데이터를 읽습니다. 마스터와 슬레이브에 동일한 프로토콜을 설정해야 합니다.

파라미터

입력

Port (WORD, INT, UINT)

PLC 기종에 따라 통신 포트를 지정합니다.

  • COM 포트(예: SYS_COM0_PORT)

  • 이더넷 포트(예: SYS_ETHERNET_USER_CONNECTION_1)

  • MCU/SCU(예: COM0116#xx01 (xx = 슬롯 번호))

SlaveAddress (WORD, INT, UINT)

슬레이브의 스테이션 번호

  • FP7에만 해당:

    • 펑션 코드 05, 06, 15, 16: 0-247

      SCU를 사용하고 슬레이브 유닛 번호에 "0"을 지정하면 글로벌 전송이 실행됩니다. 이 경우 슬레이브 유닛에서 응답 메시지가 없습니다.

    • 펑션 코드 01, 02, 03, 04: 1-247

  • 다른 PLC의 경우:

    • 펑션 코드 05, 06, 15, 16: 0-99

      슬레이브 유닛 번호에 "0"이 지정되면 글로벌 전송이 실행됩니다. 이 경우 슬레이브 유닛에서 응답 메시지가 없습니다.

    • 펑션 코드 01, 02, 03, 04: 1-99

SYS_ETHERNET_USER_CONNECTION_xxPort 입력에 적용된 경우, 1로 설정

FunctionCode* (WORD, INT, UINT)

SYS_MODBUS_01_READ_COIL

SYS_MODBUS_02_READ_INPUT

SYS_MODBUS_03_READ_HOLDING_REGISTER

SYS_MODBUS_04_READ_INPUT_REGISTERS

SYS_MODBUS_05_FORCE_COIL

SYS_MODBUS_06_PRESET_REGISTER

SYS_MODBUS_15_FORCE_COILS

SYS_MODBUS_16_PRESET_REGISTERS

StartRegister (WORD, INT, UINT)

시작 어드레스(0–65535) 어드레스 유형은 FunctionCode*에서 지정한 명령에 따라 다릅니다.

NumberOfRegisters* (WORD, INT, UINT)

전송 비트 수 또는 워드 수입니다.

  • 펑션 코드 05, 06의 경우 1

  • 펑션 코드 01, 02의 경우 1–2040

  • 펑션 코드 15의 경우 2–2040

  • 펑션 코드 03, 04의 경우 1–127

  • 펑션 코드 16의 경우 2–127

MasterData (BOOL, INT, UINT, WORD, DINT, UDINT, DWORD, REAL, DATE, TOD, DT, STRING)

슬레이브에 쓸 데이터에 대한 마스터의 소스 어드레스.

출력

Result (WORD, INT, UINT)

FP7에만 해당: 모든 에러 코드에 대한 설명은 Modbus/MEWTOCOL 통신 에러 코드 표를 참조하십시오.

그 외 PLC의 경우: 0으로 설정

시간 차트

  1.  (1) 마스터 통신 삭제-전송 플래그, 예: sys_bIsEthernetUserConnection1MasterCommunication
  2.  (2) 마스터 통신 삭제-전송 플래그가 TRUE인지 확인하고 마스터 통신 전송 플래그가 FALSE인지 확인합니다.
  3.  (3) 마스터 통신 전송 플래그, 예: sys_bIsEthernetUserConnection1MasterCommunicationActive

    전송 중: 마스터 통신 전송 플래그TRUE입니다.

    전송 완료: 마스터 통신 전송 플래그FALSE입니다.

  4.  (4) 이 명령을 실행합니다.
  5.  (5) 마스터 통신 전송 완료 플래그, 예: sys_bIsEthernetUserConnection1CommunicationError

    정상 완료: FALSE

    비정상적인 완료: TRUE

  6.  (6) 데이터를 전송합니다.
  7.  (7) 수신된 응답 처리

에러 플래그

sys_bIsOperationErrorHold(TRUE로 전환되어 TRUE로 유지됨)
  • 인덱스 한정자를 사용하여 지정한 영역이 제한을 초과하는 경우.

  • 슬레이브 또는 마스터 데이터가 사용 가능한 어드레스 범위를 초과합니다.
  • 통신 모드가 MEWTOCOL-COM 마스터/슬레이브 또는 Modbus RTU 마스터/슬레이브로 설정되지 않았습니다.
  • 선택한 COM 포트에 설치되지 않은 통신 카세트가 필요합니다.
sys_bIsOperationErrorNonHold(스캔 1회에 대해 TRUE로 전환)
  • 인덱스 한정자를 사용하여 지정한 영역이 제한을 초과하는 경우.

  • 슬레이브 또는 마스터 데이터가 사용 가능한 어드레스 범위를 초과합니다.
  • 통신 모드가 MEWTOCOL-COM 마스터/슬레이브 또는 Modbus RTU 마스터/슬레이브로 설정되지 않았습니다.
  • 선택한 COM 포트에 설치되지 않은 통신 카세트가 필요합니다.

SYS_MODBUS_01_READ_COIL

이 정수를 입력 파라미터 FunctionCode*에 적용하면 해당 Modbus 명령이 실행됩니다.

연결된 슬레이브가 시스템 레지스터를 통해 Modbus RTU 슬레이브로 구성된 Panasonic PLC인 특수한 경우에는 하나 이상의 비트가 다음에서 읽힙니다.

  • Y(출력)

  • R(내부 플래그)

Modbus 명령 01 실행: StartRegister 변수에 의해 설정된 시작 레지스터 56에서 시작하는 Modbus 슬레이브에서 1비트를 읽습니다. 그런 다음 이 명령은 변수bBool2에 의해 설정된 어드레스부터 시작하여 마스터에 1비트를 저장합니다. 슬레이브 주소는 장치의 Modbus 사양에 따라 장치별 어드레스로 변환됩니다.

연결된 슬레이브가 Panasonic PLC인 경우 시작 레지스터 56은 출력 Y38(3*16+8=56)에 해당합니다.

SYS_MODBUS_02_READ_INPUT

이 정수를 입력 파라미터 FunctionCode*에 적용하면 해당 Modbus 명령이 실행됩니다.

연결된 슬레이브가 시스템 레지스터를 통해 Modbus RTU 슬레이브로 구성된 Panasonic PLC인 특수한 경우에는 하나 이상의 비트가 다음에서 읽힙니다.

  • X(입력)

Modbus 명령 02 실행: StartRegister 변수에 의해 설정된 시작 레지스터 66에서 시작하는 Modbus 슬레이브에서 1비트를 읽습니다. 그런 다음 이 명령은 변수bBool2에 의해 설정된 어드레스부터 시작하여 마스터에 1비트를 저장합니다. 슬레이브 주소는 장치의 Modbus 사양에 따라 장치별 어드레스로 변환됩니다.

연결된 슬레이브가 Panasonic PLC인 경우 시작 레지스터 66은 입력 X42(4*16+2=66)에 해당합니다.

SYS_MODBUS_03_READ_HOLDING_REGISTER

이 정수를 입력 파라미터 FunctionCode*에 적용하면 해당 Modbus 명령이 실행됩니다.

연결된 슬레이브가 시스템 레지스터를 통해 Modbus RTU 슬레이브로 구성된 Panasonic PLC인 특수한 경우에는 하나 이상의 비트가 다음에서 읽힙니다.

  • DT(데이터 레지스터)

Modbus 명령 03 실행: StartRegister 변수에 의해 설정된 시작 레지스터 100에서 시작하는 Modbus 슬레이브에서 2워드를 읽습니다. 그런 다음 이 명령은 변수rCount2에 의해 설정된 어드레스부터 시작하여 Modbus 마스터 22워드를 저장합니다. 슬레이브 주소는 장치의 Modbus 사양에 따라 장치별 어드레스로 변환됩니다.

연결된 슬레이브가 Panasonic PLC인 경우 시작 레지스터 100은 데이터 레지스터 DT100에 해당합니다.

레지스터 최대 번호: 127.

SYS_MODBUS_04_READ_INPUT_REGISTERS

이 정수를 입력 파라미터 FunctionCode*에 적용하면 해당 Modbus 명령이 실행됩니다.

연결된 슬레이브가 시스템 레지스터를 통해 Modbus RTU 슬레이브로 구성된 Panasonic PLC인 특수한 경우에는 하나 이상의 비트가 다음에서 읽힙니다.

  • WL0–WL127(링크 플래그)

  • LD0–LD256(링크 레지스터)

Modbus 명령 04 실행: StartRegister 변수에 의해 설정된 시작 레지스터 2018에서 시작하는 Modbus 슬레이브에서 7워드를 읽습니다. 그런 다음 이 명령은 MasterData 변수에 의해 설정된 LD25부터 시작하여 마스터에 7워드를 저장합니다. 슬레이브 주소는 장치의 Modbus 사양에 따라 장치별 어드레스로 변환됩니다.

연결된 슬레이브가 Panasonic PLC인 경우 시작 레지스터 2018은 링크 레지스터 LD18에 해당합니다.

레지스터 최대 번호: 127.

SYS_MODBUS_05_FORCE_COIL

이 정수를 입력 파라미터 FunctionCode*에 적용하면 해당 Modbus 명령이 실행됩니다.

연결된 슬레이브가 Modbus RTU 모드의 Panasonic PLC의 경우 하나 이상의 비트가 다음에 기록됩니다.

  • Y(출력)

  • R(내부 플래그)

Modbus 명령 05 실행: MasterData 변수에 의해 설정된 어드레스 WY1에서 시작하는 Modbus 슬레이브에 1비트를 씁니다. 그런 다음 이 명령은 변수StartRegister에 의해 설정된 시작 레지스터 35부터 시작하여 Modbus 슬레이브에 1비트를 저장합니다. 슬레이브 주소는 장치의 Modbus 사양에 따라 장치별 어드레스로 변환됩니다.

연결된 슬레이브가 Panasonic PLC인 경우 어드레스 35은 출력 Y23(2*16+3=35)에 해당합니다.

여러 비트 데이터를 쓸 때는 SYS_MODBUS_15_FORCE_COILS 정수를 사용합니다.

최대 레지스터 수: 1

SYS_MODBUS_06_PRESET_REGISTER

이 정수를 입력 파라미터 FunctionCode*에 적용하면 해당 Modbus 명령이 실행됩니다.

연결된 슬레이브가 Modbus RTU 모드의 Panasonic PLC의 경우 하나 이상의 비트가 다음에 기록됩니다.

  • DT(데이터 레지스터)

Modbus 명령 06 실행: MasterData 변수에 의해 설정된 어드레스 DT14에서 시작하는 Modbus 슬레이브에 1워드를 씁니다. 그런 다음 이 명령은 변수StartRegister에 의해 설정된 시작 레지스터 21부터 시작하여 Modbus 슬레이브에 1워드를 저장합니다. 슬레이브 주소는 장치의 Modbus 사양에 따라 장치별 어드레스로 변환됩니다.

연결된 슬레이브가 Panasonic PLC인 경우 시작 레지스터 21은 데이터 레지스터 DT21에 해당합니다.

여러 비트 데이터를 쓸 때는 SYS_MODBUS_15_FORCE_COILS 정수를 사용합니다.

최대 레지스터 수: 1

SYS_MODBUS_15_FORCE_COILS

이 정수를 입력 파라미터 FunctionCode*에 적용하면 해당 Modbus 명령이 실행됩니다.

연결된 슬레이브가 Modbus RTU 모드의 Panasonic PLC의 경우 하나 이상의 비트가 다음에 기록됩니다.

  • Y(출력)

  • R(내부 플래그)

Modbus 명령 15 실행: MasterData 변수에 의해 설정된 어드레스 WY1에서 시작하는 Modbus 슬레이브에 64비트를 씁니다. 그런 다음 이 명령은 변수StartRegister에 의해 설정된 시작 레지스터 48부터 시작하여 Modbus 슬레이브에 64비트를 저장합니다. 슬레이브 주소는 장치의 Modbus 사양에 따라 장치별 어드레스로 변환됩니다.

연결된 슬레이브가 Panasonic PLC인 경우 어드레스 48은 출력 Y30(3*16=48)에 해당합니다.

SYS_MODBUS_16_PRESET_REGISTERS

이 정수를 입력 파라미터 FunctionCode*에 적용하면 해당 Modbus 명령이 실행됩니다.

연결된 슬레이브가 Modbus RTU 모드의 Panasonic PLC의 경우 하나 이상의 비트가 다음에 기록됩니다.

  • DT(데이터 레지스터)

Modbus 명령 16 실행: rCount1 변수에 의해 설정된 어드레스에서 시작하는 Modbus 슬레이브에 데이터를 씁니다. 그런 다음 이 명령은 변수StartRegister에 의해 설정된 시작 레지스터 100부터 시작하여 Modbus 슬레이브 2에 데이터를 저장합니다. 슬레이브 주소는 장치의 Modbus 사양에 따라 장치별 어드레스로 변환됩니다.

연결된 슬레이브가 Panasonic PLC인 경우 시작 레지스터 100은 데이터 레지스터 DT100에 해당합니다.

레지스터 최대 번호: 127.

최종 수정일: 2025-01-10이 페이지에 대한 피드백Panasonic 직통 전화