CN112527269B - 一种智能p&id系统中的数据同步方法 - Google Patents
一种智能p&id系统中的数据同步方法 Download PDFInfo
- Publication number
- CN112527269B CN112527269B CN202011504870.4A CN202011504870A CN112527269B CN 112527269 B CN112527269 B CN 112527269B CN 202011504870 A CN202011504870 A CN 202011504870A CN 112527269 B CN112527269 B CN 112527269B
- Authority
- CN
- China
- Prior art keywords
- pipeline
- entity
- entities
- programming language
- storing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/56—Information retrieval; Database structures therefor; File system structures therefor of still image data having vectorial format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/18—Network design, e.g. design based on topological or interconnect aspects of utility systems, piping, heating ventilation air conditioning [HVAC] or cabling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2113/00—Details relating to the application field
- G06F2113/14—Pipes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Mathematical Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Generation (AREA)
Abstract
本发明方法公开了一种智能P&ID系统中的数据同步方法,包括使用AutoCAD二维软件新建P&ID图纸并插入全部管线对象的图形,使用ObjectARX创建一个新文件,通过C++#编程语言打开插入了全部管线对象的P&ID图纸,通过C++#编程语言读取命令读取图纸上组成每根管线的所有实体的信息并存储到图形数据库中,通过C++#编程语言遍历图形数据库中全部实体信息获取全部实体的ID号,选择P&ID图纸上任意一个实体的ID号并用C++#编程语言获取选择的实体的注册的应用程序名称,生成对应于每个实体的数据链表后人工对所有实体的数据链表中的基本信息进行扩展,然后通过C++#编程语言生成并保存组成每根管线的各个实体间的连接关系,进而生成并保存图纸上每根管线中各个实体之间的连接关系。
Description
技术领域
本发明涉及图纸上数据维护和同步的方法,尤其涉及智能P&ID系统中的数据同步方法。
背景技术
P&ID是一种管道和仪表设计软件,可应用于电力设计行业的机务和热工专业中。由于普通P&ID系统不能使图面上各实体的信息以数据的方式提取出来,管道表等表格的输出只能通过人为手动操作,因此,其作用大多作为电子图纸进行查阅。随着数字化和智能化设计系统的发展,智能P&ID系统逐渐占据了市场的主力,存在于图纸上的管道、仪表等实体信息都可以被实时保存,智能P&ID中的数据库一方面可以存储图纸、文档等对象的信息,对这些数据设置权限;还可以通过操作数据库实现这些实体信息的更新与提取。但图纸上各实体间都存在着相应的连接关系,对一个实体数据进行更改并不能使跟它存在着连接关系的其它主体随之更改,这样使得图纸绘制修改的效率大大降低,而且增加了人为操作导致错改漏改的机率。
发明内容
本发明的目的在于克服已有技术的缺点,提供一种可以遍历每条管线上所有的实体并将管头的句柄保存在每个实体的扩展数据链表中,操作简单、高效可靠、结果可视,提高了施工效率的智能P&ID系统中的数据同步方法。
本发明为解决其技术问题所采用的技术方案如下:
本发明的一种智能P&ID系统中的数据同步方法,包括以下步骤:
步骤一、使用AutoCAD二维软件新建P&ID图纸并插入全部管线对象的图形,AutoCAD 二维软件自动为组成每根管线的所有实体对象分配句柄、图层信息并生成每个实体注册的应用程序名称信息;
步骤二、使用C++#编程语言和ObjectARX接口对AutoCAD进行二次开发,具体过程如下:
第一步,使用ObjectARX创建一个新文件并保存在AutoCAD中;
第二步,在创建的新文件中通过C++#编程语言打开步骤一中的P&ID图纸,然后新建图形数据库;
第三步,通过C++#编程语言读取命令读取P&ID图纸上组成每根管线的所有实体的信息,然后存储到图形数据库中,在全部实体的信息存储到图形数据库后自动生成对应于每个实体的ID号,且每一个实体的ID号存储在AutoCAD的内存中;
第四步,通过C++#编程语言遍历图形数据库中全部实体信息获取全部实体的ID号,选择P&ID图纸上任意一个实体的ID号,用C++#编程语言获取选择的实体的注册的应用程序名称;
第五步,通过C++#编程语言生成对应于每个实体的数据链表,然后人工对所有实体的数据链表中的基本信息进行扩展,并将每个实体的扩展数据以该实体注册的应用程序名称为开头写入到扩展数据链表;
步骤三、生成并保存组成每根管线的各个实体间的连接关系,具体步骤为:
第一步,将AutoCAD中第i根管线的起点和终点分别标记为STi和SPi并将标记为STi 和SPi的实体称为第i根管线的管头和管尾,所述的i值代表图纸上每根管线的序号;
第二步,使用C++#编程语言读取命令从第一根管线的管头至管尾遍历读取第一根管线上的所有实体并依次存储至第一根管线数据库;
第三步,采用第二步的方法生成图纸上与每根管线对应的管线数据库;
第四步,通过C++#编程语言将第i根管线的管头的直径数据写入到第i根管线的管头的扩展数据链表中,并获取第i根管线中管头的句柄值;
第五步,通过C++#编程语言将第i根管线数据库中全部实体的扩展数据链表分别写入上一步获取的管头的句柄值并保存;
步骤四、采用步骤三的方法生成并保存图纸上每根管线中各个实体之间的连接关系。
本发明方法通过二维软件二次开发技术,可以遍历每条管线上所有的实体并将管头的句柄保存在每个实体的扩展数据链表中,用于解决智能P&ID系统中所涉及的数据同步问题,操作简单、高效可靠、结果可视,提高了施工效率。
具体实施方式
下面结合具体实施方式对本发明方法作进一步说明。
本发明的一种智能P&ID系统中的数据同步方法,包括以下步骤:
步骤一、使用AutoCAD二维软件新建P&ID图纸并插入全部管线对象的图形,AutoCAD 二维软件自动为组成每根管线的所有实体对象分配句柄、图层信息并生成每个实体(管道、阀门等)注册的应用程序名称信息。
步骤二、使用C++#编程语言和ObjectARX接口对AutoCAD进行二次开发,具体过程如下:
第一步,使用ObjectARX创建一个新文件并保存在AutoCAD中;
第二步,在创建的新文件中通过C++#编程语言打开步骤一中的P&ID图纸,然后新建图形数据库;
第三步,通过C++#编程语言读取命令读取P&ID图纸上组成每根管线的所有实体(管道、阀门等)的信息(如句柄、图层信息、应用程序名称信息),然后存储到图形数据库中,在全部实体(管道、阀门等)的信息存储到图形数据库后自动生成对应于每个实体的ID号,且每一个实体的ID号存储在AutoCAD的内存中;
第四步,通过C++#编程语言遍历图形数据库中全部实体信息获取全部实体的ID号,选择P&ID图纸上任意一个实体的ID号,用C++#编程语言获取选择的实体的注册的应用程序名称。
第五步,通过C++#编程语言生成对应于每个实体的数据链表,然后人工对所有实体的数据链表中的基本信息进行扩展,并将每个实体的扩展数据以该实体注册的应用程序名称为开头写入到扩展数据链表(如:可以添加所有实体注册的应用程序使用的内存数量);
步骤三、生成并保存组成每根管线的各个实体间的连接关系,具体步骤为:
第一步,将AutoCAD中第i根管线的起点和终点分别标记为STi和SPi并将标记为STi 和SPi的实体称为第i根管线的管头和管尾,所述的i值代表图纸上每根管线的序号;
第二步,使用C++#编程语言读取命令从第一根管线的管头至管尾遍历读取第一根管线上的所有实体并依次存储至第一根管线数据库;
第三步,采用第二步的方法生成图纸上与每根管线对应的管线数据库;
第四步,通过C++#编程语言将第i根管线的管头的直径数据写入到第i根管线的管头的扩展数据链表中,并获取第i根管线中管头的句柄值;
第五步,通过C++#编程语言将第i根管线数据库中全部实体的扩展数据链表分别写入上一步获取的管头的句柄值并保存。
步骤四、采用步骤三的方法生成并保存图纸上每根管线中各个实体之间的连接关系。
通过第i根管线中各个实体之间连接关系的生成,可以实现组成第i根管线的所有实体中与管头直径数据有关的数据的自动更新。对第i根管线的管头直径数据进行更改时,只需通过C++#编程语言对第i根管线中管头的扩展数据链表中的直径数据进行更改,则该根管线中其它实体的扩展数据链表中与管头直径有关的数据就会自动更新。
Claims (1)
1.一种智能P&ID系统中的数据同步方法,其特征在于包括以下步骤:
步骤一、使用AutoCAD二维软件新建P&ID图纸并插入全部管线对象的图形,AutoCAD二维软件自动为组成每根管线的所有实体对象分配句柄、图层信息并生成每个实体注册的应用程序名称信息;
步骤二、使用C++#编程语言和ObjectARX接口对AutoCAD进行二次开发,具体过程如下:
第一步,使用ObjectARX创建一个新文件并保存在AutoCAD中;
第二步,在创建的新文件中通过C++#编程语言打开步骤一中的P&ID图纸,然后新建图形数据库;
第三步,通过C++#编程语言读取命令读取P&ID图纸上组成每根管线的所有实体的信息,然后存储到图形数据库中,在全部实体的信息存储到图形数据库后自动生成对应于每个实体的ID号,且每一个实体的ID号存储在AutoCAD的内存中;
第四步,通过C++#编程语言遍历图形数据库中全部实体信息获取全部实体的ID号,选择P&ID图纸上任意一个实体的ID号,用C++#编程语言获取选择的实体的注册的应用程序名称;
第五步,通过C++#编程语言生成对应于每个实体的数据链表,然后人工对所有实体的数据链表中的基本信息进行扩展,并将每个实体的扩展数据以该实体注册的应用程序名称为开头写入到扩展数据链表;
步骤三、生成并保存组成每根管线的各个实体间的连接关系,具体步骤为:
第一步,将AutoCAD中第i根管线的起点和终点分别标记为STi和SPi并将标记为STi和SPi的实体称为第i根管线的管头和管尾,所述的i值代表图纸上每根管线的序号;
第二步,使用C++#编程语言读取命令从第一根管线的管头至管尾遍历读取第一根管线上的所有实体并依次存储至第一根管线数据库;
第三步,采用第二步的方法生成图纸上与每根管线对应的管线数据库;
第四步,通过C++#编程语言将第i根管线的管头的直径数据写入到第i根管线的管头的扩展数据链表中,并获取第i根管线中管头的句柄值;
第五步,通过C++#编程语言将第i根管线数据库中全部实体的扩展数据链表分别写入上一步获取的管头的句柄值并保存;
步骤四、采用步骤三的方法生成并保存图纸上每根管线中各个实体之间的连接关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011504870.4A CN112527269B (zh) | 2020-12-18 | 2020-12-18 | 一种智能p&id系统中的数据同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011504870.4A CN112527269B (zh) | 2020-12-18 | 2020-12-18 | 一种智能p&id系统中的数据同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112527269A CN112527269A (zh) | 2021-03-19 |
CN112527269B true CN112527269B (zh) | 2022-08-09 |
Family
ID=75001433
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011504870.4A Active CN112527269B (zh) | 2020-12-18 | 2020-12-18 | 一种智能p&id系统中的数据同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527269B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020011677A (ko) * | 2000-08-03 | 2002-02-09 | (주)키소 | 2차원 배관엔지니어링 도면을 3차원 캐드데이타로자동변환 및 모델제작하는 프로그램에 의한 설계방법 |
CN102830979A (zh) * | 2012-08-30 | 2012-12-19 | 江苏省交通科学研究院股份有限公司 | 基于ObjectArx的CAD图纸信息批量处理方法 |
CN103455548A (zh) * | 2013-07-22 | 2013-12-18 | 吴献文 | 一种实现dwg图形属性和数据库同步的方法 |
EP3029535A2 (en) * | 2014-12-03 | 2016-06-08 | Rockwell Automation Technologies, Inc. | P&ID and control system synchronization |
CN110362705A (zh) * | 2019-06-05 | 2019-10-22 | 北京中科辅龙科技股份有限公司 | 智能p&id管理系统及方法 |
-
2020
- 2020-12-18 CN CN202011504870.4A patent/CN112527269B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020011677A (ko) * | 2000-08-03 | 2002-02-09 | (주)키소 | 2차원 배관엔지니어링 도면을 3차원 캐드데이타로자동변환 및 모델제작하는 프로그램에 의한 설계방법 |
CN102830979A (zh) * | 2012-08-30 | 2012-12-19 | 江苏省交通科学研究院股份有限公司 | 基于ObjectArx的CAD图纸信息批量处理方法 |
CN103455548A (zh) * | 2013-07-22 | 2013-12-18 | 吴献文 | 一种实现dwg图形属性和数据库同步的方法 |
EP3029535A2 (en) * | 2014-12-03 | 2016-06-08 | Rockwell Automation Technologies, Inc. | P&ID and control system synchronization |
CN110362705A (zh) * | 2019-06-05 | 2019-10-22 | 北京中科辅龙科技股份有限公司 | 智能p&id管理系统及方法 |
Non-Patent Citations (2)
Title |
---|
Optimization for P&ID Development: The Time Efficient Approach;Gaurav Bandal; Manoj Sidhapura; Keshwanand Appalwar; Pramod Kanj;《2018 3rd IEEE International Conference on Recent Trends in Electronics, Information & Communication Technology》;IEEE;20200227;全文 * |
结合Objectarx和C#进行AutoCAD二次开发框架的研究;于萧榕;郭昌言;陈刚;《科学技术与工程》;20100718;第10卷(第20期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112527269A (zh) | 2021-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103927419A (zh) | 基于ArcGIS平台的CAD城市管线竣工图的数据处理方法及系统 | |
TW576993B (en) | Automatic generation of join graphs for relational database queries | |
US6904430B1 (en) | Method and system for efficiently identifying differences between large files | |
CN103995854A (zh) | 一种设备跨版本升级方法和装置 | |
CN102999524B (zh) | 一种文档关联检索方法及系统 | |
CN104915383B (zh) | 一种通用数据库访问中自动适配对象的方法 | |
CN109272571B (zh) | 一种PDS三维数据转换为Flowmaster模型的系统和方法 | |
CN105224527B (zh) | 适用于多种目的表更新方式的通用etl方法 | |
CN112527269B (zh) | 一种智能p&id系统中的数据同步方法 | |
CN105095457B (zh) | 历史数据存储管理方法 | |
CN105550254A (zh) | 一种icd信息自动生成icd信息数据库的方法 | |
CN111625543B (zh) | 一种基于HBase表实现全局单调递增的序列的方法 | |
CN115034027B (zh) | 一种gis数据点线映射方法与系统 | |
CN109376248B (zh) | 基于增量学习的知识库构建及偏序结构图生成方法 | |
CN111475159A (zh) | 一种自动生成程序的方法、装置及存储介质 | |
CN101295245B (zh) | 一种基于模型信息的智能提取方法 | |
KR20200097953A (ko) | 지능형 계통 관리 시스템 및 방법 | |
CN104462206A (zh) | 一种通用的数据库序列生成方法 | |
CN110333906B (zh) | 一种快速处理预留设备的方法、系统、装置和存储介质 | |
CN110110024B (zh) | 一种大容量vct文件导入空间数据库方法 | |
CN112632687A (zh) | 一种bim正向设计方法、系统、计算机设备及存储介质 | |
Li et al. | Feature modification framework for feature based design systems | |
CN112464402B (zh) | 一种基于e3d软件的管线自动配料方法 | |
CN117056344B (zh) | 一种对大规模固定连接模式的多表查询的数据建模方法 | |
CN115130186A (zh) | 一种基于建模软件快速创建管道系统的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |