☰
Intouch与S7-1500 SIDIRECT通讯配置及排错指南
2026/11/2 3:18:09 网站建设 项目流程

简介:这份PDF手册面向具备自动化设备安装调试基础的技术人员与工程师,聚焦Intouch 2020R2 SP1与西门子1500 PLC之间的通讯配置,帮助读者在实际工程项目中理清从PLC侧到上位机侧的完整设置路径。压缩包内为1个PDF文件,大小约1.42MB,便于随查随用。手册按配置流程展开,涉及博图软件中的CPU型号与通讯IP设置、变量表及DB块访问权限调整、允许远程PUT/GET通信和取消优化块访问,也涵盖SMC中西门子驱动与Port配置、Intouch通讯程序创建、访问名和标记名配置以及动画链接建立等环节。文中还穿插安全信息与操作注意事项,提醒调试前熟悉设备并规范操作,以降低配置失败、设备损坏或人身伤害风险。已有288人学习,适合需要对照步骤完成联调、排查通讯设置并积累实施经验的工程师参考。

1. 通讯不通的那一晚:先看清 Intouch 2020R2 SP1 与西门子 1500 PLC 的对接条件

凌晨两点,画面上的数值全是星号,SMC 里 OI.SIDIR.1 显示已激活,PLC 那边 ping 得通,博图在线监控也正常——这套 Intouch 2020R2 SP1 与西门子 1500 PLC 的通讯配置,翻车点往往不在“装没装”,而在博图里三个没勾的选项和 SMC 里两个填错的数字。SIDIRECT 驱动不像某些驱动装完就能跑,它要求 PLC 侧主动放开访问权限,DB 块不能是优化访问,机架槽号必须和硬件组态逐个对上。任何一处对不上,Intouch 拿到的就是一片无效值,且不报错。

这篇笔记面向已经装好 Intouch 2020R2 SP1、手头有一台 S7-1500 要对接的调试人员。下面按“博图侧设置 → SMC 配置 → 建 Intouch 工程 → 访问名与标记名 → 动画链接 → 验证排错”的顺序走一遍,每一步给出可抄的参数和失败时该看哪里。

2. 博图侧先改三处:让 1500 PLC 允许 SIDIRECT 读取

通讯能不能成,一半取决于 PLC 程序里那几个默认关闭的口子。Intouch 的 Siemens SIDIRECT 走的是 S7 通讯里的 PUT/GET 通道,PLC 不主动授权,上位机连握手都过不去。

2.1 硬件组态里的 IP 与保护等级

新建项目、选好 CPU 型号后,第一件事是在设备组态里给 PLC 的 PROFINET 接口分配 IP。这个 IP 后面要原样抄进 SMC,所以别用 DHCP,也别留 0.0.0.0。常规做法是划一个独立的控制网段,比如 192.168.10.x/24,PLC 取 192.168.10.20,上位机取 192.168.10.100,两边掩码一致,中间不经过任何做 NAT 的设备。

紧接着是保护等级。在 CPU 属性 → 防护与安全 → 访问级别里,把权限从默认的“完全访问(无密码)”或“读访问”改成允许 HMI 访问的档位。更关键的是下面那个勾选框:

CPU 属性 → 防护与安全 → 连接机制 [√] 允许来自远程对象的 PUT/GET 通信访问

这个选项默认是空的,不勾,SIDIRECT 侧永远连不上。我见过有人把防火墙、网线、交换机全换了一遍,最后发现就是这一格没打勾,属于典型的血泪经验。注意,勾上它意味着 PLC 接受了来自网络的读写请求,所以网段隔离和访问控制要同步做好,别把控制网直接摊到办公网里。

2.2 DB 块必须关掉“优化的块访问”

S7-1500 新建 DB 块时,属性里“优化的块访问”默认是勾选状态。优化访问的块没有固定偏移地址,SIDIRECT 按绝对地址取值时对不上,结果就是 Intouch 里读出来全是 0 或者干脆报无效项。

处理方式有两个,选一个即可:

做法操作适用场景
关优化DB 属性 → 取消“优化的块访问”,编译下载数据量不大,地址稳定的老项目风格
保留优化在 DB 里用AT覆盖或建非优化结构块做通讯区想保留 S7-1500 的符号寻址优势

我一般会在 DB 里单独划一段“通讯区”,把要给上位机看的变量集中放进去,然后整块关掉优化访问。这样地址连续、偏移固定,后面在 Intouch 里填标记名时不容易错位。改完属性记得重新编译并下载,只改不下载等于没改。

另外,变量表里的 DB 需要把“允许访问”的权限从“无保护”这一项确认一遍——手册里写的是修改允许访问的权限为无保护,实际含义是让该 DB 对 HMI 通信不做额外限制。DB 内部变量的读写权限也要放开,否则读得到块、读不到值。

2.3 机架号与槽号的真实来源

这两个数字最容易被想当然。S7-1500 的 CPU 通常落在机架 0、槽位 1,但如果组态里挂了 ET200 站或者用了多机架结构,槽号就不一定是 1。正确来源是博图的“设备视图”里选中 CPU,看属性中的机架/插槽编号,或者直接看硬件组态的图形标识。

把这两个数字记下来,后面 SMC 里要填。填错的典型现象是 SMC 激活成功、Intouch 也不报错,但所有标记名都拿不到值——驱动能连上端口,却选不中目标 CPU。翻车的时候先回博图核对这两个数,比在 Intouch 里翻日志快得多。

3. SMC 配置:SIDIRECT 的端口、连接与设备组

SMC 全称 System Platform Management Console,是装完西门子驱动后配置通讯链路的入口。这一层的逻辑是:端口(Port)→ 连接(Connection)→ 设备组(Device Group),三层都要建,少一层激活后也不通。

3.1 进入 SIDIRECT 配置节点

从开始菜单找到 AVEVA 的 System Platform Management Console,展开的路径是固定的:

Operations Integration Server Manager └ Default Group └ Local └ Operations Integration Supervisory Servers └ Siemens – SIDIRECT └ Configuration └ Port

在 Port 节点上右键,选 Add Legacy Connection。这一步相当于给驱动挂一个逻辑通道,命名随意,默认生成的也行,我习惯写成 PLC1500 方便现场对照。名字只影响可读性,不影响通讯,但项目多了以后,名字混乱会让人在排查时多花半小时。

3.2 填 IP、机架号、槽号

连接建好后,右侧参数区要填三类信息:

  • PLC IP 地址:必须是博图里给 PROFINET 接口分配的那个地址,不能填电脑的地址,也不能填网关地址。
  • 机架号(Rack):取自 2.3 节,S7-1500 单机架通常是 0。
  • 槽号(Slot):同样取自博图设备视图,常见为 1。

填完在 Device Group 上右键空白处,选 Add,在 Name 里输入组名,比如 PLC,确定后该连接下就多了一个设备组。设备组的作用是把同一台 PLC 下的数据项归到一起,后面 Intouch 的访问名会指向这一层。

参数对照可以记成一张小表,现场改起来不容易乱:

参数取值来源常见错误
IP博图 PROFINET 接口地址填成上位机或网关地址
Rack设备视图 CPU 属性一律填 0 但组态非单机架
Slot设备视图 CPU 属性一律填 1 但挂了扩展站
连接名自定义重名导致激活冲突

3.3 保存并激活,看状态而不是看结果

填完之后先点右上角保存图标,保存整个项目,再右键OI.SIDIR.1选择 Activate 激活。激活成功的标志是节点图标状态变化,且没有红色错误标记。

这里有个反直觉的地方:激活成功不代表通讯正常。SIDIRECT 的激活只是把驱动进程拉起来,真正的连接状态要等 Intouch 侧访问名建立后才会体现。所以不要在这一步就断定“配好了”,后面还有工程侧的活。

保存时如果提示项目未保存或路径不可写,通常是 SMC 以非管理员权限启动导致的。关掉重新以管理员身份运行,再保存一次。通讯配置这类东西,权限不足时不一定报错,可能只是静默地没写进去,属于隐形坑。

4. 建 Intouch 工程与访问名:把 SIDIRECT 挂到标记名上

SMC 那层是“驱动能连 PLC”,Intouch 这层是“画面能拿到值”。两层之间靠访问名(Access Name)搭桥,桥搭错了,前面配得再对也白搭。

4.1 用 Application Manager 建工程

从开始菜单打开 AVEVA Intouch HMI → Intouch HMI Application Manager,在空白处右键选新建。模板选择“独立型带符号库”,这个模板自带符号库,做动画链接时不用再单独挂。

工程名按项目实际填写,示例里叫“通讯”,存储路径建议放在固定盘符下的独立目录,别放在桌面或中文路径里。Intouch 对路径中的空格和特殊字符容忍度不高,工程建在中文目录下,后面生成备份或者迁移时容易出问题。点完成,列表里出现新工程,双击进入 WindowMaker。

进入 WindowMaker 后,在窗口空白处右键新建窗口,给窗口起个有意义的名字,比如 Main。窗口是整个画面的容器,命名清晰在后期做多画面切换时省事。

4.2 访问名的三个必填项

访问名在 WindowMaker 的“特殊 → 访问名”里配置,新建一条,关键参数如下:

访问名:PLC1500 节点名:(留空,本机通讯) 应用程序名:SIDIRECT 主题名:PLC 状态:已启用
  • 应用程序名必须是SIDIRECT,这是驱动注册的固定名称,写错一个字母都连不上。它对应 SMC 里 Siemens – SIDIRECT 这个节点,不是连接名。
  • 主题名对应 3.2 节在 Device Group 里建的那个组名,示例里是 PLC。名字必须完全一致,大小写敏感。
  • 节点名在本机部署时留空;如果 Intouch 和 SMC 不在同一台机器,这里要填 SMC 所在机器的计算机名或 IP。

访问名建完后,可以先用 Intouch 自带的通讯测试工具验证一下。测试时填上主题名和一个已知的 DB 地址,能读回数值就说明链路通了。这一步别跳过,它能把“驱动层”和“画面层”的问题切开,省下大量互相甩锅的时间。

4.3 标记名的地址写法

标记名在“数据库 → 标记名字典”里建,类型按数据类型选,比如整型、实型、离散量。关键是地址栏的格式:

DB10.DBD0 实数,双字 DB10.DBW4 整数,字 DB10.DBX8.0 位,布尔

地址写法跟 PLC 里的绝对地址一一对应,所以 2.2 节关掉优化访问是前提。如果 DB 块保留了优化访问,就要改用符号引用,写法形如[DB名]变量名,但不同版本驱动对符号支持程度不一致,容易出玄学问题。我的做法是通讯区一律用绝对地址,符号地址只给程序内部用,边界清晰。

建标记名时顺手把“初始值”“死区”填上。死区对模拟量尤其重要,PLC 侧数值抖动一点点,画面就跟着闪,设个 0.1 的死区画面立刻稳下来。很多“通讯不稳定”的反馈,其实是死区没配,不是链路的问题。

5. 动画链接与常见坑:数值不动时按这个顺序查

链路通了、标记名建了,最后一步是把变量绑到画面元素上。绑完发现数字不动,按下面的顺序排查,比瞎试快。

5.1 动画链接的落点

在 WindowMaker 里选中对象,右键“动画链接”,常用的是“值显示”和“离散值”。值显示里选“模拟”,表达式直接填标记名,比如PLC1500_Temp。如果标记名是间接引用(数组或远程引用),用一个中间内存标记过渡会更稳。

动画链接里最容易错的是表达式写了标记名但没点确认,或者选错了标记名类型。离散量绑到模拟显示上,画面不会报错,只是一个值都不变,排查起来很费神。绑完建议先在 WindowMaker 的点数统计里看一眼,确认标记名被正确引用。

5.2 常见问题排查清单

下面五条是这台设备上真出现过的,每条按“现象 → 原因 → 解决”记。

现象一:SMC 显示已激活,Intouch 所有标记名都是问号或星号。原因:博图 CPU 属性里“允许来自远程对象的 PUT/GET 通信访问”没勾。 解决:勾选后重新编译下载 PLC,SMC 里重新激活一次OI.SIDIR.1。

现象二:只有部分 DB 变量读得到,换一个 DB 全是 0。原因:那个 DB 还带着“优化的块访问”,绝对地址对不上。 解决:DB 属性取消优化访问,编译下载,再在 Intouch 里核对地址偏移。

现象三:访问名测试报“无法连接到主题”。原因:主题名和 SMC 里的 Device Group 名不一致,或者应用程序名写成了 SMC 里的连接名。 解决:应用程序名固定为SIDIRECT,主题名与 SMC 中的设备组名逐字符核对。

现象四:激活后过一段时间连接断开,重启又正常。原因:上位机与控制网之间存在 IP 冲突,或交换机端口做了节能休眠。 解决:固定 IP 并做地址规划,交换机侧关闭端口休眠,控制网与办公网隔离。

现象五:数值能读到但刷新很慢,画面滞后明显。原因:标记名的扫描周期过长,或者一个画面绑了过多高频变量。 解决:在标记名属性里调整扫描周期,把高频刷新的变量集中放一个画面,分区刷新。

提示:改完任何一处 PLC 侧设置,都要重新编译下载并重新激活 SMC,只改一侧永远对不上。

6. 装完怎么验证:三层确认法,别等上线才发现是星号

配置完成后的验证,我一般不靠“打开画面看看有没有数”这一条,因为它只能证明“此刻有值”,证明不了链路稳。我习惯分三层确认,逐层签字。

第一层是 PLC 侧。用博图在线监控目标 DB,确认变量在变化,同时确认 CPU 的诊断缓冲区里没有大量通信相关的错误条目。这一步是基准,PLC 自己都不动,上位机再怎么配也没用。

第二层是 SMC 侧。激活OI.SIDIR.1后,观察节点状态和连接状态是否持续正常,如果平台提供连接诊断入口,就看一眼收发计数是否在增长。计数不涨,说明驱动根本没在轮询,问题多半在 IP、机架槽号或 PUT/GET 权限。

第三层是 Intouch 侧。不要只看一个点,至少挑三个不同类型的变量:一个布尔、一个整数、一个实数,分别在画面上确认刷新。再用通讯测试工具读一次同样的地址,两边对得上才算闭环。如果画面不动但测试工具能读,问题在动画链接;如果两边都不动,问题在访问名或 SMC。

一个具体技巧是给每个通讯区变量在画面角落做一个“调试面板”,把这几个测试点固定放上去,正式画面运行时也能瞄一眼。上线以后现场反馈“某个数不对”,先看调试面板里同 DB 的其他值是否正常,一下子就能区分是单点问题还是整条链路问题。

还有个习惯:验证通过后,把 SMC 的配置截图、博图里那三处设置的截图、访问名参数表一起归档到工程目录。半年后别人接手,或者自己重装系统,照着截图恢复比凭记忆靠谱得多。从那以后我每次配 SIDIRECT,都强制走一遍这三层确认,不跳步,也不再相信“激活成功就是配好了”这种说法。希望帮到你。

本文还有配套的精品资源,点击获取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询