如何使用MATLAB或Simulink接口到Modicon或Allen Bradley PLC等PLC ?金宝app

118ビュ(過去30日間)
我想知道MATLAB/Simulink是否带有与Modicon金宝app或Allen Bradley PLC等PLC接口的驱动器。

採用された回答

MathWorks支金宝app援小组
MathWorks支金宝app援小组 2021 年 5 月 19 日
編集済み:MathWorks支金宝app援小组 2021 年 5 月 19 日
MATLAB和Simulink与plc的接口有几个选项。金宝app
1) 金宝appSimulink PLC编码器:
金宝appSimulink PLC Coder从Simulink模型,状态流程图和嵌入式MATLAB函数生成硬件独立的IEC 61131结构化文本。结构化文本以PLCOpen XML和其他被广泛使用的集成开发环境(ide)支持的文件格式生成。金宝app因此,您可以将应用程序编译和部署到许多可编程逻辑控制器(PLC)和可编程自动化控制器(PAC)设备上。
金宝appSimulink PLC Coder生成测试台架,帮助您验证使用PLC和PAC ide和仿真工具的结构化文本。金宝app通过IEC认证套件(适用于IEC 61508和IEC 61511),您可以获得对行业标准的支持。
有关Simulink PLC编码器和IEC认证金宝app套件的更多信息可在这里:
2) OPC工具箱
OPC工具箱可以与MATLAB代码或Simulink模型一起使用,与连接到PLC的OPC服务器通金宝app信。OPC工具箱是一个扩展MATLAB数值计算环境能力的函数集合,以及扩展Simulink动态系统仿真环境的块。金宝app使用OPC工具箱,您可以直接将实时OPC数据获取到MATLAB和Simulink中,并从MATLAB和Simulink中直接将数据写入OPC服务器。金宝app
在Simulink建模和仿真环境中工作时金宝app,可以使用OPC工具箱块库中的块来使用实时OPC数据作为模型的输入,并使用模型输出更新OPC服务器。OPC工具箱块库包括伪实时运行Simulink模型的能力,通过减慢仿真速度以匹配系统时钟。金宝app您可以使用Simulink和OPC Toolbox块库创建控制系统原型,提供工厂模拟器,并执行优化和调优任务。金宝app
更多关于OPC工具箱的信息可在这里:
3)实时车间嵌入式编码器
一些plc可以用C代码编程。Real-Time Workshop Embedded Coder从Simulink和Stateflow模型生成金宝appC代码,具有专业手写代码的清晰度和效率。生成的代码非常紧凑和快速。为遗留应用金宝app程序、功能和数据的集成提供了全面支持。金宝app通过IEC认证套件(适用于iec61508和iso26262)和DO认证套件(适用于DO-178),您可以获得对行业标准的支持。
更多关于实时车间嵌入式编码器的信息可在这里:
//www.tatmou.com/下载188bet金宝搏products/rtwembedded/
4) 金宝appSimulink Real-time/Speedgoat与现场总线协议通信。MathWorks还支持现场总金宝app线协议,例如Ethernet/IP和通过Simulink Real-time实现的Modbus RTU(现场总线消息的计时需要一台实时机器)。金宝app几乎所有的plc都支持一种形式的金宝app现场总线协议或另一种协议,所以这将再次取决于它们的硬件。
支持的协议的完整列表可以在这里金宝app找到:
一位AE个人使用Speedgoat通过以太网/IP与Allen-Bradley PLC通信。使用Simu金宝applink实时外部模式,您可以在执行期间将这些数据流回Simulink。除了将数据传输到Simulink, Speedgoat系统还允许进行实时测金宝app试。
5)仪表控制工具箱,具有串行通讯功能。仪表控制工具箱有RS-232驱动程序块,直接输入到Simulink。金宝app但是,您必须配置此块以使用DF1协议(一种常见的工业RS-232协议),这需要了解DF1消息传递。这个选项“开箱即用”是行不通的。
6)基于TCP/IP或UDP的桌面模拟。如果桌面模拟是可以的,但OPC太慢(或没有服务器可用),我也会考虑TCP/IP或UDP的解决方案。西门子、贝加莱和倍福plc就是这样。这个想法是有一个s函数,在每个步骤之后暂停模拟,通过TCP/IP或UDP向PLC发送和接收参数,然后继续下一个时间步骤。例子:
但是,这并不是开箱即用的,需要扎实的MathWorks工具和IDE (RsLogix)知识,或者得到我们咨询小组的支持。金宝app
重要问题:
1)他们想在PLC上针对Simulink中的工厂模型运行(手写)控制程序吗?2)数据交换必须多快(分钟,秒,毫秒)?3)每一步交换多少数据(几个值或数千个参数)?金宝app-a) If this is slow and little data --> connection over OPC should be the easiest way (out of the box), also MathWorks supports the current OPC standard OPC UA (Unified Architecture) since R2015b.4) Is it enough to run (co-simulate) the PLC program (real-time) against a Desktop simulation (non-real-time) in Simlink? If so, then no SLRT needed.5) Or do they need both sides to be real-time? If so, then use SLRT on Speedgoat hardware and connect over an industrial fieldbus (e.g. Ethernet/IP).
6)他们是否对从Simulink模型生成PLC程序感兴趣?金宝app如果是这样,那么使用PLC编码器进行IEC 61131-3结构化文本代码生成。
3件のコメント
omkar tulankar
omkar tulankar 2020 年 12 月 29 日
你好,
我通过OPC建立simulink与西门子TIA portal之间的通信,实现MATLAB和金宝appPLC之间数据的读写。它工作得很好,我只是想知道是否有任何代码或功能可用来做同样的艾伦布拉德利PLC?
因为在西门子端建立通信的文件是可用的,但我在罗克韦尔自动化网站上找不到任何文件。
有人能帮我一下吗?

サ▪▪ン▪▪ンしてコメントする。

その他の回答(2件)

(lancaster沙
(lancaster沙 2017 年 5 月 19 日
使用opc工具箱进行matlab和plc连接是否需要硬件

Arsalan沙
Arsalan沙 2019 年 8 月 7 日
我在哪里可以找到更多的细节。我想实现这个
西门子、贝加莱和倍福plc就是这样。这个想法是有一个s函数,在每个步骤之后暂停模拟,通过TCP/IP或UDP向PLC发送和接收参数,然后继续下一个时间步骤。
但我根本找不到任何指导。你能给我链接教程或文献吗?

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!

翻译的