Aller au contenu

Zip String

Introduction

Le projet ZipString consiste à reproduire et améliorer un système capable de générer et contrôler le mouvement d’un fil tendu à l’aide de moteurs. Le dispositif utilise des moteurs DC pour créer le mouvement de base du fil, et un troisième moteur permet d’ajouter un contrôle plus précis des oscillations. L’objectif du projet est de comprendre le fonctionnement du système, d’analyser le comportement du fil en mouvement et d’explorer différentes formes d’onde générées. Ce projet combine des notions d’électronique, de mécanique et de contrôle.

Idée principale (schéma initial)

Cette image représente l’idée initiale du projet Zipstring. Le système est composé de deux roues qui permettent de mettre en mouvement un fil en boucle. Le fil circule autour des roues pour créer un mouvement continu. Un petit bras est ajouté sur le trajet du fil pour modifier sa position et générer des oscillations. Ce bras peut se déplacer vers le haut ou vers le bas, comme indiqué sur le dessin, afin de contrôler la forme du mouvement du fil. L’objectif est de créer différentes formes d’oscillation en contrôlant ce point du système.

Matériaux utilisés

  • 2 roues en caoutchouc
  • 2 moteurs DC 9V
  • 1 fil de nylon
  • 1 ressort pour guider le fil
  • 1 moteur pas à pas 5V (28BYJ-48)
  • 1 driver ULN2003
  • 1 Arduino Nano
  • 2 boutons pour contrôler le troisième moteur
  • 1 plaque de test (breadboard)
  • 1 batterie 9V (1500 mAh)
  • 1 Support en PLA pour guider le moteur pas-à-pas
  • 1 Support en PMMA pour la structutre

Modèle 3D pour le guide du troisième moteur

Pour le guide du Step Motor, nous avons utilisé un modèle simple. Après avoir testé plusieurs formes, comme un cône, un tube et un guide en forme de “B”, le modèle le plus fonctionnel a été ce guide simple en forme triangulaire.

Le même principe s’applique au guide du fil. Nous avons d’abord essayé d’utiliser un guide imprimé en 3D afin de faciliter l’utilisation et le remplacement du fil. Cependant, le matériau de l’impression 3D présentait une résistance trop élevée, ce qui empêchait le fil de tourner librement avec le moteur. Nous avons donc choisi d’utiliser un ressort en métal, qui offre une résistance très faible et permet un mouvement beaucoup plus fluide.

Circuit Électrique

La batterie est responsable d’alimenter directement les 2 moteurs principaux et aussi l’Arduino, responsable pour la logique du driver du moteur pas-à-pas et aussi responsable pour l’alimentation du driver. On code l’Arduino avec l’aide de la bibliotèque « Stteper.h », pour générer des signaux désirés pour le driver du moteur pas-à-pas, suivant la logique:

  • Bouton gauche appuyé = le moteur tourne dans le sens antihoraire
  • Bouton droit appuyé = le moteur tourne dans le sens horaire
  • Les deux boutons appuyés = le moteur fait un mouvement oscillant avec un petit angle d’overture

Le circuit complet est répresenté en dessous:

Codes pour l’arduino

C’est le programme que on a utilisé pour faire le contrôle du moteur pas à pas 28BYJ-48 à l’aide de deux boutons connectés à un Arduino Nano. Les broches 8, 9, 10 et 11 sont utilisées pour commander le moteur via le driver ULN2003. La vitesse du moteur est fixée à 15 tours par minute grâce à la fonction « setspeed() ». Lorsque le premier bouton est pressé, le moteur avance pas par pas avec step(1), tandis que le second bouton permet de le faire tourner dans le sens inverse avec step(-1). Si les deux boutons sont pressés en même temps, le moteur effectue un mouvement d’aller-retour correspondant à environ un septième de tour, afin de générer une oscillation dans le « doigt » du troisième moteur.

Résultat final