One of the stepper motor is neither stepping nor energised

Hi all ,

I am working on a stepper motor project with a custom made PCB where I need to rotate two stepper motor simultaneously , I am using two drv 8825 and a 8 channel relay , where 4 relays are connected to one stepper motor and remaing four are connected to another one .

The stepper motor rotate during NC state ( i.e when the relays are activated ) . The problem I am facing is that one of the motor on J9 connector doesn’t step , it doesn’t even vibrate when the relays are activated. I am not facing this issue which the motor when connected to J10 connector .

Drv8825 is in working condition since , I have tested both of them , motor runs when i place it on J10 Connector but not on J9 connector.

I have attached the schematic . J-10 and J-9 connectors are where stepper motors are connected

I am using NEMA 17 , 200 steps stepper motors , and the DRV8825 is in 1/32 microstepping mode

i am using 12 V , 12.5 A power supply .

Thanks in advance

#include <AccelStepper.h>

AccelStepper stepper1(1, 9, 8);

AccelStepper stepper(1, 7, 6);

const int stepPin1 = 9; 
const int dirPin1 = 8; 

const int stepPin = 7; 
const int dirPin = 6 ; 

const int Motor1 = A0; 
const int Motor2 = A1; 
const int Motor3= A2; 
const int Motor4 = A3; 

const int Motor5 = A4; 
const int Motor6 = A5; 
const int Motor7= 3; 
const int Motor8 = 2;





void setup() {
 
  
  
  

  pinMode(dirPin1, OUTPUT);
  pinMode(stepPin1, OUTPUT);
  pinMode(dirPin, OUTPUT);
  pinMode(stepPin, OUTPUT);
  pinMode(Motor1,OUTPUT);
  pinMode(Motor2,OUTPUT);
  pinMode(Motor3,OUTPUT); 
  
  pinMode(Motor4, OUTPUT);

  
  
   pinMode(Motor5,OUTPUT);
  pinMode(Motor6,OUTPUT);
  pinMode(Motor7,OUTPUT); 
  
  pinMode(Motor8, OUTPUT);
 


 stepper1.setMaxSpeed(500);
 
 stepper1.setSpeed(500);  
 
 stepper.setMaxSpeed(500);
 
 stepper.setSpeed(500); 

}
  


void loop()
{   

  digitalWrite(Motor1, HIGH);

digitalWrite(Motor2, HIGH);

digitalWrite(Motor3, HIGH);

digitalWrite(Motor4, HIGH);

digitalWrite(Motor5, HIGH);

digitalWrite(Motor6, HIGH);

digitalWrite(Motor7, HIGH);

digitalWrite(Motor8, HIGH);


      stepper1.runSpeed();

  stepper.runSpeed();

}

SCH_3D-PRINT.pdf (25.6 KB)

You've swapped the two DRV8825's and made sure its not a problem with one of them? (only swap with power off, this is vital)

You've swapped the motors (again with power off) and made sure its not a duff motor?

The only thing left is the connections to your DRV8825 sockets and the motor connectors - check all the pin voltages and continuity between DRV8825 and pins of motor socket.

Nidmar1107: using two drv 8825 and a 8 channel relay , where 4 relays are connected to one stepper motor and remaing four are connected to another one

That sounds alarming. What is the purpose of the relays?

If they are there to disconnect the motor from the driver then the first time they activate the driver will probably be destroyed.

...R Stepper Motor Basics Simple Stepper Code

Oh crikey no, you must never switch steppers like that... The stepper driver is what does the switching and it does it without arcing (inductive load and physical switching means arcing and high voltage high frequency spikes).

MarkT: You've swapped the two DRV8825's and made sure its not a problem with one of them? (only swap with power off, this is vital)

You've swapped the motors (again with power off) and made sure its not a duff motor?

The only thing left is the connections to your DRV8825 sockets and the motor connectors - check all the pin voltages and continuity between DRV8825 and pins of motor socket.

I have done all those combinations , motors are fine and drv8825 is fine . I checked the voltages on the motor out pins , each pins is of each connector is giving a varying voltage with maximum around 7 volts ( something i expected since the output is a pwm signal. both the motor out connector pins are giving me the same varying voltage .

I also checked the continuity as well , they seem alright .

I was wondering if the problem could be due to stepper motor is not getting enough current to step , due the some issue with the relay ?

Are you attempting to switch the motor windings directly with the relays? That’s a no-no.

What exactly are you trying to do?

Yeah, don't do that.

Why are the relays individually controlled? Switching just one wire of a 4-wire stepper will also be very bad for it.

You really need to have at least the DRV8825 reset pins under control of the Arduino. That way you can power down the DRV8825's when switching. Sleep can be hard-wired to HIGH and enable can be left unconnected because it has an internal pulldown.

Hi,

I am working on a stepper motor project with a custom made PCB

Can you post an image of the PCB please?

Please read the first post in any forum entitled how to use this forum. http://forum.arduino.cc/index.php/topic,148850.0.html

Thanks.. Tom... :)