PDM系统总体设计
通用接口总体设计思路 随着需求的变化,软件供应商或者系统集成商,需要按照相关联的业务需求来进行系统的设计集成工作。即提供给用户系统的定制等功能来满足企业产品开发需求
产品应用
通用接口总体设计思路
随着需求的变化,软件供应商或者系统集成商,需要按照相关联的业务需求来进行系统的设计集成工作。即提供给用户系统的定制等功能来满足企业产品开发需求、提高开发效率。
单位可以对通用化的集成功能进行完善和升级,使用开发系统的通用化系统定制功能进行个系统的用户个性化开发,使此通用系统的系统管理人员可以根据自身需求进行快速灵活的个性化定义及开发,使需求可以快速得到满足,系统使用者能够快速,稳定的使用到集成功能,并能够提供完备的技术支持方式,达到熟练使用的效果,对企业战略的发展提供催化剂,最终的目标是以不变应万变,将先进管理的综合内涵融入到系统中,以提高产品的开发速度。
CAD系统集成的定制功能主要体现在PDM系统中的产品属性定义、模型定义、数据输出格式三方面内容。
按用户角色来分,可以分为系统管理员和系统使用人员。系统管理员主要负责定义产品特征属性、产品数据模型定义和数据输出格式标准等内容。而操作员级只是针对系统运行界面进行控制,完成CAD与PDM系统进行集成的操作。
从定制的方式来分,可以根据企业需求通过配置的手段在已有数据模型的基础上进行配置,最终形成符合用户需求的集成系统。另一种是设计的系统结构是开放的,用户从系统结构所提供的众多模块中,更改模块的一个或多个操作,组合成企业需要的集成系统。
本系统采取的是通用驱动选择的方式,集成来自各个工具端接口的数据源,建立了对使用者信息的单点集中获取方法,同时定义了一系列查询规则来满足用户对系统的各类多样化需求。
开发过程中重点及难点
本系统集成方案的设计中需要重点考虑以下两个重难点:
1.统一数据模型的建立
在设计caD系统集成过程中,建立产品结构件模型至关重要。这个产品结构模型应该能够完整地、全面地、准确地描述零件信息。除了零件本身的信息外,还应包含有装配信息、描述信息等。
建立基于统一数据模型的集成体系结构,是在基于Web的集成体系结构的基础上,增加了统一数据模型处理的内容,并引入了新的WebService, XML技术,引入技术使集成体系结构更具有通用性,能对通用信息系统实现相关集成。
定义一个通用的集成体系结构还需要解决很多问题,比如定义规范的语义元模型,配置图形化建模环境,将模型信息进行存储的库,对库的管理与访问,数据模型与其他系统业务模型或系统业务模型之间的匹配关系,使用中间件方式进行比对等。其中使用数据模型及库是进行此部分工作的核心,使用了次种类结构,可以通过此结构进行设计端与系统端,或者其他异构系统进行数据传递,交互。
2.通用信息获取传递
在CAD系统集成中,数据的获取和转换是非常重要的一环,要建立零件产品结构模型,就必须实现信息集成,这就涉及不同的工具软件与PDM系统的数据交换。通过使用CAD的开发工具包进行开发,自定义接口函数进行数据传递与交换,将从设计工具中所定义并初始化后的有关对象的信息交由PDM系统进行处理与存储。所以初始化这些被调用的数据接口函数,是非常重要的,这里尽量使用成熟的可进行借鉴的健壮代码进行开发调用。
3.2.3CAD端系统设计
根据前面的分析,在PDM系统使用时,cAD软件具有多样性,二次开发环境也不尽相同,但是不管怎样,在进行了分层设计后,需要在CAD层上实现的操作,整体上已经统一。
如图3-2所示,需要在CAD层中实现:
用户操作界面,如菜单与命令,设计出来的界面应符合设计师的使用习惯。
从图纸中提取需要的信息。
○根据设计师的操作,把信息通过SOCKET方式发送至JAVA程序。
1.信息的提取和组织
这里的核心问题,就是如何从CAD端中提取所需要的信息,和如何组织这些
信息。
○提取信息:
信息的提取,不同的设计工具具有不同的方式,一般设计工具的二次开发包,均有信提取的相应函数或命令,直接调用即可,根据设计工具的不同需要进行不同的工具端开发,成提取所需要的信息,在无法进行开发时,可采用设计师手填的方式进行数据初始化。
○组织信息:
信息提取出后,需要按照一定的形式规则进行组织,这里的信息组织并不困难,由于提取到的信息再复杂,也就是一树状结构,所以,本接口采用的方式是自定义的XML格式来组织信息。
2.功能模块划分
根据CAD方面需要实现的一些操作,如图3-3所示将其划分为如下几个功能模块:
工具端:即CAD端,从CAD方面提取到所需要的各类信息,因CAD软件的二次开发功能包的不同而实现方式不同,这里无法实现通用化。控制中枢:按照最终设计师的功能,相应设计师的操作,这里为CAD方面的控制枢纽,因CAD软件菜单的注册方式不同而有所差异,大体上的结构式一样的。
Socket通信功能:负责与JAVA端通信,此为通用模块。通用模块:提供工具端需要的信息,也为通用模块,保存了系统中相应的工具类、界面控制信息等。
通用接口框架系统设计
此部分为此通用接口实现的重点,主要包含的内容就是如何将cAD端系统提取出来的数据向PDM系统内进行传递,PDM系统同时能够返回相应信息,在针对每个特定业务场景时均可使用通用的系统消息传递方式进行数据传递。
图3-4描述的是系统集成方案的总体框架图,总的说来可以分为集成接口和可定制部分两大部分。
1.集成系统方式
集成系统分为以下几个部分:CAD驱动、界面管理、信息提取、特征建模、PDM接口,其功能分别如下:
◎CAD马区动
通过调用CAD驱动模块,系统可以提取CAD数据文件信息,并按照一定的数据格式进行输出,此部分为前端操作。
◎界面管理
主要用于和用户进行交互,用户通过界面操作,实现PDM系统与工具软件的集成操作,此部分为为用户界面友好、系统可用的必须功能,直接简洁明了的进行系统功能操作,并在此部分对需要传递的信息进行再次确认,为系统实现功能的必要前提。
◎信息提取
也叫驱动管理器。系统通过驱动管理器调用不同CAD工具软件的驱动,提取数据文件的信息,并将其转换为集成系统需要的数据结构进行输出,此部分需要单独设置相应的XML文件进行流对象传递信息,并必须确保相应信息能够完整准确传递。
◎特征建模
按照客户的需求建立产品结构及文档模型,建模过程中需要用户根据配置文件进行定制化,此部分需要按照PDM系统的不同要求进行不同功能模块的初始化。
◎PDM接口
通过此接口,集成系统可以和PDM系统进行数据交互,在PDM系统中创建文档及产品结构模型,并输出PDM系统中的信息到集成系统。
2.可定制部分
系统集成方案提供了两种定制机制,一种是通过修改配置文件来实现定制,另一种是通过更改模块操作来完成。
通过修改配置文件,用户可以定制的内容主要有:
□产品属性定义
按照配置文件,对PDM系统进行映射,根据PDM系统相应属性进行属性映射及调整。
□模型定义
按照配置文件,对PDM系统中模型的对象类,关系类进行映射。
□数据输出格式
按照配置文件,输出一定格式及顺序的报表,产生实体XML文件并进行传输。通过更改模块操作用户可以定制以下内容:
□增加驱动,成不同厂商的工具软件,针对不同的CAD工具,可接受并识别处理不同CAD工具传递来的信息,并分类将不同CAD工具信息按照PDM系统的约定进行数据处理。
□更改PDM系统接口,集成不同厂商的PDM系统,针对不同的PDM系统,工具可实现对不同PDM系统内相同数据的保存。
□更改特征建模模块,更改模型中属性值的判断,针对不同的属性值,不同的业务需求,应能够满足响应系统的不同属性值判断,并可增加调整,如不能在相同系统内创建同图号文档。
在集成方案中实现不同功能时的信息的流向是不同的,通过集成系统,系统可以实现如下功能:
图3-_5描述的是注册图纸/导入产品结构、导入历史数据功能的信息流,具体的过程如下:
1.用户选择加载图纸,系统调用工具软件驱动程序读取数据文件信息并按照规则建立数据模型;
2.用户选择注册图纸,系统调用PDM系统接口模块在PDM系统中注册数据项,创建相应的文档、零部件及他们之间的关系;
3.用户选择导入产品结构,系统调用PDM系统接口在PDM系统中创建相应的产品结构;
4.用户选择历史数据导入,系统调用PDM系统接口在PDM系统中注册历史数据,创建产品结构。
图3-6部分描述的是查询产品结构或图文档的信息流,具体的过程如下:
1.用户输入查询项并选择查询零部件,系统调用PDM系统模块查询产品结构并显示给用户;
2.用户选择要创建明细表的零部件,系统调用PDM系统模块获取文档及产品结构信息;
PDM系统端设计
根据前面的分析,PDM系统与cAD设计工具,存在着一对多的关系,接口,实现的功能就是一头连着PDM系统一头连接着CAD设计工具。对于PDM端,出于开发效率与通用性的考虑,采用Java作为开发语言是非常合适的。但是对于CAD端,是无法固定二次开发语言的,不同的CAD软件,使用的二次开发语言均不相同,对于这种情况,我们在接口内部,对接口的实现进行分层:PDM层(对应PDM端)和CAD层(对应CAD端)。这样,就可以有效地把PDM端和CAD端解决的不同问题分离开,独立进行解决,可以增强接口代码的重用性和接口维护时的问题定位。
PDM系统提供Web调用方法,可以通过PDM系统提供的SOA接口实现,只要保证在OSGi框架中预留接口,注册服务对不同业务实现的不同处理即可,其中主要的难点还是集中在如何实现分层的设计。
接口的分层,带来的首要问题是层与层之间的通信问题:PDM系统层和CAD层使用什么方式或机制来进行通信,这事实上不涉及PDM端和CAD端,而是操作系统的问题,一般来说,选择一个绝大多数操作系统都支持的通信模式,是一个必须的选择,比如文件,管道,SOCKET等,都是不错的选择。但是本接口选择SOCKET方式,原因如下:
1.SOCKET在WINDOWS和UNIX/LINUX下都实现了,有基本相同的规则定义,采用网络协议进行通信,更具有通用性。
2.对于文件方式来说,SOCKET通信更快加速,减少多次文件读写对速度的影响
3.对于管道方式来说,SOCKET通信的可操作性更好,灵活性更大。
本文为御云PLM软件原创文章,如想转载,请注明原文网址摘自于
http://www.plmpdm.cn/zxplm/197.html,请注明出处;谢谢配合!
随着需求的变化,软件供应商或者系统集成商,需要按照相关联的业务需求来进行系统的设计集成工作。即提供给用户系统的定制等功能来满足企业产品开发需求、提高开发效率。
单位可以对通用化的集成功能进行完善和升级,使用开发系统的通用化系统定制功能进行个系统的用户个性化开发,使此通用系统的系统管理人员可以根据自身需求进行快速灵活的个性化定义及开发,使需求可以快速得到满足,系统使用者能够快速,稳定的使用到集成功能,并能够提供完备的技术支持方式,达到熟练使用的效果,对企业战略的发展提供催化剂,最终的目标是以不变应万变,将先进管理的综合内涵融入到系统中,以提高产品的开发速度。
CAD系统集成的定制功能主要体现在PDM系统中的产品属性定义、模型定义、数据输出格式三方面内容。
按用户角色来分,可以分为系统管理员和系统使用人员。系统管理员主要负责定义产品特征属性、产品数据模型定义和数据输出格式标准等内容。而操作员级只是针对系统运行界面进行控制,完成CAD与PDM系统进行集成的操作。
从定制的方式来分,可以根据企业需求通过配置的手段在已有数据模型的基础上进行配置,最终形成符合用户需求的集成系统。另一种是设计的系统结构是开放的,用户从系统结构所提供的众多模块中,更改模块的一个或多个操作,组合成企业需要的集成系统。
本系统采取的是通用驱动选择的方式,集成来自各个工具端接口的数据源,建立了对使用者信息的单点集中获取方法,同时定义了一系列查询规则来满足用户对系统的各类多样化需求。
开发过程中重点及难点
本系统集成方案的设计中需要重点考虑以下两个重难点:
1.统一数据模型的建立
在设计caD系统集成过程中,建立产品结构件模型至关重要。这个产品结构模型应该能够完整地、全面地、准确地描述零件信息。除了零件本身的信息外,还应包含有装配信息、描述信息等。
建立基于统一数据模型的集成体系结构,是在基于Web的集成体系结构的基础上,增加了统一数据模型处理的内容,并引入了新的WebService, XML技术,引入技术使集成体系结构更具有通用性,能对通用信息系统实现相关集成。
定义一个通用的集成体系结构还需要解决很多问题,比如定义规范的语义元模型,配置图形化建模环境,将模型信息进行存储的库,对库的管理与访问,数据模型与其他系统业务模型或系统业务模型之间的匹配关系,使用中间件方式进行比对等。其中使用数据模型及库是进行此部分工作的核心,使用了次种类结构,可以通过此结构进行设计端与系统端,或者其他异构系统进行数据传递,交互。
2.通用信息获取传递
在CAD系统集成中,数据的获取和转换是非常重要的一环,要建立零件产品结构模型,就必须实现信息集成,这就涉及不同的工具软件与PDM系统的数据交换。通过使用CAD的开发工具包进行开发,自定义接口函数进行数据传递与交换,将从设计工具中所定义并初始化后的有关对象的信息交由PDM系统进行处理与存储。所以初始化这些被调用的数据接口函数,是非常重要的,这里尽量使用成熟的可进行借鉴的健壮代码进行开发调用。
3.2.3CAD端系统设计
根据前面的分析,在PDM系统使用时,cAD软件具有多样性,二次开发环境也不尽相同,但是不管怎样,在进行了分层设计后,需要在CAD层上实现的操作,整体上已经统一。
用户操作界面,如菜单与命令,设计出来的界面应符合设计师的使用习惯。
从图纸中提取需要的信息。
○根据设计师的操作,把信息通过SOCKET方式发送至JAVA程序。
1.信息的提取和组织
这里的核心问题,就是如何从CAD端中提取所需要的信息,和如何组织这些
信息。
○提取信息:
信息的提取,不同的设计工具具有不同的方式,一般设计工具的二次开发包,均有信提取的相应函数或命令,直接调用即可,根据设计工具的不同需要进行不同的工具端开发,成提取所需要的信息,在无法进行开发时,可采用设计师手填的方式进行数据初始化。
○组织信息:
信息提取出后,需要按照一定的形式规则进行组织,这里的信息组织并不困难,由于提取到的信息再复杂,也就是一树状结构,所以,本接口采用的方式是自定义的XML格式来组织信息。
2.功能模块划分
根据CAD方面需要实现的一些操作,如图3-3所示将其划分为如下几个功能模块:
Socket通信功能:负责与JAVA端通信,此为通用模块。通用模块:提供工具端需要的信息,也为通用模块,保存了系统中相应的工具类、界面控制信息等。
通用接口框架系统设计
此部分为此通用接口实现的重点,主要包含的内容就是如何将cAD端系统提取出来的数据向PDM系统内进行传递,PDM系统同时能够返回相应信息,在针对每个特定业务场景时均可使用通用的系统消息传递方式进行数据传递。
1.集成系统方式
集成系统分为以下几个部分:CAD驱动、界面管理、信息提取、特征建模、PDM接口,其功能分别如下:
◎CAD马区动
通过调用CAD驱动模块,系统可以提取CAD数据文件信息,并按照一定的数据格式进行输出,此部分为前端操作。
◎界面管理
主要用于和用户进行交互,用户通过界面操作,实现PDM系统与工具软件的集成操作,此部分为为用户界面友好、系统可用的必须功能,直接简洁明了的进行系统功能操作,并在此部分对需要传递的信息进行再次确认,为系统实现功能的必要前提。
◎信息提取
也叫驱动管理器。系统通过驱动管理器调用不同CAD工具软件的驱动,提取数据文件的信息,并将其转换为集成系统需要的数据结构进行输出,此部分需要单独设置相应的XML文件进行流对象传递信息,并必须确保相应信息能够完整准确传递。
◎特征建模
按照客户的需求建立产品结构及文档模型,建模过程中需要用户根据配置文件进行定制化,此部分需要按照PDM系统的不同要求进行不同功能模块的初始化。
◎PDM接口
通过此接口,集成系统可以和PDM系统进行数据交互,在PDM系统中创建文档及产品结构模型,并输出PDM系统中的信息到集成系统。
2.可定制部分
系统集成方案提供了两种定制机制,一种是通过修改配置文件来实现定制,另一种是通过更改模块操作来完成。
通过修改配置文件,用户可以定制的内容主要有:
□产品属性定义
按照配置文件,对PDM系统进行映射,根据PDM系统相应属性进行属性映射及调整。
□模型定义
按照配置文件,对PDM系统中模型的对象类,关系类进行映射。
□数据输出格式
按照配置文件,输出一定格式及顺序的报表,产生实体XML文件并进行传输。通过更改模块操作用户可以定制以下内容:
□增加驱动,成不同厂商的工具软件,针对不同的CAD工具,可接受并识别处理不同CAD工具传递来的信息,并分类将不同CAD工具信息按照PDM系统的约定进行数据处理。
□更改PDM系统接口,集成不同厂商的PDM系统,针对不同的PDM系统,工具可实现对不同PDM系统内相同数据的保存。
□更改特征建模模块,更改模型中属性值的判断,针对不同的属性值,不同的业务需求,应能够满足响应系统的不同属性值判断,并可增加调整,如不能在相同系统内创建同图号文档。
在集成方案中实现不同功能时的信息的流向是不同的,通过集成系统,系统可以实现如下功能:
1.用户选择加载图纸,系统调用工具软件驱动程序读取数据文件信息并按照规则建立数据模型;
2.用户选择注册图纸,系统调用PDM系统接口模块在PDM系统中注册数据项,创建相应的文档、零部件及他们之间的关系;
3.用户选择导入产品结构,系统调用PDM系统接口在PDM系统中创建相应的产品结构;
4.用户选择历史数据导入,系统调用PDM系统接口在PDM系统中注册历史数据,创建产品结构。
1.用户输入查询项并选择查询零部件,系统调用PDM系统模块查询产品结构并显示给用户;
2.用户选择要创建明细表的零部件,系统调用PDM系统模块获取文档及产品结构信息;
PDM系统端设计
根据前面的分析,PDM系统与cAD设计工具,存在着一对多的关系,接口,实现的功能就是一头连着PDM系统一头连接着CAD设计工具。对于PDM端,出于开发效率与通用性的考虑,采用Java作为开发语言是非常合适的。但是对于CAD端,是无法固定二次开发语言的,不同的CAD软件,使用的二次开发语言均不相同,对于这种情况,我们在接口内部,对接口的实现进行分层:PDM层(对应PDM端)和CAD层(对应CAD端)。这样,就可以有效地把PDM端和CAD端解决的不同问题分离开,独立进行解决,可以增强接口代码的重用性和接口维护时的问题定位。
PDM系统提供Web调用方法,可以通过PDM系统提供的SOA接口实现,只要保证在OSGi框架中预留接口,注册服务对不同业务实现的不同处理即可,其中主要的难点还是集中在如何实现分层的设计。
接口的分层,带来的首要问题是层与层之间的通信问题:PDM系统层和CAD层使用什么方式或机制来进行通信,这事实上不涉及PDM端和CAD端,而是操作系统的问题,一般来说,选择一个绝大多数操作系统都支持的通信模式,是一个必须的选择,比如文件,管道,SOCKET等,都是不错的选择。但是本接口选择SOCKET方式,原因如下:
1.SOCKET在WINDOWS和UNIX/LINUX下都实现了,有基本相同的规则定义,采用网络协议进行通信,更具有通用性。
2.对于文件方式来说,SOCKET通信更快加速,减少多次文件读写对速度的影响
3.对于管道方式来说,SOCKET通信的可操作性更好,灵活性更大。
本文为御云PLM软件原创文章,如想转载,请注明原文网址摘自于
http://www.plmpdm.cn/zxplm/197.html,请注明出处;谢谢配合!