Une fois n’est pas coutume, aujourd’hui, je laisse la parole à Guillaume pour nous parler de sa mangeoire d’oiseau filmée par un Raspberry Pi alimenté en POE avec une détection de mouvement pour prendre des photos :
C’est un projet de longue date, j’ai d’abord commencé avec un hack NSLU2 (un petit NAS hackable sous Linux) avec une simple webcam d’intérieur en USB, puis de fil en aiguille, j’ai ajouté du POE (Power Over Ethernet), un allumage / extinction à l’aide d’un Arduino en fonction de l’heure de lever et coucher du soleil, une détection de mouvement pour ne prendre des photos qu’au bon moment… Mais après plusieurs années de bons et loyaux services, j’ai enfin pu changer l’ensemble par un Raspberry Pi avec sa webcam.
Les objectifs de ce projet sont les suivants :
-
utiliser du matériel low cost
-
faire en sorte que la solution soit la plus WAF possible 😉
-
que ce soit fun à fabriquer !
Ce premier article présentera le matériel que j’ai utilisé pour mettre dehors mon Raspberry Pi : en démarrant par le choix de la caméra, puis mes expériences avec la nappe de la webcam, l’abri utilisé pour mettre l’ensemble dehors et la mise en œuvre de POE passif.
Au sommaire :
Caméra
Le modèle de caméra que j’utilise est le standard accompagnant le Raspberry Pi équipée d’un objectif de 12mm testée dans ce billet. Ce type de caméra possède la particularité d’avoir un objectif avec un pas de vis compatible CCTV (caméra de surveillance) ce qui offre une large gamme d’objectif interchangeable et donc pouvoir le remplacer si nécessaire.
Mon idée initiale est d’éloigner la caméra du Pi afin de la mettre dans un petit boitier proche de la mangeoire. La nappe reliant la camera au Raspberry est petite (15 cm) et rigide et les nappes les plus longues mesurent 30 cm max.
Il me faut donc relier la webcam et le Pi avec un câble plus long. Qu’à cela ne tienne, je vais donc m’en fabriquer une ! J’ai utilisé une nappe de câble souple de 2m de long au pas de 1,27 mm de type DIP.
Le pas de la nappe d’origine est très fin, 0,7 mm de type FFC, j’ai utilisé des adaptateurs FFC ⇔ DIP sur lesquels je vais souder d’un côté la nappe et de l’autre l’adaptateur. Le connecteur FFC doit être soudé sur l’adaptateur.
Après quelques soudures, voici le premier connecteur assemblé :
Le montage consiste donc à relier la webcam avec sa nappe d’origine à l’adaptateur lui même relié à la longue nappe puis de repasser sur l’adaptateur pour se brancher sur le Raspberry Pi.
Je craignais que la longueur de câble pose des problèmes de stabilité d’image mais ce n’est pas le cas. La caméra est bien reconnue et les images transmises sont parfaites.
J’ai assemblé le tout dans un boîtier électrique étanche et découpé le couvercle pour y loger une ouverture avec une plaque de plexiglas transparente.
J’ai alors voulu réduire la largeur de la nappe en séparant en 4 et dans le sens de la longueur les brins mais la webcam ne se synchronise plus :'( Je pense qu’il y a désormais trop d’interférences électromagnétiques; une hypothèse serait que l’alternance habituelle d’un fil faisant circuler un signal positif avec son voisin qui fait passer le signal contraire n’est plus conservée. Cela a pour conséquence que le signal reçu n’est plus aussi « propre » et la webcam décroche. Retour à la case départ :'(
Maison d’oiseaux
Pour pallier à cet échec, j’ai décidé de tout mettre dans une même boîte : Raspberry + webcam. J’ai déniché une petite maison d’oiseau de décoration trouvée dans une grande surface de jardinage. En l’adaptant, j’ai tout fait rentrer dedans.
J’ai arrangé une fenêtre sur la face centrale pour y loger la webcam du Raspberry pi à l’aide de ma Dremel. La webcam est fixée avec des vis à tête fraisée et des petites entretoises. Avec un morceau de plexiglas provenant d’une boîte de chocolat, j’ai fabriqué une petite vitre placée devant la webcam pour refermer la boite 8-). La petite porte de devant a été fermée à l’aide d’un fond en bois de boîte de camembert découpée à la bonne taille.
J’ai également vernis la maison d’oiseau pour résister aux intempéries.
Alimentation
Pour gagner de la place dans la petite maison d’oiseau, je n’utilise pas le connecteur d’alimentation Micro-USB du Raspberry. En remplacement, j’utilise les connecteurs »4 » et »6 » du port GPIO pour l’alimenter avec un connecteur fait maison.
Le Raspberry intègre un régulateur de tension branché juste après le port Micro-USB. En l’alimentant directement par le port GPIO, cet étage de régulation est by-passé. Il faut donc être très vigilant sur la tension appliquée sur les pins au risque de le griller.
POE
La mangeoire sera placée dans le jardin et la longueur du câble entre le Raspberry et le serveur est de 35m. Je ne veux pas faire amener du 220 V au milieu du jardin et j’ai donc regardé comment mettre en place du Power Over Ethernet passif. Pour se faire il existe des adaptateurs POE auprès de sites d’enchères en ligne : d’un côté, il y a l’alimentation + réseau en entrée et de l’autre, le câble Ethernet de transport. Le frère jumeau de l’adaptateur se retrouve de l’autre côté et sépare le courant de la data.
Pour fonctionner, il faut savoir que sur un câble Ethernet, en 100 Mbits, seules 2 paires sur les 4 sont utilisées. De nombreuses bidouilles sont alors possibles : POE, double Ethernet
Voici un schéma de l’assemblage final :
Pour abréger les souffrances du lecteur, je saute les étapes de calculs de la résistance d’un câble selon son diamètre pour arriver à la formule finale avec :
- Résistivité :
- Diamètre :
- Longueur :
- Section :
La résistance du conducteur est donc de :
Le Pi est donné pour consommer environ 5 W minimum, soit 1 A avec son alimentation de 5 V.
La chute de tension est donc au minimum (loi d’Ohm) : 3.7*1=3.7 V. En l’alimentant directement avec son transformateur à l’extrémité du câble, il ne recevra que 5-3.7=1.3 V, il ne fonctionne pas avec si peu de courant. Il faut donc une tension d’entrée plus élevée.
Je vais donc utiliser un bloc d’alimentation dédié. Le Pi consommant régulièrement plus de 1 A, il faut donc prévoir une alimentation conséquente, celles habituellement vendues avec les appareils hi-tech sont trop justes.
J’ai finalement opté pour un adaptateur secteur multi tension de 24W environ et j’ai sélectionné une tension de 12V
Pour obtenir 5 V au niveau du Raspberry Pi, plusieurs solutions sont possibles, dont notamment l’utilisation d’un régulateur de type LM7805. Ceux ci sont très simples à mettre en oeuvre mais transforment la chute de tension en chaleur et donc chauffent beaucoup.
Les régulateurs de tension à découpage sont également communs. Plutôt que d’appliquer une résistance variable comme le LM7805, ils hachent le courant avec une fréquence de 150 kHz environ en faisant varier la taille des créneaux haut et bas puis la re-linéarisent afin que la tension moyenne de sortie soit stable. Cela est beaucoup plus efficace et chauffe très peu. De nombreux montages tout prêt sont disponibles sur les sites de ventes aux enchères en ligne à un coût dérisoire.
Ainsi, en mettant ce régulateur en bout de câble entre l’adaptateur POE et le Raspberry Pi, je peux alors l’alimenter en 5V.
Le réglage de ce régulateur s’effectue à l’aide d’un potentiomètre, d’abord à vide puis en branchant le Pi afin de charger l’alimentation.
Installation
Ensuite, yapluka faire l’assemblage final, fixer le tout près de la mangeoire et régler l’objectif de la webcam pour avoir une image nette.
Le plus dur a été de tout faire rentrer dedans sans abimer le matériel : le Raspberry, l’adaptateur POE, la webcam et le régulateur d’alimentation.
Le lecteur attentif aura remarqué que je n’ai rien décrit par rapport à l’étanchéité de l’ensemble : je n’ai en effet rien fait de spécial, le toit de la mangeoire protège bien de l’eau et n’empêche pas l’air de circuler afin d’éviter les phénomènes de condensation. Cela fait maintenant plus d’un an que l’ensemble est dehors de tout temps et je n’ai aucun dysfonctionnement à signaler !
Je les ai fixés sur le haut d’une claustrat avec une grosse équerre.
L’ensemble fini est plutôt propre et le WAF est à un niveau très acceptable ;).
Vue de la webcam
Voici quelques photos prises par la webcam au cours de l’hiver dernier :
Pour résumer
C’est le 2e hiver que mon Raspberry Pi passe dehors et je n’ai pas eu de problème d’humidité ou autre. Les oiseaux se régalent des graines que je dépose et cela fait la joie de la caméra qui capture tous ces moments.
Le matériel un peu exotique utilisé ici provient de sites d’enchères en ligne qui font la joie des bidouilleurs.
Dans un second article, je décrirais la mise en oeuvre logicielle pour mettre en place du stream vidéo sur le réseau local, de la détection de mouvement et un allumage / extinction du Raspberry Pi en fonction de l’heure du lever et coucher du soleil à l’aide d’un Arduino.
Vous pouvez retrouver cet article et bien d’autres encore sur mon site : https://www.geekeries.fun/
Edit 13/02 :
merci à « Dodutils » pour l’erreur de typo de l’objectif
merci à « msg » d’avoir pointé une mauvaise application numérique dans le calcul de résistance du cable
Exactement ce que je suis en train de faire, avec le même système PoE sauf que je suis parti sur un module DC Buck à base de XL4005E au lieu du LM2596.
Tu es sûr que c’est un objectif 21mm que tu utilises ? vue l’image produite et la distance de la camera ça me paraît nettement moins.
Les images ont pas l’air super propres, ton objectif est-il validé pour du « 5MP » ou alors c’est le soleil ou la compression.
Par contre je regarde pour utiliser un Pi Zero à la place d’un RasPi.
Pour ton problème de nappe de caméra il y a aussi possibilité d’utiliser un cordon HDMI tu pousseras jusqu’à 5m (mais pas beaucoup plus) et au moins il peut se balader « dehors » sans risques et du coup garder le RasPi à l’abris ailleurs. pour ne laisser approcher que la caméra.
Et pour ceux qui ne veulent pas se casser la tête il y a a ça tout fait ici https://www.tindie.com/products/freto/pi-camera-hdmi-cable-extension/
Sinon une Webcam USB avec rallonge USB monte aussi à 5m, voir beaucoup plus si on achète une de ces Webcam endoscopiques chinoises de 7 ou 10m pas cher à laquelle il faudra adapter une autre optique que celle fournie qui ne focus qu’à 6cm.
Oups, c’est un objectif de 12 mm, faute de frappe :'(
Les images ne sont peut être pas parfaite car j’ai une plaque de plexiglas de 0.5 mm devant et elle perturbe la netteté.
Lorsque j’ai commencé ce projet, il n’existait pas de bidouille à base de câble HDMI ou autre comme on peut le trouver aujourd’hui…
Pour la webcam USB, j’ai atteint 20 m avec un prolongateur USB (http://www.monbook.tech/realisations_webcamoiseaux_nslu2.html#stabilisation). Par contre, c’était de l’USB 1, avec du 2, ça ne passait pas.
OK pour le plexi ça explique le côté un peu délavé 😉
Pour la distance du câble USB tout dépend de la section AWG plus c’est gros moins ça perd sur la distance mais en regardant la version précédente de ton projet j’avais pas pensé à faire une rallonge USB à base de câble Ethernet, en plus c’est bête parce que c’est ce que j’utilise pour mon câblage 1-Wire qui parcours toute la maison sur une paire de fils de plus de 70m (qui passe même par le congèle à la cave et le frigo) .
C’était du Cat6 ton câble de 20m ?
Ok je comprends mieux ton besoin 🙂
non, mon cable de 20m est du Cat 5e
Si tu as l’occasion de tester avec du Cat 6 tu devrais porter plus loin car en Cat 5e l’AWG est entre 24-26 alors qu’en Cat 6 il est entre 22-24, plus gros du coup.
Et si jamais un jour tu dois transporter un courant plus fort, pense plutôt à monter en tension, par exemple si tu dois faire passer 5A en 12V, en 24V tout pourras faire passer seulement 2.5A du coup ça chauffe moins, voir même comme en « vrai » PoE faire passer du 48V ou plus pour abaisser le courant au maximum.
J’oubliais, pour la RaspiCam j’ai trouvé celle-là avec filtre IRCut en prime pour moins de 20 euros :
http://www.banggood.com/Geekworm-Camera-With-IR-CUT-Function-For-Raspberry-Pi-3B-2B-B-A-Zero-Available-At-Day-Or-Night-p-1102742.html
Reste plus qu’à y mettre l’objectif choisi pour peut qu’il soit « rated 5MP » si on veut une optique assez bonne pour tirer pleinement partie des 5MP de la RaspiCam V1.
ici un 12mm : http://www.banggood.com/16MM-M12-12_5-5MP-17-Degree-IR-Sensitive-FPV-Camera-Lens-p-1069515.html
ou là un 16mm : http://www.banggood.com/16MM-M12-12_5-5MP-17-Degree-IR-Sensitive-FPV-Camera-Lens-p-1069515.html
Et pour le Pi Zero il faut une nappe spéciale qui adapte sa largeur à un bout car le connecteur est plus étroit sur Pi Zero que sur RasPi :
http://www.banggood.com/Specific-Data-Cable-For-Raspberry-Pi-Zero-Camera-p-1092613.html
Voilà en tout cas beau boulot, c’est tellement dommage que le RasPi ne possède pas de mode Sleep comme sur Arduino voir Deep Sleep sur ESP8266 par exemple et qu’on soit obligé de passer par un module externe pour gérer le on/off programmé 🙁
Tu as des actions chez banggood ? 🙂 en tout cas, tes tweets sont très interessants !
Bien d’accord sur le on/off, ça permet de se casser un peu la tête pour pallier à ce défaut/fonctionnalité !
Le site banggood c’est comme le catalogue Selectronic avant Internet, je pouvais passer des heures à le lire et du coup quand je trouve un truc sympa je tweet 😉
Pour ceux qui ne veulent pas se casser la tête à faire soi-même un système de contrôle on/off programmé il existe une carte toutte faite pour ça qui se couple avec un script la programmer pour stopper le RasPi « proprement » et le rallumer à une heure choisie ça coûte 17€ :
http://www.uugear.com/product/wittypi2/
Bonjour,
Cette carte http://www.uugear.com/product/wittypi2/ est-elle physiquement compatible avec les Raspberry cameras. Le branchement de la nappe de la caméra peut-il être fait entre le Raspberry et cette carte Wittypi2 ?
Cordialement
Gérard
Bonjour
je ne connais pas cette carte mais physiquement la caméra se connecte sur la prise blanche située entre la prise jack et la prise HDMI
on doit pouvoir faire sortir le câble plat de la caméra sur le côté
cordialement
François
A priori l’espace est suffisant et si jamais pour une raison ça devait poser problème pour autre chose il suffi d’ajouter une barrette 40 pin intermédiaire pour ajouter un étage de hauteur.
Coucou c’est encore moi, et pour ce qui est de détecter les heures de levé et coucher du soleil j’ai ce petit code qui est pas mal et permettra en le couplant à un autre script d’envoyer un signal à un Arduino ou ESP8266 en donnant en même temps dans combien de temps il doit se réveiller (et réveiller le module l’alimentation du RasPi qu’on aura couplé à un MOSFET par exemple).
https://sourceforge.net/projects/sunwait4windows/
Bon cette fois-ci j’arrête de spammer c’est amplement l’heure du dodo 😉
Bonjour,
Merci pour vos réponses rapides et pertinentes.
Cordialement
Gérard
Bonjour ,
J’aimerais savoir où l’on vend du cable Ethernet de section 1,89mm² avec du brin en fer ?
Juste par curiosité !
J’ai trouvé les infos de calcul de section à partir de cette doc : http://www.sab-cable.eu/fileadmin/user_upload/pdf/catalog_fr/Leitungen_fr/Cables_Ethernet_Industriel_CAT5_CAT6.pdf
Les mesures étant très proches de la théorie, je me suis dit que c’était correct.
Tu ne penses pas ?
Du câble électrique » en FER » c’est diabolique !
Tu ne crois pas ?
Aie, mal vu ce « petit » détail, très juste, c’est du cuivre bien sûr.
Je ne te juge pas , je t’empêche de répéter des bêtises .
Sinon trouve moi dans ta doc un seul câble ayant vendu son ame (conductrice) au diable !
Un conducteur « en fer » .
Moi je ne vois que du cuivre et du cuivre étamé .
Certains câbles peuvent être en aluminium , mais ça conduit un peu moins bien .
https://fr.wikipedia.org/wiki/R%C3%A9sistivit%C3%A9
Le but du câble , c’est de transporter l’énergie ou le signal électrique avec le moins de pertes possibles .
Si pertes il y a , pour les réduire , on augmente la section du fil .
Le fer , ce n’est vraiment pas ce qui ce fait de mieux pour transporter l’énergie électrique.
Les seuls câbles électriques en fer , venu de chine , dont j’ai entendu parler , ont fini aux « escoubilles »
Bonjour,
C’est de l’humour 😉
Le Monsieur il veut te dire que tu as pris la résistivité du fer pour le calcul. Le cuivreb est meilleur conducteur et d’usage plus courant (sic) pour les câbles réseau.
https://fr.wikipedia.org/wiki/R%C3%A9sistivit%C3%A9
Bel article car ces oiseaux sont difficiles à photographier, même s’ils ne sont pas trop sauvages.
J’ai malheureusement loupé l’envol de la nichée l’année dernière.
Sylvain
Puisque on est là pour apprendre , apprenons ! 😉
Donc une section de câble se calcule en fonction de son diamètre en utilisant une des deux formules .
Section(en mm²) = Pi x Diamètre(en mm) x Diamètre(en mm) / 4
ou écrit autrement
Section(en mm²) = Pi x (Diamètre)² / 4
ou l’autre formule plus connue celle-là
Section(en mm²) = Pi x Rayon(en mm) x Rayon(en mm)
Section(en mm²) = Pi x (Rayon)²
et comme Rayon = Diamètre / 2
on a donc
Section(en mm²) = Pi x (Diamètre / 2) x (Diamètre / 2)
Section(en mm²) = Pi x (Diamètre / 2) ²
Ton cable réseau , dont tu peux certainement mesurer la section sur du câble vendu à la coupe , ne fait certainement pas 1,89mm² , soit 1,55mm de diamètre .
Je te donne la formule pout passer de la section au diamètre :
Diamètre = ( racine_carré ( Section / Pi ) ) * 2
Ton cable réseau doit faire en Section du 2/10eme (0,2mm²) ou au mieux du 4/10eme (0,4mm²) soit respectivement (avec la formule que je t’ai donné au dessus) , 0,5mm et 0,7mm de diamètre .
C’est les sections utilisés en câble de téléphonie .
Y a plus qu’à prendre la bonne résistivité (celle du cuivre à 17 nOhm / mètres ) pour le calcul dont la formule est bonne .
R = resistivité * Longueur(en mètres) / Section(en mètres_carrés)
Il va falloir apprendre aussi à convertir les section de mm² en m²
1mm² = 0,000001 m²
1mm² = 1×10^-6 m²
1mm² = 1µm²
Sinon , excellent projet .
Comme me disait un professeur :
« il n’y a pas de honte à ne pas savoir ou à se tromper ! »
« Ce qui est honteux , c’est de faire croire que l’on sait et d’induire les autres en erreur ! »
Voilà , je retourne à d’autres occupations … 🙂
1mm² = 1µm² ??? … tu es sur … lol
Après réflexion non !
car
1µm² = 1µm x 1µm
soit
(1e-6) x (1e-6) = 1e-12
la conversion des (mm²) en (m²) est de (1e-6) soit (1e(-3*2))
me suis trumpé !!!
1mm² = 0,01cm² = 0,00 01 dm² =0,00 00 01 m²
0,000 001 m² = 0,001(m) x 0,001 (m) = 1mm x 1mm
0,000 001 m² = 1×10^-6 m²
qu’on ne peut surtout pas convertir en µm² (c’est là où j’ai mis le peids dans le caca) 🙂
bien que 10^-6 est l’unité « µ » dans la conversion des condensateur et autres .
sinon on a une égalité fausse :
1mm² = 0,000 001m² , soit 1×10^-6 , jusque là ça va !
1mm² = 0,001 mm² , c’est faux !!!!
1mm² =1µm² , c’était faux avant , ça l’est toujours !
Merci de m’avoir repris !
En matière de câble , même si ce n’est pas une mesure physique ni une unité MKSA, on rencontre souvent la notion de AWG .
tout cela et le tableau suivant (merci Selectronique) permet de passer de l’un à l’autre sans formules:
http://www.google.fr/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&sqi=2&ved=0ahUKEwiiqqX_qo3SAhUElxoKHXFNC9sQFggaMAA&url=http%3A%2F%2Fwww.selectronic.fr%2Fmedia%2Fpdf%2Fcentre_service%2FCorrespondance-AWG.pdf&usg=AFQjCNHElT97HbKFxybxtIwJ_XzqztPfMA&sig2=1kPQkTojNQU4iplv4HEwcA&bvm=bv.146786187,d.d2s&cad=rja
Sylvain
et sinon pour pas se casser la tête il esite tout un tas de sites de calculs en ligne comme par exemple :
http://www.calculator.net/voltage-drop-calculator.html
http://www.powerstream.com/Wire_Size.htm
Si il a mesuré à l’ohm-mètre 3,7 ohm sur son cable de 2×35 m , son fil conducteur fait moins de 4/10eme , soit la valeur dans le tableau AGW22 .
Par le calcul ça donne :
Résistivité = r = = 17 nOhm = 17×10^-9
L = 70m
R = 3,7 ohm
R= r * L / S
On tourne la formule et ça donne ….
S = r * L / R
S = 17×10^-9 x 70 / 3,7 = 0,00000032162 m² = 0.362mm²
et avec resistivité r = 18 nohms
S = 18 x10^9 x 70 / 3,7 = 0,00000034054 m² = 034054 mm²
Ce que je disais , son câble gris ne dépasse pas les 4/10eme de mm² de section .
comme pour le cable téléphonique .
Pour info , on peut simplifier le calcul et travailler avec la section en mm² direct .
Il faut simplifier les puissance : 10^-9 / 10^-6 = 10^-3
la résistivité est alors de 17 mOhm =17×10^-3
la section AWG22 = 0,326 mm²
L = 70m
R = 70 x 17*10^-3 / 0.326 = 3,65 ohm
ÇA Y EST J’AI COMPRIS où il s’est planté !!!
Dans la doc constructeur , il parlent de CONDUCTIVITE = 1,55mm de diamètre .
si on lit la définition Wikipédia de la RESISTIVITE :
« La RESISTIVITE est la grandeur inverse de la CONDUCTIVITE »
r = 1 / c
et
c = 1/ r
d’ou
r = 1 / 1.55 = 0,64516 mm soit le diamètre dans le tableau de l’AGW22 .
Le compte est bon !
Que des embrouilleurs ces Américains !
Merci d’avoir pointé l’erreur, j’ai corrigé les calculs.
C’est normal .
J’ai vu que le lien que tu avais mis comportait des erreurs de valeurs (en autre , la résistivité du fer au lieu du cuivre et le diamètre du fil conducteur ) .
L’habitude de travailler avec du câble réseau / câble ptt domestique !
Le contenu du lien a été aussi corrigé depuis , parfait ! 🙂
Super, vive les petit zoiseaux!
j’avais fait quelque chose de similaire:
– boite étanche (mais moins esthétique!)
– liaison par wifi (ok pour la taille de mon jardin)
– uniquement l’alim à brancher
https://www.raspberrypi.org/forums/viewtopic.php?f=93&t=10308&p=516528#p516528
La difficulté c’est de faire en sorte que les oiseaux regardent l’objectif 😉 …