2024年3月27日,由联想集团和中国信息通信研究院共同撰写的《中国企业智能化成熟度报告(2023)》正式发布。报告指出,中国企业数字化发展进入新阶段,并加速迈进全面智能化发展新阶段。回顾2022年7月14日,公司组织了一次华测导航技术交流会,会议上几位专家多次提及数字化施工概念,公司领导也明确指出,数字化施工是未来工程项目的发展趋势,那次会议使我受益匪浅。在现代工程设计与施工管理中,利用先进的编程技术和软件工具能够极大地提升工作效率和质量。在我最近的工作中,我自学了python编程技术和Visual Studio Code等编程工具,并结合ChatGPT的人工智能化,通过编写小程序和CAD插件等功能,将这些技术应用到日常工作中,不仅简化了工作流程,还提高了整体工作效率和精度。以下是具体的应用案例和效果: 一、批量处理多个EXCEL文件并打印成PDF之后合并 目前项目上的施工单点记录的导出都是EXCEL文件,但我们提交时需要以PDF文件的形式提交且需要合并。之前使用的EXCELtoPDF软件,在转换的过程中每根桩都需要自己手动输入对应的桩号,针对批量输入的时候,严重影响工作效率。 针对这个问题,我利用python编程写了一个程序,实现的功能是:选择一个文件夹,将文件夹内的所以EXCEL利用Microsoft Print to PDF打印形式打印成PDF文件,且生成的PDF文件与EXCEL文件名相同,最后将所有的PDF文件再进行合并成为Summary汇总文件。 程序部分代码如下:
二、提取施工图纸中水深及标高数据 在计算振冲挤密的实际施工长度时,我们施工现场需要提取对应施工点位的水深及标高数据。其中,现场水深数据是测量方通过南方CASS等高线导入的块参照,且数值在图纸上的体现为块参照的Z坐标,以前我们只有通过图纸上显示的数值来输入,当某施工点位需要求几个数值的平均值时,我们需要手动来计算,且图纸的显示数值为1位小数,真实水深应该是2位小数,理论上存在误差。 经过开始的输入数据工作,我发现我们在手动输入数据的时候存在以下问题: 1、输入数据的时候存在手动输入错误的情况; 2、输入的时候忘记自己已经输到几号数据; 3、手动输入数据大多时候都是输完正数以后再进行负数的转换; 4、需要进行大量手动输入工作,功效低等。
针对发现的问题,起初我用python编写了读取CAD块参照Z坐标的功能,且如果选取多个块参照,自动求平均值且将读取的值保存在EXCEL中,但是python和CAD的软件交互存在不稳定性,经常输入几十个数据后会突然报错。 后来我用Visual Studio Code开发了一个CAD小插件,将插件内置在CAD中,提高了稳定性,并增加了针对输入数据的计数功能,彻底解决了之前工作中遇到的难题,提高了准确性和功效。 插件代码如下:
同理我也实现了针对场地标高参数输入的优化,将程序中块参照改为文字即可。 三、提取指定数据并排序 目前,我们项目上施工数据的汇总是按照每日汇总来统计的,但是在后期工作中,会多次使用到基础的汇总统计表。在项目全套资料整理工作中我发现汇总表的统计存在以下问题: 1.管理人员需要手动寻找某个特定施工区域的施工汇总表(例如:当我需要提取U08dON这个施工区域的汇总数据时,我需要打开20240627-20240701期间的每个汇总表并提取对应汇总数据),提取指定区域的汇总表是为了区分不同区域的施工记录为后边的计量工作打下基础; 2.手动提取出来的施工汇总表是按照施工顺序来排序的,并没有按照桩位编号从小到大排序,因为在后边的沉降计算表中,是按照桩位编号从小到大的排列; 3.汇总表中没有实际施工深度,需要手动再进行一次实际桩底标高与场地标高的差值计算,此举是为了求出实际施工深度,应用在沉降计算表中去。 针对以上问题,我先将所有的汇总表放入一个文件夹中且命名为Basic Data,以此来作为数据库。然后我使用python程序编写了一个程序,实现的功能是:输入需要提取的区域名称(例如U08dON),程序将自动提取所有U08dON区域的施工汇总表,并按照施工点位桩号从小到大的顺序排列,且最后加入一列数据,求出实际施工底标高与场地标高的差值,效果展示如下: 这次的程序将原本需要25分钟且需要多次步骤才能完成的任务,真正实现了在5S内完成,且由计算机处理完成的数据,保证了其准确性,极大提高了工作效率。 程序部分代码如下:
四、CAD图纸自动填充桩位 项目施工过程中,需要将每日的施工点位标记在图纸上,即填充CAD图纸中的圆,之前我们是根据每日汇总表上面的桩号,手动来填充CAD图纸中的圆。我就思考如果今后开展大批量的施工时,每天需要手动输入几百个点位我该如何处理,故实现自动填充迫在眉睫。 为实现自动填充,我首先用Visual Studio Code编写了一个CAD插件,但是效果不是很理想,因为图纸中我们需要以圆心为坐标,图纸中很多数据,很难精准选取到每个圆的坐标。后来我改变了思路,尝试使用选取圆上的某一点来进行坐标自动填充,因为每日施工汇总表中点位都有对应的坐标,且坐标即为圆心坐标,我的处理方式是,将圆心的Y坐标-1(圆半径),然后利用EXCEL求出最后的点位表,在CAD填充时批量输入坐标,最终实现了自动填充圆的功能,解放了双手。 五、总结 这些小程序的开发和优化,都是基于我对项目从施工准备到计量结束全套过程资料整理完成以后总结的经验和结果,使得这些程序不仅实用且高效,真正为项目管理带来了显著的提升。其中优化了大部分繁冗的环节,我也深刻认识到有些工作可以提前完成,且资料准备环节都是环环相扣,优化各个环节对于提高工作效率至关重要。通过将需要批量处理的重复性工作交由计算机来完成,极大的提高了项目管理人员的工作效率。编写这些程序的过程是坎坷的,期间经历了很多次的尝试、调试、挫折和失败,但是最后功能切实实现的那一刻是充满成就感的。 在当今建筑行业日益竞争激烈的环境下,各建筑企业在项目竞标过程中不断压缩报价,以求在激烈的市场竞争中占据一席之地。如何实现降本增效,既降低成本又提高效率,成为企业生存和发展的关键。我深知此次对于工作中的优化只是冰山一角,在今后的工作中,我将继续努力,不断探索和应用更多有效技术,进一步提高工作效率和质量,为项目、为公司的发展贡献更大的力量。