简介:这份文档是 P80i 系列 PLC 配套的 Pertu Tool 中文用户手册,面向从事 HPCi 开发环境调试的工程师与维护人员,帮助其掌握这款基于 Win32 图形界面的可视化诊断与分析工具。资源包共 1 个 doc 文件,约 3.85MB,内容围绕工具的实际操作展开:从启动 Pertu、认识工具栏,到目标管理、记录显示、水平与竖直标尺的读数方法,再到属性框、重新定尺框、设置对话框等手动配置项,以及记录仪列表框、从 BD 装载与参数选择对话框的使用。手册还专门讲解了文本方式与 FFT 频谱分析两类扩展特性,并给出数据导出与导入、工具菜单、HPCi 安排及上下文帮助的说明,目录层级清晰,便于按功能检索。目前已有 1000 人学习,适合需要排查 PLC 故障、分析运行数据或优化系统性能的读者对照查阅。
1. 拿到这份 Pertu 中文手册,先别急着翻目录
如果你手上有一台跑着 P80i 平台的设备,现场出了偶发故障,日志翻烂了也抓不到那几百毫秒的异常波形,那这份《P80i_用户手册之Pertu使用说明中文版》就是给你准备的。Pertu Tool 是 HPCi 开发环境里的 Win32 图形化记录仪前端,通过 TCP/IP Winsock 跟 VxWorks 目标或 NT 仿真器对话,把目标里嵌入的记录仪数据拉回 PC 上画曲线。它解决的不是“写程序”的问题,而是“程序跑起来之后到底发生了什么”的问题——触发历史记录抓事件前后、快速记录保证每个任务周期不丢值、慢记录盯长周期过程,再加上 FFT 频谱和文本视图,基本覆盖了 PLC 侧诊断的常见诉求。适合谁?做 P80i 平台调试、维护、故障复盘的工程师,尤其是需要把“玄学偶发问题”变成可复现波形的人。手册本身是中文版 doc,目录从概述一路排到 HPCi 安排和上下文帮助,结构完整,拿来当案头参考是够用的。
2. 三种记录方式怎么选:THL、快速、慢速的边界
2.1 先搞清楚记录仪在目标里干了什么
Pertu 本身不采集数据,真正干活的是嵌在 HPCi 执行引擎里的目标记录仪。你在界面上拖变量、设周期、点起动,本质是往目标里下发一套配置,让记录仪按这套规则往缓冲区写值,Pertu 再通过上传把数据取回来。理解这一点很关键,因为后面所有“为什么没数据”“为什么曲线不对”的问题,八成都能归到配置和目标的匹配上。
手册里写得很清楚,记录仪有三种操作方式,选错了方式,后面参数怎么调都是白费。触发历史记录(THL)靠一个布尔量做事件触发器,目标里分配两个缓冲:第一个是预事件缓存,像周期缓冲一样一直被写;触发事件来了,记录仪写一次后事件缓存然后停住,等 Pertu 上传,上传完再重新起动等下一次触发。快速记录则是在目标里分配临时缓存,每个应用程序周期都记录所有变量值,Pertu 来要数据时把上次请求之后的所有记录一次性给出去,保证任务周期内不丢值。慢记录面向非常慢的过程,不强制所有值跟程序周期同步。
选型的判断逻辑其实不复杂:你要抓的是“事件发生前后那一段”,用 THL;你要的是“每个周期都不能漏”,用快速记录;过程本身慢到秒级甚至更慢,慢记录就够。手册里还提到快速记录方式下也有连续记录的行,值存磁盘上,可以回到特定事件再显示对应曲线,这个在长时间盯守场景里很实用。
2.2 THL 的自动与手动,差别在谁按按钮
THL 方式下有个容易翻车的点:手动和自动是两套操作节奏。手动方式下,目标记录仪停了之后你点上传按钮,Pertu 把数据拉回来显示;如果记录仪没停,程序会先自动把它停掉。但自动方式下这个按钮不用,Pertu 自己会上传并重新起动目标记录仪,不需要人干预。手册特别注明“除了第一次”,也就是说自动方式下第一次起动还是得你来。
自动方式还有个细节:每次上传创建一个文件名,格式是 THL 加时间戳,比如 THL19991017204251 对应 1999 年 10 月 17 日 20 点 42 分 51 秒。这个命名规则在事后翻文件时很有用,按时间排序就能还原事件序列。另外 THL 配置可以装载到目标闪存盘上并自动起动,系统引导期间记录仪就自己跑起来了,适合那种“人不在现场但问题随时可能发生”的场景。
2.3 快速记录和慢记录的操作约束
快速和慢速记录方式下,只有起动和停止两个按钮可用,没有上传按钮那套手动流程。手册里有一句提醒值得划重点:这两种方式下水平滚动执行时所用像素有限制,必须是整型,所以看到窗口宽度没被占满不用奇怪,不是显示 bug。还有一条,如果 Pertu 仅在显示方式下,这些按钮是不可用的——也就是说你打开的是一个纯查看的实例,别对着灰按钮较劲。
快速记录的一个实际价值是“没有任何丢失值”,这在排查周期性抖动或者偶发丢帧时是硬需求。但代价是目标里要分配临时缓存,变量多、周期快的时候对目标内存有压力。慢记录则反过来,不要求同步,适合温度、压力这类变化慢的量。手册里还提到频率变量方式,5.0 版本引入,用于记录非周期任务数据,在重新定尺对话框里用相应复选框开启,这个后面讲配置时再说。
3. 从拖放到出曲线:一次完整配置的实操路径
3.1 用 P80i 拖放建第一条曲线
手册推荐的最省事路径是从 P80i 文档里把变量直接拖到 Pertu 显示区。显示区分两部分:上部 1/3 是触发区,布尔量放这里,用于 THL 方式选择;下部 2/3 用于变量记录添加。拖完变量,点起动命令,曲线就活了。
这里有个接口管脚的限制必须说清楚。用户自定义本地变量可以拖进 Pertu,但连接的变量要从母体里拖。手册给的例子是:源变量 R00056 连到一个用户自定义块,块里 W00000 被用于接口,这时候你不能拖 W00001,而要拖源变量 R00056。另外记录任务必须是主用户自定义任务。这条限制在实际操作里很容易被忽略,拖错了变量曲线要么不出来,要么出来的是错的值。
# Pertu 起动方式(在 HPCi 文件夹中创建快捷方式后) # 方式一:直接双击快捷方式 # 方式二:带文件名参数起动,起动后直接打开对应文件 Pertu.exe "D:\config\thl_capture.per" # 通配符可用,匹配到的文件在分离窗口打开 Pertu.exe "D:\config\*.per" # -S<文件>:自动起动记录在目标中,无需其它操作 Pertu.exe -S"D:\config\auto_start.per" # -97:用于 P80c 且 DAO3.6 未安装的场景 # 不加这个选项,P80C 与 Pertu 之间不能拖放 Pertu.exe -97上面这几条起动参数是手册“开始 Pertu”一节里明确列出的。-S选项适合无人值守的自动记录场景,配合 THL 装载到闪存盘,系统一起来记录仪就在跑。-97是个兼容性开关,只在特定老平台加特定组件缺失时才需要,平时不用带。通配符那条在批量回看历史文件时很顺手,一次把所有 .per 打开对比。
3.2 手动配置对话框逐项填
不用拖放的话,走配置按钮或双击显示区打开主对话框。对话框主体是所选变量列表,第一行保留给 THL 触发。每个变量显示这些信息:无效(是否在本配置中显示对应曲线)、地址(HPC 地址)、类型(Bool/DINT/REAL)、点(目标点名)、源(数据来源名)、周期(对应记录的任务周期)、记录(记录数)、标尺(垂直方式)。
标尺那一列有手动和自动两档。手动时补偿和比率自己给;自动时补偿和比率按“曲线全屏”来算。最大/最小那档则是给曲线显示区底部和上部对应的值。这几个参数的关系是:补偿是加到记录值上的偏移,比率是乘上去的系数,自动模式就是让工具帮你把曲线撑满可视区,手动模式适合你已经知道量程、想让刻度固定下来的情况。
双击某个变量进入通道更改对话框,这里能改的更多:地址、记忆符 KKS、备注、单位、任务号(0-99)、周期、记录索引、源、节点名、补偿、比率、标尺手动/自动、最小/最大、虚拟通道、快照(上升沿)复选框、记录停止复选框。任务号决定记录周期,正常情况下从 P80i 任务属性自动带过来,改了会弹确认并影响所有配置记录。记录索引是同一个任务管多个记录时用来区分的,号码必须不同。节点名填 CPU 名或 TCP/IP 地址,带 X 确认后会把节点名移入配置所有记录。
3.3 虚拟通道的等式语法
虚拟通道这个特性值得单独拎出来,因为目标不记录它,它是其它记录值算出来的结果,等式写在备注区。手册给的语法不算复杂,但有几个符号容易记混:
| 符号 | 含义 | 示例 |
|---|---|---|
| @n | 第 n 通道的值(记录的或虚拟的) | @0+@1 前两通道相加 |
| !n | 同 @n,但布尔通道返回反向值 | !0 |
| Dn | 导出通道 | D0 给出第一通道偏差 |
| In | 通道整型 | I0 给出第一通道整型 |
| + - * / | 四则运算 | @0*10 第一通道的 10 倍 |
| && | 布尔与 | @0&&@1 |
| // | 布尔或 | @0//@1 |
| # | 取位 | @0#1 取第一位状态 |
注意第一个通道对应 0#,不是 1#,这个下标从零开始的约定在写等式时最容易错。还有一条手册特意强调:必须定义一个等式提供类型,不要忘记定义一个比率值。也就是说虚拟通道建好后,比率不能空着,否则曲线出不来。
3.4 重新定尺与设置对话框
重新定尺框从属性框或工具条 S 按钮进入。通道号是配置中记录的最大号,加新变量时自动增加。记录仪基周期不能改,它是所选数值里最小的周期,没选变量时这个值估不出来。屏幕期间以秒给出,对应显示区时间,也对应目标里创建的记录大小。频率变量复选框勾上后,每个数据按相应时间表记录,Pertu 文件会变大。历史的复选框在快速记录方式下把每个数据存成历史文件,历史期间定义单个历史文件大小,每天建一个目录,这个参数影响该位置的文件数。
设置对话框从属性对话框的设置按钮进,几个参数值得留意:刻度自动是每轴 10 刻度,手动则自己定最小最大;标尺 Y 自动对应记录值的最小最大,手动自己定;文件压缩勾上后如果文件系统是 NTFS,所有创建文件会被压缩;FFT 频率 0 勾上后连续值加进 FFT 显示;上传内部框架延迟用于大 THL 上传干扰系统的场景,单位毫秒,每次框架后暂停一下来限制干扰。这个延迟参数是血泪经验型的——系统负载高的时候大文件上传把目标拖慢,加个几十毫秒的框架间暂停往往就稳了。
4. 避坑排查:五个现场翻车记录
4.1 曲线不出来,标尺全是假的
现象:变量拖进去了,起动也点了,曲线区空的,水平标尺时间刻度看着不对。原因:水平标尺的刻度是假的,如果目标中任务没运行在配置里定义的正确周期。手册在水平标尺一节写得很直白,这个刻度依赖任务周期匹配。解决:去通道参数对话框核对周期,或者在新版本里勾“不检测周期”复选框绕过检测。但绕过只是让显示正常,根子上还是要确认任务实际周期和配置一致。
4.2 THL 上传按钮点了没反应
现象:手动 THL 方式下,记录仪停了,点上传没数据回来。原因:可能处在自动 THL 方式,这个按钮本来就不用,Pertu 自己会上传并重启。或者记录仪根本没停,程序虽然会自动停,但如果保护或安全方式禁用了 Pertu 操作,命令下不去。解决:先确认属性框里重新装备方式是手动还是自动;再检查 PI.cli 库里的安全方式是否把 Pertu 禁了,手册说禁止时不管 Pertu 是否已运行,总能停止和重启,但起动类操作会被拦。
4.3 拖放变量后值是错的
现象:曲线出来了,但数值跟预期对不上,或者干脆是另一个变量的值。原因:踩了接口管脚限制。用户自定义块里用于接口的变量不能直接拖,要拖母体里的源变量。手册的例子是拖 R00056 而不是 W00001。解决:回到 P80i 源级确认变量连接关系,从源变量拖;同时确认记录任务是主用户自定义任务。
4.4 大 THL 上传把系统拖卡
现象:上传大文件时目标侧响应变慢,甚至影响正常任务。原因:装载系统时大 THL 上传会干扰系统,这是手册设置对话框里明确提到的场景。解决:调“上传内部框架延迟”,给每次框架后加暂停,单位毫秒,从小值开始试,找到既能传完又不明显干扰的平衡点。这个参数没有万能值,跟目标负载和文件大小相关。
4.5 许可键没装,只有离线特性
现象:Pertu 起动后部分功能灰着,或者提示保护检查失败。原因:从 V4.4.0 起必须安装正确的许可键才能用 Pertu 和 Monipert,没有的话只有离线特性可用(从 4.5.0 起)。保护按钮会检查已安装的软件保护键并在对话框显示结果,本地检测失败会向网络许可服务器发 3 个请求。解决:先点保护按钮看检测结果,确认许可键状态;变量更改这个 5.1.0 起可用的特性还要求单独的 Pertu 扩展许可选项,别把两件事混为一谈。
5. 把 FFT 和导出用到位:一个复盘技巧
FFT 方式按钮把所有显示曲线转成频谱,水平轴刻度是 mHz。这个功能在排查周期性干扰时比看时域波形直接得多——时域上叠在一起的几个频率成分,频谱上一眼就能分开。但有个前提:采样周期得稳定,否则频谱会糊。所以用 FFT 之前,先确认任务周期和配置一致,别在“假标尺”状态下做频谱分析,那出来的峰位不可信。
导出功能从文件菜单进,配合 FFT 按钮使用。我一般的复盘流程是这样:THL 抓到事件后先看时域确认异常段,切 FFT 看有没有固定频率成分,然后导出数据留档。导出配置按钮还能把所选数据信息打成文本文件,这个文件可以被其它配置用导入功能读回去,相当于把一次调好的变量组合固化成模板,下次同类问题直接导入,省掉重新拖变量的时间。
# 导出后的数据做二次处理的常见套路(示意,按实际导出格式调整列名) import csv rows = [] with open("thl_export.csv", newline="", encoding="utf-8") as f: reader = csv.DictReader(f) for r in reader: # 时间列转秒,值列转浮点,空值跳过 if not r.get("value"): continue rows.append((float(r["time_s"]), float(r["value"]))) # 简单找最大值点和前后窗口,用于定位触发时刻附近的异常 if rows: t_max, v_max = max(rows, key=lambda x: abs(x[1])) window = [x for x in rows if abs(x[0] - t_max) <= 0.5] print(f"峰值 {v_max} 出现在 {t_max}s,窗口内 {len(window)} 个点")这段不是手册里的内容,是拿到导出文件后我习惯做的第一步:定位峰值时刻,截前后半秒的窗口,再决定要不要对这个窗口做 FFT。参数上0.5是窗口半径,按你的记录周期和事件持续时间调,周期快就收窄,慢就放宽。注意导出格式以实际文件为准,列名对不上就改DictReader的键。
还有一个容易忽略的显示细节:参数选择对话框里数字色和布尔色各 10 个,但颜色不是绑在变量上的,而是绑在“记录的范围在屏幕上的位置”。手册的例子是同一个变量显示在第一个位置是红色,范围变成 4 就成黄色。所以别指望靠颜色认变量,认变量靠右区的 KKS 和备注。右区宽度、字体、KKS 显示、备注显示、标尺、最小/最大、精确度这些都在参数选择里配,而且这些参数存在 pertu.ini 里,不在 pertu 文件里——换机器时想保留显示习惯,记得把 ini 一起带走。
从那以后我每次配 THL 都强制走一遍:先确认任务周期和配置一致,再确认重新装备方式是手动还是自动,最后才点起动。这三步顺序错了,后面所有波形都可能是黑匣子里猜出来的。希望帮到你。
本文还有配套的精品资源,点击获取