Table des matières:
- Fournitures
- Étape 1: faire le circuit
- Étape 2: Configurer Python
- Étape 3: Lire les données
- Étape 4: La base de données (mySQL)
- Étape 5: Liez votre Python à la base de données
- Étape 6: envoyer des données à la base de données
- Étape 7: utiliser les données
- Étape 8: Le boîtier: Bas
- Étape 9: Le boîtier: petits côtés
- Étape 10: Le boîtier: grands côtés
- Étape 11: Ajout d'un trou pour l'écran LCD et LDR
- Étape 12: Fixez le scanner Arduino et RFID sur le côté
Vidéo: Smartbike partageable : 12 étapes (avec photos)
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:07
Chaque fois que j'utilise mon vélo, j'ai tendance à oublier d'allumer mes lumières quand il fait noir. De plus, sur mon vélo, je n'ai aucun moyen de savoir à quelle vitesse je vais.
J'ai donc décidé de créer un vélo intelligent partageable qui garde une trace de:
- La vitesse
- Emplacement
- Depuis combien de temps utilisez-vous le vélo
Il allume ou éteint également automatiquement les lumières. J'ai utilisé un scanner RFID pour que quelqu'un d'autre puisse utiliser le vélo sans modifier mes données.
Lien vers mon github.
Fournitures
- Raspberry Pi 3 (32, 49 €)
- Carte SD (pour RPi) (13, 99 €)
- GPS NEO 6M (pour la vitesse et la localisation) (15, 99 €)
- Anker PowerCore 10400mAh (29, 99 €)
- RFID RC522 (5, 49 €)
- Écran LCD 16x2 (9, 99 €)
- Carte Elegoo Uno R3 (9, 34 €)
- LDR (1,50 €)
- MCP3008 (ADC) (5, 98 €)
- Une lumière recyclée
- Bois pour le logement (~15, 00 €)
- Câbles (~ 6, 00 €)
Prix total: 145,76 €
Étape 1: faire le circuit
Vous devrez d'abord tout assembler. J'ai inclus un schéma fritzing.
Remarque: certains composants comme le scanner RFID doivent être soudés.
Étape 2: Configurer Python
Pour ce projet, j'utiliserai python 3 et exécuterai le code avec un serveur python. Je vais lier mon github avec mon code.
Vous devez d'abord établir une connexion avec votre Raspberry Pi via Paramètres> Build, Exection, Deployment> Deployment. Ensuite, vous devez créer un interprète avec tous les packages requis. Sur mon Raspberry Pi, j'utilise python 3.5.
Lorsque vous avez créé l'interprète, vous pouvez créer un nouveau projet et sélectionner l'interprète que vous venez de créer pour le projet. Ensuite, vous devrez choisir où enregistrer les fichiers sur votre PC et RPi.
Étape 3: Lire les données
Une fois que vous avez fait le circuit et que tous les composants fonctionnent, vous devez lire les données des capteurs. Mon projet a été réalisé à l'aide de Python 3. En python, j'ai lu la plupart des données des capteurs à l'aide de classes.
- Le scanner RFID est utilisé avec l'arduino (la plupart des informations sur la façon de l'utiliser ici). Je lis les données du scanner avec l'arduino et les envoie au RPi avec Serial USB.
- Le module GPS utilise également la communication série. Les données que le GPS envoie au RPi ne sont pas si bien formatées que j'ai utilisé une bibliothèque pour analyser les données et les rendre beaucoup plus faciles à utiliser. (Quelques informations supplémentaires sur les données GPS).
- Les valeurs analogiques du LDR sont converties à l'aide du mcp3008 (un adc), puis je transforme la valeur en pourcentage.
Remarque: si vous souhaitez utiliser des « boucles while » en python pour obtenir constamment des données lors de l'exécution d'un serveur python. Vous aurez besoin d'utiliser le threading (plus d'informations sur le threading). Le filetage est facile à utiliser.
Étape 4: La base de données (mySQL)
Maintenant que vous avez vos données des capteurs, vous avez besoin d'un endroit pour stocker les données. Nous allons stocker les données dans une base de données relationnelle dans mySQL.
J'exécute la base de données sur mon RPi pour que cela fonctionne, j'ai besoin d'installer mariaDB sur mon RPi. Une fois que vous avez installé mariaDB et l'avez configuré, vous pouvez utiliser l'atelier mySQL sur votre PC pour vous connecter à votre base de données sur le RPi.
Vous devrez créer l'ERD sur le PC; développer l'ERD et exporter la base de données. Ensuite, vous pouvez importer le dump (n'oubliez pas de créer un schéma) sur le RPi via mySQL workbench.
Remarque: Le tableau « Bike_has_User » n'est pas requis et ne sera utilisé que si vous prévoyez d'utiliser plusieurs vélos. Vous pouvez supprimer la table 'Bike_has_User' et lier la table User avec 'Datahistory'.
Étape 5: Liez votre Python à la base de données
Maintenant que votre base de données est installée, vous pouvez lier votre python à la base de données. Cliquez sur base de données (à droite de l'écran) et ajoutez une nouvelle source de données.
La base de données et le script python s'exécutent sur le RPi, utilisez donc l'IP localhost. Utilisez l'utilisateur que vous avez précédemment créé lors de la configuration de mariaDB.
Étape 6: envoyer des données à la base de données
Lorsque vous avez tout configuré, vous pouvez commencer à envoyer des données à la base de données. J'ai utilisé une classe helpers. Database en python pour cela (voir mon github).
La photo montre un exemple de code.
Étape 7: utiliser les données
Avec la classe helpers. Database, vous pouvez insérer des données dans la base de données ou obtenir des données de la base de données.
Maintenant que tout fonctionne, vous pouvez utiliser les données de la base de données pour les afficher sur un site Web ou où vous le souhaitez.
Étape 8: Le boîtier: Bas
A propos du logement
Enfin, le boîtier de ce projet est en bois (310x130x110 mm). La plupart des composants sont vissés au bois, à l'exception de la banque d'alimentation et de la planche à pain.
Vous pouvez réduire la taille du boîtier si vous soudez les composants. Je n'ai pas inclus de moyen de connecter en toute sécurité le boîtier au vélo, mais il existe de nombreuses options.
Faire le logement
Vous devrez commencer par faire la partie inférieure du boîtier. Scier un morceau de bois (130x310 mm). Fixez ensuite le RPi avec une vis et collez la planche à pain sur la partie inférieure.
Remarque: Vous pouvez réaliser une pièce identique pour le haut du boîtier
Étape 9: Le boîtier: petits côtés
Lorsque vous avez terminé la partie inférieure. Vous pouvez commencer à scier les parties latérales. Commencez par faire les petits côtés.
Vous devrez d'abord attacher les petits côtés. J'ai utilisé un morceau de bois supplémentaire pour relier toutes les pièces ensemble, cette pièce supplémentaire facilite les choses.
Étape 10: Le boîtier: grands côtés
Maintenant, vous devrez faire les plus grands côtés. Une fois de plus, sciez les côtés et attachez-les à la partie inférieure à l'aide du morceau de bois supplémentaire.
Étape 11: Ajout d'un trou pour l'écran LCD et LDR
Vous devrez également faire un trou pour l'écran LCD afin que vous puissiez voir l'adresse IP et afficher si un utilisateur numérise ou non.
Utilisez les mesures de l'écran LCD pour décider de la taille du trou.
Après avoir inséré l'écran LCD, vous devez vous assurer que le LDR est à l'extérieur du boîtier. J'ai utilisé un petit trou pour que le LDR puisse voir la lumière du jour.
Étape 12: Fixez le scanner Arduino et RFID sur le côté
Une fois le boîtier terminé, vous devez toujours attacher le scanner arduino et RFID. Vous pouvez les attacher partout où vous avez de la place. Mais je recommande de fixer le scanner RFID sous l'écran LCD afin que l'utilisateur puisse voir s'il a scanné à l'intérieur ou à l'extérieur.
Conseillé:
Prenez de superbes photos avec un iPhone : 9 étapes (avec photos)
Prenez de superbes photos avec un iPhone : la plupart d'entre nous ont un smartphone partout avec nous ces jours-ci, il est donc important de savoir comment utiliser l'appareil photo de votre smartphone pour prendre de superbes photos ! Je n'ai un smartphone que depuis quelques années et j'aime avoir un appareil photo décent pour documenter les choses que je
Plateforme avec des niveaux infinis sur GameGo avec Makecode Arcade : 5 étapes (avec photos)
Plateforme avec des niveaux infinis sur GameGo avec Makecode Arcade : GameGo est une console portable de jeu rétro compatible Microsoft Makecode développée par TinkerGen STEM education. Il est basé sur la puce STM32F401RET6 ARM Cortex M4 et est destiné aux éducateurs STEM ou simplement aux personnes qui aiment s'amuser à créer un jeu vidéo rétro
Balance intelligente bricolage avec réveil (avec Wi-Fi, ESP8266, Arduino IDE et Adafruit.io): 10 étapes (avec photos)
Balance intelligente bricolage avec réveil (avec Wi-Fi, ESP8266, Arduino IDE et Adafruit.io): Dans mon projet précédent, j'ai développé une balance de salle de bain intelligente avec Wi-Fi. Il peut mesurer le poids de l'utilisateur, l'afficher localement et l'envoyer vers le cloud. Vous pouvez obtenir plus de détails à ce sujet sur le lien ci-dessous : https://www.instructables.com/id/Wi-Fi-Smart-Scale-wi
Tapis avec capteurs/communication RF avec Arduino Micro : 4 étapes (avec photos)
Tapis avec capteurs/communication RF avec Arduino Micro : J'ai récemment terminé l'installation Tout aussi diversifiée, qui est composée d'une série de lampes qui réagissent aux capteurs placés dans un tapis sous les lampes. Voici comment j'ai fait le tapis avec des capteurs de pression. J'espère que vous trouverez ça utile.:)
Lancez votre diaporama de photos de vacances avec une touche de magie ! : 9 étapes (avec photos)
Lancez votre diaporama de photos de vacances avec une touche de magie ! : Au fil des ans, j'ai pris l'habitude d'emporter une petite figurine avec moi en voyage : j'achète souvent un petit artoy vierge (comme celui sur la photo) et je peins il correspond au drapeau et au thème du pays que je visite (dans ce cas, la Sicile). T