1概述
EnDat编码器是海德汉公司(Heidenhain)开发的一种高精度位置传感器,主要用于测量和控制系统中的位置。EnDat编码器采用数字信号传输技术,能够实现高精度、高分辨率的位置测量,广泛应用于机床、机器人、自动化生产线等领域。
EnDat 2.2接口编码器是数字双向接口。它既能传输增量编码器和绝对编码器的位置值,也能传输或更新编码器中存储的信息,或保存新的信息。由于采用了串行传输方式,因此只需要四条信号线。数据与来自后续电子设备的时钟信号同步传输。传输类型(位置值、参数、诊断等)由后续电子设备发送到编码器的模式命令选择。EnDat 2.2接口是一种纯串行接口,也适用于安全相关应用。
2时钟和频率
时钟脉冲(clock)由后续电子器件传输以同步数据传输。当不发送时,时钟信号处于高电平。
没有传播延迟补偿的情况下,时钟频率(取决于电缆长度)在100kHz和2MHz之间是可变的。通过后续电子设备进行传播延迟补偿,可以在电缆长度最大可达100米(
)的情况下实现高达16 MHz的时钟频率。
3传输类型
传输的信息类型由模式命令选择。模式命令定义传输信息的内容。每个模式命令由三个位组成。为了确保可靠的传输,每个比特都是冗余传输的(反向或冗余)。如果编码器检测到不正确的传输模式,则会发送错误消息。EnDat 2.2接口还可以将附加信息中的参数值与位置值一起传输。这使得当前位置值始终可用于控制回路,即使在参数请求期间也是如此。
模式命令
4位置值
每次数据传输同步发送一个数据包。传输周期从第一个下降时钟沿开始。测量数据将被保存并且计算位置值。
在两个时钟脉冲(2T)之后,后续电子设备发送模式命令,编码器发送位置值(有/没有附加信息)。编码器从LSB开始传输绝对位置值。其长度因使用的编码器而异。传输位置值所需的时钟脉冲的数量保存在编码器制造商的参数中。
位置值的数据传输完成后是CRC校验数据。EnDat 2.2中紧随其后的是附加信息1和2,每个信息也包含CRC。附加信息的内容由存储器区域的选择来确定,并且在附加信息的下一采样周期中被发送。然后在每次采样时发送该信息,直到选择新的存储区域改变内容为止。
无附加信息的位置值数据包
有附加信息的位置值数据包
5瑞萨EnDat 2.2测试例程
5.1 测试环境
5.2 外设模块
引脚配置
该软件可以支持两个Endat编码器同时通讯,对应的引脚配置如下:
如果自己设计的电路可以在FSP中修改引脚。
5.3 软件功能
EnDat驱动程序的功能如下所示。
初始设置
噪声滤波器的设置
编码器初始化(不支持带电池单元的编码器)
传播延迟补偿的设置
传输以下请求信息
Mode命令
MRS代码
参数
编码器数据的接收
位置值
参数
附加信息
5.4 函数
函数列表如下:
库函数
不论是safety版的程序还是非safety版的程序使用的时候都要把“EC-Lib”拷贝到工程中。
EC-Lib是一个软件库,用于配置、激活和关闭安装在RZ/T2M上的编码器接口。EC-Lib在软件中作用如下图所示:
全部0条评论
快来发表一下你的评论吧 !