L’objectif du projet est de créer un système qui permette de faire l’acquisition de la position d’un objet dans l’espace. Cet objet est suspendu et mis en tension grâce à des élastiques, des ressorts ou des moteurs.
Concrètement, on vient attraper un objet, celui ci étant suspendu au centre d’une structure. On peut ensuite le déplacer et le tourner et l’objectif est de réussir à mesurer les translations et rotations effectuées avec cet objet.
La version présentée est fonctionnelle en deux dimensions mais pas en 3 dimensions. Tout le travail présenté ici pourra être récupéré et approfondi si vous souhaitez concevoir une version fonctionnelle en 3 dimensions.
Pour réaliser ce système, deux versions ont été étudiées, l’une assez rapidement, fonctionnant avec des enrouleurs rétractables sur lesquels on viendrait coller un aimant pour lire précisément les rotations de cet aimant à l’aide d’un encodeur magnétique. Pour réaliser cette version, il vous faudra des encodeurs rotatifs et des enrouleurs rétractables. Pour les tests, nos avons utilisé des produits à bas coût :
- Des portes badges enrouleurs à moins de 1€ / pièce : https://fr.aliexpress.com/item/1005001742989792.html?spm=a2g0o.productlist.0.0.5b88219bvMI32v&algo_pvid=5edec57a-148b-4d06-952e-193821c9de64&algo_exp_id=5edec57a-148b-4d06-952e-193821c9de64-46&pdp_ext_f=%7B%22sku_id%22%3A%2212000017405546690%22%7D&pdp_npi=2%40dis%21EUR%21%210.7%21%21%211.23%21%21%402100bddd16557381238774129e3a24%2112000017405546690%21sea
- Des encodeurs magnétiques à environ 1€ / pièce : https://fr.aliexpress.com/item/1005003080438185.html?spm=a2g0o.productlist.0.0.68bc4697hrP6bE&algo_pvid=3cdbc1ca-160e-4aee-9326-0beb83803dd0&algo_exp_id=3cdbc1ca-160e-4aee-9326-0beb83803dd0-0&pdp_ext_f=%7B%22sku_id%22%3A%2212000023957013393%22%7D&pdp_npi=2%40dis%21EUR%21%211.05%21%21%21%21%21%402100bddd16557382970716531e3a24%2112000023957013393%21sea
- Un microcontrôleur ( Arduino ou Teensy ou STM32 par exemple )
Malheureusement, faute de temps, très peu de choses ont été réalisées avec ce système. La majorité des efforts se sont concentrés sur une version à base de jauges de contraintes. Le but sera donc de mesurer la force exercée sur chacune des jauges pour en déduire une position.
le matériel nécessaire cette fois ne se résume pas à des jauges de contraintes, car il va nous falloir construire tout le circuit d’amplification et de filtrage analogique ( pour chacune des jauges ).
Voici la liste du matériel nécessaire :
- Un microcontrôleur ( ici nous avons utilisé la carte Teensy 4.1 pour ses performances largement supérieures à celles d’un Arduino Uno et son coût similaire.
- Les jauges de contraintes ( le nombre de celles ci dépendra du nombre de dimensions et degrés de libertés voulus de votre système ), il suffit de deux jauges pour un système en 2D sans rotations mais il semblerait qu’il soit nécessaire d’avoir au moins 8 jauges pour un système en 3 dimensions avec toutes les rotations de l’espace. Voila la référence des jauges achetées ( à 1.51€ / pièce) : https://fr.aliexpress.com/item/32763073298.html?algo_pvid=a930e557-f2c1-40f9-9e12-68a4a91189ac&algo_exp_id=a930e557-f2c1-40f9-9e12-68a4a91189ac-0&pdp_ext_f=%7B%22sku_id%22%3A%2265805310468%22%7D&pdp_npi=2%40dis%21EUR%21%210.63%21%21%212.01%21%21%402100bb4a16557963668151631e93a4%2165805310468%21sea
Comment fonctionne une jauge de contrainte ?
Lorsque l’on va déformer cette jauge, le pont de Wheatstone qui se situe sous la surface collée va se déformer également et ce faisant, faire varier les deux potentiels signal + et signal – ( souvent les câbles verts et blancs ).
Une fois tous les composants électriques en votre possession, il va être nécessaire de réaliser l’amplificateur d’instrumentation : le circuit qui va permettre d’amplifier les deux potentiels et faire la différence des deux qui nous donnera une valeur sur 10 bits donc entre 0 et 1023; proportionnelle à la force exercée sur la jauge en traction ou en poussée . Voila les schémas kicad du circuit et du circuit imprimé pour vous permettre de les réaliser facilement.
Vous pouvez maintenant assembler votre circuit d’amplification ( qui est suivi d’un filtre analogique ).
ATTENTION VOUS DEVEZ EN RÉALISER UN PAR JAUGE !
Une fois celui ci réalisé, vous allez pouvoir relier les fils signal + et signal – de votre jauge aux entrées 3 et 5 du LM324 1 ( U1 dans kicad ) ou alors en entrée 3 et 4 du connecteur du pcb.
Ensuite reliez le 3.3V , le GND, et la sortie du circuit au microcontrôleur ( la sortie doit être reliée à une entrée analogique du microcontrôleur ) .
On peut maintenant passer à la partie du code du microcontrôleur. Ce code récupère les données à 1kHz, les filtre et les envoie via le port Serial à 100Hz. Ici on utilise un script Python pour récupérer ces données et les traiter.
Afin de vérifier le bon fonctionnement des jauges, du circuit et du filtre numérique, televersez le programme suivant sur votre carte une fois toutes les connexions effectuées et lancez le programme python également présent dans l’archive. SI tout est fonctionnel, les courbes devraient bouger et les signaux reçus doivent être sans bruit parasite.
Si tout est fonctionnel, vous allez pouvoir élaborer la version 2D du système.
La structure à été fabriquée à base de bois MDF découpé au laser.
La plaque utilisé pour les prototype est une plaque de MDF 6mm.
Ci joint les fichiers permettant soit une découpe au laser ou alors une impression 3D.
Pour obtenir des informations plus détaillées sur chacune des étapes effectuées, notamment sur le filtrage, voici le rapport de stage détaillant cette partie :
Pour continuer le projet et aller plus loin, il faudrait finir la réalisation des tests sur le circuit amplificateur afin de pouvoir faire imprimer ce circuit sur des cartes. Il faudrait ensuite effectuer les mathématiques permettant d’obtenir la position du point dans l’espace puis concevoir un modèle 3D adapté à ces calculs. Enfin, il ne restera que le réglage es potentiomètres à peaufiner pour obtenir un système fonctionnel.