4. RSLinx Classic与FactoryTalk Linx通信配置
在FactoryTalk与ControlLogix系统集成中,上位机软件(如FactoryTalk View SE、RSLogix 5000、PanelView Plus等)并不直接与ControlLogix CPU通信,而是通过一层通信服务软件完成协议转换与数据路由。这一层软件就是RSLinx Classic或FactoryTalk Linx(原RSLinx Enterprise)。理解两者的定位差异、驱动选择逻辑、DDE/OPC主题的建立方式,以及如何通过网络浏览与诊断工具定位通信故障,是系统集成中最基础也最关键的技能。
一、RSLinx Classic与FactoryTalk Linx的定位差异
RSLinx Classic是Rockwell较早的通信服务软件,支持DDE、OPC DA、CIP、CSP等协议,常用于RSLogix 5/500/5000编程、老版本HMI以及第三方OPC客户端。FactoryTalk Linx则是随FactoryTalk View SE/ME和现代Logix平台推广的通信服务,它不再使用DDE,而是以FactoryTalk Directory为配置中心,通过“通信设置(Communication Setup)”定义设备路径,并以OPC UA或FactoryTalk专有方式向客户端提供数据。两者可以共存于同一台计算机,但同一时刻对同一物理通道的占用需要规划,避免驱动冲突。
选择原则可以概括为:如果上位机是FactoryTalk View SE/ME、FactoryTalk Historian或基于FactoryTalk Directory的现代应用,优先使用FactoryTalk Linx;如果上位机是第三方OPC DA客户端、老版本RSView32或需要DDE主题的Excel报表,则使用RSLinx Classic。对于仅做编程下载的场合,RSLinx Classic的“RSWho”浏览已经足够。
二、驱动选择:从物理链路到逻辑驱动
驱动(Driver)是RSLinx中对应某种物理网络或通信路径的软件接口。配置驱动时,首先要明确ControlLogix的通信模块类型和网络拓扑。常见组合如下:
- EtherNet/IP驱动:用于1756-EN2T/EN3TR等以太网模块,是当前最主流的驱动。配置时需要指定网卡、IP地址或通过DHCP/BOOTP获取。
- Ethernet Devices驱动:用于老式1756-ENET或需要指定IP列表的场合,需手动添加设备IP。
- DF1驱动:用于串口或DH-485转DF1的场合,常见于老式PLC-5或MicroLogix。
- ControlNet驱动:用于1784-PCICS、1756-CNB等ControlNet接口卡。
- Virtual Backplane驱动:用于本机插槽式通信卡(如1784-PKTX)或模拟背板。
以EtherNet/IP驱动为例,在RSLinx Classic中依次点击“Communication → Configure Drivers → Available Driver Types → EtherNet/IP Driver”,命名后选择本机网卡,点击“Add New”并确认。驱动状态应显示“Running”。此时在RSWho中展开该驱动,应能看到ControlLogix背板及插槽中的CPU、EN2T等模块。若只看到“+”号但无法展开,通常说明IP可达但CIP路径未建立,需要检查模块的IP配置和以太网交换机VLAN设置。
三、DDE/OPC主题的建立与数据映射
主题(Topic)是上位机访问PLC数据的逻辑入口。在RSLinx Classic中,右键点击已运行的驱动下的目标CPU,选择“Configure Topic”,输入主题名(如“Line1_CLX”),并设置数据采集类型。DDE主题与OPC主题在RSLinx中共享同一套主题定义,区别在于客户端访问方式:DDE客户端使用“RSLinx|主题名”格式,OPC客户端使用“RSLinx OPC Server”并选择主题。
主题配置中的关键参数包括:Data Collection Type(Polled、Unsolicited、CIP等),Poll Rate(轮询周期,默认1000ms),以及Processor Type(如ControlLogix)。对于ControlLogix,推荐使用CIP或Unsolicited方式,减少轮询开销。主题建立后,可用RSLinx自带的“Topic Monitor”或“OPC Test Client”验证标签读写。例如,在OPC Test Client中连接“RSLinx OPC Server”,选择主题“Line1_CLX”,添加标签“Program:MainProgram.TankLevel”,观察值是否随PLC程序变化。
四、网络浏览与诊断:RSWho与FactoryTalk Linx Browser
RSWho是RSLinx Classic的核心浏览工具,以树形结构展示驱动、网络、设备、背板和插槽。FactoryTalk Linx则使用“FactoryTalk Linx Browser”或“Communication Setup”中的浏览界面。两者逻辑相似:从驱动根节点逐级展开,直到看到目标CPU。诊断时重点关注以下现象:
- 驱动图标带黄色感叹号:驱动未运行或配置错误,检查网卡选择、IP冲突。
- 设备图标带红色叉号:设备不可达,检查网线、交换机端口、IP地址和子网掩码。
- 背板下插槽显示“?”:模块未识别,检查模块是否插紧、固件版本是否匹配。
- 能浏览但无法建立主题:检查CPU的通信路径是否被其他驱动占用,或CIP连接数是否达到上限。
FactoryTalk Linx还提供“Diagnostics”面板,可查看连接状态、数据包统计和错误计数。例如,在FactoryTalk Linx Browser中右键设备选择“Properties → Diagnostics”,可以看到“Connections”和“Errors”计数。若错误计数持续增长,说明网络存在丢包或电磁干扰,需要检查屏蔽接地和交换机QoS设置。
五、典型配置示例与判断依据
假设一条生产线使用1756-L83E CPU和1756-EN3TR通信模块,上位机为FactoryTalk View SE,需要建立OPC主题。配置过程如下:在FactoryTalk Linx的“Communication Setup”中新建一个EtherNet/IP驱动,命名为“Line1_EN3TR”,选择本机网卡,添加设备IP为192.168.1.10。展开后应看到1756-L83E。右键CPU选择“Add Topic”,主题名设为“Line1_CLX”,数据采集类型选“CIP”。在FactoryTalk View SE的“Communication Setup”中,将数据服务器指向该主题,并添加标签“Program:MainProgram.TankLevel”。若标签值显示为“
对于RSLinx Classic的DDE主题,在Excel中可通过“RSLinx|Line1_CLX”格式引用,例如在单元格输入“=RSLinx|Line1_CLX!'Program:MainProgram.TankLevel'”。若返回“#N/A”,检查DDE服务是否启动、主题名是否匹配、RSLinx是否以管理员权限运行。
网络浏览与诊断的核心思路是“逐层验证”:先确认驱动Running,再确认设备可达,然后确认主题可读写,最后确认客户端标签质量。每一层都有对应的图标状态和诊断工具,掌握这些视觉信号和参数含义,就能在几分钟内定位大部分通信故障,而不是盲目重启或重装软件。