Maison >développement back-end >tutoriel php >Utilisez swoole comme cadre de passerelle IOT dans le cloud pour le contrôleur programmable de script basé sur ESP6

Utilisez swoole comme cadre de passerelle IOT dans le cloud pour le contrôleur programmable de script basé sur ESP6

Patricia Arquette
Patricia Arquetteoriginal
2024-10-19 06:10:31377parcourir

Les fonctions locales du contrôleur programmable à script sont presque terminées et commencent à implémenter les fonctions liées à distance.

L'architecture globale du système distant est la suivante :
Utilisez le SDK d'ESP8266 pour implémenter le serveur TCP et le client TCP.
Écrivez le code d'analyse du protocole http sur la base du serveur TCP, concevez un serveur http simple, gérez l'interaction des données avec le navigateur, y compris le téléchargement de la page Web intégrée, et utilisez la technologie ajax pour obtenir l'état et enregistrer les données.

Nous utilisons HTML, JS et CSS pour concevoir des pages Web, les télécharger et les stocker dans le flash du module ESP8266, en combinaison avec le traitement des données du langage C dans le backend, nous réalisons la programmation de scripts Web, la vérification de l'état. , réglage des paramètres et autres fonctions ;

Côté serveur cloud, un hôte de serveur cloud Linux a été acheté et swoole a été choisi comme passerelle de communication TCP/IP ;

Swoole est un moteur de communication réseau asynchrone PHP pour les environnements de production, permettant aux développeurs PHP d'écrire des services TCP, UDP, Unix Socket, HTTP et WebSocket simultanés asynchrones hautes performances.

Implémentez le serveur TCP et le serveur Websocket dans le framework Swoole, dans lequel le serveur TCP est utilisé pour connecter le contrôleur et le cloud, le client TCP du contrôleur établit une longue connexion TCP avec le serveur TCP du serveur cloud, afin que les données provenant d'Internet peut être envoyé au contrôleur à distance via la connexion TCP pour réaliser le contrôle à distance du contrôleur ;

La page Web distante utilise le client Websocket pour établir une longue connexion avec le serveur Websocket de Swoole afin de réaliser une pénétration à distance entre le serveur cloud et la page Web, afin que l'état du contrôleur puisse être poussé vers la page Web en réalité temps d'affichage;

Les données entre le serveur Websocket et le serveur TCP sont partagées via la mémoire, et l'outil PC, la page Web et le contrôleur ont tous des numéros uniques, et les messages de données entre l'hôte PC, le contrôleur et la page Web utilisent ce numéro comme source et adresses de destination, et le serveur TCP et le serveur Websocket transmettent les messages de données en fonction de l'adresse de destination après les avoir reçus, afin de réaliser la transmission des données sur le PC. Après avoir reçu les messages de données, le serveur TCP et le serveur Websocket les transmettront en fonction de l'adresse de destination, afin de réaliser l'interconnexion des données entre l'outil PC, la page Web et le contrôleur.

En utilisant Redis comme base de données mémoire, les données d'état du contrôleur peuvent être temporairement stockées dans la base de données pour réaliser des fonctions telles que des alarmes téléphoniques anormales, etc., tandis que MySQL est utilisé comme base de données permanente pour stocker certaines données de configuration.

Use swoole as the IOT gateway framework in cloud for script programmable controller based on ESP6

Use swoole as the IOT gateway framework in cloud for script programmable controller based on ESP6

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!

Déclaration:
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