Table des matières:
- Fournitures
- Étape 1: Préliminaire
- Étape 2: Configuration de la base de données
- Étape 3: Configuration du référentiel Git
- Étape 4: Back-end
- Étape 5: Circuit
- Étape 6: Cas
- Étape 7: Des questions ?
Vidéo: Gestion intelligente de la blanchisserie : 7 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:06
Dandywash est un système de gestion de blanchisserie intelligent, destiné aux personnes qui ont peu de temps à consacrer aux tâches ménagères banales comme la lessive. Nous avons tous été là, juste à jeter nos vêtements sales dans le panier, dans l'espoir de trouver la motivation pour faire le tri plus tard. Cependant, personne ne le trouve jamais. Jusqu'à ce que nous ayons vraiment besoin d'un vêtement et que nous ne le trouvions nulle part. Ce n'est que le début. Vient ensuite le tri, le remplissage et le suivi. Faire cette tâche simple et répétitive demande beaucoup trop d'attention et de concentration. C'est exactement pourquoi j'ai commencé ce projet. Dandywash élimine toutes ces activités fastidieuses. Vous n'avez plus besoin de passer une seconde de plus à trier, suivre ou mesurer vos chargements. Tout en gardant un contrôle total. Découvrez-en plus et comment vous pouvez obtenir le même résultat productif en lisant cet article.
Fournitures
J'ai créé une nomenclature détaillée dans Excel, que vous pouvez consulter ici.
Celui-ci contient tous les éléments essentiels dont vous avez besoin et où les obtenir.
En plus de ceux-ci, je voudrais énumérer quelques éléments supplémentaires qui seront très utiles lors de la réalisation de ce projet vous-même, mais ne sont pas obligatoires.
- Étant donné que vous aurez besoin de longs cavaliers et que ce n'est pas vraiment une chose, je vous suggère d'acheter à la fois des câbles femelles-femelles et des câbles mâles-mâles. J'ai aussi acheté des femelles - mâles mais ce n'est pas vraiment nécessaire. De cette façon, vous pouvez créer des câbles plus longs en les enchaînant ensemble. Cela élimine les travaux de soudure fastidieux.
-
J'ai également ajouté beaucoup de résistances de sécurité dans le circuit. N'hésitez pas à les retirer si vous vous sentez plus en confiance. Si vous manquez de résistances, je vous recommande de vous procurer ce kit, il est très pratique de toujours avoir les résistances dont vous avez besoin, étiquetées clairement.
Étape 1: Préliminaire
Démarrer le Raspberry Pi
Afin d'exécuter toute une chaîne IOT à partir du Raspberry Pi, nous devons initialiser l'appareil. Cela peut être fait en téléchargeant l'image fournie et en la gravant sur une carte micro SD (16 Go). Cela peut être fait en utilisant vraiment Win32DiskImager ou tout autre logiciel. Assurez-vous que votre carte SD est complètement vide et formatée avant de graver l'image. Cette vidéo explique tout le processus étape par étape. Notez que vous n'avez pas besoin d'utiliser l'image raspbian mais l'image fournie à la place.
Lorsque vous avez terminé d'écrire la carte SD, vous pouvez la retirer et l'insérer dans le Pi. Assurez-vous que le Pi n'est pas encore connecté à l'alimentation !
Lorsque la carte SD est insérée, connectez le Pi à votre ordinateur portable à l'aide d'un câble Ethernet. Seulement alors, quand il est déjà sous votre contrôle, donnez-lui le pouvoir. Le Pi démarrera dans quelques secondes.
Vous pouvez surveiller cela en allant dans l'invite de commande et en tapant
ping 169.254.10.1 -t
Lorsque vous obtenez une réponse plutôt qu'un « Hôte inaccessible », votre Pi a démarré avec succès. Cela signifie que nous pouvons interagir avec lui. Quittez la boucle infinie de ping en appuyant sur Ctrl+C. Vous pouvez maintenant entrer dans le Pi en tapant
cela vous demandera le mot de passe, qui est le framboise par défaut.
Lors du premier démarrage, il est généralement recommandé d'exécuter les deux
$ sudo apt-get update
$ sudo apt-get upgrade
Cela garantira que tous les packages sont mis à jour et sur la dernière version.
MariaDB et Apache2 seront déjà installés. Nous n'avons donc pas à nous en soucier. Cependant, nous devons mettre en place d'autres choses afin que tout fonctionne comme nous le souhaitons.
Cependant, vous devez d'abord redémarrer pour vous assurer que tout est prêt pour l'étape suivante.
$ sudo redémarrer
Étape 2: Configuration de la base de données
Nous allons configurer la base de données en utilisant votre ordinateur portable/de bureau, pas le Pi. Ouvrez MySQL Workbench (guide de téléchargement) et ajoutez une nouvelle connexion.
Ensuite, vous serez invité avec une fenêtre de configuration. Le mien est rempli comme le vôtre devrait l'être. Portez une attention particulière aux champs marqués. Les flèches pointent vers les mots de passe que vous devez stocker dans le coffre-fort. Ce ne sont que des valeurs par défaut et peuvent être modifiées à votre guise.
Lorsque toutes les informations sont saisies, cliquez sur Tester la connexion, ignorez l'avertissement et, espérons-le, voyez la fenêtre de réussite. Si vous ne le faites pas, certains champs sont erronés. Vous pouvez continuer en cliquant sur Ok dans la fenêtre avec tous les champs de saisie.
La connexion devrait maintenant être visible dans la fenêtre de démarrage. Cliquez dessus pour essayer de vous connecter. Le mot de passe doit être entré automatiquement puisque nous l'avons stocké dans le coffre-fort.
La dernière étape consiste à importer la base de données. Vous pouvez télécharger le dump ici. Cette vidéo explique comment ouvrir et exécuter un fichier.sql. Assurez-vous que vous êtes connecté au Raspberry Pi, et non à l'instance locale de votre ordinateur portable !
Étape 3: Configuration du référentiel Git
Travailler avec un dépôt git est à peu près nécessaire ici. Surtout si vous voulez basculer facilement entre votre pc et raspi. Git doit déjà être installé sur l'appareil, vous pouvez donc simplement cloner le dépôt de votre choix dans le dossier de votre choix. Cependant, puisque nous utilisons Apache, nous devons mettre notre code Frontend (html, css, javascript) dans le dossier /var/www/html. Je ne veux pas mettre tout le repo ici, et je ne veux certainement pas un repo séparé.
Cela peut être résolu en créant un lien symbiotique, qui est essentiellement le même qu'un raccourci dans Windows. Il peut être facilement paramétré en tapant la commande suivante dans le terminal raspi (après avoir cloné le repo !)
$ git clone
La création d'un lien symbiotique a la structure suivante
$ ln -s /chemin/vers/répertoire /chemin/vers/lien symbolique
Appliquée à ce cas d'utilisation, la commande devrait ressembler à ceci
$ ln -s ~/home/pi/project1/git-repo/ /var/www/html
Maintenant, si tout s'est bien passé, vous pouvez accéder à https://169.254.10.1/Frontend pour voir le fichier index.html à partir du référentiel git.
Dans ce dossier, vous trouverez le code frontend responsive complet. Y compris HTML5, CSS et JavaScript.
Étape 4: Back-end
Pour ce projet, nous utiliserons Flask en combinaison avec Socketio. Cela nous permet de mettre en place un serveur Web flexible avec routage et Websockets. Cette application Flask interagira également avec la base de données afin d'effectuer des actions CRUD. La meilleure chose à propos de toute cette pile, c'est qu'elle prend très peu de temps et d'efforts à mettre en place. Tout d'abord, assurez-vous que les packages Python tiers suivants sont installés. Ceux-ci doivent être inclus dans l'image, mais en exécutant les commandes suivantes, vous pouvez vous assurer / mettre à jour les versions les plus récentes.
$ pip3 installer mysql-connector-python
$ pip3 installer flask-socketio $ pip3 installer flask-cors $ pip3 installer gevent $ pip3 installer gevent-websocket
Vous devriez maintenant pouvoir exécuter le script app.py sans aucun problème. Il se peut que vous obteniez un attributeError indiquant que l'objet de type « Base de données » n'a pas d'attribut « curseur ». Ceci est dû à une erreur dans le fichier config.py. Assurez-vous que le mot de passe du nom d'utilisateur et le nom de la base de données sont corrects et qu'ils ont accès à la base de données que nous venons d'importer. Ceci est particulièrement remarquable au cas où vous auriez changé le nom d'utilisateur et le mot de passe par défaut dans MySQL.
Étape 5: Circuit
Je ne peux pas vraiment dire grand-chose sur le circuit. Vous n'aurez qu'à le construire et à exécuter les scripts de test dans le dépôt git. J'ai créé un script de test pour chaque capteur et actionneur du circuit, afin que vous puissiez tester chaque pièce/composant individuellement.
Il se peut que vous deviez modifier les numéros de broche dans le code. J'ai également ajouté beaucoup de résistances de sécurité dans le circuit. N'hésitez pas à les retirer si vous vous sentez plus en confiance. Si vous manquez de résistances, je vous recommande de vous procurer ce kit, il est très pratique de toujours avoir les résistances dont vous avez besoin, étiquetées clairement.
Si le circuit vous fait peur, ne vous découragez pas. Essayez de le décomposer en sections. Construisez d'abord les boutons, assurez-vous que cela fonctionne, puis passez au capteur suivant. C'est quelque chose que vous ne pouvez pas construire en une seule fois, à moins que vous ne soyez étonnamment talentueux.
Enfin, notez que le Raspberry Pi ne convient à aucun logiciel sérieux PWM. Linux n'est pas un système d'exploitation en temps réel. Cela signifie que vous aurez une légère gigue dans les servomoteurs. La broche GPIO 18 prend en charge le pwm matériel, mais nous avons besoin de plus que de la 1 broche.
Étape 6: Cas
J'avais toute une conception planifiée dans ma tête, qui n'a pas pu être réalisée à cause de la pandémie actuelle. Bien sûr, c'est une situation qui demande de la flexibilité de la part de chacun, et c'est exactement ainsi que j'ai réagi. J'ai toujours la scène 3D originale que j'ai faite, et je la partagerai également ici, si vous souhaitez construire le cas de cette façon. Cependant, pour le reste de cet article, je vais discuter de la façon dont le cas a été construit alternativement.
Le principal inconvénient était la plaque abs que j'allais utiliser pour monter la partie supérieure sur la partie inférieure. C'était le matériau parfait. Esthétique et très pratique. Cela ne pouvait cependant pas être réalisé, j'ai donc dû trouver une alternative. Comme je ne pouvais pas penser à un autre matériau de la même résistance qui pourrait être plié de la même manière, j'ai décidé de le remplacer par un sosie en bois. Cela rendait les courbes arrondies impossibles, mais créait en fait une autre surface plane qui pouvait être utilisée pour ranger des articles comme des produits de lessive ou des pinces à linge. J'ai fini par l'utiliser pour stocker une deuxième planche à pain, ce qui a rendu ma vie de circuit beaucoup plus facile pour ce prototype.
Notez le trou rectangulaire qui a été percé à l'arrière. Cela permet d'acheminer les câbles vers le Raspbarry Pi.
Pour les planches, j'ai rendu visite à mon magasin de bricolage local. Ils ont toujours du bois de rebut qui traîne et sont prêts à le couper en morceaux pour un petit prix. J'ai payé un total de 5 € au total. Un grand bravo à Louis de Hubo Wevelgem pour rendre cela possible. Ensuite, il ne s'agissait plus que de percer des trous et de tout visser en place. Un aperçu détaillé de l'endroit où couper et où percer peut être trouvé ici.
Pour les bits imprimés en 3D, je devais m'appuyer sur les gens autour de moi, car l'école ne pouvait plus fournir ce service en raison de la pandémie. Grâce à un ami d'un ami, j'ai été en contact avec quelqu'un qui commençait tout juste à créer son entreprise d'impression 3D. Il a été assez généreux pour imprimer ma pièce principale. La qualité était plutôt médiocre en raison d'une mauvaise configuration de l'imprimante. J'ai acheté un spray d'apprêt et lui ai appliqué 3 couches, ce qui lui a redonné l'aspect général.
Les supports de capteurs de distance ont été réalisés par un autre ami. Il a également imprimé les trappes qui étaient attachées aux servomoteurs. Au début, j'ai essayé avec du carton, mais ils ne collent pas très bien. Notez que si vous imprimez ces bits en 3D, vous avez besoin de bottom_hatch.stl deux fois, ainsi que de distanceSensorHolder.stl. main_piece.stl et middle_hatch.stl ne doivent être imprimés qu'une seule fois.
Étape 7: Des questions ?
Si une partie n'est pas encore totalement claire pour vous, n'hésitez pas à me contacter et permettez-moi de vous aider.
N'hésitez pas à prendre contact par email sur [email protected]
Conseillé:
Gestion facile hors bande pour l'informatique : 4 étapes
Gestion hors bande facile pour l'informatique : icônes créées par Freepik à partir de www.flaticon.comApprenez à configurer la gestion hors bande (OOBM) en connectant un Raspberry Pi configuré à distance.it et un appareil Android ou iPhone par connexion USB. Cela fonctionne sur RPi2/RPi3/RPi4. Si vous ne savez pas quoi
Faire une Pi Zero Dashcam (pt. 3) : Gestion des fichiers et améliorations : 3 étapes
Faire une Pi Zero Dashcam (pt. 3) : Gestion des fichiers et améliorations : Nous continuons avec le projet Pi Zero dashcam et dans cet article, nous nous occupons de la gestion des fichiers tout en ajoutant quelques améliorations au processus. Ce projet est presque terminé et nous effectuerons des tests sur route dans le post/vidéo de la semaine prochaine
Gestion des fichiers de la carte Micro SD : 4 étapes
Gestion des fichiers de la carte Micro SD : les techniques de gestion des fichiers de la carte SD dans ce instructable peuvent être utilisées dans des projets qui nécessitent des données persistantes, des données qui sont conservées lorsque votre projet est éteint et disponibles lorsqu'il est rallumé. De plus, les données sont portables en ce sens que le
Gestion de l'alimentation pour CR2032 : 4 étapes
Gestion de l'alimentation pour CR2032 : faire une application à faible consommation d'énergie nécessite des composants spéciaux et des soins de lignes de code. Certains composants offrent cette fonctionnalité, d'autres nécessitent d'être travaillés en peu de temps. l'idée principale lorsque l'on travaille dans une application à très basse énergie est le type de batterie. les
Système de notification de blanchisserie basé sur l'IoT : 18 étapes
Système de notification de blanchisserie basé sur l'IoT : HiThis instructable donne une introduction étape par étape sur la façon de créer un système de notification de blanchisserie basé sur l'IoT. L'appareil est attaché dans vos tiroirs et votre sac à linge. Par souci de démonstration ici, nous avons pris deux tiroirs et un sac à linge. Il sent