最近事情多哦,抓紧时间把弯管机工艺申请的专利说明书写完叫了,又花了两个小时把中期检查的PPT做了,然后随时当接线员,软件的BUG一个一个的出来,接下来又一个一个的消灭了,再后就研究OpenCASCADE用在五轴五联动仿真上的可行度。

一件事情一件事情的理清楚好了。

弯管机工艺专利其实不是我做的,写专利说明书还是按照以前遗留的一些文档复制粘贴,改改格式,重新做作图,就OK。核心的东西写不来,一个函数上5000行的程序看不懂,也没有必要看懂。更悬的学术派的什么说法我弄不懂,胡扯罢了。

中期检查的事情让我想起我们的开题报告,开什么题哦,检查也是敷衍,本来认认真真做的PPT就让检查的给敷衍了。

软件的BUG是最近比较头痛的事情。还好早就有大量的准备。

首先是软件的LOG系统发挥了很大作用,在设计之初就采用了自己写的一个LOG系统。虽然说功能很简单,但比没有强多了。

其二是指导厂商去客户那儿了解客户出问题的具体原因,不要就是说“软件卡死了,软件有问题”这种根本无法确定原因的问题。要得到故障发生的具体时间,越精确越好,方便定位时间。另外要保证是电脑上的时钟,而不是客户手上的时间,搞不好今年2009年电脑还是2008年呢。

第三是要有解决问题的耐心。因为客户在温州,我在成都,而且我手上没有现成的设备供调试。所以所有的程序修改工作都是“瞎蒙”的。但这个“瞎蒙”不是指随便乱猜,这样只会使程序越改越糊涂,厂商和用户会越来越没有信心。力求做到解决一个问题就不再会出现了。关键就是如何正确的分析LOG文件了。最开初设计的LOG文件加工后会变得异常的大,经常加工一天就几个G,中间有些大量垃圾信息是在while循环中生成的,将这些去除,再优化和规范LOG的格式,便容易分析多了。

对于LOG的添加也是在不断地测试、不断地试用当中逐步添加的。起初根本不知道哪儿需要LOG、LOG记录的密度等等。在后面看LOG的时候会逐步明朗的。

那么离线情况下如何进行调试呢,有些时候是没办法的。还好我这里在前期设计的时候就做了一个简单的虚拟机床模块,可以模拟运动控制卡、IO卡的动作。当时用了两三天的时间制作,并在后期进行了维护。现在看来这个模块起了很好的作用,一些简单的流程上的问题就直接在虚拟机床上测试即可。对于一些疑难杂症,就只有靠更透彻的分析日志,特别是多线程的时候,更要仔细的检查GUI、底层线程、和状态机的配合。

最后就是要认真的记录出错的原因。因为软件越到后期出的问题就更是稀奇古怪,没有良好的注释和版本管理,肯定会修正了一个问题又带来N多的其它问题。总结了一下整个软件的设计,还是有不太满意的地方,但目前修改的话已经不太现实。所谓吃一堑长一智,下个系统开发的时候会更关注于整个框架的结构,毕竟,这些都不是靠书本就能学来,实战才能让你理解为什么书里面说的是对的,为什么是错的。

OpenCASCADE目前还没有找到合适的路子去仿真五轴数控,恐怕还需要学点数学的东西,刀具的包络面能够出来了,大部分事情就解决了。