一种自动化仿真系统和方法与流程

文档序号:12962643阅读:526来源:国知局
一种自动化仿真系统和方法与流程

本发明涉及虚拟仿真技术领域,具体而言,涉及一种自动化仿真系统和方法。



背景技术:

近年来,随着国内工业4.0国家战略的提出,国内自动化技术快速发展,各种计算机仿真系统和自动化仿真实训台广泛用于培养高校和企业的自动化学科人才。

传统的计算机仿真方法通过对系统功能抽象、建立系统模型、分析试验等步骤对实际的系统进行模拟仿真;计算机仿真系统无法与实物系统进行实时互动,且现有的自动化仿真实训台的执行机构单一,使用者在进行使用时不能更直观和全面的进行操作和学习。



技术实现要素:

有鉴于此,本发明实施例的目的在于提供一种自动化仿真系统和方法,以达到使用者在进行使用时能够更直观和全面的进行操作和学习的目的。

第一方面,本发明实施例提供了一种自动化仿真系统,包括:上位机、下位机和仿真计算机,所述上位机与下位机相连接,所述下位机与仿真计算机相连接;

所述上位机用于输入控制程序和控制信号,并将所述控制程序发送至所述下位机;所述下位机用于扫描执行所述控制程序,并基于其接收到的仿真计算机的反馈信号和上位机输入的控制信号,生成相应的控制指令,并将所述控制指令发送至所述仿真计算机;所述仿真计算机用于接收所述控制指令,执行所述控制指令,并实时显示执行所述控制指令的执行结果。

结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中:

所述下位机为可编程逻辑控制器plc控制器,所述plc控制器通过仿真机信号接口与所述仿真计算机相连接,所述plc控制器通过所述仿真机信号接口与所述仿真计算机进行数据交换;

所述仿真机信号接口设置有模数转换器,所述下位机输出的控制指令通过所述模数转换器进行模数转换后传输至所述仿真计算机,以使所述仿真计算机识别所述控制指令。

结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中:

所述plc控制器通过网线与所述上位机相连接,所述上位机通过所述网线将所述控制程序发送至所述下位机。

结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中:

所述上位机安装有人机接口hmi组态软件,基于所述hmi组态软件实现人机交互;

所述上位机通过人机交互控制整个系统的开始和结束。

结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中:

所述仿真计算机包括:工艺模型建立模块、unity虚拟场景显示模块,所述工艺模型建立模块设置有与所述unity虚拟场景显示模块进行通讯连接的通讯接口以及与仿真机信号接口进行通讯连接的通讯接口;

所述工艺模型建立模块用于搭建被控制对象的数学模型,为所述数学模型赋予参数值生成被控对象的工艺模型;

所述unity虚拟场景模块用于将被控对象所处的工艺现场以3d动画场景的形式进行显示,所述仿真计算机接收所述控制指令,所述控制指令包含有被控对象动作所需的参数,所述仿真计算机通过工艺模型建立模块的通讯接口将所述数据传输至虚拟场景模块,所述unity虚拟场景模块根据所述数据控制控制3d动画场景中的被控对象动作。

结合第一方面的第四种可能的实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中:

所述通讯接口为网络接口或者tcp/ip通讯接口。

结合第一方面的第四种可能的实施方式,本发明实施例提供了第一方面的第六种可能的实施方式,其中:

所述工艺模型建立模块在matlab/simulink下搭建被控制对象数学模型。

结合第一方面,本发明实施例提供了第一方面的第七种可能的实施方式,其中:

所述仿真计算机还设置有从文本到语言tts语音播报模块,所述tts语音播报模块用于播报所述执行结果。

第二方面,本发明实施例提供了一种自动化仿真方法,所述方法包括:

上位机接收使用者输入的控制程序,并将所述控制程序发送至下位机;

所述下位机接收所述控制程序,扫描执行所述控制程序,并基于其接收到的仿真计算机的反馈信号和上位机输入的控制信号生成控制指令;

所述下位机将所述控制指令发送至仿真计算机;

所述仿真计算机接收所述控制指令,执行所述控制指令,并实时显示执行控制指令的执行结果。

结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中:

所述控制器为plc控制器,所述plc控制器通过仿真机信号接口与仿真计算机相连接,所述上位机接收使用者输入的plc程序,并将所述plc程序发送至下位机;

所述仿真计算机包括:工艺模型建立模块、unity虚拟场景显示模块,所述工艺模型建立模块设置有与所述unity虚拟场景显示模块进行通讯连接的通讯接口以及与仿真机信号接口进行通讯连接的通讯接口;

所述工艺模型建立模块用于搭建被控制对象的数学模型,为所述数学模型赋予参数值生成被控对象的工艺模型;

所述unity虚拟场景模块用于将被控对象所处的工艺现场以3d动画场景的形式进行显示;

所述仿真计算机接收所述控制指令,执行所述控制指令,并实时显示执行控制指令的执行结果,包括:

所述仿真计算机接收所述控制指令,所述控制指令包含有被控对象动作所需的参数数据;

所述仿真计算机通过工艺模型建立模块的通讯接口将所述参数数据传输至unity虚拟场景模块;

所述unity虚拟场景模块根据所述参数数据控制控制3d动画场景中的被控对象动作。

本发明实施例提供的一种自动化仿真系统和方法,系统中设有上位机、下位机和仿真计算机,上位机与下位机相连接,下位机与仿真计算机相连接;使用者通过上位机输入控制程序,上位机将该控制程序发送至下位机,下位机扫描执行该控制程序,并基于其接收到的仿真计算机的反馈信号和上位机输入的控制信号,生成相应的控制指令,并将该控制指令发送至仿真计算机;仿真计算机接收控制指令,并执行该控制指令,并实时显示执行该控制指令的执行结果,使用者可以直观的看到控制程序的执行结果;本发明实施例中所提供的一种自动化仿真系统和方法,能够使使用者在进行使用过程中直观的看到控制程序执行所得到的控制结果,进而满足使使用者进行更直观和全面的操作和学习。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术使用者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明的一个实施例所提供的一种自动化仿真系统的结构示意图;

图2示出了本发明的一个实施例所提供的另一种自动化仿真系统的结构示意图;

图3示出了本发明实施例二所提供的一种自动化仿真方法的流程示意图;

图4示出了本本发明实施例二所提供的另一种自动化仿真方法的流程示意图。

图标:

101-上位机;102-下位机;103-仿真计算机;201-plc控制器;202-仿真机信号接口。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前,在自动化学习技术领域,现有的计算机仿真训练都是通过对系统功能抽象、建立系统模型、分析试验等步骤对实际的系统进行模拟仿真;系统无法做到与实物系统进行实时互动,进而使用者在进行使用时不能直观和全面的进行操作和学习,这就限制了自动化学科人才输出的质量;基于此,本发明实施例提供了一种自动化仿真系统和方法;下面通过实施例进行描述。

实施例一

参照图1所示的实施例,本发明实施例提供了一种自动化仿真系统,该系统包括:上位机101、下位机102和仿真计算机103,上位机101与下位机102相连接,下位机102与仿真计算机103相连接,以使上位机与下位机之间以及下位机与仿真计算机之间能够进行数据交互;进一步的,上位机与下位机通信连接,具体地,上位机可以通过以下任意一种通信协议与下位机进行通信:ftp(文件传输协议)、tcp(传输控制协议)、can(控制器局域网络)协议、串口通信协议。

上位机用于输入控制程序和控制信号,并将该控制程序发送至下位机;下位机下载使用者在上位机上通过编写等方式输入的控制程序,下位机扫描执行该控制程序,该下位机还接收仿真计算机的反馈信号,并基于其接收到的仿真计算机的反馈信号和上位机输入的控制信号,生成相应的控制指令,并将该控制指令发送至仿真计算机;仿真计算机用于接收该控制指令,执行该控制指令,并实时显示执行该控制指令的执行结果,并反馈信号至下位机。

进一步的,参照图2所示,上述下位机为plc控制器202,该plc控制器202通过仿真机信号接口201与仿真计算机103相连接,相应的,仿真计算机上也设有与仿真机信号接口相连接的通讯接口,进一步的,该plc控制器通过该仿真机信号接口与仿真计算机进行数据交换;

上述仿真机信号接口设置有模数转换器,下位机输出的控制指令通过模数转换器进行模数转换后传输至仿真计算机,以使仿真计算机识别该控制指令。

进一步的,上述plc控制器202通过网线与上位机101相连接,上位机通过该网线将所述控制程序发送至所述下位机;进一步的,该plc控制器具有tcp/ip接口。对应的,该控制程序为plc程序;程序的编写语言包括但不限于:stl语句表、lad梯形图、fbd功能图块、graph顺序功能图、scl结构化控制语言、higraph图形编程语言、cfc连续功能图;使用者使用这些语言编写工艺现场的设备的动作逻辑的程序,控制器执行该程序发出控制指令,比如当加热炉返回的温度超过1000℃,就停止加热;再比如当小车走到10米远的地方,就停止行走,或再接着往回走等等。

上位机还用于通过人机交互控制整个系统的开始和结束,使用者在上位机的forcecontrol组态软件下搭建上位机控制画面,并显示控制画面,使用者通过该控制画面输入控制信号,如控制某个设备的启停、暂停等,进一步的,上位机安装有hmi(人机接口)组态软件,基于所述hmi组态软件实现人机交互;hmi组态软件用于通过画图形和写代码,使界面易于人机交互;比如画个按钮,再为此按钮写入代码,代码可以是控制按钮的颜色变化,也可以是按钮点击执行某个命令等;再比如画个表格,为表格中的每个单元格写入指定的代码,就可以从表格中看到设备参数的实时值;再比如加载一个曲线控件,代码写好后,就可以从曲线控件上观看到数值的变化轨迹;

上述仿真计算机包括:工艺模型建立模块、unity虚拟场景显示模块,工艺模型建立模块设置有与unity虚拟场景显示模块进行通讯的通讯接口以及与仿真机信号接口进行通讯连接的通讯接口;进一步的,该工艺模型建立模块与unity虚拟场景显示模块之间通过tcp/ip协议(传输控制协议/因特网互联协议)进行通讯。

工艺模型建立模块用于搭建被控制对象的数学模型,为该数学模型赋予参数值生成被控对象的工艺模型;

进一步的,上述仿真计算机的工艺模型建立模块,通过在matlab/simulink下搭建被控对象的数学模型基础上,并且可以根据需求进行实时计算输出;搭建被控对象的数学模型包括执行机构、pid控制器的模型建立,并留出输入输出接口;进一步的,将搭建好的数学模型通过rtw转换成c代码并封装成dll,所生成的dll可以根据要求实时计算输出数据;将dll引用到c#中,并在c#中编写好逻辑控制、通讯接口代码形成工艺模型;

unity虚拟场景模块用于将被控对象所处的工艺现场以3d动画场景的形式进行显示,仿真计算机接收控制指令,该控制指令包含有被控对象动作所需的参数数据,仿真计算机通过工艺模型建立模块的通讯接口将所述参数数据传输至unity虚拟场景模块,unity虚拟场景模块根据所述参数数据控制3d动画场景中的被控对象动作,进而使用者可以直观的、全面的看到控制程序进行控制被控对象动作的执行结果。

unity虚拟场景模块使用unity设计工艺流程虚拟场景,虚拟场景中的设备留出接口并通过工艺模型的通讯接口与工艺模型进行数据交换。unity虚拟场景模块将生产现场工艺、设备动作情况以3d动画场景(虚拟场景)的形式展现出来;动画的动作所需要的数据是从c#中通过tcp/ip通讯传递过来的;需要说明的是,c#只是一种编程语言,也可以用c++、java或其他类型的编程语言代替。

上述下位机还实时接收仿真计算机反馈的信号,以便于下位机继续判断,进一步发出下一个控制指令。

本发明实施例中所提供的自动化仿真系统,上位机安装有plc编程软件,使用者在上位机通过编写等方式输入plc控制程序,使用者在上位机的人机交互界面上触发启动时,下位机下载该控制程序,下位机扫描执行该控制程序,并发送控制指令至仿真计算机,仿真计算机通过工艺模型建立模块接收该控制指令,并将该控制指令发送至unity虚拟场景模块,unity虚拟场景模块根据控制指令中的被控对象的动作数据使被控对象动作,以3d动画场景的形式显示被控对象的在整个工艺流程中动作过程,该实施例中使用者可以直观的进行学习和操作,加深使用者的学习印象。

在某一具体实施例中,整个仿真系统以控制小车行走为例,使用者在上位机上编写好控制程序,下位机下载该控制程序,并执行该程序,使用者在上位机的人机交互界面上输入小车开始行走信号,上位机将该信号传递给下位机,在程序执行过程中下位机判断小车行走距离小于10米,则下位机再传递使小车继续行走的控制指令给仿真机信号接口,仿真机信号接口对该控制指令进行模数转换,仿真机信号接口将进行模数转换后的控制指令再传递给仿真计算机,仿真计算机上的仿真小车开始前进;与此同时,仿真计算机上小车的实际距离也会通过仿真机信号接口、下位机传递至上位机,上位机的控制画面上显示当下小车行走状况,同时下位机一直在判断小车实际距离是否大于等于10米,一旦超过10米,下位机就会发送控制使小车停止前进的控制指令给仿真机信号接口,进一步该指令再被传递到仿真计算机,小车停止前进。

在某一具体实施例中,上述仿真计算机还可以设置有tts语音播报模块,该tts语音播报模块用于向使用者播报执行结果,比如小车开始前进、停止前进等,进而通过图画、声音相结合的方式使使用者能够更加直观的操作,进而加深学习体会。

本发明实施例中所提供的一种自动化仿真系统,上位机采用forcecontrol组态软件,同时,配置真实的下位机(包括plc控制器),下位机留出插线接口和编程接口供操作者进行数据通道的搭建,搭建过程中操作者的实践能力、对自动化系统的认知水平会得到提高;仿真计算机中通过使用工艺模型建立模块和unity虚拟场景模块模拟现场工艺流程,其中工艺模型建立模块通过采用matlab/simulink、c#建立精确的工艺模型,辅以unity虚拟场景对现场设备及工艺进行以3d动画场景的形式真实再现,工艺模型输出实时信号控制3d动画场景(虚拟场景)内设备的动作;上位机、下位机、c#、unity之间会实时同步的进行数据交换,因此本发明实施例提供的自动化仿真系统为半实物自动化实时同步仿真系统,具有以下优点:

1、将现场工艺设备以可视化的3d动画场景的形式表现出来,更加直观和全面,提高对现场设备及工艺的认知;

2、能够实现使用者动手搭建实物控制系统,提高实践能力;

3、充分利用了matlab强大的数据处理能力,提供精确的工艺数学模型供学员学习和调试,并锻炼使用者的上位机设计能力和plc编程能力。

4.、上位机与工艺模型之间可以实时同步进行数据交换。

5、加深自动化专业人员对系统的理解。

6、实验设备利用率高,设备维护少,教室占地面积等教学资源的投入小,不存在安全隐患。

实施例二

参照图3所示,本发明实施例中提供了一种自动化仿真的方法,该方法包括如下步骤:

s301、上位机接收使用者输入的控制程序,并将控制程序发送至下位机;

s302、下位机接收控制程序,扫描执行该控制程序,并基于其接收到的仿真计算机的反馈信号和上位机输入的控制信号生成控制指令;

s303、下位机将控制指令发送至仿真计算机;

s304、仿真计算机接收控制指令,执行所述控制指令,并实时显示执行控制指令的执行结果。

进一步的,上述控制器为plc控制器,上位机接收使用者输入的plc程序,并将该plc程序发送至下位机;

仿真计算机包括:工艺模型建立模块、unity虚拟场景显示模块,所述工艺模型建立模块设置有与所述unity虚拟场景显示模块进行通讯连接的通讯接口以及与仿真机信号接口进行通讯连接的通讯接口;

所述工艺模型建立模块用于搭建被控制对象的数学模型,为所述数学模型赋予参数值生成被控对象的工艺模型;

所述unity虚拟场景模块用于将被控对象所处的工艺现场以3d动画场景的形式进行显示;

参照图4所示,上述仿真计算机接收所述控制指令,执行该控制指令,并实时显示执行控制指令的执行结果,包括:

s401、仿真计算机接收所述控制指令,所述控制指令包含有被控对象动作所需的参数;

s402、仿真计算机通过工艺模型建立模块的通讯接口将所述数据传输至unity虚拟场景模块;

s403、所述unity虚拟场景模块根据所述数据控制3d动画场景中的被控对象动作。

上述自动化仿真的方法,能够满足使用者在使用时更直观和全面的进行操作和学习。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统的具体工作过程,可以参考前述系统实施例中的对应作用,在此不再赘述。

本发明实施例所提供的一种自动化仿真系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块、单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术使用者在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1