恭喜,你发布的帖子
发布于 2024-09-20 08:57:14
4楼
如果只通过PLC+读产品信息的方式,我建议用数组+UDT来实现。
首先数据类型先定义产品信息、加工信息。
然后再建立一个大于缓存区最大工件数的数组(此处20示例)。
进入工位前,读取数组,根据产品信息判断加工信息,如果加工信息=0(未加工),就进入工位进行加工,加工完成后向数组的加工信息写入1(已由工位1加工)或2(已由工位2加工)。
在工位2增加数组数据处理的程序。
在进入工位2前如果已经加工就直接流入后续工艺;在工位2加工完成后也流入后续工艺。
如果后续工艺需要产品信息和加工信息,就把该工件的数据写入目标位置后再清除;
如果后续工艺不需要产品信息和加工信息,直接清除该工件对应的数组信息。
关于数组的处理建议:
使用SCL语言配合FOR循环可以很轻松的实现数组的增删查改,进而实现功能。
我在想是不是可以弄一个先进先出的队列
已进工站1的,就给个1,表示已进站1
未进工站1的,就给个0,表示未进站1
当产品流至工站2前时,对这个进没进站的信息进行读取,如果读到0,就进站工位2;读到1,就不进站顺流下去。
现在动作思路应该是没啥问题,就是不知道:1、这个产品的信息该怎么进行保存;2、这个进不进站的状态怎么对应产品的信息对应保存。
请填写推广理由:
分享
只看
楼主