PHP 및 MQTT: 지능형 창고 관리 시스템 구축을 위한 데이터 통신
요약: 사물 인터넷 기술의 지속적인 발전으로 지능형 창고 관리 시스템은 점차 기업 관리 및 생산을 위한 핵심 도구가 되었습니다. 이 기사에서는 PHP 및 MQTT 프로토콜을 사용하여 지능형 창고 관리 시스템의 데이터 통신 기능을 구축하는 방법을 소개하고 몇 가지 간단한 코드 예제를 제공합니다.
소개
지능형 창고관리 시스템은 사물인터넷 기술을 통해 창고 관리 및 모니터링을 구현하는 시스템입니다. 창고 장비의 상태와 저장 용량을 실시간으로 추적할 수 있으며, 다양한 경보 메커니즘을 통해 관리자에게 합리적인 일정 및 계획을 수행하도록 상기시킬 수 있습니다.
데이터 통신은 지능형 창고 관리 시스템의 중요한 부분으로, 추가 분석 및 의사 결정을 위해 다양한 센서 및 장치에서 시스템 서버로 데이터를 전송하는 역할을 합니다. MQTT 프로토콜은 IoT 장치 간 통신에 매우 적합한 경량 게시/구독 메시징 프로토콜입니다.
1단계: MQTT 브로커 설치
먼저 MQTT 메시지 수신 및 배포를 담당하는 MQTT 브로커를 서버에 설치해야 합니다. 여기서는 Mosquitto를 MQTT 브로커로 사용합니다. 다음 명령을 통해 Mosquitto를 설치할 수 있습니다.
sudo apt-get update sudo apt-get install -y mosquitto mosquitto-clients
설치가 완료된 후 다음 명령을 실행하여 Mosquitto 서비스를 시작할 수 있습니다.
mosquitto
2단계: MQTT 서버 연결 구성
PHP에서 MQTT 프로토콜을 사용하려면, 일부 타사 라이브러리를 사용해야 합니다. 여기서는 간단하고 사용하기 쉬운 PHP MQTT 클라이언트인 phpMQTT 라이브러리를 사용하기로 선택했습니다.
phpMQTT의 GitHub 저장소에서 라이브러리를 다운로드하고 가져올 수 있습니다. 그런 다음 코드에 다음 코드를 추가합니다.
require("phpMQTT.php"); $mqtt = new phpMQTT("localhost", 1883, "clientId");
여기에서는 MQTT 클라이언트의 인스턴스를 생성하고 로컬 서버의 기본 포트 1883에 연결하고 클라이언트 ID를 지정합니다.
3단계: MQTT 서버에 연결
다음으로 MQTT 서버에 연결해야 합니다. Mosquitto Broker에 연결하려면 다음 코드를 추가하세요.
if ($mqtt->connect(true, null, "username", "password")) { echo "Connected to MQTT Broker"; // 进行其他操作 $mqtt->close(); } else { echo "Failed to connect MQTT Broker"; }
여기에서는 connect()
함수를 사용하여 MQTT 서버에 연결합니다. 인증을 위해 사용자 이름과 비밀번호를 선택적으로 전달할 수 있습니다. connect()
函数来连接到MQTT服务器。可以可选地传递用户名和密码进行认证。
步骤4:发布消息
要在MQTT中发布消息,我们可以使用publish()
函数。添加以下代码来发布一条消息:
$mqtt->publish("topic", "Hello, MQTT!");
这里,我们将消息“Hello, MQTT!”发布到名为“topic”的主题上。
步骤5:订阅消息
要订阅MQTT信息,我们需要使用subscribe()
MQTT에서 메시지를 게시하려면 publish()
함수를 사용할 수 있습니다. 메시지를 게시하려면 다음 코드를 추가하세요.
$topics = array("topic1", "topic2"); $mqtt->subscribe($topics, 0); while ($mqtt->proc()) { // 持续接收和处理消息 }
여기서는 "topic"이라는 주제에 "Hello, MQTT!" 메시지를 게시합니다.
MQTT 메시지를 구독하려면 subscribe()
함수를 사용하고 각 주제에 대한 콜백 함수를 지정해야 합니다. 메시지를 구독하려면 다음 코드를 추가하세요.
여기에서는 QoS(Quality of Service)를 0으로 지정하면서 "topic1" 및 "topic2"라는 주제를 구독하겠습니다.
위 내용은 PHP 및 MQTT: 지능형 창고 관리 시스템 구축을 위한 데이터 통신의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!