Rumah >pembangunan bahagian belakang >tutorial php >PHP dan MQTT: Komunikasi data untuk membina sistem pengurusan gudang pintar
PHP dan MQTT: Komunikasi data untuk membina sistem pengurusan gudang pintar
Abstrak: Dengan pembangunan berterusan teknologi Internet of Things, sistem pengurusan gudang pintar secara beransur-ansur menjadi alat utama untuk pengurusan dan pengeluaran perusahaan. Artikel ini memperkenalkan cara menggunakan protokol PHP dan MQTT untuk membina fungsi komunikasi data sistem pengurusan gudang pintar, dan menyediakan beberapa contoh kod mudah.
Pengenalan
Sistem pengurusan gudang pintar ialah sistem yang merealisasikan pengurusan dan pemantauan gudang melalui teknologi Internet of Things. Ia boleh menjejaki status dan kapasiti penyimpanan peralatan pergudangan dalam masa nyata, dan mengingatkan pengurus untuk melaksanakan penjadualan dan perancangan yang munasabah melalui pelbagai mekanisme penggera.
Komunikasi data ialah bahagian penting dalam sistem pengurusan gudang pintar Ia bertanggungjawab untuk menghantar data daripada pelbagai penderia dan peranti ke pelayan sistem untuk analisis dan membuat keputusan selanjutnya. Protokol MQTT ialah protokol pemesejan terbitan/langganan ringan yang sangat sesuai untuk komunikasi antara peranti IoT.
Langkah 1: Pasang MQTT Broker
Pertama, kita perlu memasang MQTT Broker pada pelayan, yang bertanggungjawab untuk menerima dan mengedarkan mesej MQTT. Di sini kami menggunakan Mosquitto sebagai Broker MQTT kami. Anda boleh memasang Mosquitto melalui arahan berikut:
sudo apt-get update sudo apt-get install -y mosquitto mosquitto-clients
Selepas pemasangan selesai, anda boleh menjalankan arahan berikut untuk memulakan perkhidmatan Mosquitto:
mosquitto
Langkah 2: Konfigurasikan sambungan pelayan MQTT
Untuk menggunakan protokol MQTT dalam PHP, kami perlu menggunakan beberapa perpustakaan pihak ketiga. Di sini kami memilih untuk menggunakan perpustakaan phpMQTT, yang merupakan klien PHP MQTT yang mudah dan mudah digunakan.
Anda boleh memuat turun dan mengimport perpustakaan daripada repositori GitHub phpMQTT. Kemudian tambahkan kod berikut pada kod anda:
require("phpMQTT.php"); $mqtt = new phpMQTT("localhost", 1883, "clientId");
Di sini, kami mencipta tika klien MQTT, menyambung ke port lalai pelayan tempatan 1883 dan nyatakan ID klien.
Langkah 3: Sambung ke Pelayan MQTT
Seterusnya, kita perlu menyambung ke pelayan MQTT. Tambahkan kod berikut untuk menyambung ke Mosquitto Broker:
if ($mqtt->connect(true, null, "username", "password")) { echo "Connected to MQTT Broker"; // 进行其他操作 $mqtt->close(); } else { echo "Failed to connect MQTT Broker"; }
Di sini, kami menggunakan fungsi connect()
untuk menyambung ke pelayan MQTT. Nama pengguna dan kata laluan boleh diberikan secara pilihan untuk pengesahan. connect()
函数来连接到MQTT服务器。可以可选地传递用户名和密码进行认证。
步骤4:发布消息
要在MQTT中发布消息,我们可以使用publish()
函数。添加以下代码来发布一条消息:
$mqtt->publish("topic", "Hello, MQTT!");
这里,我们将消息“Hello, MQTT!”发布到名为“topic”的主题上。
步骤5:订阅消息
要订阅MQTT信息,我们需要使用subscribe()
Untuk menerbitkan mesej dalam MQTT, kita boleh menggunakan fungsi publish()
. Tambahkan kod berikut untuk menerbitkan mesej:
$topics = array("topic1", "topic2"); $mqtt->subscribe($topics, 0); while ($mqtt->proc()) { // 持续接收和处理消息 }
Di sini, kami menerbitkan mesej "Helo, MQTT!"
Untuk melanggan mesej MQTT, kita perlu menggunakan fungsi subscribe()
dan menentukan fungsi panggil balik untuk setiap topik. Tambahkan kod berikut untuk melanggan mesej:
Di sini, kami akan melanggan topik bernama "topic1" dan "topic2" sambil menyatakan QoS (Kualiti Perkhidmatan) 0.
Atas ialah kandungan terperinci PHP dan MQTT: Komunikasi data untuk membina sistem pengurusan gudang pintar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!