如题
所用工具:
1,第三方拍摄软件EasyInspector 简称EI。
2,自己写的软件Checksoft。
3,基恩士PLC CPU模块KV-NC32T
描述下软件功能
1.EI 可以通过SOCKET的方法进行通讯,即控制什么时候开始拍照检测,并将检测的数据
返回。
2,利用上述的SOCKET方法(EI 带的例程),写了一个软件:一方面和PLC通讯,另一方面和EI软件通讯。
3,跟PLC通讯方面,checksoft作为伺服器,PLC作为客服端,我们便让checksoft 不断读取PLC某一软原件(备注:软元件相当于一个变量16BIT 或者32bit,这里是16bit的某一位,如MR402),当该位变成true,则置位标志位,通过该标志位让EI开始拍照,并且将结果回传给PLC。
软件结构
##存在问题
现如今存在的问题是,checksoft在不断访问的过程中会出现UI界面卡死,出现未响应的情况。而且卡死在不同的地方,线程里有一个时钟一样的东西,有时候也会停止。
所做的解决措施
1,利用文字记录在死循环中不断记录,看下是在哪个地方卡死,结果就是在卡死在了线程里面,也没有在EI软件通讯上。
2,利用另一个线程监视该线程,但是我能力不够,不太成功,我上传的程序代码中,ControlUpdateAction中就是监视线程,可能我不太会用多线程。
3,UI界面卡死,因此把所有的在软件显示数值的函数都注释了,客户用过还是会出现卡死的情况。
4,EMI的问题考虑过,在网线上加了滤波磁环也不行