判断工位有料程序疑惑

已锁定

云深无迹

  • 帖子

    15
  • 精华

    0
  • 被关注

    1

论坛等级:游士

注册时间:2017-11-25

黄金 黄金 如何晋级?

判断工位有料程序疑惑

1479

11

2019-01-08 10:25:25

用1200做了台机器,调试过程中发现点小问题。

机器旋转部分有30个工位,每个工位相同,朝一个方向旋转。机器旋转一周有每周传感器信号,每个工位有工位传感器信号,每个工位还细分为13个齿轮信号。

程序中创建一个位数组,对应30个工位。

机器固定位置装有光电传感器,当工位旋转到传感器位置时,程序判断此工位有没有料,判断时机通过HMI设定。

在实际使用过程中,机器慢速(每工位耗时3秒,每个齿轮信号占230毫秒)时一切正常,数组可以很准确记录所以工位有无料情况,当机器速度稍快时(每工位耗时1秒,每个齿轮信号占78毫秒),数组所有位均为FAULT,无法反应实际情况。

程序1为之前的写法,发现快慢速的问题后改写成程序2.  两个程序都是一样的问题。

程序1

IF #numCycleBottleMake = 1 AND #numCounterGear =#inTubeCheckTimeSeq THEN

     IF #inSensorTubeRod THEN

         "GLOBAL DB".TUBE_EXIST_IF[#numCounterWorkstation] := TRUE;

     ELSE

         "GLOBAL DB".TUBE_EXIST_IF[#numCounterWorkstation] := FALSE;

     END_IF;

 END_IF;


程序2

#R_TRIG_Instance_8(CLK:=    (#numCounterGear >= #inTubeCheckTimeSeq) AND (#numCounterGear <= #inTubeCheckTimeSeq+2)  );


IF #numCycleBottleMake =1 AND #R_TRIG_Instance_8.Q   THEN

    IF #inSensorTubeRod THEN

        "GLOBAL DB".TUBE_EXIST_IF[#numCounterWorkstation] := TRUE;

    ELSE

        "GLOBAL DB".TUBE_EXIST_IF[#numCounterWorkstation] := FALSE;

    END_IF;

END_IF;


怀疑是数齿轮的接近开关位置装的不好, 速度快时导致程序判断条件不满足。但是程序其它地方也用到这一信号,并没有什么问题。同时当时没有足够时间调试,所以先把接近开关放到一边。


各位看看程序本身有没有什么问题,可能导致我所说的问题。


判断工位有料程序疑惑 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15100条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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