Table des matières:

Système automatisé de surveillance de l'eau des rivières : 14 étapes
Système automatisé de surveillance de l'eau des rivières : 14 étapes

Vidéo: Système automatisé de surveillance de l'eau des rivières : 14 étapes

Vidéo: Système automatisé de surveillance de l'eau des rivières : 14 étapes
Vidéo: COURS SUR LE TRAITEMENT DES EAUX USÉES 2024, Juillet
Anonim
Système automatisé de surveillance de l'eau de rivière
Système automatisé de surveillance de l'eau de rivière
Système automatisé de surveillance de l'eau de rivière
Système automatisé de surveillance de l'eau de rivière

Cette instruction est utilisée pour documenter le développement d'un système automatisé de surveillance des eaux fluviales. Les paramètres surveillés sont le niveau d'eau et la température de l'eau. L'objectif de ce projet était de développer un enregistreur peu coûteux et indépendant connecté à une base de données. Le niveau d'eau est surveillé avec un niveau QR spécial. Une caméra du Pi prend une photo toutes les 15 minutes. Les codes QR de cette image sont décodés par un logiciel et indiquent le niveau d'eau réel. La température de l'eau est mesurée avec un capteur DS18B20.

Fournitures

  1. Framboise Zéro WH
  2. WittyPi Mini
  3. Module caméra Raspberry Pi v2.1
  4. Huawei E3531 SurfStick
  5. Carte SIM (ThingsMobile)
  6. Convertisseur abaisseur abaisseur DC DC
  7. Thermomètre numérique DS18B20
  8. Câble micro-USB OTG
  9. Une extrémité de câble micro USB
  10. Verre de fenêtre
  11. Boîtier scellé (G258)
  12. Raccord de câble
  13. Bornier à vis 3 broches
  14. 4, résistance 7kOhm
  15. Circuit imprimé vierge 65x30mm
  16. En-tête de jalonnement à 40 broches
  17. 4 vis M3x20
  18. 8 vis M3
  19. Câble téléphonique
  20. Câble d'enceinte

Étape 1: Souder le module de température

Souder le module de température
Souder le module de température
Souder le module de température
Souder le module de température
Souder le module de température
Souder le module de température

Dans cette étape, nous créons un module de température à partir de zéro. Il a la taille d'un pHAT et peut être connecté au GPIO 40 broches du Pi. Cette méthode nous permet de monter en toute sécurité le capteur DS18B20 sur le Raspberry Pi.

  1. Tout d'abord, nous devons souder l'embase à 40 broches à la carte de circuit vierge de 60x35 mm.
  2. Mettre le bornier à vis et la résistance en place comme indiqué sur la photo
  3. Connectez la résistance aux broches extérieures du bornier
  4. Soudez la résistance et les broches ensemble
  5. Soudez les câbles (noir, rouge et jaune) aux broches exactes de l'embase de piquetage et aux broches du bornier
  6. Pour percer les trous de montage, montez d'abord le module sur votre raspberry pi zero, puis percez avec un foret de 3 mm à travers les trous existants de votre Raspberry Pi dans votre nouveau module.
  7. Enfin, vous pouvez connecter votre capteur DS18B20 à votre module en attachant les câbles de votre capteur aux couleurs correspondantes sur votre carte.

Étape 2: Construire notre câble convertisseur DCDC

Construire notre câble convertisseur DCDC
Construire notre câble convertisseur DCDC
Construire notre câble convertisseur DCDC
Construire notre câble convertisseur DCDC

Pour alimenter notre Raspberry Pi, nous devons convertir le 12V que nous obtenons de notre batterie en 5V. Nous utilisons un convertisseur abaisseur DC DC pour réduire la tension.

  1. Soudez le fil noir de votre câble d'enceinte au port étiqueté GND
  2. Soudez le fil rouge au port marqué IN+
  3. Soudez le fil noir de votre câble micro-USB au port étiqueté GND
  4. Soudez le fil rouge de votre câble micro-USB au port marqué OUT+
  5. Coupe du circuit marqué de la flèche rouge dans l'image
  6. Soudez les plots de connexion ensemble pour obtenir une sortie fixe 5V (flèche bleue)

Étape 3: Installer votre Surfstick

Installer votre Surfstick
Installer votre Surfstick
Installer votre Surfstick
Installer votre Surfstick
Installer votre Surfstick
Installer votre Surfstick

Pour établir une connexion Internet, nous devons connecter notre clé de surf à notre Raspberry Pi. Nous devons d'abord faire quelques configurations:

  1. Insérez une carte SIM du fournisseur mobile de votre choix dans votre clé de surf. Dans cet exemple, nous utilisons une carte SIM de Things Mobile.
  2. Connectez votre clé de surf à votre ordinateur via USB.
  3. Une fenêtre devrait apparaître dans votre navigateur.
  4. Sous Paramètres>Gestion des profils, remplacez l'APN par celui de votre opérateur mobile. Pour Things Mobile, c'est "TM".
  5. Activez la fonction d'itinérance sous Paramètres > Connexion mobile et « Activer » les données mobiles.
  6. Cliquez sur Appliquer.
  7. Sur la page d'accueil, vous pouvez vérifier si une connexion est établie.
  8. Maintenant que vous êtes prêt à partir, déconnectez votre clé de surf.
  9. Le surf stick peut être connecté à votre Raspberry sans autre configuration.

Étape 4: créer une base de données PostgreSQL

Dans cette étape, nous créons notre base de données. Nous utilisons l'offre gratuite d'Amazon Web Services.

  1. Créez d'abord un compte gratuit sur AWS:
  2. Suivez ce tutoriel pour créer votre base de données PostgreSQL et apprendre à vous y connecter:

Étape 5: Préparation de la carte SD

Vous devez d'abord télécharger l'image Raspian Stretch Lite:

Téléchargements de Raspberry Pi

Maintenant, nous devons flasher l'image sur une carte SD vide (au moins 16 Go). Insérez la carte SD dans votre lecteur de carte SD. Téléchargez Balena Etcher et installez-le sur votre ordinateur:

www.balena.io/etcher/

Ouvrez Balena Etcher, sélectionnez le fichier.zip de votre image Raspian que vous avez précédemment téléchargée. Sélectionnez votre carte SD dans Select Drive. Cliquez sur Flash !

Étape 6: Installer le Raspberry et s'y connecter via SSH

Avant de pouvoir utiliser notre Raspberry Pi, nous devons effectuer quelques configurations initiales.

  1. Insérez votre carte SD dans votre Raspberry Pi et connectez-la à un moniteur, un clavier et une souris. (Si vous n'avez pas de moniteur, de clavier et de souris supplémentaires, vous pouvez effectuer une installation sans tête. Vérifiez cela a déjà été fait)
  2. Suivez les étapes de configuration de votre Raspberry Pi [wifi, langue, fuseau horaire]
  3. Activez SSH via Terminal sur votre PI:sudo raspi-configgo to: 5 Options d'interfaçageActiver SSH
  4. Sur votre ordinateur, téléchargez Termius. Ce programme facilite la connexion à notre Raspberry Pi via SSH.1. https://termius.com/2. Créer un compte

    3. Créez un NOUVEL HTE4. Donnez une étiquette à votre Raspberry (choisissez un nom) 5. Entrez l'ADRESSE IP de votre PI à partir du RÉSEAU auquel il est connecté (si vous ne connaissez pas l'ADRESSE IP, vous pouvez la rechercher avec un programme appelé "SCANNER IP AVANCÉ") 7. Saisissez votre nom d'utilisateur (pi par défaut s'il n'est pas modifié) 8. Saisissez votre mot de passe (framboise par défaut s'il n'est pas modifié) 9. Cliquez sur enregistrer 10. Double-cliquez sur votre nouvel hôte créé 11. Un message apparaît -> cliquez sur oui

Votre Raspberry doit être connecté à votre ordinateur via SSH

Étape 7: Installation de l'enregistreur

  1. Activez la caméra dans les options d'interfaçage: sudo raspi-configaller à: 5 Options d'interfaçageActiver la camérasudo redémarrer
  2. Créez un nouveau répertoire dans votre répertoire /home/picd /home/pisudo mkdir Desktop
  3. Créez un nouveau fichier python dans le répertoire Desktopcd Desktopsudo nano ctrl+ocall le fichier qrbooftemp.pyenterctrl+x
  4. Installez le package pyboof (numpy et py4j sont automatiquement installés) cela peut prendre jusqu'à 40 min.sudo pip3 install pyboof==0.33.1
  5. Exécutez une mise à jour (si vous ne le faites pas, vous pourriez rencontrer des problèmes lors de l'installation des packages ultérieurement) sudo apt-get updatesudo apt-get install libpq-dev
  6. Installez postgreSQL et psycopg2 pour interagir avec la base de données postgreSQL via Pythonsudo apt-get install postgresqlsudo pip3 install psycopg2

Étape 8: Installation de l'enregistreur (module de température)

Installation de l'enregistreur (module de température)
Installation de l'enregistreur (module de température)

Pour installer le module de température, vous devez monter le module sur votre Raspberry Pi avec un capteur DS18B20 qui y est attaché. Le module est monté via l'en-tête à 40 broches.

  1. activez 1-wire dans les options d'interfaçagesudo raspi-configallez à: 5 Options d'interfaçageActiver 1-Wiresudo reboot
  2. définissez la broche 1-Wire sur la broche 23 et gpu_mem=256sudo nano /boot/config.txt ajoutez dtoverlay=w1-gpio, gpiopin=23, pullup=on à la fin du changement de fichier gpu_mem=128 à gpu_mem=256
  3. activer 1-Wiresudo modprobe w1-gpiosudo modprobe w1-thermsudo reboot
  4. trouvez l'adresse de votre DS18B20, elle devrait commencer par 28- …cd /sys/bus/w1/devicesls notez l'adresse, elle sera ensuite nécessaire dans le script Python

Étape 9: Téléchargez et ajustez le script Python

  1. Téléchargez le script Python sur votre ordinateur et ouvrez-le dans un éditeur de textehttps://github.com/gremax93/QR-Code-Water-Level
  2. Copiez le script complet dans votre presse-papiers (ctrl+a, ctrl+c)
  3. Accédez à votre fichier python précédemment créé /home/pi/Desktopsudo nano qrbooftemp.py
  4. Faites un clic droit pour insérer le script
  5. Remplacez l'adresse du capteur de température par celle que vous avez précédemment notée
  6. Modifiez la configuration de la connexion postgresql en fonction de vos informations spécifiques, comme indiqué dans le script
  7. Enregistrer et quitterctrl+oenterctrl+x

Étape 10: Installation du module WittyPi

  1. Téléchargez le fichier d'installation depuis Witty Pi wget
  2. Exécutez le script d'installation sudo sh installWittyPi.sh
  3. Redémarrer sudo reboot

Étape 11: apporter quelques modifications à la configuration de la machine virtuelle Java

Cette étape est nécessaire pour s'assurer que la JVM démarrera lorsque le script python sera exécuté.

  1. Allez dans le répertoire py4j et ouvrez le cd jawa_gateway.py /usr/local/lib/python3.5/dist-packages/py4jsudo nano jawa_gateway.pyset DEFAULT_CALLBACK_SERVER_ACCEPT_TIMEOUT = 20
  2. Allez dans le répertoire pyboof et ouvrez _init_.pycd /usr/local/lib/python3.5/dist-packages/pyboofsudo nano _init_.pyset while time.time() - start_time < 20.0

Étape 12: Définir la tâche Cron

Dans cette étape, nous définissons une tâche cron lorsque le Raspberry démarre. De cette façon, chaque fois que le Pi se réveille, notre script python est exécuté.

  1. Définissez cronjob et écrivez-le dans un fichier journal. Cela rend le dépannage plus efficace.crontab -e@reboot sleep 20 && sudo python3 /home/pi/Desktop/qrbooftemp.py >> /home/pi/Desktop/log.txt
  2. Ajoutez une autre ligne à crontab. Cette ligne garantit que lorsque WittyPi échoue, le Raspberry Pi redémarre quand même.@reboot sleep 1500 && sudo rebootctrl+oenterctrl+x

Étape 13: Tout assembler

Mettre tous ensemble
Mettre tous ensemble
Mettre tous ensemble
Mettre tous ensemble
Mettre tous ensemble
Mettre tous ensemble
  1. Assurez-vous que votre Pi est éteint, sinon, fermez-le downsudo shutdown -h now
  2. Empilez votre WittyPi sur votre Raspberry Pi et le module de température par-dessus.
  3. Visser les 3 modules ensemble
  4. Connectez le module caméra au port CSI du raspberry pi zero
  5. Attachez votre surfstick à votre Raspberry Pi via le câble USB OTG
  6. Branchez le câble d'alimentation au WittyPi (pas au Raspberry Pi !)
  7. Mettez le tout dans le boîtier et vissez le couvercle
  8. Branchez le câble d'alimentation à votre batterie
  9. Félicitations, votre enregistreur devrait fonctionner !

Étape 14: Installation finale

Installation finale
Installation finale
Installation finale
Installation finale

Ces images montrent l'enregistreur monté avec le niveau d'eau QR-code installé.

Les enregistreurs ont été installés sous un pont pour des résultats optimaux. La lumière directe du soleil doit être évitée.

Conseillé: