현재 위치: > 최신 기사 목록> PHP 프로그래밍 안내서 : Modbus TCP 커뮤니케이션의 구현 방법 마스터 링

PHP 프로그래밍 안내서 : Modbus TCP 커뮤니케이션의 구현 방법 마스터 링

M66 2025-05-29

PHP에서 Modbus TCP 통신 구현 방법에 대한 개요

Modbus TCP는 산업 제어 시스템에서 널리 사용되는 통신 프로토콜입니다. 도움을 받아 여러 장치가 이더넷을 통해 데이터를 효율적으로 교환 할 수 있습니다. 이 기사에서는 라이브러리 설치, 서버 연결, 읽기 및 쓰기 레지스터 및 예외 처리를 포함하여 PHP에서 Modbus TCP 통신 환경을 구축하는 방법을 보여줍니다.

Modbus 관련 종속성을 설치하십시오

PHP에서 Modbus TCP를 사용하려면 먼저 필요한 라이브러리 및 확장을 설치해야합니다.

1 단계 : Libmodbus 라이브러리를 설치하십시오

[libmodbus 공식 웹 사이트] (https://libmodbus.org/)를 방문하고 Libmodbus 압축 패키지의 최신 버전을 다운로드하여 압축을 풀습니다. 그런 다음 터미널에 감압 디렉토리를 입력하고 다음 명령을 차례로 실행하십시오.

2 단계 : PHP 확장을 설치하십시오

[PECL 공식 웹 사이트] (https://pecl.php.net/)에서 php_modbus 확장 소스 코드를 다운로드하십시오. 감압 후 디렉토리를 입력하고 다음 명령을 실행하여 설치를 완료하십시오.

Modbus 서버에 연결하십시오

다음은 PHP를 사용하여 Modbus TCP 연결을 만드는 샘플 코드입니다.
 
<?php
$ip = "192.168.1.1"; // Modbus섬기는 사람IP주소
$port = 502; // Modbus포트,기본값입니다502

// 만들다Modbus TCP연결하다
$connection = modbus_new_tcp($ip, $port);

if(!$connection) {
    die("无法연결하다到Modbus섬기는 사람");
}

// 연결하다成功后,커뮤니케이션 작업을 수행 할 수 있습니다

// 폐쇄Modbus연결하다
modbus_close($connection);
?>

등록 데이터를 읽으십시오

연결이 설정되면 Modbus 서버의 레지스터를 다음 코드를 통해 읽을 수 있습니다.
 
<?php
// 첫 번째 레지스터의 값을 읽으십시오
$address = 0; // 寄存器주소
$quantity = 1; // 레지스터 수를 읽습니다

// 등록 데이터를 읽으십시오
$data = modbus_read_registers($connection, $address, $quantity);

// 읽기 데이터를 인쇄하십시오
print_r($data);
?>

등록 데이터를 작성하십시오

다음은 지정된 레지스터에 데이터를 작성하기위한 코드 예입니다.
 
<?php
// 첫 번째 레지스터에 기록 된 값은 다음과 같습니다100
$address = 0; // 寄存器주소
$value = 100; // 값을 쓰십시오

// 등록 데이터를 작성하십시오
$result = modbus_write_register($connection, $address, $value);

if($result === FALSE) {
    echo "등록에 쓰지 못했습니다";
} else {
    echo "성공적으로 등록하기 위해 작성하십시오";
}
?>

예외 처리 메커니즘

MODBUS 통신 중에 연결 또는 작동 이상이 더 일반적입니다. 오류 감지 및 처리는 다음 코드를 통해 수행 할 수 있습니다.
 
<?php
// 만들다Modbus TCP연결하다
$connection = modbus_new_tcp($ip, $port);

if(!$connection) {
    die("无法연결하다到Modbus섬기는 사람");
}

// 예외 처리
$exception = modbus_errno();
if($exception) {
    die("Modbus작업 예외:" . modbus_strerror($exception));
}

// 폐쇄연결하다
modbus_close($connection);
?>

요약

이 기사에 설명 된 방법을 통해 PHP 환경에서 Modbus TCP 장치와 성공적으로 통신 할 수 있습니다. 레지스터 데이터를 읽거나 제어 지침 작성에 관계없이 이러한 기본 운영은 산업 제어 시스템 구성을위한 안정적인 기술 지원을 제공합니다. 이러한 컨텐츠를 마스터하면 산업 자동화 관련 개발 작업을보다 효율적으로 완료하는 데 도움이됩니다.