通过PROFINET实现S7-1200与CU320-2 PN S120通讯
1.概述
S7-1200 与 CU320-2PN 之间通过 PROFINET IO 可进行周期性及非周期性数据通讯。
使用 S7 功能块 DPWR_DAT/DPRD_DAT,S7-1200PLC 通过 PROFINET 周期性通讯方式可将控制字 1(STW1)和主设定值(NSOLL_A)发送至驱动器,并从驱动器读取状态字(ZSW1)和实际值(NIST_A);
使用 S7 功能块 WRREC/RDREC,可以实现非周期性数据交换,读取或写入驱动器的参数。
关于如何将配备 CU310-2 PN/CU320-2 DP/CU320-2 PN 的 SINAMICS S120 连接到PROFINET IO 系统中,请参见系统手册“SIMOTION SCOUT 通讯”。
控制单元通过 PROFINET IO 连接到 SIMATIC S7 的示例,请参见 FAQ“S7-CPU 和SINAMICS S120 之间的 PROFINET IO 通讯(http://support.automation.siemens.com/WW/view/en/27196655)”中的在线支持。
2.项目配置
2.1软硬件要求
TIA Portal V13 Update2 以上版本
Starter/SIMOTION SCOUT V4.4
S7-1200 PLC
CU320-2PN Fw4.7
将CU320-2PN的X150 P1通过网线与S7-1200的X1 P1连接,中间使用交换机连接。
2.2配置TIA项目
创建一个 S7-1200 的新项目

点击添加新设备,选择自己的S7-1200型号

在网络视图中,将CU320-2 PN拖入画面中

选择自己的固件版本

建立S7-1200与CU320-2 PN的通讯网络

设置S7-1200的IP地址

设置CU320-2 PN的设备名称及IP地址

在设备视图中双击DO SERVO和DO Control Unit添加驱动对象和控制单元

为驱动对象及控制单元添加报文


编译并下载进S7-1200

2.3配置SCOUT项目
在SCOUT里创建S120项目,搜索可用节点

选中S120,为CU320-2 PN(X150接口)分配IP地址及设备名称
http://www.ad.siemens.com.cn/service/answer/solved_211949_1097.html


在线后自动配置项目,在专家列表中设置P922参数,设置对应的通信报文。
保存项目并下载进S120,copy RAM to ROM。


将P840关联到r2090参数的bit0,P864设置为1,如图

3.编程
3.1电机启停及速度控制
S7-1200通过周期性通讯方式将控制字1(STW1)和主设定值(NSOLL_A)发送至驱动器
(1)控制字(MW10)中Bit0做电机的启停控制;
(2)主设定值(MW12)为速度设定值,频率设定值和实际值要经过标准化,使得4000H(十六进制)对应100%,发送的最高频率(最大值)为7FFFH(200%)。可以在P2000参数中修改参考频率(默认50Hz);
(3)在S7-1200中需调用“SFC14(DPRD_DAT)”和“SFC15(DPWR_DAT)”系统功能块,如下图:
DPRD_DAT用于读取驱动装置中的过程数据
DPWR_DAT用于将过程数据写入驱动装置

在调用DPRD_DAT和DPWR_DAT系统功能块的时候需要注意,LADDR应该采用默认变量表中的系统变量Standard_telegram_1_PZD-2_2

3.2出现报错

下位组件错误,S7-1200无法与S120(CU320-2 PN)通讯
3.3解决方法
考虑是CU320-2PN的通讯未设置好,导致S7-1200无法与其通信。经过咨询西门子技术人员(电话400 810 4288)发现是三个报文的顺序不匹配
TIA项目中,三个的顺序是390报文-标准报文1-标准报文1;那么SCOUT项目中的顺序也应一致(可以看到上文中不一致)
故应将SCOUT项目做如下修改:离线后调整三者的顺序,保存项目并下载

解决完错误之后,即可建立监视表,查看MW10、MW12、MW20、MW22的值。

首先将MW10强制为047E(十六进制),MW12强制为0052(十六进制);
再将MW10强制为047F(十六进制),电机即开始旋转,可以监视到MW22的参数基本在0052(十六进制)
P2000参数为3000rpm,故电机实际转速为3000*0052H/4000H=15rpm。(4000H的十进制数为16384)


参考
https://support.industry.siemens.com/cs/cn/zh/view/109478999
http://www.ad.siemens.com.cn/service/elearning/Course/1069.html
https://www.ad.siemens.com.cn/1847/Video/VideoPlay?courseId=2786
通过PROFINET实现S7-1200与CU320-2 PN S120通讯的更多相关文章
- C# 构建S7服务器 西门子的虚拟服务器 测试通讯 HslCommunication应用
		
本文将使用一个gitHub开源的组件技术来实现S7服务器的功能,使用的是基于以太网的TCP/IP实现,不需要额外的组件 github地址:https://github.com/dathlin/HslC ...
 - 各种工业以太网比较(EtherCAT,EtherNet/IP,ProfiNet,Modbus-TCP,Powerlink)
		
EtherCAT(以太网控制自动化技术)是一个以以太网为基础的开放架构的现场总线系统,EterCAT名称中的CAT为ControlAutomation Technology(控制自动化技术)首字母的缩 ...
 - Python通过snap7库与西门子S7-1200建立S7通信,读写存储器数据,顺便写个流水灯
		
1.snap7 简介 snap7 是一个基于以太网与S7系列的西门子PLC通讯的开源库. 支持包括S7系列的S7-200.S7-200 Smart.S7-300.S7-400.S7-1200以及S7- ...
 - PROFIBUS,PROFINET,Ethernet三者的区别
		
PROFIBUS,PROFINET,Ethernet三者的区别 简单一点说,PROFINET=PROFIbus+etherNET,把Profibus的主从结构移植到以太网上,所以profinet会有C ...
 - 如何实现PLC与THINGWORX工业物联网平台对接
		
物联网(Internet of Things),简称 IoT,对于制造商来说,是行业乃至世界范围内的一股变革浪潮.在我们设计和制造的产品中,将会不断嵌入各种软件.传感器和启用 IP 的连接功能.IDC ...
 - 西门子S7-1200与 G120系列变频器USS通信
		
西门子S7-1200 紧凑型PLC在当前的市场中有着广泛的应用,作为经常与SINAMICS G120系列变频器共同使用的PLC,其USS通信协议的使用一直在市场上有着非常广泛的应用.本文将主要介绍如何 ...
 - 西门子 S7-300 PLC 从入门到精通的100个经典问题
		
1:使用CPU 315F和ET 200S时应如何避免出现“通讯故障”消息? 使用CPU S7 315F, ET 200S以及故障安全DI/DO模块,那么您将调用OB35 的故障安全程序.而且,您已 ...
 - 自学工业控制网络之路2.2-PROFINET
		
返回 自学工业控制网络之路 自学工业控制网络之路2.2-PROFINET PROFINET由PROFIBUS国际组织(PROFIBUS International,PI)推出,是新一代基于工业以太网技 ...
 - 关于485通信不稳定问题解决方案[STM32产品问题]
		
485通讯不稳定的问题(具体表现为有时能通讯上,有时通讯不上) RS485在连接设备过多.通讯距离过长.双绞线质量差,接线不规范等,都会导致通讯不稳定的问题. 解决方案: 一.关于485总线的几个概念 ...
 
随机推荐
- 同事提出个我从未想过的问题,为什么Kubernetes要"多此一举"推出静态Pod概念?
			
同事提出个我从未想过的问题,为什么Kubernetes要"多此一举"推出静态Pod概念? 我们知道k8s中Pod可以说是一个合格的容器小管家,Pod 被设计成支持多个容器可以一起进 ...
 - suse 12 部署chrony时间同步服务器
			
文章目录 1.ntp和chrony的区别 1.1.关于chrony 1.2.chronyd的优势 2.环境介绍 3.部署chrony 4.配置chrony 4.1.配置文件解析 4.2.查看chron ...
 - Ultra Math Preview : VSCode上的LaTeX公式实时预览插件
			
一直觉着 VS Code 的 TeX 公式(包括 markdown 和 LaTeX)只能在定界符上hover预览,或者开一个预览面板看,没有那种像 Typora 一样紧跟在公式后面的预览面板,多少有些 ...
 - 6.Flink实时项目之业务数据分流
			
在上一篇文章中,我们已经获取到了业务数据的输出流,分别是dim层维度数据的输出流,及dwd层事实数据的输出流,接下来我们要做的就是把这些输出流分别再流向对应的数据介质中,dim层流向hbase中,dw ...
 - 如何把Spring学精通了?
			
作为 Java 后端工程师,几乎都要用到 Spring,今天这篇文章是和大家说说如何学好 Spring. 在之前的一篇 Java 读书路线的文章中,我介绍过 Spring 的读书路线: 虽然 Spri ...
 - jdk、jre、jvm分别是什么?有什么联系?
			
JDK:是Java Development Kit的缩写,是Java的开发工具包,JDK是整个JAVA的核心.它提供了编译.运行Java程序所需的各种工具和资源.有了它,Java开发者就可以编译和运行 ...
 - C语言中puts()和printf()区别
			
puts的功能更加单一,只能输出字符串:printf的功能更加广,可以格式化数据,输出多种类型的数据. puts()函数用来向标准输出设备(屏幕)写字符串并换行. 调用方式为puts(string): ...
 - 【.net】AppDoamin| 应用程序域
			
在.net framework框架上,一个进程可以有多个appdomain.因此一个进程可以运行多个程序. 应用程序域的出现: (来自msdn) 在.net出现以前,一个进程下,只能运行一个应用 ...
 - 5、CPU 的线程与操作系统的线程有何关系?操作系统中的进程和线程是什么关系?
			
CPU中的线程和操作系统(OS)中的线程即不同,在调度的时候又有些关联.CPU中的线程,我们叫它们Thread,和OS中的线程的名字一样.它来自同步多线程(SMT,Simultaneous Multi ...
 - Redis学习笔记(详细)
			
目录 概述 Redis安装启动 常用五大数据类型 Redis键(key) Redis字符串(String) Redis列表(List) Redis集合(Set) Redis哈希(Hash) Redis ...