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.

[参考译文] CCS/TIDEP0057:编码器问题

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/589967/ccs-tidep0057-encoder-question

器件型号:TIDEP0057
主题中讨论的其他器件: TIDEP0022

工具/软件:Code Composer Studio

您好:

在 TIDEP0057设计文件中、未指示用于测试的编码器的特定参数、也未在设计代码中说明。 我想问我是否按照该程序进行测试、需要购买哪种类型的编码器? 例如编码器的分辨率和其他信息。 本文档介绍了 BiSS 支持 SSI、这种支持仅是硬件支持、还是 SSI 信号编码器也可以读取数据?

谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    已通知工业团队。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好
    此 TI 设计主要介绍硬件接口。 www.ti.com/.../PRU-ICSS-INDUSTRIAL-SW 上提供了支持 EnDat 2.2主器件进行产品开发的软件。 遗憾的是、BISS C 协议软件支持尚不可用。
    David

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

    您好:
    我不太理解你。 本文档提供了对 BiSS、ENDAT2.2和 HIPERFACE DSL 协议的硬件支持。 但也提供基于 AM437X IDK 的软件代码支持、此代码随 PRU 固件一起运行。 文档中明确说明了这一点、文档中还提供了硬件和软件测试的结果。 因此、您可以说、该设计仅支持硬件、我不太理解。 您能稍微解释一下吗?

    谢谢!

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

    你(们)好

    此 TI 设计具有示例软件、可提供  物理接口操作的简单独立演示。 此软件不用作电机控制产品设计的基础。   

    此 TI 参考设计与 TIDEP0022 一起展示了如何对 ICSS-PRU 进行编程以支持 BiSS C 主协议。  TI 设计文档提供  了本示例中使用的硬件(AM437x 工业开发套件(IDK))和软件的摘要。 本文档末尾提供了指向所用软件的链接。  TI 设计 页面上还有一个指向软件的链接。   这些 TI 参考设计作为   PRU-ICSS 的简单独立图示提供、用作 BiSS C 实施的参考、该实施是产品开发或 与工业 SDK 示例配合使用的基础。

     为产品开发提供的 TI 软件是 http://www.ti.com/tool/PRU-ICSS-INDUSTRIAL-SW ,可从 http://www.ti.com/tool/PRU-ICSS-INDUSTRIAL-SW 获取 。  该软件包中包含  PRU-ICSS-INDUSTRIAL-DRIVES:适用于工业驱动器的 PRU-ICSS 软件包含对 EnDat2.2、Tamagawa、SDDF 和电机控制的支持。

    该封装支持 EnDat 2.2标准以及使用 EnDat 的电机控制示例。   BiSS C 和 Hyperface DSL 尚不可用。  

    EnDat 2.2示例和电机驱动 器是为 ROQ437开发的。  R+构建软件 的目的是使其能够配置为支持  具有不同分辨率    的各种编码器(有一个用于调节分辨率的约束)。这在 API 指南的"endat_get_2_2_angle"中进行了介绍。

    当 PRU-ICSS-INDUSTRIAL-DRIVES 安装在默认位置时-  C:\ti\PRU-ICSS-INDUSTRIAL_Drives _01.00.00.00.00.00.00.00.00.00.00.\interfaces\endat_master\doc 包含 API 指南和 EnDat 设计指南。

    在 BiSS 示例软件上有许多 e2e 帖子。  如果您只想运行 TI 参考设计 BiSS 示例代码、 有几个 e2es 将会有所帮助。 但是、需要注意的是、SDK 中未维护此示例代码、需要特定的较旧版本 的 CCS、编译 器和工具。

    https://e2e.ti.com/support/arm/sitara_arm/f/791/t/513493

    https://e2e.ti.com/support/arm/sitara_arm/f/791/t/419199

    https://e2e.ti.com/support/arm/sitara_arm/f/791/p/555938/2042854

    David

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好:
    感谢你的帮助。 我只想在这个设计文件中运行代码。 尝试读取 BiSS、ENDAT、HIPERFACE DSL 协议编码器信息。 只需运行各种协议、电机就不会实际运行。 目前、我已经能够将代码运行到 IDK、只需连接编码器即可进行测试。 因此、对于编码器选择而言、这是初始问题。 我想问我是否按照该程序进行测试、需要购买哪种类型的编码器? 例如编码器的分辨率和其他信息。 本文档介绍了 BiSS 支持 SSI、这种支持仅是硬件支持、还是 SSI 信号编码器也可以读取数据?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我们在 TIDEP0057中使用了以下编码器:

    ENDAT 2.2:ROQ1037 (http://www.ti.com/tool/TIDEP0050)

    BiSS:WDGF58M (http://www.ti.com/tool/tidep0022)

    HIPERFACE DSL:EKM36-0KF0A018A (http://www.ti.com/tool/tidep0035)

     

      我们尚未研究 SSI 协议。

    但是、PRU-ICSS 具有非常高的可编程性、具有许多专门适用于此类处理的选项。

    David

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好:
       首先、感谢您的帮助、解决了我对编码器的问题。
       TIDEP0057中提供的 Tidcbv9项目也存在问题。 我已经读取了程序代码、但我不理解其中的一些代码。 例如、使用 PRU 固件支持以下 BiSS 编码器协议时:
    //加载固件
    PRUICSS_setPRUBuffer (pruIcss0Handle、0、(UINT32*) BiSSFirmware、sizeof (BiSSFirmware));

    //配置共享存储器接口
    //清除 ICSS0 PRU0数据 RAM
    memset ((void *)(((PRUICSS_HwAttrs *)(pruIcss0Handle->hwAttrs))->baseAddr + 0x0000)、0、(4*1024));


    // BiSS 编码器配置:clock_speed=1;crc_Bits=8、encoder_bits=12
    HW_WR_REG32 ((((PRUICSS_HwAttrs *)(pruIcss0Handle->hwAttrs))->baseAddr + 0x0000、0x0001080C);

    //运行固件
    PRUICSS_pruExecProgram (pruIcss0Handle、0);

    TaskOSAL_SLEEP (25);
    //将已知图形写入位置寄存器
    HW_WR_REG32 ((((PRUICSS_HwAttrs *)(pruIcss0Handle->hwAttrs))->baseAddr + 0x8、0xFFFFFFFF);
    TaskOSAL_SLEEP (100);
    //检查是否检测到 BiSS 编码器(PRU 固件已覆盖图形)
    BISS_GANE = HW_RD_REG32 ((((PRUICSS_HwAttrs *)(pruIcss0Handle->hwAttrs))->baseAddr + 0x8);
    if (biss_angle = 0xFFFFFFFF)
    返回;

    例如、
    // BiSS 编码器配置:clock_speed=1;crc_Bits=8、encoder_bits=12
    HW_WR_REG32 ((((PRUICSS_HwAttrs *)(pruIcss0Handle->hwAttrs))->baseAddr + 0x0000、0x0001080C);
    只能看到程序的顶部,写入0x0001080C 的地址应为时钟、CRC 位和编码器位。 但是、仅显示时钟 Clock_speed = 1的注释、我想问、这代表了多少频率? 我检查了很多库文件、但没有找到此参数的说明。 如果要修改、应该怎么办?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    固件架构在 《BiSS-C 接口主设计指南(修订版 A) 》文档中进行了介绍   ,该文档包含在 www.ti.com/.../tidep0022上的《具有集成 BiSS C 主接口的 ARM MPU 参考设计》中。 您可以在其中找到有关实现的说明以及流程图和表格。

    此设计使用 AM437x PRU 的硬件特性、  《AM437x Sitara 处理器技术参考手册》第30节对此进行了详细介绍、请参阅 http://www.ti.com/product/AM4379/technicaldocuments 页面

     

    David