BK9000, BK9050, BK9100 - Bus Coupler for Ethernet

倍福现场总线组件

Start.jpg (207194 Byte)

BK9000, BK9050 及 BK9100相关文档

以太网总线耦合器

3.9.0版本
日期: 2008-10-02


Safety Instructions

倍福自动化: 前言

安全说明

安全条例

请参考以下说明书的安全内容和描述!
产品特殊安全说明会出现在后几页或在安装、接线、调试过程中进行描述

免责声明

所有组件都在特殊的软件和硬件的适当的配置下应用. 禁止修改文件中关于硬件或软件配置的描述和取消 Beckhoff Automation 有限公司的权益.

人员资格

此说明仅供符合国家标准的控制技术,自动化技术和驱动技术培训使用.

符号说明

以下是说明内容中的安全提示警告标志,请您务必要仔细阅读!

Danger 如果您不注意此符号而进行操作,那么您的人生安全会立即受到威胁!

Warning 如果您不注意此符号而进行操作,您的人生安全会受到威胁!

Note 此符号用于显示说明及信息,有助于更好的理解.


BK9000, BK9050, BK9100 - Documentation issue status

倍福 BK9000, BK9050, BK9100: 前言

文档版本

版本

修改情况

3.9.0
  • 添加了对BK9050的介绍

3.8.2
  • 添加了对 BK9100的介绍
  • 修正了对ModbusTCP 作用的描述

3.8.1
  • 添加了对 RT-Ethernet 的描述

固件和硬件版本

文档 版本 | BK9000 |  | BK9100 |  | BK9050
 | 固件 | 硬件 | 固件 | 硬件 | 固件 | 硬件
3.9.0 | BC | 12 | B1 | 03 | B0 | 00
3.8.2 | BA | 11 | B1 | 00 | - | -
3.8.1 | B8 | 10 | - | - | - | -
3.8 | B8 | 10 | - | - | - | -

你可以根据总线耦合器离厂时的不干胶标签来决定合适的固件。 (注意生产数字的第5和第6位).

例如:
3200B2020000
在这个例子中 B2是固件版本.

要更新固件，您需要KS2000配置软件和相应特殊电缆; B6以下版本的产品，可直接利用TwinCAT 2.8 及以上版本的system manager进行。可在www.beckhoff.com网站上找到相应固件。

硬件版本的注解

BK9000

固件

注释

BC
  • 自启动功能改善

BB
  • 链接检测更改

BA
  • 支持TwinSAFE 端子(KL1904, KL2904 and KL6904)

B8
  • 看门狗错误时, 模拟量输出为0
  • 执行RT-Ethernet

B7
  • 纠正在B6 版本中有关映射KL60xx 总线终端的错误

B6
  • 对内部软件重置的修正 (对使用者没有任何影响)

B5
  • 执行Fast ModbusTCP

B4
  • 在固件更新时 保留设置(例如IP地址的设置)

B3
  • 可以通过Ethernet 对固件进行更新
  • 可以通过TwinCAT 2.8的system manager 显示配置
  • 可以通过执行表2对ADS进行控制

B2
  • 可以通过ARP, DHCP and BootP 进行寻址
  • 可以用FC3 ModbusTCP访问正在执行中的进程的输入

B1
  • 在 ModbusTCP下触发看门狗的LED灯

B0
  • 第一代发布版本
BK9050
固件 | 描述
B0 | 初稿
BK9100
固件 | 描述
B1 | 支持winSAFE 端子KL1904, KL2904 and KL6904)
B0 | 初版


BK9000, BK9050 - Introduction

倍福 BK9000, BK9050: 产品概述

简介

BK9000 和BK9050 总线耦合器用于将模块化、可扩展的电子端子模块连接到以太网系统. 一个节点由一个总线耦合器、1- 64 个任意数量的端子模块以及一个末端端子模块组成。紧凑型总线耦合器BK9050具有有外形精巧、性价比高的特点。通过 K-bus 扩展，最多可以连接 255 个总线端子模块。

总线耦合器可以识别与其相连的端子并自动的将输入输出分配到过程映像区的字中。BK9000和BK9050 支持10 M和100 M的以太网。通过普通的RJ45接口进行连接。 在 DIP 开关（可自由选择起始地址偏移量）上设定 IP 地址。在有DHCP (用于将逻辑IP地址分配到物理节点地址 [MAC-ID]的服务协议) 的网络中，总线耦合器可以通过 DHCP服务器来获得IP地址。

BK9000和BK9050总线耦合器支持ADS TwinCAT 系统通讯。TwinCAT I/O使组态工具和Windows NT/2000/XP 驱动程序在任何所需的高级语言 (DLLs)和 VB应用程序(ActiveX)中都能使用。 有OPC接口的应用程序可以通过OPC服务器访问 ADS (然后是 BK9000或者 BK9050) 。 除了 ADS 之外，总线耦合器也支持开放式 Modbus（Modbus TCP）协议，该协议基于TCP/IP的一个简单易行的主/从协议，受到广泛应用。

对模拟量 I/O、位置测量等复杂信号的处理

BK9000和BK9050 总线耦合器支持所有型号的总线端子模块操作。

模拟量总线端子模块和多功能总线端子模块可以通过 KS2000 组态软件进行配置，以与每一个具体应用最佳匹配。根据不同型号，模拟量总线端子模块寄存器中包含有温度范围、增益值和线性化的特性曲线。使用 KS2000 组态软件，可以在 PC 上设置所需参数。总线端子模块可以用故障安全型方式永久存储这些设置。

当然，总线耦合器也可以由控制系统来控制。在启动阶段，可编程逻辑控制器（PLC）或工业PC（IPC）通过功能块（FBs）对整个外围设备进行配置。如果需要，控制器可以上传分布式生成的组态数据，以便于集中管理和存储这些数据。因此，在更换一个总线端子模块时，不需要重新进行调整。上电后，控制器自动执行所需配置。


BK9100 - Introduction

倍福 BK9100: 产品概述

BK9100 - 简介

BK9100 总线耦合器用于将模块化、可扩展的电子端子排连接到以太网系统。一个节点由一个总线耦合器、1- 64 个任意数量的端子模块以及一个末端端子模块组成。

总线耦合器能自动识别所连接的端子模块，并自动将输入/输出分配到过程映像区的字中。BK9100 总线耦合器支持 10 Mbit/s 和 100 Mbit/s 以太网。通过一个普通的 RJ 45 接头连接。在 DIP 开关（可自由选择起始地址偏移量）上设定 IP 地址。在有 DHCP（用于分配逻辑 IP 地址到物理节点地址 [MAC-ID] 的服务协议）的网络中，总线耦合器从 DHCP 服务器获得 IP 地址。

与 BK9000 不同的是，BK9100 多了一个 RJ 45 端口。两个以太网端口都作为 2 通道交换机运行。因此，I/O 站可组态为总线型拓扑结构，而不是传统的星型拓扑结构。这在许多应用中可显著降低布线工作量以及成本。两个耦合器之间的最大距离为 100 m。最多可将20 个 BK9100 总线耦合器级联，总线距离最远可达 2 km。

BK9100 支持 ADS TwinCAT 系统通讯。通过 TwinCAT I/O 可以让组态工具软件和 NT/2000/XP 驱动程序用于任一所需的高级语言（DLL）以及 VB 应用程序（ActiveX）。通过 OPC 服务器，带 OPC 接口的应用程序可以访问 ADS（然后是 BK9100 或 BK9050）。除了 ADS 之外，总线耦合器也支持开放式 Modbus（Modbus TCP）协议，该协议是一个基于TCP/IP的简单易行、广泛应用的主/从协议。

对模拟量 I/O、位置测量等复杂信号的处理

总线耦合器 BK9100 可连接所有类型的总线端子模块。

模拟量总线端子模块和多功能总线端子模块可以通过 KS2000 组态软件进行配置，以与每一个具体应用最佳匹配。根据不同型号，模拟量总线端子模块寄存器中包含有温度范围、增益值和线性化的特性曲线。使用 KS2000 组态软件，可以在 PC 上设置所需参数。总线端子模块可以用故障安全型方式永久存储这些设置。

当然，总线耦合器也可以由控制系统来控制。在启动阶段，可编程逻辑控制器（PLC）或工业 PC（IPC）通过功能块（FBs）对整个外围设备进行配置。如果需要，控制器可以上传分布式生成的组态数据，以便于集中管理和存储这些数据。因此，在更换一个总线端子模块时，不需要重新进行调整。上电后，控制器自动执行所需配置。


BK9000, BK9050, BK9100 - Technical data

BECKHOFF BK9000, BK9050, BK9100: Product overview

技术数据

系统数据 | BK9000 | BK9050 | BK9100
I/O 模块数量 | 仅受IP地址空间限制
I/O 点的数量 | 取决于控制器
数据传输介质 | 4 x 2 对双绞线; category 3 (10 MBaud), category 5 (100 MBaud)
模块间距 | 100 m
数据传输速率 | 10/100 MBaud
拓扑结构 | 星型布线 | 星型布线 | 总线型或星型布线
Cascading | - | - | 最多 20 个 BK9100 或最远总线距离 2 km

技术数据 | BK9000 | BK9050 | BK9100
总线终端数量 | 64 | 64 (255 with K-Bus extension) | 64
数字化周边信号 | 512 输入/输出 | 1020 输入/输出 | 512 输入/输出
模拟量周边信号 | 128 输入/输出
网路协议 | UDP- ADS, TCP-ADS, Fast-ADS, ModbusTCP
组态方式 | 通过 KS2000组态软件或者TwinCAT控制器
最大字节 | 512 字节输入输出
总线连接 | 1 x RJ 45 | 1 x RJ 45 | 2 x RJ 45
电源 | 24 VDC (-15%/+20%)
输入电流 | 70 mA + (K-Bus总电流)/4 | max. 320 mA | 70 mA + (K-Bus 总电流)/4
启动电流 | 大约 2.5倍的持续电流
K-Bus供电电流 | 1750 mA | 1000 mA | 1750 mA
电压 | 24 VDC max.
负载电流 | 10 A max.
电介质强度 | 500 Vrms (电源触点/电源电压/ 现场总线)
建议保险丝容量 | £ 10 A
重量 | 约 170 g | 约 100 g | 约170 g
工作温度 | 0°C ... +55°C
储存温度 | -25 °C ... +85°C
相对湿度 | 95%, 无冷凝
抗振/抗冲击性能 | 符合EN 60068-2-6 / EN 60068-2-27, EN 60068-2-29标准
抗电磁干扰/抗电磁辐射性能 | 符合EN 61000-6-2 / EN 61000-6-4标准
安装位置 | 可变
防护等级 | IP20


The Beckhoff Bus Terminal System

BECKHOFF Fieldbus Components: Product Overview

Beckhoff 总线端子系统

最多64个总线端子，对于每一种信号形式每个端子都有两个I/O通道

现场总线系统是现场总线和传感器/执行器电位之间的通用接口.一个整体组件包括有：首先是总线耦合器, 然后是最多64个电子系列端子, 最后是终端端子. 对于每一种技术型号形式的端子, 他们都有两个I/O通道, 并且可以以任何顺序进行安装. 所有的端子类型都有相同的机械结构,所以设计和规划的难度大大降低. 端子的高度和深度都满足紧凑型端子盒的尺寸.

每个I/O级的分散布线

现场总线技术允许使用更多的紧凑型形式的控制器. I/O级不必直接接入控制器中. 传感器和执行器可以使用最少的电缆长度分散连线. 控制器可以安装在区域内的任何位置.

工业PC作为控制器

使用了工业PC作为控制器那就意味着可以通过控制器硬件对操作和观察要进行操控.因此控制器可以安装在控制面板上,控制室里或者一些相似的地方.总线端子在控制柜和副端子盒中形成控制器的分散式输入/输出级 。除了传感器/执行器及电源，其他电源都由总线系统控制。在控制柜中总线端子代替了传统系列的端子作为布线级。控制柜有着相似的尺寸。

总线耦合器用于常用总线系统

Beckhoff 总线端子系统有着紧凑型端子总线系统的优势. 总线端子可以在所有普通总线系统下运行, 因此减少了控制器部分的读数. 那么总线端子的作用就和常规总线系统的连接一样. 同时总线端子支持所有特殊总线系统的性能特性.

标准安装导轨的装配

标准导轨 (EN 50022, 35 mm)的安装即简单又不占空间, 传感器和执行器直连布线, 没有端子间的交叉连接,实现了安装的标准化.而且有着一致的标签图解.

总线端子系统小的物理尺寸和极大的灵活性，使其能够和系列端子配合使用。每个连接类型，如模拟量、数字量、串行或直接连接传感器均可实现。

模块化

该端子排模块化的装配和各种性能的总线端子把未用通道的数目限制到了每一个函数的最大值。在一个端子中拥有两个通道，对未使用的通道来说是最适宜的，并且是最经济的。端子极的电气隔离通过点位馈电端子有助于使未使用通道数量降低。

通道状态显示

集成的 LED 显示每个临近传感器和执行器通道的状态。

K-Bus

K-Bus 是端子条中的数据路径。K-Bus从总线耦合器到所有的端子均由端子侧面的6个连接的触点引导通过。末端端子终结K- Bus。用户不需要了解有关K-Bus的任何功能、或关于端子和总线耦合器的内部工作情况。通过许多软件工具可以使制作项目计划、组态和操作更加容易。

供电端子用于电器隔离组

工作电压通过三个电源节点传送到下面的端子。 你可以用供电端子用于电气隔离组，分离端子条为任意隔离组。供电端子在端子中不起任何控制作用，并可插入在端子条的任何位置。

端子条中最多可安装 64 个端子，这个数目包括供电端子，但不包括终端端子。

用于多种现场总线的总线耦合器

各种总线偶合器可以用于快速耦合电子端子条并且容易集成到不同的现场总线系统中。今后，它也可以转换到其它的现场总线系统中。总线耦合器完成所有的监视和控制任务，它对所连接的总线端子的运行是必需的。总线端子的运行和组态通过总线耦合器准确执行并完成 。然而，已经设置的参数都存储在每个总线端子，即使在没有电压时参数也将被保留在结果中。现场总线、K-Bus和I/O 级均为电气隔离。

如果现场总线上的数据交换出现一段时间的故障，寄存器的内容保持不变（如计数状态），数字量输出被清除，模拟量输出取组态时赋予的各个值。模拟输出的默认设置为0 V或0毫安。数字输出在非活动状态时返回。总线耦合器的超时周期与现场总线系统的一般设置相对应。当转换到一个不同的总线系统，是要牢记如果总线周期时间较长,需要改变超时时间。

接口

一个总线耦合器有6个不同的连接方法。这些接口被设计成插 头连接器和弹簧型端子模块。


The Principle of the Bus Terminal

BECKHOFF Fieldbus Components: Product Overview

总线端子原理


Ethernet

BECKHOFF Fieldbus Components: Product Overview

以太网

以太网最初是由DEC，intel和XEROX公司开发，并作为“Dix”的标准，用来传递办公设备之间数据的。现在被通称为IEEE 802.3 CSMA/CD 的规范术语，发表于1985年。 由于该项技术在世界范围内被广泛接受，因此它被广泛使用，并且非常经济实用。这表明它很容易连接到已有的网络中。

现在有很多种不同的传送介质：同轴电缆(10Base5), 光导纤维(10BaseF) 或带屏蔽双绞线(STP) 和不带屏蔽双绞线 (UTP)
(10BaseT)。各种拓朴结构，如环形、直线型或星型都可用以太网构建。

以太网从发射端向一个或多个接收端发送以太网数据包。这种传输不需要应答，也不需重发丢失的数据包。为了实现可靠的数据通信，还有如TCP / IP的协议，可以在以太网的顶部运行。

基本原则

互联网协议（IP）

因特网协议(IP) 形成了数据通讯的基础。IP可以在同一网络或不同网络从一个设备到另一个设备传输的数据包。 IP 兼顾地址管理(寻找和分配MAC-ID)，分段和路由。象以态网协议一样，IP 不能保证数据被传送 – 数据报文可能丢失，或其顺序可能改变。

TCP/IP 被开发，用于在任何数量的不同网络中提供标准化的、可靠的数据交换。TCP/IP实质上是独立于所使用的硬件或软件的。尽管这个术语常被用于一个概念，它们仍然是几个分层协议的结合：例如 IP, TCP, UDP, ARP 和 ICMP。

传输控制协议（TCP）

运行在IP 最上层的传送控制协议(TCP) ，是面向传送的协议。它包括错误检测和错误处理机制。丢失的报文是重复的。

用户数据报协议（UDP）

UDP 是与连接无关的传送协议。当在发送端和接收端交换数据时，它不提供控制机制。它将比 TCP 具有更高的处理速度。. 检测报文是否到达必须由高一级协议执行。

互联网控制消息协议（ICMP）

它将被终端设备用来交流有关互联网协议的当前状态信息。

地址解析协议（ARP）

完成 IP 地址和 MAC 地址之间的转换。

BootP协议

BootP 协议允许TCP/IP 地址被设置或改变，以便网络设备可以用MAC-ID 编址。


BK90x0, BK91x0, BC90x0, BC91x0 - Dimensions

BECKHOFF Bus Terminal Controller: Installation and wiring

Dimensions

Beckhoff 总线端子系统具有物理体积小且高度模块化的特性。当规划一个项目时，必须假定使用至少一个总线耦合器和若干总线端子。总线耦合器的机械尺寸与现场总线系统无关。

BK9000, BK9100, BC9000, BC9020, BC9100, BC9120
BK9050, BC9050

在实际情况下的总宽度由总线耦合器、KL9010总线末端端子和所使用的总线端子宽度之和组成。取决于功能，总线端子为12 或 24 mm宽。端子正面的接线将使总高度68 mm 增加大约 5 到10 mm，这取决于接线厚度。


ELxxxx, KLxxxx - Installation on mounting rails

BECKHOFF Fieldbus Components: Mounting and Wiring

导轨上的设备安装

Danger

请在处于安全,电源关闭的情况下进行安装或拆除本总线端子模块.

安装

只要用很小的力就可以把总线耦合器和总线控制安装在通用的35mmC形导轨上：

1. 首先把总线耦合器安装在导轨上。

2. 总线端子安装在总线耦合器的右边。 端子与耦合器以及端子与端子之间通过槽扣方式连接, 紧贴着扣槽把端子卡在导轨上，卡上后会发出咔的一声。如果安装在导轨上的端子槽扣没有扣在一起K-Bus将不会导通！安装正确的话连接处是没有缝隙的。

在安装总线端子的时候，注意不要让端子碰到固定导轨的螺丝。

拆卸

端子依靠卡锁固定在导轨上，在拆卸端子的时候要释放卡锁:

1. 小心地把橙色的拉杆拉出大约1cm，底部的卡锁就会释放，不需要很大的力就可以把端子从导轨分离。

2. 用拇指和食指抓住模块的上部和下部的外壳向外拉，把模块彻底从导轨上拆下来。

总线端子的连接

总线耦合器和端子之间的电气连接在安装模块的时候自动完成：

  • 六个K总线弹簧连接片传输总线端子的数据和电源。
  • 现场电子组件的电源供电通过电源触点完成，插在一起的电源触点形成了一个电源链。总线耦合器提供电源触点。

Note

由于一些总线端子(例如 模拟量总线端子或4-通道数字总线端子) 都没有通过这些电源触点形成回路，必须考虑总线端子的分配。电源供电端子 (KL91xx, KL92xx) 提供电源触点，并代表一个新的电源链的开始。

PE 连接

标有“PE” 标签的电源触点用于对地保护。出于安全的原因这些点应首先插接在一起，它最多可承担125A的对地短路电流。

Warning

需要注意的是，出于电磁兼容性方面的考虑，PE 触点与安装导轨之间为电容耦合特性。在绝缘测试期间可能产生错误结果或毁坏端子(如：在设备230 V绝缘测试的时候造成对地击穿)。绝缘测试时，总线控制器或电源端子的PE线必须断开。为了断开其它PE点，把供电端子比其它端子提拉出至少10 mm。

Danger

PE 连接不能用于其他电位！

接线

端子最多有8个点可用粗线或细线连接，端子连接采用弹簧连接技术：

1. 把起子插入端子上面的方孔撬开弹簧端子。

2. 电线可以很容易的插入端子上的圆孔内。

3. 拔出起子当压力释放时，端子会自动关闭，并且安全而牢固的卡住连线。

模块接线 | ELxxxx, KLxxxx | ESxxxx, KSxxxx
导线线径 | 0,08 ... 2,5 mm2 | 0,08 ... 2,5 mm2
导线剥皮长度 | 8 ... 9 mm | 9 ... 10 mm

Note

模拟传感器和执行启用屏蔽双绞线连接。


Power Supply, Potential Groups

BECKHOFF Fieldbus Components: Mounting and Wiring

电源, 电位组

总线耦合器电源

总线耦合器的运行需要一个24V直流电源。该连接通过上部标有24 V 和 0 V的弹簧式端子实现。这个电源给总线耦合器供电，并通过K-bus/E-bus给总线端子模块供电。这个电源与现场传感器执行器设备电源之间是隔离的。

现场设备电源

供电端子可以用来供应外围设备的电源。供电端子右侧有一对弹簧凹槽与电源相应的连接在一起。该电源连接与总线耦合器上的电压是相互独立的。最高电压为24V，负载电流最大10A，实际电流承载能力由连接线决定。这个电源可以通过各个模块的弹簧触点级联下去。

电源连接

总线耦合器的右手侧有三个弹簧式接触点用来与电源相接。弹簧触点隐藏在插槽中，以免意外接触到。 通过附加额外总线端子，该总线端子左手侧的刀片式触点可以与弹簧式触点相接触。 位于总线耦合器与总线端子顶部与底部的槽舌与槽，保证了电源连接稳固安全。

配置接口（非BK1250）

标准总线耦合器在其正面下方有一个RS232接口。微型连接器可以通过KS2000电缆连到PC中的KS2000配置软件。该接口用于对总线端子进行配置，例如调整模拟通道的放大因数。该接口也可以用来改变总线端子数据在总线耦合器中的进程影象的配置。该配置接口的功能，也可以使用字符串通信设备通过现场总线来实现。

电气隔离

总线耦合器有三组相互独立的电源。总线耦合器电源与K-Bus/E-Bus 电源隔离，现场传感器执行器的工作电源与 K-Bus/E-Bus 电源隔离。

备注: 所有的总线端子都与 K-Bus/E-Bus电气隔离。因此K-Bus/E-Bus与其它一切都是电气隔离的。


Ethernet Connection

BECKHOFF Fieldbus Components: Mounting and Wiring

以太网的连接

以太网总线的连接通过 RJ45 连接器完成 。

BC9000_Connector.jpg (6645 Byte)

布线

通过集线器或交换机连接

VekabellungPC_HUB_BC.jpg (16161 Byte)

采用标准以太网线，一根从 PC 的网卡连接到集线器，另一根则从集线器连接到总线端子控制器。通过交换机连接，也采用同样方法。

带以太网卡的 PC 和 BC9000 直接连接

VekabellungPC_BC.jpg (15629 Byte)

若要使 PC 直接连接到总线端子控制器，必须使用交叉连线的电缆。

RJ45 插头的管脚分配

管脚 | 信号 | 说明
1 | TD + | 发送+
2 | TD - | 发送 -
3 | RD + | 接收+
4 | - | 未使用
5 | - | 未使用
6 | RD - | 接收 -
7 | - | 未使用
8 | - | 未使用


Start-up Behaviour of the Bus Coupler

BECKHOFF Fieldbus Components: Parameterization and Commissioning

总线耦合器启动特性

开机后，总线耦合器在自检过程中检查所有组件以及K-Bus/E-Bus通信的状态。自检完成后，红色I/O LED灯闪烁，总线耦合器开始检测与之相连的总线端子（总线端子检测），并读入配置信息。总线端子模块的配置是用来产生内部结构列表，此列表无法从外部获取的。一旦在此过程中出现错误，总线耦合器进入STOP状态。如果启动过程中未出现错误，总线耦合器进入总线启动状态。

一旦纠正错误，通过再次启动，总线耦合器就能正常工作。


Parameterization of the Bus Coupler using DIP Switches

BECKHOFF Fieldbus Components: Parameterization and Commissioning

总线耦合器使用DIP开关设置参数

下面的操作可利用DIP开关和终端端子(KL9010)进行设置，没有必要使用配置软件。
这些操作都是在仅连接一块末端端子（KL9010）时实现的，否则，为正常设置。

恢复出厂设置

  • 将总线耦合器断电，仅插入末端端子 (KL9010)。
  • 将 DIP 开关全部置为ON，并且重新给总线耦合器上电。
  • 一旦缺省参数设置成功，error 灯亮，I/O RUN和 I/OError 指示交替闪烁。
  • 此时，你可以再次将总线耦合器断电，然后可按正常情况使用即可。

删除引导项目(仅BC9000)

  • 将总线耦合器断电，仅插入末端端子 (KL9010)。
  • 将 DIP 开关的 1-9 设置为ON，开关第10 位为OFF，然后再次将总线耦合器上电。
  • 一旦引导项目删除成功，I/O RUN和 I/OError 指示交替闪烁。
  • 你可以再次将总线耦合器断电，连接总线端子，然后可按正常情况使用 即可。

设置以太网参数

  • 将总线偶合器断电，仅插入末端端子 (KL9010)。
  • 将DIP开关全部设置为OFF，然后重新给总线耦合器上电。
  • I/O RUN和 I/OError 指示灯常亮。
  • 根据需要按下表设置

DIP switch

Parameters

Selection

Setting

Comment

1

Baud Rate

10 MBaud

OFF (0)

100 MBaud

ON (1)

Default

2

Auto-Baud-Rate

Disable

OFF (0)

Enable

ON (1)

Default

3

Transmission type

Half duplex

OFF (0)

Full duplex

ON (1)

Default
  • 要使这些设置生效，将 DIP 开关第10 位设置为ON。
    I/O RUN     和I/O ERR LED 开始闪烁，表示总线耦合器设置已生效。
  • 你可以再次将总线耦合器断电，连接总线端子，然后可按正常情况使用即可。


Ethernet - Network Classes

BECKHOFF Fieldbus Components: Ethernet

网络类别

网络分为三类。它们指定了Network-ID的位数和计算机数(或节点数)。 区别在于 IP 地址的前 3 位的不同。

网络类别 | Network ID 位数 | 允许最大网络数 | 节点地址的位数 | 每个网络最大节点数
A | 7 | 126 | 24 | 16 777 214
B | 14 | 16 382 | 16 | 65 536
C | 21 | 2 097 150 | 8 | 254

警告

IP 地址在整个连接的网络中必须唯一！

注意

在同其它的以太网设备通讯时，IP 地址的设置必须在同一个网络分类中。示例: 你的 PC 地址为172.16.17.55, 则总线偶合器的地址必须为172.16.xxx.xxx(每个 xxx 代表 0..255 之间的数。- "0" 通常用于路由器/交换机，因此作为保留数)。

为了查看 PC 自己的地址，可以在 WindowsNT/2000/XP 的 DOS 窗口中输入"ipconfig" 命令。


IP Address

BECKHOFF Fieldbus Components: Addressing

IP 地址

IP地址可以通过四种不同的方法进行设置，这些将在下面详细描述 。

方法 | 说明 | 需要的组件
KS2000 | Addressing using the KS2000 configuration software and DIP switches | KS2000 软件和KS2000电缆
ARP | Addressing via the ARP table | PC with network
BootP | Addressing via BootP server | BootP server
DHCP | Addressing via DHCP server | DHCP server


BK9x00, BC9x00, BK9050 - Address Configuration with KS2000

BECKHOFF Fieldbus Components: Addressing

通过 KS2000设置地址

在KS2000 组态软件中 ，你可以通过对话框窗口设置(3.2.8以上版本)，或直接修改寄存器值来设置TCP/IP 地址。在上电之前，DIP开关的9和10（BK9050 DIP开关的蓝色1和2）必须设置为OFF（0）。

表 100

寄存器 | 高字节 | 低字节
0 | IP byte 2 | IP byte 1
1 | Not used | IP byte 3

默认值

字节 | 默认值 (十六进制) | 默认值 (十进制)
1 | 0xAC | 172dec
2 | 0x10 | 16dec
3 | 0x11 | 17dec
4 | (DIP switch) | (0 to 255dec)

示例

BK9000, BK9100, BC9000, BC9100
BK9050

Bx9000DipSwitch.jpg (4507 Byte)

开关序号. | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 (1) | 10 (2) |
码值 | 1 | 2 | 4 | 8 | 16 | 32 | 64 | 128 | - | - |
本例中 | ON | OFF | OFF | ON | OFF | OFF | ON | ON | OFF | OFF |
值 | 1 | 0 | 0 | 8 | 0 | 0 | 64 | 128 | - | - | Total=201

注意

要保存图中BK9000、BK9050的设置，单靠硬件复位（开/关电源）是不够的，需要做一个软件复位！


Address Configuration via ARP

BECKHOFF Fieldbus Components: Addressing

通过ARP设置地址

修改IP 地址的一个简单方法，是通过DOS 窗口设置地址。然而，它仅能够改变同一网络类别中的IP 地址。即使在总线耦合器关掉以后，新设置的IP地址仍将会保留。

步骤:

  • 将DIP开关的9和10设为OFF。DIP开关的1-8将不再有任何地址的功能 。
  • 在你的电脑上打开DOS框。
  • 输入命令"ping <OLD IP address>"，在 ARP表中创建一个表项。
  • 用命令"ARP -a"查看该表。
  • 输入 "ARP -d <OLD IP address>" 命令将总线耦合器从表中移除。
  • 用命令 "ARP -s <NEW IP address> <MAC-ID>" 来进行手动输入。
  • 使用命令 "ping -l 123 <NEW IP address>" ，新的IP 地址生效。

ERROR LED在转换时的短闪烁表明总线耦合器地址已经通过ARP设置成功，DIP开关1-8的设置与所设地址无关。

注意

当IP地址被更改时，所有的动态ARP表项都会被清除。对所需更改的IP地址作123字节长度的pingIP(<ping -l "IP address>)方可使更改真正生效。

例:

1. C:>ping 172.16.17.255

2. C:>arp -a
172.16.17.255 00-01-05-00-11-22

3. C:>arp -d 172.16.17.255

4. C:>arp -s 172.16.44.44 00-01-05-00-11-22

5. C:>ping -l 123 172.16.44.44


Address Configuration via BootP Server

BECKHOFF Fieldbus Components: Addressing

通过BootP服务器设置地址

如果要通过Beckhoff BootP Server来设置地址，则将DIP 开关9设为ON，10设为OFF。DIP 开关1-8将不再有任何地址功能。如果不是这样，总线耦合器会报告LED错误代码为6 -4。当分配地址时 TCP/IP ERROR LED 灯将闪烁

IP地址保存方式

将DIP 开关 1-8 置于ON

由BootP服务器分配的地址将保存，在下次冷启动后BootP服务将不会重启。
通过恢复出厂设置（用KS2000软件或 DIP switch and end terminal），该地址可以再次被清除。

将DIP 开关 1-8 置于 OFF

由 BootP Server分配的IP地址仅在总线耦合器关闭前有效。在下一次冷启动后， BootP Server必须为总线耦合器分配新的IP地址。
不过，通过软件对耦合器复位后，地址仍然是保留的。

Beckhoff BootP Server

Beckhoff 提供的BootPServer可运行在Windows 98, ME, NT4.0, NT2000 and XP下。你可以在Beckhoff TwinCAT CD或or ftp://ftp.beckhoff.com. 的>Unsupported Utilities< 文件夹中找到安装版本。

一旦BootP Server开启，New MAC Address窗口将显示所有工作在在BootP模式但还未获取IP地址的节点。通过 "<<" 按钮可以对 MAC-ID分配IP地址。分配成功的信息会显示在日志窗口中。
若想在启动电脑时自动启动BootP 服务器，仅需在Windows autostart 文件夹中加载一个快捷方式。 包括快捷方式的启动参数(.../TcBootPDlg.exe/start).。


Address Configuration via DHCP Server

BECKHOFF Fieldbus Components: Addressing

通过DHCP Server设置地址

要通过DHCP Server的方式设置地址，则将DIP开关的9设为OFF (0)，10设为ON (1)。

在这种状态下，DHCP服务启动，总线耦合器的IP 地址由DHCP服务器自动分配。
为此，DHCP服务器必须要知道总线耦合器的 MAC-ID,并且每次启动时都应该分配给MAC-ID相同的IP地址。

当分配地址时,TCP/IP Error LED 闪烁。


Subnet mask

BECKHOFF Fieldbus Components: Addressing

子网掩码

子网掩码受网络管理员控制，并指定子网的结构。

没有路由器的小型网络不需要子网掩码。如果你不使用注册的IP地址同样不需要。子网掩码可以用来通过掩码来细分网络，而不是通过一系列的网络号码。

子网掩码是一个32位数字。

  • 掩码中1表明一个地址区域中的子网部分。
  • 0表明地址区域中主机ID可用的部分。.
说明 | 二进制表示 | 十进制表示
IP address | 10101100.00010000.00010001.11001000 | 172.16.17.200
Subnet mask | 11111111.11111111.00010100.00000000 | 255.255.20.0
Network ID | 10101100.00010000.00010000.00000000 | 172.16.16.0
Host ID | 00000000.00000000.00000001.11001000 | 0.0.1.200

标准子网掩码

网络类别 | 标准子网掩码 (decimal) | 标准子网掩码 (hex)
A | 255.0.0.0 | FF.00.00.00
B | 255.255.0.0 | FF.FF.00.00
C | 255.255.255.0 | FF.FF.FF.00

注意

仅由0或全由1组成的子网掩码是不可用的。
仅由0或全由1组成的主机号也是不可用的。

如果IP地址用KS2000组态软件来设置，那么子网掩码也必须通过KS2000来改变。
如果采用ARP设置地址，那么需要根据该IP地址设置相关的子网掩码。
采用BootP或DHCP时子网掩码由服务器自动确定。


Testing the IP Address

BECKHOFF Fieldbus Components: Addressing

测试 IP 地址

"Ping" 命令用于测试 IP 地址


Reading the MAC-ID

BECKHOFF Fieldbus Components: Ethernet

读取 MAC-ID

读取MAC-ID步骤如下:.

  • 将你电脑的 IP地址设为172.16.x.x,子网掩码设为255.255.0.0 。
    BC9000     和 BK9000 的IP地址的出 厂设置为172.16.17.255（DIP开关1至8设为ON）。
    IP67    现场总线盒的 IP 地址为172.16.18.（旋转开关设置）。
  • 启动DOS窗口
  • 向IP地址172.16.17.xxx发送一个 Ping 命令。
  • 用命令arp -a 读取MAC-ID。


Mapping of the Bus Terminals

BECKHOFF Fieldbus Components: Configuration

总线端子映射

对面向字节的总线端子进行映射的详细分配，可以在总线端子组态指南中找到。该文档也可在产品的 CD 上或在 http://www.beckhoff.com找到。

字节定向总线端子模块 | 位定向总线端子模块
KL15x1 | KL10xx, KL11xx, KL12xx, KL17xx, KM1xxx
KL25xx | KL20xx, KL21xx, KL22xx, KL26xx, KL27xx, KM2xxx
KL3xxx |
KL4xxx |
KL5xxx |
KL6xxx |
KL7xxx |
KL8xxx |
 | KL9110, KL9160, KL9210, KL9260


Configuration using the System Manager

BECKHOFF Fieldbus Components: Configuration

用 System Manager组态

在TwinCAT System Manage的配置模式下连接普通以太网卡。如果总线耦合器已经和网络相连并有 IP地址, 那么你可以看到所有和总线耦合器相连的总线端子和各端子的组态 ，你可以根据需要改变组态。

TCSysMgr_Bx9Scan.gif (20904 Byte)

6个或6个以上的以太网节点的调试

如果你在 System Manager中接入了多余5个节点的时候, 你必须增加路由器内存. 你可以在 System Manager 下的 Real Time Settings 中设置。在每个总线耦合器中输入350 kbyte. 那么对于十个总线耦合器就有3.5 MB (10 x 350 kbyte)内存.

注意: 路由器的内存要依靠你电脑工作时的内存，这就限制了内存上限的设置。
最大可能路由器内存的计算公式为:
Max. router memory [MB] = (1 MB +((RAM [MB] - 4 MB ) x 0.4)

例:
假设你的 PC有128 MB内存:
1MB +(128MB - 4MB) x 0,4 = 50,6 MB
那么你的路由器内存设定值不能高于50.6M。.


ADS process image

BECKHOFF Fieldbus Components: Configuration

ADS过程映像

总线端子过程映像细分为输入映像和输出映像。总线耦合器将复杂的总线端子(byte-oriented)映射到正在执行的过程映像中。只有在末端模块上总线耦合器才将数字总线端子映射到过程映像中。

复杂的总线端子(byte-oriented)映射规则如下:

  • 完全评估
  • 字对齐
  • Intel格式
例 1

BK9000
4 x KL1xx4
2 x KL2xx2
1 x KL9010

Pos. | Bus Terminal | Input %I.. | Output %Q..
1 | KL1xx4 | 0.0 ... 0.3 | -
2 | KL1xx4 | 0.4 ... 0.7 | -
3 | KL1xx4 | 1.0 ... 1.3 | -
4 | KL1xx4 | 1.4 ... 1.7 | -
5 | KL2xx2 | - | 0.0 ... 0.1
6 | KL2xx2 | - | 0.2 ... 0.3
9 | KL6010 | - | -
例 2

BK9000
4 x KL1xx4
2 x KL2xx2
1 x KL1501
1 x KL3xx2
1 x KL4xx2
1 x KL9010

Pos. | Bus Terminal | Input %I.. | Output %Q..
1 | KL1501 | 0..5 | 0..5
2 | KL3xx2 | 6..13 | 6..13
3 | KL4xx2 | 14..21 | 14..21
4 | KL1xx4 | 22.0..22.3 | -
5 | KL1xx4 | 22.4..22.7 | -
6 | KL1xx4 | 23.0..23.3 | -
7 | KL1xx4 | 23.4..23.7 | -
8 | KL2xx2 | - | 22.0...22.1
9 | KL2xx2 | - | 22.2...22.3
10 | KL6010 | - | -


IP Address Tab

BECKHOFF Fieldbus Components: Configuration

IP Address 选项

以太网组件需要一个明确的网络IP地址。在 TwinCAT system中需要在如下的对话框中配置现场总线节点。先在System Manager中的以太网卡下右击鼠标(Add box)，并选择BK9000, BC9000 或其它的以太网现场总线设备，之后可以找到这个选项卡。

Host name

总线耦合器的名称可以在这里编辑。

IP address

在这里输入总线耦合器的IP地址。

GetHostByName

按下此按钮，您可以（BK9000 Firmware版本B2及以上）从Windows 的DHCP（动态主机配置协议）服务器获取一个IP地址。

AMS address

报告总线耦合器的AMS Net ID。它是在IP地址基础上添加两个额外的字节（如“1.1”）而自动生成的。

BootP

如果Beckhoff的BootP服务器已安装并启动（TwinCAT版本2.8及以上），则该复选框可以被激活。

New MAC Addresses

如果Beckhoff BootP server 服务器已经启动, 则最近连接上的以太网现场总线设备的MAC地址 (Media Access Controller)可以通过点击此按钮显现。如果只有一个新的以太网现场总线设备已经连接，那么只有一个新的MAC地址会相应地显示出来。然后，你可以在IP address field中将它分配给所需的IP地址。 每次添加其它以太网现场总线组件时，你可以为新设备重复这个操作。

Communication Settings

为 IP (Internet Protocol) 通讯进行设置。.

TCP

如果该选项是活跃的（默认），那么通讯由TCP (Transmission Control Protocol)处理。这意味着，总线耦合器报文和数据包的收发使用了一个可靠的（公认的）机制.

UDP

如果该选项被选择，通讯由UDP (User Datagram Protocol)处理。相对于TCP，此时个人报文和数据包的交换没有使用一个可靠的机制。换句话说，接收方收到报文后并不告知发送方。已经被损坏或顺序被打乱的报文将不会再重新发送和排序。UDP的优点是报文传输次数可以被统计，因为它不需要等待接收端应答。因而可以说UDP具有受限制的实时性。.

Max. Warning Level

该设置选项只有在用 UDP 时才可用。这里可以输入错误计数器的最大值。当达到所设置的最大值后，不再等待来自现场节点的应答报文，而是向现场节点发送读报文。.

No Auto Retries

该复选框也是只有在UDP选项激活时才能被选择。如果此复选框处于活动状态，当达到Max. Warning Level所设置的值后，需要执行IO /复位功能。

.


BK9000 - ModbusTCP Process Image

BECKHOFF Fieldbus Components: Configuration

ModbusTCP 过程映像

数字量类型、字节类型和字类型的总线端子模块之间的ModbusTCP 过程映像存在着本质的区别。此外，在输入输出模块之间也是有区别的. 在地址映射表中的Bus Terminals belong to which mapping有说明.

Digital inputs | Digital outputs
Offset 0 ... 4095 Modbus function Reading 2 Writing: - | Offset 0 ... 4095 Modbus function Reading 1 Writing 5, 15

Analog/digital inputs | Analog/digital outputs
Offset 0x000 ... 0x0FF Modbus function Reading 3, 23 Writing: - | Offset 0x800 ... 0x8FF Modbus function Reading 3, 4, 23 Writing 6, 16, 23

举例说明：

例 1

BK9000
4 x KL1xx4
2 x KL2xx2
1 x KL9010

输入 |  |  | 输出
Modbus 功能 | Modbus 地址/变异量 | 总线端子 | Modbus 功能 | Modbus 地址/偏移量 | 总线端子
3 read | 0x0000 | 4 x KL1xx4 | 3 read | 0x0800 | 2 x KL2xx2
4 read | 0x0000 |  | 1 read | 0x0000
2 read | 0x0000 - 0x000F |  | 5 write | 0x0000-0x0003
 |  |  | 15 write | 0x0000-0x0003
 |  |  | 6 write | 0x800
 |  |  | 16 write | 0x800
 |  |  | 23 write | 0x800
例 2

BK9000
4 x KL1xx4
2 x KL2xx2
1 x KL1501
1 x KL3xx2
1 x KL4xx2
1 x KL9010

输入 |  |  | 输出
Modbus 功能 | Modbus 地址/偏移量 | 总线端子 | Modbus 功能 | Modbus 地址/偏移量 | 总线端子
3, 4 read | 0x0000..0002 | KL1501 | 3 read | 0x0800..0802 | KL1501
 |  |  | 6, 16 write | 0x0800..0802
3, 4 read | 0x0003..0x0006 | KL3xx2 | 3 read | 0x0803..0x0806 | KL3xx2
 |  |  | 6, 16 write | 0x0803..0x0806
3, 4 read | 0x0007..0x000A | KL4xx2 | 3 read | 0x0807..0x080A | KL4xx2
 |  |  | 6, 16 write | 0x0807..0x080A
3 read | 0x000B | 4 x KL1xx4 | 3 read | 0x080B | 2 x KL2xx2
 |  |  | 4 read | 0x080B
4 read | 0x000B |  | 1 read | 0x0000-0x0003
2 read | 0x0000 - 0x000F |  | 5 write | 0x0000-0x0003
 |  |  | 15 write | 0x0000-0x0003
 |  |  | 6 write | 0x80B
 |  |  | 16 write | 0x80B
 |  |  | 23 write | 0x80B


Ethernet

BECKHOFF Fieldbus Components: Ethernet

以太网

以太网最初是由DEC，intel和XEROX公司开发，并作为的“Dix”标准，用来传递办公设备之间数据的。现在被通称为IEEE 802.3 CSMA/CD 的规范术语，发表于1985年。由于该项技术在世界范围内被广泛接受，因此它被广泛使用，并且非常经济实用。这表明它很容易连接到已有的网络中。

现在有很多种不同的传送介质：同轴电缆(10Base5), 光导纤维(10BaseF) 或带屏蔽双绞线(STP) 和不带屏蔽双绞线 (UTP)
(10BaseT)。各种拓朴结构，如环形、直线型或星型都可用以太网构建。
以 太网从发射端向一个或多个接收端发送以太网数据包。这种传输不需要应答，也不需重发丢失的数据包。为了实现可靠的数据通信，还有如TCP / IP的协议，可以在以太网的顶部运行。

MAC-ID

发送端和接收端的以太网数据包都通过 MAC-ID 编址。 全世界的所有以太网设备都有唯一的6字节MAC-ID 标识码。MAC-ID 由两部分组成。第一部分，即前3 字节，是制造商标识。Beckhoff 的标识码为 00 01 05。后面的3 个字节由制造商分配，并采用唯一的序列号。例如，为设置 TCP/IP 号，MAC-ID 可用于BootP协议。它发送的报文包括名字或对应节点的TCP/IP 号信息。你可以用KS2000 组态软件读出 MAC-ID 。

因特网协议 (IP)

因特网协议(IP) 形成了数据通讯的基础。在相同或不同的网络中，IP 从一个设备到另一个设备传送数据报文，兼顾地址管理(寻找和分配MAC-ID)，分段和路由。像以太网协议一样，IP 不能保证数据被传送 – 数据报文可能丢失，或其顺序可能改变。

在任何数量的不同网络中，TCP/IP 被开发用于提供标准化的、可靠的数据交换。TCP/IP实质上是独立于所使用的硬件或软件的。尽管该术语常被用于一个概念，它们仍然是几个分层协议的结合：例如 IP, TCP, UDP, ARP 和 ICMP。

传送控制协议(TCP)

传送控制协议（TCP） 运行在IP 最上层，是面向传送的协议。它包括错误检测和处理机制。丢失报文的重复。

用户数据报协议 (UDP)

UDP 是与连接无关的传送协议。当在发送端和接收端交换数据时，它不提供控制机制。它比 TCP 具有更高的处理速度。检测报文是否到达必须由高一级协议执行。

在TCP/IP 和 UDP/IP上传送的协议

下面的协议在TCP/IP 或 UDP 协议上传送：

  • ADS
  • ModbusTCP

上面两个协议在总线端子控制器中并行实现，因此，不需要组态来激活该协议。

ADS 可用于TCP 或 UDP 之上，但ModbusTCP 始终建立在TCP/IP的基础上。


Topology

BECKHOFF Fieldbus Components: Ethernet

网络拓朴

按照以太网标准，10BaseT 和100BaseT 标准下，一些站为星型连接。

星型拓朴

最简单的星型局域网形式由单一的点到点连接组成。所有的信息都通过中心节点(集线器或交换机)， 然后按照目标地址将信息传送到期望设备中。

树型拓朴

树型拓朴由一定数量的星型网络连接而成。只要网络中包含一定数量的集线器或交换机，此类拓朴即称为树。星型网络之间的理想连接应具有特定带宽，需要传送。当构建树型拓朴时，必须遵守中继器规则。即所谓的 5-4-3 中继器规则。在任何两个站点之间的传送路径中必须保证不能多于两对中继器(或集线器)，否则，它们应由网桥、交换机或路由器隔开。传送路径可由至多五个分段和四个中继器组(两对中继器)组成。最多有三个这样的分段可为同轴分段，其上连接了站点。剩下的分段必须由点到点连接组成；这些也就是被称为IRL(内部中继器链)的 连接。

电缆指南

Structured cabling 提供构建局域网电缆的通用指南。它指定了用于大地、建筑物或楼层的最大允许电缆长度。在 EN 50173, ISO 11801 和TIA 568-A 标准中， Structured cabling 提供了用于高级的、独立于应用的经济的网络基础。连线标准适用于地理范围达到 3 km 和办公区域达一百万平方米的范围内 50 到 50000 个终端设备之间的连接。同时该指南也给出了建议的电缆系统结构。其结构是可变的，取决于选择的拓朴，传输介质和工业条件下使用的耦合模块，及在一个网络中使用的来自不同制造商的组件。该结构仅供参考。


BC9000 Reaction Time

BECKHOFF Fieldbus Components: BK9000, BC9000

响应时间

BC9000 响应时间

ADS | Time [ms]
TCP | 23 ～ 50 ms + BC9000 (jitter)任务时间
UDP | 1 ～ 3 ms + BC9000 (jitter)任务时间

Modbus | Time [ms]
TCP | 12 ～ 15 ms + BC9000 (jitter) (默认)任务时间
Fast TCP* | 2 ～ 3 ms + BC9000 (jitter)任务时间

* 固件B7版本或以上, Table 100, Register 29 - "1" Fast TCP / "0" TCP (see Modbus Interface)

BK9000 响应时间

ADS | Time [ms]
TCP | 23 ～ 50 ms
UDP | 2 ～ 3 ms

RT-Ethernet** | Time [ms]
RAW | < 1 ms + K-Bus (K-Bus 循环时间)

Modbus | Time [ms]
TCP | 12 ～ 15 ms (默认)
Fast TCP* | 1 ～ 3 ms

* 固件B5版本, Table 100, Register 29 - "1" Fast TCP / "0" TCP (see Modbus Interface)

**固件 B8版本以上


Real Time Ethernet with Fast ADS

BECKHOFF Fieldbus Components: Ethernet

有 Fast ADS的实时以太网

Fast ADS 协议建立在以太网的基础上，在TwinCAT的环境下,这个总线系统有着实时时间和小于 1ms的循环时间. 实时以太网驱动能在 Windows 2000, Windows XP 和英特尔以太网芯片下运行.

更多信息你可以在 http://www.pc-control.net/pdf/022002/pcc_ethernet_e.pdf.中找到。

BK9000

固件版本为B8的BK9000的 Fast ADS协议可以和已存在的协议一起使用. 如果在 System Manager (IP Address tab)下选择ADS功能，那么就可以同时利用协议. 如果没有选择 NoRealTimeFlag 功能, 那么可以通过 Fast ADS进行数据传输.

用 Fast ADS,看门狗设定为100 ms.如果 TwinCAT 停止, 所有其他以太网服务器都可以再次使用. K-Bus和Fast ADS同步工作。

B900

实时以太网Fast ADS 可以在所有 B900 模块上运行. TwinCAT的任务循环时间要小于 10ms. 否则数据就会出错 输出将设置为0!

在 System Manager中设置

BK9000设置表

没有实时标记

一旦启动，bk9000就能接受 TCP/IP 或 UDP 的报文。但是会增加实时时间信号的不稳定性!

K-Bus 重置

可对K-Bus进行复位设置.

数据交换

这个定义表示, 在多少个任务循环时间后报文才传送到总线模块 (总线耦合器 / 总线盒)
Modulo设置,在哪个任务中发送报文.这样能优化系统是性能。

例: Divider 5 and Modulo 3 –在每一个第五次之后(实际是第三次) 报文发送.

VLAN

通过VLAN (虚拟额 LANs)转换器能优化输入报文.

IP Address tab

Host Name

总线耦合器的名称可以在这里编辑。

IP Address

在这里输入总线耦合器的IP地址.

GetHostByName

按下此按钮，您可以（BK9000 Firmware版本B2及以上）从Windows 的DHCP（动态主机配置协议）服务器获取一个IP地址。

Set IP Address

按下此键,通过ARP设置IP地址.

AMS Address

报告总线耦合器的AMS Net ID。它是在IP地址基础上添加两个额外的字节（如“1.1”）而自动生成的。

BootP

如果Beckhoff的BootP服务器已安装并启动（TwinCAT版本2.8及以上），则该复选框可以被激活。

New MAC Addresses

如果 Beckhoff BootP Server服务器已经启动 ，则最近连接上的以太网现场总线设备的MAC地址 (Media Access Controller)可以通过点击此按钮显现。如果只有一个新的以太网现场总线设备已经连接，那么只有一个新的MAC地址会相应地显示出来。然后，你可以在IP address field中将它分配给所需的IP地址。 每次添加其它以太网现场总线组件时，你可以为新设备重复这个操作。

Communication Settings

通过ADS 或者RAW设置通信.


ADS Communication

BECKHOFF Fieldbus Components: Ethernet

ADS 通讯

ADS 协议(ADS: Automation Device Specification)是 Beckhoff TwinCAT 系统的传输层。它被开发用于不同软件模块之间的数据交换，如 NC 和 PLC 之间的通讯。该协议提供了使
用其它工具和 TwinCAT 的任何点进行通讯的便利。如果需要和另一台 PC 或设备通讯，ADS 协议用于TCP/IP之上。它表示在网络系统中，所有的数据可从任何预期的点得到。

ADS 协议运行在TCP/IP 或 UDP/IP 协议之上。它允许用户在Beckhoff 环境中使用几乎任何连接路径与所有连接的设备通讯并参数化它们。在Beckhoff 系统之外，有几种方法可用于和其它软件工具交换数据。

软件接口

ADS-OCX

ADS OCX 是一种 Active-X 组件。它提供了一种标准接口，例如：Visual Basic, Delphi等。

ADS-DLL

你可以将ADS DLL (动态连接库) 连接到C 程序中。

OPC

OPC 接口是用于自动化工程通讯的标准接口。Beckhoff 提供了OPC服务器用于此目的。


ADS Protocol

BECKHOFF Fieldbus Components: ADS

ADS 协议

ADS 功能提供了直接从PC访问总线端子控制器信息的方法。我们可以在TwinCAT PLC 中调用ADS功能块实现此目的。功能块包含在“PLCSystem.lib“ 软件库中。同样也可以通过AdsOCX,ADSDLL或OPC调用ADS功能。所有的数据可以通过ADS端口300存取，而ADS端口100 可用于访问总线控制器和端子模块的寄存器。

AMSNetID

AMSNetID 提供了该设备的参考地址。它由 TCP/IP 地址组和附加的 2 个字节组成。这两个附加字节由 "1.1" 构成, 不能更改。
Example:
IP address 172.16.17.128
AMSNetID 172.16.17.128.1.1

Port number

端口号用于区分所连设备的子元素。
端口 100: 寄存器存取
端口 300: 现场总线过程数据
端口 800: 本地过程数据(仅BC90x0 )

Index group

index group用于区分一个端口中的不同数据。

Index offset

指示读或写数据起始点的偏移量，用字节表示。

Len

指定读或写数据的长度，用字节表示。

TCP 端口号

该ADS协议的TCP端口号是48898或0xBF02。


ADS Services

BECKHOFF Fieldbus Components: Ethernet

ADS服务器

Note

一个ADS报文的用户数据最大值是1900字节。.

过程数据端口300

现场总线数据通过ADS端口300来访问。 该数据由看门狗监控。如果在1000 ms 内没有进一步的报文到达，输出将切换到安全状态。.

Index group | Meaning | Index offset (value range)
0xF020 | Inputs | 0...511
0xF030 | Outputs | 0...511

本地过程映像端口800(仅BC9000 )

数据可以从本地进程映像中读取，也可以写入本地进程映像。如果有必要将输出写入，确保它们没有被本地PLC使用是非常重要的，因为PLC可能会覆盖这些值。数据与watchdog无关，因而不可用做输出，否则一旦发生错误即会切断通讯。

Index group | Meaning | Index offset (value range)
0xF020 | Inputs | 0...511
0xF030 | Outputs | 0...511
0x4020 | Flags (BC 9000 only) | 0...4096

ADS services

AdsServerAdsStateB7
Data type (read only) | Meaning
String | Start - 本地PLC正在运行 Stop - 本地PLC停止
AdsServerDeviceStateB7
Data type (read only) | Meaning
INT | 0 – Start - 本地PLC正在运行 1 – Stop - 本地PLC停止
AdsServerTypeB7
Data type (read only) | Meaning
String | Coupler_PLC
ADSWriteControlBA
Data type (write only) | Meaning
NetID | Net ID of the BC9000, C900
Port | 800
ADSSTATE | 5 - RUN / 6 - STOP
DEVSTATE | 0
LEN | 0
SRCADDR | 0
WRITE | 上升沿触发功能块
TMOUT | for example: t#1000ms

Note

注意：对非循环数据通信， TCP/IP 连接的建立需要大约20 - 30 毫秒。连接成功建立之后，ADS数据将被读取和写入。1000字节左右的ADS读取需要大约50毫秒。 如果10秒内没有数据传输，TCP/IP连接将被BC/BK9000, B/C9000切断。

寄存器端口100

在BK/BC9000 中用于寄存器通讯的ADS端口序号是固定的，被设置为100

Index group | Index offset (value range) |  | Meaning
 | Hi-Word | Low Word
0 | 0...127 | 0...255 | 耦合器中的寄存器 高字表示寄存器所在的table 低字表示寄存器号
1...64 | 0...3 | 1...64 | 端子模块的寄存器 高字表示通道号 低字表示寄存器号

Note

注意：当读取寄存器时，ADS功能块块的超时时间设置要大于1秒。

Note

注意：当写入寄存器时的密码设置。 (详见特殊总线端子文件)..

IP 和 AMS-Net-IDB6 之间的访问控制及关联

AMS-Net-Id 表允许通过AMS访问控制BC 9000。只有那些已经输入到表里的AMS设备才可以访问BC9000。
可以用ADS write命令来填写AMS Net-Id表:
最多能填写10条。

.

The structure
AMS Net ID | Size
AMS Net ID | 6 bytes
IP address | 4 bytes
Reserve | 2 bytes
Reserve | 4 bytes
Reserve | 4 bytes

通过端口10.000访问

Index group: 700

Index Offset (write) | Comment | Data
0 | Add an entry | Data structure, 20 bytes
1 | Delete an entry | -
2 | Delete all entries | -
10 | Save the table in Flash memory | -

Index Offset (read) | Comment | Data
0 | Number of entries | 2 bytes
1...10 | Entry n (1...10) | Data structure, 20 bytes

Note

第一次输入时，设备会写入表中，其设置会立即生效。确保所有这些设置都正确。如果只有终端模块插入并且将DIP开关1-7设为ON，则可以删除此表。

)B6: 版本B6及以上
)B7: 版本 B7及以上
)BA :版本BA及以上

参见 example


AMS routing table

BECKHOFF Fieldbus Components: Ethernet

AMS 路由表

该 AMS路由表可用于两个功能：

1. 如果AMS Net ID与TCP/IP 地址不匹配， 两个地址可以填入表中以设置关联。
如果它们前4字节相同并且AMS Net ID 以".1.1"结尾，则AMS Net ID 可以匹配TCP/IP 地址。

2. 只有存储在表项中的AMS Net IDs可以通过ADS访问BC9000。

请确保所有被要求与之通讯的ADS设备均写入了该表项。如果表是空的（默认），则所有ADS设备都可以访问BC9000

KS2000 对话框

4.3.0.39及以上版本的KS2000软件可以直接通过对话框编辑AMS路由表。

通过ADS在路由表中输入数值

该AMS路由表可以通过ADS加载到BC9000中。 由于输入的内容会立即生效，请确保你的记录是第一条，否则有可能会影响AMS路由表中其他的记录。

Example ST program:


ModbusTCP Protocol

BECKHOFF Fieldbus Components: ModbusTCP

ModbusTCP 协议

该以太网协议是通过MAC-ID的方式编址的。用户通常不需要关注该地址。IP 地址有四个字节长度，并且必须要用户在总线耦合器上或应用程序中对其参数化。在ModbusTCP中，TCP端口号被设为502。该UNIT可以在ModbusTCP下自由选择，用户不需要对其进行配置。

ModbusTCP.jpg (33151 Byte)

TCP端口号

ModbusTCP 的端口号为标准的端口号 502。

Modbus-单元

该单元由从站返回。

ModbusTCP Protocol

字节 | 名称 | 说明
0 | 传送标识 | 由从站返回
1 | 传送标识 | 由从站返回
2 | 协议标识 | 始终为”0”
3 | 协议标识 | 始终为”0”
4 | 长度段 | 0 ( 如果信息长度小于256 字节)
5 | 长度段 | 跟随的字节数
6 | 单元标识 | 由从站返回
7 | Modbus | 带功能号的 Modbus 协议


ModbusTCP Interface

BECKHOFF Fieldbus Components: ModbusTCP

Modbus TCP 接口

地址 |  | 说明
0x0000 0x00FF |  | 过程数据接口 输入
0x0800 0x08FF |  | 过程数据接口 输出
0x1000 0x1006 | 只读 | 总线耦合器标识
0x100A |  | 2 字节 PLC 接口
0x100B |  | 总线端子诊断
0x100C |  | 总线耦合器状态
0x1010 |  | 用位表示的模拟量输出过程映像长度（无PLC变量）
0x1011 |  | 用位表示的模拟量输入过程映像长度（无PLC变量）
0x1012 |  | 用位表示的数字量输出过程映像长度
0x1013 |  | 用位表示的数字量输入过程映像长度
0x1020 |  | 看门狗 当前时间[ms]
0x110A | 读/写 | 2 字节 PLC 接口
0x110B |  | 总线端子诊断
0x1120 |  | 看门狗 预定义时间[ms] (默认: 1000)
0x1121 |  | 看门狗 复位寄存器
0x1122 |  | 看门狗类型 | 1 | 报文看门狗（缺省设置
 |  |  | 0 | 写报文看门狗
0x1123 |  | ModbusTCP 模式** | 1 | 快速 Modbus
 |  |  | 0 | 一般Modbus (缺省)
0x4000 0x47FF |  | 标记区域 (%MB..)*

* 总线端子控制器BC9xx0 和BX9000
** BC9x00要求固件版本B7或以上，BK9000要求固件版本B5或以上

看门狗

看门狗缺省设置时为激活状态。在第一次写入报文后，看门狗定时器被初始化，并且每次从设备接收报文时均被重新触发。其它设备对看门狗没有影响。第二种方法，对看门狗而言条件更严格，即看门狗仅在每次写报文后才重新触发。为此，将寄存器 0x1122 内容写入0 (缺省值为"1")。
对寄存器0x1120写入0可以停止看门狗。只有在看门狗不被激活的时候，看门狗寄存器才可以被写入。寄存器中数据将保留。

看门狗寄存器

如果从站中的看门狗定时器超时，可以通过两次写入寄存器0x1121 将其复位。下面的值必须写到寄存器中：0xBECF，0xAFFE。可以通过调用功能 6 或功能 16 完成。

位 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0
名称 | FB | - | - | - | - | - | - | - | - | - | - | - | - | - | CNF | KB
Key
位 | 名称 | 值 | 说明
15 | FB | 1bin | Fieldbus 错误,看门狗时间超出
14...2 | - | - | 保留
1 | CNF | 1bin | 总线耦合器配置错误
0 | KB | 1bin | 总线端子模块错误

ModbusTCP 通讯模式

快速Modbus模式可用于小型网络中。默认情况该模式不可用。采用该模式通讯时如果发生问题，总线耦合器会切换到“正常”Modbus TCP通讯模式。这个模式在Modbus接口参数，偏移地址0x1123中设定. 设置后需要重启一下耦合器（可用Mdobus TCP功能8实现）。快速Modbus模式下，一个以太网报文中只能发送一个Modbus服务

2字节 PLC 接口

复杂型端子的寄存器和总线耦合器的寄存器都可通过2字节的PLC接口进行读或写。复杂型端子的寄存器在相关的端子文档中进行了说明。总线耦合器的寄存器可以用于如读端子总线诊断数据，端子补偿或循环时间，写入编程组态数据等。也可以手动执行端子总线复位。 2-字节 PLC 接口需要各两字节的输出和输入数据。它们使用特殊的协议进行处理。对 2 字节 PLC 接口, 可根据需要提供总线耦合器中可使用的寄存器以及各 PLC 中用于实现 2 字节 PLC 接口的功能块的说明。

2字节诊断接口

端子的错误信息可通过2字节的诊断接口发送。然而，端子总线诊断必须要为此目的而激活。2-字节的诊断接口各占据两字节的输出和输入数据。它们通过特殊协议进行处理。对 2 字节诊断接口的说明可根据需要提供。


ModbusTCP Error Answer

BECKHOFF Fieldbus Components: ModbusTCP

ModbusTCP 从站错误应答 (BK9000, BC9000, IP/ILxxxx-B/C900)

当用户给从站发送一个耦合器不能识别的请求或信息时，从站将回应一个错误报告。该应答包含功能和错误代码。返回值会自动加0x80 。

代码 | 名称 | 意义
1 | ILLEGAL FUNCTION | Modbus 功能未实现
2 | ILLEGAL DATA ADDRESS | 无效的地址或长度
3 | ILLEGAL DATA VALUE | 无效的参数 - 诊断功能 - 不正确的读/写存取寄存器号
4 | SLAVE DEVICE ERROR | 看门狗或 K-Bus 错误
6 | SLAVE DEVICE BUSY | 输出数据已被另一IP地址的设备接收。


ModbusTCP Functions

BECKHOFF Fieldbus Components: ModbusTCP

ModbusTCP 功能码

在Modbus协议中， 采用不同的功能码决定了是读还是写以及读写的数据类型。

.

功能 | 代码 | 说明
Read coil status | 1 | 读取数字输出
Read input status | 2 | 读取数字输入
Read holding register | 3 | 读取模拟量 输出和输入/ GPR
Read input register | 4 | 读取模拟量输入 /GPR
Force single coil | 5 | 写数字量输出Writing a digital output
Preset single register | 6 | 写模拟量输出/GRP
Diagnostic | 8 | 诊断方法
Force multiple coils | 15 | 写若干数字输出
Preset multiple register | 16 | 写若干模拟输出 / GPRs
Read / Write Registers | 23 | 读写若干过程数据输出 / GPRs

GPR (通用预置寄存器) - 接口的寄存器结构 （参看附录)


Read Coil Status (Function 1)

BECKHOFF Fieldbus Components: ModbusTCP

读线圈状态（功能1）

功能 1 用于读取数字量输出状态。

本示例读出前10 个数字量输出。起始地址为零。“起始地址”中填写地址偏移量。

查询

字节名称 | 示例
功能码 | 1
起始地址高字节 | 0
起始地址低字节 | 0
数据计数高字节 | 0
数据计数低字节 | 10

现场总线耦合器回应“字节计数” 2，即返回 2 字节数据。本功能查询 10 位，它们分布在 2 个字节中。BK9000 中输出过程映像的第三位为置位状态，因此现场总线耦合器在第一个数据字节中返回数据 为"4"。

响应

字节名称 | 示例
功能代码 | 1
字节计数 | 2
数据位 0..7 | 4
数据位 8..15 | 0


Read Input Status (Function 2)

BECKHOFF Fieldbus Components: ModbusTCP

读取输入状态（功能2）

功能 2 用于读数字量输入。本示例读出前10 个数字量输入。起始地址为零。 "起始地址" 中为偏移地址。

查询

字节名称 | 示例
功能代码 | 2
起始地址高字节 | 0
起始地址低字节 | 0
数据计数高字节 | 0
数据计数低字节 | 10

现场总线耦合器回应“字节计数” 2，即返回 2 字节数据。本功能查询 10 位，它们分布在 2 个字节中。 BK9000 中输出过程映像的第三位为置位状态，因此耦合器在第一个数据字节中返回数据 "4"。

响应

字节名称 | 示例
功能代码 | 2
字节计数 | 2
数据位 0..7 | 1
数据位 8..18 | 0


Read Holding Register (Function 3)

BECKHOFF Fieldbus Components: ModbusTCP

读保持寄存器（功能3）

功能 3 可用于读取输入\输出字和寄存器。输出偏移量为0x800 - 0x8FF，输入偏移量为0 - 0xFF。

本示例中为读出前两个模拟量输出。模拟量输出从偏移地址 0x800(十六进制)开始。“数据计数”中为所要读取的通道数。

查询

字节名称 | 示例
功能码 | 3
起始地址高字节 | 8
起始地址低字节 | 0
数据计数高字节 | 0
数据计数低字节 | 2

现场总线偶合器回应“字节计数” 4，即返回 4 字节数据。本功能查询 2通道模拟量，它们分布在 2 个字中。在模拟量输出过程映像中，第一通道的值为 0x3FFF，第二通道的值为 0x0。

响应

字节名称 | 示例
功能代码 | 3
字节计数 | 4
数据 1 高字节 | 63
数据 1 低字节 | 255
数据 2 高字节 | 0
数据 2 低字节 | 0


Read input register (Function 4)

BECKHOFF Fieldbus Components: ModbusTCP

读输入寄存器 (功能4)

功能 4 用于读模拟量输入。

本示例读出从站11中的前两个模拟量输入。模拟量输出从偏移地址0x000 (十六进制) 开始。“数据计数”中为要读出的通道数。一块KL3002 有 2 个输入数据字，因而”数据计数低字节”中输入为 2 。

查询

字节名称 | 示例
功能代码 | 4
起始地址高字节 | 0
起始地址低字节 | 0
数据计数高字节 | 0
数据计数低字节 | 2

现场总线耦合器回应“字节计数” 4，即返回 4 字节数据。本功能查询 2 通道模拟量，它们分布在 2 个字中。在模拟量输入过程映像中，第一通道的值为 0x0038，第二通道的值为 0x3F1B。

响应

字节名称 | 示例
功能代码 | 4
字节计数 | 4
数据 1 高字节 | 0
数据 1 低字节 | 56
数据 2 高字节 | 63
数据 2 低字节 | 11


Force Single Coil (Function 5)

BECKHOFF Fieldbus Components: ModbusTCP

强制单个线圈 (功能5)

功能 5 用于写数字量输出。本示例为写第三个数字量输出。数字量输出从偏移地址 0x0000 (十六进制) 开始。数字量值位于“数据高字节”中。为使输出为On状态，"数据高字节" 必须为 0xFF (十六进制)，而 0x00 (十六进制) 用于将输出置为Off状态。"数据低字节" 必须为 0x00 (十六进制)。

查询

字节名称 | 示例
功能代码 | 5
起始地址高字节 | 0
起始地址低字节 | 2
数据高字节 | 255
数据低字节 | 0

耦合器回应相同的报文。

响应

字节名称 | 示例
功能代码 | 5
起始地址高字节 | 0
起始地址低字节 | 2
数据高字节 | 255
数据低字节 | 0


Preset Single Register (Function 6)

BECKHOFF Fieldbus Components: ModbusTCP

预置单个寄存器(功能 6)

功能 6 用于存取输出过程映像和Modbus TCP接口参数。使用功能 6 可写第一个模拟量输出。模拟量输出从偏移地址 0x0800(十六进制)开始。这里再次强调，偏移地址单位为word。所以，偏移地址 0x0803即是输出过程映像区的第四个字。

查询

字节名称 | 示例
功能代码 | 6
起始地址高字节 | 8
起始地址低字节 | 0
数据高字节 | 63
数据低字节 | 255

现场总线耦合器回应相同的报文表示确认所收到的数值。

响应

字节名称 | 示例
功能代码 | 6
起始地址高字节 | 8
起始地址低字节 | 0
数据高字节 | 63
数据低字节 | 255


Diagnosis (Function 8)

BECKHOFF Fieldbus Components: ModbusTCP

诊断 (功能 8)

在 Modbus 中，功能 8 提供了在主站和从站之间一系列的通讯系统测试检查以及从站内部的错误状态检查。不支持广播式报文。

该功能使用一个两字节的子功能代码，并在查询时定义需要执行的测试功能。从站输出功能代码和子功能代码作为应答。

诊断需要使用两字节的数据，给从站发送诊断数据或控制信息。

查询

字节名称 | 示例
功能代码 | 8
子功能高字节 | 0
子功能低字节 | 0
数据高字节 | 2
数据低字节 | 3

响应

字节名称 | 示例
功能代码 | 8
子功能高字节 | 0
子功能低字节 | 0
数据高字节 | 2
数据低字节 | 3

回应查询 (子-功能 0)

子功能 0 产生的数据是由主站发送给从站，并要求其返回的数据。

耦合器复位 (子-功能 1)

子功能 1 重新初始化 BC9000/BK9000。错误计数器被复位，总线端子控制器执行自检。当总线端子控制器复位时，既没有报文接收，也没有报文发送。IP 套接字关闭。

Note

在总线端子控制器重新启动前，它发送一次以上子功能1的应答，然后，IP 套接字被关闭。

子-功能 | 数据域 (查询) | 数据域 (响应)
0x0001 | 0x0000 | 0x0000

删除全部计数内容 (子-功能 10)

调用此子功能将删除总线端子控制器中的所有错误计数内容。

子-功能 | 数据域 (查询) | 数据域 (响应)
0x000A | 0x0000 | Echo query data

总线通讯应答计数 (子-功能 11)

返回通讯应答数。

子-功能 | 数据域 (查询) | 数据域 (响应)
0x000B | 0x0000 | 计数值

错误应答计数 (子-功能 13)

该计数是耦合器发送的错误应答报文的次数。

子-功能 | 数据域 (查询) | 数据域 (响应)
0x000D | 0x0000 | 计数值

下面的功能用于获取各个单元的计数器状态。这意味着不同站间的 Modbus 报文可以使用这些功能区分，例如，不同的主站对总线耦合器的访问。

从站应答 (子-功能 14)

从站已经发出的应答次数。

子-功能 | 数据域 (查询) | 数据域 (响应)
0x000E | 0x0000 | 计数值

未答复的报文数量 (子-功能 15)

从站没有发出的应答次数。

子-功能 | 数据域 (查询) | 数据域 (响应)
0x000F | 0x0000 | 计数值

错误应答次数 (子-功能 16)

从站已经发出的错误应答次数。

子-功能 | 数据域 (查询) | 数据域 (响应)
0x0010 | 0x0000 | 计数值


Force Multiple Coils (Function 15)

BECKHOFF Fieldbus Components: ModbusTCP

强制多个线圈(功能15)

功能 15 可以同时设置或复位多个数字量输出。本示例中写入了前 20 个数字量输出。数字量输出从偏移地址0x0000 (十六进制)开始。这里的偏移量单位是bit。偏移地址0x0003即为输出过程映像区的第四个位。“长度”表示位的个数，"字节计数" 由所有的要写入的字节数组合而成。示例: 20位产生一个3字节数 (取最接近的字节数)。数据字节包含不同位的值。本示例中，位0到15 设置为 TRUE，而位16 到 23 均为 FALSE。

查询

字节名称 | 示例
功能代码 | 15
起始地址高字节 | 0
起始地址低字节 | 0
长度高字节 | 0
长度低字节 | 20
字节计数 | 3
数据 1 位 0.. 7 | 255
数据 2 位 8.. 15 | 255
数据 3 位 16.. 23 | 0

响应

耦合器回应相同的报文。

字节名称 | 示例
功能代码 | 15
起始地址高字节 | 0
起始地址低字节 | 0
长度高字节 | 0
长度低字节 | 20


Preset multiple register (Function 16)

BECKHOFF Fieldbus Components: ModbusTCP

预置多个寄存器（功能16）

功能 16 用于写多个模拟量输出。本示例为写前 2 个模拟量输出字。模拟量输出从偏移地址 0x0800 (十六进制)开始。偏移量单位为word。偏移量 0x0003 即表示输出过程映像区中的第四个字。“长度”表示字的数量，"字节计数" 由所有需写入的字节组合而成。示例: 4 个字 – 对应字节计数 8。数据字节包含要写的模拟量输出值。本示例中，需要写入两个字。第一个字值为 0x7FFF (十六进制)，第二个字值为 0x3FFF。

查询

字节名称 | 示例
功能代码 | 16
起始地址高字节 | 8
起始地址低字节 | 0
长度高字节 | 0
长度低字节 | 2
字节计数 | 4
数据 1 字节1 | 127
数据 1 字节2 | 255
数据 2 字节1 | 63
数据 2 字节2 | 255

响应

耦合器应答起始地址和传送的字长度。

字节名称 | 示例
功能代码 | 16
起始地址高字节 | 8
起始地址低字节 | 0
长度高字节 | 0
长度低字节 | 2


Read or Write Registers (Function 23)

BECKHOFF Fieldbus Components: ModbusTCP

读/写寄存器(功能 23)

使用功能 23 可以在一个报文中写多个模拟量输出值及读多个模拟量输入值。本示例中将写前 2 个模拟量输出和读前 2 个模拟量输入。模拟量输出起始地址从偏移量 0x0800 (十六进制)开始，而输入从偏移量 0x0000 (十六进制)开始。这里的偏移量单位为word。偏移量 0x0003 即为输出过程映像区中的第四个字。“长度”表示字的数量，"字节计数" 由所有需写入的字节组合而成。示例: 4 个字 – 对应字节计数 8。数据字节包含模拟量输出值。本示例中，需要写入两个字。第一个字接收值为 0x3FFF (十六进制)，第二个字接收值为 0x7FFF。

查询

字节名称 | 示例
功能代码 | 23
读数据起始地址高字节 | 0
读数据起始地址低字节 | 0
读数据长度高字节 | 0
读数据长度低字节 | 2
写数据起始地址高字节 | 8
写数据起始地址低字节 | 0
写数据长度高字节 | 0
写数据长度低字节 | 2
字节计数 | 4
数据 1 高字节 | 63
数据 1 低字节 | 255
数据2 高字节 | 127
数据2 低字节 | 255

响应

耦合器应答起始地址和”字节计数”中传送的字节数长度。数据信息紧随其后。本示例中，第一个字为 0x0038 (十六进制) ，而第二个字为 0x3F0B。

字节名称 | 示例
功能代码 | 23
字节计数 | 4
数据 1 高字节 | 0
数据 1 低字节 | 56
数据 2 高字节 | 63
数据 2 低字节 | 11


Examples for ModbusTCP

BECKHOFF Fieldbus Components: ModbusTCP

ModbusTCP示例

Modbus TCP示例包含在如下帮助文档中。

例子: VB6.0实现ModbusTCP
Extract ModbusTCP.zip

例子: VB6.0实现ModbusTCP置位或复位watchdog:
Extract BK9000Modbus.zip


Register Settings, Table 100

BECKHOFF Fieldbus Components: Configuration

寄存器设置，表100

KS2000 软件可以通过对话框设置寄存器，也可以直接写寄存器。.

寄存器 | 说明 |  | 默认 | 总线终端控制器
0-1 | IP 地址 |  | 0xAC, 0x10, 0x11, 0x00 | BC9000, BK9000
2-3 | IP 掩码 |  | 0xFF, 0xFF, 0x00, 0x00 | BC9000, BK9000
4-13 | 设备名称 |  | BC9000 | BC9000, BK9000
14 | AMS/ADS 看门狗 |  | 1000 ms | BC9000, BK9000
15.0 | 0bin | 能使用 ModbusTCP | 0bin | BC9000, BK9000
 | 1bin | 不能使用 ModbusTCP
15.1 | 0bin | 能使用 AMS/ADS协议 | 0bin
 | 1bin | 不能使用 AMS/ADS协议
16.8 | 0bin | 半双工以太网模式 | 1bin | BC9000, BK9000
 | 1bin | 全双工以太网模式
16.12 | 0bin | 自动波特率关闭 | 1bin
 | 1bin | 自动波特率开启
16.13 | 0bin | 10 MBaud | 1bin
 | 1bin | 100 MBaud
17-18 | 默认网关 |  | 0x00, 0x00, 0x00, 0x00 | BC9000, BK9000
24 | 看门狗 ModbusTCP |  | 1000 ms | BC9000, BK9000
25.0 | 在诊断标记区域中是否开放总线错误的标记(连接到交换机中断) |  | 0bin | BC9000
 | 0 | 错误没有被输入
 | 1 | 错误被输入
26 | TCP网络协议端口号 |  | 502 | BC9000, BK9000
27 | ADS 连接持续时间 |  | 10 s | BC9000, BK9000
28 | Modbus 诊断持续时间 |  | 10 s | BC9000, BK9000
29.0 | ModbusTCP 模式 |  | 0bin | BC9000, BK9000
 | 1bin | 高速 ModbusTCP协议


BK9x00, BC9x00 - Diagnostic LEDs

BECKHOFF Fieldbus Components: Error handling and diagnosis

诊断指示 LED

BK9000, BK9100, BC9000, BC9100

在开关接通后，总线耦合器立即检查连接组态。启动时没有错误则 “I/O ERR” 指示灯不亮。如果“I/O ERR” 指示灯闪烁，则表示端子中有错误。错误代码可由闪烁频率和次数决定。 用户可以据此快速诊断。

总线藕合器有两组指示灯显示状态。上面一组有四个指示灯指示现场总线的各种状态。 ”现场总线状态”指示灯的意义在本手册的相关章节中进行解释 。它们和传统现场总线显示相一致。

在总线耦合器上面右侧有两个绿色指示灯指示电源电压。左手侧的指示灯指示总线耦合器24V电源。右手侧的指示灯指示电源触点电源。

供电诊断LED指示

LED | 说明
左LED不亮 | 总线耦合器无电源
右LED不亮 | 电源触点无24V直流电连接

现场总线诊断LED指示

LED | 亮 | 不亮
连接 (仅BK9000/BC9000) | 建立物理数据连接 | 无物理数据连接
ACT (only BK9000/BC9000) | 有总线传输 | 无总线传输 (总线 空闲)
COM (仅 BK9100/BC9100) | On/Flashing: 接受数据 | 不接受数据
错误 | 激活DHCP或BootP则LED灯慢闪，若耦合器未获取IP地址则LED灯快闪（上电时闪5次）； 总线耦合器通过ARP获取地址； DIP开关的设置无效。 | 无错误
PLC (仅 BC9000/BC9100) | PLC 程序为运行模式，当创建引导项目时，指示灯闪烁。 | PLC 程序为停止模式
WDG (仅 BK9000) | Out - 看门狗错误或无通讯 On - 看门狗工作 | 开始通讯或重置看门狗错误 无错误

K-BUS诊断LED指示

错误代码

错误点

说明

解决方法

持久的,
连续闪烁

EMC 问题
  • 检查电源是否超压或欠压
  • 实施 EMC 检测
  • 如果出现K-总线错误，可以本地重启动偶合器
    (    先将其关断然后再打开)

闪 1 次

0

EEPROM 检验和错误

用KS2000设定出厂设置

1

缓冲器代码溢出

连接较少的总线端子; 可编程组态表中条目太
多

2

未知数据类型

偶合器需要软件升级

闪 2 次

0

可编程组态有一个不正确的表项

检查可编程组态的正确性

n (n > 0)

表比较(第n块总线端子有误)

不正确的表项

闪 3 次

0

K-Bus命令错误

- 没有连接总线端子模块
- 总线端子排中有故障端子; 将所连模块数减半，查看是否仍有错误，是则继续减半检查，直至找到故障模块。

闪 4 次

0

K-总线数据错误，总线耦合器后所接模块中断

检查是否正确连接末端端子模块KL9010

n

第n块总线端子模块后有中断

检查第n+1块总线端子是否正确连接；如有需要，进行更换。

闪 5 次

n

第n块总线端子模块的寄存器通讯中出现K-Bus错误

更换第n个总线端子模块

闪 6 次

0

初始化错误

更换总线耦合器

1

内部数据错误

在总线耦合器上执行硬件重置(先将其关断然后再打开)

2

下列情况软复位后DIP开关设置改变

Firmware为BB的BC9000和B0的BC9100：

Firmware为BA的BK9000和B0的BK9100：

网络中其他设备具有同样IP地址

在总线耦合器上执行硬件重置(先将其关断然后再打开)

更改IP地址

4

对于BootP的DIP 开关设置错误

设置 1-8 to on or off, 查看 BootP

8

内部数据错误

在总线耦合器上执行硬件重置(先将其关断然后再打开)

16

IP套接字错误

在总线耦合器上执行硬件重置(先将其关断然后再打开)

闪 7 次 (仅 BC9000/BC9100)

0

注意:超出循环时间
(查看 表 1, Register 17)

警告：超过设置的循环时间，该迹象（LED灯闪烁）只能通过重启BC来消除。
解决方法: 增加循环时间

闪 9 次 (仅 BC9000/BC9100)

0

保存在内存中的程序校验和错误

再次传送程序到 BC 中

1

调用了不正确或错误的库文件

将错误的库移除

闪 10 次 (仅 BC9000/BC9100)

n

第n块总线端子模块与创建引导程序时的配置不一致

检查第n块模块，若需使用此模块，必须删除引导程序

闪 14 次

n

第n块总线端子模块格式错误

再次启动总线耦合器，如果错误仍然发生，则更
换该总线端子模块

闪 15 次

n

总线端子模块数不正确

再次启动总线耦合器，如果错误仍然发生， 使用
KS2000 软件恢复出厂设置

闪 16 次

n

K-Bus数据长度不正确

再次启动总线偶合器，如果错误仍然发生， 使用
KS2000 软件恢复出厂设置

交换机诊断LED指示 (only BK9100/BC9100)

LED | 亮 | 闪烁 | 不亮
LINK/ACT | 连接正常 | 通讯正常 | 无连接
10/100MBaud | 100 MBaud | - | 10 MBaud


BK9050 - Diagnostic LEDs

BECKHOFF BK9050: Error handling and diagnosis

诊断指示 LED

BK9050

供电诊断LED指示

LED (Power LEDs) | 说明
Power LED Us | 总线耦合器无24 VDC电源
Power LED Up | 电源触点无24V直流电连接

现场总线诊断LED指示

LED (K-bus) | 说明
K-bus RUN | K-bus 运行
K-bus ERR | 闪烁: (see error code)

以太网诊断指示LED

LED (Ethernet) | 说明
WD ERR | 亮: 看门狗错误
COM | 亮或者闪烁: 接收数据
ERROR | 闪烁: DHCP或者 BootP 运行，等待获取IP 地址
RTE | 亮: 硬件实时时间在 TC端启动.此时 ADS不能进行通信.所有 TCP, UDP 和ICMP 无法响应
LINK/ACT | 亮:连接正常 闪烁: 连接正常并且有数据传输

K-BUS诊断错误编码指示

错误代码

错误点

说明

解决方法

持久的,
连续闪烁

EMC 问题
  • 检查电源是否超压或欠压
  • 实施 EMC 检测
  • 如果出现K-总线错误，可以本地重启动偶合器
    (    先将其关断然后再打开)

闪 1 次

0

EEPROM 检验和错误

用KS2000设定出厂设置

1

缓冲器代码溢出

连接较少的总线端子; 可编程组态表中条目太多

2

未知数据类型

偶合器需要软件升级

闪 2 次

-

预留

闪 3 次

0

K-Bus命令错误

- 没有连接总线端子模块
- 总线端子排中有故障端子; 将所连模块数减半，查看是否仍有错误，是则继续减半检查，直至找到故障模块。

闪 4 次

0

K-总线数据错误，总线耦合器后所接模块中断

检查是否正确连接末端端子模块KL9010

n

第n块总线端子模块后有中断

检查第n+1块总线端子是否正确连接；如有需要，进行更换。

闪 5 次

n

第n块总线端子模块的寄存器通讯中出现K-Bus错误

更换第n个总线端子模块

闪 6 次

0

初始化错误

更换总线耦合器

1

内部数据错误

在总线耦合器上执行硬件重置(先将其关断然后再打开)

2

网络中存在两个IP地址

检查IP地址

4

BOOTP与DIP开关设置错误

设置DIP开关1-8为on或off

闪 7 次

0

注意:超出循环时间

警告：超过设置的循环时间，该迹象（LED灯闪烁）只能通过重启BC来消除。
解决方法: 增加循环时间

闪 9 次

0

保存在内存中的程序校验和错误

再次传送程序到 BC 中

1

调用了不正确或错误的库文件

将错误的库移除

闪 10 次

n

第n块总线端子模块与创建引导程序时的配置不一致

检查第n块模块，若需使用此模块，必须删除引导程序

闪 14 次

n

第n块总线端子模块格式错误

再次启动总线耦合器，如果错误仍然发生，则更换该总线端子模块

闪 15 次

n

总线端子模块数不正确

再次启动总线耦合器，如果错误仍然发生， 使用KS2000 软件恢复出厂设置

闪 16 次

n

K-Bus数据长度不正确

再次启动总线偶合器，如果错误仍然发生， 使用KS2000 软件恢复出厂设置


General Errors

BECKHOFF Fieldbus Components: Error handling and diagnosis

一般错误

更换总线耦合器后无数据通讯

你已经更换了以太网总线耦合器并设置了相同的 TCP/IP 地址，但没有数据交换。

每个以 太设备都有其自己的、唯一的 MAC-ID。该号在连接以太网节点时被保存，并存于表中。该表包含 MAC-ID 和 TCP/IP号之间的关联。 你必须删除此表。为此，在 DOS 窗口中输入命令 "arp -d" 以及总线耦合器 TCP/IP 号。
示例: >arp -d 172.16.17.203<
如果 DHCP 协议或BootP协议是激活的 ， 在更换耦合器后，应在DHCP服务器或BootP 服务器中设置新耦合器的 MAC-ID 。

在线时通讯错误 *

处于在线状态时 (通过 Ethernet/AMS 登录) ，经常出现"Communication error - logging out always occurs"。

数据传送在以太网接口处发生阻塞。

解决方法：

  • 减少数据通讯量。
  • 停止周期数据传送，或加长任务时间。
  • 减少在线显示时打开的窗口数量。
  • 通过串行接口登录。

* 仅 BC9000


ADS Diagnostic

BECKHOFF Fieldbus Components: Error Handling and Diagnosis

ADS 诊断

输入状态

可以在system manager中监视 BK/BC9000总线耦合器的通讯。在硬件树型列表中，可以看到每个总线耦合器的输入状态。

耦合器状态
值 | 意义
0x0000 | 没有错误
0x0001 | 总线端子模块出错，K-Bus出错
0x0002 | 组态错误；参数化配置不符合实际的配置
MissedCnt

理想的配置：
任务时间总是大于以太网传输时间。 在任务开始时传输以太网报文，在一段时间 tEth后再次返回PC。如果该时间 tEth总是小于设置的任务时间，MissedCnt counter中的值保持不变。

如果，在任务时间已过完后，以太网报文仍然没有传输到PC，在下一次任务开始后它才能到达，那么TwinCAT将仍用旧的输入数据来工作。此外，MissedCnt计数值会加1。

这可能有以下原因：

  • 选择的任务时间太短。设置
    - 100 ms    或以上（TCP方式）
    - 20 ms    或以上（UDP方式）
  • 网络中有太多的冲突：用交换机代替集线器！
  • 总线负荷太高： 改为100 MBaud!
  • 您登录到了该BC9000：这将额外增加总线端子控制器的处理器负载，导致反映时间变长。

下面两个诊断状态有不同的含义，由传输类型而定

.

TCP/IP 诊断

BoxState
值 | 意义
0x0000 | 无错误
0x0001 | 无输入
MissedCnt
值 | 意义
0xyyyy | 未在任务开始时及时返回的报文数。该值应保持几乎不变。如果该值不断上升，则任务的时间应延长

UDP/IP 诊断

BoxState
值 | 意义
0x0000 | 无错误
0x0001 | 无输入
0x0002 | 输出置零
0xxxzz | xx - 警告级别。每次数据没有及时到达时，该值递增1。当数据交换正确时，该值减1。当达到最高警告级别时（默认100），零被写入到输出数据, 并且只有在警告级别达到0时，正常的进程映像才能再次启动。
MissedCnt
值 | 意义
0xyyyy | 未在任务开始时及时返回的报文数。该值应保持几乎不变。如果该值不断上升，则任务的时间应延长。


ModbusTCP Diagnostic

BECKHOFF Fieldbus Components: Error Handling and Diagnosis

ModbusTCP 诊断

See Modbus diagnostic function

See ModbusTCP error answers


General operating conditions

BECKHOFF Fieldbus Components: Appendix

常规运行条件

必须遵守下列条件如果现场总线组件功能没有错误。

环境条件

操作

在如下情况中没有额外保护装置话不能使用组件：

  • 在恶劣环境下,比如周围有腐蚀性蒸汽或气体，或高粉尘等级下。
  • 存在高电平电离辐射情况下
状态 | 允许范围
可允许工作温度范围 | 0°C ... +55°C
可允许工作相对湿度 | 95 %, 无冷凝
安装位置 | 可变
抗震性 | 符合 EN 60068-2-6 标准
耐震强度 | 符合 EN 60068-2-27, EN 60068-2-29标准
EMC resistance burst | 符合 EN 61000-6-2标准
ESD 排放 | 符合 EN 61000-6-4标准

运输和存储

状态 | 允许范围
可允许存储温度范围 | -25 °C ... +85°C
相对湿度 | 95 %,无冷凝
允许自由下落高度 | 原包装可达1 m

保护等级和类型

状态 | 允许范围
保护等级与IEC 536 (VDE 0106, Part 1)一致 | 在安装导轨中连接一个保护性导体是有必要的！
保护等级符合 IEC 529标准 | IP20 (防止手指接触内部原件)
Protection against foreign objects防止外物 | 直径小于12 mm
防止水 | 无保护

元件识别名

每一个元件上附有胶贴标签提供了产品许可信息。比如, BK2000上:

标签上印有如下信息:

印刷的条目 | 详细举例:
产品名 | BK2000总线耦合器
电源电压 | 24 VDC
数据串速率 | 2.5 MBaud
制造商 | Beckhoff 自动化有限公司
CE 认证标志 | 相一致标志
UL 认证标志 | 认证标志.。UL 全称 （Underwriters Laboratories Inc,基于美国，北美地区主要认证机构。 C = Canada, US = USA, LISTED 22ZA (进入该登记号可以查阅测试结果)
产品识别 | 数字序列从左到右分别表示了产品周(2 个字符), 产品年 (2 个字符),软件版本(2 个字符) 和硬件版本 (2 个字符), 一些特殊说明(4 个字符). 比如 BK2000 - 产品是第9个星期 - 2001年 - 包含有 BF 固件版本 - 使用了第6硬件版本 - 没有特别说明


Approvals

BECKHOFF Fieldbus Components: Appendix

认证

UL E172151

合格标志

CE

防护等级

IP20 in accordance with EN60529


Test Standards for Device Testing

BECKHOFF Fieldbus Components: Appendix

设备性能的测试标准

EMC

EN 61000-6-2

EN 61000-6-4

抗震性

EN 60068-2-6 Vibration Testing

EN 60068-2-27/29 Shock Testing


Bibliography

BECKHOFF Fieldbus Components: Appendix

参考书目

TCP/IP

TCP/IP (英语)
刊物, Volume1 The Protocols
作者 W. Richard Stevens
出版商: ADDISON-WESLEY Longmann Verlag

TCP/IP (德语)
Aufbau und Betrieb eines TCP/IP Netzes ( TCP/IP 以太网组成和工作原理)
作者Kevin Washburn and Jim Evans
出版商: ADDISON-WESLEY Longmann Verlag

Modbus/TCP

http://www.modicon.com/

http://www.modbus.org

TwinCAT

Beckhoff Information System
http://infosys.beckhoff.com


List of Abbreviations

BECKHOFF Fieldbus Components: Appendix

缩略语列表

ADS

Automation Device Specification.

IP (20)

Bus Terminal protection class

IPC

Industrial PC

I/O

Inputs and outputs

K-Bus

Terminal bus

KS2000

Configuration Software for Bus Terminals, Bus Coupler, Bus Terminal Controller, Fieldbus Box Modules and so on

PE

The PE power contact can be used as a protective earth.

TwinCAT

The Windows Control and Automation Technology


Support and Service

BECKHOFF Automation: Appendix

技术支持和服务

Beckhoff 及其合作伙伴活跃于世界各地，提供全方位的技术服务和技术支持，确保快速协助解决与 Beckhoff产品和系统解决方案相关的所有问题。

Beckhoff 的分支机构及代表处

Beckhoff 总部有关 Beckhoff 产品的任何问题，请与负责本地技术支持与技术服务的 Beckhoff 分支机构或代表处联系!

有关 Beckhoff 分布在世界各地的分支机构及代表处的地址，请见公司官方网页：

http://www.beckhoff.com.cn

公司网站还提供更多有关Beckhoff 组件信息的文档资料。

Beckhoff Automation GmbH

Eiserstr. 5
33415 Verl
Germany

电话： | +49(0)5246/963-0
传真： | +49(0)5246/963-198
e-mail： | info@beckhoff.com

Beckhoff 技术支持

Beckhoff 可为您提供全面的技术支持，除了Beckhoff 具体产品的应用之外，还提供更广泛的服务：

  • 全球技术支持
  • 复杂自动化系统的设计、编程和调试
  • Beckhoff 系统组件培训方案
热线： | +49(0)5246/963-157
传真： | +49(0)5246/963-9157
e-mail： | support@beckhoff.com.cn

Beckhoff 技术服务

Beckhoff服务中心提供全方位的售后技术服务：

  • 现场服务
  • 维修服务
  • 备件服务
  • 热线服务
热线： | +49(0)5246/963-460
传真： | +49(0)5246/963-479
e-mail: | service@beckhoff.com.cn


Remanent and persistent Data

There are special flags for remanent and persistent data in the higher memory region.

Remanent Data

The remanent data is located in the flags area. The default setting is for 64 remanent bytes, i.e. from %MB0 to %MB63. This region can be expanded to a maximum size of 4 kbyte. It should be borne in mind that the task time increases with the quantity of remanent data (approx. 0.5 ms for 512 bytes). The settings for the remanent data can be made via the (TwinCAT) System Manager, or with the KS2000 configuration software (Table 1, Register 15, default value 64 max. 4 kbyte).

Persistent data

Persistent data is even more stable, and is retained even through a program download. The quantity of persistent data must be smaller than or equal to the quantity of remanent data! Like the remanent data, the persistent data is located in the region allocated for flags (%MBxx). You can make the settings for the persistent data using the KS2000 configuration software (Table 1, Register 18, default value 0, max. 4 kbyte).

Example

400 bytes of remanent data, of which 200 bytes are to be persistent
Register 15 400 (%MB200 - %MB399)
Register 18 200 (%MB0 - %MB199)


Fieldbus process image

16 bytes input and output are assigned to the fieldbus by default in all the BCxxxx devices. These variables are known as the PLC variables. They are located by default in the BCxxxx process image starting at address 128. This address can be shifted. The setting can be made with the KS2000 configuration software, or, for some BCs, can be changed by means of start-up parameters.


Bus Terminal Controller - Local Process Image

BECKHOFF Fieldbus Components: Programming

Local Process Image

The default setting is for all the connected Bus Terminals to be assigned to the local process image of the BC/BX.

Mapping within the Bus Terminal Controller is carried out according to the following rule:
First come all the complex Bus Terminals, in whatever sequence they are physically inserted, followed by the digital Bus Terminals which are padded to a whole byte.

The default mapping of the complex Bus Terminals is:

  • complete evaluation
  • Intel format
  • word alignment
Example

1 x BCxxxx or BXxxxx
1 1 x KL1012
2 1 x KL1104
3 1 x KL2012
4 1 x KL2034
5 1 x KL1502
6 1 x KL3002
7 1 x KL4002
8 1 x KL6001
9 1 x KL9010

Bus Terminal | Position | Input image | Output image
KL1502 | 5 | %IB0...%IB5 | %QB0...%QB5
KL3002 | 6 | %IB6...%IB13 | %QB6...%QB13
KL4002 | 7 | %IB14...%IB21 | %QB14...%QB21
KL6001 | 8 | %IB22...%IB29 | %QB22...%QB29
KL1012 | 1 | %IX30.0...30.1 | -
KL1104 | 2 | %IX30.1...30.5 | -
KL2012 | 3 | - | %QX30.0...30.1
KL2034 | 4 | - | %QX30.2...30.5
KL9010 | 9 | - | -

Note

If you do not know the addresses at which the Bus Terminals that you have assigned to the local PLC of your BC/BX are located,

then configure your hardware in the System Manager.
After you have entered all the Bus Terminals and PLC variables, click with the right mouse button on the BC/BX in the hardware tree of the System Manager and select the menu item Export variables information...
A file is saved, and this file can be inserted in the PLC Control under Project -Import.

Now you will have the entry TwinCAT import under the global variables, and you will find here all the variables that you have assigned to the local PLC of your BC/BX.


PLC Variables

The PLC variables act as the interface between the local process image of the bus controller and the fieldbus process image for a higher-level controller. This will first be explained on the basis of the default setting.

Bus Terminals in the BC's local process image

All the connected Bus Terminals are assigned to the local process image. PLC variables are located starting at address 128. You can change both the starting address and the length of the data (default value 16 bytes).

Data that is to be read by a higher level controller is written into the output process image. This is input data for the higher level controller. Data that is to be transferred from the higher level controller to the BC is output data for the controller and input data for the BC. The following diagram may clarify this.

BC_plc_variables1.jpg (27255 Byte)

Assign bus terminals to the higher level controller

You can also assign the Bus Terminals directly to the higher level controller. The general scheme of the fieldbus process image is such that the analog Bus Terminals are mapped into this process image first. The digital Bus Terminals then follow, while the PLC variables come last.

BC_plc_variables2.jpg (30472 Byte)

Remember that none of the process images in use may be larger than 512 bytes.


Register Settings, Table 1

The registers can be set through a dialog using the KS2000 configuration software, or it is possible to write into the registers directly.

Register | Description |  | Default | Bus Terminal Controller
0 | Byte offset PLC variables %I. |  | 128 | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
1 | Length of the PLC variables %I... |  | 16 | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
2 | Byte offset PLC variables %Q... |  | 128 | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
3 | Length of the PLC variables %Q... |  | 16 | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
4-11 | Bus Terminal assignment |  |  | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
4.0-4.1 | Assignment of the first Bus Terminal |  | 00bin | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
 | 00bin | Local process image
 | 10bin | Fieldbus process image compact
 | 11bin | Fieldbus process image complex
4.2-4.3 | Assignment of the second Bus Terminal |  | 00bin | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
m.n-1..m.n | Assignment of the nth Bus Terminal |  | 00bin | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
14.2-14.3 | Execution of the K-Bus update |  | 00bin | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
 | 00bin | before and after the PLC
 | 01bin | before the PLC
 | 10bin | after the PLC
12 | PLC cycle time |  | 5 ms (20 ms for the BC9000) | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
13 | Background Time |  | 2 ms (10 ms for the BC9000) | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
15 | Size of the NOVRAM (remanent data) |  | 64 [Byte] | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
17.0-17.7 | Terminal bus autorefresh: Cycle in [ms] |  | 0x0000 Disable (0x005F for the BC9000) (0x035F for the BC9100) | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
17.8-17.15 | Terminal bus autorefresh: max. retries
18 | Size of the NOVRAM Persistent data R18<R15 |  | 0 | BC2000, BC3100, BC4000, BC7300, BC8x00, BC9000
27 | Byte offset KL6xx1 bus terminal emulation %Q... |  | 500 | BC8x00
28 | Byte offset KL6xx1 bus terminal emulation %I... |  | 500 | BC8x00
32 | Baud Rate |  | 2 | BC8x00
 | 0 | 38400Bd
 | 1 | 19200Bd
 | 2 | 9600Bd
 | 3 | 57600Bd
 | 4 | 1200Bd
 | 5 | 2400Bd
 | 6 | 4800Bd
33 | Mode |  | 2 | BC8x00
 | 0 | 7 data bits, even parity
 | 1 | 7 data bits, odd parity
 | 2 | 8 data bits, no parity
 | 3 | 8 data bits, even parity
 | 4 | 8 data bits, odd parity
34 | Number of stop bits |  | 0 | BC8x00
 | 0 | one stop bit
 | 1 | two stop bits