恭喜,你发布的帖子
发布于 2023-05-12 21:53:16
2楼
R1 主轴转速设定值 r/min
R2 正弦变速的振幅 %
R3 正弦变速的周期 S
R4 主轴正弦变速的输出值 r/min
;启动两个定时器
$AC_TIMER[1] = 0 $AC_TIMER[2] = 0
;将变速周期值存入临时变量
ID = 1 DO $AC_PARAM[1] = $R3
;生成一个锯齿波发生器
ID = 2 EVERY $AC_TIMER[1] >= $AC_PARAM[1] DO $AC_TIMER[1] = -1 $AC_TIMER[1] = 0
;合成正弦变速输出值
ID = 3 DO $R4 = $R1 + $R1 * $R2 * sin(360 * $AC_TIMER[1] / $AC_PARAM[1])
;以0.04S的周期更新主轴的转速
ID = 4 EVERY $AC_TIMER[2] >= 0.04 DO S = $R4 $AC_TIMER[2] = -1 $AC_TIMER[2] = 0
M3 ;旋转主轴
LOOP
STOPRE
ENDLOOP
M30
以下是模拟的变量跟踪图像,设定R1=2000 R2=0.2 R3=10
黄色线是输出值R4的图线,绿色是定时器AC_TIMER[1]的图线,蓝色是主轴实际转速的图线。可以看出R4是从1600到2400之间正弦变化,AC_TIMER[1]是每10S复位并重启一次,主轴实际转速也和R4是基本相同的,拟合的精度取决于AC_TIMER[2]的定时值,定时值长的话精度低,定时值短的话精度高,一般设成0.1S即可,此例设成了5倍的插补周期(0.008S)0.04S。
请填写推广理由:
分享
只看
楼主