BiSS-C绝对式级联光栅编码器在工业机器人领域的应用 - 技术天地 - 产业资讯 -AGV产业联盟官方网站 -新战略机器人网-工业、服务、AGV机器人产业资讯传播者
您所在的位置:首页 >> 技术天地 >>正文
分享34K

BiSS-C绝对式级联光栅编码器在工业机器人领域的应用

发布时间: 42200.427071759 来源:新战略机器人网

核心提示: 目前,绝对式光栅编码器广泛应用于工业机器人领域。在市场需求的推动下,随着国内机器人控制技术的提高,工业机器人朝着高精度、高速度、高动态响应、多自由度方向和智能化发展。控制系统将更加依赖对整个运动系统运行状态的监控,需要多个光栅编码器来监测电机系统的运动数据。

1.   前言

目前,绝对式光栅编码器广泛应用于工业机器人领域。在市场需求的推动下,随着国内机器人控制技术的提高,工业机器人朝着高精度、高速度、高动态响应、多自由度方向和智能化发展。控制系统将更加依赖对整个运动系统运行状态的监控,需要多个光栅编码器来监测电机系统的运动数据。以往伺服系统与光栅编码器普遍采用的点对点通信,由于布线繁多、数据同步性差,逐渐成为机器人结构减重、控制优化的绕不开的问题。

我公司在设计机器人驱动控制系统时,受限于以下问题,只能允许一组光栅编码器接口:

      1、主控系统采用单控制器控制两个独立伺服电机,要求两个运动系统严格同步;

2、机器人内部布线空间十分有限,这种情况下仍需兼顾降低结构惯量、控制总体成本、提高抗干扰能力和方便安装维护等多个需求;

3、过长的走线增加线延时,不利于对机器人运动的控制。

针对以上问题,我公司向客户提供了BiSS-C绝对式光栅编码器级联解决方案,采用单一光栅编码器接口,对两个伺服系统光栅编码器数据高速同步读取,且布线简单方便,不增加线延时,成功解决了客户的难题,帮助客户走向成功。


2编码器总线的现状和发展趋势


随着现场总线技术发展,SOC片上系统逐渐普及,控制系统全数字化已成该领域的发展方向和研究热点。编码器也在向数字化发展,从而带来传绝对式编码器和相关通信总线的技术进步。由于编码器在运动控制领域应用最多,编码器总线要满足运动控制器对精度、分辨率、响应速度的要求,应包括如下几个特征:

1、 高速通信

2、 时延固定

3、 数据诊断

4、 双向通信

5、 低成本

高速通信有助于提高响应速度;编码器的精度和分辨率决定了控制系统的精度,时延是影响编码器精度的重要因素。运动控制器发出 “读指令”的时刻到编码器开始采样这段时间理想情况下应是是固定的。这个时延越小,编码器的编码值的物理意义越准确。从而有利于伺服控制器的算法调节。

试想利用CAN总线实现编码器通信的情况。首先,伺服控制器发出一个CAN通信帧;然后,编码器从CAN通信帧提取出“读指令”;最后,编码器进行数据采样,并回传数据。这样的采样滞后是多长时间,时长是固定的么?作为对比, BiSS在MA(MA是主机发出的时钟)的第一上升沿采样数据,理论上是没有延迟的。

可以说,通用现场总线目前还不适合高速编码器通信。专门用于高速数据通信的传感器总线大都是编码器厂商开发,有很强的封闭性。比较有代表性的总线通信协议有EnDat2.2、Hiperface、SSI、NRZ等等。BiSS是国际通用协议且协议开放。


3 BiSS通信协议的关键技术特征

1、 二线串行同步数据总线,采用RS422接口,波特率达到10Mbit/s;采用LVDS接口,波特率 > 10Mbit/s,这反映了BiSS有高的响应速度;

2、 通信效率高,每10uS传输超过64个比特,有效负载率大于80%。这反映出BiSS能承载高分辨率编码器数据;

3、线路时分复用,包括每个通信周期传输一帧的数据通信信道和传输一个帧位的寄存器通信信道。其中,寄存器通信和数据通信完全独立,互不干涉。对于不需要寄存器通信的应用场合,可以使用BiSS-C Unidirectional版本。这个版本的协议没有寄存器通信。

这反映了采用BiSS的控制系统有更好的稳定性和便利性。

4、多种安全机制确保数据可靠,BiSS的延迟补偿技术能补偿传输线带来的信号延迟,采用两组CRC生成多项式分别对传感器数据与寄存器数据进行校验。BiSS协议帧还包括一位报警位和一位错误位,CRC生成多项式可自定义。6位CRC能满足大多数应用,对于高安全场合(例如需要满足欧洲安全标准的场合),BiSS可以使用16位CRC。

这反映了BiSS传输更可靠,采用BiSS的控制系统更可靠。

5、数据同步,BiSS利用时钟信号同步传感器数据,传感器在第一个时钟脉冲到来时进行数据更新,每一帧到达后续电子设备的数据其传输延迟都是相同的,方便后续电子设备进行时延补偿,特别适合电机控制等对时间位置关系要求苛刻的应用场合。

这反映BiSS对于编码器精度的影响很小,有助于提高控制系统的高速特性。

6、组网能力,通过BiSS可以构成单总线传感器环网,一个通信周期采集全部传感数据,并且信号采集是同步的。

这反映BiSS的扩展性和前瞻性。

7、即插即用,BiSS支持从寄存器读出编码器参数,来配置数据通信。凡是支持BiSS标准EDS和Profile的编码器和控制系统都可以直接通信,无需修改任何程序。

这反映了BiSS高度的开放性和兼容性。


4 BiSS通信协议的基本内容

1、组网方式

图1是BiSS的基本组网方式,叫point-to-point方式。后续电子设备(图中为PLC),通过差分信号向传感器提供时钟,传感器同步地通过差分信号向后续电子设备发出传感数据。在BiSS协议中后续电子设备被称为Master,传感器被称为Slave。在point-to-point方式下,Master可以接收Slave的数据,同时与Slave进行双向数据通信。


图1 point-to-point组网

图2 是BiSS的多从机组网方式,叫Multi-slave Networking。Master在一个周期可以内完成与多个Slave之间的通信。所有的设备按照菊花链首尾连接,每个Slave有两个端口,分别用于接收前端信号和向后端发送信号。这是一种类似流水线的工作方式,每个Slave接收上一个Slave的数据放在自己的发送队列队尾,同时将自身的数据优先发出。整个通信由Master发出的时钟信号进行同步。Master通过MO信号将Actuator数据串行地移入到每个Slave,同时通过SL信号依次接收每个Slave的数据。

图2 Multi-slave Networking组网

2BiSS的帧结构和数据通信

图3 描绘了point-to-point组网时的BiSS通信帧。MA由Master发出用于驱动通信,SL是Slave发出的数据信号。完成1个BiSS通信帧表示Master收到1帧数据。

图3 point-to-point组网的BiSS帧结构

图4描绘了Multi-slave Networking组网的BiSS通信帧,对于每一个Slave而言,不但要发送自己的数据,而且要接收并转发前一个Slave发过来的数据。限于篇幅,不详述Multi-slave Networking组网时的数据通信,有兴趣的读者可以阅读BiSS-C-protocal C5版了解更多内容。

图4 Multi-slave Networking组网的BiSS帧结构

BiSS通信过程可以描述为如下几个状态的切换:IDLE(空闲),Start Frame(帧开始),Tranmission(发送),Timeout(超时)。

IDLE,空闲状态;BiSS通信空闲,MA,SL保存常高。

Start Frame,开始帧通信:MA发送时钟,在MA第一个上升沿,Slave锁存传感器状态。在MA第二个上升沿,编码器将SL拉低,用于应答Master的通信请求。

理想状态下,SL拉低与MA第二上升沿的时延很小,在实际系统中,由于长线延迟、信号整形、滤波以及信号传递通过多级门电路等因素的综合作用,SL相对MA信号存在一定的相移,造成SL拉低滞后MA第二上升沿一段时间,这个时间被称为line-delay线路延迟,如果SL信号采样电路不能修正这个延迟,那么总线的通信距离和通信速率都要降低,以保证SL信号被可靠地采样。BiSS规定每个通信帧发起时都要检测一次line-delay,并加以修正。从而确保BiSS通信波特率可以达到10Mbit/s。

在line-delay期间,MA持续输出脉冲。

Tranmission,(发送):当SL信号从常高拉低后维持一段时间。这段时间叫ACK,表示Slave响应了MA信号,正在进行数据准备。通常ACK维持0.1us到8us之间,这与Slave数据是否准备就绪有关,对于特定的Slave,其ACK的长度是基本上是固定的。ACK期间MA持续输出脉冲。当SL发送1个BIT的START位(常‘1’),表示Slave数据准备就绪。开始数据发送。

SL会顺次发1个BIT的CDS信号,1个单周期字段(SCD);BiSS规定单周期字段长度要大于4个BIT,小于64个BIT。对于特定应用,字段长度由Slave厂商规定(例如:禹衡公司多圈编码器的单周期位域包括16个BIT的多圈计数、17个BIT的单圈位置,2个BIT的错误告警和6个BIT的CRC校验)。这个期间,MA持续输出脉冲。

Timeout,(超时):当SCD发出完成后,SL维持0.5~40us的低电平,这个时间段被称为Timeout,对于特定的应用,Timeout由Slave厂商规定。MA在Timeout期间发送CDM信号,该信号一直维持到SL被拉高,SL被拉高后,本次通信完全结束。

3BiSS的寄存器通信

CDM和CDS是Master和Slave进行寄存器通信的信号。当Master与Slave进行个多个周期的数据通信后,Slave收到的Master发送的CDM序列和Master接收的CDS序列构成了BiSS寄存器通信帧,如下图5所示。

图5多个BiSS帧构成的寄存器通信序列

图6、图7描述了BiSS寄存器通信读写时序。通过时序图,可以了解BiSS可以与编码器进行双向数据交换。BiSS的寄存器通信有CRC校验,和读回校验(针对写时序)。

BiSS的寄存器通信占用带宽很少,对比EnData2.2和NRZ等有优势。这是由于伺服控制器初始化时读编码器参数情况多,正常工作时用户通常只关注错误报警信息,BiSS将错误报警信息放在实时性高的数据通信中,把耗时的寄存器通信用CDS和CDM实现,这种根据数据实时性设计不同的通信速率的方法,能够大幅节约通信带宽,有效降低通信时延。所以,使用BiSS编码器能带来更好的控制效果。关于BiSS寄存器通信的细节,限于篇幅不再说明,有兴趣的读者请参阅BiSS技术笔记BiSS_AN11_appnote_A2en

5 BiSS通信协议的实现方法

1、 硬件解码

对于采用硬件解码的用户,可以根据需要选择IC-HAUS提供的解码芯片,或者采用IC-HAUS提供的IP软核进行解码。也可以选择带有IP硬核的MCU。如果想利用IC-HAUS提供的IP软核实现数据通信和寄存器两种功能,需采用FPGA解码。FPGA资源数需大于1300个LE(将BiSS与MCU的接口设置为SPI时的编译的结果)或等效资源数。如果仅想实现数据通信,可以采用CPLD解码。CPLD资源数需大于96个LE(增加时钟分频电路和SPI接口后需150个以上的LE)或等效资源数。自行设计的难点是线延迟的处理,对于外引线很短或无外引线的应用,线延迟的变化很小,这时可以设计延迟固定的采样时钟,否则每个周期要进行一次线延迟补偿。


2、 软件解码

用户可以通过IO模拟的BiSS时序,但这种方法不推荐使用。推荐使用MCU的硬件外设解码,这样能够将BiSS通信速度设定很高。而且节约了外部逻辑电路的成本,对于很多应用,节约的成本十分可观,同时对于产品的系列化有优势。一个功能强大的通用串行解码模块,采用不同的解码程序应该能够支持多种串行通信协议、全双工、半双工等等。例如:对于BiSS可以利用SPI的SCK可以用来模拟MA,MISO可以模拟SL。这样用需考虑三个问题:

1、 MCU硬件模块的FIFO深度。有些MCU,外设的SPI寄存器长度是固定的,完成一帧BiSS通信需通信多次,中断多次。结果造成MA的波形不连续。这可能带来问题,造成通信出错。

2、 MCU硬件模块是否具备线延迟补偿的能力。具有线延迟补偿能力的外设,可以应对实际应用环境的变化带来的影响,可以是需求的变化,环境的变化,线路老化等等。具有线延迟的系统,其可靠性和适应性比没有线延迟补偿的系统高得多。

3、 CRC解码能力,CRC校验对MCU的处理能力提出了要求。

使用MCU进行解码要充分考察不同MCU外设的特点和处理能力,以及芯片厂家技术支持的力度,是否有成熟的设计等等。

3、 混合解码

如果既想利用硬件解码,又想降低成本。可以使用混合解码的方法。例如用FPGA或CPLD的部分资源完成数据通信,将CDM和CDS信号引出交给MCU处理。这种方案是一种过渡性质的方案,同时也是很实用的做法。需要注意的是,CDM必须在通信发起前准备好。随着MCU和FPGA的发展。这种方案会逐渐淘汰,以降低系统之间的耦合性。

4、 BiSS通信帧实例

图8给出了BiSS通信帧的实例,帮助读者直观地了解BiSS通信过程。

图8:BiSS通信帧实例

6     BiSS-C绝对式级联光栅编码器组网方式

1 BiSS-C绝对式级联光栅编码器,采用级联方式进行组网,称为Multi-slave NetworkingMaster(后续电子设备,主控模块)在一个周期可以内完成与多个Slave(光栅编码器)之间的通信。所有的设备按照菊花链首尾连接,每个Slave有两个端口,分别用于接收前端信号和向后端发送信号。这是一种类似流水线的工作方式,每个Slave接收上一个Slave的数据放在自己的发送队列队尾,同时将自身的数据优先发出。整个通信由Master发出的时钟信号进行同步。Master通过MO信号将Actuator数据串行地移入到每个Slave,同时通过SL信号依次接收每个Slave的数据。

图1 Multi-slave Networking组网

2描绘了Multi-slave Networking组网的BiSS通信帧,对于每一个Slave而言,不但要发送自己的数据,而且要接收并转发前一个Slave发过来的数据。以Slave3为例,在收到第二个MA上升沿后,其输出SLO3拉低,响应MA,此位应答(ACK)阶段;经过时间T(光栅编码器数据准备时间),SLO3拉高,表示输出数据(Start);一个MA周期后开始发送数据。在发送数据过程中,接收MA输出的数据(MAO)。SLO3先发自身采样到的数据,然后转发收到的MAO值,直到MA不再输出时钟。

图2 Multi-slave Networking组网的BiSS帧结构

7     BiSS-C光栅编码器2级级联结构

客户提出是应用场景是在不改变原来驱动控制系统硬件系统和架构前提下,新增一个或多个光栅编码器对系统参数进行采集。针对客户的需求,我公司提出了两个光栅编码器级联架构的解决方案。具体结构如图3所示。

3 BISS-C光栅编码器2级级联结构图

3Master是驱动控制系统,为光栅编码器1提供电源(VCCBAT)、控制时钟(MA)及接收光栅编码器1的数据(SLO),与点对点组网方式下接口完全一致。光栅编码器1为光栅编码器2提供电源(VCCBAT)、控制时钟(MA)及接收光栅编码器2的数据(SLO),可以认为光栅编码器2为光栅编码器1slave

从上述分析可以看出,除了最高一级的光栅编码器,其他光栅编码器不与master相连,且若新增一个光栅编码器级联,只需将其连接在最后一级光栅编码器的输出端,完全不改变其他光栅编码器的走线与连接,这就极大的方便了整个驱动系统的布局与走线。

8     通信过程

4展示了BiSS-C级联光栅编码器的通信过程。Master为伺服驱动控制器,芯片为Actel IGLOO系列AGL600V5256管脚。光栅编码器1为一33位多圈绝对式光栅编码器,光栅编码器217为单圈绝对式光栅编码器。Master每隔1ms读取一次数据。示波器抓取的光栅编码器静态数据如图4所示。黄色线为Master发出的控制时钟(MA),蓝色线为光栅编码器1数据输出端口输出时序(SLO1),红色线为光栅编码器2数据输出端口输出时序(SLO2)。从图4可以看出,在驱动器发出控制时钟后,光栅编码器1首先输出自身数据(33位数据,到a光标传输完成),接着传输接收到的光栅编码器2数据(17位,到b光标处传输完成),数据传输完成后一直拉低直到MA时钟取消。

9     结束语

BiSS-C协议通信速度快,通信效率高,支持线路时分复用,可全双工通讯,延时小且固定,极大简化了线延时补偿算法。BiSS-C采用多种CRC校验机制确保数据可靠,传感器数据与寄存器数据分开进行校验,使得BiSS-C传输更可靠,多达16CRC足以应付绝大多数场合。BiSS-C协议多种组网方式极大丰富了其应用领域,其BUS级联组网方式因以下优势得以在工业机器人领域广泛被应用:

1、减少了主控系统接口数量;

2、降低了主控系统数据解析复杂度;

3、简单方便的组网方式降低布线难度,优化结构;

4、固定的线延时方便了控制器补偿设计。

由于上述优势BiSS-C绝对式级联光栅编码器级联解决方案在工业机器人领域的应用会越来越广泛。

【免责声明】所刊原创内容之本文仅代表作者本人观点,与新战略机器人网无关。新战略机器人网站对文中陈述、观点判断保持中立。本网转载自其它媒体的信息,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

【版权声明】凡本网注明“来源:xzl机器人”的所有作品,著作权属于新战略机器人网站所有,未经本站之同意或授权,任何人不得以任何形式重制、转载、散布、引用、变更、播送或出版该内容之全部或局部,亦不得有其他任何违反本站著作权之行为。违反上述声明者,本网将追究其相关法律责任。转载、散布、引用须注明原文来源。

分享到:

关闭对联广告
顶部微信二维码微博二维码
底部
扫描微信二维码关注我为好友
扫描微博二维码关注我为好友