老赵493 发表于 2024-11-18 17:27:59

西门子四轴坐标变换宏后处理关于”宏“的知识点。共同学习贴

本人多年不摸机床,近日逛论坛发现大量3+2等类型桥板发那科宏后处理。闲暇之余特开一贴。不足之处欢迎讨论。
1.西门子系统多用于大型落地机床重型龙门机床等,单件加工周期长,毛坯一致性差。可能这类机床多处于半手工编程半电脑编程阶段。

2.高端机床配海德汉西门子马扎克等系统老板也不差钱开通刀尖跟随或定制专机后处理。

综上两点西门子840dsl的四轴变换宏后处理帖子很少。甚至西门子 后处理极少。在甚很多西门子系统用G291模式使用。

本贴仅对“宏”的部分讨论。为对比理解本贴很多描述是“简化的“错误”的。


一.变量
    1.临时变量。发那科为#XXX。对比西门子为RXXX。简单说发那科#1=#1+1在西门子里描述为r1=r1+1
2.系统变量。例如发那科#1=#5022→当前机械坐标Y值 到#1。西门子r21=$P_UIFR;读取g54坐标系偏置X到r21
      此类变量变量均需手册或百度支持。随贴附件


老赵493 发表于 2024-11-18 17:31:16

二。宏变量传递。
       发那科多为宏程序G65P9001A--B--等。A后面的数带入到程序为#1.B后面的数带入到程序为#2.网上此类资料很多
       西门子可以直接R变量使用。但是看起来有点low。怎么看上去高大上呢?最简单可以采取自定义变量先声明后使用的方式
      

上面这个例子很典型。宏子程序开头写上一行proc我们就获得了6个临时变量。
主程序只需要写一行LXDJ(1,2,3,4,5,6)进入到上面的宏子程序例子内部就是_D的数值为1._i的数值为2, _c的数值为3,
也是模态调用的
子程序里面就可以随意使用了。注意自定义变量的名称不要和已经存在的系统变量名称相同。





是的。其实就是自己写了一个固定循环。发那科的G81 G99 X10. Y10. Z-15. R5 F20
                                                      就是西门子CYCLE81(100,0,5,,-15,0.6,0,1,11)

老赵493 发表于 2024-11-18 17:33:54

三。写入系统变量。
发那科为G90G10L2P1X50Y10Z0;CNC读到这句话后,G54坐标将会是X50Y10Z0:
西门子可以直接读写如 $P_UIFR=r41;CNC读到这句话后,G54坐标中x轴偏置将会是r41的数
                所有的变量都可以在手册查到。想要的都能查到。


四。宏子程序存储位置。
发那科0i-md以下的只有一个目录。0i_mf以上包括18i_m等等如果是g65P9001形式就和主程序放一起。
                如果是用M代码或G代码模态调用的就放在system文件夹


西门子的一般是放到用户循环或制造商循环目录,毕竟本质就是自己写的固定循环




如果没有制造商和用户循环文件夹就检查一下口令去调试——HMI----逻辑驱动器里打开一下。






记住这两个文件夹需要重启系统才会重新加载生效。
另外电脑写的程序一定要是UTF-8的编码格式。否则汉字指令会失效,仅能注释。

老赵493 发表于 2024-11-18 17:34:58

五。后处理制作和宏计算写法都是一样的
      本贴内容可以结束了


六。附件两个小的例子和西门子编程手册








通过百度网盘分享的文件:西门子编程高级手册.pdf
链接:


xl147258 发表于 2024-11-18 19:40:23

学习了

謎謎謎 发表于 2024-11-18 20:42:23

谢谢分享

可爱的暗影蘑菇 发表于 2024-11-19 06:35:57

厉害了

WY123456789 发表于 2024-11-19 08:11:07

666,学习了

zengrongs 发表于 2024-11-20 08:31:31

谢谢分享支持一下

fruitch 发表于 2024-12-6 15:13:09

全国100多人,等着楼主,出个3+2宏坐标转换后处理,并支持四轴联动,因为知道楼主是好人,交个朋友吧VX:FRUITCH
页: [1]
查看完整版本: 西门子四轴坐标变换宏后处理关于”宏“的知识点。共同学习贴