首页/文章/ 详情

如何用DeepSeek写CATIA二开脚本自动画图

1天前浏览14

乙巳蛇年,PYTHON本命

近日,一众牛马入学习讨论之群,论二次开发之事

吾观元日之时,有一物盛行,曰 深度求索

故小友纷纷加入“调教AI”之大军

是日,群中有提问者

抛出怪异代码,以问报错之由

仔细看,不得了,这代码

变量命名实规整,格式排列版面净。

方法调用似合理,但看对象无属性。

追问之下,豁然开朗

此代码乃AI所生



扯蛋的话就说到这里,接下来,小编根据自己的理解来聊聊,AI(尤其这种大语言模型)作为一个工具,应如何为我们所用。

首先必须承认的是,这种LLM在常规的程序代码,如python,c,java等方面,确实能给出准确的答案。但CATIA二次开发毕竟专业性较强,且网络上的资料相对较少,因此它有时候给出的代码并不能如我们所愿。

所以,对于那些二开小白来说,这个本是作为提升效率的工具,反倒成为了他们前进路上的绊脚石。因为没有基础,不理解代码,根部不知道AI给出的东西为什么报错,哪里报错,更别提怎么修改了。

其实,前不久,小编发过一篇AI辅助CATIA二次开发的文章。

AI来了,汽车工程师会失业吗?

今天,我们接着这个话题继续聊。

如果将完整的二次开发比作成建一座房子,而AI是个有本事但没头脑的机器人的话。

那么,你直接和他说:帮我建一座漂亮的房子!它大概率建不出你想要的东西。

但如果你自己规划了房子的框架,然后和他说:帮我准备xx规格的木材xx根,xx规格的水泥xx袋,然后把这些材料按xx规律组合起来。那么事情就会很顺利。

所以,小编还是那句话:AI不能代替人,它是一个可以被我们所用的工具。我们要取其长,避其短,将总体规划握在自己手里。

悟空本领通天,唐僧心思虔诚。但要想完成取经大业,我们要扮演的,是下这盘棋的如来佛祖

接下来,咱们就通过一个实例来一起看一下,小编是如何用AI辅助生成螺栓自动装配”功能的脚本代码的。

首先,我们尝试让AI直接写:

你会发现它最后有这么一句让人崩溃的说明:

至于它给出的下面这段代码,我就不去评价里面有多少错误了,感兴趣的同学可以自己让DeepSeek生成后运行尝试。


而合理的做法是:我们先构建思路,或者说逻辑框架,然后让AI做它擅长的部分,比如——数学计算

对于一个零件,假设里面有一些带参孔特征,那么我们可以通过遍历,结合下面的函数,获取到孔的中心和轴线这两个关键定位信息。

现在,假设有个螺栓标准件,它在绝对坐标系下的定位是这样的。

那么,我们只需要在孔的位置,构建一个三维坐标系,以上图中的红点为原点,绿线为z轴:

然后把螺栓的定位信息,通过以下函数,改成和上面轴系的定位信息一致,就实现了螺栓自动装配的功能。

到这里,事情就变得明朗起来。

那么,我们先搭代码框架:

接下来,开始问AI问题。提问的方式也最好细致一些,这样我们才可以得到能直接使用的代码。

这里,我们相当于已知原点坐标(x,y,z)和z轴方向(mz,nz,pz),让AI帮我们求出x轴和y轴的方向向量。但这个解是有无数个的。所以,我们可能要给AI一些引导,规定一下如何定义其中一个轴。

参考提问方式如下:

帮我写一段python代码,功能如下:已知一个点的坐标(xyz),z轴方向向量(mnp),现在我要构建一个三维坐标系,需要计算x轴和y轴的向量。由于解不唯一,x轴的定位可以采取如下形式:当mnp与绝对坐标系的x轴不平行时,使用绝对坐标系的x轴投影组为x轴;否则,可以以(1,2,3)的投影作为x轴。

AI给出了以下回答:

读一下代码,发现我们并不需要main函数,只需要上面的两个自定义函数。直接复 制它,粘贴到我们的代码里,那么之前用balabala代替的代码就可以写成:

最后,在特征树为下图的情况下(part1是带孔的零件,part2是螺栓)

运行我们上述写出的代码,实现的效果如下:


最最后,当然还是给出完整的代码:





来源:CATIA那点事儿
二次开发汽车CATIApython材料机器人螺栓装配
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-02-20
最近编辑:1天前
CATIA那点事儿
本科 CATIA小狼。微信公众号:CATIA那...
获赞 134粉丝 252文章 24课程 16
点赞
收藏
作者推荐

¥70 5.0
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈