En raison de spams récurrents, les messages des nouveaux inscrits sont modérés a priori. Ne vous inquiétez pas si vous ne voyez pas apparaitre votre message immédiatement sur le forum. (November 04, 2021) x

Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5

Poulailler connecté
#1

Bonjour,

comme expliqué dans ma présentation de débute la programmation sur Raspberry par une projet de poulailler connecté.

L'idée est de piloter une porte Omlet déjà existante en remplaçant le boitier Omlet par un Raspberry. J'aimerai dans un premier temps gérer ouverture et fermeture en utilisant l'heure de lever-coucher du soleil via un service en ligne ou un calendrier perpétuel.
Deuxième étape un petit site web pour pouvoir ouvrir ou fermer la porte à distance.
Troisième étape, des bagues RFID pour les poules pour savoir si elles sont toutes rentrées et si on peut fermer la porte ou s'il faut attendre et éventuellement m'alerter de l'absence de l'une d'elles.

Pensez-vous que ce soit réalisable pour un débutant sur Raspberry mais qui a déjà quelques expériences en dotnet et d'autres langages ?
Quel Raspberry commander pour cela ?

Merci par avance pour votre aide Smile
Répondre
#2

Bonjour,

j'avance gentiment sur mon projets, j'ai reçu ce matin mon RPI4 2gb. J'ai activé le SSH, installé apache et PHP mais pour le moment ça reste dans mes compétences.

Demain je reçois une breadboard et quelques composants pour commencer à jouer un peu.

J'aimerai contrôler une led via le serveur web intégré, j'ai trouvé ce tuto :
Raspberry Pi Webserver Tutorial - How to Control LED with Raspberry Pi Webserver using Apache (iotdesignpro.com)

Mais il semble que wiring-pi soit deprecated et donc ça ne fonctionnera pas.

Pouvez-vous me dire de quelle façon de dois procéder ? J'ai vu des script Python pour allumer ou éteindre une led. Est-ce que je dois les lancer depuis la page web ou cela doit se faire d'un autre façon ?

Merci pour votre aide Smile
Répondre
#3

As-tu jeté un oeil sur https://www.framboise314.fr/une-interfac...pberry-pi/ ?
Ce que je n'aime pas, c'est de donner les droits root à apache, mais dans ton cas ça ne devrait pas poser de souci car j'imagine que c'est une utilisation purement locale
Répondre
#4

(30-06-2022, 13:29:53)CrazyCat a écrit :  As-tu jeté un oeil sur https://www.framboise314.fr/une-interfac...pberry-pi/ ?
Ce que je n'aime pas, c'est de donner les droits root à apache, mais dans ton cas ça ne devrait pas poser de souci car j'imagine que c'est une utilisation purement locale

Salut, oui j'ai vu ce tuto et j'en ai trouve quelques autres aussi, je vais faire ma tambouille avec.

Ma breadboard est arrivé dans la boite au lettre à la maison, je vais bricoler un peu ce soir. En cherchant un peu, il semble qu'aujourd'hui la bonne façon de faire soit de créer des script python et de les exécuter avec un ShellExec depuis PHP.

Au niveau sécurité effectivement à part un renard qui sache se loguer en SSH je ne pense pas qu'on prenne de gros risques Wink
Répondre
#5

Toujours se méfier d'un renard Smile
Répondre
#6

On avance mais on est à nouveau bloqués :
grâce à ce petit tuto : Allumer et éteindre une LED avec la Raspberry Pi et Python. (raspberry-pi.fr) j'arrive à allumer/éteindre une led.

Maintenant j'essaie de faire pareil via PHP avec la balise :
Code PHP :
<b><?php echo "coucou"?></b></br>
<?php echo date('Y-m-d H:i:s'); ?></br>
<?php 

$command 
escapeshellcmd('/home/nico/electronic/led.py');
$output shell_exec($command);
echo 
$output;

?>
quand j'exécute la page, les deux premières balises s'affichent mais la led ne s'allume pas et je ne n'ai pas de output.

Plus surprenant, si je mets le contenu du script dans un fichier .py dans le même dossier que le PHP j'ai cette erreur à l'exécution :

Code :
[email protected]:/var/www/html $ /var/www/html/test.py                         
Traceback (most recent call last):
  File "/var/www/html/test.py", line 11, in <module>
    GPIO.setup(LED, GPIO.OUT) #Active le contrôle du GPIO
ValueError: The channel sent is invalid on a Raspberry Pi

là j'avoue que je ne comprends pas.

Si quelqu'un peu m'aider ce serait sympa Smile
Répondre
#7

Est-ce que le script python fonctionne lorsque tu es "simple utilisateur" (sans sudo ni être root) ?
Si oui, tu peux essayer de mettre un chdir('/home/nico/electronic/'); avant ton shell_exec().

EDIT : petite question stupide: quitte à avoir installé apache, pourquoi ne pas développer directement ton site en python (cgi-script) pour ne pas avoir à utiliser des shell_exec et avoir autant que possible tout l'environnement python chargé ?
Répondre
#8

(01-07-2022, 07:45:59)CrazyCat a écrit :  Est-ce que le script python fonctionne lorsque tu es "simple utilisateur" (sans sudo ni être root) ?
Si oui, tu peux essayer de mettre un chdir('/home/nico/electronic/'); avant ton shell_exec().

EDIT : petite question stupide: quitte à avoir installé apache, pourquoi ne pas développer directement ton site en python (cgi-script) pour ne pas avoir à utiliser des shell_exec et avoir autant que possible tout l'environnement python chargé ?

Ok j'essaye ça ce soir Wink
Merci !
Répondre
#9

Salut,

J’avance doucement, surtout par manque de temps libre mais j’avance quand même.

J’ai trouvé un super projet d’un gars qui a mis tout pe sa doc et ses sources à disposition et je suis donc en train d’adapter ce qu’il a fait à mon projet.

Il utilise Node-Red pour la partie logique et l’UI Web. Bref, je dois avancer sur cette partie mais partir d’un projet déjà fonctionnel pour l’adapter est beaucoup plus facile pour moi.

L’autre aspect technique où je suis très démuni c’est l’électronique. J’ai donc priorisé cet aspect pour vérifier que je ne serais pas bloqué.

L’idée est donc la manipulation d’une porte coulissante déjà existante en essayant de reproduire le fonctionnement du contrôleur d’origine pour cette manipulation.
Je tiens aussi à une certaine réversibilité, c’est à dire que si je rebranche l’ancien contrôleur cela doit fonctionner.
Nous avons donc un connecteur molex a 4 pins. Deux pour le détecteur d’écrasement d’une poule (une grande patte sur ressort qui ferme un poussoir quand on appuie dessus) et deux pour le moteur.

Ce qui m’interroge c’est qu’il y a un système de détection de fin de course car dès que la porte est fermée on l’entend forcer 1/2 seconde et s’arrêter. Idem dans l’autre sens.

Comment reproduire ce comportement juste avec 2 fils ?

Merci Smile
Répondre
#10

Sans documentation technique du contrôleur initial, c'est assez difficile de te répondre.
Mais est-ce qu'il y a réellement des fins de course ? Ca ne pourrait pas être un système qui mesure la consommation du moteur ? s'il consomme plus qu'un certain seuil, c'est qu'il force (porte en butée donc) et on coupe l'alimentation ?
Répondre
#11

(06-07-2022, 08:49:30)CrazyCat a écrit :  Sans documentation technique du contrôleur initial, c'est assez difficile de te répondre.
Mais est-ce qu'il y a réellement des fins de course ? Ca ne pourrait pas être un système qui mesure la consommation du moteur ? s'il consomme plus qu'un certain seuil, c'est qu'il force (porte en butée donc) et on coupe l'alimentation ?

C'est exactement ça, j'ai ouvert un topic sur un forum d'électronique et il m'on confirmé que c'était très courant et très fiable.

L'un d'entre eux m'a conseillé un petit truc tout fait :
https://fr.aliexpress.com/item/1005004261827985.html

Est-ce que j'ai bien compris ce qu'il fait :
- Il intègre le relais du moteur qui permet de le faire fonctionner dans un sens ou dans l'autre
- Il se calibre seul pour détecter la valeur de courant normal en manœuvre puis en blocage

Mais est-ce qu'il peut renvoyer un état ouvert ou fermé au Raspberry ? Est-ce que le Raspberry peut lui commander l'ouverture et la fermeture ?

Encore merci pour ton aide Smile
Répondre
#12

Le problème est qu'il n'y a pas de doc technique à propos de ce module, il faudrait donc demander à celui qui te l'a conseillé (en espérant qu'il l'utilise) les possibilités.
Répondre
#13

(06-07-2022, 10:09:40)CrazyCat a écrit :  Le problème est qu'il n'y a pas de doc technique à propos de ce module, il faudrait donc demander à celui qui te l'a conseillé (en espérant qu'il l'utilise) les possibilités.

Oui, il semble penser qu'il ne faut l'utiliser qu'en mesure du courant et de gérer la manœuvre via le Raspberry.

Voici le sujet si ça t'intéresse :
[Autre] Projet de poulailler connecté (futura-sciences.com)
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)