Self balancing robot, Stepper motors 28BYJ, how much can it weigh ?

I've calculated that if you put a string with a weight on a 28BYJ, one of these takes around 1 kg on 5 volt as max torque, that is 2 kg on 2 motors.

To see my build specs, look at this:

Current weight is 1.2 kg

Right now I'm using stepper.h lib, so wheels are alternating, not running at the same time.

Question: Should this work, and keep it upright when I push it ? (in the video it falls, can't handle the acceleration change)

I've tried accelstepper.h, but it doesn't work any better for some reason.

Here's a stress test from the stepper motor(NOT MY VIDEO):

"1 kg" is not a measure of torque.

I think you get what I mean, look at the video, the weight is pushing directly downwards on reference turning point of motor, so g*cm = g * 0 cm -> 1 kg , as can be understood.

But my question is still, will this work ?? I think I may need a nema 17 or something like that

gm*0 cm = 0

Who knows if it will work? Most people use brushed DC motors for balancing robots.

You need to estimate the required torque, measure the motor torque and also take into account that the maximum step rate of the stepper might not be fast enough to balance the robot.

what driver and dc motor would carry my 2 kg build ?

Most of them. The weight of the robot doesn't have much influence on the torque required. In fact a heavier robot is probably easier to balance because it has more inertia.

Speed is a factor. How fast do you want it to go? Then you have to take a huge discount on the speed because a motor running at max speed can't balance because it can't go faster. Then look at the surface and tyre material. Softer requires more torque which will reduce the motor speed further, for a fixed battery voltage.

Most of them.

I disagree. There are any number of small motors that won't begin to budge a 2 kg robot.

To rotate an object like a balancing robot requires torque, the heavier the object, the more torque required.

The required torque can be calculated from the mass distribution, the physical dimensions and the required angular acceleration. Look up moment of inertia in any physics textbook.

And there's any number of large motors that will weigh more than 2kg. I think my infinity is bigger than your infinity.

What is the motor torque when the robot is balanced? Zero. If it stays close to balanced then the torque will be close to zero. Soft carpet and a heavy robot will increase the torque required but the fun thing with these balancing robots is a small motor will balance a large robot.

I think my infinity is bigger than your infinity.

Small motors are cheaper than large motors, so my infinity probably wins.

So to conclude:

I now use 28 byj steppers with ULN2003, this will not work for 2 kg robot, since they are too weak.
Holding torque of 28 byj is 300 g*cm

I will instead buy 2 dc motors, new batteries with 12 V for more torque?
and new drivers.

Does this sound okey ?

Try it and let us know how it works.

Update: I'm going for the Nema 17 HS3401 1.4 A stepper motors with A4988 drivers

For battery I'm thinking about this 12 V 3000 mAh lipo battery: (maximum working current: 3A)

https://www.aliexpress.com/item/12-V-3000-mAh-18650-Li-ion-Rechargeable-battery-and-12-6V-Charger-cctv-camera/32615205520.html

Looks good, I have it all then?

Okey, new update, as a motor shield im using the cnc shield v3.
I've been playing with the grbl settings, but the steppers are skipping steps all the time, so it can't balance, see above for battery and steppers. Btw: Cnc shield powered by battery, on arduino uno, sending to ras pi 3 as main controller connected to arduino through USB.

Steppers won't be a good choice for balancing bots right? They'll work, but run out of battery energy pretty quick.

I've never had a problem with power, the problem is the step skipping

You probably have the current limit set too low on the A4988 drivers.

Southpark:
Steppers won't be a good choice for balancing bots right? They'll work, but run out of battery energy pretty quick.

They might be a bad choice for a completely different reason - they need a different control loop as they
only control position, not torque. The naive control loop for position generates unrealistic demands for
acceration.

Okey, by formula vref = 1.3 A / resistance, I can try to find A4988 resistor value, guess it varies for each producer. Anyone have a guess what it is ?
Steppers are 1.3 A. Running from 12 volt 3 A battery.

I have vref = 0.65 now, since that is 2 as resistance value. Just my guess..

One advantage of buying a motor driver from a reputable manufacturer like Pololu, is that they support their products, and give you the data you need to use it correctly. In this case, that would be the information and instructions required to set the current limit properly.

MarkT:
They might be a bad choice for a completely different reason - they need a different control loop as they
only control position, not torque. The naive control loop for position generates unrealistic demands for
acceleration.

That's definitely an important point about steppers not being a good choice for balance bots. Extremely good point actually.