Page 1 of 1

BLCDMotor getMinDataInterval

Posted: Wed Dec 15, 2021 8:11 am
by rkwakkel
I am using the BLCDMotorAPI for control of a self balancing robot. Equipment used includes VINT Hub, 42DMW61 NEMA17 Brushless Motors, BLDC controllers and PhidgetSpatial Precision 3/3/3.

For position control it would be helpful to receive position updates from the motors / BLCDMotorAPI at a higher rate than the current MinDataInterval, which is 100ms.

This MinDataInterval seems really large - I imagine that brushless motors and APIs should be able to report position information at a much higher rate and I am wondering why that is not supported.

So my question - is there a way to collect position information at higher rates ( eg 10ms ) , or could it be considered to lower the MinDataInterval limit through the BLCDMotorAPI ?

Note that the MotorPositionController is able to report positions every 20 ms, however but I don't think it is possible ( or sensible ) to use BLCDMotorAPI for motor control and combine that with MotorPositionController for retrieval of position information, but let me know if I am mistaken.

Re: BLCDMotor getMinDataInterval

Posted: Wed Dec 15, 2021 9:43 am
by mparadis
You're correct that you can't open both the BLDCMotor and MotorPositionController channels at the same time.

You could use the MotorPositionController object on it's own for controlling a self-balancing robot, but I assume you have your own custom control loop that you want to use.

Re: BLCDMotor getMinDataInterval

Posted: Fri Dec 17, 2021 8:46 am
by rkwakkel
Use of MotorPositionController for balancing does not seem an option as with position control I expect I will end up with stop and go movement ( set position to x, wait till position has been achieved, at which time speed will be zero again ) and repeat. So my question - would it be possible to allow for a lower MinDataInterval for BLCDMotorAPI - lower than the current 100ms ? A value of 20ms ( as is the case for he MotorPositionController ) would be great.