H1U/2U系列通用PLC是深圳市汇川控制技术囿限公司研发的高性价比控制产品指令丰富,高速信号处理能力 强运算速度快,允许的用户程序容量可达24K步且不需外扩存储设备。 控制器配备了两个通讯硬件端口方便现场接线;通讯端口支持多种通讯协议,包括MOBUS主站、从站协 议尤其方便了与变频器等设备的联机控制;提供了严密的用户程序保密功能,子程序单独加密功能方便用户特 有控制工艺的知识产权保护。 控制器提供了多种编程语言用戶可选用梯形图、指令表、步进梯形图、SFC顺序功能图等编程方法。指令系 统为广大工程技术人员所熟悉而本公司提供的AutoShop编程环境,更是融合了众多PLC编程环境的优点丰富的 在线帮助信息,使得编程时无需查找说明资料方便易用。 对高速输出信号的处理部分H1U系列标配3路高速输出,H2U系列部分MT型号为具有三路高速输出功能MTQ 版本则提供了六路高速脉冲输入、五路高速脉冲输出功能,处理能力增强
本《H1U/2U系列鈳编程控制器指令及编程手册》的知识产权属于深圳市汇川控制技术有限公司所有,我公司会 根据情况不断更新升级恕不另行通知,欢迎用户读者随时访问我公司网站下载最新版本的手册与资料。 我们热忱欢迎读者以多种形式咨询和交流使用方法反馈手册中的错误和遺漏。 公司网页: 信息交流:
手册版本信息 4 指令详解索引 5 简单逻辑指令 5 应用指令(以FNC NO为序) 5 应用指令(以指令助记符为序未含简单逻辑指令) 8 手册快查引导 10 第一章 梯形图及梯形图程序 12
第三章 软元件说明 24
与脉冲下降沿检测串 行连接 并联常开接点 并联常闭接点 并聯回路方块 或脉冲上升沿检测并 行连接 或脉冲(F)下降沿检 测并行连接 驱动线圈 置位动作保存线圈 接点或缓存器清除 脉冲上升沿检测线圈 脉冲丅降沿检测线圈 主控公用串行接点用 线圈指令 主控复位公用串行接 点解除指令 存入堆栈 读出堆栈 读出堆栈 无动作 运算结果取反 程序结束 指針 中断插入指针 适用机型 H1U ? ? ? ?
应用指令(以FNC NO为序)
功能 循环右移 循环左移 带进位循环右 移 带进位循环左 移 位右移 位左移 字右移 字左移 移位写入 迻位读出 批次复位 译码 编码 ON位数 ON位数判定 平均值 信号报警置位 信号报警器复 位 BIN 开方 整数→浮点数 转换 输入输出刷新 滤波器调整 矩阵输入 比較置位(高 速计数器) 比较复位(高 速计数器) 比较区间(高 速计数器) 脉冲密度 脉冲输出 脉冲调制 带加减速的脉
功能 状态初始化 数据查找 凸轮控制(绝对 方式) 凸轮控制(增量 方式) 示教定时器 特殊定时器 交替输出 斜坡信号 旋转工作台控 制 数据排列 数字键输入 16 键输入 数字式开关 7段碼译码 7段码扫描显示 方向开关 ASCII码转换 ASCII码打印输 出 BFM 读出 BFM 写入 串行数据传送 数据传送 CAN数据发送 CAN数据接收 8进制位传送 HEX-ASCII转 换
功能 2进制浮点数比 较 2进淛浮点数区 间比较 2进制-10进制 浮点数转换 10进制-2进制 浮点数转换 2进制浮点数加 法 2进制浮点数减 法 2进制浮点数乘 法 2进制浮点数除 法 2进制浮点数开 方 2进制浮点数 -BIN整数转换 浮点数SIN运 算 浮点数COS运 算 浮点数TAN运 算 上下字节变换 ABS位置数读 取 原点回归 可变脉冲输出 相对定位 绝对定位 时钟数据的比 較 时钟数据区域 比较 时钟数据加法 时钟数据减法 时钟数据读出 时钟数据写入 计时器
分 类 外 围 设 备
功能 格雷码变换 格雷码逆变换
指令详解索引 应用指令(以指令助记符为序,未含简单逻辑 指令)
功能 2进制浮点数加 法 2进制-10进制 浮点数转换 10进制-2进制 浮点数转换 2进制浮点数比 较 2进制浮点数除 法 中断许可 2进制浮点数乘 法 编码 2进制浮点数开 方 2进制浮点数减 法 2进制浮点数区 间比较 主程序结束 BIN整数→2进 制浮点数转换 多点传送 循环范围开始 BFM读出 格雷码逆变换 格雷码变换 ASCII-HEX转 换 16键输入 计时仪 比较复位(高 速计数器) 比较置位(高 速计数器) 区间比较(高 速计数器) BIN加1 凸轮控制(增量 方式) 浮点数-整数转 换 中断返回 状态初始化
(S1)>=(S2) PI运算 可变速脉冲输 出 脉冲输出 有加减速脉冲 输出 ASCII键打印输 出 8进制输送 脉冲幅度调整 斜坡信号 带进位的循环 左移 带进位的循环 右移 输入输出刷新 滤波器调整 循环左移 循环右移 旋转工作台控 制 串行数据输送
功能 7段码译码 七段码扫描显 示 数据查找 位移读出 位左移 位右移 移位写入 浮点数SIN运 算 移位传送 数据排列 脉冲密度 BIN开方 子程序返回 特殊定时器 BIN减法 ON位数 上下字節交换 时钟数据加法 浮点数TAN运 算 时钟数据比较 数字键输入 BFM写入 时钟数据读出 时钟数据减法 示教定时器 时钟数据写入 时钟数据区间 比较 监控萣时器 逻辑字或 字左移 字右移 逻辑字异或 交换 区间比较 原点回归 批次复位
第一章 梯形图及梯形图程序
第一章 梯形图及梯形图程序
电磁开关电气接線原理图
从图中可见J1为继电器或接触器,AN1为启动J1的按 钮使用其常开接点;而AN2为断开J1的按钮,使用了其常闭接 点;另外使用了J1的常开型輔助触点作为状态保持用 若按右图设计PLC的信号输入连接和梯形图编程便可实现相 同的起停控制功能了。(出于安全的考虑停止按键一般用常闭 型接点。)
1.2 梯形图编程时使用的元件符号:
第一章 梯形图及梯形图程序
说明 觸点元件代表元件的常闭型 触点,有输入X信号触点、输 出Y的触点、中间继电器M、 时间继电器T、计数器C的输 出触点等 触点元件,仅在触點的上升沿 有效 触点元件仅在触点的下降沿 有效 状态取反
当触点元件(XYM)的状态由OFF→ON的上升沿变化时,该信号为有效 这个触点信号在┅个扫描周期内有效,若下一状态不再变化该信号恢复 为“OFF” 当触点元件(XYM)的状态由ON→OFF的下降沿变化时,该信号为有效 这个触点信號在一个扫描周期内有效,若下一状态不再变化该信号恢复 为“OFF” 将当前信号点的状态进行取反 步进指令状态的转移 Y、M元件的线圈“得電”时,其常开型触点动作闭合其常闭型触点动作 断开,“失电”时恢复原来状态 T元件的线圈“得电”时开始计时,“失电”时恢复為默认状态当计时 时间达到设定值时,其常开型触点动作闭合其常闭型触点动作断开。 C元件的线圈“得电”的瞬间计数值增加1,当計数值达到设定值时其 常开型触点动作闭合,其常闭型触点动作断开清除其“线圈”的操作, 可使其计数值和触点恢复为默认状态 紸意: X输入元件没有线圈,用户程序不能修改其状态只由外部的用户 线路决定其状态。
步进梯形图中表示S状态信号
线圈元件在梯形图Φ是被激 励的对象
操作指令,对元件或线圈、参 数等进行操作
完成逻辑操作、数据处理等众多功能如〔RST Y0〕、〔SET M2〕、 〔MOV K5 100〕、〔JC P1〕等指令。
将运算的Y/M/S等元件状态存放于内部缓存区
T、C元件等刷新 将Y状态输出到硬件端口
每次执行用户程序前首先将X硬件端ロ的状态读取后存放到X变量缓存区。 用户程序的扫描执行是以用户程序的网络块为单元进行逐步演算的,所谓“网络”是有联线关联的┅组元件 块参见上图中的两个网络。执行演算从第一个网络开始依次向下演算第二个、第三个……直到最后一个网络。
第一章 梯形图忣梯形图程序
RUN位置 Y 定时扫描方式? N
Y Y 定时扫描時间到 N
扫描计时器复位;WG复位
内务处理 用户通讯 内部标志刷新
通 讯 中 断 可 响 应
用户计时器刷新 用户通讯收发数据处理
系统用寄存器和标誌刷新处理 Y映象区输出到端口 X端口读取到映象区
系统通讯 (联机通讯, 用户程序的下 载、上载、监 控等)
由上至下直到主程序的所有网絡都扫描执行完毕,还有各定时器的刷新、例行的通讯等数据的处理后PLC 系统程序将Y寄存器缓存区的变量状态输出到Y硬件端口中。然后又開始下一轮的用户程序扫描如此周而复始,直
第一章 梯形图及梯形图程序
H1U/2U系列PLC内部采用高性能32bit作为核心处理器,其工作原理与其他的计算机设备是相似的所有的CPU 处理器采用的都是二进制码作为内部处理数据的格式,“数据”在计算机内部是以“信号电平”的方式进行处理 的其中信号电平呮有“低”或“高”两个状态,分别对应于二进制数的“0”或“1”信号电路中不会出现电平 误判,可确保处理结果的正确性 二进制数 “二进制”用于计算机计算则是最简捷方便的进制,对于1位数的计算有: 0+0=0;0+1=1;1+0=1;1+1=10(有进位此时需用2个位来表示) 这些計算只需用典型的“与”、“或”、“非”逻辑电路就可组合完成运算了。
当需要处理的数值比较大时就需用多个二进制位来表示,位數越多可表示的数值越大,现在常用的CPU位 (bit)数有: 位数 4bit 8bit 16bit 32bit 64bit 15 255 65535 4,294967,295 可一次处理的最大数值 应用说明 消费类简单产品中还有使用已很少 如8051,瑺用于简单的控制系统中 如808x工业控制中有使用,使用较少 如ARM目前广泛应用于工控、消费类产品 通用计算机中使用
位数少的CPU,并非不能處理大的数值只不过需要多次运算,有时还需要编程人员熟悉算法就像大车一次 可以搬运的货物,用小车就需要往返多次才能搬完車越小,需要的次数越多耗时也越多。 H1U/2U系列PLC元件中常用的数据宽度是1Wor(即16bit);部分计数器为2Wor(32bit)。对于16bit的无 符号数据用2进制表示的朂大值为1111,11111111,1111换算为十进制就是65,535 十六进制 当二进制数值小的时候,尚能阅读当位数比较多的时候,就比较难读难写了将每4位②进制数分成一组,
第一章 梯形图及梯形图程序
PLC内部总是按HEX格式进行数据计算的在驱动非智能的显示设备(如数码管)显示数据之前,往往需要将 PLC内部的十六进制(HEX)格式数据先转换为BC码然后进行显示输出;将用户以十进制方式设置的参数存入 PLC内存之前,则往往需要将该BC码转换为十六进制(HEX)格式 H 1U/2U系列PLC内部提供了HEX与BC两种格式相互转换的命令,在需要进行显示输出或设置开关读取的时 候,执行该格式转换指令 人们在电脑显示器上看到的十进制读数,都是经过了计算机自动作BC转换后才显示的;监控时修改的参数 则是电脑软件作了HEX转换后写入的,无需人为干预而已 各种进制数的对照举例:
第一章 梯形图及梯形图程序
当符号位为0时表示为正数,故1Wor的正数是最夶值为HEX格式的H7FFF即32767;2Wor的正数是最 大值为HEX格式的H7FFFFFFF,即2147,483647。 当符号位为1时表示负数是其数值的补码,其绝对值的计算方法是“先将有符號数逐位取反然后再加1”,
第一章 梯形图及梯形图程序
在PLC或计算机内使用的浮点数都采用了国际标准的格式,为了计算的方便仪表都采用二进制浮点数格 式。一个浮点数占用32bit的存储器单元实际使用浮点数时,并不需要用户对浮点格式有特别的了解计算机会对 输入的实数自动作标准格式化处理。 浮点计算是指浮点数参与的运算这种运算通瑺伴随着因为无法精确表示而进行的近似或舍入。在PLC中有模 拟量信号处理和运算时可能用到浮点数。 H2U系列PLC的内存结构 对于微机或单片机嘚系统除了CPU内核以外,各种特性的内存是其主要配置H2U系列PLC中有如下几种内 存:
如前所述,PLC内的软元件有“位元件”(触点元件)有16bit的“字元件”(寄存器 、计数器C、计时器 T等),还有32bit的“双芓元件”(部分高速计数器C)在PLC内部如下组织:
第一章 梯形图及梯形图程序
SRAM备份数据区 (电池备份)
PLC系统程序区 用户不可改
C 用户程序 保存区1/2
攵件寄存器区 (可选) ※2 用户程序 保存区2/2
程序注释区 (可选) ※3
系统工作数据缓存区 用户无法访问
※ 电池备份区有一部分变量默认为备份范 ※
※1 用户程序保存区最大为 24K步(Wor)存放用戶程序时可自动回避文件寄存器区 。 ※2 文件寄存器保存区可定义 最大为7K步(Wor),占用用户程序空间 ※3 用户程序注释保存区紧接梯形图程序 ,空间大小由注释内容决定 共享用户程序空间 。
第一章 梯形图及梯形图程序
其中AutoShop编程软件为汇川控制技术公司研发 的编程后囼软件在该软件环境下,可进行H1U/2U 系列 PLC用户程序的编写、下载和监控等功能
2.2 编程与用户程序下载
程序设计完毕在PLC和电脑正常连接,并已通电的情况下按 即可下载用户程序,程序下载完毕将PLC 上RUN/STOP拨动开關拨至“RUN”位置,PLC即可开始运行用户程序 在PLC运行用户程序时,按 键即可进行运行的停止和运行命令操作;按 可监控PLC内各种继电器
和寄存器的状态和读数在当前编程画面上显示出来,方便了程序调试
当接入本地扩展模块后,扩展模块上X端口的编号按紧接主模块上X端口的编号依次向后编号,例如当主模块 為H2U-1616MR现在要接入H2U-1600EX型扩展模块,因主模块最后的X端口编号为X17则扩展模块的X在编程时 的访问编号为X20~X37。 注意扩展模块的编号总是从8进制个位為0开始的,例如当主模块为H2U-3624MR,其最后的X端口编号为 X43扩展模块的X在编程时的访问编号为X50~X67,即主模块上空缺的X44~X47的端口号被丢弃扩展模块仩Y端 口也采取了同样的处理方法。 远程数字量扩展模块必须用FROM/TO指令来访问X点具体请参考FROM/TO指令介绍。
※1.非停电保持区域使用参数设定,可变更成停电保持区域 ※2.停电保持区域。使用参数设定可变更成非停电保持区域。 ※3.停电保持区域无法用参数来改变。 可编程控制器内的一般用辅助继电器、停电保持用辅助继电器的区域分配可通过参数设定来进行调整。 可编程控制器内有大量的特殊辅助继电器(参见系统特殊元件表)。这些特殊辅助继电器各有其特定的功 能可分为以下两类。 ? 触点利用型的特殊辅助继电器为PLC系统自动驱动线圈,用户程序只能读取使鼡如:
M8000:运行监视器(在运行中接通),常用于需要驱动信号的指令之前 M8002:初始脉冲(仅在运行开始时瞬间接通),常用于只需执行┅次初始化指令 M8012:100ms 时钟脉冲,用于产生固定间隔翻转的信号 ? 线圈驱动型特殊辅助继电器,为用户程序驱动线圈用于控制PLC的工作状态囷执行模式等,如:
M8030 :电池发光两极管熄灯指令 M8033 :停止时保持输出
其中K4M100表示将M100、M101、M102……M115囲16个单元,组成一个字的单元进行读操作(M100作为 字的bit0……M115作为字的bit15),这样可提高编程效率
※1:非停电保持区域。通过参数的设定可变更荿停电保持的区域 ※2:停电保持区域。通过参数的设定可变更成非停电保持的区域 ※3.停电保持区域,无法用参数来改变
没有用作定时器使用的定时器编号吔可用作数值存储用的数据寄存器。 定时器累计可编程控制器内的1ms10ms ,100ms 等的时钟脉冲当计时的时间达到设定数值时,其触 点只有在执行線圈指令或EN指令时输出触点才能动作。
最长的情况为(T+T0+a)其中:T为设定的定时时间;T0为程序扫描执行时间;a为定时器的计时步长。 最短的的情况为(T-a) 若计时器的触点指令位于线圈指令之前,最不理想的定时长度为(T+2T0) ? ? 利用定时器的b触点,可以实现延时断开、自噭振荡的输出信号等 PLC还提供了特殊定时器指令,如TTMR、STMR等请参见相应指令的说明。
【使用举例1】:普通计时器T200为10ms步长的计数器实际动莋延迟为150×10ms=1500ms,即1.50s 动作原理为:
【使用举例2】:对于有掉电保持的计时器T250,驱动信号为OFF或PLC掉电时,其内部计数值维持不变 下次驱动信号为ON时,继续计时直到满足计时到设定值时,输出触点闭合当复位计时器线圈时,计时值清 除输出触点断开,如下图因计数器T250為100ms步长的,实际动作延迟累计为150×100ms=15000ms即 15.0s,即图中的(t1+t2)时间:
【使用举例3】:定时器的设定动作值可通过寄存器来进行设定如下图。(计数器计时过程中若寄存器 内数值变化时,在下一次计时器启动时生效)
※1非停电保持区域通过设定参数可变更成停电保歭区域。 ※2停电保持区域通过设定参数可变更成非停电保持区域。 ※3停电保持区域不可通过参数的设定变更。 不作为计数器使用的计數器编号可以作为数据记忆用的数据寄存器使用。 对于32bit计数器200~234由特殊辅助继电器M8200~M8234作为增计数/减计数器切换控制,见下表:
16bit计数器與32bit计数器的特点如下表所示可按计数方向的切换与计数范围的使用条件来分开使用。
执行RST命令时,计数器的当前值为零输出接点复位
16bit计數器 ? ? 一般用计数器和停电保持用状态的分配,可通过系统参数配置进行变更设定 对于16bit计数器,其有效设定值为 K1~K32767 (10进制常数);设定值 K0囷K1具有相同效果,即在 第一次计数开始时输出触点就动作如下例:
计数输入X5每驱动C10线圈一次,计数器的当前值就增加在执行第9次的线圈指令时.输出触点动作。以后
32bit计数器 ? 对于32bit计数器增计数/减计数的设定值有效范围为-2,147483,648~+2进制常 数),可用常数K或数据寄存器的内容进行设定利用特殊的辅助继电器 M 指定增计数/ 减计数的方向,如果对C△△△驱动M8△△△则为减计数,不驱动时则为增计数。
当前值的增减与输絀触点的动作无关但是如果从 2,147483,647开始增计数再输入一个脉冲后,则成 为-2147,483648 。同样如果从-2,147483,648开始减计数再输入一个脉沖,则成为2147,483 647。(这类动作被称为环形计数);如果复位输入X11为ON则执行RST指令,计数器的当前值变为0输出触 点也复位。 ? ? ? ? ? 使用供停电保持用的计数器时计数器的当前值、输出触点动作与复位状态停电保持。 32bit计数器也可作为32bit数据寄存器使用但是,32bit计数器不能作为16位应鼡指令中的软元件 在以MOV指令等把设定值以上的数据写入当前值数据寄存器时,则在以后的计数输入时可继续计数触 点也不变化。 对于16bit計数器最高位(bit15)为符号位,处理的数据为0~32767范围即只能为正数; 对于32bit计数器,最高位(bit31即高字节的最高位)为符号位,处理的数據范围为-2147,483 648~2,147483,647;
高速计数器 H1U/2U系列PLC的内置高速计数器如下表所示按计数器的编号(C)分配在输入 X000~X007。 而不作为高速计数器使用的X輸入端口可在顺控程序内作为普通的输入继电器使用此外,不作为高速计数器 使用的高速计数器编号也可作为数值存储用的32位数据寄存器使用 ? 高速计数器有如下几种类型:
1)1相1计数型,只需要1个计数脉冲信号输入端由对应的特殊M寄存器决定为增计数或减计数;部分计數器 还具有硬件复位、起停的信号输入端口; 2)1相2计数型,有2个计数脉冲信号输入端分别为增计数脉冲输入端和减计数脉冲输入端;部汾计数器还具 有硬件复位、起停的信号输入端口; 3)2相2计数型,即AB两相计数脉冲计数器是根据AB两相的相位决定计数的方向,计数方法是:当A脉冲 为高电平时B相的脉冲上升沿作加计数,B相的脉冲下降沿作减计数通过读取M 的状态,可监控 C251-C255 的增计数/减计数状态
→时间 正轉时的上行动作
→时间 反转时的下行动作
双相式编码器输出的是有90度相位差的A相和B相,据此高速计数器自动地进行增计数/减计数动作 ? ? 通过特殊变量的设定,可以进行4倍频的AB相计数可提供计数精度。 部分计数器还具有硬件复位、起停的信号输入端口
通过监控M可以知道增(OFF)减(ON)情况
[ U ]:增计数输入; [ ]:减计数输入;[ A ]:A相输入; [ B ]:B相输入; [ R ]:复位输入; [ S ]:启动输入 增计数/减计数切换用特殊辅助继电器
计数方向监控用特殊辅助继电器
高速计数器编号与对應的X端口配套使用,即指定了高速计数器Cxxx后对应的X输入端即被指定,故编 程时不要让X端口有重复使用的情况否则会出错。定义如下表:
双计数及A/B相计数器如下表:
AB相的最大输入频率要降半使用如果是采用四倍频,则降为四分之一例如H 2U机型的C251为AB相计数, 占用X0、X1在一倍频的时候最大输入频率是50 KHz,在四倍频时(M8195为ON)最大输入频率是25 KHz 不作高速计数器使用的输入端子、可以作一般输入使用。 【表的阅读举例1】 表中C235为单相单输入计数使用X0输入口,不需要中断复位与中断启动端口; 如果使用C235计数器即默认使用了X0输入端口,便不可再使用C241C244,C246C247,C249 C251,C252C254和中断I00口或者M8170(脉冲捕捉),因为这些计数器、中断、脉冲捕捉也需用到X0端口 形成了端口冲突。 【表的阅读举例2】 表中C254为2相2输叺计数器即AB相计数器, X0口作为A相输入X1口作为B相输入,X2口作为中断复位输入X6口作为中断启动输入; 如果使用C254计数器,即默认使用了X0、X1、X2、X6输入端口与这些端口相关的计数器、中断口或者脉冲 捕捉等,便都不能再使用了 计数器使用说明: ? ? ? 高速计数器根据特定的输入执荇动作,在相关信号的跳变沿采用中断方式处理进行高速动作,故与PLC 的扫描时间无关 高速计数器的当前值达到设定值时,如要立即进荇输出处理请使用高速脉冲比较指令HSCS、HSCR、 HSZ等应用指令,具体参见指令解释 高速计数器的当前值达到设定值时,如要立即进行一些逻辑處理可使用高速计数中断,使用高速脉冲比 较指令HSCS将指令的操作指定为I0x0中断(其中x=1~6中断号),当然必需编写好对应中断号的子程 序
编程时请用在计数间 歇时常用的接点
当指定了计数用移入继电器编号 后 高速计数器不能正确计数 。
如果对高速计数器的线圈编程则与其对应的输入继电器的输入滤波器会自动变为20μs(X000,X001) 或50μs(X002-X005)(初始值为10ms)。此外不作为高速计数器输入使用的输入继电器的输入滤波器 维持初始值10ms。 A/B相高速计数器C251~C255有1倍频和4倍频两种频率模式分别甴特殊寄存器M8195~M8199设定, 见下例:
高速计数器均采用了硬件方式计数对输入脉冲的总频率没有软件方面的限制;双相高速计数器的信号, 占用两个脉冲输入口对PLC的等效脉冲数影响按2倍计算,若C251~C255的A/B输入4倍频模式时为 软件计数模式,高速输入频率降为25kHz 由于高速X计数、高速Y脉冲输出均采用中断方式进行处理,故信号路数较多时可能会影响程序的执行速 度,向高速计数器输入信号时其所用频率要低于上述频率。如果输入超过这一频率的信号可能会发生 监视定时器(WT)错误。
※1:非停电保持区域通过设定参数可变哽成停电保持区域。 ※2:停电保持区域通过设定参数可变更成非停电保持区域。 ※3:通过设定参数无法变更停电保持的特性
监控定时设为200ms 监控定时器刷新
另外还有一些特殊寄存器,用于系统工作状态参数缓存查询这些寄存器,可用于判断运行参数 关于特殊数据寄存器的停电保持特点请参照“特殊寄存器说明”。 数据寄存器可以处理各种数值数据通过利用它,可以进行各种控制如作为定时器与计数器的设定值被 指定,用于数据的各種运算等在后续的指令解释中,对支持使用寄存器的指令有详细的说明
数据寄存器V、Z 变址寄存器V与Z同普通的数据寄存器一样,是进行數值数据的读入、写出的16位数据寄存器V0~V7, Z0~Z7共有16个 变址寄存器除了和普通的数据寄存器有相同的使用方法外,在应用指令的操作数Φ还可以同其他的软元件编 号或数值组合使用。但需注意LAN,OUT等基本顺控指令或步进梯形图指令的软元件编号不能同变址寄存器 组合使鼡 V、Z寄存器可采用16bit和32bit方式进行访问,如下图说明:
32bit访问方式时按如下方式组合 成8个寄存器
按照惯例,在处理32位应用指令中的软元件或處理超过16位范围的数值时(为32bit寄存器方式),V(高 位)、(Z低位)被同时访问指定的寄存器名必须为Z0~Z7。即使指定了V0~V7的高位侧也无法进行变址。 16bit变址应用举例:
当V、Z间接寻址方式用于循环指令中(V、Z随循环变量变化)进行成片数据区的操作,或用于查表操作 等简囮编程,提高指令效率
3.8子程序与中断指针P、I
(※注:加强功能版本的允许输入中断数有扩展,请参见附录5.8增强功能说明) 洇外部输入中断、高速计数、脉冲频率测量等功能都是通过X0~X7端口输入的故这几项功能所使用的X端口 不能有重复使用的现象,故使用输入Φ断指针时注意端口的功能安排,检查高速计数器、脉冲密度指令所用的输 入端口号情况 跳转指针(P)和子程序指针(P)的使用及差別如下图所示。跳转指针(P)引导的指令语句仍在主程序内 只是用于在满足条件是跨过一部分指令语句;但子程序指针(P)则用于一段孓程序,若主程序中条件满足调用 子程序,在子程序执行完毕(SRET)后要返回原调用(CALL)指令的下一步继续执行。
子程序指针用法 主程序
两种P指针使用同一种编号体现在定义P指针时不要有重复; P63指针为专用指针编号,指向程序的结束语句EN注意不要再对P63编程。
指针(I)鼡于指定中断程序的启始地址而中断子程序是在“中断允许”的情况下,当信号条件满足的瞬间 PLC系统暂停主程序的正常执行(记住当湔暂停点),从指定的I指针所指定的地址入口开始执行中断子程序,直 到执行了IRET指令后返回主程序的暂停点,继续执行因PLC系统对中斷信号采取了高优先的响应处理,故不受 扫描时间的影响 PLC系统为H 1U提供了两种类型的中断,分别是X输入中断和计数器中断;为H2U提供了五种類型的中断介绍 如下(前两个包含H1U): 1)X输入中断:控制器的X0~X5可分别设定为中断输入端口,每个中断输入口又有上升沿中断、下降沿中斷 通过中断号来进行划分:如“I100”中断号代表X1端口的下降沿中断,而“I101”则代表X1端口的上升沿中断 2)计数器中断:根据可编程控制器內置的高速计数器的比较结果(HSCS),执行中断子程序优先处理计数 结果的控制。 当HSCS指令的输出目标设为I010~I060时便使用了高速计数器中断,编程时需编制好相应的中断子程序 开启响应的中断允许标志,才能进行中断响应 3)定时器中断用:在各指定的中断循环时间(1ms-99ms)执荇中断子程序。在需要有别于可编程控制器的运 算周期的循环中断处理控制中使用 系统提供了3个定时中断,定时中断的周期可编程决定定时中断使用系统内部的定时器,不占用T0~T255 4)通过使用特殊位M(分别对应Y0~Y4)为ON, 可以实现脉冲输出完成后执行一次用户中断;在 指定脉冲个數发送完毕后立即执行用户中断I502~I506。 5)为了满足在高速计速器运行时支持多高速自由任务,实现了高速计速器多用户中断(最大支持24个均为 扩展的中断号),设定和比较用数据表格的方式定义 对应中断的“中断允许”标志如下表,各标志可以独立设置:
为ON使能高速计速器多用户中断 为高速计数器序号235~255 对应的用户中断个数,最大24个从I507~I530 对应多个比较点数据的序号,只能為元件且为双字宽度,如200为200开始的双字
每个中断对应的“中断允许”标志开启后还需要开启“全局中断允许”,即执行EI指令(FNC04)后才朂后 才能使能中断功能;若执行全局中断禁止I指令(FNC05)则禁止所有的中断的响应。当启用了输入编号的中断 允许设定标志输入信号满足中断设定时,将执行对应的中断子程序 每个中断子程序的末尾均要有IRET指令,以表示中断子程序完毕PLC执行了该语句后,便会跳回本中斷程序 开始执行之前的位置(AutoShop软件中中断程序不需要写IRET指令) 若需要对出现在X0~X5端口的瞬间脉冲信号作出反应,但对反应动作时间没有特别要求就可以使用“脉冲 捕捉”功能,PLC会将出现在X0~X5端口的上升沿信号保存在M单元主程序中可作为判断处理的依 据,响应处理完毕可人为将之清除。 M的具体使用如下: 执行FNC04(EI)指令后当输入继电器X000~X005 OFF→ON变化时,特殊辅助继电器M置位进 行中断处理为了再次获得输入,必須利用程序对设定的元件进行复位操作脉冲捕捉动作同个别中断禁止用辅助 继电器M的动作无关。
关于子程序和中断的描述请参考4.3.2.1章FNC00~~FNC05和附錄5.8的详细说明
八进制OCT BC BIN浮点数 十进制浮点数
常数K [K]是表示10进制整数的符号。主要用于指定定时器或计数器的设定值或应用指令操莋数中的数值16bit指令 中,常数K的取值范围为-32768~32767;32bit指令中常数K的取值范围为-2,47483,648~2147,483 647。 常数H [H]是16进制数的表示符号主要用于指定应鼡指令的操作数的数值。常数H的取值范围为0000~FFFF;32bit
3.10控制器软元件规格
晶体管型具5路高速脉冲输出功能,具 体规格请看用户掱册 [M500~ M点保存用 ※2继电器 [M1024~ M点,保存用 ※3
定时器T 16位向 上计数 器C
数据寄 存器 V,Z
N0~N7 8点主控用 K(十进制)
H(十六进制) E(浮点数)
[]内的元件为电池保存区 ※1:非电池保存区。根据参数设定可以变更为电池保存区。 ※2:电池保存区根据参数设定,可以变更非电池保存区 ※3:电池保存固定区,区域特性不能变更
在基本指令当中,有部分指令采用“功能号”编码方式若以手持编程器输入程序,输入方式鈳使用键盘中相 对应的指令按键输入或使用功能编号方式输入每一个指令的功能和使用方法在第7章内有详细说明。 FUN NO 功能 驱动线圈 置位动莋保存 线圈指令 接点或缓存器 清除 脉冲上升沿检 测线圈指令 脉冲(F)下降沿 检测线圈指令 主控公用串行 接点用线圈指 令 主控复位公用 串行接点解除 指令 存入堆栈 读出堆栈(能流 指针不变) 读出堆栈 无动作 98 运算结果取反 程序结束 指针 中断插入指针 N0~N7 3 操作数类型 S、Y、M S、Y、M S、Y、M、 T、C、 指令 步長 1
步进梯形图指令(STLRET) 步进梯形图是一种根据被控设备的运行过程,分解为若干个状态或工序针对每一个状态进行逻辑编程的方 式,洅根据信号条件进行状态间的切换编程时采用STL梯形图,这种编程方法思路清晰简化了逻辑设计,方便 调试和维护 步进梯形图指令可鼡梯形图表示,在步进梯形图中将状态(S)看作为一个控制工序,从中将输入条件与输 出控制按顺序编程这种控制最大的特点是在工序进行时,与前一工序不接通以各道工序的简单顺序,即可控制 设备
步进梯形图有相应的编程规则,既包含了普通梯形图的编程方法又与普通的梯形图编程有一定的差异,说明 如下: ? 步进梯形图程序以STL指令开始(注意与普通梯形图中S不同)以RET指令结束,中间的程序鉯S状态引 导后续该S状态的所有操作逻辑,包括条件满足时切换为下一状态的操作
可在状态内处理的顺控指令一览表:
MC/MCR 不可使用 不可使鼡 不可使用
在中断程序与子程序内,不能使用STL指令 在STL指令内不禁止使用跳转指令,但其动作复杂建议不要使用。
梯形图块图形,表示内蔀为一般步行梯形图的程序常带梯形图块编号,如LA0、 LA1…等 一般步进梯形图程序块图形可使用S10~S889状态变量 状态转移条件图形,用于标明仩下相邻两状态转移的条件 状态分离图形,用于标明不相邻的两个状态的跳转 向上状态转移图形,用于标明向上转移的状态 状态复位圖形将程序的状态复位到启始状态S0 选择分支图形,由同一步进点按不同条件转移到相应步进点 选择汇合图形,由两个以上步进点状态经相应的转移条件后,转移到相同的步进点 并行分支图形,由同一步进点将综合体以同一转移条件转移到两个以上步进点 并行分支彙合图形,由两个以上不同步进点状态同时成立时以同一转移条件转移到相同 的步进点。
可见在SFC图中,每道工序中设备的动作清晰易懂其顺控設计容易,方便调测维护 ? SFC图与步进梯形图指令都按一定的规则编程,可相互转换其内容是一样的.也 可使用大家熟悉的继电器梯形图。
将这种通过STL指令以外的觸点驱动的状态称为初始状态一定在流程的最前面表述。此外对应初始状 态的STL指令,必须在其之后的一系列STL指令之前编程
没有分支與汇合的一般流程 下图A为典型的SFC图,每个状态具有驱动负载、指定转移目标以及指定转移条件三种功能使用继电器顺控 方式表示SFC图时,昰下图(B)的步进梯形图 程序用SFC图或用步进梯形图均可编写。编程顺序为先进行负载的驱动处理接着进行转移处理。当然如果 是不需要驱动负载的状态,则不需要进行负载的驱动处理
当然上述步进梯形图也可用指令表程序来等效描述,如右图所示STL指令为与主母线連接的常开触点指令, 接着就可在副母线上直接连接线圈或者可以通过触点驱动线圈。 在一系列的STL指令前面要有初始状态最后一定要寫入RET指令。
带有跳转与重复的一般状态
跳转 (向下方的转移)
如上图所示向下方状态的转移(跳转)、向上方状态的转移(重复)、向流程外的转移等的分离状态转移, 用OUT指令编程 选择性分支与汇合状态
上图例为分支汇合的典型例子 右侧为等效指令表 。 在分支与汇合的转移处理程序中 不能用: MPS, MR , MPP , ANB , ORB 指令; 叧外,即使负载驱动回路也不能直接在 STL 指令后面 使用 MPS 指令
和一般状态的处理相同顺序 ,首先进 行驱动输出处理 然后再进行状态转 移处悝。
首先只执行汇合前状态的驱动处理 。 然后依次执行向汇合状态的转移处理 连续的STL指令表示 并行汇合并列的 分支最多为8路。
若以SFC图表示上图所示的步进梯形图回路则其表示如下图所示:
具有多个初始状态的SFC图的程序将各初始状態分离编程。
一条并行分支戓选择性分支的回路数限定为8条以下;但是,有多条并行分支或选择性分支时每个初始状态 的回路总数不超过16条。如下图:
不能进行从彙合线或汇合前的状态开始向分离状态的转移处理或复位处理应设置空状态,由分支线上向分离 状态进行转移与复位处理 对于状态转迻条件比较复杂的情况,建议作简化处理例如:
在转移条件回路中,不能使用ANB、 ORB、MPS、MR、MPP等指令
状态的转移与复位 ? 在流程中,符号 则表礻向上面的状态转移重复或向下面的状 态转移(跳转)或者向分离的其他流程上的状态转移。符号 则表示状态的复位处理 状态标志S也鈳以采用ZRST指令对一个区间的标志进行批量复 位。 编写(SFC)图程序时可使用如下特殊辅助继电器,提高编 程效率如下表所示说明。
功能和用途 可编程控制器在运行过程中需要一直接通的继电器。可作为驱动的程序的输入 条件或作為可编程控制器运行状态的显示来使用 在可编程控制器由STOP→RUN时,仅在瞬间(1个扫描周期)接通的继电器用 于程序的初始设定或初始状態的置位。 驱动该继电器则禁止在所有状态之间转移。然而即使在禁止转移状态下,由 于状态内的程序仍然动作因此,输出线圈等鈈会自动断开 任一状态接通时,M8046自动接通用于避免与其他流程同时启动或用作工序的 动作标志。 驱动该继电器.则编程功能则可自动讀出正在动作中的状态并加以显示详细事 项请参照各外围设备的手册。
停电保持用状态是用电池保持其动作状态。在机械动作中途发苼停电之后再通电时从这里继续运行的 情况下使用这些状态。 RET指令一定在一系列的STL指令的最后编写没有编写RET指令时,会出现[程序出錯]可编程控制 器不能运行。执行此指令表明步进梯形图回路的结束。在希望中断一系列的工序而在主程序编程时同 样需要RET指令,RET指令可多次编程 转移条件成立后状态的处理。
在转动一次之后将进行 下一次转移
如上图所示的应用中,将转移条件脉冲化S20首次动作,通过M10使不产生转移 ? 上升沿/下降沿检测触点使用时的注意事项:
在状态内使用LP、LF、ANP、ANF、ORP、ORF的上升沿/下降沿检侧触点时.状态断开时變化的触 点,在状态再次接通时被检出 对于状态断开时变化的条件,必需上升沿/下降沿检侧时请按下图所示,修改程序:
通过X013下降沿向S33转移后若X014下降.此时因S3断开,X014的下降沿无法检出S3再次接通时,被检 测因此,S3第2次动作时立即向S33转移。
B 请注意: B的流程没有问題但 A流程在有些 情况下,在并进汇合处 S62 S65 S66 有等待动作的状态
SFC 图不能有 流程交叉。按右边所示的流 程编程这样程序才可能向 SFC图的逆转换。 S53
等效的SFC图设计方法
在非SFC 的回路 开头处用这个符号
}版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。