Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Kajian teknikal sistem lampu jalan pintar masa nyata menggunakan PHP dan MQTT

Kajian teknikal sistem lampu jalan pintar masa nyata menggunakan PHP dan MQTT

WBOY
WBOYasal
2023-06-28 10:15:191006semak imbas

Dengan perkembangan pembinaan bandar pintar, sistem lampu jalan pintar secara beransur-ansur menjadi salah satu tempat hangat dalam pengurusan bandar. Sistem lampu jalan tradisional memerlukan banyak tenaga kerja dan sumber bahan untuk penyelenggaraan dan pengurusan, manakala sistem lampu jalan pintar masa nyata boleh mencapai pemantauan jauh, kawalan pintar dan analisis data, dengan itu meningkatkan kecekapan operasi dan tahap pengurusan lampu jalan. Artikel ini akan memperkenalkan cara menggunakan PHP dan MQTT untuk melaksanakan sistem lampu jalan pintar masa nyata.

1. Pengenalan kepada protokol MQTT

MQTT (Message Qeuing Telemetry Transport) ialah protokol penghantaran mesej ringan berdasarkan mekanisme terbitkan/langganan. Protokol MQTT pada asalnya dibangunkan oleh IBM dan kini telah menjadi piawaian antarabangsa dan digunakan secara meluas dalam Internet Perkara, rumah pintar dan bidang lain.

Prinsip kerja protokol MQTT adalah berdasarkan pelayan pusat (Broker). Peranti (Pelanggan) berkomunikasi dengan menyambung ke pelayan pusat, penerbit (Penerbit) menerbitkan mesej kepada topik (Topik), dan pelanggan (Pelanggan) memperoleh mesej dengan melanggan topik. Protokol MQTT adalah ringkas, ringan, pantas, boleh dipercayai dan fleksibel serta sesuai untuk senario dengan lebar jalur rangkaian yang kecil dan sedikit sumber peranti.

2. Idea reka bentuk sistem lampu jalan pintar masa nyata

Sistem lampu jalan pintar masa nyata merangkumi tiga bahagian: nod lampu jalan, pintu masuk dan platform awan get laluan menghantar data ke platform awan untuk pemprosesan dan analisis untuk mencapai kawalan risikan dan pengurusan jauh. Berikut ialah idea reka bentuk sistem lampu jalan pintar masa nyata:

1 Nod lampu jalan: Gunakan teknologi komunikasi wayarles LoraWAN untuk berkomunikasi dan mengumpul data status lampu jalan, termasuk kecerahan, suhu, kelembapan. , semasa dan parameter cahaya yang lain.

2: Muat naik data yang dikumpul oleh nod ke platform awan melalui protokol MQTT, dan pada masa yang sama menerima arahan yang dikeluarkan oleh platform awan untuk mengawal status berjalan nod.

3 Platform awan: Memproses dan menganalisis data yang dimuat naik oleh nod untuk merealisasikan fungsi seperti pemantauan masa nyata, kawalan pintar dan analisis data. Ia juga menyediakan antara muka pengguna untuk memudahkan pengurusan dan kawalan jauh oleh pengguna.

3. PHP melaksanakan klien MQTT

PHP ialah bahasa skrip yang digunakan secara meluas dalam pembangunan web Ia mudah dipelajari, mudah digunakan dan merentas platform Ia boleh digunakan bersama dengan protokol MQTT untuk mencapai real-. penghantaran masa dan pemantauan masa nyata data dan fungsi lain.

Protokol MQTT menggunakan protokol TCP/IP PHP perlu menyambung kepada Broker MQTT melalui rangkaian, dan kemudian menggunakan protokol MQTT untuk penghantaran data. Untuk melaksanakan klien MQTT dalam PHP, anda perlu menggunakan perpustakaan pihak ketiga, seperti phpMQTT, mosquitto, dll. Di sini kami mengambil phpMQTT sebagai contoh untuk memperkenalkan langkah-langkah untuk melaksanakan klien MQTT dalam PHP:

1 perpustakaan kelas phpMQTT dan memperkenalkan fail perpustakaan kelas phpMQTT.php ke dalam projek PHP.

2. Gunakan kod PHP untuk menyambung ke MQTT Broker, contohnya:

$mqtt = new phpMQTT("localhost", 1883, "PHP Client");

di mana "localhost" mewakili nama hos Broker MQTT, dan 1883 mewakili MQTT Broker Nombor port perkhidmatan, "Klien PHP" mewakili nama Klien.

3. Gunakan kod PHP untuk melanggan topik atau menerbitkan mesej, contohnya:

$mqtt->publish("topik", "message", 0);

di mana "topik" ialah nama topik langganan dan "mesej" ialah kandungan Mesej, 0 ialah tahap QoS mesej.

4. Melaksanakan sistem lampu jalan pintar masa nyata

Atas dasar melengkapkan pelaksanaan klien MQTT dalam PHP, kami boleh menggunakan PHP dan MQTT untuk melaksanakan sistem lampu jalan pintar masa nyata. Berikut ialah langkah pelaksanaan:

1 Gunakan modul LoraWAN untuk mengumpul data status lampu jalan, seperti kecerahan lampu, suhu, kelembapan, semasa dan parameter lain. Pek data ke dalam format JSON dan hantarkannya secara wayarles ke gerbang melalui LoraWAN.

2. Selepas menerima data yang dimuat naik oleh modul LoraWAN, get laluan menghuraikan data ke dalam format JSON dan menerbitkannya ke topik yang ditetapkan melalui protokol MQTT.

3 Platform awan melanggan topik yang ditentukan, menerima data yang dimuat naik oleh nod dan memproses serta menganalisisnya. Anda boleh menggunakan perpustakaan kelas PHP dan MQTT untuk melaksanakan fungsi pemprosesan data platform awan, seperti pemantauan masa nyata, analisis data sejarah, penggera tidak normal, dsb.

4 Berdasarkan hasil pemprosesan data, platform awan mengeluarkan arahan kepada topik yang ditetapkan melalui protokol MQTT. Contohnya, anda boleh mengeluarkan arahan untuk mengawal suis lampu jalan dan melaraskan kecerahan cahaya.

5 Selepas menerima arahan yang dikeluarkan oleh platform awan, get laluan secara wayarles menghantar arahan ke nod lampu jalan melalui LoraWAN untuk mencapai kawalan pencahayaan.

Ringkasnya, menggunakan PHP dan MQTT untuk melaksanakan sistem lampu jalan pintar masa nyata adalah cara yang berkesan. Teknologi komunikasi tanpa wayar LoraWAN digunakan untuk mengumpul data status lampu jalan, dan protokol MQTT digunakan untuk merealisasikan penghantaran dan kawalan data Ia boleh merealisasikan fungsi seperti pemantauan jarak jauh, kawalan pintar dan analisis data, dan meningkatkan kecekapan operasi dan pengurusan tahap lampu jalan.

Atas ialah kandungan terperinci Kajian teknikal sistem lampu jalan pintar masa nyata menggunakan PHP dan MQTT. 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