Problème moteur, Arduino Mega 2560 + ramps 1.4 + A4988 + nema17 + Grbl + bCNC
June 19, 2016 04:24AM
Bonjour à tous
Je me permets de vous demander de l'aide, en effet j'utilise un chassis type reprap sur lequel j'ai installé 4 moteur Nema 17, 1 pour l'axe x, 1 pour l'axe y et 2 pour l'axe Z.
j'ai aussi installé une Mega 2560 et une ramps 1.4 avec pilote A4988.
mon problème est le suivant les moteur de l'axe Z (verticale) ne fonctionne pas correctement, je m'explique, les moteur commencent à tourner (synchronisé) et le chariot s'élève ou descend puis le chariot cesse de se déplacer mais le moteur continu à fonctionner, comme si il sautait des pas puis fini par déplacer à nouveau le chariot et s'arrête en fin de cycle.
Ce problème n'apparait que sur un axe les deux autres fonctionnent parfaitement (il n'y a que en modifiant le programme que le problème se déplace sur un autre axe)
J'ai inversé les moteurs (meme probleme)
J'ai inversé les pilotes (meme problème)
J'ai inversé les moteurs (meme problème)
j'ai inversé les cables (meme problème)
J'ai modifier le programme de l'arduino, inversé l'axe X et Z inversion de pin (le probleme ce déplace sur X)
J'ai remodifier le programme de l'arduino, inversé à nouveau X et Z (le problème est revenur sur l'axe Z)
J'ai fait la même chose sur avec l'axe Y (idem modif precédente)
à mon avis c'est un problème de programmation, mais je ne parviens pas à trouver les instructions causant se défaut

Merci d'avance pour votre aide
Vol689
Salut je ne sais pas si je pourrais vraiment t'aider mais j'ai eu le même probleme sur l'axe Z :

pour remedier à cela j'ai modifier les valeur marlin

#define DEFAULT_AXIS_STEPS_PER_UNIT
#define DEFAULT_MAX_FEEDRATE {500, 500, 3, 25} //25 (mm/sec) "ici en métant 5 mon moteur tourne, donc chariot monte ou descend puis s'arrete et le moteur tourne toujours comme s'il saturé"
#define DEFAULT_MAX_ACCELERATION

A combien son tes valeurs en Max Freedrate ?
Je n'utilise pas Marlin pour cette application CNC (grbl for ramps), effectivement sur mon imprimante 3D c'est bien les valeurs
Voici le code que j'utilise, je n'ai pas de DEFAULT_MAX FEEDRATE,

#define MICROSTEPS 16 // 16 --> all three jumpers installed
#define STEPS_PER_REV 200.0
#define MM_PER_REV 1.25 // 1.25 mm/rev leadscrew
#define Cyclone_XY_Gear_Ratio 21.0/21.0 // Number of gear teeth (motor/rod)
#define Cyclone_Z_Gear_Ratio 8.0/15.0 // Number of gear teeth (motor/rod) 8.0/15.0
#define DEFAULT_X_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/(Cyclone_XY_Gear_Ratio*MM_PER_REV))
#define DEFAULT_Y_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/(Cyclone_XY_Gear_Ratio*MM_PER_REV))
#define DEFAULT_Z_STEPS_PER_MM (STEPS_PER_REV*MICROSTEPS/(Cyclone_Z_Gear_Ratio*MM_PER_REV))
#define DEFAULT_X_MAX_RATE 5*60.0 // mm/min
#define DEFAULT_Y_MAX_RATE 5*60.0 // mm/min
#define DEFAULT_Z_MAX_RATE 2.5*60.0 // mm/min
#define DEFAULT_X_ACCELERATION (16.0*60*60) // 50*60*60 mm/min^2 = 50 mm/sec^2
#define DEFAULT_Y_ACCELERATION (16.0*60*60) // 50*60*60 mm/min^2 = 50 mm/sec^2
#define DEFAULT_Z_ACCELERATION (16.0*60*60) // 50*60*60 mm/min^2 = 50 mm/sec^2
#define DEFAULT_X_MAX_TRAVEL 168.0 // mm
#define DEFAULT_Y_MAX_TRAVEL 101.0 // mm
#define DEFAULT_Z_MAX_TRAVEL 50.0 // mm
#define DEFAULT_STEP_PULSE_MICROSECONDS 10
#define DEFAULT_STEPPING_INVERT_MASK 0
#define DEFAULT_DIRECTION_INVERT_MASK ((0<<X_AXIS)|(0<<Y_AXIS)|(1<<Z_AXIS))
#define DEFAULT_STEPPER_IDLE_LOCK_TIME 255 // msec (0-254, 255 keeps steppers enabled)
#define DEFAULT_STATUS_REPORT_MASK ((BITFLAG_RT_STATUS_MACHINE_POSITION)|(BITFLAG_RT_STATUS_WORK_POSITION))
#define DEFAULT_JUNCTION_DEVIATION 0.02 // mm
#define DEFAULT_ARC_TOLERANCE 0.002 // mm
#define DEFAULT_REPORT_INCHES 0 // false
#define DEFAULT_AUTO_START 1 // true
#define DEFAULT_INVERT_ST_ENABLE 0 // false
#define DEFAULT_INVERT_LIMIT_PINS 0 // false
#define DEFAULT_SOFT_LIMIT_ENABLE 1 // true
#define DEFAULT_HARD_LIMIT_ENABLE 0 // false
#define DEFAULT_HOMING_ENABLE 1 // true
#define DEFAULT_HOMING_DIR_MASK ((1<<X_AXIS)|(1<<Y_AXIS)|(0<<Z_AXIS)) // in Cyclone, z axis is left to move upwards, in case Z homing is triggered (there is no Z endstop!)
#define DEFAULT_HOMING_FEED_RATE 50.0 // mm/min (slower feed rate to "bump" the endstops)
#define DEFAULT_HOMING_SEEK_RATE 635.0 // mm/min (will saturate to MAX_RATE)
#define DEFAULT_HOMING_DEBOUNCE_DELAY 250 // msec (0-65k)
#define DEFAULT_HOMING_PULLOFF 0.0 // mm (distance that the axis move after homing)

Merci en tout cas pour ton aide
Vol689
Sorry, only registered users may post in this forum.

Click here to login