This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
花一点时间让我的电机进入闭环模式 、我需要一些帮助! 电机是一个小型涡轮风扇、用于机器人地板真空。 它以24VDC 运行、转速约为3500 RPM。 惯性小的极轻塑料风扇转子。 在我的客户的应用中、他使用此涡轮机通过空气粒子传感器以每分钟16.67升的额定功率吸入空气。
我一直在使用廉价的通用中国 BLDC 驱动器进行流量测量、我可以在大约3500RPM 时产生16.67LPM 的气流、这会在24VDC 下产生大约800mA 的电流消耗。
我使用的是连接到 Arduino Uno 的 MIKROE"无刷3咔嗒"开发板(DigiKey 和 Mouser 携带)、用于 I2C 通信、我可以轻松读取和写入所有寄存器。
该板只是 DRV10983芯片的分线板。
我从 DRV10983数据表中的表8加载的默认寄存器值开始。 在进行一些实验之后、我分别为寄存器0x20和0x21找到了合适的值、线圈电阻和速度常数、如果我关闭闭环、电机可靠启动并缓慢运行(100 RPM?) 在开环模式下。 但是、当我打开闭环模式时、电机以开环方式旋转大约一秒钟、然后停止。 状态字节报告0x7F、转换为"电机锁定"。
我已经尝试了 Pot 速度调节和强制 I2S 控制。 两者的作用相同。
我已经尝试对许多寄存器进行值更改、尝试使其运行。 没有 Joy。
您能否为我提供一些建议、说明下一步的工作? 如果 我只能超过这个峰值、DRV10983是驱动我的小涡轮风扇的理想尺寸。 我缺少什么?
您好、Adam、
1) 1)请查看 drv10983调优指南 http://www.ti.com/lit/ug/slou395d/slou395d.pdf 以获取有关调优驱动程序的建议
2) 2)如果开环运行良好、我建议查看 寄存器 MotorKt1和 MotorKt2中驱动器测量的 BEMF 常数回读。 您应该禁用闭环、缓慢增大开环到已粘接阈值、直到 BEMF 常数回读与电机的实际 kt 基本相同、然后启用闭环并查看电机是否旋转。
请告诉我这是否有帮助。
您好、Sanmesh、
嗯、我尝试了您的建议、但运气不好。
首先是一些数据:
我将线圈电阻(寄存器0x20)设置为0x39 (测量的线圈电阻为0.65欧姆)。
我将 KT 值(寄存器0x21)设置为0x41。
这些值为我提供了稳定的开环启动和运行。
测得的运行速度开环(寄存器0x11和0x12)为132。
我针对寄存器0x26浏览了全范围的开闭环阈值、将对齐时间固定为出厂默认值1.3秒。
然后、我针对每个阈值设置读取开环模式下测得的 KT_ACTUAL 值。
结果如下所示
寄存器0x26 = 0x26 0.8Hz KT 实际值为0x4C
寄存器0x26 = 0x3A 5.6Hz KT 实际值为0x4B
寄存器0x26 = 0x83 12Hz KT 实际值为0x51
寄存器0x26= 0x7A 12.8Hz KT 实际值为0x4C (表8中的出厂默认值)
寄存器0x26 = 0x8A 25.6Hz KT 实际值为4E
输入每个值并记录 Kt 实际值后、我进入闭环模式、查看电机是否会进入闭环模式。
进入闭环模式时没有成功的值。
我将寄存器0x20中的电机电阻设置从0x39 (0.7欧姆)增加到0x49 (1.39欧姆)。
电机仍会以开环方式启动、但 KT 实际变为0x1E6E。
那么、我从这里到哪里呢?
再次感谢您的帮助!
Adam Reed
Dendera Partners LLC
我认为您没有尝试足够高的开环到闭环阈值。
我想从您输入的电机支架中、支架为16mv/Hz、如果我错了、请纠正我的错误。 如果是这种情况、则表明开环到闭环阈值可能需要80mV/Hz 或更大。
为了节省时间、只需禁用闭环并增加开环到闭环阈值以提高开环速度、而不是检查闭环在每个开环速度下是否成功。 继续执行此操作、直到电机回读接近您的预期值。 然后、当电机回读接近电机回位的预期值时、启用闭环。
请尝试此操作、并告诉我您找到的内容
今天下午、我重复增加了中的寄存器0x26开闭阈值(您建议采用开环模式)、以增加开环 RPM、使其不再在开环中运行、然后返回到最后一个良好的开环运行点。
我还发现我需要将开环电流增加到1.6安培。 我确实得到了电机速度来增加一些速度。
然后我闭合了控制环路。 电机现在逐渐上升、然后非常快地加速约一秒钟、然后停止。
我已经尝试更改闭环加速(寄存器0x29)并尝试了较慢和较快的斜升。
我尝试了其他一些东西、虽然这些东西可能是有意义的、但没有效果。
因此、我现在已经回到了您的能力范围内、了解如何继续下一步的工作。
谢谢你
Adam
请、我仍然需要一个问题的答案。 我一直在使用尝试启动但失败的电机、如上一条消息中所述。
我可以采取什么措施来纠正这种情况? 我可以使用看似任何现成的 BLDC 驱动器板来运行此电机、但我的客户端需要主 CPU 板上的驱动器部件、而不是安装在上面。
我仍在使用 Arduino 手动读取和写入寄存器、因为我订购了 DRV10983 EVM、但它无法正常工作。
因此、这已经成为一项艰巨的任务、应该是我心目中的一项简单任务、我感到非常沮丧、因为我处于有限状态、而要让 TI 驱动器与我的风扇电机一起工作、这应该是一项简单的挑战、 TI 开发工具无法正常工作!
期待您的回应。
Adam Reed
Dendera Partners LLC
俄勒冈州阿什兰
您好、Adam、
我了解您尝试使电机旋转的紧迫性。 请耐心地完成此调试过程。
1) 1)您会说"我 今天下午在(您建议的开环模式)中重复增加寄存器0x26开闭阈值、以将开环 RPM 增加到不会再在开环中运行的位置、然后再回到最后一个良好的开环运行点。" 我认为您不应将开环到闭环阈值增加到它将不再在开环中运行的程度。 相反、您应该将开环到闭环阈值增加到"当电机 kt 回读接近您期望的电机 kt 时"的点。 如果对此有任何疑问、请告诉我、如果您已经这样做、请告诉我。
2) 2) DRV10983 EVM 有什么问题? 如果我们可以使其正常工作、它可能会加速您的调试
您好、Sanmesh、
实际上我注意的是 KT 值(grin)。 设置 Kt 为0x41;读取现在为0x43。
我在上一份说明中没有特别说明我所做/观察到的事情。 希望以下内容更好:
基本而言、我的过程是缓慢增大交叉点、直到开环 RPM 明显增大...这种情况仅发生在距离较小的情况下、而电机不会再次启动。
此阶段的行为非常有趣;控制器几乎就像存在一个启动和切断电源的电流限制一样工作、而不是允许电机继续加速。 "似乎"进入闭环运行、开始运转良好、然后停止。 顺便说一下、我的电源是24V 4.5A 开关、因此我想这应该不是问题。
EVM 的 USB2ANY 开箱即用。 Windows 报告安装了一个很棒的驱动程序,然后屏幕上出现一则消息,邀请我拔下 USB 电缆,按重置按钮,然后重新连接。 它确实完成了下载过程、Win 7现在看到 USBANY。 当我启动 EVM GUI 时、我看到器件选择下拉、然后下一个显示屏显示"接口未初始化"、一个消息框显示"接口初始化期间发生错误。 重新连接硬件、然后重试。" 当我断开 USB 电缆并重新连接时、Windows 重新安装了驱动程序并报告"驱动程序已成功安装"。 然后出现一个新的错误消息框:"DRV10983 USB2ANY.ivclass:ReadRegister.vi "出于好奇、我点击了"Continue"按钮、并得到一个新的错误框:"Notifier Timed Out"
很抱歉、我的系统现在崩溃了、我必须重新启动所有程序。 当我重新启动时、我重新加载了 EVM GUI、只能获得一个窗口、在这个窗口中、用户可以在演示模式和活动模式之间进行选择、并且上面的错误框显示"接口未初始化"。 它卡在该点。 我可以在演示模式下运行、但这当然不会给我带来任何影响。
因此,主席先生,回到你的法庭。
让我明天上午回到您的身边
我想我应该告诉大家、我开了一个关于 USB2ANY 问题的 TT、如果您想对此问题拥有所有权、我们可能应该关闭它。
案例号为 CS0043574。 谢谢!
您好、Sanmesh、
您能告诉我 EV 套件随附的 USB2ANY 是否使用 DRV10983专用代码进行编程吗?
如果不是、如果通用 USB2ANY 盒可以正常工作、我可以订购一个新的盒子、并在2天内在这里提供。 Mouser 的售价仅为10美元左右。
USB2ANY 不是特定于任何器件的。 对于电机驱动器、它将与 DRV10983evm、DRV10987evm、DRV10975evm 和 DRV10983-Q1 EVM 的 GUI 配合使用。
另外、请给我更多时间回答您的其他问题。
我错了、USB2ANY 更像是100.00美元。 对于一个430的小板来说、这是一笔非常大的钱!
因此、我想我们需要使这个正常工作...
我今天上午阅读了一个论坛主题、其中建议将 Windows 权限归咎于此问题。
我进入了安装文件夹、在安全性中、让"每个人"都能读写。
出于某种原因、当我右键单击该文件夹并选择_properties"时、它仍然会将该文件夹显示为"只读"、USB2ANY 仍会显示相同的操作错误消息。
1)关于如何使 USB2ANY 正常工作、对于 GUI、我将执行以下操作:
a)请遵循 DRV10983EVM 和 DRV10975EVM 用户指南( www.ti.com/.../slou393e.pdf )的"开箱即用快速入门指南"部分
b)确保 usb2any 连接到 EVM、并使用电压电源为 EVM 供电。
c)尝试在管理模式下运行 GUI。
d)确保选择 DRV10983作为器件、并且使用的是 DRV10983 EVM 而不是其他 EVM。
e)通过查看5V 和3.3V 是否正确输出、确保 dRV10983 EVM 正常工作
1)确保相电阻准确
a)您说"测得的线圈电阻为0.65欧姆"。 确保这是相位到中心抽头电阻。 如果是、则正确地将寄存器 motorParam1 0x20 Rm[6:0]的相应值设置为0x39。 有关 如何测量电阻的信息、请参阅 DRV10983调优指南 www.ti.com/.../slou395d.pdf
2) 2)确保 Kt 准确
a)您将 Kt (寄存器0x21)设置为0x41。 这不在"表3中。 BEMF 常数查找表"、但我认为它大约为110mV/Hz、所以我之前关于它较低的说法是不准确的。 您是说将 kt 设置为110mV/Hz 吗? 如果是、请使用表中的十六进制值"3F"
b)您如何测量 Kt? 我将使用 DRV10983调优指南 http://www.ti.com/lit/ug/slou395d/slou395d.pdf 中的方法
a)当您说"测量的 KT_actual"时、我感到困惑、因为数据包回读编码在2个寄存器中:MotorKT1和 MotorKt2。
b) KT 读回相位= 2* KTC (V/Hz)= 2*{MotorKt1:MotorKt2}/ 2 /1090
4) 4)当您说"基本而言、我的过程是缓慢增大交叉点、直到开环 RPM 明显增加...这仅发生在电机无法再次启动的狭窄范围内。"
a)开环 rpm 增大? 您能否澄清一下这种情况发生的时间、以及在闭环被禁用时、rpm 为何与设定的开环至闭环阈值不匹配的更多原因。
5) 5)我知道正在发生锁、但触发了什么锁? 检查 故障代码寄存器。
6) 6)假设问题在闭环中:
a)闭环的最重要参数如下、因此请确保输入正确
i) KT
II)客户经理
7) 7)另请将这些设置用作模板。 关键是缓慢加速、适当的死区时间设置、启用适当的锁定、并使 PWM 频率加倍。 您需要包括正确的 kt 和 rm 值。
器件、地址、值
DRV10983 0x20 0x80
DRV10983 0x21 0x0
DRV10983 0x22 0x0
DRV10983 0x23 0x0
DRV10983 0x24 0xC0
DRV10983 0x25 0xFD
DRV10983 0x26 0x91
DRV10983 0x27 0xB0
DRV10983 0x28 0xE
DRV10983 0x29 0xF9
DRV10983 0x2A 0x8
DRV10983 0x2B 0x0
您好、Sanmesh、
当然、我一直遵循 TI 设置说明。 我已经来过这里一段时间了……“只有25年左右。 我读了方向。
不过,我要说的是,有关这些登记册的很多细节,在数据表中都有很好的解释。
只有在你的协助下,我才会感到困惑。 数据表中根本没有足够的信息、也没有足够清楚地说明什么内容、我认为平均 EE 是尝试使用此材料的主要人员、如果没有帮助、就可以成功。 我开始使用已发布的"默认"或"标准"寄存器值、当它不起作用时、继续使用我在第三方电路板供应商的数据表中发现的第二组、在 所有情况下都同样不成功。 只有当我插入最后一条消息中提供的寄存器值时、您才会看到我自己的线圈电阻和 KT 值、我今天才让电机运行。
我现在已经根据您的建议优化了 KT 值、KT_set 和 KT_measure 之间的匹配非常好(是的、我这次正确地进行了数学计算)、 并且我已经通过通过故障寄存器 KT 标志进行了验证、 系统同意匹配接近可以接受的程度。
我能够以高达约450mA 的平均电流可靠运行。 在上面、电路板会关断。 我有一个非常大的电解电容器、8200uF@50VDC、非常靠近驱动器板连接。 似乎可以很好地缓冲电流尖峰;如果没有该电容器、我只能以明显较低的电流电平运行电机。 在450mA 的平均电流水平下、峰值电流约为1.4A。 因此、我似乎以 不超过其额定峰值电流额定值一半的速度运行 DRV 芯片。 DRV 芯片的触控温度较高、但不会发热。
我应该注意的是、我使用通用的中国 BLDC 驱动器板驱动器进行的实验表明、我需要能够以大约700-800mA 的平均电流运行电机。 以获得我需要的流速。 对于中国电路板、我在当前驱动电平下使用与 DRV 芯片相同的电源时没有遇到任何问题。
接下来的一周要采取的措施是了解如何缩短启动时间、以及如何让电路板提供足够的电流、使我的涡轮机产生必要的流速。
感谢您的帮助。 现在、让我们一起工作、以使该系统实现全面的性能!
我将单独向您介绍有关 EVM 系统的评论。
您好、Sanmesh。
昨天很清楚 EVM 系统不能正常工作。 我在 DRV 电路板上的所有电压都是正确的、但即使 USB2ANY Explorer 日志显示盒子连接到 Windows、我的示波器在 I2C 线路上也没有显示任何活动。
在给定的源代码和适当的硬件下、我有可能重新刷写 MSP430芯片。 但是、昨天一天结束时、我设法在 DRV 驱动器板上降低了我的高压电源引线、并损坏了芯片。
我不想再浪费100美元购买新的 EVM、而是坚持使用我的主开发平台、即 Arduino 板、通过 I2C 加载 DRV 板。 它现在已经发展得很好、我非常擅长更改寄存器值。
您好、Sanmesh、
我非常高兴地报告、今天我成功地让电机/驱动器以全速运行。
我 想增加寄存器0x22中的值、即 LRTIME 延迟。
您建议的值为0x00;我尝试 了 DRV10983数据表中建议的值0x2A。
这使电机加速至其最高转速。
然后、我逐渐将寄存器0x29 (闭环加速)的值从您建议的0xF9 (0.045 VCC/秒)增加到电机在闭环加速中停止。
该值为0xA9 (48 VCC/秒)。 我返回到最后一个正常设置、即0xB9 (数据表中寄存器0x29的建议值)。 闭环加速到全速现在为一秒或更短。
我还有最后一个挑战。 当前、电机从死区停止状态切换到闭环模式需要大约8秒的时间。 我尝试通过将开环加速率(寄存器0x25)从建议的0.22Hz/秒二阶和4.5Hz/秒一阶0rder 值增加来缩短此间隔、并发现在29Hz 二阶和38Hz 一阶频率下略有改善。 走得更快似乎没有进一步的优势。 然后、我决定改变寄存器0x26的低3位、对齐时间、同时保持开环到闭环阈值恒定。 我能够从大约10秒下降到8秒。
您是否可以建议进一步运动以减少此启动时间滞后?
再次感谢、您为我提供了极大的帮助!
Adam Reed Dedera Partners LLC
您好、Adam、
听说您取得了很多进展、这一点很棒。
有关减少启动时间滞后的信息、请参阅数据表中的第8.4.3.6节"启动时序"。 控制这种情况的主要变量是:
1)更低的对齐时间、AlignTime[2:0]。 另一种替代方法是使用对齐、而不是使用 IPD (8.4.3.5.2初始位置检测(IPD))、这样可以节省大量的对齐时间。
2) 开环到闭环阈值下限、 Op2ClsThr[4:0](这是因为开环通常比闭环花费更长的时间、因此您希望尽快进入闭环)
3)更高一阶和二阶加速 STAccel[2:0]、 STAccel2[2:0]
4) 更高的开环电流 OpenLCurr[1:0]使您能够更快地旋转电机
5) 5)增加 ClsLpAccel[2:0]
您好、Sanmesh、
现在、我让电机快速启动、一切看起来都很好。
我有最后一个问题要问您、然后我想我们可以关闭这个 TT。
您能解释 FG 引脚的数学原理吗?
我想它需要一个上拉电阻器、尽管我在 DRV10983数据表中找不到这样的基准。
我无法直接测量电机转速、涡轮机隐藏在 塑料外壳内。
FG 引脚输出的方波为545Hz。
如果我把它乘以60得到 rpm、我计算出32、700。 这是否应该除以极数、也许吧?
4、000 RPM 似乎是正确的。 这将指示8极电机。
再次感谢您的宝贵帮助、我很冷、没有您就没有这么做!
谢谢
Adam Reed、Dedera Partners LLC
RPM = FG_Freq_Hz*60/#PolePairs。
如果您想找到极对的数量、并且数据表中没有该数量、请参阅 调优指南中的第2.1.2节"极对数量"。 我知道您说涡轮机被塑料外壳隐藏、因此您可能无法这样做。