I have a adafruit NEMA 17 stepper motor and an adafruit motor shield v2.3 which is powered by a 12v battery. It needs to run twice per day (once in the morning, once in the evening). I left it on all day to see if it worked. It did but the when I came back the motor was extremely hot and had drained the battery a lot. Is there a way to stop this?
Stepper motors are very inefficient as they draw most of the full current even when stationary - that's how they hold their position.
You can disable the stepper driver after a move but then there is no guarantee that the motor will resume at exactly the same step when the driver is enabled the next time. And, of course, if there is an external force that moves the motor when the driver is disabled the Arduino will have no idea where it is.
It is normal for stepper motors to be hot - uncomfortable to touch. Have you set the current limit on your A4988 to match the motor?
Ok, it is supposed to be lifting a small door for a chicken coop in the morning and holding it there throughout the day It worries me that it is heating up until it is barely comfortable to touch when there is no load on it when it is just sitting on my desk. Is this still normal? (The door is counterbalanced to some degree though).
Instead of a stepper (that has to stay powered to maintain position) use a DC motor with a worm drive gearbox. The worm drive can't be back driven so once in position the motor power can be turned off. Install limit switches to sense position.
Plasterboard:
I have a adafruit NEMA 17 stepper motor and an adafruit motor shield v2.3 which is powered by a 12v battery.
Plasterboard:
It worries me that it is heating up until it is barely comfortable to touch when there is no load on it when it is just sitting on my desk. Is this still normal?
Which stepper (datasheet). NEMA 17 is the size of the mounting plate (1.7inch).
That shield is a brushed DC motor driver, and NOT a stepper motor driver, despite what they are saying.
You can (ab)use it for a high impedance stepper, maybe, if the supply and winding resistance match.
And yes, it it heating up too much if they don't match.
Leo..
Plasterboard:
Ok, it is supposed to be lifting a small door for a chicken coop in the morning and holding it there throughout the day It worries me that it is heating up until it is barely comfortable to touch when there is no load on it when it is just sitting on my desk. Is this still normal? (The door is counterbalanced to some degree though).
It should be too hot to touch, typical ratings are for 60C temp rise from ambient at nominal current.
Steppers are for position control typically. You need a something like a small linear actuator perhaps,
these have built-in limit switches at end of travel and hold state when powered down. You can also
control the max force they apply by limiting current to the motor.
Steppers have much more torque at low speeds and stationary then when moving, making it hard to limit torque
in any useful manner - for closing a door this means they would either be too weak to move it or too powerful
to be safe if something's in the way (a chicken!). So you might want a slipping clutch and limit switches anyway,
so a simple DC gearmotor would be fine.
I have a adafruit NEMA 17 stepper motor and an adafruit motor shield v2.3 which is powered by a 12v battery. It needs to run twice per day (once in the morning, once in the evening). I left it on all day to see if it worked. It did but the when I came back the motor was extremely hot and had drained the battery a lot. Is there a way to stop this?
It is supposed to be lifting a small door for a chicken coop in the morning and holding it there throughout the day It worries me that it is heating up until it is barely comfortable to touch when there is no load on it when it is just sitting on my desk. Is this still normal? (The door is counterbalanced to some degree though).
Stepper motors consume most power when standing still. If you turn power off, the may loose their position, e.g. close the door.
Either install a lock that keeps the door open while the motor is off, or use a self-locking gearbox. And use a DC motor to lift the door instead of a stepper motor.