Moving a motor at specified power

Is there a sensor so I can use to control the power of the motor? (Instead of voltage from -1 to 1)
I want to move an arm with specified power so that the battery condition won’t affect the power of it.
I know how to do it with speed control (like last year’s shooters) but this is totally different.

Depending on the underlying reason for your requirement, there might be another appropriate answer. Why do you want a specific power for your arm, rather than a specific speed?

It doesnt have enough time to accelerate necause it works for half a second or less each time.

When the motor is run at full voltage (1.0 or -1.0) for the duration required, it doesn’t have enough time to accelerate?

If that is the case, then you need to address your problem with a mechanical solution (gearing?) to provide the acceleration desired given your motor’s spec.s and the load it is driving.

Agreed. If your system can not provide enough peak power, any closed loop system will simply stay at that peak and still be limited by the battery. A servo does not create power that is not there, it controls the application of the power. Re-evaluate your motors and/or gearing.