TI中文支持网
TI专业的中文技术问题搜集分享网站

motorware,在带位置传感器的程序中,怎么用我们测的角度替换QEP测得的角度

用的motorware中lab13e的程序,传感器采用旋转变压器,解码芯片用的AD2S1205,把AD2S1205的A,B,NM信号接F28069的QEP端口,现在的问题是:

1.不能保证电机每次都能可靠启动,上次还运行正常的,断电重新上电,给转速后电机就有一定几率不能运转(gMotorVars.SpinTAC.PosCtlErrorID=2002),只要上电运行正常的,反复开关使能或设定不同转速都能正常工作,只要上电第一次不能正常工作的,就永远不能正常运转,不知道是什么原因?

2.在电路上,我通过SPI也在读取AD2S1205解码后的角度,但这个角度变化是每转一圈角度值从0~4095变化的,而QEP采集的角度是和电机级数有关的,如5级电机,电机每旋转一圈角度从0~1.0变化5次,问题是我想用SPI读到的角度替换QEP的角度,我该怎么做呢?

请TI的工程师或大师帮忙解惑,谢谢!

user524568:

TI的工程师能帮忙解答吗?

我试着这样改enc.enc_elec_angle=_IQ((float_t)ad2s_angle/4096.0);//ad2s_angle是SPI测得的角度,电机无法启动.

用的motorware中lab13e的程序,传感器采用旋转变压器,解码芯片用的AD2S1205,把AD2S1205的A,B,NM信号接F28069的QEP端口,现在的问题是:

1.不能保证电机每次都能可靠启动,上次还运行正常的,断电重新上电,给转速后电机就有一定几率不能运转(gMotorVars.SpinTAC.PosCtlErrorID=2002),只要上电运行正常的,反复开关使能或设定不同转速都能正常工作,只要上电第一次不能正常工作的,就永远不能正常运转,不知道是什么原因?

2.在电路上,我通过SPI也在读取AD2S1205解码后的角度,但这个角度变化是每转一圈角度值从0~4095变化的,而QEP采集的角度是和电机级数有关的,如5级电机,电机每旋转一圈角度从0~1.0变化5次,问题是我想用SPI读到的角度替换QEP的角度,我该怎么做呢?

请TI的工程师或大师帮忙解惑,谢谢!

Eric Ma:

回复 user524568:

“我试着这样改enc.enc_elec_angle=_IQ((float_t)ad2s_angle/4096.0);//ad2s_angle是SPI测得的角度,电机无法启动.”
Eric:
我的建议是,先跑一下无传感的电机控制算法,那里面会有估算的电机电角度。同时跑一下你SPI测试出来的电角度,对比一下是否一致,如果一致,那么就可以切换过来,个人感觉应该是目前的电角度转换出现问题。

用的motorware中lab13e的程序,传感器采用旋转变压器,解码芯片用的AD2S1205,把AD2S1205的A,B,NM信号接F28069的QEP端口,现在的问题是:

1.不能保证电机每次都能可靠启动,上次还运行正常的,断电重新上电,给转速后电机就有一定几率不能运转(gMotorVars.SpinTAC.PosCtlErrorID=2002),只要上电运行正常的,反复开关使能或设定不同转速都能正常工作,只要上电第一次不能正常工作的,就永远不能正常运转,不知道是什么原因?

2.在电路上,我通过SPI也在读取AD2S1205解码后的角度,但这个角度变化是每转一圈角度值从0~4095变化的,而QEP采集的角度是和电机级数有关的,如5级电机,电机每旋转一圈角度从0~1.0变化5次,问题是我想用SPI读到的角度替换QEP的角度,我该怎么做呢?

请TI的工程师或大师帮忙解惑,谢谢!

user524568:

回复 Eric Ma:

谢谢Reic的回复!

估算的电角度是通过angle_pu = EST_getAngle_pu(obj->estHandle)计算的吗?

我观察即使电机不转angle_pu的值也不停的在变化,是什么原因呢?

而用SPI和QEP的值是一样的,电机不转值也不变,它们怎么进行转换呢?

赞(0)
未经允许不得转载:TI中文支持网 » motorware,在带位置传感器的程序中,怎么用我们测的角度替换QEP测得的角度
分享到: 更多 (0)