Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Technologie industrielle

Système d'Arrosage Automatique des Plantes : Conception, Code et Rapport de Projet

Système d'Arrosage Automatique des Plantes – Code Source Complet, Schéma & Rapport de Projet – Téléchargement PDF

Introduction

Dans les opérations quotidiennes liées à l'arrosage des plantes, c'est la pratique culturale la plus importante et la tâche la plus intensive en main-d'œuvre. Peu importe la météo, qu'il fasse trop chaud ou froid, trop sec ou humide, il est crucial de contrôler la quantité d'eau qui atteint les plantes. Il sera donc efficace d'utiliser l'idée d'un système d'arrosage automatique des plantes qui arrose les plantes quand elles en ont besoin. Un aspect important de ce projet est : « quand et combien arroser ». Pour réduire les activités manuelles pour l'arrosage des plantes, l'idée d'un système d'arrosage est adoptée. La méthode employée pour surveiller en continu le niveau d'humidité du sol et décider si l'arrosage est nécessaire ou non, et quelle quantité d'eau est nécessaire dans le sol de la plante. Ce projet peut être regroupé en sous-systèmes tels que : alimentation, relais, électrovanne, shield GSM Arduino, capteur d'humidité du sol et LCD.

Système d Arrosage Automatique des Plantes : Conception, Code et Rapport de Projet

Essentiellement, le système est conçu et programmé de telle sorte que le capteur d'humidité du sol détecte le niveau d'humidité des plantes à un instant donné, si le niveau d'humidité du capteur est inférieur à la valeur seuil spécifiée qui est prédéfinie selon les besoins en eau de la plante particulière, alors la quantité d'eau désirée est fournie jusqu'à ce qu'elle atteigne la valeur seuil prédéfinie.

Le système signale ses états actuels et envoie un message de rappel concernant l'arrosage des plantes et l'ajout d'eau dans le réservoir. Toute cette notification peut être faite en utilisant le shield GSM Arduino.

Objectif du projet :

De nos jours, à l'ère de la technologie avancée et de l'électronique, le mode de vie de l'homme devrait être intelligent, plus simple, plus facile et bien plus pratique. Il y a donc un besoin de nombreux systèmes automatisés dans la routine quotidienne de l'homme pour réduire leurs activités et travaux quotidiens. Ici, l'idée d'un tel système nommé système d'arrosage automatique des plantes est très utile. Comme beaucoup de gens rencontrent beaucoup de problèmes pour arroser les plantes dans le jardin, surtout quand ils sont loin de la maison. Ce modèle utilise des technologies de capteurs avec microcontrôleur afin de créer un dispositif de commutation intelligent pour aider des millions de personnes.

Dans sa forme la plus basique, le système est programmé de telle sorte que le capteur d'humidité du sol qui détecte le niveau d'humidité de la plante à un instant donné, si le niveau d'humidité du capteur est inférieur à la valeur seuil spécifiée qui est prédéfinie selon la plante particulière, alors la quantité d'eau désirée est fournie à la plante jusqu'à ce que son niveau d'humidité atteigne la valeur seuil prédéfinie. Le système implique un capteur d'humidité et de température qui suit l'atmosphère actuelle du système et a une influence sur le moment de l'arrosage. L'électrovanne contrôlera le flux d'eau dans le système, quand Arduino lit la valeur du capteur d'humidité, il déclenche l'électrovanne selon la condition désirée. En outre, le système signale ses états actuels et envoie le message de rappel concernant l'arrosage des plantes et reçoit un SMS du destinataire. Toute cette notification peut être faite en utilisant le shield GSM Arduino.

Système d Arrosage Automatique des Plantes : Conception, Code et Rapport de Projet

Contexte du Système

Il a été étudié à l'école dans les livres de sciences que les plantes sont très impératives pour toute l'humanité à bien des égards. Car elles maintiennent l'environnement propre en produisant de l'oxygène frais de temps en temps. Les systèmes d'arrosage automatique des plantes ont été vus devenir de plus en plus courants avec la montée des objets du quotidien connectés aux technologies avancées, ces systèmes sont mis en œuvre à un taux croissant. Dans des lieux comme les maisons ainsi que sur les niveaux industriels. L'utilisation principale de ces systèmes est l'efficacité et la facilité d'utilisation.

Le système d'arrosage des plantes offre la capacité aux amateurs de plantes de prendre soin de leurs plantes d'intérieur pendant leur absence – grâce à l'utilisation de composants efficaces et fiables tels que différents types de technologies de capteurs.

Il existe plusieurs types différents/simples de systèmes d'arrosage de plantes d'intérieur, selon le niveau d'automatisation nécessaire.

Dans le rapport PDF final (lien de téléchargement gratuit donné à la fin du contenu), les sections suivantes sont décrites en détail.

Projet connexe : Qu'est-ce que les Microcontrôleurs ATMega & Comment Faire un Projet LED avec ?

Spécifications des Produits & Composants

ID Exigence SRS-GSM-001
Titre Module GSM
Description Le système inclut le module GSM, qui envoie des SMS d'alerte au destinataire et reçoit un SMS de l'utilisateur.
Version Version 1.0
ID Exigence SRS-Microcontrôleur-001
Titre ATmega328p
Description Le système inclut le microcontrôleur qui vient généralement avec Arduino Uno. Ce microcontrôleur lit les valeurs du capteur et contrôle le système global.
Version Version 1.0
ID Exigence SRS-Température-Humidité-001
Titre DHT11
Description Le système inclut le capteur de température et d'humidité, qui suit les valeurs actuelles de température et d'humidité de l'environnement et renvoie la lecture au microcontrôleur.
Version Version 1.0
ID Exigence SRS-Humidité-001
Titre Capteur d'Humidité du Sol Grove
Description Le système inclut le capteur d'humidité du sol, qui prend la lecture de l'humidité du sol et renvoie la lecture au microcontrôleur.
Version Version 1.0
ID Exigence SRS-LCD-001
Titre LCD Hitachi 16×2
Description Le système inclut l'interface LCD pour l'utilisateur, qui affiche les lectures prises par les différents capteurs du système.
Version Version 1.0

Article connexe : Programmation Arduino : Qu'est-ce qu'Arduino et Comment le Programmer ?

Système d'Arrosage Automatique des Plantes Basé sur Arduino :

Diagramme de Blocs du Système d'Arrosage Automatique

Système d Arrosage Automatique des Plantes : Conception, Code et Rapport de Projet

Schéma de Circuit du Système d'Arrosage Automatique & d'Irrigation

Selon ce système, il y a deux composants fonctionnels dans ce projet, c'est-à-dire le capteur d'humidité et le moteur/pompe à eau. Dans sa forme la plus basique, le capteur d'humidité détecte le niveau d'humidité du sol. Ensuite, le moteur/pompe à eau fournit de l'eau aux plantes.

Cliquez sur l'image pour agrandirSystème d Arrosage Automatique des Plantes : Conception, Code et Rapport de Projet

Le schéma ci-dessus décrit le comportement global du système. Le projet utilise Arduino Uno pour contrôler le moteur. Il consiste en un pont en H qui contrôle le flux du servomoteur, c'est-à-dire le sens horaire ou antihoraire. Le capteur d'humidité mesure le niveau du sol et envoie le signal à Arduino, puis Arduino ouvre le servomoteur si l'arrosage est requis. Ensuite, le moteur/pompe à eau fournit de l'eau aux plantes jusqu'à ce que le niveau d'humidité désiré soit atteint.Système d Arrosage Automatique des Plantes : Conception, Code et Rapport de Projet

À partir du prototype dans la figure ci-dessus, le capteur d'humidité détecte le niveau d'humidité et envoie le signal à Arduino et puis Arduino ouvre la pompe à eau avec l'aide du pont en H et arrose la plante particulière. Ceci est fait en utilisant le logiciel Arduino IDE.

Projet connexe : Projet Électronique de Contrôle de Feu Tricolore avec CI 4017 & Timer 555

Conception du Projet

Cette section parle de tout travail terminé en conception logicielle et matérielle. Elle donne aussi un aperçu de ce que le système inclut et pourquoi différents composants ont été choisis pour faire un système d'arrosage automatique des plantes pleinement complet. Considérez un diagramme dans la figure montre le modèle conceptuel de base du système en utilisant les composants choisis.Système d Arrosage Automatique des Plantes : Conception, Code et Rapport de Projet

La fonctionnalité du diagramme de blocs montré dans la figure ci-dessus du système d'arrosage automatique des plantes est illustrée ci-dessous :

Plus de détails sur les composants peuvent être trouvés dans le fichier PDF (ci-dessous)

Projet connexe : Qu'est-ce que Raspberry Pi ? Création de Projets avec Raspberry Pi

Conception Matérielle

Schéma des Capteurs

La figure ci-dessous montre le schéma du circuit des capteurs. Comme tous les capteurs sont connectés aux broches analogiques Arduino A0-A3. La broche A0 était réservée pour le capteur de température et d'humidité tandis que les broches A1-A3 étaient réservées pour les capteurs d'humidité. Tous les capteurs ont une alimentation commune 5V et Masse comme montré dans le schéma.Système d Arrosage Automatique des Plantes : Conception, Code et Rapport de Projet

Schéma LCD :

La figure ci-dessous montre le schéma du LCD. Les broches numériques 8 – 13 étaient réservées pour le LCD comme montré dans le Schéma. La broche 1 et la broche 3 sont l'alimentation et la masse tandis que la broche 2 est la broche de contraste sur le LCD qui contrôle le contraste et est connectée avec le potentiomètre. Il doit être gardé à l'esprit lors de la connexion du LCD que les broches numériques d'Arduino et les broches de données du LCD doivent être connectées dans le bon ordre sinon le LCD n'affichera que des caractères aléatoires sur l'écran.Système d Arrosage Automatique des Plantes : Conception, Code et Rapport de Projet

Schéma d'Électrovanne

Le diagramme ci-dessous montre le schéma de circuit de l'électrovanne. Les broches numériques 4 – 7 étaient réservées pour les Électrovannes. Comme le circuit consiste en des relais, transistors, résistances, et LEDs au lieu de l'électrovanne (CadStar n'a pas de symbole d'électrovanne). Dans le schéma, les relais utilisent 5V. Alors que 5V va aussi dans le canal NO des relais car dans le schéma, les LEDs remplacent l'électrovanne qui fonctionne sur (5V) suivi d'une résistance de 220 ohms.

Ainsi, quand la tension est appliquée à la base des transistors. Le transistor commute vers la masse permettant à la bobine du relais de s'aimanter et se commute vers le canal normalement fermé, ce qui fait que la LED connectée à ce relais particulier s'allume et quand la tension appliquée sur la base du transistor chute, le transistor revient à la normale et la bobine du relais se désaimante et le relais revient au canal NO, ce qui fait que la LED s'éteint à nouveau.Système d Arrosage Automatique des Plantes : Conception, Code et Rapport de Projet

Après avoir terminé tous les schémas du circuit, l'étape suivante est de les construire sur Veroboard. Il est important de concevoir le circuit sur une feuille de planification de disposition de stripboard à l'avance car il y a certains principes pour concevoir un circuit sur Veroboard qui sont les suivants :

  1. Marquez d'abord les lignes d'alimentation Vs et GND en haut à droite de la feuille de planification de disposition de stripboard.
  2. N'oubliez pas de couper la piste entre les broches d'un CI. Marquez les coupures sur le diagramme avec un X.
  3. Essayez de faire en sorte que les résistances et condensateurs axiaux soient couchés sur le stripboard. Les résistances nécessitent généralement un écart de 4 trous, condensateur un écart de 8 trous.
  4. Si possible, numérotez les broches des CIs. Le côté inférieur du Veroboard consiste en des pistes de cuivre dans lesquelles la tension circule horizontalement. Différentes conceptions de Veroboard des schémas ci-dessus sont montrées ci-dessous :

Projet connexe : Contrôleur de Niveau d'Eau Entièrement Automatique utilisant SRF04

Conception Logicielle

Après avoir terminé le matériel, il est temps de tester le matériel avec le logiciel. Dans cette section, l'implémentation de la conception logicielle sera décrite en détail pour chacune des différentes technologies d'automatisation utilisées dans le système. Cela inclut le code Arduino écrit et téléversé sur l'Arduino.

La première chose faite a été de faire fonctionner le circuit d'électrovanne et comment l'électrovanne agirait du point de vue du microcontrôleur. Pour cela, un petit organigramme a été fait qui peut être vu sous la section flux logiciel dans la figure ci-dessus.

L'IDE Arduino a été utilisé pour téléverser le logiciel sur l'Arduino. Pour le circuit d'électrovanne de base, un programme simple a été écrit qui fait clignoter la LED toutes les 1 sec. Les broches numériques 4, 5, 6 et 7 ont été définies initialement pour tester le programme et le circuit. Ainsi, quand le programme s'exécute, il fait toutes les initialisations de base, définit toutes les broches de sortie dans void setup () et saute dans void loop () où il s'exécute constamment et fait clignoter les LEDs toutes les 1sec.

Après cela, un petit programme a été écrit et téléversé sur l'Arduino qui obtient les lectures des différents capteurs et les affiche sur le LCD. Pour cela, un petit organigramme a aussi été fait qui peut être vu sous la section flux logiciel dans la figure donnée. Quand le programme entre dans void loop (), il obtient les lectures du capteur et fait tous les calculs de base et les affiche sur le LCD.

Projet Électronique de Base Connexe : Système de Contrôle Automatique d'Éclairage Public avec LDR & Transistor BC 547

La prochaine chose est de téléverser le logiciel pour le module GSM sur l'Arduino, par lequel le GSM pourrait communiquer avec le microcontrôleur. Le test du modem a été fait initialement qui fait toutes les initialisations de base et bibliothèques pour le GSM et obtient le numéro IMEI et voit si le modem fonctionne correctement une fois qu'il commence à communiquer avec Arduino. L'étape suivante est le test de connexion réseau qui initialise essentiellement le GSM et affiche tous les autres réseaux que le module GSM peut supporter.

Une fois le module GSM testé et fonctionnant correctement, il est temps d'utiliser le module GSM pour communiquer avec le destinataire, ce qui signifie envoyer des SMS au destinataire et recevoir des SMS de leur part. Pour ce faire, un autre programme simple de câblage Arduino a été écrit et téléversé sur l'Arduino. Le programme a initialisé le GSM et envoyé un SMS au destinataire, en contraste, un autre programme Arduino a été écrit dans lequel le GSM reçoit le SMS de l'utilisateur final.

Finalement, une fois toute la conception logicielle terminée, il est temps de fusionner toute la conception logicielle ensemble et de construire un logiciel final fonctionnel pour le système. Différentes approches algorithmiques ont été appliquées qui peuvent être vues sous la section flux logiciel pour obtenir le logiciel final fonctionnel et faire ce qu'il est censé faire. La figure ci-dessus montre le fonctionnement du logiciel final où il prend une lecture, envoie un SMS, reçoit un SMS et recommence ce qu'il faisait auparavant.

Note : Tous les codes logiciels peuvent être vus dans l'annexe ci-dessous.

NOTE : tous les codes logiciels peuvent être consultés dans l'annexe. La sortie du test du modem et du test de connexion réseau n'a pas été incluse dans le rapport car le rapport réel a été fait après la soumission du matériel.

Projet connexe : Comment faire des Projets Électriques & Électroniques de Base dans LabVIEW ?

Construction du Projet et Test Logiciel

Après avoir réussi toute la conception matérielle et logicielle, il est temps pour la construction et le test du projet. Dans cette section du rapport, des détails seront donnés sur comment les différentes conceptions matérielles sont implémentées et testées. Cette section parle aussi s'il y avait un problème caché dans le code logiciel qui était important à dépanner et éliminer et pour construire le projet avec succès. Le processus étape par étape peut être vu dans le rapport de projet complet en fichier PDF donné ci-dessous tel que la procédure de construction et de test.

Test Logiciel

La phase de test logiciel est aussi un aspect important du développement du projet. Le test logiciel est une procédure d'exécution d'un programme ou application dans le but de trouver les bugs logiciels. Il peut également être exprimé comme le processus de validation et vérification qu'un programme logiciel ou application répond à ses exigences techniques, fonctionne comme prévu et peut être exécuté avec une caractéristique similaire. Pour faire le test logiciel, différentes approches ont été adoptées. Un document de spécification des exigences logicielles (SRS) a été écrit qui répondait pleinement au comportement attendu d'un système logiciel.

Projet connexe : Circuit Électronique Interrupteur Claquement avec Timer 555

ID Exigence SRS-Capteur-010
Titre Capteur
Description Les capteurs du système prennent les lectures et les renvoient au microcontrôleur.
Version V 1.0
ID Exigence SRS-Données-020
Titre Affichage des Données
Description Quand les utilisateurs essaient d'obtenir la lecture du système. L'affichage doit avoir affiché les données à l'utilisateur par exemple : valeur de température et d'humidité suivie des lectures d'humidité.
Version V1.0
ID Exigence SRS-Microcontrôleur-030
Titre Microcontrôleur
Description Le microcontrôleur dans le système agit comme le cerveau du système qui gère tout dans le système
Version V1.0
ID Exigence SRS-Latch-040
Titre Latch
Description Le latch dans le système étend les broches numériques pour le microcontrôleur
Version V1.0
ID Exigence SRS-GSM-050
Titre GSM
Description Le système réagira en envoyant une alerte SMS au destinataire chaque fois que le microcontrôleur lui dit de le faire.
Version V1.0

Après l'écriture du document SRS, la conception logicielle est passée en phase de test statique qui inclut la révision du document. C'est là que se produit la vérification des exigences. Il y a quatre types divers de méthodes de vérification définis ci-dessous :

  1. Inspection (I) : vérification visuelle ou de contrôle
  2. Analyse (A) : vérification basée sur des preuves analytiques
  3. Démonstration (D) : vérification des caractéristiques opérationnelles, sans mesure quantitative.
  4. Test (T) : vérification des caractéristiques quantitatives avec mesure quantitative. Pour chaque exigence du document SRS, une méthode de vérification est définie avec l'abréviation I, A, D et T.

Vérification :

ID Exigence Titre Exigence Méthode
REQ-010 Vérifier que les capteurs du système obtiennent des lectures I
REQ-020 Vérifier que les Données sont Affichées sur l'écran. D
REQ-030 Il est vérifié que le microcontrôleur du système gère ou fonctionne correctement car il donne 100% de résultat pour chaque requête. D
REQ-040 Vérifier que le circuit latch faisait ce qu'il est censé faire. Prendre 3 entrées et sortir 8 broches A
REQ-050 Vérifier que le SMS a été envoyé et reçu par GSM D

Résultats

Tous les tests ont été effectués avec des résultats satisfaisants. Puisqu'il n'y a pas de résultat particulier qui doit être documenté. Comme le système fonctionne avec les capteurs d'humidité et DHT11 (température et humidité) qui prennent des lectures selon la température et l'humidité actuelles de la pièce. Les lectures du capteur d'humidité dans le circuit dépendent aussi du niveau d'humidité actuel de la plante. Sinon, le résultat global sortant du circuit en termes de fonctionnalité était bon pour la motivation.

Article connexe : Programmation PWM Arduino et ses fonctions dans Arduino

Code Logiciel Final et Complet pour Systèmes d'Arrosage Automatique des Plantes & d'Irrigation

Note : Plus de codes liés au projet peuvent être trouvés dans le fichier PDF tels que Code Exemple pour Tester Électrovanne, Code pour Tester Capteurs Système, Code Test Modem GSM, Code Connexion Réseau GSM, Code GSM Envoie Alerte SMS, Code GSM Reçoit SMS,

Code Final Projet Arrosage Automatique Plantes

#include <dht.h> #define dht_dpin A0 dht DHT; //———————– #include <LiquidCrystal.h> LiquidCrystal lcd (8, 9, 10, 11, 12, 13); //———————————- int plantPotMoisture[3] = {A1, A2, A3}; //——————— #include <GSM.h> #define PINNUMBER “” GSM gsmAccess; // include a ‘true’ parameter for debug enabled GSM_SMS sms; char remoteNumber[] = “0899506304”; String moistureMessage = “Moisture is Low on sensor: “; String SMS_Alert = “Sending SMS!”; String humidityMsg = “Humidity is High. Open All Solenoids”; String tempMsg = “Temperature is too HIGH!..Open ALl Solenoids “; String messageBuffer = “”; char senderNumber[20]; String stringOne = “Opens1”; String stringTwo = “Opens2”; String stringThree = “Opens3”; String stringFour = “OpenAll”; //————— #define solenoidData 5 #define solenoidClockster 4 #define solenoidLatch 6 //————— const int master = 0; const int slave1 = 1; const int slave2 = 2; const int slave3 = 3; boolean takeReadings = true; int serialSolenoidOutput = 0; void setup() { pinMode(solenoidData, OUTPUT); pinMode(solenoidClockster, OUTPUT); pinMode(solenoidLatch, OUTPUT); digitalWrite(solenoidLatch, HIGH); digitalWrite(solenoidLatch, LOW); shiftOut(solenoidData, solenoidClockster, MSBFIRST, 0); digitalWrite(solenoidLatch, HIGH); //————————- Serial.begin(9600); lcd.begin (16, 2); lcd.clear(); lcd.setCursor(0, 0); lcd.print(“Wait Until”); lcd.setCursor(0, 1); lcd.print(“GSM Initialized!”); boolean notConnected = true; while (notConnected) { if (gsmAccess.begin(PINNUMBER) == GSM_READY) notConnected = false; else { Serial.println(“Not connected”); delay(1000); } } } void loop() { if (takeReadings) { moistureSensor(); TempAndHumidity (); if (DHT.humidity > 50 || DHT.temperature > 25 && takeReadings ) { takeReadings = false; if (DHT.humidity > 50) { sendSMS(humidityMsg); } else if (DHT.temperature > 25) { sendSMS(tempMsg); } while (!takeReadings) recieveSMS(); } if (plantPotMoisture[0] > 30 || plantPotMoisture[1] > 30 || plantPotMoisture[2] > 30 && takeReadings) { takeReadings = false; if (plantPotMoisture[0] > 30) { sendSMS(moistureMessage + “1”); } else if (plantPotMoisture[1] > 30) { sendSMS(moistureMessage + “2”); } else { sendSMS(moistureMessage + “3”); } while (!takeReadings) recieveSMS(); } } } void moistureSensor() { for (int i = 0 ; i < 3; i++) { lcd.clear(); plantPotMoisture[i] = analogRead(i); plantPotMoisture[i] = map(plantPotMoisture[i], 550, 0, 0, 100); Serial.print(“Mositure” + i ); lcd.print(“Mositure” + i); Serial.print(plantPotMoisture[i]); lcd.print(plantPotMoisture[i]); Serial.println(“%”); lcd.print(“%”); delay(1000); } } void TempAndHumidity () { DHT.read11(dht_dpin); lcd.setCursor(0, 0); lcd.print(“Humidity=”); Serial.print(“Current humidity = “); Serial.print(DHT.humidity); lcd.print(DHT.humidity); lcd.print(“%”); Serial.print(“%”); Serial.print(“temperature = “); Serial.print(DHT.temperature); Serial.println(“C”); lcd.setCursor(0, 1); lcd.print(“temp=”); lcd.print(DHT.temperature); lcd.print(“C “); delay(1000); lcd.clear(); } void sendSMS(String messageToSend) { Serial.print(“Sending a message to mobile number: “); Serial.println(remoteNumber); Serial.println(“SENDING”); lcd.print(SMS_Alert); Serial.println(); Serial.println(“Message:”); Serial.println(messageToSend); sms.beginSMS(remoteNumber); sms.print(messageToSend); sms.endSMS(); Serial.println(“\nCOMPLETE!\n”); lcd.clear(); lcd.print(“Completed!!!”); } void recieveSMS() { char c; if (sms.available()) { lcd.clear(); lcd.print(“Message received from:”); delay(800); lcd.clear(); sms.remoteNumber(senderNumber, 20); lcd.print(senderNumber); while (c = sms.read()) { Serial.println(c); messageBuffer += c; } Serial.println(messageBuffer); if (messageBuffer == stringOne) { toggleSolenoid1(); takeReadings = true; } else if (messageBuffer == stringTwo) { toggleSolenoid2(); takeReadings = true; } else if (messageBuffer == stringThree) { toggleSolenoid3(); takeReadings = true; } else if (messageBuffer == stringFour) { toggleAll(); takeReadings = true; } else { takeReadings = true; } messageBuffer = “”; Serial.println(“\nEND OF MESSAGE”); // Delete message from modem memory sms.flush(); Serial.println(“MESSAGE DELETED”); } delay(1000); } void toggleSolenoid1() { solenoidWrite(master, HIGH); delay(1000); solenoidWrite(slave1, HIGH); delay(1000); solenoidWrite(slave1, LOW); delay(1000); solenoidWrite(master, LOW); delay(1000); } void toggleSolenoid2() { solenoidWrite(master, HIGH); delay(1000); solenoidWrite(slave2, HIGH); delay(1000); solenoidWrite(slave2, LOW); delay(1000); solenoidWrite(master, LOW); delay(1000); } void toggleSolenoid3() { solenoidWrite(master, HIGH); delay(1000); solenoidWrite(slave3, HIGH); delay(1000); solenoidWrite(slave3, LOW); delay(1000); solenoidWrite(master, LOW); delay(1000); } void toggleAll() { solenoidWrite(master, HIGH); delay(1000); solenoidWrite(slave1, HIGH); delay(1000); solenoidWrite(slave2, HIGH); delay(1000); solenoidWrite(slave3, HIGH); delay(1000); solenoidWrite(slave1, LOW); delay(1000); solenoidWrite(slave2, LOW); delay(1000); solenoidWrite(slave3, LOW); delay(1000); solenoidWrite(master, LOW); delay(1000); } void solenoidWrite(int pin, bool state) { if ( pin >= 0 && pin < 8) { if (state) serialSolenoidOutput |= (1 << pin); else serialSolenoidOutput &= ~(1 << pin); } digitalWrite(solenoidLatch, LOW); shiftOut(solenoidData, solenoidClockster, MSBFIRST, serialSolenoidOutput); digitalWrite(solenoidLatch, HIGH); }

Rapport de Projet Complet Système d'Arrosage Automatique des Plantes (PDF) Téléchargement Gratuit

Système d'Arrosage Automatique des Plantes PDF 4,18Mo 77 Ici

Article connexe : Comment Concevoir un PCB (Pas à Pas & Vues Illustrées)

À propos de l'auteur

-Département d'Ingénierie École d'Informatique & d'Ingénierie Institut de Technologie, Blanchardstown Dublin 15


Technologie industrielle

  1. Modes de défaillance courants dans les systèmes électriques éprouvés
  2. Système d'ouverture automatique de porte piloté par capteur PIR : circuit, fonctionnement et applications
  3. SERENA : Système d'Alarme Arduino Mega 2560 Personnalisé avec Écran Tactile TFT LCD
  4. Système d'arrosage automatique pour plantes piloté par Arduino
  5. Système d'arrosage intelligent pour plantes d'intérieur avec Arduino Nano
  6. Réussite de la Migration de Système de Contrôle : Stratégies Expertes pour une Transition Fluide
  7. Principales Violations du Code Électrique à Éviter pour la Sécurité Domestique
  8. Guide complet des systèmes de transmission automatique
  9. Systèmes de lubrification centralisée automatique : types, composants et bénéfices