Détecteur de portée portable
Composants et fournitures
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 4 | ||||
| × | 2 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Outils et machines nécessaires
| ||||
| ||||
| ||||
|
Applications et services en ligne
| ||||
|
À propos de ce projet
Présentation
Le département des sciences de l'exercice du Lehman College menait des études sur la musculation. Il y avait des incohérences dans l'amplitude des mouvements pour les répétitions, ce qui pourrait influencer considérablement les données. J'ai été approché pour créer un appareil qui identifierait l'amplitude complète des mouvements pour les exercices utilisant des machines ou des poids plus importants.
L'appareil devait remplir les conditions suivantes :
- Distance réglable
- Pas définitivement fixé aux machines.
- Compatible avec trépied
- Aucun fil
Vidéo
Pièces
La plupart des pièces sont présentées ci-dessous, mais pour une liste complète, reportez-vous à la nomenclature ci-dessus. Les pièces utilisées ne sont pas sélectionnées parce qu'elles sont optimales; c'est avec ça que j'ai dû travailler. L'encombrement pourrait être considérablement réduit avec des circuits imprimés personnalisés, des composants CMS ou une batterie LiPo.
Code
La bibliothèque NewPing est nécessaire à la compilation du code (fourni en bas).
La fréquence du buzzer et les bornes supérieure/inférieure sont des variables globales qui peuvent être modifiées. Les limites supérieure/inférieure se réfèrent à la distance minimale et maximale lue par le capteur, qui est mappée à la valeur analogique [0,5]V du potentiomètre.
int fréquence =700 ; //Fréquence en Hz
int lower_bound =60; //Distance en mm
int upper_bound =200; //Distance en mm
3 bips se produisent à la mise sous tension pour indiquer que le démarrage a réussi (voir le setup()
boucler). Ensuite, loop()
demande en permanence des données au capteur à ultrasons et les compare au seuil défini par le potentiomètre.
Impression 3D
Tous les fichiers ont été téléchargés sur thingiverse, ou un fichier condensé peut être trouvé au bas de la page. L'utilisation de la CAO ne sera pas abordée ici. Le modèle a été réalisé en tenant compte des limites de l'impression 3D. Les porte-à-faux ont été minimisés en utilisant des chanfreins à 45 degrés, ce qui réduit le matériau de support. Les dégagements étaient généreux, les pièces devraient donc s'adapter malgré le fait qu'elles soient imprimées sur des imprimantes calibrées différemment.
Les temps d'impression varient, mais mes temps d'impression étaient les suivantes :
- Top Piece :2 heures 40 minutes
- Pièce du bas :2 heures 20 minutes
- Bouton :20 minutes
Assemblage
Les schémas du circuit sont fournis en en bas de la page. Les pièces sont insérées sans être câblées pour confirmer les ajustements.
Les câbles IDE récupérés ont fourni tous les fils. Des groupes de fils peuvent être décollés tout en restant attachés les uns aux autres, ce qui donne un certain ordre.
La plupart des composants électroniques sont montés sur l'une des pièces imprimées, il faut donc réfléchir au routage et à la gestion des fils.
Les voyants LED SMD de la carte TP4056 ont été dessoudés. Des rallonges et des LED THT de 3 mm ont été soudées à leur place. Des résistances de limitation de courant sont toujours intégrées à la carte. Il y a une vidéo de quelqu'un effectuant ce déménagement.
L'arduino nano n'avait que 2 plots de masse accessibles, donc un stripboard a été utilisé pour augmenter le nombre de plots de masse. La même chose a été faite avec la ligne 5V, que l'on peut voir sur l'image ci-dessous.
Il est nécessaire de rompre la connexion sur la bande pour que 5V ne soit pas court-circuité à la terre. Le "X" rouge illustre l'emplacement de la cassure. Seul le cuivre supérieur doit être rompu, pas l'ensemble du panneau de fibre de verre.
Les composants ont été câblés à l'extérieur de l'enceinte. Ils étaient parfois installés dans l'enceinte pour mesurer la longueur du fil et vérifier les interférences de fil.
Le potentiomètre a été rogné de 6 mm pour qu'il ne dépasse pas autant.
La connexion au 18650 a été soudée directement, ce qui est une mauvaise pratique. La surchauffe de la cellule l'endommagera et peut échouer avec le temps. Le soudage par points d'une bande d'aluminium est la bonne façon de connecter des 18650.
De la colle chaude a été honteusement utilisée pour sécuriser l'électronique. Évitez d'utiliser de la colle chaude lorsque cela est possible. Une conception mécanique et des fixations correctes survivront à la colle chaude. Il est voué à l'échec avec le temps. C'est compréhensible pour les prototypes, mais les pièces de production n'utiliseront jamais de colle chaude.
Résumé
Rétrospectivement, j'aurais préféré utiliser un capteur IR plutôt que le capteur à ultrasons, mais je n'aurais jamais pu le savoir jusqu'à ce que je commence à expérimenter avec le capteur à ultrasons. Les capteurs infrarouges ont un champ de vision plus étroit avec un compromis d'une distance maximale beaucoup plus faible (environ 3 pieds).
S'il devait y avoir une deuxième version, un LiPo remplacerait le 18650. Le gros écrou adaptateur moleté est lourd et prend de la place. Le filetage standard pour les supports de trépied est de 1/4", donc un simple écrou 1/4" de la quincaillerie suffit. Les PCB personnalisés réduiraient le volume de moitié.
Pour un prototype qui a été conçu du concept à la livraison en 2 semaines, je suis satisfait.
Avenir du projet
Lorsque j'expérimentais le capteur à ultrasons, j'en ai appris davantage sur ses limites. La première étant que son FOV a un angle de ~±15° (30° au total). Cela signifie qu'un objet peut déclencher le buzzer avant qu'il ne soit directement au-dessus du capteur. Cela produit des inexactitudes et des lectures indésirables. De plus, si le plan de l'objet n'est pas perpendiculaire (ou dans l'angle de tolérance) à l'onde sonore transmise, le capteur ne recevra pas d'onde réfléchie et ne pourra pas traiter une valeur de distance.
Mon plan initial était de faire reposer l'unité sur le sol et de permettre aux plaques d'une barre de musculation de déclencher le buzzer lorsqu'elles ont été abaissées au-delà du seuil. Ce système se composait d'un capteur fixe et d'un déclencheur mobile. Mon collègue ingénieur avait proposé une solution alternative, qui consistait à inverser le système. Il a proposé de monter le capteur sur la barre mobile tout en le pointant vers le sol. De cette façon, le sol est devenu le déclencheur. Cela a également éliminé les inexactitudes dues à un large champ de vision, comme mentionné précédemment.
La proposition était non seulement une excellente solution aux problèmes posés, mais elle est également très facile à mettre en œuvre. La commande pour l'adaptateur d'écrou de trépied 1/4" est venue avec un adaptateur 1/4" -> 3/8" ET un adaptateur 3/8" -> 1/4". Le second sera réellement utilisé !
Comme je n'avais pas accès à mon dremel lorsque j'ai commencé à modéliser en 3D, cela m'a obligé à prendre en compte l'intégralité de l'adaptateur de trépied. Ceci en combinaison avec une cellule 18650 a considérablement augmenté le poids. Je ne veux pas ajouter plus de poids que nécessaire, je vais donc couper le deuxième adaptateur de trépied avant de modéliser la monture. Je reviendrai sur le projet dans une semaine pour finaliser cette solution de montage alternative. D'ici là, ça marche quand même !
Code
- RangeDetectionDevice.ino
RangeDetectionDevice.inoArduino
Pièces et boîtiers personnalisés
Les 3 parties sont enregistrées dans un seul fichierSchémas
Processus de fabrication
- Détecteur de langage TinyML basé sur Edge Impulse et Arduino
- Jeu de gyroscope Arduino avec MPU-6050
- Dés numériques Arduino
- Jeu de roulette DIY 37 LED
- Mini arcade ATtiny85 :Serpent
- Lampe de bureau réactive audio Arduino
- voiture robot intelligente de suivi du visage
- La galvanoplastie avec du cuivre
- NeoMatrix Arduino Pong