Comme beaucoup, je souhaite me lancer dans la création d’un système totalement autonome d’ouverture automatique d'une porte de poulailler.
Ma mère souffrant de la maladie de Parkinson, elle n’est plus en mesure de monter les 5 marches qui la sépare du petit jardin où se trouve le poulailler.
Il est possible d’en acheter un dans le commerce mais quand on voit les prix totalement dingues qui vont de 125 à 200€, je ne peux pas me le permettre.
Je préfère préciser dès maintenant que je suis totalement novice en matière d’électronique et de codage.
INTRODUCTION
Voici le cahier des charges :
-Ouverture et fermeture en fonction de la luminosité
-Système indépendant en énergie
Plutôt simple, n’est-ce pas.
Les recherches effectuées sur le sujet... :
Ma principale source d’information est un topic de mick85 sur ce forum intitulé “porte poulailler (selon luminosité panneau solaire et manuel)”. Son projet est très similaire au mien à une exception près.
Mon autre source d’information est le blog de Henri BACHETTI (hbachetti sur le forum. La personne qui a grandement aidé mick85 pour son projet) qui est une pépite en terme d’explication dans l’utilisation d'un Arduino. Je me suis surtout penché sur les 5 parties de son projet de … porte motorisée de poulailler ^^
Comme vous pouvez le constater, je pars d’une feuille branche car je n’ai rien de tout cela (j’exagère un peu, j’ai les résistances) mais surtout ça évite de problèmes de compatibilités (certes c’est moins écolo que de récupérer des pièces par-ci par-là) et ça permet à tout le monde de faire son propre système plus facilement (quand on voit les prix, ça reste très raisonnable).
Ce qui change du projet de mick85, c’est l’utilisation d’un servomoteur à rotation continue à 360 degrés afin d’avoir un système plus compact et de pouvoir le mettre dans une boite de dérivation électrique ou un Tupperware pour le garder à l’abri du froid et de l’humidité (d’où l’utilisation d’un connecteur jack pour le panneau solaire).
Une fois de plus, pour le codage, j’utilise celui du blog de hbachetti modifié par mick85 (voir en attachement).
Premier problème. Quand je “vérifie” le code, j’ai l'erreur suivante :
lowpower.cpp:11:10: fatal error: LowPower.h: No such file or directory
#include <LowPower.h>
^~~~~~~~~~~~
compilation terminated.
exit status 1
LowPower.h: No such file or directory
Il me semble que cela veut dire que je n’ai pas la bibliothèque LowPower, exacte ?
Sachant que j’utilise un servomoteur MG995, qui est continue à 360°, à la place d’un MG996R, qui est uniquement 180°, je dois modifier la partie du servomoteur.
Il me semble que le nom du servomoteur dans le code n’a pas d’importance, donc on peut laisser “mg996r”.
Mais je dois modifier dans “mg996r.cpp” à “void MG996R::open(void (*callback)(void))” à la ligne “log_println(F("pos: 180"));” le “180” par le degré que mon servomoteur doit faire par rapport au diamètre de la bobine que je vais y fixer. Ainsi que dans “mg996r.h” le “#define MAX_POS 180” par le degré précédemment calculé.
Et pour le moment ça sera tout pour le code.
Ainsi que pour ce premier post.
Le but de ce topic, en plus de faciliter la vie de ma mère, c’est de proposer une solution simple et la plus guidée possible afin de rendre la fabrication d’un système totalement autonome d’ouverture/fermeture de porte de poulailler accessible à tout le monde.
Merci d’avance pour votre aide.
Cordialement,
Crody
PS: Désolé pour les doubles posts mais à cause des liens je dépassais les 9000 caractères
hbachetti:
Je ne comprends même pas l'intérêt du servomoteur 360°.
Autant utiliser un moteur continu.
Sur votre blog vous dites que ça consomme plus qu'un servomoteur car il doit maintenir la position haute (je souhaite mettre un porte à ouverture verticale dites guillotine). Et comme ça sera sur batterie je pensais que c'était plus judicieux.
(désolé je dois attendre 5 minutes pour pouvoir poster ma réponse)
Je ne comprends même pas l'intérêt du servomoteur 360°.
Autant utiliser un moteur continu.
Moi non plus dans aucun cas d'ailleurs. La gestion d'un moteur CC est simple avec le PWM. Dans le cas présent encore plus car on n'a pas besoin de variation de vitesse.
La gestion d'un servo 360° est compliquée à faire.
Il y aurait juste un asservissement de vitesse un peu mieux que le moteur CC?
il doit maintenir la position haute
Dans ce cas il faut utiliser un moteur CC et un réducteur de vitesse. Ainsi ce n'est pas réversible. De toutes façon la porte ne va pas monter ou descendre avec un axe en prise directe!
crody:
Sur votre blog vous dites que ça consomme plus qu'un servomoteur car il doit maintenir la position haute (je souhaite mettre un porte à ouverture verticale dites guillotine). Et comme ça sera sur batterie je pensais que c'était plus judicieux.
Sur mon blog je dis ça à propos d'un moteur pas à pas, pas d'un moteur continu.
hbachetti:
Sur mon blog je dis ça à propos d'un moteur pas à pas, pas d'un moteur continu.
Ok, désolé de la confusion.
vileroi:
Mois non plus dans aucun cas d'ailleurs. La gestion d'un moteur CC est simple avec le PWM. Dans le cas présent encore plus car on n'a pas besoin de variation de vitesse.
La gestion d'un servo 360° est compliquée à faire.
Il y aurait juste un asservissement de vitesse un peu mieux que le moteur CC?
Dans ce cas il faut utiliser un moteur CC et un réducteur de vitesse. Ainsi ce n'est pas réversible. De toutes façon la porte ne va pas monter ou descendre avec un axe en prise directe!
D'accord. Je vais revoir ma copie et revenir vers vous.
Juste pour information, un servo 360° ne se commande pas de la même façon qu'un 180°, en indiquant l'angle voulu?
Il semblerait que vous ayez raison. En allant voir cette référence sur d'autre boutique, elles donnent toutes un angle de 180°.
Votre solution est intéressante (surtout au niveau du code qui est bien plus simple pour mes yeux de novice) mais elle utilise un servomoteur avec un système de levier. Or je souhaiterais un système plus compacte (peu de hauteur sous plafond) avec une ficelle qui viendrait s'enrouler autour de l'axe du moteur (pas directement autour je vous rassure )
crody:
Donc un servo 360° se comporte un peu comme un moteur DC qui ne compte pas les nombre de pas?
Dans ce cas, si il peut faire plusieurs tours, ce serait un motoréducteur et son pont H.
Et ça correspondrait à ce que tu souhaites faire, mais faudrait être sur du coups.
Si le poulallier est sur pilotis, tu peux commander directement le pont levis, comme lui
Or je souhaiterais un système plus compacte (peu de hauteur sous plafond) avec une ficelle qui viendrait s'enrouler autour de l'axe du moteur (pas directement autour je vous rassure )
Là encore, le servo est un mauvais choix. Où trouver une poulie à adapter sur l'axe d'un servo qui est fait en général pour recevoir un palonnier ?
Un motoréducteur serait plus adapté, et on trouve facilement des poulies pour moteur, axe 4mm, 5mm ou plus.
hbachetti:
Les deux types de MG996 existent, 180° ou 360°.
Ça prête à confusion car un même modèle peut avoir les deux configuration. Le MG996 ainsi que le MG995 peuvent se trouver en 180° ou en 360°.
achess:
Dans ce cas, si il peut faire plusieurs tours, ce serait un motoréducteur et son pont H.
Et ça correspondrait à ce que tu souhaites faire, mais faudrait être sur du coups.
Si le poulallier est sur pilotis, tu peux commander directement le pont levis, comme lui
J'avais vu cette vidéo (dont le système de flash est très malin) mais je souhaite une porte de type guillotine.
Ce qui m'attire dans la solution servo 360° c'est sa simplicité de câblage et l’absence de fin de course. Car je pense qu'à terme, la solution de la fin de course en mesurant la tension du moteur DC, engendrera une usure prématurée des engrenages (et une fin de course bas de type reed devra être ajouté). Alors qu'avec un servo 360° vous avez seulement besoin de lui dire "fait 738°" pour ouvrir et "fait -738°" pour fermer. Après je fait peut-être fausse route en pensant qu'un servomoteur fonctionne comme un moteur pas à pas.
hbachetti:
Là encore, le servo est un mauvais choix. Où trouver une poulie à adapter sur l'axe d'un servo qui est fait en général pour recevoir un palonnier ?
Un motoréducteur serait plus adapté, et on trouve facilement des poulies pour moteur, axe 4mm, 5mm ou plus.
Il y a plusieurs "têtes" fournies avec le servo, dont une en disque. Je pensais faire une poulie avec une imprimante 3D et la visser dessus.
Après je fait peut-être fausse route en pensant qu'un servomoteur fonctionne comme un moteur pas à pas.
Oui, fausse route. Un servo 360° ne se commande pas en degrés, mais en vitesse.
Une idée pour utiliser un servo avec une faible hauteur de plafond : un servo 180° fixé au plafond, avec un bras de levier fixé au palonnier, de longueur égale à hauteur de la porte / 2. Ensuite attacher une ficelle au bras de levier et à la porte, avec une poulie de renvoi.
Une hauteur de plafond basse n'est pas un problème avec mon système à levier. Il suffit de déplacer le point d'attache sur la trappe. Dessin rapide pour illustrer.