外文翻译译文-使用TMS320C24X DSP测量电机速度的注意事项_第1页
外文翻译译文-使用TMS320C24X DSP测量电机速度的注意事项_第2页
外文翻译译文-使用TMS320C24X DSP测量电机速度的注意事项_第3页
外文翻译译文-使用TMS320C24X DSP测量电机速度的注意事项_第4页
外文翻译译文-使用TMS320C24X DSP测量电机速度的注意事项_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

使用 TMS320C24X DSP 测量电机速度的注意事项摘要TMS320C24X 系列 DSP 提供适当的接口成本低的内部硬件,用于测量电机的转速的应用程序的外部速度传感器。来自速度传感器的输出信号的周期被施加到捕获输入信号的 DSP 的引脚和测量信号的周期。然后,此信息用于计算电机的转速。但是,这种计算电动机的速度取决于几个系统参数。这些参数影响必须使用在速度计算程序的精确测量的。因此,本应用报告给出了一个速度测量系统的分析的来展示了系统参数对计算出的速度的影响。对于一个给定的系统中的适当的缩放和归一化系数的选择进行了讨论。最后,给出了示例显示软件的执行速度计算程序的代码。1 电机转速测量有多个牙齿的低成本轴链轮与霍尔效应齿轮齿传感器被广泛应用于用于测量电机转速。图 1 显示了一些影响速度测量链轮的物理细节。霍尔效应传感器产生一个方波输出信号,每一个齿在其邻近范围内旋转。如果 N 齿链轮,那么由此产生的脉冲速率为 n 每转脉冲。霍尔效应传感器的输出直接馈送到 C24X 捕获输入引脚。这个零件在的霍尔效应传感器的输出的上升沿或下降沿(取指定)中捕获其基定时器计数器值。捕获的值,然后将其存储在一个变量中以供以后计算速度使用。我们将称这个变量为 TIME_STAMP。在软件速度计算实施过程中,TIME_STAMP 每一次新的可用的值,首先保存为当前的变量值。让我们称这个变量为 time_stamp_old。然后新的值加载到另一个变量中,我们称之为 time_stamp_new。对这两个值进行比较,齿对齿的周期(T2-T1)值就可以被计算出来。为了减少抖动或周期波动的最近的,可以采用最近新检测到的 N 个周期测量的脉冲的平均值。从两个连续的 TIME_STAMP 值,捕获的值之间的差异,计算= time_stamp_newtime_stamp_old 然后,以秒为单位的时间间隔由下式给出t=t2-t1=Kp Tclk 其中 KP 为捕获单元时基预分频值。TCLK 是 CPU 时钟周期,以秒为单位。CPU 时钟被用作用户可选择预分频 KP 捕获单元时基。从图 1 中的角度 以弧度表示由下式给出 。N2当 n 是在链轮齿的数目。那么速度 ,以弧度/秒,和归一化速度 N 的计算公式为 *2tTclkKpn 1clk*pn2maxn)( TK这里,max 是 的最大值,这时= 1。因此, l2a对应的最大速度,单位是 rpm Nmax 时,可以测量被计算为 TclkKN*pn60mx2 系统参数对计算速度的影响TMS320C24X 系列 DSP 提供了不同的 CPU 时钟频率和不同的时钟分频器值的捕获单元。这些都会影响速度测量算法的软件实现。另外,根据链轮的齿数和实际所使用的电机的最大速度,精确计算电机的转速的转速测量算法的执行时需要简单的修改。在本节中所提供的几个例子,表现出必要的修改为正确的测量电机转速。2.1 案例 1对于 20MHz 的 CPU 时钟(TCLK=5010-9 秒)为基础的系统,KP=32 和 n= 25,归一化速度 N,就归时,最大可测量速度 1250)(N以弧度/秒表示,最大可测速度为 )(clk*pnmaxTK这对应于在使用本系统时,可以测量 150 万 rpm 的最大速度。现在,在任何实际的实现电机的最大速度会显著低于该最大可测速度。 因此,举例来说,如果所使用的电机的最高工作速度为 23,000 rpm,那么计算出的速度可表示为归一化的归一化值每分钟至少 23000 转。如果我们选择这个基值正常化为23,438 转(这样的价值选择的原因后面会解释) ,然后是在弧度/秒,相应的基础值正常化,则为 因此,标度归一化速度的计算)( 390260*23481max公式为NN921)(这表明,比例因子,在这种情况下为 64。请注意,这个系统有一个最大可测量速度为 1,500,000 rpm,当转速为23,438 rpm 时可能会导致一个基地为 64(=1500000/23438)比例因子。有了这个缩放因子,上述乘法运算也可以简单地实现左移 N 的 6 位。虽然可以以任一方式进行乘法运算,但后者有更快的执行时间的。载入缩放后的归一化速度的最大值 N1 是 1。N1 作为 Q15 数表示时,这个最大值是 32,767(7FFFH) 。因此,在这种情况下,N1 的最大值为32767/64 时,表示在 Q15。现在,由于软件的实施,这时保存为一个 16 位的数字。因此,对于 N 最大的精确度,同时避免溢出的情况,应在 Q21 表示。 这个最大值用 Q21 表示是 32,767。用 rpm 表示转速,计算公式为请注意,当电机运行在它的最高速度为 23,000 64238123481Nrpm 时,测量值 将在其最低。这个最低值会是 =65 这个系统(最快时间为 1 转=65x25x32x50x10-9 秒= 0.0026 秒) 。2.2 案例 2如果系统在案例 1 的参数将保持不变,但所使用的电机的最大工作速度为5500 rpm,然后和以前一样,我们也设定 和1250)(N现在,假设我们对基础值,每分钟 5859 转的)( 250clk*pn2maxTK速度相对于归一化计算。以弧度/秒表示,相应的基础值正常化,则为因此,标度归一化速度的计算公式为)98(260582max。NN56)(这表明,在这种情况下,缩放比例因子为 256。在这里,每分钟 5859 转的查询结果的比例因子为 256(=1500,000/5859)中的基值。使用这个值的乘法运算也可以进行通过左移 N 的 8 位,从而节省了计算时间。再次,缩放后的归一化速度的最大值 N2 是 1。用 Q15 表示,是32767(7FFFH) 。因此,在这种情况下,N 的最大值用 Q15 表示为32767/256。因此,准确度最高的 N 同时避免溢出条件时,它应该表达为Q23。最大值 N 用 Q23 时,这个最大值为 32767。转速用 rpm 表示计算公式为。25689522N请注意,在这种情况下,当电动机运行于它的最大速度为每分钟 5500 转时,测得的最小值为 是 =273。这意味着,最快时间为每转为27325325010-9 秒(=0.01092 秒钟) 。2.3 案例 3现在,如果我们有一个不同的系统,基于 20MHz 的 CPU 时钟(TCLK= 5010 -9 秒) ,KP= 4 和 n= 25,则归一化速度是 用于上120)(N述归一化,以弧度/秒表示,最大可测速度为 现在,)(*maxclkpTKn假设所使用的电机的最高工作速度为 5000 rpm。如果我们归一化计算的速度,相对于相同的最高值,5000rpm,那么相应的基值的正常化,以弧度/秒表示为。N2408323max)(在这种情况下,计算出的比例因子为 2400。在这里 N3 的最大值为 1。用Q15 表示,其值是 32767(7FFFH) 。因此,在这种情况下的最大值以 Q15 表示N3 为 32767/2400。因此,对于准确度最高 N 为了避免溢出,它应该以 Q26表示。 N 用以 Q26 表示,最大值是 27961。转速用 rpm 表示计算公式为。2405033N注意,在这种情况下,当电动机运行的最大速度为 5000 转/分钟时,测量的最小值 = 2400。这意味着最快的时间 1 革命=2400 x 25 x4 x 50 x 9 秒(= 0.012 秒)。对于上面所讨论的所有三种情况中,这是显而易见的,缩放后的归一化速度 N1,N2,N3 都以 Q15 的数字表示。因为这和系统参数的选择有关,归一化速度 N(相对于归一化到最大可测速度的速度)应在不同的 Q 格式来表示以便得到最准确的数值。一旦 N 是代表最大的精确度,速度的计算范围将以特定的格式将被限制在相应的选择的基本速度的正常化。例如,为了得到最准确的案例 3 中的速度范围内(相对于每分钟 5000 转的归一化) ,如果 N 是表示在 Q26,则可以计算出的最大速度是每分钟 5000 转。然而,如果 N 是表示在 Q21 中的最大转速,可以计算出每分钟是 23438 转(当选择为适当的值的最大速度和标度因子) 。然而,这也意味着,在更广阔的范围内的来计算速度的能力是可以的通过在较低的速度范围内降低计算速度的准确度。3 速度计算周期测量在 C24X 捕获单元允许事件之间精确的时间测量(在时钟周期的倍数由预分频器选择定义) 。在这种情况下,事件被选择为输入脉冲串的上升沿。在这里我们感兴趣的是事件之间的时间差。要实现这一点,定时器 1 允许用户可选择的预分频器 KP 和 CPU 时钟在 TCLK 秒的时间内自由运行。增量时间,频时钟计数,计算公式如图 2 所示: 图 2 计算速度在图 2 中,垂直轴 f(t)表示一个定时计数器的值,它运行在连续向上计数模式和复位周期寄存器= FFFFH 时。需要注意的是,两起案件需要进行核算:定时器缠在单情况下没有缠绕但有包裹。通过保持当前和以前的捕捉值,对于上述每种情况下都很容易测试。一旦 的值的速度是已知的,使用前面所介绍的相应的方程来计算。为了维持全系列电机速度的较高计算精度, ,如图 3 所示的 32 位/16 位分割将被采用。图 3 32 位/16 位分割被执行时,分割后的结果将是一个 32 位的 Q31 格式的值。该值随后被缩放到一个 16-bitQ15 格式的值。4 代码示例这里提出来说明软件的计算速度的两个代码示例对之前实施的三种情况解释。假设在捕获的值的差异被保存的变量称为 event_period。4.1 案例 1SPEED_SCALER_ .set 64RPM_MAX_ .set 23438 ;Max rpm value. Base value for normalization;Init variables:LDP #speed_scalerSPLK #SPEED_SCALER_, speed_scalerSPLK #RPM_MAX_, rpm_max.;Calculate speed, i.e. speed = 1/period;Numerator (i.e. 1) is in Q31 format;Phase 1LACC #07FFFh ;Load Numerator HiRPT #15SUBC event_periodSACL speed_hiXOR speed_hiOR #0FFFFh ;Load Numerator Lo;Phase 2RPT #15SUBC event_periodSACL speed_loLACC speed_loADDH speed_hi ;Result is in Q31 in 32 bit format;End of 32bit/16bit division. The result is in ACC, in Q31, 32 bit format.RPT #5SFL ;Q37SACH speed_prd_max ;Q21SPM 0LT speed_prd_max ;Q21MPY speed_scaler ;Q0*Q21PAC ;Q21RPT #2SFL ;Q24SACH speed_prd,7 ;Q15, speed_prd= speed_scaler*speed_prd_maxLT speed_prd ;Q15MPY rpm_max ;Q0PACSACH speed_rpm,1 ;Q04.2 案例 2在这种情况下,初始化和除法部分保持不变。如果用户还希望使用相同的代码在不同的速度范围(023438 转)应用更广泛,然后需要在这里唯一的变化是最大速度和比例因子(解释) 。但是,如果在(05000 转)的速度范围内,则最大的精确度是理想的归一化速度需要用 Q26 表示。在这种情况下,后部分的代码更改,如下图所示。SPEED_SCALER_ .set 2400RPM_MAX_ .set 5000 ;Max rpm value. Base value for normalization;Init variables:(Same as before);Calculate speed, i.e. speed = 1/period(Same as before);End of 32bit/16bit division. The result is in ACC in Q31, 32 bit format.RPT #10SFL ;Q42SACH speed_prd_max ;Q26SPM 0LT speed_prd_max ;Q26MPY speed_scaler ;Q0*Q26PAC ;Q26SACH speed_prd,5 ;Q15, speed_prd= speed_scaler*speed_prd_maxLT speed_prd ;Q15MPY rpm_max ;Q0PACSACH speed_rpm,1 ;Q0重要注意事项德州仪器(TI)及其附属公司(TI)有改变他们的产品或终止储备的权利,恕不另行通知,任何产品或服务,并建议客户对最新版本的相关信息进行核实,在下订单前,该信息被认为是最新和完整的。所有产品的销售都遵循在订单确认时提供的销售条款和条件,包括那些关于保修,专利侵权和赔偿责任的限制。TI 的产品权证,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论