PG速度检测程序说明.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PG速度检测程序说明

(1)CAP模式下,速度的Q运算说明 ① tmpL = LONG_MAX/(long)P.numOfPGPulse; //Q31: 7324~LONG_MAX ② tmpL1=__qmpy32((long)(2L*PI*HISPCP_HZ*(1L2)),tmpL,62-31);//Q2:29000~LONG_MAX ③ tmpL = LONG_MAX/(long)tCount; //Q31 ④ Wrfd = LONG_MPY(tmpL1, tmpL, 31+2-W_LONG_Q+eQepPrescale-1); 理论的计算公式为: 完成运算,定Q31的标 完成运算,定Q2的标 完成运算,定Q31的标 因此在④的运算中,除了要完成②和③的乘积运算,还要乘以,同时考虑的最终定标为Q19。而 程序中的期望定标是W_LONG_Q,则函数LONG_MPY ()的q计算如下: 期望 则: 因此,④中函数LONG_MPY ()的q取。 (2)QEP模式下,速度的运算说明 Wrfd=(long)Eqep1Regs.QPOSLAT*1000L*(1LWr_Q-13-2+1)/(long)P.numOfPGPulse*(long)(PI*(1L13)) 理论计算公式: Wrfd要定Wr_Q(Q19)的标,(Wr_Q-13-2+1)中,-13是为了抵消PI的Q13,-2就是中的分母,+1就是中的2,1000是。 (3) QEP_CNT_MIN与CAP_CNT_MIN_LO的关系 = 注: (QEP_CNT_MIN/4)是因为UPPS=2,即4个pulse为一个unit position(4个pulse 为一个位置脉冲) 说明:高速QEP模式下,当在Unit time里得到的count少于QEP_CNT_MIN时,切换到低速CAP模式。 低速CAP模式下,当在1分频时,当QCPRDLAT的值小于CAP_CNT_MIN_LO时,切换到高速QEP模式。 整理得到: 由于是1分频,此时 所以: 程序中 #define QEP_CNT_MIN ((short)((7*QEP_TIME*1e-3)/(CAP_CNT_MIN_LO*(1.0/HISPCP_HZ)))) 若按照前面的理论计算,应该为: QEP_CNT_MIN ((short)((8*QEP_TIME*1e-3)/(CAP_CNT_MIN_LO*(1.0/HISPCP_HZ)))) (注:) 选用7替代8是为了制造一个切换的缓冲,经过计算,可知: QEP_CNT_MIN = 146 当时,从高速QEP模式切换至低速CAP模式(4000线码盘) 当时,从低速CAP模式切换至高速QEP模式(4000线码盘) 注:如果码盘为2000线,则从QEP跳换到CAP的speed为548rpm,从CAP跳换到QEP的speed为625rpm。 (4)速度检测精度 测频法的精度: 在Unit Time时间里测出position count,利用计算速度,其精度受到传感器精度(线数)与Unit Time周期的影响。 本程序中,Unit Time = 0.001s 如果用2000线的光电编码器,一转的position count数目为2000*4=8000,角位移的分辨率就是(1个position count对应的角位移),在T=0.001s的情况下,角速度的分辨率就是,转速分辨率就是。 当然,如果码盘是4000线的,则测速分辨率就是3.75rpm。 说明:在码盘精度与Unit Time一定的情况下(码盘2000线,Unit time 0.001s),转速精度与转速相关,例如:当转速为1500rpm时,,亦即可以获得的误差精度。如果是4000线的码盘,Unit time 0.001s,在1500rpm时,可以获得0.25%的测速误差精度,如果想获得0.1%以上精度,除非转速在3750rpm以上。 注:提高编码器的线数或者提高Unit Time周期都能提高检测精度。

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档