Table des matières:

Système de gestion des stocks intégré : 10 étapes (avec photos)
Système de gestion des stocks intégré : 10 étapes (avec photos)

Vidéo: Système de gestion des stocks intégré : 10 étapes (avec photos)

Vidéo: Système de gestion des stocks intégré : 10 étapes (avec photos)
Vidéo: Gestion de stock : contrôler les entrées/sorties, visualiser l'état des marchandises | Excel Avancé 2024, Juillet
Anonim
Système intégré de gestion des stocks
Système intégré de gestion des stocks

J'ai toujours voulu un moyen abordable de garder une trace de tout dans mon garde-manger, alors il y a quelques mois, j'ai commencé à travailler sur un projet qui ferait exactement cela. L'objectif était de créer un système simple et abordable, très facile à utiliser, tout en stockant suffisamment d'informations pour justifier l'effort supplémentaire. Ce que j'ai finalement construit est un système de gestion des stocks qui peut stocker et mettre à jour des informations sur tout article doté d'un code à barres, ainsi que des données de base sur ces articles à partir d'Internet.

Bref, le système fonctionne comme ça.

  1. Un code-barres est scanné.
  2. Un script Python lit les données du scanner.
  3. La requête est envoyée à une API REST s'exécutant sur node-red.
  4. L'API traite la demande, extrait des données supplémentaires sur Internet et modifie la base de données en conséquence.

Tout cela est fait sur un seul Raspberry Pi, vous donnant la possibilité de mettre à jour et de stocker des données sur l'ensemble de votre inventaire dans un petit système portable. Ce projet est un peu technique et une compréhension de base des bases de données, HTTP et Python sera très utile, mais je ferai de mon mieux pour le rendre assez facile à comprendre pour un débutant. Commençons!

Étape 1: ce dont vous aurez besoin

Ce dont vous aurez besoin
Ce dont vous aurez besoin

Les pièces dont vous aurez besoin pour ce projet sont…

  • Tarte aux framboises
  • Scanner de code à barres USB (lien vers celui que j'utilise)
  • Adaptateur WiFi (si votre Pi n'a pas de WiFi intégré)
  • Interrupteur à bascule
  • Fils de cavalier
  • Étui pour votre Raspberry Pi (facultatif)

Étape 2: Installer et configurer la base de données

Installer et configurer la base de données
Installer et configurer la base de données

MySQL est le système de gestion de base de données qui contiendra toutes les données que nous extrayons des scans de codes à barres. C'est très facile à faire sur le Pi, exécutez simplement la commande suivante dans le terminal de votre Pi.

sudo apt-get install mysql-server

Vous serez ensuite guidé tout au long du processus d'installation et invité à créer un mot de passe. C'est ça. Avec MySQL installé, votre Pi peut agir comme son propre petit serveur de base de données. Nous devons maintenant créer les tables qui contiendront nos données. Tout d'abord, connectez-vous. Après l'installation, le seul utilisateur MySql est root (l'utilisateur qui a accès à chaque table et système). Vous pouvez vous connecter en tant que root en exécutant la commande suivante.

mysql -uroot -p

Bientôt, nous allons configurer un autre utilisateur que notre système utilisera, mais nous devons d'abord créer notre base de données et les tables de cette base de données. Pour ce faire, exécutez les commandes suivantes.

créer un inventaire de base de données;

utiliser l'inventaire; créer une table upc_count(upc varchar(15) non nul, nombre entier(3) non nul par défaut 0, nom varchar(255), taille varchar(40), fabricant varchar(80), clé primaire (upc));

Nous avons maintenant une table simple avec cinq colonnes upc (qui sera la clé primaire), nombre, nom, taille et fabricant. Remarque: Un upc est un numéro qui identifie de manière unique un produit. Ce numéro est ce qui est lu sur l'étiquette du code à barres lorsqu'elle est numérisée.

Enfin, nous allons configurer l'utilisateur dont nous avons besoin. Je vais appeler le mien, pour ce faire, exécutez les commandes suivantes, en utilisant le nom d'utilisateur et le mot de passe que vous souhaitez:

accorder tout sur l'inventaire.* à ''@'localhost' identifié par;

Maintenant que nous avons notre base de données, nous pouvons commencer à construire le système !

Étape 3: Obtenir la clé API OutPan

OutPan est une API qui peut être utilisée pour obtenir des informations sur un produit en utilisant son numéro upc. Nous allons l'utiliser pour extraire plus d'informations sur les produits au fur et à mesure qu'ils sont ajoutés à la base de données. Il s'agit d'une API publique, mais pour l'utiliser, vous devez vous inscrire et obtenir une clé API. L'inscription est assez simple, allez simplement ici et suivez les étapes pour vous inscrire à une clé.

Une fois que vous obtenez votre clé, copiez-la. Vous en aurez besoin dans une étape ultérieure.

Étape 4: Installer et configurer Node-Red

Installer et configurer Node-Red
Installer et configurer Node-Red
Installer et configurer Node-Red
Installer et configurer Node-Red

Node-Red est préinstallé sur toutes les versions du système d'exploitation Raspbian depuis fin 2015. Pour savoir si node-red est installé, exécutez simplement la commande suivante dans le terminal.

nœud-rouge

Si un message "commande non trouvée" s'affiche, vous devrez installer node-red. Pour ce faire, exécutez les commandes suivantes.

sudo apt-get update sudo apt-get install nodered

Après avoir démarré node-red, vous pouvez accéder à node-red à partir de l'adresse affichée dans la sortie.

La seule configuration restante est d'installer les nœuds MySQL. Vous pouvez le faire via le navigateur. Cliquez sur le symbole dans le coin supérieur droit de la page, puis cliquez sur l'option « Gérer la palette ». À partir de là, recherchez simplement « mysql » et cliquez sur le bouton d'installation.

Nous sommes maintenant prêts à importer l'API.

Étape 5: Configurer l'API

Configurer l'API
Configurer l'API
Configurer l'API
Configurer l'API
Configurer l'API
Configurer l'API

Vous trouverez ci-dessous l'intégralité de l'API node-red que j'ai écrite. Copiez simplement tout ci-dessous, cliquez sur le symbole dans le coin supérieur droit et accédez à importer → depuis le presse-papiers.

[{"id":"ef09537e.8b96d", "type":"subflow", "name":"mineOpenPanData", "info":"", "in":[{"x":64, "y":57, "fils":[{"id":"b8b6d2e4.169e7"}]}], "out":[{"x":755, "y":58, "fils":[{"id": "8dc2d52b.6a6fd8", "port":0}]}]}, {"id":"b8b6d2e4.169e7", "type":"demande http", "z":"ef09537e.8b96d", "nom ":"Out Pan Request", "method":"GET", "ret":"txt", "url":"https://api.outpan.com/v2/products/{{{upc}}} ?apikey=", "tls":"", "x":202, "y":57, "wires":

Vous disposez maintenant de l'intégralité de l'API que nous utiliserons pour insérer et mettre à jour les données. Seuls quelques ajustements doivent être effectués avant que nous soyons prêts à l'utiliser.

  1. Tout d'abord, accédez à tous les nœuds de la base de données MySQL et remplacez le nom d'utilisateur et le mot de passe par ceux que vous avez créés pour la base de données à l'étape précédente.
  2. Deuxièmement, modifiez le sous-flux mineOutPanData afin que la requête HTTP utilisée pour obtenir les données Open Pan utilise votre propre clé API.

Vous êtes maintenant prêt à utiliser l'API. Ce flux crée une API REST simple qui vous permet d'envoyer des données depuis n'importe quel appareil connecté à Internet à l'aide de requêtes

Étape 6: (Facultatif) Comprendre l'API

Connectez l'interrupteur à bascule
Connectez l'interrupteur à bascule

La dernière chose que nous devons faire est de connecter un commutateur au GPIO afin que nous puissions analyser en deux modes, ajouter et supprimer.

C'est assez simple, configurez simplement un interrupteur à bascule pour lire à partir de la broche GPIO 21 sur le Pi et vous êtes prêt à partir. En utilisant le circuit sur l'image jointe (appelé circuit PUD DOWN), le script enverra une demande d'ajout lorsque l'interrupteur à bascule est fermé et une demande de suppression lorsque l'interrupteur à bascule est ouvert.

Après cela, nous attachons simplement les fils à l'intérieur du boîtier et nous sommes prêts à partir.

Étape 9: (Facultatif) Créez une interface utilisateur

(Facultatif) Créer une interface utilisateur
(Facultatif) Créer une interface utilisateur

Cette dernière étape n'est pas nécessaire mais certainement utile si vous souhaitez utiliser tout le potentiel du système. J'ai mis en place une interface utilisateur très simple qui affichait toutes les données que nous avons dans notre base de données dans un tableau facile à parcourir. Le tableau peut être trié par colonne et également recherché, ce qui permet de voir facilement ce que vous avez sous la main.

L'interface utilisateur est assez simple; J'ai réutilisé un exemple de code que j'ai trouvé en ligne pour travailler avec notre API (si vous êtes intéressé, cet exemple de code peut être trouvé ici).

Pour exécuter l'interface utilisateur, procédez comme suit…

  1. Enregistrez le fichier index.txt joint sous index.html (je n'ai pas pu télécharger le fichier en tant que fichier HTML pour une raison quelconque).
  2. Mettez les deux fichiers dans le même répertoire sur votre ordinateur.
  3. Exécutez le fichier 'index.html' dans votre navigateur Web préféré.

Maintenant, nous pouvons facilement voir et trier votre inventaire !

Étape 10: commencez à numériser

Commencez à numériser !
Commencez à numériser !

Vous êtes maintenant prêt à commencer à numériser ! Si vous avez des questions, laissez-les dans les commentaires et je ne manquerai pas d'y répondre quand je le pourrai.

Enfin, vos votes au concours seraient grandement appréciés. Merci d'avoir lu!

Conseillé: