在工业控制器与仿真应用之间交换数据以仿真机器的接口的制作方法
【专利说明】在工业控制器与仿真应用之间交换数据以仿真机器的接口
[0001] 相关申请的交叉应用
[0002] 本申请要求于2013年11月8日提交的、题目为"INTEGRATING CONTROLLERS WITH SMULATIONS"的美国临时专利申请第61/901,956号的权益和优先权,其全部内容通过参 引合并至本文中。
【背景技术】
[0003] 对于工程师、客户和其他相关方来说,可以在设计、原型制作和演示不同设计选项 中对工业设备进行仿真是必要。这样的仿真可以被用于对其相应的物理设备的随时间推移 的虚拟化操作进行模拟,并且还可以被用于提供各种被仿真设备的视觉表示。在一些示例 中,可使用仿真和建模应用来定义用于被仿真机器部件的参数。这些参数确保了在仿真期 间被模拟设备以与针对其真实世界相应方可以预期的相同方式来执行。
[0004] 除了提供机器功能性以执行各种工业操作的物理工业设备之外,控制器系统还是 工业自动化环境中的必要部件。通常使用工业控制器系统向物理机器提供控制指令以完成 工厂中的各种任务,例如产品制造、材料处理、批量处理、监督控制和其他工业功能。因此, 通过将工业机器与适当的控制器进行组合,可以创建能够执行各种操作的工业系统。
【发明内容】
[0005] 本文公开了便利对用于工业自动化的机器进行仿真的系统、方法和软件。在至少 一个实现中,利用API在仿真应用中所创建的仿真模型与该仿真模型外部的工业控制器系 统之间建立至少一个通信链路,其中该仿真模型包括对工业自动化环境中所使用的机器的 至少一部分的虚拟表示的定义。然后通过该通信链路在工业控制器系统与仿真模型之间交 换数据。
[0006] 提供了本概述从而以简化形式介绍下面在技术公开中进一步描述的概念的选择。 应当理解的是,本概述既不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在 用于限制所要求保护的主题的范围。
【附图说明】
[0007] 参照下面附图可以更好地理解本公开内容的许多方面。尽管结合这些附图描述了 若干实现,但本公开内容并不限于本文所公开的实现。相反,本公开内容旨在覆盖所有替 换、修改和等同物。
[0008] 图1是示出了可以用于便利对工业自动化中所使用的机器进行仿真的计算系统 的框图;
[0009] 图2是示出示例性实现中的计算系统的操作的流程图;
[0010] 图3是示出以被仿真工业设备实现控制器的概览的框图;
[0011] 图4是示出涉及示例性实现中的计算系统的操作场景的框图;
[0012] 图5是示出涉及示例性实现中的计算系统的操作场景的框图;
[0013] 图6是示出示例性实现中的计算系统的框图。
【具体实施方式】
[0014] 以下描述和相关联附图教导了本发明的最佳模式。出于教导发明原理的目的,可 以简化或省略最佳模式的一些常规方面。下面的权利要求指定了本发明的范围。最佳模式 的一些方面可能未落入由权利要求所指定的本发明范围内。因此,本领域技术人员应当认 识到,来自最佳模式的变型落入本发明的范围内。本领域技术人员应当认识到,以下所描述 的特征可以以各种方式来组合以形成本发明的多种变型。因此,本发明并不限于以下所描 述的特定示例,而仅由权利要求或其等同物来限定。
[0015] 工业自动化环境一一例如汽车制造厂、食品加工厂、石油钻井作业、微处理器制造 设施和其他类型的工业企业一一通常采用若干机器和其他设备来执行器业务操作。例如, 工业自动化企业可以采用包括如下的机器:传感器、驱动器、泵、过滤器、钻头、电机、机器 人、碾磨机、打印机、传送带、制造机械或任何其他工业自动化设备。在产品开发的设计、原 型制作和测试阶段,可以利用计算系统对工业自动化环境中所使用的这些机器和其他设备 进行仿真,以向工程师和最终产品客户提供虚拟表示。这些仿真通常包括正被仿真的机器 的物理属性、参数和其他方面,以确保由计算系统提供适当的模拟。在一些示例中,用户可 能期望对被仿真设备进行控制以进一步说明该设备在被物理实现时可能预期的功能性和 操作。因此,用户可能更喜欢将一个或更多个实际控制器或被模拟控制器附接至被仿真设 备,以演示和测试该设备的不同的可控制操作。
[0016] 图1是示出可以用于便利对工业自动化系统中所使用的机器进行仿真的计算系 统100的框图。计算系统100包括工业控制器系统110、应用编程接口(API) 120和仿真模 型130。计算系统100代表任何计算环境,其可以包括在一些示例中以分布式方式被定位在 地理上不同的区域且经由通信网络互连的若干不同的系统和设备。
[0017] 工业控制器系统110包括例如工业控制器,该工业控制器可以包括自动化控制 器、可编程逻辑控制器(PLC)或在自动化控制中使用的任何其他控制器。工业控制器系统 110可以包括一个或更多个物理控制器和/或以软件实现的模拟控制器--包括物理控制 器和模拟控制器的组合。仿真模型130包括对工业自动化环境中所使用的机器的至少一部 分的虚拟表示的定义。仿真模型130通常至少部分地利用仿真应用来被创建。例如,仿真 应用可以包括第三方仿真框架工具,例如MATLAB? Simulink?,然而仿真应用可以包 括任何其他合适的仿真应用或在一些实现中的应用的组合。除了其他功能性之外,API 120 提供了使得能够在工业控制器系统110与仿真模型130之间进行通信的接口。现在将参照 图2来描述计算系统100的操作。
[0018] 图2是示出示例性实现中的计算系统100的操作200的流程图。在本文中,图2所 示的操作200还可以被称为仿真过程200。操作200的步骤在下面放在括号内指示。下面 将参照图1的计算系统100来继续仿真过程200的讨论以说明其操作,但要注意的是,图1 中所提供的细节仅是示例性的,且并不旨在将仿真过程200的范围限制于图1所示的特定 实现。
[0019] 可以采用仿真过程200来对计算系统100进行操作,以便利对工业自动化中所使 用的机器进行仿真。如在仿真过程200的操作流程中所示的,计算系统100利用应用编程 接口(API) 120在仿真应用中所创建的仿真模型130与仿真模型130外部的工业控制器系 统110之间建立至少一个通信链路(201)。应当理解的是,在一些实现中,可以在仿真模型 130与工业控制器系统110之间建立不止一个通信链路。仿真模型130包括对工业自动 化环境中所使用的机器的至少一部分的虚拟表示的定义(201)。例如。仿真模型130可以 定义整个机器人的设计和参数,或者可以定义机器人的单个部件,例如手臂接合点、驱动电 机、关节机构或机器人的一些其他部分。在一些示例中,仿真模型130可以包括用于呈现机 器的三维可视化或其至少一部分的信息。
[0020] 通过通信链路在工业控制器系统110与仿真模型130之间交换数据(202)。在一 些实现中,工业控制器系统110可以包括物理工业控制器设备、以软件实现的模拟工业控 制器或任何其他控制系统一一包括其组合。在一些示例中,工业控制器系统110通常可以 通过由API 120所建立的通信链路向仿真模型130提供控制指令。例如,可以利用API 120 通过将与工业控制器系统110相关联的端口链接至仿真模型130以在工业控制器系统110 与仿真模型130之间创建输入和输出接口,来在工业控制器系统110与仿真模型130之间 建立至少一个通信链路。然后可以通过利用输入和输出接口、在工业控制系统110与仿真 模型130之间通过通信链路交换数据,以在工业控制器系统110与仿真模型130之间传送 控制程序参数、控制信号和其他信息。然后仿真模型130可以利用从工业控制器系统110 接收的数据来生成正被仿真的机器的动画可视化。例如,来自工业控制器系统110的数据 可以指示仿真模型130以与工业控制器系统110可以驱动物理机器本身相同的方式来使被 仿真机器的三维可视化移动或活动。
[0021] 在一些示例中,可以通过经由如下图形用户界面接收用户输入来将与工业控制器 系统110相关联的端口链接至仿真模型130以创建输入和输出接口:该图形用户界面定义 与工业控制器系统110相关联的端口到仿真模型130的映射,并且对该映射进行处理以在 工业控制器系统110与仿真模型130之间创建输入和输出接口。例如,图形用户界面可以 为操作员呈现各种不同的输