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.

[参考译文] MCF8315A:MCF8315A

Guru**** 1791630 points
Other Parts Discussed in Thread: MCF8315A
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/motor-drivers-group/motor-drivers/f/motor-drivers-forum/1411822/mcf8315a-mcf8315a

器件型号:MCF8315A

工具与软件:

您好!
我正在处理一个项目、在同一 PCB 上安装了四个 MCF8315A 驱动器芯片、并由微控制器通过公共 I2C 总线进行控制。
在与驱动程序建立通信、更改 I2C_SLAVE_ADDR、SPEED_MODE 和 BUS_VOLT 设置并将它们保存至 EEPROM 时、我没有遇到问题。
我还读取所有其他驱动器寄存器-它们的内容对应于 TI 文档中的默认值。

然后、我尝试在其中一个 MCF8315A 驱动器上启动 MPET 过程。
根据文档、可以执行以下操作:
 1) 1)通过 ALGO_DEBUG2寄存器中的 MPET_CMD 位进行编程、前提是 MPET_R = 1b 或 MPET_L = 1b
 2)或通过 ALGO_DEBUG1寄存器的 OVERRIDE 和 DIGITAL_SPEED_CTRL 字段应用非零速度基准、
   前提是在 CLOSED_LOOP2中、MOTOR_RES = 0或 MOTOR_IND = 0、这是这些参数的默认值

我尝试了两种方法,但是 驱动器寄存器既没有视觉/声学反应、也没有任何变化 、但在第一种情况下 MPET_CMD 位迅速从"1"返回到"0"。

我不知道如何继续下去,因为我看不到这种行为的任何原因。
我能想象的唯一可能的原因是 SYS_INIT_DONE ALGO_STATUS 寄存器中的"0"位、根据文档"表示 固件仍在将 EEPROM 复制到影子存储器 "。
本文档中没有关于该位的进一步说明、当然、"将 EEPROM 复制到影子存储器"是完整的、因为我可以读取整个影子存储器。

请帮我弄清楚这可能是什么原因、以及我如何解决这一问题。
提前感谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    感谢您发布您的问题。  

    我们将在本周旅行,我们将在星期五之前回复  

    谢谢、此致  

    Venkatadri S.  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Krum:

    对于第一种情况, MPET 将非常快地运行,并以 ms 为单位。 该阶段驱动电流脉冲并测量 R、L。这不会运行电机、对于 KE 和速度环路、我们需要运行电机。

    我将计划共享为 MPET 配置的基准 JSON。

    请分享电机的额定电流、电压、最大速度(极数和 rpm)。

    您使用的是 EVM 还是定制电路板?

    谢谢、此致  

    Venkatadri S.  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Venkatadri。

    感谢您的答复。

    以下是我尝试启动 MPET 过程的详细信息。

    我使用的是一个自定义边框、有四个 MCF8315a 驱动器连接到公共 I2C 总线。

    I2C 总线主设备是一个小型 NXP 微控制器、可通过 RS232连接与我的 PC 进行通信。

    我可以在全部四个驱动器上读取/写入所有 MCF8315a 寄存器、并且我正在尝试在其中一个驱动器上运行 MPET、连接了一个小型电机。

    我正在使用我自己的配置/监控软件、其中所有 EEPROM 和 RAM 寄存器都被读取并显示在 FlexGrid 控件中、因此我可以一目了然地看到整个 MCF8315a 状态。

    遗憾的是、我目前还没有电机参数的相关数据、但主要问题是 MPET 根本无法启动、我不了解问题出在哪里。

    当我设置 ALGO_DEBUG2寄存器中的 MPET_R 和 MPET_L 位、然后设置 MPET_CMD 位时、除了 MPET_CMD 返回"0"之外、没有任何反应。 不会测量电机电阻和电感、这可以通过两个系统状态寄存器 MTR_PARAMS 和 ALGO_STUS_MPET 的状态来证明、其中相应的字段会保持其零值- MOTOR_R、MOTOR_L、MPET_STATUS_R、MPET_STATUS_L 都保持零。

    我至少应该预期 NO_MTR 或 MPET_IPD_FAULT 位会变为高电平、但 CONTROLLER_FAULT 状态寄存器也保持零。

    我还尝试通过在 I2C 和模拟 SPEED_MODE 中应用速度基准来启动 MPET、但结果相同。

    似乎 MPET_CMD 被忽略、但我看不出我在哪里犯了错误。

    你有什么建议,我能做什么,除了以上描述?

    此致、提前感谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Krum:

    感谢您提供详细信息。 我将研究该主题、并在明天回复您。

    谢谢、此致

    Venkatadri S.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Krum:

    您能否向我提供电机电流额定值、最大速度信息?

    对于 MPET、以下设置很重要

    1.最大速度——用于 KE 和机械速度测量

    2.额定电流、这样我们就可以将电流推入绕组来测量 R、L  

    3.还有其他设置、如-睡眠条件、速度引脚条件到睡眠/空闲状态  

    如果您提供电机的最大额定电流、我将共享基本 JSON、您可以使用它来测试 MPET 并使电机旋转

    谢谢、此致

    Venkatadri S.