Avant-propos
Le Raspberry Pi (RPi) est spécialement conçu pour l'enseignement de la programmation informatique des étudiants. Il s'agit uniquement d'une carte de la taille d'une carte de crédit. . Ordinateur, peut exécuter le système d’exploitation Linux ou Windows 10 IoT Core. Cet article utilisera la technologie de développement Raspberry Pi et UWP (Universal Windows Platform) pour créer un système de station météo pouvant être surveillé en temps réel.
Matériel et technologies associées
Partie matérielle :
Un Raspberry Pi 2 ou 3, une carte mémoire supérieure à 8G, et un lecteur de carte (ou un ordinateur avec une interface pour carte SD
Dht11 One) ; un capteur de température et d'humidité, un baromètre GY-68 BMP180
Un humidimètre de sol LY-69, un capteur de gaz de fumée MQ-2, un capteur de gouttes de pluie
Un certain nombre de câbles DuPont mâles et femelles, une maquette, un câble micro USB et une alimentation
Un moniteur d'interface HDMI (ou HDMI vers d'autres interfaces ; ).
Partie développement :
Environnement de développement intégré : Visual Studio 2017 (la communauté est recommandée version);
Langage de développement : C#
Plateforme de développement : UWP ; Protocole : MQTT ;
Système d'exploitation Raspberry Pi : WIndows 10 IoT Core
Base de données : SQLite
Portail des appareils Windows :
Arborescence de saisie du navigateur dans le même environnement réseau. L'adresse IP du Berry Pi et du port est 8080. Après avoir appuyé sur Entrée, vous serez invité à saisir votre nom d'utilisateur et votre mot de passe. Le nom d'utilisateur par défaut est Administrateur et le mot de passe est le mot de passe défini lors de la gravure du système d'exploitation. Si vous oubliez le mot de passe, vous pouvez uniquement le réinstaller. Une fois connecté avec succès, vous verrez des informations détaillées sur le système d'exploitation actuel de la carte de développement Raspberry Pi, l'interface de gestion des applications, la configuration des programmes par défaut et le démarrage automatique au démarrage.
Mise en place de laCommunication MQTT :
MQTT (Message Queuing Telemetry Transport) est un protocole de messagerie instantanée développé par IBM. Après des années de développement, MQTT a été largement utilisé dans divers domaines. Il peut être utilisé comme outil de transmission de messages pour les clients mobiles et représente une proportion relativement importante des applications Android. En tant que protocole de communication spécialement conçu pour l'Internet des objets, MQTT a la particularité de fonctionner normalement dans des environnements réseau à faible bande passante et instables. Sa messagerie comporte trois modes :
Au plus une fois, une perte ou une duplication de message se produira. Ce mode est adapté à la transmission de données de type capteur, même si le message. est perdu, je l'enverrai à nouveau bientôt.Au moins une fois pour garantir que le message arrive, mais des doublons peuvent survenir.
Pour la construction du serveur MQTT, veuillez vous référer à :
Pour l'utilisation de MQTT sous UWP, veuillez reportez-vous à :
Pour utiliser MQTT sous UWP, vous devez installer le package nuget m2mqtt
Ici, je publierai le code de connexion MQTT :
public class Mqtt : MqttClient {public Mqtt(string host) : base(host, 61613, false, MqttSslProtocols.None) { Connect(Guid.NewGuid().ToString(), "admin", "password"); Subscribe(new string[] { "atmo" }, new byte[] { MqttMsgBase.QOS_LEVEL_EXACTLY_ONCE }); // PostData("Hello World!"); } public void RequestData(string msg) { Publish("atmo", Encoding.UTF8.GetBytes(msg)); }public void PostData(string msg) { Publish("atmo", Encoding.UTF8.GetBytes(msg)); } }
Implémentation de l'interface INotifyPropertyChanged
public class DataBase : SQLiteConnection {public static string path = Path.Combine(ApplicationData.Current.LocalFolder.Path, "atmo.db");public DataBase() : base(new SQLitePlatformWinRT(), path) { CreateTable<DataModel>(); } }
Schéma GPIO Raspberry Pi
Schéma de connexion matérielle :
Schéma des broches du capteur :
Adresse du projet :
Ce projet n'est pas encore parfait, tout le monde est le bienvenu Suppléments et corrections !
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!