Our application is DRV10983PWPR for commercial service robot to drive the head rotation, the motor is powered by 24V, and the brushless battery is a common three-wire model with no hall and no encoder. At present, there is a problem that the motor torque is too small at low speed. The specific hardware and software configuration is as follows.
Software configuration:
1. Register configuration
0x20=4C 0x21=5C 0x22=2A 0x23=0C 0x24=40 0x25=FD 0x26=80 0x27=F8 0x28=0F 0x29=C9 0x2a=08 0x2b=04
2. Using I2C to control motor movement, existing problems.
A) Using I2C configuration register 0x27=F4, the motor will continue to accelerate and the overcurrent will eventually stop; Configure register 0x27=F8. When the speed is set to a value such as 0x50, the motor will accelerate to the specified speed and then run smoothly. What is the cause of this phenomenon? Why is the motor accelerated all the time when register 0x27=F4 is configured? What is the difference between these two configurations?
B) Using I2C configuration register 0x27=F4, the motor will continue to accelerate and the overcurrent will finally stop; Configure register 0x27=F8. When the speed is set to configure registers 0x00 and 0x01 and the motor speed is set to about 0x50, the motor can start and run smoothly; Set the motor speed to about 0x20, and the motor is shaken and cannot be started and run. What is the cause of this phenomenon?
C) When the steady speed of the motor is set to change, the torque of the motor will also become smaller. At this point, the current detected during the steady operation of the motor is also extremely low. Can the torque of the motor be set to increase or remain constant when the speed of the motor changes? If torque or current can be set, how? How can It not be set? Please explain the governing principle of this driver.