通过DP总线实现S7-300/400与SINAMICS S120 通讯
一、DP总线通讯功能概述
S7-300/400与SINAMICS S120 之间通过DP总线可进行周期性及非周期性数据通讯。使用标准S7功能块SFC14/SFC15,S7-300/400PLC通过PROFIBUS周期性通讯方式可将控制字1(CTW1)和主设定值(NSETP_B)发送至驱动器;使用标准S7功能块SFC58 / SFC59,可以实现非周期性数据交换,读取或写入驱动器的参数。
二、S7-300/400与S120装置的连接
三、驱动器站地址设置
1. 驱动装置的PROFIBUS通讯地址设置有两种方法:
(1) 通过CU控制单元上的拨码开关实现地址设置,有效地址值为:1…126,本例中地址设置见下图。
注意:通过拨码开关改变地址时应断掉变频器电源
(2) 在拨码开关全部拨到OFF或ON状态时可以利用参数P918设置地址,否则
P918参数中设置的地址是无效的。
驱动装置的PROFIBUS 通讯波特率默认为:1.5Mbps
2. 在S7-300/400的硬件组态中设定的驱动装置站地址应与驱动装置的站地址一致。
四、通讯报文设置
对于不同的驱动装置只有特定的报文结构能被选用,详细描述请参考:SINAMICS_S120_Commissioning_Manual。表1为常用报文。
表1.
报文格式999为用户自定义报文,当用户选择此报文格式时,电机的起、停控制位等需自己做关联。此时必须将PLC控制请求置1(P854=1)。
注意:用户可在S7-300/400硬件配置时根据需要配置报文结构,配置结束后进行
编译保存;之后打开Starter,核对报文结构是否一致,若不一致需在Starter
中打开“configuration”做调整后点击“Transfer to HW config”按钮。
五、用DP总线对电机起、停及速度控制
S7-300/400PLC通过PROFIBUS周期性通讯方式将控制字1(CTW1)和主设定值(NSETP_B)发送至驱动器。
(1) 控制字中Bit0做电机的起、停控制。
(2) 主设定值为速度设定值,频率设定值和实际值要经过标准化,使得4000H(十六进制)对应于100%,发送的最高频率(最大值)为7FFFH(200%)。可以在P2000中修改参考频率(缺省值为50Hz)。
(3) 组态的报文结构 PZD=2或自由报文999时,在S7-300/400 中可用“MOVE”指令进行数据传送;当组态的报文结构 PZD〉2,在S7-300/400 中需调用SFC14和SFC15系统功能块。
• SFC14(“DPRD_DAT”)用于读Profibus 从站的过程数据
• SFC15(“DPWR_DAT”)用于将过程数据写入Profibus 从站
例子:SERVO_02 ”控制字、主设定值的发送及状态字、实际频率的读取程序
(1) 控制驱动器运行:
通过先发送控制字(STW1)047E然后发送047F来启动驱动器,该数据控制字在DB10.DBW8(见图4)中指定,主设定值在DB10.DBD10中设定,运行信号为M1.0。这些值均通过变量表VAT_2设定及监控。控制程序见图3。
(2)停止驱动器:
应发送控制字047E至驱动器。
(3)读取驱动器状态值及频率实际值:
PLC接收状态字1(ZSW1),存放在DB10.DBW0中;接收驱动器传来的频率实际值,存放在DB10.DBD2中。
六、驱动器参数的读取及写入
1.扩展PROFIBUS DP功能(DPV1)
非周期性数据传送模式允许:
• 交换大量的用户数据(最多240 bytes)
• 用DPV1的功能 READ 和 WRITE可以实现非周期性数据交换。传输数
据块的内容应遵照 PROFIdrive参数通道(DPV1)数据集DS47(非周期参
数通道结构)。
2. 参数请求及参数应答的结构
参数请求包括三部分:请求标题、参数地址及参数值。
表2.参数请求格式
3. S7-300/400PLC通过PROFIBUS非周期性通讯方式读取驱动器参数。
请注意:PLC读取驱动器参数时必须使用两个功能块SFC58 / SFC59 (程序参见图5)
举例如下:
(1) 使用标志位M10.0及功能SFC58块将写请求(数据集RECORD DB1) (图6)发送至驱动器。
将M10.0设定为数值1启动写请求,当写请求完成后必须将该请求置0,结束该请求。MW108 (RET_VAL)显示错误代码,用于表示功能处理时发生的错误。有关错误的描述参见“系统功能/功能块帮助”。
(2) 之后,使用标志位M10.1及功能SFC59块将读请求发送至驱动器,驱动器返回参数值响应(响应块DB2) (参见图7) 。
将M10.1设定为数值1启动读请求,当读请求完成后必须将该请求置0,结束该请求。MW110 (RET_VAL) 显示包括错误代码。
用于表示功能处理时发生的错误。有关错误的描述参见“系统功能/功能块帮助”。
4. S7-300/400PLC通过PROFIBUS非周期性通讯方式写入驱动器参数P1217。
举例如下:
PLC写参数时只需使用SFC58,在本项目的Network 3中发送写请求DB1 (参见图9) 到驱动器;PLC读“写参数”响应时需使用SFC59,在本项目中读取驱动器返回的参数值数据块为DB2 (参见图10) 。程序参见图8。
(1) 将M10.0设定为数值1启动写请求,当写请求完成后必须将该请求置0,结束该请求。MW108 (RET_VAL)显示错误代码,用于表示功能处理时发生的错误。有关所有错误的描述参见“系统功能/功能块帮助”。
(2) 将M10.1设定为数值1启动读请求,当读请求完成后必须将该请求置0,结束该请求。MW110 (RET_VAL) 显示包括错误代码。
用于表示功能处理时发生的错误。有关错误的描述参见“系统功能/功能块帮助”。
Profibus星型总线可能的两种接法:1使用中继器,将分支与主干网隔离,有多少路分支用多少个中继2使用OLM(光纤链路模块),参考手册:http://support.automation.siemens.com/CN/view/zh/241641763.2StarTopology(16页)图。所有OLM的DP连成电器的线性总线,所有光纤口出去为星型总线的分支。DP总线一般来说没有中继器只允许一个短接线分支,长度取决于波特率,波特率越高允许的短接线越短;短接线不应该打终端电阻,一个电缆连接的总线中如果终端电阻超过2个,会加大发送驱动器的负载,可连接的节点会减少而到不了32个。短接线处会引起信号反射。短接线越多,信号反射叠加会造成信号质量很差以至于通讯失败。ProfibusDP基于RS485,以上实际上也就是485的特性,大家有兴趣可以研究研究RS485。 查看原帖>>
搜一下:dp总线可以接成星形吗?如可以有什么要求?
什么是数据采集
数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。数据采集技术广泛应用在各个领域。比如摄像头,麦克风,都是数据采集工具。
在互联网行业快速发展的今天,数据采集已经被广泛应用于互联网及分布式领域,数究据采集领域已经发生了重要的变化。首先,分布式控制应用场合中的智能数据采集系统在国内外已经取得了长足的发展。其次,总线兼容型数据采集插件的数量不断增大,与个人计算机兼容些报却创滑架形级基的数据采集系统的数量也在增加。国内外各种数据采集机先后问世,将数据采集带入了清训张一个全新的时代。
数据采集的批三大要点:
采集的全面性:采集往差且的数据量足够大具有分析价值、数据面足够支撑分析需求。比如查看app的使用情况这一行为,我们需要采集从用户触发时的环境信息、会话、以及背后的用户id,最后需要统计这一行为在某一时段影静翻阻甲触发的人数、次数、人均次数、活跃比等。
采集的多维性:数据更重要的是能满足分析需求。灵活、快速自定义数据的多种属性和不同类型,从而满足不同的分析目标。比如“查看app的使用情况”这一行为,我们需要采集用户使用的app的哪些功能、点击频率、使用时常、打的app的时间间隔等多个属性。才能使采集的结果满足我们的数据分析!
采集的高效性:高效性包含技术执行的高效性、团队内部成员协同的高效性以及数据分析需求和目标实支送联通硫杆慢现的高效性。
数据护分州十免大采集的四大步骤:
明确数据需求:
由于客户所处行业不同,诉求也就各不一样。所以首先必须明确客对于数据斗职讲卷电企的最终用途,确定客户需求。根据客户所需搜集的数据信息与客户沟通之后,总结需要收集位班货象来它屋附贵的字段。
2.调研数据来源:
根据客户需求确定数据采集范围。然后锁定采集范围和对采集的数据量进行预估。细化客户需求,研究采集方向。
3.确定用什么采兰己抓兴集工具、软件、代码
面对不同的网站我们只有选择更加合适的组合才能使采集结果更加有效。
4.确定存储的方式:
根据采集量的大小对数据储存的方式进行划分。比较小的数据,一般使用excel表格存储;几千万的大型数据,选择数据库存储;对于GB级别的数据,就得用Hadoop、Spark、期Redis等分布式存储和处理技术的方法才能做到较好的管理和计算。选择正九推信乎施太确数据存储的方式使季船雷卫易松客户对数据的使用与管理更加便捷。