西门子工业控制一级经销代理商
西门子工业控制一级经销代理商
其产品范围包括西门子S7-SMART200、 S7-200CN、S7-300、S7-400、S7-1200、S7-1500、S7-ET200SP 等各类工业自动化产品。西门子授权代理商、西门子一级代理商 西门子PLC模块代理商﹐西门子模块代理商供应全国范围:
与此同时,我们还提供西门子G120、G120C V20 变频器; S120 V90 伺服控制系统;6EP电源;电线;电缆;
网络交换机;工控机等工业自动化的设计、技术开发、项目选型安装调试等相关服务。
西门子中国授权代理商—— 浔之漫智控技术(上海)有限公司,本公司坐落于松江工业区西部科技园,西边和全球**芯片制造商台积电毗邻,
东边是松江大学城,向北5公里是佘山国家旅游度假区。轨道交通9号线、沪杭高速公路、同三国道、松闵路等
交通主干道将松江工业区与上海市内外连接,交通十分便利。
公司国际化工业自动化科技产品供应商,是专业从事工业自动化控制系统、机电一体化装备和信息化软件系统
集成和硬件维护服务的综合性企业。与西门子品牌合作,只为能给中国的客户提供值得信赖的服务体系,我们
的业务范围涉及工业自动化科技产品的设计开发、技术服务、安装调试、销售及配套服务领域。建立现代化仓
储基地、积累充足的产品储备、引入万余款各式工业自动化科技产品,我们以持续的卓越与服务,取得了年销
售额10亿元的佳绩,凭高满意的服务赢得了社会各界的好评及青睐。
目前,浔之漫智控技术(上海)有限公司将产品布局于中、高端自动化科技产品领域,
PLC模块S7-200、S7-1200、S7-300、S7-400、ET200分布式I/O等
HMI触摸屏、SITOP电源、6GK网络产品、ET200分布式I/O SIEMENS 驱动产品MM系列变频器、G110 G120变频器、直流调速器、电线电缆、
驱动伺服产品、数控设备SIEMENS低压配电与控制产品及软起动器等
说明 1 Modbus 异常(代码 0x01):非法功能 - 服务器不支持请求的功能 2 Modbus 异常(代码 0x02):非法数据地址 - Addr 加 Count 的请求地址范围超出 了允许的服务器地址范围 3 Modbus 异常(代码 0x03):非法数据值 - 服务器接收的 Modbus 协议出错 4 Modbus 异常(代码 0x04):服务器设备故障 - 服务器尝试执行请求的操作时,发 生不可恢复的错误 5 Modbus 异常(代码 0x05):确认 - 服务器响应可能延迟;稍后重新发送请求 6 Modbus 异常(代码 0x06):服务器设备忙 - 服务器拒绝了该消息;重新发送请求 7 Modbus 异常(代码 0x07):否定确认 - 服务器因未知原因拒绝了该消息 10 Modbus 异常(代码 0x0A):网关路径不可用 - 通常表示网关组态错误或过载。(仅 限 Modbus TCP) 11 Modbus 异常(代码 0x0B):网关目标设备无法响应 - 通常表示设备未存在于网络 上。(** Modbus TCP) 10.4.7 Modbus TCP 常规通信异常代码 Modbus TCP 通信异常代码如下: 错误代码 说明 161 数据长度参数大于允许的*大长度(1024 字节)。 162 数据缓冲区未处于 I、Q、M 或 V 存储区。 163 数据缓冲区不适合存储区。 164 表格参数不适合存储区。 165 连接在其它上下文中被锁定。您正在尝试同时在背景(Main 程序)和中断例程中访 问同一连接。 166 UDP IP 地址或端口错误 167 实例不符:在另一实例中连接为忙,或是当发起请求时,为所请求的连接 ID 保存的 数据与输入数据不符。由于连接从未创建,所以连接 ID 不存在,或连接按您的要求终止(使用 TDCON 指 令)。 169 使用此连接 ID 的 TCON 操作正在进行中。 170 使用此连接 ID 的 TDCON 操作正在进行中。 171 使用此连接 ID 的 TSEND 指令正在进行中。 172 发生了临时通信错误。此时无法启动连接。请稍后重试。 173 连接伙伴拒绝或主动断开连接(伙伴将断开与此 CPU 的连接)。 174 无法与连接伙伴建立连接(连接请求无应答)。 175 连接因不一致而断开。断开并重新连接以纠正这种情况。 176 连接 ID 已与不同的 IP 地址、端口或 TSAP 组合配合使用。 177 没有连接资源可用。所有请求类型(主动/被动)的连接都在使用中。 178 本地或远程端口号被保留,或端口号已用于另一服务器(被动)连接。 179 已发生以下 IP 地址错误之一: • IP 地址无效(例如,地址 0.0.0.0)。 • 该 IP 地址是此 CPU 的 IP 地址。 • 该 CPU 的 IP 地址为 0.0.0.0。 • IP 地址为广播地址或多播地址。 180 本地或远程 TSAP 错误(仅 ISO-on-TCP) 181 连接 ID 无效(65535 保留) 182 主动/被动错误(UDP 只允许被动) 183 连接类型不在所允许的类型中。 184 没有待决操作,因此没有要报告的状态。 185 接收缓冲区过小:CPU 接收的字节数超出缓冲区支持的长度。CPU 丢弃额外的字节。 191 未知错误 10.5 开放式用户通信库 STEP 7‑Micro/WIN SMART 开放式用户通信 (OUC) 库指令创建 OUC 指令 (页 256)(TCON、 TSEND、TRECV 和 TDCON)所需的表。库指令根据需要构建表,调用 OUC 指令,然后在库 指令的输出中呈现状态值。CPU 使用库存储器创建表以传递到 OUC 指令。开放式用户通信 库需要使用 50 个字节的 V 存储器。库指令如下所示: • TCP_CONNECT:创建 TCP 连接。 • ISO_CONNECT:创建 ISO-on-TCP 连接。 • UDP_CONNECT:创建 UDP 连接。 • TCP_SEND:发送用于 TCP 和 ISO-on-TCP 连接的数据指令。 • TCP_RECV:接收用于 TCP 和 ISO-on-TCP 连接的数据指令。 • UDP_SEND:发送用于 UDP 连接的数据指令。 • UDP_RECV:接收用于 UDP 连接的数据指令。 • DISCONNECT:终止所有协议的连接。 说明 CPU 型号 CPU CR20s、CPU CR30s、CPU CR40s 和 CPU CR60s 无以太网端口,不支持与使用 以太网通信相关的所有功能。 说明 只可从主程序或中断例程中调用库函数,但不可同时从这两个程序中调用。 10.5.1 OUC 库指令共用的参数 以下参数是 OUC 库指令共用的参数: • EN:将 EN 输入设置为 TRUE 以调用指令。必须将 EN 输入设置为 TRUE,直到指令完成 (直到 Done 或 Error 置位)。仅当程序置位 EN 并且调用指令时,CPU 才会更新输出。 • Req:Req(请求)输入用于发起操作。Req 输入位由电平触发。应通过上升沿指令将 Req 输入连接到库指令,以便操作仅启动一次。指令为 Busy 时程序会忽略 Req 输入。 • Active: Active 输入用于指定连接指令是创建主动客户端连接 (Active = TRUE) 还是创建被 动服务器连接 (Active = FALSE)。在主动连接中,本地 CPU 启动到远程设备的通信。在被 动连接中,本地 CPU 等待远程设备启动通信。 对于开放式用户通信,S7-200 SMART CPU 支持八个主动连接和八个被动连接。将 UDP 连 接计作被动连接,因为没有建立主动通信。 • Done:当操作完成且没有错误时,OUC 指令置位 Done 输出。如果指令置位 Done 输出, Busy、Error 和 Status 输出为零。仅当 Done 输出置位时,其它输出(例如,接收到的字 节数)才有效。• Busy:Busy 输出指示正在进行操作。通过将 Req 设为 TRUE 启动操作时,OUC 指令置位 Busy 输出。对于对指令的所有后续调用,Busy 输出保持置位,直到操作完成。 • Error:Error 输出指示操作完成但有错误。如果 OUC 指令置位 Error 输出,则 Done 和 Busy 输出将设置为 FALSE。如果 OUC 指令置位 Error 输出,则 Status 输出会指明错误原 因。如果 Error 输出置位,所有其它输出均无效。 • ConnID:ConnID 编号是连接的标识符。通过 TCP_CONNECT、ISO_CONNECT 或 UDP_CONNECT 创建连接时,会创建 ConnID。可以为 ConnID 选择 0 到 65534 范围内的 任何值。每个连接必须具有唯一的 ConnID。程序使用 ConnID 指定后续发送、接收和断 开操作所需的连接。 • IPaddr1, IPaddr2, IPaddr3 and IPaddr4:这些是远程设备 IP 地址的四个八位字节。 IPaddr1 是 IP 地址的*高有效字节,IPaddr4 是 IP 地址的*低有效字节。例如:对于 IP 地 址 192.168.2.15,设置以下值: – IPaddr1 = 192 – IPaddr2 = 168 – IPaddr3 = 2 – IPaddr4 = 15 IP 地址不能为以下值: – 0.0.0.0(针对主动连接) – 任何广播 IP 地址(例如,255.255.255.255) – 任何多播地址 – 本地 CPU 的 IP 地址 可以将 IP 地址 0.0.0.0 用于被动连接。通过选择 IP 地址 0.0.0.0,S7-200 SMART CPU 接 受来自任何远程 IP 地址的连接。如果为被动连接选择一个非零的 IP 地址,CPU 将仅接受 来自指定地址的连接。 • RemPort:RemPort 是远程设备上的端口号。端口号可用于 TCP 和 UDP 协议,从而路由 设备内的消息。 远程端口号的规则如下: – 有效端口号范围为 1 到 49151。 – 建议采用的端口号范围为 2000 到 5000。 – 对于被动连接,CPU 会忽略远程端口号(可以将其设置为零)• LocPort:LocPort 参数是本地 CPU 上的端口号。端口号可用于 TCP 和 UDP 协议,从而路 由设备内的消息。对于所有被动连接,本地端口号必须唯一。 本地端口号的规则如下: – 有效端口号范围为 1 到 49151。 – 不能使用端口号 20、21、25、80、102、135、161、162、443 以及 34962 至 34964。这些端口具有特定用途。 – 建议采用的端口号范围为 2000 到 5000。 – 对于被动连接,本地端口号必须唯一(不重复)。 • RemTsap: RemTsap(远程传输服务访问点 (TSAP))参数是指向 S7-200 SMART 字符串数 据类型的指针。只能将 RemTsap 参数用于 ISO-on-TCP 协议。在将消息路由到适当的连接 方面,远程 TSAP 字符串与端口号作用相同。 RemTsap 的规则如下: – TSAP 为 S7‑200 SMART 字符串数据类型(长度字节,后接字符)。 – TSAP 字符串长度必须至少为 2 个字符,但不得超过 16 个字符。 • LocTsap:LocTsap(本地传输服务访问点 (TSAP))参数是指向 S7-200 SMART 字符串数 据类型的指针。只能将本地 TSAP 参数用于 ISO-on-TCP 协议。在将消息路由到适当的连 接方面,本地 TSAP 字符串与端口号作用相同。 LocTsap 的规则如下: – TSAP 为 S7‑200 SMART 字符串数据类型(长度字节,后接字符)。 – TSAP 字符串长度必须至少为 2 个字符,但不得超过 16 个字符。 – 如果 TSAP 为 2 个字符,第一个字符必须是十六进制“E0”。 – TSAP 不能以字符串“SIMATIC-”开头。开放式用户通信库指令 10.5.2.1 TCP_CONNECT 指令 TCP_CONNECT 指令用于通过 TCP 协议创建到另一设备的连接。 LAD/FBD STL 描述 TCP_CONNECT Req, Active, ConnID, IPaddr1, IPaddr2, IPaddr3, IPaddr4, RemPort, LocPort, Done, Busy, Error, Status TCP_CONNECT 用于创建从 CPU 到通信伙伴的 TCP 通信连接。 连接操作是异步的,可能需要几次扫描才能完成。连接操作待决时,Busy 输出具有值 TRUE。 当 CPU 完成操作时,指令置位 Done 或 Error 输出。如果发生错误,则 Status 输出会显示错 误代码。 指令处于繁忙状态时不得更改 TCP_CONNECT 的输入参数。CPU 需要凭借这一点了解这是启 动连接过程的调用的延续。 您将连接 ID (ConnID) 输入分配给连接,然后当发送、接收或断开连接时使用此 ConnID 引 用该连接。 Active 输入位确定这是主动连接(Active 设置为 TRUE)还是被动连接(Active 设置为 FALSE)。 如果这是主动连接(客户端),则 S7-200 SMART CPU 尝试联系并创建到指定 IP 地址和远 程端口号 (RemPort) 的连接。CPU 打开本地端口 (LocPort) 以从远程设备接收消息。 当 Active 输入设置为 FALSE 时,S7-200 SMART CPU 会创建被动(服务器)连接。在这种情 况下,CPU 打开请求的本地端口 (LocPort) 并接受来自远程设备的连接请求。如果要接受来 自任何远程 IP 地址的连接请求,应将 IP 地址设为 0.0.0.0。如果 IP 地址不为零,则 CPU 只 接受来自指定 IP 地址的连接请求。对于被动连接,CPU 会忽略远程端口号 (RemPort), RemPort 可以设置为零。您可以随时调用 TCP_CONNECT 指令以确定连接的当前状态。将 Req 输入设置为 FALSE 并提 供有效的连接 ID (ConnID),TCP_CONNECT 返回以下内容: • Busy,如果连接过程仍在进行中。 • Done,如果连接处于激活状态并准备发送或接收。 • Error,如果连接不可用。Status 显示其中一种错误代码,用于指示存在的问题。 请注意,主动连接可能*多需要 30 秒的时间来确定远程设备是否允许连接。被动连接显示 Busy 状态,直到远程设备尝试连接到 CPU。 请注意,连接关闭后,S7-200 SMART 不会自动尝试重新连接到设备。如果远程设备断开设 备连接,您的程序必须执行另一个 TCP_CONNECT 指令以重新连接设备。主动连接和被动连 接皆如此。 表格 10-18 TCP_CONNECT 指令的参数 参数 声明 数据类型 描述 EN IN BOOL 使能输入 Req IN BOOL 如果 Req = TRUE,CPU 启动连接操作。如果 Req = FALSE,则输出显示连接的当前状态。 Active IN BOOL • TRUE = 主动连接 • FALSE = 被动连接 ConnID IN WORD CPU 使用连接 ID (ConnID) 为其它指令标识该 连接。可能的 ConnID 范围为 0 到 65534。 IPaddr1 ... IPaddr4 IN BYTE 这些是 IP 地址的四个八位字节。IPaddr1 是 IP 地址的*高有效字节,IPaddr4 是 IP 地址 的*低有效字节。 RemPort IN WORD RemPort 是远程设备上的端口号。远程端口 号范围为 1 到 49151。对于被动连接,使用 零。 LocPort IN WORD LocPort 是本地设备上的端口号。本地端口号 范围为 1 到 49151,但存在一些限制。如需 了解 LocPort 定义,请参见“OUC 库指令共用 的参数” (页 582)。 Done OUT BOOL 当连接操作完成且没有错误时,指令置位 Done 输出。 Busy OUT BOOL 当连接操作正在进行时,指令置位 Busy 输 出。