Bootstrap

多摩川编码器协议及单片机使用

参考:
https://blog.csdn.net/qq_28149763/article/details/132718177
https://mp.weixin.qq.com/s/H4XoR1LZSMH6AxsjZuOw6g

1、多摩川编码器协议

多摩川数据通讯是基于485 硬件接口标准NRZ 协议,通讯波特率为2.5Mbps 的串行通讯,采用差分两线制。CRC 循环冗余校验数据,避免数据出错导致异常的问题发生。除了位置读取以外,还提供位置清零功能。
协议采用应答方式,空闲时,主机发送端逻辑必须为高,发送和接收的时序图如下:
在这里插入图片描述

1.1 CF(control field)

在这里插入图片描述
在这里插入图片描述
sink code + Data ID code + parity合起来后的命令如下表所示:
在这里插入图片描述
以上是发送的Control Field(CF)。

编码器返回数据时,第一个字节为CF,第二个字节为状态域(SF),第三到第十字节为数据域(DF),第十一字节为CRC校验。

1.2 SF(status field)

在这里插入图片描述
在这里插入图片描述

1.3 DF(data field)

在这里插入图片描述

报警定义

在这里插入图片描述

1.4 CRC

在这里插入图片描述

uint8_t CRC8_Calc(uint8_t *data, uint8_t len)
{
    uint8_t crc_val;
    uint8_t i;

    crc_val = 0;
    while(len--)
    {
        crc_val ^= *data++;
        for(i = 0;i < 8;i++)
        {
            if(crc_val & 0x01)
                crc_val = (crc_val >> 1) ^ 0X80;
            else
                crc_val >>= 1;

        }
    }
    return crc_val;
}

1.5 单圈绝对位置的清除

单圈绝对角度清零请求CF=DataID8,即上位机发送0xC2,连续发送10 次,并正常接收到编码器的返回信息时,角度清零。

1.6 多圈圈数的清零

多圈圈数清零请求CF=DataIDC,即上位机发送0x62,连续发送10 次,并正常接收到编码器的返回信息时,多圈圈数清零。
注:对于多圈编码器,用户如果要把单圈角度和多圈圈数同时reset,必须连续发10 次0xC2,然后再连续发10 次0x62。

读写EEPROM帧格式

在这里插入图片描述
CF命令字说明
在这里插入图片描述
ADF地址字说明
在这里插入图片描述

EDF地址字说明
在这里插入图片描述
CRC校验字说明
CRC多项式:G(X) = X8+1
CRC校验范围:CRC校验字 前面的所有字节,包含CF命令字在内。

2、硬件电路

在这里插入图片描述

编码器示例

MJ40-H08-0017是一款高性能 17位 多摩川协议磁编码器,该产品主要服务于伺服驱动的控制系统,为系统提供准确的位置和速度控制单元所需的反馈信息和辅助信号。产品内部集成了一键对托校准算法,可以实现快速对托校准

参数概述
在这里插入图片描述
线缆连接
在这里插入图片描述
安装要求
在这里插入图片描述

编码器校正
在这里插入图片描述

;