PHP dan MQTT: Pemantauan masa nyata data sensor jauh
Pengenalan:
Dengan perkembangan pesat Internet of Things, kami boleh memantau dan mengawal peralatan dan persekitaran melalui sensor jauh. MQTT (Message Qeuing Telemetry Transport) ialah protokol penghantaran mesej ringan yang digunakan secara meluas dalam aplikasi IoT untuk menghantar data sensor. Artikel ini akan memperkenalkan cara menggunakan PHP dan MQTT untuk melaksanakan pemantauan masa nyata data sensor jauh.
Pasang perpustakaan phpMQTT:
composer require bluerhinos/phpmqtt
Kod sampel untuk menyambung ke pelayan MQTT adalah seperti berikut:
<?php require("phpMQTT.php"); $mqtt = new phpMQTT("mqtt.example.com", 1883, "ClientID"); if(!$mqtt->connect()){ exit(1); } // MQTT订阅主题 $topics['sensors/data'] = array("qos" => 0, "function" => "handleSensorData"); $mqtt->subscribe($topics, 0); while($mqtt->proc()){ } $mqtt->close(); function handleSensorData($topic, $message){ echo "Received message: $message from topic: $topic "; } ?>
Dalam kod sampel di atas, kami mula-mula memperkenalkan perpustakaan phpMQTT melalui pernyataan memerlukan. Kami kemudian mencipta objek mqtt dan menyambung menggunakan alamat pelayan mqtt (mqtt.example.com) dan nombor port (1883). Jika sambungan berjaya, kami boleh melanggan satu atau lebih topik. Dalam contoh ini, kami melanggan topik bernama "sensors/data" dan menentukan fungsi panggil balik handleSensorData untuk mengendalikan data yang diterima. Akhir sekali, pemantauan masa nyata dicapai dengan membaca data dalam gelung Apabila data sensor baharu diterima, fungsi handleSensorData dipanggil untuk diproses.
Terbitkan Data Sensor:
Seterusnya, kami akan mensimulasikan sensor dan menerbitkan data sensor ke pelayan MQTT melalui PHP. Berikut ialah kod contoh mudah:
<?php require("phpMQTT.php"); $mqtt = new phpMQTT("mqtt.example.com", 1883, "ClientID"); if(!$mqtt->connect()){ exit(1); } // MQTT发布主题 $topic = "sensors/data"; $message = "Sensor data: " . rand(1, 100); $mqtt->publish($topic, $message, 0); $mqtt->close(); ?>
Dalam kod di atas, kami mencipta objek mqtt dan menyambung menggunakan alamat pelayan mqtt (mqtt.example.com) dan nombor port (1883). Kami kemudiannya menentukan nama topik (sensor/data) dan data sensor untuk diterbitkan. Akhir sekali, data sensor diterbitkan ke pelayan MQTT dengan memanggil kaedah penerbitan objek mqtt.
Walau bagaimanapun, ini hanyalah satu contoh, dan lebih banyak logik dan pemprosesan diperlukan dalam aplikasi sebenar. Saya harap artikel ini dapat memberikan pembaca idea asas dan contoh kod untuk meneroka lebih lanjut potensi PHP dan MQTT dalam aplikasi IoT.
Rujukan:
Atas ialah kandungan terperinci PHP dan MQTT: Pemantauan masa nyata data sensor jauh. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!