找回密码 注册 QQ登录
一站式解决方案

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 64212|回复: 95
打印 上一主题 下一主题

【讨论】大家来讨论,不用CAA也能做CATIA二次开发。

[复制链接]
跳转到指定楼层
1
发表于 2003-12-30 09:42:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多同行朋友,交流,分享,学习。

您需要 登录 才可以下载或查看,没有帐号?注册

x
近来发现很多朋友对CATIA二次开发很感兴趣,征得神医版大同意,为大家开个头,希望这方面有经验或感兴趣的兄弟们积极参与讨论。
  
当前,CATIA二次开发不像UG、AUTOCAD等软件,比较容易获取开发工具。CATIA的专业二次开发工具CAA现在市面上基本没有D版(反正我还没有见到有过),而一套CAA正版比CATIA本身还要贵很多。所以一般是很难支付的。这里我们先讨论不用CAA,只用CATIA本身的一些接口函数和功能进行二次开发。主要的开发方案,我知道的大概有如下几种:
1、宏(micro)——CATIA里面有一个宏录制和宏运行的功能,宏代码是基于VBA的,而且提供基本的CATIA接口调用函数。根据先前我自身所做的工作,在标准件方面的应用。先在CATIA造型的同时,启动宏录制功能,造型完成,宏代码也录制完成。这时候我们运行宏代码即可看到,CATIA将自动运行先前我们的造型过程。然后打开宏编辑器,可以看到录制好的宏各个参数都是常量,不能设变。通过手工编辑,添加相关参数变量,替换原先的常量,运行宏代码输入一组参数,即可完成设变的标准件自动建模。如果要开发完整的标准件库,我们可以通过VB编程实现,再辅以数据库表格存储各组的标准件变量值,方可完成整套参数化的标准库。
这种方案是行得通的,我们已经用这种方案开发出了,夹具和模具的参数化标准件库。
2、电子表格(excel)
3、知识工程(主要是用f(x))
第二、三点先不详细介绍,等大家来一起讨论交流。另外第一种方案里面还有许多细节需要讨论。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 赞一下!赞一下!
2
发表于 2003-12-30 10:45:58 | 只看该作者

我来谈谈知识工程吧!(个人觉得:ferarriii兄的2和3应该归为一类)
  
1977年,第五届国际人工智能联合大会上,美国斯坦福大学计算机科学系费根鲍姆(E.A.Feigenbaum)教授所作的“人工智能的艺术:知识工程课题及实例研究”特约演讲中第一次提出“知识工程KE”这个词,它的出现改变了传统的知识记载和传播的方式。知识工程(KE:Knowledge Engineering)是一个非常广泛的概念,最基本的含义就是人工智能在知识信息处理方面的发展,利用大型技术基础设施(网络平台与计算机系统),完成知识的采集、整理、加工、制作、存贮和发送的工作。一般采用“规则”的形式来存放、维护和应用所得到的知识。
知识工程具有极其广阔的应用领域,最重要的方面之一就是与CAX系统相结合,注重知识应用的CAX系统是现代制造业的关键需求。基于知识工程的CAX系统起源于20世纪90年代初的美国,最初通过与CATIA和ICAD软件相结合应用于波音公司的飞机冲压件设计中。通过近10年的发展,知识工程已成为CATIA V5软件系统的核心技术之一。
CATIA V5的知识工程主要体现为一系列智能化软件模块,包括知识工程顾问(KWA:CATIA Knowledge Advisor)、知识工程专家(KWE:CATIA Knowledge Expert)、产品知识模板(PKT:CATIA Product Knowledge Template)、业务流程知识模板(BKT:CATIA Business Process Knowledge Template)、产品工程优化(PEO:CATIA Product Engineering Optimizer)、产品功能定义(PFD:CATIA Product Function Definition)和产品功能优化(PFO:CATIA Product Function Optimization)等,通过提供方便易用的知识工程环境来创建、访问以及应用企业知识库,在保存企业知识的同时,充分利用这些宝贵经验。
(1)帮助企业把规范的设计信息、最优的设计方法和流程等隐含的知识轻易地转化为正规的显式的知识。将“知识”以参数(Parameters)、公式(Formulas)、规则(Rules)、检查(Checks)、报告(Reports)、设计表(Design Tables)、应变(Reactions)、创成式脚本(Generative Scripts)等多种形式表示出来,还可以把这些智能资产封装为产品设计模板直接使用,一方面应用了企业的最佳设计经验,另一方面也保护了企业的智能资产,并且企业可以在任何时候定义、修改、插入任何类型的“知识”。
(2)给企业提供了在产品全生命周期都可以捕捉与重用企业知识的能力。建立知识库的目的是为了在产品开发过程中所有相关技术人员都可以高效利用CATIA V5自动捕捉建立在系统中的知识。
这种独一无二的知识驱动以及产品设计方法,不仅适用于产品造型阶段,还适用于从设计分析到制造,从单个零件的设计到整个产品的电子样机,这样在设计效率上远远超过了传统的参数化或变量软件系统。CATIA V5通过知识工程还把产品开发过程中涉及到的多学科知识有机地集成在一起,从而带动企业相应各部门间的紧密联系以及产品信息共享,更好地支持了并行工程和协同设计能力。
  
(注:手上还有一篇介绍CATIA知识工程的文章正在送审,等着发表,发表以后我会征询作者的同意,把电子文档放到这里的,过段时间还将把CATIA知识工程的培训教材及模型上传)
3
发表于 2003-12-30 11:30:17 | 只看该作者
期待AIME兄的好東東!
4
发表于 2003-12-30 11:48:53 | 只看该作者
这个主题好!支持!建议不要将主题扩展得太大,否则不容易接续!
基本上要把二次开发和知识工程先分开
二次开发,是指利用编程工具对软件本身或相关功能作一个扩充,现在CATIA提供两种方法:
1、CAA RADE结合Visual C++利用达索公司提供的CAA CATIA API作CATIA软件的二次开发,这首先需要熟悉编程软件,其次对要开发的模块要熟悉,比如说,做自己的数控后处理程序。
2、VB开发,可以用复杂的VB,也可以用简单的VB Script,Marco只是调用的一种方式,严格讲不能算是编程,它可以完成简单的对话及动作重现!至于用Excel,也只是利用VB的方式之一!VB开发相对简单,但有弊端,比如互操作性不强,移植性不强!
知识工程,是CATIA给用户的工具,使用户不用借助第三方软件,不用具备专业的编程技能,就可以将企业的经验、规范积累起来,固化到软件中,在以后的重复利用或建模中可以快速得到,在工作中自动监督操作是否符合企业规范等等好处!也是我们最容易得到的好处,它包含参数化设计、Standard定义、知识模版建立等等工作,但重要的是,知识的更新!有了知识,如果没有更新,那过时的知识也是垃圾!
  
以上纯属个人意见!仅供参考!
5
发表于 2003-12-30 12:01:13 | 只看该作者
强烈支持!!!::y::y::y::y
就拿建立三维标准件库来说吧,可以用以下三种方法:
1、通过应用CATIA提供的二次开发工具RADE和库函数CAA的接口,在VC的环境中创建标准件库的应用程序。(最先进)
2、用VB提供的引用对象库,将CATIA的库文件加入程序中,引用CATIA的类对象和函数等进行二次开发。
3、使用CATIA提供的Formula 功能、Design Table功能和Catalog功能,建立和使用三维标准件库。
欢迎好的方法
6
发表于 2003-12-30 13:44:29 | 只看该作者
有没有人在做 ldf1998兄提出的第2种开发?
     用VB调用  CATIA的对象库
7
发表于 2003-12-30 15:06:11 | 只看该作者
client wrote:
有没有人在做 ldf1998兄提出的第2种开发?  
       用VB调用  CATIA的对象库

  
先前我们开发的夹具设计和模具设计系统就是用的这种方法。
8
发表于 2003-12-30 15:15:08 | 只看该作者
CATIA_Boy wrote:
这个主题好!支持!建议不要将主题扩展得太大,否则不容易接续!  
  基本上要把二次开发和知识工程先分开  
  二次开发,是指利用编程工具对软件本身或相关功能作一个扩充,现在CATIA提供两种方法:  
  1、CAA RADE结合Visual C++利用达索公司提供的CAA CATIA API作CATIA软件的二次开发,这首先需要熟悉编程软件,其次对要开发的模块要熟悉,比如说,做自己的数控后处理程序。  
  2、VB开发,可以用复杂的VB,也可以用简单的VB Script,Marco只是调用的一种方式,严格讲不能算是编程,它可以完成简单的对话及动作重现!至于用Excel,也只是利用VB的方式之一!VB开发相对简单,但有弊端,比如互操作性不强,移植性不强!  
  知识工程,是CATIA给用户的工具,使用户不用借助第三方软件,不用具备专业的编程技能,就可以将企业的经验、规范积累起来,固化到软件中,在以后的重复利用或建模中可以快速得到,在工作中自动监督操作是否符合企业规范等等好处!也是我们最容易得到的好处,它包含参数化设计、Standard定义、知识模版建立等等工作,但重要的是,知识的更新!有了知识,如果没有更新,那过时的知识也是垃圾!  
   
  以上纯属个人意见!仅供参考!

boy版大讲得好!::y
现在我们主要讨论第二种,采用VB的开发方式,当然VBScript也可以。
主要就是四种方式:micro(宏录制和运行)、excel表格(Design Table)、formula(公式)、catalog(目录,这种我不熟悉,据说是很好的方法)。
虽然有弊端,但是每个人都有条件有机会试,
等这个方面进行的差不多了,以后caa和rade方面有条件,
(我估计在明年4月就有条件了,到时候大家交流哈)
在进行基于VC的讨论。将来还有网络化的CJJ讨论哦。
这里欢迎大家把自己做过的系统界面的一些关键界面做成图片或AVI贴出来,
当然如果不涉及版权,能提供源代码或EXE可执行系统更好了。
9
发表于 2003-12-30 15:19:03 | 只看该作者
ldf1998 wrote:
强烈支持!!!::y::y::y::y  
  就拿建立三维标准件库来说吧,可以用以下三种方法:  
  1、通过应用CATIA提供的二次开发工具RADE和库函数CAA的接口,在VC的环境中创建标准件库的应用程序。(最先进)  
  2、用VB提供的引用对象库,将CATIA的库文件加入程序中,引用CATIA的类对象和函数等进行二次开发。  
  3、使用CATIA提供的Formula 功能、Design Table功能和Catalog功能,建立和使用三维标准件库。  
  欢迎好的方法

ldf1998兄,你好像在二次开发方面有不少研究,::y
多给大家讲讲啊。
多一点详细讲解,少一点框架式介绍。
谢谢。::g::g::g::g
10
发表于 2003-12-30 15:30:12 | 只看该作者
aime兄有一定的道理,
但是不归在一类,个人认为更为合适一些,
因为用f(x)并非一定要使用excel表格,
可以通过vb和数据库的接口获取参数,而且这种方式更符合一般应用程序开发的思路。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2024-12-22 13:31 , Processed in 0.041073 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

快速回复 返回顶部 返回列表