ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Intouch单机版入门实操指南:从安装到画面开发与脚本调试

Intouch单机版入门实操指南:从安装到画面开发与脚本调试 干过现场自控的人都知道半夜躲在中控室里跟组态软件较劲是常事。当时第一次打开Intouch的WindowMaker面对一堆工具栏和右键菜单说实话是有点懵的。这东西跟普通的上位机界面软件不太一样它所有的数据点、画面动画、脚本逻辑都是靠“配置”出来的你得先搞懂它那套术语和操作习惯否则光是一个标记名的类型选错就能让你在调试现场耗掉半天。这篇文章就是写给初学Intouch单机版的朋友的不管你是刚入行的电气工程师、负责设备维护的技师还是想自学上位机开发的学生这篇都能给你一个能落地的入门路线。我会从Intouch单机版是干嘛的、怎么安装、怎么建工程到怎么做画面、连数据、写脚本、排故障按实际项目里最常用的顺序捋一遍尽量说人话少念说明书。1. 先搞明白Intouch单机版到底是干什么的1.1 为什么现场还死守着“单机版”很多人一听“单机版”就觉得是不是功能缩水、是不是老掉牙的东西。实际上在工业现场单机版Intouch的应用非常广泛。一条水泵房、一套小型污水处理站、一台锅炉的控制系统往往就是一台工控机通过网线或串口连着一台或几台PLC做数据监控和手动操作。这种场景不需要庞大的分布式服务器架构一台机器把画面、报警、历史报表全包了省钱、省事、稳定这就是单机版存在的理由。Intouch的核心组成很简单开发环境叫WindowMaker运行环境叫WindowViewer。你在WindowMaker里画画面、定义数据点、写脚本做完之后在WindowViewer里跑起来给操作员用。这种“开发和运行分离”的思路后来很多组态软件也都借鉴了但Intouch这套体系流传时间很长上手资料多现场老师傅也多遇到问题至少有人能问。1.2 单机版与网络版System Platform的差别在有条件的大项目中Intouch往往跟着System Platform一起走搞一个Galaxy多台服务器协同客户端通过冗余机制去访问数据。这种部署复杂度和成本都高不少。而单机版就是一台电脑一个应用数据源通过访问名直接连到本地或本网段的IO服务器上。对新手来说先把单机版学透再去碰网络版就顺理成章了。因为标记名、窗口、动画链接、脚本这些核心概念完全一致只是数据来源和部署形态不一样。而且单机版出问题时的排查链路短适合练手。2. 安装与授权先把环境打舒服2.1 版本选择与Windows兼容性Intouch的版本号很杂常见的有2012、2014、2017、2020等早期还有10.1、11.1这些。选版本第一原则不是“越新越好”而是“和现场其他东西兼容”。如果你所在单位已有的工程是老版本建的你最好用同一个或更高版本去开发维护因为版本升级后工程文件往往不能降级保存升上去就回不来了。操作系统方面更要注意。老版本Intouch在Windows 7甚至XP时代最活跃新的版本才逐渐支持Windows 10和Windows Server 2016/2019。安装之前先查官方兼容性列表别装到一半报错才发现系统不认。我个人的习惯是准备一台干净的虚拟机专门做Intouch开发系统用官方原版不要用各种精简优化版否则一些ODBC组件和服务会被砍掉后面连历史和报警数据时会莫名其妙出问题。机器配置不用太高i5处理器、8G内存、固态硬盘就足够流畅关键是系统干净稳定。装完系统先把补丁打好、把快照做一份再开始装Intouch。这样万一装出问题回滚快照只要几分钟比费劲卸载干净得多。2.2 安装流程与授权要点安装过程本身不算复杂但有几个节点得盯住关闭杀毒软件和Windows用户账户控制UAC不然授权服务和动态库容易被误杀。检查是否装了.NET Framework 4.x 和 VC运行库少了会提示缺少组件。安装时选择Standalone或单机模式。数据库组件建议一并装上报警历史和趋势都要靠它。授权方面单机版常见的授权方式是加密狗或本地授权文件。装完用授权管理工具看当前是正式授权还是演示模式。提示正式授权模式下WindowViewer才能长时间稳定运行。演示模式下很多功能会受限或者定时关闭平时学习用可以现场调试千万别指望这个。这里有个经验授权服务License Server相关服务一定要设置成自动启动。好多次现场一重启电脑画面起不来跑过去一看就是授权服务没拉起来。看起来像是Intouch坏了其实就是后台服务没运行。3. 从创建一个空应用开始WindowMaker实操3.1 创建应用先定规范和命名启动WindowMaker之后会进入Application Manager或者直接到开发界面。第一件事不是急着画画面而是新建一个“应用”也就是Application。这个名字和路径可得选好我强烈建议用纯英文或者拼音别用中文也别放在带空格的目录底下。原因很实际后面的历史数据、报表输出、ODBC连接都依赖稳定的路径中文编码在某些老组件里会出乱码排查起来极其闹心。应用的命名最好也有一点规律比如WaterPlant、BoilerStation、Line2_HMI一看就知道是哪个项目的。一个应用下面可以建很多窗口窗口命名也建议统一比如主画面叫PIC_MAIN泵组画面叫PIC_PUMP参数设置叫PIC_PARAM切换窗口的脚本一写就通。3.2 窗口类型与画面属性的选择新建窗口时类型要理解清楚。覆盖式窗口是常规切换用的打开新窗口时会把旧窗口盖住这是主画面的首选弹出式窗口适合做弹窗、确认框、参数小面板它浮在当前画面之上操作完再关掉。窗口尺寸是个重点。最好一开始就定下来跟显示器分辨率匹配比如1280x1024或1920x1080开发期间锁死窗口大小别让操作员在运行时随意拉拽变形。分辨率变了容易导致图元错位这是我在现场吃过亏的。在这阶段还有个小技巧把所有窗口的背景色、标题栏样式统一比如背景都做成深灰蓝操作区用统一色调这样后期整套画面上档次很多也给甲方留个好印象。4. 标记名字典Intouch的“变量表”也是数据库4.1 理解标记名与访问名Intouch里的所有数据点都叫“标记名”英文Tag。它就像PLC里的数据块但不是直接对应PLC地址它是上位机自己的软件变量。标记名分为内存类型和I/O类型内存型就是本机内部用的中间变量I/O型才跟外部PLC或其他数据源有关。那I/O标记怎么知道去哪读数据呢靠“访问名”。访问名是Intouch对外通信的桥梁它描述了使用什么协议、连接哪个节点、对接哪个应用程序和主题。你要是没配置访问名就算建了一堆I/O标记运行起来也是“无源之水”画面数字要么是空的要么就是####。4.2 标记名字典的实操步骤打开标记名字典之后大致这么操作先定义访问名点击“访问名”按钮新建一个。写清楚节点名本机一般用本机名或留空、应用程序名比如Modbus的DASMBTCP、OPC的服务器名、主题名对应IO Server配置的设备名。回到标记名字典新建标记名选择类型。常见的有I/O离散、I/O整数、I/O实数、I/O消息对应不同数据类型。过程值一般用I/O实数开关量用I/O离散。在标记名里把“访问名”选成刚建好的那个再填“项目名”这个项目名就是PLC里的寄存器地址每个驱动写法不一样有的写HR0有的写AI1得查驱动手册。类型选错是新手最常见的坑。比如PLC通过Modbus传过来的是16位整数你建标记名选成实数画面显示不一定报错但数值会变得离奇而且你还不容易意识到是类型问题。建议建表之前先跟电气同事把点位类型清单要过来照着建别凭感觉。注意内存离散量特别适合做按钮状态、画面控制位、权限联锁标志等不要把这类逻辑全部塞给PLC的M点。Intouch脚本里置位和复位内存标记比频繁写PLC的M区更安全、更稳定。4.3 数据点命名的职业习惯标记名命名能看出一个工程师是否专业。别用Tag1、Tag2这种调试现场全靠猜。合理命名可以带设备位号和功能比如FT_101表示流量变送器101LIC_102表示液位控制102P_101_RUN表示泵101的运行状态。描述栏里也写清楚中文注释比如“1号泵运行状态反馈”这样后人接手和故障分析都省力。内存变量的命名可以加前缀区分比如mPB_Start、mAutoMode、mAlarmAck一看到m就知道是内存变量。这种好习惯能在后期脚本变多、画面变复杂时让你少掉很多头发。5. 做画面就是搭积木动画链接实战5.1 图元素材与基础绘制Intouch画面上的阀门、泵、管道、罐体其实都是矩形、椭圆、线条这些基础图形拼出来的。自带的Symbol Factory符号库里素材很多阀门泵电机都有现成的但用起来要小心这些库图元样式偏老旧配色夸张一套画面下来很容易显得土。更关键的是库图元包含很多内置动画属性复制进画面后如果没注意容易把没用的动画连到错误的标记上运行起来闪来闪去吓人一跳。我更建议自己画常用设备。以泵为例一个圆代表电机旁边一个小矩形代表泵体再连上管道线条。画一遍存成模板以后所有画面都用同一个模板风格统一维护也好做。画好了之后把背景类元素归为一组但要注意分组之后图元上的动画链接可能受影响分组前先确认动画已经配好。5.2 动画链接让数据驱动图形动画链接是Intouch最核心的功能之一。它不像写代码那样为每个图元指定属性而是通过对话框勾选条件和表达式把图元的颜色、位置、尺寸、可见性、文字内容等跟标记名绑定起来。拿“水泵运行状态”举例。泵的另一个圆形填充白色选中它打开动画链接的“填充颜色”选项类型选“离散”表达式填P_101_RUN然后设置1对应的颜色为绿色0对应的颜色为灰色。运行的时候PLC那边泵一启动这圆饼就变绿操作员一眼看到状态。模拟量显示更常用。液位、流量、压力这些在现场实时变化的数据放一个数值显示框链接到对应的I/O实数标记设置小数点位数和单位。有些项目还喜欢做“百分数填充”效果比如液位越高灌体的蓝色填充越多这本质上就是把一个矩形的填充百分比属性链接到液位标记再根据量程设置填充上下限。5.3 操作输入与安全限制如果只是“显示”那监控软件就成摆设了。现场还要让操作员能点击启动、停止、设定参数。Intouch里给图元添加“数据输入”或“离散输入”动画链接就能实现。比如给“启动”按钮配置离散输入运行时一点按钮就把指定标记置1或置0。但是这里必须聊权限。Intouch有访问级别机制从0到9999分等级每个操作员可以分配不同的级别。给启动、急停这种关键操作设置访问级别运行时该按钮会要求登录用户名密码验证之后才能操作。这不仅是安全要求也是很多甲方检查的硬指标别省。经验按钮的“离散输入”动画我一般会在脚本里再加一层逻辑比如按下时先把对应的内存标记置位再由脚本去判断当前模式是否自动、是否有联锁条件最后才决定是否往下发I/O标记。别让按钮直接作用于I/O标记否则容易造成误操作。5.4 做一个简单的液位监控画面拿“水箱液位监控”来把上面的知识串一遍新建窗口PIC_WATER_TANK大小1280x768背景色设为深灰。画罐体轮廓用矩形和梯形线条组合线色用浅灰。画液面在罐内放一个矩形填充色选浅蓝。打开动画链接的“填充百分比”选择标记LI_101填充最小值设为0最大值对应现场量程比如10米。放液位数值用文本工具“###.##”或数值显示动画链接绑定LI_101。画进水泵用圆和矩形拼填充颜色链接P_101_RUN绿色表示运行。画报警灯单独画一个圆形动画链接里选“闪烁”和“填充颜色”条件为P_101_FAULT。画面右下角放一个“返回主画面”按钮按钮脚本写Display(PIC_MAIN);。这一套做完一个基础可用的单机版监控画面就出来了。运行起来你可以看到液面随着真实数据进行上下波动泵状态跟着PLC变化报警灯在故障时闪烁。这种“画出来就活”的感觉是Intouch最上头的地方。6. 让数据活起来QuickScript脚本入门6.1 脚本类型与触发机制Intouch的脚本语言叫QuickScript语法接近VBA走的是解释执行的路子不需要编译成程序。脚本可以挂在很多地方按钮动作、窗口打开关闭事件、应用启动时、某个标记值变化时、循环执行时种类不少但核心场景就那么几个。我最常用的是按钮脚本和窗口脚本。按钮脚本就是点击某个按钮时执行一段逻辑适合做画面切换、参数确认、数据后处理。窗口脚本里的“窗口显示时”和“窗口关闭时”适合做初始化和收尾工作比如打开某个窗口时自动把一些参数读取到内存标记里。6.2 常用脚本片段参考下面这几种脚本单机版项目里基本都会用到可以直接抄。画面切换Display(PIC_PUMP_STATION);按钮做设备启动脉冲IF mPumpStartPB THEN mPumpStartCmd 1; ENDIF; mPumpStartPB 0;模拟量累加TOTAL_FLOW FLOW_A FLOW_B;超限报警逻辑IF FT_101 1000 THEN FT_101_ALM 1; ELSE FT_101_ALM 0; ENDIF;需要注意Intouch的脚本中判断和赋值顺序跟PLC编程不一样它跑起来是逐行执行的而且可能是周期扫描。如果你写了一个复杂的循环等待或者文件读写可能会卡住画面刷新。脚本里尽量别做持续性的“重量级”操作该放到PLC里的联锁逻辑不要塞到上位机脚本来跑。6.3 脚本调试思路Intouch脚本出故障不太容易直接定位因为解释执行时很多错误是静默的。我的习惯是建立一套“内存标记可视调试”机制。例如在脚本里给一个调试内存标记赋值然后在画面角落放一个调试数值显示如果脚本执行了就能看到数值变化。现场排查时这种土办法往往比看日志更直观。日志文件也很重要。Intouch运行时会记录一些脚本错误和通信异常日志路径一般在应用目录或系统临时目录中。真遇到脚本报错先把日志翻出来看很多答案就在里面。7. 运行调试与常见问题排查7.1 从开发到运行的衔接开发完了之后在WindowMaker点运行按钮Intouch会启动WindowViewer并自动加载当前应用。WindowViewer运行时整个界面就是操作员看到的画面。开发环境可以随时做修改但改动标记名和脚本后要重新启动WindowViewer才能完整生效这一点和PLC在线修改有区别。调试时我常用一个笨办法在画面里临时放一批数值显示框把可疑的标记名都绑上去一目了然地看数据到底有没有进来、值对不对。这比打开一堆诊断窗口更有用因为画面本身就是最好的诊断工具。7.2 新手最容易踩的坑下面这些问题几乎每个初学Intouch单机版的人都会遇到至少一个提前知道能省不少时间现象可能原因处理办法画面数字都是####标记类型不匹配或数据源未生效检查I/O标记的访问名和项目名确认IO Server在线画面数值有但很久不动通信驱动没有建立连接或PLC地址超出范围打开驱动自带诊断窗口看通信报文按钮点了没反应按钮的离散输入/脚本没绑定或访问级别不够检查按钮动画链接和操作员登录状态报警窗口弹不出来报警配置没启用或报警窗口控件没添加给标记配置报警选项卡并在画面放置报警窗口历史趋势曲线没数据历史数据采集没启用或标记未加入历史记录在历史数据配置中把标记加入存储列表重启电脑后画面起不来后台服务未自动启动尤其是授权服务把相关服务设为自动启动窗口文字变乱码应用名或路径含中文项目路径和应用名改成英文7.3 与PLC/pLC通信故障的排查方法单机版和PLC通信是现场出问题最多的地方。很多初学者第一反应是Intouch坏了其实往往是驱动或网络的问题。排查要遵循链路原则上位机到网络的物理连接 - PLC的IP地址和端口 - 驱动的通道和设备配置 - 访问名与主题名 - 标记名的项目名。以最常见的Modbus TCP为例先用Modbus调试工具或驱动自带的测试界面直接读PLC数据如果驱动能读到那说明通信链路是通的问题在上位机Intouch侧。然后再看访问名的应用程序名和主题名有没有跟驱动配置一一对上。这一层一层剥下来基本能锁定故障段。我见过最离谱的案例是访问名的“节点名”瞎填了一串IP服务解析半天连不上实际上单机版Modbus TCP很多时候节点名可以留空具体要看驱动说明。别凭经验瞎猜驱动文档是救命稻草。8. 几点长期有用的实战经验前面几章基本把Intouch单机版的开发流程过了一遍最后我再分享一些积累下来的小经验都是教科书上找不到的。首先工程目录的备份要形成习惯。开发期间每完成一个阶段性成果就把整个应用目录复制到另一个磁盘打上日期标签。Intouch工程文件损坏的可能性虽然不高但一旦运行中系统崩溃或杀毒软件误删损失的可是几个星期的画面工作量。我自己的习惯是每天下班前做一次增量备份把当天改过的图形和脚本用导出功能存出来。其次画面风格和标记命名在最开始就要立规矩。Intouch单机版项目看着小但后期维护周期很长而且很可能不是最初那个工程师来做二次开发。统一的命名、细致的描述、规范的画面布局会让接手的人舒服很多。这不仅是职业素养也是在给自己以后省事。说不定半年后回去改需求的就是你自己。第三操作权限和交班日志别忽略。虽然是单机版但涉及关键设备的操作一定要配置操作员登录和操作确认。公司如果注重合规这块更是审计重点。Intouch里把权限级别分好运行时操作员输入工号密码才能操作既满足管理要求也能防止误触。最后想说学Intouch单机版最忌讳只看不练。我见过太多人看完一堆教程依然不会新建工程、不会配访问名。这东西跟开车一样你得真坐到WindowMaker前面手边放一个PLC仿真器或者至少用内存变量自己模拟数据把一个简单的“液位监视泵启停”画面完整跑通一遍才算真正入了门。等到哪天你在现场被求助解决一个历史趋势丢数据的问题还能翻出这篇文章来对照一下那我会觉得这些经验总算没白写。
返回列表