Unity Pro Quantum 机架组态、变量与下载入门指南

发布时间:2026/10/28 10:47:47
Unity Pro Quantum 机架组态、变量与下载入门指南 简介这份《施耐德Unity Pro入门使用手册》面向零基础学习施耐德PLC编程的工程人员与自动化初学者围绕Unity Pro软件的上手路径提供操作指引帮助读者建立从硬件组态到程序调试的完整认知。内容覆盖新建项目、机架与CPU模块配置、以太网通讯及NOE模块设置也涉及变量创建、导出功能块类型、程序段编写、动态数据表查看与强制、标准/仿真模式切换、程序上下载和保存等环节并配有界面与对话框说明。压缩包为1个docx文档大小约1.18MB适合作为随查随用的入门笔记。已有1994人学习说明其在施耐德编程入门场景中具有一定参考价值。读者可据此熟悉软件界面、组态流程和常见操作顺序减少初次配置时的摸索成本并为后续梯形图、FBD与ST编程实践打下基础。1. Unity Pro 入门使用手册拆解一台 Quantum 机架从零到能下载的完整路径接手一台 Quantum 机架柜门内侧贴着一张 I/O 图纸电脑上只装了 Unity Pro双击图标进去第一步就问你选哪个 CPU——选错一个型号后面的机架槽位、模块目录、可寻址范围全对不上图纸再清楚也白搭。这份 Unity Pro 入门使用手册的价值就在这儿它不讲 IEC 61131 的语言哲学直接从「文件—新建」开始把 140CPU67160 的选型、16 槽换 10 槽的机架替换、状态 RAM 地址区间、以太网与 NOE 模块、基本变量与 DDT、DFB 封装、MAST 段编写、动态数据表监视、下载上载一直到 *.STU 与 *.XEF 的版本迁移一条线捋到底。适合第一次摸 Quantum 平台的电气与自控工程师也适合从其他 PLC 体系转过来、能看懂梯形图但被这套软件的组态逻辑绕住的人。它不承诺让你成为高手但能让你少在「明明编译通过、下载下去却没反应」这种地方耗掉半天。2. 硬件组态落地CPU 选型、10 槽机架替换与状态 RAM 边界硬件组态这一步是整个项目的骨架。骨架歪了后面变量建得再整齐、程序写得再漂亮下载到 PLC 上也是错位运行。手册把这段拆成四步选 CPU、换机架、插模块、配 CPU 参数顺序不能颠倒因为后一步的可用选项是前一步决定的。2.1 新建项目时为什么必须先锁死 CPU 型号点左上角「文件—新建」或者直接点工具栏的新建图标弹出来的对话框里第一件事是选平台和 CPU。手册给的是 Quantum 平台下的 140CPU67160。这个选择不是走流程它至少决定三件事一是硬件目录里能拖出来的模块清单选错 CPU 系列NOE、NOM、CPS 这些模块可能压根不在候选里二是可用指令集和功能块库不同 CPU 对某些数学块和通讯块的支持程度不一样三是状态 RAM 的容量上限而状态 RAM 直接决定了你的 %MW 地址能用到多大。我一般会在这个对话框里多停十秒把型号和图纸封面上的型号逐个字符对一遍尤其是尾号的位数。改 CPU 型号不是不能改但改完之后机架上已配的模块大概率要重新挂之前写好的地址映射也可能整体平移返工成本远高于当初多看一眼。新建完成后项目浏览器里会出现「硬件配置」这一栏里面是一张默认的机架图。默认给的是 16 插槽机架型号 140XBP01600。这一步先别急着往里插模块先把机架换掉。2.2 把 16 槽机架换成 10 槽替换机架的路径与模块重排右键点击机架图最左侧的槽位编号 1也就是机架本体所在的那一格菜单里选「替换机架」在弹出的型号列表里挑 140XBP01000。替换完成后机架图会从 16 格缩成 10 格。这里有个很容易被忽略的副作用替换机架时原本挂在右侧槽位上的模块会被清掉或者移位。所以正确的操作顺序是先在纸上或者表格里把图纸要求的槽位规划写清楚替换机架之后再按表插模块。典型的 10 槽规划大致是这样槽位模块类型说明1机架本体140XBP01000不含模块2电源模块按机架功耗核算选型3CPU140CPU671604NOE 通讯模块以太网口在此5NOM 模块走 MB 主干网时才有6 至 10I/O 或空槽空槽保持空白不要塞占位模块插模块有两种方式手册都写了一是双击空白插槽位置弹出设备选择框后按型号挑二是从右侧硬件目录里直接拖拽到目标槽位。第二种快但拖拽时容易落到相邻槽位松手前看清高亮的是哪一格。空槽就让它空着随便塞一个占位模块进去后面生成的时候会多出一堆无意义的诊断地址。2.3 状态 RAM 地址范围与热备参数变量地址的红线双击 CPU 模块140CPU67160打开配置对话框第一个要盯的是「配置」页里的状态 RAM 地址范围。这个区间的含义很直白程序里所有变量地址必须落在里面才生效超出范围的地址编译阶段可能不报错但运行时不刷新、不写入表现出来就是「值一直是 0」或者「改了没反应」。常见的做法是把状态 RAM 的起始地址和长度按项目实际点位数预留并且给后续扩展留出 20% 到 30% 的余量。比如当前用到 %MW0 至 %MW800那就把范围开到 %MW0 至 %MW1000 以上别刚好卡在边界上。地址规划表最好在 Excel 里维护一份和变量表同步更新。同一个对话框里还有「热备」页手册提到两个参数参数手册给出的设置实际含义状态 RAM 非传输区域需要单独配置该区域不与上位数据库交换数据仅供 CPU 内部使用RIO 子站选择「无 RIO 子站」本系统没有远程 I/O 子站选了反而会增加扫描负担非传输区域的划分要克制。凡是上位机需要读写的量一律放在传输区只有纯粹的中间计算缓存、临时标志位才往非传输区放。我见过把报警字塞进非传输区的做法结果上位画面永远看不到报警查了两天才发现是组态问题不是程序问题。2.4 实时时钟与组态自检的顺序CPU 配置里还有一处「动态显示—实时时钟」。两种用法选 PC 到 PLC把编程电脑的系统时间写进 CPU选用户到 PLC先在界面上手动设好时间再下发。产线调试阶段用前者省事正式投运前建议改成后者手动核对一次避免电脑时间本身就飘着。组态做完之后不要直接跳到写程序花两分钟做一遍自检机架槽位数对不对、每个槽位的模块型号和图纸是否一一对应、CPU 状态 RAM 范围是否覆盖了变量表的最大地址、热备页的 RIO 选项是否为「无」、时钟来源是否符合当前阶段。这五项里任何一项错了后面都会以「程序没问题但设备不动」的形式找上门。3. 通讯链路配通以太网网络、NOE 模块与三种连接介质硬件组态解决的是「柜子里有什么」通讯配置解决的是「电脑怎么和它说话」。这两件事在 Unity Pro 里是分开的两套配置很多人卡住不是因为不会配而是没意识到网络和模块是两个地方都要配一遍。3.1 新建网络的命名规则与 IP 参数在「通讯」菜单下选「新建网络」可用网络列表里挑以太网。接下来是网络名称手册专门强调了规则不支持中文不支持以数字和个别符号开头建议以英文字母开头比如 ETHERNET1。这条规则看着琐碎实际踩过的人不少。用中文名建网界面上可能显示正常但后续在程序里引用网络、或者导出 XEF 给别的电脑打开时就会出现各种解析异常。用数字开头同理。我习惯统一命名成 ETHERNET1、ETHERNET2 这种序号和物理网口一一对应谁都不容易搞混。名称定完之后填三个参数参数示例值填写要点IP 地址192.168.1.20与上位机同网段避开已占用地址子网掩码255.255.255.0与上位机保持一致网关地址192.168.1.1跨网段通讯才需要同网段可留空或按现场规范填IP 规划这一步建议单独做一张表把 CPU、NOE 各网口、上位机、交换机管理地址全部列进去。现场最常见的通讯故障不是配错是两台设备撞了同一个 IP表现是时通时不通ping 得通但连不上特别消耗时间。3.2 NOE 模块的以太网口绑定网络建好只是定义了一条逻辑链路物理网口还得绑上去。操作路径是选中主机架里的 NOE 模块双击然后在模块图下方找到以太网口的图标再双击弹出的对话框里选择刚才建的 ETHERNET 网络。这一步做完NOE 模块的物理口才真正关联到那条网络上。如果只建了网络没绑模块测试连接时会一直失败而错误提示往往只说「连接不成功」不会告诉你缺了绑定。顺带说一句选型上的取舍这套系统里有以太网和 MB 两种主流链路能用以太网就别用 MB。以太网的调试工具链完整抓包、ping、端口扫描都能用MB 出问题时只能靠转换器和经验判断排查成本高得多。只有在既有主干网已经铺好 MB、改动代价太大的情况下才继续用 MBPLUS01。3.3 标准模式与仿真模式的地址对照配置完网络之后要把 PLC 的连接参数设好。手册列了四种连接方式介质和地址各不相同连接方式介质地址物理连接USBUSBSYS笔记本 USB 口接 CPU 上的 USB 端口以太网TCPIPNOE 模块里配的 IP如 192.168.1.20网线接 NOE 模块以太网口MBMBPLUS01主机架 NOM 模块在主干网上的地址如 2MBP 转 USB 转换器接 NOM 模块仿真器TCPIP127.0.0.1无需物理连接前三种属于标准模式第四种属于仿真模式在 PLC 菜单下可以切换。仿真模式的意义在于程序逻辑、变量地址、功能块调用都可以在没有硬件的情况下跑通地址固定填 127.0.0.1。新手最容易犯的错是把仿真地址和真实 IP 混着用——仿真模式下填 192.168.1.20怎么测都连不上标准模式下填 127.0.0.1同样连不上。设完之后点右侧的「测试连接」。成功会给出明确提示失败同样有提示这时候要按顺序查模式选对没有、介质选对没有、地址填对没有、物理线接好没有、对端设备上电没有。这个顺序别跳我见过先拆网线再回头发现模式还停在仿真上的情况。3.4 测试连接失败时的定位顺序把定位顺序展开说因为它决定了你是在五分钟内解决还是耗掉一上午。第一步确认模式。PLC 菜单下看一眼当前是标准还是仿真这一步十秒钟但能排掉相当比例的「连不上」。第二步确认介质与地址的配对关系。USB 配 SYSTCPIP 配真实 IP 或 127.0.0.1MBPLUS01 配 NOM 地址。三组配对错一个都不通。第三步看物理层。USB 线是否插在 CPU 的编程口而不是别的口网线是否插在 NOE 模块的以太网口而不是 CPU 自带的诊断口转换器的驱动是否装好设备管理器里有没有黄色感叹号。第四步在电脑侧验证网络可达性同网段的话直接 ping 目标 IP能 ping 通说明链路和 IP 配置没问题问题出在软件侧的绑定ping 不通就往回查网段、掩码、交换机端口。第五步检查 NOE 模块是否真的绑定了网络。这是最容易被跳过的一步因为它在组态界面里不在连接界面里。4. 变量表与 DFB地址规则、批量建表与模拟量封装变量是这套软件里真正的主战场。程序逻辑再多最终都要落到一个个带地址的变量上地址对不上逻辑就是空中楼阁。手册在这一块给的信息密度最高也最值得逐条对照。4.1 基本变量的必填项与命名限制入口在项目浏览器下的「变量和 FB 实例—基本变量」。默认列有名称、类型、地址、值、注释五列。列不是固定的右键点列标题那一行可以选「自定义列」把常用的列勾出来顺序用右侧的上下按钮调整名称前面的检查框控制显示与隐藏。必填的只有两项名称和类型。地址可以为空值为空或常数注释可有可无——但注释强烈建议写三个月后回来看 %MW312 是什么没有注释只能靠猜。名称默认不能以数字开头。如果现场标签本身就是 1 号泵、2 号阀这种命名可以去「工具—项目设置—变量」里勾上「允许前导数字」。这个开关建议在项目初期就定下来中途改会导致已有变量需要批量重命名。类型分两大类。EDT 是软件自带的基本数据类型BOOL、EBOOL、WORD、INT、REAL以及数组形式如ARRAY[0..15] OF BOOL、ARRAY[0..31] OF WORD。DDT 是导出数据类型也就是自定义结构以基本类型为基础组合出来。举个手册里的例子在 DDT 类型里定义一个名为 BigActSEQ 的结构内容为ARRAY[0..34] OF WORD那么在基本变量里就可以建一个名为 Big_ActSEQ、类型为 BigActSEQ 的变量。这种用法在配方、批次号、多字状态字场景里特别省事一次定义到处复用。4.2 地址格式对照%MW、%I、%Q、%IW、%QW 怎么对地址这一列是新手最容易写错的地方。手册给出的合法形式包括%MW100、%I0.1.1、%Q0.1.1、%IW0.1.1、%QW0.0.1、%MW100.1也可以留空。它们的含义整理成表更清楚地址形式指向典型用途%MW100内部字寄存器中间计算、上位读写的数据区%MW100.1内部字中的某一位位标志、状态位%I0.1.1离散输入按钮、限位、接触器辅助点%Q0.1.1离散输出指示灯、继电器线圈%IW0.1.1模拟量输入字变送器 4-20mA 采集值%QW0.0.1模拟量输出字阀位、变频给定三个前缀的区别要记牢I 是输入、Q 是输出、M 是内部存储带 W 的是字16 位不带 W 的是位。地址里的三段数字分别对应机架、模块、通道所以它天然和硬件组态绑定——机架换槽位了地址就得跟着改这也是为什么第 2 章强调先定机架再建变量。写地址时还要回头看一眼状态 RAM 的范围。%MW 段超出那个区间编译不报错运行时值是死的。这一条在避坑章还会再提一次因为它实在太常见。4.3 过滤器与自定义列的实战用法变量上百条之后找一条变量靠滚动是不现实的。手册给的过滤器有两个维度一是在名称列后面的空白处直接输入支持*abc*这种通配写法星号代表任意多个字符回车即筛选二是先选定要筛选的列名称、注释、类型都行再输入筛选内容。实战里最有用的是按注释筛选。比如现场所有温度点注释里都带「TI」输入*TI*一筛相关的十几条全出来了比按名称前缀猜靠谱得多。另一个技巧是把「注释」列固定显示在靠前位置扫描变量表时一眼能看出这一片是模拟量还是开关量。自定义列则解决「信息太多看不清」的问题。一个成熟项目的变量表可能有七八列屏幕放不下就把「值」和「地址」留下其余临时隐藏。生成之前再全展开检查一遍避免漏填。4.4 从 TXT 到 Excel 再导回批量建变量的三步流程手工一条条建变量五十条还能忍五百条就是灾难。手册给了一条批量路线先在硬件侧建一个变量导出来生成 TXT用 Excel 打开补齐再导回去。具体步骤在变量表里建好第一条变量作为导出模板。导出为 TXT 文件。打开 Excel在文件菜单里选「打开」文件类型选 TXT选中刚导出的文件。弹出文本导入向导第一步选「分隔符号」点下一步。第二步勾选「Tab 键」点下一步。第三步按原变量表的列顺序逐列指定数据格式常规、文本等完成后导入。在 Excel 里按图纸批量填充名称、类型、地址、注释。另存回 TXT在软件里执行导入。第三步的列格式指定容易被跳过直接点完成。结果是形如001的地址被 Excel 当成数字吃掉前导零导回去地址就错了。地址列和名称列一律设成文本格式能省掉一轮返工。导出的 TXT 大致长这样制表符分隔名称 类型 地址 值 注释 Pump1_Run BOOL %I0.1.1 #1泵运行反馈 Pump1_Start BOOL %Q0.1.1 #1泵启动输出 Tank1_Level INT %IW0.1.1 #1罐液位 Tank1_SP INT %MW100 #1罐液位设定需要说明的是导入之前务必确认表头和软件的列名完全一致多一个空格都会解析失败。批量操作做完随机抽三五条变量去动态数据表里核对值确认地址真的对上了别等下载之后才发现整片错位。4.5 DFB 封装把模拟量换算收进一个功能块变量建好之后重复性逻辑就该收进 DFB 了。手册的例子是建一个名为 AI_Converter 的导出功能块类型在「变量和 FB 实例」下点「DFB 类型」名称填 AI_Converter类型默认 DFB然后在输入、输出里填管脚变量名在段里填功能块变量名 SCALE_Calculate编程语言通常选 FBD、LD 或 ST 之一。模拟量换算这种纯计算逻辑选 ST 最省事。常见做法是把量程上下限做成输入管脚块内做线性映射(* 模拟量线性换算原始值 - 工程量 *) FUNCTION_BLOCK AI_Converter VAR_INPUT RawValue : INT; (* 来自 %IW 的原始码值 *) RawMin : INT : 0; (* 原始下限4mA 对应值 *) RawMax : INT : 4095; (* 原始上限20mA 对应值 *) EngMin : REAL : 0.0; (* 工程量下限 *) EngMax : REAL : 100.0;(* 工程量上限 *) END_VAR VAR_OUTPUT EngValue : REAL; (* 换算后的工程量 *) Valid : BOOL; (* 原始值是否在有效区间内 *) END_VAR VAR Span : REAL; END_VAR Span : INT_TO_REAL(RawMax - RawMin); IF Span 0.0 THEN EngValue : EngMin; (* 防止除零量程配错时兜底 *) Valid : FALSE; ELSIF RawValue RawMin OR RawValue RawMax THEN EngValue : EngMin; (* 超量程钳位避免输出跳变 *) Valid : FALSE; ELSE EngValue : EngMin (INT_TO_REAL(RawValue - RawMin) / Span) * (EngMax - EngMin); Valid : TRUE; END_IF;这段代码的关键点在三处。Span先做整数减法再转 REAL避免中间结果溢出Span 0.0的兜底分支必须有量程参数填反或填成一样的情况在现场并不罕见超量程钳位是为了让上位画面不出现离谱数值同时用Valid标志告诉上层「这个值现在不可信」。管脚定义好之后每路模拟量只需要建一个类型为 AI_Converter 的实例把对应的 %IW 地址接进去量程参数各自填逻辑一行都不用重写。这就是 DFB 相对普通段的价值——改算法只改一处全项目生效。程序段本身在「程序—任务—MAST—段」下建右键选「新建段」填名称和编程语言。MAST 是主任务扫描周期固定普通逻辑都放这里有特殊周期要求的才考虑其他任务类型。5. 避坑与排查五条把程序卡在下载之前的现场记录下面这五条每一条都在现场真实消耗过半天以上。写法统一按「现象—原因—解决」来照着对号入座就行。5.1 五条高频翻车记录第一条编译零错误下载后变量值一直是 0。现象是生成没有任何报错程序也下载成功了但在线监视时某些 %MW 地址的值纹丝不动写进去也不生效。原因是这些地址超出了 CPU 配置里设定的状态 RAM 地址范围。软件在编译阶段对这个边界管得不严超出部分直接不参与扫描。解决办法是回到 CPU 配置页核对状态 RAM 的起止地址把范围扩到覆盖变量表里的最大地址重新生成并下载。预防手段是变量表里加一列「是否越界」定期扫一遍最大值。第二条运行中改了程序在线值没有变化。现象是 PLC 处于运行状态程序段改完之后下载界面显示成功但设备行为还是老样子。原因是运行模式下修改程序必须执行「生成更改」改动才会真正生效。手册在这里写得很明确修改完程序或增删变量后需要点生成更改或重新生成所有项目。只下载不生成改的只是离线项目。解决办法是养成固定动作改完代码先「生成更改」看下方信息栏有无错误警告再下载。有错误的情况下根本无法下载到 PLC这一步也能顺带拦住低级语法错误。第三条第二次想上传程序软件提示无法上载。现象是第一次下载一切正常隔几天回来想从 PLC 上传程序做备份怎么都传不上来。原因是上次断开连接时弹窗问「是否更新上载信息」顺手点了「否」。上载信息没更新PLC 侧的源程序信息与当前项目对不上软件就拒绝上载。解决办法是每次断开连接时老老实实点「是」。另外要留意「禁止上载程序」这个设置——如果上载信息前面的勾选框被去掉上载能力会被直接关闭这是给需要保护程序版权的场合准备的日常调试千万别动。第四条新建以太网网络时名称填不进去。现象是在新建网络对话框里输入中文名或者用数字开头确定按钮灰着或者建完之后引用异常。原因是软件对网络名称有字符限制不支持中文不支持数字和个别符号开头。手册建议以英文字母开头。解决办法是统一用 ETHERNET1、ETHERNET2 这种英文加序号的命名。项目里网络多于一条时序号和物理网口做一份对照表避免后期维护时张冠李戴。第五条换台电脑打开项目组态丢了或者直接报错。现象是把 *.STU 文件拷到另一台装了更高版本软件的电脑上双击打开提示版本不兼容或者打开后机架配置是空的。原因是 *.STU 是带版本信息的项目文件向上兼容性有限。手册给的路径是用高版本软件打开低版本程序必须先把项目导出为 *.XEF 文件操作为「开始—导出项目」保存类型选 *.XEF。解决办法是跨版本迁移一律走 XEF不要直接拷 STU。另外注意保存时软件会自动生成.ztx、.auto、.sta、.BAK 这几个附属文件它们可以删除不影响 *.STU 的打开但迁移时别只拷了附属文件漏了主文件。5.2 下载前十分钟的自查顺序把上面这些问题收敛成一个固定动作每次下载前走一遍五分钟能省下几小时。先看生成结果。信息栏在编辑程序的下方有错误就是红的此时下载按钮形同虚设先把错误清干净。警告可以带着走但要逐条判断是不是自己想要的。再看地址边界。变量表按地址列排个序取最大值和状态 RAM 上限比一比留出余量没有。然后看模式与地址。PLC 菜单下确认标准还是仿真连接参数里的介质和地址是否配对。切换过模式的项目尤其要查这一步。最后看硬件与图纸。槽位、模块型号、IP 是否与最新版图纸一致。图纸改过但组态没跟着改是投产阶段最常见的隐性故障源。6. 动态数据表与版本迁移调试期最值钱的两个习惯动态数据表是这套软件里我最常用的调试窗口用法比想象中灵活。常规路径是在变量表里选中一个或几个变量右键「初始化动态数据表」它们就进了监视窗口也可以直接在动态数据表里手动输入变量名适合临时想看某个中间量又不想去变量表翻的情况。它真正的价值在于写入能力部分模拟量点可以直接改数据用来验证上位画面的量程映射对不对部分数字量点可以强制为 1 或 0用来单点测试输出回路。强制之前一定要清楚这个点挂了什么执行机构强制一个液压阀的输出而现场有人正在附近作业这种后果不是软件能兜住的。我的习惯是强制前先在动态数据表里把相关点全部拉进来看清楚互锁关系测完立刻解除强制并复核一遍。保存与迁移这块两个习惯值得固定下来。一是项目文件只认.STU同目录下自动生成的.ztx、.auto、.sta、*.BAK 都属于可删的附属产物备份时别把它们当宝贝一起打包也别只拷了附属文件漏掉主文件。二是跨版本一律走 *.XEF从高版本回低版本、从这台机器到那台机器先「开始—导出项目」存成 XEF到目标机器再导入比直接双击 STU 稳妥得多。还有一处细节以太网连接时界面显示的是 TCPIP 加真实 IP仿真时显示 TCPIP:127.0.0.1这两个状态在下载确认框里会直接标出来看错一眼就可能把仿真程序当成真机程序下发。吃过一次亏之后我每次动硬件组态之前都会先把当前 *.STU 另存一份带日期的副本导出一份 XEF 放在项目共享目录然后才开始改机架和地址。这个动作花不到一分钟但在我把 10 槽机架改回 16 槽、又忘了备份变量的那次它救回了整整两天的组态工作。希望帮到你。本文还有配套的精品资源点击获取