引用
引用第4楼seafar于2019-08-02 20:28发表的 :
一个箱子用3个寄存器D0D1D2第二个箱子就D3D4D5,用它20组也就是60个寄存器保险点,前面的箱子排掉就把他的寄存器清空,后面箱子又可以用。D0用来存CCD给的信号(1-10),D1用来计数,传感器感应一次加一,D2寄存器当位用作D1加1的条件。
打个比方,CCD检测到第一个箱子给D0赋值5,同时把D2.0置位,,前进感应到传感器一,D1加1,(记得加条件只有D2.0置位的情况下触发传感器一才能对D1加1),同时把D2.0复位(这样就不会后面箱子触发传感器D1再次加1啦),把D2.1置位;加条件D2.1置位的情况下触发传感器二才能对D1再次加1,同时把D2.1复位,D2.2置位。。。。。。。。就这样第三个传感器复位D2.2置位D2.3,D1=3啦。。。。。。。第四个传感器复位D2.3置位D2.4,D1=4啦。。。。。。第五个传感器复位D2.4,D1=D0=5啦,OK把箱子推出去,同时把D0D1D2都复位啊。第二个箱子D3D4D5跟在后面不会影响第一个箱子D0D1D2啦。。。。。
补充一下:需要把D2.0常闭串联至D5.0,D.8.0,,,,置位条件中,D5.0常闭串联至D.8.0,,,,置位条件中,以此类推,还需要一个组号寄存器比如说D100,光电感应一次D100加1,以此来把各个箱子的数据进行分组寄存,当D100=20时清零循环
楼主留言:
请问老师 :为什么需要把D2.0常闭串联至D5.0,D.8.0,,,,置位条件中,D5.0常闭串联至D.8.0,,,,置位条件中,以此类推,其中D5.0,D8.0不是其他组在使用的吗?