Maison > développement back-end > tutoriel php > PHP et MQTT : surveillance en temps réel des données des capteurs à distance

PHP et MQTT : surveillance en temps réel des données des capteurs à distance

王林
Libérer: 2023-07-09 19:06:02
original
1800 Les gens l'ont consulté

PHP et MQTT : Surveillance en temps réel des données de capteurs à distance

Introduction :
Avec le développement rapide de l'Internet des objets, nous pouvons surveiller et contrôler les équipements et les environnements grâce à des capteurs à distance. MQTT (Message Queuing Telemetry Transport) est un protocole léger de transmission de messages largement utilisé dans les applications IoT pour transmettre les données des capteurs. Cet article expliquera comment utiliser PHP et MQTT pour mettre en œuvre la surveillance en temps réel des données de capteurs distants.

  1. Préparation :
    Avant de commencer, nous devons préparer les outils et l'environnement suivants :
  2. Un serveur ou un ordinateur fonctionnant sous Linux ou Windows ;
  3. Installer PHP (version 7 et supérieure) ; Moustique.
  4. Connectez-vous au serveur MQTT :
  5. Tout d'abord, nous devons nous connecter au serveur MQTT via PHP. Nous pouvons utiliser l'extension MQTT de PHP ou utiliser une bibliothèque tierce pour implémenter la connexion. Dans cet article, nous utiliserons la bibliothèque tierce phpMQTT pour nous connecter.

  6. Installez la bibliothèque phpMQTT :
composer require bluerhinos/phpmqtt
Copier après la connexion

L'exemple de code pour se connecter au serveur MQTT est le suivant :

<?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
";
}
?>
Copier après la connexion

Dans l'exemple de code ci-dessus, nous introduisons d'abord la bibliothèque phpMQTT via l'instruction require. Nous créons ensuite un objet mqtt et nous connectons en utilisant l'adresse du serveur mqtt (mqtt.example.com) et le numéro de port (1883). Si la connexion réussit, nous pouvons nous abonner à un ou plusieurs sujets. Dans cet exemple, nous nous abonnons à une rubrique nommée « capteurs/données » et spécifions la fonction de rappel handleSensorData pour gérer les données reçues. Enfin, la surveillance en temps réel est réalisée en lisant les données en boucle. Lorsque de nouvelles données de capteur sont reçues, la fonction handleSensorData est appelée pour le traitement.

    Publier les données du capteur :
  1. Ensuite, nous allons simuler un capteur et publier les données du capteur sur le serveur MQTT via PHP. Voici un exemple de code simple :

    <?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();
    ?>
    Copier après la connexion

    Dans le code ci-dessus, nous créons un objet mqtt et nous nous connectons en utilisant l'adresse du serveur mqtt (mqtt.example.com) et le numéro de port (1883). Nous avons ensuite précisé le nom du sujet (capteurs/données) et les données des capteurs à publier. Enfin, les données du capteur sont publiées sur le serveur MQTT en appelant la méthode de publication de l'objet mqtt.

    Conclusion :
      En utilisant PHP et MQTT, nous pouvons réaliser une surveillance en temps réel des données des capteurs à distance. Dans cet article, nous avons présenté comment utiliser la bibliothèque phpMQTT pour se connecter à un serveur MQTT, s'abonner à des sujets et traiter les données de capteur reçues, ainsi que comment publier les données de capteur sur un serveur MQTT.

    1. Cependant, ce n'est qu'un exemple, et plus de logique et de traitement sont nécessaires dans les applications réelles. J'espère que cet article pourra fournir aux lecteurs des idées de base et des exemples de code pour explorer davantage le potentiel de PHP et MQTT dans les applications IoT.

    Référence :

    bibliothèque officielle phpMQTT : https://github.com/bluerhinos/phpMQTT

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal