技术论坛

 如何用ROR指令实现生产线上挑除残次品(完整版)

返回主题列表
作者 主题
昔日如诗
侠士

经验值:1732
发帖数:319
精华帖:2
楼主    2021-02-09 13:50:34
主题:如何用ROR指令实现生产线上挑除残次品(完整版) 精华帖 

假设要做一个插头,有5个插针。一个插头外壳从生产线上流过去,要经过5个工位。每个工位要插进一个插针,同时伴有一个检测装置。

如下图,是每步都合格的情景:

如果在某个工位插针插错了,案例中是第3个工位插错了,则如下图:

第2图中,第3个工位插错了,则第4工位和第5工位都不要插了,最后这个工件是扔进废料盒。

这里是分述两种情景。实际情况是,许多端子是相继着进入工位的,如下图。请注意,前面两幅图是一个端子在不同工位的情景,下图中的每个端子则是一个独立的端子。

图3中,第3个工位的插针插错了,而前面还有端子在接受插针的插入,后面也有。

于是,插错的端子进入到第4个工位,但是不再接受插针。而最前面的一个端子进入了合格装料盒

再下一步,插错的端子进入到第5个工位,前面还剩一个端子也进入了合格装料盒,


最后一步,插错的?子进入废料盒


    设MB100这个寄存器做为ROR的操作地址。

    给MB100赋值初始值255。255写成二进制就是1111 1111。用M100.0至M100.4这5个位去看管5个工位。

    现在,M100.0至M100.4都置位为1。

    最开始,M100.0至M100.4都等于1,于是每个工位都必须给端子外壳插进插针,最后把成品放进合格装料盒。

    后来,第3个工位出现问题了,于是它对应的M100.2复位为0了。如下图

    


   

    于是MB100就等于1111 1011了。前述的复位为0不是常开式的复位,而是触发式的。

    请注意,5个工位的地址依次是M100.0, M100.1, M100.2, M100.3, M100.4,它们是固化了的。而只有数据在它们上面流淌。ROR的作用只是推着数据转圈,而不是推着地址转圈。此前,ROR推着1111 1111转圈,现在,推着1111 1011转圈。

    于是,在生产流程中的程序中,从第3个进行到第4个工位的时候有个脉冲,这个脉冲激发ROR,ROR就推着数据转了一位,这个0就到下一个工位了。或者说,是1111 1011成了1110 111了。如下图:

    


       M100.3接到了0,自然不会给这个工件插针。

       在生产流程中,从第4个工位进行到第5个工位时,也有一个脉冲,这个脉冲激发ROR,ROR就推着数据又转了一位,就是0被转到第5个工位了。如下图

    

    第5个工位接到0,自然不会给工件插插针,并且会把它放进废料盒。

    关于ROR推动数据转圈,而地址不动,请看下图。外圈是地址,是不动的;内圈是数据,是旋转的。本案例中,第三个工位的数值变成了0,则这个0就会逐级向后面的工位送,禁止相应工位对工件进行操作,直到最后将工件扔进废料盒:

    



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