我的第一份工作(五)

不知不觉新世纪的第一个二十年即将过去,在这二十年中我经过了很多地方,有辛酸也有欢愉。对比那些性命攸关的事情也有得比较。2008年是起始也是过去,很多有趣的事情都在发生。当年国际曾播报过发生在夏季日本京都恶性杀人事件是令人难以释怀的。平安,无论在何处均是必要的生活方式。
说起AUTOCAD这款软件是我上学时学习的软件,学校学习过程中只讲究了如何使用,至于具体怎么制图这还需要继续修炼。当然,用鼠标制图与用热键制图完全是不等同的两回事儿。过去几个月我与曾经的同学通电话聊天时说起如何使用AUTOCAD,这种国际普遍通用的软件是所有制图公司要求使用的必备软件。有人会说CAXA也可以使用,但是CAXA有局限性。其二次开发并没有得到世界上大多数企业的认可。
在初入烟台来福士的时候我已经对那些制图师傅的制图方式敬佩有加,他们甚至对图纸边框中的A、B、C、D都非常认真的较真儿。我记得有一次我们用CATIA转AUTOCAD图纸的过程中,我这边负责建模的主管与常年用AUTOCAD制图的结构主管进行了一次有趣的讨论,究其原因是建模主管不知道公司当时的制图规律,硬生生要求取消图纸打印后的边框,制图、审核等等部分要素也要删减。最终,CATIA的结构图纸边框问题没有得到落实。即便后来轴测图兼并着平面图出图后,我也没看到按照正常线条比例出的图。这是三维软件的心病。你不能要求任何一款软件在多线条的状况下只投影出一条线,那违背了参照物也违背了投影规则。也许可以做限制,但限制条件框架非常多,未来的人工智能可能有解决的办法。
VBA是AUTOCAD比较有用的模块,你可以在其中编辑大量的VB语言做事,甚至包括制作简单的通用CLASS来调用。我当时使用的autocad版本是2006年使用的版本,这个版本的CAD在做二次开发时非常顺手,假如用最新的autocad做二次开发有时候需要太多新的软件做配合。
AUTOCAD普遍使用的插件是Toolbar,这个插件是所有懂得AUTOCAD的人习惯使用的,它可以让所有的图纸拥有tag,tag对于拥有大量数据工作的制图者非常重要。假如你是一个结构建模者,这个插件也是可以使用的,因为很多人做建模往往是鼠标流,鼠标流点来点去有时候会很混乱,Toolbar插件完全解决了这个混乱的境况。国际对这款插件也是比较认可的。我使用过的最高版本AUTOCAD是2010版本,以后的版本我还没用过,所以并不清楚后来的autocad是否内置了这项功能。
toolbar文件末尾是.arx,.arx的全名是advanced runtime extention。类似的文件名在autocad中加载还得用appload进一步加载,有时候直接拖进软件未必好用。.arx是最有效的针对autocad的二次开发。如果您有一款autocad软件想做二次开发,您需要再下载visual studio软件。没有visual studio的MFC做辅助开发.arx以及下面的autolisp和VBA的调用都是很不好用的。至于如何使用visual studio开发autocad,网络上有很多资料,大家可以去查吧。做插件有个至关重要的事情得注意,你的、你们的autocad确实需要这项功能吗?
autolisp是autocad二次开发中面向过程的重要计算机语言。该语言来自lisp,lisp语言在1958年诞生,可以说autolisp是一个古老的计算机语言。autolisp在插件中是对autocad产生交互的主要程序,它可以选择点,选择实体,输入数字等等。
以上的两种语言我只应用了VBA,对于autolisp还只是在自己建造的简单程序里做过练习,真正做过这些程序的人是我曾一同工作过的韩国工程师。他们拥有一整套针对数据量运行庞大的autocad所使用的插件。
在autocad运行过程中自然还需要更加优秀的icon图标编辑。也许有人会说icon的编辑与编辑web网站的icon没有什么差别啊!对啊,我觉得会玩photoshop、会玩web、会玩autocad的都是同一类人,他们都会各种比例调整。这是做平面设计的基础吧!
写到这儿吧,后面还会继续。

二零二零年二月十六日于锦州

我的第一份工作(四)

2008年是我在烟台来福士的第二年,烟台来福士彼时的变化可以用惊人来说。2万吨的固定龙门吊获得了新的吉尼斯世界纪录。吉尼斯世界纪录囊括的世界纪录非常多,上到宇宙探索,下到深海探测,甚至人们日常生活中获得的任何一项超越极限的本事都能纳入吉尼斯世界纪录。2万吨的商业吊装能力放眼亚洲还没有哪个船厂可以做类似的工作。在2008年,中海油服欧洲分公司的半潜钻井平台“中海油服先锋号(COSLPIONEER)”进行了第一次商业吊装。
船厂吊装是船厂结构分段合拢的重要过程,正常情况下合拢前都要核对大量施工合拢设计图纸。对于每个分段衔接部分留有的余量做详细的甄别。大型结构与小型结构是不同的设计思路,其保留的余量值是不同的。
常年做小型机械的公司与做大型设备的公司数值要求不同。比如产品是20厘米的轴部件,轴应该是很多汽车配件厂制作的重要部件。轴在机加工过程中保证的余量尝尝会在0.1毫米以下,很多汽车部件精确的程度往往是0.01毫米以下。轴端跳动的配合也许数值会非常小。类似的加工精度必须使用数控车床,很多高精度的配件可能还会使用多轴车床进行加工。
大型机械结构可能就不会有类似的麻烦,船厂分段衔接前往往会把分段精度控制在50毫米到100毫米之间,有的高强度钢板或许会更多一些,数值留得大不仅仅是为了增加余量,那是为了焊接后不会因为焊缝损坏分段外形及尺寸。大型结构与小型结构都保有一定的数值,类似数值是所有施工图纸中必须体现的参数。假如没有这些数值作为参考,施工现场的师傅也许会盲人摸象难以施工。
在船厂,合拢图纸有时候会单独出一份。这种施工结构图纸会详尽的标注合拢要点,合拢期间的焊接是船舶焊接中的重点。假如焊缝衔接不良出现误差或者有漏点,其整体强度就会大打折扣。
2万吨龙门吊测试吊装过程以及COSLPOINEER的合拢过程以及吊装过程我已经记不起来了。类似这种创纪录的事情公司老板章先生一定会到场,船厂所有非一线的员工自然也会去看的。不过我已经记不起那时候的状况了。当时公司的员工来自很多国家,新加坡和韩国同事最多。现场的气氛自然非常热闹。
2万吨固定龙门吊最终命名为“泰山”,这座吊至今仍然是芝罘岛地标般的建筑。假如乘坐轮渡跨海一定会先看到它巍峨的身影。泰山龙门吊的外观虽然庞大,但其吊装过程是很缓慢的,其吊装过程要特别的考虑当地的气候条件,有台风一定不会进行吊装作业。
分段合拢是非常讲究时间的工作,因为造分段是船舶建造最开始的工作。开始的结构都是从分析、设计到施工一点一点塑造的。分段建造过程中,施工人员往往会仔细的核对套料与施工图纸间的尺寸。在当今世界上,结构最复杂的图纸属于那些肋位特别微小的结构,图纸不但要显示其位置,还要因为其微小的体积单独做一块板。虽然耗费时间,但是那块板确是分析人员分析后得到的结果,不加上去是不对的。往往工程船或者军舰才会有类似的结构要求。
建模人员也会研究合拢图纸,研究归研究,但模型中是绝对不会体现合拢数值。假如体现了合拢数值,那么分段与分段间就会出现大范围干涉,在服务器同步过程中会产生错误提示,主管大人会吵着叫我们注意的。
结构建模是一项比较枯燥的工作,工作界面长时间会停滞在SFD和SDD建模界面。详细设计的图纸也是必备的工作必需品。假如每天做的分段太多,在进行阵列的过程中,电脑会像做分析一样延迟很久很久。最近几年我也会偶尔联系同行,据说大部分人都在使用tribon做设计。软件这种时代产物用得好或者用得顺手,可以一直用下去。假如用得不顺手,彼方公司对软件licence还进行年份限制,这种操作本身就限制了软件继续发展的可能。任何懂得节省成本的公司都不会乐意做赔本的买卖。微软的windows最初也是免费赠送的,即便多年后对其收费也是一次性的licence价格。按照年份计算的软件对其本身有着太多限制。
建模这种枯燥的工作还不仅仅体现在结构部分,结构建模仅仅是船舶及海洋工程建模的一部分。
写到这儿吧,后面还会继续。

2020年02月02日于锦州

我的第一份工作(三)

2008年5月,汶川地震成了全球瞩目的焦点,截至2008年,这次地震是唐山地震后最严重的一次。以后的日子,国家定义5.12为全国的防灾减灾日。
任何大型三维软件,其主要运行的核心是3D引擎。引擎也是许多人特别不乐意做的东西。引擎涉及到软件的核心架构,要考虑很多上层设计。数据库、功能、接口等等。你无法用浅显的理论依据去处理类似的架构思路,很多程序大人都是拥有许多年的具体编程经验后才会依照自己的能力制作自己期望的引擎架构。引擎架构不是一朝一夕能够编辑清楚的,需要许多时间去打磨。在多数以产品为主而不是以研发为主的公司是很少去制作引擎的,究其原因是其成本无法控制。
2008年,CATIA在来福士研发的产品功能尚属于首次。我当时尝试了结构模块(SFD)、详细结构模块(SDD)的全部有趣的新功能。这两个模块是专门为造船业而做的模块。当时H196项目是针对新模块、新功能的最突出的一次测试。这次建模成了有史以来最奇怪的建模经历,因为要跟上项目进度还要测试软件功能。当时领导的大主管还下达了一项更为苛刻的任务目的,用三维模块结构数据导出二维图纸。
最近看闲书,发现矩阵的坐标似乎有些理论上的应用价值。不过程序应用与理论研究没太多牵扯。二维(Drafting)图纸是取三维坐标内的线条进行数据转换形成平面,其应用在初步设计中是非常可取的。
多年做图纸的人应该明白,初步(primary)设计图纸与详细(detail)设计图纸是不能相提并论的。初步设计是原始性设计,比如有了技术规格,有了总设计草图,那么初步设计就已经开始了。如果让初步设计体现在三维中,只需要做到某些重要节点就可以了。如果做得太多就成了详细设计,而非初步设计。
记得那一年我们投入了大量的时间去研究三维转二维图纸的每一个命令,工程绘图中的命令我们几乎研究了一遍。这个过程中主管竟然要求我们出施工图。我当时那眼泪不是流在脸上,那是流在心里啊!初步设计和施工设计中间的差距根本不是一个阶段的流程和效果,两种不同的图纸。施工图分类后还需要备份几种图纸,这几种图纸在CATIA这种开放式(未过滤)投影效果下是非常难编辑的。我当时特别纳闷是谁给下了这么一条优秀的命令,我心里当时忒憋屈。
基于我是一个还在见习时期的人我只能认命。当然,我费尽心思做了N种配合施工图的标注。这个过程挺艰苦,我每天在结构图纸中寻觅解决办法,但是依旧不得法。这其中还有许多新加入的问题,我是边工作边适应的。
我当时挺佩服公司老板章先生的,为了研发竟然开始更换新电脑了。我们当时的工作站是4G内存,四核心或者八核心的惠普电脑。公司为我们更换的电脑是芯片频率更高的电脑。我操作着内存8G的电脑感觉我以前用的电脑都是地摊儿货。当时我们旁边是做动态模拟的小组,他们电脑没有我们先进,所以他们一直唏嘘我们电脑多好多好,为啥给我们配置这么优秀的电脑之类的。当时我们这边的同事心里那感觉幸福极啦~
更换电脑还有一个更主要的目标,要做共享部署。最开始我们做建模只是把数据,也就是文件上传到公共服务器。后来,软件环境小组利用cmd开始做服务器间的存储转换。记得那时CATIA软件环境小组的主管因为CMD的问题长了不少白头发,在服务器间编辑.bat文件是挺烦人的,不能篡路径啊。在我的印象里,如果用linux做类似的东西会更好一些,因为linux本身就是用黑框窗口操作的系统,自然天成很重要啊!
写到这我似乎表述了这么复杂冗长的,针对一种软件而做的诸多的尝试。换成今天,或者说换成纯软件公司,比如我熟悉的netease,他们的做法应该是分开做,先做server,再做client。思维方式不同,换成现在老师的话儿是思维导图不雷同。
写到这儿吧,后面再继续。
二零二零年一月十日于锦州

我的第一份工作(二)

2020年是闰年,很好的开始。
在实习期间的趣事也有很多,两万吨的龙门吊在没有完工时我曾拿着实习卡爬上去过。70米和100米是两个概念,当你站在100米且只有几十平米的高处眺望芝罘岛的时候感觉很高远。你甚至不能想象在上面施工有多么提心吊胆。当时我如果有好相机一定会拍些照片,可惜没有找到。今天的两万吨桥式固定龙门吊依旧在恪守着本职工作,定期执行合拢任务。理论上讲,这么优秀的船坞和龙门吊还可以执行更高效的大件货运装载任务。只不过这种操作必须是非半潜类设备才能执行,半潜设备根本不需要吊装操作。
写程序是灵感和坚持相结合的事儿。很多程序猿有怪癖,写不完某个class就会熬夜加班或者在地铁、公交上继续写,抓头发的事儿在大师傅走了以后就没有见到了。在小组里,我只见过他是写程序掉头发量多的人,其余的人是天生发量少,他当时的工位就能看到很多散落的头发。
实习回来以后我的工位几经辗转,从H办到N办,其中有很多次不同的学习和工作任务。大师傅走了以后,部门内出现了很多分支,好几个人晋升到了主管职务。彼时部门叫产品生命周期管理部。产品生命周期与国内一直传唱的多快好省是相悖的。中国国内的很多产品都在讲良心,最终却都败在低附加值、高消费的理论中。产品生命周期管理其实是为产品使用年限做整体分析的部门,部门在转到N办公加入了很多年轻的优秀硕士生。他们的实力很强大,几年时间就征服了DNV的校检。
程序小组被分成了三个小组。一个小组负责程序、一个小组负责CATIA的DMU部分(后来这组基本负责设计部三维软件的环境维护及技术交互)、还有一个小组专门做动态模拟的(他们主要也适用CATIA来做运动动态模拟,当然抛弃运动分析,动态模拟还是3DMAX执行的flash更优秀)。
我在程序小组里,但当时部门分配的数据处理任务和开发任务特别少。我也不是重要角色,每天的工作就是跟各位大佬学习,处理些小事。有时候次年法定假日excel我也会做,我对这样的事情倒是乐此不疲。不过于我来说这并不算事儿。
主管程序的大佬是从财务部门转过来的,据说处理ERP数据的能力十分强大。2007年到2008年,部门的协同处理机制非常差,大部分工作是面对面交流的。主管后来跟我们说做一款内部网站程序,但他想做的软件思想是任务提交、部署,而不是部门协同类的OA软件。开发使用的软件是visual studio2005,vb与C#会同时匹配使用。
一个人写服务器后端,还要写服务器前端是很麻烦的。主管的意思是这东西应该在一两个月内有基本功能形态。我当时想这工作量太大啦!这绝对是四、五个人同时开发的工作,我无奈假期回家的时候找到了一套.net制作的现成网站。我打算利用其后端server部分逐步修改前端和功能。不过这工作量也依旧不小,要兼顾美工、前端、功能、调试,这活根本不是一百行、两百行能完成的任务。
2008年的春节,应该是我毕业后最开心的一年。因为这份工作是我出生以来第一份有价值的工作。春节在家里嘻嘻哈哈十来天后回烟台工作。没想到部门在三、四月又进行了大调整。又有很多新员工入职,可我的工作变得越来越慢。因为COPY过来的class和子程序越多,要顾及的部分就越多。我执行的程序对话框也与主管想的不一样。主管是多快好省类型的,所以这进度和模式他肯定不开心。主管有一次叫我去他的办公室说我这样的员工不好,得开除。后来程序小组招了很多人去写那套程序,程序的功能为任务上传、部署、批阅,主要针对图纸。
上级领导没说什么,在新部门调配时,直接给我调配到结构建模的小组。结构建模组就四、五个人,主要的任务是为新项目做CATIA的详细结构建模。我加入建模小组后更多人加入到了小组里。最多时候小组人数达到了罕见的十几个人。几乎每个项目都会有任务切进来。虽然这活没有写程序烧脑,但这活需要眼睛非常好使,组长要求详细结构中出现的问题必须及时调校、上报,并且传到公共环境server区域内的模型不能有文件名和修改错误。有时候这种眼力超高的工作常使我晚间下班回家倒头就睡熟了。
现在新闻中比比皆是的996,其实我那时已经很普遍了,工作量太大没有办法。后来因为CATIA的版本更新,法国达索直接派了几名工程师去来福士进行联合开发。进度其实没有那么快,就像我上面曾写过的,大程序的调校是很耗费时间成本和人力成本的,即便是熟知达索软件的人也会很累。我当时晚间下班路过他们的办公室,经常会看到8点以后他们还在加班。他们的辛苦其实在公司上级领导眼里根本不是事儿,因为上级领导更关心公司项目进度和船期交付的问题。据当时传说晚一天交船,除去消耗外会赔进去一台大众。
法国人交流很有趣,他们说的是带有法国味儿的英语。欧洲语言是相通的,但是各有各的本地话儿,他们说话就很有法国调调。我这种在英语口语中较死板的人,听习惯了地道英语,对这种交流极度很不适应。况且我仅仅与他们交流两、三次。不过DMU小组的同事与他们交流的最多,他们早习以为常。虽然法国工程师很努力,但后来却被国内代理直接换了过来。一群来自全国各个部分CATIA大佬到我们部门工作。CATIA二次开发也从那时候开始的,当时用visual studio 2008的C++来做。我听过他们的PPT,讲的非常系统、详细。
写到这儿,后面还会继续。

二零一九年十二月二十三于锦州

  • 文章
  • 评论
  • 分类
  • 归档
  • 外链




Happy 2020