Arduino : Faire un objet connecté pour indiquer les places de parking disponibles



Certains objets connectés ont amélioré notre quotidien, c’est indéniable. Ils sont arrivés de nul part, sont là depuis des années et on ne pourrait plus vraiment se passer d’eux.
Aujourd’hui l’exemple que j’ai choisi est celui du parking du centre commercial Nantes Atlantis, que j’appellerais dans ce tutoriel le parking Ikea. Je suis bien conscient que ce système existe à de nombreux autres endroits mais par soucis de simplification je préfère l’appeler parking Ikea.

Comme vous pourrez le constater sur cette vidéo, quand je me mets au centre de la place de parking, la lumière verte passe au rouge après un certain laps de temps (3 secondes apparemment) et repasse au vert dès que je n’y suis plus (3 secondes de délai apparemment).

https://youtu.be/L_i98PRbTNk

Tout cela est possible grâce à un capteur qui ne coûte pas grand chose et que vous trouverez placé au plafond en plein centre de la place de parking.
La plupart des usagers se concentrent sur le jeu de lumières (rouge / vert) alors que la magie opère à un tout autre endroit :P

Parking Ikea Nantes Atlantis

Le fameux capteur

Parking Ikea Nantes Atlantis

Détecteur au plafond Parking Ikea Nantes Atlantis

Comment fonctionne le programme qui est derrière?

En fait vous allez voir, c’est assez trivial, le composant HC-SR04 est un émetteur d’ultrason qui dès qu’il rencontre un obstacle remonte au système la distance à laquelle il l’a rencontré. Dans le cas de figure du parking Ikea il suffit ni plus ni moins de lui indiquer la valeur à partir de laquelle on considère qu’une voiture est probablement présente. En général la hauteur d’une voiture est assez variable mais disons qu’elle peut rarement faire 50 cm de hauteur… c’est probablement pour cela que les remorques sont souvent comptabilisées comme des places libres alors qu’elles ne le sont pas.

Il suffit donc d’entrer cette valeur dans le programme afin de dire que si un obstacle est rencontré alors on allume la lumière rouge.

Pour information je mesure 1 mètre 78 et je pense que le plafond du parking est aux alentours des 6 mètres de haut. Ainsi je sais que le système du parking Ikea d’Atlantis Nantes considère déjà cette hauteur comme correspondant à une place de parking occupée.

Le programme que vous trouverez ci-dessous est adapté pour deux places de parking, en effet, mon idée est de montrer que l’on peut mettre plusieurs capteurs sur une même breadboard et ainsi montrer que l’on peut équiper tout un parking avec une seule Arduino.

Par ailleurs ce code pourra probablement nous aider à faire la somme des états des deux places de parking et ainsi d’afficher un message indiquant que le parking est complet.

Le code à télécharger est ici : place-de-parking-arduino. (il ne prend pas en compte les dimensions que j’ai mentionné plus haut et a été adapté depuis un autre script trouvé librement sur Internet.

Montage Arduino parking Ikea

Désolé je ne maîtrise pas encore bien les montages de schéma du coup je n’ai qu’une photo à vous montrer de mon schéma :

montage-arduino-parking-ikea

 

Arduino : installation de l’écran LCD pour les nuls

Le capteur LCD a été… je dois dire, l’un des composants électroniques qui m’a fait le plus grincé des dents lorsque j’ai reçu mon kit.
En effet pour un marketeur on imagine rapidement les nombreuses possibilités offertes par cet outil :
- Possibilité d’afficher un message spécifique en fonction de différentes interactions avec un objet connecté;
- Composant  très riche en terme de fonctionnalité;
- Permet de réaliser de nombreux objets connectés interactifs;

bref plein de bonnes raisons qui donnent envie de savoir comment l’utiliser.

Je dois l’avouer mes premières relations avec ce composant ont été assez chaotiques. En effet il semblerait que pour le faire fonctionner correctement il faille le souder… tout le contraire de ce que je pensai qu’un kit Arduino était.
Je me rappelle encore il y a plusieurs mois avoir directement demandé à l’entreprise qui commercialisait le kit de m’expliquer comment installer ce dernier, en voici sa réponse :
Screenshot 2015-12-08 at 16.08.44Comme vous pouvez le constater via ce lien : http://www.funduino.de/index.php/3-programmieren/nr-13-lcd-display c’est à n’y rien comprendre pour quelqu’un qui ne s’y connait pas. J’ai alors erré sur de nombreux sites dont celui officiel d’Arduino : https://www.arduino.cc/en/Tutorial/HelloWorld et idem je trouvai que les instructions étaient toujours opaques. J’ai essayé de me lancer dans la mise en place des différents croquis en ayant à ma disposition les composants suivants de mon kit :
20151208_132825La première erreur que j’ai faite est de penser que sans souder j’arriverais à m’en sortir, ce qui fait que j’avais un composant que j’essayai de connecter de la manière suivante :

20151208_132938

pour un résultat nul car la connexion ne pouvait se faire au niveau électrique.

Bref au final j’ai du faire l’acquisition d’un fer à souder. C’est une décision qui s’inscrit dans la durée car j’ai pu découvrir qu’il existait des micro-composants wifi pour plus tard qui dans tous les cas nécessiteront de la soudure.

Souder mon lecteur LCD? mais je vais fusiller mon composant!!!
Oui et non. D’un point de vue esthétique sûrement mais dans tous les cas il va falloir y passer pour faire fonctionner l’écran.
Je pense que les créateurs des kits on voulu laisser la liberté aux makers de souder le capteur LCD avec ce qui leur semblait le plus pertinent.
Pour information je n’avais pas fait de la soudure depuis le collège. Le prix d’un fer à souder neuf est de l’ordre de 15€ mais vous pouvez en emprunter à un ami ce qui est encore plus économique (après tout on ne soude pas tous les jours).

Avant de souder j’ai lu le chapitre entier du livre « Arduino pour les nuls » sur apprendre à souder. Cela m’a permis d’éviter des erreurs de base telles que faire sonner l’alarme à incendie, respirer les émanations du fer à souder… je vous conseille d’en faire autant avant de vous lancer. Par ailleurs éviter de souder depuis une chaise ergonomique avec des roulettes, je l’ai fait pour vous et honnêtement cela peut être très dangereux. Idem, faites votre soudure sans qu’il y ait une personne à côté, l’odeur pouvant être désagréable.

Pour souder votre écran LCD Arduino

20151208_133005

Insérer la broche telle que ci-dessus. Comme vous pouvez le voir, le système est incliné, ainsi prenez un stylo bille que vous mettrez en dessous de l’autre côté afin de pouvoir souder sur un plan de travail droit. Il ne vous reste alors plus qu’à souder, vous pouvez souder l’ensemble des tiges. Vous devriez obtenir le résultat suivant :

20151208_134845

Une fois votre broche soudée au écran LCD il va falloir effectuer l’ensemble des connexions en fonction du schéma suivant (site officiel Arduino) https://www.arduino.cc/en/Tutorial/HelloWorld :

LCD_Base_bb_Fritz

 

Ola mais c’est compliqué tout cela :(
Pas vraiment. Tout dépend de votre connaissance générale d’Arduino et du composant LCD. Ici on peut remarquer sur notre breadboard la présence d’une espèce de roue. Il s’agit d’un potentiomètre. Qui comme son nom l’indique envoi de la puissance. Sa présence est nécessaire pour vous permettre l’affichage de données correctement sur l’écran LCD. En son absence l’écran pourrait vous afficher des petits carrés au lieu d’un bloc de texte.

Une fois le cablage suivi vous obtiendrez le résultat suivant :

20151208_163501

Comme vous pouvez le voir cela fait beaucoup de cables :P
A noter que si le cablage est fonctionnel au niveau de l’apport en électricité vous verrez que le capteur LCD s’allumera dès que vous le brancherez à votre ordinateur.
Au niveau du programme à téléverser, vous pouvez prendre celui du site officiel d’Arduino : https://www.arduino.cc/en/Tutorial/HelloWorld
Concernant le texte à afficher dans le lecteur LCD, soit votre cablage est nickel et dans ce cas tout s’ajuste avec le potentiomètre soit c’est un problème de cablage et vous devez vérifier celui-ci avec le schéma ci-dessus. Si vous faites une modification de cables n’oubliez pas également d’éteindre et de rallumer votre Arduino sinon vous pourriez ne pas voir les modifications prises en compte. Et voilà le travail :

Arduino display

Mémoire presque saturée, certaines fonctions système risques de ne pas fonctionner

Si vous avez ce message sur votre téléphone c’est probablement que vous avez un smartphone Samsung Galaxy S2, et vous faites également probablement parti de ceux et celles qui comme moi ont mis à jour lors Smartphone.

Voici la procédure pour faire disparaître ce message (gardez là bien bien précieusement car cela fait déjà deux fois que j’ai ce message) :

  • faites le numéro suivant : *#9900# (non ce n’est pas une blague, ce numéro va vous faire arriver sur une interface spécifique)
  • Choisissez l’option « deleteDumpstate/Logcat »
  • Fin de l’histoire…

Mise en place du capteur de mouvement avec une carte Arduino

L’univers des objets connectés va, selon moi, changer notre quotidien. Ainsi j’ai pris pour habitude de regarder et d’analyser nos préoccupations du quotidien et de voir comment les objets connectés pourraient nous aider. L’une de nos préoccupations majeures est sans nul doute la sécurité. Il y a quelques années je vivais dans un appartement dont le garage en sous-terrain était l’objet de nombreuses dégradations sur les véhicules. A l’époque j’avais acheté une alarme qui se branchait sur la batterie et qui se déclenchait en fonction des vibrations du véhicule. Malheureusement lorsque je garai mon véhicule dans la rue, des gros véhicules passant à côté (par exemple le camion des éboueurs) provoquait le déclenchement de l’alarme à cause des vibrations du sol. J’ai eu l’occasion d’étudier cette problématique aujourd’hui. Mon constat est le suivant, lors d’un cambriolage de votre véhicule, l’un des premiers endroits où vont aller les voleurs… c’est la boite à gants. Ainsi si nous plaçons un objet connecté à cet endroit, nous pourrions automatiquement envoyer un signal permettant d’attraper les individus sur le fait. C’est l’objet de cet article. Continue reading Mise en place du capteur de mouvement avec une carte Arduino

Comment installer le plugin d’une caméra Foscam?

Un des points qui me frustre le plus avec les caméras Foscam c’est le message du panneau d’administration affiché dans votre navigateur vous indiquant qu’un plugin est manquant. Ce plugin Foscam est primordial car c’est celui qui vous permet d’accéder à ce que voit la caméra, sans lui vous pourrez uniquement accéder aux paramètres. Continue reading Comment installer le plugin d’une caméra Foscam?

Comment réparer sa caméra Foscam FI9818W ?

Amateur de sécurité, j’ai il y a quelques années acheté une caméra Foscam similaire au modèle que vous pouvez voir dans la photo à gauche. Mon soucis est que celle-ci s’est cassée récemment et a du coup terminé dans le couloir. A titre d’information une caméra de ce type coûte dans les 70 euros. Vu que la garantie était dépassée je n’ai pas cherché à l’échanger. Cet article a pour but de présenter la solution au problème que j’ai rencontré sur cette caméra. Continue reading Comment réparer sa caméra Foscam FI9818W ?

OpenCV et le Raspberry PI

J’ai eu l’occasion de parcourir de nombreux ouvrages sur OpenCV, ce que j’en ai retenu pour la partie non technique, c’est que le plus dur est de comprendre que le domaine de la « Computer Vision » est extrêmement complexe et fonctionne de manière bien différente de la vision d’un être humain. Ces différences comportent des avantages et des inconvénients. OpenCV est une librairie gigantesque, ce qui signifie qu’il n’est pas conçu que pour analyser le comportement des êtres humains mais tous types de visions associés par ordinateur. Par exemple dans le domaine médical on pourrait l’utiliser pour analyser des radios par exemple. Bref OpenCV ce n’est pas une jolie interface graphique où l’on peut facilement uploader une image et derrière on nous indique l’âge, le sexe, la taille, le poids potentiel de l’individu, si il est également présent sur un autre photo. Pour faire simple, apprendre à l’utiliser correctement nécessite au mieux des mois, au pire des années des années de travail. Continue reading OpenCV et le Raspberry PI

Avis Livre Raspberry Pi : A la découverte de linux pour le Raspberry Pi de Matt Richardson

J’ai acheté ce livre il y a quelques jours afin de pouvoir mieux appréhender l’utilisation du Raspberry Pi. En fait je cherchai avant tout un livre qui puisse me montrer un exemple concret de l’utilisation de la librairie SimpleCV car je trouvai que le pas de porte pour OpenCV était un peu trop élevé. J’avais déjà lu des ressources sur le Raspberry Pi notamment Raspberry Pi for Dummies et avais été déçu car le livre était principalement orienté sur l’utilisation de Linux et n’expliquait rien de bien intéressant sur ce que l’on pouvait faire avec le Raspberry Pi. Continue reading Avis Livre Raspberry Pi : A la découverte de linux pour le Raspberry Pi de Matt Richardson

Vérifier que son Raspberry Pi prend bien des vidéos avec la caméra officielle

Comme probablement indiqué dans un précédent post, la caméra officielle du Raspberry Pi est bien plus contraignante qu’une simple webcam. Ainsi l’une des premières étapes qui peut potentiellement vous intéresser est de savoir si celle-ci marche en mode vidéo. Pour ce faire entrez la commande suivante :

raspivid -o video.h264 -t 10000

cette commande va vous permettre de faire fonctionner votre Raspberry Pi pour qu’il enregistre depuis votre caméra une vidéo de 10 secondes de longueur. Source officielle : https://www.raspberrypi.org/documentation/usage/camera/raspicam/raspivid.md

Une fois cette action effectuée, vous aurez probablement l’envie de vous rassurer et de voir si la vidéo peut être lue, pour ce faire, utilisez le player suivant omxplayer, qui en principe est déjà installé avec votre Raspberry Pi, sinon il faudra le mettre :

omxplayer video.h264

et le tour est joué.

A noter que si il n’y a pas de son, c’est parce qu’il manque la commande hdmi :

omxplayer -o hdmi video.h264

Faire fonctionner la caméra du Raspberry Pi avec SimpleCV

La caméra officielle du Raspberry Pi est malheureusement moins facile en prendre en main que de brancher une simple webcam via usb.
Afin de palier à tout cela vous aurez besoin de mettre en place des drivers afin que votre Raspberry Pi puisse reconnaitre votre appareil au même titre qu’une caméra en mode usb.
Vous trouverez le driver ci-dessous:
http://www.linux-projects.org/modules/sections/index.php?op=viewarticle&artid=14

Une fois installé il vous faudra également modifier un fichier dans la home du Raspberry Pi : .bashrc en ajoutant la ligne de code suivante :

export LD_PRELOAD=/usr/lib/uv4l/uv4lext/armv6l/libuv4lext.so

Source : https://www.raspberrypi.org/forums/viewtopic.php?t=57788