SecsGem半导体通讯协议 上传Maping图

SecsGem半导体通讯协议 上传Maping图本文讲述了机台如何整合扫描的二维码信息 将载具码 穴位号 基板码 上视觉结果 下视觉结果数据结构化为数组 并通过 L 型 SVID 进行上传 最后主机解析数据生成 Maping 图的过程

大家好,欢迎来到IT知识分享网。

1.什么是Maping图?

        机台通过给host发送S6F11(事件上传),host接收到这些信息之后 通过相互沟通规定这些信息是由什么来构成。如:载具码/穴位号-基板码/上视觉结果/下视觉结果。一盘载具可能会拥有多颗产品也就是说这些信息是由L(list)的数据类型,进行和事件绑定上传。
        当host收到事件触发之后根据规定进行数据解析,并将这些数据生成图像例如:

SecsGem半导体通讯协议 上传Maping图

绿色部分是视觉ok的,红色为NG。点开单独穴位之后会显示该产品的条码等信息。 

2.实现逻辑

        作为机台来说我们需要做的事就是将我扫描出来的二维码信息进行整合。并将这些(载具码/穴位号-基板码/上视觉结果/下视觉结果)以这样的格式放到数组里。
在通过以下代码将数组中的数据绑定到我们和事件上传的SVID中。(一般普通的A类型的SVID只需要一行代码既可以赋值。但是因为我们maping需要使用的是L类型的SVID所以需要先将信息存入数组之后,在统一进行转换。)代码如下:

 /// <summary> /// L类型的Svid /// </summary> /// <param name="nid">SVID</param> /// <param name="BootCode"> 载具码/穴位号-基板码/上视觉结果/下视觉结果</param> /// 载具码/穴位号-基板码/上视觉结果/下视觉结果 public static void SetLSvid(int nid,string[] BootCode) { string pValue; List<string> listData = new List<string>(); string[] bootCode = new string[99]; for (int i = 0; i < BootCode.Length; i++) { if (BootCode[i] != null) { bootCode[i] = CListOperate.listJoin("A", BootCode[i]); } } listData.Add("L"); for (int i = 0; i < bootCode.Length; i++) { if (bootCode[i]!=null) { listData.Add(bootCode[i]); } } pValue = CListOperate.listJoin(listData); HYSecsGemHelper.Manage.VaribleSet(nid, pValue); //触发事件 HYSecsGemHelper.Manage.m_pSecs.EventPos(201); }

最后两行代码分别是:1.将重新整合好的string直接赋值给svid(nid)。
                                    2.将数据赋值完成后,触发指定事件(事件和svid的绑定在别的地方已经做好)。
发送完成之后就是host的软件开发进行处理生成maping图。

host端显示LOG:

2023-12-19 16:28:27.248 INFO HY-B015 RECD D0 S6F11:S6F11 W [68] <L 3 <U4 [1] '0'> <U4 [1] '20001'> <L 1 <L 2 <U4 [1] '1'> <L 1 <L 24 <A [52] '31X31-0039 /1-1-373B04010U27/True/False'> <A [52] '31X31-0039 /2-1-373B04010U43/True/False'> <A [52] '31X31-0039 /3-1-373B04010U06/True/False'> <A [51] '31X31-0039 /1-2-373B04010U45/True/True'> <A [51] '31X31-0039 /2-2-373B04010U43/True/True'> <A [51] '31X31-0039 /3-2-373B04010U45/True/True'> <A [51] '31X31-0039 /1-3-373B04010U29/True/True'> <A [51] '31X31-0039 /2-3-373B04010U06/True/True'> <A [51] '31X31-0039 /3-3-373B04010U17/True/True'> <A [51] '31X31-0039 /1-4-373B04010U27/True/True'> <A [51] '31X31-0039 /2-4-373B04010U06/True/True'> <A [51] '31X31-0039 /3-4-373B04010U27/True/True'> <A [51] '31X31-0039 /1-5-373B04010U27/True/True'> <A [51] '31X31-0039 /2-5-373B04010U06/True/True'> <A [51] '31X31-0039 /3-5-373B04010U44/True/True'> <A [51] '31X31-0039 /1-6-373B04010U02/True/True'> <A [51] '31X31-0039 /2-6-373B04010U17/True/True'> <A [51] '31X31-0039 /3-6-373B04010U06/True/True'> <A [51] '31X31-0039 /1-7-373B04010U43/True/True'> <A [51] '31X31-0039 /2-7-373B04010U43/True/True'> <A [51] '31X31-0039 /3-7-373B04010U27/True/True'> <A [51] '31X31-0039 /1-8-373B04010U45/True/True'> <A [51] '31X31-0039 /2-8-373B04010U06/True/True'> <A [51] '31X31-0039 /3-8-373B04010U42/True/True'> 2023-12-19 16:28:27.275 INFO HY-B015 SEND D0 S6F12:S6F12 [68] <B [1] ACKC6 '0'>

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/148729.html

(0)
上一篇 2025-03-28 21:15
下一篇 2025-03-28 21:20

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信