三菱PLC控制三菱MR系列伺服传输精讲(含程序)

三菱MR-J2S及MR-J3系列伺服传输?

三菱伺服绝对位置传输功能

三菱mr-j2s及mr-j3系列伺服系统内置绝对位置数据传输协议,通过驱动器三个输入和三个输出数字量端口与Plc的三个输出三个输入口相配合,实现伺服电机绝对位置向三菱Plc的传输。 plc读取伺服电机的绝对位置数据后,可方便地构成一个绝对位置系统。这在许多情况下,非常有实际应用价值。在这里要说明的是,以上所述的绝对位置传输协议并非是三菱伺服系统本身也具有的通讯协议。前者是通过伺服驱动器和Plc的数字 i/o口实现的,后者是通过在rs422 通讯口实现的。

绝对位置读取

作为配合,三菱FX系列Plc也内置了绝对位置读取指令(dabs、指令),可方便地读取三菱伺服的绝对位置值。但是在三菱家族的a系列和q系列中并没有提供绝对位置读取指令,当然其它品牌的Plc更没有与之配合的绝对位置读取指令了。尽管从三菱的产品线来说,其q系列 Plc提供了qd75m位置模块,使用 b系列的伺服务驱动器,通过sscnet 总线来实现实时的绝对位置通讯。但是在一些低端应用场合及其它品牌Plc作为控制器的场合使用其伺服驱动器绝对位置传输协议来构建绝对位置系统还是非常有意义的。换言之说,有必要对于fx系列之外的 Plc ,开发并提供一种对三菱伺服绝对位置值读取的的方法。下面我们以三菱q系列Plc 为例就这一问题展开讨论。

三菱伺服绝对位置传输协议

1 、位置传输协议的信号定义

c0d0901agy1fhpld1i8j4j20go08076e

三菱MR-J2S及MR-J3系列伺服传输?

图 1 plc与伺服的信号连接图

图1是伺服驱动器与Plc的信号连接图。在本传输协议中,以Plc为主机,伺服驱动器为从机,既Plc发出传输指令后启动传输过程。在Plc输出的四个信号中,y0-y2 参与了数据传输, y3 并不参与传输。y3 用于对所构建的绝对位置系统设置原点。在 y0-y2 中, y0用于给出伺服开启信号, y1 用于对伺服发出abs传输模式指令,使伺服驱动器处于数据传输状态。这时伺服驱动器将改变某些输出端的定义(后述)。y2 用于发出数据传输的请求,与“传输数据准备完毕“信号配合,完成伺服驱动器发送数据和Plc接收数据的同步。 Plc的三个输入信号x10-x12接收来自伺服驱动器的输出信号,x10 、 xll 是两位位置数据信号( bit0 、 bitl ), x12为传输数据准备完毕信号,是一个同步信号。该三个信号原来在伺服驱动器内另有定义,伺服驱动器在接收 y1 给出的传输模式指令后自动切换成当前这种功能。

2 、位置传输协议数据交换说明

c0d0901agy1fhjp5x78j4j20bh07rab3

三菱MR-J2S及MR-J3系列伺服传输?

图 2 位置传输协议时序图

在图 2 中,Plc 给伺服驱动器同时给出伺服开启信号sv - on 和abs 传输模式信号abs 后,Plc和伺服驱动器将按照下列顺序进行进行数据传输:

(1)、伺月郧区动器接到absm 信号后,检测和计算绝对位置数据,切换 d01 、 zsp 、tlc 的功能为bit0 、bit1 、数据传输准备完毕(trd)功能;并将trd 置1 。

( 2 )、 Plc接到trd = 1 的信号后,将abs 请求信号 absr置1 ,送到伺服驱动器。

( 3)、伺服驱动器接到 absr=1 的信号后,在 bit0 、bit1 上输出二位数据,并将 trd 置 0,通知Plc,二位数据已输出。 Plc可以读数据了。

( 4 )、 Plc接到trd=0的信号后,读二位数据,然后将abs 请求信号absr置0,送至伺服驱动器。

( 5)、伺服驱动器接到abs的=0后,知道 Plc已将二位数据读取,于是又发出trd=1 信号,准备下一次传输。然后重复( 2 )一( 5 ) ,直至将全部32位位置数据和6位校验和数据传输完毕。

( 6 ) 、plc收到校验和数据后,将 abs、传输模式 absm 信号置0 。在上述传输过程中Plc和伺服驱动器的信号配合看似比较复杂,其实我们可简单地用图3表示。

c0d0901agy1fhjp5xorbnj20bf02s74k

三菱MR-J2S及MR-J3系列伺服传输?

图3 plc与伺服信号简化的逻辑关系

3、位置数据和校验和数据结构

在传输的38位数据中,前32位数据是伺服电机的绝对位置数据,后6位数据是校验和数据。在表示绝对位置的前32位数据中,按读入的顺序排列为最低二位到最高二位。在表示校验和的后6位数据中,其读入顺序也是从低二位到高二位。该6位校验数据是伺服驱动器根据其所传输的绝对位置值计算出的校验和。Plc对读入的32位位置数据进行校验和计算,计算的结果与读入的6位校验和数据相比较,若相等则说明传输正确;否则,则说明传输不正确

c0d0901agy1fhjp5y6h0ej20bj074ac2

三菱MR-J2S及MR-J3系列伺服传输?

每次传愉的数据为 2 " 前 16 个数据共 32 位为位!数据第 17 到第 19 三个数据共 6 位数据为校脸和数据传输数据的结构

为了实现校验,必须要了解该传输协议所规定的计算方法,也即伺服驱动器内部对位置数据的计算方法,这样才能在Plc中按照同样的方法来计算读入位置数据的校验和。只有按同样的方法计算得校验和,其比较才有意义。

例如,伺服驱动器传输的位置数据是013acf76h ,二进制是“ 00 , 00 , 00 , 01 , 00 , 11 , 10 , 10 , 11 , 00 , 11 , 11 , 01 , 11 , 01 , 10 ”。该协议规定校验和计算方法如下:将每2位数据相加得,11000b=18h 。所以该位置数据的校验和为18h 。伺服驱动器传输的数据32位位置数据013acf76h和校验和数据18h 。

软件编制

根据上述对绝对位置传输协议的分析,我们可以编制相应的程序。在编制该程序块时,为了使本程序对各种品牌Plc具有参考价值并可进行移植,我们采用了各类 Plc常用的基本指令和各类 Plc都支持的功能指令来编制,如图 5 所示。

c0d0901agy1fhjp5yuaq2j20dq0jo79h

三菱MR-J2S及MR-J3系列伺服传输?

1 、程序结构整个位置读取程序从功能上说大致由数据读取、校验和计算、错误判别处理三个部分组成,其中校验和计算可穿插在数据读取程序中。在数据读取程序段,根据传输协议规定的信号逻辑配合关系,读取全部32位位置数据和6位校验和数据。

在读取传输数据的同时,计算32位位置数据的校验和。

全部数据读取完成后,对读取的校验和数据与计算得到的校验和数据进行比较。若不相同则重新进行传输,重复次数大于3次,则停止传输,并给出报警信号。

在图5中,σm 、 σd 、 σc表示所有的标志位、数据寄存器、计数器,c0 、c1用于读取次数(即第几组 bit0 、 bit1 数据)计数。c0 用于对位置数据的数据读入次数判断,故预置值为17(比应读次数16大1 ); c1用于对全部数据读入次数判断,故预置值为19(共 19 次)。 c2 用于对传输出错重新进行传输的次数判断,故预置值为3。每次读入的2位数据在存储时要进行处理,以恢复其原来定义的数据结构。详细的处理指令见后。

2 、样板程序

上述程序是以三菱q系列 Plc 为例编制的传输程序,由于篇幅所限,我们没有以梯形图形式给出程序,而是以语句表形式列出。在上述程序中,m99是传输启动信号,m214是传输出错标志。 Y0一 y2 是 sv-on、 absm、 absr 信号, x10-x12 是 bit0 、 bit1 、 trd 信号。 D10 是计算校验和值,d12是绝对位置数据输出值。 m120 一 m157 是存储38位传输数据的中间标志位,其中 m 120-m151 用于位置数据,m152-m157用于校验和数据。

在该程序中,大多数指令为简单的基本指令,仅在读入数据处理时,才使用了 wand(逻辑与)、 sf(移位)、 add(加法)等功能指令。各类其它品牌的 p Ic 一般都支持这些指令,所以上述程序的可移植性是比较好的。对于上述程序,我们看重介绍每次读入的二位数据的处理方法。为了方便说明,相关程序的梯形图和说明列出如图 6 所示。

c0d0901agy1fhjp5zku3oj20bb06fjtc

三菱MR-J2S及MR-J3系列伺服传输?

应用案例典型的方式如图7所示。主流Plc一般都内置脉冲输出定位功能或者可配置带有脉冲输出的定位功能模块。为了使控制系统和机械运动位置之间建立同步,一般需要回原点。但是如果采用绝对位置系统,则仅需要在调试时确定一个原点,以后系统就无需回原点了。当系统开机时,plc执行该传输程序,通过伺服驱动器之间的传输信号线将伺服当前位置数据传输到plc中,然后plc将读到的当前机械位置写入定位控制系统的当前位置寄存器中。这样控制系统与机械系统之间就建立了同步关系。以后,机械系统的当前绝对位置由plc的位置控制系统根据发出的脉冲数来确定。

c0d0901agy1fhjp5zxbtxj20cr0823z2

微信长按或扫描下方二维码(或加公众号:gkplc888)并关注,每天推送经典文章,电话/微信咨询:18861496300

抢沙发

昵称*

邮箱*

网址