FizViz - Visualisations physiques à grande échelle pour vos statistiques !
Composants et fournitures
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Outils et machines nécessaires
| ||||
| ||||
| ||||
| ||||
|
À propos de ce projet
Qu'est-ce qu'un « FizViz » ?
Nous réalisons des visualisations physiques de données qui présentent des informations dans un grand format, super cool, instantanément lisible. Le concept est que vous accrochez un ensemble de widgets FizViz dans votre bureau, atelier ou partout où vous voulez regarder et partager des données importantes :
- Combien de produits ai-je vendu aujourd'hui ? Comment cela se compare-t-il à ma moyenne ?
- Combien de personnes ont visité mon site Web ? Combien de pages ont-ils consultées ?
- Est-ce que je reçois plus de trafic à cause de ma récente publication vidéo sur les chats, ou est-ce que tout le monde rebondit parce que cela n'a rien à voir avec mon produit ?
Ou connectez-le à d'autres sources de données :
- Combien de temps reste-t-il à mon travail d'impression 3D ?
- Combien de personnes sont ici ?
- Combien d'entrées de défi ont déjà été soumises pour le plus grand défi Arduino du monde Hackster ?
Pourquoi avons-nous créé FizViz ?
L'année dernière, notre équipe a créé et lancé notre premier "vrai" produit. Nous avons conçu, peaufiné, financé participatif, construit, repensé, certifié, ri, pleuré, juré et finalement… expédié un produit. Bien plus dur qu'on ne le pensait (mais c'est ce que tout le monde dit).
Ensuite... Nous avons commencé à surveiller les métriques obsessionnelles. Combien de personnes ont visité notre page produit ? Notre magasin? Combien de temps sont-ils restés ? Comment sont-ils arrivés là? Que se passe-t-il lorsque nous tweetons, bloguons, publions et partageons ? Pourquoi diable avons-nous simplement vendu 10 unités alors que nous ne faisions rien de tout cela ?
Les esprits curieux voulaient savoir.
Même si nous sommes une équipe dédiée, tout le monde n'avait pas accès ou n'avait pas intérêt à parcourir méticuleusement Google Analytics pour essayer de répondre à ces questions. Et ceux d'entre nous qui ont découvert que nous avons fini par rechercher les mêmes analyses clés, parfois plusieurs fois par jour. Souvent, ils ne changeaient pas beaucoup lorsque nous regardions, ou changeaient beaucoup lorsque nous ne regardions pas.
De toute évidence, les outils et systèmes en ligne ne manquent pas pour filtrer, résumer et écraser les données sous toutes leurs formes. Mais, ils vous éloignent de votre flux et nécessitent une connaissance (quelque peu obscure) du flux de travail pour accéder aux choses qui vous intéressent.
Et, franchement, ils ne sont pas si excitants que ça.
Ils ne font pas applaudir les gens dans le bureau. Ils ne diffusent pas les réalisations de l'équipe et la précipitation de voir le succès s'accumuler. Ce sont des expériences stériles, numériques et généralement solitaires.
Comment fonctionne FizViz ?
Un widget FizViz se compose de 3 éléments :
1) Un PC ou une tablette Windows (nous aimons la Surface) qui récolte vos données et utilise Windows Remote Arduino pour envoyer l'état actuel au widget FizViz.
2) Un Arduino MKR1000 qui reçoit les données du PC via WiFi et pilote les commandes physiques sur le Widget FizViz.
3) Les composants physiques qui affichent les données . Actuellement, nous prenons en charge :
- Bandes lumineuses NeoPixel pour effets LED colorés
- Moteurs pas à pas pour la création de cadrans et de jauges
- Commutateurs pour la mise à zéro ou l'étalonnage de vos jauges (nous utilisons un commutateur à lames pour trouver le zéro sur notre widget RotoMoto FizViz)
Fondamentalement, le PC fait le gros du travail :extraire les données de votre source de données (nous avons inclus la source pour la récolte de Google Analytics), puis envoyer l'état et les commandes à l'Arduino qui pilote l'installation physique.
Nous avons fourni tous les schémas et informations pour obtenir un widget NeoPixel de base avec un moteur pas à pas opérationnel. Après cela, vous pouvez être aussi créatif que vous le souhaitez.
Notre vision est de continuer à créer différents widgets pour différents types de données. Nous avons commencé avec un exemple, mais FizViz consiste vraiment à créer la bonne visualisation pour le type de données que vous souhaitez afficher. Il n'y a pas de règles !
Aperçu électrique
Le câblage d'un FizViz est assez simple. Nos derniers schémas se trouvent toujours dans le référentiel FizViz-Electrical sur GitHub. Voici quelques notes sur les composants :
- Arduino MKR1000 - Le cerveau de notre opération. Pas grand chose à dire ici, sauf qu'il est petit et fonctionne très bien !
- Bandes NeoPixel - La connexion aux bandes NeoPixel est assez simple - nous utilisons une résistance de 460 ohms (R1) entre la broche de données et l'Arduino. Ensuite, généralement, nous connectons l'alimentation de la bande directement à notre alimentation principale 5v pour le système. NeoPixel Uberguide d'Adafruit est la bible de l'intégration de NeoPixels et comprend une bibliothèque Arduino que vous pouvez utiliser dans votre projet pour simplifier le contrôle. Les bandes peuvent avoir deux fils de terre (noir). Ils sont tous les deux connectés à une broche de terre.
- Panneau de dérivation Adafruit TB6612 - Contrôle n'importe quel moteur pas à pas typique. Vraiment cool pour faire des choses qui bougent avec précision comme des cadrans, des jauges ou des curseurs. Nous l'avons utilisé pour enfoncer l'aiguille dans notre RotoMoto FizViz. Pas trop à ajouter ici. Nous avons suivi les instructions fournies par Adafruit, le rendant compatible avec la bibliothèque intégrée Arduino Stepper pour le contrôle.
- Interrupteur à lames - Notre widget RotoMoto FizViz utilise un aimant dans l'aiguille et un interrupteur à lames pour détecter quand l'aiguille est à zéro. Un interrupteur différent tel qu'un micro-interrupteur ou un interrupteur à pression peut également être utilisé ici en fonction de la mécanique de votre widget.
Nous avons emballé nos appareils électroniques sur une planche à pain demi-taille Adafruit Perma-Proto pour les mettre dans notre widget, mais en fonction de votre facteur de forme, vous aurez peut-être besoin de formes alternatives. Voici à quoi ressemble le nôtre :
Présentation du micrologiciel/code Arduino
Notre référentiel FizViz-Arduino sur GitHub contient la dernière et la meilleure version du sketch Arduino qui alimente les widgets FizViz. Il y a beaucoup plus d'informations sur les détails nécessaires pour lancer le projet là-bas, mais voici quelques points saillants :
- Configuration Wi-Fi - Faites attention aux notes autour de la configuration WiFi. Si vous avez un réseau WiFi plus exotique, vous devrez peut-être creuser un peu plus ici.
- Dépendances externes - Nous sommes assez légers en termes de dépendances externes, mais nous référençons quelques bibliothèques que vous devrez peut-être installer. Les dernières bibliothèques sont toujours référencées en bas de page.
Présentation de Windows/Arduino à distance
Notre référentiel FizViz-Windows sur GitHub abrite le code Windows pour FizViz. Encore une fois, il y a beaucoup d'informations plus spécifiques sur GitHub, nous vous recommandons donc de lire les instructions en détail.
Notre stratégie consistait à commencer par le code de câblage Arduino à distance de ms-iot. Au lieu de contrôler les broches directement depuis l'application Windows, nous avons configuré plusieurs messages de contrôle Firmata personnalisés. Nous avons apporté une petite modification au code de câblage à distance pour permettre de transmettre des messages personnalisés à la couche Firmata. Ensuite, nous avons implémenté des gestionnaires de messages personnalisés dans le projet Arduino qui mettent à jour l'état FizViz en fonction des commandes de contrôle de l'application Windows.
Nous avons également ajouté la prise en charge de la collecte de données d'analyse à partir de Google Analytics, car il s'agit de notre principal cas d'utilisation pour nos propres widgets FizViz. Espérons que cela vous sera utile comme référence, même si vous décidez de vous connecter à une autre source de données. Un certain nombre d'étapes sont nécessaires pour configurer un compte Google Analytics pour l'accès à l'API, veuillez donc consulter les notes du dépôt pour plus de détails.
Widget #1 - Le "RotoMoto"
Nous avons construit le RotoMoto pour présenter toutes les fonctionnalités FizViz. Il exerce la plate-forme en montrant une application très intéressante de nos commandes d'éclairage et de pas à pas dans un widget que vous pourriez être fier d'accrocher dans n'importe quel bureau. Notre rêve serait d'avoir une suite de 4 ou 5 de ces beautés accrochées côte à côte, mais nous aurons besoin de plus de MKR1000 pour y arriver !
La construction de votre propre RotoMoto est assez simple. Même si vous n'avez pas tous les mêmes outils, il existe de nombreuses façons d'obtenir les mêmes effets que nous avec tout ce que vous pouvez mettre la main sur. Le reste de l'article explique la construction et où vous pourrez peut-être apporter quelques modifications pour différents effets.
Référentiel CAD
Tout d'abord, nous conservons nos fichiers CAO sur Github dans le référentiel FizViz-CAD. Vous trouverez les versions STEP et STL des différentes pièces que nous avons fabriquées pour réaliser notre widget RotoMoto.
Pièces supplémentaires
Au-delà de notre conception CAO, voici une liste de pièces que nous avons utilisées dans notre assemblage :
Description Fournisseur No de pièce Remarques Poulie pas à pas McMaster-Carr 1375K15 15 dents Poulie à aiguille McMaster-Carr 1375K28 30 dents Roulements McMaster-Carr 60355K701 Usagé 2 courroies McMaster-Carr 7887K28 Moteur pas à pas Vis De Mode Elec. 54-410-100 2.6mmx8mmReed Switch Digikey 306-1124-1-ND Aimant Digikey 469-1002-ND 0.5"Dx0.125"H
Le plateau de montage
L'épine dorsale de la construction RotoMoto est la planche de montage. Fondamentalement, il abrite les composants mécaniques et électriques et garde tout rangé proprement derrière la lunette éclairée de l'écran.
Nous avons utilisé une CNC ShopBot pour fraiser notre panneau de montage à partir d'un panneau MDF de 1" d'épaisseur. Il existe toutes sortes d'autres façons de découper les formes (coupe laser, scie sauteuse, etc.), mais puisque la CNC est là, c'est ce que nous avons utilisé .
La lunette
De loin, la grande caractéristique de notre construction est la lunette illuminée. Nous avons découpé cette partie dans une feuille d'acrylique de 1/2" d'épaisseur. Encore une fois, sur le ShopBot. La clé de la technique d'éclairage est que n'importe quel endroit "dépoli" où la surface est coupée sera illuminé. Vous pouvez créer des marquages à l'aide d'un Dremel ou d'une autre main -outils aussi.
Nous avons fourni nos modèles CAO coupés en deux car il est plus efficace d'utiliser le matériau de cette façon. Joignez les deux parties avec du ciment acrylique ou fusionnez le modèle si vous prévoyez de le faire en une seule coupe (c'est ainsi que notre démo a été construite).
Anneau intérieur
L'anneau intérieur est un élément clé de la construction - c'est là que la bande NeoPixel est attachée et cachée derrière la lunette en acrylique. Notre fabrication a consisté à l'imprimer en 3D en gros morceaux sur notre TAZ5 en PLA, puis à le coller ensemble. Après une bonne quantité de remplissage et d'amorçage, nous avons eu un anneau assez solide.
Moteur et Mécanique
Le référentiel CAO contient des fichiers pour un support de moteur pour notre Sanyo Pancake Stepper ainsi que des tendeurs de courroie et un arbre. L'installation est assez simple - les courroies et les poulies sont montées comme indiqué ci-dessous. L'utilisation de deux roulements dans le support permet d'augmenter la rigidité et de maintenir l'arbre droit.
Câblage
Tout mettre en place est un peu délicat. Tout d'abord, vous collez ou scotchez votre bande NeoPixel à la bague intérieure afin qu'elle soit fermement maintenue en place. Ensuite, les fils du commutateur à lames et des NeoPixels passent à travers le trou dans le corps de la monture. Après cela, la bague intérieure glisse à travers la lunette et dans la monture.
Une image vaut mille mots.....
Étapes de finition
Dernière chose pour ranger les fils et tout sécuriser. C'est un ajustement serré, mais nous avons tout emballé. Terminez le câblage, et vous devriez alors avoir votre propre RotoMoto !
Code
FizViz-Windows
Notre dépôt GitHub qui contient le code source Windows pour FizViz.https://github.com/iotdesignshop/FizViz-WindowsFizViz-Arduino
Notre référentiel GitHub qui contient la source Arduino pour la plate-forme FizViz.https://github.com/iotdesignshop/FizViz-ArduinoPièces et boîtiers personnalisés
FizViz-CAD
Référentiel GitHub contenant les derniers fichiers CAO pour les widgets FizVizhttps://github.com/iotdesignshop/FizViz-CADSchémas
Référentiel électrique FizViz
Versions schématiques et bitmap EAGLE des dernières conceptions électroniques FizVizhttps://github.com/iotdesignshop/FizViz-Electrical.gitProcessus de fabrication
- Les meilleurs accessoires pour votre Raspberry Pi
- Créer un système de récupération de parachute balistique pour votre drone
- Votre système est-il prêt pour l'IoT ?
- 3 conseils pour ranger votre endoscope d'aviation
- Préparer votre lieu de travail pour le cannabis
- Un bilan trimestriel de votre chaîne d'approvisionnement
- Avantages de l'usinage CNC pour la production et la fabrication à grande échelle
- Une liste de contrôle pour augmenter la durée de vie de vos outils de poinçonnage
- Conseils d'entretien de base pour vos machines de découpe