Poulailler Automatique Intelligent et connecté au web !

image principale Poulailler Automatique Intelligent et connecté au web !

Difficulté:

Ce projet consiste en la réalisation d’un poulailler complétement automatisé et connecté au web. Le poulailler est capable de gérer intelligemment la fermeture et l’ouverture de la porte principale à des heures différentes suivant les saisons, mais aussi en cas de coupure électrique. A savoir que la porte principale est verrouillée par un loquet automatisé, ce qui permet d’éviter l’intrusion de fouines qui pourraient venir gratter la porte et s’introduire à l’intérieur. Il est capable de gérer ses portes donnant accès au pondoir, ce qui évite aux poules d’aller dormir et salir celui-ci la nuit. Il est en mesure de nous fournir la température et l’humidité interne et externe au poulailler. De plus, étant équipé d’une lampe chauffante Infra rouge, il est capable de gérer la température en interne lors de gros froids. Il est aussi équipé d’un système d’éclairage afin que les poules le repère de loin le soir. Enfin il est connecté à la mangeoire ce qui nous permet de savoir s’il reste de la nourriture ou non dans la trémie. A savoir que les informations recueillies par l’arduino sont affichées sur un écran LCD et que le boitier contient différentes LED correspondant à un message spécifique. Ce qui est bien pratique lorsque votre poulailler est au fond du jardin et que vous voulez vérifier que tout se passe bien sans aller dehors sous la pluie. Et le meilleur, c’est que toutes ces informations sont relayées à travers une deuxième carte arduino qui va tout retransmettre à un serveur web. Ainsi nous obtenons une page web nous permettant de consulter l’état de notre poulailler depuis n’importe où, y compris depuis smartphone.

Matériel :

Budget : Non défini

Fichiers :

Etape 1 : La création de l'arduino principale

TOUT LE PROCESSUS DE CREATION et toutes les explications sont dans le dossier technique joint : Poulailler_Connect_.pdf


Elle consiste a monter la première carte :

La première carte est une ARDUINO MEGA, celle-ci est connectée à l’électronique suivante :

- Un écran LCD 4 Lignes.

- Un Relais pour le chauffage.    

- Une horloge (module RTC).

- Des servos :

             Servo PortePondoir (servo a rotation continue)

            Servo Verrou               

            Servo Moteur Porte     

- D’un relais pour gérer le chauffage et l’éclairage.

 

- De capteur de température et d’humidité (2 modules DHT11)

- D’interrupteurs :

           Interrupteur magnétique pour la fermeture.

           Interrupteur magnétique pour l’ouverture.                      

           Interrupteur à bille pour la détection de la nourriture dans la mangeoire.

           Interrupteur pour les Infos

           Interrupteur pour le Mode manuel porte   

           Interrupteur pour le Mode Test Matos        

De LED :

           Ouvert - Blanche       

           Fermee - Bleue         

           Chauffage - Rouge      

           LED Vert                   

           LED Orange 1

           LED Orange 2              

           LED Rouge 1                

           LED Rouge_2        

           LED Rouge 3                

 

De résistances diverses.


Connectivité – Branchement des modules de la premiere carte :

Ecran 2004 lcd :

PIN 1 --> GND

PIN 2 --> 5V

PIN 3 --> milieu du 10 K les deux autres au + et - inverser si pb constaté

PIN 4 --> 12 PIN MEGA 2560

PIN 5 --> GND

PIN 6 --> 11 PIN MEGA 2560

PIN 7 -->

PIN 8 -->

PIN 9 -->

PIN 10 -->

PIN 11 --> 5 PIN MEGA 2560

PIN 12 --> 4 PIN MEGA 2560

PIN 13 --> 3 PIN MEGA 2560

PIN 14 --> 2 PIN MEGA 2560

PIN 15 --> 5V via 220

PIN 16 --> GND

////////////////////////////////////////////////////////////////////////////////////////////////////

PIN ARDUINO MEGA 2560

//0           - X -

//1           - X -

//2          lcd

//3          lcd

//4          lcd

//5          lcd

//6          LED Ouvert - Blanche        - LED

//7          LED Fermee - Bleue          - LED

//8          LED Chauffage - Rouge       - LED

//9          LED Vert                    - LED

//10        LED Orange 1                - LED

//11        lcd

//12        lcd

//13        LED Rouge 3                 - LED

//18       Relais Chauffage         - RELAIS

//20       RTC_SDA                  - HORLOGE

//21       RTC_SCL                  - HORLOGE

//22       laison serie // RX

//23       laison serie // TX

//37     LED Rouge 1                 - LED

//38     LED Orange 2                - LED

//39     Servo PortePondoir          - SERVO

//40     Servo Verrou                - SERVO

//41     Servo Moteur Porte          - SERVO

//43     Relais Eclairage         - RELAIS

//47     Led Rouge_2         - LED

//48     DHT11 Ext               - TEMPERATURE

//49     DHT11 Int               - TEMPERATURE


//A0     InterF - INTERRUPTEUR

//A1     InterO - INTERRUPTEUR

//A2     Inter Infos - INTERRUPTEUR

//A3     Inter Mode manuel porte - INTERRUPTEUR

//A4

//A5     Inter Food - INTERRUPTEUR

//A6     Inter Test Matos - INTERRUPTEUR



Architecture du programme de la première carte : 

Definition des modules lcd

Definition des modules Servo

Définition des broches utilisées pour capteur DHT 11 et bibliothèques associées

Définition des broches utilisées pour les Inter

Definition des broches utilisees par les leds de la porte

Définition des broches utilisées pour module Relais éclairage

Definition Relais chauffage

Définition des broches utilisées pour module RTC & Bibliothèques associées

Définition des broches utilisées pour les autres capteurs

setup()

             // Initialisation du port serie

             // Affichage d'un message de start

             // Définition des outputs pour led ouvert-ferme

             // Définition des output pour LED  Chauff

             // Définition des variables panneau led infos

             // Définition des inputs pour les micro rupteurs

             // Définition des inputs pour le micro rupteur InterFood

             // Définition des inputs pour InterTestMatos

             // Définition de l'inter info

             // Définition de l'inter mode manuel

             // Définition des outputs pour Relais Lumiere

             // Définition des outputs pour Relais_Servos

             // Définition des outputs pour Relais Chauff

             // Définition des outputs pour lcd

 

loop()

             // Boucle Initiale

             // Lecture des capteurs

             // Affichage des informations

             // Gestion des actions

             // Gestion des actions manuelles via interrupteurs

             // Detection des erreurs

            

// fonctions appelées dans le loop

First_Init()

LectureRTC()

LectureTemperature()

LectureHumidite()

LectureInterF()

LectureInterO()

LectureInterModeManuel()

LectureInterInfos()

LectureInterTestMatos()

LectureInterFood()

GestionAffichageLED()

AffichagePrincipal()

GestionPondoir()

GestionPortePondoirMatin()

GestionPortePondoirSoir()

GestionEclairageExt()

ChauffagePostFermeture()

Chauffage()

GestionPortePrincipale()

OuverturePorte()

FermeturePorte()

DetectionBloquage()

AffichageVersion()

GestionTest_Matos()

Test_Matos()

GestionAffichageInfos()

AffichageInfos()

Conversion()

Envoie_Infos()                                                                  


Pour le programme et les bibliotèques télécharger le fichier Carte 1 Arduino Mega.zip




Etape 2 : La création de l'arduino servant à relayer les informations au serveur

TOUT LE PROCESSUS DE CREATION et toutes les explications sont dans le dossier technique joint : Poulailler_Connect_.pdf


Elle consiste a réaliser la deuxieme carte arduino qui va retranscrire les informations au servuer SQL

Modules de la deuxieme carte :

    - Module ethershield

 

Connectivité – Branchement des modules de la deuxieme carte :

Port serie (11, 10); // RX, TX donc  10 au 22 et 11 au 23


Architecture du programme de la deuxieme carte

// Définition des broches utilisees pour module serie et bibliotheques associees

// Variable tampon de reception.

// Reception des infos caractere par caractere

// Declaration des variables qui seront envoyées sur le serveur SQL

// Definition des broches utilisees pour module ethernet et bibliotheques associees

setup()

             // Ouverture du port info

             // Ouverture du port serie

             // initialisation de la carte RX

             // Start Ethernet connection:

 

LOOP

             // Recuperation des donnes du port serie

             // Envoie de la requete au SRV SQL

 

Fonctions

// Fonction -  Connexion HTTP

// Fonction -  Requete HTTP

// Fonction -  Recuperation des donnes via la liaison serie



Pour le programme et les bibliotèques télécharger le fichier Carte 2 Arduino Uno & Ethershield.zip

Etape 3 : La création du serveur web


TOUT LE PROCESSUS DE CREATION et toutes les explications sont dans le dossier technique joint : Poulailler_Connect_.pdf


Elle consiste à créer et parametrer le serveur :

Construction du serveur WEB.

Celui ci doit bien evidemment detenir APACHE pour le HTML, PHP mais aussi MySQL, personellement j’ai aussi ajouté phpmyadmin pour une utilisation aisée de la base de donnée.

Dans le dossier Carte 3 Raspberry Pi se trouve ceci :

* Images = contient les images du site.

* Style.css =  ça parle de lui-même et idem pour ie7 et responsive.

****.js = Tous les fichiers.js sont à laisser tel quel.

* Index.html = fichier principal de l’interface web c’est ici que l’on va configurer l’adresse de votre serveur afin que l’arduino pointe bien dessus.

* recapitulatif.php est le fichier qui va aller interroger la base de donnée et les afficher dans la page html.

C’est lui qui aura l’intelligence d’interpreter les infos de la base de donnée et de les retranscrire en texte.

Dans cet exemple, la base créée sera Poulailler et la table TablePoulailler , et pour ma part login et m.d.p égal à poulailler

* conec.php sera le fichier servant a la connexion au serveur

* update.php sera la page ou l’arduino (carte2) va envoyer ses infos.

C’est via cette page que les données de l’arduino vous être pushée sur le servuerSQL (c’est en fait juste une requete sql update):

Lors de la création de la base, faire bien attention a ce que vous saisissez ainsi qu’a la casse.

Toutes les infos dans la piece jointe Carte 3 Raspberry Pi.zip

Etape 4 : Cocher le petit j'aime ce tuto, merci !

Sources :

concours DIY Arduino


Bonjour, super idée !! Pour ma part je serai juste intéressée par la fermeture automatique de la porte (et ouverture ) pour les jours où nous sommes absents . Quelles sont les étapes à suivre du coup. Merci 

Bonjour

Pareillement quelle sont les etapes pour une ouverture fermeture simple. Sinon je vais pe perdre dans tout ça. Ca m’a l’air compliqué a faire…

Ces tutoriels devraient vous plaire

vignette Réparer sa combinaison en néoprène
Réparer sa combinaison en néoprène
vignette DIY SPÉCIAL JARDIN : UN PETIT COIN À PLANTES GRASSES
DIY SPÉCIAL JARDIN : UN PETIT COIN À PLANTES GRASSES
vignette Créer une mangeoire barrique
Créer une mangeoire barrique
avaatar Aurélien CHATELET

Aurélien CHATELET

Suivre

Vues: 6002
Mis en favoris: 18

Découvrez d'autres tutoriels de

Aurélien CHATELET

Découvrez tous les tutoriels partagés sur Oui Are Makers

Powered by Oui Are Makers