Omarito
Posts: 8
Joined: Wed Mar 19, 2014 7:58 am

Projet SIN Aquarium

Wed Mar 19, 2014 9:53 am

Bonjour,
Etant en STI2D option SIN, comme projet de fin d'année, on doit gérer, automatiser à distance un aquarium, niveau d'eau, température, éclairage, nourriture ...
Ma tâche étant de créer un serveur et placer une caméra dans l'aquarium et de visualiser celle-ci en streaming à partir d'un site web qu'on créera.
J'ai fais mon serveur à partir d'une raspberry pi.
J'ai configuré la carte SD, installer Debian Wheezy. La carte SD configurer, la raspberry prête à l'emploi, j'ai installer, apache, sqlite et php. Dans le fichier index.php dans /var/www j'ai entrer "< ?php phpinfo (); ?>" pour voir si le php fonctionnait. Le php fonctionne correctement. Je dois à présent programmer le GPIO, j'ai créer une nouvelle page php "acquisiton.php" dans laquelle, j'utilise cron pour pouvoir acquérir les signaux des différents capteurs de l'aquarium, j'entre dans la console de commande et je tape:

crontab -e
* / 1 * * * * /var/www/acquisition.php


Maintenant je dois programmer ma page php, comment dois-je m'y prendre ?

Merci d'avance

danjperron
Posts: 3454
Joined: Thu Dec 27, 2012 4:05 am
Location: Québec, Canada

Re: Projet SIN Aquarium

Wed Mar 19, 2014 11:16 pm

As-tu regardé mon post sur mon DIY terrarium

J'ai du code PHP et python dans ce projet si cela peut d'aider.

Il n'est pas complet mais cela te donnera une idée.
Je suis en train de faire le système pour le chauffage et il me reste à faire les horloges ON/OFF et la page web pour la configuration.

Il y a comment brancher un caméra avec mjpg-streamer et comment faire du time lapse avec incrustation des données de température, un remote avec des servos pour manipuler la caméra et un boutton de capture d'écran.
J'utilise deux sortes de capteurs de température, le ds18B20 et le DHT22. (DHT22 n'est pas bon pour un aquarium ;-) )

http://www.raspberrypi.org/phpBB3/viewt ... 48#p502948

Daniel

User avatar
Yaug
Posts: 126
Joined: Thu Jan 03, 2013 1:52 pm
Location: France, Moselle
Contact: Website

Re: Projet SIN Aquarium

Thu Mar 20, 2014 8:03 am

Omarito wrote: Maintenant je dois programmer ma page php, comment dois-je m'y prendre ?

Merci d'avance
Qu'est censé faire ton script php exactement ?
Lire les capteurs ?
Dans ce cas, il te faudrait plutôt un script python PHP n'étant pas spécialement fait pour ça.
Et ce script python enregistrerais en base ou enverrait les données recueillies à un script php qui lui enregistrerait en base par exemple
Organisateur d'aPiro : http://forum.raspfr.org/viewtopic.php?id=6
Domotique DIY : http://ydle.fr
Communauté française : http://forum.raspfr.org/
RaspberryGeek / http://manuel-esteban.com

vinzouille
Posts: 33
Joined: Tue Jun 25, 2013 9:12 am

Re: Projet SIN Aquarium

Thu Mar 20, 2014 8:12 am

Salut,

Je sais pas si je suis hors sujet ou non mais ce que je ferais qui serait plus simple à mettre en oeuvre serait de:
- faire un script shell (ou python) lancé par cron qui ira lire les valeurs de tes différents capteurs a intervalles réguliers (genre toutes les heures) et qui log ces valeurs dans un fichier txt ou xml
- avoir un php qui te servira à consulter les valeurs consignées dans ce fichier.

En espérant t'avoir aidé :)

Edit: J'avais pas vu le post de Yaug même idée en fait :)

danjperron
Posts: 3454
Joined: Thu Dec 27, 2012 4:05 am
Location: Québec, Canada

Re: Projet SIN Aquarium

Thu Mar 20, 2014 11:21 am

Salut Vinzouille,


c'est exactement ce que mon code php fait. Dans mon document, vers la fin , j'ai BoucleAsservie.py qui regarde les entrées et sorties, récupère les valeurs des capteurs , Analyze les données pour la gestion des éléments chauffants , ajuste les sorties GPIOs en conséquence et finalement enregistre un fichier, /tmp/systeme.xml , dans le répertoire en mode tmpfs pour que le code php puisse extraire l'information. BoucleAsservie.py est dans crontab et roule à chaque minute, il fait trois boucle de 20 secondes chacune . Je le laisse sur crontab au cas ou il plante (meilleur façon d'être certain qu'il récupère.

Il me reste à faire le code php à faire pour la configuration du système. En gros il lira et ajustera le fichier /tmp/systeme.xml et le master qui est présentement sur /home/pi/systeme.xml pour ajouter des entrées,sorties, capteurs ou relais. Il est présentement en mode alpha. J'ajoute et je change souvent le code mais ça marche.

Omarito
Posts: 8
Joined: Wed Mar 19, 2014 7:58 am

Re: Projet SIN Aquarium

Mon Mar 24, 2014 10:11 pm

Merci Beaucoup pour toutes vos informations claire et précise, si j'ai un soucis, je posterais :D

Omarito
Posts: 8
Joined: Wed Mar 19, 2014 7:58 am

Re: Projet SIN Aquarium

Wed Mar 26, 2014 7:52 am

danjperron wrote:As-tu regardé mon post sur mon DIY terrarium

J'ai du code PHP et python dans ce projet si cela peut d'aider.

Il n'est pas complet mais cela te donnera une idée.
Je suis en train de faire le système pour le chauffage et il me reste à faire les horloges ON/OFF et la page web pour la configuration.

Il y a comment brancher un caméra avec mjpg-streamer et comment faire du time lapse avec incrustation des données de température, un remote avec des servos pour manipuler la caméra et un boutton de capture d'écran.
J'utilise deux sortes de capteurs de température, le ds18B20 et le DHT22. (DHT22 n'est pas bon pour un aquarium ;-) )

http://www.raspberrypi.org/phpBB3/viewt ... 48#p502948

Daniel
Bonjour,

Est-ce que c'est le même procédé que pour la caméra Raspberry ?

danjperron
Posts: 3454
Joined: Thu Dec 27, 2012 4:05 am
Location: Québec, Canada

Re: Projet SIN Aquarium

Wed Mar 26, 2014 11:21 am

Je ne pense pas,

Mais je sais qu'il y a eu beaucoup d'avancement sur la Pi cam . Il faudrait que je vérifie.

Je n'utilise pas la Pi cam pour ce projet parce que j'utilise des R/C servos sur des axes et que la caméra est normalement à plus d'un mètre (juché en hauteur).

Daniel

Omarito
Posts: 8
Joined: Wed Mar 19, 2014 7:58 am

Re: Projet SIN Aquarium

Thu Mar 27, 2014 10:25 am

En fait, sur l'aquarium, on va programmer une carte PIC, qui va acquérir les données des capteurs et qui va les communiquer à la Raspberry, donc est-ce que ça serai le même procédé, si non comment m'y prendre ?

Merci d'avance

danjperron
Posts: 3454
Joined: Thu Dec 27, 2012 4:05 am
Location: Québec, Canada

Re: Projet SIN Aquarium

Thu Mar 27, 2014 11:16 am

Et bien c'est encore plus simple.

Quel genre de carte PIC. Un pic32? faburino? ou simplement un pic16 ou pic18?

Tu as le choix .

1- Choisi le mode de communication, ttl série, RS-485, I2C,CAN-BUS, SPI, bluetooth ou USB.
2- Ajoute une fonction pour lire les données suivant le mode de communication.
3- Et finalement active les sorties selon tes paramètres.

Je vois un simple ajout de fonction.


Daniel

danjperron
Posts: 3454
Joined: Thu Dec 27, 2012 4:05 am
Location: Québec, Canada

Re: Projet SIN Aquarium

Thu Mar 27, 2014 11:30 am

Pour seulement 1 PIC, le ttl série est le plus simple.
Si c'est un faburino ou une version pic de l'arduino, l'option USB est envisageable.

Si il y a plusieurs PICs, le I2C est une bonne option. Si c'est loin et que tu veux brancher plusieurs modules PIC, alors le RS-485 ou le CAN-BUS est de rigueur. (CAN-BUS n'est pas vraiment pour débutant).

J'ai fait un DIY pour un système de détection d'eau qui utilise le RS-485 avec un PIC et le Raspberry Pi.

Version Française

https://docs.google.com/document/d/18GW ... sp=sharing

Version Anglaise

https://docs.google.com/document/d/1YN4 ... sp=sharing


Daniel

Omarito
Posts: 8
Joined: Wed Mar 19, 2014 7:58 am

Re: Projet SIN Aquarium

Thu Apr 03, 2014 9:31 am

On a le Pic 16F876 et 16F877 sur carte Matrix, on utilise Flowcode pour pouvoir le programmer, pour le mode de communication on peut travailler soit en parallèle ou en série (0-5v ; i2c)

danjperron
Posts: 3454
Joined: Thu Dec 27, 2012 4:05 am
Location: Québec, Canada

Re: Projet SIN Aquarium

Thu Apr 03, 2014 11:15 am

Et bien je ne connais pas Flowcode et leur kit disponible.

Si ton système n'a pas besoin d'être loin du RPi. utilise le I2C.

Si tu veux quelque chose de simple, le TTL série est de loin le plus simple.

Si tu veux brancher plusieurs modules avec une bonne distance entre eux, utilise le RS-485. Et Pour le RS-485 ,
le protocole modbus est simple et facile à ajouter puisque le code python est déja disponible.(minimal modbus)
Pas besoin de réinventer la roue ;-)

Daniel

jareczek
Posts: 170
Joined: Tue Jul 23, 2013 2:45 pm
Location: Auvergne

Re: Projet SIN Aquarium

Sun Apr 13, 2014 7:20 pm

Les 877 et 876 n'ont pas de port parallèle (le PSP n'est pas un port de communication)

L'utilisation de l'EUSART libère une pin (par rapport à SPI et IIC) pour une entrée de CAN

Par l'intermédiaire d'un convertisseur RS232 (ou plus si affinité) avec une paire torsadée de chez France Télécom

On peut aller très loin et très vite

Et votre cahier des charges ? :mrgreen:
Sauf erreur ou omission . . .

Return to “Français”