一个“先入后出”工艺要求的处理分析
点击数:7304 次 录入时间:03-04 11:54:21 整理:http://www.55dianzi.com PLC入门
网友流风发出“紧急求救”的帖子,内容如下:
浮点数DB1.DBD0,延时1分钟传至DB2.DBD0进行后续处理。但是,DB1.DBD0在延时过程中,会发生改变,下次需要传送改变后的值,请问这个程序该怎么做?生产工艺如下:一条输送辊道线,A点检测来料长度,B点根据来料长度选择分类处理。A与B距离60M。工件从A至B输送时间是固定的,相当于延时处理。但是,来料是长短不一,而且间隔时间不一定。需要A点的长度不断延时传至B点进行处理。难点:当A点的单根长度还没到B点时,长度数据DB1.DBD0已经变成了下一根的长度,而且,有时候,A与B两点之间,有三个工件,有时候,有四个工件,请问这个程序怎么处理,才能保证A点长度都能延时传过去?依次传送
我的回帖:可以采用S7-200的填表指令ATT和先入先出(FIFO)指令的思路。
填表指令ATT(Add To Table)将参数DATA指定的一个字的数值写入TBL指定的表格。表内的第一个数是表的最大长度(TL)。第二个数是表内实际的项数(EC)。新数据被放入表内上一次填入的数的后面。每向表内填入一个新的数据,EC自动加1。
先入先出(FIFO)指令从表中移走最先放进去的第一个数据(数据0),并将它送入DATA指定的地址。表中剩下的各项依次向上移动一个位置。每次执行此指令,表中的项数EC减1。
S7-300/400的“TI-S7 Converting Blocks”库里的FC84(ATT)和FC85(FIFO)的功能与S7-200的指令相同。但是表中的数据类型为WORD,建议您将数据转换为WORD类型后使用它们。
本文关键字:暂无联系方式PLC入门,plc技术 - PLC入门