本文以汇川H5U为例进行说明轴控的单位换算,经过改进后,H5U的设置界面更加合理及容易理解,汇川中型PLC-AM400/AM600系列的设置与此类似,界面也相同。
H5U支持本地轴控(发脉冲)和EtherCAT轴控,轴控设置界面是一样的,如下图:
在使用过程中,大家对这两个参数都存在疑惑,是啥意思?要怎么设置?
电机/编码器旋转一圈的脉冲数设的是多少脉冲让伺服转一圈;
对于总线伺服,这里设置的是电机的编码器分辨率;
对于脉冲伺服,这里设置的是多少位置指令时电机转一圈。
这里勾选与否,只是进制不同而已,AM系列默认十六进制数,所以注意转化:
工作台旋转一圈的移动量设置的是电机旋转一圈与机械移动量的对应关系,这样设置之后就把单位换算成机械单位了。
换算前,我们都是按照发多少脉冲、多快的脉冲频率来控制电机的位置、速度。换算后,我们就可以按照机械单位,比如毫米来控制机械。比如让丝杠以多少毫米每秒的速度,走多少毫米的距离。
1.Unit是什么意思?
Unit是"用户单位"的意思,它其实相当于一副“马甲”,可以当成是mm、um、nm、角度、英寸、脉冲等等机械单位。
比如电机直连丝杠,导程10mm,也就是说,电机转一圈,丝杠移动10mm。这里设置为10mm,那么这里的unit就等同于mm!
而如果我们带的机构是旋转台,想用角度,比如电机转一圈,旋转台转360度,那么就可以设置为
那么这里的unit就等同于度°!
2.控制总线伺服的情况
以SV660N为例,对应的电机编码器精度为23位,分辨率为2^23(8388608),假设电机不带减速机,直连丝杠,丝杠导程是10mm。那么参数设置如下:
有些人会问,我用脉冲伺服的时候,不是一般发10000脉冲伺服转一圈吗?
不应该这样设置吗:电机/编码器旋转一圈的脉冲数:10000指令脉冲?(这是错误的!)
这里的电机编码器分辨率是8388608,也就是说,要让伺服电机转一圈,需要发送8388608个脉冲。如果是SV630N系列伺服,对应的电机是18位编码器,那电机编码器旋转一圈的脉冲数就应该设置为262144。
3.控制脉冲伺服的情况
假设要控制一个脉冲伺服SV660P,10000个脉冲就转一圈,不带减速机,直连丝杠,丝杠导程是10mm。SV660P的编码器分辨率也是8388608。
那么,按照刚才总线伺服的说法,应该这样设置吗:电机/编码器旋转一圈的脉冲数:8388608指令脉冲?(这是错误的!)
这里的电机编码器分辨率是8388608,也就是说要让伺服电机转一圈,需要发送8388608个脉冲。
而H5U发送脉冲的能力(输出频率)是最高200kHz,什么概念?
就是1秒钟内最多发200000个脉冲。要让电机转一圈,最快要发(8388608/200000)=41.943秒,
取42秒好了,最快42秒才能让伺服转上一圈,这速度太慢了。
所以一般脉冲伺服,即便编码器分辨率很高,我们也会设置比如10000个脉冲让伺服电机转一圈,主要受限于控制器侧(PLC、脉冲定位模块、板卡等)发送脉冲的能力。
所以才会诞生电子齿轮比的概念!
10000个脉冲让伺服电机转一圈,H5U最多每秒发送200000个脉冲,可以让伺服转(200000/10000=)20圈,即20r/s,即1200rpm(每分钟1200转)。
实际上一般伺服的额定转速是3000rpm,这样的设置,最多只能让伺服达到1200rpm,远远不能发挥伺服电机的性能。
如果设2500个脉冲让伺服电机转一圈,H5U最多每秒发送200000个脉冲,可以让伺服转(200000/2500=)80圈,即80r/s,即4800rpm(每分钟4800转)。
这时就可以达到伺服电机的额定转速了,能够发挥伺服电机的性能。
回到刚才的问题,假设按照10000个脉冲让伺服电机转一圈,参数设置如下:
但是,这样设置是不够的。因为伺服编码器分辨率还是8388608!还是需要收到8388608个脉冲才能转一圈!
所以,伺服内部也有个电子齿轮比。伺服驱动器那边需要设置如下:
H05.02设置成10000,相当于伺服自己收到10000脉冲后,就自动转换成8388608个脉冲了;这样一来,伺服收到10000脉冲,就能转一圈了。
4.控制脉冲步进电机的情况
步进电机就比较简单了。
假设要控制一个步进电机,步进电机收到4000个脉冲就转一圈,不带减速机,直连丝杠,丝杠导程是10mm。那么,参数设置如下:
5.单位换算与指令单位的关联
用户单位中,位置单位为Unit,速度单位为Unit/s,加速度单位为Unit/s²。
本文例子中,丝杠导程10mm,工作台旋转一圈的移动量设为10unit,unit表示mm,所以
指令中:位置单位为mm,速度单位为mm/s,加速度单位为mm/s²。
以绝对位置指令为例,此处:
位置赋值为100,表示100mm,
速度赋值50,表示50mm/s,
加速度赋值60,表示60mm/s²。
就是让丝杠以50mm/s的速度走到100mm的位置。
6.每个脉冲的机械进给量
上面在说到控制总线伺服的时候说到,是不能设置10000个指令脉冲的。
但其实也不是不可以。要这么设的话,那就跟脉冲伺服一样,需要在伺服参数里设置电子齿轮比使得伺服收到10000个脉冲就转一圈。
但是没有这个必要。因为脉冲伺服受限于控制器发送脉冲的能力,才必须设置电子齿轮比,而总线伺服的指令发送是通过总线,没有这个限制。这样设置后,反而会降低定位精度。
这里就涉及到一个概念:每个脉冲的机械进给量。
还是以此为例:23位编码器分辨率的伺服电机不带减速机,直连丝杠,丝杠导程是10mm。
如果不设置伺服电子齿轮比,则发送8388608个脉冲,电机转一圈,机械进给量是10mm。那么每个脉冲对应的机械进给量是:10mm / 8388608 ≈ 0.0012 μm。
如果设置电子齿轮比使得发送10000个脉冲电机转一圈,那么每个脉冲对应的机械进给量是:
10mm / 10000 = 1 μm
这里,每个脉冲的机械进给量仅仅是电气侧精度,当我们在衡量机械综合精度的时候,一般需要满足:电气侧精度 ≤ 机械综合精度 × (1/5 ~1/10)
所以,每个脉冲的机械进给量为 1 μm,则机械综合精度最高能达到 5~10 μm (前提是机械侧的精度能达到这个水平)。当然了,很少有机构的精度能达到微米级别,所以,很多情况下,设置电子齿轮比对定位精度的影响可以忽略不计。
7.脉冲伺服轴控的速度和定位精度
上面已经说到,之所以要设置电子齿轮比,就是受限于控制发送脉冲的最高频率;而电子齿轮比的设置又会影响到定位精度,所以我们总结一下:
输出频率最高200kHz的控制器,
10000个脉冲让伺服电机转一圈,最快可以让伺服转 200000/10000= 20圈,
即20r/s,即1200rpm,此时每个脉冲对应的机械进给量是:10mm / 10000 = 1 μm
2500个脉冲让伺服电机转一圈,最快可以让伺服转 200000/2500= 80圈,
即20r/s,即4800rpm,此时每个脉冲对应的机械进给量是:10mm / 2500 = 4 μm
调速范围的提高,会降低电气侧的定位精度。
所以,如果对定位精度和速度都有要求,一般会采用输出频率最高4MHz的控制器,差分高速输出脉冲。
8.使用变速装置控制的情况
比如电机间接驱动转盘,电机与转盘之间存在减速比为30:1变速装置(若电机齿轮齿数为1,工作台齿轮齿数为30,即工作台齿轮旋转1圈,电机齿轮旋转30圈),转盘的行程为0-360度,电机选择汇川IS620N绝对值电机(编码器分辨率为23位),配置如下所示: