Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP dan MQTT: Membina penghantaran data masa nyata dalam sistem pengangkutan pintar

PHP dan MQTT: Membina penghantaran data masa nyata dalam sistem pengangkutan pintar

WBOY
WBOYasal
2023-07-10 16:57:101558semak imbas

PHP dan MQTT: Membina penghantaran data masa nyata dalam sistem pengangkutan pintar

Dengan perkembangan teknologi, sistem pengangkutan pintar memainkan peranan yang semakin penting dalam pembinaan bandar moden. Sistem ini perlu menghantar sejumlah besar data trafik dalam masa nyata untuk memastikan trafik lancar dan selamat. Gabungan PHP dan MQTT menyediakan cara yang cekap dan boleh dipercayai untuk merealisasikan penghantaran data masa nyata dalam sistem pengangkutan pintar.

MQTT (Message Qeuing Telemetry Transport) ialah protokol penghantaran mesej yang ringan, terutamanya sesuai untuk penghantaran data dalam lebar jalur rendah dan persekitaran rangkaian yang tidak stabil. PHP ialah bahasa pengaturcaraan sebelah pelayan yang digunakan secara meluas dalam pembangunan Web, dengan skalabiliti yang baik dan kemudahan penggunaan. Menggabungkan PHP dengan MQTT dengan cepat boleh merealisasikan penghantaran data masa nyata dalam sistem pengangkutan pintar.

Pertama sekali, sebelum menggunakan PHP dan MQTT untuk penghantaran data, anda perlu memasang dan mengkonfigurasi sambungan berkaitan MQTT. Pustaka MQTT PHP yang biasa digunakan ialah Mosquitto, yang boleh dipasang melalui arahan berikut:

sudo apt-get update
sudo apt-get install php-mosquitto

Selepas pemasangan selesai, dalam kod PHP, anda boleh menggunakan kod contoh berikut untuk menyambung ke MQTT Broker dan menerbitkan mesej:

<?php
// 创建MQTT客户端实例
$client = new MosquittoClient();
// 配置Broker地址和端口
$client->connect('localhost', 1883);
// 设置消息质量
$client->setCredentials('username', 'password');
// 发布消息到指定的主题
$client->publish('traffic_status', 'Traffic is flowing smoothly', 1);
// 断开与Broker的连接
$client->disconnect();

Dalam contoh di atas, mula-mula Contoh klien MQTT dibuat dan disambungkan kepada Broker MQTT yang ditentukan melalui kaedah connect. Kemudian, tetapkan nama pengguna dan kata laluan untuk sambungan melalui kaedah setCredentials untuk memastikan keselamatan sambungan. Kemudian, terbitkan mesej ke topik yang ditentukan melalui kaedah publish. Akhir sekali, gunakan kaedah disconnect untuk memutuskan sambungan daripada Broker. connect方法连接到指定的MQTT Broker。然后,通过setCredentials方法设置连接的用户名和密码,以确保连接的安全性。接着,通过publish方法将消息发布到指定的主题(topic)。最后,使用disconnect方法断开与Broker的连接。

除了发布消息,我们还可以使用MQTT来订阅消息。在智能交通系统中,交通状态的实时更新对于驾车者和相关管理单位都十分重要。以下是一个示例代码,用于订阅交通状态的更新:

<?php
// 创建MQTT客户端实例
$client = new MosquittoClient();
// 配置Broker地址和端口
$client->connect('localhost', 1883);
// 设置消息质量
$client->setCredentials('username', 'password');
// 订阅交通状态更新的主题
$client->subscribe('traffic_status', 1);
// 持续订阅消息,直到连接断开
while ($client->loop() == 0) {}
// 断开与Broker的连接
$client->disconnect();

在上述示例中,首先也是创建了一个MQTT客户端实例,并通过connect方法连接到指定的MQTT Broker。接着,通过setCredentials方法设置连接的用户名和密码。然后,通过subscribe

Selain menerbitkan mesej, kami juga boleh menggunakan MQTT untuk melanggan mesej. Dalam sistem pengangkutan pintar, kemas kini masa nyata status trafik adalah sangat penting kepada pemandu dan unit pengurusan yang berkaitan. Berikut ialah contoh kod untuk melanggan kemas kini status trafik:

rrreee

Dalam contoh di atas, tika klien MQTT pertama kali dibuat dan disambungkan kepada Broker MQTT yang ditentukan melalui kaedah connect. Seterusnya, tetapkan nama pengguna dan kata laluan untuk sambungan melalui kaedah setCredentials. Kemudian, langgan topik kemas kini status trafik melalui kaedah langgan. Akhir sekali, gunakan gelung untuk terus melanggan mesej sehingga sambungan diputuskan.

Melalui contoh kod di atas, kita dapat melihat bahawa menggunakan PHP digabungkan dengan MQTT boleh mencapai penghantaran data masa nyata dengan mudah dalam sistem pengangkutan pintar. Fleksibiliti PHP dan kecekapan MQTT membolehkan data dihantar dengan cepat dan tepat ke pelbagai komponen dalam sistem, membolehkan pemantauan dan pemprosesan masa nyata. Contohnya, lampu isyarat boleh dikemas kini tepat pada masanya dengan melanggan kemas kini status trafik atau data trafik yang dikumpul boleh dihantar ke pelayan bahagian belakang untuk analisis dan pemprosesan masa nyata. 🎜🎜Ringkasnya, gabungan PHP dan MQTT menyediakan penyelesaian yang cekap dan boleh dipercayai untuk membina penghantaran data masa nyata dalam sistem pengangkutan pintar. Dengan menggunakan sepenuhnya kebolehskalaan dan kemudahan penggunaan PHP, digabungkan dengan ringan dan kebolehsuaian MQTT, sistem pengangkutan pintar masa nyata boleh dibina dengan cepat untuk menyediakan keupayaan penghantaran dan pemprosesan data trafik yang tepat dan masa nyata. Ini menyediakan perkhidmatan yang lebih baik untuk pengurusan trafik bandar dan perjalanan pemandu, dan meningkatkan kecekapan dan keselamatan sistem pengangkutan. 🎜

Atas ialah kandungan terperinci PHP dan MQTT: Membina penghantaran data masa nyata dalam sistem pengangkutan pintar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn