回复:如何实现对840DSL和828D主轴锁定

已锁定

隐身人

版主

  • 帖子

    11585
  • 精华

    73
  • 被关注

    808

论坛等级:至圣

注册时间:2005-12-20

钻石 钻石 如何晋级?

发布于 2025-01-14 19:55:54

1楼

关于这个话题,我这里有个文本可以参考:

相对840D SL数控系统,可通过参数写入实现锁定:首先,需要在PLC程序中调用功能块FB 5,将用户自定义变量转换为一个10字节的变量指针。例如,要锁定主轴,可以将与主轴使能相关的变量(假设为“SPINDLE_ENABLE”)转换为变量指针,通过实例DB 111调用和参数设置FB 5:

CALL FB 5, DB 111(

 Req := M 100.0, //触发读取的脉冲沿

 Addr := DB_GUDVAR.SPINDLE_ENABLE,

 Area := B#16#2, //通道变量

 Unit := B#16#1, //通道1

 Index1 := 0, //无数组索引

 Index2 := 0, //无数组索引

 CnvtToken := TRUE, //转换为10字节Token

 VarToken := DB_GUDVAR.SPINDLE_ENABLE_Token,

 Error := M 102.0,

 Done := M 100.1,

 State := MW 104,

 RD := DB_GUDVAR.string_of_SPINDLE_ENABLE);

在FB 5调用完成后,使用FB 3通过返回的FB 5参数地址(“VarToken”)执行写入操作,将主轴使能变量的值写为0,实现主轴锁定。调用示例:

CALL FB 3, DB 112(

 Req := M 200.0,

 NumVar := 1, //写入1个GUD变量

 Addr1 := DB_GUDVAR.SPINDLE_ENABLE_Token,

 Error := M 102.0,

 Done := M 100.1,

 State := MW 104,

 SD1 := P#DB99.DBX0.0 DINT 0); //将主轴使能变量值写为0;

满足条件后解锁:在PLC程序中设置条件判断,当满足解锁条件时,再次调用FB 3,将主轴使能变量的值写为1,实现主轴解锁。例如,当某个传感器信号(假设为I0.0)为1时解锁主轴:

//条件判断

IF I0.0 THEN

    CALL FB 3, DB 112(

     Req := M 200.0,

     NumVar := 1, //写入1个GUD变量

     Addr1 := DB_GUDVAR.SPINDLE_ENABLE_Token,

     Error := M 102.0,

     Done := M 100.1,

     State := MW 104,

     SD1 := P#DB99.DBX0.0 DINT 1); //将主轴使能变量值写为1

END_IF;

而828D系统:

828D在软件版本SW04.05.SP2以后,可以通过PLC侧读写NC或驱动变量。在PLC编程工具中,通过NC变量选择器选择与主轴使能相关的R参数。例如,假设主轴使能相关的R参数为R100:

打开PLC Programming Tool,检视窗口点击[NC变量],进入参数选取界面。

将光标定位在变量名称区域,快捷键[Ctrl+F]打开搜索,输入相关参数标识找到R100。

双击R100变量名称,[范围编号]和[行]都填0。

点击[确认],完成对参数的选定,编译生成数据块DB9910。

在PLC程序中设置条件判断,当满足解锁条件时,将R100的值写为1,实现主轴解锁。例如,当某个按钮信号(假设为I0.1)为1时解锁主轴:

//条件判断

IF I0.1 THEN

    //通过PLC信号设定将R100的值修改为1

END_IF;


西门子的多年使用者http://yinshenren.ys168.com/、微信:wlpxiaolu
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SINUMERIK

共有25807条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。