全国热线电话:
18390808297
![]() |
|
湖南嘉普云自动化设备有限公司
问题:
S7-400中保持数据传输的*性使用的是什么机理?
解答:
*的数据指的是就内容来说是*的,而 且它所描述了在某个时间点的一个称之为*性数据的过程状态。要保持数据的*性,它在传输或处理过程中不得被更新或改动。< /span>
样例 1:< /span>
为了对CPU在循环程序处理过程中有*的过程信号的映像,在程序处理前就把过程信号读入输入的过程映像中,并 且在程序处理后又写到输出的过程映像。然后,在程序处理过程中,用户程序在对操作数区输入(I)和输出(Q) 寻址时并不直接访问信号模块,而是访问CPU 的内部存储区里的过程映像 。< /span>
样例 2:
如果一个通讯块(比如 SFB 14 “GET”, SFB 15 “PUT”)被较高优先级的过程警报OB所中断,就有可能出现不*性。 现在,如果在该过程警报OB中的用户程序更改了已经部分被通讯块处理过的数据,那样的话被传输的数据中,部分是过程警报处理以前时间的数据,部 分则是过程警报处理以後时间的数据,这意味着,此数据是不*的。
SFC 81 "UBLKMOV"
使用 SFC 81 “UBLKMOV”,把一个内存区(源区)的内容*地复制到另一个内存区(目标区)里 。复 制过程不得被操作系统的任何其它动作所打断。
使用SFC 81 “UBLKMOV”,可复制下列内存区:
通过SFC 14 “DPRD_DAT”(从一台 DP 标准从站读出*性数据), 从一台DP标准从站*性地读出数据。如果数据传输中无错误,则读出的数据被输入由RECORD的目标区。< /span>
目标区必须与你已经用STEP 7为选定的模块组态好的长度*。每次调用SFC 14只能访问一个模块/DP ID 的数据(从组态好的起始地址)。
通过 SFC 15“DPWR_DAT”( 把数据*性地写入一台DP标准从站)把 RECORD 里的数据*性地传输入赋址好的DP 标准从站。
源区的长度必须与通过 STEP 7 为选定模块组态好的长度*。
注意:
PROFIBUS DP标准定义了传输*性用户数据的上限(见下一节)。通常的DP标准从站遵守这些限制。对于较老的CPU (<1999),对 传输*性用户数据存在与 CPU 有关的限制。
请参考这些CPU的技术数据。在关键字 “DP 主站 -每台DP 从站的用户数据” 下去寻找CPU 可以*性地从一台DP标准从站读出数据和*性地写入一台DP标准从站的数据的大长度,一些近期CPU的此项指标已经超过标准DP从站可能或接受的数据长度值。< /span>
*性传输用户数据到一台 DP 从站的上限大值
PROFIBUS DP标准规定了传输*性用户数据到DP从站的上限。这就是为什么在一台DP标准从站里,可用一个数据块来*性地传输大达64 个字 = 128 字节的用户数据。
当组态时,你定义了*性区的大小。该大小用特殊的代码格式(德语缩写: SKF)表示为64 个字 = 128 字节(输入用128个字节,128个字节用于输出)设置的*性数据大长度。再长就不可行了。
这个上限只适用于纯用户数据。诊断数据和参数被分组到完整的数据纪录里,因而总是得到*性地传输。< /span>
在通常的代码格式里(德语缩写: AKF),可为*性数据设置大长度16 个字 = 32 个字节 (32 个字节用于输入,32 个字节用于输出)。再长就不可行了。
在本文里请同样注意, 通常在一个非系统主站 (通过GSD连接)上的CPU 41x 作为 DP 从站时,必 须是用一般代码格式才可加以组态。基于这个理由,作为PROFIBUS DP上从站的 CPU 41x 的传输内存的大长度为16 个字 = 32个字节。
1. 1 硬件
(1)CPU
S7-400H CPU(固件版本V6.0),CPU订货号如表 1 1。西门子6ES72231BH220XA8
表 1 1 S7-400H V6.0版本CPU
CPU | 订货号 |
CPU 412-5H PN/DP | 6ES7 412-5HK06-0AB0 |
CPU 414-5H PN/DP | 6ES7 414-5HM06-0AB0 |
CPU 416-5H PN/DP | 6ES7 416-5HS06-0AB0 |
CPU 417-5H PN/DP | 6ES7 417-5HT06-0AB0 |
图 2-7 S7-400H集成PROFINET口与PC站连接(五)
西门子6ES72231BH220XA8