您好! 我正在使用 InstaSPIN-FOC 运行 ACIM。 Lab05a 工作正常、我正在控制 IQ_ref 以控制电机速度。 但是、当我转到 lab05b 时、我无法运行电机。 PID 设置与 lab05a 相同、仅添加速度 PID、默认值为。 我使用图25和26 (lab`s doc)对 lab05a 和 lab05b 的对称值进行了比较。 下面是提取一些值的方法:
/*internal variables*/ IqRefHolder=CTRL_getIq_ref_pu(ctrlHandle); IqHolder=CTRL_getIq_in_pu(ctrlHandle); IdRefHolder=CTRL_getId_ref_pu(ctrlHandle); IdHolder=CTRL_getId_in_pu(ctrlHandle); AngleHolder=EST_getAngle_pu(obj->estHandle); VqHolder=CTRL_getVq_out_pu(ctrlHandle); VdHolder=CTRL_getVd_out_pu(ctrlHandle); EstSpeedKrpm=EST_getSpeed_krpm(obj->estHandle); Spd_out=CTRL_getSpd_out_pu(ctrlHandle); /*PIDs*/ IdKi=CTRL_getKi(ctrlHandle,CTRL_Type_PID_Id); IdKd=CTRL_getKd(ctrlHandle,CTRL_Type_PID_Id); IdKp=CTRL_getKp(ctrlHandle,CTRL_Type_PID_Id); IqKi=CTRL_getKi(ctrlHandle,CTRL_Type_PID_Iq); IqKd=CTRL_getKd(ctrlHandle,CTRL_Type_PID_Iq); IqKp=CTRL_getKp(ctrlHandle,CTRL_Type_PID_Iq); SpdKi=CTRL_getKi(ctrlHandle,CTRL_Type_PID_spd); SpdKd=CTRL_getKd(ctrlHandle,CTRL_Type_PID_spd); SpdKp=CTRL_getKp(ctrlHandle,CTRL_Type_PID_spd);
有几件事吸引了我的注意。 即使 当 IqRefHolder=IQ (0.0)(CTRL_getIq_ref_pu (ctrlHandle))时、电机也会在 lab05a 上运行。 在 lab05b 上、SPD_OUTn`t 变为0.13、但它不会更改 IQ_ref (如果我使用正确的函数-> CTRL_getIq_ref_pu (ctrlHandle)提取此值)。 n`t、Iq_ref 保持0.0、但电机仍然不会旋转。
其次是估算器速度 EstSpeedkrpm=EST_getSpeed_krpm (obj->estHandle);上升到0.13 (尽管如此、SpeedRef_krpm 被设定为0.09)并下降到0。 但电机没有旋转。 在 lab05a 中、该值约为0.47-0.5、IQ_ref 设置为0。 我认为估算器正在运行。
我是否正在监控正确的症状? lab05a 和 lab05b 之间唯一的区别是它应该工作的附加速度控制器。 但似乎有差异。 在 lab05a 中、力角甚至未激活。
您能告诉我应该监控哪些症状吗? 我是否提取正确的值。 我监控的值是否与图25和26中的值相对应?
谢谢!