CN116360646A - 工业数字孪生系统功能模块化方法 - Google Patents
工业数字孪生系统功能模块化方法 Download PDFInfo
- Publication number
- CN116360646A CN116360646A CN202310191538.4A CN202310191538A CN116360646A CN 116360646 A CN116360646 A CN 116360646A CN 202310191538 A CN202310191538 A CN 202310191538A CN 116360646 A CN116360646 A CN 116360646A
- Authority
- CN
- China
- Prior art keywords
- interface
- library
- model
- production line
- virtual
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- 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
- 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/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Evolutionary Computation (AREA)
- Architecture (AREA)
- Computer Graphics (AREA)
- Computational Mathematics (AREA)
- Processing Or Creating Images (AREA)
Abstract
工业数字孪生系统功能模块化方法,包括:1)设计并实现孪生模型库;2)设计并实现材质库,对材质进行分类、整理,以简明形式显示材质信息;3)设计并实现接口库,对接口组件进行分类、整理,提供区域调整、对象显示与管理、格式检测和数据实时刷新四项功能,实现对接口组件和数值对象的快捷操作以及对数据的查看、监测和管理;4)设计并实现脚本库,对功能脚本进行分类、整理;5)基于四类功能库快速构建工业生产线的虚拟场景,并实现虚拟生产线的仿真验证和虚拟调试;6)在完成虚拟调试的基础上,将虚拟生产线与实际生产线相连,通过接口组件实现孪生数据的采集与交互,进而实现生产线的虚实交互。
Description
技术领域
本发明涉及工业数字孪生领域,设计一种工业数字孪生系统功能模块化方法。
背景技术
智能制造是驱动未来产业发展的引擎,促进了传统制造业向智能化制造产业的转变。伴随着新一代信息技术的快速发展与应用,数字孪生技术逐渐成为智能制造发展的新趋势,工业制造也正朝着智能化、数字化发展。因此,在数字孪生系统构建过程中,研究和开发便捷、高效、灵活的功能模块和工具组件具有重要意义。
美国Michigan大学教授Michael Grieves将数字孪生定义为包含物理原型、虚拟实体和孪生环境的三维模型。北航陶飞团队对Grieves教授的三维模型进行扩展,增加了孪生数据和服务两个维度,提出了数字孪生五维模型,其中服务是指对数字孪生系统应用过程中所需的数据、模型、算法、仿真、结构进行服务化封装。实现良好的虚实交互效果、实时监测生产线与车间等加工状况、预测设备故障和使用寿命等,是构建数字孪生系统追求的目标。但是,在数字孪生系统构建过程中,由于设备模型众多,脚本功能各异、操作步骤繁琐和数据量多等各种因素,导致生产线数字孪生构建的人力和时间成本较大、效率不高以及通用性低等问题。
然而,当前许多工业数字孪生软件主要针对某一类产品的加工、装配而设计,无法快速换线以适应其他加工工艺,不具备通用性。也有一部分工业数字孪生软件将通用、灵活作为设计目的,能够面向不同工艺实现工业场景的转换,但是操作流程较为繁琐,缺乏便捷性,上手难度较大。因此,如何在数字孪生系统构建过程中简化操作流程、减少重复工作,进而加快孪生系统构建速度、减少构建成本、提高构建效率,是设计和实现数字孪生系统的重要环节之一。
发明内容
本发明要克服现有技术的上述缺陷,提供一种工业数字孪生系统功能模块化方法。
本发明基于Unity3D引擎提供的UI系统,从模型构建、功能设计、仿真驱动、虚实交互等多方面进行服务化封装,研究并开发模型库、材质库、接口库和脚本库这四类功能库,以一种“库群”的服务化封装方法来实现快速、高效构建数字孪生系统的目的。
为了解决上述技术问题,本发明的一种工业数字孪生系统功能模块化方法,包括如下步骤:
步骤S1,设计并实现孪生模型库,包含布局规划和功能实现。将常用设备的三维模型导入Unity3D中进行处理和配置,构建成为数字孪生模型,然后将各个孪生模型进行分类,并封装导入模型库中;
步骤S2,设计并实现材质库,包含布局规划和功能实现。创建尽可能多的材质球,将各个材质球进行分类,并封装导入材质库中;
步骤S3,设计并实现接口库,包含布局规划和功能实现。将接口脚本封装成接口组件,将接口组件进行分类并封装导入接口库中;将接口数据实例化,通过接口库将接口数据与接口组件相关联;
步骤S4,设计并实现脚本库,包含布局规划和功能实现。将构建一个数字孪生系统所需的各类脚本进行分类,并封装导入脚本库中;
步骤S5,基于所构建的四类功能库,构建一条工业生产线的虚拟场景,实现产线的仿真验证和虚拟调试;
步骤S6,通过接口组件将虚拟生产线与物理生产线进行连接,实现生产线的虚实交互。
其中,所述步骤S1具体包括:
根据模型的使用需求规划合适的模型库界面布局和功能设计。首先,考虑到模型应当分类明确,且能够通过选择类别来显示不同类型的模型,故将模型库界面分为左右两块区域,左侧区域为选择模型类型的菜单栏,可将模型分为机械臂、末端工具、机器设备、输送模块、传感器、AGV、工件和其他共八种类型;右侧区域用于显示对应类型的孪生模型,为了兼顾模型数量多且模型内容详细的要求,提出了一种包含“库浏览”模式和“单设备浏览”模式的“双模式混合”的模型库浏览模式。“库浏览”模式下,模型库显示所有的孪生模型,但是模型内容简洁,仅以图标、文字标签的方式来显示模型的名称、外观和简单描述信息;“单设备浏览”模式下,为进一步详细展示孪生模型信息,设计模型的三维预览界面,能够通过鼠标拖动的方式以三维视角查看模型,并将名称、功能、尺寸大小、设备型号等孪生信息显示在界面下方,有助于全面、详细地了解模型。然后,为了实现快捷添加模型的目的,提供两种模型添加方式,一种是输入三维坐标添加模型的精确方式,该方式通过输入三维坐标将模型精确添加至虚拟场景的指定位置上;另一种是鼠标拖拽添加模型的快捷方式,该方式下无需输入三维坐标,选中的模型将在鼠标光标大致位置处被添加。
按照规划实现模型库后,需要对三维模型进行处理。将三维模型转换成FBX格式文件并导入Unity中,在Unity中配置模型各部分的层级关系,如机械臂需要按照从下至上的顺序依次将基座到末端工具各个部件设置父子级关系。设置完成后,在模型上挂载孪生模型脚本并输入孪生信息,构建成为数字孪生模型。最后将孪生模型进行分类、封装后导入模型库中。
其中,所述步骤S2具体包括:
根据材质的使用需求规划合适的材质库界面布局和功能设计。由于材质和模型具有相似性,因此可按照模型库的方式进行布局规划,将材质库界面分为左右两块区域,左侧区域为选择材质类型的菜单栏,可将材质分为普通材质、塑料材质、金属材质、特殊材质四种类型;右侧区域用于显示对应类型的材质内容。在右侧区域中以图标、文字标签的形式展示材质信息,并增加按钮用于快速向模型添加材质。由于可通过材质图标直观地选择所需材质,所以材质库中无需设计预览界面。
按照规划实现材质库后,创建尽可能多的材质球,包含红至紫七色、黑色、灰色等各类颜色,并通过修改透明度、添加纹理图等方式创建具有塑料、金属光泽的材质球。将材质球进行分类,并封装导入材质库中。
其中,所述步骤S3具体包括:
根据接口组件的使用需求规划合适的接口库界面布局和功能设计。首先,考虑到接口组件与外部控制器交互过程中除了需要提供接口协议的接口脚本外,还需要不同类型的数据如布尔类型、整数类型和浮点数类型等,因此将接口库界面划分为左上、左下和右侧三块区域,并将库中的接口组件统称为接口对象,将数据称为值对象。左侧上方为接口操作区域,用于添加、删除所有的接口对象;左侧下方为接口对象表,用来显示场景中所有接口对象的信息;右侧为值对象表,用来显示接口对象下包含的所有值对象。接口对象表与值对象表是父与子的关系,一个接口对象对应一张值对象表,通过选择一个接口对象即可在右侧值对象表中显示其所包含的值对象信息。
其次,为了方便对接口组件及其数据进行操作和管理,接口库应当至少具备区域调整、对象显示与管理、值对象格式检测、数据实时刷新四类功能。其中区域调整指库界面中的三块区域支持鼠标拖动调整大小,通过调整区域尺寸可适应不同窗口的变化,以便呈现合适的界面布局;对象显示与管理指在接口库中显示接口对象和值对象的相关信息,并提供对这两类对象的操作功能,如添加、删除、复制、选择等;值对象格式检测指不同接口组件对数据的类型、地址有不同的格式要求,同时在人工添加数据信息时存在格式错误的情况,因此需要对值对象表中的对象进行格式检测,如是否名称为空、名称相同、地址为空、地址重复、地址超出范围、地址格式错误等;数据实时刷新功能,以一定帧率读取场景中数值对象的信息,将虚拟生产线或者实际控制器中读取的数据值实时更新到接口库中,配合库中的各类操作功能实现对接口数据的监测和管理。
按照规划实现接口库后,将各个类型的接口组件整理、封装导入接口库中,通过下拉菜单的形式提供对不同类型接口组件的选择和使用。此外,将接口数据实例化,以文本形式呈现数据值(即为值对象),并通过接口库将数据值与接口组件关联。
其中,所述步骤S4具体包括:
根据功能脚本的使用需求规划合适的脚本库界面布局和功能设计。考虑到脚本的查找和添加是主要的操作需求,因此脚本库中对脚本进行分类并提供快捷添加功能即可。在脚本库中使用可折叠标题菜单控件对脚本进行分类整理,按照脚本功能可将脚本分为控制类、数值类、功效类、接口类等。将可折叠标题菜单控件从上至下垂直布局,可通过点击控件左侧下三角箭头展开或折叠脚本内容。
按照规划实现脚本库后,将构建一个数字孪生系统所需的各类功能脚本进行分类,并封装导入脚本库中,每一个脚本对应一个按钮,通过点击按钮即可快速添加脚本。
其中,所述步骤S5具体包括:
在完成步骤S1至S4的基础上,构建了四类功能库,首先从模型库中选择模型快速添加至虚拟场景中,通过调整模型位姿使得虚拟生产线与物理生产线布局一致;若有外观(主要指颜色、光泽)相异的模型,可通过材质库快捷修改模型材质;然后根据不同孪生模型的加工工艺,从脚本库中添加相应功能脚本,先实现单个模型的工艺仿真,之后衔接各个孪生模型实现整条生产线的仿真验证;最后,确认实际控制器采用的接口协议,从接口库中添加对应的接口对象,并配置IP地址等信息,通过网线等方式将虚拟场景连接到实际控制器,实现生产线的虚拟调试。
其中,所述步骤S6具体包括:
在完成虚拟调试的基础上,通过接口组件将虚拟生产线与物理生产线进行连接,虚拟生产线从实际生产线中采集运行数据并进行处理后传输给各个设备模型,设备模型接收数据进行仿真运行,同时虚拟生产线仿真运行中产生的孪生数据将被传输回实际生产线中,形成闭环的数据反馈,从而实现生产线的虚实交互。
本发明具有如下有益效果:
本发明基于Unity3D引擎设计并实现了孪生模型库、材质库、接口库、脚本库四类功能库,涵盖了数字孪生系统构建过程中的模型构建、功能设计、仿真驱动、虚实交互等方面的需求;可通过这四类功能库简化并规范模型构建流程,快速查找与添加功能脚本,便捷实现虚拟场景与外部软硬件连接交互,从而简化操作流程、减少重复工作、提高构建效率,提高了数字孪生系统构建的通用性、便捷性和灵活性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明地一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性地前提下,根据这些附图获得其他的附图仍属于本发明范畴。
图1为本发明实施例提供的工业数字孪生系统功能模块化方法的框架图;
图2为本发明实施例提供的工业数字孪生系统功能模块化方法中的孪生模型库界面图;
图3为本发明实施例提供的工业数字孪生系统功能模块化方法中的模型三维预览界面图;
图4为本发明实施例提供的工业数字孪生系统功能模块化方法中的材质库界面图;
图5为本发明实施例提供的工业数字孪生系统功能模块化方法中的接口库界面图;
图6为本发明实施例提供的工业数字孪生系统功能模块化方法中的脚本库界面图;
图7为本发明实施例提供的工业数字孪生系统功能模块化方法中利用四类功能库构建的五金上U管产线虚拟场景图;
图8为本发明实施例提供的工业数字孪生系统功能模块化方法中五金上U管产线虚实交互的效果图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,以下结合附图对本发明做进一步地详细描述。
如图1所示,为本发明实施例,提供的工业数字孪生系统功能模块化方法,该方法基于Unity3D引擎进行设计和实现四类功能库,包括孪生模型库、材质库、接口库和脚本库,涵盖了数字孪生系统构建过程的各个方面。
模型库的构建过程中,对常用的各种工业设备的三维模型进行如文件格式转换、层级配置等处理,构建成为孪生模型。将所构建的孪生模型分为机械臂、末端工具、机器设备、输送模块、传感器、AGV、工件和其他八种类型,再进行封装并导入至模型库中。材质库的构建过程中,创建尽可能多的不同颜色、光泽和透明度的材质球,将材质球按照普通材质、塑料材质、金属材质和特殊材质四类进行分类和整理,导入至材质库中。模型库和材质库中的模型和材质具有通用性,并通过库中的按钮等功能控件帮助使用者快捷选择、添加所需模型和材质,有利于快速构建孪生模型,并实现快速搭建虚拟工业场景的目的。
接口库的构建过程中,按照工业场景构建需求,将所需的各类接口协议,如PLC、Modbus、RoboDK、OPC UA、MySQL和Redis等,进行整理并导入至接口库中。通过接口库可实现对多种接口对象的选择、添加、删除、复制等操作,简化了操作流程,有利于快速实现虚拟场景与外部软硬件的交互和通讯。
脚本库的构建过程中,针对设备加工工艺,设计并开发包括线性驱动、旋转驱动、检测、机械臂控制、电机驱动等各类功能脚本,并将脚本分类、封装导入至脚本库中。使用脚本库能够更为便捷地查找各类脚本,节省查找时间,便于快速实现对模型加工工艺的仿真验证。
在四类功能库的基础上,能够实现一个虚拟工业场景的快速构建,并且以一种更为便捷的方式实现虚拟场景与实际控制器、物理设备之间的交互联动,实现虚拟调试和虚实交互,从而提高了数字孪生系统构建的通用性、便捷性和灵活性。
如图2至图6所示,对本发明实施例中的工业数字孪生系统功能模块化方法做进一步说明:
模型库如图2所示,将模型库界面主体分为左右两块区域。左侧区域为选择模型类型的菜单栏,包括机械臂、末端工具、机器设备、输送模块、传感器、AGV、工件和其他共八种类型,通过点击菜单项能够在右侧区域中显示相应类型的孪生模型。右侧区域用于显示某一类孪生模型的内容,图中为“库浏览”模式,此模式下显示所有被导入的孪生模型,以图标、文字标签的方式简要显示模型的名称、外观和简单描述信息;点击图标可开启一次拖拽事件,通过鼠标拖拽可向场景中快捷添加此模型;或者输入三维坐标,然后点击“点击添加此设备”按钮将模型精确添加至虚拟场景的指定位置上。通过点击“点击查看此设备”按钮可将浏览模式切换为“单设备浏览”模式,右侧区域将显示单个设备模型的三维预览界面,如图3所示。在预览界面中,可通过鼠标拖动以旋转的方式从三维视角对模型的形状、结构、颜色等进行查看,并支持滚动鼠标滚轮或拖动滑动条来调整模型的缩放大小;同时在预览界面下方显示此设备模型的名称、功能与用途、尺寸大小、设备型号等详细信息,若模型为机械臂模型,还将显示相应的DH参数信息。
实现模型库界面后,将常用设备的三维模型转换成FBX文件,导入Unity3D中,配置模型中各部分的层级关系,挂载孪生模型脚本并输入孪生信息,构建成为数字孪生模型。接着将各个孪生模型进行分类,并封装导入模型库中。
材质库如图4所示,将材质库界面也分为左右两块区域,左侧区域为选择材质类型的菜单栏,包括普通材质、塑料材质、金属材质、特殊材质共四种类型,通过点击菜单项能够在右侧区域中显示相应类型的材质信息。普通材质主要指颜色上有差异的材质球,包含红至紫七色、黑色、灰色等各类颜色,同时每一种颜色又可分为浅色、深色、亮色和暗色等;塑料材质指颜色和光泽与现实生活中塑料相似的材质球;金属材质指光泽、透明度与现实生活中铝、铁金属相似的材质球;特殊材质指添加了特殊贴图用于特定情况下的材质球,如用于模拟周边的地面、墙壁等的材质。在右侧区域中以图标、文字标签的方式展示材质的名称、颜色、光泽等信息,并可通过点击“点击添加此设备”按钮将材质快速添加至选中的模型上。实现模型库界面后,创建尽可能多的材质球,进行分类并封装导入材质库中。
接口库如图5所示,将接口库界面划分为左上、左下和右侧三块区域。其中左侧上方区域为接口操作面板,用于添加、删除已有的接口对象;左侧下方区域为接口对象表,用来显示场景中所有接口对象的信息;右侧为值对象表,用来显示接口对象下包含的所有值对象。接口对象表与值对象表是父与子的关系,一个接口对象对应一张值对象表,通过选择一个接口对象即可在右侧值对象表中显示其所包含的值对象信息。
接口库功能主要包括区域调整、对象显示与管理、值对象格式检测、数据实时刷新四部分。区域调整指库界面中的三块区域支持鼠标拖动调整大小,通过调整区域尺寸可适应不同窗口的变化,以便呈现合适的界面布局。以库界面左上角为坐标原点,水平方向为x轴,从左向右x轴数值增大,垂直方向为y轴,从上至下y轴数值增大。每一块区域均被定义成一个参数类,包含参数x(起始坐标在x轴上的映射)、y(起始坐标在y轴上的映射)、width(区域宽度,即在x轴上所占区间长度)、height(区域高度,即在y轴上所占区间长度)。设三块区域分别为A1、A2、A3,整个界面的总宽度为W、总高度为H,同时为了清晰显示区域边界并且便于实现鼠标拖动调整尺寸的效果,在区域A1和A2之间放置水平方向的细长矩形(称为高度调整条R1),在区域A1、A2和A3之间放置垂直方向的细长矩形(称为宽度调整条R2)。由此可得三块区域和两个调整条的参数的计算公式,如式(1)至(21)所示:
x1=0 (1)
y1=0 (2)
w1=W*μw (3)
h1=H*μn (4)
x2=0 (5)
y2=h1+Δh (6)
w2=W*μw (7)
h2=H*(1-μh)-Δh (8)
x3=w1+Δw (9)
y3=0 (10)
w3=W*(1-μw)-Δw (11)
h3=H (12)
x4=0 (13)
y4=h1 (14)
w4=W*μw (15)
h4=Δh (16)
x5=w1 (17)
y5=0 (18)
w5=Δw (19)
h5=H (20)
Δh=Δw=10 (21)
式中,x1、y1、w1、h1分别为左上方区域A1的参数x、y、width和height,x2、y2、w2、h2分别为左下方区域A2的参数x、y、width和heigh,x3、y3、w3、h3分别为右侧区域A3的参数x、y、width和heigh,x4、y4、w4、h4分别为调整条R1的参数x、y、width和height,x5、y5、w5、h5分别为调整条R2的参数x、y、width和height,Δh是调整条R1的高度为定值10(像素),Δw是调整条R2的宽度为定值10(像素),μw是区域A1占总宽度的比例系数,μh是区域A1占总高度的比例系数。
编写算法识别鼠标光标是否位于调整条R1或R2范围内,若位于范围内且同时鼠标左键按下并进行拖动操作时,通过计算鼠标光标位置与总高度或总宽度的比例值来实时设置参数μh或μw,从而实现区域调整的功能,其计算公式如式(22)和(23)所示:
式中,Mx为鼠标位置坐标在x轴上的映射值,My为鼠标位置坐标在y轴上的映射值。
对象显示与管理指在接口库中显示接口对象和值对象的相关信息,并提供对这两类对象的操作功能。在接口对象表中,将接口对象定义为包含序号、名称、类型、四个操作组件和(对应类型的)接口组件的类,其中操作组件分别为Browse(浏览此接口对象下包含的值对象信息)、Select(在场景中选中此对象的接口组件的位置,用于快速定位)、Copy(复制)和Delete(删除)。在值对象表中,将值对象定义为包含序号、名称、数据类型、地址、值、四个操作组件、(对应数据类型的)数值对象和父级接口对象的类,其中操作组件分别为Edit(编辑并修改此值对象的名称、数据类型和地址)、Select(在场景中选中此对象的数值对象的位置,用于快速定位)、Copy(复制)和Delete(删除)。针对接口对象表和值对象表,均设计了Add(添加)、Add previous(再次添加上一个对象)、Delete all(删除所有)、Copyall(复制所有)、Select all(选中所有)和Sort(排序)的操作功能,其中排序功能提供了按照对象先后顺序排序和按照类型排序两种方式。考虑到一个接口组件可能涉及大量数据,因此在值对象表中设计了Import Excel的操作功能,即可从本机选择Excel或CSV文件并将其中的数据快速导入至表中,比如在使用西门子博途软件时,可将里面的变量表导出成Excel表,然后选中该文件便可将数据快速导入至接口库中,当数据量较多时使用此功能可节省大量人力和时间成本。
值对象格式检测指不同接口组件对数据的类型、地址有不同的格式要求,同时在人工添加数据信息时存在格式错误的情况,因此需要对值对象表中的对象进行格式检测。格式检测包括是否名称为空、名称相同、地址为空、地址重复、地址超出范围、地址格式错误六个方面,通过实时检测表中对象的信息内容,将不满足要求的对象进行标红高亮,提醒使用者进行修改。
数据实时刷新功能,以一定帧率读取场景中数值对象的信息,将虚拟场景或者实际控制器中读取的数据值实时更新到接口库中,配合库中的各类操作功能实现对接口数据的监测和管理。在数字孪生系统运行时,对于不同类型的接口组件和接口数据的查看、监测和管理仅需通过接口库便可实现。实现接口库界面后,将接口组件进行整理并封装导入接口库中。
脚本库如图6所示,采用可折叠标题菜单控件对脚本进行分类整理,并将可折叠标题菜单控件从上至下垂直布局,通过点击控件左侧下三角箭头可展开或折叠脚本内容。将功能脚本分为控制类、数值类、功效类、接口类共四种类型。实现脚本库界面后,将各类功能脚本进行分类,并封装导入脚本库中,每一个脚本对应一个按钮。由于脚本的添加需要具体的对象,故使用时需要在场景中先选中所要添加脚本的对象,然后点击按钮即可实现快速添加脚本的目的。
基于所构建的四类功能库,实现五金上U管虚拟生产线的快速构建,如图7所示。从模型库中选取所需设备模型添加至虚拟场景中,包括四个六轴机械臂、缩口机、冲弹片冲床、热熔钻孔机、攻牙机和物料框等,按照实际生产线进行模型的布局调整。对于需要修改颜色的模型,打开材质库,选择所需的材质点击进行添加。接着打开脚本库为模型添加功能脚本以实现加工工艺的仿真,冲弹片冲床和热熔钻孔机需要添加线性驱动和电机模拟驱动的脚本,以实现从上向下的冲压和钻孔动作仿真;攻牙机需要添加旋转驱动和线性驱动的脚本,以实现载物台旋转供料和攻牙头从上向下的攻牙动作仿真;机械臂的六个轴都需要添加驱动脚本,并设置轴旋转的方向,通过末端点的设置及逆运动学的求解进行机械臂抓取和放置动作的仿真。实现各个设备模型的仿真验证后,将设备模型衔接以完成整条生产线的加工流程仿真。然后,添加PLC接口组件,并从西门子博途软件中导出PLC信号数据至接口库中,在接口组件中输入正确IP地址并选择PLC型号,连接到实际PLC控制器;添加Modbus接口组件,输入正确的IP地址、端口号和站号,连接到实际机械臂的控制器。最后,通过与PLC信号和机械臂数据的交互,验证虚拟生产线的运行效果和生产线的自动化控制逻辑,从而实现生产线的虚拟调试。
五金上U管生产线的虚实交互如图8所示,将虚拟场景中的数字化生产线与物理世界的生产线通过网线连接,虚拟生产线从实际生产线中采集运行数据并进行处理后传输给各个设备模型,设备模型接收数据进行仿真运行,同时虚拟生产线仿真运行中产生的孪生数据将被传输回实际生产线中,形成闭环的数据反馈。通过生产线数据的实时采集与处理、孪生数据的实时交互,实现生产线的交互联动,达到虚实交互的效果。
实施本发明实施例,具有如下的有益效果:
在本发明实施例中,基于Unity3D引擎设计并实现了孪生模型库、材质库、接口库、脚本库四类功能库,涵盖了数字孪生系统构建过程中的模型构建、功能设计、仿真驱动、虚实交互等方面的需求。通过这四类功能库可简化并规范模型构建流程,快速查找与添加功能脚本,便捷实现虚拟场景与外部软硬件连接交互,从而简化操作流程、减少重复工作、提高构建效率,提高了数字孪生系统构建的通用性、便捷性和灵活性。
本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。
Claims (8)
1.工业数字孪生系统功能模块化方法,其特征在于,包括如下:
步骤S1,设计并实现孪生模型库,包含布局规划和功能实现;将常用设备的三维模型导入Unity3D中进行处理和配置,构建成为数字孪生模型,然后将各个孪生模型进行分类,并封装导入模型库中;
步骤S2,设计并实现材质库,包含布局规划和功能实现;创建尽可能多的材质球,将各个材质球进行分类,并封装导入材质库中;
步骤S3,设计并实现接口库,包含布局规划和功能实现;将接口脚本封装成接口组件,将接口组件进行分类并封装导入接口库中;将接口数据实例化,通过接口库将接口数据与接口组件相关联;
步骤S4,设计并实现脚本库,包含布局规划和功能实现;将构建一个数字孪生系统所需的各类脚本进行分类,并封装导入脚本库中;
步骤S5,基于所构建的四类功能库,构建一条工业生产线的虚拟场景,实现产线的仿真验证和虚拟调试;
步骤S6,通过接口组件将虚拟生产线与物理生产线进行连接,实现生产线的虚实交互。
2.根据权利要求1所述的方法,其特征在于,所述步骤S1具体包括:
根据模型的使用需求规划合适的模型库界面布局和功能设计;首先,考虑到模型应当分类明确,且能够通过选择类别来显示不同类型的模型,故将模型库界面分为左右两块区域,左侧区域为选择模型类型的菜单栏,可将模型分为机械臂、末端工具、机器设备、输送模块、传感器、AGV、工件和其他共八种类型;右侧区域用于显示对应类型的孪生模型,为了兼顾模型数量多且模型内容详细的要求,提出了一种包含“库浏览”模式和“单设备浏览”模式的“双模式混合”的模型库浏览模式;“库浏览”模式下,模型库显示所有的孪生模型,但是模型内容简洁,仅以图标、文字标签的方式来显示模型的名称、外观和简单描述信息;“单设备浏览”模式下,为进一步详细展示孪生模型信息,设计模型的三维预览界面,能够通过鼠标拖动的方式以三维视角查看模型,并将名称、功能、尺寸大小、设备型号等孪生信息显示在界面下方,有助于全面、详细地了解模型;然后,为了实现快捷添加模型的目的,提供两种模型添加方式,一种是输入三维坐标添加模型的精确方式,该方式通过输入三维坐标将模型精确添加至虚拟场景的指定位置上;另一种是鼠标拖拽添加模型的快捷方式,该方式下无需输入三维坐标,选中的模型将在鼠标光标大致位置处被添加;
按照规划实现模型库后,需要对三维模型进行处理;将三维模型转换成FBX格式文件并导入Unity中,在Unity中配置模型各部分的层级关系,如机械臂需要按照从下至上的顺序依次将基座到末端工具各个部件设置父子级关系;设置完成后,在模型上挂载孪生模型脚本并输入孪生信息,构建成为数字孪生模型;最后将孪生模型进行分类、封装后导入模型库中。
3.根据权利要求1所述的方法,其特征在于,所述步骤S2具体包括:
根据材质的使用需求规划合适的材质库界面布局和功能设计;由于材质和模型具有相似性,因此可按照模型库的方式进行布局规划,将材质库界面分为左右两块区域,左侧区域为选择材质类型的菜单栏,可将材质分为普通材质、塑料材质、金属材质、特殊材质四种类型;右侧区域用于显示对应类型的材质内容;在右侧区域中以图标、文字标签的形式展示材质信息,并增加按钮用于快速向模型添加材质;由于可通过材质图标直观地选择所需材质,所以材质库中无需设计预览界面;
按照规划实现材质库后,创建尽可能多的材质球,包含红至紫七色、黑色、灰色等各类颜色,并通过修改透明度、添加纹理图等方式创建具有塑料、金属光泽的材质球;将材质球进行分类,并封装导入材质库中。
4.根据权利要求1所述的方法,其特征在于,所述步骤S3具体包括:
根据接口组件的使用需求规划合适的接口库界面布局和功能设计;首先,考虑到接口组件与外部控制器交互过程中除了需要提供接口协议的接口脚本外,还需要不同类型的数据如布尔类型、整数类型和浮点数类型等,因此将接口库界面划分为左上、左下和右侧三块区域,并将库中的接口组件统称为接口对象,将数据称为值对象;左侧上方为接口操作区域,用于添加、删除所有的接口对象;左侧下方为接口对象表,用来显示场景中所有接口对象的信息;右侧为值对象表,用来显示接口对象下包含的所有值对象;接口对象表与值对象表是父与子的关系,一个接口对象对应一张值对象表,通过选择一个接口对象即可在右侧值对象表中显示其所包含的值对象信息;
其次,为了方便对接口组件及其数据进行操作和管理,接口库应当至少具备区域调整、对象显示与管理、值对象格式检测、数据实时刷新四类功能;其中区域调整指库界面中的三块区域支持鼠标拖动调整大小,通过调整区域尺寸可适应不同窗口的变化,以便呈现合适的界面布局;对象显示与管理指在接口库中显示接口对象和值对象的相关信息,并提供对这两类对象的操作功能,如添加、删除、复制、选择等;值对象格式检测指不同接口组件对数据的类型、地址有不同的格式要求,同时在人工添加数据信息时存在格式错误的情况,因此需要对值对象表中的对象进行格式检测,如是否名称为空、名称相同、地址为空、地址重复、地址超出范围、地址格式错误等;数据实时刷新功能,以一定帧率读取场景中数值对象的信息,将虚拟生产线或者实际控制器中读取的数据值实时更新到接口库中,配合库中的各类操作功能实现对接口数据的监测和管理;
按照规划实现接口库后,将各个类型的接口组件整理、封装导入接口库中,通过下拉菜单的形式提供对不同类型接口组件的选择和使用;此外,将接口数据实例化,以文本形式呈现数据值(即为值对象),并通过接口库将数据值与接口组件关联。
5.根据权利要求1所述的方法,其特征在于,所述步骤S4具体包括:
根据功能脚本的使用需求规划合适的脚本库界面布局和功能设计;考虑到脚本的查找和添加是主要的操作需求,因此脚本库中对脚本进行分类并提供快捷添加功能即可;在脚本库中使用可折叠标题菜单控件对脚本进行分类整理,按照脚本功能可将脚本分为控制类、数值类、功效类、接口类等;将可折叠标题菜单控件从上至下垂直布局,可通过点击控件左侧下三角箭头展开或折叠脚本内容;
按照规划实现脚本库后,将构建一个数字孪生系统所需的各类功能脚本进行分类,并封装导入脚本库中,每一个脚本对应一个按钮,通过点击按钮即可快速添加脚本。
6.根据权利要求1所述的方法,其特征在于,所述步骤S5具体包括:
在完成步骤S1至S4的基础上,构建了四类功能库,首先从模型库中选择模型快速添加至虚拟场景中,通过调整模型位姿使得虚拟生产线与物理生产线布局一致;若有外观(主要指颜色、光泽)相异的模型,可通过材质库快捷修改模型材质;然后根据不同孪生模型的加工工艺,从脚本库中添加相应功能脚本,先实现单个模型的工艺仿真,之后衔接各个孪生模型实现整条生产线的仿真验证;最后,确认实际控制器采用的接口协议,从接口库中添加对应的接口对象,并配置IP地址等信息,通过网线等方式将虚拟场景连接到实际控制器,实现生产线的虚拟调试。
7.根据权利要求1所述的方法,其特征在于,所述步骤S6具体包括:
在完成虚拟调试的基础上,通过接口组件将虚拟生产线与物理生产线进行连接,虚拟生产线从实际生产线中采集运行数据并进行处理后传输给各个设备模型,设备模型接收数据进行仿真运行,同时虚拟生产线仿真运行中产生的孪生数据将被传输回实际生产线中,形成闭环的数据反馈,从而实现生产线的虚实交互。
8.根据权利要求4所述的方法,其特征在于,所述的接口库区域调整方法包括:
将接口库界面划分为左上、左下和右侧三块区域,并将库中的接口组件统称为接口对象、将数据称为值对象;左侧上方区域为接口操作面板,左侧下方区域为接口对象表,右侧为值对象表;以库界面左上角为坐标原点,水平方向为x轴,从左向右x轴数值增大,垂直方向为y轴,从上至下y轴数值增大;每一块区域均被定义成一个参数类,包含参数x(起始坐标在x轴上的映射)、y(起始坐标在y轴上的映射)、width(区域宽度,即在x轴上所占区间长度)、height(区域高度,即在y轴上所占区间长度);设三块区域分别为A1、A2、A3,整个界面的总宽度为W、总高度为H,同时为了清晰显示区域边界并且便于实现鼠标拖动调整尺寸的效果,在区域A1和A2之间放置水平方向的细长矩形(称为高度调整条R1),在区域A1、A2和A3之间放置垂直方向的细长矩形(称为宽度调整条R2);由此可得三块区域和两个调整条的参数的计算公式,如式(1)至(21)所示:
x1=0 (1)
y1=0 (2)
w1=W*μw (3)
h1=H*μh (4)
x2=0 (5)
y2=h1+Δh (6)
w2=W*μw (7)
h2=H*(1-μh)-Δh (8)
x3=w1+Δw (9)
y3=0 (10)
w3=W*(1-μw)-Δw (11)
h3=H (12)
x4=0 (13)
y4=h1 (14)
w4=W*μw (15)
h4=Δh (16)
x5=w1 (17)
y5=0 (18)
w5=Δw (19)
h5=H (20)
Δh=Δw=10 (21)
式中,x1、y1、w1、h1分别为左上方区域A1的参数x、y、width和height,x2、y2、w2、h2分别为左下方区域A2的参数x、y、width和heigh,x3、y3、w3、h3分别为右侧区域A3的参数x、y、width和heigh,x4、y4、w4、h4分别为调整条R1的参数x、y、width和height,x5、y5、w5、h5分别为调整条R2的参数x、y、width和height,Δh是调整条R1的高度为定值10(像素),Δw是调整条R2的宽度为定值10(像素),μw是区域A1占总宽度的比例系数,μh是区域A1占总高度的比例系数;
编写算法识别鼠标光标是否位于调整条R1或R2范围内,若位于范围内且同时鼠标左键按下并进行拖动操作时,通过计算鼠标光标位置与总高度或总宽度的比例值来实时设置参数μh或μw,从而实现区域调整的功能,其计算公式如式(22)和(23)所示:
式中,Mx为鼠标位置坐标在x轴上的映射值,My为鼠标位置坐标在y轴上的映射值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310191538.4A CN116360646A (zh) | 2023-03-02 | 2023-03-02 | 工业数字孪生系统功能模块化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310191538.4A CN116360646A (zh) | 2023-03-02 | 2023-03-02 | 工业数字孪生系统功能模块化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116360646A true CN116360646A (zh) | 2023-06-30 |
Family
ID=86910448
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310191538.4A Pending CN116360646A (zh) | 2023-03-02 | 2023-03-02 | 工业数字孪生系统功能模块化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116360646A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117576359A (zh) * | 2024-01-16 | 2024-02-20 | 北京德塔精要信息技术有限公司 | 基于Unity网页平台的3D模型构建方法及装置 |
-
2023
- 2023-03-02 CN CN202310191538.4A patent/CN116360646A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117576359A (zh) * | 2024-01-16 | 2024-02-20 | 北京德塔精要信息技术有限公司 | 基于Unity网页平台的3D模型构建方法及装置 |
CN117576359B (zh) * | 2024-01-16 | 2024-04-12 | 北京德塔精要信息技术有限公司 | 基于Unity网页平台的3D模型构建方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5831875A (en) | Link mechanism analyzer and link mechanism joint data arithmetic apparatus | |
Bangsow | Manufacturing simulation with plant simulation and simtalk: usage and programming with examples and solutions | |
Kokkas et al. | An Augmented Reality approach to factory layout design embedding operation simulation | |
JP2001105359A (ja) | ロボットシステム用グラフィック表示装置 | |
CN101872280A (zh) | 在过程控制系统中为操作员界面显示配置动画和事件 | |
CN116360646A (zh) | 工业数字孪生系统功能模块化方法 | |
CN110764754A (zh) | 一种机械手运动控制器的自由编程方法 | |
Kovacs et al. | Application of software reuse and object-oriented methodologies for the modelling and control of manufacturing systems | |
CN114663580A (zh) | 一种工业机器人生产线的虚拟仿真方法 | |
CN111596824B (zh) | 图纸标准化编制方法、系统及电子设备 | |
CN116958426A (zh) | 虚拟调试配置方法、装置、计算机设备、存储介质 | |
US20070198588A1 (en) | Automatic Qualification of Plant Equipment | |
Dzinic et al. | Simulation-based verification of PLC programs | |
Bulej et al. | Simulation of manipulation task using iRVision aided robot control in Fanuc RoboGuide software | |
Mecklenburg | Seamless integration of layout and simulation | |
JP2786306B2 (ja) | 組立工程設計装置及びその方法 | |
Miles et al. | Animation with CINEMA | |
Lindberget | Automatic generation of robot targets: A first step towards a flexible robotic solution for cutting customized mesh tray | |
Yu et al. | Graphics-based modular digital twin software framework for production lines | |
Pang et al. | Systematic closed-loop modelling in IEC 61499 function blocks: A case study | |
Daneshjo et al. | Methodological Aspects of Modelling and Simulation of Robotized Workstations | |
Tacquard et al. | Automatic notation of the physical structure of a flexible manufacturing system | |
Grajewski et al. | Virtual simulation of Machine Tools | |
WO2022254543A1 (ja) | 教示装置 | |
EP3974928A1 (en) | Wiring diagram manager and emulator |
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 |