Mesurer la longueur d'un fil

Bonjour a tous !

actuellement en classe de Terminale STI2D (SIN) Mon projet est de crée un recycleur de plastique (Un extrudeur en gros, faire fondre du plastique pour récupérer du filament) Je me m'occupe de la partie finale c'est a dire enrouler le fil sur une bobine et "calculer" la longueur du fil ... Ça fait plusieurs semaines voir des mois que je fait des recherches mais rien aboutis ...
Il me manque que cette partie pour conclure ma partie.
En comptant sur votre aide :smiley:

Merci beaucoup.

Bonjour,

Je vous encourages à lire les posts épinglés en tête du forum.

Proposez-nous un minimum de travail (méthode, choix du matériel, début de code..) pour que nous puissions envisager une quelconque aide pour avancer dans votre projet.

mohaa_qlf:
Bonjour a tous !

actuellement en classe de Terminale STI2D (SIN) Mon projet est de crée un recycleur de plastique (Un extrudeur en gros, faire fondre du plastique pour récupérer du filament) Je me m'occupe de la partie finale c'est a dire enrouler le fil sur une bobine et "calculer" la longueur du fil ... Ça fait plusieurs semaines voir des mois que je fait des recherches mais rien aboutis ...
Il me manque que cette partie pour conclure ma partie.
En comptant sur votre aide :smiley:

Merci beaucoup.

Lire trés urgemment comment bien poster en debut du (sous) forum "français" !
Le tic tac à du compte à rebours avant décollage pour destination "le bakapoubel" est déjà initié :grin:

J'ai commencé par controlé un moteur pas a pas avec le Module A4988 qui est la premiere partie de mon projet voici le code

const int stepPin = 3;
const int dirPin = 4; 

int customDelay,customDelayMapped; // Defines variables
 
void setup() {
  // Sets the two pins as Outputs
  pinMode(stepPin,OUTPUT);
  pinMode(dirPin,OUTPUT);
 
  digitalWrite(dirPin,HIGH); //Enables the motor to move in a particular direction
}
void loop() {
  
  customDelayMapped = speedUp(); // Gets custom delay values from the custom speedUp function
  // Makes pules with custom delay, depending on the Potentiometer, from which the speed of the motor depends
  digitalWrite(stepPin, HIGH);
  delayMicroseconds(customDelayMapped);
  digitalWrite(stepPin, LOW);
  delayMicroseconds(customDelayMapped);
}
// Function for reading the Potentiometer
int speedUp() {
  int customDelay = analogRead(A0); // Reads the potentiometer
  int newCustom = map(customDelay, 0, 1023, 300,4000); // Convrests the read values of the potentiometer from 0 to 1023 into desireded delay values (300 to 4000)
  return newCustom;  
}

Apres ceci, je dois calculer la longueur du fil. J'ai pensé, grace a la rotation de la bobine (pour l'enroulement) trouver la longueur du fil enroulé. Trouvé peut etre le nombre de rotation par minute de la bobine pour esperer trouver la longueur du fil...

Le problème est que tu ne peux pas trouver de relation précise entre le nombre de tours de ta bobine et la longueur du fils.
Cela le serait si le diamètre de l'enrouleur ne variait pas au fur et à mesure que tu remplis ta bobine.
Tu peux éventuellement corriger l'erreur si tu pars toujours d'une bobine vide en ajoutant un coefficient sur la longueur totale 'mesurée' , mais il faudra un bobinage parfait du fils.

As-tu une précision de mesure imposée ?

Non aucune précision nécessaire :smiley:

Ne pas avoir de précision de mesure imposée ne veux pas dire que tu peux faire une approximation grossière.
J'imagine que si on te demande une mesure, on va sûrement te demander la marge d'erreur en pourcentage sur la longueur. Sinon pourquoi te demander de mesurer une longueur, autant se limiter à compter les bobines.

Zlika:
Le problème est que tu ne peux pas trouver de relation précise entre le nombre de tours de ta bobine et la longueur du fils.
Cela le serait si le diamètre de l'enrouleur ne variait pas au fur et à mesure que tu remplis ta bobine.
Tu peux éventuellement corriger l'erreur si tu pars toujours d'une bobine vide en ajoutant un coefficient sur la longueur totale 'mesurée' , mais il faudra un bobinage parfait du fils.

Dans l'industrie* ou même la vie de tous les jours** , il est plus simple de partir de longueur à mesurer (enrouler/dérouler)
entrainant une roue de mesure (circonference)

  • industrie papetiere,tissage par exemple
    ** distance parcourue par un véhicule ( roue sur sol)

ha ben non, je voulais le faire réfléchir avant de l'orienter vers cette solution :slight_smile:

C'est a dire ? "Il est plus simple de partir de longueur à mesurer" :smiley:

Zlika:
ha ben non, je voulais le faire réfléchir avant de l'orienter vers cette solution :slight_smile:

C'est ce qu'il est maintenant en train de faire ;D

Artouste:
C'est ce qu'il est maintenant en train de faire ;D

Hahaha oui ... :smiley:

Si tu parles de mesure, il te faut un étalon (pas le cheval hein :grinning:).
On parle de la référence qui va te garantir une mesure fiable.
Artouste fait référence à une roue de mesure dont la vitesse linéaire en périphérie devra correspondre à celle de ton fils.
Si tu connais la circonférence de la roue, tu connais la longueur de fils nécessaire pour lui faire faire 1 tour (hors glissement et déformation) .

Je comprend mieux maintenant (enfin! :slight_smile: ) Merci pour vos réponses!

Si le fil a un diamètre et masse volumique relativement constants alors en pesant la matière à transformer et connaissant la masse d'un mètre de fil "type" --> par une simple opération mathématique on trouve la longueur du fil qu'on obtiendra (mais la roue sera sans doute plus précise)