尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

【非标自动化】3、AutoShop快速理解(软件界面)

【非标自动化】3、AutoShop快速理解(软件界面) 这张界面可以先不要把它看成“很多复杂菜单”而要把它理解成一套完整的PLC工程工作台先配置PLC和硬件 ↓ 定义变量和设备地址 ↓ 编写控制程序 ↓ 编译检查 ↓ 连接PLC并下载 ↓ 在线监控和调试 ↓ 排查故障、保存项目界面上的不同区域就是分别服务于这些步骤。一、先认识整个主界面根据截图AutoShop主界面可以分成六部分┌──────────────────────────────────────────┐ │ 菜单栏文件、编辑、查看、PLC、调试、工具等 │ ├──────────────────────────────────────────┤ │ 工具栏保存、编译、下载、运行、监控等快捷按钮│ ├─────────────┬──────────────────┬─────────┤ │ 工程管理区 │ 程序编辑区 │ 工具箱 │ │ 管理整个项目 │ 编写梯形图和程序 │ 放置指令 │ ├─────────────┴──────────────────┴─────────┤ │ 状态栏显示连接、编辑位置、软件状态等 │ └──────────────────────────────────────────┘其中最重要的是三个区域左边的工程管理区中间的程序编辑区右边的工具箱可以先简单记为左边管理项目中间写程序右边找指令上面执行操作下面看状态。二、标题栏当前打开了什么项目截图顶部显示AutoShop V4.10.2.0 临时工程 - [MAIN]分别表示AutoShop V4.10.2.0软件版本临时工程当前项目名称[MAIN]当前正在编辑MAIN程序。左边工程树根节点显示临时工程 [Easy523]说明这个项目选择的PLC机型是Easy523这一点非常重要因为选择不同PLC型号后可用的输入输出数量不同支持的通信方式不同支持的运动轴数量不同可用的指令可能不同扩展模块能力不同。所以创建项目时第一步通常不是写梯形图而是先确定实际使用的PLC型号是什么。三、菜单栏所有功能的总入口截图中的菜单包括文件 编辑 查看 梯形图 PLC 调试 工具 窗口 帮助菜单栏可以理解为AutoShop的完整功能目录。1. 文件一般用于新建工程打开工程保存工程工程另存为导入、导出打印关闭工程。实际项目中一定要养成经常保存的习惯。建议项目不要一直使用“临时工程”而是保存成有意义的名称例如气缸往复控制_Easy523 输送带检测Demo 视觉检测设备_V1.02. 编辑一般包含撤销重做复制粘贴删除查找替换插入网络修改元件。它与普通编程软件中的“编辑”菜单差不多。3. 查看控制界面中哪些窗口显示例如工程管理区工具箱变量监控输出信息状态栏。有时候误操作导致左边工程树或者右边工具箱消失可以从“查看”菜单重新打开。4. 梯形图用于操作梯形图中的元件例如插入常开触点插入常闭触点插入线圈插入指令框添加横线、竖线删除网络添加网络注释。截图中第二排大量类似触点、线圈的图标就是梯形图编辑快捷按钮。5. PLC这部分负责电脑与PLC之间的操作通常包括选择通信方式登录PLC下载程序上载程序PLC运行PLC停止PLC复位读取PLC信息设置PLC时钟。这里要区分几个概念。下载电脑中的工程 → PLC也就是把AutoShop里写好的程序传给PLC。上载PLC中的程序 → 电脑也就是把PLC现有程序读取到电脑。运行让PLC开始循环执行程序。停止让PLC停止执行用户程序。6. 调试调试菜单通常用于在线监控强制变量在线修改单步或流程调试-故障诊断示波器、Trace数据记录。初学阶段最常使用的是在线监控例如程序中有X0 ──| |────────( Y0 )在线监控后可以看到X0当前是ON还是OFF梯形图条件是否导通Y0有没有输出定时器有没有计时寄存器当前是多少。四、工具栏常用操作的快捷入口菜单栏功能很多因此AutoShop把常用功能做成了图标。截图顶部工具栏大致包括新建打开保存撤销、重做查找编译下载上载PLC运行PLC停止在线监控梯形图元件。不必一开始记住每个图标。最先认识以下几个即可保存 编译 连接PLC 下载 运行 停止 在线监控通常操作顺序是写程序 ↓ 保存 ↓ 编译 ↓ 连接PLC ↓ 下载 ↓ PLC运行 ↓ 在线监控编译是什么意思编译就是检查程序是否存在问题例如指令写错变量不存在数据类型不匹配程序结构错误某个功能块缺少参数。编译通过不代表设备一定能正确运行只表示程序在语法和工程规则上基本合法。例如将气缸伸出条件写反程序仍可能编译成功但设备动作会错误。这属于控制逻辑问题不是编译错误。五、工程管理区整个项目的目录树左边区域是最需要重点认识的部分。它类似于Xcode中的工程导航区。截图中的工程树主要包括系统变量表 全局变量 编程 配置 变量监控表 交叉引用表 元件使用表 Trace 数据记录它们可以分成四类变量管理 程序管理 硬件与通信配置 调试与分析六、系统变量表系统变量是PLC或系统预先提供的一些特殊变量。它们不是普通用户随便定义的变量而是表示PLC自身状态例如PLC首次扫描PLC运行状态系统时钟通信状态故障状态扫描周期固定周期脉冲。例如可能存在类似首次扫描标志 100ms周期脉冲 1s周期脉冲 PLC运行标志使用这些变量可以实现PLC第一次启动时初始化数据 每隔1秒执行一次操作 发生系统故障时进入报警处理现阶段不用逐个记住只要知道系统变量表保存的是PLC系统自身提供的状态和特殊功能变量。七、全局变量截图中全局变量下面有结构体 软元件表 功能块实例 变量表全局变量表示在整个PLC项目中都可以使用的变量。例如可以定义StartButton BOOL StopButton BOOL CylinderExtend BOOL ProductCount INT TargetPosition DINT这些变量可以被MAIN、子程序、FB、FC共同使用。1. 结构体结构体是将一组相关数据组合起来。例如一个气缸可以包含气缸名称 伸出输出 缩回输出 伸出到位 缩回到位 故障状态 超时时间可以定义成一个气缸结构体Cylinder ├── ExtendOutput ├── RetractOutput ├── ExtendSensor ├── RetractSensor ├── Alarm └── Timeout以后多个气缸都可以使用相同的数据结构。初学简单Demo时暂时不必深入。2. 软元件表“软元件”是PLC里的核心术语。可以把软元件理解为PLC内部可以被程序读写的存储单元或地址。常见软元件有类型一般用途X外部数字量输入Y外部数字量输出MPLC内部辅助位D数据寄存器T定时器C计数器例如X0启动按钮 X1停止按钮 Y0指示灯 Y1电磁阀 M0设备运行状态 D0产品数量 T0延时定时器“软元件表”一般就是集中查看或管理这些地址。需要注意X、Y通常对应PLC端子M、D、T、C一般存在于PLC内部M0不是一个真实接线端子D0也不是一块独立的实体硬件。3. 功能块实例如果定义了一个功能块FB例如气缸控制FB要真正使用它通常要创建实例例如Cylinder1 Cylinder2 Cylinder3这些实例会保存各自的状态。可以类比为FB定义 ≈ 类 FB实例 ≈ 对象例如CylinderControl Cylinder1 CylinderControl Cylinder2两个气缸使用同一套控制逻辑但分别保存自己的传感器、输出和故障状态。4. 变量表变量表是给地址取有意义的名称。直接看X0 Y2 M10 D100很难知道它们是什么。定义变量后可以变成X0 StartButton X1 EmergencyStop Y0 RunLamp Y1 CylinderValve M0 AutoRunning D100 ProductCount这样程序会更容易理解。对于真实项目推荐不要只写X0、Y0而要给重要地址定义变量名称和注释。八、编程区域截图中“编程”下面包括程序块 ├── MAIN ├── SBR_001 └── INT_001 功能块FB 函数FC这是整个项目的程序结构。1. MAINMAIN是主程序。PLC进入RUN状态后会反复执行MAIN。执行方式大致是读取输入状态 ↓ 执行MAIN ↓ 更新输出状态 ↓ 再次读取输入 ↓ 再次执行MAIN ↓ 不断循环这叫PLC的扫描循环。所以MAIN不是像普通App的某个页面而更像PLC每个扫描周期都要执行的主逻辑入口。初学Demo的绝大多数程序都可以先写在MAIN中。2. SBR_001SBR一般表示子程序。当MAIN越来越长时可以把不同功能拆开MAIN ├── 调用启动停止子程序 ├── 调用气缸控制子程序 ├── 调用报警处理子程序 └── 调用通信处理子程序例如SBR_001设备启停 SBR_002气缸流程 SBR_003报警处理这样程序更清晰。要注意子程序通常需要被MAIN或其他程序调用否则它可能不会执行。3. INT_001INT一般表示中断程序。正常情况下PLC按照扫描周期执行MAIN。但是有些事情要求立即处理例如高速输入信号到达编码器脉冲定时中断外部中断高优先级事件。这时PLC会暂时中断普通扫描程序先执行中断程序。可以理解为正在执行MAIN ↓ 突然出现紧急事件 ↓ 暂停MAIN ↓ 执行INT_001 ↓ 执行完后返回MAIN初学普通按钮、指示灯、气缸Demo时暂时不用使用中断程序。4. 功能块FBFB适合封装具有内部状态的控制对象。例如气缸控制电机控制伺服轴控制阀门控制工位流程报警处理。一个气缸FB可能负责接收伸出命令 控制电磁阀 等待伸出到位 检测超时 输出完成和报警状态FB会保存自己的内部状态因此特别适合控制具体设备对象。5. 函数FCFC更适合做输入到输出的计算和处理。例如温度单位转换 坐标换算 数据校验 平均值计算 限幅处理可以简单理解FC偏向计算 FB偏向控制对象和保存状态现阶段可以先使用MAIN和子程序等程序出现大量重复逻辑时再学习FB、FC。九、配置区域左边“配置”部分决定项目中实际使用了什么硬件、通信方式和运动控制方式。截图中包含输入滤波 EXP-A EXP-B 模块配置 电子凸轮 运动控制轴 轴组设置 EtherCAT COM0 以太网 EtherNet/IP OPC UA这些不是每个项目都必须全部配置。要根据设备实际使用情况选择。1. 输入滤波现场按钮、传感器和开关信号可能会产生抖动或干扰。例如按钮按下时电气信号可能不是一次干净地从OFF变成ON而可能在短时间内OFF → ON → OFF → ON → OFF → ON输入滤波可以让PLC忽略过短的变化避免误动作。例如设置滤波时间后X0持续ON达到一定时间 ↓ PLC才认为X0真正有效但滤波时间过长也会导致响应变慢。普通按钮可以适当滤波高速脉冲信号不能随便使用普通输入滤波。2. EXP-A、EXP-B这些通常与PLC的扩展接口或扩展模块有关。PLC本体的I/O数量有限例如本体只有16点输入 16点输出如果设备需要更多I/O就要安装数字量扩展模块模拟量模块温度模块高速计数模块通信模块。EXP-A、EXP-B可以理解为PLC扩展能力的配置入口具体可以连接什么需要看Easy523的硬件手册和实际模块型号。3. 模块配置这里通常用于配置PLC本体和扩展模块组合。例如Easy523 CPU ├── 数字量输入模块 ├── 数字量输出模块 ├── 模拟量输入模块 └── 温度采集模块软件中的配置必须与现场真实安装的硬件尽量一致。否则可能发生模块无法识别地址分配错误PLC报告模块故障程序读取不到正确数据。4. 电子凸轮这里用于建立主轴与从轴之间的位置对应关系。例如主轴位置0° 从轴位置0mm 主轴位置90° 从轴下降20mm 主轴位置180° 从轴保持 主轴位置270° 从轴上升 主轴位置360° 从轴回到0mm这是高速包装、印刷、切割等设备会使用的高级功能。目前不需要配置。5. 运动控制轴当PLC要控制伺服或步进电机时需要先定义“轴”。例如轴0X轴 轴1Y轴 轴2升降轴然后配置驱动方式脉冲轴还是总线轴电机转一圈对应多少脉冲丝杆导程单位是毫米还是角度最大速度加减速度正负限位原点信号回零方式。程序中的定位指令使用的是“轴”而不是直接面对电机内部所有细节。6. 轴组设置单独一个轴运动叫单轴控制。多个轴协同运行时可能需要建立轴组例如X轴 Y轴组成XY平面轴组用于直线插补圆弧插补轨迹控制多轴联动。普通单轴定位Demo暂时不需要轴组。7. EtherCAT用于配置EtherCAT主站网络和从站设备。例如Easy523 PLC │ └──EtherCAT ├──伺服驱动器1 ├──伺服驱动器2 ├──远程I/O └──其他从站这里通常需要扫描从站添加设备描述文件设置站点顺序设置过程数据设置伺服轴检查网络状态。只有项目实际使用EtherCAT设备时才需要配置。8. COM0COM0一般是PLC的串口配置入口。常见用途PLC ↔ 变频器 PLC ↔ 温控器 PLC ↔ 仪表 PLC ↔ 触摸屏通信协议可能是Modbus RTU自由协议汇川专用协议。需要配置波特率数据位停止位校验位站号主站或从站。这些参数必须与对方设备一致。9. 以太网这里配置PLC自身的网络参数例如IP地址 子网掩码 网关 通信协议例如PLC192.168.1.10 电脑192.168.1.20在同一网段内AutoShop才能通过网络连接PLC。以太网还可能用于HMI通信上位机通信Modbus TCP视觉设备通信远程调试。10. EtherNet/IPEtherNet/IP是一种工业以太网协议不是普通“网线能联网”这么简单。它可以用于PLC与以下设备交换工业数据机器人远程I/O视觉控制器其他品牌PLC工业设备。只有对方设备明确支持EtherNet/IP时才配置。注意它和EtherCAT不是同一种协议EtherCAT ≠ EtherNet/IP ≠ 普通TCP通信它们都可能使用网线但通信规则和应用场景不同。11. OPC UAOPC UA更多用于PLC向上层系统提供标准化数据。例如PLC ↓ OPC UA ↓ 上位机、SCADA、MES、数据采集系统上层系统可能读取设备运行状态产品数量当前温度报警信息工艺参数。普通基础Demo暂时不需要配置OPC UA。十、变量监控表变量监控表用于集中查看变量实时值。例如添加StartButton AutoRunning CylinderExtend ProductCount TemperaturePLC运行时可以看到StartButton TRUE AutoRunning TRUE CylinderExtend FALSE ProductCount 128 Temperature 36.5变量监控表非常适合调试因为不需要在多个程序页面来回寻找变量。十一、交叉引用表交叉引用用于查找某个变量或地址在项目中的哪些地方被读取和写入。例如发现Y0突然变成OFF可以查询Y0MAIN网络3写入Y0 SBR_001网络8复位Y0 报警程序网络2写入Y0这样就能知道到底是哪段程序修改了它。这与普通软件开发中查找变量引用很相似。当程序较大时交叉引用非常重要。十二、元件使用表元件使用表用于查看哪些PLC软元件地址已经被占用。例如M0M20 已使用 D0D50 已使用 T0T5 已使用它可以帮助避免重复使用地址不知道某地址是否已经被占用新增程序时覆盖原有数据。十三、TraceTrace可以理解为PLC变量的高速趋势记录工具。它可以记录位置速度电流温度压力某些开关状态控制指令状态。然后画成曲线。例如分析伺服定位过程目标位置 实际位置 目标速度 实际速度通过曲线可以发现加速过快响应滞后位置超调机械振动信号在某个时刻突然变化。Trace类似软件示波器但采集的是PLC内部变量不是直接测量电线上的真实电压波形。十四、数据记录数据记录通常用于把变量按照一定时间周期保存下来。例如每秒记录一次时间 温度 压力 产品数量 报警代码它与Trace的区别可以暂时理解为Trace偏高速、短时间、波形分析 数据记录偏长期、过程数据保存十五、中间的程序编辑区当前打开的是MAIN梯形图程序。可以看到网络1 网络2 网络3 …… 网络15“网络”不是以太网网络而是梯形图中的一个逻辑段落。一个网络通常完成一个相对独立的逻辑功能例如网络1启动停止自锁 网络2运行指示灯 网络3气缸伸出 网络4气缸缩回 网络5超时报警网络注释用于说明这一段逻辑是做什么的。建议不要把大量无关逻辑塞进同一个网络。梯形图的一般阅读方向梯形图一般从左向右判断 从上向下执行例如|----[ X0 ]----[/X1]------------( Y0 )----|可以理解为X0为ON 并且X1为OFF ↓ Y0输出每个网络左侧可以理解为电源起点右侧是逻辑结果。十六、右边的工具箱工具箱是可用设备、指令、FB和FC的集合。截图中主要有EtherCAT Devices 扩展模块 EtherNet/IP Devices 指令集 FB FC 库1. EtherCAT Devices用于寻找和添加EtherCAT从站设备例如汇川伺服远程I/O其他EtherCAT设备。其中Inovance Devices表示汇川设备。Other Devices表示其他厂商设备。2. 扩展模块用于选择PLC扩展模块例如数字量输入模块数字量输出模块模拟量模块温度模块通信模块。截图中可以看到本地模块 扩展卡“本地模块”一般指直接安装在PLC旁边、通过本地扩展总线连接的模块。“扩展卡”一般是安装到PLC特定卡槽中的小型功能卡。3. 指令集截图中展开了很多指令类别程序逻辑指令 流程控制指令 触点运算指令 数据运算指令 数据处理指令 矩阵指令 字符串指令 时钟指令 MC轴控指令 HC轴控指令 定时器指令 指针指令 通讯指令 其他它们分别表示不同功能。程序逻辑指令用于基本逻辑控制例如置位复位边沿检测条件判断。流程控制指令用于控制程序执行流程例如跳转子程序调用返回循环。触点运算指令主要与梯形图中的触点、线圈及布尔逻辑有关。数据运算指令用于加减乘除比较。数据处理指令用于数据移动数据转换批量处理位操作。字符串指令用于处理文本例如字符串拼接比较查找长度计算。与条码枪、上位机和通信数据处理有关。时钟指令用于读取和设置PLC时间。MC轴控指令截图中标注为EtherCAT脉冲轴输出主要用于标准运动控制例如轴使能回原点相对定位绝对定位停止读取轴状态。HC轴控指令截图中标注为脉冲输入通常与高速计数、脉冲输入等功能有关具体要结合汇川指令手册理解。定时器指令用于延时控制。例如按钮按下3秒后启动风机 气缸伸出超过5秒未到位则报警通讯指令用于通过串口、以太网等方式收发数据。十七、状态栏截图底部显示就绪 改写 行2列1状态栏用于显示软件当前是否忙碌当前是插入还是改写模式光标所在位置是否在线通信状态编译或下载状态。截图右上方还显示本地 未登录USB可以理解为当前处于本地离线编辑状态尚未登录PLC当前选择或准备使用USB连接。也就是说现在写程序不会直接改变PLC只有连接并下载后程序才会进入PLC。十八、做一个PLC项目通常要操作哪些地方不是所有区域都必须操作。一个简单项目通常按照下面的顺序进行。第一步新建工程并选择PLC型号操作区域文件 → 新建工程需要确定PLC系列PLC具体型号工程名称保存位置。例如选择Easy523第二步确认硬件配置操作区域工程管理区 → 配置根据实际硬件决定是否配置扩展I/O模拟量模块温度模块EtherCAT运动轴串口以太网。普通按钮点灯Demo如果只使用PLC本体I/O一般不需要配置复杂通信网络。第三步规划I/O地址例如现场元件PLC地址启动按钮X0停止按钮X1急停反馈X2运行指示灯Y0电磁阀Y1这一步实际是在建立现场元器件 ↔ PLC端子 ↔ 程序地址三者之间的对应关系。第四步定义变量和注释操作区域全局变量 → 变量表例如X0 → StartButton X1 → StopButton Y0 → RunLamp Y1 → SolenoidValve让程序更容易阅读和维护。第五步编写MAIN程序操作区域编程 → 程序块 → MAIN右侧工具箱中选择常开触点常闭触点输出线圈定时器比较指令数据运算指令。例如第一个Demo网络1启动按钮控制指示灯 |----[ X0 ]----------------( Y0 )----|第六步编译工程操作区域工具栏编译按钮 或菜单中的编译功能确认没有语法错误没有变量错误没有配置冲突。第七步配置电脑与PLC的连接可选方式USB以太网串口COM。第一次学习建议优先使用USB因为网络参数更少。截图显示未登录USB说明当前可以准备通过USB连接PLC。第八步登录并下载程序流程电脑连接PLC ↓ AutoShop登录PLC ↓ 下载工程 ↓ PLC切换到RUN下载前要确认设备处于安全状态尤其是真实设备上的气缸电机伺服加热器电磁阀。因为下载并运行程序后PLC输出可能立刻动作。第九步在线监控操作区域调试 → 在线监控观察按钮按下后X0是否变成ON梯形图逻辑是否导通Y0是否输出实际指示灯是否亮。这一步可以把问题分成三层现场输入有没有进入PLC PLC程序逻辑是否正确 PLC输出有没有到达现场元件第十步故障定位和修改例如按下按钮后灯不亮可以按顺序检查1. PLC监控中X0是否变化 2. X0变化后梯形图是否导通 3. Y0在监控中是否为ON 4. PLC的Y0指示灯是否亮 5. Y0端子是否输出正确电压 6. 外部接线和指示灯是否正常这正是PLC调试最核心的思维从现场输入、程序逻辑、PLC输出、外部执行元件一层一层定位。十九、初学阶段哪些地方先不用管当前使用Easy523学习基础PLC可以暂时不深入EtherCATEtherNet/IPOPC UA电子凸轮轴组设置INT中断程序FB、FC高级封装Trace高级分析字符串和矩阵指令。先集中学习以下几个区域工程管理区 → MAIN 工程管理区 → 变量表 程序编辑区 右侧工具箱 → 基本逻辑指令 右侧工具箱 → 定时器、计数器 工具栏 → 编译、下载、运行、监控 配置 → 基本模块和通信连接二十、当前最适合做的第一个项目可以用这张界面先完成一个最简单的“虚拟按钮点灯”或“实体按钮点灯”Demo输入 X0 启动按钮 输出 Y0 运行指示灯 逻辑 X0为ON时Y0为ON X0为OFF时Y0为OFF需要操作的区域只有1. 全局变量 → 变量表 2. 编程 → 程序块 → MAIN 3. 右侧工具箱或顶部梯形图工具栏 4. 编译 5. USB登录 6. 下载 7. PLC运行 8. 在线监控这一个Demo完成后就能够把整个基本开发闭环走通现场元件 ↓ PLC输入X ↓ 梯形图逻辑 ↓ PLC输出Y ↓ 现场执行元件这比一开始研究EtherCAT、电子凸轮和OPC UA更重要。因为后续所有复杂项目本质上都是在这个基本闭环上继续增加变量、程序模块、通信设备和运动轴。
返回列表