Hello, Chris and Adam,
(1) Now I use lab13a to run my motor. I will change the position reference step by step.
void ST_runPosCtl(ST_Handle handle, CTRL_Handle ctrlHandle)
{
ST_Obj *stObj = (ST_Obj *) handle;
// provide the updated references to the SpinTAC Position Control
//STPOSCTL_setPositionReference_mrev(stObj->posCtlHandle, 0);
STPOSCTL_setPositionReference_mrev(stObj->posCtlHandle, _IQ24(motor_pos_reference));
STPOSCTL_setVelocityReference(stObj->posCtlHandle, 0);
STPOSCTL_setAccelerationReference(stObj->posCtlHandle, 0);
// provide the feedback to the SpinTAC Position Control
STPOSCTL_setPositionFeedback_mrev(stObj->posCtlHandle, STPOSCONV_getPosition_mrev(stObj->posConvHandle));
// Run SpinTAC Position Control
STPOSCTL_run(stObj->posCtlHandle);
// Provide SpinTAC Position Control Torque Output to the FOC
CTRL_setIq_ref_pu(ctrlHandle, STPOSCTL_getTorqueReference(stObj->posCtlHandle));
}
Here both of the velocity reference and acceleration reference are set to 0 by default. So I want to know what is the maximum motor speed and its acceleration value in this default setting?
Also I try to change this velocity reference value, but it seems that it can not work. Can I set the velocity reference value and the acceleration reference value in lab13a(only position control, not include position move)?
(2)
In lab13b, spintac position control and postion move are include. This example drives the motor to run 1.5 revolutions. the motoro position is not an absolute value. Finally the motor will stop.
Before the motor stops, Can I change its position goal to a new value and make it run to a new position?
Is there a minimum motor speed for the position move?
Thank you
Fei