Table des matières:

Time Cube - Gadget de suivi du temps Arduino : 6 étapes
Time Cube - Gadget de suivi du temps Arduino : 6 étapes

Vidéo: Time Cube - Gadget de suivi du temps Arduino : 6 étapes

Vidéo: Time Cube - Gadget de suivi du temps Arduino : 6 étapes
Vidéo: Тур по Моему Секретному Складу 2024, Novembre
Anonim
Time Cube - Gadget de suivi du temps Arduino
Time Cube - Gadget de suivi du temps Arduino
Time Cube - Gadget de suivi du temps Arduino
Time Cube - Gadget de suivi du temps Arduino

Je voudrais vous proposer un projet arduino simple mais vraiment utile pour suivre les événements temporels en retournant un gadget cube intelligent. Retournez-le sur "Travail" > "Apprendre" > "Corvées" > "Repos" et il comptera le temps que vous passez sur cette activité. Le cube de temps est construit sur la base d'un accéléromètre Arduino Nano et ADXL345 placé dans une boîte de taille appropriée sur laquelle vous pouvez dessiner des symboles ou des noms d'activités. À la fin de la journée, vous pouvez consulter les statistiques. J'espère que cela me motivera à « apprendre » davantage.

Il existe de nombreux produits similaires sur le marché comme TimeFlip.io, Timeular.com, ZEI. Vous pouvez également essayer un joli projet de bricolage d'Adafruit https://learn.adafruit.com/time-tracking-cube. Cependant je vous propose de faire beaucoup plus simple. Pour suivre les données de temps, vous n'avez besoin d'aucune connexion Internet Wi-Fi ou Bluetooth aux services cloud. Time Cube est alimenté et connecté au PC par câble USB. Sur l'ordinateur, vous devez exécuter mon application Java qui écoute les messages série d'arduino et affiche le temps total passé.

Toutes les sources de programmes requises et quelques instructions pas très détaillées que vous pouvez trouver sur mon projet GitHub:

Fournitures

1. Arduino Micro ou Nano comme ça:

2. Accéléromètre ADXL345:

3. Carton/boîte de cube en plastique

4. Câble USB

Étape 1: câbler la carte et l'accéléromètre

Câbler la carte et l'accéléromètre
Câbler la carte et l'accéléromètre

Le capteur ADXL345 est un accéléromètre à 3 axes qui peut mesurer les forces d'accélération et lorsqu'il est statique, vous pouvez également lire son orientation. Vous devez câbler la carte Arduino Nano ou Micro et l'accéléromètre ADXL345 comme sur l'image.

Je n'expliquerai pas en détail comment fonctionne l'accéléromètre ADXL345. Toutes les informations requises que j'ai trouvées dans un très bel article sur la connexion des accéléromètres à arduino et la programmation:

Étape 2: programme Flash vers Arduino Nano

Programme Flash pour Arduino Nano
Programme Flash pour Arduino Nano
Programme Flash pour Arduino Nano
Programme Flash pour Arduino Nano

Dans cette étape, nous devons télécharger le programme du studio Arduino vers la carte arduino. L'arduino nano sera capable de lire les coordonnées XYZ de l'accéléromètre et de les envoyer au port série dans une sorte de paquets de données comme

Vous pouvez télécharger toutes les sources requises depuis ma page de projet GitHub (en tant que fichier d'archive unique):

1. Décompressez l'archive zip téléchargée dans un dossier tel que c:\program\tcube et ouvrez le fichier tcube\arduino\tcub\tcub.ino dans le studio Arduino.

2. Connectez la carte arduino au PC à l'aide d'un câble USB.

3. Depuis Outils->Carte: sélectionnez "Arduino Nano" (ou une autre carte que vous prévoyez d'utiliser).

4. Si vous utilisez des clones arduino chinois, vous devez sélectionner Outils-> Processeur-> ATmega328P (ancien chargeur)

5. Sélectionnez le port connecté dans Outils->Port ->COM3 (dans mon cas)

6. Télécharger le programme sur arduino

7. À partir de ce moment, il enverra immédiatement des paquets de données au port série USB.

8. Pour tester si tout fonctionne bien, vous pouvez ouvrir "Serial Monitor" dans Arduino Studio. Vous devriez voir des paquets qui ont généré chaque seconde comme …… (ce qui signifie les coordonnées réelles de l'accéléromètre).

Étape 3: Installez Java Runtime Environment pour exécuter l'application cliente sur PC

Installer Java Runtime Environment pour exécuter l'application cliente sur PC
Installer Java Runtime Environment pour exécuter l'application cliente sur PC

Avant de continuer, vous devez vous assurer que Java Runtime Environment (JRE) est installé sur votre ordinateur.

L'application cliente que j'ai créée pour recevoir des messages d'Arduino et des statistiques agrégées est écrite en langage de programmation Java. Et JRE est requis pour exécuter des applications Java. Vous devez avoir au moins JRE8 installé. Je vous suggère de télécharger la version x64 pour Windows. Veuillez le télécharger sur le site Oracle

Étape 4: Installez l'application cliente pour lire les coordonnées d'Arduino et suivre les statistiques

Installez l'application cliente pour lire les coordonnées d'Arduino et suivre les statistiques
Installez l'application cliente pour lire les coordonnées d'Arduino et suivre les statistiques
Installez l'application cliente pour lire les coordonnées d'Arduino et suivre les statistiques
Installez l'application cliente pour lire les coordonnées d'Arduino et suivre les statistiques

Il est maintenant temps de préparer et de lancer l'application cliente sur votre PC, qui se connectera au port USB pour écouter et suivre les statistiques de temps.

Si vous connaissez Java, vous pouvez télécharger et compiler les sources de l'application Java Time Cube à partir de mon projet GitHub. Cependant, dans l'archive complète du projet que vous avez déjà téléchargée, l'archive d'application tcube.zip est déjà compilée et prête à l'emploi que vous devez décompresser dans un dossier (cela peut être c:\programs\tcube)

Si vous exécutez le fichier run.bat, il devrait démarrer l'application, qui essaiera immédiatement de démarrer la connexion à un port COM actif utilisé par la carte Arduino (Arduino connecté à USB est automatiquement reconnu par Windows comme un port COM virtuel).

Si tout est configuré correctement, vous devriez immédiatement voir les compteurs de temps s'exécuter en fonction d'une activité. Et en retournant le cube, vous devriez pouvoir suivre différentes activités. La fenêtre de l'application affiche le journal des événements et vous pouvez voir les erreurs de connexion qui pourraient se produire.

Étape 5: Étalonnage de l'accéléromètre

Étalonnage de l'accéléromètre
Étalonnage de l'accéléromètre

Il peut arriver que vous deviez calibrer votre Time Cube car votre accéléromètre n'est pas orienté exactement comme le mien. Ouvrez simplement le fichier app.properties et modifiez les plages de coordonnées de chaque côté du cube en fonction des coordonnées réelles que vous verrez dans la fenêtre du journal de l'application pour chaque côté du cube.

Ou vous pouvez expérimenter avec l'orientation et trouver la position de l'accéléromètre exactement comme la mienne.

Étape 6: Analyse supplémentaire

Analyse supplémentaire
Analyse supplémentaire

Mon application Java est assez simple et ne montre que le temps passé pour chaque activité au cours de la journée. Si vous souhaitez avoir plus d'analyses, vous pouvez utiliser Microsoft Excel pour une analyse supplémentaire.

L'application produit un fichier time-log.csv au format CSV, qui contient tous les événements envoyés depuis arduino. Étant donné que les événements sont générés chaque seconde, vous pouvez effectuer une analyse journalière détaillée dans MS Excel pour créer de jolis tableaux, graphiques et analyses supplémentaires.

Dans le dossier que vous avez téléchargé à partir de mon projet GitHub, vous pouvez trouver le fichier excel log_analytics.xlsx qui crée un graphique à secteurs en utilisant les données du fichier time-log.csv. Vous devez mettre à jour le graphique manuellement en appuyant sur le bouton "Actualiser tout" dans Excel.

Conseillé: