目录
•1.基本信息
•2.变量及功能块的创建
•3.参数表的执行顺序
•4.参数表应用举例
▪4.1 电压限制(所有伺服项目都要进行设置)
▪4.2 忽略软限位
▪4.3 扭矩限制
▪4.4 电子齿轮同步(简单例子)
▪4.5 使用CAMCON定时发出脉冲信号
▪4.6 循环通讯参数设置例子
▪4.7 修改monitor.s,monitor.v传送数据例子
▪4.8 使用旋转编码器设置
▪4.9 切换事件复杂一些的电子齿轮同步
▪4.10 使用ARITH做一阶惯性滤波举例
▪4.11 使用PID做微分
编写人 |
刘柏严 |
审核人 |
(检查,测试,注释) |
|
应用归属 |
运动控制 |
|||
软件信息 |
|
硬件信息 |
||
其他 |
|
|||
版本信息 |
修改内容 |
修改人 |
||
V1.00 |
创建 |
刘柏严 |
||
V1.10 |
添加应用例子 |
刘柏严 |
||
V1.11 |
修改ID390部分 |
刘柏严 |
使用ID777进行创建变量或者功能块。同样的变量或功能块最多可以创建8个。
创建变量时,同一组的变量将会同时创建。每组包含dint类型变量4个,real类型变量4个,int类型变量4个,usint类型变量4个。
下面举例一组变量:
Parameter ID name |
Access |
Data type |
Description |
VAR_I4_0_x |
RD,WR |
I4 |
Integer32-Variable0 |
VAR_I4_1_x |
RD,WR |
I4 |
Integer32-Variable1 |
VAR_I4_2_x |
RD,WR |
I4 |
Integer32-Variable2 |
VAR_I4_3_x |
RD,WR |
I4 |
Integer32-Variable3 |
VAR_R4_0_x |
RD,WR |
R4 |
Float-Variable0 |
VAR_R4_1_x |
RD,WR |
R4 |
Float-Variable1 |
VAR_R4_2_x |
RD,WR |
R4 |
Float-Variable2 |
VAR_R4_3_x |
RD,WR |
R4 |
Float-Variable3 |
VAR_I2_0_x |
RD,WR |
I2 |
Integer16-Variable0 |
VAR_I2_1_x |
RD,WR |
I2 |
Integer16-Variable1 |
VAR_I2_2_x |
RD,WR |
I2 |
Integer16-Variable2 |
VAR_I2_3_x |
RD,WR |
I2 |
Integer16-Variable3 |
VAR_UI1_0_x |
RD,WR |
UI1 |
Integer16-Variable0 |
VAR_UI1 _1_x |
RD,WR |
UI1 |
Integer16-Variable1 |
VAR_UI1_2_x |
RD,WR |
UI1 |
Integer16-Variable2 |
VAR_UI1_3_x |
RD,WR |
UI1 |
Integer16-Variable3 |
其中_x为_0 至 _7 共计8组。
创建一组变量时只需要创建其中任何一个就可以了。或者说,创建了组中的任意一个变量,此组变量都将同时被创建。
例如:
由于4096 VAR_I4_0+0,所以相当于创建了0组的16个变量。分别是:
4160 VAR_I2_0+0 4096 VAR_I4_0+0 4128 VAR_R4_0+0 4192 VAR_UI1_0+0
4168 VAR_I2_1+0 4104 VAR_I4_1+0 4136 VAR_R4_1+0 4200 VAR_UI1_1+0
4176 VAR_I2_2+0 4112 VAR_I4_2+0 4144 VAR_R4_2+0 4208 VAR_UI1_2+0
4184 VAR_I2_3+0 4120 VAR_I4_3+0 4152 VAR_R4_3+0 4216 VAR_UI1_3+0
创建功能块时通过模式ID创建就可以了。
例如:
所有的功能块在使用之前都需要创建,否则会有报警。
功能块的执行顺序是按照创建顺序来的,而不是按照功能块赋值顺序执行,所以请注意创建功能块的顺序。
为了测试功能块的执行顺序,设计测试如下。
3.1 事件写:典型测试
创建两个事件写功能块,两个功能块的触发事件都是参数4168置1的上升沿,结果是分别把参数ID:4096/4104 写入到参数ID:4112中。设定4096的值为3,4104的值为5。检测4112的值等于哪个就说明哪个是后执行的。
测试结果为:4112结果为 5。
3.2 两个功能块的创建顺序不变,更换两个功能块的赋值顺序后再测试
同样设定4096的值为3,4104的值为5。得到的测试结果仍然是4112的值为 5。
可见功能块的执行顺序与参数表赋值顺序无关。
3.3 接下来更换功能块创建顺序,再次测试。
同样设定4096的值为3,4104的值为5。得到的测试结果仍然是4112的值为 5。这次取得4112结果为 3。
说明参数表的执行顺序是按照创建顺序来的。
这里设定了工作的额定电压(DC)和忽略相失败。
由于国内工厂电压波动比较厉害,加上我们伺服的电压检测非常敏感,所以要求所有伺服项目进行电压参数设置,防止在客户处发生报警,减少服务。
如果是旋转运动轴,则需要设置此参数,防止运行一段时间后到达软件限位而停止。
•此参数可以设置成1、2、3。使用时通常设置为1或3。
▪1-表示电子齿轮运动不受limit参数限制;
▪3-表示电子齿轮运动受limit限制;
速度模式下,有时需要扭矩配合,可以设定以上参数。
主轴参数表设定(虚轴做主轴,实际主轴跟随虚轴):
从轴参数表设定:
•注意点:
▪每一个state设置的同步或补偿距离都需要伺服的执行时间超过400us以上。否则伺服会报警。
▪如果主轴可能正反两个方向运动,那么同步轴需要正反两个方向的EVENT。
•关于各参数的详细说明请参考帮助。
CAMCON用来替代鼓序列发生器,可以对位置进行信号发生。上面的例子是对时间的。
4.7 修改monitor.s,monitor.v传送数据例子
•Monitor.s 和 monitor.v 是同步数据,每个powerlink周期更新。
•如果读取的数据类型不匹配,可以在程序中进行类型转换。
▪转速小于4000转每分的设备应该将ID109设置成16384,以提高控制精度及响应速度。转速大于4000rpm的时候只能设置成4096。否则会产生报警39002。
•参数表中事件触发时间如果一样,那么event_index 越低优先级越高,比如
oevent 0- ST_END,ST_END
oevent 1- TRIGGER1+POS,ST_END
•如果两个事件同时发生,即在ST_END时刻发生了TRIGGER1+POS事件,那么event 1也不会执行。
•必须将TRIGGER1+POS事件设置为event 0才会有最高的优先级:
oevent 0- TRIGGER1+POS,ST_END
oevent 1- ST_END,ST_END
只使用TD微分时间,T1-微分的滤波时间,KP=1,Ti=0。