Documentation KNOCK ME

RESSOURCES ::

moteurs / steppers ::

Drivers (or SilentStepStick)::

KNOCK SENSOR ::

Accelerometer :

GY-521 / MPU-6050

Comment ça marche :

The MPU6050 IMU has both 3-Axis accelerometer and 3-Axis gyroscope integrated on a single chip.

-> 3 axis accelerometer :: En bref, il peut mesurer l'accélération gravitationnelle le long des 3 axes et en utilisant quelques mathématiques de trigonométrie, nous pouvons calculer l'angle auquel le capteur est positionné. Ainsi, si nous fusionnons ou combinons les données de l'accéléromètre et du gyroscope, nous pouvons obtenir des informations très précises sur l'orientation du capteur.

-> 3 axis gyroscope :: Le gyroscope mesure la vitesse de rotation ou le taux de variation de la position angulaire dans le temps, le long des axes X, Y et Z. Il utilise la technologie MEMS et l'effet de Coriolis pour la mesure, mais pour plus de détails, vous pouvez consulter mon tutoriel intitulé Comment fonctionnent les capteurs MEMS. output : Les sorties du gyroscope sont exprimées en degrés par seconde. Pour obtenir la position angulaire, il suffit donc d'intégrer la vitesse angulaire.

Wiring :

I2C protocol : A5 -> SCL A4 -> SDA VCC (+) GND (-)

SW-420 ( working choice) :

MONTAGE ::

![[6_steppers_bb.svg]]

MOTORS ::

Steppers ::

https://www.omc-stepperonline.com/fr/3-pieces-serie-e-nema-17-bipolaire-42ncm-59-49oz-in-1-5a-42x42x38mm-4-fils-avec-1m-cable-connecteur-3-17he15-1504s https://www.steppermotor.fr/goods-974-Moteur-pas-%C3%A0-pas-Nema-17-s%C3%A9rie-E-bipolaire-5-17HE15-1504S-18-degr%C3%A9s-42Ncm-15A-4-fils.html

-> Série E Nema 17 Bipolaire 42Ncm(59.49oz.in) 1.5A 42x42x38mm STEPPERONLINE 17HE15-1504S

-> Spec Electrique:: Angle de pas : 1.8° Courant évalué(1) : 1.5A Résistance/phase : 2.3 Ohms Couple de maintien : 42Ncm

-> Spec physique:: Longeur de l'arbre : 23.5mm Diamètre de l'arbre : 5mm Type d'arbre de sortie : D

-> Wiring :: The wires from one coil get connected to 1A and 1B and the other to 2A and 2B. The polarity doesn't matter. RED -> B- BLU -> A- GRN -> B+ BLCK -> A+

A+ A- B+ B-
Black Blue Green Red

A+/A- (same coil) B+/B- (same coil) according to pdf

Drivers ::

A4988 : eq

-> Vref = Imax 8 Rs Un A4988 avec des Rsense de 0.2 ohm (Marquage R200) et un moteur avec un Imax à 1.5A, Inom = 1.06A : Vref = 1.06 8 0.1 = 0.84V. (70%)

DRV8825 : eq

-> Vref = Imax / 2 Un DRV8825 avec des Rsense de 0.1 ohm (Marquage R100) et un moteur avec un Imax à 1.5A, Inom = 1.06A : Vref = 1.06 5 0.1 = 0.53V. (70%)

TMC2209 : no eq (speed)

-> Vref = (Irms 2.5V) / 1.77A Vref = (1.06 2,5) / 1.77 = 1.49V (70%) FAQ pinout and spec MAX current -> 1.77A

POWER SUPPLY ::

Power supply for 6 steppers motors Quelle alimentation pour alimenter 6 steppers motor qui fonctionnent en même temps ?

RESSOURCES :: https://www.omc-stepperonline.com/support/how-to-choose-a-power-supply-for-my-stepper-motor

COMMENT CHOISIR SON ALIM ::

  1. Confirmer le courant nominal du moteur. Vous pouvez le trouver à la fiche technique du moteur.
  2. Confirmer la tension de conduite. La tension d’entraînement est le facteur principal lors du choix d’une alimentation. Normalement, une tension plus élevée aura de meilleures performances.

Ci-dessous le tableau sont la tension recommandée pour les moteurs pas à pas, vous pouvez choisir une conduite une bonne tension selon votre application.

taille du moteur tension d’entraînement
Nema 8~Nema 17 12~24VDC
Nema 23, Nema 24 24~48VDC
Nema 34 48~100VDC/30~70VAC
Nema 42~Nema 52 110~220AC
  1. Calculer la valeur de puissance. Nous vous fournissons une formule simple: **P=n x I x V x 1,2
    P: valeur de puissance
    N: nombre de moteurs pas à pas
    I: courant nominal du moteur
    V: tension d’entraînement
    1.2: soit 20% de marge

Par exemple: 3 unités de moteurs avec 3A courant nominal chacun et la tension d’entraînement est 36V, la puissance estimée est d’environ: 33A36V*1.2=388.8W. Ainsi, vous pouvez choisir un fournisseur de puissance 36V 400w
Veuillez noter: la formule est juste une valeur d’estimation de puissance, condition de travail différente aura besoin de puissance différente. Par exemple, dans un système à 3 axes, pas tous les 3 moteurs fonctionnant en même temps, et pas tous les 3 moteurs fonctionnant avec la charge maximale etc. Dans cette condition, la valeur de puissance pourrait être inférieure à la valeur par laquelle calculée par formule.

=> Pour Série E Nema 17 Bipolaire 42Ncm P = 6 x 1,5 x 24 x 1,2 P = 259,2 W > 300W

https://www.omc-stepperonline.com/fr/kits-de-routeur-cnc-de-moteur-pas-a-pas-d-alimentation-d-energie-de-commutation-de-400w-24v-16-6a-115-230v-le-400-24

MECANIQUE ::

3D :

Ici montrer les plans 3D

ROULEAUX ::

Les rouleaux mesurent

RECUP DE ROULEAUX

Echanges entre le 7 et le 8janv 24, récup le 18_19 janv Bonjour,
Meilleurs voeux pour cette belle année 2024 !!
Dans le cadre d'un festival artistique qui se déroulera du 3 au 5 mai 2024 dans le quartier de Rosendael. Nous aimerions savoir s'il était possible de récupérer des rouleaux en cartons d'impressions vierge, des papiers destinés à être jeter pour la création d'une oeuvre artistique pour le festival Confluence.
En effet, ayant une pratique artistique travaillant le réemploi et nous aimerions s'il était possible venir récupérer vos déchets pour la création d'une oeuvre .
Merci pour votre réponse,
Cordialement, Imprimerie PACAUD devis@pacaud.com J’ai ici à l’imprimerie des tubes cartons rigides marrons . J’en ai une bonne vingtaine dont je dois me débarrasser. (différentes dimensions 1.37 m – 1.5 m – 1.27 m) Gaëtan.L

PREMIERS TEST ALIM + MOTEUR + DRIVER ::

Tester les 6 moteurs pas à pas avec l'alim trouvé au dessus Faire fonctionner les 6 moteurs en même temps avec des vitesses différentes

Premier test ::

Test d'un moteur avec un driver DRV8825 DOC branché à l'alimentation.

Teste avec le module pour moteur pas à pas, je n'ai pas réussi à le faire fonctionner correctement, le moteur broute.

J'ai pu faire fonctionner correctement le moteur avec un driver DRV8825 branché à l'alimentation et le code simple-stepper-without-lib sur une arduino uno.

Branchement de 6 drivers sur une breadboard avec des capacitors de 330uF-35V ::

ACCEL STEPPER LIB ::

Useful to set a zero position :: setCurrentPosition(0); Warning: Do not call this function while a move is in process!

Une autre est [runToPosition()], qui appelle simplement [run()] jusqu'à ce que la position cible soit atteinte - c'est-à-dire qu'elle bloque jusqu'à ce que la position soit atteinte.

Résumons le fonctionnement d'AccelStepper. Lorsqu'un objet AccelStepper est créé, maxSpeed et acceleration sont fixés à 1,0. currentPosition et targetPosition sont fixés à 0, et speed est fixé à 0,0. Dans le cas le plus simple, pour commencer le mouvement, setSpeed() doit être appelée pour fixer une vitesse pour les appels ultérieurs à runSpeed(). En utilisant les valeurs par défaut, la vitesse sera limitée à 1,0 pas par seconde. Appelez maintenant runSpeed() aussi souvent que possible, généralement dans la boucle principale. Le moteur fonctionnera continuellement à une vitesse constante. SetSpeed() peut être appelé avec un nombre négatif pour provoquer un mouvement dans la direction opposée (setMaxSpeed() n'a pas besoin d'être appelé, mais la vitesse sera limitée à 1 pas par seconde ou moins).

Simple code move forever with feedback (DRV)

MICROSTEPPING RESULTS ::

Plus on augmente les microstep plus le moteur tourne lentement, et moins il est bruyant. Pour avoir une vitesse équivalente il faut augmenter setSpeed().

NO MICROSTEPPING FULL STEP Bcp de vibrations (donc de bruit) setMaxSpeed 1000 to 3500 -> ok max setSpeed 50 to 50 -> trop de vibrations setSpeed 1000 to 1600 -> OK 1600 = superFast

MICROSTEPPING SET TO 1/16 Peu de vibrations -> Feedback motor.speed() and motor.currentPosition() setMaxSpeed 1000 to 3500 -> ok max {setSpeed} 50 to 1000 -> a-coup {SetSpeed} 1000 to 3500 -> OK

MICROSTEPPING SET TO 1/32 Peu de vibrations -> Feedback motor.speed() and motor.currentPosition() setMaxSpeed 1000 to 3500 -> ok max {setSpeed} 50 to 1500 -> a-coup {SetSpeed} 1500 to 3500 -> OK

Test des 3 types de drivers

A4988 et DRV8825 semblent équivalent en terme de vitesse pour les mêmes valeurs données. LE TMC2209 est beaucoup poins rapide pour les mêmes valeurs (divisé par min 4), mais semble plus stable.

Tests ::

Use setMaxSpeed(), then setAcceleration(), then moveTo() or move() to set a target, then call run() repeatedly to accelerate the motor, move to the target, and decelerate to a stop.
Only one of the run functions needs to be called in the loop. WORKS

Declenchement avec sensor ::

setup(){
setMaxSpeed(1500);
setAcceleration(400);
moveTo(position);
}
loop(){
if(digitalRead(sensor)){
while(motorA.distanceToGo() > 0 && motorB.distanceToGo() > 0 && motorC.distanceToGo() > 0 && motorD.distanceToGo() > 0 && motorE.distanceToGo() > 0 && motorF.distanceToGo() > 0){
motorA.run();
motorB.run();
motorC.run();
motorD.run();
motorE.run();
motorF.run();
  }
 }
}

ADD

motorA.moveTo(-positionA);
motorB.moveTo(-positionA);
motorC.moveTo(-positionA);
motorD.moveTo(-positionA);
motorE.moveTo(-positionA);
motorF.moveTo(-positionA);

while(motorA.distanceToGo() < 0 && motorB.distanceToGo() < 0 && motorC.distanceToGo() < 0 && motorD.distanceToGo() < 0 && motorE.distanceToGo() < 0 && motorF.distanceToGo() < 0){
motorA.run();
motorB.run();
motorC.run();
motorD.run();
motorE.run();
motorF.run();
}

TO RUN IS THE OPPOSITE DIRECTION AFTER

TODO ::