Panneau d'information bricolage

Bonjour à tous. C'est mon deuxième poste. Et dans ce document, nous assemblerons un tableau de bord sportif de nos propres mains.





Une fois, j'ai reçu une tâche pour créer un panneau d'information pour afficher les résultats du jeu de fléchettes.



Naturellement, la première chose que j'ai faite a été d'aller sur Google pour voir ce qu'il y avait sur le marché. Et si dans le cas général il y a des tableaux de bord sportifs, par exemple pour le football / hockey ...



image



alors il n'y a rien pour les fléchettes. Eh bien, non, certains bureaux proposent une production, mais pas de photos du résultat final, pas de prix - non.



image



Lors de la lecture de 501, les joueurs utilisent une application mobile pour calculer le score du joueur. Il y en a un grand nombre. Eh bien, bien sûr, il ne s'agit essentiellement que d'une calculatrice - seule une personne paresseuse ne l'écrira pas sur le même Android. Cependant, certaines applications, en plus du compte de jeu, ont également des statistiques de joueurs sur leur plateau. En conséquence, la tâche était de dupliquer le score des joueurs affichés dans l'application sur ce tableau de bord sportif.



image



On m'a montré l'une des applications que les joueurs utilisent. Je me suis tourné vers le développeur, en Biélorussie fraternelle, avec une question de savoir s'il serait en mesure d'introduire la sortie d'informations vers un périphérique externe via BlueTooth dans son programme. Ce à quoi il a répondu qu'il apprenait lui-même à écrire des applications sur l'androïde, et ne voulait pas s'en soucier.



Eh bien, que faire, vous devez le faire vous-même ... Tout seul, de mes propres mains (c)



Au fait, je n'ai jamais commencé à programmer sur Android.



Le schéma suivant a été dessiné dans ma tête.



Il y a un téléphone / tablette avec une application, il y a un tableau de bord avec un microcontrôleur, un module Bluetooth et des voyants LED.



La première question est de savoir quels indicateurs utiliser? Sans ambiguïté haute (15-20 cm de hauteur), sans ambiguïté LED.



Sept segments classiques?



Aucun



inconvénient:



  • prix élevé
  • irréparable
  • circuit de commande et de puissance requis
  • n'a pas trouvé la taille dont vous avez besoin (max 5 cm)


image



Composition à partir de segments?



Non non plus, pour les mêmes raisons sauf la deuxième et la dernière.



image



Et puis, à la suite du brainstorming, une idée vole pour créer des nombres à partir d'une bande LED sur ws2812b - LED contrôlées «intelligentes». "Ouais, exactement pareil !!!", - J'ai crié, "Merci, Kostya." Il ne pouvait y avoir de solution plus ingénieuse.



Les avantages de ce choix:



  • pas cher (sur ma version 250 roubles sont sortis pour un chiffre de 20 centimètres de haut),
  • vous pouvez facilement remplacer une LED cassée (ceci est important lors de l'utilisation de ws2812b),
  • contrôlé par un seul fil du microcontrôleur. Il n'est pas nécessaire de clôturer le circuit d'indication dynamique, les registres à décalage, le pilote d'alimentation. La bande est alimentée par 5 volts.
  • vous pouvez créer un chiffre de n'importe quelle forme et taille.




Eh bien, l'ensemble du schéma a été approuvé: 1. application -> 2. module blutus HC-05 -> 3. microcontrôleur (arduinya ou stm32) -> bande 4.ws2812b.



De ce schéma, le plus difficile (presque impossible) pour moi était le premier point. Je travaille avec tout le reste.



Pour créer des applications, j'utilise l'environnement Android Studio, qui a travaillé très dur sur mon ancien ordinateur. (2 cœurs, 2 concerts, s'allume démarre pendant 5 minutes). J'ai trouvé une option pour créer des applications simples dans l'environnement en ligne Thunkable, qui permet de programmer dans un environnement graphique en "blocs". Là, j'ai lancé une application simple, mis en place le bluetooth. Et affiché les informations nécessaires sur le tableau de bord.



image



À un moment donné, j'ai réalisé que l'utilisation de cet environnement en ligne n'était pas correcte, j'ai encore besoin de maîtriser Android Studio. J'ai acheté un nouvel ordinateur, je l'ai installé, j'ai lancé Studio. J'ai commencé avec HelloWorld, bien sûr. J'ai dû gérer les mises en page, les mises en page, les classes, Java et autres déchets. En parallèle, j'ai acheté un compte sur Google Play, en le payant 25 $.



Eh bien, c'est une question de temps, pour maîtriser Android et écrire du code.



Voici à quoi cela ressemble dans l'environnement de développement Android Studio:



image



Voici à quoi ressemble le processus de développement du microcontrôleur stm32:



image



Le tableau de bord lui-même a été fabriqué à partir d'un morceau de stratifié sur lequel les numéros collectés, l'arduino et le module bluetooth ont été collés. La façade était recouverte de plexiglas. Et ils l'ont donné pour tester le fonctionnement.



image



Immédiatement, les commentaires et la nouvelle liste de souhaits affluent (enfin, c'est normal, depuis un prototype). Il était nécessaire d'ajouter un nombre de jambes et un pointeur vers le joueur actuel, et si possible, ajouter un champ pour afficher les noms des joueurs. Le nombre de pattes et les flèches ont été ajoutés presque immédiatement.



image



Mais pour les noms des joueurs, j'ai dû bricoler et en même temps créer immédiatement un deuxième prototype, qui fonctionne maintenant dans un club de fléchettes dans une petite ville fermée.Budget artisanal



image



:



bande ws2812b 1300 roubles

contrôleur stm32 150 roubles

HC-05 bluetooth 200 roubles

alimentation 5V 250 roubles ...

stratifié, plexiglas, attaches, teinture - de toutes sortes de restes.



PS. Le principal inspirateur, client et participant du Darts Club dans quelques semaines défendra l'honneur de la Russie au Championnat du monde de fléchettes à Londres. Souhaitons-lui bonne chance.



All Articles