> 백엔드 개발 > PHP 튜토리얼 > PHP 및 Modbus TCP: Modbus 프로토콜 및 관련 매개변수 이해

PHP 및 Modbus TCP: Modbus 프로토콜 및 관련 매개변수 이해

PHPz
풀어 주다: 2023-07-19 09:24:02
원래의
2382명이 탐색했습니다.

PHP 및 Modbus TCP: Modbus 프로토콜 및 관련 매개변수 이해

요약:
산업 제어 시스템에서 Modbus는 장치 간 데이터 상호 작용에 일반적으로 사용되는 통신 프로토콜입니다. 이 기사에서는 Modbus TCP 프로토콜의 기본 원리와 관련 매개 변수를 소개하고 독자가 Modbus TCP 프로토콜을 이해하고 적용하는 데 도움이 되는 PHP 코드 예제를 제공합니다.

1. Modbus TCP 프로토콜 소개

Modbus TCP는 여러 장치가 이더넷을 통해 통신할 수 있도록 하는 TCP/IP 프로토콜을 기반으로 하는 Modbus 프로토콜의 변형입니다. Modbus TCP는 간단한 명령/응답 모델을 사용하며 장치는 레지스터를 읽고 쓰는 방식으로 데이터를 교환합니다.

Modbus TCP 프로토콜의 기본 원리는 다음과 같습니다.

  1. 모든 장치는 IP 주소를 통해 식별되고 통신됩니다.
  2. Modbus TCP는 기본 포트 502를 사용합니다.
  3. 요청-응답 모델. 마스터 장치는 요청 명령을 보내고 슬레이브 장치는 응답 데이터를 반환합니다.
  4. 레지스터 읽기 및 쓰기를 위한 기능 코드를 지원합니다.

2. Modbus TCP 매개변수

Modbus TCP 프로토콜을 사용할 때 다음과 같은 중요한 매개변수를 이해해야 합니다.

  1. IP 주소: 장치의 IP 주소는 식별 및 통신에 사용됩니다. 예를 들어 Modbus 서버의 IP 주소는 192.168.1.100일 수 있습니다.
  2. 포트 번호: Modbus TCP는 기본 포트 번호 502를 사용합니다. 장치의 포트 번호가 올바르게 설정되었는지 확인해야 합니다.
  3. 기능 코드: Modbus TCP는 일반적으로 사용되는 기능 코드로는 홀딩 레지스터 읽기(기능 코드 03) 및 다중 홀딩 레지스터 쓰기(기능 코드 16)를 포함합니다.
  4. 레지스터 주소: 홀딩 레지스터는 Modbus TCP 통신의 기본 단위입니다. 데이터를 읽고 쓰려면 레지스터의 주소를 지정해야 합니다.

3. PHP 코드 예시

PHP 라이브러리 Phpmodbus(https://github.com/r-vnc/phpmodbus)를 사용하면 Modbus TCP 장치와 쉽게 통신할 수 있습니다. 다음은 Phpmodbus 라이브러리를 사용하여 보유 레지스터에서 데이터를 읽는 방법을 보여주는 간단한 예입니다.

// Phpmodbus 라이브러리 파일 참조
require_once('phpmodbusModbusMaster.php');

// ModbusMaster 개체를 생성하고 Modbus 서버의 IP 주소와 포트 번호를 지정합니다.
$modbus = new ModbusMaster ("192.168.1.100", "TCP");

//읽을 레지스터 주소와 수량을 지정하고, 펑션코드 03
$address = 0 // 레지스터 주소
$quantity = 10; // 수량 등록
$data = $modbus->readMultipleRegisters(1, $address, $quantity);

// 읽은 데이터 출력
if(!$data){

echo "读取错误!";
로그인 후 복사

}else{

echo "读取到的数据:
로그인 후 복사

" ;

foreach($data as $value){
    echo $value . "
로그인 후 복사

";

}
로그인 후 복사

}
?>

위의 예에서는 ModbusMaster 개체를 생성하고 Modbus 서버의 IP 주소와 포트 번호를 지정했습니다. 그런 다음 readMultipleRegisters 함수를 사용하여 보유 레지스터의 데이터를 읽고 결과를 인쇄합니다.

이것은 단순한 예일 뿐입니다. 실제 사용에서는 데이터 쓰기 또는 기타 기능 코드 사용과 같은 특정 요구에 따라 더 복잡한 작업이 필요할 수 있습니다.

결론:
Modbus TCP는 사용이 간단하고 구현이 쉬운 일반적으로 사용되는 산업용 제어 시스템 통신 프로토콜입니다. 이 기사에서는 Modbus TCP 프로토콜의 기본 원리와 관련 매개 변수를 소개하고 PHP 라이브러리 Phpmodbus를 사용하여 Modbus TCP 장치와 통신하는 예를 제공합니다. 독자는 보다 복잡한 Modbus TCP 통신 기능을 달성하기 위해 실제 필요에 따라 이를 확장하고 적용할 수 있습니다.

위 내용은 PHP 및 Modbus TCP: Modbus 프로토콜 및 관련 매개변수 이해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿