Ciao a tutti!
Vi chiedo un aiuto in quanto ho un problema con dei motori stepper. Cercherò di fornirvi più dettagli possibili....
Quello che dovrei realizzare è una specie di tornio automatizzato, quindi una cosa semplice composta da due motori stepper (asse X e Y) e un motore in corrente continua (dove c'è il pezzo da "tagliare"). Il tutto comandato da Arduino per far muovere i motori.
Il circuito utilizzato è il seguente:

E in caso anche il sorgente FidoCadJ
[FIDOCAD]
MC 160 190 0 0 ey_libraries.refpnt5
MC 75 135 3 0 010
FCJ
TY 75 135 4 3 0 0 0 * Vcc
TY 75 140 4 3 0 0 0 * 12V
RV 180 180 100 160 0
TY 130 170 4 3 0 0 0 * A4988
TY 100 160 4 3 0 0 0 * DIR
TY 110 160 4 3 0 0 0 * STEP
TY 135 160 4 3 0 0 0 * RST
TY 125 160 4 3 0 0 0 * SLP
TY 170 160 4 3 0 0 0 * MS1
TY 160 160 4 3 0 0 0 * MS2
TY 150 160 4 3 0 0 0 * MS3
LI 130 160 130 155 0
LI 130 155 140 155 0
LI 140 155 140 160 0
MC 185 105 3 0 010
FCJ
TY 185 105 4 3 0 0 0 * Vcc
TY 185 110 4 3 0 0 0 * 5V
LI 155 160 155 155 0
LI 155 155 165 155 0
LI 165 155 175 155 0
LI 175 155 175 160 0
LI 165 160 165 155 0
LI 165 155 165 110 0
LI 165 110 185 110 0
LI 185 110 185 105 0
MC 105 115 3 0 074
MC 115 115 3 0 074
LI 105 160 105 115 0
LI 115 160 115 115 0
TY 95 105 4 3 0 0 0 * PIN2
TY 115 105 4 3 0 0 0 * PIN3
TY 170 175 4 3 0 0 0 * V+
TY 155 175 4 3 0 0 0 * GND
TY 100 175 4 3 0 0 0 * Vmot
LI 160 180 160 190 0
LI 170 180 170 185 0
LI 170 185 185 185 0
LI 185 185 185 155 0
LI 185 155 185 110 0
LI 105 180 105 185 0
LI 105 185 75 185 0
LI 75 185 75 135 0
TY 115 175 4 3 0 0 0 * 1A
TY 125 175 4 3 0 0 0 * 1B
TY 135 175 4 3 0 0 0 * 2A
TY 145 175 4 3 0 0 0 * 2B
MC 150 205 1 0 074
MC 140 205 1 0 074
MC 130 205 1 0 074
MC 120 205 1 0 074
LI 120 180 120 205 0
LI 130 180 130 205 0
LI 140 180 140 205 0
LI 150 180 150 205 0
RV 115 210 155 225 0
TY 115 210 4 3 0 0 0 * 17HS13-0404S
TY 125 215 4 3 0 0 0 * Asse Y
MC 310 190 0 0 ey_libraries.refpnt5
MC 225 135 3 0 010
FCJ
TY 225 135 4 3 0 0 0 * Vcc
TY 225 140 4 3 0 0 0 * 12V
RV 330 180 250 160 0
TY 280 170 4 3 0 0 0 * A4988
TY 250 160 4 3 0 0 0 * DIR
TY 260 160 4 3 0 0 0 * STEP
TY 285 160 4 3 0 0 0 * RST
TY 275 160 4 3 0 0 0 * SLP
TY 320 160 4 3 0 0 0 * MS1
TY 310 160 4 3 0 0 0 * MS2
TY 300 160 4 3 0 0 0 * MS3
LI 280 160 280 155 0
LI 280 155 290 155 0
LI 290 155 290 160 0
MC 335 105 3 0 010
FCJ
TY 335 105 4 3 0 0 0 * Vcc
TY 335 110 4 3 0 0 0 * 5V
LI 335 110 335 105 0
MC 255 115 3 0 074
MC 265 115 3 0 074
LI 255 160 255 115 0
LI 265 160 265 115 0
TY 245 105 4 3 0 0 0 * PIN5
TY 265 105 4 3 0 0 0 * PIN6
TY 320 175 4 3 0 0 0 * V+
TY 305 175 4 3 0 0 0 * GND
TY 250 175 4 3 0 0 0 * Vmot
LI 310 180 310 190 0
LI 320 180 320 185 0
LI 320 185 335 185 0
LI 335 185 335 155 0
LI 335 155 335 110 0
LI 255 180 255 185 0
LI 255 185 225 185 0
LI 225 185 225 135 0
TY 265 175 4 3 0 0 0 * 1A
TY 275 175 4 3 0 0 0 * 1B
TY 285 175 4 3 0 0 0 * 2A
TY 295 175 4 3 0 0 0 * 2B
MC 300 205 1 0 074
MC 290 205 1 0 074
MC 280 205 1 0 074
MC 270 205 1 0 074
LI 270 180 270 205 0
LI 280 180 280 205 0
LI 290 180 290 205 0
LI 300 180 300 205 0
RV 265 210 305 225 0
TY 265 210 4 3 0 0 0 * 17HS13-0404S
TY 275 215 4 3 0 0 0 * Asse X
MC 75 185 0 0 180
FCJ
TY 80 185 4 3 0 0 0 * C1
TY 80 190 4 3 0 0 0 * 100uF
MC 225 185 0 0 180
FCJ
TY 230 185 4 3 0 0 0 * C2
TY 230 190 4 3 0 0 0 * 100uF
MC 75 195 0 0 ey_libraries.refpnt5
MC 225 195 0 0 ey_libraries.refpnt5
RV 395 145 445 170 0
TY 410 155 4 3 0 0 0 * IMS-2B
MC 440 190 0 0 elettrotecnica.mcc
TY 425 164 4 3 0 0 0 * M+
TY 435 164 4 3 0 0 0 * M-
TY 400 164 4 3 0 0 0 * GND
TY 415 164 4 3 0 0 0 * B+
TY 415 145 4 3 0 0 0 * IN1
TY 430 145 4 3 0 0 0 * IN2
TY 400 145 4 3 0 0 0 * GND
LI 430 180 430 185 0
LI 440 170 440 175 0
LI 440 175 450 175 0
LI 450 175 450 185 0
LI 425 170 425 175 0
LI 425 175 430 175 0
LI 430 175 430 180 0
MC 405 175 0 0 ey_libraries.refpnt5
MC 395 140 0 0 ey_libraries.refpnt5
LI 405 145 405 135 0
LI 405 135 395 135 0
LI 395 135 395 140 0
LI 405 170 405 175 0
MC 380 165 3 0 010
FCJ
TY 380 165 4 3 0 0 0 * Vcc
TY 380 170 4 3 0 0 0 * 12V
LI 380 165 380 185 0
LI 380 185 415 185 0
LI 415 185 415 170 0
LI 415 145 415 125 0
LI 435 145 435 125 0
MC 415 125 3 0 074
MC 435 125 3 0 074
TY 410 115 4 3 0 0 0 * PIN10
TY 430 115 4 3 0 0 0 * PIN11
In realtà il circuito è corredato anche di due switch con funzione di end-point per la procedura di homing iniziale degli stepper, ma questi sono ininfluenti relativamente al problema.
I componenti utilizzati sono:
-
2 x A4988: driver per i motori stepper (assi X e Y). Vref impostata a 0.22V, calcolati con la seguente formula
VREF=8 * IMAX * RCS = 8 * 0.4 * 0.10 = 0.32V -> il 70%, ovvero 0.22V -
1 x motore DC: purtroppo non ho le specifiche di questo motore, ma sostanzialmente è >QUESTO<
-
2 x 17HS13-0404S: sono i due motori stepper per gli assi X e Y
-
1 x IMS-2B: driver per pilotare il motore in corrente continua. Per ora è scollegato dal circuito il motore viene azionato manualmente
-
Arduino UNO
Le alimentazioni sono le seguenti:
- 12V e 5V sono erogati da un alimentatore da PC che ho trasformato in un alimentatore da banco. In questo caso alimenta tutti i motori e tutti i driver
- Arduino è collegato alla presa USB del PC in quanto il software realizzato per ora non ha possibilità di inserire gli input se non tramite monitor seriale.
- NOTA: ho collegato uno dei PIN GND di arduino alla massa dell'alimentatore, se non erro le masse devono essere uniche...
Ora...Il problema:
fin tanto che il motore DC è spento gli stepper fanno esattamente il loro lavoro e si muovono con precisione. Quando il motore DC inizia a girare gli stepper "traballano", come se ci fossero delle interferenze che, a lungo andare, mi fanno fare anche un giro completo della barra filettata a cui sono collegati. Il problema si amplifica quando il motore DC inizia ad assorbire più corrente, mentre sparisce completamente se tolgo l'alimentazione a quest'ultimo.
Questo mi fa pensare a qualche disturbo proveniente dal motore DC....ma non ho la più pallida idea di come si possa risolvere....
Voi che ne pensate?