PDO

PDO(Process Data Object)指过程数据对象,用于实时数据传输。

包括:

  • RPDO(Receive PDO):主站发送给从站的指令。

  • TPDO(Transmit PDO):从站返回给主站的状态信息。

注意: 在通信状态处于 SafeOP 和 OP 状态下时,对 RPDO 映射的对象发送 SDO 写请求会返回 SDO 中止码(06010006h)。

PDO映射

配置对象字典和过程数据的映射关系。

可配置 PDO 映射的对象如下:

  • 对象 1600h1620h1621h1622h 为 RPDO
  • 对象 1A00h1A20h1A21h1A22h 为 TPDO

TPDO 和 RPDO 映射的数据长度最长为 40 字节,每个映射配置对象最多映射 10 个 PDO 对象。

每个 PDO 映射配置对象的子索引 00h 的值为该 PDO 映射配置对象实际生效的对象数。当子索引 00h 的值为 0 时,表示这个 PDO 映射配置失效,此时子索引 01h~0Ah 可修改。

以对象 1600h 出厂配置为例:

子索引号 长度 对象
00h 04h - -
01h 6040 0010h 2 6040:00h
02h 6060 0008h 1 6060:00h
03h 607A 0020h 4 607A:00h
04h 60B8 0010h 2 60B8:00h

表示 1600h 一共配置了 4 个 PDO 映射对象,总长度 9 字节。

每个 PDO 映射配置对象的子索引 01h~0Ah 的值表示映射对象的索引、子索引、映射长度和 PDO 数据中的顺序。

以 1600:01h,默认值 6040 0010h 为例, PDO 映射对象的定义说明如下:

  1. PDO 映射对象

    PDO 映射要求配置的索引号和子索引号对应的对象存在且可用于对应的 PDO 映射。

  2. 索引号

  3. 子索引号

    对于无子索引的对象子索引号选择 0。

  4. 映射长度

    映射长度单位为 bit,要求为 8 的倍数且不大于映射对象的数据长度。

因此 1600:01h 映射了对象 6040:00h,映射长度为 16 比特(2 字节)。

分配对象

配置当前驱动器在 PDO 数据收发时,PDO 映射关系实际参照的 PDO 映射配置对象。

驱动器支持 1 个 RPDO 分配和 1 个 TPDO 分配,如下表所示:

对象索引 子索引 类型 取值范围
1C12h 01h RPDO分配对象 1600h1620h1621h1622h
1C13h 01h TPDO分配对象 1A00h1A20h1A21h1A22h

映射配置

驱动器处于 PreOP 状态时,可修改 PDO 映射配置对象(1600h1620h1621h1622h1A00h1A20h1A21h1A22h )和 PDO 分配对象(1C12h1C13h)。

PDO 映射配置对象的配置流程:

  • 设置配置对象的子索引 00h 的值为 0。

  • 参考 PDO 映射设置映射对象子索引 01~0Ah 的值。

  • 设置配置对象的子索引 00h 的值为所需映射的数量。

PDO分配对象(1C12h,1C13h)的配置流程:

  • 设置分配对象的子索引 00h 的值为 0。

  • 设置子索引 01h 为所需的分配对象。

  • 设置分配对象的子索引 00h 的值为 1。

维宏股份

维宏云