Comment construire un capteur de stationnement pour résoudre la difficulté de trouver une place libre
Dans ce projet, nous allons construire un simple capteur de stationnement à l'aide d'un Raspberry Pi. Il s'avère que chaque matin, je dois faire face à cette question : la SEULE place de parking devant mon bureau est-elle déjà occupée ? Parce que quand c'est le cas, je dois faire le tour du pâté de maisons et utiliser au moins 10 minutes de plus pour me garer et marcher jusqu'au bureau. Alors j'ai pensé que ce serait cool de savoir si la place est libre ou non, avant même d'essayer d'obtenir là. Au final, le résultat était un joli widget que je pouvais consulter depuis mon iPod ou mon téléphone portable :
Matériels
- Framboise Pi modèle B :
- Clé USB Wi-Fi
- Capteur de mouvement par Parallax
- Trois fils femelle à femelle
Câblage
Le détecteur de mouvement est très simple à installer car il ne dispose que de trois broches : GND, VCC (+5v) et OUT (signal numérique « 1 » ou « 0 »). S'il y a du mouvement autour, il affichera un « 1 », s'il n'y en a pas, un « 0 ». Vous pouvez voir la connexion dans le schéma ci-dessous, les câbles sont branchés directement sur les broches GPIO du Raspberry Pi. Si vous avez besoin de plus d'informations sur les broches GPIO, vous pouvez visiter ce guide sur makezine.com ; c'est une bonne source pour se familiariser avec les broches du Raspberry Pi .
Configurez votre compte Ubidots et vos variables
Si vous êtes nouveau sur Ubidots , créez un compte ici .
- Accédez à l'onglet « Sources » et ajoutez une nouvelle source.
- Sélectionnez Raspberry Pi comme nouvelle source de données et remplissez le formulaire.
- Cliquez maintenant sur la nouvelle source « My Raspberry Pi »
- Ajoutez une nouvelle variable appelée « libre ou occupé » et n'oubliez pas de compléter les champs nom et unité.
- Notez l'identifiant de votre variable :
- Prenez note de votre clé API trouvée dans « Mon profil -> Clé API »
Codage de votre Raspberry Pi
Vous devriez avoir déjà configuré votre Raspberry Pi et avoir accès à Internet depuis celui-ci. Sinon, suivez ce guide ou consultez cet article de blog sur la configuration du WiFi .
Lorsque vous êtes prêt, accédez à votre Raspberry Pi via un terminal (LxTerminal si vous accédez à votre Pi directement via son interface graphique), accédez à un dossier dans lequel vous souhaitez stocker ce projet et créez un nouveau fichier appelé « presence.py ».
$ sudo nano présence.py
Collez maintenant le code suivant :
importer RPi.GPIO en tant que GPIO ## Bibliothèque GPIO à partir d' ubidots importer ApiClient ## Temps d'importation de la bibliothèque Ubidots ## bibliothèque de temps pour les retards GPIO.setmode(GPIO.BCM) ## configurer BCM comme système de numérotation pour les entrées GPIO.setup(7, GPIO.IN) ##Déclarer GPIO7 comme entrée pour le capteur, essayez : api=ApiClient("75617caf2933588b7fd0da531155d16035138535") ##mettez votre propre apikey people= api.get_variable("53b9f8ff76254274effbbace")##mettez l'identifiant de votre propre variable sauf : print " je ne peux pas me connecter" ##si cela se produit, vérifiez votre connexion Internet while(1): presence=GPIO.input(7) ## sauvegarde de la valeur du capteur if(presence==0):##si la présence est nulle, cela signifie que le l'autre voiture est toujours là 🙁 people.save_value({'value':presence}) ##envoi de la valeur à ubidots time.sleep(1)##vérifie toutes les 5 secondes si l'autre voiture bouge, imprime "cero" if(presence) : people.save_value({'value':presence}) ##l'autre voiture est partie donc est vide maintenant 🙂 time.sleep(1) print "uno" GPIO.cleanup() ##réinitialiser l'état des broches GPIO
Exécutez votre programme :
$ sudo python présence.py
Création d'un indicateur dans le dashboard Ubidots
Maintenant que nous obtenons les données en direct de l'appareil, nous devons créer un widget personnalisé qui nous indique si la place de stationnement est occupée ou non. Cliquez sur l'onglet dashboard , puis ajoutez un nouveau widget :
Choisissez le widget « Indicateur » et suivez les étapes :
Super! vous devriez maintenant voir un widget en direct indiquant l'état de la place de stationnement. Au fait, vous pouvez intégrer ce widget dans n'importe quelle application Web ou mobile :
C'est tout pour ce projet ! Nous avons appris à connecter un capteur de mouvement au cloud Ubidots à l'aide d'un Raspberry Pi et à afficher ses données dans un widget en direct. Le projet pourrait être amélioré en utilisant un capteur de présence et non pas exactement un capteur de mouvement (qui revient à « 0 » une fois le mouvement disparu). Elle peut également être étendue en mettant en place des alertes SMS ou Email, qui peuvent être créées dans l'onglet « Événements » de votre compte Ubidots .
Vous avez une question ? n'hésitez pas à commenter ci-dessous ou à laisser un ticket sur notre page d'assistance.
Voici un autre projet sympa utilisant Raspberry Pi et un capteur de mouvement :
Vous n'avez toujours pas de Ubidots ? cliquez ici pour commencer aujourd'hui.