西门子PLC使用USS协议的要求

2019年1月7日16:54:52 发表评论 203 阅读

四条 USS 指令使用两个 FB 和两个 FC 来支持 USS 协议。 一个 USS 网络使用一个 USS_Port_Scan 背景数据块 (DB)。 USS_Port_Scan 背景数据块包含供该 USS 网络中所有驱动器使用的临时存储区和缓冲区。 各 USS 指令共享此数据块中的信息。

连接到一个 RS485 端口的所有驱动器(最多 16 个)是同一 USS 网络的一部分。 连接到另一 RS485 端口的所有驱动器是另一 USS 网络的一部分。 各 USS 网络通过单独的数据块进行管理。 与各 USS 网络相关的所有指令必须共享该数据块。 这包括用于控制各 USS 网络上的所有控制器的所有 USS_Drive_Control、USS_Port_Scan、USS_Read_Param 和 USS_Write_Param 指令。

USS_Drive_Control 指令是一个函数块 (FB)。 在程序编辑器中放置 USS_Drive_Control 指令时,系统将通过“调用选项”(Call options) 对话框提示您为该 FB 分配 DB。 如果对于该 USS 网络而言,它是该程序中的第一条 USS_Drive_Control 指令,则可以接受默认的 DB 分配(或根据需要更改名称),将相应地创建一个新 DB。 但是,如果对于该通道它不是第一条 USS_Drive_Control 指令,则必须使用“调用选项”(Call options) 对话框中的下拉列表选择先前为该 USS 网络分配的 DB 名称。

USS_Drive_Control 指令是一个函数块 (FB),并且其通过点对点 (PtP) RS485 通信端口处理 CPU 和驱动器之间的实际通信。 每次调用此 FB 可处理与一个驱动器的一次通信。 用户程序必须尽快调用此 FB 以防止与驱动器通信超时。 可在主程序循环 OB 或任何中断 OB 中调用此 FB。

USS_Read_Param 和 USS_Write_Param 指令都是函数 (FC)。 在编辑器中放置这些 FC 时不分配 DB。 而您必须给这些指令的“USS_DB”输入分配合适的 DB 引用。 双击该参数字段,然后单击参数助手图标可查看可用的 DB 名称。

通常,应在循环中断 OB 中调用 USS_Port_Scan FB。该循环中断 OB 的循环时间应设置为最小调用间隔的一半左右(例如,1200 波特的通信应使用 350 ms 或更短的循环时间)。

用户程序通过 USS_Drive_Contro FB 可访问 USS 网络上指定的驱动器。 其输入和输出是驱动器的状态和控制。 如果网络上有 16 个驱动器,则用户程序必须具有至少 16 个 USS_Drive_Control 调用,每个驱动器一个调用。 应该以控制驱动器工作所需的速率调用这些块。

只能在主程序循环 OB 中调用 USS_Drive_Control FB。

用户程序可包含尽可能多的这些功能,但在任何特定时刻,每个驱动器只能激活一个读或 写请求。 只能在主程序循环 OB 中调用 USS_Read_Param 和 USS_Write_Param FC。

计算与驱动器通信所需的时间

与驱动器进行的通信与 S7-1200 扫描周期不同步。 在完成一个驱动器通信事务之前,S7-1200 通常完成了多个扫描。

USS_Port_Scan 间隔是一个驱动器事务所需的时间。 下表列出了各个通信波特率下的最小 USS_Port_Scan 时间间隔。 比 USS_Port_Scan 间隔更频繁地调用 USS_Port_Scan FB 不会增加事务数。 如果通信错误导致尝试 3 次才能完成事务,则驱动器超时间隔是处理该事务可能花费的时间。 默认情况下,USS 协议库对每个事务最多自动进行 2 次重试。

表格 13- 38 计算时间要求

波特率 计算最小 USS_Port_Scan 调用 间隔(毫秒) 每个驱动器的驱动器消息间隔超 时(毫秒)
1200 790 2370
2400 405 1215
4800 212.5 638
9600 116.3 349
19200 68.2 205
38400 44.1 133
57600 36.1 109
115200 28.1 85
weinxin
plc入门知识问答
每一个PLC工程师都应该关注的微信公众账号,只需输入您的问题,就会有答案

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: