840D 虚拟硬件限位

已锁定

落英缤纷

  • 帖子

    28
  • 精华

    0
  • 被关注

    0

论坛等级:侠客

注册时间:2014-09-10

黄金 黄金 如何晋级?

840D 虚拟硬件限位

1830

11

2021-12-13 13:10:16

      最近在改造一台90年的德玛吉DMU60P,海德汉系统,飞利浦品牌主机。机床已经无法启动了,上电后操作系统丢失报警,从主机上看,硬盘插槽的电源指示灯不亮,找各种途径尝试维修,最终结论是无法修复。

      公司决定用库里的840D系统进行改造,增加840D NUC单元,保留电源模块和驱动模块611D,增加6SN1118,操作面板,PLC模块等。

      断断续续几星期后才送电开始调试,很快各进给轴和C轴都可以运行了,下一步全闭运行都没有问题。紧接着测试回参考点,由于之前吃过大亏,轴限位有效之前,回参考点是很危险的。必须谨慎操作,于是找各进给轴限位信号,想尽快处理验证一下,以免造成不必要的麻烦,但是从图纸上反反复复找也没找到限位信号及限位开关,于是打开机床防护罩继续找,还真没有!由于各进给轴和光栅尺都是增量的,通电之后参考点建立之前,软限位是无效的。这不奇怪了吗?这机器可是德国制造啊!依德国人严谨的做事风格,通电之后参考点建立之前,不可能没有安全措施,那么误操作只能撞机械缓冲装置,触发伺服报警吗?应该是不可能这么草率!

     那么我就想有没有办法在没有硬件限位开关的情况下,能否实现硬件限位功能?经实践验证是可行的。

首先郑重声明以下几点:

1.       首先各轴要准确无误建立一次参考点,以便PLC侧的DB数据块存储各轴的机械实际位置

2.       当调用的FB2输出报警时,此时DB数据块存储各轴的机械实际位置是错误的,要记录并响应,还需要设置超程解除机制,否则断电重启后,参考点无法建立

3.       FB2是随PLC扫描周期触发的,再经过运算处理,触发硬件限位报警时会有延迟,导致轴会有一定的过冲量,比硬件限位触发报警时的过冲量稍大

4.       机械维修时,轴的实际位置发生改变后,超程解除后才能建立参考点

5.       其余还有不严谨的地方肯请坛友们批评指正,讨论。

大概思路如下,供大家参考:

1. 建立数据表

   



2. 利用NC变量选择器选择各轴的机械坐标变量

3. OB1中读取各轴的实际位置

      AN    M      0.0

      =     M      0.0

 

      CALL  "GET" , DB122

       Req    :=M0.0

       NumVar :=3

       Addr1  :="NCVAR".C1_SMA_actToolBasePos1_2.SYNTAX_ID

       Unit1  :=B#16#1

       Column1:=

       Line1  :=

       Addr2  :="NCVAR".C1_SMA_actToolBasePos2_2.SYNTAX_ID

       Unit2  :=

       Column2:=

       Line2  :=

       Addr3  :="NCVAR".C1_SMA_actToolBasePos3_2.SYNTAX_ID

       Unit3  :=

       Column3:=

       Line3  :=

       Addr4  :=

       Unit4  :=

       Column4:=

       Line4  :=

       Addr5  :=

       Unit5  :=

       Column5:=

       Line5  :=

       Addr6  :=

       Unit6  :=

       Column6:=

       Line6  :=

       Addr7  :=

       Unit7  :=

       Column7:=

       Line7  :=

       Addr8  :=

       Unit8  :=

       Column8:=

       Line8  :=

       Error  :=DB110.DBX16.0

       NDR  :=DB110.DBX17.0

       State  :=DB110.DBW18

       RD1  :="AXIS POSITION".DB_X_AXIS_POSITION

       RD2    :="AXIS POSITION".DB_Y_AXIS_POSITION

       RD3    :="AXIS POSITION".DB_Z_AXIS_POSITION

       RD4    :=

       RD5    :=

       RD6    :=

       RD7    :=

       RD8    :=

4.  参考点建立之后位置更新

      A     "X_AIXS".E_RefSyn2

      FP    M     10.0

      =     L      0.0

      A     L      0.0

      JNB   _007

      L     0.000000e+000

      T     "AXIS POSITION".DB_X_AXIS_POS_BUFFE_0

      _007: NOP   0

      A     L      0.0

      JNB   _008

      L     0.000000e+000

      T     "AXIS POSITION".DB_X_AXIS_POSITION_INC

      _008: NOP   0

6.       轴限位报警

         L     "AXIS POSITION".DB_X_AXIS_POSITION

         L     "AXIS POSITION".DB_X_AXIS_POS_BUFFE_0

         +R   

         T     "AXIS POSITION".DB_X_AXIS_POSITION_INC

 

         L     "AXIS POSITION".DB_X_AXIS_POSITION_INC

         L     "AXIS POSITION".DB_X_AXIS_POS_LIMIT_MINU

          >R   

         NOT  

         A     I      2.0

         =     "X_AIXS".A_HWLimitMinus

 

         L     "AXIS POSITION".DB_X_AXIS_POSITION_INC

         L     "AXIS POSITION".DB_X_AXIS_POS_LIMIT_PLUS

         <R   

         NOT  

         A     I      2.0

         =     "X_AIXS".A_HWLimitPlus

7.       OB100中刷新断电前轴实际位置

         L     "AXIS POSITION".DB_X_AXIS_POSITION_INC

         T     "AXIS POSITION".DB_X_AXIS_POS_BUFFE_0

 


840D 虚拟硬件限位 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SINUMERIK

共有24790条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

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