西门子SIMATIC目标1500S的虚拟调试,第1部分:建模和桌面仿真金宝app
从这个系列中:西门子SIMATIC Target 1500S的Simulink虚拟调试金宝app
由于软件在现代生产机器和系统中所占的份额越来越大,在现场调试期间无法保持成本、项目持续时间和质量的风险正在增加。物理机器或工厂的延迟可用性使得测试机器软件变得更加困难。
虚拟调试可以使用机器的数字模型对软件进行早期测试和验证。在仿真模型中,可以在物理机器可用之前,在各种场景中测试、优化和验证力学、机器软件和要制造的产品之间的相互作用。这种方法降低了成本,保证了产品的高质量,并加快了调试速度。
了解如何创建机器的数字孪生,并使用控制算法对其进行模拟。然后了解如何使用自动代码生成和Siemens将应用程序集成到TIA Portal项目中®硅镁质®Target 1500S™用于Sim金宝appulink®。最后,使用SIMATIC S7-PLCSIM高级模拟控制器进行手表虚拟调试。
大家好,欢迎收看西门子SIMATIC Target 1500S的Simulink虚拟调试视频。金宝app我叫Jens Lerche。我是德国MathWorks的一名应用工程师。今天,我将做这个视频的第一部分,涵盖在Simulink环境中的建模路径。金宝app在第二部分中,我们得到了西门子公司Felipe Ravazzi先生金宝app的支持,他稍后将接管代码生成、集成和联合仿真的主题。
费利佩,也许你可以自己做个简短的介绍?
是的。你好,。我的名字是Felipe Ravazzi。我在西门子公司从事售前支持工作。金宝app我负责自动化和虚拟调试的课题。
在这里,你可以看到我们的议程。首先,我将向您展示一种快速简便的方法来从CAD图纸中创建仿真模型。然后,我们将看到如何在Simulink中建模控制器逻辑以运行闭环桌面仿真。金宝app之后,Felipe将接管并谈论使用SIMATIC目标1500S用于Simulink的代码生成,然后集成到STEP 7 TIA门户项目中。金宝app
最后,我们将在模拟的西门子PLC PLCSIM Advanced上运行Digital Twin和Simulink以及控制算法的联合仿真。金宝app让我们开始吧。
在这个模型中,你可以清楚地看到一个闭环系统,它有一个工厂部分,代表一个机器人手臂,或者更一般地说,作为一个机械装配,以及控制部分,在前面控制机械装配的运动。使用该模型可以做的第一件事是在Simulink中进行循环模型仿真。金宝app在动画窗口中,您可以看到植物部分的行为。在第二个窗口中,你还可以看到控制机械臂的状态图的动画。
该控制软件的算法分为四个单状态机,通过事件相互交互。外部状态机用于输送带。这两个内层是机器人的手臂和夹持器。
很明显,你可以运行你的系统,而不需要制造一个机械部件,连接一根电线,或将任何一行代码转移到PLC。这允许在完整的系统或单个组件上进行大量的测试、设计迭代和优化,而无需在原型、制造、测试平台、旅行等方面花费数千美元。当然,这样的模型不会从天上掉下来。但是我们看到,在大多数情况下,模型已经存在,只是在不同的开发工具中。
这是CAD工具。几乎所有的行业公司都把他们的机器放在CAD工具中。因此,创建该植物模型的大部分工作已经完成。
在这里,您可以看到CAD工具中的机器人模型。每个身体元素都用代表自由度的关节与其伴侣相连。只需点击几下,就可以在Simulink中导入该模型。金宝app只需一个命令,就可以根据CAD装配自动创建模型。这个模型已经可以模拟了。现在唯一要做的就是激活激活输入和感应输出。当然,还可以添加电动机、液压缸等。但这不应该是这次演讲的主题。
从现在开始,我们将专注于控制器。让我们假设我们在循环模型模拟中反复测试整个算法。我们发现了一些错误并添加了被遗忘的需求。但是,我们不是从头开始用PLC编程语言编写代码,而是使用自动代码生成在PLC上实现算法。
我想现在是时候交给你了,斐利贝。
是的。谢谢你,延斯。切换到我的屏幕。
我们已经为机械臂创建了这个流程图,就像我们在这里看到的那样。我们希望在我们的现场层面上重用它,而不需要手动重新编程任何东西,比如ATL中的PLC代码,因为——技术诀窍——就在这里,已经可用了。我们想要利用这个。
为了达到这个目的,我们可以使用Target 1500S,它是西门子提供的Simulink的附加组件。金宝app
因此,作为系统目标文件,在安装之后,我们可以简单地在这里选择target 1500S。这意味着我们可以对目标进行代码生成。让我们快速浏览一下Target 1500S的设置。
在这里可以找到,目标1500S选项。我们可以做的第一件事是选择TIA门户项目。然后通过TIA的开放性来识别我们项目中可用的设备。还可以看到我们连接的是哪个PROFINET接口以及我们使用的是哪个IP地址。
如果我们想要将SCL文件直接导入到TIA Portal项目中,我们可以使用下面的这个选项。例如,我们可以选择导入一个软件单元,或者导入一个组织块。
看看下一步,我们在这里可以选择激活外部模式,该模式用于与Simulink进行在线数据访问。金宝app此外,我们有更多的选择。在这里,例如,在步骤7中启用周界访问,这意味着,例如,对于PID控制器,我可以操纵TIA Portal中的P, I和D参数。进一步的选择,在这里,是启用step7访问内部模型信号,以便更透明地了解模型中正在发生的事情,或者,例如,启用对Stateflow状态的访问。
一个非常好的功能是下面的这个选项,它将Simulink模型导出为HTML网页,然后可以在PLC web服务器上显示。金宝app看看其他选项,这里我们有可能自动将生成的共享目标文件(即我们的二进制文件)直接传输到PLC。
好了,关于设置说得够多了。让我们看看实际情况。我的目标是生成包含statflow逻辑的块。我可以用右键点击,C/ c++代码,构建这个子系统。将弹出一个新窗口,询问变量的存储类。在这种情况下,我将为所有变量选择ExportedGlobal,然后按Build。
如果我们继续并在底部选择View Diagnostics,我们可以检查代码生成的进度。SCL源被自动导入到TIA Portal项目中。并将二进制文件传输到PLC。这意味着我们有一个完全自动化的集成工作流。
好的。现在,查看TA Portal项目,我们可以看到我们的SCL源代码被导入,这也是为什么它在这里,在外部源文件下可见的原因。这个源代码在我们的PLC中生成了一些功能块和udt。
我们可以说我们有三个基本功能块,加载,卸载和一步。这些模块总是需要在西门子PLC上运行目标模型。Load用于将共享对象文件加载到RAM内存中。Unload是用来卸载的。One Step块用于执行我们的模型。
这就是为什么它与我们在Simulink中编译的块具有完全相同的接口。金宝app这基本上意味着我们的block和Simulink具有相同的输入和输出。金宝app我们可以看到他们在这里。
由于我们正在谈论虚拟调试-我们想要实现一个完整的软渲染循环解决方案-席梦思提供了一个名为PLCSIM高级的工具,使我们能够模拟PLC。在这种情况下,我们在S7-1518 MFP中进行模拟,这是一个具有ODK功能的PLC,这意味着它可以运行c++代码。
所以我在这里所做的是创建一个新的PLC实例,然后将我的TIA门户项目加载到模拟的PLC。我的PLC已经处于运行模式,这意味着我生成的statflow逻辑已经在PLC上运行。
为了可视化,我也可以,在这里,连接到PLC。然后我可以在线检查输入和输出的值。
现在看一下虚拟调试的下一步,如果我们没记错的话,我们的Simulink模型不仅由状态流逻辑组成。金宝app我们还模拟了这个机械臂。因此,对于虚拟调试,在这种情况下,我们希望在PLCSIM Advanced和MATLAB Simulink之间进行联合仿真。金宝app因此,这意味着我们必须找到一种方法来耦合两个软件工具之间的值。
在这两个工具之间耦合值的一种方法是使用s函数块。为了实现这个值耦合我们添加了一点Simulink模型。金宝app现在,在控制部分,我们没有使用之前的状态流模型,我们添加了这个s函数,它用于与PLCSIM Advanced的耦合值。
这个s函数实际上是在寻址PLCSIM高级API,并在共享内存上交换值。现在我们已经在PLC上运行了逻辑,并且机器人模型仍然在Simulink中,我们可以通过按下Simulink中的Play按钮来开始模拟。金宝app正如我们所看到的,机器人正在做与我们在循环模型仿真中所做的完全相同的运动,这意味着PLC上的逻辑如预期的那样工作。这是验证字段级别上的执行实际上显示相同行为的好方法。
好的。现在,如果你没记错的话,我还把Simulink模型导出为一个网页。金宝app如果我们移动到PLC网络服务器,在这里,我可以显示模型。
这就是我之前生成的状态流逻辑。它现在显示在PLC web服务器上。如果我执行模拟,我还可以看到当模型在这里被模拟时状态流状态的变化。
最后但同样重要的是,让我们快速浏览一下本次网络研讨会中使用的产品。下载188bet金宝搏
从MathWorks的角度来看,我们有MATLAB作为基本工具和Simulink作为仿真平台。金宝app为了描述机械臂的力学行为,使用了Simscape和Simscape多体工具箱。状态机逻辑与statflow工具箱一起显示。使用MATLAB编码器和Simulink编码器进行C/ c金宝app++代码生成。
从西门子方面来看,我们有一个SIMATIC step7专业的TIA门户,用于为我们的PLC创建项目。我们还使用SIMATIC ODK 1500S作为c++代码的交叉编译器,PLCSIM Advanced Version 3.0用于模拟我们的PLC, SIMATIC Target 1500S作为促进工作流的整体工具,因此从编译c++代码,创建ODK项目,将SCL源传输到TIA Portal项目并将二进制文件传输到控制器上。
这就是今天关于SIMATIC Target 1500虚拟调试的网络研讨会。非常感谢您的关注。
你亦可选择下列网址:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家网站没有针对您所在位置的访问进行优化。