首页资源分类应用技术工业控制 > 欧姆龙编程手册

欧姆龙编程手册

已有 445110个资源

下载专区

上传者其他资源

    文档信息举报收藏

    标    签:欧姆龙

    分    享:

    文档简介

    1234543431237544345

    文档预览

    SYSMAC CP 系列 CP1H CPU 单元 CP1H-X40D□-□ CP1H-XA40D□-□ CP1H-Y20DT-D CP1L CPU 单元 CP1L-L14D□-□ CP1L-L20D□-□ CP1L-M30D□-□ CP1L-M40D□-□ 编程手册 前言 前言 承蒙购买 SYSMAC CP 系列可编程控制器 CP1H/CP1L,在此向您深表谢意。 SYSMAC CP1H/CP1L 是在本公司卓越的控制技术和丰富经验的基础上开发的一体式高 功能可编程控制器。 ● CP 系列的定义 本手册所涉及的「CP 系列」是 CP1H 及 CP1L CPU 单元的总称。 CP 系列采用与 CS/CJ 系列基本相同的结构进行设计。CP1H CPU 单元可使用 CJ 系列的 高功能 I/O 单元及 CPU 高功能单元。但是,不能使用 CJ 系列基本 I/O 单元。 CP1H 及 CP1L CPU 单元增设 I/O 时可使用 CP 系列或 CPM1A 系列扩展 I/O 单元。此外, I/O 通道与 CPM1A/CPM2A 系列一样,可以通过输入和输出分配到固定的区域。 CS/CJ/CP 系列 CS 系列 CS1-H CPU 单元 CS1H-CPU□□H CS1G-CPU□□H CS1 CPU 单元 CS1H-CPU□□(-V1) CS1G-CPU□□(-V1) CS1D CPU 单元 CS1D(CPU 二重化系统用) CPU 单元 CS1D-CPU□□H CS1D(CPU 单独系统用) CPU 单元 CS1D-CPU□□S CS1D 程序 CPU 单元 CS1D-CPU□□P CS 系列基本 I/O 单元 CS 系列高功能 I/O 单元 CS 系列 CPU 高功能单元 CS 系列电源单元 注:CS1D CPU 单元必须使用 CS1D 专用品 CJ 系列 CJ1-H CPU 单元 CJ1H-CPU□□H CJ1G-CPU□□H CJ1G -CPU□□P (电路 CPU 单元) CJ1M CPU 单元 CJ1M-CPU□□ CJ1 CPU 单元 CJ1G-CPU□□ CJ 系列基本 I/O 单元 CJ 系列高功能 I/O 单元 CJ 系列 CPU 高功能单元 CJ 系列电源单元 CP 系列 CP1H CPU 单元 CP1H-X□□□□-□ CP1H-XA□□□□-□ CP1H-Y□□□□-□ CP1L CPU 单元 CP1L-L14D□□ CP1L-L20D□□ CP1L-M30D□□ CP1L-M40D□□ CP 系列扩展 I/O 单元 CP 系列扩展单元 CPM1A 系列扩展 I/O 单元 CPM1A 系列扩展单元 CJ 系列高功能 I/O 单元※ CJ 系列 CPU 高功能单元※ ※可使用 CP1H CPU 单元 2 前言 关于「可编程控制器」的符号 本手册中为了将「可编程控制器」的简称与计算机(Personal Computer)进行区别,称 之为「PLC」;但是「PC」可以有限定地用作以前的功能名称或软件的菜单名称。 此外,计算机(Personal Computer)不使用简称,而用[计算机]来表示。 适合的读者群 本手册适合以下人员使用。 具有电气知识(电气专业技术员或具有同等知识)的人员 ・FA 设备的引进担当人员 ・FA 系统的设计人员 ・FA 现场管理人员 请注意 本手册 CP 系列可编程控制器记载了必要的使用信息。在使用之前请认真阅读本手册, 并充分理解。阅读之后请认真保管本手册,并始终置于随手可及之处。 关于「使用时的承诺事项」 1. 保证内容 ①保证期 本公司产品的保证期为购买本产品后或送到指定地点后的 1 年内。 ②保证范围 在上述保证期内,由于本公司的原因导致本产品出现故障时,在您所购买产 品的地点免费提供代用产品,并对出现故障的产品进行修理。 但是,因为以下原因造成的故障,不属于保证范围之内。 a) 未按照产品样本或操作说明书等资料中所记载的条件·环境·操作方法使用 b) 本公司产品之外的原因 c) 非本公司进行的改造或修理 d) 未按本公司产品所规定的使用方法进行使用 e) 从本公司当时的科学・技术水平所无法预计到的情况 f) 自然灾害等其非本公司所承担责任的场合 此外,上述的保证只仅限于对本公司单体产品的保证,因此由于本公司产品的故障所 引发的其它损害不在保证对象范围内。 2. 责任的限制范围 ①对于由本公司产品引起并产生的特别损害、间接损害或其它消极损害,本公司一概不 负责任。 ②对于可以设计程序的本公司产品,由本公司之外的人员进行的编程及由此造成的后 果,本公司概不负责。 3 前言 3. 符合用途的条件 ①当本公司产品和其它产品进行组合使用时,请务必确保符合必要的标准・法规或规则。 另外,客户必须确保其使用的系统、机械、装置符合于本公司产品。如果不进行上述 确认,本公司不承担有关本公司产品符合性方面的责任。 ② 当产品用于以下用途时,请在与本公司营业人员协商的基础上,在按照设计书等资料 进行确认的同时,产品使用时对额定值・性能留有充分的余量,制定相应的安全对策 以备突然发生故障时,用安全电路要使危险降到最低。 a) 室外使用、在可能受到潜在的化学污染或电气损害的情况下使用或在产品样本・ 操作说明书等中所未记载的条件和环境下使用。 b) 必须符合原子能控制设备、焚烧设备、铁道・航空・车辆设备、医疗机械、娱乐 机械、安全单元以及行政机关和个别行业的规则的设备 c) 危及到生命和财产的系统・机械・单元 d) 煤气、自来水、电力供给系统和 24 小时连续运行系统等需要高可靠性的设备。 e) 根据上述 a)~ d)的其他需要高安全性的用途 ③当本公司产品用于会给生命和财产带来重大危险的用途时,应当通过设计使系统整体 可以探知危险并根据冗余设计确保必要的安全性。 根据本公司产品的整体使用目的和 用途,事先必须确认配电・设置是否合适。 ④在产品样本等资料中所记载的应用事例仅作为参考,必须在对设备・单元的功能和安 全性进行确认的基础上使用。 ⑤为了防止因为不正确使用本公司产品而给客户及第三者造成意外伤害,请客户务必在 完全理解的基础上严格遵守使用禁止事项及注意事项。 4. 设计变更 产品样本・操作说明书等处所记载的产品规格及附属品因为改善或其它原因有可能进行 必要的变更,请在与本公司营业人员进行协商的基础上,确认本公司产品的实际规格。 5. 服务范围 本产品的价格不包括派遣技术人员等的服务费用。 客户如果有任何要求,请与本公司营业人员联系。 6. 使用范围 上述内容以在日本国内使用为前提。 关于在国外的使用 当出口(或提供给非居住者)本产品中属于外汇及外国贸易管理法所规定的出口许可、 认可对象货物(或技术)范围的产品时,必须有以同法为基准的出口许可、认可(物品 交易许可)。 4 关于 CP 系列的「单元版本」 关于 CP 系列的「单元版本」 什么是单元版本 在 SYSMAC CP 系列中,为了管理由于版本升级等引起的 CPU 单元配置功能的差异,引 入了「单元版本」这个概念。 1)产品中的符号 作为按照单元版本进行管理的对象产品,单元版本以「Ver.□.□」的格式,记载在铭牌 上的 Lot No.右侧。 产品的铭牌 CP 系列 CPU 单元 CP1H-XA40DR-A CPU UNIT Lot No. 28705 0000 Ver.1.0 OMRON Corporation MADE IN JAPAN Lot No. 表示单元版本 (例如:单元 Ver.1.0) 2)通过支持软件进行确认的方法 CP 系列 CP1H CPU 单元与 CP1L CPU 单元,通过 CX-Programmer 进行确认时存在差异。 ● CP1H CPU 单元时 CP1H 对应于 CX-Programmer Ver.6.1*以上。 可通过以下任一种方法来确认单元版本。 a)通过[PLC 信息]进行确认的方法 b)通过[单元生产信息]进行确认的方法 *: 在 CX-Programmer Ver.6.1 以前的版本中,无法选到 CP1H CPU 单元。 ● CP1L CPU 单元时 CP1L 对应于 CX-Programmer Ver.7.1*以上。 通过[PLC 信息]确认单元版本。不可通过[单元生产信息]进行确认。 *: 在 CX-Programmer Ver.7.1 以前的版本中,无法选到 CP1L CPU 单元。 ■ 通过[PLC 信息]进行确认 ● 已知 PLC 机种以及 CPU 型号时: 选择[PLC 机种变更]对话框,进行联机连接,然后请选择[PLC]菜单的[编辑]| [PLC 信息]。 5 关于 CP 系列的「单元版本」 ・通过[PLC 机种变更]对话框,然后选择「PLC 机种」。 CP1H 的选择示例 CP1L 的选择示例 ・点击对话框中的「设定」按钮,打开[PLC 机种设定[CP1L]下拉菜单]、在「CPU 型号」中选择 M/L 型。 CP1H 的选择示例 6 CP1L 的选择示例 关于 CP 系列的「单元版本」 ・联机连接时,请选择[PLC]菜单的[编辑]|[PLC 信息]。 ・显示以下[PLC 信息]对话框。 CP1H 的显示示例 CP1L 的显示示例 7 关于 CP 系列的「单元版本」 请确认联机连接状态下的 CPU 单元的单元版本。 ● PLC 机种及 CPU 型号不明时 串行连接下只可进行直接连接操作。 在[PLC]菜单中选择连接端口,再选择[自动联机连接],进行联机连接,然后请选 择[PLC]菜单的[编辑]|[PLC 信息]。 ・显示[PLC 信息]对话框。 请确认联机连接状态下的 CPU 单元的单元版本。 ■ 通过[单元生产信息]进行确认的方法(仅 CP1H) 1 在 I/O 表窗口中右击 CPU 单元,选择[PLC 信息]|[CPU 单元]。 8 2 显示以下[单元生产信息]对话框。 关于 CP 系列的「单元版本」 请确认联机连接状态下的 CPU 单元的单元版本。 3)通过单元版本标签进行识别 单元版本标签(下图)附带在产品中。 Ver. 1.0 Ver. Ver. 1.0 Ver. 为了惯例由于版本升级等引起的 CPU 单元配置功能的差异的标签。 请根据需要贴在产品的正面。 These Labels can be used to manage differences in the available functions among the Units. Place the appropriate label on the front of the Unit to show what Unit version is actually being used. 为了区分单元版本和以前的 CPU 单元,请将此标签贴在 CPU 单元的正面。 9 相关手册 相关手册 Man. No. SBCA-341 (本手册) SBCA-340 SBCA-345 SBCA-344 SBCA-304 SBCA-337 SBCA-338 SBCA-335 SBCA-336 SBCA-307 CP 系列 PLC 本体的相关手册的构成如下表所示。 请结合使用。 型号 CP1H-X40D□-□ CP1H-XA40D□-□ CP1H-Y20DT-D CP1L-L14D□-□ CP1L-L20D□-□ CP1L-M30D□-□ CP1L-M40D□-□ CP1H-X40D□-□ CP1H-XA40D□-□ CP1H-Y20DT-D CP1L-L14D□-□ CP1L-L20D□-□ CP1L-M30D□-□ CP1L-M40D□-□ CP1L-L14D□-□ CP1L-L20D□-□ CP1L-M30D□-□ CP1L-M40D□-□ CS1G/H-CPU□□H CS1G/H-CPU□□-V1 CS1D-CPU□□H CS1D-CPU□□S CS1W-SCU□□-V1 CS1W-SCB□□-V1 CJ1G/H-CPU□□H CJ1G-CPU□□P CP1H-CPU□□ CJ1G-CPU□□ CJ1W-SCU□□-V1 WS02-CXPC1-JV7 WS02-CXPC1-JV7 CXONE-AL□□C-J 手册名称 CP 系列 CP1H/CP1L CPU 单元 编程手册 CP 系列 CP1H CPU 单元 用户手册 CP 系列 CP1L CPU 单元 用户手册 SYSMAC CP1L 导入篇 CS/CJ/CP 系列 通信指令参考手册 用途 内容 用于明确 CP 系列的程 针对 CP 系列 PLC 本体的内容, 序时 进行说明。 ・需要编程 ・明确任务功能 ・明确各指令语言的详细内容。 请结合编程手册(SBCA-340/SBCA-345)一起使用。 用于明确 CP 系列的概 针对 CP 系列 PLC 本体的以下内容进行说明。 要/设计/安装/保 ・需要明确其概要/特长时 养等基本规格时 ・需要设计系统构成时 ・需要进行安装/布线时 ・需要明确 I/O 内存分配时 ・需要明确其发生问题时的处理方法时 请结合程序设计手册(SBCA-341)一起使用。 需要了解 CP1L 的基 针对 CP 系列 PLC 本体的以下内容进行说明。 本使用方法时 ・需要明确其概要/特长时 ・需要设计系统构成时 ・需要进行安装布线时 ・需要编程 ・需要进行联机调整/调试时 需要了解有关指向 CS/CJ/CP 系列 CPU 单元的通信指令的详 细内容时 1)C 模式指令以及 2)FINS 指令的详细内容进行说明。 需要明确关于指向 CPU 单元的通信指令(C 模式指令 或 FINS 指令)的详细内容时,请参照。 注:本手册中所记载的通信指令是针对 CPU 单元的通 信指令。其通信路径不论(能经由 CPU 单元的串行通 信端口、串行通信卡/单元的通信端口、通信单元 等)。另外,关于指向高功能 I/O 单元或 CPU 高功能 单元的指令,请参见各单元的用户手册。 CX-Programmer 需要了解功能模块的 对 CX-Programmer 的操作方法 操作手册(Ver. 7.0) 功能之外的内容时 加以说明。 CX-Programmer(Ver. 7.0)、 使用功能模块时,用于 对功能模块的规格和操作方法加以说明。仅在通过 CS/CJ/CP 系列 明确其规格和操作方 CX-Programmer Ver.7.0、CS1-H/CJ1-H CPU 单元 Ver. 操作手册 功能模块篇 法 3.0、CP1H CPU 单元的组合,使用功能模块时进行参 照。关于 CX-Programmer Ver.7.0 功能模块之外的操作 请参照 SBCA-337。 CX-One 安装手册 从 CX-One 中安装软 记载有 FA 整合工具程序包 CX-One 的概要、CX-One 件时使用 的安装方法。 CXONE-AL□□C-J WS02-PSTC1-J CX-Integrator 操作手册 CX-Protocol 操作手册 需要了解网络结构(数 对有关 CX-Integrator 的操作方法进行说明。 据连接、指令表、通信 单元设定等)时使用 需要了解协议宏(发送 1)CX-Protocol 的操作方法以及 接收序列)作成用工具 2)关于协议宏的详细内容进行说明。 CX-Protocol 的操作方 在使用 CX-Protocol,由用户自己作成串行通信用协议 法时使用 或自定义标准系统协议时进行参照。 需要了解用户作成的 协议宏功能的详细内 容时使用 10 安全注意事项 安全注意事项 用于保证安全使用的标志及其含义 为了安全使用 CP 系列可编程控制器,在本手册中用以下标志和符号来表述注意事项。 在此所表示的注意事项是记载有关安全方面的重大内容。请务必遵守。 标志及其含义如下所示。 安全要点 表示为了安全地使用产品,必须实施或避免的事项。 使用注意事项 表示为了防止产品不动作、误动作或对性能・功能的不利影响,必须实施或避免的事项。 请注意 本文中的「请注意」安全要点,表示具有与安全使用注意事项相同的内容。 11 安全注意事项 图标说明 △符号表示注意(包括警告)。 具体内容由△中的图案和文字表示。 左图表示「小心触电」。 符号表示禁止。 具体内容由 中的图案和文字表示。 左图表示「禁止分解」。 ●符号表示强制执行。 具体内容由●中的图案和文字表示。 左图表示「一般性强制执行事项」。 △符号表示注意(包括警告)。 具体内容由△中的图案和文字表示。 左图表示「一般性注意」。 △符号表示注意(包括警告)。 具体内容由△中的图案和文字表示。 左图表示「小心高温」。 12 安全注意事项 通电中!请勿分解单元。 否则有触电的危险。 通电中!请勿触摸端子。 否则有触电的危险。 发生由可编程控制器(PLC)的故障和外部原因所引起的异常时,为 了使整个系统能在安全的范围内运行,请在 PLC 的外部采取安全措 施。异常动作有可能引起重大事故。 (1)对于紧急停止电路、互锁电路、限位电路等与安全保护有关的 电路,必须用 PLC 外部的控制电路进行构筑。 (2)PLC 在通过自我诊断功能检测到异常及在执行运行停止故障诊 断(FALS)指令时,停止运行并切断所有输出。这时为了使系 统全体能在安全范围内运行,请在 PLC 的外部采取相应措施。 (3)由于输出继电器的熔融和烧损、输出晶体管的损坏,有可能使 PLC 的输出一直处在 ON 或 OFF 状态。这时为了使系统全体能 在安全范围内运行,请在 PLC 的外部采取相应措施。 (4)当 PLC 的 DC24V 输出(服务电源)处于过负载状态或短路时, 会使电压下降,输出为 OFF 状态。这时为了使系统全体能在安 全范围内运行,请在 PLC 的外部采取相应措施。 为应对信号线的断线、突然停电所产生的异常信号,请使用者采取防 止故障的安全措施。 异常动作有可能引起重大事故。 13 安全注意事项 请在确认即使延长循环时间也不会产生影响之后,进行联机编辑。 有时会出现输入信号不能读取的情况。 在向其它节点传送程序和进行变更 I/O 内存的操作时,请在确认变更 对象节点的安全性之后再进行。 否则有造成伤害的危险。 请按照本手册所规定的转矩来紧固 AC 电源的端子台螺钉。 螺钉松动时会有起火、产生误动作的危险。 在通电中和刚切断电源之后,请勿触摸电源部和输入输出端子部周 围。 否则有烧伤的危险。 在对直流电源进行布线时,要注意+/-极性。 如果连接错误会引起系统的异常动作。 在将 PLC 连接到计算机等外围设备时,对外部电源请在 0V 侧进行 接地或者干脆不接地。 根据外围设备接地方法的不同可能会引起外部电源的短路。请绝对严 禁如下图所示对 24V 侧进行接地。 24V 不绝缘 DC 电源 0V FG 0V FG CPU 本体 工具电缆 0V FG 外围设备 FG 通过 IOWR 指令设定单元(再设定)时,请在对作成的梯形图程序 及数据进行充分的动作确认的基础上运行本指令。 当所设定的数据中有错误时,单元停止运行,装置和机械有产生意外 动作的危险。 14 安全注意事项 在程序中,利用电源断开复位时的保持区域的保持继电器、计数器当 前值/完成标志、数据内存的内容进行向外部的输出时,请采取「当 电池异常标记(A402.04)为 1(ON)时,禁止向外部输出」等防止 措施。 在 CP 系列 CPU 单元中,将用户程序或参数写入到 CPU 单元中时, 这些数据则自动备份到内置闪存(闪存功能)中。 但是对于 I/O 内存区域(包括保持继电器、计数当前值/完成标志、 数据内存)不能写入内置闪存。特别电源断开复位时的保持区域的保 持继电器、计数当前值/完成标志、数据内存依靠电池维持,因此当 电池发生异常时,数据就可能不被正确保存。 15 安全要点 安全要点 在使用 CP 系列可编程控制器的时候请注意以下各项。 ・为了防止外部布线短路请采取使用断路器等安全措施。 ・在充分检查端子台、连接器之后进行安装。 ・对于 PLC 的端子台螺钉、电缆螺钉,请按照本手册所规定的转矩进行紧固。 ・按本手册所规定的方法进行正确的布线。 ・请使用由本手册指定的电源电压。 ・对于电源状况不良的场所,特别要保证使用额定电压・频率电源。 ・请在单元表面贴有防尘标签的状态下进行布线。 ・布线完成后,为了散热请务必在撕掉标签后进行使用。 ・布线请接到压接端子。不要把只进行了捻合的电线接到直接端子台。 ・在输入部不要加上超过额定值输入电压的电压。 ・在输出部不要加上超过最大开闭能力的电压以及连接负载。 ・在安装施工中一定要进行 D 种接地(第 3 种接地)。 ・对于像端子台、连接器、选项板等有锁定机构的单元,一定要确认在锁定状态下使用。 ・进行耐电压试验时,请拆下功能接地端子后进行。 ・在充分确认布线、开关等设定之后再通电。 ・在运行开始前请确认 DIP 开关和数据内存(DM)是否被正确地设定。 ・对于作成的用户程序请在充分进行动作确认之后再加载到正式运行中。 ・在把再运行所必须的数据内存和保持继电器内容传送到更换的 CPU 单元、高功能 I/O 单元之后,再执行运行。 ・不要分解本产品进行修理和改造。 ・在以下的情况下请切断 PLC 本体的电源。 ・把扩展单元安装到 CPU 单元中或从 CPU 单元中取下时 ・插入或取下存储盒选项卡时 ・设定 DIP 开关和旋转开关时 ・进行电缆连接和布线时 ・安装或拆下连接器时 ・对于以下的操作请在确认对设备没有影响时进行。 ・PLC 的运行模式切换(包括电源投入时的运行模式设定) ・接点的强制置位/复位 ・当前值、设定值的变更 ・不要强行弯曲或拉电缆。 ・不要在电缆和电线上放置东西。 16 安全要点 ・在进行部品更换时,请务必在确认额定值是否正确之后再进行更换。 ・请触摸被接地的金属,在放掉人体所带有的静电之后再触摸单元。 ・为了防止由静电所产生的误动作,在通电中不要去触摸扩展 I/O 连接电缆。 ・在数据传送中不要切断单元的电源。 ・在搬运和保存时为了防止由 LSI、IC 等静电所引起的破坏,请用导电性的东西覆盖电 路板,保持温度在保存范围内。 ・在电路板因为有像电气零件导线那样的尖锐部分,请不要用手直接去触摸零件的安装 部分和电路板的背面。 ・在进行连接器的安装时,请在充分确认布线的针编号之后再进行。 ・布线请按照本手册所指定的方法进行。 ・安装在 CPU 单元的 RS-232C 选项卡的第 6 根针(+5V 电源)不要在除了 RS-422A 转 换器(CJ1W-CIF11)、RS-232C/RS-422A 转换单元(NT-AL001)之外的外部连接设 备中进行连接。会引起外部连接设备和 CPU 单元产生故障的危险性。 ・对于连接电缆,请使用或作成本手册所规定的专用电缆。如果使用在市场中销售的普 通计算机用 RS-232C 电缆的话,有可能会引起外部设备以及 CPU 单元的故障。 ・不合适的数据连接表/参数被设定时,会使设备产生意想不到动作的危险性。 另外即使合适的数据连接表/参数被设定时,也要在确认对设备没有影响后进行数据连 接的启动/停止。 ・在把路由表从外围工具传送给 PLC 本体时,CPU 高功能单元被复位。这是因为设定的 路由表被读入并为有效的缘故。即使复位 CPU 高功能单元也要在确认对设备没有影响 之后执行路由表的传送指令。 ・CP 系列 CPU 单元把用户程序、参数区域的数据备份在内置闪存中。在备份中 CPU 单 元前面的 BKUP LED 进行闪烁。在 CPU 单元前面的 BKUP LED 进行闪烁的过程中, 请不要切断 PLC 本体的电源。万一切断时数据不能被备份。 ・在写入到存储盒的过程中不要切断 PLC 本体的电源,否则存储盒内的数据会有不正确 的可能性。存储盒写入中 BKUP LED 进行闪烁。CP1H 为 7 段 LED 时也闪烁显示写入 的进行状况。请在写入显示(BKUP LED、7 段 LED)熄灭后,切断 PLC 本体的电源。 ・为了防止内存内容不被破坏,请在电池更换前进行 5 分钟以上的通电,关闭电源后请 在 5 分钟以内进行新电池的更换。 ・作为输入输出端子的连接布线,一定要使用以下的规格。 AWG22-18 (0.32~0.82mm2) ・本体及电池的废弃,请遵从各地的规定进行。 17 安全要点 ・电池的更换虽然由熟练的技术人员进行,这是 UL 规格的规定。因此,更换作业请交 由熟练的技术人员进行。另外,请根据本手册所记载的方法进行更换。 ・电池恐怕会有漏液、破裂、发热、起火等的危险,因此请绝对不要让+、-短路,不 要对其进行充电、分解、加热、焚烧、使其受到强烈的冲击等。另外,掉落在地板上 的电池由于可能漏液,严禁使用。 ・在接入 PLC 本体电源后,请将控制部的电源置于 ON,构成外部电路。控制部的电源 置于 ON 后,当 PLC 本体的电源为 ON 时 DC 输出单元等的输出会存在瞬间误动作, 控制部的输出会出现暂时的不正常动作。 ・ 由于输出端子的继电器和晶体管等内部电路的故障,有可能使输出一直处在 ON 的状 态,因此应当在 PLC 的外部适当地设计安全电路,即使输出端子出错,一直保持 ON 状态的情况下,系统也能安全运行。 ・I/O 内存保持标记被设定为 1(ON)时,在进行从「运行」或「显示」模式到「程序」 模式变更时,由于输出继电器不被清空(OFF)保持刚才的状态,因此请注意外部负 载的状态(此外,由于运行停止异常(包括 FALS 指令执行)使运行停止时,虽然 CPU 单元内部的 I/O 内存值被保持,但是输出单元的输出接点全部为 OFF)。 18 使用注意事项 ●请按照本手册的内容进行正确设置。 ●请勿在以下环境中设置。 ・阳光直接照射的场所 ・环境温度和相对湿度超过规格值范围的场所 ・温度变化急剧,会产生结露的场所 ・有腐蚀性气体和可燃性气体的场所 ・尘土、灰尘、盐分、铁粉多的场所 ・会溅到水、油、药品等飞沫的场所 ・会给本体带来直接振动和冲击的场所 ●在以下环境中使用时需要充分采取屏蔽措施。 ・由静电引起干扰的场所 ・产生强电场强磁场的场所 ・有可能受到放射线辐射的场所 ・靠近电源线和动力线的场所 使用注意事项 19 有关对 EC 指令的符合 有关对 EC 指令的符合 符合指令 概念 ・EMC 指令 ・低电压指令 ■ EMC 指令 欧姆龙的产品是能够组合到各种机械、制造装置中使用的电气设备。 为了使被组合的机 械・装置能够较容易地符合于 EMC 标准,本公司对产品自身相关的 EMC 标准(注)的 符合性进行了不懈努力。 但是,由于客户的机械・装置各种各样,并且 EMC 性能根据构成 EC 指令符合产品的设 备・控制盘的构成、布线状态、配置状况等有所变化,因此不能确认在客户使用状态下 的符合性。因此对于机械・装置整体中的最终 EMC 符合性的确认,希望由客户自身实施。 注 1: EMC(Electro-Magnetic Compatibility:电磁环境兼容性)相关标准中依据 EN61131-2。 ■ 低电压指令 对于在电源电压为 50V AC ~ 1000V AC 及 75V DC ~ 1500V DC 状态下动作的设 备,要求确保必要的安全性。符合标准为 EN61131-2。 有关对 EC 指令的符合 CP 系列符合 EC 指令。但当客户的机械・装置符合于 EC 指令时需要注意以下几点。 1 对于 CP 系列请一定要设置在控制柜内。 2 作为与 DC 电源型的 DC 电源以及 I/O 单元相连接的 DC 电源,请使用经过强化绝缘 或双重绝缘的 DC 电源。 DC 电源型的 CPU 单元上连接的 DC 电源请使用输出保持时间为 10ms 以上的电源。 3 CP 系列的 EC 指令符合产品虽然符合于有关 EMI 的共通发射标准(EN61131-2), 但是会随着所使用的控制盘的结构、与被连接的其它设备的关系、布线等发生变化, 特别是对于 Radiated emission(10m 法)。 因此,即使使用为 EC 指令符合品的 CP 系列时,客户也必须对机械・装置整体进行 EC 指令符合性的确认・对应。 20 有关对 EC 指令的符合 防止继电器输出干扰的对策 CP 系列作为单体符合于 EMC 指令的共通发射标准(EN61131-2)。但是组合到装置中 使用时,由于因继电器输出的开闭所产生的干扰会出现不能满足本规格要求的情况。 这时有必要采取在 PLC 的外部连接浪涌抑制器等措施防止干扰。作为满足规格的必要对 策会因负载装置、布线、机械的构成等而异。 以下对策只是减轻干扰的示例。 ● 关于对策的必要性 ・组合有 PLC 的装置整体中的负载开闭频度在每分钟不满 5 次时,不需要采取对策。 ・组合有 PLC 的装置整体中的负载开闭频度在每分钟大于 5 次时,需要采取对策。 CR ● 对策示例 ・在开闭感性负载时,请连接与负载或接点并联的浪涌抑制二极管等,如下所述。 电路示例 方 式 二 极 管 方 式 可 变 电 阻 方 式 符合 AC DC ○○ ×○ 其它特长 负载为继电器、螺线管等时,复位时 间滞后。 电源电压为 24,48V 时在负载之间 连接,电源电压为 100V~200V 时在 节点之间连接则有效。 对于在线圈中所储藏的能量,通过并 联二极管以电流的形式流向线圈,由 感应负载的电阻部分作为焦耳热能 进行消耗。 此方式与 CR 方式相比较,复位时间 更迟延。 元件的选择方法 作为 C、R 的标准如下所示; C:对于接点电流 1A 为 1~0.5(μF) R:对于接点电压 1V 为 0.5~1(Ω) 由于负载的性质和继电器特性的参差 不齐,不一定完全一致。 考虑到 C 接点开闭时的放电抑制效果 和 R 接入到下个电路时的电流限制效 果,请通过实验进行确认。 作为 C 的耐电压通常采用 200~300V 的电压。AC 电路时,请使用 AC 用电 容(无极性)。 作为二极管,其反向耐压值请选择电 路电压 10 倍以上的电压值,正向电流 值请选择超过负载电流值的电流。 在电子电路中,电路电压不是很高的 情况时,其反向耐压值请选择电源电 压的 2 到 3 倍即可。 利用可变电阻的定电压特性,使接点 之间不会加上很高电压的一种方 式。此方法也可能使复位时间迟延。 ○ ○ 电源电压为 24~48V 时在负载之间 - 连接,电源电压为 100V~200V 时在 节点之间连接则有效。 21 有关对 EC 指令的符合 ・需要开闭白炽灯等冲击电流较大的负载时,请采用以下方法抑制冲击电流。 [对策示例 1] [对策示例 2] 限制流经白炽灯的电流为额定电流的 1/3 左右的 接入限制电阻的方法 方法 ■ CP/CPM1A 继电器输出单元增设时的 EMC 指令符合条件 采用 I/O 连接电缆 CP1W-CN811,使用继电器输出型的扩展 I/O 单元 CP1W-40EDR、 CPM1A-40EDR、CP1W-16ER、CPM1A-16ER 时的 EN61131-2 抗扰性试验条件,如下所 示。 ● 推荐铁氧体磁芯 铁氧体磁芯(数据线滤波线:0443-164151(日辰电机社生产) 最低阻抗 25MHz:90Ω、100MHz:160Ω  ● 推荐安装方法 (1)电缆安装方法 (2)安装方法 如下图所示安装在 CP1W-CN811 的两端。 SYSMAC CP1H BATTERY PERIPHERAL IN AC100-240V L1 L2/N COM 01 03 05 07 09 11 01 03 05 07 09 11 00 02 04 06 08 10 00 02 04 06 08 10 POWER ERR/ALM BKUP EXP MEMORY ʴ 00 01 02 03 04 06 00 01 03 04 06 ʵ COM COM COM COM 05 07 COM 02 COM 05 07 DC24V0.3A 100CH OUTPUT 101CH 1CH OUT IN OUT NC NC COM 01 03 05 07 09 11 01 03 05 07 09 11 NC NC 00 02 04 06 08 10 00 02 04 06 08 10 CH CH CH 00 01 02 03 04 05 06 07 08 09 10 11 CH 00 01 02 03 04 05 06 07 08 09 10 11 CH 00 01 02 03 04 05 06 07 CH 00 01 02 03 04 05 06 07 40EDR CH NC 00 01 02 04 05 07 CH 00 02 04 05 07 NC COM COM COM 03 COM 06 COM 01 03 COM 06 EXP 22 手册修订记录 手册修订记录 手册修订记号附加在封面正面・封面背面左下部记录的 Man.No.的结尾处。 Man. No. SBCA-341C 修订编号 修订记号 - B C 修订年月 2005 年 7 月 2006 年 4 月 2007 年 3 月 修订理由·修订页码 初版 CP1H CPU 单元 新增单元版本 1.1 CP1L CPU 单元新增修订 错误修正 23 手册修订记录 24 第 1 章 编程的概念 第 2 章 任务的动作 第 3 章 各指令说明 第 4 章 指令处理时间/步数一览 附录 手册修订记录 1 2 3 4 附 25 目录 目录 26 目录 27 目录 28 目录 29 目录 30 目录 31 目录 32 目录 33 目录 34 目录 35 目录 36 第1章 编程的概念 1-1 编程的概念 1-1-1 程序与任务 1 编 1-1 编程的概念 程 的 概 念 1-1-1 程序与任务 所谓任务,是指规定使各个程序按照何种顺序或中断条件执行的功能。任务大致可分为 以下两种。 1)按照顺序执行的任务称为「周期执行任务」。 2)按照中断条件执行的任务称为「中断任务」。 注:可使中断任务按照与周期执行任务同样的顺序执行(称为「添加任务」)。 「周期执行任务」分配的程序,按任务号码顺序执行。 已执行所有任务(可正确执行状态的任务)之后,I/O 刷新,1 周期执行 1 次。其间,中 断条件成立时,执行中断任务分配的程序。 程序 A 周期 执行任务 0 分割 中断条件成立 周期 执行任务 1 中断 任务 100 分割 分割 程序 C 程序 B 周期 执行任务 n I/O 刷新 分割 程序 D 上述情况,按照程序 A→B→C→D 的顺序执行。 例如,执行程序 A 时,若中断任务 100 的中断条件成立,则中断程序 A 的执行,已执行 程序 B 后,在程序 A 中断的位置重新开始。 由以前的 PLC 来看,一个连续的程序被分割为若干个。但是,分配给各任务的程序和以 前一样,在程序的最后需要有 END 指令。 1-2 1-1 编程的概念 1-1-1 程序与任务 任务的特征,是指在各周期执行任务时,能根据「任务控制指令」任意控制其执行可执 1 行状态及不执行(「待机」状态)。 编 因此,可作为任务预先编入几个程序部件,按照品种和工序等,只执行某些程序(任务) 程 的 (程序的内务处理级更换)。 概 因此,必要时能够只执行必要的程序,大大提高了性能(周期时间)。 念 以前 一个连续的用户 程序 使用 CP1H 任务 1 分割 任务 2 可以不运行 (待机) 任务 3 I/O 刷新 I/O 刷新 此外,任务一旦被「执行」,之后的周期也被执行。任务一旦被 「待机」,除非通过其 他任务切换到执行,否则之后的周期仍为待机。 参 考 以前的程序是从卷轴开始读取,而任务是逐一读取各卡。 但是 ·各卡读的顺序是有规定的,按由低到高的顺序进行读取。 ·各卡片相互之间能够指示活动/非活动。 对于指定为非活动的部分,在读 取时被跳过。(活动/非活动的指示根据任务控制指令进行)。指定活动的 卡,在下个读顺序时也保持活动被读取。一旦被判断为非活动的卡,除非 被其他卡复活(活动化),否则一直保持非活动化被跳过。 以前的程序:卷轴 CP 系列:卡。并且,可互相指示活动·非动性 活动化 非活动化 1-3 1-1 编程的概念 1-1-2 关于指令的基本事项 1 1-1-2 关于指令的基本事项 编 程 程序由指令构成。 的 指令由如下所示的输入输出构造组成。 概 念 执行条件 (P.F) 指令条件 指令 执行状态(P.F) *1 指令条件*2 标志 标志 操作数(源)操作数(目标) *1:仅限输入系指令 *2:仅限特定的指令 I/O 储存器 ● 执行条件(P.F.) 所谓执行条件,是指程序通常执行时,为了控制指令功能执行/不执行的信息。 在梯形图中,表示来自母线的信号的流动。 ·a)构成输入部的输入系指令的情况 ·显示逻辑开始的 LD 型指令:输出执行状态。 输出执行状态 ·下段接续型指令:作为输入条件输入执行条件,向下段接续型指令或输出系指令输 出功率流。 输出执行状态 = D0 #1215 ·b)构成输出部的输出系指令的情况 将功率流作为输入条件输入,实现各功能。 LD 的功率流 OUT 的执行状态 输入部 输出部 1-4 1-1 编程的概念 1-1-2 关于指令的基本事项 1 ● 指令条件 编 所谓指令条件,是指使用如下所示的特定指令的输出,是关系到指令执行全体的特殊状 态。在指令执行判断中,比执行条件优先。 程 的 概 根据指令条件的不同,有成为不执行的指令和动作不相同的指令。 念 指令条件在各任务的最开头被复位(解除)。(因此,任务切换时被复位)。 在某些条件下设定指令和解除指令配对使用。 这一对指令,需要配置在同一任务内。 指令条件 IL 中 BREAK 条件 块程序执行中 内容 设定指令 程序的一部分进入互锁的状态。 IL 指令 (断开输出继电器、定时器复位、 计数器保持等特殊的条件仍然有 效) 中途终止 FOR~NEXT 循环反复 的状态。(阻止至 NEXT 的指令 的执行) BREAK 正在执行 JMP0~JME0 的跳跃状 JMP0 态 执行 BPRG 到 BEND 程序块。 BPRG 解除指令 ILC 指令 NEXT JME0 BEND ● 标志 所谓标志,是指作为指令间的接口使用的位信息。 输入标志 标志名 内容 ·微分状态标志 微分的检测结果标志。在 带@%选项的微分指令及 DIFU/DIFD 指令中被自动 输入。 ·进位(CY) 标志 在数据移位指令,加减运 算指令中,用作非指定的 操作数,是状态标志的一 种。 ·指令专用输入 FPD 指令用教学标志,包 标志 括网络通信使能标志等。 标志名 ·微分状态标志 ·条件标志 ·特殊指令标志 输出标志 内容 微分的检测结果标志。在带有@% 动作任选附件微分指令, UP/ DOWN 指令中被自动输出。 根据指令执行结果更新的标志,及 始终 ON/始终 OFF 标志的总称。在 用户程序上不用地址,而用 ER、 CY、>、=、A1、A0 等标签指定。 包括 MSG 执行完成标志等。 1-5 1-1 编程的概念 1-1-2 关于指令的基本事项 1 ● 操作数 编 所谓操作数,定义预设的指令参数,这些参数用于指定 I/O 存储区的数据或常数。在操 程 的 概 作数中,通过输入地址或者常数本身,指令可以执行运算。 操作数分为源操作数、目标操作数及数值操作数。 念 例: MOV #0 D0 S(源) D(目标) JMP &3 N(数值) 源操作数 操作数分类 存储读出数据的地址 或数据本身 操作数 记号 S C 源操作数 控制数据 目标操作数 存储写入数据的地址 D(R) 内容 控制数据(C)以外的源操作数 源操作数中,特别是 1 位或多位 组成,带有多重意义的数据复合 体 - 数值操作数 转移、子程序等、各个 N - 指令带有特定编号时 存储 注:按照所记述的位置,自上而下称为第 1 操作数、第 2 操作数…… MOV #0 D0 第 1 操作数 第 2 操作数 1-6 1-1-3 1-1 编程的概念 1-1-3 指令配置位置及输入条件的要/不要 指令配置位置及输入条件的要/不要 1 指令如下所示,有可配置的位置。 编 程 此外,指令中有需要输入条件的指令和不需要输入条件的指令。 的 分类 配置可能位置 输入条件的 图 要/不要 指令例 概 念 输 逻辑开始型 入 (LD 型) 系 向左母线的直接连 接,或电路块的开 始点 不要 LD、LD TST、LD>(及 其他的符号比较指令) 下段接续型 逻辑开始型和输出 型中间位置 必要 AND、OR、AND TEST、 AND>(等的符号比较 指令)、UP、DOWN、 NOT 等 输出系 到右母线的直接连 接 必要 OUT、MOV 等众多指令 不要 END、JME、FOR、ILC 等 注: CP1H/L 中,除此之外,1 个输入条件执行 1 个聚合的助记符,称为块程序。详情请参见本手 册的关于块程序的说明。 请注意 将需要输入条件的指令,(没有逻辑开始型指令)直接连接到左母线, CX-Programmer 进行程序检查时,会产生电路错误,请注意。 1-7 1-1 编程的概念 1-1-4 I/O 存储器区域地址的指定方法 1 1-1-4 I/O 存储器区域地址的指定方法 编 程 ■ 位地址的指定方法 的 概 □□□□.□□ 念 表示位位置(00~15)。 (不满最大位数的地址的情况下省略高位位的 0(零))。 例:输入输出继电器 0001 CH 的位 03 的表示方法 1.03 位位置:03 通道(字)地址:1 CH 通道(字)地址 位地址: 1.03(0001.03) 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 位位置 0000 0001 0002 例:保持继电器(HR) H010 CH 的位 08 的表示方法 H10.08 位位置:08 通道(字)地址:H10 CH ■ 通道(字)地址的指定方法 □□□□(CH) 表示通道(字)地址 (不满最大位数的地址的情况下,省略高位位的 0(零)) 例:输入输出继电器(CIO) 0010 CH(位 00~15)的表示方法 10 CH 通道(字)地址 例:内部辅助继电器(WR) W005 CH 的表示方法 W5 CH 通道(字)地址 例:数据存储器(DM) D00200 的表示方法 D200 通道(字)地址 1-8 1-1 编程的概念 1-1-5 指令语言中操作数的数据指定方法 1-1-5 指令语言中操作数的数据指定方法 数据的指定 方法 位地址直接 指定 通道地址 指定 内容 例 为指定 1 位(接点),用「通道地址.位位置」直接 指定 □□□□. □□ 1.02 位位置 02 位位置 00~15 通道地址 1 CH 通道地址 注:时间完成标志、计数完成标志、任务标志没有 通道地址/位位置的区别。 为指定 16 位(1 字=1 通道),直接指定通道地址。 □□□□ 通道地址 3 通道地址 3 CH D200 1 指令的使用示例 编 程 的 1.02 概 念 MOV(021) 3 D200 通道地址 D200 DM 间接指 为了指定数据存储器(DM)的通道地址,将该内容 @D300 定 BIN 模式 作为 BIN 值(0~32767)读取,作为对于各区域的 最前端的偏移量进行间接指定。 最前端附加符号「@」。 @D□□□□□ 0 1 0 0 内容 BIN:256 MOV(021) #1 @D300 指定 D256 内容 D 0~32767 (通过 BIN 0000 Hex~7FFF Hex) 加上@ DM 间接指 为指定数据存储器(DM)的通道地址,将该内容作 *D200 定 BCD 模式 为 BCD 值(0~9999)读取,作为从各区域的最前 端开始的偏移进行间接指定。 0 1 0 0 内容 最前端附加符号「*」。 *D□□□□□ BCD:100 内容 D 0000~9999 (BCD) 指定 D100 加上* 寄存器直接 为指定变址寄存器(IR)或数据寄存器(DR),用 IR0 指定 IR□(□:0~15),DR□(□:0~15)指定。 MOV(021) #1 *D200 MOVR(560) 1.02 IR0 0001 CH 02 位的 I/O 存 储器有效地址存储到 IR0。 IR1 MOVR(560) 10 IR1 0010 CH 的 I/O 存储器 有效地址存储到 IR1。 1-9 1-1 编程的概念 1-1-5 指令语言中操作数的数据指定方法 1 编 数据的 内容 例 程 指定方 的 法 概 寄存器 间接指定 指定以 IR□的内容为 I/O 存储 ,IR0 念 间接指 (无偏移 器有效地址的接点或通道。 ,IR0 指令的使用示例 定 量) 用,IR□指定(用指令及操作数 指定接点/通道)。 ,IR1 输入以 IR0 内容为 I/O 存储器有效地址的接点。 MOV(021) #1 ,IR1 常数偏移 指定 在 IR□的内容上,+或-指定 +5 ,IR0 常数后得到的值作为 I/O 存储 器有效地址,指定接点或通道。 常数由,IR□指定。 常数偏移的范围为-2048~+ 2047(10 进制)。指令执行时 31 ,IR1 转换为 BIN 数据。 将#0001 存储到以 IR1 内容为 I/O 存储器有效地址的通 道。 +5,IR0 输入以 IR0 内容+5 为 I/O 存储器有效地址的接点。 MOV(021) #1 +31 ,IR1 DR(数据 寄存器) 偏移指定 在 IR□的内容上,+DR□后得 到的值作为 I/O 存储器有效地 址,指定接点或通道。 用 DR□,IR□指定。 DR(数据寄存器)的值,以带 符号 16 进制计算。作为带符号 BIN 值为负数时, IR□的内容 向负方向移动。 DR0 ,IR0 DR0 ,IR1 将#0001 存储到以 IR1 内容+31 为 I/O 存储器有效地址 的通道。 DR0,IR0 输入以(IR0 的内容)+(DR0 的内容)为 I/O 存储器 有效地址的接点。 MOV(021) #1 DR0 ,IR1 自动 增 将 IR□的内容作为 I/O 存储器有 ,IR0++ 量 效地址参见后,在 IR□的内容上 +1 或+2。 +1 时:,IR□+ +2 时:,IR□++ 指定。 ,IR1+ 注:CP1L 通过指令的执行,在 发生 P_ER 或 P_AER 时不进行 自动增量。 自动 减 将 IR□的内容-1 或-2。该值 ,--IR0 量 作为 I/O 存储器有效地址参见。 -1 时:,-IR□ -2 时:,--IR□ 指定。 注:CP1L 通过指令的执行,在 ,-IR1 发生 P_ER 或 P_AER 时不进行 自动减量。 将#0001 存储到以(IR1 的内容)+(DR0 的内容)为 I/O 存储器有效地址的通道。 ,IR0++ 输入以 IR0 的内容为 I/O 存储器有效地址的接点后,IR0 的内容+2。 MOV(021) #1 ,IR1+ 将#0001 存储到以 IR1 的内容为 I/O 存储器有效地址的 通道后,IR1 的内容+1。 ,--IR 将 IR0 的内容-2 后,输入以该值为 I/O 存储器有效地 址的接点。 MOV(021) #1 ,-IR1 将 IR1 的内容-1 后,将#0001 存储到以该值为 I/O 存 储器有效地址的通道。 1-10 1-1 编程的概念 1-1-5 指令语言中操作数的数据指定方法 数据的指 定方法 常数(16 位数据) 使用操作数 全 BIN 数据,或有 范围的 BIN 数据 数据类型 无符号 BIN 记号 # 范围 #0~#FFFF 1 指令的使用示例 编 程 MOV(021) 的 概 #5A 念 D100 带符号 10 进制数 ± -32768~+32767 +(400) D200 -128 D300 无符号 10 进制数 & &0~&65535 CMP(020) D400 &999 全 BCD 数据,或 有范围的 BCD 数 据 BCD # #0~#9999 -B(414) D500 #2000 D600 常数(32 全 BIN 数据,或有 无符号 BIN 位数据) 范围的 BIN 数据 # #0~#FFFFFFFF MOVL(498) #17FFF D100 带符号 10 进制数 + -2147483648~ +2147483647 +L(401) D200 -65536 D300 无符号 10 进制数 & &0~&4294967295 CMPL(060) D400 &99999 全 BCD 数据,或 有范围的 BCD 数 据 BCD # #0~#99999999 -BL(415) D500 #1000000 D600 1-11 1-1 编程的概念 1-1-5 指令语言中操作数的数据指定方法 1 编 字符串 内容 记号 例 程 数据 通过 ASCII 编码(1 字节,除特殊字符 ↓‘ABCDE’ 的 外),以高位字节→低位字节的顺序, 概 低位(小)通道→高位通道的顺序被存 ‘A’ ‘B’ 念 储。 ‘C’ ‘D’ - MOV$(664) D100 D200 字符数为奇数时,在最后通道的高位字 节的空余处,存储 00 Hex(NUL 代码)。 字符数为偶数时,在最后通道+1 高位/ 低位字节处,存储 0000 Hex(NUL 代 码 2 个)。 ‘E’ = NUL 41 42 43 44 45 00 D00100 41 42 D00101 43 44 D00102 45 00 D00200 41 42 ‘ABCD’ ‘A’ ‘B’ D00201 43 44 D00202 45 00 ‘C’ ‘D’ NUL = NUL 41 42 43 44 00 00 作为字符串处理的 ASCII 代码如下,为不包括特殊字符在内的英文字符、数字、假名、记号。 1-12 1-1 编程的概念 1-1-6 关于数据格式 1-1-6 关于数据格式 1 用 CP 系列处理的数据格式,如下所示。 编 程 种类 数据格式 10 进制 十六进制 4 的 数 位 概 无符号 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 0~65535 0000~FFFF 念 BIN 数据 B IN → 215 214 213 212 211 210 29 28 27 26 25 24 23 22 21 20 10 进 → 16 进 → 32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1 23 22 21 20 23 22 21 20 23 22 21 20 23 22 21 20 带符号 BIN 数据 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 BIN → 215 214 213 212 211 210 29 28 27 26 25 24 23 22 21 20 10 进→ -32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1 16 进→ 23 22 21 20 23 22 21 20 23 22 21 20 23 22 21 20 符号位 0 :正 1 :负 BCD 数据 (2 进制化 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 的 10 进制 数据) BCD → 23 22 21 20 23 22 21 20 23 22 21 20 23 22 21 20 10 进→ 0~9 0~9 0~9 0~9 单精度浮 点数据 31 30 29 23 22 21 20 19 210 0~ -32768 0~ +32767 0~9999 负数: 8000~FFFF 正数: 0000~7FFF 0000~9999 ~ ~ ~~ 尾数部 符号 指数部 用 2 进制数 尾数部 实数值=(-1)符号 ×1.[尾数部] ×2 指数部 ·符号 位 31 为 1:负、0:正 ·尾数部:位 0~22 共计 23 位、以 2 进制数 1.□□□□··· 1.□□□□··· 表示该值 ·指数部 位 23~30 共计 8 位、用 BIN 值表示 2n 的 n。实际值为 2n-127。 注:以 IEEE754 标准的单精度为依据。只用于浮点转换•运算指令。在 CXProgrammer 的 I/O 存储器编辑•监视画面,可用此格式设定/监视。因此, 用 户无需特别熟悉此格式。只需考虑此格式占 2 CH。 1-13 1-1 编程的概念 1-1-6 关于数据格式 1 编 种类 程 的 双精度浮 63 62 概 点数据 念 数据格式 52 51 ~ ~ ~ ~ 尾数部 符号 指数部 用 2 进制数 尾数部 10 进制 十六进制 4 数 位 0 实数值=(-1)符号 ×1.[尾数部] ×2 指数部 ·符号 位 63 为 1:负、0:正 ·尾数部:位 0~51 共计 52 位、以 2 进制数 1.□□□□··· 1.□□□□··· 表示该值 ·指数部 位 52~62 共计 11 位、用 BIN 值表示 2n 的 n。实际值为 2n-1023。 注:以 IEEE754 标准的双精度为依据。只用于浮点转换•运算指令。在 CX- Programmer 的 I/O 存储器编辑•监视画面,可用此格式设定/监视。因此, 用户无需特别熟 悉此格式。只需考虑此格式占 4 CH。 参 考 关于带符号 BIN 数据 带符号 BIN 数据中,最高位位不视作符号位的 2 进制 16 位数据, 以 16 进制 4 位表示该值。 正数: 负数: 例: 最高位位为 0(OFF)时,表示正的值或 0。用 16 进制 4 位表示为 0000~7FFF Hex。 最高位位为 1(ON)时,表示负的值。用 16 进制 4 位表示为 8000~FFFF Hex。此时用负 值(10 进制)的绝对值 2 的补数表示。 -19(10 进制)作为带符号 BIN 数据处理时,从 FFFF Hex 中减去 0013 Hex(绝对值 19), 成为附加 0001 Hex 的值 FFED Hex。 F F F F 1111 1 1 1 1 1111 1 1 1 1 真数 -) 0 0 1 3 0000 0 0 0 0 0001 0 0 1 1 F F E C 1111 1 1 1 1 1110 1 1 0 0 +) 0 0 0 1 0000 0 0 0 0 0000 0 0 0 1 2 的补数 F F E S2 1111 1 1 1 1 1110 1 1 0 1 ● 所谓补数 一般对于基数 x 而言的补数,是指从 x-1 中减去赋予数值的各位数字,在最低位上加 1 得到的数值。(例:7556 的 10 的补数、9999-7556+1=2444)。 补数在通过加法表现减法等时使用。 例:8954-7556=1398、8954+(7556 的 10 的补数)=8954+2444=11398、 如果忽略 溢出的最高位,可得到减法结果为 1398。 1-14 1-1 编程的概念 1-1-6 关于数据格式 ● 所谓 2 的补数 1 所谓 2 的补数,是指基数为 2 的补数。从全部各位作为 1(=2-1)的值中减去真数,在其 编 结果上加 1 得到的值。 例: 2 进制 1101 的 2 的补数是指 1111(F Hex)-1101(D Hex)+1(1 Hex)=0011 程 的 概 (3 Hex)。用 16 进制 4 位表现时如下。 念 a Hex 的 2 的补数 6 Hex 为 F Hex- a Hex+0001 Hex=6 Hex。 通过真数 a Hex 求 2 的补数 6 Hex 为 6 Hex =10 Hex-a Hex。 例)通过真数 3039 求 2 的补数为 10000 Hex-3039 Hex= CFC7 Hex。 通过 2 的补数 b Hex 求真数 a Hex 时同样,a Hex=10 Hex-6 Hex。 例)通过 2 的补数 CFC7 Hex 求真数,10000 Hex-CFC7 Hex=3039 Hex。 此外,CP 系列中备有 NEG(2 的补数转换)/NEGL(2 的补数倍长转换)指令。 该指令在用真数求 2 的补数时或用 2 的补数求真数时均可使用。 参考 关于带符号 BCD 数据 带符号 BCD 数据,是用 BCD 表示负数的特殊数据格式。但该数据格式,不能根本意义 地决定,而是依赖于应用。在 CP 系列中,备有 4 种数据格式,用于带符号 BCD→BIN 转换指令(BINS/BISL 指令),带符号 BIN→BCD 转换指令(BCDS/BDSL 指令)。 关于这 4 种数据格式的详情,请参见本手册中各指令语的说明部分。 10 进制数 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 16 进制数 0 1 2 3 4 5 6 7 8 9 A B C S2 E F 10 BIN 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 10000 BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0001 0000 0001 0001 0001 0010 0001 0011 0001 0100 0001 0101 0001 0110 1-15 1-1 编程的概念 1-1-7 指令的动作选项 1 编 10 进制数 无符号 BIN(16 进制 4 位) 带符号 BIN(16 进制 4 位) 程 +65,535 FFFF 不能表示 的 概 +65~ ,534 FFF~ E 念 +32,769 8001 +32,768 8000 +32,767 7FFF 7FFF +32~ ,766 7FF~ E 7FF~ E +2 +1 0 -1 -~ 2 -32,767 -32,768 0002 0001 0000 不能表示 0002 0001 0000 FFFF FFF~ E 8001 8000 1-1-7 指令的动作选项 指令由于附加下面的动作选项,可以将此执行条件做为微分型,或执行指令时进行数据 的刷新(可每次刷新)。 动作选项 微分选择 上升沿 下降沿 每次刷新选择 选择符号 @ % ! 内容 将指令作为输入上升沿微分型指令。 将指令作为输入下降沿微分型指令。 执行指令时 I/O 刷新以操作数指定的输入输出 区域的数据。 ! @ MOV 指令语言(助记符) 微分选择 每次刷新选择 1-16 1-1 编程的概念 1-1-8 关于执行条件 1-1-8 关于执行条件 1 在 CP 系列中,基本指令和应用指令有下面 2 种类型。 编 程 ・每周期执行型 的 ・输入微分型(1 周期执行) 概 念 ● 每周期执行型指令(无选项的通常指令) ・ 输出型指令时(仅限需要输入条件的指令) 在输入条件成立(ON 或 OFF)期间,为 每周期执行的指令。 每周期执行型输出 型指令 例: MOV ・ 输入系指令时(逻辑开始型及下段接续型指令) 每周期执行接点的读取/比较/位测试等 的处理,如果结果为 ON,输出输入条件(功率流)。 每周期执行型输入系列指令 例: ● 输入微分型指令 ・ 输入上升沿微分型指令(指令语前附有「@」的选择的指令) ·输出系指令时 仅在输入条件的上升沿(OFF→ON)时执行的指令。在下个周期中不执行。 @输入上升沿微分 型指令 例: 1.02 @MOV 1.02 在 OFF→ON 时仅运行 1 次 MOV 指令。 ·输入系指令时(逻辑开始型及下段接续型指令) 每个周期执行读取的接点/比较/位测试等的处理,如果结果由 ON 转成 OFF,则为 输出输入条件(功率流)的指令。 输出的输入条件在(1 周期 ON 之后)在下个周期中转成 OFF。 输入上升沿微分型指令 ↑ 例: 1.03 ↑ 1.03 的输入接点在 OFF→ON 时输入条件转成 ON,1 周期后转成 OFF。 1-17 1-1 编程的概念 1-1-8 关于执行条件 1 ・输入系指令时(逻辑开始型及下段接续型指令) 编 每个周期执行读取接点/比较/位测试等的处理,结果由 OFF→ON 时除外,输出输 程 的 入条件(功率流)的指令。 概 念 输入上升沿微分型指令 例: 1.03 ↑ ↑ 1.03 的输入接点在 OFF→ON 时转成 OFF, 1 周期后转成 ON。 ・ 输入下降沿微分型指令(指令语前附有「%」的选择的指令) ・输出系指令时 仅能在输入条件的下降沿(ON→OFF)时执行的指令。在下个周期中不执行。 %输入下降沿微分 型指令 例: 1.02 [%SET ] 1.02 在 ON →OFF 时仅运行 1 次 SET 指令。 ・输入系指令时(逻辑开始型及下一段连接指令) 每个周期执行读取接点/比较/位测 试等的处理,如果结果由 ON→OFF,输出输入条件(功率流)的指令。 输出的输入条件在(1 周期 OFF 之后)在下个周期中转成 ON。 输入下降沿微分型指令 ↓ 例: 1.03 ↓ 1.03 的输入接点在 ON→OFF 时转成 ON,1 周期后转成 OFF。 注: 输入下降沿微分型的选择(%)与输入上升沿微分指令不同,只可附加 LD、AND、OR、SET、 RSET 指令。希望用其他指令将输入下降沿微分作为执行条件时,请将 DIFD 指令或 DOWN 指令组合。 ・ 输入系指令时(逻辑开始型及下段接续型指令) 每个周期执行读取接点/比较/位测 试等的处理,结果由 ON→OFF 时除外,不输出输入条件(功率流)的指令。 输出的输入条件在(1 周期 OFF 之后)在下个周期中转成 ON。 输入下降沿微分型指令 ↓ 例: 1.03 ↓ 1.03 的输入接点在 ON→OFF 时转成 OFF,1 周 期后转成 ON。 1-18 1-1 编程的概念 1-1-9 各输入输出指令的动作时间 1-1-9 各输入输出指令的动作时间 1 对于由 LD 指令和 OUT 指令构成的程序,各种指令动作的区别用时序图进行表示。 编 程 的 概 念 1-19 1-1 编程的概念 1-1-9 各输入输出指令的动作时间 1 ● 微分指令及输入微分指令 编 ·微分指令在内部保持上次值为 ON 或 OFF 的标志。 程 的 概 运行开始时,必须将上升沿微分指令(带 DIFU/@指令)上次值的标志设为 ON,将 下降沿微分指令(带 DIFD/%指令)上次值的标志设为 OFF。因此运行开始时无法立 念 刻进行微分输出。 ·对于上升沿微分指令(带 DIFU/@指令),仅在上次值的标志为 OFF,输入为 ON 时, 才能进行 ON 输出。 ·在 IL-ILC 指令内使用时 在下述示例中,微分指令的上次值的标志保持 IL 前的内容,由于在 IL 中不被刷新, 因此在 A 点不进行微分输出。 ・ 在 JMP-JME 指令中使用时 和 IL 指令相同,微分指令的上次值的标志保持 JMP 指令前的内容,进行转移时不被 刷新。 ・下降沿微分指令(带 DIFD/%指令),仅在上次值的标志为 ON,输入为 OFF 时,才 能进行 ON 输出。 ・上升沿微分和下降沿微分指令都在下一个周期时将输出设为 OFF。 参考 ・请勿将 ON(始终 ON 标志)和 A200.11(运行开始时 1 周期 ON 标志)作 为输入上升沿微分型指令的输入继电器使用。 ・请勿将 OFF(始终 OFF 标志)用作输入下降沿微分型指令的输入继电器。 ・以上任何情况下指令都不被执行。 1-20 1-1 编程的概念 1-1-10 关于刷新时间 1-1-10 关于刷新时间 1 实际的 I/O 刷新时间方式有以下 2 种。 编 程 ・周期刷新 的 ・每次刷新(!指定的指令及 IORF 指令) 概 念 ■ 周期刷新 分配在「可执行」状态的周期执行任务或中断条件成立任务中的各个程序,从前端程序 地址开始一直执行到 END 指令为止。在已全部执行「可执行」状态的周期执行任务之后, 进行 I/O 的整体刷新。 参 考 在 CP 系列中由于能够执行多任务程序,因此 I/O 刷新时间处在(在该周期中 的「可执行」状态周期执行任务中)执行分配于最大任务 No.程序中的 END 指令之后。 前端 !LD 1.01 !OUT 2.09 END 前端 !MOV 3 4 END I/O 刷新 15 0001 CH 15 0002 CH 0 0 16 位单位 15 0003 CH 15 0004 CH 0 0 16 位单位 周期刷新(整体) 全部实际 I/O 数据 如果在各周期执行任务执行后希望进行 I/O 刷新,请在 END 指令前,对实际 I/O 的全部数据或指定范围执行带每次刷新选项指令或 IORF 指令。 1-21 1-1 编程的概念 1-1-10 关于刷新时间 1 ■ 每次刷新 编 ● 利用每次刷新选项指定(!)指令时 程 的 作为操作数,在指定 CPU 单元内置输入输出的实际 I/O 地址(输入输出继电器区域)时, 概 执行指令时进行以下刷新。 念 ·位指定指令时: 对包括该位的 16 位进行 I/O 刷新。 ·通道指定指令时: 对指定 16 位进行 I/O 刷新。 ·输入或源(S)操作数时: 指令执行前进行 IN 刷新。 ·输出或目标(D)操作时: 执行指令之后进行 OUT 刷新。 在指令语言前附加「!」(每次刷新选项)。 注:对于 CPM1A 扩张单元中所分配的实际 I/O 数据,每次刷新选项指定(!)为无效。(不进行 每次刷新) 请使用 IORF 指令。 ● 利用 IORF 指令时 作为应用指令,事先备有刷新指定通道范围的实际 I/O 数据的「I/O 刷新(IORF)指令」。 使用该指令后,在周期中可以仅刷新 CPM1A 扩展单元中的实际 I/O 的全部数据或指定范 围内的数据。 注:对于 CPU 单元内置的实际 I/O 数据,IORF 指令为无效。(不进行每次刷新)请使用每次刷新 选项指定(!)。 此外,该 IORF 指令也能对扩展的 CJ 系列高功能 I/O 单元的分配继电器区域进行每次刷 新。 ● 利用 DLNK 指令时(CP1H CPU 单元) 对 CJ 系列 CPU 高功能 I/O 单元的分配继电器区域以及分配 DM 区域进行每次刷新时, 以及同时进行数据链路等的 CPU 高功能单元固有的刷新时,使用 DLNK 指令(CPU 高 功能单元每次 I/O 刷新指令)。 在 DLNK 指令中指定单元编号,以单元为单位对以下区域进行整体刷新。 ·分配继电器区域 ·分配 DM 区域的刷新 ·单元固有的刷新(Controller Link 单元的数据链路、DeviceNet 远程 I/O 通信) 1-22 1-1 编程的概念 1-1-11 关于程序容量 1-1-11 关于程序容量 1 在 CP 系列中用户程序(全任务的程序)的合计最大程序容量如下所示。合计步数必须小 编 程 于最大程序容量。超过容量时将不能写入程序。 的 指令的长度为 1~7 步,各指令不同。 关于各指令的长度(步数)请参见「第 4 章 指令处理时间/步数一览表」。 概 念 此外,在倍长指令中,若操作数为常数,每一个使用数增加一个步数。 系列 单元类型 型号 最大程序容量 CP 系列 XA CP1H-XA40D□-□ 20K 步 CP1H CPU 单元 X CP1H-X40D□-□ Y CP1H-Y20DT-D CP 系列 M CP1L-M40D□-□ 10K 步 CP1L CPU 单元 CP1L-M30D□-□ L CP1L-L20D□-□ 5K 步 CP1L-L14D□-□ 注:传统机种的程序容量以「字」为单位进行计算。而在 CP 系列中以「步」为单位进行计算。关 于将传统机种(SYSMAC 或 CVM1/CV 系列)的程序容量换算(字→步的换算)为 CP 系列 的程序容量的换算标准,请参见「第 4 章 指令处理时间/步数一览表」的参考「由传统机种 换算为 CP 系列的程序容量换算的标准」。 1-23 1-1 编程的概念 1-1-12 梯形图程序的基本概念 1 1-1-12 梯形图程序的基本概念 编 程 由于 CP 系列按照存储器中保存的指令语言的顺序(助记符的顺序)来执行各指令,因此 的 必须具有正确的编程概念和正确的执行顺序。 概 念 ● 梯形图的构成要素 梯形图由左右母线、连接线、接点、输出线圈、应用指令组成。 程序由多电路构成。所谓电路是指切断母线时可以分割的单位(在助记符中,由 LD/LD NOT 指令~LD/LD NOT 指令之前的输出系指令)。 电路由以(表示逻辑开始)LD/LD NOT 指令为前端的电路块构成。 ● 助记符 所谓助记符是指用指令语言记述梯形图的一系列程序。 具有程序地址,一个程序地址=一个指令语言。 例) 程序地址 0 1 2 3 4 5 6 7 8 9 指令语言(助记 操作数 符) LD 0.00 AND 0.01 LD 0.02 AND NOT 0.03 LD NOT 1.00 AND 1.01 OR LD AND LD OUT 102.00 END 1-24 1-1 编程的概念 1-1-12 梯形图程序的基本概念 ● 梯形图程序的基本概念 1 (1) 用 PLC 执行梯形图程序时,信号(功率流)的流向为左→右。对于希望由右→左 编 转动的动作不能进行程序化。请注意由一般控制继电器构成的电路的动作不同。 例如由 PLC 执行图 a 的电路时,括弧内的二极管作为插入的电路进行动作,不能 程 的 概 转入接点 D 来驱动线圈 R2。实际上按照右侧所示的助记符的顺序执行。 念 实现不存在二极管的电路动作时,需要改写电路。此外,对如图 b 的电路动作不 能直接程序化,需要进行改写。 图 a 时,不能转入接点 D 来驱动线圈 R2。 图 b 时,转入接点 E 的电路不能在梯形图中表现,需要进行改写。 (2) 在输入输出继电器、内部辅助继电器、定时器等接点的使用次数中没有限制。但 是,与节约接点使用数的复杂电路相比,结构简单的电路在维护等方面可以算是 一种最佳的设计方法。 (3) 在串联•并联电路中,构成串联的接点数和构成并联的接点数中没有限制。 (4) 能够并联连接 2 个以上输出线圈。 (5) 能够将输出线圈作为接点使用。 102.00 102.00 1-25 1-1 编程的概念 1-1-12 梯形图程序的基本概念 1 ● 梯形图程序构成上的限制 编 (1) 必须按照从左母线的信号(功率流)向右母线流动一样的顺序来关闭梯形图程序。 程 的 没有关闭时为「电路出错」(但是可以运行)。 概 念 (2) 不能直接通过左母线来连接输出线圈、定时器、计数器等输出系指令。直接连接 左母线时,由 CX-Programmer 进行的程序检查中会出现「电路出错」(但是可以 运行。此时的 OUT 指令和 MOV 指令不动作)。 MOV 若要始终为 ON 输入时,请插入不使用的内部辅助继电器的常闭接点或状态标志 的 ON(始终 ON 接点)。 不使用的内部辅助继电器 ON(始终 ON 标志グ) MOV (3) 输出线圈等输出系指令的后面不能插入接点。接点必须插到输出线圈等输出系指 令的前面。如果在输出系指令的后面插入接点,由 CX-Programmer 进行的程序检 查中会出现「配置出错」。 1-26 1-1 编程的概念 1-1-12 梯形图程序的基本概念 (4) 不能重复使用输出线圈的继电器编号。一个周期中由于梯形图程序按照从上到下 1 的顺序来执行,因此即使双重使用时,较下的电路动作结果最终仍将反映在输出 编 线圈中。 程 的 概 输出线圈 100.00 念 输出线圈 100.00 (5) 输入继电器在输出线圈(OUT)中不能使用。 输入接点 0.00 (6) 请务必在分配到各任务的各程序的最后插入 END 指令。 ・运行没有 END 指令的程序时,作为「无 END 指令」出现「程序出错」。 CPU 单元的「ERR/ALM」LED 灯亮,不执行程序。 程序中有多个 END 指令时,仅执行到最初的 END 指令为止的程序。 试运行时,每个时序电路的分段插入 END 指令。 确认程序后,如果删除当中 的 END 指令,则可以较顺利地进行试运行。 任务(程序) 000000 000001 任务(程序) 000000 000001 END 任务(程序) 000000 000001 END END 任务(程序) 000000 000001 不执行 END 任务(程序) 000000 000001 END END 任务(程序) 000000 000001 不执行 END END 1-27 1-1 编程的概念 1-1-13 助记符输入的方法 1 1-1-13 助记符输入的方法 编 程 由 LD/LD NOT 指令开始执行逻辑开始。从逻辑开始后到下一个 LD/LD NOT 指令 的 之前的指令为止,为 1 个电路块。 概 念 根据需要由 AND LD 指令对这个电路块进行 AND 连接(将从 LD 开始的块作为 AND), 或由 OR LD 指令进行 OR 连接(将从 LD 开始的块作为 OR)后,构成一个电路。 以下图所示的复杂电路为例,对助记符输入方法(电路的汇总方法和顺序)进行说明。 (1) 首先将电路分割成小的块(a)~(f)。 (2) 每个块按照①→⑤的顺序进行程序化,最终形成如较大的⑤所示的 1 个块。 各块中按左→右的顺序进行程序化。 块之间首先按上→下,然后按左→右的顺序进行程序化。 ɹ 1-28 1-1-14 程序例 (1)并联/串联电路示例 (2)串联/并联电路例 (3)串联电路的串联连接例 1-1 编程的概念 1-1-14 程序例 1 编 程 ·对 a 块的并联电路进行程序化后,再对 b 块进行程 的 序化。 概 念 ·分割为 a 块和 b 块,分别进行程序化。 ·用 AND LD 来汇总 a 块和 b 块。 ·对 a 块进行程序化。 ·对 b1 块进行程序化之后再对 b2 块进行程序化。 ·用 OR LD 来汇总 b1 块和 b2 块,或用 AND LD 来 汇总 a 块和 b 块。 ·对 a1 块进行程序化之后再对 a2 块进行程序化,用 OR LD 来汇总 a1 和 a2。 ·b1、b2 也同样进行程序化。 ·用 AND LD 来汇总 a 块和 b 块。 ·块在 a~n 中为连续时也一样。 a→b→(a·b)→c→(a·b·c)→d→… 1-29 1-1 编程的概念 1-1-14 程序例 1 (4)复杂的电路 编 程 的 概 念 1-30 1-1 编程的概念 1-1-14 程序例 (5)应注意的电路/需要改写的电路 1 ● OR 指令和 OR LD 指令 编 由于 OR/OR NOT 指令对于从 LD/LD NOT 指令开始到 OR LD 指令到来之前的 逻辑为 OR(逻辑和),因此有时可以通过改写而不需要 OR LD 指令。 程 的 概 例)对左图所示的电路直接进行程序化 念 0.00 102.00 0.01 102.00 102.00 时,需要 OR LD 指令。通过改写可 以节约步数。 0.01 102.00 0.00 ● 输出系指令的分支 AND/AND NOT 指令之前进行分支时,需要临时存储继电器(TR)。而从连接直接 输出系指令的点进行分支时,不需要临时存储继电器(TR),能够直接继续 AND/AND NOT 指令和输出系指令。 例)对左图所示的电路进行直接程序化 时,需要在分支点的临时存储继电 器 TR0 的输出指令以及加载(LD) 指令。通过改写可以节约步数。 ● 助记符的执行顺序 由于 PLC 按照助记符顺序执行指令,因此根据电路的写法,有时不会出现期待的动作。 制作梯形图电路时应意识到助记符的执行顺序。 例)左图的电路中,不能输出 102.10。 通过改写为右图,102.10 仅在 1 周 期中输出可为 ON。 ● 需要改写的电路 由于 PLC 按照助记符顺序执行指令,因此信号的流向(功率流)为梯形图的左→右。希 望从右向左进行的转入动作,不能实现程序化。 例)对于左图的电路,由于通过由临 时存储继电器(TR0)来接受分支 点,因此可进行程序化。 但是作 为动作与右侧的电路相等。为便 于理解,建议按右图所示进行改 写。 ·左图所示的电路不能进行程序化, 因此请进行改写。 ·箭头为由控制继电器构成电路时的 信号(功率流)流向。 1-31 1-2 编制程序时的注意事项 1-2-1 使用状态标志的注意事项 1 编 1-2 编制程序时的注意事项 程 的 概 念 1-2-1 使用状态标志的注意事项 ■ 状态标志的使用方法 状态标志由于在各指令共通中使用,因此每次执行各指令时,根据其执行结果在 1 周期 内发生变化。 因此反映 1 个指令的执行结果时,请在该指令后使用相同执行条件的输出分支。 由于将状态标志直接连接到母线后,将反映其他指令的执行结果,因此请勿与母线直接 连接。 例:接收指令 A 的执行结果时 助记符 指令 操作数 LD a 指令 A AND = 指令 B 希望根据指令 A 的执行结果执行指令 B 时,指令 A 和指令 B 为相同的执行条件(a)。因此只有 在指令 A 被执行时,根据状态标志的状态,执行指令 B。 错误的使用方法 之前的电路 指令 A 条件标志 例:= 指令 A 为非执行时。反映即刻前的 电路执行结果 指令 B 注:一个程序(任务)中的所有指令均可使用状态标志,但是进行任务切换时被 清除,因此任务间不能反映以前任务的执行结果。 注:状态标志在 1 个程序(任务)中共同使用,但是进行任务切换时被清除,因此任务间不能反映 以前任务的执行结果。 1-32 1-2 编制程序时的注意事项 1-2-1 使用状态标志的注意事项 由于状态标志在各指令中共通使用,因此请注意不要在 1 个程序中产生干扰。 1 例如,如下所述。 编 程 1)由 a 接点和 b 接点接受指令 A 的执行结果时 的 概 即使从相同的输出分支中接受 a 接点和 b 接点,状态标志也会如下所示接受指令 B 的执 念 行结果。 指令 A 条件标志 例:= 条件标志 例:= 反应指令 A 的执行结果 指令 B 反应指令 B 的执行结果 因此,为了不接受指令 B 的执行结果,请按如下所示方法先用 OUT 指令来接受各个结果。 反应指令 A 的执行结果 指令 A 条件标志 例:= C 条件标志 例:= 反应指令 A 的执行结果 D C 指令 B D 1-33 1-2 编制程序时的注意事项 1-2-1 使用状态标志的注意事项 1 例:D100 的内容为#10 时,将#200 传送到 D200。 编 D100 的内容不为#10 时,将#300 传送到 D300。 程 的 概 CMP 念 #10 D100 反映 CMP 的执行结果 = MOV #200 (1) D200 反映 MOV 的执行结果 = MOV #300 (2) D300 在上述电路中,D100 的内容为#10 时,=标志为 ON。 根据(1)将#200 传送到 D200, 之后由于传送源数据#200 不为 0000 Hex,因此=标志为 OFF。 其结果,执行(2) 的 MOV 指令,将#300 传送到 D300。 此如下所述,为了不接受 MOV 指令的执行结果,有必要组合电路。 CMP #10 D100 反映 CMP 的执行结果 = A = B A MOV #200 D200 B MOV #300 D300 1-34 1-2 编制程序时的注意事项 1-2-1 使用状态标志的注意事项 2)接受输入微分型指令的执行结果 1 输入微分型指令时,指令的执行结果仅在输入条件的上升沿时反映在状态标志中。 在下 编 一个周期中,不仅是该指令的执行结果,之前的电路结果也反映在状态标志中。 因此接受输入微分型指令的执行结果时,必须注意状态标志在下一个周期内会如何变化。 程 的 概 例如在下述示例中,仅在输入条件 C 的上升沿时执行指令 A 以及 B,此时在用指令 B 接 念 受指令 A 的执行结果时会发生以下问题。 用输入条件的上升沿执行指令 A 后,在下一个周期中输入条件 C 为 ON 的情况下,通过 之前电路的反映结果使状态标志由 OFF→ON 时,指令 B 在输入条件为上升沿时意外被 执行。 之前的电路 C 条件标志 例: = 指令 A 指令 B 输入条件为上升沿时反映指令 A 的 执行结果 在下一周期中,反映之前的电路的 执行结果 此时,如下所示,不将指令 A 以及 B 作为输入微分型指令,用 DIFU(或 DIFD)指令接 受,以指令 A 以及 B 为基础,只在上升沿(或下降沿)1 周期中执行。 之前的电路 C D DIFU D 指令 A 条件标志 例: = 反映指令 A 的执行结果 指令 B 参考 通过使用 CCS(状态标志存储)指令/CCL(状态标志加载)指令,在任 务(程序)内的不同位置、任务间或以后的周期中,可以对状态标志进行存 储/恢复。 1-35 1-2 编制程序时的注意事项 1-2-1 使用状态标志的注意事项 1 ■ 各状态标志的主要成立条件 编 程 的 ● ER 标志 各指令的操作数数据不正确时 ER 标志为 ON。 概 ER 标志为 ON 时不能执行该指令。 念 ER 标志为 ON 时其他状态标志<、>、OF、UF 没有变化。=和 N 的动作因各指令而异。 关于 ER 标志的成立条件,请参见本手册中各指令的说明项。 根据指令的执行,存在无条件将 ER 标志设为 OFF 的指令,请注意。 参考 ER 标志为 ON 时,由 PLC 系统设定的「指令出错发生时执行停止」指定是 否要停止运行。 缺省值中 ER 标志为 ON 时继续运行。 ER 标志为 ON 并指定「运行停止」时,(转为程序出错处理)运行停止的 情况下,停止位置的程序地址被存储在特殊辅助继电器 A298~A299 CH 中。 同时特殊辅助继电器的 A295.08 为 ON。 ● =标志(等于标志) =标志在比较结果的等于(=)条件成立之外时,作为各种指令的临时(暂时存储)标 志由系统自动进行设置和变化。 即使通过某个指令的执行结果将=标志设为 ON(OFF),也会因其他指令使=标志转成 OFF(ON),请务必注意。 例如,对于 MOV 等的传送指令,在传送源数据为 0000 Hex 时将=标志设为 ON,不为 0000 Hex 时将=标志设为 OFF。因此通过某个指令将=标志设为 ON 时,如果立刻执行 传送指令,则将根据传送指令的传送源数据是否为 0000 Hex,而使=标志转成 ON/OFF。 根据指令,由于存在只在指令执行时使=标志为 OFF 的情况,请务必注意。 ● CY 标志(进位标志) CY 标志除在移位指令中使用之外,还在带 CY 加法・减法指令的输入、加法・减法指令 的位溢出、借位、PID 指令、FPD 等指令中使用。 以下情况中需注意。 1) 因某个指令的执行结果而使 CY 标志为 ON(OFF)状态的情况下,执行将 CY 标志 作为输入使用的其他指令(带 CY 加法・减法指令、移位指令)时 2) 根据某个指令的执行结果,即使将 CY 标志设为 ON(OFF),也会因其他指令使 CY 标志转成 OFF(ON)时 1-36 1-2 编制程序时的注意事项 1-2-1 使用状态标志的注意事项 ● >、<标志 1 >、<标志除用于比较指令之外,还在 LMT、BAND、ZONE、PID 指令等的数据控制指 编 令中使用。 通过某个指令的执行结果,即使将>、<标志设为 ON(OFF),也会因其他指令使>、 程 的 概 <标志转成 OFF(ON),请务必注意。 念 ● N 标志(负标志) N 标志除指令执行结果的 CH 的最高位位为“1”时,通过执行指令还存在只由指令执行 可 无条件转成 OFF 的情况,请注意。 ● 指令的操作数指定多通道时的注意事项 指令的操作数指定的多通道即使不为同一区域的种类时,在 CP 系列中指令也照常(根据 I/O 存储器有效地址排列顺序)执行。此时,请注意 ER 标志不为 ON。 例如按以下所示方法执行 XFER(块传送)指令时,将传送源数据的 W500 CH 作为前端 的 20 CH 超过内部辅助继电器 WR 区域的最大地址(W511 CH),但是在执行指令时不 置 ON ER 标志,XFER 指令照常执行。此时在 I/O 存储器有效地址中,由于 WR 区域的 下个地址为定时器的当前值区域,因此在 W500~W511 CH 被传送到 D0~D11 的同时, T0~T7 的当前值也被传送到 D12~D19 中。 注:I/O 存储器有效地址的存储器映像,请参见 CP1H 的「CP 系列 CP1H 操作手册」的「附录-3 存 储器映像(I/O 存储器有效地址)一览」、CP1L 的「CP 系列 CP1L 操作手册」的「附录-5 存 储器映像(I/O 存储器有效地址)一览」。 ~ XFER &20 传送 CH 数 W500 传送源低位 CH 编号 D0 传送目的低位 CH 编号 ~ ~ W500 W511 -------- T0000 T0007 ~ ~ 传送 ~ D00000 D00011 D00012 ~ D00019 ~ 1-37 1-2 编制程序时的注意事项 1-2-2 关于特定程序区域的注意事项 1 1-2-2 关于特定程序区域的注意事项 编 程 CP 系列的程序中除通常的程序区域之外,还存在使指令条件成立的特定程序区域。 的 概 具体有以下程序区域。 念 程序区域 指令 使成立的指令条件 状态的内容 子程序 SBS 指令/SBN 指令/RET 执行子程序中 正在执行 SBN-RET 指令 区域 指令 间的子程序区域的状态 IL-ILC 区域 IL 指令/ILC 指令 IL 中 将输出继电器设为 OFF, 步梯形图区域 STEP 指令 复位定时器 不执行其他指令,保持之前 的状态 FOR-NEXT 区域 FOR 指令/NEXT 指令 BREAK 中 正在执行反复的状态 JMP0-JME0 区域 JMP0 指令/JME0 指令 正在执行转移的状态 块程序区域 BPRG 指令/BEND 指令 执行块程序中 执行 BPRG 指令-BEND 指令之间的助记符所记述 的块程序指令 ■ 能否对各特定程序区域的指令进行组合 在各特定程序区域的指令使用中,存在以下限制。 子程序区域 IL-ILC 步梯形图区域 FOR-NEXT 循环 JMP0-JME0 块程序区域 子程序区 IL-ILC 域内 区域内 × × ○ × × ○ ○ ○ ○ ○ ○ ○ 步梯形图区 域内 × × × × × ○ FOR-NEXT JMP0-JME0 块 区域内 区域内 程序区 域 内 × × × ○ ○ × × ○ × ○ ○ × × × × × ○ × 注:·×为不可使用,○为可使用。 ·表示程序区域的指令不能跨过任务使用。详细内容请参见 2-2 项「任务的使用方法」中的 「2-2-2 任务引起的指令使用限制」。 1-38 1-2 编制程序时的注意事项 1-2-2 关于特定程序区域的注意事项 ■ 关于子程序区域 1 子程序区域配置在各程序内的 END 之前(有多个子程序时进行归并),子程序以外的程 编 程 序之后。(因此子程序区域不能配置在步梯形图区域、块程序区域、FOR-NEXT 区域、 的 JMP0-JME0 区域、块程序区域的任一个区域中) 概 如果在子程序区域(SBN~RET)之后配置子程序以外的程序,该常用程序将不被执行, 念 为无效。 程序 子程序 程序 子程序 ■ 子程序区域内可使用的指令 子程序定义区域内禁止使用的指令如下。 各功能分类 工程步进控制 助记符 STEP SNXT 指令语句 步梯形区域定义 步梯形图步进 注:关于块程序区域 可在子程序区域内可构成块程序区。但是子程序调用时,块程序为 WAIT 状态,返回后,由 于保持块程序的状态,因此进行下个子程序调用时从 WAIT 状态开始执行。 1-39 1-2 编制程序时的注意事项 1-2-2 关于特定程序区域的注意事项 1 ■ 步梯形图程序区域中不能使用的指令 编 程 步梯形图程序区域内不能使用的指令如下。 的 各功能分类 助记符 指令语句 概 时序控制 FOR/NEXT/BREAK 重复开始/重复完成/循环断开 念 END 结束 IL/ILC 联锁/联锁清除 JMP/JME 转移/转移结束 CJP/CJPN 条件转移/条件否定转移 JMP0/JME0 复数转移/复数转移结束 子程序 SBN/RET 子程序入口/子程序回车 块程序 IF(IF NOT)/ELSE/IEND 条件分支块、条件分支块(否定)/条件分支伪 块/条件分支块结束 BPRG/BEND 块程序/块程序结束 EXIT、EXIT NOT 带条件结束、带条件结束(否定) LOOP/LEND(LEND NOT) 重复块/重复块结束、重复块结束(否定) WAIT(WAIT NOT) 1 扫描条件等待、1 扫描条件等待(否定) TIMW/TIMWX 定时等待 TMHW/TMHWX 高速定时等待 CNTW/CNTWX 计数等待 BPRS/BPPS 块程序再起动/块程序暂时停止 注:·互锁区域(IL~ILC)中可以使用步梯形图程序。互锁时步梯形图区域内全部被复位。 ·多转移(JMP 0)~多转移结束(JME 0)中可使用步梯形图程序区域。 1-40 1-2 编制程序时的注意事项 1-2-2 关于特定程序区域的注意事项 ■ 块程序区域内不能使用的指令 1 块程序区域内不能使用的指令如下。 编 程 各功能分类 助记符 指令语句 的 时序控制 FOR/NEXT/BREAK 重复开始/重复完成/循环断开 概 IL/ILC 联锁/联锁清除 念 JMP0/JME0 复数转移/复数转移结束 END 结束 时序输入 UP 功率流,上升沿微分 DOWN 功率流,下降沿微分 时序输出 DIFU 上升沿微分 DIFD 下降沿微分 KEEP 保持 OUT 输出 OUT NOT 输出非 定时器/计数器 TIM/TIMX 时间 TIMH/TIMHX 高速时间 TMHH/TMHHX 超高速时间 TTIM/TTIMX 累计时间 TIML/TIMLX 长时间时间 MTIM/MTIMX 多输出时间 CNT/CNTX 计数器 CNTR/CNTRX 可逆计数器 子程序 SBN/RET 子程序入口/子程序回车 数据移位 SFT 移位寄存器 工程步进控制 STEP/SNXT 梯形图程序区域定义/梯形图程序步进 数据控制 PID PID 计算 块程序 BPRG 块程序 故障诊断 FPD 故障点检测 带微分选项 @XXX 输入上升沿微分型指令 %XXX 输入下降沿微分型指令 注:·步梯形图程序区域内可以使用块程序。 ·互锁区域(IL~ILC 中)内可以使用块程序区域,但是在互锁时块程序区域不动作。 ·多转移(JMP0)~多转移结束(JME0)中可以使用块程序区域。 ·块程序区域内可以使用转移指令(JMP)/带条件转移指令(CJP),但是在块程序区域内 如果转移指令(JMP)~转移结束(JME)/带条件转移指令(CJP/CJPN)~转移结束(JME) 不成对,会引起误动作,不能使用。 1-41 1-3 程序的检查 1-3-1 CX-Programmer 操作时的检查 1 编 1-3 程序的检查 程 的 概 念 在 CP 系列中,对于制作的程序可分成以下 4 个阶段进行检查。 ·CX-Programmer 输入操作等时的检查 ·通过 CX-Programmer 的程序检查功能的检查 ·指令执行时的检查 ·停止运行出错(程序出错)时的检查 1-3-1 CX-Programmer 操作时的检查 在 CX-Programmer 中遇到以下情况时,系统自动进行程序检查。 检查时间 梯形图程序输入时 加载文件时 下载时 联机编辑时 检查内容 指令输入、操作数输入、电路图 由全指令的全操作数确认,由电路图确认 CP 系列的支持机种,全指令的全操作数 超过容量等 检查结果显示在输出窗口的文本标签中。此外,关于在梯形图视图中含出错的电路,其 左母线用红色表示。 1-42 1-3 程序的检查 1-3-2 CX-Programmer 的程序检查功能 1-3-2 CX-Programmer 的程序检查功能 1 以下为通过 CX-Programmer 的程序检查功能所能检测的出错一览表。 编 程 CX-Programmer 的程序检查功能中,不进行指令的间接指定操作数的范围出错检查。 的 指令的操作数数据不正确时,通过下一项所示的执行指令时的检查,ER 标志转成 ON。 详细内容请参见各指令语言的说明。 概 念 CX-Programmer 中能够将程序检查设为 A、B、C(重要的项目按照 A、B、C 的顺序进 行),以及自定义等 4 个等级。 详细的检查内容如下所示。 程序检查的观点 数据未确定检查 (作为正常的电路是否成立) 指令存在检查 (是否为存在于 PLC 的指令・操作数) 操作数检查 (操作数是否在可动作的范围内) 程序容量检查 (是否在对象 PLC 机种的 UM 容量内) 语句结构检查 (梯形图语句结构是否正确) 检查内容 指令的位置检查 不正确输入输出线的检查 不正确连接线的检查 指令、操作数为空的检查 存在于 PLC 的指令、操作数 执行条件(NOT、!、@、%) 对象代码被破坏的指令・操作数 操作数区域范围的检查 操作数数据型的检查 向读出专用区域的存取检查 在支持指令的操作数范围外 ·常数检查(#、&、+、-) ·控制代码的检查 ·在多操作数中的同一区域检查 ·在多操作数中的大小关系检查 ·操作数范围的重复检查 ·多通道的占有检查 ·倍长指令操作数检查 ·超越偏移区域的检查 STEP 数 MAX 检查 容量 MAX 检查 超越任务 MAX 检查 对应不成立(配对的指令不存在) ·IL-ILC ·JMP-JME、CJP/CJPN-JME ·SBS-SBN-RET、MCRO-SBN-RET ·STEP-SNXT ·BPRG-BEND ·IF-IEND ·LOOP-LEND 在特定区域内不可使用(BPRG-BEND) 在特定区域内不可使用(SBN-RET) 在特定区域内不可使用(STEP-SNXT) 在特定区域内不可使用(FOR-NEXT) 在特定区域内不可使用(中断任务) 1-43 1-3 程序的检查 1-3-2 CX-Programmer 的程序检查功能 1 编 程序检查的观点 检查内容 程 语句结构检查 嵌套不对 的 (梯形图语句结构是否正确) 没有 END 指令 概 编号不一致 念 电路形状检查 栈溢出 (电路形状是否合适) 双重使用检查 线圈双重使用 (线圈双重使用检查)*1 ·1 bit 单位检查 ·1 CH 单位检查 ·TIM/CNT 系指令 ·倍长(2 CH、4 CH) ·拥有 CH 多数 ·开始/完成范围 ·FAL 编号检查 ·具有多输出系操作数的指令语言 相关任务检查(关于任务的检查) 运行开始时起动任务是否存在的检查 未分配任务的程序检查 *1:任务中不进行线圈双重使用的检查。 ● 关于指定指令操作数的多通道时的程序检查 进行下表的检查。 检查时间 多通道不为同一区域种类时,如下所示。 ·将用户程序传送给 CPU 单元时,无法将用户程序传送给 CPU 单元。 ·从 CPU 单元中读出用户程序时,无法从 CPU 单元中读出用户程序。 ·执行 CX-Programmer 的程序检查(根据用户指示)时,编译出错。 ·离线状态下进行程序制作时,画面上显示警告。 ·在「程序」模式或「监视」模式中进行联机编辑时,画面上显示警告。 1-44 1-3 程序的检查 1-3-3 指令执行时的检查 1-3-3 指令执行时的检查 1 对于指令,在 CX-Programmer 中进行输入操作以及执行程序检查功能时,进行操作数和 编 程 指令配置的检查,但这不是最终的检查。 的 因此执行指令时也要进行以下检查。 概 念 执行指令时的出错中有以下 4 种。 指令执行时的出错种类 1.指令处理出错(ER 标 志 ON 出错) 2.不适当区域存储出错 (AER 标志 ON 出 错) 3.不适当指令出错 4.UM(用户存储器) 溢出出错 发生时成为 ON 的标志 发生时的运行停止/继续 ER 标志 注:发生时指定运行停止的情况 下,指令处理出错标志 (A295.08)为 ON 在 PLC 系统设定中指定停止/继续。(缺省 值:运行继续) 只有指定为停止时,程序出错,运行停止。 AER 标志 注:发生时指定运行停止的情况 下,不适当区域存储出错标志 (A295.10)为 ON 在 PLC 系统设定中指定停止/继续。(缺省 值:运行继续) 只有指定为停止时,程序出错,运行停止。 不适当指令标志(A295.14) 运行停止(程序出错) UM 溢出标志(A295.15) 运行停止(程序出错) 1.指令处理出错(ER 标志 ON 出错) ·是指要执行指令时,由于所赋予的数据的值不正确或超越任务执行指令等原因而中断 指令动作的情况。在指令处理的前端对必要数据进行检查,其结果不执行指令,只将 ER 标志(出错标志)设为 ON。此时 N 标志、=标志的动作因指令而异。 指令(除输入系指令)正常结束后,ER 标志(出错标志)为 OFF。 ER 标志的成立条件因各指令而异。请参见各指令的说明项。 · 在 PLC 系统设定中如果将指令出错发生时动作设定设定为停止,指令处理出错发生 (ER 标志为 ON)时,停止运行(运行停止异常),同时「指令处理出错标志」(A295.08) 为 1(ON)。 1-45 1-3 程序的检查 1-3-3 指令执行时的检查 1 2.不适当区域存储出错(AER 标志 ON 出错) 编 程 ·将指令的操作数存储到指定的地址时,以下所示的任何一种情况均指在不适当区域中 的 进行的存储。 概 念 1. 对参数区域进行读入或写入 2. 对没有安装存储器的区域进行写入(注) 3. 对读出专用区域进行写入 4. 在 DM 间接指定(BCD 模式)中,内容不为 BCD 值(例:﹡D00001 的内容为# A000 时) 注:在变址寄存器(IR)间接指定中,将存储接点的 I/O 存储器执行地址的 IR 用作 CH 的情况 下,或将存储 CH 的 I/O 存储器执行地址的 IR 用作接点的情况下。 ·发生不适当区域存储出错时,作为指令处理被继续执行,出错标志(ER 标志)不为 ON。「存储出错标志」(AER 标志)为 ON。 ·在 PLC 系统设定中,如将指令出错发生时动作设定设定为停止,发生不适当区域存储 出错(AER 标志 ON 出错)时停止运行(运行停止异常),同时「不适当区域存储出 错标志」(A295.10)为 1(ON)。 参 考 「存储出错标志」(AER 标志)在任务执行后不被清除。发生指令出错时, 如继续进行设定动作的设定,在 END 指令之前,通过监视本标志可以确认在 该任务的程序内是否发生不适当区域存储出错。(在 CX-Programmer 中监视 AER 标志时,可监视执行用户程序全体后最终的 AER 标志状态)。 1-46 1-3 程序的检查 1-3-4 停止运行的出错(程序出错)检查 3.其他出错 1 ● 不适当指令出错 编 是指要执行由系统定义之外的指令数据时。 程 的 只要在 CX-Programmer 中编制程序,通常不会发生此类出错。 概 万一发生时为「程序出错」,停止运行(停止运行异常)。 同时「不适当指令标志」 念 (A295.14)为 1(ON)。 ● UM(用户存储器)溢出 出错 是指要执行指令数据时,该指令数据为将作为程序存储区域定义的用户存储器(UM)内 的最终地址存储在溢出位置的指令数据。 只要在 CX-Programmer 中编制程序,通常不会发生此类出错。 万一发生时为「程序出错」,停止运行(停止运行异常),同时「UM 溢出标志」(A295.15) 为 1(ON)。 1-3-4 停止运行的出错(程序出错)检查 发生下述出错时,作为停止运行出错(「程序出错」),CPU 单元停止运行。 根据程序出错在执行停止时其停止位置的任务 No.被存储在 A294 CH 中,同时该程序地 址被存储在 A298/A299 CH 中。以此信息为基础,能够用该位置的指令来调查发生程序 出错的原因。 地址 A294 CH A298 A299 CH 说明 保存数据 由于程序出错执行停止时,保存其停止位置的 任务种类以及任务 No.。 注:在可执行状态(起动中)的周期执行任务 一个也不存在的情况下,存储 FFFF Hex。 周期执行任务:0000~001F Hex (周期执行任务 No.0~31) 中断任务:8000~80FF Hex (中断任务 No.0~255) 由于程序出错执行停止时,该停止位置的指令 A298 CH:低位程序地址 的程序地址以 BIN 保存。 A299 CH:高位程序地址 注 1: 无 END 指令发生出错(A295.11 为 ON) 时,存储 END 指令本应存在的程序地址。 注 2: 任务执行中发生出错(A295.12 为 ON) 时,FFFFFFFF Hex 被存储在 A298/A299 CH 中。 1-47 1-3 程序的检查 1-3-4 停止运行的出错(程序出错)检查 1 编 参 考 CP 系列中 ER 标志(出错标志)或 AER 标志(存储出错标志)为 ON 时, 程 的 将其作为「程序出错」进行处理,可停止 CPU 单元的运行。由 PLC 系统设 概 定来指定。 念 程序出错的种类 无 END 指令 任务执行时的出错 指令处理错误 (ER 标志 ON 出错)并且 PLC 系统设定,指令出错 发生时动作设定为 1:停止 无效区域访问错误 (AER 标志 ON 出错)并 且 PLC 系统设定,指令出 错发生时动作设定为 1: 停止 在间接 DM 寻址 BCD 模式 出错并且 PLC 系统设定, 指令出错发生时动作设定 为 1:停止 微分地址为区域溢出 UM(用户存储器)溢出 出 错 不适当指令出错 内容 程序内不存在 END 指令。 该周期内可执行状态的任务一个也不存在。 由任务所分配的程序一个也不存在。 尽管中断任务的执行条件成立,却不存在与 No.对应的中断任务。 要执行指令时,操作数内所赋予的数据值不正 确。 对参数区域进行读入或写入。 对实际上没有安装存储器的区域进行读入或 写入。 对读取专用区域进行写入。 DM 间接指定(BCD 模式)中内容不为 BCD 值。 DM 间接指定(BCD 模式)中内容不为 BCD 值。 联机编辑中重复进行微分指令的插入/删除 时(131,072 次以上)。 执行作为程序存储区域定义的用户存储器 (UM)中的最终地址溢出时的位置指令时。 要执行不能执行的指令。 相关标志 无 END 标志(A295.11) 为 ON 任务出错标志(A295.12) 为 ON 在 ER 标志为 ON 并且 PLC 系统设定时,指令 出错发生时动作设定为 1:指令处理出错时停止 标志(A295.08)为 ON 在 AER 标志为 ON 并且 PLC 系统设定时,指令 出错发生时动作设定为 1:不适当区域存储出错 时停止标志(A295.10) 为 ON 在 AER 标志为 ON 并且 PLC 系统设定时,指令 出错发生时动作设定为 1:停止时 DM 间接 BCD 出错标志(A295.09)为 ON 微分溢出标志(A295.13) 为 ON UM 溢出标志 (A295.15)为 ON 不适当指令标志 (A295.14)为 ON 1-48 1-4 功能块功能 1-4-1 功能块功能的概要和特点 1-4 功能块功能 1 编 程 的 CP 系列中可使用功能块功能。 概 念 关于功能块的详细使用方法,请参见「CX-Programmer Ver. 7.0 操作手册 功能块篇」 (SBCA-338)。 1-4-1 功能块功能的概要和特点 CX-Programmer Ver.5.0 以上,功能块的使用可以依据 IEC 61131-3 标准。作为 PLC 机种, 功能块功能可以支持 CS/CJ 系列 CPU 单元(单元版本 3.0 以上)以及 CP 系列 CPU 单 元。 具有以下特点。 ●利用功能块可以将用户定义的程序块化。 ●功能块的算法可用梯形图语言或 ST(结构化文本)语言*1 来记述。 ·为梯形图语言时,特别对于已经存在的由 CX-Programmer 制作的梯形图程序能够通 过复制(剪切)&粘贴进行再利用。 ·为 ST 语言时,使在梯形图语言中难以记述的数值运算处理更为简易。 *1:所谓 ST(结构化文本)语言是指由 IEC 61131-3 所规定的,工业控制(主要为可编程序控 制器)用的高级语言。由 CX-Programmer 所支持的 ST 语言,依据 IEC-61131-3 标准。 ●由于不需要用文本来记述变量的声明(登录到变量表的方式),因此能够容易地制作 功能块。 用梯形图或文本语言输入变量时,可以自动进行变量的登录。此外,登录到变量表之 后,在梯形图或 ST 上能够输入登录的变量。 ●由于能将制作的 1 个功能块作为 1 个文件来实现库化,因此可简易进行定型处理的再 利用。 ●能够对制作的 1 个功能块进行程序检查,便于确保 1 个功能块作为库的可靠性。 ●包含功能块(梯形图语言或 ST 语言)的程序和不包含功能块的通常程序相同,能够进 行下载/上传。 但是不能以任务单位下载包含功能块的任务(可上传)。 ●由于支持陈列型(1 维陈列)的变量,使利用应用程序的数据处理变得很容易。 参考:IEC61131 规格是作为可编程序控制器(PLC)的国际标准规格 International Electro-technical Commission(IEC)制定,分成 7 个 Part,其中在 Part3 程序语言(IEC 61131-3)中,对 PLC 的程序进行了规定。 ●在功能块(梯形图语言或 ST 语言)中,能够调用其他功能块(梯形图语言或 ST 语言) (最大为 8 级,可自由进行梯形图/ST 语言的调用组合)。 1-49 1-4 功能块功能 1-4-2 功能块相关的规格 1 编 程 1-4-2 功能块相关的规格 的 除以下所记载的规格外,请参见「CX-Programmer Ver.7.0 操作手册功能块篇」(手册 概 念 No.SBCA-338)。 项目 规格 型号 WS02-CXPC1-JV6 安装盘 CD-ROM 适用 PLC(可编程控制器)机种 CP 系列 CPU 单元 单元 Ver. 1.0 以上 CS/CJ 系列 CS1-H /CJ1-H CPU 单元 单元 Ver.3.0 以上 PLC 机种:型号 CS1G-H:CS1G-CPU45H/44H/43H/42H CS1H-H: CS1H-CPU67H/66H/65H/64H/63H CJ1G-H:CJ1G- CPU45H/44H/43H/42H CJ1H-H:CJ1H- CPU67H/66H/65H CJ1M:CJ1M- CPU23/22/21/13/12/11 作为 CS/CJ/CP 系列的功能限制事项: 在功能块定义内不能使用的指令: 块程序指令(BPRG/BEND)、子程序指令 (SBS/ GSBS /RET/MCRO/SBN)、转移指令(JMP/CJP/CJPN)、步梯形图指令 (STEP/SNXT)、每次刷新指定(!)指令、I/O 刷新指令(IORF)、 TMHH 指令 关于其他事项请参见 3-3 项「限制事项」 可使用的计 计算机 算机 CPU DOS/V 计算机或 NEC PC9800 系列 Pentium 133MHz 以上(Windows 98SE/NT SP6 时) OS Microsoft Windows 95/98/98SE/Me/2000/XP 日语版 Microsoft WindowsNT Version4.0 Service Pack6 存储器 64M 字节以上(Windows 98SE/NT SP6 时) 详细内容请参见「CX-Programmer Ver.7.0 操作手册」的「1-3 项 可使用的 PLC 机种和计算机」 硬盘驱动器 100M 字节以上的空余区域 监视器 SVGA(800×600 像素)以上 注:字体尺寸请使用「小字体」 CD-ROM 驱动器 1 台以上 通信接口 RS-232C 端口 1 个端口以上 *1:依据 IEC 61131-3 标准。支持赋值声明、选择声明(CASE 声明、IF 声明)、重复声明(FOR 声明、WHILE 声明、REPEAT 声明、EXIT 声明)、RETURN 声明、四则运算、逻辑运算、比 较运算、数值计算函数、算术函数、注释。 1-4-3 由 CX-Programmer 制作的文件 ● 包含功能块的项目文件 功能块定义以及包含实例的项目,都作为通常的项目文件(扩展名.cxp 的文件)来进行 存储。 项目的内容如下所示。 在和对象 PLC 下的程序同等的目录位置,制作功能块定义。 1-50 项目文件(.cxp) 对象 PLC1 对象 PLC2 1-4 功能块功能 1-4-3 由 CX-Programmer 制作的文件 全局变量表 I/O 表 PLC 系统设定 PLC 储存器表 程序(包含行注释) 局部变量表 部分 1(包含实例) 部分 2(包含实例) END 部分(包含实例) 功能块定义 Function Block1 Function Block1 设置在各部分中, 生成实例。 1 编 程 的 概 念 可将各个功能块保存到功能定义文件中 (.cxf) ● 功能块•库文件(*.cxf) 在 CX-Programmer 中,以 1 定义=1 文件来存储在项目上制作的功能块定义,能够在其 他程序中读出后再利用。 注:功能块内被嵌套时,嵌套(读出)对象的全部功能块定义包含在该功能块•库文件(.cxf)中。 ● 包含功能块项目的文本文件(*.cxt) 能够用文本文件形式作为 CXT 文件(扩展名.cxt)来存储和 CX-Programmer 的项目文件 (.cxp)同等的信息。 1-51 1-4 功能块功能 1-4-3 由 CX-Programmer 制作的文件 1 编 程 的 概 念 1-52 第2章 任务的动作 2-1 程序和任务的概要 2-1-1 概要 2-1 程序和任务的概要 2 任 2-1-1 概要 务 的 在 CP1 系列 CPU 单元中,可以将程序按功能、控制对象、工序、开发者等进行划分,分 动 割为称为「任务」的执行单位,可将用户程序结构化。因此具有以下优点。 作 1.可将程序分割由多人共同开发。 可以很容易地将分割设计的各个程序归并在一个用户程序中。 2.可将程序作为模块实现标准化。 特别是通过与外围工具的如下功能组合,程序可以不依赖于特定的系统(机械・装置), 作为标准程序(模块)具有很高的独立性。其结果能很容易地挪用于其他系统。此外由 多人开发的程序能很容易地进行结合。 ·根据名称的编程 ·名称的全局(程序共同)/局部(程序固有)的指定 ·对「局部变量」地址的自动分配 3.提高总体的响应性能。 将系统分为总体管理程序和个别控制程序,根据需要可以仅使某个控制程序进行动作, 因此就提高了总体的响应性能。 4.修正•调试更加简便。 ·由于可以由多人分工按任务(程序)进行修正调试,因此提高了调试效率。 ·即使在规格变更等时,只需对变更部分的任务(程序)进行修正,因此维护变得简便。 ·根据 CX-Programmer,通过名称的全局/局部指定以及「局部变量」的地址自动分配 功能,在调试时能够很容易地识别某个地址是程序固有的还是与其它程序共用的,另 外由于不需要进行程序间地址的重复检验,提高了调试效率。 5.程序的内务处理变得容易。 在按用户机种对程序进行变更等时,根据程序上的任务控制指令,能够按用户机种切换 需要执行的任务(程序)。 6.用户程序的理解变得容易。 通过对用户程序进行结构化编制,对传统的用转移指令的程序进行模块化,使用户程序 变得容易理解。 2-2 原来 一个连续的用户 程序 CP1H 任务 1 分割 任务 2 任务 3 2-1 程序和任务的概要 2-1-1 概要 2 任 务 的 动 作 能够使其为 非执行(待 机) 可由多人分 担进行设计、 修正、调试 I/O 刷新 I/O 刷新 参考 换言之,与传统的从程序头起对整个程序进行读取的方式相比较,任务是采用分别对各 插卡进行读取的方式。 但是 ·各任务读的顺序是有规定的,按由低到高的顺序进行读取。 ·各任务相互之间能够指示活动/非活动。 对于指定为非活动的部分,在读取时被跳过。 (活动/非活动的指示根据任务控制指令进行)。指定活动的卡,在下个读顺序时也保 持活动被读取。一旦指定为非活动的任务,只要没有由其它任务调用(活性动),则 仍然为非活动,在读时被跳过。 2-3 2-1 程序和任务的概要 2-1-2 任务和程序 2-1-2 任务和程序 最大能管理 288 个程序。各个程序按 1:1 分配到执行单位的任务中。任务大致可以分成 以下 2 种。 2 任 1.周期执行任务 务 2.中断任务 的 动 作 在任务中所分配的各程序是分别独立的,程序前后需要各自的 END 指令。I/O 刷新在执 行周期内的所有任务的程序之后执行。 程序 A 周期 执行 任务 0 分配 中断条件成立 周期 执行 任务 1 中断 任务 100 分配 END 程序 B END 分配 程序 C 周期 执行 任务 n 分配 I/O 刷新 END 程序 D END 2-4 2-1 程序和任务的概要 2-1-3 CPU 单元的基本动作 2-1-3 CPU 单元的基本动作 CPU 单元对周期执行任务或追加任务按其编号由小到大的顺序执行。当发生中断原因 时,中止该任务的执行改而执行中断任务。之后再执行被中止的任务。 2 任 务 的 周期执行任务 0 动 作 编号由低到高 的顺序进行 周期执行任务 1 END 发生中断原因 END 中断任务 5 周期执行任务 n END I/O 刷新 外围处理 注:在任务执行的开头所有的状态标志(ER 标志、CY 标志、=标志、AER 标志等)和状态(IL 中等)都被清空。因此不能跨任务读取状态标志,配置互锁/互锁清除(IL/ILC)指令、转 移/转移结束(JMP/JME)指令、子程序调用/子程序输入(SBS/SBN)指令。 和周期执行任务相同,中断任务可以周期进行(被称之为「追加任务」)。 「追加任务」在执行周期执行任务(周期执行任务 No.0~31)后,按中断任务 No.(中 断任务 No.0~255)由小到大的来执行。 2-5 2-1 程序和任务的概要 2-1-3 CPU 单元的基本动作 周期执行任务 0 2 任 务 的 按 周 期 执 行 任 务 No END 动 由小到大的顺序执行 作 周期执行任务 n END 追加任务(中断任务)No.0 按 中 断 执 行 任 务 No 由小到大的顺序执行 END 追加任务(中断任务) END I/O 刷新 外围处理 周期执行任务 追加任务 2-6 2-1 程序和任务的概要 2-1-4 任务的种类 2-1-4 任务的种类 在任务中有周期执行任务和中断任务 2 种。在中断任务中有定时中断、输入中断、高速 计数中断、以及外部中断的 4 种。中断任务可以作为追加任务来使用。 2 任 1.周期执行任务 务 的 1 周期内 1 次(从开始到 END 指令),当任务的状态被称之为可执行状态时按任务 No. 动 由小到大的顺序来执行。最多能使用 32 个任务(周期执行任务 No.:0~31)。在 作 CX-Programmer 中可把程序的属性设定为「循环任务」或根据 TKON 指令来调用。 2.中断任务 发生中断原因时,即使在上述的周期执行任务/追加任务执行时,也能进行强制性中断。 在执行指令中、I/O 刷新、外围服务周期内的任意时间里,当条件成立时执行。 有以下的 4 种。 另外,中断任务也可以作为追加任务使用。 (1)输入中断(直接模式、计数模式) 在 CP 系列 CPU 单元内置的输入接点的上升沿/下降沿(直接模式)或指定次数计数(计 数模式)时,执行中断任务。 机种 任务数 中断任务 No. CP1H X/XA 型 最大 8 个任务 140~147 固定 Y型 最大 6 个任务 140~145 固定 CP1L M型 最大 6 个任务 (30 点/40 点输入输出) 140~145 固定 L型 (20 点输入输出) L型 (14 点输入输出) 最大 4 个任务 140~143 固定 (2)定时中断 通过 CP1H 的内部定时器按一定时间间隔来执行。最多为 1 个任务(中断任务 No.:2 固 定) (3)高速计数中断 通过 CPU 单元的内置高速计数器来对脉冲输入进行计数,通过当前值与目标值一致或进 行区域比较来执行中断任务。 用指令语言来分配中断任务 No.0~255。 (4)外部中断(CP1H CPU 单元) 在发生中断原因时,可以由用户程序来自由指定中断任务 No.(0~255)并执行。 使用 CJ 系列单元扩展时,在有来自高功能 I/O 单元、CPU 高功能单元的用户程序的要求 时执行。 最多 256 个任务(中断任务 No.:0~255)。 2-7 2-1 程序和任务的概要 2-1-4 任务的种类 外部中断任务的 No.和定时中断、输入中断、高速计数器中断 No. 相同时,不管是什么 条件都运行(由 OR 条件进行运行)。因此,基本上不要使 No.重复。 2 3. 追加任务 任 务 能够和周期执行任务一样处理中断任务。 的 1 周期 1 次(从开头到 END 指令),在执行周期执行任务(周期执行任务 No.0~31)后, 动 作 任务的状态为可执行状态时,按中断任务 No.(中断任务 No.0~255)由小到大的顺序执 行。 最多 256 个任务(中断任务 No.:0~255)。 和周期执行任务不同,不具有「循环任务」属性。只能由 TKON 指令启动该任务。 追加任务的中断任务 No.和断电中断、定时中断、输入中断、高速计数器中断相同时, 不管什么情况都动作(由 OR 条件进行动作)。因此不要把作为中断任务使用的任务 No. 作为追加任务来使用。 注 1:在追加任务内,也能够使用 TKON 指令/TKOF 指令并执行。 但是这个任务在作为中断任务进行动作时,不能执行 TKON 指令/TKOF 指令 注 2:追加任务和周期执行任务有以下的不同。 项目 追加任务 程序的属性「循环任务」 无 任务标志 无 任务初次启动标志 (A200.15)、任务启动上升 沿标志(A200.14) IR(变址寄存器)/DR(数 据寄存器)的值 无 和中断任务一样任务启动 时值为不定。 各周期开始时的值为不 定。请务必在设置值之后 再使用。在下个周期中不 能读出在上个周期中设置 的值。 周期招待任务 能由 CX-Programmer 来设定 有(TK00~TK31 对应于周期执行 任务的任务 No.0~31) 有 运行开始时值不定。在下个周期中 能读出在上个周期中设置的值。 2-8 2-1 程序和任务的概要 2-1-5 任务的执行条件和相关设定 2-1-5 任务的执行条件和相关设定 在这里就任务的执行条件和相关设定以及任务的状态进行说明。 ■ 任务的执行条件和相关设定 2 任 任务种类 任务 No. 执行条件 相关设定 务 周期招待任务 0~31 在可执行状态(程序的 无(总是有效) 的 属性「循环任务勾选」 动 或根据 TKON 指令) 作 下,取得执行权时,每 个周期 中断任务 定时中断 0 中断 2 根据 CPU 单元的内部 •由中断掩码设置指令(一 MSKS 定时器,每经过一定时 指令)的定时中断时间的设定 间时 (0~9999) •PLC 系统设定的「定时中断时间 单位设定」(10ms/1.0ms/ 0.1ms) 输入中断 0~7 中断 140~147 CPU 单元内置的输入 •由中断掩码设置指令(MSKS 指 接点上升沿或下降沿 令)进行指定接点的中断掩码解 时 除 高速计数器 中断 中断 0~255 在 CPU 单元内置 •由比较表登录指令(CTBL)进行 高速计数器的目标值 比较条件设定和分配中断任务 一致或区域比较的条 No. 件一致时。 外部中断 中断 0~255 (CP1H CPU) 在根据 CJ 单元扩展使 无(总是有效) 用时的高功能 I/O 单元 /CPU 高功能单元的用 户程序要求时 追加任务 0~255 中断 0~255 在可执行状态(只根据 无(总是有效) TKON 指令)下,取得 执行权时,每个周期 2-9 2-1 程序和任务的概要 2-1-6 周期执行任务/追加任务的状态 2-1-6 周期执行任务/追加任务的状态 周期执行任务/追加任务具有以下的 4 个状态,根据条件对这 4 个状态进行转换。 2 任 1.未执行状态(INI) 务 的 一次也没有被执行的状态。在编程模式时所有的周期执行任务都为该状态。曾经转换为 动 其它状态的周期执行任务只要没有转为编程模式时就不能返回到该状态。 作 2.可被执行状态(READY) 1)按照指令执行启动的任务: 通过任务启动(TKON)指令的执行,从未执行状态或待机状态转换为该状态。 2)在运行开始时启动的任务(仅限周期执行任务): 从「程序」模式转化为「运行」或「监视」模式时,由未执行状态(INI)转换为此状态。 注:在运行开始时,可通过属性启动的任务只可能是周期执行任务。在追加任务中不可能。 根据 CX-Programmer 的「程序属性」功能,在周期执行任务 No.0~31 中能够使多个任务在运 行开始时进入 Ready 状态。 3.执行状态(RUN) 在可执行状态的周期执行任务已得到执行权,处于实际执行的状态(指传统的程序执行 状态)。执行权按在该周期内可执行状态的任务 No.由小到大的顺序得到。 4.待机状态(WAIT) 根据任务执行待机(TKOF)指令,从可执行状态(RUN)转换为此状态。 参 考 使用 CX-Programmer 时,通过联机可以显示 CP 系列的各任务(程序)的 「执行中」/「停止中」的状态。 ·「执行中」(在 CX-Programmer 中的表示): 是指「可执行状态(READY)」 或「执行状态(RUN)」(不能识别是那种状态)。 ·「停止中」(在 CX-Programmer 中的表示):是指「未执行状态(INI)」 或「待机状态(WAIT)」(不能识别是那种状态)。 2-10 2-1-7 状态的转换 INI 未执行状态 运行开始时 起动或 TKON 指令 READY 可执行状态 得到执行权 执行结束 TKON 指令 TKOF 指令 WAIT 待机状态 2-1 程序和任务的概要 2-1-7 状态的转换 RUN 执行状态 2 任 务 的 动 作 *1:程序的属性「运行开始时启动」只能在周期执行任务中设定(追加任务中不可)。 注:在执行状态的任务中,执行 TKOF 指令时(即使由 TKOF 指令把自身任务作为待机状态时) 转换为待机状态。 参 考 待机状态与转移(JMP-JME)指令有相同的功能。待机状态的任务输出状态 被保持。 任务 A B C :待机状态 = A JMP B 转移 JME C 在待机状态中,指令不执行,因此不会增加指令的执行时间。因此可以通过对不执行的 程序区域进行任务分割,使之处于适当的待机状态,来缩短周期时间。 原来的程序 任务 缩短周期时间 A A 不使用转移等指 按某个条件执行 令时,在内部执行 B B 所有指令 C C 按某个条件执行 D D 注:待机状态仅仅是程序的执行被跳过,不能通过转换到这个状态使程序内部所使用的输出 OFF。 2-11 2-2 任务的使用方法 2-2-1 任务启动(TKON)/待机(TKOF)指令 2-2 任务的使用方法 2 任 2-2-1 任务启动(TKON)/待机(TKOF)指令 务 的 从程序上启动/待机周期执行任务/追加任务时,使用任务启动(TKON)/待机 动 (TKOF)指令。 作 TKON N:任务 No 输入条件为 ON 时,任务为可执行状态 在周期实行任务时,对应的任务标志同时为 N ON。 TKOF N N:任务 No 输入条件为 ON 时,任务为待机状态 在周期实行任务时,对应的任务标志同时为 OFF。 根据上述指令,对是哪个任务哪个周期执行任务/追加任务,在何时发出执行可能/待 机指示方面,没有关系。 对于曾经成为可执行状态的周期执行任务/追加任务,在下个周期也为可执行状态。对 于曾经成为待机状态的周期执行任务/追加任务,在下个周期也为待机状态。 但是,上述指令只在周期执行任务/增加的任务内可以使用。在中断任务内不能使用。 注:在各周期中必须具有一个以上的可执行状态的周期执行任务/追加任务。如果可执行状态的周 期执行任务/追加任务一个也不存在的话,任务出错标志(A295.12)就为 ON,停止 CPU 单 元的运行。 例: 周期执行任务 No. A TKON 1 周期执行任务 No.0 (运行开始时起 动) B TKON 2 C TKON 3 D TKOF 0 周期执行任务 No.1 周期执行任务 No.2 周期执行任务 No.3 1)运行开始时 运行开始时,任务 No.0 开始起动(可执行状态) 周期执行 任务 No.0 其它的任务为未执行状 态 周期执行任 务 No.1 周期执行任 务 No.2 周期执行任 务 No.3 2)A 为 ON 时,任务 No.1 开始起动(可执行 状态) 其它的任务 2、3 为未执 行状态 周期执行 任务 No.0 周期执行 任务 No.1 周期执行任 务 No.2 周期执行任 务 No.3 3)D 为 ON 时,任务 No.0 自身为待机(待机 状态) 其它的任务原样 周期执行任 务 No.0 周期执行 任务 No.1 周期执行任 务 No.2 周期执行任 务 No.3 可执行状态 待机状态/未执行状态 2-12 2-2 任务的使用方法 2-2-1 任务启动(TKON)/待机(TKOF)指令 ■ 和循环时间的关联 曾经成为可执行(RUN)状态的周期执行任务/追加任务在下一个周期中也为可执行状 态。 2 任 务 周期执行任务 运 行 开 始 周期执行任务 可 执 行 状 的 时超动 态 动 TKON 作 周期执行任务 可 执 行 状 周期执行任务 可执行状 态 态 曾经成为待机状态(WAIT)的周期执行任务/追加任务在下一个周期中也为待机状态。 为了从待机状态变成执行可能(RUN)状态,必须要通过 TKON 指令执行启动任务。 TKOF TKON 周期执行任务 1 待机 周期执行任务 执行状态 周期执行任务 待机 周期执行任务 执行状态 对于自身任务,执行 TKOF 指令时,在该时点停止执行,把自身任务转换为待机状态 (WAIT)。 任务 2 TKOF 2 以下自身任务内的程 序不被执行,变为待机 ■ 周期执行任务/追加任务的任务 No.和周期时间的关系 ·任务 m 启动任务 n(m>n)时,在下一个周期监视任务n起动。 例:任务 No.5 启动任务 No.2 时,任务 No.2 在下一个周期起动。 ·任务 m 启动任务 n(m<n)时,在该周期内任务n被起动。 例:任务 No.2 启动任务 No.5 时,任务 No.5 在该周期内被启动。 2-13 2-2 任务的使用方法 2-2-1 任务启动(TKON)/待机(TKOF)指令 ·任务 m 使任务 n(m>n)为待机时,在下一周期任务n为待机(任务 n 在该周期内已 经执行完)。 2 例:任务 No.5 使任务 No.2 为待机时,任务 No.2 下一个周期为待机。 任 务 的 ·任务 m 使任务 n(m<n)为待机时,在该周期内任务n为待机。 例:任务 No.2 要使任务 No.5 为待机时,任务 No.5 在该周期为待机。 动 作 ■ 任务和 I/O 内存的关系 ·在变址寄存器(IR)以及数据寄存器(DR)中有 2 种使用方法。 ①按各个任务分别(单独)使用的方法 ②各任务共同使用的方法 在①的方法中,在周期执行任务 1 中使用的 IR0 和在周期执行任务 2 中使用的 IR0 不 相同。 在②的方法中,在周期执行任务 1 中使用的 IR0 和周期执行任务 2 中使用的 IR0 为相 同。 对于变址寄存器(IR)以及数据寄存器(DR)采用①的方法还是采用②的方法由 CX-Programmer 进行设定。 ·其它区域各任务共同使用。比如对于在周期执行任务 1 中使用的接点 10.00 和周期执 行任务 2 中使用的接点 10.00 是指同一个接点。因此对于 IR、DR 以外的 I/O 内存区域, 在任务间共同使用时,把某个任务中变更的值使用到其它任务中时,在程序上一定要 充分加以注意。 I/O 存储器 CIO、内部辅助继电器、数据内存等变址寄存器(IR)、 数据寄存器(DR)之外的所有部分 仅变址寄存器(IR)、 数据寄存器(DR)(注 1) 和任务的关系 各任务共同使用 根据设定 注 1: 中断任务/追加任务启动时、IR、DR 的值为不定。因此在中断任务/追加任务内使用 IR、 DR 时,必须通过 MOVR/MOVRW(变址寄存器设定)指令,在设定值之后再使用。在中 断任务结束后,自动地返回到中断发生前的 IR、DR 值。 2-14 2-2 任务的使用方法 2-2-1 任务启动(TKON)/待机(TKOF)指令 参 考 ·任务和定时器动作的关系 TIM/TIMX、TIMH/TIMHX、TMHH/TMHHX、TIMW/TIMWX、 TMHW/TMHWX 的定时器编号为 T0000~T0015 时,在任务切换时也 继续进行当前值的更新。另外启动定时器的任务即使为待机状态后再 2 启动,更新也继续进行。 任 因此比如启动 TIM 的任务一旦为待机状态,过一会儿再启动任务时, 务 如果当前值为 0,在执行 TIM 指令时,到时标志为 ON(定时器到时 的 动 标志的更新仅在所有指令执行时)。当前值在刷新中的话就这样继续 作 进行更新。 ·定时器编号为 T0016~T4095 时,任务保持待机状态时的当前值。 请注意 ·任务和状态标志的关系 在执行各任务之前状态标志全部被清空。 因此比如不能由任务 No.2 来读取任务 No.1 的最后的状态标志的状 态。要读取时请使用 CCS/CCL 指令。 2-15 2-2 任务的使用方法 2-2-2 不同任务的指令的使用限制 2-2-2 不同任务的指令的使用限制 2 ■ 不能跨任务使用的指令 任 以下配对使用的指令必须配置在同一任务之内。不配置在同一任务内时 ER 标志为 ON, 务 的 不能执行指令。 动 助记符 指令语句 作 JMP/JME 转移/转移结束 CJP/JME 条件转移/转移结束 CJPN/JME 条件非转移/转移结束 JMP0/JME0 复数转移/复数转移结束 FOR/NEXT 重复开始/结束 IL/ILC 联锁/联锁清除 SBS/SBN/RET 子程序调用/子程序输入/子程序返回 MCRO/SBN/RET 宏/子程序输入/子程序返回 BPRG/BEND 块程序/块程序结束 STEP/SNXT 步梯形图区域指令 ■ 在中断任务内不能使用的指令 以下的指令在中断任务内不能执行。在中断任务内执行时 ER 标志为 ON 不能执行指令。 但是把中断任务作为追加任务来使用时,能够使用以下的指令。 TKON TKOF STEP SNXT STUP DI MSKR 助记符 指令语句 任务执行起动 任务执行待机 步梯形图区域 步梯形图步进 串行端口通信设定变更 中断任务执行禁止 解除中断任务执行禁止 在中断任务内不能保证以下指令的动作。 定时器(TIM/TIMX) 高速定时器(TIMH/TIMHX) 超高速定时器(TMHH/TMHHX) 累计定时器(TTIM/TTIMX) 多输出定时器(MTIM/MTIMX) 长时间定时器(TIML/TIMLX) 块程序的定时器等待(TIMW/TIMWX) 高速定时器等待(TMHW/TMHWX) PID 控制(PID)指令 故障点检测(FPD)指令 串行通信(STUP)指令 2-16 2-2 任务的使用方法 2-2-3 任务的相关标志 2-2-3 任务的相关标志 ■ 周期执行任务相关的标志 以下的标志是周期执行任务相关标志。和追加任务无关。 2 任 ● 任务标志(TK00~TK31) 务 这个标志是在确认当前任务是否被执行时使用。周期执行任务为可执行状态(READY) 时为 1(ON),在未执行状态(INI)或待机状态(WAIT)时为 0(OFF)。任务 No.00~ 的 动 作 31 和 TK00~TK31 项对应。 任务 No.3 周期 未执行状态 可执行状态 周期 可执行状态 ~~ 周期 待机状态 任 务 NO.3 的任务标志 TK03 注:本标志对应于周期执行任务。与中断任务中不对应。为中断任务时,在运行开始后初次执行中 断任务时 A441.15 为 1(ON)。之后需要最大处理时间的中断任务 No.以 16 进制 2 位的形式 保存到 A441.00~A441.07。 ● 任务初次启动标志(A200.15) 在运行中进行一次初始处理时使用。 周期执行任务从未执行状态(INI)转换为可执行状态(READY)并得到执行权,处于 执行(RUN)时为 N。实际结束时为 OFF。 任务 n 未执行状态 可执行状态 未执行状态 可执行状态 任务初次起 动标志 根据这个标志,周期执行任务判断自身的执行是否为初次。为初次时进行初始等处理。 任务初次起动标志 A200.15 初始处理 注:·即使通过 TKON 指令再一次把曾经为待机状态的周期执行任务变为可执行状态,这时由于 不能识别为初次启动,因此任务初次启动标志(A200.15)不能为 ON。 ·从未执行状态变为执行状态,实际上在得到执行权之前,根据来自其它任务的 TKOF 指令使 之为待机状态时,任务初次启动标志(A200.15)也不为 ON。 2-17 2-2 任务的使用方法 2-2-3 任务的相关标志 ● 任务上升沿标志(A200.14) 每次任务启动进行初始处理时使用。 在周期执行任务从待机状态(WAIT)或未执行状态(INI)变成执行状态(RUN)时为 2 ON。 任 任务初次启动标志(A200.15)在从未执行状态(INI) 变成执行状态(RUN)时为 ON, 务 的 对此,从待机状态(WAIT)变成执行状态(RUN)时该标志也为 ON。 动 作 可执行状态 可执行状态 任务 n 未执行状态 未执行状态 任务上升沿标 志 通过把该标志作为输入条件,能够进行任务启动时(用 TKON 指令把曾经为待机状态的 周期执行任务变成可执行状态时)的初始处理。 任务上升沿标志 A200.14 初始处理 ■ 任务相关的共通标志 ● 任务出错标志(A295.12) 发生任务出错时,为 1(ON)。任务出错指以下的内容。 ·可执行状态(READY)的周期执行任务/追加任务在该周期内一个也不存在。 ·不存在分配给周期执行任务的程序。 (在使用外围工具 CX-Programmer 时不发生这个状态) ·不存在分配给启动的中断任务(包括追加任务)的程序。 ● 程序停止时任务 No.(A294 CH) 由于程序出错而执行停止时,用以下的值对停止位置的任务种类/任务 No.进行保存。 任务种类 周期招待任务 中断任务(包括追加任务) A294 CH 0000~001F Hex(对应任务 No.0~31) 8000~80FF Hex(对应中断任务 No.0~255) 由此可以确认运行停止异常发生在哪个任务中。运行停止异常解除时被清除。 还有把该任务程序停止在哪个程序地址的信息保存到 A298 CH(程序地址下位)、A299 CH(程序地址上位)中。 2-18 2-2 任务的使用方法 2-2-4 任务例 2-2-4 任务例 基本上如下所示通过管理任务(运行开始时启动的周期执行任务)控制各周期执行任务 /追加任务的执行/待机。 当然各周期执行任务/追加任务可以任意把各周期执行任务/追加任务控制为执行/待 2 任 机。 务 的 从程序模式到运行或监视模式 A 动 TKON 1 作 运行开始时启动 周期执行任务 No.0 (全体管理任务) B TKON 2 A 周期执行任务 No.1 B 周期执行任务 No.2 C 周期执行任务 No.3 C TKON 3 D TKOF 1 E TKOF 2 按功能分割任务示例 全体管理任务 搬运系统控制任务 异常系统监视任务 MMI 系统任务 通信系统任务 模拟处理系统任务 按品种分割任务示例(内务处理) 全体管理任务 品种 A 任务 品种 B 任务 品种 C 任务 按工序分割任务 全体管理任务 加工工序任务 组装工序任务 搬出工序任务 按控制对象分割任务 全体管理任务 A 部控制任务 B 部控制任务 C 部控制任务 按开发者分割任务 全体管理任务 开发者 A 的任务 开发者 B 的任务 开发者 C 的任务 当然也能进行上述分类的组合。(例如:按功能和工序的分类) 2-19 2-2 任务的使用方法 2-2-5 任务设计的方针 2-2-5 任务设计的方针 推荐以下述方针为基础的任务设计。 1. 对于任务分割请按以下的基准进行探讨。 2 任 1) 明确执行/非执行条件进行汇总。 务 2) 按外部输入输出有无进行汇总。 的 3) 按功能进行汇总 对于时序控制、模拟控制、人-机处理、异常处理等要尽可能地减 动 作 少任务间的数据交換(提高独立性)。 4) 按执行优先级进行汇总 分通常任务/中断任务 按功能分割 中断 优 先 外 级 部 输 入 输入处理 理情全 ) 况局 包管 括理 异( 常根 处据 异常处理 输出处理 外 部 时序控制 输 出 模拟处理 人-机处理 按执行/非执行条件分割 2. 基本上要提高任务的独立性,尽可能地按减少任务任务(程序)间的数据交换那样对 程序进行分割设计。 减少 3. 基本上请用全体管理(任务控制)用任务来控制各任务的执行/待机。 4. 把在周期执行任务/追加任务中优先级高的任务分配成小的任务 No.。 例如:把管理用的任务分成比各个处理用的任务小的任务 No。 5. 把优先级高的中断任务分配小的中断任务 No.。 6. 任务一旦被启动,只要没有被自身或其它的任务所指定为待机,在下一个周期之后成 为可执行状态。执行按条件的任务分支处理时,请不要忘记插入对于其它任务的 TKOF (任务待机)指令。 7. 在进行任务执行时的初始处理时,请使用以下标志。 ·在运行中只进行一次初始处理时:任务初次启动标志(A200.15) ·在只要任务启动就要进行初始处理时:任务上升沿标志(A200.14) 2-20 2-2 任务的使用方法 2-2-5 任务设计的方针 8. 划分任务(程序)共通时所使用的 I/O 内存和只在各任务(程序)内所使用的 I/O 内 存,把只在各任务(程序)内使用的 I/O 内存的范围按各任务(程序)进行汇总并确 保。 2 参 考 任务和块程序的关系 任 务 的 在 CP 系列中由用户程序全体(所有任务共通)最多可以作成 128 个被称之为「块程序」 动 作 的領域。把全体作为一个块用梯形图来进行启动。 其中的指令用助记符来使用。其中的 指令记述采用助记符。 块程序为由阶梯程序和助记符组合的程序区域。 在梯形图中很难写出的程序比较容易地作成条件分支和工序步进等逻辑流程。 块程序处在任务的低位位置。 按任务将已经分割的大的单位程序进一步按相同的输入条 件(ON 条件)分成更小动作单位的块,在控制执行时使用。 任务 0 程序 块程序 000 块程序 001 0.00 BPRG 000 块程序区域 No.000 任务 1 块程序 n 0.01 BPRG 001 块程序区域 No.001 任务 n 2-21 2-2 任务的使用方法 2-2-6 全局子程序(能够从多个任务中调用) 2-2-6 全局子程序(能够从多个任务中调用) 能够从某个或多个任务(周期执行任务或追加任务)中调用在特定任务(仅中断任务 No.0)中的子程序(「全局子程序」)。 2 任 务 根据 GSBS 指令调用全局子程序。 的 可指定的子程序编号为 0~255。 动 作 全局子程序在中断任务 No.0 的程序最后(在 END 指令之前),由 GSBN 指令~GRET 指令来定义。 据此可以把共通调用的子程序作为标准回路实现程序库化。 任务(周期执行任务或追加任务) 中断任务 No.0 GSBS n 调出 GSBN n n=0~1023 执行 返回 多个任务 任务(周期执行任务或追加任务) GSBS n 调出 返回 GRET END 全局子程序区域(共通子 程序区域) = 标准电路 2-22 2-3 中断任务详细内容 2-3-1 中断任务种类 2-3 中断任务详细内容 2-3-1 中断任务种类 ■ 中断任务一览 中断原因 中断任务 中断条件 2 任 务 的 动 设定方法 最大 用途例 作 输 入 中 CP1H 断 X/XA:0~7 CP1H No. 140~147 140~145 Y:0~5 CP1L 140~145 M/L(20 点):0~5 计数 CPU 单元内置 的中断输入接点的上 升沿/下降沿(直接 模式)或指定次数的 上升沿/下降沿(计 数模式)时 用 MSKS(中断掩 码设置)指令来指 定哪个输入编号 为中断有效。 点数 8点 6点 6点 想使对特定 的输入接点 的响应高速 化等时 CP1L 140~143 4点 L(14 点):0~3 高速计数器中断 0~255 对于高速计数器的计 用 CTBL(比较表 256 点 在由编码器 数当前值在目标一致 登录)指令指定和 脉冲的计数 比较或区域比较的条 比较条件一起执 值来定位等 件成立时 行的中断任务 时 No.。 定时中断 0 2 定时(一定时间间 用 MSKS(中断掩 1 点 在按一定的 隔) 码设置)指令来指 间隔显示运 定定时中断时间。 行状况等时 PLC 系统设定的 「定时中断时间 单位设定」 外部中断 0~255 有来自 CJ 单元扩展 无(总是有效) 256 点 使用 CJ 系列 (CP1L 中不发生) 时的高功能 I/O 单元、 高功能单元 CPU 高功能单元的中 断要求时 的功能的各 种条件中断 ■ 输入中断任务 在开始 CPU 单元运行,执行周期执行任务时,作为缺省,值输入中断任务为「接受禁止」。 为了使输入中断任务为接受可能在周期执行任务的程序中执行 MSKS(中断掩码设置) 指令,把来自指定中断输入接点的中断设定为「接受可能」。 在输入接点时作为中断输入使用,必须事先在 PLC 系统设定中进行设定。 请注意 请不要使不需要的输入中断任务变成接受可能。由于干扰等因素而使中断输 入时,由于相应的程序不存在,有可能引起程序停止异常(任务出错)。 2-23 2-3 中断任务详细内容 2-3-1 中断任务种类 例如:在输入接点 0.03(输入中断编号 3)上升沿时执行输入中断任务 No.143。 2 任 周期执行任务 通过执行 MSKS 指令,使指定输入中断 务 MSKS 为可能(上升沿,直接模式) 的 动 113 #0000 输入中断编号 3 (上升沿/下降沿指定) 输入接点 0.03 作 MSKS 上升沿指定 COM 01 03 05 103 #0000 输入中断编号 3(中断设定) 允许中断 (直接模式) 00 02 04 06 END 周期执行任务 END 中断 输入中断任务 No.143 END 2-24 ·CP1H X 型/XA 型 中断输入接点编号 输入中断编号 0.00 0 0.01 1 0.02 2 0.03 3 1.00 4 1.01 5 1.02 6 1.03 7 ·CP1H Y 型 中断输入接点编号 输入中断编号 0.00 0 0.01 1 1.00 2 1.01 3 1.02 4 1.03 5 ·CP1L M 型/L(20 点输入输出)型 中断输入接点编号 输入中断编号 0.04 0 0.05 1 0.06 2 0.07 3 0.08 4 0.09 5 中断任务 No. 140 141 142 143 144 145 146 147 中断任务 No. 140 141 142 143 144 145 中断任务 No. 140 141 142 143 144 145 2-3 中断任务详细内容 2-3-1 中断任务种类 ·CP1L L(14 点输入输出)型 中断输入接点编号 输入中断编号 中断任务 No. 0.04 0 140 0.05 1 141 2 0.06 2 142 任 0.07 3 143 务 的 ■ 高速计数器中断任务(中断任务 No.0~255) 动 作 高速计数器中断任务依据执行在内置高速计数器比较表中所登录的(CTBL)指令,通过 在指定目标值一致或区域比较条件成立时所执行的中断任务 No.,使执行变得可能。 例. 高速计数器 0 的当前值在加法方向上与目标值一致时执行高速计数器中断任务 No.10。 周期执行任务 CTBL #0000 #0000 D0 END 周期执行任务 END 高速计数器编号 0 登录目标值一致比较表 开始比较 动作 比较表 D0 0001 ←比较个数 1 D1 2710 D2 0000 目标值 00002710 Hex(10,000) D3 000A ←比较加法方向(位 15:OFF) 中断任务 No.10(OAHex) 在 CTBL 指令执行 中开始目 标值一致 比较 高速计数器 0 目标值 00002710 比较 高速计数器 0 当前值 (复位输入) 高速计数器 0 当前值 (减法输入) 高速计数器 0 当前值 一致 中断任务 No.10 COM 01 03 05 07 09 00 02 04 06 08 高速计数器 0 当前值(加法输 入) END 2-25 2-3 中断任务详细内容 2-3-1 中断任务种类 ■ 定时中断任务(中断任务 No.2) 在开始 CPU 单元运行,执行周期执行任务时,作为缺省值,定时中断任务为「接受禁止」。 2 为了使定时中断任务为接受可能 任 务 1)在周期执行任务/追加任务的程序中上执行 MSKS(中断掩码设置)指令,设定指定 的 的定时中断的定时中断时间(周期)。 动 作 2)在 PLC 系统设定中,设定定时中断的单位时间。 请注意 当中断时间的设定过短,定时中断任务的执行频度高时,会造成周期时间变 长,给周期执行任务/追加任务带来影响。请务必注意。 例如:每秒执行定时中断任务 周期执行任务 MSKS 14 &100 END 周期执行任务 END 定时中断 0 由中断周期(100×10ms)起动(中断编 号 14:复位开始指定) 中断 每隔 1 秒 定时中断任务(中断任务 NO.2) END PLC 系统设定定时中 断 单 位 时 间 =10ms (0.01 秒) ・ 定时中断编号和中断任务 No.的对应 定时中断编号 中断任务 No. 0 2 ● PLC 系统设定 用「定时器/中断」标签的「定时中断单位时间设定」从 10/1.0/0.1ms 中选择单位时间。 名称 定时中断单位时间设定 设定 10ms(初始值) 1.0ms 0.1ms 2-26 2-3 中断任务详细内容 2-3-2 中断任务相关标志 ■ 外部中断任务(中断任务 No.0~255) 外部中断任务总是为可接受。 通过 CJ 系列高功能 I/O 单元、CJ 系列 CPU 高功能单元所具有的对于 CPU 单元的中断功 能来执行中断处理。 2 任 务 这时在 CPU 单元侧没有特别为外部中断任务设定的项目。但是,需将被指定的 No.的外 的 部中断任务先保存到用户程序内。 动 作 请注意 在外部中断任务 No.0~255、定时中断任务 No.2、输入中断任务 No.140~ 147、高速计数器中断任务 No.0~255 重复时,无论是外部中断的条件还是 其它的中断条件都可以动作。因此,基本上不要使 No.重复。 ● 中断任务的优先顺序及执行顺序 中断任务的优先级全部为同级。 为此在执行某个中断任务 A(例如:输入中断)时,即使发生其他的中断原因 B(例如: 定时中断),A 的处理也不被中断。 在执行终了后开始 B 的处理。 在同时发生多种类的中断原因时,按下述顺序执行中断任务。相同种类的多个原因发生 时按任务 No.由小到大的顺序执行。 输入中断(直接模式·计数模式)→ 高速计数器中断 → 外部中断 → 定时中断 在有可能同时发生多个中断原因的用户程序中,由于按照上述的执行顺序来执行中断任 务,因此从原因发生后到执行实际的程序为止需要时间。特别在定时中断中有可能按所 设定的时间间隔不能执行程序,因此在用户程序的设计中需要加以充分的考虑。 2-3-2 中断任务相关标志 ■ 中断任务最大值处理时间(A440 CH) 中断任务的最大处理时间以 0.1ms 为单位的 BIN 数据保存。运行开始时被清空。 ■ 最大处理时间中断任务 No.(A441 CH) 最大处理时间的中断任务 No.以 BIN 数据保存。与任务 No.00~FF Hex 相对应为 8000 Hex~80FF Hex。 在开始运行后初次发生中断时,A441 CH 的位 15 为 1(ON)。之后在发生的中断任务 内最大处理时间由 16 进制低位 2 位进行保存。运行开始时被清空。 2-27 2-3 中断任务详细内容 2-3-3 中断任务使用的注意事项 ■ 中断任务异常标志(运行继续异常)(A402.13) 在 PLC 系统设定的「中断任务异常检测的有无设定」中,已设定「检测」时,当中断任务 2 任 发生异常时为 1(ON)。 务 的 ■ 中断任务异常原因标志(A426.15)/中断任务异常发生号机 No.(A426.00~ 动 作 A426.11) 当 A402.13 为 1(ON)时,在 A426.15 及 A426.00~A426.11 中保存以下的信息。 A402.13 中断任务异常发生 (在 PLC 系统设定的 「中断任务异常检测 的有无無设定」中设 定「检测」时) 中断任务异常内容 在通过周期 I/O 刷新处理对 CJ 系列高功能 I/O 单元进行更新 时,在中断任务内对于相同单元 由 IORF 指令执行 I/O 刷新(多 重刷新)时 A426.15 1(ON) A426.00~426.11 多重刷新对象的 CJ 系列高功 能 I/O 单元的号机 No.被保存 在 BIN12 位中(号机 No.0~ 95:000~05F Hex) ■ 程序停止时任务 No.(A294 CH) 由于程序出错而使执行停止时,停止位置的任务种类及任务 No.由以下的值保存。 任务种类 中断任务 周期招待任务 A294 CH 8000~80FF Hex(对应中断任务 No.0~255) 0000~001F Hex(对应任务 No.0~31) 2-3-3 中断任务使用的注意事项 ■ 对 CJ 系列高功能 I/O 单元执行 IORF 指令时 在使用 CJ 系列高功能 I/O 单元的过程中由中断任务执行 IORF 指令时,请用 PLC 系统设 定的高功能 I/O 单元周期刷新有无的指定,把和指定号机 No.的周期刷新设定为「无」。 在由 I/O 相关指令对 CJ 系列高功能 I/O 单元进行刷新和周期刷新中,在中断任务内由 IORF 指令要对同一单元执行 I/O 刷新的话就会出现「中断任务异常」。这时不执行对于 该单元的 IORF 指令(ER 标志不为 ON)。但是周期 I/O 刷新照常进行。 在把 PLC 系统设定的「中断任务异常检测的有无设定」设定成「检测」的情况下,当中 断任务发生异常时,特殊辅助继电器的 A402.13(中断任务异常标志)就为 ON,同时多 重刷新对象的高功能 I/O 单元的号机 No.被保存到 A426 CH(中断任务异常发生任务编 号)中。 2-28 2-3 中断任务详细内容 2-3-3 中断任务使用的注意事项 CJ 系列高功能 I/O 单元 CP1H I/O 刷新 在 PLC 系统设定的高 在 PLC 系统设定的高 功能 I/O 周期刷新有无 功能 I/O 单元周期刷新 的指定中设定为周期 有无的指定中设定为 2 刷新有(缺省值)之后 周 期 刷 新无之后再执 再执行 IORF 指令。 行 IORF 指令。 任 务 中断任务 的 动 IORF 作 D1 D2 END ● PLC 系统设定 在「CPU 单元设定」标签的「CPU 执行处理」菜单内的「检测中断任务异常」复选框中 进行设定。 名称 检测中断任务异 常 设定 不复选 复选 设定内容 不检测中断任务的异常。 检测到中断任务异常动作时「中断任务异常标志」(A402.13) 为 ON。 ● 相关特殊辅助继电器 名称 中断任务异常标 志 地址 A402.13 中断任务异常发 生机号 No. 中断任务异常要 因标志 A426 CH 位 00~11 位 15 内容 用周期 I/O 刷新处理在对 CJ 系列高功能 I/O 单元进行刷新过程 中,在中断任务内对于同一单元由 IORF 指令执行 I/O 刷新(多 重刷新)时为 1(ON)。 A402.13 为 ON 时,输出发生多重刷新的 CJ 系列高功能 I/O 单 元的号机 No.。 A402.13 为 ON 时,输出异常原因。 1:重复刷新 ■ 想要在由周期执行任务/追加任务进行的特定处理中禁止中断时 在 CP 系列 CPU 单元中即使在以下情况时处理也被强行中断,执行中断任务。 ·在 1 指令执行中 ·在 CPU 单元内置输入输出以及 CPM1A 扩展单元、CJ 系列高功能 I/O 单元的刷新中 ·在外围服务中 ● 在周期执行任务/追加任务和中断任务之间需要确保数据的同时性时 周期执行任务/追加任务和中断任务对同一个 I/O 内存地址进行访问过程中,在由周期 执行任务/追加任务内的指令进行读出或写入时,当执行由中断任务内的指令写入或读 出处理时,相互之间的数据同时性就不能保证。 为此,请采用以下的方法使在由周期执行任务/追加任务指令的存取过程中不让中断进 入。 2-29 2-3 中断任务详细内容 2-3-3 中断任务使用的注意事项 ·在由周期执行任务/追加任务内的指令进行读出或写入处理之前,用 DI(中断任务执 行禁止)指令禁止中断任务的执行。 ·在进行上述的处理之后,用 EI(中断任务执行禁止解除)指令解除中断任务执行禁止。 2 任 周期执行任务 务 的 DI 动 接受禁止 作 中断任务 对中断任务共用的 I/O 内存进 行读写处理 EI 可接受中断任务的处理 可接受 中断任务 但是,在执行周期执行任务/追加任务内的特定指令(网络通信指令、串行通信指令等 响应接收处理所必需的指令)的过程中如果不希望被中断时,即使采取与上述相同措施 也不能保证数据的同时性,请注意。 2-30 2-4 有关任务的外围工具操作 2-4 有关任务的外围工具操作 请注意 在新建多个周期执行任务/追加任务时请使用 CX-Programmer。 2 任 在使用 CX-Programmer 编制的程序的属性中,必须分配任务种类和任务 No.。 务 的 动 ■ CX-Programmer 的操作 作 作为各程序的「属性」指定任务种类以及任务 No.。 程序任务的分配方法如下所示。 1 在选中任务程序的状态下选择[视图]-[属性],或通过右击从弹出菜单中选择[属性]。 2 [选择标签[一般],然后选择[任务类别](任务种类和任务 No.)。在周期执行任务时 根据需要将「运行时启动任务」的复选框设为勾选。 2-31 2-4 有关任务的外围工具操作 2 任 务 的 动 作 2-32 第3章 各指令说明 本章的阅读方法 指令语言的顺序:按照功能顺序排列。 从助记符开始查找时,请使用「附录-3 指令一览(字母顺序)」。 3 各 各指令语言的说明项目如下。 指 项目 内容 令 指令语言名称 表示指令语言名称。例:位传送 说 助记符 表示助记符。( )内表示 FUN 编号。 明 例:MOVB(082) 概要 表示指令语言的功能概要。 符号 表示 CX-Programmer 中的梯形图符号。 例: MOVB S C D 操作数名称 操作数说明 说明 注 执行条件/每 次刷新指定 执行条件 每次刷新指定 表示各操作数的名称。 例: S:传送源 CH 编号 C:控制数据 D:传送目的地 CH 编号 仅对控制数据等需要说明的操作数解释其通道/位的含义。 例: 15 87 0 C 传送目的地 CH 的位指定: 00~0FHex(0~15) 传送源 CH 的位指定:00~ 0FHex(0~15) 使用操作数说明指令语言的基本功能。 表示基本功能以外的补充说明。 表示执行指令语言的条件和该情况下的助记符。 没有该执行条件时,表示为「无」。 ·ON 时每周期执行:输入条件为 ON 时,每周期执行。 ·上升沿 1 周期执行:输入条件从 OFF→ON 时,仅执行 1 周期。 ·下降沿 1 周期执行:输入条件从 ON→OFF 下降沿时,仅执行 1 周期。 ·始终 ON 输入每周期执行:不在输入条件中插入接点的指令。 ·每周期执行,连接下一段:每周期执行连接的下一条指令。 例: 执行条件 ON 时每周期执行 上升沿 1 周期执行 下降沿 1 周期执行 MOVB @MOVB 无 指令执行时,进行输入刷新或输出刷新。有每次刷新指定的情况下,表示助记符。 没有每次刷新指定时,表示为「无」。 每次刷新指定 无 3-2 使用限制 项目 数据内容 状态标志的动作 内容 在下列各区域内,表示是否可以使用本指令。 块程序区域、工序步进程序区域、 子程序区域、中断任务程序区域 可以:可以使用。不可以:不可以使用。 例: 3 区域 块程序 工程步进 区域 程序区域 子程序 区域 中断任务程 序区域 各 指 使用 可以 可以 可以 可以 令 表示各操作数中可指定的 I/O 存储器的区域分类和地址范围。 说 左列的「区域」表示区域分类。 明 右列的 S、D 等表示左侧符号项目中记录的操作数符号。 例: 区域 CIO(输入输出继电器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 定时器 计数器 数据存储器 扩展数据存储器 S C D 0000~6143 W000~511 H000~511 A000~447 A448~959 T0000~4095 C0000~4095 D00000~32767 E00000~32767 A448~959 注:-表示不可指定。 本指令执行时(执行后立刻)表示状态标志如何变化。仅表示变化的标志。对于未记载 的标志,表示不会因本指令执行而发生变化。 注:只保持「OFF」的标志,表示本指令执行时(执行后立刻)可无条件设置为 OFF。 例: 名称 出错标志 =标志 N 标志 标签 ER = N 内容 ·C 的数据在范围之外时为 ON ·除此之外为 OFF OFF OFF 动作说明 表示在操作数中输入具体地址和常数的示例。基本上与功能说明对应。 ■ 关于常数的表示方法 本章中操作数的常数按以下方法表示。 ● 「操作数的说明」及「数据内容」的项目 ·表示位列(一般为 16 进制输入)操作数的情况下 仅表示 16 进制表示方法。例)MOV 指令的操作数 S:作为常数的范围,仅为#0000~FFFF。 (但外围工具中,加上接头词&也可以用 10 进制输入) ·表示数字(一般为 10 进制输入)的操作数的情况下(包括转移指令) 表示 16 进制及 10 进制表示方法。例)XFER 指令的操作数 W:作为常数的范围,表示#0000~ FFFF 及 10 进制&0~65535。 ·表示编号的操作数的情况下(转移指令除外) 表示 10 进制表示方法。例)SBS 指令的操作数 N:作为常数的范围,表示 0~1023。 3-3 ● 关于「动作说明」的项目 在「动作说明」的梯形图中,通过 CX-Programmer 的输入列表来表示。 注:表示数字(一般 10 进制输入)操作数的情况下,加上接头词&后用 10 进制表示方法表示。 例) XFER 3 &10 各 D100 指 令 D200 说 明 参考: 通过外围工具的常数输入方法如下。 外围工具 表示位列(一般 16 进制输入)操作数 表示数字(一般 10 进制输入)操作数 表示编号的操作数(转移指令除外) CX-Programmer 加上接头词&后用 10 进制输入。 或加上接头词#后用 16 进制输入。(注) 或加上接头词#后用 10 进制输入。(注) 注:CX-Programmer 中,操作数输入时,将显示可输入的数据范围(包括接头词)。 ■ 关于状态标志的表示方法 本章的说明中,将用名称来表示状态标志。 此外,在 CX-Programmer 中,状态标志作为变量名(通用变量)事先登录。 本章中用该方法表示。 名称 出错标志 访问出错标志 进位标志 >标志 =标志 <标志 N 标志 上溢标志 下溢标志 ≧标志 ≠标志 ≦标志 常时 ON 标志 常时 OFF 标志 CX-Programmer 中的变量名 P_ER P_AER P_CY P_GT P_EQ P_LT P_N P_OF P_UF P_GE P_NE P_LE P_On P_Off 3-4 ■ 关于 CP1L L 型 DM 区域 CP1L L 型与其他的 CP 系列比较,DM 区域较小。 本文中各指令的操作数一览,为记载于 CP1H 及 CP1L M 型的区域,但请注意在 CP1L L 型中有实际无法使用的区域存在。 CX-Programmer 进行编程时,无法指定范围外的区域。 此外,通过存储盒传送包含范围外 DM 区域的程序时,则在程序执行时产生程序错误。 3 各 例 CP1H/CP1L M 型时 指 令 CP1L L 型时 说 数据内存(DM) D00000~32767 数据内存(DM) D00000~09999 明 D32000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BIN) @D00000~09999 @D30000~32767 DM 间接(BCD) *D00000~32767 DM 间接(BCD) *D00000~09999 *D30000~32767 3-5 3 各 指 令 说 明 3-6 时序输入指令 项目号 3-1 3-2 3-3 3-4 3-5 3-6 3-7 3-8 3-9 3-10 3-11 指令语句 读 读非 与 与•非 或 或非 块与 块或 非 功率流上升沿微分 功率流下降沿微分 LD 型・位测试 LD 型・位测试非 AND 型・位测试 AND 型・位测试非 OR 型・位测试 OR 型・位测试非 助记符 LD LD NOT AND AND NOT OR OR NOT AND LD OR LD NOT UP DOWN LD TST LD TSTN AND TST AND TSTN OR TST OR TSTN FUN 编号 页码 3-8 3-10 3-12 3-14 3-15 520 3-16 521 3-17 522 3-18 350 3-19 351 350 3-21 351 350 3-23 351 3-7 时序输入指令 3-1 读 LD/读·非 LD NOT 读 LD 3-1 ロード LD/逻辑取反 LD NOT 3 概要 各 表示逻辑起始,读取指定接点的 ON/OFF 内容。 指 令 符号 说 明 读·非 LD NOT 概要 表示逻辑起始,将指定接点的 ON/OFF 内容取反后读入。 符号 功能说明 功能说明 用于从母线开始的第一个 a 接点,或者电路块的第一个 a 用于从母线开始的第一个 b 接点,或者电路块的第一个 接点。 b 接点。 无每次刷新指定时,读取 I/O 存储器指定位的内容。有 无每次刷新指定时,对 I/O 存储器的指定位的内容取反 每次刷新指定时,读取 CPU 单元内置输入端子的实际接 后读取。有每次刷新指定时,对 CPU 单元内置输入端子 点状态。 时 的实际接点状态取反后读出。 序 执行条件/每次刷新指定 输 入 ON 时每周期逻辑开始 指 令 执行条件 上升沿时 1 周期逻辑开始 下降沿时 1 周期逻辑开始 LD @LD %LD 执行条件/每次刷新指定 执行条件 ON 时每周期逻辑开始 上升沿时 1 周期逻辑开始 下降沿时 1 周期逻辑开始 LD NOT @LD NOT %LD NOT 每次刷新指定 !LD 每次刷新指定 ! LD NOT 复合条件 上升沿时 1 周期逻辑开始且每次刷新 !@LD 复合条件 上升沿时 1 周期逻辑开始且每次刷新 !@LD NOT 指定 指定 下降沿时 1 周期逻辑开始且每次刷新 指定 !%LD 下降沿时 1 周期逻辑开始且每次刷新 !%LD NOT 指定 使用限制 LD/LD NOT 共通 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 · 通过 AND LD 指令或 OR LD 指令连接电路块时, AND LD/OR LD 指令的合计数必须和 LD/LD NOT 指令的合计数-1 一致。如果不一致,将出现电路错 误(具体情况请参见 AND LD/OR LD 项)。 参考 ·LD/LD NOT 指令作为表示逻辑开始的指令,在以下 情况下使用。 1)直接连接在母线上时 2)通过 AND LD 指令或 OR LD 指令连接电路块时(用 于电路块的开头)。(AND LD 指令或 OR LD 指 令将从本 LD/LD NOT 指令开始的电路块进行串联 或并联连接)。 ·输出系统指令中不可直接连接在母线上的指令,其输 入条件中必须有一个以上的 LD/LD NOT 指令。没有 LD/LD NOT 指令时,在通过 CX-Programmer 进行的 程序检查中会出现电路错误。 3-8 时序输入指令 读 LD/读·非 LD NOT 数据内容 LD/LD NOT 共通 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 任务标志 状态标志 时钟脉冲 临时存储继电器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) LD 的位操作数 LD NOT 的位操作 数 0000.00~6143.15 W000.00~511.15 H000.00~511.15 A000.00~959.15 T0000~4095 C0000~4095 TK0000~0031 ER、CY、N、OF、UF、>、=、<、 >=、<>、<=、ON、OFF、AER 0.02s、0.1s、0.2s、1s、1min TR0~15 ― ― ― ― ― ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 注:临时存储继电器仅在通过助记符编写程序时使用。在 梯形图中不能使用。 状态标志的动作 无 动作说明 (例) 注: ·LD 指令可以指定上升沿微分或下降沿微分(@或%)。 3 此时,仅在指定接点出现 OFF→ON 或 ON→OFF 变化时, 1 周期内为 ON。1 周期后为 OFF。 各 ·LD/LD NOT 指令可以指定每次刷新(!)。此时,在执行本 指 指令前,对于 CPU 单元的内置输入进行 IN 刷新,直接读 令 取该内容。此外,对于 CPM1A 系列扩展(I/O)单元, 每次刷新(!)无效。扩展单元请使用 IORF 指令。 说 明 ·LD 指令可以对上升沿微分或下降沿微分和每次刷新进行 复合指定(!@或!%)。此时,在执行本指令前,从 CPU 单元的内置输入中通过 IN 刷新直接读取的内容中,仅在 出现 OFF→ON 或 ON→OFF 变化时,1 周期内为 ON。1 周期后为 OFF。 时 序 输 入 指 令 *:关于 AND LD/OR LD 指令,请参见 3-4 节、3-5 节。 3-9 时序输入指令 3-2 与 AND/与·非 AND NOT 与 AND 与·非 AND NOT 3-2 アンド AND/アンド・ノット AND NOT 3 概要 概要 各 指 令 取指定接点的 ON/OFF 内容与前面的输入条件之间的逻 辑积。 对指定接点的 ON/OFF 内容取反,取与前面的输入条件 之间的逻辑积。 说 符号 符号 明 功能说明 用于串联的 a 接点。不能直接连接在母线上。此外,也 不能用于电路块的开始部分。 无每次刷新指定时,读取 I/O 存储器指定位的内容。有 每次刷新指定时,读取 CPU 单元内置输入端子的实际接 点状态。 功能说明 用于串联的 b 接点。不能直接连接在母线上。此外,也 不能用于电路块的开始部分。 无每次刷新指定时,读取 I/O 存储器指定位的内容。有 每次刷新指定时,对 CPU 单元内置输入端子的实际接点 状态取反后读出。 执行条件/每次刷新指定 时 序 ON 时每周期连接下一段 输 执行条件 上升沿时 1 周期连接下一段 入 指 下降沿时 1 周期连接下一段 令 每次刷新指定 AND @AND %AND !AND 复合条件 上升沿时 1 周期连接下一段且每 !@AND 次刷新指定 下降沿时 1 周期连接下一段且每 次刷新指定 !%AND 执行条件/每次刷新指定 执行条件 ON 时每周期连接下一段 上升沿时 1 周期连接下一段 下降沿时 1 周期连接下一段 每次刷新指定 复合条件 上升沿时 1 周期连接下一段且每 次刷新指定 下降沿时 1 周期连接下一段且每 次刷新指定 AND NOT @AND NOT %AND NOT !AND NOT !@AND NOT !%AND NOT 使用限制 AND/AND NOT 共通 区域 块程序区 工程步进 域 程序区域 使用 可 可 子程序区域 可 中断任务程 序区域 可 注: ·AND 指令可以指定上升沿微分或下降沿微分(@或%)。 此时,仅在指定接点出现 OFF→ON 或 ON→OFF 变化时, 1 周期内为 ON。1 周期后为 OFF。 ·AND/AND NOT 指令可以指定每次刷新(!)。此时,在执 行本指令前,对于 CPU 单元的内置输入进行 IN 刷新,直 接读取该内容。此外,对于 CPM1A 系列扩展(I/O)单 元,每次刷新(!)无效。扩展单元请使用 IORF 指令。 ·AND 指令可以对上升沿微分或下降沿微分和每次刷新进 行复合指定(!@或!%)。此时,在执行本指令前,从 CPU 单元的内置输入中通过 IN 刷新直接读取的内容中,仅在 出现 OFF→ON 或 ON→OFF 变化时,1 周期内为 ON。1 周期后为 OFF。 数据内容 AND/AND NOT 共通 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 任务标志 状态标志 时钟脉冲 临时存储继电器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) AND/AND NOT 的位操作数 0000.00~6143.15 W000.00~511.15 H000.00~511.15 A000.00~959.15 T0000~4095 C0000~4095 TK0000~0031 ER、CY、N、OF、UF、>、=、<、 >=、<>、<=、ON、OFF、AER 0.02s、0.1s、0.2s、1s、1min ― ― ― ― ― ― ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-10 状态标志的动作 无 动作说明 (例) 时序输入指令 与 AND/与·非 AND NOT 3 各 指 令 说 明 时 序 输 入 指 令 3-11 时序输入指令 3-3 或 OR/或·非 OR NOT 或 OR 或非•OR NOT 3-3 オア OR/オア・ノット OR NOT 3 概要 概要 各 指 令 取指定接点的 ON/OFF 内容与前面的输入条件之间的逻 辑和。 对指定接点的 ON/OFF 内容取反,取与前面的输入条件 之间的逻辑和。 说 符号 符号 明 功能说明 功能说明 用于并联连接的 a 接点。 用于并联连接的 b 接点。 从(连接于母线或电路块的开头的)LD/LD NOT 指令 从(连接于母线或电路块的开头的)LD/LD NOT 指令开 开始,构成与到本指令之前为止的电路之间的 OR(逻辑 始,构成与到本指令之前为止的电路之间的 OR(逻辑 时 序 和)的 a 接点。 无每次刷新指定时,读取 I/O 存储器指定位的内容。有 和)的 b 接点。 无每次刷新指定时,读取 I/O 存储器指定位的内容。有 输 每次刷新指定时,读取 CPU 单元内置输入端子的实际接 每次刷新指定时,读取 CPU 单元内置输入端子的实际接 入 点状态。 指 点状态。 令 执行条件/每次刷新指定 执行条件/每次刷新指定 执行条件 ON 时每周期连接下一段 上升沿时 1 周期连接下一段 下降沿时 1 周期连接下一段 每次刷新指定 复合条件 上升沿时 1 周期连接下一段且每 次刷新指定 下降沿时 1 周期连接下一段且每 次刷新指定 OR @OR %OR !OR !@OR !%OR ON 时每周期连接下一段 执行条件 上升沿时 1 周期连接下一段 下降沿时 1 周期连接下一段 每次刷新指定 复合条件 上升沿时 1 周期连接下一段且每 次刷新指定 下降沿时 1 周期连接下一段且每 次刷新指定 OR NOT @OR NOT %OR NOT !OR NOT !@OR NOT !%OR NOT 注: . ·OR 指令可以指定上升沿微分或下降沿微分(@或%)。 此时,仅在指定接点出现 OFF→ON 或 ON→OFF 变化 时,1 周期内为 ON。1 周期后为 OFF。 ·OR/OR NOT 指令可以指定每次刷新(!)。此时,在执行 本指令前,对于 CPU 单元的内置输入进行 IN 刷新,直 接读取该内容。此外,对于 CPM1A 系列扩展(I/O)单 元,每次刷新(!)无效。扩展单元请使用 IORF 指令。 使用限制 OR/OR NOT 指令共通 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 ·OR 指令可以对上升沿微分或下降沿微分和每次刷新指定 进行复合指定(!@或!%)。此时,在执行本指令前,从 CPU 单元的内置输入中通过 IN 刷新直接读取的内容中, 仅在出现 OFF→ON 或 ON→OFF 变化时,1 周期内为 ON,1 周期后为 OFF。 3-12 数据内容 OR/OR NOT 指令共通 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 任务标志 状态标志 时钟脉冲 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 状态标志的动作 无 动作说明 (例) OR/OR NOT 的位操作数 0000.00~6143.15 W000.00~511.15 H000.00~511.15 A000.00~959.15 T0000~4095 C0000~4095 TK0000~0031 ER、CY、N、OF、UF、>、=、<、 >=、<>、<=、ON、OFF、AER 0.02s、0.1s、0.2s、1s、1min ― ― ― ― ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 时序输入指令 或 OR/或·非 OR NOT 3 各 指 令 说 明 时 序 输 入 指 令 3-13 时序输入指令 3-4 块·与 AND LD 概要 3-4 アンド・ロード AND LD 取电路块间的逻辑积。 3 各 符号 指 令 说 明 功能说明 将本指令之前的电路块和电路块串联连接。 执行条件/每次刷新指定 执行条件 每周期连接下一段 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 状态标志的动作 无 动作说明 (例) AND LD 无 中断任务 程序区域 可 所谓电路块是指,从 LD/LD NOT 指令开始到下一个 LD/LD 时 序 NOT 指令之前的电路。 输 入 指 注: 程序① 指令 数据 令 并联 3 个以上的电路块时,也可以采取顺次连接的形式, LD 0.00 即先通过本指令吕联 2 个电路块后,再通过本指令吕联下 OR NOT 0.01 一个电路块。另外,也可以在 3 个以上的电路块之后继续 LD NOT 0.02 配置本指令,进行一次性吕联。 OR 0.03 ·通过 AND LD 指令或 OR LD 指令连接电路块时,AND AND LD - LD/OR LD 指令的合计数和 LD/LD NOT 指令的合 LD 0.04 计数-1 必须为同一数值。如果不一致,会出现电路 OR 0.05 错误。 AND LD - : : OUT 100.00 程序② 指令 LD OR NOT LD NOT OR LD OR : AND LD AND LD : OUT 数据 0.00 0.01 0.02 0.03 0.04 0.05 : - - : 100.00 编码 程序地址 000000 000001 000002 000003 000004 000005 指令 LD OR LD OR NOT AND LD OUT 数据 0.00 0.01 0.02 0.03 - 100.00 ·AND LD 指令虽然可以无限制连续使用,但是通过② 的方法进行编程时,AND LD 的个数将变成前的(LD 及 LD NOT 的个数)-1。 ·此外,在②的情况下,LD、LD NOT 的个数在 AND LD 之前请设置为合计 8 个以下。 ·9 个以上时,请按照①的方法进行编程。 ·9 个以上时,通过外围工具进行程序检测时会出现电 路错误。 第二个 LD:用于与在前面的串联连接的下一个块的第一 个接点。 3-14 3-5 块·或 OR LD 概要 3-5 オア・ロード OR LD 取电路块间的逻辑和。 符号 功能说明 将本指令之前的电路块和电路块并联连接。 时序输入指令 执行条件/每次刷新指定 执行条件 每周期连接下一段 OR LD 每次刷新指定 无 3 各 使用限制 指 区域 块程序区 工程步进 子程序区域 中断任务 令 域 程序区域 程序区域 说 使用 可 可 可 可 明 状态标志的动作 无 所谓电路块是指,从 LD/LD NOT 指令开始到下一个 LD/LD NOT 指令之前的电路。 注: 并联 3 个以上的电路块时,也可以采取顺次连接的形式, 即先通过本指令并联 2 个电路块后,再通过本指令并联下 一个电路块。此外,也可以在 3 个以上的电路块之后继续 配置本指令,进行一次性并联。 ·通过 AND LD 指令或 OR LD 指令连接电路块时,AND LD/OR LD 指令的合计数和 LD/LD NOT 指令的合 计数-1 必须为同一数值。如果不一致,会出现电路错 误。 程序① 指令 LD AND NOT LD NOT AND NOT OR LD LD AND OR LD : OUT 数据 0.00 0.01 0.02 0.03 - 0.04 0.05 - : 100.00 时 程序② 序 指令 数据 输 入 LD 0.00 指 AND NOT 0.01 令 LD NOT 0.02 AND NOT 0.03 LD 0.04 AND 0.05 : : OR LD - OR LD - : : OUT 100.00 0.00 0.01 0.02 0.03 100.00 编码 程序地址 000100 000101 000102 000103 000104 000105 指令 LD AND NOT LD AND OR LD OUT 数据 0.00 0.01 0.02 0.03 - 100.00 ·OR LD 指令虽然可以无限次连续使用,但是通过②的 方法进行编程时,OR LD 的个数变为之前的(LD 及 LD NOT 的个数)-1。 ·此外,在②的情况下,LD、LD NOT 的个数在 OR LD 之前请设置在合计 8 个以下。 ·9 个以上时,请按照①的方法进行编程。 ·通过②的方法在 9 个以上时,利用外围工具进行程序 检测时会出现电路错误。 第二个 LD:用于与在前面的串联连接的下一个块的第一 个接点。 3-15 时序输入指令 3-6 非 NOT(520) 概要 3-6 ノット NOT(520) 将输入条件取反。 3 各 符号 指 令 说 明 功能说明 执行条件/每次刷新指定 执行条件 每周期执行,连接下一段 每次刷新指定 使用限制 区域 块程序区 域 使用 可 工程步进 程序区域 可 子程序区域 可 NOT 无 中断任务程 序区域 可 将输入条件取反,连接到下一段。 状态标志的动作 无 注: •本指令为下一段连接型指令。 •请在本指令的最终段中加上输出类指令(OUT 类指令以及 下段连接型指令之外的应用指令)。 •本指令不能在回路的最终段中进行使用。 动作说明 时 序 (例) 输 入 指 令 3-16 时序输入指令 3-7 P.F.上升沿微分 UP(521) 概要 执行条件/每次刷新指定 3-7 P.F.上升微分 UP(521) 输入信号的上升沿(OFF→ON)时,1 周期内为 ON, 执行条件 上升沿时执行,连接下一段 UP 连接到下一段。 每次刷新指定 无 3 符号 各 使用限制 指 区域 块程序区 工程步进 子程序区域 中断任务 令 域 程序区域 程序区域 说 使用 可 可 可 可 明 功能说明 是一种下一段连接型的上升沿微分指令。 状态标志的动作 无 注: •本指令为下一段连接型指令。 •请在本指令的最终段中加上输出类指令(OUT 类指令以及 下段连接型指令之外的应用指令)。 •本指令不能在回路的最终段中进行使用。 请注意 时 在 IL-ILC 间、JMP-JME 指令间、子程序指令内使用本 序 输 指令时,根据指令执行条件的不同,动作有时会出现不 入 稳定现象,请加以注意。 指 令 参考 即使是上升沿微分指令(DIFU),也可以取逻辑电路上 的到前一段为止的输入信号的微分,但由于是输出指 令,需要内部辅助继电器。使用本指令,由于可以直接 连接到下一段上,因此可以实现内部辅助继电器的节省 和程序步数的节省。 动作说明 (例) 3-17 时序输入指令 3-8 P.F.下降沿微分 DOWN(522) 概要 执行条件/每次刷新指定 3-8 P.F.立下り微分 DOWN(522) 输入信号的下降沿(ON→OFF)时,1 周期内为 ON, 3 连接到下一段以后。 执行条件 下降沿时执行,连接下一段 每次刷新指定 DOWN 无 各 指 符号 使用限制 令 区域 块程序区 工程步进 子程序区域 中断任务 说 域 程序区域 程序区域 明 使用 可 可 可 可 功能说明 是一种下一段连接型的下降沿微分指令。 状态标志的动作 无 注: •本指令为下一段连接型指令。 •请在本指令的最终段中加上输出类指令(OUT 类指令以及 下段连接型指令之外的应用指令)。 •本指令不能在回路的最终段中进行使用。 时 请注意 序 输 在 IL-ILC 间、JMP-JME 指令间、子程序指令内使用本 入 指令时,根据指令执行条件的不同,有时会出现动作不 指 令 稳定的现象,请加以注意。 参考 下降沿微分指令(DIFD),也可以取逻辑电路上到前一 段为止的输入信号的微分,但由于是输出指令,必须有 内部辅助继电器。使用本指令,由于可以直接连接到下 一段上,因此可以实现内部辅助继电器的节省和程序步 数的节省。 动作说明 (例) 3-18 时序输入指令 3-9 LD 型·位测试 LD TST(350)/ LD 型·位测试非 LD TSTN(351) LD 型·位测试 LD TST LD 型·位测试非 LD TSTN 3-9 LD 型・位测试 LD TST(350)/ LD 型・位测试非 LD TSTN(351) 概要 概要 3 指定位为 1 时,在下一段上进行 LD(读)连接。 指定位为 0 时,在下一段上进行 LD(读)连接。 各 指 符号 符号 令 说 明 操作数说明 N:0000~000F Hex 或 10 进制&0~15 指定通道时,如果是范围之外的值,则只有低位 4 位(0~ F Hex)有效。 操作数说明 N:0000~000F Hex 或 10 进制&0~15 指定通道时,如果是范围之外的值,则只有低位 4 位(0~ F Hex)有效。 功能说明 功能说明 将 S 的 N 位的 ON/OFF 内容反映在输入条件中。(和 LD 指令同样处理,之后继续进行其他指令的编程)。 将 S 的 N 位的 ON/OFF 内容取返反映在输入条件中。(和 LD 指令同样处理,之后继续进行其他指令的编程)。 时 序 输 注: 注: 入 指 ・ 本指令是可以直接连接在母线上的下一段连接型指令。 ・ 本指令是可以直接连接在母线上的下一段连接型指令。 令 ・请在本指令的最终段中附加输出类指令(OUT 类指令及 下一段连接型指令以外的应用指令)。 ・请在本指令的最终段中附加输出类指令(OUT 类指令及 下一段连接型指令以外的应用指令)。 •本指令不能在回路的最终段中进行使用。 ・ 本指令不适用于电路的最终段。 动作说明 (例) 3-19 时序输入指令 LD 型・位测试 LD TST(350)/ LD 型・位测试非 LD TSTN(351) LD 型·位测试 LD TST 3 执行条件/每次刷新指定 各 指 执行条件 每周期执行,连接下一段 每次刷新指定 LD TST 无 令 说 使用限制 明 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 使用 可 可 可 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 时 序 输 数据内存(DM) DM 间接(BIN) 入 DM 间接(BCD) 指 常数 令 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S N 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― #0000~000F (BIN 数据) 或&0~15 DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 OFF OFF OFF LD 型·位测试非 LD TSTN 执行条件/每次刷新指定 执行条件 每周期执行,连接下一段 每次刷新指定 LD TSTN 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S N 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― #0000~000F (BIN 数据) 或&0~15 DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 OFF OFF OFF 3-20 时序输入指令 3-10 AND 型·位测试 AND TST(350)/AND LD 型·位测试非 AND TSTN(351) AND 型·位测试 AND TST AND 型·位测试非 AND TSTN 3-10 AND 型・位测试 AND TST(350)/AND LD 型・位测试非 AND TSTN(351) 概要 概要 3 指定位为 1 时,在下一段上进行 AND(串联)连接。 指定位为 0 时,在下一段上进行 AND(串联)连接。 各 指 符号 符号 令 说 明 操作数说明 N:0000~000F Hex 或 10 进制&0~15 指定通道时,如果是范围之外的值,则只有低位 4 位(0~ F Hex)有效。 操作数说明 N:0000~000F Hex 或 10 进制&0~15 指定通道时,如果是范围之外的值,则只有低位 4 位(0~ F Hex)有效。 功能说明 功能说明 将 S 的 N 位的 ON/OFF 内容与输入条件之间的逻辑积反 将 S 的 N 位的 ON/OFF 内容取反,将其与输入条件之间 时 映在输入条件中。(和 AND 指令同样处理,之后继续对 的逻辑积反映在输入条件中。(和 AND 指令同样处理, 序 其他指令进行编程)。 之后继续对其他指令进行编程)。 输 入 注: 指 ·本指令为 AND(串联)型的下一段连接型指令。不能直 注: 令 接连接在母线上。 ·本指令为 AND(串联)型的下一段连接型指令。不能直 ·请在本指令的最终段中附加输出类指令(OUT 类指令及 接连接在母线上。 下一段连接型指令以外的应用指令)。 ·请在本指令的最终段中附加输出类指令(OUT 类指令及 ·本指令不适用于电路的最终段。 下一段连接型指令以外的应用指令)。 ·本指令不适用于电路的最终段。 动作说明 (例) 3-21 时序输入指令 AND 型・位测试 AND TST(350)/AND LD 型・位测试非 AND TSTN(351) AND 型·位测试 AND TST 3 执行条件/每次刷新指定 各 指 执行条件 每周期执行,连接下一段 每次刷新指定 AND TST 无 令 说 使用限制 明 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 使用 可 可 可 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 时 序 数据内存(DM) 输 DM 间接(BIN) 入 DM 间接(BCD) 指 常数 令 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S N 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― #0000~000F (BIN 数据) 或&0~15 DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 OFF OFF OFF AND 型·位测试非 AND TSTN 执行条件/每次刷新指定 执行条件 每周期执行,连接下一段 每次刷新指定 AND TSTN 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S N 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― #0000~000F (BIN 数据) 或&0~15 DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 OFF OFF OFF 3-22 时序输入指令 3-11 OR 型·位测试 OR TST(350)/OR 型·位测试非 OR TSTN(351) OR 型・位测试 OR TST OR 型・位测试非 OR TSTN 3-11 OR 型・位测试 OR TST(350)/OR 型・位测试非 OR TSTN(351) 概要 概要 3 指定位为 1 时,在下一段上进行 OR(并联)连接。 指定位为 1 时,在下一段上进行 OR(并联)连接。 各 指 符号 符号 令 说 明 操作数说明 N:0000~000F Hex 或 10 进制&0~15 指定通道时,如果是范围之外的值,则只有低位 4 位(0~ F Hex)有效。 操作数说明 N:0000~000F Hex 或 10 进制&0~15 指定通道时,如果是范围之外的值,则只有低位 4 位(0~ F Hex)有效。 功能说明 功能说明 时 将 S 的 N 位的 ON/OFF 内容与输入条件之间的逻辑和反 将 S 的 N 位的 ON/OFF 内容取反,将其与输入条件之间 序 映在输入条件中。(和 OR 指令同样处理,之后继续进 行其他指令的编程)。 的逻辑和反映在输入条件中。(和 OR 指令同样处理, 之后继续进行其他指令的编程)。 输 入 指 令 注: •本指令为 OR(并联)型的下一段连接型指令。 •请在本指令的最终段中加上输出类指令(OUT 类指令以及 下段连接型指令之外的应用指令)。 •本指令不能在回路的最终段中进行使用。 注: •本指令为 OR(并联)型的下一段连接型指令。 •请在本指令的最终段中附加输出类指令(OUT 类指令及 下一段连接型指令以外的应用指令)。 •本指令不适用于电路的最终段。 动作说明 (例) 3-23 时序输入指令 OR 型・位测试 OR TST(350)/OR 型・位测试非 OR TSTN(351) OR 型・位测试 OR TST 3 执行条件/每次刷新指定 各 指 执行条件 每周期执行,连接下一段 每次刷新指定 OR TST 无 令 说 使用限制 明 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 使用 可 可 可 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 时 序 数据内存(DM) 输 DM 间接(BIN) 入 DM 间接(BCD) 指 常数 令 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S N 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― #0000~000F (BIN 数据) 或&0~15 DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 OFF OFF OFF OR 型・位测试非 OR TSTN 执行条件/每次刷新指定 执行条件 每周期执行,连接下一段 每次刷新指定 OR TSTN 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S N 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― #0000~000F (BIN 数据) 或&0~15 DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 OFF OFF OFF 3-24 时序输出指令 项目号 3-12 3-13 3-14 3-15 3-16 3-17 3-18 3-19 3-20 3-21 指令语句 输出 输出非 临时存储继电器 保持 上升沿微分 下降沿微分 置位 复位 多位置位 多位复位 1 位置位 1 位复位 1 位输出 助记符 OUT OUT NOT TR KEEP DIFU DIFD SET RSET SETA RSTA SETB RSTB OUTB FUN 编号 页码 3-26 3-29 011 3-30 013 3-33 014 3-34 3-35 530 3-37 531 3-39 532 3-41 533 534 3-43 3-25 时序输出指令 3-12 输出 OUT/输出非 OUT NOT 输出 OUT 3-12 输出 OUT/否定输出 OUT NOT 3 概要 各 将逻辑运算处理结果(输入条件)输出到指定接点。 指 令 符号 说 明 输出非 OUT NOT 概要 将逻辑运算处理结果(输入条件)取反、输出到指定接 点。 符号 执行条件/每次刷新指定 执行条件 每次刷新指定 ON 时每周期执行 上升沿 1 周期执行 下降沿 1 周期执行 OUT 无 无 !OUT 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿 1 周期执行 下降沿 1 周期执行 OUT NOT 无 无 每次刷新指定 !OUT NOT 功能说明 功能说明 时 序 输 出 指 令 无每次刷新指定时,将输入条件(功率流)的内容写入 I/O 存储器的指定位。 有每次刷新指定时,将输入条件(功率流)的内容同时 写入 I/O 存储器的指定位和 CPU 单元内置的实际输出接 点。 无每次刷新指定时,将输入条件(功率流)的内容取反 后写入 I/O 存储器的指定位。 有每次刷新指定时,将输入条件(功率流)的内容取反 后同时写入 I/O 存储器的指定位和 CPU 单元内置的实际 输出接点。 注: 可以指定每次刷新(!OUT/!OUT NOT)。此时,执行本指 令后,将之前的输入条件(功率流)的内容写入 I/O 存储器 使用限制 OUT/OUT NOT 指令共通 指定位的同时,对 CPU 单元的内置输出进行 OUT 刷新。 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 动作说明 使用 不可 可 可 可 (例) 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 临时存储继电器 数据内存 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) OUT/OUT NOT 的操作数 0000.00~6143.15 W000.00~511.15 H000.00~511.15 A448.00~959.15 ― ― TR0~15 ― ― ― ― ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 注:临时存储继电器仅在通过助记符编写程序时使用。在 梯形图中不能使用。 状态标志的动作 无 3-26 时序输出指令 输出 OUT/否定输出 OUT NOT 关于微分型指令和每次刷新型指令 ·LD/AND/OR/LD NOT/AND NOT/OR NOT 指令中,除常用指令之外,还有微分型指令和每次刷新型指令以及这二 者的组合型指令。 3 ·OUT/OUT NOT 指令中,通常的指令以外还有每次刷新型指令。 ·常用指令及微分型指令与每次刷新型指令和微分每次刷新型指令中,指令所处理的数据的输入输出时序不同。 ·常用指令以及微分型指令中,使用该指令执行以前的 I/O 刷新处理所输入的数据执行,其结果在下一次 I/O 刷新处 各 指 令 说 理中输出。这里所说的 I/O 刷新是指 CPU 的内部存储器与 CPU 单元内置的输入输出端子及 CPM1A 系列扩展(I/O) 明 单元之间的数据交换。 ·每次刷新型指令在上述 I/O 刷新的基础上,对输入指令为执行指令之前,对输出指令为执行指令后,仅对通过指令 访问的通道进行与输入输出单元之间的数据交换。 接点的每次刷新型指令对含在指定接点的通道内的其他接点也同时进行刷新。 指令类型 指令语句 功能 I/O 刷新 常用指令 LD/AND/OR LD NOT/AND NOT/ 对指定接点的 ON/OFF 状态进行周期性刷新,读入 CPU,反映 周期性刷新 到之后的指令执行中。 OR NOT OUT/OUT NOT 指令之后,将指定接点的 ON/OFF 状态在之后的周期性刷新时 输出。 上升沿微分型指令 @LD/@AND/@OR 在指定接点的 ON 上升沿时(OFF→ON)执行指令,1 周期内 下降沿微分型指令 %LD/%AND/%OR 为 ON。 在指定接点的 OFF 下降沿时(ON→OFF)执行指令,1 周期内 时 序 输 为 ON。 出 每次刷新型指令 !LD/!AND/!OR/ 将指定接点的输入数据读入 CPU 后执行指令。 !LD NOT/!AND NOT/ 指令执行前 指 令 !OR NOT !OUT/!OUT NOT 执行指令后,向指定接点输出数据。 指令执行后 上升沿微分・ 每次刷新型指令 !@LD/!@AND/!@OR 将指定接点的输入数据读入 CPU 后,如果在 ON 上升沿 (OFF→ON)时,则执行指令,1 周期内为 ON 指令执行前 下降沿微分・ 每次刷新型指令 !%LD/!%AND/!%OR 将指定接点的输入数据读入 CPU 后,如果在 OFF 下降沿 (ON→OFF)时,则执行指令,1 周期内为 ON。 注:每次刷新型指令(带!)仅能用于 CPU 单元内置的输入输出。 不能用于 CPM1A 系列的扩展(I/O)单元。扩展单元请使用 IORF 指令。 3-27 时序输出指令 输出 OUT/否定输出 OUT NOT 各输入输出指令的动作定时 对于由 LD 指令和 OUT 指令构成的程序,各种指令动作的区别用时序图进行表示。 3 各 指 令 说 明 时 序 输 出 指 令 3-28 时序输出指令 3-13 临时存储继电器 TR 概要 ①的情况下,A 点上的 ON/OFF 状态和输出 100.00 相同, 3-13 临时存储继电器 TR TR(临时继电器)在助记符程序中,用于对电路运行中 的 ON/OFF 状态进行临时存储。 因为外围工具侧可以进行自动处理,所以梯形图中不使 用。在以下的说明中为了便于理解,用梯形图加以解释。 因此可以接着 OUT 100.00 进行 AND0.01、OUT 100.01 的编程,不需要 TR。 ②的情况下,分支点上的内容与 100.02 的输出内容可能 不一致,所以需要使用 TR 进行接收。电路②如果改 3 各 指 令 写成①,程序步数将減少。 说 TR0~TR15 的思维方式 明 由于 TR 仅用于输出分支较多的电路的分支点上的 ON/OFF 状态存储(OUT TR0~TR15)和再现(LD TR0~ TR15),所以与一般的继电器、接点不同,在 AND、 OR 指令和 NOT 的附加了指令中不能使用。 编码 程序地址 00200 00201 00202 00203 00204 00205 00206 00207 00208 00209 00210 00211 00212 00213 00214 指令 LD OUT AND OUT AND OUT LD AND OUT LD AND OUT LD AND NOT OUT 数据 0.00 TR0 0.01 TR1 0.02 100.00 TR1 0.03 100.01 TR0 0.04 100.02 TR0 0.05 100.03 TR0~TR15 线圈的双重使用 如下图所示,输出分支电路较多时,在同一块内,不能 重复使用 TR 的继电器编号,但可以在其他块中使用。 时 序 输 出 指 令 继电器编号 临时存储继电器 TR0~TR15 TR0~TR15 的使用方法 ·TR0~TR15 不能用于 LD、OUT 指令之外的指令。 ·TR0~TR15 在继电器编号的使用顺序上没有限制。 ·不需要 TR 的电路和需要 TR 的电路 3-29 时序输出指令 3-14 保持 KEEP(011) 概要 3-14 保持 KEEP(011) 进行保持继电器(自保持)的动作。 3 各 符号 指 ·可以将 KEEP 指令作为每次刷新型指令(!KEEP)。 执行每次刷新型指令(!KEEP)时,在 R 中指定 CPU 单 元内置的输出继电器区域。 在 R 中指定了外部输出时,对锁定或解除锁定的 R 在指 令执行时进行 OUT 刷新。 令 说 明 功能说明 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 KEEP 无 无 置位输入(输入条件)为 ON 时,保持 R 所指定的继电 每次刷新指定 !KEEP 器的 ON 状态。复位输入为 ON 时,进入 OFF 状态。 使用限制 置位 区域 块 程 序 区 工 程 步 进 子程序区域 中 断 任 务 域 程序区域 程序区域 复位 使用 不可 可 可 可 数据内容 区域 CIO(输入输出继电器等) 时 序 输 置位输入 出 指 令 复位输入 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存 DM 间接(BIN) 保持输出 DM 间接(BCD) 常数 注: 数据寄存器 ·置位输入(输入条件)和复位输入同时为 ON 时,复位输 入优先。 变址寄存器(直接) 变址寄存器(间接) 置位输入 复位输入 状态标志的动作 R 0000.00~6143.15 W000.00~511.15 H000.00~511.15 A448.00~959.15 ― ― ― ― ― ― ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 无 保持输出 ·复位输入为 ON 时,不接受置位输入(输入条件)。 置位输入 复位输入 保持输出 3-30 时序输出指令 保持 KEEP(011) 请注意 参考 请勿将 KEEP 指令的复位输入从 b 接点的外部设备中直 ·使用 KEEP 指令,可以制作触发电路。 接读取,否则 AC 电源切断和瞬时停电时,PLC 本体的 3 内部电源将不会立刻 OFF,而先将输入单元的输入 各 OFF,结果复位输入将为 ON,进入复位状态。 指 令 说 明 参考 通过使用自保持电路的 KEEP 指令可以进行改写,如下 所示。 0.02 0.03 100.00 ·通过 KEEP 指令使用保持继电器时,即使在停电时也 可以存储之前的状态。 <停电对策的异常显示电路例> 100.00 0.02 KEEP 时 序 输 异常输入 出 指 令 100.00 复位输入 0.03 但是,上述电路在 IL-ILC 间时,如果 IL 条件为 OFF, 使用了输出继电器的电路(上侧的电路)中输出 100.00 将为 OFF,使用了 KEEP 指令的电路将保持原状态,请 注意。 异常显示 ·I/O 存储器保持标志为 ON,并且在 PLC 系统设定中 I/O 存储器保持标志设定为保持时,(为了输入输出继 电器即使停电时也保持电源切断之前的状态)通过 KEEP 指令使用输入输出继电器,与保持继电器一样, 即使在停电时也可以存储之前的状态。 此外,进行 PLC 系统设定后,自下次电源 ON 时开始 生效,请注意。 3-31 时序输出指令 保持 KEEP(011) 动作说明 (例) 3 各 指 令 说 明 编码 程序地址 指令 数据 000100 LD 0.00 000101 LD 0.01 000102 KEEP(011) 100.00 000103 LD 0.02 000104 AND NOT 0.03 000105 LD 0.04 000106 OR 0.05 000107 KEEP(011) 100.01 注:KEEP 指令对于梯形图和助记符,其输入顺序上的差异。 梯形图:置位输入→KEEP 指令→复位输入 助记符:置位输入→复位输入→KEEP 指令 时 序 0.00 为 ON 时,保持 100.00 为 ON 的状态。 0.01 为 ON 时,100.00 为 OFF。 输 出 0.02 为 ON,0.03 为 OFF 时,保持 100.00 为 ON 的状态。 指 令 0.04 或 0.05 为 ON 时,100.00 为 OFF。 3-32 时序输出指令 3-15 上升沿微分 DIFU(013) 概要 3-15 上升微分 DIFU(013) 输入信号的上升沿(OFF→ON)时,指定接点的 1 周期 为 ON。 符号 执行条件/每次刷新指定 执行条件 每次刷新指定 ON 时每周期执行 上升沿时执行 下降沿时执行 使用限制 无 DIFU 3 无 各 !DIFU 指 令 说 明 功能说明 输入信号的上升沿(OFF→ON)时,将 R 所指定的接点 1 周期内为 ON,1 周期后,在本指令执行时 OFF。 区域 使用 块程序区 域 不可 数据内容 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 注: ·在 IL-ILC 指令间、JMP-JME 指令间或者子程序指令内使 用 DIFU 指令时,根据输入条件不同,动作会出现差异, 请注意。 ·可以将 DIFU 指令作为每次刷新型指令(! DIFU)。 每次刷新型指令(! DIFU)时,在 R 中指定 CPU 单元内 置的输出继电器区域。 在 R 中指定了外部输出时,对 ON 状态下的 R 在该时刻 (指令执行时)进行 OUT 刷新。(ON 状态下的 R 与平 时一样,在 1 周期内为 ON。) 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) R 0000.00~6143.15 W000.00~511.15 H000.00~511.15 A448.00~959.15 ― ― ― 时 ― 序 ― 输 ― 出 ― 指 令 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 ·在 1 周期内重复电路的 FOR-NEXT 指令间使用 DIFU 指 令时,接点在该电路中常开或常关。 参考 状态标志的动作 无 不使用内部辅助继电器等继电器,而要在下一段直接连 接上升沿微分时,使用 UP(上升沿微分)指令。 动作说明 (例) 3-33 时序输出指令 3-16 下降沿微分 DIFD(014) 概要 执行条件/每次刷新指定 3-16 下降微分 DIFD(014) 输入信号的下降沿(ON→OFF)时,所指定的接点 1 周 3 期内为 ON。 各 执行条件 ON 时每周期执行 上升沿时执行 下降沿时执行 指 符号 令 每次刷新指定 说 明 使用限制 无 无 DIFD !DIFD 功能说明 输入信号的下降沿(ON→OFF)时,将 R 所指定的接点 1 周期内为 ON,1 周期后,本指令执行时为 OFF。 区域 使用 块程序区 域 不可 数据内容 工程步进 程序区域 可 字程序区域 可 中断任务 程序区域 可 输入 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 注: 1 周期 时间 计数器 时 ·在 IL-ILC 指令间、JMP-JME 指令间或子程序指令内使用 数据内存 序 DIFD 指令时,根据输入条件的不同,动作会出现差异, DM 间接(BIN) 输 请注意。 DM 间接(BCD) 出 指 ·可以将 DIFD 指令作为每次刷新型指令(! DIFD)。 常数 数据寄存器 令 每次刷新型指令(! DIFD)时,在 R 中指定 CPU 单元内 变址寄存器(直接) 置的输出继电器区域。 变址寄存器(间接) 在 R 中指定了外部输出时,对 ON 状态下的 R 在该时刻 (指令执行时)进行 OUT 刷新。(ON 状态下的 R 与平 时一样,在 1 周期内为 ON)。 R 0000.00~6143.15 W000.00~511.15 H000.00~511.15 A448.00~959.15 ― ― ― ― ― ― ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 参考 不使用内部辅助继电器等继电器,而要在下一段直接连 接下降微分时,使用 DOWN(下降沿微分)指令。 状态标志的动作 无 动作说明 (例) 3-34 时序输出指令 3-17 置位 SET/复位 RSET 置位 SET 3-17 置位 SET/复位 RSET 概要 输入条件为 ON 时,将指定的接点置于 ON。 符号 复位 RSET 概要 3 输入条件为 ON 时,将指定的接点置于 OFF,进行复位。 各 指 符号 令 说 明 功能说明 输入条件为 ON 时,将 R 所指定的接点置于 ON。无论 输入条件是 OFF 还是 ON,指定接点 R 将始终保持 ON 状态。若要进入 OFF 状态,请使用 RSET 指令。 输入 条件 功能说明 输入条件为 ON 时,将 R 所指定的接点置于 OFF。无论 输入条件是 OFF 还是 ON,指定接点 R 将始终保持 OFF 状态。若要进入 ON 状态,使用 RSET 指令。 输入 条件 执行条件/每次刷新指定 执行条件 每次刷新指定 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 SET @SET %SET !SET 执行条件/每次刷新指定 执行条件 每次刷新指定 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 时 序 RSET 输 @RSET 出 指 %RSET 令 !RSET 复合条件 上升沿 1 周期执行且每次刷新 !@SET 复合条件 上升沿 1 周期执行且每次刷 !@RSET 指定 新指定 下降沿时 1 周期执行且每次刷 !%SET 下降沿时 1 周期执行且每次 !%RSET 新指定 刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 3-35 时序输出指令 置位 SET/复位 RSET 数据内容 (SET/RSET 指令共通) 3 区域 各 CIO(输入输出继电器等) 指 内部辅助继电器 令 保持继电器 说 特殊辅助继电器 明 时间 计数器 数据内存 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) R 0000.00~6143.15 W000.00~511.15 H000.00~511.15 A448.00~959.15 ― ― ― ― ― ― ― ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 时 序 输 状态标志的动作 出 (SET/RSET 指令共通) 指 无 令 注: ・不能通过该 SET/RSET 指令进行定时器、计数器的置位/ 复位。 ・ 在 IL-ILC/JMP-JME 指令内使用 SET/RSET 指令时,互锁 条件/转移条件为 OFF 时,指定的输出接点的状态不变。 ・ 可 以 将 SET/RSET 指 令 作 为 每 次 刷 新 型 指 令 (!SET/!RSET)使用。 每次刷新型指令(!SET/!RSET)时,在 R 中指定 CPU 单 元内置的输出继电器区域。 通过!SET(或!RSET 指令)在 R 中指定外部输出时,对 ON(或 OFF)状态下的 R 在该时刻(指令执行时)进行 OUT 刷新。ON(或 OFF)状态下的 R 与平时一样,在执 行 RSET 指令(或 SET 指令)前,保持 ON(或 OFF)状 态。 参考 SET/RSET 指令与 OUT 指令的区别 SET/RSET 指令仅在输入条件为 ON 时进行指定接点的 ON/OFF。 输入条件为 OFF 时,指定接点的 ON/OFF 状态保持不变。 OUT 指令在输入条件为 ON 时,指定接点为 ON,输入 条件为 OFF 时,指定接点为 OFF。 KEEP 指令必须将置位输入和复位输入写在同一位置, 但可以用 SET、RSET 指令进行分别记述。此外,对于 同一地址的输出继电器,可以使用多个 SET、RSET 指 令。 3-36 时序输出指令 3-18 多位置位 SETA(530) 概要 3-18 多位置位 SETA(530) 将连续指定位数的位置于 ON。 符号 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 SETA @SETA 3 每次刷新指定 下降沿时 1 周期执行 无 各 无 指 令 使用限制 说 区域 块 程 序 区 工 程 步 进 子程序区域 中 断 任 务 明 域 程序区域 程序区域 使用 可 可 可 可 操作数说明 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 D A448~ N1 N2 0000~6143 W000~511 H000~511 A000~959 959 N1:0000~000F Hex 或 10 进制&0~15 时间 T0000~4095 N2:0000~FFFF Hex 或 10 进制&0~65535 注:D~D+最大 4096 CH 必须为同一区域种类。 计数器 数据内存 DM 间接(BIN) C0000~4095 D00000~32767 @D00000~32767 时 序 DM 间接(BCD) *D00000~32767 输 功能说明 常数 ― #0000~000F #0000~FFFF 出 从D所指定的低位 CH 编号的 N1 中指定的开始位位置 (BIN)开始,将高位位侧连续指定的位数(N2)置于 ON。指定范围以外的位的数据保持不变。此外,位数的 指定为 0 时,位的数据保持不变。 数据寄存器 变址寄存器(直接) 变址寄存器(间接) (BIN 数据)或 (BIN 数据)或 &0~15 &0~65535 ― DR0~15 ― ,IR0~15 指 令 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 将通过本指令转为 ON 状态下的位置于 OFF 时,不限于 多位复位(RSTA)指令,也可以使用常用指令。 参考 SETA(多位置位)指令中,即使对于数据存储器、扩展 数据存储器等通道(字)单位所处理的区域种类,也可 以将指定范围的位区域整体置位于 ON。 状态标志的动作 名称 出错标志 标记符 ER 内容 ・ N1 的数据不在 0000~000F Hex 的范围内时为 ON ・ 除此之外为 OFF 3-37 时序输出指令 多位置位 SETA(530) 动作说明 (例) 3 各 指 令 说 明 时 序 输 出 指 令 3-38 时序输出指令 3-19 多位复位 RSTA(531) 概要 3-19 多位复位 RSTA(531) 将连续的指定位数的位置于 OFF。 符号 执行条件/每次刷新指定 执行条件 ON 时每周期执行 RSTA 上升沿时 1 周期执行 @RSTA 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 操作数说明 数据内容 区域 D N1 N2 CIO(输入输出继电器 等) 0000~6143 内部辅助继电器 W000~W511 保持继电器 H000~H511 特殊辅助继电器 A448~ A000~A959 N1:0000~000F Hex 或 10 进制&0~15 时间 A959 T0000~T4095 N2:0000~FFFF Hex 或 10 进制&0~65535 计数器 C0000~C4095 注:D~D+最大 4096 CH 必须为同一区域种类。 数据内存 DM 间接(BIN) D00000~D32767 @D00000~32767 时 序 输 功能说明 DM 间接(BCD) *D00000~32767 出 从 D 所指定的低位 CH 编号的由 N1 所指定的开始位位 常数 置(BIN)开始,将高位位侧连续的指定位数(N2)置 ― #0000~000F #0000~FFFF 指 (BIN 数据)或 (BIN 数据)或 令 &0~15 &0~65535 于 OFF。指定范围以外的位的数据保持不变。此外,位 数据寄存器 ― DR0~15 数的指定为 0 时,位的数据保持不变。 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 通过本指令将 OFF 状态下的位置于 ON 时,不限于多位 置位(SETA)指令,也可以使用常用指令。 参考 RSTA(多位复位)指令中,即使对于数据存储器、扩展 数据存储器等通道(字)单位所处理的区域种类,也可 以将指定范围的位区域整体复位为 OFF。 状态标志的动作 名称 出错标志 标记符 ER 内容 ・N1 的数据不在 0000~000F Hex 的范 围内时为 ON ・除此之外为 OFF 3-39 时序输出指令 多位复位 RSTA(531) 动作的说明 (例) 3 各 指 令 说 明 时 序 输 出 指 令 3-40 时序输出指令 3-20 1 位置位 SETB(532)/1 位复位 RSTB(533) 1 位置位 SETB 1 位复位 RSTB 3-20 1 位置位 SETB(532)/1 位复位 RSTB(533) 概要 概要 3 输入条件为 ON 时,将指定 CH 所指定的接点置于 ON。 与 SET 指令不同,可以将 DM 区域的指定位作为置位对 象。 符号 输入条件为 ON 时,将指定 CH 所指定的接点置于 OFF, 进行复位。 与 RST 指令不同,可以将 DM 区域的指定位作为复位对 象。 各 指 令 说 明 符号 操作数说明 N:0000~000F Hex 或 10 进制&0~15 操作数说明 功能说明 N:0000~000F Hex 或 10 进制&0~15 输入条件为 ON 时,将 D 所指定的 CH 的位地址 N 置于 功能说明 ON。即使输入条件为 OFF,D 所指定的 CH 的位地址 N 输入条件为 ON 时,将 D 所指定的 CH 的位地址 N 置于 也保持不变。 OFF。无论输入条件是 OFF 还是 ON,指定接点 D 所指 定的 CH 的位地址 N 始终保持 OFF 状态。若要进入 ON 时 序 输 状态,请使用 SETB 指令。 出 指 令 执行条件/每次刷新指定 执行条件 每次刷新指定 复合条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 上升沿 1 周期执行且每次刷 新指定 下降沿时 1 周期执行且每次 刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 SETB @SETB 无 !SETB !@SETB 无 中断任务 程序区域 可 执行条件/每次刷新指定 执行条件 每次刷新指定 复合条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 上升沿 1 周期执行 且每次刷 新指定 下降沿时 1 周期执行且每次刷 新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 RSTB @RSTB 无 !RSTB !@RSTB 无 中断任务 程序区域 可 3-41 时序输出指令 1 位置位 SETB(532)/1 位复位 RSTB(533) 数据内容 (SETB/RSTB 指令共通) 3 区域 D N 各 CIO(输入输出继电器等) 0000~6143 指 内部辅助继电器 W000~511 令 保持继电器 H000~511 说 特殊辅助继电器 A448~959 A000~959 明 时间 T0000~4095 计数器 C0000~4095 数据内存 D00000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 ― #0000~#000F (BIN 数据) 或&0~15 数据寄存器 DR0~15 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) 时 ,-(--)IR0~15 序 输 出 状态标志的动作 指 令 (SETB/RSTB 指令共通) 名称 出错标志 标记符 ER 内容 ・N 在 0000~000F Hex(10 进制&0~15)以外时 为 ON ・除此之外为 OFF 注: ・ 通过!SETB(或!RSTB 指令)在 D CH 的位地址 N 中指 定 CPU 单元内置的输出时,对 ON(或 OFF)状态下的 D CH 的位地址 N 在该时刻(指令执行时)进行 OUT 刷 新。ON(或 OFF)状态下的 D CH 的位地址 N 与平时一 样,在执行 RSTB 指令(或 SETB 指令)前,保持 ON(或 OFF)状态。 参考 SETB/RSTB 指令和 SET/RST 指令的区别 对于 CIO、内部辅助继电器(W)、保持继电器(H)、 特殊辅助继电器(A)具有同一功能。 使用 SETB/RSTB 指令,可以对于 SET/RST 指令所 不能指定的数据存储器(D)的指定位进行置位/复位。 SETB/RSTB 指令和 OUTB 指令的区别 SETB/RSTB 指令仅对输入条件为 ON 时的指定接点进 行 ON/OFF。 输入条件为 OFF 时,指定接点的 ON/OFF 状态保持不变。 OUTB 指令在输入条件为 ON 时将指定接点置于 ON, 输入条件为 OFF 时将指定接点置于 OFF。 在 KEEP 指令中必须将置位输入和复位输入记述于同一 位置,但可以对 SETB、RSTB 指令分别进行记述。此外, 对于同一地址的输出继电器,可以使用多个 SETB、 RSTB 指令。 0.00 SETB D0 &2 ・该 SETB 指令和 RSTB 指令可以不在置位中使用。(例: 0.01 对通过 SETB 指令置位的位进行复位时,可以不使用 RSTB 指令)。 ・不能通过该 SETB/RSTB 指令进行定时器、计数器的置 位/复位。 RSTB D2 &2 ・ 在 IL-ILC/JMP-JME 指令中使用 SETB/RSTB 指令时, 当互锁条件/转移条件为 OFF 时,指定的输出接点的状 态保持不变。 ・ 执行每次刷新型指令(!SETB/!RSTB)时,在 D 中指定 CPU 单元内置的输出继电器区域。 3-42 时序输出指令 3-21 1 位输出 OUTB(534) 概要 执行条件/每次刷新指定 3-21 1 ビットアウト OUTB(534) 将逻辑运算处理结果(输入条件)输出到指定 CH 的指 定位。 与 OUT 指令不同,可以将 DM 区域的指定位作为对象。 符号 执行条件 每次刷新指定 使用限制 ON 时每周期执行 上升沿 1 周期执行 下降沿 1 周期执行 OUTB @OUTB 3 无 各 !OUTB 指 令 说 OUTB 区域 块程序区 工程步进 子程序区域 中断任务 明 D 域 程序区域 程序区域 N 使用 不可 可 可 可 操作数说明 N:0000~000F Hex 或 10 进制&0~15 数据内容 区域 CIO(输入输出继电器等) D N 0000~6143 功能说明 内部辅助继电器 保持继电器 W000~511 H000~511 输入条件为 ON 时,将 D 所指定的 CH 的位地址 N 置于 特殊辅助继电器 A448~959 A000~959 ON。输入条件为 OFF 时,将 D 所指定的 CH 的位地址 N 置于 OFF。 时间 计数器 数据内存 T0000~4095 C0000~4095 D00000~32767 DM 间接(BIN) DM 间接(BCD) 常数 @D00000~32767 时 *D00000~32767 序 ― #0000~#000F 输 数据寄存器 (BIN 数据) 出 或&0~15 指 DR0~15 令 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 无每次刷新指定时,将输入条件(功率流)的内容写入 I/O 存储器的指定位。 有每次刷新指定时,将输入条件(功率流)的内容同时 写入 I/O 存储器的指定位和 CPU 单元内置的实际输出接 点。 注: ・可以指定每次刷新(!OUTB)。此时,执行本指令之后, 在将之前的输入条件(功率流)的内容写入 I/O 存储器的 指定位的同时,对单元内置的输出进行 OUT 刷新。 ・本指令被记述在 IL 指令~ILC 指令间的程序内,互锁状 态(IL 中)下,与 OUT 指令相同,本指令所指定的位进 入 OFF 状态。 ・对位位置 N 进行通道指定时,仅使用位 00~03。 例如,N 所指定的通道内容为 FFFA Hex 时,对于位 10 进行 ON/OFF。 动作说明 (例) 0.00 OUTB D0 &10 0.00 为 OFF 时,将 D0 的位 10 OFF。 3-43 时序输出指令 3 各 指 令 说 明 时 序 输 出 指 令 3-44 . 时序控制指令 项目号 3-22 3-23 3-24 3-25 3-26 3-27 3-28 3-29 3-30 指令语句 结束 无功能 互锁 互锁区域 多重互锁(微分标志保持型) 多重互锁(微分标志不保持型) 多重互锁清除 转移 转移结束 条件转移 条件非转移 多重转移 多重跳到结束 重复开始 重复结束 跳出循环 助记符 END NOP IL ILC MILH MILR MILC JMP JME CJP CJPN JMP0 JME0 FOR NEXT BREAK FUN 编号 001 000 002 003 517 518 519 004 005 510 511 515 516 512 513 514 页码 3-46 3-47 3-49 3-52 3-59 3-62 3-65 3-66 3-68 3-45 时序控制指令 3-22 结束 END(001) 概要 3-22 结束 END(001) 表示一个程序的结束。 3 各 符号 执行条件/每次刷新指定 执行条件 每次刷新指定 ON 时每周期执行 END 无 指 使用限制 令 区域 块程序区 工程步进 子程序区域 中断任务 说 明 功能说明 域 使用 不可 程序区域 不可 不可 程序区域 可 对于一个程序,通过本指令的执行,结束该程序的执行。 因此,END 指令后的其它指令不被执行。 状态标志的动作 对于整个用户程序的的执行,执行控制可以转移到该周 无 期内起动的下一个较小 No.的周期执行任务程序中。 本指令中所写的程序周期执行任务,当在起动的周期执 行任务中的出现更大的任务 No.时,表示整个用户程序 的结束。 注:在一个程序的最后,必须输入该 END 指令。无 END 指令时,将出现程序错误。 时 序 控 制 指 令 3-46 时序控制指令 3-23 无功能 NOP(000) 概要 执行条件/每次刷新指定 3-23 无功能 NOP(000) 不具备任何功能的指令。(不进行程序处理)。 符号 (在梯形图中无表示)。 功能说明 执行条件 每次刷新指定 ON 时每周期执行 NOP 无 3 各 使用限制 指 区域 块程序区 工程步进 子程序区域 中断任务 令 域 程序区域 程序区域 说 使用 可 可 可 可 明 不进行指令处理。在指令插入时为确保区域而使用。 仅在助记符表示时可以使用。 状态标志的动作 无 参考 在需要插入接点的位置预先写入 NOP 指令后,插入接点 也不会发生程序地址 No.的偏差。 时 序 控 制 指 令 3-47 时序控制指令 关于互锁指令 3 互锁指令的种类 各 对输出进行互锁的指令有以下几种。 指 ・互锁(IL-ILC)指令 令 说 明 ・多重互锁(MILH-MILC 或者 MILR-MILC)指 令 多重互锁(微分标志保持型)(MILH-MILC) 指令 多重互锁(微分标志不保持型)(MILR- MILC)指令 使用限制 请不要混合使用 IL-ILC 指令、MILH-MILC 指令、 MILR-MILC 指令。混合使用时,电路动作将不能保证。 此外,关于一旦混合后的动作,请参见 MILH/MILR/MILC 指令的说明项。 例)不可在 IL-ILC 指令之间配置 MILH 指令。 互锁(IL-ILC)指令和多重互锁(MILH-MILC 或者 MILR-MILC)指令的区别 互锁(IL-ILC)指令不能嵌套(嵌入结构)。对于这一 点,多重互锁(MILH-MILC 或者 MILR-MILC)指令 可以进行嵌套。因此,如下所示,与 IL-ILC 指令相比, 多重互锁的指令记述更加简单。 注:IL-ILC 指令、MILH-MILC 指令、MILR-MILC 指 令的各互锁对象区域如果不重复,可以同时使用这些指 令。 MILH-MILC 指令 时 序 控 制 指 令 用 IL-ILC 指令实现 例)可以在不重复 IL-ILC、MILH-MILC、MILR- MILC 的条件下进行配置。 多重互锁(微分标志保持型)(MILH)指令和多 重互锁(微分标志不保持型)(MILR)指令的区 别 MILH 指令和 MILR 指令在 MILH-MILC 指令或者 MILR-MILC 指令之间存在微分指令(带有 DIFU/DIFD/@/%的指令)时,该微分指令的动作不同。 此外,MILH 指令关于微分指令的动作和 IL 指令一样。 具 体 情 况 请 参 见 MILH/MILR/MILC 指 令 的 说 明 项 「MILH 指令和 MILR 指令的区别」。 互锁指令和转移指令的区别 IL-ILC、MILH-MILC、MILR-MILC 指令在以下几点上 与 JMP-JME 指令不同。 指令 指令的执行 各指令的输出 OUT、 定时器类指令(除 OUTB、OUT TTIM/TTIMX、 NOT 指令指 MTIM/MTIMX 外) 定的继电器 的状态 IL-ILC 指令 (OUT、 (OUT、 OFF MILH-MILC OUTB、OUT OUTB、OUT 指令 NOT、定时 NOT、定时器 MILR-MILC 器类指令以 类指令以外 指令 外的)所有指 的)所有指令 令均不执行 的输出均保持 在此之前的状 态 复位 JMPーJME 所有指令均 所有指令的输 保持之前的 指令 不执行 出均保持在此 状态 之前的状态 起动中的定时器 (仅限 TIM/TIMX、 TIMH/TIMHX、 TMHH/TMHHX 指令)继续计时 (因为即使在指令 执行之外当前值 也被更新) 3-48 时序控制指令 3-24 互锁 IL(002)/互锁解除 ILC(003) 概要 执行条件/每次刷新指定 3-24 互锁 IL(002)/互锁清除 ILC(003) 如果输入条件为 OFF,IL 指令之后到 ILC 指令为止的输 IL 指令 出将被互锁。 执行条件 OFF 时互锁/ON 时非互锁 IL 3 IL 指令和 ILC 指令配套使用。 每次刷新指定 无 各 指 符号 ILC 指令 令 执行条件 ON 时每周期执行 ILC 说 IL 指令 每次刷新指定 无 明 ILC 指令 使用限制 IL/ILC 指令共通 区域 使用 块程序区 域 不可 工程步进 程序区域 不可 子程序区域 可 中断任务 程序区域 可 功能说明 当 IL 指令的输入条件为 OFF 时,对从 IL 指令到 ILC 指 状态标志的动作 令为止的各指令的输出进行互锁。IL 指令的输入条件为 IL/ILC 指令共通 ON 时,照常执行从 IL 指令到 ILC 指令为止的各指令。 名称 标记符 内容 互锁(IL)状态下的各指令的输出如下所示。 出错标志 ER OFF 各指令的输出 OUT、OUTB、OUT NOT 指令所指定 的继电器 计时系列指令(计时器 当前值 TIM/TIMX、高速计时器 向上标志 TIMH/TIMHX、超高速计 时器 TMHH/TMHHX、长 状态 全部 OFF 定时器设定値(复位) OFF(复位) =标志 = OFF N 标志 N OFF 时 序 控 注: 制 指 ・即使已通过 IL 指令进行互锁,IL~ILC 间的程序在内部 令 仍执行,所以周期时间不会缩短。 时间计时器 TIML/TIMLX 指令) 用其他指令(注)指定的继电器、通 保持之前的状态(不执行指 道 令本身) ・IL 指令和 ILC 指令请 1 对 1 使用。不是 1 对 1 时(IL 指 令和 ILC 指令之间有 IL 指令时),程序检测时会出现 IL-ILC 错误。但是,动作如下所示按照程序动作。 注 : 指 TTIM/TTIMX 、 MTIM/MTIMX 、 SET 、 RSET 、 CNT/CNTX、CNTR/CNTRX、SFT、KEEP 等其他所有 指令。 输入条件 a b OFF ON OFF OFF ON OFF ON ON 程序 A B 互锁 互锁 非互锁 互锁 非互锁 非互锁 ・IL 指令和 ILC 指令不能嵌套(例:IL-IL-ILC-ILC)。 3-49 时序控制指令 互锁 IL(002)/互锁清除 ILC(003) 注:嵌套时,请使用 MLH-MILC 指令或者 MILR-MILC 指令。 3 各 指 令 说 明 参考:IL 指令对于微分指令的动作,与 MILH 指令动作 一致。 时序图 时 序 控 对于微分指令的动作 制 指 令 IL-ILC 指令间存在微分指令(带有 DIFU/DIFD/@/%指 令)时,输入条件由于在互锁开始时和互锁解除时之间 发生变化,使微分条件成立情况下,互锁解除时将执行 参考 ·使用 IL-ILC 指令,可以进行程序内的高效率电路切换。 微分指令。 ·即使在 IL 指令执行中,对于需要保持 ON 的区域,在 例: 在上升沿微分(DIFU)指令的情况下,互锁开始时 的输入条件为 OFF、互锁解除时的输入条件为 ON 时,在互锁解除时执行上升沿微分(DIFU)指令。 执行 IL 指令之前,请使用 SET 指令预先进行将其置 于 ON。 在同一输入条件下进行多个处理时,在多个处理之前 和之后,如果分别设置 IL 指令和 ILC 指令,可以节省 步数。 1. 0.00 为 OFF(互锁开始时),DIFU 的输入条件 0.01 为 OFF。 2. 0.00 在 OFF 中(互锁中)时,DIFU 的输入条件 0.01 为 OFF→ON。 3. 0.00 由 OFF→ON 时(互锁解除时)DIFU 的输入条件 0.01 为 ON 时执行 DIFU 指令。 3-50 动作说明 时序控制指令 互锁 IL(002)/互锁清除 ILC(003) 3 各 指 令 说 明 时 序 控 制 指 令 3-51 时序控制指令 3-25 多重互锁(微分标志保持型)MILH(517)/ 多重互锁(微分标志非保持型)MILR(518)/ 多重互锁解除 MILC(519) 概要 功能说明 3-25 多重互锁(微分标志保持型)MILH(517)/多重互锁(微分标志不保持型)MILR(518)/多重互锁清除 MILC(519) 当 MILH(或者 MILR)指令的输入条件为 OFF 时,对 当互锁编号 N 的 MILH(或者 MILR)指令的输入条件 3 从 MILH(或者 MILR)指令到 MILC 指令为止的输出 为 OFF 时,对从该 MILH(或者 MILR)指令到同一互 各 指 令 说 明 进行互锁。MILH(或者 MILR)指令和 MILC 指令请配 套使用。 MILH(或者 MILR)/MILC 指令与 IL/ILC 指令不同, 可以嵌套(例:MILH-MILH-MILC-MILC)。 锁编号 N 的 MILC 指令为止的各指令的输出进行互锁。 互锁编号 N 的 MILH(或者 MILR)指令的输入条件为 ON 时,从该 MILH(或者 MILR)指令到同一互锁编号 N 的 MILC 指令为止的各指令照常执行。 MILH 指令和 MILR 指令中,互锁解除后的微分指令动 互锁(IL)状态 作不同。 互锁(IL)状态下的各指令的输出如下所示。 符号 MILH 指令 各指令的输出 OUT、OUTB、OUT NOT 指令所指定 的继电器 状态 全部 OFF 计时系列指令(计时器 当前值 定时器设定値(复位) MILR 指令 TIM/TIMX、高速计时器 向上标志 TIMH/TIMHX、超高速计 OFF(复位) 时器 TMHH/TMHHX、长 时间计时器 TIML/TIMLX 指令) 用其他指令(注)指定的继电器、通 保持之前的状态(不执行指 道 令本身) 时 序 控 制 指 令 MILC 指令 操作数说明 注 : 指 TTIM/TTIMX 、 MTIM/MTIMX 、 SET 、 RSET 、 CNT/CNTX、CNTR/CNTRX、SFT、KEEP 等其他所有 的指令。 此外,MILH 指令(或者 MILR 指令)的第 2 操作数 D (互锁状态输出位)中,互锁中时输出为 OFF、非互锁 中时输出为 ON。因此,通过对该位进行监视,可以监 视各互锁编号各自的互锁(IL)状态。 N:0~15 成对的 MILH(或者 MILR)指令和 MILC 指令的 N (互锁编号)必须一致。 注:N(互锁编号)在使用顺序上不受大小关系的限制。 D:互锁状态输出位 ・非互锁中时 ON。 ・互锁中时 OFF。 通过 MILH(或者 MILR)指令进行的互锁中,通过 对该位进行强制置位,可以进入非互锁(IL)状态。 相反,在非互锁中对该位进行强制复位,可以进入互 锁(IL)状态。 嵌套 嵌套是指在 MILH(或者 MILR)指令和 MILC 指令之 间,进一步存在 MILH(或者 MILR)指令和 MILC 指 令的嵌入结构。 MILH(或者 MILR)-MILC 指令的嵌套(例:MILH n -MILH m-MILC m-MILC n)最多不能超过 16 个。 3-52 时序控制指令 多重互锁(微分标志保持型)MILH(517)/ 多重互锁(微分标志不保持型)MILR(518)/多重互锁解除 MILC(519) 嵌套用于以下用途。 例 1)具有对全体进行互锁的条件和对部分进行互锁的 条件时(嵌套数为 1) A1 3 紧急停止为 ON(输入条件为 各 OFF)时,A1、 A2 以及 A3 全 指 部进入互锁状态。 令 紧急停止为 OFF(输入条件为 说 明 ON)时,A1 照常执行, A2 以 及 A3 依据以下各条件动作。 传送带为 RUN OFF(输入条件 为 OFF)时,A2 及 A3 进入互 锁状态。 ・紧急停止按钮为 ON 时,对 A1、A2 进行互锁 ・传送带为 RUN OFF 时,对 A2 进行互锁 传送带为 RUN ON(输入条件为 ON)时,A2 照常执行,A3 依 据以下各条件动作。 紧急停止为 ON(输入条件为 OFF)时, A1 以及 A2 全部进入互锁状态。 臂 RUN OFF(输入条件为 OFF) 时, A3 进入互锁状态。 紧急停止为 OFF(输入条件为 ON)时, A1 照常执行, A2 由下一个传送带的动 作条件决定。 传送带 RUN OFF(输入条件 OFF)时, A2 进入互锁状态。 臂 RUN ON(输入条件为 ON) 时,A3 照常执行。 时 序 控 制 指 令 传送带 RUN ON(输入条件 ON)时, A2 照常执行。 MILH 指令和 MILR 指令的区别 当到 MILC 指令为止的各指令中存在微分指令(带有 DIFU/DIFD/@/%的指令)时,MILH 指令和 MILR 指令 的动作不同。 执行 MILR 指令的情况下,即使在互锁中(由于输入条 件在互锁开始时和互锁解除时之间发生变化)微分条件 成立,该条件成立也将被取消,互锁解除后不执行微分 例 2)具有对全体进行互锁的条件和对部分进行互锁的 双重条件时(嵌套数为 2) 指令。 对此,执行 MILH 指令时,由于互锁开始时和解使除时 的值微分条件成立时,微分条件成立生效,互锁解除后, 执行微分指令(带有 DIFU/DIFD/@/%的指令)。 各指令 输入条件在互锁开始时和互锁解除时之 间发生变化,微分指令(带有 DIFU/DIFD/@/%的指令)的微分条件成 立时 MILH(多重互锁(微分 互锁解除后,执行微分指令。 标志保持型))指令 MILR(多重互锁(微分 互锁解除后,不执行微分指令。 标志不保持型))指令 ・紧急停止按钮为 ON 时,对 A1、A2、A3 进行互锁 ・传送带为 RUN OFF 时,对 A2、A3 进行互锁 ・臂为 RUN OFF 时,对 A3 进行互锁 3-53 时序控制指令 多重互锁(微分标志保持型)MILH(517)/ 多重互锁(微分标志不保持型)MILR(518)/多重互锁清除 MILC(519) ・针对 MILH 指令下微分指令的动作 MILH-MILC 指 令 间 存 在 微 分 指 令 ( 带 有 3 各 指 令 说 DIFU/DIFD/@/%的指令)时,输入条件在互锁开始时的 值和互锁解除时的值之间,微分条件成立的情况下,互 锁解除时执行微分指令。同样,在与互锁开始时或者互 锁解除时相同的时刻,微分条件成立时,执行微分指令。 但是,在互锁状态下即使微分条件成立,根据程序的各 明 项条件微分条件也不成立,互锁解除时微分条件不成立 的情况下,不执行微分指令。 例:上升沿微分(DIFU)指令的情况下,互锁开始时的 输入条件为 OFF、互锁解除时的输入条件为 ON 时, 互锁解除时执行上升沿微分(DIFU)指令。 (此外,IL 指令关于微分指令的动作,与 MILH 指 令相同)。 定时图 时 序 控 制 定时图 指 令 外围工具发出的强制置位/复位指令引起的互锁(IL)状 态的操作 外围工具对于 MILH 指令(或者 MILR 指令)的第 2 操 作数 D(互锁状态输出位),发出强制置位/复位操作 指令,与此时的指令执行所引起的互锁状态无关,可以 通过手动操作进入非互锁状态/互锁状态。 强制置位:进入非互锁(IL)状态。 ・针对 MILR 指令下微分指令的动作 MILR - MILC 的 指 令 间 存 在 微 分 指 令 ( 带 有 DIFU/DIFD/@/%的指令)时,输入条件在互锁开始时的 值和互锁解除时的值之间,即使微分条件成立,互锁解 除时也不执行微分指令。同样,在与互锁开始时或者互 锁解除时相同的时刻,即使微分条件成立时也不执行微 分指令。 例:在上升沿微分(DIFU)指令的情况下,互锁开始时 的输入条件为 OFF、互锁解除时的输入条件为 ON 时, 互锁解除时不执行上升沿微分(DIFU)指令。 强制复位:进入互锁(IL)状态。 3-54 时序控制指令 多重互锁(微分标志保持型)MILH(517) /多重互锁(微分标志不保持型)MILR(518)/多重互锁清除 MILC(519) 执行条件/每次刷新指定 MILH/MILR 指令共通 执行条件 OFF 时互锁/ON 时非互锁 MILC 指令 执行条件 每次刷新指定 ON 时每周期执行 每次刷新指定 MILH/ MILR 无 MILC 无 使用限制 MILH/MILR/MILC 指令共通 区域 块程序区 工程步进 子程序区域 域 程序区域 使用 不可 不可 可 中断任务 程序区域 可 数据内容 MILH 指令/MILR 指令共通 区域 N CIO(输入输出继电器 ― 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) ― ― ― ― ― ― ― ― 0~15 ― 变址寄存器(间接) ― 状态标志的动作 D 0000.00~6143.15 W000.00~511.15 H000.00~511.15 A448.00~959.15 ― ― ― ― ― ― ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 MILH/MILR/MILC 指令共通 名称 出错标志 标记符 ER 内容 OFF 注: ・即使通过 MILH(或者 MILR)指令进入互锁状态(IL 中), 3 MILH(或者 MILR)~MILC 间的程序在内部也会执行, 所以周期时间不会缩短。 各 ・记述 MILC 指令的互锁编号使内侧 MILH(或者 MILR) 指 -MILC 指令的区域不超过外侧 MILH(或者 MILR)- 令 MILC 指令的区域。 说 明 时 序 控 制 内侧区域超过了外 指 侧区域 令 ・MILC 指令和 MILC 指令之间即使有处理也无妨。 3-55 时序控制指令 多重互锁(微分标志保持型)MILH(517)/ 多重互锁(微分标志不保持型)MILR(518)/多重互锁清除 MILC(519) ·MILH 指令-MILC 指令之间存在 ILC 指令时,MILH 指 注:MILR 指令-MILC 指令之间存在 MILH(或者 MILR) 令-ILC 指令间将成为互锁对象。 指令时也相同。 3 ·MILH(或者 MILR)指令-MILC 指令之间存在互锁编 各 号不同的 MILC 指令时,互锁编号不同的 MILC 指令将 指 被忽略。 令 说 明 ·MILR 指令-MILC 指令之间存在 ILC 指令时,ILC 指令 被忽略,MILR 指令-MILC 指令间成为互锁対象。 ·IL 指令-ILC 指令之间存在 MILH 指令时,MILH 指令 自身判断是否通过 IL 指令而处于互锁状态,处于互锁状 时 态时不动作。此时,IL-ILC 指令间成为互锁対象。 序 控 制 此外,通过 IL 指令进入非互锁状态,b 为 OFF 时执行 MILH 指令,MILH-ILC 间进入互锁状态。 指 令 ·MILH 指令-MILC 指令之间存在相同互锁编号的 MILH (或者 MILR)指令时 ·通过外侧的 MILH 指令进入互锁状态时,通过内侧 的 MILH(或者 MILR)指令将不会进入互锁状态。 ·通过外侧的 MILH 指令进入非互锁状态时,通过内 侧的 MILH(或者 MILR)指令会进入互锁状态。 ·IL 指令-ILC 指令之间存在 MILC 指令时,MILC 指令被 忽略,IL-ILC 指令间成为互锁対象。 3-56 时序控制指令 多重互锁(微分标志保持型)MILH(517) /多重互锁(微分标志不保持型)MILR(518)/多重互锁清除 MILC(519) 参考 ·IL-ILC 指令 a ·使用 MILH(或者 MILR)-MILC 指令,可以切换为程 IL 序内进行高效的电路切换。 3 根据复合条件,要对处理进行切换时,在各处理之前放 A1 置 MILH(或者 MILR)指令,在最后放置 MILC 指令。 各 指 令 b 说 IL 明 A2 ILC A3 此区域不是互锁对象 此 ILC 指令 ILC 被忽略 输入条件 程序 ab A1 A2 A3 OFF ON 互锁 互锁 非互锁对象,所以 OFF 非互锁 ·MILH(或者 MILR)-MILC 指令与 IL-ILC 指令不同, 可以进行嵌套,所以即使记述相同的梯形图程序,动作 ON OFF 非互锁 ON ON 非互锁 互锁 非互锁 时 序 也不同,如下所示。 控 ·MILH-MILC 指令 ・即使在 MILH(或者 MILR)指令执行中,对于需要保持 制 ON 的区域,可在执行 MILH(或者 MILR)指令之前, 指 使用 SET 指令预先将其置于 ON。 令 输入条件 ab A1 OFF ON 互锁 OFF ON OFF 非互锁 ON ON 非互锁 程序 A2 互锁 互锁 非互锁 A3 互锁 非互锁 非互锁 3-57 时序控制指令 多重互锁(微分标志保持型)MILH(517)/ 多重互锁(微分标志不保持型)MILR(518)/多重互锁清除 MILC(519) 动作说明 3 各 W0.00、W0.01 均为 ON 时,MILH(互锁编号 0)~MILC(互锁编号 0)间的指令照常执行。 W0.00 为 OFF 时,MILH(互锁编号 0)~MILC(互锁编号 0)间的指令互锁。 指 W0.00 为 ON、W0.01 为 OFF 时,MILH(互锁编号 1)~MILC(互锁编号 1)间的指令互锁。除此之外,照常执行。 令 说 明 时 序 控 制 指 令 3-58 时序控制指令 3-26 转移 JMP(004)/转移结束 JME(005) 概要 执行条件/每次刷新指定 JMP 指令 3-26 转移 JMP(004)/转移结束 JME(005) JMP 指令的输入条件为 OFF 时,直接转移至 JME 指令。 执行条件 OFF 时转移/ON 时非转移 JMP JMP 指令与 JME 指令配套使用。 每次刷新指定 无 3 各 符号 JME 指令 指 JMP 执行条件 ON 时每周期执行 JME 令 每次刷新指定 无 说 明 使用限制 JMP/JME 指令共通 区域 使用 块程序区 域 可 工程步进 程序区域 不可 子程序区域 可 中断任务 程序区域 可 符号 数据内容 JMP 指令 JME 区域 CIO(输入输出继电器等) N 0000~6143 内部辅助继电器 W000~511 保持继电器 H000~511 特殊辅助继电器 A000~959 时间 T0000~4095 计数器 C0000~4095 操作数说明 N:0000~00FF Hex 或者 10 进制&0~255 功能说明 JMP 指令的输入条件如果为 OFF,则转移至具有 N 所指 定的转移编号的 JME 指令,输入条件为 ON 时,则执行 下一条指令以后的内容。 输入条件为 OFF 时,不执行 JMP-JME 间的指令。但输 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) D00000~32767 @D00000~32767 时 *D00000~32767 序 控 #0000~00FF(BIN 数据) 制 或者&0~255 指 DR0~15 令 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 出将保持状态。但是,在块程序区域内将不受输入条件 限制而直接转移。 JME 指令 区域 N 常数 #0000~00FF(BIN 数据) 输入条件 或者&0~255 JMP OFF 注:JME 指令仅可以在 N 中指定常数。 N 执行 转移 转移时不执行在此之 间的指令,将保持输 出。(不需要指令执行 时间) JME N 3-59 时序控制指令 转移 JMP(004)/转移结束 JME(005) 状态标志的动作 3 JMP 指令 各 名称 标记符 内容 指 出错标志 ER • N 的数据不在 0~255(0000~00FF Hex)范围内 令 时为 ON 说 • 不存在对应转移编号的 JME 指令时为 ON 明 • 对应转移编号的 JME 指令不存在于同一任务内 时为 ON • 除此之外为 OFF ·在块程序区域内,与 JMP 指令之前的输入条件无关,通 常为转移。 块程序区域 JME 指令 无 请注意 注: ·作为转移目的地的 JME 指令请编写在有 JMP 指令的 ·转移时,所有指令的输出(继电器、通道)保持在此以 前的状态。但是,TIM/TIMX 指令/TIMH/TIMHX 指令 /TMHH/TMHHX 指令所起动的定时器在不执行指令时 也能进行当前值的更新处理,所以计时继续。 ·具有相同编号的 JME 指令有 2 个以上时,程序地址较小 的 JME 指令有效。此时,地址较大的 JME 指令将被忽略。 同一任务内。任务间的转移不能执行 JMP 指令和 JME 指令记述在不同任务内时,会发生错误,ER 标 志变为 ON。 · 在 JMP/JME 指令间使用微分指令(带 DIFU/DIFD/@/%的指令)时,根据输入条件的不同, 动作将出现变化,请注意。 时 序 ·向程序地址较小的一方转移时,JMP 的输入条件为 OFF 参考 控 期间,在 JMP-JME 间重复执行。JMP 的输入条件为 ON JMP 指令的情况下,JMP 条件 OFF 时,由于直接转移至 制 指 令 时,重复结束。此外,在这种情况下,只要 JMP 的输入 条件不为 ON,就不执行 END 指令,有可能出现周期超 JME 指令,而不执行 JMP-JME 间的指令,因而不存其 间的指令执行时间。因此,可以使周期时间的缩短。 时现象,请注意。 与此相反,在 JMP0 指令的情况下,JMP0 条件为 OFF 时,由于在 JMP0-JME0 间执行 NOP 处理,所以将花费 NOP 处理的指令执行时间,不会实现周期时间的缩短。 转移指令的功能比较 转移指令 转移的输入条件 使用个数 转移时指令处理 转移时执行时间 JMP-JME CJP-JME OFF ON 合计 256 个 不执行 无 CJPNJME OFF 转移时指令输出 转移时、起动中的定 时器当前值更新 块程序区域内处理 无条件转 移 保持之前的状态 继续更新 ON 时转移 OFF 时转 移 JMP0JME0 OFF 无限制 NOP 处理 NOP 指令的 合计时间 不可使用 3-60 动作说明 (例) 时序控制指令 转移 JMP(004)/转移结束 JME(005) 3 各 指 令 说 明 时 序 控 制 指 令 3-61 时序控制指令 3-27 条件转移 CJP(510)条件非转移 CJPN (511)/转移结束 JME(005) 条件转移 CJP/转移结束 JME 条件非转移 CJPN/转移结束 JME 3-27 条件转移 CJP(510)条件否定转移 CJPN (511)/转移结束 JME(005) 3 概要 概要 各 指 令 CJP 指令的输入条件为 ON 时,直接转移到 JME 指令。 CJP 指令与 JME 指令配套使用。 CJPN 指令的输入条件为 OFF 时,直接转移至 JME 指令。 CJPN 指令与 JME 指令配套使用。 说 符号 明 符号 符号 JME 符号 操作数说明 时 操作数说明 序 N:0000~00FF Hex 或者 10 进制&0~255 控 制 指 功能说明 N:0000~00FF Hex 或者 10 进制&0~255 功能说明 输入条件如果为 OFF,则转移至具有 N 的转移编号的 JME 指令。输入条件为 ON 时,执行下一条指令后面的 令 输入条件如果为 ON,则转移至具有 N 的转移编号的 JME 内容。 指令。输入条件如果为 OFF,则执行下一条指令以后的 内容。 输入条件 输入条件 CJPN ON OFF OFF ON CJP N 执行 转移 转移时不执行在此 之间的指令,输出 保持。(不需要指 令执行的时间) JME N 执行 转移 转移时不执行在此 之间的指令,输出保 持。(不需要指令执 行的时间) JME N N 3-62 时序控制指令 条件转移 CJP(510)条件否定转移 CJPN (511)/转移结束 JME(005) 执行条件/每次刷新指定 CJP 指令 执行条件 ON 时转移/OFF 时非转移 CJP 每次刷新指定 无 CJPN 指令 执行条件 每次刷新指定 OFF 时转移/ON 时非转移 CJPN 无 JME 指令 执行条件 ON 时每周期执行 JME 每次刷新指定 无 使用限制 CJP/CJPN/JME 指令共通 区域 使用 块程序区 域 可 工程步进 程序区域 不可 子程序区域 可 中断任务 程序区域 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) N 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~00FF(BIN 数据) 或者&0~255 DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 JME 指令 区域 N 常数 #0000~00FF(BIN 数据) 或者&0~255 3 注:JME 指令仅可以在 N 中指定常数。 各 指 状态标志的动作 令 说 CJP/CJPN 指令共通 明 名称 出错标志 标记符 ER 内容 • 不存在对应的转移编号的 JME 指令时为 ON • N 的数据不在 0~255(0000~00FF Hex)的 范围内时为 ON • 与 N 的转移编号所对应的 JME 指令不在同一 任务内时为 ON • 除此之外为 OFF JME 指令 无 时 序 控 制 指 令 3-63 时序控制指令 条件转移 CJP(510)条件否定转移 CJPN (511)/转移结束 JME(005) 注: 请注意 ·CJP 指令在输入条件为 ON 时转移,与 JMP 指令的动作 ·请在与 CJP(CJPN)指令共同存在的任务内编写作 3 各 指 令 说 明 相反。 ·转移时,所有指令的输出(继电器、通道)保持在此以 前的状态。但是,TIM/TIMX 指令/TIMH/TIMHX 指令 /TMHH/TMHHX 指令所起动的定时器在不执行指令时 也能进行当前值的更新处理,所以计时继续。 · 具有相同编号的 JME 指令有 2 个以上时,地址较小的 为转移目的地的 JME 指令。任务间的转移不能执行 如果将 CJP(CJPN)指令和 JME 指令记述在不同的 任务内,将出现错误,ER 标志变为 ON。 ·在 CJP(CJPN)-JME 指令间使用微分指令(带 DIFU/DIFD/@/%的指令)时,根据输入条件的不同, 动作会出现差异,请注意。 JME 指令有效。此时,地址较大的 JME 指令将被忽略。 ·转移至程序地 址较小的一方时,CJP(CJPN)的输入条 动作说明 件的 ON(OFF)期间,在 CJP(CJPN)-JME 间重复执 (例) 行。 CJP(CJPN)的输入条件 OFF(ON)后,重复结 束。此外,在这种情况下,只要 CJP(CJPN)的输入条 件不为 OFF(ON),就不会执行 END 指令,可能会出 现周期超时,请注意。 ·在执行 CJP(CJPN)指令的情况下,CJP(CJPN)条件 ON(OFF)时,由于直接转移至 JME 指令,而不执行 CJP(CJPN)-JME 间的指令,所以在此之间没有指令执 行时间。因此,可以使周期时间的缩短。 时 序 ·在块程序区域内,CJP(CJPN)指令之前的输入条件在 ON(OFF)时转移。 控 制 参考 指 令 在 CJP(CJPN)指令的情况下,CJP(CJPN)条件为 ON(OFF)时,由于直接转移至 JME 指令,而不执行 CJP(CJPN)-JME 间的指令,所以在此之间没有指令执 行时间。因此,可以使周期时间的缩短。 与此相反,在 JMP0 指令的情况下,JMP0 条件为 OFF 时,由于在 JMP0-JME0 间执行 NOP 处理,所以将花费 NOP 处理的指令执行时间,不会实现周期时间的缩短。 3-64 时序控制指令 3-28 多重转移 JMP0(515)/多重转移结束 JME0(516) 概要 状态标志的动作 3-28 多重转移 JMP0(515)/多重转移结束 JME0(516) JMP0 指令的输入条件为 OFF 时,对从 JMP0 之后的指 令到 JME0 指令之间的指令进行 NOP 处理。 JMP0 指令 无 3 JMP0 指令与 JME0 指令配套使用。程序上可以配置多个 配套。 JME0 指令 无 注: 各 指 令 符号 ·与直接转移至 JME 指令进行执行的 JMP/CJP/CJPN 指 说 令不同,由于需要对 JMP0~JME0 指令间的指令进行 明 JMP0 指令 JME0 指令 NOP 处理,所以需要执行时间。因此,不会使周期时间 缩短。此外,由于不执行指令,输出将会保持。 JMP0 JME0 ·JMP0 指令可以在同一程序上多次使用。但是,多次使用 功能说明 如果 JMP0 指令的输入条件为 OFF,对从 JMP0 指令到 JME0 指令之间的指令进行 NOP 处理。输入条件为 ON 时,JMP0~JME0 间请不要重叠。 ·不可进行嵌套(例:JMP0~JMP0~JME0~JME0)。 ·JMP0/JME0 指令在块程序区域内不能使用。 时,执行下一条指令后面的内容。 请注意 与 JMP/CJP/CJPN 指令不同,由于不使用转移编号, 可以在程序中的任何地点使用。 ·作为转移目的地的 JME0 指令请在有 JMP0 指令共的 同一任务内编写。任务间的转移不能执行 · 在 JMP0/JME0 指 令 间 使 用 微 分 指 令 ( 带 DIFU/DIFD/@/%的指令)时,根据输入条件的不同, 动作可能出现差异,请注意。 时 序 动作说明 控 (例) 制 指 0.00 为 OFF 时,JMP0~JME0 间的指令不执行, 令 输出保持。 0.00 为 ON 时,JMP0~JME0 间的指令照常执行。 执行条件/每次刷新指定 JMP0 指令 执行条件 每次刷新指定 OFF 时转移/ON 时非转移 JME0 指令 执行条件 每次刷新指定 ON 时每周期执行 JMP0 无 JME0 无 使用限制 JMP0/JME0 指令共通 区域 使用 块程序区 域 不可 工程步进 程序区域 不可 子程序区域 可 中断任务 程序区域 可 3-65 时序控制指令 3-29 循环开始 FOR(512)/循环结束 NEXT(513) 概要 执行条件/每次刷新指定 3-29 繰り返し開始 FOR(512)/繰り返し終了 NEXT(513) 对 FOR 指令~NEXT 指令间的程序无条件地进行指定次 3 数的循环。 执行条件 执行条件 ON 时每周期执行 ON 时每周期执行 各 FOR 指令和 NEXT 指令配套使用。 每次刷新指定 FOR NEXT 无 指 令 符号 使用限制 (FOR/NEXT 指令共通) 说 明 FOR 指令 区域 块程序区 域 步进程序 区域 子程序区域 中断任务 程序区域 使用 不可 可 可 可 数据内容 (仅限 FOR 指令) NEXT 指令 NEXT 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 N 0000~6143 W000~511 H000~511 A000~959 T0000~4095 计数器 操作数说明 数据内存(DM) DM 间接(BIN) N:0000~FFFF Hex 或 10 进制&0~65535 DM 间接(BCD) 常数 时 功能说明 序 控 无条件的重复执行 FOR~NEXT 间的程序 N 次后,执行 数据寄存器 变址寄存器(直接) 制 NEXT 指令以后的指令。 指 令 中断重复时,使用 BREAK 指令。 变址寄存器(间接) 在 N 中指定 0 后,对 FOR~NEXT 间的指令进行 NOP 处理。 在较小的程序容量下,可以处理表格数据等。 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~FFFF(BIN 数据) 或者 10 进制&0~65535 DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 条件标志的动作 (FOR/NEXT 指令共通) 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 ·超过最大的嵌套层数(15)执行时为 ON ·除此之外为 OFF OFF OFF 注:在 1 周期内重复循环,FOR-NEXT 指令间的微分接点 在该循环中变为常 ON 或者常 OFF 状态。 3-66 时序控制指令 循环开始 FOR(512)/循环结束 NEXT(513) 注: ·请将 FOR 指令和 NEXT 指令记述在同一任务内。记述在 不同的任务中时,不执行循环。 ·FOR~NEXT 的嵌套(例:FOR n~FOR m~NEXT~ NEXT)层数最大为 15 个。 例: ·在 FOR~NEXT 之间执行转移指令(JMP 等),请不要 向 FOR~NEXT 之外转移。 ·在 FOR~NEXT 间,不能使用以下指令。 ·块程序 3 ·多重转移(JMP0)/多重转移结束(JME0) 各 ·步进开始(SXNT)/步进定义(STEP) 指 参考 令 说 不是无条件,而是在某种输入条件成立之前, 使程序重 明 复时,有以下两种方法。 1)使用此 FOR/NEXT 指令,在 N 中指定最大重复次 数,执行重复循环。执行 N 次重复之前如果输入条 件成立,则执行 BREAK 指令,强制结束重复循环。 2)使用转移指令(JME-JMP 指令等),在 JME 指令 之后,配置 JMP 指令。在某种输入条件成立前,从 JMP 指令(程序地址较小)到 JME 指令重复转移。 然而,在这种条件下,由于到输入条件成立之前,将 无限地执行重复,所以有可能出现周期超时,请注意。 动作说明 时 序 控 制 指 令 执行顺序:A→B→B→C→A→B→B→C→A→B→B→C ·在重复中需要结束时,必须使用 BREAK 指令。正在嵌套 时,请执行与嵌套层数相同数量的 BREAK 指令。 3-67 时序控制指令 3-30 循环中断 BREAK(514) 概要 执行条件/每次刷新指定 3-30 循环中断 BREAK(514) 在 FOR~NEXT 指令间配置,当输入条件成立时,强制 3 结束正在运行中的重复处理,对本指令以后的指令进行 执行条件 ON 时每周期执行 上升沿时 1 周期执行 BREAK 无 各 指 NOP 处理。 令 组合使用指令 下降沿时 1 周期执行 无 每次刷新指定 无 说 明 FOR 指令以及 NEXT 指令 使用限制 区域 块程序区 工程步进 子程序区域 中断任务 符号 域 程序区域 程序区域 BREAK 使用 不可 可 可 可 状态标志的动作 功能说明 名称 标记符 内容 配置在 FOR~NEXT 指令间的程序内。 出错标志 ER =标志 = 输入条件为 ON 时,强制结束 FOR-NEXT 循环(重复处 N 标志 N OFF OFF OFF 理),并对从其后到 NEXT 为止的指令进行 NOP 处理。 时 序 控 制 指 令 注: ·BREAK 指令只能用于 1 个嵌套。若要使多重嵌套结束, 请执行与嵌套层数相同数量的 BREAK 指令。 ·BREAK 指令只能在 FOR~NEXT 指令间使用。 3-68 定时器/ 计数器指令 项目号 3-31 定时器 指令语句 3-32 高速定时器 3-33 超高速定时器 3-34 累计定时器 3-35 长时间定时器 3-36 多输出定时器 3-37 计数器 3-38 可逆计数器 3-39 定时器/计数器复位 BCD BIN BCD BIN BCD BIN BCD BIN BCD BIN BCD BIN BCD BIN BCD BIN BCD BIN 助记符 TIM TIMX TIMH TIMHX TMHH TMHHX TTIM TTIMX TIML TIMLX MTIM MTIMX CNT CNTX CNTR CNTRX CNR CNRX FUN 编号 550 015 551 540 552 087 555 542 553 543 554 546 012 548 545 547 页码 3-70 3-70 3-83 3-85 3-88 3-91 3-94 3-96 3-99 3-69 定时器/ 计数器指令 定时器/计数器的当前值更新方式 3 ■概要 各 在 CP 系列中,可以选择「BCD 方式(模式)」或「BIN 方式(模式)」作为定时器/计数器相关指令的当前 指 值更新方式。 令 通过设定「BIN 方式(模式)」,可以将定时器/计数器的的设定时间从之前的 0~9999 扩展到 0~65535。同 说 明 时,也可以将通过其他指令计算出的 BIN 数据作为定时器/计数器的设定值使用。此外,即使对定时器/计数 器的设定值进行通道(间接)指定时,该定时器/计数器的当前值更新方式也有效(无论被间接指定的值视为 BCD 还是 BIN,「BCD 方式(模式)」/「BIN 方式(模式)」均有效)。 具体内容请参见「CP 系列 CP1H 用户手册」 「4-13 定时器/计数器」。 ■ 作为对象的指令语言 指令分类 指令名 助记符 BCD 方式 BIN 方式 定时器/ 计数器指令 定时器(100ms) TIM TIMX(550) 高速定时器(10ms) TIMH(015) TIMHX(551) 超高速定时器(1ms) TMHH(540) TMHHX(552) 累计定时器(100ms) TTIM(087) TTIMX(555) 长时间定时器(100ms) TIML(542) TIMLX(553) 多输出定时器(100ms) MTIM(543) MTIMX(554) 计数器 CNT CNTX(546) 可逆计数器 CNTR(012) CNTRX(548) 定 定时器/计数器复位 CNR(545) CNRX(547) 时 器 块程序指令 定时器等待(100ms) TIMW(813) TIMWX(816) 计 / 数 高速定时器等待(10ms) TMHW(815) TMHWX(817) 器 指 计数等待 CNTW(814) CNTWX(818) 令 基本功能一览 指令名称 指令语句 更新 单位 定时器 TIM 减法 0.1 秒 TIMX 最大设定值 999.9 秒 6553.5 秒 定时器点 定时器 数/指令 编号 1 点 使用 时间到时标志更新 定时 定时器当前值 更新时序 执行指令时 执行指令时 每 100ms 更新一次(仅限 T0000~T0015) 复位时 向上标志 当前值 OFF 设定值 高速 定时器 超高速 定时器 累计 定时器 长时间 定时器 多输出 定时器 TIMH 减法 TIMHX TMHH TMHHX TTIM TTIMX TIML TIMLX MTIM MTIMX 减法 累计 减法 累计 0.01 秒 0.001 秒 0.1 秒 0.1 秒 1秒 0.1 秒 99.99 秒 655.35 秒 9.999 秒 65.535 秒 999.9 秒 6553.5 秒 115 天 49710 天 999.9 秒 6553.5 秒 1 点 使用 1 点 使用 1 点 使用 1 点 不使用 8 点 不使用 执行指令时 每 1ms 中断一次 执行指令时 每 10ms 更新一次(仅限 T0000~T0015) ·每 1ms 更新一次 执行指令时 ·仅在执行指令时 ·仅在执行指令时 ·仅在执行指令时 OFF 设定值 OFF 设定值 OFF 0 OFF 设定值 OFF 0 3-70 定时器/ 计数器指令 各条件下的动作一览 指令名称 指令语句 各条件 强制置位时 强制复位时 动作模式变更 电源切断复位 执行 CNR/CNRX 通过 JMP-JME 通过 IL-ILC 指令进 到时 当前值 到时 当前值 3 定时器 TIM TIMX 时 当前值=0 到时标志 =OFF 时 当前值=0 到时标志 =OFF 指令时 当前值 9999 到时标志=OFF 当前值 FFFF 到时标志=OFF 指令进行跳跃时 启动中更新 行互锁时 标志 复位(当前值=设定 ON 值、 到时标志=OFF) 标志 0 OFF 设定值 各 指 令 说 高速定时器 TIMH 当前值=0 当前值=0 当前值 9999 启动中更新 复位(当前值=设定 ON 0 OFF 设定值 明 到时标志 到时标志 到时标志=OFF 值、 TIMHX =OFF =OFF 当前值 FFFF 到时标志=OFF) 到时标志=OFF 超高速定时器 TMHH 当前值=0 当前值=0 当前值 9999 启动中更新 复位(当前值=设定 ON 0 OFF 设定值 到时标志 到时标志 到时标志=OFF 值、 TMHHX =OFF =OFF 当前值 FFFF 到时标志=OFF) 到时标志=OFF 累计定时器 TTIM 当前值=0 当前值=0 当前值 9999 保持 保持 ON 0 OFF 0 到时标志 到时标志 到时标志=OFF TTIMX =OFF =OFF 当前值 FFFF 到时标志=OFF 长时间定时器 TIML - - 无关 保持 复位(当前值=设定 - - - - 值、 TIMLX 到时标志=OFF) 多输出 MTIM - - 定时器 MTIMX 无关 保持 保持 - - - - 定 时 使用定时器/计数器指令的程序示例 器 计 (1)长时间定时器 数 器 ①TIM+TIM(例 30 分) 指 令 0.00 程序地址 指令 数据 (900 秒) 000000 LD 0.00 000001 TIM 0001 #9000 T1 000002 LD T0001 (900 秒) 000003 TIM 0002 #9000 000004 LD T0002 000005 OUT 200.00 T2 200.00 / 3-71 定时器/ 计数器指令 ②TIM+CNT(例 500 秒) 100.00 3 各 指 0.01 令 说 明 0.00 100.00 C2 启动 计数完成 T1 C2 (100 次) 程序地址 000000 000001 000002 指令 LD LD CNT (5 秒) 000003 000004 000005 000006 LD AND NOT ANT NOT TIM 100.00 200.01 000007 000008 000009 000010 LD OUT LD OUT 数据 100.00 0.01 0002 #100 0.00 100.00 C0002 0001 #50 T0001 100.00 C0002 200.01 ・通过 TIM0001 每 5 秒产 生一次脉冲,通过 CNT0002 对每隔 5 秒发 生的脉冲进行计数。 ・定时器时间为(定时器 +周期时间)×计数。示 例中为 500 秒的定时 器。 ・此时计数器的当前值, 即使电源为 OFF,也保 存数据。 ③时钟脉冲+计数器(例 700 秒) 0.00 P_1s 1 秒时钟 0.01 定 A200.11 时 器 计 / C1 200.02 数 器 指 令 (2)多位计数器(例 20,000 次) 程序地址 000000 000001 000002 000003 000004 指令 LD AND LD OR CNT 000005 000006 LD OUT 数据 0.00 1s 0.01 A200.11 0001 #700 C0001 200.02 ・ 可以通过组合内部时钟 脉冲和计数器构成长时 间定时器。 ・如果在 CNT0001 的复位 输入中对特殊辅助继电 器 A200。 11 第 1 个循 环(周期为 ON)执行 OR,则在程序执行开始 时,重新从设定值 (0700)开始计数。 0.00 0.01 0.02 C1 C2 C1 0.02 C2 (100 次) 程序地址 000000 000001 000002 000003 000004 000005 指令 LD AND LD NOT OR OR CNT (200 次) 200.03 000006 000007 000008 LD LD NOT CNT 000009 000010 LD OUT 数据 0.00 0.01 0.02 C0001 C0002 0001 #100 C0001 0.02 0002 #200 C0002 200.03 ・如果需要进行 9999 次以上的计数,可 通过对计数器进 行多级编程来实 现。 3-72 定时器/ 计数器指令 (3)ON/OFF 延迟电路 0.00 1.00 0.00 T1 T2 程序地址 指令 数据 3 000000 LD 0.00 各 000001 TIM 0001 指 #50 令 000002 LD 100.00 说 000003 AND NOT 0.00 明 000004 TIM 0002 #30 000005 LD T0001 000006 000007 LD T0002 KEEP(011) 100.00 0.00 100.00 t1 5.0s (4)单稳态电路 0.00 W0.00 W0.01 W0.00 T1 W0.00 W0.01 0.00 100.00 t 1.5s t2 3.0s 定 时 W0.00 程序地址 指令 数据 器 000000 LD 0.00 ・单稳态在输入为 计 000001 LD W0.00 ON 后,仅输出 数 器 000002 AND NOT W0.01 TIM1 的设定时间。 指 000003 OR LD - 令 (1.5 秒) 000004 000005 OUT LD W0.00 W0.00 000006 TIM 0001 W0.01 000007 LD #15 T0001 000008 OUT W0.01 100.00 000009 000010 LD AND NOT W0.00 W0.01 000011 OUT 100.00 t 1.5s / 3-73 定时器/ 计数器指令 (5)闪烁电路 ①使用 2 个 TIM 示例 3 各 指 令 说 明 ②时钟脉冲的使用示例 定 时 1 秒时钟 器 / 计 数 器 指 令 程序地址 000000 000001 000002 指令 LD AND NOT TIM 000003 LD 000004 TIM 000005 000006 LD OUT 数据 0.00 T0002 0001 #10 200.00 0002 #15 T0001 200.00 程序地址 000000 000001 000002 指令 LD AND OUT 数据 0.00 1s 100.00 ·如果使用内部时钟脉冲(0.1 秒、0.2 秒、1 秒),可 便于对闪烁电路进行编程。 P_0_1s 0.1 秒 P_0_2s 0.2 秒 P_1s 1 秒 3-74 关于定时器/计数器编号的间接指定 ·定时器/计数器编号可以通过变址寄存器,间接地使 用。 使用变址寄存器进行间接指定时,使用 MOVRW(定 时器/计数器当前值用的变址寄存器设定)指令,在 变址寄存器中设置指定编号的定时器/计数器当前值 区域内的 I/O 存储器有效地址。 通过变址寄存器进行的定时器/计数器编号的间接指 定可以在具有定时器/计数器编号的 TIM/TIMX、 TIMH/TIMHX、TTIM/TTIMX、TMHH/TMHHX、 CNT/CNTX、CNTR/CNTRX、TIMW/TIMWX、 CNTW/CNTWX、TMHW/TMHWX 指令中使用。 ·通过变址寄存器指定的 I/O 存储器有效地址为错误地 址时,不执行该定时器/计数器指令。 ·如果使用通过变址寄存器进行的定时器/计数器编号 的间接指定,如下例所示,可以削减程序容量,或编 制通用子程序。 使用例:通过间接指定启动多个 TIM 指令时 ·在下述示例中通过使用变址寄存器间接指定与间接 DM 指定启动 T0000~T0099 的 TIM 指令。各个 TIM 指令的设定值作为表格数据保存在 D100~D199 内。 …TIM0 的设定值 …TIM1 的设定值 …TIM2 的设定值 …TIM99 的设定值 定时器/ 计数器指令 3 各 指 令 说 明 定 时 器 计 数 器 指 令 / 3-75 定时器/ 计数器指令 3 各 指 令 说 明 ①在 IR0 中设置 T0000 的当前值区域存储器地址,通过 间接指定作为 TIM 编号使用。设置使用 MOVRW 指 令的当前值区域地址。 ②在 IR1 中设置 T0000 的标志地址。 如果使用 MOVR 指令,标志地址将被设置。 ③在 IR2 中设置内部辅助继电器 2000.00 的标志地址。 ④在 D0 中设置 D100 的间接指定所需的&100。 ⑤对 IR0、IR1、IR2、D0 的值逐一进行增量的同时,重 复执行 TIM 指令 100 次,启动 T0~T99。 此外,上述电路与下述电路等效。 / 定 时 器 计 数 器 指 令 如果只读取上述程序中的⑤这一部分, IR0............. 被启动的 TIM 的当前值存储器地址 IR1............. 被启动的 TIM 的标志地址 IR2............. 为设置 TIM 指令而使用的内部辅助继电器 的存储器地址 D0.............. 被启动的 TIM 设定保存区域的 DM 编号可以 当作共通子程序使用,该共通子程序可启动 作为输入参数用的 100 个 TIM。 3-76 定时器/ 计数器指令 3-31 定时器 TIM/TIMX(550) 概要 执行条件/每次刷新指定 3-31 概要 进行减法式接通延迟 0.1 秒单位的定时器动作。 设定时间如下。 ·BCD 方式时 0~999.9 秒 ·BIN 方式时 0~6553.5 秒 时间精度为-0.01~0 秒。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 TIM/TIMX 无 3 下降沿时 1 周期执行 每次刷新指定 无 各 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 符号和操作数说明 使用 不可 可 可 不可 当前值更 符号 操作数说明 数据内容 新方式 区域 N S BCD N:0~4095(10 进制) CIO(输入输出继电器等) ― S:#0000~9999(BCD) 内部辅助继电器 ― 0000~6143 W000~511 保持继电器 ― H000~511 特殊辅助继电器 ― A000~959 BIN N:0~4095(10 进制) 时间 0~4095 T0000~4095 S:&0~65535(10 进制) (10 进制) 或 计数器 ― C0000~4095 #0000~FFFF(16 进制) 数据内存(DM) ― D00000~32767 DM 间接(BIN) ― @D00000~32767 功能说明 ·定时器输入为 OFF 时,对 N 所指定的编号的定时器进 行复位(在定时器当前值中代入设定值 S,将时间到 时标志设置为 OFF)。 ·定时器输入由 OFF 变为 ON 时,启动定时器,开始定 时器当前值的减法运算。定时器输入 ON 的过程中, 进行定时器当前值的更新,定时器当前值变为 0 时, 时间到时标志置为 ON(时间已到)。 ·定时结束后,保持定时器当前值及时间到时标志的状 态。如果要重启,需要将定时器输入从 OFF 变为 ON, 或者(通过 MOV 指令等)将定时器当前值变更为 0 以外的值。 DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 状态标志的动作 ― *D00000~32767 ― BCD 方式时: #0000~9999(BCD) &不能使用 定 时 器 BIN 方式时: &0~65535(10 进制) 或 #0000~FFFF (16 进制) 计 数 器 指 ― DR0~15 令 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 定时器输入 设定值 定时器当前值 (时间到时之前,定时器输入为 OFF 时) 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 ·N 的定时器编号为间接 IR 指定时,地址如 果不是定时器的当前值地址则为 ON ·采用 BCD 方式,且 S 的数据不为 BCD 时 为 ON ·除此之外为 OFF OFF OFF 定时器输入 定时器当前值 设定值 时间到时标志 / 3-77 定时器/ 计数器指令 概要 注: 请注意 ·时间编号在时间指令、高速时间指令、超高速时间指令、 ·由于时间到时标志的更新定时仅在执行指令时使用, 3 累计时间指令、块程序的定时等待指令、高速定时等待 所以在用户程序上使用时间到时标志时,根据定时的 各 指 令 说 明 指令中为共用。在这些指令中如果同时操作相同时间编 号,则会产生误动作,请务必注意。如果同时使用,则 在检查程序时会显示「线圈重使用」。如果在不进行同 时动作的条件下,则可以使用相同编号。 ·如果周期时间超过 100ms,定时器编号为 16~4095 的定 不同,有时会产生长达 1 周期时间的延迟,请注意。 ·通过联机编辑,进行了使用定时器编号的定时器指令 间的覆盖(TIM 指令←→TIMH 指令←→TMHH 指令 等)时,请务必对时间到时标志进行复位。如果不复 位时间到时标志,覆盖后的定时器将不能正确动作。 时器将不能正确动作。周期时间超过 100ms 时,请使用 定时器编号为 0~15 的定时器。 参考 ·定时器指令在定时器编号为 0~15 时,即使任务处于待 机状态,定时器指令也将更新当前值。定时器编号为 16~ 在 TIM/TIMX 指令下使用的定时器当前值以及时间到时 标志在以下时间进行更新。 4095 时,任务处于待机状态时将保持当前值。 ·定时器在以下情况下被复位或保持。(复位时,定时器 当前值=设定值、时间到时标志=OFF)。 TIM/TIMX 指令的定时器当前值以及时间到时标志 的更新 动作模式变更 电源切断 执行 通过 通过 时(程序←→ 复位时 CNR/CNRX IL-ILC 指 JMP-JME 运转或监视) (注 2) (定时器/ 令进行互 指令进行 T0000~T0015 时 更新时序 内容 (注 1) 当前值 0 0 计数器复位 锁时 指令)(注 3) BCD 方式时: 设定值 9999 BIN 方式时: 跳跃时 当前值继 续更新 1)执行各指令时 ·每次执行指令时更新当前值 ·当前值=0,时间到时标志为 ON, 如果不是 0,则时间到时标志为 OFF 定 时 器 时间到 OFF 时标志 FFFF OFF OFF OFF 保持之前 的状态 2)每 100ms 进行更新 T0016~T4095 时 每 100ms 更新一次当前值 计 数 / 注 1:将 I/O 存储器保持标志(A500.12)设定为 1(ON) 时,即使动作模式变更也将保持。 更新时序 执行各指令时 内容 ·每次执行指令时更新当前值 器 指 注 2:将 I/O 存储器保持标志(A500.12)设定为 1(ON), 令 且通过 PLC 系统设定保持「电源为 ON 时 I/O 存储器 ·当前值=0,时间到时标志为 ON, 如果不是 0,则时间到时标志为 OFF 保持标志保持/非保持设定」的情况下,即使在电源 切断复位时也将保持。 ·电源切断时定时器被复位(定时器当前值=设定值、时 注 3:执行 TIM/TIMX 指令时,设定值被设置。 间到时标志为 OFF)。当电源切断,需要保持定时器 当前值时,不使用定时器指令,而是如下所示,组合 ·通过 IL-ILC 指令进行互锁时被复位,当前值=设定值、 内部时钟和计数器。 时间到时标志=OFF。 计数输入 ·即使通过 JMP/CJMP/CJPN-JME 指令进行转移时,启动 中的定时器编号为 0~15 的定时器当前值被更新(不执 行指令,所有任务执行结束后当前值被更新)。 输入条件 (例)时钟 1S 复位输入 ·强制置位时,到时标志=ON、当前值=0,强制复位时, 到时标志=OFF、当前值=设定值。 ·执行指令时的=标志以及 N 标志的操作因机种而异。具 体情况请参见「状态标志的动作」。 ·定时器设定值为#0000 时,则一旦执行指令时间即到。 3-78 动作说明 (例) 定时器/ 计数器指令 概要 3 定时器输入 0.00 由 OFF→ON 时,定时器当前值开始从设定值中减去。 定时器当前值=0 后,时间到时标志 T0 转为 ON。 定时器输入 0.00 转为 OFF 后,定时器当前值中再次设置设定值,时间到时标志 T0 转为 各 指 令 OFF。 说 明 定时器输入 0.00 定时器当前值 T0 时间到时标志 T0 定 时 器 计 数 器 指 令 / 3-79 定时器/ 计数器指令 3-32 高速定时器 TIMH(015)/TIMHX(551) 概要 执行条件/每次刷新指定 3-32 高速タイマ TIMH(015)/TIMHX(551) 进行减法式接通延迟 10m(s 0.01 秒)单位的定时器动作。 ON 时每周期执行 3 设定时间如下。 执行条件 上升沿时 1 周期执行 各 指 令 ·BCD 方式时 0~99.99 秒 下降沿时 1 周期执行 每次刷新指定 TIMH/TIMHX 无 无 无 说 ·BIN 方式时 使用限制 明 0~655.35 秒 区域 块程序区 工程步进 子程序区域 中断任务 时间精度为-0.01~0 秒。 域 程序区域 程序区域 符号和操作数说明 使用 不可 可 可 不可 当前值更 符号 操作数说明 数据内容 新方式 BCD 区域 N N:0~4095(10 进制) CIO(输入输出继电器等) ― S:#0000~9999(BCD) 内部辅助继电器 ― S 0000~6143 W000~511 保持继电器 ― H000~511 特殊辅助继电器 ― A000~959 BIN N:0~4095(10 进制) 时间 0~4095 T0000~4095 S:&0~65535(10 进制) (10 进制) 或 计数器 ― C0000~4095 #0000~FFFF(16 进制) 数据内存(DM) ― D00000~32767 DM 间接(BIN) ― @D00000~32767 DM 间接(BCD) 功能说明 常数 定 时 ·定时器输入为 OFF 时,对 N 所指定的编号的定时器进 器 行复位(在定时器当前值中代入设定值 S,将时间到 计 / 时标志设置为 OFF)。 数 器 指 令 ·定时器输入由 OFF 变为 ON 时,启动定时器,开始定 时器当前值的减法运算。定时器输入 ON 的过程中, 进行定时器当前值的更新,定时器当前值变为 0 时, 时间到时标志置为 ON(时间已到)。 数据寄存器 变址寄存器(直接) 变址寄存器(间接) ·定时结束后,保持定时器当前值及时间到时标志的状 态。如果要重启,需要将定时器输入从 OFF 变为 ON, ― *D00000~32767 ― BCD 方式时: #0000~9999(BCD) &不能使用 BIN 方式时: &0~65535(10 进制) 或 #0000~FFFF (16 进制) ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 或者(通过 MOV 指令等)将定时器当前值变更为 0 以外的值。 状态标志的动作 名称 标记符 内容 出错标志 ER ・N 的定时器编号为间接 IR 指定时, 地址如果不是定时器的当前值地址 =标志 N 标志 则为 ON ・采用 BCD 方式,且 S 的数据不为 BCD 时为 ON ・除此之外为 OFF = OFF N OFF 3-80 定时器/ 计数器指令 高速定时器 TIMH(015)/TIMHX(551) 注: ・通过 IL-ILC 指令进行互锁时被复位,当前值=设定 ・时间编号在时间指令、高速时间指令、超高速时间指 值、时间到时标志=OFF。 令、累计时间指令、块程序的定时等待指令、高速定 时等待指令中为共用。在这些指令中如果同时操作相 同时间编号,则会产生误动作,请务必注意。如果同 时使用,则在检查程序时会显示「线圈重使用」。如 ・强制置位时,到时标志=ON、当前值=0,强制复位时, 到时标志=OFF、当前值=设定值。 ・执行指令时的=标志以及 N 标志的操作因机种而异。 具体情况请参见「状态标志的动作」。 3 各 指 令 果在不进行同时动作的条件下,则可以使用相同编号。 ・如果周期时间超过 100ms,定时器编号为 16~4095 的 请注意 说 明 定时器将不能正确动作。周期时间超过 100ms 时,请 ·由于时间到时标志的更新定时仅在执行指令时使用, 使用定时器编号为 0~15 的定时器。 所以在用户程序上使用时间到时标志时,根据定时的 ・TIMH/TIMHX 指令仅在定时器编号为 0~15 时每 不同,有时会产生长达 1 周期时间的延迟,请注意。 10ms 更新一次当前值。在用户程序中如果需要参照定 ·通过联机编辑,进行了使用定时器编号的定时器指令 时器当前值时,请使用定时器编号 0~15。 间的覆盖(TIM 指令←→TIMH 指令←→TMHH 指令 ・定时器编号为 0~15 时,即使任务处于待机状态,高 速定时器指令也将更新当前值。定时器编号为 16~ 等)时,请务必对时间到时标志进行复位。如果不复 位时间到时标志,覆盖后的定时器将不能正确动作。 4095 时,任务处于待机状态时将保持当前值。 ・定时器在以下情况下被复位或保持。(复位时,定时 器当前值=设定值、时间到时标志=OFF)。 动作模式变更 电源切 执行 通过 IL-ILC 通过 参考 在 TIMH/TIMHX 指令下使用的定时器当前值以及时间 到时标志在以下的定时中进行更新。 时(程序← → 断复位 CNR/CNRX 指令进行 JMP-JME 运转或监视) 时 (定时器/ 互锁时 指令进行 TIMH/TIMHX 指令的定时器当前值以及时间到时 (注1) (注 2) 计数器复位 跳跃时 标志的更新 指令)(注 3) 当前值 0 0 BCD 方式时: 设定值 当前值继 T0000~T0015 时 定 9999 BIN 方式时: 续更新 更新时序 内容 时 器 时间到 OFF 时标志 FFFF OFF OFF OFF 保持之前 的状态 注 1:将 I/O 存储器保持标志(A500.12)设定为 1(ON) 时,即使动作模式变更也将保持。 1)执行各指令时 2)每 10ms 进行更新 T0016~T4095 时 当前值=0,时间到时标志为 ON, 如果不是 0,则时间到时标志为 OFF 每 10ms 更新一次当前值 计 数 器 指 令 注 2:将 I/O 存储器保持标志(A500.12)设定为 1(ON), 且通过 PLC 系统设定保持「电源为 ON 时 I/O 存储器 保持标志保持/非保持设定」的情况下,即使在电源 切断复位时也将保持。 更新时序 执行各指令时 内容 ·每次执行指令时更新当前值 ·当前值=0,时间到时标志为 ON, 如果不是 0,则时间到时标志为 注 3:执行 TIMH/TIMHX 指令时,设定值被设置。 OFF ·即使通过 JMP/CJMP/CJPN-JME 指令进行转移时,启 动过程中的定时器编号为 0~15 的定时器的当前值也 会被更新(不执行指令,每 10ms 或者所有任务执行 结束后当前值被更新)。 / 3-81 定时器/ 计数器指令 高速定时器 TIMH(015)/TIMHX(551) 动作说明 (例) 3 各 指 令 说 明 定时器输入 0.00 定时器当前值 T0 100 (1.00 秒) 时间到时标志 T0 / 定 时 器 计 数 器 指 令 3-82 定时器/ 计数器指令 3-33 超高速定时器 TMHH(540)/TMHHX(552) 概要 执行条件/每次刷新指定 3-33 超高速定时器 TMHH(540)/TMHHX(552) 表示 1ms 单位的高速接通延迟(减法式)定时器的动作。 设定时间如下。 ·BCD 方式时 0~9.999 秒 ·BIN 方式时 ON 时每周期执行 执行条件 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 TMHH/TMHHX 无 3 无 各 无 指 令 说 0~65.535 秒 区域 块程序区 工程步进 子程序区域 中断任务 明 定时器精度为-0.001~0 秒。 域 程序区域 程序区域 符号和操作数说明 使用 不可 可 可 不可 当前值更 符号 操作数说明 数据内容 新方式 区域 N S BCD N:0~15(10 进制) CIO(输入输出继电器等) ― S:#0000~9999(BCD) 内部辅助继电器 ― 0000~6143 W000~511 保持继电器 ― H000~511 特殊辅助继电器 ― A000~959 BIN N:0~15(10 进制) 时间 0~15(10 进制) T0000~4095 S:&0~65535(10 进制) 计数器 ― C0000~4095 或 数据内存(DM) ― D00000~32767 #0000~FFFF(16 进制) DM 间接(BIN) ― @D00000~32767 DM 间接(BCD) ― *D00000~32767 功能说明 ·定时器输入为 OFF 时,对 N 所指定的编号的定时器 进行复位(在定时器当前值中代入设定值 S,将时间 到时标志设置为 OFF)。 ·定时器输入由 OFF 变为 ON 时,启动定时器,开始定 时器当前值的减法运算。定时器输入 ON 的过程中, 进行定时器当前值的更新,定时器当前值变为 0 时, 时间到时标志置为 ON(时间已到)。 ·定时结束后,保持定时器当前值及时间到时标志的状 态。如果要重启,需要将定时器输入从 OFF 变为 ON, 或者(通过 MOV 指令等)将定时器当前值变更为 0 以外的值。 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 状态标志的动作 ― BCD 方式时: #0000~9999(BCD) &不能使用 BIN 方式时: 定 时 器 &0~65535(10 进制) 或 计 #0000~FFFF (16 进 制) 数 器 指 ― DR0~15 令 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 • N 的定时器编号为间接 IR 指定时, 地址如果不是定时器的当前值地址 则为 ON • 采用 BCD 方式,且 S 的数据不为 BCD 时为 ON • 除此之外为 OFF OFF OFF / 3-83 定时器/ 计数器指令 超高速定时器 TMHH(540)/TMHHX(552) 注: 请注意 ·时间编号在时间指令、高速时间指令、超高速时间指令、 通过联机编辑,进行了使用定时器编号的定时器指令间 3 各 累计时间指令、块程序的定时等待指令、高速定时等待 指令中为共用。在这些指令中如果同时操作相同时间编 的覆盖(TIM 指令←→TIMH 指令←→TMHH 指令等) 时,请务必对时间到时标志进行复位。如果不复位时间 指 号,则会产生误动作,请务必注意。如果同时使用,则 到时标志,覆盖后的定时器将不能正确动作。 令 在检查程序时会显示「线圈重使用」。如果在不进行同 说 时动作的条件下,则可以使用相同编号。 参考 明 ·由于时间到时标志的更新定时仅在执行指令时,所以在 在 TMHH/TMHHX 指令下使用的定时器当前值以及时 用户程序上使用时间到时标志时,根据定时的不同,有 间到时标志在以下定时中进行更新。 时会产生长达 1 个周期时间的延迟。请注意。 ·超高速定时器指令即使在任务待机过程中也对当前值进 行更新。 TMHH/TMHHX 指令的定时器当前值以及时间到 时标志的更新 ·定时器在以下情况下被复位或保持。(复位时,定时器 当前值=设定值、时间到时标志=OFF)。 当前值 动作模式变更 时(程序←→ 运转或监视) (注 1) 0 电源切断 复位时 (注 2) 0 执行 通过 CNR/CNRX IL-ILC 指 (定时器/ 令进行互 计数器复位 锁时 指令)(注 3) BCD 方式时: 设定值 9999 BIN 方式时: 通过 JMP-JME 指令进行 跳跃时 当前值继 续更新 更新时序 1)执行各指令时 2)每 1ms 进行一次 更新 内容 当前值=0,时间到时标志为 ON,如果 不是 0,则时间到时标志为 OFF 每 1ms 更新一次当前值 FFFF 时间到 OFF OFF OFF OFF 保持之前 定 时标志 的状态 时 器 注 1:将 I/O 存储器保持标志(A500。 12)设定为 1(ON) 计 / 时,即使动作模式变更也将保持。 数 器 指 注 2:将 I/O 存储器保持标志(A500.12)设定为 1(ON), 且通过 PLC 系统设定保持「电源 ON 时 I/O 存储器保 令 持标志保持/非保持设定」的情况下,电源切断复位 时也将保持。 注 3:执行 TMHH/TMHHX 指令时,设定值被设置。 ·即使通过 JMP/CJMP/CJPN-JME 指令进行转移时,启动 过程中定时器当前值也会被更新(不执行指令,每 1ms 当前值被更新一次)。 ·通过 IL-ILC 指令进行互锁时被复位,当前值=设定值、 时间到时标志=OFF。 ·强制置位时,到时标志=ON、当前值=0,强制复位时, 到时标志=OFF、当前值=设定值。 ·执行指令时的=标志以及 N 标志的操作因机种而异。具 体情况请参见「状态标志的动作」。 3-84 定时器/ 计数器指令 3-34 累计定时器 TTIM(087)/TTIMX(555) 概要 执行条件/每次刷新指定 3-34 累计定时器 TTIM(087)/TTIMX(555) 进行累计式接通延迟,以 100ms(0.1)秒为单位的定时 器动作。设定时间如下。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 TTIM/TTIMX 无 3 ·BCD 方式时 0~999.9 秒 ·BIN 方式时 下降沿时 1 周期执行 每次刷新指定 使用限制 无 各 无 指 令 说 0~6553.5 秒 区域 块程序区 工程步进 子程序区域 中断任务 明 时间精度为-0.01~0 秒。 域 程序区域 程序区域 符号和操作数说明 使用 不可 可 可 不可 当前值更 符号 操作数说明 数据内容 新方式 BCD 区域 N N:0~4095(10 进制) S:#0000~9999(BCD) CIO(输入输出继电器等) 内部辅助继电器 ― ― S 0000~6143 W000~511 保持继电器 ― H000~511 BIN N:0~4095(10 进制) 特殊辅助继电器 ― A000~959 S:&0~65535(10 进制) 时间 0~4095 T0000~4095 或 (10 进制) #0000~FFFF(16 进制) 计数器 ― C0000~4095 功能说明 数据内存(DM) DM 间接(BIN) ― D00000~32767 ― @D00000~32767 定时器输入为 ON 的过程中,对当前值进行加法运算(累 计)。定时器输入为 OFF 时,停止累计,保持当前值。 如果定时器输入再次为 ON,开始累计。定时器当前值 到达设定值后,时间到时标志为 ON。 时间到时后,保持定时器当前值以及时间到时标志的状 态。如果要重启,需要通过(MOV 指令等)将定时器 当前值设置为设定值以下,或者使用复位输入 ON 或 CNR/CNRX 指令进行定时器复位。 定时器输入 DM 间接(BCD) 常数 数据寄存器 变址寄存器 (直接) ― *D00000~32767 ― BCD 方式时: #0000~9999(BCD) &不能使用 定 时 器 BIN 方式时: &0~65535(10 进制) 或 #0000~FFFF (16 进制) 计 数 器 指 ― DR0~15 令 ― ― 定时器当前值 设定值 变址寄存器 (间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 时间到时标志 复位输入 保开 持 始 累 计 状态标志的动作 名称 出错标志 标记符 ER 内容 • N 的定时器编号为间接 IR 指定时, 地址如果不是定时器的当前值地址 则为 ON • 采用 BCD 方式,且 S 的数据不为 BCD 时为 ON • 除此之外为 OFF / 3-85 定时器/ 计数器指令 累计定时器 TTIM(087)/TTIMX(555) 注: 请注意 ·时间编号在时间指令、高速时间指令、超高速时间指令、 ·由于当前值的累计仅在执行指令时进行,所以周期时 3 各 累计时间指令、块程序的定时等待指令、高速定时等待 指令中为共用。在这些指令中如果同时操作相同时间编 间在 100ms 以上时,(由于是以 100ms 为单位的累 计)可能不能正常动作,请注意。 指 令 说 明 号,则会产生误动作,请务必注意。如果同时使用,则 在检查程序时会显示「线圈重使用」。如果在不进行同 时动作的条件下,则可以使用相同编号。 ·由于时间到时标志的更新定时仅在执行指令时,所以 在用户程序上使用时间到时标志时,根据定时的不 同,有时会产生长达 1 周期时间的延迟,请注意。 ·定时器在以下情况下被复位或保持。(复位时,定时器 当前值=0、时间到时标志=OFF)。 当前值 动作模式变 更时(程序 ←→运转或 监视)(注 1) 0 电源切断 复位时 (注 2) 0 执行 通过 IL-ILC 通过 CNR/CNRX 指令进行互 JMP-JME (定时器/ 锁时 指令进行跳 计数器复位 跃时 指令) (注 3) BCD 方式时: 保持之前的 保持之前的 9999 状态 状态 BIN 方式时: 时间到 OFF 时标志 FFFF OFF OFF 保持之前的 保持之前的 状态 状态 参考 由于通常的 TIM/TIMX 指令在减法计数方式下动作,当 前值表示到计数结束为止的剩余时间。与此相反,由于 经过时间为当前值,该 TTIM/TTIMX(累计定时器)指 令可以直接将当前值用于运算,或进行显示输出。 注 1:将 I/O 存储器保持标志(A500.12)设定为 1(ON) 时,即使动作模式变更也将保持。 定 注 2:将 I/O 存储器保持标志(A500.12)设定为 1(ON), 时 器 且通过 PLC 系统设定保持「电源 ON 时 I/O 存储器 保持标志保持/非保持设定」的情况下,电源切断复 计 数 / 位时也将保持。 器 指 注 3:执行 TTIM/TTIMX 指令时,设定值被设置。 令 ·通过 IL-ILC 指令进行互锁时被复位,当前值=设定值、 时间到时标志=OFF。因此,有时会产生误差,请注意。 ·通过 JMP-JME 指令进行跳跃时,将保持当前值。因此, 有时会产生误差,请注意。 ·强制\置位时到时标志=ON、当前值=0,强制复位时到时 标志=OFF、当前值=0。此外,强制设置/复位比复位输入 /定时器输入优先。 3-86 定时器/ 计数器指令 累计定时器 TTIM(087)/TTIMX(555) 动作说明 (例) 3 定时器输入 0.00 为 ON 时,定时器当前值开始累计计数,定时器当前值=定时 各 器设定值后,时间到时标志 T1 转为 ON。 指 复位输入为 ON 后,定时器当前值转为 0,时间到时标志 T1 转为 OFF(通常复 令 位输入置于 ON 后,将定时器输入置于 ON 后使用)。 说 到达设定值前定时器输入转为 OFF 时,停止累计,保持定时器当前值。定时器 明 输入再次为 ON 后,开始累计。 通常的动作 定时器输入 0.00 定时器当前值 T1 时间到时标志 T1 定 时 器 复位输入 计 数 器 指 令 / 3-87 定时器/ 计数器指令 3-35 长时间定时器 TIML(542)/TIMLX(553) 概要 3-35 长时间定时器 TIML(542)/TIMLX(553) 表示长时间定时器的动作。 3 各 指 令 减法式接通延迟 100ms 定时器。时间精度为-0.01~0 秒。 最大时间设定(以秒为单位)如下所示。 说 ·BCD 方式时 明 115 日 ·BIN 方式时 49710 日 符号 ·BCD 方式时 ·BIN 方式时 D1:时间到时标志 CH 编号 D2:当前值输出低位 CH 编号 S:定时器设定值低位 CH 编号 / 定 时 器 计 数 器 操作数说明 指 令 D1:时间到时标志 CH 编号 D2:当前值输出低位 CH 编号 S:定时器设定值低位 CH 编号 不可使用 时间到时标志 D2+1 为高位 4 位 D2 为低位 4 位 功能说明 定时器输入为 OFF 时,对定时器进行复位(在定时器当 前值 D2+1、D2 中代入设定值 S+1、S,将时间到时标志 置为 OFF)。 ·定时器输入从 OFF 变为 ON 时,启动定时器,开始定 时器当前值 D2+1、D2 的减法运算。定时器输入 ON 的过程中,进行定时器当前值的更新,定时器当前值 变为 0 时,时间到时标志置为 ON(时间已到)。 ·定时结束后,保持定时器当前值及时间到时标志的状 态。如果要重启,必须将定时器输入由 OFF 变为 ON, 或者通过(MOV 指令等)将定时器当前值 D2+1、D2 变更为 0 以外的值。 定时器输入 定时器当前值 定时器设定值 D2+1、D2 S+1、S 时间到时标志 D1 的位 00 执行条件/每次刷新指定 执行条件 每次刷新指定 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 TIML/TIMLX 无 无 无 使用限制 区域 使用 块程序区 域 不可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 不可 S+1 为高位 4 位 S 为低位 4 位 D2、S 的范围 ·BCD 方式时: #00000000~99999999(BCD) ·BIN 方式时: &00000000~4294967295(10 进制) 或、#00000000~FFFFFFFF(16 进制) 注:D2+1、D2、以及 S+1、S 必须属于同一区域种类。 3-88 定时器/ 计数器指令 长时间定时器 TIML(542)/TIMLX(553) 数据内容 区域 CIO(输入输出继电器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) D1 0000~6143 D2 S 0000~6142 W000~511 H000~511 A448~959 ― ― D00000~ W000~510 H000~510 A448~958 A000~958 ― T0000~4094 ― C0000~4094 D00000~32766 32767 @D00000~32767 *D00000~32767 ― BCD 方式时: #00000000~ 99999999 (BCD) &不能使用 BIN 方式时: &0~ 4294967295 (10 进制) 或 #00000000~ FFFFFFFF (16 进制) ― ― 变址寄存器(间接) 状态标志的动作 名称 出错标志 标记符 ER ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 内容 ·采用 BCD 方式,且 D2 的数据不为 BCD 时为 ON ·采用 BCD 方式,且 S 的数据不为 BCD 时为 ON ·除此之外为 OFF 注: ·不使用定时器编号(不进行使用定时器当前值区域的定 时器当前值更新)。 3 ·可以将时间到时标志作为常规接点区域,进行强制设置 各 /复位,当前值不发生变化。 指 令 请注意 说 ・由于当前值的更新仅在执行指令时进行,所以周期时 明 间在 100ms 以上时,(由于是以 100ms 为单位的更 新)可能不能正常动作,请注意。 ・由于时间到时标志的更新定时仅在执行指令时,所以 在用户程序上使用时间到时标志时,根据定时的不同, 有时会产生长达 1 周期时间的延迟,请注意。 ・通过 IL-ILC 指令进行互锁时被复位,当前值=设定值、 时间到时标志=OFF。 ・通过 JMP-JME 指令进行转移时,当前值被保持。因 此,可能会产生误差,请注意。 ・请不要将长时间定时器指令中使用的 D1、D2、D2+1 用于其他指令,一旦使用,将不能保证正常的时间到 时动作,请注意。 定 时 器 计 数 器 指 令 / 3-89 定时器/ 计数器指令 长时间定时器 TIML(542)/TIMLX(553) / 动作说明 (例) 3 各 指 令 说 明 定 时 器 计 数 器 指 令 定时器输入 0.00 为 ON 时,定时器当前值(D101、D100)变为定时器设定值(D201、 D200),开始减法运算。定时器当前值变为=0 后,时间到时标志 200.00 变为 ON。定时器输入 0.00 变为 OFF 后,时间到时标志 200.00 变为 OFF。 定时器输入 定时器当前值 D2:D100~ D2+1:D101 的内容 定时器设定值 S:D200~S+1: D201 的内容 100000 时间到时标志 200.00 定时器当前值(低位) 定时器当前值(高位) 时间到时标志 200CH 的位 00 定时器设定值 #186A0 Hex 10 进制 100,000 10,000 秒 3-90 定时器/ 计数器指令 / 3-36 多输出定时器 MTIM(543)/MTIMX(554) 概要 功能说明 3-36 多输出定时器 MTIM(543)/MTIMX(554) 是一种可以得到 8 点任意的时间到时标志值的累计式定 输入条件为 ON 的状态下,累计停止输入以及复位输入 时器,可以精确到 0.1 秒。 为 OFF 时,对 D2 所指定的当前值进行累计。累计停止 3 设定时间如下。 输入为 ON 后,停止累计,保持当前值。累计停止输入 各 ·BCD 方式时 0~999.9 秒 ·BIN 方式时 再次为 OFF 后,开始累计。 对于 S~S+7 CH 的各设定值,如果当前值≧设定值,则 相应的 8 点时间到时标志为 ON。 指 令 说 明 0~6553.5 秒 当前值在到达 BCD 方式时:9999、BIN 方式时:FFFF 时间精度为-0.01~0 秒。 后,返回 0,所有时间到时标志转为 OFF。累计过程中 即使复位输入转为 ON,当前值也会返回 0,所有时间到 时标志转为 OFF。 符号 ·BCD 方式时 定时器当前值 D1:结果输出 CH 编号 D2:当前值输出 CH 编号 S: 设定值低位 CH 编号 定时器设定值 D1 位 ·BIN 方式时 D1:结果输出 CH 编号 定时器输入 定 时 D2:当前值输出 CH 编号 器 S: 设定值低位 CH 编号 定时器当前值 设定值 7 (D2) 设定值 2 计 数 器 操作数说明 设定值 1 指 设定值 0 令 不可使用 时间到时标志 BCD BIN 操作数 D2 S~S+7 D2 S~S+7 复位输入 累计停止输入 范围 #0000~9999(BCD) 8 点的定时器设定值 各 CH:#0000~9999(BCD) &0~65535(10 进制) 或 #0000~FFFF(16 进制) 8 点的定时器设定值 各 CH:&0~65535(10 进制) 或 #0000~FFFF(16 进制) 定时到时 位7 输出 (D1) 位2 位1 位0 ·根据累计停止输入和复位输入的关系,MTIM/MTIMX 指令的执行如下所示。 累计停止输入(09 位) 复位输入 (08 位) 0 1 0 更新当前值,当设 停止定时器当前 定值≦当前值时, 值更新(NOP 处 时间到时标志的 理) 相应位为 ON。 1 对当前值、时间到时标志进行复位, 停止当前值更新。 ·累计停止输入、复位输入仅在 MTIM/MTIMX 指令的 输入为 ON 时有效。 注:S~S+7 必须为同一区域种类。 3-91 定时器/ 计数器指令 多输出定时器 MTIM(543)/MTIMX(554) 执行条件/每次刷新指定 ON 时每周期执行 MTIM/MTIMX 3 执行条件 上升沿时 1 周期执行 无 各 下降沿时 1 周期执行 无 指 每次刷新指定 无 令 说 使用限制 明 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 使用 不可 可 可 不可 数据内容 区域 D1 D2 S CIO(输入输出继电器 等) 0000~6143 0000~6136 内部辅助继电器 W000~511 W000~504 保持继电器 H000~511 H000~504 特殊辅助继电器 A448~959 A000~952 时间 T0000~4095 T0000~4088 计数器 C0000~4095 C0000~4088 数据内存(DM) D00000~32767 D00000~32760 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 - 定 数据寄存器 - DR0~15 - 时 变址寄存器(直接) - 器 计 / 变址寄存器(间接) 数 器 指 令 ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(― ―)IR0~15 状态标志的动作 名称 出错标志 标记符 ER 内容 ·采用 BCD 方式,且 D2 的数据不为 BCD 时为 ON ·除此之外为 OFF 注: ·不使用定时器编号(不进行使用定时器当前值区域的定 时器当前值更新)。 ·当前值达到 BCD 方式时:9999,BIN 方式时:FFFF 的 标准后,返回 0000 Hex,时间到时标志全部转为 OFF。 ·BCD 方式时,S~S+7 的设定值数据如果不为 BCD 时, 该 CH 将被忽略。此时,ER 标志不会转为 ON。 ·可以将时间到时标志作为常规接点区域,进行强制设置 /复位,当前值不发生变化。 ·在 8 点以下使用设定值时 S~S+7CH 的设定值中如果有 0000,则该 CH 以后的数据将被忽略。 被忽略 请注意 ・由于当前值的累计仅在执行指令时进行,所以周期时 间在 100ms 以上时,(由于以 100ms 为单位进行累 计)将不能正常动作。因此,在要求高精度时,为了 不受周期时间的影响,请根据需要对同一 MTIM/MTIMX 指令编写多个程序。 ・由于时间到时标志的更新定时仅在执行指令时,所以 在用户程序上使用时间到时标志时,根据定时的不同, 有时会产生长达 1 周期时间的延迟,请注意。 ・通过 IL-ILC 指令进行互锁时被复位,当前值=设定值、 时间到时标志=OFF。因此,可能会产生误差,请注 意。 ・通过 JMP-JME 指令进行跳跃时,将保持当前值。因 此,可能会产生误差,请注意。 ・请勿将多输出定时器指令中使用的 D1、D2 用于其他 指令。一旦使用,将不能保证正常的时间到时动作, 请注意。 参考 在继电器区域指定了 D1(结果输出)CH 时,当前值更 新停止、当前值复位可以通过 SET/RSET 指令进行 ON /OFF。 3-92 动作说明 (例) 定时器/ 计数器指令 多输出定时器 MTIM(543)/MTIMX(554) 3 各 指 令 说 明 定 时 器 计 数 器 指 令 / 3-93 定时器/ 计数器指令 3-37 计数器 CNT/CNTX(546) 概要 3-37 计数器 CNT/CNTX(546) 进行减法计数的动作。 3 设定值如下所示。 各 指 令 ·BCD 方式时 0~9999 次 说 ·BIN 方式时 明 0~65535 次 符号 ·BCD 方式时 执行条件/每次刷新指定 执行条件 每次刷新指定 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 使用限制 区域 使用 块程序区 域 不可 工程步进 程序区域 可 子程序区域 可 数据内容 CNT/CNTX 无 无 无 中断任务 程序区域 可 区域 N S CIO(输入输出继电器等) ― 0000~6143 内部辅助继电器 ― W000~511 保持继电器 ― H000~511 ·BIN 方式时 特殊辅助继电器 时间 ― A000~959 ― T0000~4095 计数器 0~4095 C0000~4095 (10 进制) 数据内存(DM) ― D00000~32767 DM 间接(BIN) ― @D00000~32767 DM 间接(BCD) ― *D00000~32767 定 操作数说明 时 器 操作数 BCD N 范围 0~4095(10 进制) 计 / S #0000~9999(BCD) 数 BIN N 0~4095(10 进制) 器 S &0~65535(10 进制) 指 或 令 #0000~FFFF(16 进制) 常数 数据寄存器 变址寄存器(直接) ― BCD 方式时: #0000~9999(BCD) &不能使用 BIN 方式时: &0~65535(10 进制) 或 #0000~FFFF (16 进制) ― DR0~15 ― ― 功能说明 每次计数输入上升时,计数器当前值将进行减法计数。 计数器当前值=0 时,计数结束标志为 ON。 计数结束后,如果不使用复位输入 ON 或 CNR/CNRX 变址寄存器(间接) 状态标志的动作 ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 指令进行计数器复位,将不能进行重启。 名称 标记符 内容 复位输入为 ON 时被复位(当前值=设定值、计数结束标 志=OFF),计数输入无效。 出错标志 ER ·N 的计数器编号为间接 IR 指定时, 如果地址不是定时器的当前值地址 则为 ON 计数输入 ·采用 BCD 方式,且 S 的数据不为 BCD 时为 ON ·除此之外为 OFF 复位输入 =标志 = OFF N 标志 N OFF 计数器当前值 设定值 计数结束标志 3-94 定时器/ 计数器指令 计数器 CNT/CNTX(546) 注: ·计数器编号由计数器指令、可逆计数器指令、块程序的 ·复位输入和计数输入同时为 ON 时,复位输入优先,计 计数器等待指令共用。如果通过这些指令使相同计数器 编号同时动作,会产生误动作,请注意。如果同时使用, 在程序检测时将显示「线圈双重使用」。如果在不进行 同时动作的条件下,则可以使用相同编号。 计数器当前值、计数结束标志的更新时序 数器被复位(计数器当前值=设定值、计数结束标志= 3 OFF)。 各 指 复位输入 令 说 计数输入 明 计数器当前值 更新时序 计数输入上升时 计数器 设定值 计数结束标志 每次执行指令时(当前值如果为 0 当前值 则为 ON、不为 0 时为 OFF) 强制置位/复位时的计数器当前值、计数结束标志 计数结束标志 的状态 计数器当前值 强制置位时 0 强制复位时 设定值 接受计数输入 复位输入 接受计数输入 优先 计数结束标志 ON OFF ·执行指令时的=标志以及 N 标志的操作因机种而异。具 体情况请参见「状态标志的动作」。 ·如下所示,在开始将计数输入由 OFF 转为 ON 之前,必 须将复位输入从 OFF 转为→ON,进行复位。同时,计数 注: 输入从 OFF 转为 ON 之前,请将复位输入从 ON 转为 ·通过在线编辑添加计数器时,请对计数器进行复位后再 OFF。复位输入为 ON 的过程中不接受计数输入。 使用。如果计数器当前值保持之前的值,程序变更后计 定 数器可能不能做出正确的动作。 时 复位输入 器 参考 计 计数输入 计数器当前值即使在电源切断时也将保持。因此,在电 数 器 源接通时需要将当前值从设定值开始(不从电源切断之 指 计数器 设定值 前的计数器当前值开始)时,请在计数器复位输入中置 令 当前值 入第 1 周期 ON 标志 A200.11(特殊辅助继电器:仅在 运转开始时的 1 周期之内为 ON)。 计数结束 标志 可计数输入(接受) 可计数输入(接受) / 3-95 定时器/ 计数器指令 3-38 可逆计数器 CNTR(012)/CNTRX(548) 概要 3-38 可逆カウンタ CNTR(012)/CNTRX(548) 3 进行加减法计数的动作。 各 指 符号 令 ·BCD 方式时 说 明 执行条件/每次刷新指定 执行条件 每次刷新指定 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 CNTR/CNTRX 无 无 无 使用限制 区域 使用 块程序区 域 不可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 ·BIN 方式时 数据内容 区域 N S CIO(输入输出继电器等) ― 0000~6143 内部辅助继电器 ― W000~511 保持继电器 ― H000~511 特殊辅助继电器 ― A000~959 操作数说明 BCD BIN 操作数 N S N S 范围 0~4095(10 进制) #0000~9999(BCD) 0~4095(10 进制) &0~65535(10 进制) 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 ― T0000~4095 0~4095(10 进制) C0000~4095 ― D00000~32767 ― @D00000~32767 ― *D00000~32767 ― BCD 方式时: 定 时 器 功能说明 或 #0000~FFFF(16 进制) 计 数 器 指 令 / 在加法计数输入的上升沿进行加法运算、在减法计数输 入的上升沿进行减法运算。通过加法使当前值从设定值 升位至 0 时,计数结束标志为 ON,从 0 加至 1 时为 OFF。 同时通过减法使当前值从 0 降位至设定值时为 ON,从 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 设定值进行 1 次减法时为 OFF。 #0000~9999(BCD) &不能使用 BIN 方式时: &0~65535(10 进制) 或 #0000~FFFF (16 进制) ― DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 状态标志的动作 名称 出错标志 标记符 ER 内容 ·N 的计数器编号为间接 IR 指定时, 如果地址不是定时器的当前值地 址则为 ON ·采用 BCD 方式,且 S 的数据不为 BCD 时为 ON ·除此之外为 OFF 3-96 定时器/ 计数器指令 可逆计数器 CNTR(012)/CNTRX(548) 注: ·计数器编号由计数器指令、可逆计数器指令、块程序的 计数器等待指令共用。如果通过这些指令使同一计数器 3 编号同时动作,会产生误动作,请注意。如果同时使用, 各 在程序检测时将显示「线圈双重使用」。 指 如果在不进行同时动作的条件下,则可以使用相同编号。 令 ·加法、减法双方的输入在同时上升时不进行计数。复位 说 输入为 ON 时当前值=0,计数输入无效。计数结束标志 明 在升位(加法时)以及降位(减法时)为 ON,除此之外 为 OFF。 ·CNTR/CNTRX 指令根据梯形图和助记符,输入顺序有如 下的不同。 梯形图: 加法输入→CNTR/CNTRX 指令→减法输入→ 复位输 入 助记符: 加法输入→减法输入→复位输入→ CNTR/CNTRX 指 令 动作说明 (例) 加法计数 减法计数 复位输入 定 时 器 计 数 器 指 复位输入 0.02 为 ON 时,计数器当前值变为 0。 令 加法计数输入 0.00 每次 OFF→ON 后,计数器当前值都会+1。 计数器当前值由设定值 3 的状态开始,加法计数输入 0.00 由 OFF→ON 后, 计数器当前值变为 0,同时计数器标志转为 ON。 减法计数输入 0.01 每次 OFF→ON 后,计数器当前值都会-1。 计数器当前值由 0 状态开始,接着减法计数输入 0.01 由 OFF→ON 后,计 数器当前值变为设定值 3,同时计数器标志转为 ON。 加法计数 输入 0.00 减法计数 输入 0.01 复位输入 0.02 计数器当 前值 设定值 3 C1 计数器 标志 C1 / 3-97 定时器/ 计数器指令 可逆计数器 CNTR(012)/CNTRX(548) 动作说明 3 各 指 令 说 明 (设定次数 5000 次) 编码 程序地址 000000 000001 000002 000003 (外部设定 1CH) 000004 000005 000006 000007 000008 000009 000010 000011 指令 LD LD LD CNTR(012) LD OUT LD LD LD CNTR(012) LD NOT OUT 数据 0.00 0.01 0.02 0006 #5000 C0006 200.07 0.03 0.04 0.05 0007 1 C0007 200.08 注:CNTR/CNTRX 指令根据梯形图和助记符,输入顺序有 所不同。 梯形图: 定 时 器 加法输入 加法输入→CNTR/CNTRX 指令→减法输入→ 复位 输入 助记符: 计 / 数 器 减法输入 指 令 计数结束 输出 位上升时 位下降时 加法输入→减法输入→复位输入→ CNTR/CNTRX 指令 加法、减法计数输入在信号上升(OFF→ON)时进行 1 次计数。双方的输入同时为 ON 时,都不进行任何计数。 同时,复位输入为 ON 时当前值变为 0,不接受计数输 入。 CNTR 0007 的动作 输入继电器 0.03 为 ON 时,由 1 CH 的内容来决定设定 值。此时,可以在输入继电器 1 CH 上连接外部设定器, 并将其作为设定可变的可逆计数器。 3-98 定时器/ 计数器指令 3-39 定时器/计数器复位 CNR(545)/CNRX(547) 概要 3-39 定时器/计数器复位 CNR(545)/CNRX(547) 对指定范围的定时器/计数器的到时标志进行复位。 符号 ·BCD 方式 ·BIN 方式 D1:定时器/计数器编号 1 D2:定时器/计数器编号 2 ·本指令并不是对指令进行复位,而是将该指令所使用的 定时器/计数器的当前值设置为最大值,对到时标志进 行复位的指令。其动作与相对于指令的复位动作不同, 请注意。(例:对于 TIM/TIMX 指令的复位中当前值= 设定值、到时标志=OFF,而通过该 CNR/CNRX 指令进 行的复位中当前值=最大值、到时标志=OFF)。 3 各 指 令 ·指定了 D1>D2 的 D1、D2 时,则仅复位 D1 的定时器/ 说 计数器编号的到时标志。 明 执行条件/每次刷新指定 ON 时每周期执行 执行条件 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 CNR/CNRX @CNR/CNRX 无 无 使用限制 操作数说明 D1:T0000~T4095 或 C0000~C4095 D2:T0000~T4095 或 C0000~C4095 区域 使用 块程序区 域 可 数据内容 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 注:D1 和 D2 必须属于同一区域种类(定时器或计数器中 的某个)。 功能说明 对从编号 D1 的定时器/计数器到编号 D2 的定时器/计数 器为止的到时标志进行复位。同时将当前值设置为最大 值(BCD 方式时:9999,BIN 方式时:FFFF)。(D1~ D2 编号的定时器/计数器指令执行时,在当前值中设置 设定值)。 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) D1 D2 ― ― ― ― 定 ― ― 时 ― ― 器 C0000~4095 C0000~4095 计 T0000~4095 T0000~4095 数 ― ― 器 指 ― ― 令 ― ― 常数 ― ― 注: 数据寄存器 变址寄存器(直接) ― ― ― ― ·作为复位对象的定时器/计数器如下所示。 变址寄存器(间接) ,IR0~15 对象指令(注) CNR/CNRX 执行 指令时的动作 使用定时 TIM/TIMX(定时器)指令、 将当前值作为最大 器/计数 TIMH/TIMHX(高速定时器) 值(BCD 方式时: -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 器编号的 指令、TMHH/TMHHX(超高 9999,BIN 方式时: 状态标志的动作 指令 速定时器)指令、TTIM/TTIMX FFFF),并将到时 (累计定时器)、 标志置于 OFF。 TIMW/TIMWX(块程序的定 名称 出错标志 标记符 ER 内容 ·D1 的定时器编号/计数器编号为间接 IR 指定时,如果地址不为定时器区域/计数 时器等待)、TMHW/TMHWX 器编号则为 ON (块程序的高速定时器等 ·D2 的定时器编号/计数器编号为间接 IR 待)、CNT/CNTX(计数器)、 CNTR/CNTRX(可逆计数器)、 CNTW/CNTWX(计数器等待) 但 是 , TIML/TIMLX ( 长 时 间 定 时 器 ) 指 令 以 及 指定时,如果地址不为定时器区域/计数 器编号则为 ON ·D1 和 D2 不在同一区域时为 ON ·除此之外为 OFF MTIM/MTIMX(多输出定时器)指令不属于复位的对象。 / 3-99 定时器/ 计数器指令 定时器/计数器复位 CNR(545)/CNRX(547) 动作说明 3 各 指 令 说 明 定 时 器 计 数 器 指 令 3-100 / 数据比较指令 项目号 指令语句 3-40 符号比较 3-41 时刻比较 3-42 无符号比较 无符号倍长比较 3-43 带符号 BIN 比较 带符号 BIN 倍长比较 3-44 多通道比较 3-45 表格一致 3-46 无符号表格比较 3-47 扩展表格间比较 3-48 区域比较 倍长区域比较 助记符 FUN 编号 =、<>、<、<=、>、 300~328 >= (S、L) (LD/AND/OR 型) =DT、<>DT、<DT、< =DT、>DT、>=DT (LD/AND/OR 型) 341~346 CMP 020 CMPL 060 CPS 114 CPSL 115 MCMP 019 TCMP 085 BCMP 068 BCMP2 502 ZCP 088 ZCPL 116 页码 3-102 3-102 3-102 3-102 3-102 3-102 3-102 3-102 3-102 3-101 数据比较指令 3-40 符号比较 =,<>,<,<=,>,>= (S,L) (LD/AND/OR 型) (300~328) 概要 3-40 符号比较 =,<>,<,<=,>,>= (S,L) (LD/AND/OR 型) (300~328) 对 2 个 CH 数据或常数进行无符号或带符号的比较,比 3 较结果为真时,连接到下一段之后。 各 指 令 说 ·连接型中有 LD 连接、AND(串联)连接、OR(并联) 连接 3 种。 ·有无符号和带符号(S)2 种类型。 明 ·有 CH 数据比较和倍长 CH 数据比较 2 种类型。 符号 数 据 比较指令通过符号和选项的组合,表现为 72 种助记符。 比 较 符号·选项 指 令 符号 选项 选项 (梯形图中没有 LD、 (数据形式) (数据长) AND、OR) 功能说明 LD=、AND=、OR=、 + 无 (无符号) + 无 (字) 对 S1 和 S2 进行无符号或带符号的比较,比较结果为真 时,连接到下一段之后。 和 LD、AND、OR 指令具有相同操作,接在各指令后 面对其它指令进行编程。 LD 型时:能直接连接到母线。 AND 型时:不能直接连接到母线。 OR 型时:能直接连接到母线。 LD<>、AND<>、OR<> S(带符号) L(倍长) LD<、AND<、OR< LD<=、AND<=、OR<= LD>、AND>、OR> LD>=、AND>=、OR>= ·无符号比较指令(无 S 选项)中,可以处理无符号 BIN 数据以及 BCD 数据。 参考 ·带符号比较指令(带 S 选项)中,可以处理带符号 BIN 数据。 与 CMP 指令和 CMPL 指令不同,由于将比较的结果直接反 映为下一段电路的输入条件,所以没有必要读取状态标志, 可以简洁地记述程序。 注: ·请在本指令的最终段中加上输出类指令(OUT 类指令以 及下段连接型指令之外的应用指令)。 ·本指令不能在回路的最终段中进行使用。 3-102 数据比较指令 符号比较 =,<>,<,<=,>,>= (S,L) (LD/AND/OR 型) (300~328) 执行条件/每次刷新指定 执行条件 ON 时每周期执行,连接到下 符号比较 一段 指令 3 每次刷新指定 无 各 指 使用限制 令 区域 块程序区 工程步进 子程序区域 中断任务 说 域 程序区域 程序区域 明 使用 可 可 可 可 符号比较指令一览 功能 数据形式数 助记符 名称 FUN 功能 数据形式数 助记符 名称 FUN 据长 编号 据长 编号 无符号・ LD = LD 型•一致 300 无符号・ LD <> LD 型•不一致 305 字型 AND = AND 型•一致 300 字型 AND <> AND 型•不一致 305 OR = OR 型•一致 300 OR <> OR 型•不一致 305 无符号・ LD =L LD 型•倍长•一致 301 无符号・ LD <>L LD 型•倍长•不一致 306 倍长型 AND =L AND 型•倍长•一致 301 倍长型 AND AND 型•倍长•不一致 306 OR =L OR 型•倍长•一致 301 <>L S1=S2 时 带符号・ 为真(ON)字型 带符号・ 倍长型 LD =S LD 型•带符号•一致 302 AND =S AND 型•带符号•一致 302 OR =S OR 型•带符号•一致 302 LD =SL LD 型•带符号倍长•一 303 致 AND=SL AND 型•带符号倍长• 303 带符号・ S1≠S2 时为 字型 真(ON) 带符号・ OR <>L OR 型•倍长•不一致 306 LD <>S LD 型•带符号•不一致 307 AND <>S AND 型•带符号•不一 307 致 OR <>S OR 型•带符号•不一致 307 LD <>SL LD 型•带符号倍长•不 308 数 据 比 较 一致 倍长型 一致 指 OR=SL OR 型•带符号倍长•一 303 AND AND 型•带符号倍长• 308 令 致 <>SL 一致 OR <>SL OR 型•带符号倍长•不 308 一致 3-103 数据比较指令 符号比较 =,<>,<,<=,>,>= (S,L) (LD/AND/OR 型) (300~328) 功能 数据类型 助记符 名称 FUN ・数据长 编号 3 各 指 令 说 明 无符号・ 字型 无符号・ 倍长型 LD < AND < OR < LD AND > OR > LD >L AND >L OR >L LD >S AND >S OR >S LD >SL AND>SL OR>SL LD >= AND>= OR >= LD >=L AND >=L OR >=L LD >=S AND>=S OR>=S LD>=SL AND>=SL OR >=SL 名称 FUN 编号 LD 型•超过 320 AND 型•超过 320 OR 型•超过 320 LD 型•倍长•超过 321 AND 型•倍长•超过 321 OR 型•倍长•超过 321 LD 型•带符号•超过 322 AND 型•带符号•超 322 过 OR 型•带符号•超过 322 LD 型•带符号倍长• 323 超过 AND 型•带符号倍 323 长•超过 OR 型•带符号倍长• 323 超过 LD 型•以上 325 AND 型•以上 325 OR 型•以上 325 LD 型•倍长•以上 326 AND 型•倍长•以上 326 OR 型•倍长•以上 326 LD 型•带符号•以上 327 AND 型•带符号•以 327 上 OR 型•带符号•以上 327 LD 型•带符号倍长• 328 以上 AND 型•带符号倍 328 长•以上 OR 型•带符号倍长• 328 以上 3-104 数据比较指令 符号比较 =,<>,<,<=,>,>= (S,L) (LD/AND/OR 型) (300~328) 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) L 无(字) L(倍长)时 S1 S2 S1 S2 0000~6143 0000~6142 W000~511 W000~510 H000~511 H000~510 A000~959 A000~958 T0000~4095 T0000~4094 C0000~4095 C0000~4094 D00000~32767 D00000~32766 @D00000~32767 @D00000~32767 *D00000~32767 *D00000~32767 #0000~FFFF(BIN 数据) &0~65535 (无符号 10 进制数) #00000000~ FFFFFFFF (BIN 数 据) &0~4294967295 (无符号,10 进制) DR0~15 - - IR0~15(无符号时 可以) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 >标志 ≧标志 =标志 ≠标志 <标志 ≦标志 标记符 > >= = <> < <= L 无(字) 比较结果为 S1>S2 时为 ON 除此之外为 OFF 比较结果为 S1≧S2 时为 ON 除此之外为 OFF 比较结果为 S1=S2 时为 ON 除此之外为 OFF 比较结果为 S1≠S2 时为 ON 除此之外为 OFF 比较结果为 S1<S2 时 ON 除此之外为 OFF 比较结果为 S1≦S2 时为 ON 除此之外为 OFF 内容 L(倍长)时 比较结果为 S1+1,S1> S2+1、S2 时为 ON 除此之外为 OFF 比较结果为 S1+1,S1≧ S2+1、S2 时为 ON 除此之外为 OFF 比较结果为 S1+1,S1= S2+1、S2 时为 ON 除此之外为 OFF 比较结果为 S1+1, S1≠S2+1、S2 时为 ON 除此之外为 OFF 比较结果为 S1+1,S1< S2+1、S2 时为 ON 除此之外为 OFF 比较结果为 S1+1,S1≦ S2+1、S2 时为 ON 除此之外为 OFF 动作说明 (例)AND 连接型的<指令、<S 指令时 3 各 指 令 说 明 无符号比较(﹤) 10 进制:34580 10 进制:14876 下一段之后不连接 带符号比较(﹤S) 10 进制:-30956 10 进制:14876 下一段之后连接 数 ·<指令的动作 据 0.00 为 ON 时,对 D100 的数据和 D200 的数据进行无符 比 较 号 BIN4 位的比较。比较结果为(D100 的数据)<(D200 指 的数据)时,被连接到下一段之后,输出继电器 100.00 为 令 ON。 比较结果不为(D100 的数据)<(D200 的数据)时, 不被连接到下一段之后。 ·<S 指令的动作 0.01 为 ON 时,对 D110 的数据和 D210 的数据进行带符 号 BIN4 位的比较。 比较结果为(D110 的数据)<(D210 的数据)时,被 连接到下一段之后,输出继电器 100.01 为 ON。 比较结果不为(D110 的数据)<(D210 的数据)时, 不被连接到下一段之后。 3-105 数据比较指令 3-41 时刻比较 =DT,<> DT,< DT,<= DT,> DT,>= DT (LD/AND/OR 型) (341~346) 概要 3-41 时刻比较 =DT,<> DT,< DT,<= DT,> DT,>= DT (LD/AND/OR 型) (341~346) S1: 将当前时刻(年•月•日•时•分•秒)数据保存在以下 比较 2 个时刻数据(BCD 数据),比较结果为真时,连 S1~S1+2 中。 3 各 接到下一段之后。 ·连接型中有 LD(逻辑取反)连接、AND(串联)连 指 接、OR(并联)连接 3 种。 令 ·由于能够限定比较对象数据,可以实现日历定时器功 说 能。 明 符号 将 CPU 单元的内部时钟数据作为比较基准时,以 S1= A351 CH 来指定 CPU 单元的内部时钟数据(A351~ A353 CH)。 数 据 比 S2: 将比较时刻(年•月•日•时•分•秒)数据保存在以下 S2~S2+2 中。 较 指 令 符号 (梯形图中没有 LD、AND、OR) LD=DT、AND=DT、OR=DT LD<>DT、AND<> DT、OR<> DT LD< DT、AND< DT、OR< DT LD<= DT、AND<= DT、OR<= DT LD> DT、AND> DT、OR> DT LD>= DT、AND>= DT、OR>= DT 操作数说明 C: 在年•月•日•时•分•秒之内,通过位 00~05 来分别指 定将哪一个作为比较屏蔽(对象外)。全屏蔽(位 00~05 均为 1)时,不执行指令,不被连接至下一 段以后。 此时,出错(ER)标志 ON。 3-106 数据比较指令 时刻比较 =DT,<> DT,< DT,<= DT,> DT,>= DT (LD/AND/OR 型) (341~346) 功能说明 ·CPU 单元的内部时钟数据通过 BCD 保存在以下特殊辅助 关于通过 C 指定为 0(比较对象)的时刻项目(年•月• 继电器中。 日•时•分•秒),对 S1 和 S2 进行 BCD 比较,结果为真 比较 3 时,连接至下一段。同时反映到状态标志(=、<>、< 、 <=、>、>=)中。 地址 通道 位 内容 各 指 时刻比较指令表现为 18 种助记符。 不进行通过 C 指定为 1(比较屏蔽)的项目的比较。 此外,指令执行后各状态标志如下所示根据比较结果进 行 ON/OFF。 A351 CH A352 CH A353 CH 00~07 08~15 00~07 08~15 00~07 秒(00~59)(BCD) 分(00~59)(BCD) 时(00~23)(BCD) 日(01~31)(BCD) 月(01~12)(BCD) 令 说 明 比较结果 = <> < <= > >= 08~15 年(00~99)(BCD) S1=S2 S1>S2 S1S2 时为真(ON) S1≧S2 时为真(ON) LD=DT AND=DT OR=DT LD<>DT AND<>DT OR<>DT LD
    DT AND>DT OR>DT LD>=DT AND>=DT OR>=DT LD 型•一致 AND 型•一致 OR 型•一致 LD 型•不一致 AND 型•不一致 OR 型•不一致 LD 型•不到 AND 型•不到 OR 型•不到 LD 型•以下 AND 型•以下 OR 型•以下 LD 型•超过 AND 型•超过 OR 型•超过 LD 型•以上 AND 型•以上 OR 型•以上 FUN 编号 341 342 343 344 345 346 3-107 数据比较指令 时刻比较 =DT,<> DT,< DT,<= DT,> DT,>= DT (LD/AND/OR 型) (341~346) 数据内容 区域 C S1 S2 3 CIO(输入输出继 0000~6143 0000~6141 0000~6141 各 指 令 说 明 电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 W000~509 H000~509 A000~957 T0000~4093 C0000~4093 W000~509 H000~509 A000~957 T0000~4093 C0000~4093 数据内存(DM) D00000~ D00000~ D00000~ 32767 32765 32765 DM 间接(BIN) ― @D00000~32767 DM 间接(BCD) ― *D00000~32767 常数 参照前页 ― ― 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) , ―(――)IR0~15 状态标志的动作 名称 出错标志 标记符 ER >标志 > ≧标志 >= =标志 = ≠标志 <> <标志 < ≦标志 <= 内容 ・全屏蔽时为 ON ・除此之外为 OFF ・比较结果为 S1>S2 时为 ON ・除此之外为 OFF ・比较结果为 S1≧S2 时为 ON ・除此之外为 OFF ・比较结果为 S1=S2 时为 ON ・除此之外为 OFF ・比较结果为 S1≠S2 时为 ON ・除此之外为 OFF ・比较结果为 S1<S2 时 ON ・除此之外为 OFF ・比较结果为 S1≦S2 时为 ON ・除此之外为 OFF 动作说明 (例) 数 0.00 为 ON 时,且时刻为 13 时 0 分 0 秒时,将 100.00 置于 ON。 据 比 对 CPU 单元内置时钟的 A351~A352 CH 的当前时刻及 D100~D102 的设定时刻进行时•分•秒的比较。 较 指 令 A351 3-108 数据比较指令 3-42 无符号比较 CMP(020)/无符号倍长比较 CMPL(060) 无符号比较 CMP CMPL 指令执行后,>、>=、=、<=、<、< >的各状态标志进行 ON/OFF。 概要 比较结果 > >= = <= < <> 3 3-42 无符号比较 CMP(020)/无符号倍长比较 CMPL(060) 对 2 个 CH 数据或常数进行无符号 BIN 16 位(16 进制 4 位)的比较,将比较结果反映到状态标志中。 S1+1,S1>S2+1,S2 ON ON OFF OFF OFF ON S1+1,S1=S2+1,S2 OFF ON ON ON OFF OFF 各 指 令 符号 S1+1,S1<S2+1,S2 OFF OFF OFF ON ON ON 说 注:-视具体情况而定。 明 S1:比较数据 1 S2:比较数据 2 功能说明 对 S1 和 S2 进行无符号 BIN(16 进制 4 位)的比较,将 结果反映到状态标志(>、>=、=、<>、<、<=) 中。 无符号比较 状态标志 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 CMP 无 无 !CMP 使用限制(CMP/CMPL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 CMPL 无 无 无 中断任务 程序区域 可 执行 CMP 指令后,>、>=、=、<=、<、< >的各状态标志进行 ON/OFF。 数 比较结果 > >= = <= < <> 据 S1>S2 ON ON OFF OFF OFF ON 比 较 S1=S2 OFF ON ON ON OFF OFF 指 S1<S2 OFF OFF OFF ON ON ON 令 注:-视具体情况而定。 无符号倍长比较 CMPL 概要 对 2 CH 的 CH 数据或常数进行无符号 BIN 32 位(16 进 制 8 位)的比较,将比较结果反映到状态标志中。 符号 CMPL S1 S2 S1:比较数据 1 低位 CH 编号 S2:比较数据 2 低位 CH 编号 功能说明 将 S1 和 S2 作为倍长数据进行无符号 BIN(16 进制 8 位) 比较,将结果反映到状态标志(>、>=、=、<>、 <、<=)中。 无符号比较 S1+1 S1 S2+1 S2 状态标志 3-109 数据比较指令 无符号比较 CMP(020)/无符号倍长比较 CMPL(060) 数据内容 区域 CMP 指令 3 S1 S2 各 CIO(输入输出继电器等) 0000~6143 CMPL 指令 S1 S2 0000~6142 指 内部辅助继电器 W000~511 W000~510 令 保持继电器 H000~511 H000~510 说 特殊辅助继电器 A000~959 A000~958 明 时间 T0000~4095 T0000~4094 计数器 C0000~4095 C0000~4094 数据内存(DM) D00000~32767 D00000~32766 DM 间接(BIN) @D00000~32767 @D00000~32767 DM 间接(BCD) *D00000~32767 *D00000~32767 常数 #0000~FFFF(BIN #00000000~ 数据) FFFFFFFF (BIN 数 &0~65535 据) (无符号 10 进制数) &0~4294967295 (无符号 10 进制) 数据寄存器 DR0~15 ― 变址寄存器(直接) - IR0~15 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 数 名称 CX-Progr 标记符 内容 据 比 ammer 的 名称 CMP 指令 CMPL 指令 较 >标志 P_GT > 比较结果为 比较结果为 S1+1,S1> 指 S1>S2 时为 S2+1、S2 时为 ON 令 ON 除此之外为 OFF 除此之外为 ≧标志 P_GE >= OFF 比较结果为 S1≧S2 时为 ON 除此之外为 比较结果为 S1+1,S1≧ S2+1、S2 时为 ON 除此之外为 OFF =标志 P_EQ OFF = 比较结果为 比较结果为 S1+1,S1= S1=S2 时为 S2+1、S2 时为 ON ON 除此之外为 OFF 除此之外为 ≠标志 <标志 ≦标志 P_NE P_LT P_LE <> < <= OFF ・ 比较结果 为 S1≠S2 时为 ON ・ 除此之外 为 OFF ・ 比较结果 为 S1<S2 时为 ON ・ 除此之外 为 OFF ・ 比较结果 为 S1≦S2 时为 ON ・ 除此之外 为 OFF 比较结果为 S1+1, S1≠S2+1、S2 时为 ON 除此之外为 OFF 比较结果为 S1+1,S1< S2+1、S2 时为 ON 除此之外为 OFF 比较结果为 S1+1,S1≦ S2+1、S2 时为 ON 除此之外为 OFF 3-110 数据比较指令 无符号比较 CMP(020)/无符号倍长比较 CMPL(060) 注: ·如果执行本指令,比较结果将反映到状态标志中,所以 如下所示,请在与 CMP(CMPL)指令相同的输入条件 的输出分支中输入结果。 状态标志 例:= S1 和 S2 一致时, =标志转为 ON,A 转为 ON。 ·如果将状态标志配置在其他指令之后,根据该指令的执 行结果,状态标志会发生变化,所以状态标志的配置必 3 须紧随 CMP(CMPL)指令之后。 各 指 CMPL 令 S1 说 S2 明 B A 状态标志 例:= 状态标志 接收指令 B 的执行结果。 ·CMP 指令可以作为每次刷新型指令!CMP。 每次刷新型指令(!CMP)时,在 S1 或 S2(S1 以及 S2 也可以)中指定进行外部 I/O 分配的输入继电器区域。 执行指令时,对 S1 或 S2 的值进行 IN 刷新,并比较该值。 动作说明 (例) 数 据 比 较 状态标志 指 令 比较 结果 注: ·输入继电器 0.00 为 ON 时,对 1001、 1000 CH 和 1501、 1500 CH 的数据内容进行 16 进制 8 位的比较。 ·比较结果 1000、1001 CH 较大时 100.00 为 ON,相等时 100.01 为 ON,1501、1500 CH 较大时 100.02 为 ON。 3-111 数据比较指令 3-43 带符号 BIN 比较 CPS(114)/带符号 BIN 倍长比较 CPSL(115) 带符号 BIN 比较 CPS 带符号 BIN 倍长比较 CPSL 3-43 带符号 BIN 比较 CPS(114)/带符号 BIN 倍长比较 CPSL(115) 3 概要 概要 各 指 令 说 对 2 个 CH 数据或常数进行带符号 BIN 16 位(将最高位 的位作为符号位的 16 进制 4 位)比较,将比较结果反映 到状态标志中。 对 2 个倍长 CH 数据或常数进行带符号倍长 BIN 32 位 (将最高位的位作为符号位的 16 进制 8 位)比较,并将 比较结果反映到状态标志中。 明 符号 符号 CPS S1 S1:比较数据 1 S2 S2:比较数据 2 S1、S2 的内容:8000~7FFF Hex(10 进制、-32768~ 32767) 功能说明 对 S1 和 S2 进行带符号 BIN(将最高位的位作为符号位 的 16 进制 4 位)比较,将结果反映到状态标志(>、> =、=、<>、<、<=)中。 带符号比较 CPSL S1 S2 S1:比较数据 1 低位 CH 编号 S2:比较数据 1 低位 CH 编号 S1+1,S1 以及 S2+1、S2 的内容:80000000~7FFFFFFF Hex(10 进制、-2147483648~2147483647) 功能说明 对 S1 和 S2 进行带符号倍长 BIN(将最高位的位作为符 号位的 16 进制 8 位)比较,并将结果反映到状态标志(>、 >=、=、<>、<、<=)中。 带符号比较 状态标志 状态标志 数 据 比 较 CPS 指令执行后,>、>=、=、<=、<、< CPSL 指令执行后,>、>=、=、<=、<、< 指 >的各状态标志进行 ON/OFF。 >的各状态标志进行 ON/OFF。 令 比较结果 > >= = <= < <> 比较结果 > >= = <= < <> S1>S2 ON ON OFF OFF OFF ON S1+1,S1>S2+1,S2 ON ON OFF OFF OFF ON S1=S2 OFF ON ON ON OFF OFF S1+1,S1=S2+1,S2 OFF ON ON ON OFF OFF S1<S2 OFF OFF OFF ON ON ON S1+1,S1<S2+1,S2 OFF OFF OFF ON ON ON 3-112 数据比较指令 带符号 BIN 比较 CPS(114)/带符号 BIN 倍长比较 CPSL(115) 执行条件/每次刷新指定 状态标志的动作 执行 ON 时每周期执行 CPS CPSL 名称 标记符 内容 条件 上升沿时 1 周期执行 无 无 CPS 指令 CPSL 指令 3 下降沿时 1 周期执行 无 无 每次刷新指定 !CPS 无 无使用限制(CPS/CPSL 指令共通) 区域 块程序区 工程步进 子程序区域 中断任务程 >标志 > ≧标志 >= 比较结果为 S1>S2 时 为 ON 除此之外为 OFF 比较结果为 S1≧S2 时 为 ON 除此之外为 OFF ・比较结果为 S1+1,S1> S2+1、S2 时为 ON ・除此之外为 OFF ・比较结果为 S1+1,S1≧ S2+1、S2 时为 ON ・除此之外为 OFF 各 指 令 说 明 域 程序区域 序区域 =标志 = 比较结果为 S1=S2 时 ・比较结果为 S1+1,S1= 使用 可 可 可 可 为 ON 除此之外为 OFF S2+1、S2 时为 ON ・除此之外为 OFF 数据内容 ≠标志 <> ・比较结果为 S1≠S2 时 比较结果为 S1+1, 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 CPS 指令 S1 S2 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 CPSL 指令 S1 S2 0000~6142 W000~510 H000~510 A000~958 T0000~4094 C0000~4094 <标志 ≦标志 < <= 为 ON ・除此之外为 OFF ・比较结果为 S1<S2 时 为 ON ・除此之外为 OFF ・比较结果为 S1≦S2 时 为 ON ・除此之外为 OFF S1≠S2+1、S2 时为 ON 除此之外为 OFF 比较结果为 S1+1,S1< S2+1、S2 时为 ON 除此之外为 OFF ・比较结果为 S1+1,S1≦ S2+1、S2 时为 ON ・除此之外为 OFF 数据内存(DM) D00000~32767 D00000~32766 DM 间接(BIN) @D00000~32767 @D00000~32767 DM 间接(BCD) *D00000~32767 *D00000~32767 常数 #0000~FFFF #00000000~ (BIN 数据) FFFFFFFF -32768~0~+32767 (BIN 数据) 数 (带符号 10 进制) -2147483648~0~ 据 +2147483647 比 (带符号 10 进制) 较 数据寄存器 DR0~15 - 指 变址寄存器(直接) ― - 令 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-113 数据比较指令 带符号 BIN 比较 CPS(114)/带符号 BIN 倍长比较 CPSL(115) 注: ·如果执行本指令,比较结果将反映到状态标志中,所以 ・如果将状态标志配置在其他指令之后,根据该指令的执 3 如下所示,请在与 CPS 指令相同的输入条件的输出分支 行结果,状态标志会发生变化,所以状态标志的配置必 各 中输入结果。 须紧随 CPS 指令之后。 指 令 CPS 说 S1 明 S2 A 状态标志 例:= S1 和 S2 一致时,=标志转为 ON, A 转为 ON。 状态标志 例:= 状态标志 接收指令 B 的执行结果 ·CPS 指令可以作为每次刷新型指令(!CPS)。 每次刷新型指令(!CPS)时,在 S1 或 S2(S1 以及 S2 也可以)中指定进行外部 I/O 分配的输入继电器区域。 执行指令时,对 S1 或 S2 的值进行 IN 刷新,并比较该值。 数 据 比 较 动作说明 指 令 (例) 0.00 为 ON 时,对数据存储器 D2、 D1 的数据内容和 D6, D5 的数据内容进行带符号 BIN 的比较。 比较结果 D2、D1 的数据内容较大时,状态标志>为 ON, 输出继电器 100.00 为 ON。 D2、D1 的数据内容和 D6、D5 的数据内容相同时,= 变为 ON,100.01 为 ON。 D6、D5 的数据内容比 D2、D1 的数据内容大时,<变 为 ON,100.02 为 ON。 比较 状态标志 结果 3-114 数据比较指令 3-44 多通道比较 MCMP(019) 概要 执行条件/每次刷新指定 3-44 多通道比较 MCMP(019) 对 16 CH 的数据之间进行 CH 单位的比较,将是否与被 ON 时每周期执行 MCMP 指定的 CH 的相应位一致的比较结果输出。 执行条件 上升沿时 1 周期执行 @MCMP 3 下降沿时 1 周期执行 无 各 符号 每次刷新指定 无 指 令 MCMP 使用限制 说 S1 S1:比较数据 1 低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 S2 S2:比较数据 2 低位 CH 编号 域 程序区域 程序区域 D D:比较结果输出 CH 编号 使用 可 可 可 可 数据内容 操作数说明 比较数据 0 比较数据 1 比较数据 15 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 S1 S2 0000~6128 W000~496 H000~496 A000~944 T0000~ 4080 C0000~ S2 0000~6143 W000~511 H000~511 A448~959 T0000~4095 C0000~4095 比较数据 0 比较数据 1 比较数据 15 S1+14 和 S2+14 的比较结果 S1+15 和 S2+15 的比较结果 数据内存(DM) S1 和 S2 的比较结果 S1+1 和 S2+1 的 比较结果 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 注:S1~S1+15、以及 S2~S2+15 必须属于同一区域种类。 状态标志的动作 4080 D00000~ D00000~ 32752 32767 @D00000~32767 *D00000~32767 ― 数 ― DR0~15 据 ― 比 ,IR0~15 较 -2048~+2047,IR0~15 DR0~15,IR0~15 指 令 ,IR0~15+(++) ,-(--)IR0~15 功能说明 名称 标记符 内容 对 S1 所指定的 16 通道(字)的数据和 S2 所指定的 16 通道的数据分别进行通道单位的比较,若一致则将 0, 不一致时将 1 输出到 D 的相应位。 比较 S1 和 S2,如果一致则在 D CH 的位 0 中输出 0,如 出错标志 =标志 ER OFF = ・比较结果为 0 时(比较结果为所有数据一致 时)为 ON ・除此之外为 OFF 果不一致则输出 1。 比较 S1+1 和 S2+1,如果一致则在 D CH 的位 1 中输出 0,如果不一致则输出 1。以下相同。 比较 S1+15 和 S2+15,如果一致则在 D CH 的位 15 中输 出,如果不一致则输出 1。 一致时为 0,不一致时为 1 比较 S1 S2 D 0 S1+1 S2+1 1 S1+14 S2+14 14 S1+15 S2+15 15 3-115 数据比较指令 多通道比较 MCMP(019)(115) 参考 本指令执行后如果=标志为 ON,则表示 16 通道的数据 3 一致。 各 指 令 说 动作说明 明 (例) 0.00 为 ON 时,对 D100~D115 和 D200~D215 的各 16CH 进行比较, 一致时为 0,不一致时为 1,将该结果存储到 D300 的位 0~15。 数 据 比 较 指 令 3-116 数据比较指令 3-45 表格一致 TCMP(085) 概要 执行条件/每次刷新指定 3-45 表格一致 TCMP(085) 将比较数据 1 CH 分别与比较表格 16 CH 的数据是否一 致进行比较,结果到输出 CH 的相应位。 符号 ON 时每周期执行 TCMP 执行条件 上升沿时 1 周期执行 @TCMP 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 数据内容 操作数说明 区域 CIO(输入输出继电 器等) S 0000~6143 T 0000~6128 D 0000~6143 内部辅助继电器 W000~511 W000~496 W000~511 保持继电器 特殊辅助继电器 H000~511 A000~959 H000~496 A000~944 H000~511 A448~959 时间 T0000~4095 T0000~ T0000~4095 4080 计数器 C0000~4095 C0000~ C0000~4095 4080 数据内存(DM) D00000~32767 D00000~ D00000~ 32752 32767 DM 间接(BIN) @D00000~32767 功能说明 DM 间接(BCD) 常数 *D00000~32767 #0000~FFFF ― (BIN 数据) 数 据 比 对 S 所指定的 1 通道(字)和 T~T+15 所指定的 16 通 道(字)的数据分别进行比较,如果一致则将 1 输出到 &0~65535 (无符号 10 进 制数) 较 指 令 DCH 的相应位,如果不一致则输出 0。 -32768~0~+ 比较 S 和 T,如果一致则在 D CH 的位 0 中输出 1,如果 不一致则输出 0。 比较 S 和 T+1,如果一致则在 D CH 的位中输出 1,如果 不一致则输出 0。 以下相同。 比较 S 和 T+15,如果一致则在 D CH 的位 15 中输出 1, 如果不一致则输出 0。 32767 (带符号 10 进 制) 数据寄存器 DR0~15 ― 变址寄存器(直接) ― DR0~15 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 =标志 标记符 ER = 内容 OFF ・比较结果为 0 时(与比较表格进行比较的 结果,S 的数据全部不一致时)为 ON ・除此之外为 OFF 3-117 数据比较指令 表格一致 TCMP(085) 动作说明 (例) 3 各 指 令 说 明 0.00 为 ON 时,对 D100 和 D200~D215 进行比较,一致时为 1,不一致时为 0, 将该结果存储到 D300 的位 0~15 中。 数 据 比 较 指 令 3-118 数据比较指令 3-46 无符号表格间比较 BCMP(068) 概要 例: 3-46 无符号表格间比较 BCMP(068) 判断比较数据的内容是否在 16 组比较数据的上下限范 T≦S≦T+1 时,在 D CH 的位 0 中输出 1。 围内,如果在范围内,则在输出 CH 的相应位输出 1。 T+2≦S≦T+3 时,在 D CH 的位 1 中输出 1。 3 以下相同。 各 符号 S:比较数据 S<T、T+1<S 时,在 D CH 的位 0 中输出 0。 S<T+2、T+3<S 时, 在 D CH 的位 1 中输出 0。 以下相同。 指 令 说 明 T:比较数据低位 CH 编号 D:比较结果输出 CH 编号 注:下限值和上限值相反(T>T+1 等)时,不会出错,而 是在 D CH 的相应位中输出 0(范围外)。 操作数说明 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 BCMP @BCMP 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数 据 比 较 指 令 功能说明 T 所指定的 32 字数据被视为 16 组的上限值、下限值数 据,比较 S 是否分别在各自的范围内(包括上限值、下 限值)。比较结果如果在范围内(包括一致)则在 D CH 的相应位上输出 1,如果在范围外(不包括一致)则输 出 0。 T、T+2、・・・、T+28、T+30 为下限值。 T+1、T+3、・・・、T+29、T+31 为上限值。 比较 S 是否在 T(下限值)~T+1(上限值)、T+2(下限 值)~T+3(上限值)、…的范围内,输出结果到 D CH 的 位 0、1…。 3-119 数据比较指令 无符号表格间比较 BCMP(068) 数据内容 状态标志的动作 区域 S T D 名称 3 CIO(输入输出继 0000~6143 0000~6112 0000~6143 出错标志 各 指 令 说 明 电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 W0000~480 H000~480 A000~928 T0000~4064 C0000~4064 W000~511 H000~511 A448~959 T0000~4095 C0000~4095 =标志 数据内存(DM) D00000~32767 D00000~ D00000~ DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直 接) 32736 @D00000~32767 *D00000~32767 #0000~FFFF(BIN ― 数据) &0~65535 (无符号 10 进制数) -32768~0~ +32767 (带符号 10 进制) DR0~15 ― ― 32767 DR0~15 变址寄存器(间 接) 数 据 比 较 指 令 动作说明 (例) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 标记符 ER = 内容 OFF ・比较结果为 0 时(与比较表格进行比较的 结果,S 的数据全部在范围外时)为 ON ・除此之外为 OFF 0.00 为 ON 时,D100 的内容在以 D200 的内容 为下限值,并以 D201 的内容为上限值的范围内 时,在 D300 的位 0 保存 1,位于上述范围外时, 保存 0。 同样,D100 的内容在 D202~D203、…. D214~ D215 的范围内时在 D300 的位 1..15 中保存 1, 不在上述范围内时保存 0。 3-120 数据比较指令 3-47 扩展表格间比较 BCMP2(502) 概要 3-47 扩展表格间比较 BCMP2(502) 判断比较数据的内容是否在最大 256 组比较数据的上下 限范围内,如果在范围内,则在输出 CH 以后的相应位 上输出 1。 符号 功能说明 判断比较数据 S 是否在 T+1 之后的各区间(最大 256 个) 的设定范围内。判断结果,如果比较数据 S 在设定范围 3 (定义区间)内,则在 D~D+最大 15 CH 的相应位上输 各 出 1,如果在设定范围之外则输出 0。 此外,最终区间 N 由 T 的低位字节来指定(N=0~255)。 指 令 说 且 T 的高位字节必须为 00 Hex。 明 操作数说明 将输出目的地 CH 编号作为 D+m 时 (m=0~15) 与区间 15m+15 的判断结果 与区间 15m+14 的判断结果 与区间 15m+n 的判断结果 与区间 15m 的判断结果 数 据 比 ・区间的个数 较 区间的个数通过设定表格的开始通道进行设定。区间最 指 令 多可以登录 256 个。 ・区间的设定 定义区间如下所示,取决于设定值 A 和设定值 B 的大小 关系。 ・设定值 A≦设定值 B 时 设定值 A≦定义区间≦设定值 B A B ・设定值 A>设定值 B 时 定义区间≦设定值 B、设定值 A≦定义区间 B A 3-121 数据比较指令 扩展表格间比较 BCMP2(502) 例: ・T+1≦T+2 时 3 各 T+1≦S≦T+2 时,在 D CH 的位 0 上输出 1 T+3≦S≦T+4 时,在 D CH 的位 1 上输出 1 指 S<T+5、T+6<S 时,在 D CH 的位 2 上输出 0 令 S<T+7、T+8<S 时,在 D CH 的位 3 上输出 0 说 明 ・T+1>T+2 时 S≦T+2、T+1≦S 时,在 D CH 的位 0 上输出 1 数据内容 区域 CIO(输入输出继电 器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) S T 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 D A448~959 S≦T+4、T+3≦S 时,在 D CH 的位 1 上输出 1 T+6<S<T+5 时,在 D CH 的位 2 上输出 0 T+8<S<T+7 时,在 D CH 的位 3 上输出 0 DM 间接(BIN) DM 间接(BCD) 常数 @D00000~32767 *D00000~32767 #0000~FFFF(BIN 数 ― 据) ・判断结果保存位置 &0~65535 (无符号 10 进制数) 将判断结果输出到 D CH 的相应位。 -32768~0~ 如果设定表格的区间定义数超过 16(最终设定区间编号 N 在 16 以上时),结输出 CH 将越过 D 所指定的通道以 数据寄存器 +32767 (带符号 10 进制) DR0~15 ― 后的连续多个 CH 后输出。 变址寄存器(直接) ― 将输出地 CH 编号作为 D+m 时 (m=0~15) CH 编号 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 数 与区间 15m+15 的判断结果 据 与区间 15m+14 的判断结果 比 与区间 15m+n 的判断结果 较 与区间 15m 的判断结果 指 令 执行条件/每次刷新指定 状态标志的动作 名称 出错标志 标记符 ER OFF 内容 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 BCMP2 @BCMP2 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 3-122 数据比较指令 扩展表格间比较 BCMP2(502) 动作说明 (例) 3 0.00 为 ON 时,来自 D200 的区间定义数据中设定的区间(最终设定区间 N=17Hex(23)的 24 个),判断 1000CH 的 内容是否位于该定义区间内,将结果输出到 D 以后。 位于[D201 和 D202]的定义区间内时,在 2000CH 的位 0 中保存 1,位于定义区间外时保存 0。同样的,1000CH 的 内容位于[D203 和 D204]….[ D247 和 D248]的定义区间内时将 1 保存到 2000CH 的位 1…2001CH 的位 7 中,不在该 区间内时保存 0。 各 指 令 说 明 数 据 比 较 指 令 3-123 数据比较指令 3-48 区域比较 ZCP(088)/倍长区域比较 ZCPL(116) 区域比较 ZCP 执行条件/每次刷新指定 3-48 領域比較 ZCP(088)/倍長領域比較 ZCPL(116) 执行 ON 时每周期执行 ZCP ZCPL 3 概要 条件 上升沿时 1 周期执行 无 无 各 指 令 说 对指定的 1 个 CH 数据或常数是否在指定的上限值和下 限值之间进行无符号 BIN 16 位(16 进制 4 位)的比较, 将比较结果反映在状态标志。 下降沿时 1 周期执行 无 每次刷新指定 无 使用限制(ZCP/ZCPL 指令共通) 无 无 明 区域 块程序区 工程步进 子程序区域 中断任务 符号 ZCP 域 程序区域 程序区域 使用 可 可 可 可 S S:比较数据(1CH 数据) T1 T1:下限值 数据内容 T2 T2:上限值 区域 ZCP 指令 S T1 T2 ZCPL 指令 S T1 T2 CIO(输入输出继电器等) 0000~6143 0000~6142 内部辅助继电器 W000~511 W000~510 功能说明 对 S 是否在 T1~T2 的范围内(T1≦S≦T2)进行无符号 BIN(16 进制 4 位)的比较,将结果反映在状态标志(>、 =、<)中。 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 H000~510 A000~958 T0000~4094 C0000~4094 D00000~32766 DM 间接(BIN) @D00000~32767 @D00000~32767 倍长区域比较 ZCPL DM 间接(BCD) 常数 *D00000~32767 #0000~FFFF *D00000~32767 #00000000~ 数 (BIN 数据) FFFFFFFF 据 比 概要 较 对指定的 1 个倍长 CH 数据或常数是否在指定的上限值 指 令 和下限值之间进行无符号 BIN 32 位(16 进制 8 位)的 比较,将比较结果反映在状态标志中。 数据寄存器 变址寄存器(直接) &0~65535 (无符号 10 进制 数) DR0~15 - (BIN 数据) &0~4294967295 (无符号 10 进制) ― IR0~15 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 符号 DR0~15,IR0~15 ,IR0~15+(++) ZCPL ,-(--)IR0~15 S S:比较数据(2CH 数据) T1 T1:下限值低位 CH 编号 T2 T2:上限值高位 CH 编号 功能说明 对 S 是否在 T1~T2 的范围内(T1≦S≦T2)进行无符号 BIN(16 进制 8 位)的比较,将结果反映在状态标志(>、 =、<)中。 3-124 数据比较指令 区域比较 ZCP(088)/倍长区域比较 ZCPL(116) 状态标志的动作 ・ZCP 指令 名称 出错标志 >标志 ≧标志 =标志 ≠标志 <标志 ≦标志 N 定标志 标记符 ER > >= = <> < <= N 内容 进行 T1>T2 的设定时为 ON ·比较结果为 S>T2 时为 ON ·除此之外为 OFF 保持 ·比较结果为 T1≦S≦T2 时为 ON ·除此之外为 OFF 保持 ·比较结果为 S<T1 时为 ON ·除此之外为 OFF 保持 保持 ・ZCPL 指令 名称 标记符 内容 3 出错标志 ER 进行了 T1+1,T1>T2+1,T2 的设定时为 ON 各 >标志 > ·比较结果为 S+1,S>T2+1,T2 时为 ON 指 ·除此之外为 OFF 令 ≧标志 >= 保持 说 =标志 = ·比较结果为 T1+1,T1≦S+1,S≦T2+1,T2 时 明 为 ON ·除此之外为 OFF ≠标志 <> 保持 <标志 < ·比较结果为 S+1,S<T1+1,T1 时为 ON ·除此之外为 OFF ≦标志 <= 保持 ZCP 指令执行后,>、=、<的各状态标志进行 ON/OFF (>=、<=、<>标志不进行 ON/OFF)。 如下所示,S>T2 时,>标志 ON。 T1≦S≦T2 时,=标志为 ON。S<T1 时,<标志为 ON。 N 标志 N 保持 ZCPL 指令执行后,>、=、<的各状态标志进行 ON/OFF (>=、<=、<>标志不进行 ON/OFF)。 如下所示,S+1、S>T2+1、T2 时,>标志为 ON。T1+1、 比较结果 > = < T1≦S+1、S≦T2+1、T2 时、=标志为 ON。S+1、S< S>T2 ON OFF T1+1、T1 时、<标志为 ON。 S=T2 OFF T1<S<T2 ON OFF S=T1 S<T1 OFF ON 比较结果 > = < S+1,S>T2+1,T2 ON OFF S+1,S=T2+1,T2 OFF T1+1,T1<S+1,S<T2+1,T2 ON OFF S+1,S=T1+1,T1 数 S+1,S<T1+1,T1 OFF ON 据 比 较 指 令 3-125 数据比较指令 区域比较 ZCP(088)/倍长区域比较 ZCPL(116) 注: ·如果执行本指令,比较结果将反映到状态标志中,所以 ·如果将状态标志配置在其他指令之后,根据该指令的执 3 各 如下例所示,请在与 ZCP(ZCPL)指令同一输入条件的 输出分支中输入结果。 行结果状态标志会发生变化,所以状态标志的配置必须 紧随 ZCP(ZCPL)指令之后。 指 令 说 明 动作说明 (例) 数 据 比 较 指 令 状态标志 例:= T1≦S≦T2 时 =标志转为 0,A 转为 0。 状态标志 例:= 状态标志 接收指令 B 的执行结果 状态标志 注: ·输入继电器 0.00 为 ON 时,对 D0 的内容是否在 0005~001F Hex(10 进制 5~31)之间进行 16 进制 4 位的比较。 ·D0>001F Hex 时,100.01 为 ON;0005 Hex≦D0≦001F Hex 时,100.00 为 ON;D0<0005 Hex 时,100.02 为 ON。 3-126 数据传送指令 项目号 3-49 3-50 3-51 3-52 3-53 3-54 3-55 3-56 3-57 3-58 3-59 指令语句 传送 倍长传送 否定传送 否定倍长传送 位传送 数字传送 多位传送 块传送 块设定 数据交换 数据倍长交换 数据分配 数据抽出 变址寄存器设定 变址寄存器设定 助记符 MOV MOVL MVN MVNL MOVB MOVD XFRB XFER BSET XCHG XCGL DIST COLL MOVR MOVRW FUN 编号 021 498 022 499 082 083 062 070 071 073 562 080 081 560 561 页码 3-128 3-130 3-132 3-133 3-135 3-137 3-139 3-140 3-142 3-144 3-146 3-127 数据传送指令 3-49 传送 MOV(021)/倍长传送 MOVL(498) 传送 MOV 3-49 传送 MOV(021)/倍长传送 MOVL(498) 3 概要 各 指 将 CH 数据或常数以 16 位输出至传送目的 CH。 令 符号 说 明 倍长传送 MOVL 概要 将 2 CH 的 CH 数据或常数以 32 位为单位输出至传送目 的地。 符号 功能说明 将 S 传送到 D。S 为常数时,可用于数据设定。 功能说明 以 S 为倍长数据传送到 D+1、 D。S、 S+1 为常数时, 可用于数据设定。 执行条件/每次刷新指定 数 据 执行条件 ON 时每周期执行 上升沿时 1 周期执行 MOV @MOV 传 下降沿时 1 周期执行 无 送 指 令 复合条件 每次刷新指定 上升沿 1 周期执行 且每次刷 !MOV !@MOV 新指定 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 注: ·MOV 指令可用作每次刷新型指令(!MOV)。 ·作为每次刷新型指令(!MOV)时,可在 S 中指定进行外部 I/O 分配的输入继电器区域。同时在 D 中指定进行外部 I/O 分配的输 出继电器区域。 在 S 中指定外部输入时,指令执行时对 S 的值进行 IN 刷新,将 该值传送到 D。在 D 中指定外部输出时,指令执行时将 S 的值 传送到 D,即时进行 OUT 刷新。对 S 进行 IN 刷新,同时也可 对 D 进行 OUT 刷新。 MOVL @MOVL 无 无 3-128 数据传送指令 使用限制(MOV/MOVL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 数据内容 中断任务 程序区域 可 ·MOV 指令 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) ·倍长传送 MOVL 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 动作说明 (例) S D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~FFFF ― (BIN 数据) DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 S D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 #00000000~ ― FFFFFFFF (BIN 数据) ― IR0~15 ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 ·MOV 指令 名称 出错标志 =标志 标记符 ER = 内容 OFF ・传送数据为 0 时为 ON ・除此之外为 OFF 3 各 指 令 N 标志 N ・传送数据的最高位位为 1 时为 ON 说 ・除此之外为 OFF 明 ・指令执行时,将 ER 标志置于 OFF。 ・传送数据 S 的内容为 0000 Hex 时,=标志为 ON。为 0000 Hex 以 外时,=标志为 OFF。 ・传送数据 S 的内容的最高位位为 1 时,N 标志为 ON。 ·MOVL 指令 名称 标记符 出错标志 ER =标志 = N 标志 N 注: 内容 OFF ・传送数据为 0 时为 ON ・除此之外为 OFF ・传送数据的最高位位为 1 时为 ON ・除此之外为 OFF ・指令执行时,将 ER 标志置于 OFF。 ・传送数据 S+1、S 的内容为 00000000 Hex 时,=标志为 ON。不 为 00000000 Hex 时,=标志为 OFF。 ・传送数据 S+1、S 的内容的最高位位为 1 时,N 标志为 ON。 数 据 传 送 指 令 3-129 数据传送指令 3-50 非传送 MVN(022)/倍长非传送 MVNL(499) 非传送 MVN 执行条件/每次刷新指定 3 3-50 概要 否定传送 MVN(022)/否定倍长传送 MVNL(499) 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 MVN @MVN MVNL @MVNL 各 指 令 将 CH 数据或常数的位取反以 16 位为单位输出到指定的 CH。 下降沿时 1 周期执行 每次刷新指定 无 无 无 无 说 符号 明 使用限制(MVN/MVNL 指令共通) 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 使用 可 可 可 可 数据内容 ・非传送 MVN 功能说明 对 S 的 16 位进行位取反,传送到 D。 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 位取反 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 倍长非传送 MVNL 数据寄存器 数 据 概要 变址寄存器(直接) 传 将 2 CH 的 CH 数据或常数的位取反数据以 32 位为单位 变址寄存器(间接) 送 指 输出到指定的 CH。 令 符号 功能说明 将 S 作为倍长数据进行位取反,传送到 D+1,D。 位取反 ・倍长非传送 MVNL 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~FFFF ― (BIN 数据) DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 S D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 #00000000~ ― FFFFFFFF (BIN 数据) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-130 数据传送指令 非传送 MVN(022)/倍长非传送 MVNL(499) 状态标志的动作 ・MVN 指令 名称 出错标志 =标志 标记符 ER = N 标志 N 内容 OFF ・非传送数据为 0 时为 ON ・除此之外为 OFF ・非传送数据的最高位位为 1 时为 ON ・除此之外为 OFF ・MVNL 指令 名称 标记符 出错标志 ER =标志 = N 标志 N 内容 OFF ・非传送数据为 0 时为 ON ・除此之外为 OFF ・非传送数据的最高位位为 1 时为 ON ・除此之外为 OFF 3 各 指 令 说 明 注: 注: ・指令执行时,将 ER 标志置于 OFF。 ・指令执行时,将 ER 标志置于 OFF。 ・传送数据 S 的内容为 0000 Hex 时,=标志为 ON。为 0000 Hex 以外时,=标志为 OFF。 ・传送数据 S+1、S 的内容为 00000000 Hex 时,=标志为 ON。不为 00000000 Hex 时,=标志为 OFF。 ・传送数据 S 的内容的最高位位为 1 时,N 标志为 ON。 ・传送数据 S+1、S 的内容的最高位位为 1 时,N 标志为 ON。 动作说明 (例) 数 据 传 送 指 令 3-131 数据传送指令 3-51 位传送 MOVB(082) 概要 3-51 位传送 MOVB(082) 传送指定位 3 各 符号 指 令 说 明 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 MOVB @MOVB 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 传送源 CH 的位指定 00~0FHex(0~15) 区域 S C D CIO(输入输出继电器 等) 0000~6143 功能说明 传送目的地 CH 的位指定 00~0FHex(0~15) 将 S 的指定位位置(C 的 n)的内容(0/1)传送给 D 的 内部辅助继电器 保持继电器 特殊辅助继电器 时间 W000~511 H000~511 A000~959 T0000~4095 A448~959 指定位位置(C 的 m) 计数器 数据内存(DM) C0000~4095 D00000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #0000~FFFF 参照左边 ― (BIN 数据) 数据寄存器 DR0~15 数 据 传 送 注: 指 令 •传送对象 CH 的数据不会改变到被传送的位之外。 变址寄存器(直接) 变址寄存器(间接) •控制代码 C 的内容位于指定范围以外时,将发生错误,ER ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 标志为 ON。 状态标志的动作 参考 名称 标记符 内容 在 S 和 D 中指定相同通道时,可用于变更位置等方面。 出错标志 ER • C 的数据在范围外时为 ON • 除此之外为 OFF 动作说明 (例) 3-132 数据传送指令 3-52 数字传送 MOVD(083) 概要 执行条件/每次刷新指定 3-52 数字传送 MOVD(083) 以位(4 位)单位进行传送。也可进行多个位的传送。 符号 ON 时每周期执行 MOVD 执行条件 上升沿时 1 周期执行 @MOVD 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 操作数说明 数据内容 区域 S C D CIO(输入输出继电器 等) 0000~6143 内部辅助继电器 W000~511 保持继电器 H000~511 特殊辅助继电器 A000~959 A448~959 时间 T0000~4095 计数器 C0000~4095 数据内存(DM) D00000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #0000~FFFF 参照左边 ― (BIN 数据) 数据寄存器 DR0~15 变址寄存器(直接) ― 数 变址寄存器(间接) ,IR0~15 据 -2048~+2047,IR0~15 传 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 送 指 令 功能说明 以 1 数位作为 4 位,将从 S 的指定传送开始位(C 的 m) 到指定传送位数(C 的 n)的内容传送到 D 的指定输出 开始位(C 的 l)以后。 状态标志的动作 名称 出错标志 标记符 ER 内容 • C 的数据在范围外时为 ON • 除此之外为 OFF 注: ·传送目的地 CH 的数据在被传送的位以外不发生变化。 ·传送多个位时,超出传送目的地 CH 内最高位的位传送到 同一 CH 的最低位位侧。 ·控制代码 C 的内容位于指定范围以外时,将发生错误, ER 标志为 ON。 3-133 数据传送指令 数字传送 MOVD(083) 动作说明 (例) 3 各 指 令 说 明 多个位(数字)的传送示例 进行多个位的传送时,传送源开始位编号及传送目的地的输出开始位编号指定低位位侧。 数 据 传 送 指 令 3-134 数据传送指令 3-53 多位传送 XFRB(062) 概要 3-53 多位传送 XFRB(062) 传送指定 CH 所指定的多个位。 符号 执行条件/每次刷新指定 执行条件 ON 时每周期执行 XFRB 上升沿时 1 周期执行 @XFRB 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 操作数说明 数据内容 区域 C S D CIO ( 输 入 输 出 继 电 器 等) 0000~6143 传送源 CH 的传送开 始位编号 :0~Fhex(0~15) 内部辅助继电器 保持继电器 特殊辅助继电器 W000~511 H000~511 A000~959 A448~959 传送目的地 CH 的传送开 始位编号 传送位数: :0~Fhex(0~15) 00~FFhex(0~255) 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 常数 参照左边 ― ― 数据寄存器 DR0~15 ― 变址寄存器(直接) ― S+最大 15CH 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 数 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 据 传 送 指 状态标志的动作 令 D+最大 15CH 名称 出错标志 标记符 ER OFF 内容 功能说明 从 S 指定的传送源低位 CH 编号所指定的开始位位置(C 的 l)开始将指定位数(C 的 n)的数据,传送到 D 所指 定的传送目的地低位 CH 编号所指定的开始位位置(C 的 m)之后。 3-135 数据传送指令 多位传送 XFRB(062) 注: 参考 ·通过 1 个指令最多可传送 255 位跨越多个通道的数据。 ·通过传送跨越多个通道的数据,可以填补前面的数据空 3 ·传送源、传送目的地的数据范围请勿超出区域的最大范 白,有效利用数据区域。(特别是定位等位置数据的处 各 围。 指 令 ·传送位数(C 的 n)为 0 时,不传送。 理变得容易)。 ·即使传送源和传送目的地重叠,也能够正常传送,所以 说 ·传送目的地 CH 的内容在被传送的位之外不发生变化。 如果与 ANDW 指令组合,可以实现将 m 位数据移位 n 明 ·可以进行传送源与传送目的地的数据区域重叠的指定。 位的移位指令的代替。 ·指令执行时,将 ER 标志置于 OFF。 动作说明 (例) 数 据 传 送 指 令 0.00 为 ON 时,控制数据(C)的内容在以下情况下,将从 200CH 的位 6 面向高 位侧的 20 位数据传送到从 300CH 的位 0 面向高位侧的 20 位。 20 位 3-136 数据传送指令 3-54 块传送 XFER(070) 概要 3-54 块传送 XFER(070) 一次性传送连续的复数 CH 数据。 符号 W:传送 CH 数 S:传送源低位 CH 编号 D:传送目的地低位 CH 编 执行条件/每次刷新指定 执行条件 ON 时每周期执行 XFER 上升沿时 1 周期执行 @XFER 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 操作数说明 数据内容 W:0000~FFFF Hex 或 10 进制&0~65535 区域 W S D CIO(输入输出继电器 等) 0000~6143 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~FFFF ― (BIN 数据)或 A448~959 ― &0~65535 功能说明 数据寄存器 DR0~15 ― 变址寄存器(直接) ― 数 将从 S 所指定的传送源低位 CH 编号开始到 W 所指定的 数据数(BIN),传送到 D 所指定的传送目的地低位 CH 编号之后。 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 据 传 送 指 ,IR0~15+(++) 令 ,-(--)IR0~15 W 通道 状态标志的动作 名称 出错标志 标记符 ER OFF 内容 3-137 数据传送指令 块传送 XFER(070) 注: 请注意 ·也可进行类似将传送源和传送对象的数据区域进行重叠 对大量通道进行块传送时,需要指令执行时间。因此, 3 的指定(字移位动作)。 执行本指令时如果发生电源断电,块传送将在中途终止 各 ·请勿使传送源、传送对象 CH 超出数据区域。 执行,请注意。 指 令 ·指令执行时,将 ER 标志置于 OFF。 参考 说 明 在 S 与 D 中指定相同的区域种类,使用 XFER 指令,可 以对数据进行移位。 动作说明 (例) 数 据 传 送 指 令 0.00 为 ON 时,将 D100~D109 的 10CH 传送到 D200~D209。 3-138 数据传送指令 3-55 块设定 BSET(071) 概要 3-55 块设定 BSET(071) 在连续的多个 CH 中全部设定相同的数据。 符号 S:传送数据 D1:传送目的地低位 CH 编号 D2:传送目的地高位 CH 编号 执行条件/每次刷新指定 执行条件 ON 时每周期执行 BSET 上升沿时 1 周期执行 @BSET 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 操作数说明 数据内容 区域 S D1 D2 CIO(输入输出继电器 等) 0000~6143 内部辅助继电器 W000~511 保持继电器 H000~511 特殊辅助继电器 A000~959 A448~959 注:D1~D2 必须为同一区域种类。 时间 T0000~4095 功能说明 计数器 数据内存(DM) C0000~4095 D00000~32767 将S输出到从 D1 所指定的传送目的地低位 CH 编号到 D2 所指定的传送目的地高位 CH 编号。 传送数据 传送目的地 DM 间接(BIN) DM 间接(BCD) 常数 @D00000~32767 *D00000~32767 #0000~FFFF ― (BIN 数据) 数据寄存器 DR0~15 ― 变址寄存器(直接) ― 注: 数 变址寄存器(间接) ,IR0~15 据 -2048~+2047,IR0~15 传 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 送 指 令 ·用于设定(复制)同一数据。 ·必须为 D1≦D2。D1>D2 时,将发生错误。ER 标志为 ON。 请注意 状态标志的动作 名称 出错标志 标记符 ER 内容 ·D1>D2 时为 ON ·除此之外为 OFF 对大量通道进行块传送时,需要指令执行时间。因此, 执行本指令时如果发生电源断电,块传送将在中途终止 执行,请注意。 动作说明 (例) 3-139 数据传送指令 3-56 数据交换 XCHG(073)/数据倍长交换 XCGL(562) 数据交换 XCHG 3-56 数据交换 XCHG(073)/数据倍长交换 XCGL(562) 3 概要 各 指 以 16 位为单位交换 CH 间的数据。 令 符号 说 明 D1:交换 CH 编号 1 D2:交换 CH 编号 2 功能说明 交换 D1 和 D2。 交换 数据倍长交换 XCGL 概要 数 以 32 位为单位对 2 CH 的 CH 数据之间进行交换。 据 传 符号 送 指 令 D1:交换低位 CH 编号 1 D2:交换低位 CH 编号 2 功能说明 将 D1 和 D2 作为倍长数据进行交换。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 XCHG @XCHG 无 无 XCGL @XCGL 无 无 使用限制(XCHG/XCGL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 参考 如果希望对 3 CH 以上的通道进行一并交换,如下所示, 请临时介入其他区域,使用 XFER(块传送)指令,进 行数据交换。 其他区域 交换 3-140 数据传送指令 数据交换 XCHG(073)/数据倍长交换 XCGL(562) 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) XCHG 指令 D1 D2 XCGL 指令 D1 D2 0000~6143 W000~511 H000~511 A448~959 T0000~4095 0000~6142 W000~510 H000~510 A448~958 T0000~4094 C0000~4095 D00000~32767 @D00000~32767 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 *D00000~32767 ― ― DR0~15 ― ― IR0~15 ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 无变化 动作说明 (例) 0.00 为 ON 时,将 D100 与 D200 的内容进行交换。 3 各 指 令 说 明 数 据 0.01 为 ON 时,将 D100~D101 传 送 与 D200~D201 的内容进行交 指 换。 令 3-141 数据传送指令 3-57 数据分配 DIST(080) 概要 3-57 数据分配 DIST(080) 以传送对象为基准将传送数据传送到偏移通道。 3 各 符号 指 令 说 S1:传送数据 明 D:传送目的地基准 CH 编号 S2:偏移数据 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 DIST @DIST 无 无 中断任务 程序区域 可 操作数说明 数据内容 区域 S1 D S2 CIO(输入输出继电 器等) 0000~6143 内部辅助继电器 W000~511 保持继电器 H000~511 特殊辅助继电器 A000~959 A448~959 A000~959 S2:0000~FFFF Hex 或 10 进制&0~65535 注:D~D+S2 必须为同一区域类型。 时间 计数器 数据内存(DM) T0000~4095 C0000~4095 D00000~32767 功能说明 DM 间接(BIN) DM 间接(BCD) @D00000~32767 *D00000~32767 将 S1 从 D 指定的传送对象基准 CH 号,传送到按由 S2 常数 #0000~FFFF ― #0000~ 指定的偏移数据长度进行移位的地址中。 (BIN 数据) FFFF (BIN 数据) S1→D+S2 数 据 传 送 指 令 数据寄存器 变址寄存器(直接) 变址寄存器(间接) DR0~15 或 &0~65535 ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 注: ·请勿使偏移数据(S2)的内容超过传送对象的区域范围。 ·指令执行时,将 ER 标志置于 OFF。 ·传送数据 S1 的内容为 0000 Hex 时,=标志为 ON。为 0000 Hex 以外时,=标志为 OFF。 ·传送数据 S1 的内容的最高位位为 1 时,N 标志为 ON。 参考 状态标志的动作 名称 出错标志 =标志 标记符 ER = N 标志 N 内容 OFF ・传送数据为 0 时为 ON ・除此之外为 OFF ・传送数据的最高位位为 1 时为 ON ・除此之外为 OFF 通过改变偏移数据(S2)的内容,使用 1 个此类 DIST 指 令可将数据传送(分配)到任意位置。 3-142 数据传送指令 数据分配 DIST(080) 动作说明 (例) 3 0.00 为 ON 时,将 D100 的内容传送到 D210,D210 是在 D200 中加上 D300 的内 各 容(例:10(0AHex))后的地址。通过改变 D300 的内容,可以将 D100 的内容 指 分配到任意的地址。 令 说 明 数 据 传 送 指 令 3-143 数据传送指令 3-58 数据抽取 COLL(081) 概要 执行条件/每次刷新指定 3-58 数据抽取 COLL(081) 以传送源为基准,将偏移的通道内容传送给指定通道。 3 各 符号 指 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 COLL @COLL 无 无 说 S1:传送源基准 CH 编号 使用限制 明 S2:偏移数据 区域 块程序区 工程步进 子程序区域 中断任务 D:传送目的地 CH 编号 域 使用 可 程序区域 可 程序区域 可 可 操作数说明 数据内容 区域 S1 S2 D CIO(输入输出继电器 等) 0000~6143 S2:0000~FFFF Hex 或 10 进制&0~65535 注:S1~S1+S2 必须为同一区域种类。 功能说明 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 将由 S2 所指定的按偏移数据长度进行移位的地址数据, 从由 S1 所指定的传送源基准 CH 传送到 D。 数据寄存器 数 变址寄存器(直接) 据 传 变址寄存器(间接) 送 指 令 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 A448~959 *D00000~32767 ― #0000~FFFF ― (BIN 数据)或 &0~65535 ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 注: ·偏移数据(S2)的内容请勿超出传送源的区域范围。 ·指令执行时,将 ER 标志置于 OFF。 ·传送数据的内容为 0000 Hex 时,=标志为 ON。为 0000 Hex 以外时,=标志为 OFF。 ·传送数据的内容的最高位位为 1 时,N 标志为 ON。 参考 通过改变偏移数据(S2)的内容,可以用一个 COLL 指 令从任意位置取出(抽出)数据。 状态标志的动作 名称 出错标志 =标志 标记符 ER = N 标志 N 内容 OFF ・传送数据为 0 时为 ON ・除此之外为 OFF ・传送数据的最高位位为 1 时为 ON ・除此之外为 OFF 3-144 动作说明 (例) 数据传送指令 数据抽取 COLL(081) 3 各 指 令 说 明 数 据 传 送 指 令 3-145 数据传送指令 3-59 变址寄存器设定 MOVR(560)/MOVRW(561) 变址寄存器设定 MOVR 变址寄存器设定 MOVRW 3-59 变址寄存器设定 MOVR(560)/MOVRW(561) 3 (用于常规通道、接点、定时器/计数器完成标志) (用于定时器/计数器当前值) 各 指 概要 概要 令 说 明 将指定的 CH 编号、接点编号的 I/O 存储器有效地址设 定在指定的变址寄存器中。 将指定的定时器/计数器的当前值的 I/O 存储器有效地 址设定在指定的变址寄存器。 符号 符号 S:指定 CH 编号/接点编号 D:传送目的地变址寄存器编号 S:指定定时器/计数器编号 D:传送目的地变址寄存器编号 操作数说明 D:IR0~IR15 功能说明 将 S 的 I/O 存储器有效地址传送到 D 所指定的变址寄存 器中。 存储器地址 操作数说明 S:T0000~T4095 或 C0000~C4095 D:IR0~15 功能说明 将 S(定时器或计数器)的 I/O 存储器有效地址(定时 器当前值区域或计数器当前值区域)传送到 D 所指定的 变址寄存器中。 变址寄存器 存储器地址 数 据 传 送 注: (仅限定时器/ 计数器的当前 值) 变址寄存器 指 令 ・对于变址寄存器(IR0~IR15)的 I/O 存储器有效地址设 定(除定时器/计数器的当前值外)根据本指令执行。 ・如果通过常规 I/O 存储器地址(每个区域种类的地址)来 注: 指定 S,将自动使其转换为 I/O 存储器有效地址,保存在 ・对于变址寄存器(IR0~IR15)的定时器/计数器当前值 D 中。 的 I/O 存储器有效地址设定通过本指令执行。 ・如果通过本指令在 S 中指定定时器/计数器,定时器/ 计数器完成标志的 I/O 存储器有效地址将保存在 D 中。 ・定时器/计数器当前值的 I/O 存储器有效地址不通过本 指令,而通过 MOVRW 指令进行设定。 ・中断任务下的 IR 具有不确定性。 ・如果在常规定时器/计数器地址中指定 S,将自动使其转 换为定时器/计数器当前值的 I/O 存储器有效地址,保存 在 D 中。 ・定时器/计数器完成标志的 I/O 存储器有效地址不通过 本指令,而通过 MOVR 指令进行设定。 请务必在中断任务中使用本指令进行设定。此外,中断 任务下执行的 IR/DR 不影响周期执行任务。 执行条件/每次刷新指定 执 ON 时每周期执行 行 上升沿时 1 周期执行 条 下降沿时 1 周期执行 件 每次刷新指定 MOVR @MOVR 无 MOVRW @MOVRW 无 无 无 使用限制(MOVR/MOVRW 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 3-146 数据传送指令 变址寄存器设定 MOVR(560)/MOVRW(561) 数据内容 ·变址寄存器设定 MOVR 区域 CIO ( 输 入 输 出 继 电 器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 S 0000~6143 000000~614315 W000~511 W00000~51115 H000~511 H00000~51115 A000~959 A00000~95915 T0000~4095 (完成标志) 计数器 C0000~4095 (完成标志) 任务标志 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) TK0000~0031 D00000~32767 ― ― ― ― ― ― D ― ― ― ― ― ― ― IR0~15 动作说明 (例) ·变址寄存器设定 MOVRW 区域 S D CIO(输入输出继电器等) ― 内部辅助继电器 ― 保持继电器 ― 特殊辅助继电器 ― 时间 T0000~4095 ― (当前值) 3 各 指 令 说 计数器 C0000~4095 ― 明 (当前值) 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) ― ― ― ― ― ― IR0~15 ― 状态标志的动作(MOVR/MOVRW 指令共通) 名称 出错标志 =标志 N 标志 标记符 ER OFF = OFF N OFF 内容 数 据 传 送 指 令 3-147 数据传送指令 3 各 指 令 说 明 数 据 传 送 指 令 3-148 数据移位指令 项目号 3-60 3-61 3-62 3-63 3-64 3-65 3-66 3-67 3-68 3-69 指令语句 移位寄存器 左右移位寄存器 非同步移位寄存器 字移位 左移 1 位 倍长左移 1 位 右移 1 位 倍长右移 1 位 带 CY 左循环 1 位 带 CY 倍长左循环 1 位 无 CY 左循环 1 位 无 CY 倍长左循环 1 位 带 CY 右循环 1 位 带 CY 倍长右循环 1 位 无 CY 右循环 1 位 无 CY 倍长右循环 1 位 3-70 左移 1 位 3-71 右移 1 位 3-72 N 位数据左移 3-73 N 位数据右移 3-74 N 位左移 N 位倍长左移 3-75 N 位右移 N 位倍长右移 助记符 SFT SFTR ASFT WSFT ASL ASLL ASR ASRL ROL ROLL RLNC RLNL ROR RORL RRNC RRNL SLD SRD NSFL NSFR NASL NSLL NASR NSRL FUN 编号 010 084 017 016 025 570 026 571 027 572 574 576 028 573 575 577 074 075 578 579 580 582 581 583 页码 3-150 3-151 3-151 3-151 3-151 3-151 3-151 3-151 3-151 3-151 3-151 3-151 3-151 3-151 3-151 3-151 3-149 数据移位指令 3-60 移位寄存器 SFT(010) 概要 数据内容 3-60 移位寄存器 SFT(010) 进行移位寄存器的动作。 3 各 符号 指 数据输入 令 说 移位信号输入 明 复位输入 D1:移位低位 CH 编号 D2:移位高位 CH 编号 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) 注:D1、D2 必须为同一区域种类。 DM 间接(BIN) DM 间接(BCD) 功能说明 常数 数据寄存器 移位信号输入上升(OFF→ON)时,从 D1 到 D2 均向 变址寄存器(直接) 左(最低位→最高位)移 1 位,在最低位中反映数据输 变址寄存器(间接) 入的 ON/OFF 内容。 D1 D2 0000~6143 W000~511 H000~511 A448~959 ― ― ― ― ― ― ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 删 除 注: 移位信号 上升 数据输入 ·删除溢出移位范围的位的内容。 ·复位输入为 ON 时,对从 D1 所指定的移位低位 CH 编号 到 D2 所指定的移位高位 CH 编号为止进行复位(=0)。 复位输入优先于其他输入。 状态标志的动作 名称 出错标志 标记符 ER 内容 ・D1、D2 为间接 IR 指定,地址位于 CIO、 AR、HR、WR 以外的区域时为 ON ・除此之外为 OFF 超过 16 位的移位寄存器示例 ·移位范围的设定基本上为 D1≦D2,即使指定为 D1>D2, 也不会出错,仅 D1 进行 1 个通道(字)的移位。 数据输入 数 ·D1、D2 在间接变址寄存器指定中,该 I/O 存储器有效地 据 移 位 址不为数据内容所指定的区域种类的地址时,将会发生 错误,ER 标志为 ON。 指 令 1 秒脉冲 移位信号输入 复位输入 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 SFT 使用 1000~1002 CH 的 48 位的移位寄存器。 无 如果在移位信号输入中使用时钟脉冲 1s,每 1 秒输入继 无 电器 0.05 的内容将移位到 1000.00~1002.15。 无 使用限制 清 除 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 使用 不可 可 可 可 的内容 3-150 数据移位指令 3-61 左右移位寄存器 SFTR(084) 概要 3-61 左右移寄存器 SFTR(084) 进行移位方向可以切换的移位寄存器动作。 符号 C:控制数据 D1:移位低位 CH 编号 D2:移位高位 CH 编号 执行条件/每次刷新指定 执行条件 ON 时每周期执行 SFTR 上升沿时 1 周期执行 @SFTR 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 操作数说明 数据内容 区域 C D1 D2 CIO ( 输 入 输 出 继 电 器 等) 0000~6143 移位方向设定继电器 0Hex:最高位→最低位 1Hex:最低位→最高位 数据输入继电器 移位信号输入继电器 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 A000~959 W000~511 H000~511 A448~959 T0000~4095 C0000~4095 复位输入继电器 数据内存(DM) D00000~32767 注:D1、D2 必须为同一区域种类。 DM 间接(BIN) DM 间接(BCD) @D00000~32767 *D00000~32767 功能说明 常数 ― 移位信号输入继电器(C 的位 14)为 ON 时,将从 D1 到 D2 向移位方向设定继电器(C 的位 12)所指定的方 向移 1 位,在最低位或最高位中反映数据输入继电器(C 数据寄存器 变址寄存器(直接) 变址寄存器(间接) DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 的位 13)的 ON/OFF 内容。溢出移位范围的位的内容反 DR0~15,IR0~15 映在进位标志(CY)中。 ,IR0~15+(++) ,-(--)IR0~15 数 据 移 移 状态标志的动作 数据 位 方 名称 标记符 内容 位 指 令 输入 向 设 出错标志 ER ·D1>D2 时为 ON 定 ·除此之外为 OFF 数据 进位标志 CY ·1 移位到进位(CY)标志时为 ON 输入 ·0 移位到进位(CY)标志时为 OFF 注: ·复位输入为 1 时为 OFF ·上述移位动作是复位输入继电器(C 的位 15)为 OFF 时。 ·复位输入继电器(C 的位 15)为 ON 时,从 D1 到 D2 全 部复位(=0)。 ·D1>D2 时,发生错误,ER 标志为 ON。 3-151 数据移位指令 左右移寄存器 SFTR(084) 动作说明 (例) 3 各 指 令 说 明 数 据 移 位 控制数据的内容与动作 指 令 3-152 数据移位指令 3-62 非同步移位寄存器 ASFT(017) 概要 执行条件/每次刷新指定 3-62 非同期移位寄存器 ASFT(017) 在指定 CH 范围的通道数据中,将 0000 Hex 以外的通道 向前对齐或向后对齐,替换与 0000 Hex 的通道数据之间 的位置。 符号 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ASFT @ASFT 3 无 各 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 C:控制数据 域 程序区域 程序区域 D1:移位低位 CH 编号 使用 可 可 可 可 D2:移位高位 CH 编号 数据内容 操作数说明 区域 C D1 D2 CIO ( 输 入 输 出 继 电 器 等) 0000~6143 内部辅助继电器 W000~511 保持继电器 H000~511 移位方向标志 特殊辅助继电器 A000~959 A448~959 0:下位 CH→上位 CH 1:上位 CH→下位 CH 移位执行标志 0:不移位 1:执行移位 清除标志 0:不清除 1:D1~D2 的内容全部清除 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 DR0~15 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― ― 变址寄存器(直接) ― 注:D1、D2 必须为同一区域种类。 变址寄存器(间接) ,IR0~15 功能说明 移位执行标志(C 的位 14)为 ON 时,为了在从 D1 到 D2 的通道数据范围中,将 0000 Hex 以外的数据对齐于 移位方向标志(C 的位 13)所指定的方向,每执行 1 次 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 数 据 移 位 指 指令,即替换 0000 Hex 以外的数据和近邻的 0000 Hex 的通道数据。 状态标志的动作 令 由此,可将从 D1 到 D2 范围内的数据分配到 0000 Hex 和 0000 Hex 以外的数据中。 名称 出错标志 标记符 ER 内容 ・D1>D2 时为 ON ・在背景处理指定时,与 PLC 系统设定的 「背景处理中使用的通信端口 No.」所 指定的通信端口 No.对应的网络通信指 令可以执行标志 OFF 时为 ON(仅 替换 移位方向 移位执行 清除 CP1H) ・除此之外为 OFF 替换 以外 3-153 数据移位指令 非同期移位寄存器 ASFT(017) 注: ・清除标志(C 的位 15)为 ON 时,用 0 清除从 D1 到 D2 3 的范围。清除标志优先于移位执行标志(C 的位 14)。 各 ・D1>D2 时,发生错误,ER 标志为 ON。 指 令 说 明 动作说明 (例) 数 据 移 位 指 令 3-154 数据移位指令 3-63 字移位 WSFT(016) 概要 使用限制 3-63 字移位 WSFT(016) 进行以字为単位的移位动作。 符号 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 3 使用 可 可 可 可 各 指 数据内容 令 S:移位数据 D1:移位低位 CH 编号 区域 S D1 D2 说 CIO ( 输 入 输 出 继 电 器 0000~6143 明 等) D2:移位高位 CH 编号 内部辅助继电器 W000~511 注:D1、D2 必须为同一区域种类。 保持继电器 特殊辅助继电器 A000~959 H000~511 A448~959 功能说明 时间 计数器 T0000~4095 C0000~4095 从 D1 到 D2,逐字移位到高位 CH,在最低位 CH(D1) 中输出 S 所指定的数据。此时,清除原来的最高位 CH (D2)的数据。 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 D00000~32767 @D00000~32767 *D00000~32767 #0000~FFFF ― (BIN 数据) 删 除 数据寄存器 DR0~15 ― 变址寄存器(直接) ― 注:D1>D2 时,发生错误,ER 标志为 ON。 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 请注意 对大量数据进行移位时,指令执行比较费时。因此,如 果本指令执行时发生电源断电,移位动作中途会出现执 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 行终止,请注意。 状态标志的动作 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 WSFT @WSFT 名称 出错标志 标记符 ER 内容 ・D1>D2 时为 ON ・除此之外为 OFF 数 据 移 位 下降沿时 1 周期执行 无 指 每次刷新指定 无 令 动作说明 (例) 3-155 数据移位指令 3-64 左移 1 位 ASL(025)/倍长左移 1 位 ASLL(570) 左移 1 位 ASL 执行条件/每次刷新指定 3-64 左移 1 位 ASL(025)/1 位倍长左移 ASLL(570) 3 概要 各 指 将 CH 数据向左移 1 位。 令 符号 说 明 D:移位 CH 编号 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ASL @ASL 无 无 ASLL @ASLL 无 无 使用限制(ASL/ASLL 共通) 区域 块程序区 域 工程步进 程序区域 子程序区域 中断任务 程序区域 使用 可 可 可 可 功能说明 将 D 向左(最低位→最高位)移 1 位。在最低位上设置 0。最高位移位到进位标志(CY)。 数据内容 区域 D ASL 指令 ASLL 指令 CIO(输入输出继电器等) 0000~6143 0000~6142 内部辅助继电器 W000~511 W000~510 保持继电器 H000~511 H000~510 特殊辅助继电器 A448~959 A448~958 注: 时间 计数器 T0000~4095 C0000~4095 T0000~4094 C0000~4094 ·指令执行时,将 ER 标志置于 OFF。 ·根据移位结果,D 的内容为 0000 Hex 时,=标志为 ON。 数据内存(DM) DM 间接(BIN) DM 间接(BCD) D00000~32767 D00000~32766 @D00000~32767 *D00000~32767 ·根据移位结果,D 的内容的最高位为 1 时,N 标志为 ON。 常数 - - 数据寄存器 DR0~15 - 变址寄存器(直接) - - 倍长左移 1 位 ASLL 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 数 据 概要 移 位 将 2 CH 的数据向左移 1 位。 指 令 符号 状态标志的动作 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 (ASL/ASLL 指令共通) D:移位低位 CH 编号 功能说明 将 D 作为倍长数据,向左(最低位→最高位)移 1 位。 在 DCH 的最低位上设置 0,D+1CH 的最高位移位至进 位标志(CY)。 注: 名称 出错标志 =标志 进位标志 N 标志 标记符 ER = CY N 内容 ・ OFF ・移位结果为 0 时为 ON ・除此之外为 OFF ・1 移位到进位(CY)标志时为 ON ・除此之外为 OFF ・根据移位结果,最高位变为 1 时为 ON ・除此之外为 OFF ·指令执行时,将 ER 标志置于 OFF。 ·根据移位结果,D+1、 D 的内容为 00000000 Hex 时,= 标志为 ON。 ·根据移位结果,D+1 的最高位为 1 时,N 标志为 ON。 3-156 动作说明 (例) 数据移位指令 左移 1 位 ASL(025)/1 位倍长左移 ASLL(570) 3 各 指 令 说 明 数 据 移 位 指 令 3-157 数据移位指令 3-65 右移 1 位 ASR(026)/倍长右移 1 位 ASRL(571) 右移 1 位 ASR 执行条件/每次刷新指定 3-65 1 位右移 ASR(026)/1 位倍长右移 ASRL(571) 3 概要 各 指 将 CH 数据向右移 1 位。 令 符号 说 明 D:移位 CH 编号 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ASR @ASR 无 无 ASRL @ASRL 无 无 使用限制(ASR/ASRL 指令共通) 区域 块程序区 域 工程步进 程序区域 子程序区域 中断任务 程序区域 使用 可 可 可 可 功能说明 将 D 向右(最高位→最低位)移 1 位。在最高位中设置 0。最低位移位至进位标志(CY)。 数据内容 区域 ASR 指令 D ASRL 指令 CIO(输入输出继电器等) 0000~6143 0000~6142 内部辅助继电器 W000~511 W000~510 保持继电器 H000~511 H000~510 特殊辅助继电器 A448~959 A448~958 时间 T0000~4095 T0000~4094 注: ·指令执行时,将 ER 标志及 N 标志置于 OFF。 计数器 数据内存(DM) DM 间接(BIN) C0000~4095 C0000~4094 D00000~32767 D00000~32766 @D00000~32767 ·根据移位结果,D 的内容为 0000 Hex 时,=标志为 ON。 DM 间接(BCD) 常数 *D00000~32767 - - 数据寄存器 DR0~15 - 倍长右移 1 位 ASRL 变址寄存器(直接) 变址寄存器(间接) - - ,IR0~15 数 概要 据 移 将 2CH 的数据右移 1 位。 位 指 符号 令 状态标志的动作 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 D:移位低位 CH 编号 功能说明 将 D 作为倍长数据,向右(最高位→最低位)移 1 位。 在 D +1 CH 的最高位中设置 0,D CH 的最低位移位到进 位标志(CY)。 (ASR/ASRL 指令共通) 名称 出错标志 =标志 进位 标志 N 标志 标记符 ER = CY N 内容 ・ OFF ・移位结果为 0 时为 ON 除此之外为 OFF ・1 移位到进位(CY)标志时为 ON 除此之外为 OFF OFF 注: ·指令执行时,将 ER 标志及 N 标志置于 OFF。 ·根据移位结果,D+1,D 的内容位 00000000 Hex 时,=标 志为 ON。 3-158 动作说明 (例) 数据移位指令 1 位右移 ASR(026)/1 位倍长右移 ASRL(571) 3 各 指 令 说 明 数 据 移 位 指 令 3-159 数据移位指令 3-66 带 CY 左循环 1 位 ROL(027)/带 CY 倍长左循环 1 位 ROLL(572) 带 CY 左循环 1 位 ROL 3-66 带 CY 左循环 1 位 ROL(027)/带 CY1 位倍长左循环 ROLL(572) ·根据移位结果,D+1,D 的内容位 00000000 Hex 时,=标 志为 ON。 3 概要 ·根据移位结果,D+1 的内容的最高位为 1 时,N 标志为 各 指 令 对 16 位的通道数据包括进位(CY)标志在内进行左循 环移位。 ON。 参考 说 符号 明 在本指令之前使用设置进位(STC)、清除进位(CLC)指 令,可以将进位(CY)标志的内容设置为 1、0。 D:移位 CH 编号 功能说明 对 D 包括进位(CY)标志在内向左(最低位→最高位) 循环 1 位。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ROL @ROL 无 无 使用限制(ROL/ROLL 指令共通) ROLL @ROLL 无 无 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 注: 数据内容 ·指令执行时,将 ER 标志置于 OFF。 区域 D ·根据移位结果,D 的内容为 0000 Hex 时,=标志为 ON。 ·根据移位结果,D 的内容的最高位为 1 时,N 标志为 ON。 CIO(输入输出继电器等) 内部辅助继电器 ROL 指令 0000~6143 W000~511 ROLL 指令 0000~6142 W000~510 参考 保持继电器 特殊辅助继电器 在本指令之前使用设置进位(STC)、清除进位(CLC)指 时间 数 令,可以将进位(CY)标志的内容设置为 1、0。 据 移 位 计数器 数据内存(DM) DM 间接(BIN) 指 令 带 CY 倍长左循环 1 位 ROLL DM 间接(BCD) 常数 H000~511 H000~510 A448~959 A448~958 T0000~4095 T0000~4094 C0000~4095 C0000~4094 D00000~32767 D00000~32766 @D00000~32767 *D00000~32767 - ― 概要 数据寄存器 DR0~15 ― 变址寄存器(直接) - ― 对 32 位的通道数据包括进位(CY)标志在内进行左循 环移位 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 符号 ,IR0~15+(++) ,-(--)IR0~15 D:移位低位 CH 编号 功能说明 将 D 作为倍长数据,包括进位(CY)标志在内向左(最 低位→最高位)循环 1 位。 注: ·指令执行时,将 ER 标志置于 OFF。 状态标志的动作 (ROL/ROLL 指令共通) 名称 出错标志 =标志 进位 标志 N 标志 标记符 ER = CY N 内容 OFF ·移位结果为 0 时为 ON ·除此之外为 OFF ·将 1 移位至进位(CY)标志时为 ON ·除此之外为 OFF ·根据移位结果,最高位转为 1 时为 ON ·除此之外为 OFF 3-160 动作说明 (例) 数据移位指令 带 CY 左循环 1 位 ROL(027)/带 CY1 位倍长左循环 ROLL(572) 3 各 指 令 说 明 数 据 移 位 指 令 3-161 数据移位指令 3-67 无 CY 左循环 1 位 RLNC(574)/无 CY 倍长左循环 1 位 RLNL(576) 无 CY 左循环 1 位 RLNC 执行条件/每次刷新指定 3-67 无 CY 左循环 1 位 RLNC(574)/无 CY1 位倍长左循环 RLNL(576) 3 概要 各 指 令 对 16 位的通道数据不包括进位(CY)标志在内进行左 循环移位。 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 RLNC @RLNC 无 无 RLNL @RLNL 无 无 说 符号 明 使用限制(RLNC/RLNL 指令共通) 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 D:移位 CH 编号 使用 可 可 可 可 功能说明 数据内容 将 D 向左(最低位→最高位)循环 1 位。D 的最高位的 数据移位到最低位,同时输出到 CY 标志。 区域 CIO(输入输出继电器等) D RLNC 指令 0000~6143 RLNL 指令 0000~6142 内部辅助继电器 W000~511 W000~510 保持继电器 H000~511 H000~510 特殊辅助继电器 A448~959 A448~958 时间 T0000~4095 T0000~4094 计数器 C0000~4095 C0000~4094 注: 数据内存(DM) D00000~32767 D00000~32766 ·指令执行时,将 ER 标志置于 OFF。 ·根据移位结果,D 的内容为 0000 Hex 时,=标志为 ON。 DM 间接(BIN) DM 间接(BCD) 常数 @D00000~32767 *D00000~32767 - ― ·根据移位结果,D 的内容的最高位为 1 时,N 标志为 ON。 数据寄存器 DR0~15 ― 变址寄存器(直接) - ― 变址寄存器(间接) ,IR0~15 数 无 CY 倍长左循环 1 位 RLNL 据 移 概要 位 指 对 32 位的通道数据不包括进位(CY)标志在内进行左 令 循环移位。 状态标志的动作 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 符号 D:移位低位 CH 编号 功能说明 将 D 作为倍长数据,全部向左(最低位→最高位)移 1 位。 D+1 的最高位数据移位到 D 的最低位,同时输出 到 CY 标志。 (RLNC/RLNL 指令共通) 名称 出错标志 =标志 进位 标志 N 标志 标记符 ER = CY N 内容 OFF ・移位结果为 0 时为 ON ・除此之外为 OFF ・1 移位到进位(CY)标志时为 ON ・除此之外为 OFF ・根据移位结果,最高位变为 1 时为 ON ・除此之外为 OFF 注: ·指令执行时,将 ER 标志置于 OFF。 ·根据移位结果,D+1,D 的内容位 00000000 Hex 时,=标 志为 ON。 ·根据移位结果,D+1 的内容的最高位为 1 时,N 标志为 ON。 3-162 数据移位指令 无 CY 左循环 1 位 RLNC(574)/无 CY1 位倍长左循环 RLNL(576) 动作说明 (例) 3 各 指 令 说 0.00 为 ON 时,将 1000CH 不包含 CY 标志向左循环 1 位。 0.01 为 ON 时,将 1101,1100CH 不包含 CY 标志向左循环 1 明 1000.15 的内容设置在 1000.00 中。 位。 1101.15 的内容设置在 1100.00 中。 数 据 移 位 指 令 3-163 数据移位指令 3-68 带 CY 右循环 1 位 ROR(028)/带 CY 倍长右循环 1 位 RORL (573) 带 CY 右循环 1 位 ROR ·根据移位结果,D+1,D 的内容位 00000000 Hex 时,=标 志为 ON。 3-68 带 CY 右循环 1 位 ROR(028)/带 CY 倍长右循环 1 位 RORL (573) 3 各 指 令 概要 对 16 位的通道数据包括进位(CY)标志在内进行右循 环移位。 ·根据移位结果,D+1 的内容的最高位为 1 时,N 标志为 ON。 参考 说 符号 明 在本指令之前使用设置进位(STC)、清除进位(CLC)指 令,可以将进位(CY)标志的内容设置为 1、0。 D:移位低位 CH 编号 功能说明 将 D 包括进位(CY)标志在内向右(最高位→最低位) 循环 1 位。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ROR @ROR 无 无 使用限制(ROR/RORL 指令共通) RORL @RORL 无 无 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 注: 数据内容 ·指令执行时,将 ER 标志置于 OFF。 区域 D ·根据移位结果,D 的内容为 0000 Hex 时,=标志为 ON。 ROR 指令 RORL 指令 ·根据移位结果,D 的内容的最高位为 1 时,N 标志为 ON。 CIO(输入输出继电器等) 内部辅助继电器 0000~6143 W000~511 0000~6142 W000~510 参考 保持继电器 特殊辅助继电器 在本指令之前使用设置进位(STC)、清除进位(CLC)指 时间 数 令,可以将进位(CY)标志的内容设置为 1、0。 据 移 计数器 数据内存(DM) 位 DM 间接(BIN) H000~511 H000~510 A448~959 A448~958 T0000~4095 T0000~4094 C0000~4095 C0000~4094 D00000~32767 D00000~32766 @D00000~32767 指 令 带 CY 倍长右循环 1 位 RORL DM 间接(BCD) 常数 *D00000~32767 - ― 概要 数据寄存器 变址寄存器(直接) DR0~15 ― - ― 对 32 位的通道数据包括进位(CY)标志在内进行右循 变址寄存器(间接) ,IR0~15 环移位。 -2048~+2047,IR0~15 DR0~15,IR0~15 符号 ,IR0~15+(++) ,-(--)IR0~15 D:移位低位 CH 编号 功能说明 将 D 作为倍长数据,包括进位(CY)标志在内向右(最 高位→最低位)循环 1 位。 注: ·指令执行时,将 ER 标志置于 OFF。 状态标志的动作 (ROR/RORL 指令共通) 名称 出错标志 =标志 进位 标志 N 标志 标记符 ER = CY N 内容 OFF ・移位结果为 0 时为 ON ・除此之外为 OFF ・1 移位到进位(CY)标志时为 ON ・除此之外为 OFF ・根据移位结果,最高位变为 1 时为 ON ・除此之外为 OFF 3-164 动作说明 (例) 数据移位指令 带 CY 右循环 1 位 ROR(028)/带 CY 倍长右循环 1 位 RORL (573) 3 各 指 令 说 明 数 据 移 位 指 令 3-165 数据移位指令 3-69 无 CY 右循环 1 位 RRNC(575)/无 CY 倍长右循环 1 位 RRNL(577) 无 CY 右循环 1 位 RRNC 3-69 无 CY 右循环 1 位 RRNC (575)/无 CY 倍长右循环 1 位 RRNL(577) 注: ·指令执行时,将 ER 标志置于 OFF。 3 概要 ·根据移位结果,D+1,D 的内容位 00000000 Hex 时,=标 各 指 令 说 对 16 位的通道数据不包括进位(CY)标志在内进行右 循环移位。 D 的最低位数据移位到最高位,同时也输出 到 CY 标志。 志为 ON。 ·根据移位结果,D+1 的内容的最高位为 1 时,N 标志为 ON。 明 符号 执行条件/每次刷新指定 D:移位 CH 编号 功能说明 将 D 向右(最高位→最低位)循环 1 位。(不包括进位 (CY)标志) 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 RRNC @RRNC 无 无 RRNL @RRNL 无 无 使用限制(RRNC/RRNL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 注: 区域 D ·指令执行时,将 ER 标志置于 OFF。 CIO(输入输出继电器等) RRNC 指令 0000~6143 RRNL 指令 0000~6142 ·根据移位结果,D 的内容为 0000 Hex 时,=标志为 ON。 内部辅助继电器 W000~511 W000~510 ·根据移位结果,D 的内容的最高位为 1 时,N 标志为 ON。 保持继电器 特殊辅助继电器 H000~511 A448~959 H000~510 A448~958 时间 T0000~4095 T0000~4094 数 据 无 CY 倍长右循环 1 位 RRNL 计数器 数据内存(DM) C0000~4095 D00000~32767 C0000~4094 D00000~32766 移 DM 间接(BIN) 位 概要 DM 间接(BCD) 指 令 对 32 位的通道数据不包括进位(CY)标志在内进行右 循环移位。 D 的最低位数据移位到 D+1 的最高位,同 时也输出到 CY 标志。 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) @D00000~32767 *D00000~32767 - ― DR0~15 ― - ― ,IR0~15 符号 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 D:移位低位 CH 编号 功能说明 将 D 作为倍长数据,全部向右(最高位→最低位)移 1 位。(不包括进位(CY)标志) 状态标志的动作 (RRNC/RRNL 指令共通) 名称 出错标志 =标志 进位 标志 N 标志 标记符 ER = CY N 内容 OFF ・移位结果为 0 时为 ON ・除此之外为 OFF ・1 移位到进位(CY)标志时为 ON ・除此之外为 OFF ・根据移位结果,最高位变为 1 时为 ON ・除此之外为 OFF 3-166 数据移位指令 无 CY 右循环 1 位 RRNC (575)/无 CY 倍长右循环 1 位 RRNL(577) 动作说明 (例) 3 各 指 令 说 明 数 据 移 位 指 令 3-167 数据移位指令 3-70 左移 1 位 SLD (074) 概要 3-70 左移 1 位 SLD (074) 进行以 1 数字(4 位)为单位的左移动作。 3 各 指 符号 令 说 明 D1:移位低位 CH 编号 D2:移位高位 CH 编号 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 SLD @SLD 无 无 中断任务 程序区域 可 注:D1、D2 必须为同一区域种类。 功能说明 将从 D1 到 D2 的范围以数字(4 位)为单位向高位位侧 移位。此时,最低位数字(D1 的位 3-0)中输入 0,原 来的最高位数字(D2 的位 15-12)数据被清除。 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 D1 D2 0000~6143 W000~511 H000~511 A448~959 时间 T0000~4095 注: ·D1>D2 时,发生错误,ER 标志为 ON。 请注意 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 对大量数据进行移位时,指令执行比较费时。因此,如 常数 果在本指令执行时发生电源断电,移位动作会在中途终 数据寄存器 止执行,请注意。 变址寄存器(直接) 变址寄存器(间接) 数 据 移 位 指 令 状态标志的动作 ― ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 名称 出错标志 标记符 ER 内容 ・D1>D2 时为 ON ・除此之外为 OFF 动作说明 (例) 清 除 3-168 数据移位指令 3-71 右移 1 位 SRD(075) 概要 3-71 1 位右移 SRD(075) 进行以 1 位数字(4 位)为单位的右移动作。 符号 D1:移位低位 CH 编号 D2:移位高位 CH 编号 注:D1、D2 必须为同一区域种类。 执行条件/每次刷新指定 执行条件 ON 时每周期执行 SRD 上升沿时 1 周期执行 @SRD 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 功能说明 数据内容 将从 D1 到 D2 的范围以位(4 位)为单位向低位位侧进 区域 D1 D2 行移位。此时,在最高位(D2 的位 15-12)中输入 0, 原来的最低位(D1 的位 3-0)数据被清除。 注:D1>D2 时,发生错误,ER 标志为 ON。 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 0000~6143 W000~511 H000~511 A448~959 请注意 时间 T0000~4095 对大量数据进行移位时,指令执行比较费时。因此,如 果在本指令执行时发生电源断电,移位动作会在中途终 止执行,请注意。 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 常数 ― 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 数 ,IR0~15+(++) 据 ,-(--)IR0~15 移 位 状态标志的动作 指 令 名称 标记符 内容 出错标志 ER ・D1>D2 时为 ON ・除此之外为 OFF 动作说明 (例) 3-169 数据移位指令 3-72 N 位数据左移 NSFL(578) 概要 3-72 N 位数据左移 NSFL(578) 将指定位数的位数据向左移 1 位。 3 各 符号 指 令 说 D:移位低位 CH 编号 明 C:移位开始位 N:移位数据长 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 NSFL @NSFL 无 无 中断任务 程序区域 可 操作数说明 数据内容 C:0000~000F Hex 或 10 进制&0~15 区域 D C N N:0000~FFFF Hex 或 10 进制&0~65535 CIO(输入输出继电器 等) 0000~6143 注:D~D+最大 65535 CH 的移位対象必须为同一区域种类。 内部辅助继电器 W000~511 功能说明 保持继电器 特殊辅助继电器 A448~959 H000~511 A000~447 将从 D 所指定的移位低位 CH 的移位开始位(C)开始 的移位数据长(N)的位数据全部向左(高位 CH、高位 位侧)移 1 位。此时,在移位开始位中输入 0,移位范 围的最高位内容移位到进位标志(CY)。 时间 计数器 数据内存(DM) DM 间接(BIN) A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 DM 间接(BCD) *D00000~32767 注: 常数 ― #0000~000F #0000~FFFF ・移位数据长(N)为 0 时,将移位开始位的数据复制到进 (BIN 数据) (BIN 数据) 或 或 位标志(CY)。移位开始位的数据内容不发生変化。 &0~15 &0~65535 数 据 移 ・移位范围的最低位 CH 以及最高位 CH 的数据在移位対象 位以外不发生变化。 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 位 指 令 ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 N-1 位 左移 1 位 N-1 位 状态标志的动作 名称 出错标志 标记符 ER 进位 CY 标志 内容 ・C 的数据不在 0000 Hex~000F Hex 的范 围内时为 ON ・除此之外为 OFF ・1 移位到进位(CY)标志时为 ON ・除此之外为 OFF 3-170 动作说明 (例) 数据移位指令 N 位数据左移 NSFL(578) 3 各 指 令 说 明 数 据 移 位 指 令 3-171 数据移位指令 3-73 N 位数据右移 NSFR(579) 概要 3-73 N 位数据右移 NSFR(579) 将指定位数的位数据右移 1 位。 3 各 符号 指 令 说 D:移位低位 CH 编号 明 C:移位开始位 N:移位数据长 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 NSFR @NSFR 无 无 中断任务 程序区域 可 操作数说明 数据内容 C:0000~000F Hex 或 10 进制&0~15 区域 D C N N:0000~FFFF Hex 或 10 进制&0~65535 CIO(输入输出继电器 等) 0000~6143 注:D~D+最大 65535 CH 的移位対象必须为同一区域种类。 内部辅助继电器 W000~511 功能说明 保持继电器 特殊辅助继电器 A448~959 H000~511 A000~959 将从 D 所指定的移位低位 CH 的移位开始位(C)开始 的移位数据长(N)的位数据全部右移(低位 CH、低位 位侧)1 位。此时,在移位开始位中输入 0,移位范围的 最低位内容移位到进位标志(CY)。 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 常数 ― #0000~000F #0000~FFFF (BIN 数据)或 (BIN 数据)或 &0~15 &0~65535 数据寄存器 ― DR0~15 数 据 移 位 指 令 注: N-1 位 右移 1 位 N-1 位 变址寄存器(直接) 变址寄存器(间接) ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 ・移位数据长(N)为 0 时,将移位开始位的数据复制到进 位标志(CY)。移位开始位的数据内容不发生変化。 ・移位范围的最低位 CH 以及最高位 CH 的数据在移位対象 位以外不发生变化。 状态标志的动作 名称 出错标志 标记符 ER 进位 CY 标志 内容 ・C 的数据不在 0000 Hex~000F Hex 的范 围内时为 ON ・除此之外为 OFF ・1 移位到进位(CY)标志时为 ON ・除此之外为 OFF 3-172 动作说明 (例) 数据移位指令 N 位数据右移 NSFR(579) 3 各 指 令 说 明 数 据 移 位 指 令 3-173 数据移位指令 3-74 N 位左移 NASL(580)/N 位倍长左移 NSLL(582) N 位左移 NASL 3-74 N 位左移 NASL(580)/N 位倍长左移 NSLL(582) 3 概要 各 指 将 16 位的通道数据左移指定位数。 令 符号 说 明 D:移位源字 C:控制字 操作数说明 N 位倍长左移 NSLL 概要 将 32 位的通道数据左移指定位数。 符号 操作数说明 D:移位首字 C:控制字 0Hex 固定 移位位数:00~10Hex 0Hex 固定 移位位数:00~20Hex 空位插入数据 0Hex:插入 0 8Hex:插入最低位的内容 空位插入数据 0Hex:插入 0 8Hex:插入最低位的内容 功能说明 功能说明 将 D 向左(最低位→最高位)移 C 所指定的位数(BIN)。 此时,在从指定 CH 的最低位开始到移位位数的位中输 入依据空位插入数据(C)的数据。 将 D 作为倍长数据,全部向左(最低位→最高位)移 C 所指定的位数(BIN)。此时,在从指定 CH 的最低位 开始到移位位数的位中输入依据空位插入数据(C)的 数据。 数 据 移 N 位移位 N 位移位 位 指 令 插入该内 插入 a 的内容或 0 清除 容或 0 清除 N位 注: ·对于从指定 CH 中溢出的位,将最后位的内容移位到进位 标志(CY),除此之外加以清除。 ·移位位数(C)为 0 时,不进行移位动作。但是,根据指 定通道的数据,对各标志进行 ON/OFF。 ·控制数据 C 的内容位于范围外时,发生错误,ER 标志为 ON。 ·根据移位结果,D 的内容为 0000 Hex 时,=标志为 ON。 ·根据移位结果,D 的内容的最高位为 1 时,N 标志为 ON。 N位 注: ·对于从指定 CH 中溢出的位,将最后位的内容移位到进位 标志(CY),除此之外加以清除。 ·移位位数(C)为 0 时,不进行移位动作。但是,根据指 定通道的数据,对各标志进行 ON/OFF。 ·控制数据 C 的内容位于范围外时,发生错误,ER 标志为 ON。 ·根据移位结果,D+1、D 的内容为 00000000 Hex 时,= 标志为 ON。 ·根据移位结果,D+1 的内容的最高位为 1 时,N 标志为 ON。 3-174 数据移位指令 N 位左移 NASL(580)/N 位倍长左移 NSLL(582) 执行条件/每次刷新指定 N 位左移 NASL 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 NASL @NASL 无 无 使用限制(NASL/NSLL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 NSLL @NSLL 无 无 中断任务 程序区域 可 状态标志的动作 3 名称 标记符 内容 各 出错标志 ER ・控制数据 C(移位位数)在范围外时为 ON 指 ・除此之外为 OFF 令 =标志 = ・移位结果为 0 时为 ON 说 除此之外为 OFF 明 进位 标志 CY ・1 移位到进位(CY)标志时为 ON 除此之外为 OFF N 标志 N ・根据移位结果,最高位变为 1 时为 ON 数据内容 ·NASL 指令 ・除此之外为 OFF N 位倍长左移 NSLL 区域 D C 状态标志的动作 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 0000~6143 W000~511 H000~511 A448~959 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― 参见操作数说明 名称 出错标志 =标志 进位 标志 N 标志 标记符 ER = CY N 内容 ・控制数据(移位位数)在范围外时为 ON ・除此之外为 OFF ・移位结果为 0 时为 ON ・除此之外为 OFF ・1 移位到进位(CY)标志时为 ON ・除此之外为 OFF ・根据移位结果,最高位变为 1 时为 ON ・除此之外为 OFF 数据寄存器 DR0~15 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 数 据 移 ·NSLL 指令 位 指 区域 D C 令 CIO(输入输出继电器等) 0000~6142 0000~6143 内部辅助继电器 W000~510 W000~511 保持继电器 H000~510 H000~511 特殊辅助继电器 A448~958 A000~959 时间 T0000~4094 T0000~4095 计数器 C0000~4094 C0000~4095 数据内存(DM) D00000~32766 D00000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 ― 参见操作数说明 数据寄存器 ― DR0~15 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-175 数据移位指令 N 位左移 NASL(580)/N 位倍长左移 NSLL(582) 动作说明 (例) 3 各 指 令 说 明 数 据 (例) 移 位 指 令 3-176 数据移位指令 3-75 N 位右移 NASR(581)/N 位倍长右移 NSRL(583) N 位右移 NASR N 位倍长右移 NSRL 3-75 N 位右移 NASR(581)/N 位倍长右移 NSRL(583) 概要 概要 3 将 16 位的通道数据右移指定位数。 将 32 位的通道数据右移指定位数。 各 指 符号 符号 令 说 明 D:移位源字 C:控制字 D:移位首字 C:控制字 操作数说明 操作数说明 0Hex 固定 空位插入数据 0Hex:插入 0 8Hex:插入最高位的内容 移位位数:00~10Hex 0Hex 固定 空位插入数据 0Hex:插入 0 8Hex:插入最高位的内容 移位位数:00~20Hex 功能说明 功能说明 将 D 全部向右(最高位→最低位)移 C 所指定的位数 (BIN)。此时,从指定 CH 的最高位开始到移位位数 的位中输入依据空位插入数据(C)的数据。 将 D 作为倍长数据,全部向右(最高位→最低位)移 C 所指定的位数(BIN)。此时,从指定 CH 的最高位开 始到移位位数的位中输入依据空位插入数据(C)的数 据。 插入该内容或 0 清除 N位 注: ·对于从指定 CH 中溢出的位,将最后位的内容移位到进位 标志(CY),除此之外加以清除。 插入该内 容或 0 N位 注: 数 据 N 位移位 移 位 指 令 清除 ·移位位数(C)为 0 时,不进行移位动作。但是,根据指 定通道的数据,对各标志进行 ON/OFF。 ·对于从指定 CH 中溢出的位,将最后位的内容移位到进位 标志(CY),除此之外加以清除。 ·控制数据 C 的内容位于范围外时,发生错误,ER 标志为 ON。 ·移位位数(C)为 0 时,不进行移位动作。但是,根据指 定通道的数据,对各标志进行 ON/OFF。 ·根据移位结果,D 的内容为 0000 Hex 时,=标志为 ON。 ·根据移位结果,D 的内容的最高位为 1 时,N 标志为 ON。 ·控制数据 C 的内容位于范围外时,发生错误,ER 标志为 ON。 ·根据移位结果,D+1、D 的内容为 00000000 Hex 时,= 标志为 ON。 ·根据移位结果,D+1 的内容的最高位为 1 时,N 标志为 ON。 3-177 数据移位指令 N 位右移 NASR(581)/N 位倍长右移 NSRL(583) 执行条件/每次刷新指定 3 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 NASR @NASR NSRL @NSRL 各 下降沿时 1 周期执行 无 无 指 每次刷新指定 无 无 令 说 使用限制(NASR/NSRL 指令共通) 明 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 使用 可 可 可 可 数据内容 ·NASR 指令 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 数 据 移 位 指 令 D C 0000~6143 W000~511 H000~511 A448~959 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― 参见操作数说明 DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 ·NSRL 指令 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) D C 0000~6142 W000~510 H000~510 A448~958 0000~6143 W000~511 H000~511 A000~959 T0000~4094 C0000~4094 D00000~32766 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― 参见操作数说明 ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 (NASR/NSRL 指令共通) 名称 出错 标志 =标志 进位 标志 N 标志 标记符 ER = CY N 内容 ・控制数据(移位位数)在范围外时为 ON ・除此之外为 OFF ・移位结果为 0 时为 ON ・除此之外为 OFF ・1 移位到进位(CY)标志时为 ON ・除此之外为 OFF ・根据移位结果,最高位变为 1 时为 ON ・除此之外为 OFF 3-178 动作说明 (例) 数据移位指令 N 位右移 NASR(581)/N 位倍长右移 NSRL(583) 3 各 指 令 说 明 数 据 移 位 指 令 3-179 数据移位指令 3 各 指 令 说 明 数 据 移 位 指 令 3-180 自加/自减指令 项目号 3-76 3-77 3-78 3-79 指令语句 BIN 增量 BIN 倍长增量 BIN 减量 BIN 倍长减量 BCD 增量 BCD 倍长增量 BCD 减量 BCD 倍长减量 助记符 ++ ++L -- --L ++B ++BL --B --BL FUN 编号 590 591 592 593 594 595 596 597 页码 3-182 3-184 3-186 3-188 3-181 自加/自减指令 3-76 BIN 增量 ++(590)/BIN 倍长增量 ++L(591) BIN 增量 ++ 3-76 BIN 增量 ++(590)/BIN 倍长增量 ++L(591) 3 概要 各 指 在 16 进制 4 位的 1 CH 数据上加 1。 令 符号 说 明 D:源字 ·增量的结果, D+1、D 的内容中有进位时,CY 标志为 ON。 例如,D+1、D 的内容为“FFFFFFFF”时+1 后,结果转成 “00000000”。此时=标志及 CY 标志为 ON。 ·增量的结果,D+1、D 的内容的最高位位为 1(BIN 运算 时为负)时 N 标志为 ON。 执行条件/每次刷新指定 功能说明 对 D 所指定的数据进行 BIN 运算(+1)。 ++时,输入条件为 ON 的过程中(直至 OFF),每周期 加 1。 @++时,仅在输入条件上升时(仅限1周期)加 1。 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ++ @++ 无 无 使用限制(++/++L 指令共通) 区域 块程序区 工程步进 子程序区域 ++L @++L 无 无 中断任务 域 程序区域 程序区域 使用 可 可 可 可 注: ·增量的结果,D 的内容为 0000 Hex 时,=标志为 ON。 数据内容 ·增量的结果,D 的内容中有进位时,CY 标志为 ON。 例如,D 的内容为“FFFF”时+1 后,结果转成“0000”。此 时=标志及 CY 标志为 ON。 区域 CIO(输入输出继电器等) 内部辅助继电器 ++指令 D ++L 指令 0000~6143 0000~6143 W000~511 W000~510 ·增量的结果,D 的内容的最高位位为 1(BIN 运算时为负) 时 N 标志为 ON。 保持继电器 特殊辅助继电器 时间 H000~511 A448~959 T0000~4095 H000~510 A448~958 T0000~4094 计数器 C0000~4095 T0000~4094 数据内存(DM) D00000~32767 D00000~32766 自 加 BIN 倍长增量 ++L DM 间接(BIN) DM 间接(BCD) @D00000~32767 *D00000~32767 @D00000~32767 *D00000~32767 自 减 / 概要 指 令 在 16 进制 8 位的 2 CH 数据中加 1。 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) - - DR0~15 - - - ,IR0~15 符号 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) D:数据低位 CH 编号 , - (--)IR0~15 状态标志的动作(++/++L 指令共通) 功能说明 名称 标记符 内容 将 D 所指定的数据作为倍长数据,进行 BIN 运算(+1)。 ++L 时,输入条件为 ON 的过程中(直至 OFF),每周 期加 1。 @++L 时,仅在输入条件上升时(仅限1周期)加 1。 出错标志 =标志 进位标志 N 标志 ER OFF = ・运算结果为 0 时为 ON ・除此之外为 OFF CY ・加法运算的结果,有进位时为 ON ・除此之外为 OFF N ・结果的最高位为 1 时为 ON ・除此之外为 OFF 注: ·增量的结果,D+1、D 的内容为 00000000 Hex 时,=标 志为 ON。 3-182 动作说明 (例) ++、++L 指令时 自加/自减指令 BIN 增量 ++(590)/BIN 倍长增量 ++L(591) 3 各 指 令 说 明 自 加 自 减 指 令 / 3-183 自加/自减指令 3-77 BIN 减量 --(592)/BIN 倍长减量 --L(593) BIN 减量 -- 3-77 BIN 减量 --(592)/BIN 倍长减量 --L(593) 3 概要 各 指 从 16 进制 4 位的 1 CH 数据中减1。 令 符号 说 明 D:源字 功能说明 对 D 所指定的数据进行 BIN 运算(-1)。 ・减量的结果,D+1、D 的内容中有借位时,CY 标志为 ON。 例如,D+1、D 的数据内容为“00000000”时-1,转成 “FFFFFFFF”。此时 CY 标志及 N 标志为 ON。 ・减量的结果,D+1、D 的内容的最高位位为 1(进行 BIN 运算时为负)时 N 标志为 ON。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 -- 上升沿1周 期执行 无 -- @--L 无 --时,输入条件为 ON 的过程中(直至 OFF),每周 期减 1。@--时,仅在输入条件上升时(仅限1周期) 减 1。 每次刷新指定 无 使用限制(- -/- -L 指令共通) 区域 块程序区 工程步进 子程序区域 无 中断任务 域 程序区域 程序区域 注: 使用 可 可 可 可 ·减量的结果,D 的内容为 0000 Hex 时,=标志为 ON。 数据内容 ·减量的结果,D 的内容中有借位时,CY 标志为 ON。 例如,D 的内容为“0000”时-1,转成“FFFF”。此时 CY 标志及 N 标志为 ON。 ·减量的结果,D 的内容的最高位位为 1(BIN 运算时为负) 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 D ―― 0000~6143 W000~511 H000~511 ?疞 0000~6142 W000~510 H000~510 时 N 标志为 ON。 特殊辅助继电器 A448~959 A448~958 时间 T0000~4095 T0000~4094 计数器 C0000~4095 C0000~4094 自 加 BIN 倍长减量 --L 自 减 / 概要 指 从 16 进制 8 位的 2 CH 数据中减 1。 令 符号 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) D00000~32767 @D00000~32767 *D00000~32767 D00000~32766 @D00000~32767 *D00000~32767 - - DR0~15 - - - ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) D:数据低位 CH 编号 , - (--)IR0~15 功能说明 将 D 所指定的数据作为倍长数据,进行 BIN 运算(-1)。 --L 时,输入条件为 ON 的过程中(直至 OFF),每 周期减 1。 @--L 时,仅在输入条件上升时(仅限1周期)减 1。 注: ·减量的结果,D+1、D 的内容为 00000000 Hex 时,=标 志为 ON。 状态标志的动作 (- -/- -L 指令共通) 名称 出错标志 =标志 进位标志 N 标志 标记符 ER = CY N 内容 OFF ・运算结果为 0 时为 ON ・除此之外为 OFF ・减法运算的结果,有借位时为 ON ・除此之外为 OFF ・结果的最高位为 1 时为 ON ・除此之外为 OFF 3-184 动作说明 (例) --、--L 指令时 自加/自减指令 BIN 减量 --(592)/BIN 倍长减量 --L(593) 3 各 指 令 说 明 @--、@--L 指令时 自 加 自 减 指 令 / 3-185 自加/自减指令 3-78 BCD 增量 ++B(594)/ BCD 倍长增量 ++BL(595) BCD 增量 ++B 3-78 BCD 增量 ++B(594)/ BCD 倍长增量 ++BL(595) 3 概要 各 指 在 BCD4 位的 1CH 数据上加 1。 令 符号 说 明 D:数据源字 注: ·D+1、D 的数据内容必须设定 BCD 数据。如果不是 BCD, 会发生错误,ER 标志为 ON。 ·增量的结果,D+1、D 的内容为 00000000 Hex 时,=标 志为 ON。 ·增量的结果, D+1、D 的内容中有进位时,CY 标志为 ON。 例如,D+1、D 的数据内容为“99999999”时+1,加法运算 结果转成“00000000”。此时=标志及 CY 标志为 ON。 功能说明 对 D 所指定的数据进行 BCD 运算(+1)。 ++B 时,输入条件为 ON 的过程中(直至 OFF)每周期 加 1。 @++B 时,仅在输入条件上升时(仅限 1 周期)加 1。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ++B @++B 无 无 ++BL @++BL 无 无 注: ·D 的数据内容必须设定 BCD 数据。如果不是 BCD,会发 生错误,ER 标志为 ON。 使用限制(++B/++BL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 ·增量的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ·增量的结果,D 的内容中有进位时,CY 标志为 ON。 例如,D 的数据内容为“9999”时+1,加法运算结果转成 “0000”。此时=标志及 CY 标志为 ON。 数据内容 区域 CIO(输入输出继电器等) D ++B ++BL 0000~6143 0000~6142 内部辅助继电器 W000~511 W000~510 保持继电器 H000~511 H000~510 自 加 BCD 倍长增量 ++BL 自 减 / 概要 指 在 BCD8 位的 2CH 数据上加 1。 令 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 符号 常数 - - 数据寄存器 DR0~15 - 变址寄存器(直接) - - D:数据低位 CH 编号 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 功能说明 DR0~15,IR0~15 ,IR0~15+(++) 将 D 所指定的数据作为倍长数据进行 BCD 运算(+1)。 , - (--)IR0~15 ++BL 时,输入条件为 ON 的过程中(直至 OFF)每周 期加 1。 状态标志的动作 @++BL 时,仅在输入条件上升时(仅限 1 周期)加 1。 (++B/++BL 指令共通) 名称 出错标志 =标志 进位标志 标记符 ER = CY 内容 ・D 的数据不是 BCD 时为 ON ・除此之外为 OFF ・运算结果为 0 时为 ON ・除此之外为 OFF ・加法运算的结果,有进位时为 ON ・除此之外为 OFF 3-186 动作说明 (例) ++B、++BL 指令时 自加/自减指令 BCD 增量 ++B(594)/ BCD 倍长增量 ++BL(595) 3 各 指 令 说 明 @++B、@++BL 指令时 自 加 自 减 指 令 / 3-187 自加/自减指令 3-79 BCD 减量 --B(596)/BCD 倍长减量 --BL(597) BCD 减量 --B 3-79 BCD 减量 --B(596)/BCD 倍长减量 --BL(597) 3 概要 各 指 从 BCD4 位的 1 CH 数据中减 1。 令 符号 说 明 D:数据 CH 编号 功能说明 ·减量的结果,D+1、D 的内容为 00000000 Hex 时,=标 志为 ON。 ·减量的结果,D+1、D 的内容中有借位时,CY 标志为 ON。 例如,D+1、D 的数据内容为“00000000”时-1,转成 “99999999”。此时 CY 标志为 ON。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 --B @--B --BL @--BL 对 D 所指定的数据进行 BCD 运算(-1)。 --B 时,输入条件为 ON 的过程中(直至 OFF),每 周期减 1。 @--B 时,仅在输入条件上升时(仅限 1 周期)减 1。 下降沿时 1 周期执行 无 每次刷新指定 无 使用限制(--B/--BL 指令共通) 区域 块程序区 工程步进 子程序区域 无 无 中断任务 域 程序区域 程序区域 注: 使用 可 可 可 可 ·D 的数据内容必须设定 BCD 数据。如果不是 BCD,会发 生错误,ER 标志为 ON。 数据内容 ·减量的结果,D 的内容为 0000 Hex 时,=标志为 ON。 区域 --B D --BL ·减量的结果,D 的内容中有借位时,CY 标志为 ON。 CIO(输入输出继电器等) 0000~6143 0000~6142 例如,D 的数据内容为“0000”时-1,转成“9999”。此时 内部辅助继电器 W000~511 W000~510 CY 标志为 ON。 保持继电器 特殊辅助继电器 H000~511 A448~959 H000~510 A448~958 时间 T0000~4095 T0000~4094 计数器 C0000~4095 C0000~4094 自 BCD 倍长减量 --BL 加 自 / 概要 减 从 BCD8 位的 2 CH 数据中减 1。 指 令 符号 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) D00000~32767 @D00000~32767 *D00000~32767 D00000~32766 @D00000~32767 *D00000~32767 - - DR0~15 - - - ,IR0~15 -2048~+2047,IR0~15 D:数据低位 CH 编号 DR0~15,IR0~15 ,IR0~15+(++) 功能说明 , - (--)IR0~15 将 D 所指定的数据作为倍长数据,进行 BCD 运算(-1)。 --BL 时,输入条件为 ON 的过程中(直至 OFF),每 周期减 1。 @--BL 时,仅在输入条件上升时(仅限 1 周期)减 1。 注: ·D+1、D 的数据内容必须设定 BCD 数据。如果不是 BCD, 会发生错误,ER 标志为 ON。 状态标志的动作 (--B/--BL 指令共通) 名称 出错标志 =标志 进位标志 标记符 ER = CY 内容 ・D 的数据不是 BCD 时为 ON ・除此之外为 OFF ・运算结果为 0 时为 ON ・除此之外为 OFF ・减法运算的结果,有借位时为 ON ・除此之外为 OFF 3-188 动作说明 (例) --B、--BL 指令时 自加/自减指令 BCD 减量 --B(596)/BCD 倍长减量 --BL(597) 3 各 指 令 说 明 @--B、@--BL 指令时 自 加 自 减 指 令 / 3-189 自加/自减指令 3 各 指 令 说 明 自 加 自 减 指 令 3-190 / 四则运算指令 四则运算指令 项目号 3-80 3-81 3-82 3-83 3-84 3-85 3-86 3-87 3-88 3-89 3-90 3-91 3-92 3-93 指令语句 带符号·无 CY BIN 加法运算 带符号·无 CY BIN 双字加法运算 带符号·CY BIN 加法运算 带符号·CY BIN 双字加法运算 无 CY BCD 加法运算 无 CY BCD 双字加法运算 带 CY BCD 加法运算 带 CY BCD 双字加法运算 带符号·无 CY BIN 减法运算 带符号·无 CY BIN 双字减法运算 符号·带 CY BIN 减法运算 符号·带 CY BIN 双字减法运算 无 CY BCD 减法运算 无 CY BCD 双字减法运算 带 CY BCD 减法运算 带 CY BCD 双字减法运算 带符号 BIN 乘法运算 带符号 BIN 双字乘法运算 无符号 BIN 乘法运算 无符号 BIN 双字乘法运算 BCD 乘法运算 BCD 双字乘法运算 带符号 BIN 除法运算 带符号 BIN 双字除法运算 无符号 BIN 除法运算 无符号 BIN 双字除法运算 BCD 除法运算 BCD 双字除法运算 助记符 + +L +C +CL +B +BL +BC +BCL - -L -C -CL -B -BL -BC -BCL * *L *U *UL *B *BL / /L /U /UL /B /BL FUN 编号 400 401 402 403 404 405 406 407 410 411 412 413 414 415 416 417 420 421 422 423 424 425 430 431 432 433 434 435 页码 3-192 3-192 3-192 3-192 3-192 3-192 3-192 3-192 3-192 3-192 3-192 3-192 3-192 3-192 3-191 四则运算指令 3-80 带符号·无 CY BIN 加法运算+(400)/带符号·无 CY BIN 双字加法运算+ L(401) 带符号・无 CY (带符号 BIN) 3-80 符号付・CY なし BIN 加算 +(400)/符号付・CY なし BIN 倍長加算 +L(401) (带符号 BIN) 3 BIN 加法运算 + 各 (带符号 BIN) 指 令 说 概要 对通道数据和常数进行带符号 16 进制 4 位的加法运算。 注: 进位时 ON 明 符号 ・指令执行时,将 ER 标志置于 OFF。 ・加法运算的结果,D+1、D 的内容为 00000000 Hex 时, =标志为 ON。 功能说明 S1:被加数 S2:加数 D:运算结果字 ・加法运算的结果,有进位时,进位(CY)标志为 ON。 ・ 正 数 + 正 数 的 结 果 位 于 负 数 ( 80000000 ~ FFFFFFFF Hex)范围内时,OF 标志为 ON。 ・ 负 数 + 负 数 的 结 果 位 于 正 数 ( 00000000 ~ 7FFFFFFF Hex)范围内时,UF 标志为 ON。 对 S1 所指定的数据与 S2 所指定的数据进行 BIN 加法运 算,将结果输出到 D。 ・加法运算的结果,D+1、D 的内容的最高位位为 1 时,N 标志为 ON。 (带符号 BIN) 执行条件/每次刷新指定 (带符号 BIN) (带符号 BIN) 注: 进位时 ON ・指令执行时,将 ER 标志置于 OFF。 ・加法运算的结果,D 的内容为 0000 Hex 时,=标志为 ON。 执行 ON 时每周期执行 + 条件 上升沿时 1 周期执行 @+ 下降沿时 1 周期执行 无 每次刷新指定 无 使用限制(+/+L 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 +L @+L 无 无 中断任务 程序区域 可 四 ・加法运算的结果,有进位时,进位(CY)标志为 ON。 数据内容 则 运 算 指 令 ・正数+正数的结果位于负数范围(8000~FFFF Hex)内 时,OF 标志为 ON。 ・负数+负数的结果位于正数范围(0000~7FFF Hex)内 时,UF 标志为 ON。 ·+指令 区域 CIO(输入输出继电器等) 内部辅助继电器 ・加法运算的结果,D 的内容的最高位位为 1 时,N 标志 为 ON。 保持继电器 特殊辅助继电器 时间 带符号·无 CY BIN 双字加法运算 +L 计数器 数据内存(DM) 概要 DM 间接(BIN) DM 间接(BCD) 对 2 CH 数据和常数进行带符号 16 进制 8 位的加法运算。 常数 符号 S1:被加数首字 S2:加数首字 D:运算结果首字 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 功能说明 S1 S2 D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~FFFF ― (BIN 数据) &0~65535 (无符号 10 进制数) -32768~0~ +32767 (带符号 10 进制) DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 将 S1 所指定的数据与 S2 所指定的数据作为双字数据进 行 BIN 加法运算,将结果输出到 D。 3-192 四则运算指令 带符号·无 CY BIN 加法运算 +(400)/带符号·无 CY BIN 双字加法运算+L(401) ·+L 指令 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S1 S2 D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 #00000000~ ― FFFFFFFF (BIN 数据) &0~4294967295 (无符号 10 进制) -2147483648~0~ +2147483647 (带符号 10 进制) ― IR0~15 ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作(+/+L 指令共通) 名称 标记符 内容 +指令 出错标志 ER OFF +L 指令 3 =标志 = ・运算结果为 0 时为 ON 各 ・除此之外为 OFF 指 进位标志 CY ・加法运算的结果,有进位时为 ON 令 ・除此之外为 OFF 上溢标志 OF ・正数+正数的结果 ・正数+正数的结果位于 位于 8000~FFFF 00000000~7FFFFFFF 说 明 Hex 的范围内时为 ON Hex 的范围内时为 ON ・除此之外为 OFF ・除此之外为 OFF 下溢标志 UF ・负数+负数的结果 ・负数+负数的结果位于 位于 0000~7FFF 80000000 ~FFFFFFFF Hex Hex 的范围内时为 ON ・除此之外为 OFF 的范围内时为 ON •除此之外为 OFF N 标志 N ・结果的最高位位转成1时为 ON ・除此之外为 OFF 动作说明 (例) 四 则 运 算 指 令 3-193 四则运算指令 3-81 符号·带 CY BIN 加法运算 +C(402)/符号·带 CY BIN 双字加法运算 +CL(403) 符号·带 CY BIN 加法运算 +C 符号・带 CY BIN 双字加法运算 +CL 3-81 符号・带 CYBIN 加法运算 +C(402)/符号・带 CYBIN 双字加法运算 +CL(403) 3 概要 概要 各 指 令 对数据和常数进行包括进位(CY)标志在内的带符号 16 进制 4 位加法运算。 对 2 CH 的数据和常数进行包括进位(CY)标志在内的 带符号 16 进制 8 位加法运算。 说 明 符号 符号 S1:被加数 S2:加数 D:运算结果字 功能说明 对 S1 所指定的数据和 S2 所指定的数据进行包括进位 (CY)标志在内的 BIN 加法运算,并将结果输出到 D。 (带符号 BIN) (带符号 BIN) S1:被加数首字 S2:加数首字 D:运算结果首字 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据, 进行包括进位(CY)标志在内的 BIN 加法运算,并将 结果输出到 D+1、D。 (带符号 BIN) (带符号 BIN) (带符号 BIN) (带符号 BIN) 进位时 ON 注: 进位时 ON ·指令执行时,将 ER 标志置于 OFF。 注: ·加法运算的结果,D 的内容为 0000 Hex 时,=标志为 ·指令执行时,将 ER 标志置于 OFF。 ON。 ·加法运算的结果,D+1、D 的内容为 00000000 Hex 时, 四 则 运 ·加法运算的结果,有进位时,进位(CY)标志为 ON。 ·正数+正数+CY 标志的结果位于负数(8000~FFFF Hex) =标志为 ON。 ·加法运算的结果,有进位时,进位(CY)标志为 ON。 算 的范围内时,OF 标志为 ON。 · 正 数 + 正 数 +CY 标 志 的 结 果 位 于 负 数 ( 80000000 ~ 指 令 ·负数+负数+CY 标志的结果位于正数(0000~7FFF Hex) 的范围内时,UF 标志为 ON。 FFFFFFFF Hex)的范围内时,OF 标志为 ON。 · 负 数 + 负 数 +CY 标 志 的 结 果 位 于 正 数 ( 00000000 ~ ·加法运算的结果,D 的内容的最高位位为 1 时,N 标志 7FFFFFFF Hex)的范围内时,UF 标志为 ON。 为 ON。 ·加法运算的结果,D+1、D 的内容的最高位位为 1 时,N 参考 标志为 ON。 若要清除进位(CY)标志,请执行 CLC(清除进位) 参考 指令。 若要清除进位(CY)标志,请执行 CLC(清除进位) 指令。 3-194 四则运算指令 符号・带 CYBIN 加法运算 +C(402)/符号・带 CYBIN 双字加法运算 +CL(403) 执行条件/每次刷新指定 ·+CL 指令 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 +C @+C 无 无 使用限制(+C/+CL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 +CL @+CL 无 无 中断任务 程序区域 可 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 S1 S2 D 0000~6142 3 W000~510 各 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 指 令 说 D00000~32766 明 @D00000~32767 *D00000~32767 #00000000~ ― 数据内容 FFFFFFFF (BIN 数据) &0~4294967295 ·+C 指令 区域 CIO(输入输出继电器等) 内部辅助继电器 S1 S2 D 0000~6143 W000~511 数据寄存器 (无符号 10 进制) -2147483648~0~ +2147483647 (带符号 10 进制) ― 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 变址寄存器(直接) 变址寄存器(间接) ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) *D00000~32767 #0000~FFFF ― (BIN 数据) &0~65535 (无符号 10 进制数) -32768~0~+32767 (带符号 10 进制) DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 标记符 内容 +C 指令 +CL 指令 出错标志 ER OFF =标志 = ・运算结果为 0 时为 ON ・除此之外为 OFF 进位标志 CY ・加法运算的结果有进位时为 ON ・除此之外为 OFF 上溢标志 OF ・正数+正数+CY 标志 ・正数+正数+CY 标志 四 的结果位于 8000~ 的结果位于 则 FFFF Hex 的范围内时 80000000~FFFFFFFF 运 为 ON Hex 的范围内时为 ON 算 ・ 除此之外 ・除此之外为 OFF 指 ・ OFF 令 下溢标志 UF ・负数+负数+CY 标志 ・负数+负数+CY 标志 的结果位于 0000~ 的结果位于 7FFF Hex 的范围内时 00000000~7FFFFFFF 为 ON Hex 的范围内时为 ON ・除此之外为 OFF ・除此之外为 OFF N 标志 N ・结果的最高位位转成 1 时为 ON ・除此之外为 OFF 动作说明 (例) 3-195 四则运算指令 3-82 无 CY BCD 加法运算+B(404)/无 CY BCD 双字加法运算+BL(405) 无 CY BCD 加法运算 +B 3-82 无 CYBCD 加法运算 +B(404)/无 CYBCD 双字加法运算 +BL(405) 3 概要 各 指 对通道数据和常数进行 BCD 4 位加法运算。 令 说 符号 明 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据进 行 BCD 加法运算,将结果输出到 D+1、 D。 S1:被加数 S2:加数 D:运算结果字 功能说明 对 S1 所指定的数据和 S2 所指定的数据进行 BCD 加法 运算,并将结果输出到 D。 注: 进位时 ON ·S1+1、S1 或 S2+1、 S2 的内容不为 BCD 时,将发生错 误,ER 标志为 ON。 ·加法运算的结果,D+1、D 的内容为 00000000 Hex 时, =标志为 ON。 ·加法运算的结果,有进位时,进位(CY)标志为 ON。 注: 进位时 ON ・S1 或 S2 的内容不为 BCD 时,将发生错误,ER 标志为 ON。 ・加法运算的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ・加法运算的结果,有进位时,进位(CY)标志为 ON。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 +B @+B 无 无 +BL @+BL 无 无 使用限制(+B/+BL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 四 则 无 CYBCD 双字加法运算 +BL 运 算 概要 指 令 对 2 CH 的通道数据和常数进行 BCD 8 位加法运算。 符号 S1:被加数首字 S2:加数首字 D:运算结果首字 数据内容 ·+B 指令 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S1 S2 D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~9999 ― (BCD) DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-196 四则运算指令 无 CY BCD 加法运算 +B(404)/无 CYBCD 双字加法运算 +BL(405) ·+BL 指令 状态标志的动作(+B/+BL 指令共通) 名称 标记符 内容 区域 CIO(输入输出继电器等) S1 S2 D 0000~6142 出错标志 ER ・S1 的数据不为 BCD 时为 ON ・S2 的数据不为 BCD 时为 ON 3 内部辅助继电器 W000~510 ・除此之外为 OFF 各 保持继电器 H000~510 =标志 = ・运算结果为 0 时为 ON 指 特殊辅助继电器 A000~958 A448~958 ・除此之外为 OFF 令 时间 T0000~4094 进位标志 CY ・加法运算的结果有进位时为 ON 说 计数器 C0000~4094 ・除此之外为 OFF 明 数据内存(DM) D00000~32766 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~99999999 ― (BCD) 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 动作说明 (例) 四 则 运 算 指 令 3-197 四则运算指令 3-83 带 CY BCD 加法运算+BC(406)/带 CY BCD 双字加法运算+BCL(407) 带 CY BCD 加法运算 +BC 带 CY BCD 双字加法运算 +BCL 3-83 带 CYBCD 加法运算 +BC(406)/带 CYBCD 双字加法运算 +BCL(407) 3 概要 概要 各 指 令 对通道数据和常数进行包括进位(CY)标志在内的 BCD4 位加法运算。 对 2CH 分的通道数据和常数进行包括进位(CY)标志 在内的 BCD 8 位加法运算。 说 明 符号 符号 S1:被加数 S2:加数 D:运算结果字 功能说明 对 S1 所指定的数据和 S2 所指定的数据进行包括进位 (CY)标志在内的 BCD 加法运算,将结果输出到 D CH。 S1:被加数首字 S2:加数首字 D:运算结果首字 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据, 进行包括进位(CY)标志在内的 BCD 加法运算,将结 果输出到 D+1、 D CH。 进位时 ON 注: 进位时 ON ・S1 或 S2 的内容不为 BCD 时,将发生错误,ER 标志为 注: ON。 ・S1+1、S1 或 S2+1、 S2 的内容不为 BCD 时,将发生错 ・加法运算的结果,D 的内容为 0000 Hex 时,=标志为 ON。 误,ER 标志为 ON。 四 则 ・加法运算的结果,有进位时,进位(CY)标志为 ON。 ・加法运算的结果,D+1、D 的内容为 00000000 Hex 时, =标志为 ON。 运 算 指 参考 ・加法运算的结果,有进位时,进位(CY)标志为 ON。 令 若要清除进位(CY)标志,请执行 CLC(清除进位)指 令。 参考 若要清除进位(CY)标志,请执行 CLC(清除进位)指 令。 3-198 四则运算指令 带 CY BCD 加法运算 +BC(406)/带 CYBCD 双字加法运算 +BCL(407) 执行条件/每次刷新指定 ·+BCL 指令 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 +BC @+BC 无 无 +BCL @+BCL 无 无 使用限制(+BC/+BCL 指令共通) 区域 块程序区 工程步进 子程序区域 中断任务 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) S1 S2 D 0000~6142 3 W000~510 各 H000~510 指 A000~958 A448~958 令 T0000~4094 说 C0000~4094 明 D00000~32766 域 程序区域 程序区域 DM 间接(BIN) @D00000~32767 使用 可 可 可 可 DM 间接(BCD) *D00000~32767 数据内容 常数 #00000000~99999999 ― (BCD) ·+BC 指令 数据寄存器 ― 变址寄存器(直接) ― 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 S1 S2 0000~6143 W000~511 H000~511 A000~959 D A448~959 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 时间 T0000~4095 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~9999 ― (BCD) DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 状态标志的动作 (+BC/+BCL 指令共通) 名称 出错标志 =标志 进位标志 标记符 ER = CY 内容 ・S1+1、 S1 的数据不为 BCD 时为 ON ・S2+1、S2 的数据不为 BCD 时为 ON ・除此之外为 OFF ・0000 Hex 被传送给 D 时为 ON ・除此之外为 OFF ・加法运算的结果有进位时为 ON ・除此之外为 OFF DR0~15,IR0~15 ,IR0~15+(++) 四 ,-(--)IR0~15 则 运 动作说明 算 指 令 3-199 四则运算指令 3-84 带符号·无 CY BIN 减法运算-(410)/带符号·无 CY BIN 双字减法运算-L(411) 带符号・无 CY BIN 减法运算 - 3-84 带符号・无 CYBIN 减法运算 -(410)/带符号・无 CYBIN 双字减法运算 -L(411) 3 概要 各 指 对通道数据和常数进行带符号 16 进制 4 位减法运算。 令 说 符号 明 带符号・无 CY BIN 双字减法运算 -L 概要 对 2 CH 的通道数据和常数进行带符号 16 进制 8 位减法 运算。 符号 S1:被减数 S2:减数 D:运算结果字 功能说明 对 S1 所指定的数据和 S2 所指定的数据进行 BIN 减法运 算,并将结果输出到 D。结果转成负数时,以 2 的补数 输出到 D。 S1:被减数首字 S2:减数首字 D:运算结果首字 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据进 行 BIN 减法运算,将结果输出到 D+1、 D。结果转成负 数时,以 2 的补数 输出到 D+1、 D。 有借位时 ON 注: 有借位时 ON ・指令执行时,将 ER 标志置于 OFF。 注: ・减法的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ・指令执行时,将 ER 标志置于 OFF。 ・减法运算的结果,有借位时,进位(CY)标志为 ON。 ・减法运算的结果,D+1、 D 的内容为 00000000 Hex 时, ・正数-负数的结果位于负数(8000~FFFF Hex)的范围 =标志为 ON。 四 内时,OF 标志为 ON。 ・减法运算的结果,有借位时,进位(CY)标志为 ON。 则 运 算 ・负数-正数的结果位于正数(0000~7FFF Hex)的范围 内时,UF 标志为 ON。 ・ 正 数 - 负 数 的 结 果 位 于 负 数 ( 80000000 ~ FFFFFFFF Hex)的范围内时,OF 标志为 ON。 指 令 ・减法运算的结果,D 的内容的最高位位为 1 时,N 标志 为 ON。 ・ 负 数 - 正 数 的 结 果 位 于 正 数 ( 00000000 ~ 7FFFFFFF Hex)的范围内时,UF 标志为 ON。 ・减法运算的结果,D+1、 D 的内容的最高位位为 1 时, N 标志为 ON。 3-200 四则运算指令 带符号·无 CYBIN 减法运算 -(410)/带符号・无 CYBIN 双字减法运算 -L(411) 执行条件/每次刷新指定 ・-L 指令 执行 ON 时每周期执行 - 条件 上升沿时 1 周期执行 @- 下降沿时 1 周期执行 无 每次刷新指定 无 使用限制(-/-L 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 -L @-L 无 无 中断任务 程序区域 可 区域 S1 S2 D CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) 0000~6142 3 W000~510 各 H000~510 A000~958 T0000~4094 C0000~4094 A448~958 指 令 说 D00000~32766 明 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~ ― 数据内容 FFFFFFFF (BIN 数据) ·-指令 &0~4294967295 (无符号 10 进制) 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) S1 S2 D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 数据寄存器 变址寄存器(直接) 变址寄存器(间接) -2147483648~0~ +2147483647 (带符号 10 进制) ― IR0~15 ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) *D00000~32767 #0000~FFFF ― (BIN 数据) &0~65535 (无符号 10 进制数) -32768~0~+32767 (带符号 10 进制) DR0~15 ― 状态标志的动作 名称 出错标志 =标志 进位标志 标记符 ER = CY -指令 内容 -L 指令 OFF ・运算结果为 0 时为 ON ・除此之外为 OFF ・减法运算的结果,有借位时为 ON 变址寄存器(间接) ,IR0~15 ・除此之外为 OFF -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 上溢标志 OF 正数-负数的结果位于 正数-负数的结果位于 四 8000~FFFF Hex 的范 80000000~FFFFFFFF 则 围内时为 ON Hex 的范围内时为 ON 运 除此之外为 OFF 除此之外为 OFF 算 下溢标志 UF 负数-正数的结果位于 负数-正数的结果位于 指 0000~7FFF Hex 的范 00000000~7FFFFFFF 令 围内时为 ON Hex 的范围内时为 ON 除此之外为 OFF 除此之外为 OFF N 标志 N ・结果的最高位位转成1时为 ON ・除此之外为 OFF 3-201 四则运算指令 带符号·无 CYBIN 减法运算 -(410)/带符号·无 CYBIN 双字减法运算 -L(411) 动作说明 (例) 3 各 指 令 说 明 减法运算结果为负数时(S1<S2、或 S1+1、 S1<S2+1、 S2),减法运算结果以 2 的补数输出。此时,CY 标志为 ON。 将 2 的补数变换为真数时,需要一个将 CY 标志作为输入条件,进一步从 0 中减掉减法运算结果的程序。此时,为表 明其为负数,在显示等中使用 CY 标志。 参考 所谓 2 的补数 是从 1 中减去 2 进制数的各位,在其结果上加 1 后的值。 例)2 进制数 1101 的 2 的补数是 1111(F Hex)-1101(D Hex)+1(1 Hex)=0011(3 Hex)。 例)16 进制 4 位的 3039 Hex 的 2 的补数是 FFFF Hex-3039 Hex+0001 Hex=CFC7 Hex 因此,在 16 进制 4 位的情况 下,a Hex 的 2 的补数是 FFFF Hex- a Hex+01 Hex=b Hex。通过 2 的补数 b Hex 求真数 a Hex,则 a Hex=10000 Hex -b Hex 。 例)通过 2 的补数 CFC7 Hex 求真数,10000 Hex-CFC7 Hex=3039 Hex。 数值例 1) 四 作为带符号数据时 作为无符号数据时 则 运 ﹡1:由于 N 标志为 ON,所以结果(FFFE Hex)为负数(2 的 算 补数),表示为-2。 指 ﹡2:由于进位为 OFF,结果(FFFE Hex)为无符号数据的正数, 令 转成 65534。 数值例 2) 作为带符号数据时 作为无符号数据时 ﹡3:由于 N 标志为 ON,所以结果(FFFE Hex)为负数 (2 的补数),表示为-2。 ﹡4:由于借位为 ON,结果(FFFE Hex)变为负数(2 的补数),转换为真数后转成-2。 3-202 四则运算指令 带符号·无 CYBIN 减法运算 -(410)/带符号·无 CYBIN 双字减法运算 -L(411) (例)20F55A10-B8A360E3=-97AE06D3 ①的减法运算 3 各 指 令 说 明 ②的减法运算…CY 标志为 1,所以将补数改为真数。 显示 进行从 201, 200 CH 到 211, 210 CH 的 BIN 8 位减法运 算。结果输出到 301、 300 CH 的 8 位。结果为负时, 执行#00000000-补数=真数的程序②,真数再次输出到 301、 300 CH。 最后的减法运算结果 CY 标志为 ON,因此实际的数值显示为-97AE06D3。 显示 301、 300 CH 的内容为负时,输出到 302.00。 四 则 运 算 指 令 3-203 四则运算指令 3-85 符号·带 CY BIN 减法运算-C(412)/符号·带 CY BIN 双字减法运算 -CL(413) 带符号·CY BIN 减法运算 -C 带符号·CY BIN 双字减法运算 -CL 3-85 符号・带 CYBIN 减法运算 -C(412)/符号・带 CYBIN 双字减法运算 -CL(413) 3 概要 概要 各 指 令 对通道数据和常数进行包括进位(CY)标志在内的带符 号 16 进制 4 位的减法运算。 对 2 CH 的通道数据和常数进行包括进位(CY)标志在 内的带符号 16 进制 8 位的减法运算。 说 明 符号 符号 S1:被减数 S2:减数 D:运算结果字 功能说明 对 S1 所指定的数据和 S2 所指定的数据进行包括进位 (CY)标志在内的 BIN 减法运算,将结果输出到 D。结 果转成负数时,以 2 的补数输出到 D。 S1:被减数首字 S2:减数首字 D:运算结果首字 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据, 进行包括进位(CY)标志在内的 BIN 减法运算,将结 果输出到 D+1、D。结果转成负数时,以 2 的补数输出 到 D+1、D。 有借位时 ON 注: 有借位时 ON ・指令执行时,将 ER 标志置于 OFF。 注: ・减法的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ・指令执行时,将 ER 标志置于 OFF。 四 则 运 算 ・减法运算的结果,有借位时,进位(CY)标志为 ON。 ・正数-负数-CY 标志的结果位于负数(8000~FFFF Hex)的范围内时,OF 标志为 ON。 ・减法运算的结果,D+1、D 的内容为 00000000 Hex 时, =标志为 ON。 ・减法运算的结果,有借位时,进位(CY)标志为 ON。 指 令 ・负数-正数-CY 标志的结果位于正数(0000~7FFF Hex)的范围内时,UF 标志为 ON。 ・正数-负数-CY 标志的结果位于负数(80000000~ FFFFFFFF Hex)的范围内时,OF 标志为 ON。 ・减法运算的结果,D 的内容的最高位位为 1 时,N 标志 为 ON。 ・负数-正数-CY 标志的结果位于正数(00000000~ 7FFFFFFF Hex)的范围内时,UF 标志为 ON。 参考 ・减法运算的结果,D+1、D 的内容的最高位位为 1 时,N 标志为 ON。 若要清除进位(CY)标志,请执行 CLC(清除进位)指 令。 参考 若要清除进位(CY)标志,请执行 CLC(清除进位)指 令。 3-204 四则运算指令 符号·带 CYBIN 减法运算 -C(412)/符号·带 CYBIN 双字减法运算 -CL(413) 带符号·CY BIN 减法运算 -C 带符号·CY BIN 双字减法运算 -CL 执行条件/每次刷新指定 执行条件/每次刷新指定 3 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 -C @-C 无 无 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 -CL @-CL 无 无 各 指 令 说 明 使用限制 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 数据内容 区域 S1 S2 D 区域 S1 S2 D CIO(输入输出继电器等) 0000~6143 CIO(输入输出继电器等) 0000~6142 内部辅助继电器 W000~511 内部辅助继电器 W000~510 保持继电器 H000~511 保持继电器 H000~510 特殊辅助继电器 A000~959 A448~959 特殊辅助继电器 A000~958 A448~958 时间 T0000~4095 时间 T0000~4094 计数器 C0000~4095 计数器 C0000~4094 数据内存(DM) D00000~32767 数据内存(DM) D00000~32766 DM 间接(BIN) @D00000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 DM 间接(BCD) *D00000~32767 常数 #0000~FFFF ― 常数 #00000000~ ― (BIN 数据) FFFFFFFF &0~65535 (BIN 数据) (无符号 10 进制数) &0~4294967295 -32768~0~+32767 (无符号 10 进制) (带符号 10 进制) -2147483648~0~ 数据寄存器 DR0~15 +2147483647 变址寄存器(直接) ― (带符号 10 进制) 变址寄存器(间接) ,IR0~15 数据寄存器 ― 状态标志的动作 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 变址寄存器(直接) 变址寄存器(间接) ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 四 则 运 算 指 令 名称 出错标志 =标志 进位标志 上溢标志 下溢标志 N 标志 标记符 ER = CY OF UF N 内容 OFF ・运算结果为 0 时为 ON ・除此之外为 OFF ・减法运算的结果,有借位时为 ON ・除此之外为 OFF ・正数-负数-CY 标志的结果位于 8000~ FFFF Hex 的范围内时为 ON ・除此之外为 OFF ・负数-正数-CY 标志的结果位于 0000~ 7FFF Hex 的范围内时 ON ・除此之外为 OFF ・结果的最高位位转成1时为 ON ・除此之外为 OFF 状态标志的动作 名称 出错标志 =标志 标记符 ER = 进位标志 CY 上溢标志 OF 下溢标志 UF 内容 OFF ・运算结果为 0 时为 ON ・除此之外为 OFF ・减法运算的结果,有借位时为 ON ・除此之外为 OFF ・正数-负数-CY 标志的结果位于 80000000~FFFFFFFF Hex 的范围内时为 ON ・除此之外为 OFF ・负数-正数-CY 标志的结果位于 00000000~7FFFFFFF Hex 的范围内时为 ON ・除此之外为 OFF N 标志 N ・结果的最高位位转成1时为 ON ・除此之外为 OFF 3-205 四则运算指令 符号·带 CYBIN 减法运算 -C(412)/符号·带 CYBIN 双字减法运算 -CL(413) 动作说明 (例) 3 各 指 令 说 明 减法运算结果为负数时(S1<S2、或 S1+1、 S1<S2+1、 S2),减法运算结果以 2 的补数输出。此时,CY 标志为 ON。 将 2 的补数变换为真数时,需要一个将 CY 标志作为输入条件,进一步从 0 中减掉减法运算结果的程序。此时,为表 明其为负数,在显示等中使用 CY 标志。 参考 所谓 2 的补数 是从 1 中减去 2 进制数的各位,在其结果上加 1 后的值。 例)2 进制数 1101 的 2 的补数是 1111(F Hex)-1101(D Hex)+1(1 Hex)=0011(3 Hex)。 例)16 进制 4 位的 3039 Hex 的 2 的补数是 FFFF Hex-3039 Hex+0001 Hex=CFC7 Hex 因此,在 16 进制 4 位的情况 下,a Hex 的 2 的补数是 FFFF Hex- a Hex+0001 Hex=b Hex。通过 2 的补数 b Hex 求真数 a Hex,则 a Hex=10000 Hex -b Hex 。 例)通过 2 的补数 CFC7 Hex 求真数,10000 Hex-CFC7 Hex=3039 Hex。 四 则 运 算 指 令 3-206 四则运算指令 3-86 无 CY BCD 减法运算-B(414)/无 CY BCD 双字减法运算 -BL(415) 无 CYBCD 减法运算 -B 3-86 无 CYBCD 减法运算 -B(414)/无 CYBCD 双字减法运算 -BL(415) 概要 对通道数据和常数进行 BCD 4 位的减法运算。 符号 S1:被减数 S2:减数 D:运算结果字 功能说明 对 S1 所指定的数据和 S2 所指定的数据进行 BCD 减法 运算,将结果输出到 D。结果转成负数时,以 10 的补数 输出到 D。 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据, 进行 BCD 减法运算,将结果输出到 D+1、 D。结果转 3 成负数时,以 10 的补数输出到 D+1、 D。 各 指 令 说 明 注: 有借位时 ON ・S1+1、S1 或 S2+1、 S2 的内容不为 BCD 时,将发生错 误,ER 标志为 ON。 ・减法运算的结果,D+1、 D 的内容为 00000000 Hex 时, =标志为 ON。 ・减法运算的结果,有借位时,进位(CY)标志为 ON。 执行条件/每次刷新指定 执行 ON 时每周期执行 -B -BL 注: 有借位时 ON 条件 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 @-B 无 无 @-BL 无 无 ・S1 或 S2 的内容不为 BCD 时,将发生错误,ER 标志为 ON。 使用限制(-B/-BL 指令共通) ・减法的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ・减法运算的结果,有借位时,进位(CY)标志为 ON。 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 四 数据内容 则 无 CY BCD 双字减法运算 -BL ·-B 指令 运 算 指 概要 区域 S1 S2 D 令 对 2 CH 的通道数据和常数进行 BCD 8 位的减法运算。 CIO(输入输出继电器等) 内部辅助继电器 0000~6143 W000~511 符号 保持继电器 特殊辅助继电器 H000~511 A000~959 A448~959 时间 T0000~4095 S1:被减数首字 计数器 数据内存(DM) C0000~4095 D00000~32767 S2:减数首字 DM 间接(BIN) @D00000~32767 D:运算结果首字 DM 间接(BCD) 常数 *D00000~32767 #0000~9999 ― (BCD) 数据寄存器 DR0~15 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-207 四则运算指令 无 CYBCD 减法运算 -B(414)/无 CYBCD 双字减法运算 -BL(415) ·-BL 指令 区域 3 CIO(输入输出继电器等) 各 内部辅助继电器 指 保持继电器 令 特殊辅助继电器 说 时间 明 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S1 S2 D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 #00000000~99999999 ― (BCD) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标 志 =标志 进位 标志 标记符 ER = CY 内容 -B 指令 -BL 指令 ・S1 的数据不为 BCD ・S1+1、 S1 的数据不为 时为 ON BCD 时为 ON ・S2 的数据不为 BCD ・S2+1、 S2 的数据不为 时为 ON BCD 时为 ON ・除此之外为 OFF ・除此之外为 OFF ・运算结果为 0 时为 ON ・除此之外为 OFF ・减法运算的结果,有借位时为 ON ・除此之外为 OFF 动作说明 (例) 四 则 运 算 指 令 减法运算结果为负数时(S1<S2、或 S1+1、 S1<S2+1、 S2),以 10 的补数输出减法运算结果。此时,CY 标志为 ON。 将 10 的补数变换为真数时,需要一个将 CY 标志作为输入条件,进一步从 0 中减掉减法运算结果的程序。此时,为 表明其为负数,在显示等中使用 CY 标志。 参考 所谓 10 的补数 是从 9 中减去各位,在其结果中加 1 后的值。 例)7556 的 10 的补数是 9999-7556+1=2444。 因此,若为 4 位,A 的 10 的补数是 9999-A+1=B。 通过 10 的补数 B 求真数 A,则 A=10000-B。 例)通过 10 的补数 2444 求真数,则 10000-2444=7556。 3-208 四则运算指令 无 CY BCD 减法运算 -B(414)/无 CYBCD 双字减法运算 -BL(415) (例)9、583、960-17、072、641=-7、488、681 ①的减法运算 3 各 指 令 说 明 ②的减法运算…CY 标志为 1,所以将补数改为真数。 进行从 201、 200 CH 到 211、 210 CH 的 BCD 8 位减法 运算。结果输出到 301、 300 CH 的 8 位。结果为负时, 执行#00000000-补数=真数的程序②,真数再次输出到 301、 300 CH。 最后的减法运算结果 CY 标志为 ON,因此实际的数值显示 -7、488、681。 显示 301、 300 CH 的内容为负时,输出到 302.00。 四 则 运 算 指 令 3-209 四则运算指令 3-87 带 CY BCD 减法运算-BC(416)/带 CY BCD 双字减法运算-BCL(417) 带 CYBCD 减法运算 -BC 功能说明 3-87 带 CYBCD 减法运算 -BC(416)/带 CYBCD 双字减法运算 -BCL(417) 将 S1 所指定的数据和 S2 所指定的数据作为双字数据, 3 概要 进行包括进位(CY)标志在内的 BCD 减法运算,将结 各 指 令 对通道数据和常数进行包括进位(CY)标志在内的 BCD 4 位的减法运算。 果输出到 D+1、 D。结果转成负数时,以 10 的补数输 出到 D+1、 D。 说 明 符号 S1:被减数 S2:减数 D:运算结果字 功能说明 对 S1 所指定的数据和 S2 所指定的数据进行包括进位 (CY)标志在内的 BCD 减法运算,将结果输出到 D。 结果转成负数时,以 10 的补数输出到 D。 注: 有借位时 ON ・S1+1、S1 或 S2+1、 S2 的内容不为 BCD 时,将发生错 误,ER 标志为 ON。 ・减法运算的结果,D+1、 D 的内容为 00000000 Hex 时, =标志为 ON。 ・减法运算的结果,有借位时,进位(CY)标志为 ON。 参考 若要清除进位(CY)标志,请执行 CLC(清除进位)指 令。 有借位时 ON 注: ・S1 或 S2 的内容不为 BCD 时,将发生错误,ER 标志为 执行条件/每次刷新指定 ON。 执行 ON 时每周期执行 -BC -BCL 四 ・减法的结果,D 的内容为 0000 Hex 时,=标志为 ON。 则 运 ・减法运算的结果,有借位时,进位(CY)标志为 ON。 条件 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 @-BC 无 无 @-BCL 无 无 算 指 参考 使用限制(-BC/-BCL 指令共通) 令 若要清除进位(CY)标志,请执行 CLC(清除进位)指 区域 块程序区 工程步进 子程序区域 中断任务 令。 域 程序区域 程序区域 使用 可 可 可 可 带 CYBCD 双字减法运算 -BCL 概要 对 2 CH 的通道数据和常数进行包括进位(CY)标志在 内的 BCD 8 位的减法运算。 符号 S1:被减数首字 S2:减数首字 D:运算结果首字 3-210 四则运算指令 带 CY BCD 减法运算 -BC(416)/带 CYBCD 双字减法运算 -BCL(417) 数据内容 ·-BC 指令 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S1 S2 D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~9999 - (BCD) DR0~15 - ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 动作说明 (例) 0.00 为 ON 时,从 D100 中 BCD4 位减去 D110 与 CY 标志,结果输出到 D120。 ·-BCL 指令 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S1 S2 D 0000~6142 3 W000~510 各 H000~510 指 A000~958 A448~958 令 T0000~4094 说 C0000~4094 明 D00000~32766 @D00000~32767 *D00000~32767 #00000000~ ― 99999999 (BCD) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 标记 内容 符 -BC 指令 -BCL 指令 出错标志 ER ・S1 的数据不为 BCD ・S1+1、 S1 的数据不为 时为 ON BCD 时为 ON ・S2 的数据不为 BCD ・S2+1、 S2 的数据不为 时为 ON BCD 时为 ON ・除此之外为 OFF ・除此之外为 OFF =标志 = ・0000 Hex 被传送给 D 时为 ON ・除此之外为 OFF 进位标志 CY ・减法运算的结果,有借位时为 ON ・除此之外为 OFF 四 则 运 算 指 令 减法运算结果为负数时(S1<S2、或 S1+1、 S1<S2+1、 S2),以 10 的补数输出减法运算结果。此时,CY 标志 为 ON。 将 10 的补数变换为真数时,需要一个将 CY 标志作为输 入条件,进一步从 0 中减掉减法运算结果的程序。此时, 为表明其为负数,在显示等中使用 CY 标志。 0.01 为 ON 时,从 D1001、D1000 中 BCD8 位减去 D1101、D01100 和 CY 标志,结果输出到 D1201, D1200。 参考 所谓 10 的补数 是从 9 中减去各位,在其结果中加 1 后的值。 例)7556 的 10 的补数是 9999-7556+1=2444。 因此,若为 4 位,A 的 10 的补数是 9999-A+1=B。 通过 10 的补数 B 求真数 A,则 A=10000-B。 例)通过 10 的补数 2444 求真数,则 10000-2444=7556。 3-211 四则运算指令 3-88 带符号 BIN 乘法运算*(420)/带符号 BIN 双字乘法运算*L(421) 带符号 BIN 乘法运算 * 3-88 带符号 BIN 乘法运算 *(420)/带符号 BIN 双字乘法运算 *L(421) ・指令执行时,将 ER 标志置于 OFF。 ・乘法运算的结果,D+3、 D+2、 D+1、 D 的内容为 0000 3 概要 Hex 时,=标志为 ON。 各 指 对通道数据和常数进行带符号 16 进制 4 位的乘法运算。 ・乘法运算的结果,D+3 的内容的最高位位为 1 时,N 标 志为 ON。 令 说 符号 执行条件/每次刷新指定 明 执行 ON 时每周期执行 * *L S1:被乘数 S2:乘数 D:运算结果字 条件 上升沿时 1 周期执行 @* 下降沿时 1 周期执行 无 每次刷新指定 无 使用限制(*/*L 指令共通) @*L 无 无 功能说明 区域 块程序区 工程步进 子程序区域 中断任务 对 S1 所指定的数据和 S2 所指定的数据进行带符号 域 程序区域 程序区域 使用 可 可 可 可 BIN 乘法运算,将结果输出到 D+1、 D。 数据内容 (带符号 BIN) (带符号 BIN) ·带符号 BIN 乘法运算* 区域 S1 S2 D (带符号 BIN) CIO(输入输出继电器等) 0000~6143 0000~6142 注: 内部辅助继电器 保持继电器 W000~511 H000~511 W000~510 H000~510 ・指令执行时,将 ER 标志置于 OFF。 ・乘法运算的结果,D+1、D 的内容为 0000 Hex 时,=标 志为 ON。 特殊辅助继电器 时间 计数器 数据内存(DM) A000~959 T0000~4095 C0000~4095 D00000~32767 A448~958 T0000~4094 C0000~4094 D00000~ ・乘法运算的结果,D+1 的内容的最高位位为 1 时,N 标 志为 ON。 DM 间接(BIN) DM 间接(BCD) 四 常数 则 运 带符号 BIN 双字乘法运算 *L 算 指 概要 令 对 2 CH 的通道数据和常数进行带符号 16 进制 8 位的乘 数据寄存器 法运算。 变址寄存器(直接) @D00000~32767 *D00000~32767 #0000~FFFF (BIN 数据) &0~65535 (无符号 10 进制数) -32768~0~+32767 (带符号 10 进制) DR0~15 32766 ― ― ― 符号 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 S1:被乘数首字 ,IR0~15+(++) ,-(--)IR0~15 S2:乘数首字 D:运算结果首字 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据, 进行带符号 BIN 乘法运算,将结果输出到 D+3、 D+2、 D+1、 D。 (带符号 BIN) (带符号 BIN) (带符号 BIN) 注: 3-212 四则运算指令 带符号 BIN 乘法运算 *(420)/带符号 BIN 双字乘法运算 *L(421) ·带符号 BIN 双字乘法运算 *L 状态标志的动作(*/*L 指令) 区域 S1 S2 D 名称 标记符 内容 CIO ( 输 入 输 出 继 电 器 0000~6142 0000~6140 出错标志 ER OFF 3 等) =标志 = ・运算结果为 0 时为 ON 各 内部辅助继电器 W000~510 W000~508 ・除此之外为 OFF 指 保持继电器 H000~510 H000~508 N 标志 N ・ 结果的最高位位为1时。ON 令 特殊辅助继电器 A000~958 A448~956 ・除此之外为 OFF 说 时间 T0000~4094 T0000~4092 明 计数器 C0000~4094 C0000~4092 数据内存(DM) D00000~32766 D00000~ DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) @D00000~32767 *D00000~32767 32764 #00000000~FFFFFFFF ― (BIN 数据) &0~4294967295 (无符号 10 进制) -2147483648~0~ +2147483647 (带符号 10 进制) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 动作说明 (例) 四 0.00 为 ON 时,D100 和 D110 进行带符号的 16 进 则 制 4 位乘法运算,结果输出到 D121.D120。 运 算 指 令 0.01 为 ON 时,D201,D200 和 D211,D210 进行带符号的 16 进制 8 位乘法运算,结果输 出到 D223~D220。 3-213 四则运算指令 3-89 无符号 BIN 乘法运算*U(422)/无符号 BIN 双字乘法运算*UL(423) 无符号 BIN 乘法运算 *U 3-89 无符号 BIN 乘法运算 *U(422)/无符号 BIN 双字乘法运算 *UL(423) 3 概要 各 指 对通道数据和常数进行无符号 16 进制 4 位乘法运算。 令 说 符号 明 S1:被乘数 S2:乘数 D:运算结果字 注: ・指令执行时,将 ER 标志置于 OFF。 ・乘法运算的结果,D+3~D 的内容为 0000 Hex 时,=标 志为 ON。 ・乘法运算的结果,D+3~D 的内容的最高位位为 1 时,N 标志为 ON。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 *U @*U 无 无 *UL @*UL 无 无 功能说明 对 S1 所指定的数据和 S2 所指定的数据进行 BIN 乘法运 算,将结果输出到 D+1、 D。 (无符号 BIN) (无符号 BIN) 使用限制(*U/*UL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 数据内容 中断任务 程序区域 可 (无符号 BIN) ·无符号 BIN 乘法运算*U 注: ・指令执行时,将 ER 标志置于 OFF。 ・乘法运算的结果,D+1、 D 的内容为 0000 Hex 时,=标 志为 ON。 ・乘法运算的结果, D+1、 D 的内容的最高位位为 1 时, N 标志为 ON。 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) S1 S2 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 D 0000~6142 W000~510 H000~510 A448~958 T0000~4094 C0000~4094 D00000~ 32766 四 则 运 无符号 BIN 双字乘法运算 *UL DM 间接(BIN) DM 间接(BCD) 常数 算 指 概要 令 对 2 CH 的通道数据和常数进行无符号 16 进制 8 位的乘 数据寄存器 法运算。 变址寄存器(直接) @D00000~32767 *D00000~32767 #0000~FFFF ― (BIN 数据) &0~65535 (无符号 10 进制数) DR0~15 ― ― 符号 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) S1:被乘数首字 ,-(--)IR0~15 S2:乘数首字 D:运算结果首字 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据, 进行无符号 BIN 乘法运算,将结果输出到 D+3~D。 (无符号 BIN) (无符号 BIN) (无符号 BIN) 3-214 四则运算指令 无符号 BIN 乘法运算 *U(422)/无符号 BIN 双字乘法运算 *UL(423) ·无符号 BIN 双字乘法运算 *UL 状态标志的动作(*U/*UL 指令共通) 名称 标记符 内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 S1 S2 0000~6142 W000~510 H000~510 D 0000~6140 W000~508 H000~508 出错标志 =标志 N 标志 ER OFF = ・运算结果为 0 时为 ON ・除此之外为 OFF N ・结果的最高位为 1 时为 ON 3 各 指 特殊辅助继电器 A000~958 A448~956 ・除此之外 OFF 令 时间 T0000~4094 T0000~4092 说 计数器 C0000~4094 C0000~4092 明 数据内存(DM) D00000~32766 D00000~32764 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~ ― FFFFFFFF (BIN 数据) &0~4294967295 (无符号 10 进制) 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 动作说明 (例) 0.00 为 ON 时,D100 和 D110 进行无符号的 16 进 制 4 位乘法运算,结果输出到 D121.D120。 四 则 运 算 0.01 为 ON 时,D201,D200 和 D211,D210 进行无 符号的 16 进制 8 位乘法运算,结果输出到 D223~ 指 令 D220。 3-215 四则运算指令 3-90 BCD 乘法运算*B(424)/BCD 双字乘法运算*BL(425) BCD 乘法运算 *B 3-90 BCD 乘法运算 *B(424)/BCD 双字乘法运算 *BL(425) 3 概要 各 指 对通道数据和常数进行 BCD 4 位的乘法运算。 令 说 符号 明 S1:被乘数 S2:乘数 D:运算结果字 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 *B @*B 无 无 *BL @BL 无 无 使用限制(*B/*BL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 功能说明 对 S1 所指定的数据和 S2 所指定的数据进行 BCD 乘法 运算,将结果输出到 D+1、 D。 ·BCD 乘法运算 *B 区域 CIO(输入输出继电器等) 内部辅助继电器 S1 S2 0000~6143 W000~511 D 0000~6142 W000~510 保持继电器 H000~511 H000~510 特殊辅助继电器 A000~959 A448~958 时间 T0000~4095 T0000~4094 计数器 C0000~4095 C0000~4094 数据内存(DM) D00000~32767 D00000~32766 注: DM 间接(BIN) DM 间接(BCD) @D00000~32767 *D00000~32767 ・S1 或 S2 的内容不为 BCD 时,将发生错误,ER 标志为 常数 #0000~9999 ― ON。 ・乘法运算的结果,D+1、 D 的内容为 0000 Hex 时,=标 志为 ON。 数据寄存器 变址寄存器(直接) 变址寄存器(间接) (BCD) DR0~15 ― ― ,IR0~15 BCD 双字乘法运算 *BL -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) 四 概要 则 运 对 2CH 的通道数据和常数进行 BCD 8 位的乘法运算。 算 指 符号 ,-(--)IR0~15 ·BCD 双字乘法运算*BL 区域 CIO(输入输出继电器等) S1 S2 0000~6142 D 0000~6140 令 内部辅助继电器 W000~510 W000~508 保持继电器 H000~510 H000~508 S1:被乘数首字 S2:乘数首字 D:运算结果首字 特殊辅助继电器 时间 计数器 数据内存(DM) A000~958 T0000~4094 C0000~4094 D00000~32766 A448~956 T0000~4092 C0000~4092 D00000~32764 DM 间接(BIN) @D00000~32767 功能说明 将 S1 指定的数据和 S2 指定的数据作为双字数据进行 BCD 乘法运算,将结果输出到 D+3~D。 DM 间接(BCD) 常数 数据寄存器 *D00000~32767 #00000000~99999999 ― (BCD) ― 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 注: ・S1+1、 S1 或 S2+1、 S2 的内容不为 BCD 时,将发生错 误,ER 标志为 ON。 ・乘法运算的结果,D+3、 D+2、 D+1、 D 的内容为 0000 Hex 时,=标志为 ON。 3-216 四则运算指令 BCD 乘法运算 *B(424)/BCD 双字乘法运算 *BL(425) 状态标志的动作 名称 标记符 内容 *B 指令 *BL 指令 3 出错标志 ER ・S1 的数据不为 BCD ・S1+1,S1 的数据不为 各 时为 ON BCD 时为 ON 指 =标志 ・S2 的数据不为 BCD ・S2+1,S2 的数据不为 时为 ON BCD 时为 ON ・除此之外为 OFF ・除此之外为 OFF = ・运算结果为 0 时为 ON 令 说 明 ・除此之外为 OFF 动作说明 (例) 0.00 为 ON 时,D100 和 D110 进行 BCD4 位乘法运 算,结果输出到 D121.D120。 0.01 为 ON 时,D201,D200 和 D211,D210 进行 BCD8 位乘法运算,结果从 D223 输出到 D220。 四 则 运 算 指 令 3-217 四则运算指令 3-91 带符号 BIN 除法运算/(430)/带符号 BIN 双字除法运算/L(431) 带符号 BIN 除法运算 / 3-91 带符号 BIN 除法运算 /(430)/带符号 BIN 双字除法运算 /L(431) (带符号 BIN) (带符号 BIN) 3 概要 各 指 对通道数据和常数进行带符号 16 进制 4 位的除法运算。 注: 余数 (带符号 BIN) 商 令 说 符号 ・80000000 Hex÷FFFFFFF Hex 的除法运算不固定。 明 ・除法运算数据 S2+1、 S2 为 0 时,将发生错误,ER 标志 S1:被除数 S2:除数 D:运算结果字 为 ON。 ・除法运算的结果,D+1、 D 的内容为 00000000 Hex 时, =标志为 ON。 ・除法运算的结果, D+1、 D 的内容的最高位位为 1 时, 功能说明 N 标志为 ON。 作为带符号 BIN 数据(16 位),计算 S1÷S2,将商(16 位)输出到 D,将余数(16 位)输出到 D+1。 (带符号 BIN) (带符号 BIN) 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 / /L @/ @/L 无 无 无 无 余数 (带符号 BIN) 商 注: ・8000 Hex÷FFF Hex 的除法运算不固定。 ・除法运算数据 S2 为 0 时,会发生出错,ER 标志为 ON。 使用限制(///L 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 数据内容 中断任务 程序区域 可 ・除法运算的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ·带符号 BIN 除法运算 / ・除法运算的结果,D 的内容的最高位位为 1 时,N 标志 区域 S1 S2 为 ON。 四 则 运 算 指 带符号 BIN 双字除法运算 /L CIO(输入输出继电 器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 0000~6143 W000~511 H000~511 A000~959 T0000~4095 令 计数器 C0000~4095 概要 数据内存(DM) D00000~32767 D 0000~6142 W000~510 H000~510 A448~958 T0000~4094 C0000~4094 D00000~ 对 2 CH 的通道数据和常数进行带符号 16 进制 8 位的除 法运算。 符号 S1:被除数首字 S2:除数首字 D:运算结果首字 DM 间接(BIN) DM 间接(BCD) 常数 @D00000~32767 *D00000~32767 #0000~FFFF #0001~FFFF (BIN 数据) (BIN 数据) &0~65535 &1~65535 (无符号 10 进 (无符号 10 进 制数) 制数) -32768~0~ -32768~-1, +32767 +1~+32767 (带符号 10 进 (带符号 10 进制 制) 数) 32766 ― 功能说明 作为带符号 BIN 数据(32 位),计算(S1+1、 S1)÷ (S2+1、 S2),将商(32 位)输出到 D+1、 D,将余 数(32 位)输出到 D+3、 D+2。 数据寄存器 变址寄存器(直接) 变址寄存器(间接) DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-218 四则运算指令 带符号 BIN 除法运算 /(430)/带符号 BIN 双字除法运算 /L(431) ·带符号 BIN 双字除法运算 /L 状态标志的动作(///L 指令共通) 区域 S1 S2 D 名称 标记符 内容 CIO(输入输出继电 0000~6142 0000~6140 出错标志 ER ・除法运算数据为 0 时为 ON 3 器等) ・除此之外为 OFF 各 内部辅助继电器 W000~510 W000~508 =标志 = ・运算结果之商为 0 时为 ON 指 保持继电器 H000~510 H000~508 ・除此之外为 OFF 令 特殊辅助继电器 A000~958 A448~956 N 标志 N ・结果之商的最高位为1时 ON 说 时间 T0000~4094 T0000~4092 ・除此之外为 OFF 明 计数器 C0000~4094 C0000~4092 数据内存(DM) D00000~32766 D00000~ DM 间接(BIN) DM 间接(BCD) 常数 #00000000~ @D00000~32767 *D00000~32767 #00000001~ 32764 ― FFFFFFFF (BIN 数据) &0~ FFFFFFFF (BIN 数据) &1~ 4294967295 (无符号 10 进 制数) 4294967295 (无符号 10 进 制数) -2147483648~0 -2147483648~ ~+2147483647 -1,+1~ (带符号 10 进制 +2147483647 数) (带符号 10 进 制数) 数据寄存器 变址寄存器(直接) 变址寄存器(间接) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 四 动作说明 则 运 (例) 算 指 令 0.00 为 ON 时,对 D100 和 D110 进行带符号 16 进 制 4 位除法运算,将商输出到 D120,余数输出到 D121。 0.01 为 ON 时,对 D201,D200 和 D211,D210 进 行带符号 16 进制 8 位除法运算,将商输出到 D221,D220,余数输出到 D223,D222。 3-219 四则运算指令 3-92 无符号 BIN 除法运算/U(432)/无符号 BIN 双字除法运算/UL(433) 无符号 BIN 除法运算 /U 3-92 无符号 BIN 除法运算 /U(432)/无符号 BIN 双字除法运算 /UL(433) (无符号 BIN) (无符号 BIN) 3 概要 各 指 对通道数据和常数进行无符号 16 进制 4 位的除法运算。 余数 (无符号 BIN) 商 令 说 符号 注: 明 ·除法运算数据 S2+1、 S2 为 0 时,将发生错误,ER 标志 S1:被除数 S2:除数 D:运算结果字 为 ON。 ·除法运算的结果,D+1、 D 的内容为 0000 Hex 时,=标 志为 ON。 ·除法运算的结果, D+1、 D 的内容的最高位位为 1 时, 功能说明 N 标志为 ON。 作为无符号 BIN 数据(16 位),计算 S1÷S2,将商(16 位)输出到 D,将余数(16 位)输出到 D+1。 (无符号 BIN) (无符号 BIN) 余数 (无符号 BIN) 商 注: ・除法运算数据 S2 为 0 时,将发生错误,ER 标志为 ON。 ・除法运算的结果,D 的内容为 0000 Hex 时,=标志为 ON。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 /U @/U 无 无 /UL @/UL 无 无 使用限制(/U//UL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 ・除法运算的结果,D 的内容的最高位位为 1 时,N 标志 为 ON。 数据内容 ・无符号 BIN 除法运算 /U 四 区域 S1 S2 D 则 无符号 BIN 双字除法运算 /UL 运 算 指 概要 CIO(输入输出继电器 等) 内部辅助继电器 保持继电器 0000~6143 W000~511 H000~511 0000~6142 W000~510 H000~510 令 对 2 CH 的通道数据和常数进行无符号 16 进制 8 位的除 特殊辅助继电器 A000~959 A448~958 法运算。 时间 T0000~4095 T0000~4094 计数器 C0000~4095 C0000~4094 符号 数据内存(DM) D00000~32767 D00000~ S1:被除数首字 S2:除数首字 D:运算结果首字 功能说明 作为无符号 BIN 数据(32 位),计算(S1+1、 S1)÷ (S2+1、 S2),将商(32 位)输出到 D+1、 D,将余 数(32 位)输出到 D+3、 D+2。 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 32766 @D00000~32767 *D00000~32767 #0000~FFFF #0001~FFFF ― (BIN 数据) (BIN 数据) &0~65535 &1~65535 (无符号 10 (无符号 10 进制数) 进制数) DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-220 四则运算指令 无符号 BIN 除法运算 /U(432)/无符号 BIN 双字除法运算 /UL(433) ·无符号 BIN 双字除法运算 /UL 状态标志的动作 (/U//UL 指令共通) 区域 S1 S2 D 名称 标记符 内容 CIO(输入输出继电器 等) 0000~6142 0000~6140 出错标志 ER ・除数为 0 时为 ON ・除此之外为 OFF 3 内部辅助继电器 W000~510 W000~508 =标志 = ・运算结果之商为 0 时为 ON 各 保持继电器 H000~510 H000~508 ・除此之外为 OFF 指 特殊辅助继电器 A000~958 A448~956 N 标志 N ・结果之商的最高位为1时 ON 令 时间 T0000~4094 T0000~4092 ・除此之外为 OFF 说 计数器 C0000~4094 C0000~4092 明 数据内存(DM) D00000~32766 D00000~ 32764 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~ #00000001~ ― FFFFFFFF FFFFFFFF (BIN 数据) (BIN 数据) &0~ &1~ 4294967295 4294967295 (无符号 10 (无符号 10 进制数) 进制数) 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 动作说明 (例) 0.00 为 ON 时,对 D100 和 D110 进行无符号 16 进 制 4 位除法运算,将商输出到 D120,余数输出到 D121。 四 则 运 算 指 令 0.01 为 ON 时,对 D201,D200 和 D211,D210 进 行无符号 16 进制 8 位除法运算,将商输出到 D221,D220,余数输出到 D223,D222。 3-221 四则运算指令 3-93 BCD 除法运算/B(434)/BCD 双字除法运算/BL(435) BCD 除法运算 /B 3-93 BCD 除法运算 /B(434)/BCD 双字除法运算 /BL(435) 3 概要 各 指 对通道数据和常数进行 BCD 4 位的除法运算。 令 说 符号 明 S1:被除数 S2:除数 D:运算结果字 注: ・S1+1、S1 或 S2+1、 S2 的内容不为 BCD 时,且除法运 算数据 S2+1、 S2 为 0 时,将发生错误,ER 标志为 ON。 ・除法运算的结果, D+1、 D 的内容为 00000000 Hex 时, =标志为 ON。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 /B @/B 无 无 /BL @/BL 无 无 功能说明 作为 BCD 数据(16 位),计算 S1÷S2,将商(16 位) 输出到 D,将余数(16 位)输出到 D+1。 使用限制(/B//BL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 ·BCD 除法运算 /B 余数 商 注: ・S1 或 S2 的内容不为 BCD 时,且除法运算数据 S2 为 0 时,将发生错误,ER 标志为 ON。 ・除法运算的结果,商 D 的内容为 0000 Hex 时,=标志为 ON。 区域 CIO ( 输 入 输 出 继 电 器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存 S1 S2 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 D 0000~6142 W000~510 H000~510 A448~958 T0000~4094 C0000~4094 D00000~ 32766 四 则 BCD 双字除法运算 /BL 运 DM 间接(BIN) DM 间接(BCD) 常数 @D00000~32767 *D00000~32767 #0000~ #0001~ ― 算 概要 指 令 对 2 CH 的通道数据和常数进行 BCD 8 位的除法运算。 数据寄存器 9999 9999 (BCD) (BCD) DR0~15 ― 符号 变址寄存器(直接) 变址寄存器(间接) ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 S1:被除数首字 S2:除数首字 ,IR0~15+(++) ,-(--)IR0~15 D:运算结果首字 功能说明 作为 BCD 数据(32 位),计算(S1+1、 S1)÷(S2+1、 S2),将商(32 位)输出到 D+1、 D,将余数(32 位) 输出到 D+3、 D+2。 余数 商 3-222 四则运算指令 BCD 除法运算 /B(434)/BCD 双字除法运算 /BL(435) ・BCD 双字除法运算 /BL 状态标志的动作 区域 S1 S2 D 名称 标记符 内容 CIO ( 输 入 输 出 继 电 器 等) 0000~6142 0000~6140 出错 /B 指令 /BL 指令 ER ・S1 的数据不为 BCD ・S1+1、 S1 的数据不为 3 内部辅助继电器 W000~510 W000~508 标志 时为 ON BCD 时为 ON 各 保持继电器 H000~510 H000~508 ・S2 的数据不为 BCD ・S2+1、 S2 的数据不为 指 特殊辅助继电器 A000~958 A448~956 时为 ON BCD 时为 ON 令 时间 T0000~4094 T0000~4092 ・除数为 0 时为 ON ・除数为 0 时为 ON 说 计数器 数据内存 C0000~4094 C0000~4092 ・除此之外为 OFF ・除此之外为 OFF 明 D00000~32766 D00000~ =标志 = ・运算结果之商为 0 时为 ON 32764 ・除此之外为 OFF DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~ #00000001 ― 99999999 ~99999999 (BCD) (BCD) 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 动作说明 (例) 0.00 为 ON 时,对 D100 和 D110 进行 BCD4 位除法运算, 将商输出到 D120,余数输出到 D121。 四 0.01 为 ON 时,对 D201、D200 和 D211、D210 进行 BCD8 位除法运算,将商输出到 D221、D220,余数输出到 则 运 算 D223、D222。 指 令 3-223 四则运算指令 3 各 指 令 说 明 四 则 运 算 指 令 3-224 数据转换指令 项目号 3-94 3-95 3-96 3-97 3-98 3-99 3-100 3-101 3-102 3-103 3-104 3-105 3-106 3-107 3-108 指令语句 BCD→BIN 转换 BCD→BIN 双字转换 BIN→BCD 转换 BIN→BCD 双字转换 2 的补数转换 2 的补数双字转换 符号扩展 4→16/8→256 解码器 16→4/256→8 编码器 ASCII 代码转换 ASCII→HEX 转换 位列→位行转换 位行→位列转换 带符号 BCD→BIN 转换 带符号 BCD→BIN 双字转换 带符号 BIN→BCD 转换 带符号 BIN→BCD 双字转换 格雷码转换 助记符 BIN BINL BCD BCDL NEG NEGL SIGN MLPX DMPX ASC HEX LINE COLM BINS BISL BCDS BDSL GRY FUN 编号 023 058 024 059 160 161 600 076 077 086 162 063 064 470 472 471 473 474 页码 3-226 3-228 3-230 3-232 3-233 3-237 3-241 3-244 3-248 3-250 3-252 3-254 3-256 3-258 3-261 3-225 数据转换指令 3-94 BCD→BIN 转换 BIN(023)/BCD→BIN 双字转换 BINL(058) BCD→BIN 转换 BIN 3-94 BCD→BIN 转换 BIN(023)/BCD→BIN 双字转换 BINL(058) 3 概要 各 指 将 BCD 数据转换为 BIN 数据。 令 符号 说 明 S:转换数据 CH 编号 D:转换结果输出 CH 编号 ・指令执行时,N 标志置于 OFF。 (例)S+1, S(BCD)→D+1, D(BIN) S+1 S 0 02 00 05 0 107 106 105 104 103 102 101 100 D+1 D 0 00 30D7 2 167 166 165 164 163 162 161 160 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 BIN @BIN 无 无 BINL @BINL 无 无 功能说明 使用限制(BIN/BINL 指令共通) 对 S 的 BCD 数据进行 BIN 转换,输出到 D。 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 注: 数据内容 ・S 的内容不为 BCD 时,ER 标志为 ON。 ・转换的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ·BCD→BIN 转换 BIN ・指令执行时,N 标志置于 OFF。 区域 CIO(输入输出继电器等) S D 0000~6143 (例)S(BCD)→D(BIN) 内部辅助继电器 W000~511 保持继电器 H000~511 特殊辅助继电器 A000~959 A448~959 时间 T0000~4095 计数器 C0000~4095 数据内存(DM) D00000~32767 BCD→BIN 双字转换 BINL DM 间接(BIN) DM 间接(BCD) @D00000~32767 *D00000~32767 常数 ― 概要 数 将双字 BCD 数据转换为 BIN 数据。 据 转 符号 换 指 BINL 令 S S:转换数据低位 CH 编号 数据寄存器 变址寄存器(直接) 变址寄存器(间接) ·BCD→BIN 双字转换 BINL DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 D D:转换结果输出低位 CH 编号 区域 S D 注:S~S+1 及 D~D+1 必须为同一区域种类。 CIO(输入输出继电器等) 内部辅助继电器 0000~6142 W000~510 功能说明 保持继电器 特殊辅助继电器 H000~510 A000~958 A448~958 对 S+1, S 的 BCD 双字数据进行 BIN 转换,将结果输出 时间 T0000~4094 到 D+1, D。 S+1 S D+1 D 计数器 数据内存(DM) DM 间接(BIN) C0000~4094 D00000~32766 @D00000~32767 (BCD) (BCD) (BIN) (BIN) DM 间接(BCD) *D00000~32767 常数 ― 数据寄存器 ― 注: ・S+1, S 的内容不为 BCD 时,ER 标志为 ON。 变址寄存器(直接) 变址寄存器(间接) ― ,IR0~15 -2048~+2047,IR0~15 ・转换的结果,D+1, D 的内容为 00000000 Hex 时,=标志 为 ON。 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-226 数据转换指令 BCD→BIN 转换 BIN(023)/BCD→BIN 双字转换 BINL(058) 状态标志的动作 (BIN/BINL 指令共通) 3 名称 标记符 内容 各 BIN 指令 BINL 指令 指 出错标志 ER ・S 的数据不为 BCD 时 ・S+1、S 的数据不为 令 为 ON BCD 时为 ON 说 =标志 ・除此之外为 OFF ・除此之外为 OFF = ・转换结果为 0 时为 ON 明 除此之外为 OFF N 标志 N OFF 动作说明 (例) 0.00 BINL 2000 D1000 0.00 为 ON 时,将 201,200CH 的 BCD8 位数据转换为 BIN32 位数据, 输出到 D1001,D1000。 S+1 201 CH 15 0 0 02 0 107 106 105 104 S 200 CH 15 0 0 05 0 103 102 101 100 200050=3 164 13 162 7 161 2 160 15 0 0 00 3 167 166 165 164 D+1 D1001 15 0 0D7 2 163 162 161 160 D D1000 数 据 转 换 指 令 3-227 数据转换指令 3-95 BIN→BCD 转换 BCD(024)/BIN→BCD 双字转换 BCDL(059) BIN→BCD 转换 BCD 3-95 BIN→BCD 转换 BCD(024)/BIN→BCD 双字转换 BCDL(059) 3 概要 各 指 将 BIN 数据转换为 BCD 数据。 令 符号 说 明 BCD S S:转换数据 CH 编号 D D:转换结果输出 CH 编号 操作数说明 S:0000~270F Hex(转换后 0000~9999 的值) 功能说明 将 S+1, S 所指定的 BIN 数据作为双字数据进行 BCD 转 换,将结果输出到 D+1, D。 S+1 (BIN) S (BIN) D+1 (BCD) D (BCD) 注: ・S+1,S 的内容不在 00000000~5F5E0FF Hex 的范围内 时,ER 标志为 ON。 ・转换的结果, D+1,D 的内容为 00000000 Hex 时,=标志 为 ON。 功能说明 对 S 所指定的 BIN 数据进行 BCD 转换,将结果输出到 D。 S (BIN) D (BCD) (例)S+1, S(BIN)→D+1, D(BCD) S+1 S 0 02D3 20 A 167 166 165 164 163 162 161 160 D+1 D 0 29 61 93 0 107 106 105 104 103 102 101 100 注: ・S 的内容不在 0000~270F Hex 的范围内时,ER 标志为 ON。 ・转换的结果,D 的内容为 0000 Hex 时,=标志为 ON。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 BCD @BCD 无 无 BCDL @BCDL 无 无 (例)S(BIN)→D(BCD) 15 12 11 8 7 4 3 0 15 12 11 8 7 4 3 0 S1 0 E C D4 3 3 2 数 163 162 161 160 103 102 101 100 据 转 换 指 令 BIN→BCD 双字转换 BCDL 概要 将双字 BIN 数据转换为 BCD 数据。 符号 BCDL S D S:转换数据低位 CH 编号 D:转换结果输出低位 CH 编号 操作数说明 S:00000000~05F5E0FF Hex(转换后 00000000~ 99999999 的值) 使用限制(BCD/BCDL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 ·BIN→BCD 转换 BCD 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-228 数据转换指令 BIN→BCD 转换 BCD(024)/BIN→BCD 双字转换 BCDL(059) ·BIN→BCD 双字转换 BCDL 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 ― ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 标记符 内容 BCD 指令 BCDL 指令 3 出错标志 ER • S 的数据不在 0000~ • S+1,S 的数据不在 各 270F Hex 的范围内 00000000~ 指 =标志 时为 ON 5F5E0FF Hex 的范 • 除此之外为 OFF 围内时为 ON • 除此之外为 OFF = • 转换结果为 0 时为 ON 令 说 明 • 除此之外为 OFF 动作说明 (例) 0.00 BCDL 200 D1000 0.00 为 ON 时,将 201,200CH 的 BIN32 位数据转换为 BCD8 位数据, 输出到 D1001,D1000。 S+1 201 CH S 200 CH 15 0 15 0 0 0 2 D 3 2 0 A 167 166 165 164 163 162 161 160 数 据 2 165 13 164 3 163 2 162 10=2961930 转 换 指 D+1 D1001 D D1000 15 0 15 0 令 0 2 9 6 1 9 3 0 107 106 105 104 103 102 101 100 3-229 数据转换指令 3-96 2 的单字求补码 NEG(160)/2 的双字求补码 NEGL(161) 2 的补数转换 NEG 3-96 2 的补数转换 NEG(160)/2 的补数双字转换 NEGL(161) 3 概要 各 指 取 BIN 16 位数据的 2 的补数。 令 符号 说 明 NEG S S:转换数据 CH 编号 D D:转换结果输出 CH 编号 功能说明 ·80000000 Hex 的转换结果转成 80000000 Hex。 参考 位取反后+1 的操作相当于从 00000000 Hex 中减去 S 的 内容的操作。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 NEG @NEG 无 无 NEGL @NEGL 无 无 对 S 所指定的数据进行位取反后+1,将结果输出到 D。 2 的补数 (位反转后+1) (S) (D) 注: ·指令执行时,ER 标志置于 OFF。 使用限制(NEG/NEGL 指令共通) 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 ·转换的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ·2 的补数转换 NEG ·转换的结果,D 的内容的最高位位为 1 时,N 标志为 ON。 ·8000 Hex 的转换结果转成 8000 Hex。 区域 CIO(输入输出继电器等) 内部辅助继电器 S D 0000~6143 W000~511 参考 位取反后+1 的操作相当于从 0000 Hex 中减去 S 的内容 的操作。 保持继电器 特殊辅助继电器 时间 计数器 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 数据内存(DM) D00000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 2 的补数双字转换 NEGL 数 据 概要 转 换 取 BIN 32 位数据的 2 的补数。 指 令 符号 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) #0000~FFFF ― (BIN 数据) DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) NEGL ,-(--)IR0~15 S S:转换数据低位 CH 编号 D D:转换结果输出低位 CH 编号 功能说明 将 S 所指定的数据作为双字数据,位取反后+1。结果输 出到 D+1, D。 (S+1 S) 2 的补数 (位反转后+1) (D+1 D) 注: ·指令执行时,ER 标志置于 OFF。 ·转换的结果,D+1, D CH 的内容为 00000000 Hex 时,= 标志为 ON。 ·转换的结果,D+1, D CH 的内容的最高位为 1 时,N 标志 为 ON。 3-230 数据转换指令 2 的单字求补码 NEG(160)/2 的双字求补码 NEGL(161) ·2 的补数双字转换 NEGL 状态标志的动作 (NEG/NEGL 指令共通) 区域 S D 名称 标记符 内容 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 出错标志 =标志 N 标志 ER OFF = ·转换结果为 0 时为 ON ·除此之外为 OFF N ·结果的最高位为 1 时为 ON ·除此之外为 OFF 3 各 指 令 说 明 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~ ― FFFFFFFF (BIN 数据) 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 动作说明 (例) 0.00 为 ON 时,取 D100 的内容的 2 的补数,输出到 D200。 数 取反 据 转 换 指 令 0.01 为 ON 时,取 D1001,D1000 的内容的 2 的补数,输出到 D2001,D2000。 取反 3-231 数据转换指令 3-97 符号扩展 SIGN(600) 概要 执行条件/每次刷新指定 3-97 符号扩展 SIGN(600) 将指定 CH 的数据作为 1 CH 的带符号 BIN 数据,向 2 CH 3 进行符号扩展。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 SIGN @SIGN 各 指 符号 令 下降沿时 1 周期执行 无 每次刷新指定 无 说 SIGN 使用限制 明 S S:扩展数据 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D D:结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 操作数说明 D:S 的内容 D+1:0000 或 FFFF Hex 注:D+1 和 D 必须为同一区域种类。 功能说明 S 的符号位(MSB)的内容为 1 时,向 D+1 CH 输出 FFFF Hex,为 0 时向 D+1 CH 输出 0000 Hex。 S 的内容照原 样输出到 D。因此,S 的 1 CH 数据向 2 CH 进行符号扩 展,输出到 D+1, D。 MSB S MSB=1 时 FFFFHex D+1 MSB=0 时 0000Hex D S 的内容 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S D 0000~6143 0000~6142 W000~511 W000~510 H000~511 H000~510 A000~959 A448~958 T0000~4095 T0000~4094 C0000~4095 C0000~4094 D00000~32767 D00000~32766 @D00000~32767 *D00000~32767 #0000~FFFF ― (BIN 数据) DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 注: 状态标志的动作 数 据 转 ・指令执行时,ER 标志置于 OFF。 ・转换的结果,D+1, D 的内容为 00000000 Hex 时,=标志 名称 出错标志 =标志 标记符 ER = 内容 OFF ・扩展的结果,D+1, D CH 的内容为 00000000 换 为 ON。 Hex 时为 ON 指 令 ・转换的结果,D+1 的内容的最高位位为 1 时,N 标志为 ON。 N 标志 ・除此之外为 OFF N ・结果的最高位为 1 时为 ON ・除此之外为 OFF 动作说明 (例) 0.00 SIGN D100 D200 15 0 1000000000000000 S D100 (例:8000Hex) 15 F F F D+1 D201 0 15 F 8 0 0 D D200 0 0 3-232 数据转换指令 3-98 4→16/8→256 解码器 MLPX(076) 概要 3-98 4→16/8→256 解码器 MLPX(076) 读取指定 CH 的指定位(或指定字节),在指定 CH 的 相应位输出 1,在其他位输出 0。 符号 MLPX S K D S:转换数据 CH 编号 K:控制数据(位指定) D:转换结果输出低位 CH 编号 操作数说明 4→16 解码器时: 15 12 11 87 43 0 S 3 2 1 0 从开始位开始以高位侧的位为解码器的对象 (位 3 之后返回位 0) 15 12 11 K0 87 43 0 l n 请设置为 0 转换数据 CH(S) 的转换开始位编号 :0~3 Hex :位 0(位 0~3)~ 解码器位数 位 3(位 12~15) 0~3 Hex:1~4 位 4→16 解码器时 :0 Hex D:解码位第 1 位解码结果 D+1:解码位第 2 位解码结果 D+2:解码位第 3 位解码结果 D+3:解码位第 4 位解码结果 注:D~最大 D+3 必须为同一区域种类。 8→256 解码器时: 15 87 0 S 1 0 从开始位开始以高位侧的位为解码器的对象 (位 1 之后返回位 0) 15 12 11 K1 87 43 0 l n 转换数据 CH(S) 的转换开始位编号 0 Hex:位 0(位 0~7) 1 Hex:位 1(位 8~15) 请设置为 0 解码器位数 0 Hex:1 位 1 Hex:2 位 8→256 解码器时 :1 Hex D+15~D:解码位第 1 位解码结果 D+31~D+16:解码位第 2 位解码结果 注:D~最大 D+31 必须为同一区域种类。 3 功能说明 各 指 根据转换种类(K),指定 4→16 解码器或 8→256 解码 令 器。 说 4→16 解码器指定时: 明 将 S 所指定的数据的 K 所指定的(从位 n 开始 l+1 个的) 各位(4 位)内容(0~F Hex)视为位位置(0-15),在 D 指定的各 CH(16 位)之后的相应位输出 1,在其他 各位输出 0。 8→256 解码器指定时: 将 S 所指定的数据的 K 所指定的(从位 n 开始 l+1 位的) 各位(8 位)内容(00~FF Hex)视为位位置(0~255), 在 D 指定的各 CH(16 位)之后的相应位中输出 1,在 其他各位输出 0。 数 据 转 换 指 令 3-233 数据转换指令 4→16/8→256 解码器 MLPX(076) 执行条件/每次刷新指定 ON 时每周期执行 MLPX 3 执行条件 上升沿时 1 周期执行 @MLPX 各 下降沿时 1 周期执行 无 指 每次刷新指定 无 令 说 使用限制 明 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 使用 可 可 可 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S K D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 标记符 内容 数 出错标志 ER ・K 的数据在范围外时为 ON 据 ・除此之外为 OFF 转 换 指 令 注: ・4→16 解码器指定时: 通过解码位数(K)指定多位转换时,转换对象的顺序为 从 S 的转换开始位(K 的 n)到高位位侧(位 3 的下一位 返回位 0),转换结果按照从 K 到高位 CH 侧(每 1 位为 1 CH)的顺序进行保存。 ・8→256 解码器指定时: 通过解码位数(K 的 n)指定多位转换时,转换对象的顺 序为从 S 的转换开始位(K)到高位位侧(位 3 的下一位 返回位 0),转换结果按照从 K 到高位 CH 侧(每 1 位为 16 CH)的顺序进行保存。 ・K 的数据位于范围外时,ER 标志为 ON。 参考 所谓 4→16 解码是指,如下图所示,将 4 位 BIN 值作为 位编号,在 16 位中的该位编号上建 1,其他则为 0。 4位 m 15 m 0 0 01 0 0 8→256 解码是指,如下图所示,将 8 位 BIN 值作为位编 号,在 256 位中的该位编号上建 1,其他则为 0。 8位 m 255 m 0 0 01 0 0 3-234 动作说明 (例) 数据转换指令 4→16/8→256 解码器 MLPX(076) ·4→16 解码器 3 0.00 为 ON 时,将从 200CH 起的 3 位(根据 K 的内容)的各值(16 进制数)作 各 为位 NO.,将 D100~D102 的对象位设为 1。 指 令 说 明 位 0~3:开始位 位 4~7:解码对象的位数 位 将 200CH 的位 1 的“6”的位置(位 6)设为 1 将 200CH 的位 2 的“A”的位置(位 10)设为 1 将 200CH 的位 3 的“F”的位置(位 15)设为 1 ·8→256 解码器 0.01 为 ON 时,将从 1000CH 起的高位字节的 2 字节(根据 K 的内容)的各值(16 进制数)作为位 NO.,将 D1000~D1015 和 D1016~D1031 的各 256 位的该位(按 照从低位到高位的顺序,将 16CH 视为连续的 256 位)设为 1。 位 0~3:开始位 位 4~7:解码对象的位数 数 据 转 换 指 令 将 1000CH 的高位字节 “2D”的位置位 45(=第 3 CH 的位 13)设为 1 将 1000CH 的低位字节 “1A”的位置位 26(=第 2CH 的位 10)设为 1 3-235 数据转换指令 4→16/8→256 解码器 MLPX(076) 多位解码示例 4→16 解码示例: 3 各 K #0010 指 15 12 11 8 7 4 3 0 令 S3 2 1 0 说 明 15 0 D D+1 K #0030 15 12 11 8 7 4 3 0 S3 2 1 0 15 0 D D+1 D+2 D+3 K #0031 15 12 11 8 7 4 3 0 S3 2 1 0 15 0 D D+1 D+2 D+3 8→256 解码示例: K #1010 15 12 11 8 7 4 3 0 S 1 0 K #1011 15 12 11 8 7 4 3 0 S 1 0 15 0 15 0 D D D+15 D+16 D+15 D+16 数 D+31 据 转 换 指 令 D+31 3-236 数据转换指令 3-99 16→4/256→8 编码器 DMPX(077) 概要 256→8 编码器时: 3-99 16→4/256→8 编码器 DMPX(077) 读取指定 CH 的 16 位或 256 位中 ON 的最高位或最低 S+15~S:编码位第 1 位编码对象 位,输出到指定 CH 的指定位或指定字节。 S+31~S+16:编码位第 2 位编码对象 3 各 符号 15 12 11 87 43 0 指 K1 l n 令 DMPX 转换结果输出开始位编号: 说 S S:转换数据低位 CH 编号 0 Hex:位 0(位 0~7) 明 D D:转换结果输出 CH 编号 1 Hex:位 1(位 8~15) 编码器位数 K K:控制数据(位指定) 0 Hex:1 位 1 Hex:2 位 操作数说明 16→4 编码器时: 编码器位数 0 Hex:为 ON 的最高位 1 Hex:为 ON 的最低位 S:编码位第 1 位编码对象 S+1:编码位第 2 位编码对象 S+2:编码位第 3 位编码对象 S+3:编码位第 4 位编码对象 15 12 11 K0 87 43 0 l n 256→8 编码器时:1Hex 15 87 0 D 1 0 将 S~S+15、S+16~S+31 的各编码器结果从开始位开 始存储到高位(位 1 之后返回位 0) 功能说明 转换结果输出开始位编号: :0~3 Hex :位 0(位 0~3) ~位 3(位 12~15) 编码器位数 0~3 Hex:1~4 位 编码器位数 0 Hex:为 ON 的最高位 1 Hex:为 ON 的最低位 16→4 编码器时:0Hex 15 12 11 87 43 0 D 3 2 1 0 将 S 开始 S+3 的各编码器结果从开始位开始存储到高 位侧(位 3 之后返回位 0) 根据转换种类(K),指定 16→4 编码器或 256→8 编码 器。 16→4 编码器指定时: 从 S 中读取 K 的 1 所指定的数的各 16 位(1 通道)中, 编码对象位(ON 的位之中,最高位或最低位)的位编 号(0~15),将位编号(0~F Hex)输出到 K 的 n 所 指定的 D 的输出开始位(4 位)之后。 K0 0 l n 最高位指定 从此处开始 数 据 15 p m 0 l=1 时 转 S 1 (2 位) 换 S+1 1 指 令 16→4 编码(将 16 位中最高位编号作 为 4 位 BIN 开始) 最高位 n3 2 1 Dp m 输出开始位 n=2 时 0 3-237 数据转换指令 16→4/256→8 编码器 DMPX(077) 256→8 编码器指定时: 执行条件/每次刷新指定 从 S 中读取 K 的 1 所指定的数的各 256 位(16 通道)中, ON 时每周期执行 3 编码对象位(ON 的位之中,最高位或最低位)的位编 执行条件 上升沿时 1 周期执行 各 号(0~255),将位编号(00~FF Hex)输出到 K 的 n 指 令 所指定的 D 的输出开始位(8 位)之后。 下降沿时 1 周期执行 每次刷新指定 说 K1 1/0 l n 使用限制 DMPX @DMPX 无 无 明 l=0 时 区域 块程序区 工程步进 子程序区域 中断任务 15 S 31 S+1 0 16 最高位 最低位 域 程序区域 程序区域 使用 可 可 可 可 数据内容 239 m 224 S+14 255 1 240 S+15 最高位指定: 从此处开始 256→8 位 (256 位中将最高位编号作为 8 位 BIN 值保存) 输出开始字节 高位字节 D m 低位字节 n=1 时 区域 CIO(输入输出继电器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S D K 0000~6143 A000~959 W000~511 H000~511 A448~959 T0000~4095 C0000~4095 A000~959 D00000~32767 @D00000~32767 *D00000~32767 ― ― 参照左边 ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 数 据 转 名称 出错标志 标记符 ER 内容 ・S 所指定的转换数据中的任何 1CH 为 0000 换 Hex(不存在可编码的位)时为 ON 指 ・K 的数据在范围外时为 ON 令 ・除此之外为 OFF 3-238 数据转换指令 16→4/256→8 编码器 DMPX(077) 注: 参考 ·16→4 编码器指定时: 输出对象以外的数据不发生变化。通过编码位编号(K) 指定多位转换时,转换对象的顺序为从 S 到高位 CH 侧 16→4 编码如下图所示,是指将从 16 位中建 1 的最高位 或最低位编号(m)转换为 4 位 BIN 值。 3 各 (每 1 位 1 CH),转换结果按照从 D 的输出开始位(K) 15 m 0 指 到高位位侧(位 3 之后返回位 0)的顺序进行保存。 0 01 0 0 令 ·256→8 编码器指定时: 最高位的 ON 位 最低位的 ON 位 说 输出对象以外的数据不发生变化。通过编码位编号(K) m 明 指定多位转换时,转换对象的顺序为从 S 到高位 CH 侧 (每 1 字节 16 CH),转换结果按照从 D 的输出开始位 4位 (K)到高位位侧(位 1 之后返回位 0)的顺序进行保存。 ·S(转换数据低位 CH 编号)所指定的转换数据中,任何 1CH 为 0000 Hex 时(不存在可编码的位时),ER 标志 为 ON。 256→8 编码如下图所示,是指将 256 位中为 1 的最高位 或最低位编号(m)转换为 8 位 BIN 值。 255 m 0 0 01 0 0 最高位的 ON 位 最低位的 ON 位 m 8位 动作说明 (例) 0.00 DMPX 16→4 编码器 0.00 为 ON 时,将 200~202CH 的各 3CH 的 16 位中转成 1 的各最高位 No. 以 16 进制数保存到 D1000 的 1~3 位。 S 200 D D1000 K #0021 15 12 11 87 43 0 K# 0 0 2 1 16 位中转成 1 的最高位 No. 数 据 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 转 S 200 CH 1 输出开始位 换 指 201 CH 1 令 202 CH 1 3 2 1 0 15 12 11 87 43 0 D D10000 2 A 5 3-239 数据转换指令 16→4/256→8 编码器 DMPX(077) 多位编码示例 16→4 编码示例: 3 各 K #0011 K #0030 指 15 0 15 0 令 S S 说 S+1 S+1 明 S+2 S+3 15 12 11 8 7 4 3 0 D3 2 1 0 15 12 11 8 7 4 3 0 D3 2 1 0 K #0032 15 0 S S+1 S+2 S+3 K #0013 15 0 S S+1 15 12 11 8 7 4 3 0 D3 2 1 0 15 12 11 8 7 4 3 0 D 3 2 1 0 256→8 编码示例: 数 K #1010 K #1011 据 15 0 15 0 转 换 S S 指 令 S+15 S+15 S+16 S+16 S+31 S+31 15 87 0 S 1 0 15 87 0 S 1 0 转换数据中即使包含 0000 Hex,对于其他数据进行编码时,也请分割为多个 DMPX 指令。 (例)4 位指定的 16→4 编码器时 DMPX D0000 D0100 #0030 ↓ DMPX D0000 D0100 #0000 DMPX D0001 D0100 #0001 DMPX D0002 D0100 #0002 DMPX D0003 D0100 #0003 3-240 数据转换指令 3-100 ASCII 代码转换 ASC(086) 概要 3-100 ASCII 代码转换 ASC(086) 将 16 位数据的指定位转换为 ASCII 代码。 符号 ASC S K D S:转换数据 CH 编号 K:控制数据 D:转换结果输出低位 CH 编号 操作数说明 15 12 11 87 43 0 S 3 2 1 0 从转换开始位开始将高位位侧视为 HEX 数据 转换为 ASCII 代码(位 3 之后返回位 0) 功能说明 将 S 视为 4 位的 HEX 数据,并将转换开始位编号(K 的 m)及转换位数(K 的 n)所指定的位的数据(0~F 3 Hex)转换为 8 位的 ASCII 代码数据(“0”(30Hex)~“9” 各 (39 Hex),“A”(41 Hex)~“F”(46 Hex)),将结果 输出到 D、K 所指定的输出位置(从高位或低位开始保 存)。 此外,ASCII 代码数据的最高位可以指定奇偶校验(K 指 令 说 明 的位 12~15),可以转换为奇数或偶数校验位(将 8 位 中 1 的位数调整为奇数或偶数)。 转换开始位 15 12 11 K0 87 43 0 n m n+1 位 转换位数 转换数据 CH(S)的转换 开始位编号 0~3 Hex 0 Hex:位 0(S 的位 0~3) 1 Hex:位 1(S 的位 4~7) 2 Hex:位 2(S 的位 8~11) 3 Hex:位 3(S 的位 12~15) (1)高位 低位(0) 转换位数:0~3Hex 0 Hex:1 位 1 Hex:2 位 2 Hex:3 位 3 Hex:4 位 执行条件/每次刷新指定 转换结果输出 CH 的输出位置:0~1 Hex 0 Hex:低位字节 1 Hex:高位字节 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 ASC @ASC 无 奇偶校验指定(注):0~2 Hex 每次刷新指定 无 数 0 Hex:无校验 1 Hex:偶校验 (注)为了将 8 位之中,ON(1)的位 的数设为偶数或奇数,指定是否 使用限制 据 转 2 Hex:奇校验 调整转换结果数据 D 的各位的 区域 块程序区 工程步进 子程序区域 中断任务 换 最高位 域 程序区域 程序区域 指 令 使用 可 可 可 可 15 87 0 D 高位字节 低位字节 D+1 高位字节 低位字节 D+2 高位字节 低位字节 从 D 的输出开始字节开始,按照低位到高位的顺 序向高位 CH 侧存储 ASCII 代码 3-241 数据转换指令 ASCII 代码转换 ASC(086) 数据内容 区域 3 CIO(输入输出继电器等) 各 内部辅助继电器 指 保持继电器 令 特殊辅助继电器 说 时间 明 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S K D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER 内容 ・K 的数据在范围外时为 ON ・除此之外为 OFF 注: ・通过转换位数(K)指定多位转换时,转换对象位的顺序 转成从开始位到高位位侧(位 3 之后返回位 0),转换结 果按照从 D 的输出位置到高位 CH 侧(8 位单位)的顺序 进行保存。 ・转换结果输出 CH 的数据之中,保持非输出对象的位置的 数据。 请注意 ・K 的数据位于范围外时,ER 标志为 ON。 参考 所谓奇偶校验位,是指为了检测数据传输过程中的错误 而附加到数据上的位。通过附加此位,将数据中的 1 的 个数始终作为奇数或偶数进行传送,如果接收侧 1 的个 数不为奇数或偶数,则说明传送中发生了错误。 动作说明 (例) 数 据 转 换 指 令 0.00 为 ON 时,将 D100 视为 4 位的 HEX(16 进制)数据,根据控制数据的内 容,将位 1~3 的 3 位转换为 ASCII 代码,存储在 D200 高位字节开始的 3 字节。 转换位数 转换开始位 转换开始位:位 1 (位 4~7) 转换位数:3 位 存储开始字节:高位字节 奇偶校验指定:无 存储开始字节 (高字节)leftmost byte 从高位字节开始存储 高位 低位 3-242 数据转换指令 ASCII 代码转换 ASC(086) ASCII 代码转换例 奇偶校验指定和奇偶校验位的内容 转换数据位内容 转换输出数据 ・奇偶校验指定 0 无奇偶校验指定 数值 位内容 代码 (MSB) 位内容 奇偶校验位的内容输出 0。 3 (LSB) 0 0 0 0 0 30 Hex * 0 1 1 0 0 0 0 1 0 0 0 1 31 Hex * 0 1 1 0 0 0 1 2 0 0 1 0 32 Hex * 0 1 1 0 0 1 0 3 0 0 1 1 33 Hex * 0 1 1 0 0 1 1 ・奇偶校验指定 1 偶数校验指定 变化内容为,奇偶校验位内容在其他 7 位之中,ON 的位的数目为奇数时则为 ON,为偶数时则为 OFF,8 位之中 ON 的位的合计为偶数。 各 指 令 说 明 4 0 1 0 0 34 Hex * 0 1 1 0 1 0 0 5 0 1 0 1 35 Hex * 0 1 1 0 1 0 1 例: 6 0 1 1 0 36 Hex * 0 1 1 0 1 1 0 7 0 1 1 1 37 Hex * 0 1 1 0 1 1 1 奇数 8 1 0 0 0 38 Hex * 0 1 1 1 0 0 0 9 1 0 0 1 39 Hex * 0 1 1 1 0 0 1 A 1 0 1 0 41 Hex * 1 0 0 0 0 0 1 B 1 0 1 1 42 Hex * 1 0 0 0 0 1 0 C 1 1 0 0 43 Hex * 1 0 0 0 0 1 1 S2 1 1 0 1 44 Hex * 1 0 0 0 1 0 0 E 1 1 1 0 45 Hex * 1 0 0 0 1 0 1 F 1 1 1 1 46 Hex * 1 0 0 0 1 1 0 偶数 ·奇偶校验指定 2 奇数校验指定 奇偶校验位内容为在其他 7 位之中 ON 的位的数目为 偶数时则为 ON,为奇数时则为 OFF,8 位之中 ON 的 位的合计为奇数。 *:奇偶校验位…因奇偶校验指定而异。 例: 多位 ASCII 代码转换示例 K #0011 K #0112 K #0030 数 据 15 12 11 8 7 4 3 0 15 12 11 8 7 4 3 0 15 12 11 8 7 4 3 0 转 S 位3 位2 位1 位0 S 位3 位2 位1 位0 S 位3 位2 位1 位0 换 指 令 15 87 0 D 高位 低位 15 87 0 D 高位 D+1 低位 15 87 0 D 高位 低位 D+1 高位 低位 K #0130 15 12 11 8 7 4 3 0 S 位3 位2 位1 位0 15 87 0 D 高位 D+1 高位 低位 D+2 低位 3-243 数据转换指令 3-101 ASCII→HEX 转换 HEX(162) 概要 3-101 ASCII→HEX 转换 HEX(162) 将 CH 数据的指定位的内容作为 4 个字节 ASCII 数据处 3 理,作为指定 CH 的指定位所对应的 HEX 数据输出。 各 指 符号 令 说 HEX 明 S S:转换数据低位 CH 编号 C C:控制数据 D D:转换结果输出 CH 编号 高位 S 33 S+1 C0 0/1 n m 转换开始位置 低位 32 34 ASCII 转换位数 输出开始位 HEX n+1 m D4 3 2 操作数说明 15 87 0 S 高位字节 低位字节 从转换开始字节开始将高位侧视为 ASCII 代码转换 为 HEX(高位字节之后返回低位字节) 15 12 11 87 43 0 C n m 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 HEX @HEX 无 无 转换结果输出开始位编号 :0~3 Hex 0 Hex:位 0(D 的位 0~3) 1 Hex:位 1(D 的位 4~7) 2 Hex:位 2(D 的位 8~11) 3 Hex:位 3(D 的位 12~15) 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 转换位数:0~3 Hex 数据内容 0 Hex:1 位 1 Hex:2 位 2 Hex:3 位 3 Hex:4 位 区域 S C D CIO(输入输出继电器等) 0000~6143 内部辅助继电器 W000~511 ASCII 数据转换开始位置:0~11 Hex 保持继电器 H000~511 0 Hex:低位字节 特殊辅助继电器 A000~959 A448~959 数 1 Hex:高位字节 据 奇偶校验指定(注):0~2Hex 时间 计数器 T0000~4095 C0000~4095 转 换 指 令 0 Hex:无校验 1 Hex:偶校验 2 Hex:奇校验 (注)为了将 S 的转换源 8 位数据之中 ON(1)的位的数设为偶数或奇 数,可指定是否将最高位作为调 整转换 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 D00000~32767 @D00000~32767 *D00000~32767 ― 参照左边 ― 数据寄存器 ― DR0~15 ― 15 12 11 87 43 0 变址寄存器(直接) ― D 3 2 1 0 变址寄存器(间接) ,IR0~15 将向 HEX 的转换结果从开始位开始存储到高位 -2048~+2047,IR0~15 侧(位 3 之后返回位 0) DR0~15,IR0~15 ,IR0~15+(++) 功能说明 ,-(--)IR0~15 将 S 视为高位 8 位、低位 8 位的 ASCII 代码数据(“0” (30 Hex)-“9”(39 Hex),“A”(41 Hex)-“F”(46 Hex)),转换为 HEX 数据,将结果输出到 D。将转换 开始位置(C)所指定的数据转换为 1 位(4 位)的 HEX 数据(0-F Hex),并将结果输出到 D 的指定输出开始位 (C)。 可将 ASCII 代码数据的最高位视为根据奇偶校 验指定(C)的奇数或偶数奇偶校验位,进行数据转换。 3-244 数据转换指令 ASCII→HEX 转换 HEX(162) 状态标志的动作 限制事项 名称 标记符 内容 S 可指定的 ASCII 代码数据必须在以下范围内。 出错标志 ER ・S 的 ASCII 代码数据在奇偶校验出错时为 ON 30 Hex(ASCII 字符 0)~39 Hex(ASCII 字符 9) 3 ・S 的数据为不可转换的 ASCII 代码数据时为 41 Hex(ASCII 字符 A)~46 Hex(ASCII 字符 F) 各 ON (奇偶校验位除外) 指 ・C 的数据在范围之外时为 ON ・除此之外为 OFF 参考 令 说 所谓奇偶校验位,是指为了检测数据传输过程中的错误 明 注: 而附加到数据上的位。通过附加此位,将数据中的 1 的 ・通过转换位数(C)指定多位转换时,转换对象的顺序为 个数始终作为奇数或偶数进行传送,如果接收侧 1 的个 从 S 的转换开始位置(C)到高位 CH 侧,转换结果按照 数不为奇数或偶数,则说明传送中发生了错误。 从 D 的输出开始位(C)到高位位侧(位 3 之后返回位 0) 的顺序进行保存。 ・转换结果输出 CH 的数据之中,将保持非输出对象的位的 数据(保持原样)。 ・S 的 ASCII 代码数据出现奇偶校验出错或 S 的内容为不 可转换的 ASCII 代码数据,或 C 的内容位于范围外时 ER 标志为 ON。 动作说明 (例) 0.00 为 ON 时,将 D100,D101 视为 ASCII 代码数据,根据#0121,将从 D100 高位字节开始的 3 字节(3 字符 ASCII 代码)转换为 HEX(16 进制)数据,存 储在 D200 的位 1~3 的 3 位。 高位 转换开始位置 低位 转换位数:3 输出开始位 3位 输出开始位:位 1 (位 4~7) 转换位数:3 位 转换开始位置:高位字节 数 据 奇偶校验指定:无 转 换 指 令 3-245 数据转换指令 ASCII→HEX 转换 HEX(162) 关于奇偶校验指定 0:无指定 3 仅在转换数据的奇偶校验位为 0 时执行转换。不为 0 时,出错标志为 ON,不执行转换。 各 指 令 1:偶数指定 仅在转换数据(8 位)中「1」的个数为偶数时执行转换。「1」的个数为奇数时,出错标志为 ON,不执行转换。 说 例. 明 「1」的个数为偶数 执行转换 「1」的个数为奇数 不转换 执行转换 2:奇数指定 仅在转换数据(8 位)中「1」的个数为奇数时执行转换。「1」的个数为偶数时,出错标志为 ON,不执行转换。 例. 「1」的个数为奇数 执行转换 「1」的个数为偶数 不转换 执行转换 转换例 ASCII 代码 转换数据 (MSB) 位内容 (LSB) 转换结果(Hex 数据) 数值 位内容 $30 *0 1 1 0 0 0 0 0 0000 $31 *0 1 1 0 0 0 1 1 0001 $32 *0 1 1 0 0 1 0 2 0010 $33 *0 1 1 0 0 1 1 3 0011 $34 *0 1 1 0 1 0 0 4 0100 $35 *0 1 1 0 1 0 1 5 0101 $36 *0 1 1 0 1 1 0 6 0110 $37 *0 1 1 0 1 1 1 7 0111 $38 *0 1 1 1 0 0 0 8 1000 $39 *0 1 1 1 0 0 1 9 1001 数 据 $41 *1 0 0 0 0 0 1 A 1010 转 $42 *1 0 0 0 0 1 0 B 1011 换 $43 *1 0 0 0 0 1 1 C 1100 指 $44 *1 0 0 0 1 0 0 S2 1101 令 $45 *1 0 0 0 1 0 1 E 1110 $46 *1 0 0 0 1 1 0 F 1111 *:奇偶校验位…因奇偶校验指定而异。 3-246 数据转换指令 ASCII→HEX 转换 HEX(162) 动作说明 0.00 为 ON 时,根据控制数据的内容,数据存储器 D100 的 ASCII 代码数据转换 3 为 BIN 数据,将结果输出到 D200。 各 指 控制数据的内容 令 说 明 输出开始位编号:第 1 位 转换位数:2 位 ASCII 数据转换开始位置:低位 8 位 奇偶校验指定:偶数指定 奇偶校验指定:偶数指定 无变化 转换 ASCII 数据转换开始位置: 低位 8 位 输出开始位编号:第 1 位 无变化 转换位数:2 位 多字节 ASCII 代码向 HEX 数据转换示例 K #0112 K #0030 K #0131 15 87 0 15 87 0 15 87 0 S 高位 S 高位 低位 S 高位 数 据 S+1 低位 S+1 高位 低位 S+1 高位 低位 转 S+2 低位 换 指 令 15 12 11 8 7 4 3 0 D 15 12 11 8 7 4 3 0 D 15 12 11 8 7 4 3 0 F 3-247 数据转换指令 3-102 位列→位行转换 LINE(063) 概要 执行条件/每次刷新指定 3-102 位列→位行转换 LINE(063) 在被指定的 16 CH 数据内,仅将指定位的数据设置在其 3 他指定 CH 的相应位。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 LINE @LINE 无 无 说 LINE 使用限制 明 S S:转换数据 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 N N:位位置指定数据 D D:转换结果输出 CH 编号 域 程序区域 程序区域 使用 可 可 可 可 操作数说明 15 S S+15 该位输出到 D N 0 数据内容 区域 CIO(输入输出继电器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) S 0000~6128 W000~496 H000~496 A000~944 T0000~4080 C0000~4080 D00000~ N D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 N:0000~000FHex 或 10 进制&0~15 15 14 10 D DM 间接(BIN) DM 间接(BCD) 常数 32752 @D00000~32767 *D00000~32767 ― #0000~ ― S 的指定位 S+1 的指定位 000F (BIN 数据) 或&0~15 S+14 的指定位 数据寄存器 ― DR0~15 S+15 的指定位 变址寄存器(直接) 变址寄存器(间接) ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) 数 据 功能说明 ,-(--)IR0~15 转 换 指 从 S 指定的转换数据低位 CH 编号开始 16 CH 的数据中 抽取 N 指定的位位置的 ON/OFF 内容,作为 16 位的数 状态标志的动作 令 据输出到 D。 名称 标记符 内容 出错标志 ER ・N 的数据在 0000~000F Hex 范围内不存在时 为 ON ・除此之外为 OFF =标志 = ・转换结果为 0 时为 ON ・除此之外为 OFF 注: ·N 的内容不在 0000~000F Hex 的范围内时,ER 标志为 ON。 ·转换的结果,D 的内容为 0000 Hex 时,=标志为 ON。 3-248 数据转换指令 位列→位行转换 LINE(063) 动作说明 (例) 0.00 为 ON 时,将 D100~D115 的位 5 的位列数据作为 00~15 位行数据传送到 D200。 3 各 指 令 说 明 数 据 转 换 指 令 3-249 数据转换指令 3-103 位行→位列转换 COLM(064) 概要 执行条件/每次刷新指定 3-103 位行→位列转换 COLM(064) 将指定 CH 的各位数据设置到其他指定 CH 开始的 16 3 CH 的指定位。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 COLM @COLM 无 无 说 COLM 使用限制 明 S S:转换数据 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D D:转换结果输出低位 CH 编号 N N:位位置指定数据 域 程序区域 程序区域 使用 可 可 可 可 操作数说明 S 的位 0~15 被输出 数据内容 区域 CIO(输入输出继电 器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) S 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~ D 0000~6128 W000~496 H000~496 A448~944 T0000~4080 C0000~4080 D00000~ N 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~ 32767 32752 32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #0000~FFFF ― #0000~000F D 的 N 指定的位: 输出 S 的位 0 (BIN 数据) (BIN 数据)或 10 进制&0~15 D+1 的 N 指定的位: 输出 S 的位 1 数据寄存器 DR0~15 ― DR0~15 变址寄存器(直接) ― D+15 的 N 指定的位: 输出 S 的位 15 N:0000~000F Hex 或 10 进制&0~15 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 注:D~D+15 必须为同一区域种类。 ,IR0~15+(++) ,-(--)IR0~15 数 据 功能说明 转 将 S(16 位)的各位内容(从位 0 到位 15)分别输出到 状态标志的动作 换 指 D 指定的转换结果输出低位 CH 编号开始 16 CH 的数据 名称 标记符 内容 令 的指定位位置(N)。转换结果输出 CH 的指定位以外 出错标志 ER ・N 的数据在 0000~000F Hex 范围内不存在时 的数据不变(保持原样)。 为 ON ・除此之外为 OFF =标志 = ・转换结果,D~D+15 的指定位全部为 0 时为 ON ・除此之外为 OFF 注: ·N 的内容不在 0000~000F Hex 的范围内时,ER 标志为 ON。 ·转换的结果,D~D+15 的指定位(N)全部为 0 时,= 标志为 ON。 3-250 动作说明 (例) 数据转换指令 位行→位列转换 COLM(064) 3 0.00 为 ON 时,将 D200 的 0~15 的位行数据作为 D100~D115 的位 5 的位列数据进行传送。 各 指 令 说 明 数 据 转 换 指 令 3-251 数据转换指令 3-104 带符号 BCD→BIN 转换 BINS(470) 概要 3-104 带符号 BCD→BIN 转换 BINS(470) 将带符号单字 BCD 数据转换为带符号 BIN 数据。 3 各 符号 指 令 BINS 说 C C:数据类型指定编号 明 S S:转换数据 CH 编号 D D:转换结果输出 CH 编号 操作数说明 C:0000~0003 Hex S: C=0000 Hex 时 S 的值:-999~999(BCD) C=0003 Hex 时 S 的值:-1999~9999(BCD) 15 12 11 87 43 0 S BCD 3 位的 12 位 “0”“9”:BCD 第 4 位 “A”:负数(-1) “F”:负数(-) (“B”~“E”:出错) 功能说明 将 S 作为 C 指定的类型的带符号 BCD 数据,转换为带 符号 BIN 数据(16 位),将结果输出到 D。 C 输入数据的范围 S (带符号 BCD) D (带符号 BIN) C=0001 Hex 时 S 的值:-7999~7999(BCD) 15 12 11 87 43 0 S 数 据 BCD 第 4 位 BCD 3 位的 12 位 转 3 位(0~7) 换 指 符号位 令 0:正数 1:负数 C=0002 Hex 时 S 的值:-999~9999(BCD) 15 12 11 87 43 0 S BCD 3 位的 12 位 “0”~“9”:BCD 第 4 位 “F”:负数(-) (“A”~“E”:出错) 数据类型指定编号 C 0000 Hex 0001 Hex 0002 Hex 0003 Hex 转换数据 (BCD) S -999~-1 0~999 -7999~-1 0~7999 -999~-1 0~9999 -1999~-1 0~9999 转换结果数据 (BIN) D FC19~FFFF 0000~03E7 E0C1~FFFF 0000~1F3F FC19~FFFF 0000~270F F831~FFFF 0000~270F 3-252 数据转换指令 带符号 BCD→BIN 转换 BINS(470) 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 BINS @BINS 无 无 使用限制 区域 块程序区 工程步进 子程序区域 中断任务 ER 标志为 ON。 ・C 的内容不在 0000~0003 Hex 的范围内时,ER 标志为 ON。 3 ・S 的内容不为 BCD 时,ER 标志为 ON。 各 ・转换的结果,D 的内容为 0000 Hex 时,=标志为 ON。 指 ・转换的结果,D 的内容的最高位位为 1 时,N 标志为 ON。 令 说 明 域 程序区域 程序区域 动作说明 使用 可 可 可 可 0.00 数据内容 BINS 区域 C S D CIO(输入输出继电器 0000~6143 等) 内部辅助继电器 W000~511 #0000 D100 D200 保持继电器 H000~511 特殊辅助继电器 A000~959 A448~959 时间 T0000~4095 计数器 C0000~4095 数据内存(DM) D00000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #0000~0003 ― (BIN 数据) 输入继电器 0.00 为 ON 时,首先校验 D100 的数据类型 数据寄存器 变址寄存器(直接) 变址寄存器(间接) DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 和范围是否符合数据类型指定 0000。如果校验结果为正 常,数据存储器 D100 的带符号 BCD 数据转换为带符号 BIN 数据,结果输出到 D200。 0.01 状态标志的动作 名称 出错标志 标记符 ER 内容 ・转换数据的最高位为 A~E 时为 ON(C 中指 定了 0002 Hex 时) ・转换数据的最高位为 B~E 时为 ON(C 中指 定了 0003 Hex 时) ・C 的数据不在 0000~0003 Hex 范围内时为 ON ・S 的数据不为 BCD 时为 ON BINS #0003 D300 数 D400 据 转 换 指 令 ・除此之外为 OFF =标志 = ・转换结果为 0 时为 ON ・除此之外为 OFF N 标志 N ・转换结果的最高位位为 1 时为 ON ・除此之外为 OFF 输入继电器 0.01 为 ON 时,首先校验 D300 的数据类型 和范围是否符合数据类型指定 0003。如果校验结果为正 注: 常,数据存储器 D300 的带符号 BCD 数据转换为带符号 ・转换数据(S)设定为「负数的 0」时也不作为错误,而 BIN 数据,结果输出到 D400。 当作 0 处理。 ・C 中指定 0002 Hex 时,转换数据 S 的最高位为 A~E 时, ER 标志为 ON。 ・C 中指定 0003 Hex 时,转换数据 S 的最高位为 B~E 时, 3-253 数据转换指令 3-105 带符号 BCD→BIN 双字转换 BISL(472) 概要 3-105 带符号 BCD→BIN 双字转换 BISL(472) 将带符号双字 BCD 数据转换为带符号 BIN 数据。 3 各 符号 指 令 BISL 说 C C:数据类型指定编号 明 S S:转换数据低位 CH 编号 D D:转换结果低位 CH 编号 功能说明 将 S+1, S 作为 C 指定的类型的带符号 BCD 数据,转换 为带符号 BIN 数据(32 位),将结果输出到 D+1、D。 结果为负时,表示为 2 的补数。 C 输入数据的范围 S (带符号 BCD) S+1 (带符号 BCD) D (带符号 BIN) D+1 (带符号 BIN) 操作数说明 C:0000~0003 Hex S: C=0000 Hex 时 S+1, S 的值:-9999999~9999999(BCD) C=0001 Hex 时 S+1, S 的值:-79999999~79999999(BCD) 数据类型指 定编号 C 0000 Hex 0001 Hex 0002 Hex 0003 Hex 转换数据(BCD) S -9999999~-1 0~9999999 -79999999~-1 0~79999999 -9999999~-1 0~99999999 -19999999~-1 0~99999999 转换结果数据(BIN) D FF676981~FFFF FFFF 00000000~0098967F FB3B4C01~FFFFFFFF 00000000~04C4B3FF FF676981~FFFFFFFF 00000000~05F5E0FF FECED301~FFFFFFFF 00000000~05F5E0FF 执行条件/每次刷新指定 15 12 11 8 7 4 3 0 15 12 11 8 7 4 3 0 S+1 S 执行条件 ON 时每周期执行 上升沿时 1 周期执行 BISL @BISL BCD 4 位的 BCD3 位的 12 位 3 位(0~7) 数 据 转 换 符号位 0:正数 1:负数 指 令 C=0002 Hex 时 下降沿时 1 周期执行 无 每次刷新指定 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 S+1, S 的值:-9999999~99999999(BCD) 15 12 11 8 7 43 0 15 12 11 8 7 43 0 S+1 S “0”~“9”:BCD 第 4 位 “F”:负数(-) (“A”~“E”:出错) BCD3 位的 12 位 C=0003 Hex 时 S+1, S 的值:-19999999~99999999(BCD) 15 12 11 8 7 4 3 0 15 12 11 8 7 4 3 0 S+1 S “0”~“9”:BCD 第 4 位 “A”:负数(-1) “F”:负数(-) (“B”~“E”:出错) BCD3 位的 12 位 3-254 数据转换指令 带符号 BCD→BIN 双字转换 BISL(472) 数据内容 区域 CIO ( 输 入 输 出 继 电 器 等) C 0000~6143 S D 0000~6142 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~ W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 32767 @D00000~32767 *D00000~32767 #0000~0003 ― (BIN 数据) DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 为带符号 BIN 数据,将结果输出到指定的 D+1, D CH。 校验结果如果异常,出错标志(ER)为 ON,不执行指 令。 ・带符号 BCD 数据中-0 作为+0 处理。 3 各 ・转换数据为负时,转换结果作为 2 的补数输出。此时, 指 否定(N)为 ON。 令 若将 2 的补数转换为真数,需要一个[0-2 的补数=真 说 数]的程序。 明 动作说明 0.00 S+1:D101 F345 BISL #0002 D100 D200 S:D100 6789 带符号双字 BCD 数据 (-3456789) 状态标志的动作 D+1:D201 D:D200 名称 标记符 内容 FFCB 40EB 带符号双字 BIN 数据 出错标志 ER ・转换数据的最高位为 A~E 时为 ON(C 中指 定了 0002 Hex 时) ・转换数据的最高位为 B~E 时为 ON(C 中指 输入继电器 0.00 为 ON 时,首先校验 D101, D100 的数 定了 0003 Hex 时) ・C 的数据不在 0000~0003 Hex 范围内时为 ON ・S 的数据不为 BCD 时为 ON ・除此之外为 OFF 据类型和范围是否符合数据类型指定 0002。校验结果如 果正常,数据存储器 D101, D100 的带符号 BCD 数据将 转换为带符号双字 BIN 数据,结果输出到 D201, D200。 =标志 = ・转换结果为 0 时为 ON ・除此之外为 OFF N 标志 N ・转换结果的最高位位为 1 时为 ON 数 ・除此之外为 OFF 据 转 换 注: 指 令 ・转换数据(S)中设定了「负数的 0」,也不作为错误, 而作为 0 处理。 ・C 中指定 0000 Hex 时,S+1 的位 13~15 不作为错误校验 对象。 ・C 中指定 0002 Hex 时,转换数据 S+1, S 的最高位为 A~ E 时,ER 标志为 ON。 ・C 中指定 0003 Hex 时,转换数据 S+1, S 的最高位为 B~ E 时,ER 标志为 ON。 ・C 的内容不在 0000~0003 Hex 的范围内时,ER 标志为 ON。 ・S 的内容不为 BCD 时,ER 标志为 ON。 ・转换的结果,D+1, D 的内容为 00000000 Hex 时,=标志 为 ON。 ・转换的结果,D+1, D 的内容的最高位位为 1 时,N 标志 为 ON。 ・首先校验 S+1、S 通道的带符号 BCD 数据的类型和范围 是否符合数据类型指定。 校验结果如果正常,S+1, S CH 的带符号 BCD 数据转换 3-255 数据转换指令 3-106 带符号 BIN→BCD 转换 BCDS(471) 概要 3-106 带符号 BIN→BCD 转换 BCDS(471) 将带符号 BIN 数据转换为带符号 BCD 数据。 3 各 符号 指 令 BCDS 说 C C:数据类型指定编号 明 S S:转换数据 CH 编号 D D:转换结果输出 CH 编号 操作数说明 C:0000~0003 Hex S: C=0000 Hex 时 0000~03E7 Hex FC19~FFFF Hex C=0001 Hex 时 0000~1F3F Hex E0C1~FFFF Hex C=0002 Hex 时 0000~270F Hex FC19~FFFF Hex C=0003 Hex 时 0000~270F Hex F831~FFFF Hex D: C=0000 Hex 时 D 的值:-999~999(BCD) 15 12 11 87 43 0 D000 BCD3 位的 12 位 数 符号位 据 0:正数 转 1:负数 换 指 令 C=0001 Hex 时 D 的值:-7999~7999(BCD) 15 12 11 87 43 0 D BCD 第 4 位 3 位(12~14) 符号位 0:正数 1:负数 BCD3 字的 12 位 C=0002 Hex 时 D 的值:-999~9999(BCD) 15 12 11 87 43 0 D BCD3 位 12 位 “0”~“9”:BCD 第 4 位 “F”:负数(一) C=0003 Hex 时 D 的值:-1999~9999(BCD) 15 12 11 87 43 0 D BCD3 位 12 位 “0”~“9”:BCD 第 4 位 “A”:负数(-1) “F”:负数(-) 功能说明 将 S 指定的带符号 BIN 数据(16 位)转换为 C 指定的 类型的带符号 BCD 数据,将结果输出到 D。 C 输出数据的范围 S (带符号 BIN) D (带符号 BCD) 数据类型指定编号 C 0000 Hex 0001 Hex 0002 Hex 0003 Hex 转换数据(BIN) S FC19~FFFF 0000~03E7 E0C1~FFFF 0000~1F3F FC19~FFFF 0000~270F F831~FFFF 0000~270F 转换结果数据 (BCD) D -999~-1 0~999 -7999~-1 0~7999 -999~-1 0~9999 -1999~-1 0~9999 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 BCDS @BCDS 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 3-256 数据转换指令 带符号 BIN→BCD 转换 BCDS(471) 数据内容 区域 CIO ( 输 入 输 出 继 电 器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) C S D 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 A448~959 #0000~0003 ― (BIN 数据) DR0~15 ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER =标志 = N 标志 N 内容 ・转换数据不在 0000~03E7 Hex 或 FC19~ FFFF Hex 的范围内时为 ON (C 中指定 0000 Hex 时) ・转换数据不在 0000~1F3F Hex 或 E0C1~ FFFF Hex 的范围内时为 ON (C 中指定 0001 Hex 时) ・转换数据不在 0000~270F Hex 或 FC19~ FFFF Hex 的范围内时为 ON (C 中指定 0002 Hex 时) ・转换数据不在 0000~270F Hex 或 F831~ FFFF Hex 的范围内时为 ON (C 中指定 0003 Hex 时) ・C 的数据不在 0000~0003 Hex 范围内时为 ON ・除此之外为 OFF ・转换结果为 0 时为 ON ・除此之外为 OFF ・结果的符号位为 1 时为 ON C=0000,0001(C 中指定 0000, 0001 Hex 时) ・结果的最高位为 F Hex 时为 ON(C 中指定 0002 Hex 时) ・结果的最高位为 F Hex 或 A Hex 时为 ON C=0003(C 中指定 0003 Hex 时) ・除此之外为 OFF 注: ・C 中指定 0000 Hex 时,转换数据不在 0000~03E7 Hex 或 FC19~FFFF Hex 的范围内时,ER 标志为 ON。 3 ・C 中指定 0001 Hex 时,转换数据不在 0000~1F3F Hex、 各 或 E0C1~FFFF Hex 的范围内时,ER 标志为 ON。 指 ・C 中指定 0002 Hex 时,转换数据不在 0000~270F Hex、 或 FC19~FFFF Hex 的范围内时,ER 标志为 ON。 令 说 明 ・C 中指定 0003 Hex 时,转换数据不在 0000~270F Hex、 或 F831~FFFF Hex 的范围内时,ER 标志为 ON。 ・C 的内容不在 0000~0003 Hex 的范围内时,ER 标志为 ON。 ・转换的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ・C 中指定了 0000 Hex 或 0001 Hex 时,转换的结果,D 的 符号位为 1 时,N 标志为 ON。 ・C 中指定 0002 Hex 时,转换的结果,D 的最高位为 F Hex 时,N 标志为 ON。 ・C 中指定了 0003 Hex 时,转换的结果,D 的最高位为 F Hex 或 A Hex 时,N 标志为 ON。 数 据 转 换 指 令 3-257 数据转换指令 3-107 带符号 BIN→BCD 双字转换 BDSL(473) 概要 3-107 带符号 BIN→BCD 双字转换 BDSL(473) 将带符号双字 BIN 数据转换为带符号 BCD 数据。 3 各 符号 指 令 说 明 BDSL C S C:数据类型指定编号 S:数据低位 CH 编号 D D:转换结果输出低位 CH 编号 C=0003 Hex 时 D 的值:-19999999~99999999(BCD) 15 12 11 8 7 4 3 0 15 12 11 8 7 4 3 0 D+1 D BCD7 位的 28 位 “0”~“9”:BCD 第 8 位 “A”:负数(-1) “F”:负数(-) 操作数说明 C:0000~0003 Hex S: 功能说明 将 S+1、 S 指定的带符号 BIN 数据(32 位)转换为 C 指定的类型的带符号 BCD 数据,将结果输出到 D+1、D。 C=0000 Hex 时 00000000~0098967F Hex C FF676981~FFFF FFFF Hex C=0001 Hex 时 00000000~04C4B3FF Hex 输出数据的范围 FB3B4C01~FFFFFFFF Hex C=0002 Hex 时 00000000~05F5E0FF Hex FF676981~FFFFFFFF Hex S (带符号 BIN) S+1 (带符号 BIN) D (带符号 BCD) D+1 (带符号 BCD) C=0003 Hex 时 00000000~05F5E0FF Hex FECED301~FFFFFFFF Hex D: C=0000 Hex 时 D 的值:-9999999~9999999(BCD) 数据类型 指定编号 C 0000 Hex 转换数据(BIN) S FF676981~FFFF FFFF 00000000~0098967F 转换结果数据 (BCD) D -9999999~-1 0~9999999 15 12 11 8 7 4 3 0 15 12 11 8 7 4 3 0 D+1 0 0 0 D 0001 Hex FB3B4C01~FFFFFFFF 00000000~04C4B3FF -79999999~-1 0~79999999 0002 Hex FF676981~FFFFFFFF -9999999~-1 符号位 BCD7 位的 28 位 0:正数 数 1:负数 据 0003 Hex 00000000~05F5E0FF FECED301~FFFFFFFF 00000000~05F5E0FF 0~99999999 -19999999~-1 0~99999999 转 换 C=0001 Hex 时 指 令 D 的值:-79999999~79999999(BCD) 执行条件/每次刷新指定 ON 时每周期执行 BDSL 15 12 11 8 7 4 3 0 15 12 11 8 7 4 3 0 D+1 D 执行条件 上升沿时 1 周期执行 @BDSL 下降沿时 1 周期执行 无 BCD 第 8 位 3 位(12~14) 符号位 0:正数 1:负数 BCD7 位的 28 位 每次刷新指定 无 使用限制 区域 块程序区 域 工程步进 程序区域 子程序区域 中断任务 程序区域 使用 可 可 可 可 C=0002 Hex 时 D 的值:-9999999~99999999(BCD) 15 12 11 87 43 0 15 12 11 87 43 0 D+1 D “0”~“9”:BCD 第 8 位 “F”:负数(-) BCD7 位的 28 位 3-258 数据转换指令 带符号 BIN→BCD 双字转换 BDSL(473) 数据内容 区域 CIO(输入输出继电器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) C 0000~6143 S D 0000~6142 W000~511 W000~510 H000~511 H000~510 A000~959 A000~958 A448~958 T0000~4095 T0000~4094 C0000~4095 C0000~4094 D00000~32767 D00000~32766 @D00000~32767 *D00000~32767 #0000~0003 ― (BIN 数据) DR0~15 ― ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 ・转换数据不在 00000000~0098967F Hex 或 FF676981~FFFF FFFF Hex 范围内时为 ON(C 中指定 0000 Hex 时) ・转换数据不在 00000000~04C4B3FF Hex 或 FB3B4C01~FFFFFFFF Hex 范围内时为 ON(C 中指定 0001 Hex 时) ・转换数据不在 00000000~05F5E0FF Hex 或 FF676981~FFFFFFFF Hex 范围内时为 ON (C 中指定 0002 Hex 时) ・转换数据不在 00000000~05F5E0FF Hex 或 FECED301~FFFFFFFF Hex 范围内时为 ON(C 中指定 0003 Hex 时) ・C 的数据不在 0000~0003 Hex 范围内时为 ON ・除此之外为 OFF ・转换结果为 0 时为 ON ・除此之外为 OFF ・结果的符号位为 1 时为 ON(C 中指定 0000、0001 Hex 时) ・结果的最高位为 F Hex 时为 ON(C 中指定 0002 Hex 时) ・结果的最高位为 FHex 或 A Hex 时为 ON(C 中 指定 0 003 Hex 时) ・除此之外为 OFF 注: ・C 中指定 0000 Hex 时,转换数据不在 00000000~ 0098967F Hex 或 FF676981~FFFF FFFF Hex 的范围内 3 时,ER 标志为 ON。 各 ・C 中指定 0001 Hex 时,转换数据不在 00000000~ 指 04C4B3FF Hex、或 FB3B4C01~FFFFFFFF Hex 的范围 令 内时,ER 标志为 ON。 ・C 中指定了 0002 Hex 时,转换数据不在 00000000~ 说 明 05F5E0FF Hex 或 FF676981~FFFFFFFF Hex 的范围内 时,ER 标志为 ON。 ・C 中指定了 0003 Hex 时,转换数据不在 00000000~ 05F5E0FF Hex 或 FECED301~FFFFFFFF Hex 的范围内 时,ER 标志为 ON。 ・C 的内容不在 0000~0003 Hex 的范围内时,ER 标志为 ON。 ・转换的结果,D+1, D 的内容为 00000000 Hex 时,=标志 为 ON。 ・C 中指定了 0000 Hex 或 0001 Hex 时,转换的结果,D+1 的符号位为 1 时,N 标志为 ON。 ・C 中指定 0002 Hex 时,转换的结果,D+1 的最高位为 F Hex 时,N 标志为 ON。 ・C 中指定了 0003 Hex 时,转换的结果,D+1 的最高位为 F Hex 或 A Hex 时,N 标志为 ON。 ・首先校验 S+1、S 通道的带符号 BIN 数据的范围是否符合 数据类型指定。 校验结果如果正常,S+1, S 通道的带符号 BIN 数据转换 为带符号 BCD 数据,将结果输出到指定的 D+1, D 通 道。如果校验结果异常,ER 标志为 ON,不执行指令。 ・带符号 BCD 数据中-0 作为+0 处理。 数 据 转 换 指 令 3-259 数据转换指令 带符号 BIN→BCD 双字转换 BDSL(473) 动作指令 0.00 3 各 指 令 说 明 BDSL(4B) #0003 D100 D200 BDSL 指令的动作 0.00 为 ON 时,首先校验 D101, D100 的数据范围是否符 合数据类型指定 0003 的要求。校验结果如果正常,将数 据存储器 D101, D100 的带符号双字 BIN 数据转换为带 符号双字 BCD 数据,结果输出到 D201, D200。 数 据 转 换 指 令 3-260 数据转换指令 3-108 格雷码转换 GRY(474) 概要 D:转换结果输出低位 CH 编号 3-108 (例 2)通过 10 位分辨率转换为角度(°)数据,进行原点补正 0151 Hex 时 根据指定的分辨率,将指定 CH 内的格雷 2 进制代码数 15 0 据转换为 BIN 数据、BCD 数据、或角度(°)数据的任 D 转换结果输出数据(低位) 3 意一个。 D+1 转换结果输出数据(高位) 各 指 符号 将根据 C(控制数据)的分辨率(位 00~03)以及变换 令 模式(位 04~07)指定而变换的数据按照从输出开始 CH 到高位 CH 侧,低位→高位数据的顺序进行保存。 BIN 模式时:00000000~00007FFF Hex 说 明 BCD 模式时:00000000~00032767 C:控制数据 360°模式时:00000000~00003599(0.0~359.9 度,以 0.1 度为单位的 BCD 数据) S:格雷 2 进制代码数据 D:转换结果输出低位 CH 编号 操作数说明 C:控制数据 15 12 11 87 43 0 C 不可使用(0) 15 C+1 操作模式 0 Hex:格雷码转换 分辨率 0、1~F Hex(10 进制 1~15 位) (0 Hex:以用户指定 C+2 的位 12~15 加以指定) 转换模式 0 Hex:BIN 模式 1 Hex:BCD 模式 2 Hex:360°模式 0 原点补偿值(0000~7FFF Hex (BIN 数据)) ※不可进行超过 C(控制数据)所指定的分辨率的原点补正值指定 数 15 12 11 0 据 C+2 转 换 编码器余数补偿值(BIN 数据) 指 令 ※可以设定的值(范围)根据用户指定的分辨率。 用户指定分辨率 0 Hex:256、1 Hex:360、2 Hex:720、3 Hex:1024、4~F Hex:未定义 ※以上设定当 C 的 00~03 位(即分辨率)设定为 0 Hex 时有效。 S:格雷 2 进制代码 15 0 S 格雷 2 进制代码 将 C(控制数据)的分辨率(位 00~03)所指定的位数作为输入范围。 ※指定分辨率以外(输入范围外)的位被忽略。 (例 :分辨率为 08 Hex 时,若 S 为 FFFF Hex,则被视为 00FF Hex)。 3-261 数据转换指令 格雷码转换 GRY(474) 功能说明 数据内容 根据 C 所设定的分辨率及以下转换模式(BIN、BCD、 区域 C S D 3 各 指 令 说 明 360°),对 S 指定的 CH 内的格雷 2 进制代码数据进行 转换,将结果输出到 D。 转换模式 BIN 模式 内容 将格雷 2 进制代码转换为 BIN(2 进制化 16 进制数 00000000~00007FFF Hex)数据,对 其进行原点及剩余补正的基础上,输出到 D。 CIO(输入输出继电 器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 0000~6141 W000~509 H000~509 A000~957 T0000~4093 C0000~4093 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 0000~6142 W000~510 H000~510 A448~958 T0000~4094 C0000~4094 将格雷 2 进制代码转换为 BIN(2 进制化 16 数据内存(DM) D00000~ D00000~ D00000~ BCD 模式 进制数)数据,对其进行原点及剩余补正的基 础上,进一步转换为 BCD(2 进制化 10 进制 DM 间接(BIN) 32765 32767 @D00000~32767 32766 360°模式 数 00000000~00032767)数据,输出到 D。 将格雷 2 进制代码转换为 BIN(2 进制化 16 进制数)数据,对其进行原点及剩余补正的基 础上,进一步转换为角度数据(00000000~ 00003599:对应 0.1°单位 0.0~359.9°),输出 到 D。 DM 间接(BCD) *D00000~32767 常数 ― #0000~FFFF ― (BIN 数据) 数据寄存器 ― DR0~15 ― 变址寄存器(直接) ― 参考 一般用于通过 DC 输入单元读取格雷 2 进制代码输出型 绝对编码器发出的并行信号(2n)。 注: 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 S 指定的 CH 分配到输入单元的 CH 时,转换对象输入数据 状态标志的动作 会变成最大 1 CPU 单元周期以前的格雷码值,请注意。 名称 标记符 内容 执行条件/每次刷新指定 出错标志 ER • 通过 C 的动作模式指定(位 12~15)指定 0 Hex(格雷码转换)以外时为 ON 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 GRY @GRY 无 无 • C+1 的原点补偿值设定为分辨率(也包括用 户指定时)以上的值时为 ON • 通过 C 的转换模式指定(位 04~07),指定 0 Hex(BIN)、1 Hex(BCD)、2 Hex(360) 以外时为 ON 使用限制 • 通过 C 的分辨率(位 00~03)设定 0 Hex(用 户指定)时,指定补偿值超过用户指定的编 数 区域 块程序区 工程步进 子程序区域 中断任务 据 转 域 程序区域 程序区域 换 使用 可 可 可 可 指 令 码器剩余补偿值时为 ON • 通过 C 的分辨率(位 00~03)设定 0 Hex(用 户指定)时,转换为 BIN 数据的结果<编码 器剩余补偿值时为 ON • 通过 C 的分辨率(位 00~03)设定 0 Hex(用 户指定)时,转换为 BIN 数据的结果<分辨 率时为 ON • 除此之外为 OFF =标志 = OFF N 标志 N OFF 3-262 数据转换指令 格雷码转换 GRY(474) 动作说明 0.00 为 ON 时,保存在 1000 CH 中的格雷 2 进制代码的 数据根据控制数据(D0)的内容进行转换,结果输出到 D200 (例 3)欧姆龙制绝对型编码器 使用 E6C2-AG5C 时(分辨率 360/转、编码器 剩余补偿值 76),转换为 BCD 数据,原点为补 3 各 指 0.00 GRY C D0 偿值 0000 Hex 时 令 15 12 11 87 43 0 说 C:D0 0 0 1 0 明 S 1000 D D200 分辨率:用户指定 (例 1)通过 8 位分辨率转换为 BIN 数据,进行原点补 正 001A Hex 时 15 C+1:D1 0 转换模式:BCD 模式 动作模式:格雷码转换 0 0 0 0 15 12 11 87 43 0 C:D0 0 0 0 8 15 12 11 C+2:D2 1 0 原点补正值:0000 Hex 0 4 C 动作模式:格雷码转换 分辨率:8 位 转换模式:BIN 模式 15 C+1:D1 0 0 1 0 A 15 12 11 C+2:D2 0 0 原点补正值:001A Hex 0 0 0 用户指定分辨率:未使用 15 87 0 S:1000 CH 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 1 格雷 2 进制代码 用户指定分辨率:360、编码器余数补正值: 04C Hex(10 进制 76) 15 87 0 格雷 2 进制 S:1000 CH 0 0 0 0 0 0 0 0 1 1 1 0 1 0 0 0 代码 15 D:D200 0 D+1:D201 0 转换·补正 0 1 0 0 存储 BCD 转 换数据补正 0 0 0 结果 (例 4)欧姆龙制绝对型编码器 使用 E6C2-AG5C 时(分辨率 360/转、编码器 剩余补偿值 76),转换为 BCD 数据,原点补 偿值为 000A Hex 时 15 D:D200 0 转换·补正 0 0 1 7 存储 BIN 转换数据 补正结果 15 12 11 87 43 0 C:D0 0 0 1 0 D+1:D201 0 0 0 0 分辨率:用户指定 数 据 转换模式:BCD 模式 转 动作模式:格雷码转换 换 (例 2)通过 10 位分辨率转换为角度(°)数据,进行 15 0 指 原点补正 0151 Hex 时 C+1:D1 0 0 0 A 令 15 12 11 87 43 0 C:D0 0 0 2 A 分辨率:10 位 转换模式:360°模式 动作模式:格雷码转换 15 C+1:D1 0 1 5 0 1 15 12 11 C+2:D2 0 0 原点补正值:0151 Hex 0 0 0 15 12 11 C+2:D2 1 0 原点补正值:000A Hex 0 4 C 用户指定分辨率:360、编码器余数补正值: 04C Hex(10 进制 76) 15 87 0 S:1000 CH 0 0 0 0 0 0 0 0 1 1 1 0 0 1 1 1 格雷 2 进制 代码 15 转换·补正 0 D:D200 0 1 0 0 存储 BCD 转 D+1:D201 0 0 0 0 换数据补正 结果 用户指定分辨率:未使用 15 87 0 S:1000 CH 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 1 格雷 2 进制代码 15 D:D200 3 D+1:D201 0 转换·补正 0 4 8 8 存储角度(°)转换 0 0 0 数据结果 3-263 数据转换指令 3 各 指 令 说 明 数 据 转 换 指 令 3-264 逻辑运算指令 逻辑运算指令 项目号 3-109 3-110 3-111 3-112 3-113 指令语句 字逻辑与 双字逻辑与 字逻辑或 双字逻辑或 字异或 双字异或 字异或非 双字异或非 位取反 位双字取反 助记符 ANDW ANDL ORW ORWL XORW XORL XNRW XNRL COM COML FUN 编号 034 610 035 611 036 612 037 613 029 614 页码 3-266 3-268 3-270 3-272 3-274 3-265 逻辑运算指令 3-109 字逻辑与 ANDW(034)/双字逻辑与 ANDL(610) 字逻辑与 ANDW 3 概要 各 指 令 3-109 字逻辑积 ANDW(034)/字双字逻辑积 ANDL(610) 取以 CH 数据为单位的 CH 数据和 CH 数据、常数的逻 辑积。 说 符号 明 注: 功能说明 S1:运算数据 1 S2:运算数据 2 D:运算结果输出 CH 编号 ·指令执行时,ER 标志置于 OFF。 ·运算的结果,D+1, D 的内容为 00000000 Hex 时,=标志 为 ON。 ·运算的结果,D+1 的内容的最高位位为 1 时,N 标志为 ON。 取 S1 所指定的数据和 S2 所指定的数据的逻辑积,结果 输出到 D。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ANDW @ANDW 无 无 ANDL @ANDL 无 无 使用限制(ANDW/ANDL 指令共通) 注: 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 ·指令执行时,ER 标志置于 OFF。 数据内容 ·运算的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ·字逻辑积 ANDW · 运算的结果,D 的内容的最高位位为 1 时,N 标志为 ON。 区域 S1 S2 D CIO ( 输 入 输 出 继 电 器 等) 0000~6143 逻 字双字逻辑积 ANDL 辑 运 算 概要 指 令 取 2 CH 的 CH 数据和 CH 数据、常数的逻辑积。 符号 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 A448~959 DM 间接(BCD) *D00000~32767 常数 #0000~FFFF(BIN 数据) - S1:运算数据 1 低位 CH 编号 数据寄存器 DR0~15 S2:运算数据 2 低位 CH 编号 变址寄存器(直接) ― D:运算结果输出低位 CH 编号 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据取 逻辑积,结果输出到 D+1, D。 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-266 逻辑运算指令 字逻辑与 ANDW(034)/双字逻辑与 ANDL(610) ·字双字逻辑积 ANDL 状态标志的动作 (ANDW/ANDL 指令共通) 区域 S1 S2 D 名称 标记符 内容 CIO ( 输 入 输 出 继 电 器 等) 内部辅助继电器 0000~6142 W000~510 出错标志 =标志 ER OFF = ・运算结果为 0 时为 ON 3 ・除此之外为 OFF 各 保持继电器 H000~510 N 标志 N ・运算结果的最高位位为 1 时为 ON 指 特殊辅助继电器 A000~958 A448~958 ・除此之外为 OFF 令 时间 T0000~4094 说 计数器 C0000~4094 明 数据内存(DM) D00000~32766 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~FFFFFFFF - (BIN 数据) 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) 动作说明 (例) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 0.00 为 ON 时,对 1001,1000CH 和 2001,2000CH 的对应位逐一取逻辑 积,输出到 D201,D200 的对应位。 逻 注:符号∧表示逻辑积。 辑 运 算 指 令 3-267 逻辑运算指令 3-110 字逻辑或 ORW(035)/双字逻辑或 ORWL(611) 字逻辑和 ORW 3 概要 各 指 令 3-110 字逻辑和 ORW(035)/字双字逻辑和 ORWL(611) 取以 CH 数据为单位的 CH 数据和 CH 数据、常数的逻 辑和。 说 符号 明 注: 功能说明 S1:运算数据 1 S2:运算数据 2 D:运算结果输出 CH 编号 ·指令执行时,ER 标志置于 OFF。 ·运算的结果,D+1, D 的内容为 00000000 Hex 时,=标志 为 ON。 ·运算的结果,D+1 的内容的最高位位为 1 时,N 标志为 ON。 取 S1 所指定的数据和 S2 所指定的数据的逻辑和,将结 果输出到 D。 执行条件/每次刷新指定 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ORW @ORW 无 无 ORWL @ORWL 无 无 使用限制(ORW/ORWL 指令共通) 注: 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 ·指令执行时,ER 标志置于 OFF。 ·运算的结果,D 的内容为 0000 Hex 时,=标志为 ON。 数据内容 ·运算的结果,D 的内容的最高位位为 1 时,N 标志为 ON。 ·字逻辑和 ORW 区域 S1 S2 D 字双字逻辑和 ORWL CIO(输入输出继电器 等) 内部辅助继电器 0000~6143 W000~511 逻 辑 概要 运 算 取 2 CH 分的 CH 数据和 CH 数据、常数的逻辑和。 保持继电器 特殊辅助继电器 时间 计数器 H000~511 A000~959 T0000~4095 C0000~4095 A448~959 指 令 符号 数据内存(DM) DM 间接(BIN) D00000~32767 @D00000~32767 DM 间接(BCD) *D00000~32767 常数 S1:运算数据 1 低位 CH 编号 #0000~FFFF - (BIN 数据) S2:运算数据 2 低位 CH 编号 数据寄存器 DR0~15 D:运算结果输出低位 CH 编号 变址寄存器(直接) ― 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据, 取逻辑和,将结果输出到 D+1, D。 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-268 逻辑运算指令 字逻辑或 ORW(035)/双字逻辑或 ORWL(611) ·字双字逻辑和 ORWL 状态标志的动作 (ORW/ORWL 指令共通) 名称 标记符 内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 S1 S2 0000~6142 W000~510 H000~510 A000~958 T0000~4094 D A448~958 出错标志 =标志 N 标志 ER OFF = ・运算结果为 0 时为 ON ・除此之外为 OFF N ・运算结果的最高位位为 1 时为 ON ・除此之外为 OFF 3 各 指 令 说 计数器 C0000~4094 明 数据内存(DM) D00000~32766 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~FFFFFFFF - (BIN 数据) 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) 动作说明 (例) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 0.00 为 ON 时 , 对 1001,1000CH 和 2001,2000CH 的对应位逐一取逻辑和, 输出到 D501,D500 的对应位。 逻 辑 注:符号∨表示逻辑和。 运 算 指 令 3-269 逻辑运算指令 3-111 字异或 XORW(036)/双字异或 XORL(612) 字异或 XORW 3-111 字异或 XORW(036)/字双字异或 XORL(612) 3 概要 各 指 令 取以 CH 数据为单位的 CH 数据和 CH 数据、常数的异 或。 说 符号 明 注: 功能说明 S1:运算数据 1 S2:运算数据 2 D: 运算结果输出 CH 编号 ·指令执行时,ER 标志置于 OFF。 ·运算的结果,D+1, D 的内容为 00000000 Hex 时,=标志 为 ON。 ·运算的结果,D+1 的内容的最高位位为 1 时,N 标志为 ON。 取 S1 所指定的数据和 S2 所指定的数据的异或,将结果 输出到 D。 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿 1周期执行 下降沿 1周期执行 每次刷新指定 XORW @XORW 无 无 XORL @XORL 无 无 使用限制(XORW/XORL 指令共通) 注: ·指令执行时,ER 标志置于 OFF。 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 ·运算的结果,D 的内容为 0000 Hex 时,=标志为 ON。 · 运算的结果,D 的内容的最高位位为 1 时,N 标志为 ON。 数据内容 ·字异或 XORW 双字异或 XORL 区域 S1 S2 D CIO ( 输 入 输 出 继 电 器 等) 0000~6143 逻 辑 概要 运 算 取 2 CH 的 CH 数据和 CH 数据、常数的异或。 指 令 符号 S1:运算数据 1 低位 CH 编号 S2:运算数据 2 低位 CH 编号 D:运算结果输出低位 CH 编号 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~FFFF (BIN 数据) DR0~15 ― A448~959 - 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据, 取异或,将结果输出到 D+1, D。 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-270 逻辑运算指令 字异或 XORW(036)/双字异或 XORL(612) ·双字异或 XORL 状态标志的动作 (XORW/XORL 指令共通) 名称 标记符 内容 数据内容 区域 S1 S2 D CIO ( 输 入 输 出 继 电 器 等) 0000~6142 出错标志 =标志 N 标志 ER OFF = ・运算结果为 0 时为 ON 除此之外为 OFF N ・运算结果的最高位位为 1 时为 ON 3 各 指 内部辅助继电器 W000~510 ・除此之外为 OFF 令 保持继电器 H000~510 说 特殊辅助继电器 A000~958 A448~958 明 时间 T0000~4094 计数器 C0000~4094 数据内存(DM) D00000~32766 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~FFFFFFFF - (BIN 数据) 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 动作说明 (例) 0.00 为 ON 时,取 1001,1000CH 和 1001,1000CH 的对应位的异或,输 逻 出到 D1201,D1200 的对应位。 辑 运 算 指 注:符号∀表示异或。 令 3-271 逻辑运算指令 3-112 字异或非 XNRW(037)/双字异或非 XNRL(613) 字同或 XNRW 3-112 字同或 XNRW(037)/字双字同或 XNRL(613) 3 概要 各 指 以 CH 数据为单位的 CH 数据和 CH 数据、常数的同或。 令 符号 说 明 注: S1:运算数据 1 S2:运算数据 2 ·指令执行时,ER 标志置于 OFF。 D: 运算结果输出 CH 编号 ·运算的结果,D+1, D 的内容为 00000000 Hex 时,=标志 为 ON。 功能说明 取 S1 所指定的数据和 S2 所指定的数据的同或,将结果 输出到 D。 ·运算的结果,D+1 的内容的最高位位为 1 时,N 标志为 ON。 执行条件/每次刷新指定 ON 时每周期执行 执行条件 上升沿 1 周期执行 下降沿 1 周期执行 每次刷新指定 XNRW @XNRW 无 无 XNRL @XNRL 无 无 使用限制(XNRW/XNRL 指令共通) 注: ·指令执行时,ER 标志置于 OFF。 ·运算的结果,D 的内容为 0000 Hex 时,=标志为 ON。 区域 使用 块程序区 域 可 数据内容 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 ·运算的结果,D 的内容的最高位位为 1 时,N 标志为 ON。 ·字同或 XNRW 字双字同或 XNRL 逻 辑 运 概要 算 取 2 CH 的 CH 数据和 CH 数据、常数的同或。 指 令 符号 S1:运算数据 1 低位 CH 编号 S2:运算数据 1 低位 CH 编号 D: 运算结果输出低位 CH 编号 区域 CIO(输入输出继电器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) S1 S2 D 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #0000~FFFF(BIN 数据) DR0~15 ― A448~959 - 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双字数据, 取同或,将结果输出到 D+1, D。 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-272 逻辑运算指令 字异或非 XNRW(037)/双字异或非 XNRL(613) ·字双字同或 XNRL 状态标志的动作 (XNRW/XNRL 指令共通) 区域 S1 S2 D 名称 标记符 内容 CIO(输入输出继电器 等) 0000~6142 出错标志 =标志 ER OFF = ・运算结果为 0 时为 ON 3 内部辅助继电器 W000~510 ・除此之外为 OFF 各 保持继电器 H000~510 N 标志 N ・运算结果的最高位位为 1 时为 ON 指 特殊辅助继电器 A000~958 A448~958 ・除此之外为 OFF 令 时间 T0000~4094 说 计数器 C0000~4094 明 数据内存(DM) D00000~32766 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~FFFFFFFF - (BIN 数据) 数据寄存器 ― 变址寄存器(直接) ― 变址寄存器(间接) 动作说明 (例) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 0.00 为 ON 时,取 1001、1000CH 和 2001、2000CH 的对应位的同或, 输出到 D501、D500 的对应位。 逻 辑 注:符号∀表示排他性逻辑和非。 运 算 指 令 3-273 逻辑运算指令 3-113 位取反 COM(029)/位双字取反 COML(614) 位取反 COM 执行条件/每次刷新指定 3-113 位取反 COM(029)/位双字取反 COML(614) 3 概要 各 指 对 CH 数据进行位取反。 令 符号 说 明 COM D D:反取数据 CH 编号 执行 条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 COM @COM 无 无 COML @COML 无 无 使用限制(COM/COML 指令共通) 区域 块程序区 域 工程步进 子程序区域 程序区域 中断任务 程序区域 功能说明 对 D 所指定的数据的各位进行取反。 D→D 1→0 0→1 注: ·使用 COM 指令时,输入 ON 时每 1 周期执行 1 次,请注 意。 ·指令执行时,ER 标志置于 OFF。 ·运算的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ·运算的结果,D 的内容的最高位位为 1 时,N 标志为 ON。 位双字取反 COML 概要 使用 可 可 可 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) COM 指令 D COML 指令 0000~6143 0000~6142 W000~511 W000~510 H000~511 H000~510 A448~959 A448~958 T0000~4095 T0000~4094 C0000~4095 C0000~4094 D00000~32767 D00000~32766 @D00000~32767 @D00000~32767 *D00000~32767 *D00000~32767 - - DR0~15 - - - ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 对 2 CH 的 CH 数据的各位进行取反输出。 状态标志的动作 (COM/COML 指令共通) 符号 逻 辑 COML 运 算 D D:反取数据低位 CH 编号 指 令 功能说明 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 OFF ・运算结果为 0 时为 ON ・除此之外为 OFF ・运算结果的最高位位为 1 时为 ON ・除此之外为 OFF 将 D 所指定的数据作为双字数据,对各位进行取反。 (D+1, D)→(D+1, D) 注: ·使用 COML 指令时,输入 ON 时每 1 周期执行 1 次,请 注意。 ·指令执行时,ER 标志置于 OFF。 ·运算的结果,D+1,D 的内容为 00000000 Hex 时,=标志 为 ON。 ·运算的结果,D+1 的内容的最高位位为 1 时,N 标志为 ON。 3-274 动作说明 (例) 逻辑运算指令 位取反 COM(029)/位双字取反 COML(614) 0.00 为 ON 时,将 D100 的各位全部取反。 3 各 指 令 说 明 0.01 为 ON 时,将 D201 和 D200 的各位全部取反。 逻 辑 运 算 指 令 3-275 逻辑运算指令 3 各 指 令 说 明 逻 辑 运 算 指 令 3-276 特殊运算指令 特殊运算指令 项目号 3-114 3-115 3-116 3-117 3-118 指令语句 BIN 平方根运算 BCD 平方根运算 数值转换 浮点除法运算(BCD) 位计数 助记符 ROTB ROOT APR FDIV BCNT FUN 编号 620 072 069 079 067 页码 3-278 3-279 3-281 3-288 3-291 3-277 特殊运算指令 3-114 BIN 平方根运算 ROTB(620) 概要 使用限制 3-114 BIN 平方根运算 ROTB(620) 将指定通道视为带符号 BIN 数据(32 位),如果是正值, 3 则进行平方根运算,输出运算结果的整数部。 各 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 指 符号 令 数据内容 说 区域 S D 明 S:运算数据低位 CH 编号 CIO(输入输出继电器等) 0000~6142 0000~6143 D:运算结果输出 CH 编号 内部辅助继电器 保持继电器 W000~510 H000~510 W000~511 H000~511 功能说明 特殊辅助继电器 时间 A000~958 T0000~4094 A448~959 T0000~4095 对 S 指定的 BIN 数据(32 位)进行平方根运算,将结 果的整数部输出到 D。 计数器 数据内存(DM) DM 间接(BIN) C0000~4094 C0000~4095 D00000~32766 D00000~32767 @D00000~32767 DM 间接(BCD) *D00000~32767 BIN 数据(32 位) BIN 数据(16 位) 常数 #00000000~ ― FFFFFFFF 注: 特 殊 ·舍去小数点之后的数据。 数据寄存器 变址寄存器(直接) 运 算 ·输入数据(S+1、 S)的指定范围是 0000000~3FFFFFFF 变址寄存器(间接) 指 Hex 。 指 定 为 40000000 ~ 7FFFFFFF Hex 时 , 作 为 令 3FFFFFFF Hex 进行平方根运算。 (BIN 数据) ― ― DR0~15 ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ·S+1、 S 的最高位位为 1 时,将发生错误,ER 标志为 ON。 ,IR0~15+(++) ,-(--)IR0~15 ·运算结果为 0000 Hex 时,=标志为 ON。 状态标志的动作 ·S+1、 S 的内容位于 40000000~7FFFFFFF Hex 的范围内 时,OF 标志为 ON。 ·指令执行时,UF 标志及 N 标志为 OFF。 ·本指令的操作数 S+1、 S、D 均为 BIN,请注意。输入 数据为 BCD 时,请使用 ROOT。 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 ROTB @ROTB 名称 出错标志 =标志 上溢标志 下溢标志 N 标志 标记符 ER = OF UF N 内容 ・S、 S+1 的最高位位为 1 时为 ON ・除此之外为 OFF ・运算结果为 0 时为 ON ・除此之外为 OFF ・S, S+1 的数据位于 40000000~7FFFFFFF Hex 的范围内时 ON ・除此之外为 OFF OFF OFF 下降沿时 1 周期执行 无 每次刷新指定 无 动作说明 (例) 0.00 为 ON 时,进行 1001、1000CH 的数据平方根运算, 只将整数部(小数部舍去)输出到 D100。 平方根(小数部舍去)运算 3-278 特殊运算指令 3-115 BCD 平方根运算 ROOT(072) 概要 执行条件/每次刷新指定 3-115 应用示例 进行 BCD 8 位的平方根运算。 符号 S:运算数据低位 CH 编号 D:运算结果输出 CH 编号 执行条件 ON 时每周期执行 ROOT 上升沿时 1 周期执行 @ROOT 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 功能说明 使用 可 可 可 可 将 S 指定的数据作为 BCD 的倍长数据进行平方根运算, 数据内容 将结果的整数部作为 BCD 数据输出到 D。 区域 S D CIO(输入输出继电器等) 0000~6142 0000~6143 内部辅助继电器 W000~510 W000~511 保持继电器 H000~510 H000~511 特殊辅助继电器 A000~958 A448~959 注: 时间 T0000~4094 T0000~4095 计数器 C0000~4094 C0000~4095 ·舍去小数点之后的数据。 ·S+1、S 的内容不为 BCD 时,将发生错误,ER 标志为 ON。 数据内存(DM) DM 间接(BIN) DM 间接(BCD) D00000~32766 D00000~32767 @D00000~32767 *D00000~32767 特 殊 运 算 常数 ·运算结果为 0000 Hex 时,=标志为 ON。 #00000000~ ― 指 99999999 令 ·本指令的操作数 S+1、 S、D 均为 BCD,请注意。输入 数据为 BIN 时,请使用 ROTB。 数据寄存器 变址寄存器(直接) (BCD) ― DR0~15 ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER =标志 = 内容 ・S、S+1 的数据不为 BCD 时为 ON ・除此之外为 OFF ・运算结果为 0 时为 ON ・除此之外为 OFF 3-279 特殊运算指令 BCD 平方根运算 ROOT(072) 动作说明 (例) 3 各 指 令 说 明 0.00 为 ON 时,取 D101,D100 的数据的平方根,输出到 D100。 (例) 63,250,561→7,953 应用示例 小数点之后舍去 取 1000 CH 的 BCD 4 位数据的平方根,对小数点之后进行四舍五入,以 BCD 4 位输出到 2000 CH。 ROOT 指令以运算数据 8 位为对象,所以使用 D101, 小数点以下四舍五入 D100。 ①清除 D101, D100(00000000)。 特 ②将内部辅助继电器 1000 CH 的内容传送到 D101。 殊 运 算 指 令 ③取 D101, D100 的 8 位的平方根,输出到 D102。 小数点之后舍去 ④清除 2000 CH、D103(0000)。 ⑤将 D102 的内容以每 2 位分别传送到 2000 CH、D103。 D102 7756 2000 CH 0077 D103 5600 ⑥D103 的内容如果大于#4900,则在 2000 CH 中加+1。 2000 CH 0078 在 2000 CH 中输出运算结果 78。 3-280 特殊运算指令 3-116 数值转换 APR(069) 概要 操作数说明 3-116 数值转换 APR(069) 进行 SIN、COS、折线近似运算(BCD、16/32 位 BIN、 单精度浮点数据)。 ·指定无符号整数数据(BIN 或 BCD)时 3 各 符号 指 m-1(00~FFHex) m:折线表格的数据数 令 说 C:控制数据 (1≦m≦256) 明 指定输入输出数据 S、D 的整数/浮点数据 S:数值转换输入数据 0:整数数据 D:数值转换输出 CH 编号 指定输入输出数据 S、D 带符号 0:无符号 指定 SIN 计算时 操作数 值 数据范围 输入 S 的数据加工 0:S(保持原值) 1:输入数据=最大值(Xm)-S C 0000 Hex - S 0000~0900(BCD) 0°~90° D 0000~9999(BCD) 0.0000~0.9999 输出 D 的数据类型 0:BIN 1:BCD 9999(BCD) 1.0000 输入 S 的数据类型 0:BIN 1:BCD 指定 COS 计算时 特 操作数 值 数据范围 ·指定带符号整数数据(BIN)时 殊 C 0001 Hex - S 0000~0900(BCD) 0°~90° D 0000~9999(BCD) 0.0000~0.9999 运 算 指 m-1(00~FFHex) 令 9999(BCD) 1.0000 m:折线表格的数据数 (1≦m≦256) 指定输入输出数据 S、D 的整数/浮点数据 指定折线近似时 0:整数数据 操作数 C S D 值 CH 编号 无符号 BCD 16 位数据 无符号 BIN 16 位数据 带符号 BIN 16 位数据 带符号 BIN 32 位数据 单精度浮点数据 无符号 BCD 16 位数据 无符号 BIN 16 位数据 带符号 BIN 16 位数据 带符号 BIN 32 位数据 单精度浮点数据 数据范围 - 0000~9999 0000~65535 -32768~ +32767 -2147483648~ +2147483647 -∞、 -3.402823×1038~ -1.175494×10-38、 +1.175494×10-38~ +3.402823×1038、 +∞ 0000~9999 0000~65535 -32768~ +32767 -2147483648~ +2147483647 -∞、 -3.402823×1038~ -1.175494×10-38、 +1.175494×10-38~ +3.402823×1038、 +∞ 指定数据长 0:带符号 BIN16 位数据 1:带符号 BIN32 位数据 指定输入输出数据 S、D 带符号 1:带符号 ·指定单精度浮点数据时 m-1(00~FFHex) m:折线表格的数据数 (1≦m≦256) 指定输入输出数据 S、D 的整数/浮点数据 1:单精度浮点数据 ·BCD16 位数据, 带符号/无符号 BIN16 位数据 带符号 BIN32 位数据 单精度浮点数据 注:输入到 C 的通道地址以后为折线数据(BIN 数据)。 *1:输入输出数据 S、D 带符号指定时存储,无符 号(C 的位 11=0 时) Xm(数据表格内的 X 数 据的最大值) 注:设为 X1F、F、>=F (LD/AND/OR 型) FSTR 448 FVAL 449 页码 3-298 3-299 3-300 3-301 3-302 3-304 3-305 3-307 3-309 3-310 3-311 3-312 3-313 3-314 3-315 3-316 3-317 3-318 3-319 3-320 3-321 3-324 3-328 3-293 浮点转换·运算指令 浮点转换·运算指令 有效位数 FUN 编号 助记符 指令语句 3 450 FIX 浮点→16 位 BIN 转换 各 451 FIXL 浮点→32 位 BIN 转换 指 452 FLT 16 位 BIN→浮点转换 令 说 明 453 FLTL 32 位 BIN→浮点转换 454 +F 浮点加法运算 455 -F 浮点减法运算 456 *F 浮点乘法运算 457 /F 浮点除法运算 458 RAD 角度→弧度转换 459 DEG 弧度→角度转换 460 SIN SIN 运算 浮点数据的有效位数以 2 进制数表示则是 24 位,如果用 10 进制数表示则约 7 位。 浮点数据下的表现 ・可以表现的数 -∞ -3.402823×1038≦值≦-1.175494×10-38 0 +1.175494×10-38≦值≦+3.402823×1038 +∞ 非数 461 COS COS 运算 462 TAN TAN 运算 463 ASIN SIN-1 运算 464 ACOS COS-1 运算 465 ATAN TAN-1 运算 466 SQRT 平方根运算 浮 467 EXP 指数运算 ・特殊数 点 468 LOG 对数运算 转 换 840 PWR 乘方运算 非数、±∞、0 的格式如下所示进行定义。 非数 e=255、f≠0 · 运 算 数据格式 +∞ e=255、f=0、s=0 -∞ e=255、f=0、s=1 指 令 所谓浮点数据是指用符号、尾数、指数来表示实数的数 据。将任意数据表示为浮点形式如下所示。 0 e=0 实数值=(-1)s2e-127(1.f) s:符号 e:指数 f:尾数 浮点数据的格式以 IEEE754 标准的单精度为基准。单精 度数据表示为 32 位,格式如下所示。 所谓非数是指不能视为浮点数据的值。 但是,浮点・运算指令的结果不会变为非数。 浮点数据格式的存储方法 在外围工具 CX-Programmer 的 I/O 存储器编辑画面中, 将数据形式指定为「浮点」后,被输入的小数点数据将 数据 s:符号 e:指数 位数 1 8 内容 0:正、1:负 指数部 e 为 0~255 的值。从 e 中减去 自动转换为上述 IEEE754 标准的数据格式,存储在 I/O 存储器中。此外,以上述 IEEE754 标准的数据格式所存 储的数据自动被小数点数据所监控。 因此,用户没有必要关心上述 IEEE754 标准的数据格式。 仅请记住浮点数据占有 2CH。 127 后的值变为实际的指数。因此,指 数为-127~128。e=0、e=255 时表 示特殊数。 f:尾数 23 表示 2 进制数的浮点的尾数部。通过 使用正规化表示,表示 2.0>1.f≧1.0。 3-294 浮点转换·运算指令 参考 表示非正规化数的值为 浮点数所表示的值的种类 (-1)(符号部)×2-126×(<尾数部>×2-23) 指数部(e) 0 既不是 0 也不 全位 1 3 是全位 1 (255) 例 各 尾数部(f) (255) 指 0 0 以外 0 非正规化数 正规化数 无限大 非数 符号:+ 令 说 明 注:非正规化数表示正规化数无法表示的范围内的绝对值 较小的浮点数,与正规化数相比,有效位数较少。因此, 运算结果为非正规化数时,或中间结果为非正规化数 指数:-126 尾数:0+(222+221)×2-23=0+(2-1+2-2)=0+0.75=0.75 值:0.75×2-126 时,结果的有效位数将无法保证,请注意。 (3)零 (1)正规化数 表示通常的实数值。 符号部以 0(正)或 1(负)分别表示+0.0、-0.0。 指数部、尾数部均为 0。 符号部以 0(正)或 1(负)来表示值的符号。 指数部取 1~254 的值。实际的指数为从该值中减去 127 +0.0、-0.0 作为值均表示 0.0。关于零的符号的不同所 导致的各运算下的功能区别,请参见「浮点的四则运算」。 后的值,其范围是-126~127。 尾数部取 0~(223-1)的值。实际的尾数将 223 的位 假定为 1,紧随其后为带小数点的值。 (4)无限大 符号部以 0(正)或 1(负)分别表示+∞、-∞。 浮 点 表示正规化数的值为 指数部为 255(28-1)。 转 (-1)(符号部)×2(指数部)-127×(1+<尾数部>×2-23) 尾数部为 0。 换 · 运 例 (5)非数 「0.0/0.0」、「∞/∞」、「∞-∞」等作为结果不对应 算 指 令 数值或无限大的运算结果。 符号:- 指数:128-127=1 尾数:1+(222+221)×2-23=1+(2-1+2-2)=1+0.75=1.75 值:-1.75×21=-3.5 指数部为 255(28-1)。 尾数部为 0 以外的值。 注:关于非数的符号以及尾数字段的(0 以外的)值没有规 定。 (2)非正规化数 表示绝对值较小的实数值。 符号部以 0(正)或 1(负)来表示值的符号。 指数部为 0,实际的指数变为-126。 尾数部为 1~223-1,实际的尾数将 223 的位假定为 0, 紧随其后为有小数点的值。 3-295 浮点转换·运算指令 浮点的四则运算 关于浮点数据的运算结果 (1)结果值的进位方法 浮点数的四则运算结果的正确 (1)溢出 3 值超过内部表现的尾数的有效数字时,根据以下 运算结果的绝对值比浮点数据所能表示的最大值 各 规则进行进位。 还大时,发生溢出。此时,运算结果发生如下变化。 指 令 说 明 ①结果值向近似该值的两个浮点数的内部表示中 较近的方向进位。 ②结果值刚好在与该值近似的两个浮点数的中间 ・运算结果为正时:+∞ ・运算结果为负时:-∞ (2)运算结果转为 0 时 时,尾数的最后一位为 0。 运算结果的尾数部 f 和指数部 e 双方为 0 时,运算 结果转为 0。此外,运算结果的绝对值比浮点数据 (2)上溢、下溢、无效运算时的处理 所能表示的最小值还小时,发生下溢。此时运算 对于执行时的上溢、下溢、无效运算,进行以下处 结果也会变为 0。 理。 (3)同时,对于运算结果为 0 时 ON 的状态标志的=标 ①溢出时,根据结果的符号,转为正或负的无限 志,只有运算结果的尾数部 f 和指数部的 e 均为 0 大。 时为 ON。 ②下溢时,根据结果的符号,转为正或负的零。 ③在符号加上逆的无限大,符号减去相同的无限 浮点转换・运算示例 大,零乘以无限大,零除以零,或者无限大除 X 轴、Y 轴的坐标(x、y)在数据存储器 D0 和 D1 中以 以无限大时发生无效运算。 BCD4 位数据被赋予时,求出距离原点的距离 r 和角度 θ 浮 点 这些情况下结果转为非数。 ④从浮点数转换为整数时发生溢出的情况下,结 (度单位),表示输出到 D100、D101 的程序示例。 但是,运算结果存储舍去小数点之后的值。 转 换 果值将无法保证。 · 运 算 指 (3)有关特殊值运算的注意事项 有关特殊值(零、无限大、非数)的运算,有以 令 下注意事项。 ①正的零和负的零之和为正的零。 ②同符号的零之差为正的零。 ③被运算数一方或者双方中含有非数的运算结果 通常转为非数。 ④在比较运算中,正的零和负的零作为相等值处 理。 ⑤被运算数一方或者双方为非数的比较运算、等 值运算的结果,对于「!=」通常为真、其他 情况下通常为假。 3-296 程序例 浮点转换·运算指令 ・计算式 3 各 指 令 例.考虑已赋予坐标(100、100)的情况。通过上述计 算式可以求出距离 r 和角度θ。 说 明 距离 r=√1002+1002 = 141.4214 角度 θ=tan-1( 100 100 )×( 180 π )= 45.0 ・数据存储器内容 D0 #0100 x (BCD) → D100 0141 r (BCD) D1 #0100 y D101 0045 θ (BCD) (BCD) 浮 ①从 BCD 数据转换为浮点数据。 点 转 ・作为工作区域,使用 D200 以后。 换 ・根据 BIN 指令转换为 BIN 数据,通过 FLT 指令转 换为浮点数据。 · 运 算 ・将 x 值转换为浮点数据的值输出到 D203,D202。 指 ・将 y 值转化为浮点数据的值输出到 D205, D204。 令 ②为了求出距离 r,使用浮点运算指令,运算 x2+y2 的 平方根。 运算结果以浮点数据输出到 D213, D212。 ③为了求出角度 θ,使用浮点运算指令,运算 tan-(1 y/x)。 ・运算结果以浮点数据输出到 D219, D218。 ・ATAN 指令以弧度单位输出结果,使用 DEG 指令, 转换至度单位。 ④从浮点数据转换为 BCD 数据。 ・使用 FIX 指令,转换为 BIN 数据后,根据 BCD 指 令转换为 BCD 数据。 ・距离 r 以 BCD 数据输出到 D100。 ・角度 θ 以 BCD 数据输出到 D101。 3-297 浮点转换·运算指令 3-119 浮点→16 位 BIN 转换 FIX(450) 概要 执行条件/每次刷新指定 3-119 浮点→16 位 BIN 转换 FIX(450) 将指定的浮点 32 位数据转换为带符号 BIN 16 位数据, 3 将结果输出到指定通道。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 FIX @FIX 无 无 说 使用限制 明 S:浮点数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D:转换结果输出低位 CH 编号 域 程序区域 程序区域 使用 可 可 可 可 功能说明 数据内容 将 S 所指定的单精度浮点数据(32 位:IEEE754)的整 数部转换为带符号 BIN(16 位),将结果输出到 D。 区域 CIO(输入输出继电器等) S 0000~6142 D 0000~6143 浮点数据 (32 位) 内部辅助继电器 保持继电器 特殊辅助继电器 W000~510 H000~510 A000~958 W000~511 H000~511 A448~959 带符号 BIN 数据 (16 位) 时间 计数器 将浮点数据的整数部转换为带符号 BIN 数据,将结果输 数据内存(DM) 浮 出到指定通道。小数点之后舍去。 DM 间接(BIN) 点 转 例: DM 间接(BCD) 常数 换 浮点数据 转换结果(带符号 BIN 16 位) · 运 3.5 算 -3.5 指 令 注: →3 → -3 数据寄存器 变址寄存器(直接) 变址寄存器(间接) ・S 的内容不能视为浮点数据时,会发生错误,ER 标志为 ON。 ・S+1, S 的内容不在-32,768~+32,767 的范围内时,会发 T0000~4094 C0000~4094 D00000~32766 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 #00000000~ - FFFFFFFF (BIN 数据) ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 生错误,ER 标志为 ON。 ・转换的结果,D 的内容为 0000 Hex 时,=标志为 ON。 ・ 转换的结果,D 的内容的最高位位为 1 时,N 标志为 ON。 状态标志的动作 名称 出错标志 标记符 ER 内容 ・S+1, S 的数据为非数时为 ON ・S+1, S 的数据不在-32768~+32767 的范围内 时为 ON ・除此之外为 OFF =标志 = ・转换结果为 0 时为 ON ・除此之外为 OFF N 标志 N ・转换结果的最高位位为 1 时为 ON ・除此之外为 OFF 3-298 浮点转换·运算指令 3-120 浮点→32 位 BIN 转换 FIXL(451) 概要 执行条件/每次刷新指定 3-120 浮点→32 位 BIN 转换 FIXL(451) 将指定的浮点 32 位数据转换为带符号 BIN 32 位数据, 将结果输出到指定通道。 执行条件 ON 时每周期执行 FIXL 上升沿时 1 周期执行 @FIXL 3 符号 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S:浮点数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 D:转换结果输出低位 CH 编号 域 程序区域 程序区域 使用 可 可 可 可 功能说明 数据内容 将 S 所指定的单精度浮点数据(32 位:IEEE754)的整 数部转换为带符号 BIN(32 位),将结果输出到 D+1, D。 区域 CIO(输入输出继电器等) S D 0000~6142 浮点数据 (32 位) 内部辅助继电器 保持继电器 特殊辅助继电器 W000~510 H000~510 A000~958 A448~958 带符号 BIN 倍长数据 (32 位) 时间 计数器 T0000~4094 C0000~4094 将浮点数据的整数部转换为带符号 BIN 倍长数据,并将 结果输出到指定通道。小数点之后舍去。 数据内存(DM) DM 间接(BIN) DM 间接(BCD) D00000~32766 @D00000~32767 浮 *D00000~32767 点 常数 #00000000~ - 转 例: FFFFFFFF 换 浮点数据 转换结果(带符号 BIN 32 位) 2147483640.5 → 2147483640 -2147483640.5 → -2147483640 数据寄存器 变址寄存器(直接) 变址寄存器(间接) (BIN 数据) ― ― ,IR0~15 · 运 算 指 令 注: -2048~+2047,IR0~15 ・S 的内容不能视为浮点数据时,会发生错误,ER 标志为 ON。 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 ・S+1,S 的内容不在-2,147,483,648~+2,147,483,647 的范 围内时,会发生错误,ER 标志为 ON。 ・转换的结果,D+1, D 的内容为 00000000 Hex 时,=标志 为 ON。 状态标志的动作 名称 出错标志 标记符 ER 内容 ・S+1, S 的数据为非数时为 ON ・S+1, S 的数据不在-2147483648~ ・转换的结果,D+1, D 的内容的最高位位为 1 时,N 标志 为 ON。 =标志 +2147483647 的范围内时为 ON ・除此之外为 OFF = ・转换结果为 0 时为 ON ・除此之外为 OFF N 标志 N ・转换结果的最高位位为 1 时为 ON ・除此之外为 OFF 3-299 浮点转换·运算指令 3-121 16 位 BIN→浮点转换 FLT(452) 概要 执行条件/每次刷新指定 3-121 16 位 BIN→浮点转换 FLT(452) 将指定的带符号 BIN 16 位数据转换为浮点 32 位数据, 3 将结果输出到指定通道。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 FLT @FLT 各 指 符号 令 下降沿时 1 周期执行 无 每次刷新指定 无 说 使用限制 明 S:BIN 数据 区域 块程序区 工程步进 子程序区域 中断任务 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 将 S 所指定的带符号 BIN 数据(16 位)转换为单精度浮 点数据(32 位:IEEE754),将结果输出到 D+1, D。浮 区域 CIO(输入输出继电器等) S 0000~6143 D 0000~6142 点数据在小数点之后变为 1 位的 0。 带符号 BIN 数据 (16 位) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 W000~511 H000~511 A000~959 T0000~4095 W000~510 H000~510 A448~958 T0000~4094 浮点数据 计数器 C0000~4095 C0000~4094 (32 位) 数据内存(DM) D00000~32767 D00000~32766 浮 点 转 在 S 中可以指定-32768~32767 的范围内的 BIN 数据。 同时,若要对-32768~32767 的范围外的 BIN 数据进行 DM 间接(BIN) DM 间接(BCD) 常数 换 转换,请使用 FLTL 指令。 · 数据寄存器 运 算 例: 变址寄存器(直接) 指 带符号 BIN 16 位 令 3 浮点数据 → 3.0 变址寄存器(间接) @D00000~32767 *D00000~32767 #0000~FFFF - (BIN 数据) DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 -3 → -3.0 DR0~15,IR0~15 注: ・指令执行时,ER 标志置于 OFF。 ・转换结果的指数部和尾数部均为 0(浮点数据的 0)时, =标志为 ON。 ・转换结果为负数时,N 标志为 ON。 状态标志的动作 名称 出错标志 =标志 标记符 ER = ,IR0~15+(++) ,-(--)IR0~15 内容 OFF ・ 转换结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF N 标志 N ・转换结果变为负数时为 ON ・除此之外为 OFF 3-300 浮点转换·运算指令 3-122 32 位 BIN→浮点转换 FLTL(453) 概要 执行条件/每次刷新指定 3-122 32 位 BIN→浮点转换 FLTL(453) 将指定的带符号 BIN 32 位数据转换为浮点 32 位数据, 将结果输出到指定通道。 执行条件 ON 时每周期执行 FLTL 上升沿时 1 周期执行 @FLTL 3 符号 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S:BIN 倍长数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 D:转换结果输出低位 CH 编号 域 程序区域 程序区域 使用 可 可 可 可 功能说明 数据内容 将 S 所指定的带符号 BIN 数据(32 位)转换为单精度浮 点数据(32 位:IEEE754),将结果输出到 D+1, D。浮 区域 CIO(输入输出继电器等) S D 0000~6142 点数据在小数点之后变为 1 位的 0。 带符号 BIN 倍长数据 (32 位) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 W000~510 H000~510 A000~958 A448~958 T0000~4094 浮点数据 计数器 C0000~4094 (32 位) ・在 S 中可以指定-2147483648~2147483647 的范围内 的 BIN 倍长数据。 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 D00000~32766 @D00000~32767 *D00000~32767 #00000000~ - 浮 点 转 ・浮点的有效位数为 24 位。因此,对超过 16777215(24 FFFFFFFF 换 位~最大值)的值通过 FLTL 指令进行转换时,转换 (BIN 数据) · 结果中会产生误差。 数据寄存器 ― 变址寄存器(直接) ― 运 算 指 例: 带符号 BIN 32 位 令 变址寄存器(间接) ,IR0~15 浮点数据 -2048~+2047,IR0~15 16777215 -16777215 → 16777215.0 → -16777215.0 注: ・指令执行时,ER 标志置于 OFF。 ・转换结果的指数部和尾数部均为 0(浮点数据的 0)时, =标志为 ON。 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 =标志 标记符 ER = 内容 OFF ・ 转换结果(浮点数据)的指数部和尾数部均 ・转换结果为负数时,N 标志为 ON。 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF N 标志 N ・转换结果转为负数时为 ON ・除此之外为 OFF 3-301 浮点转换·运算指令 3-123 浮点加法运算 +F(454) 概要 执行条件/每次刷新指定 3-123 浮点加法运算 +F(454) 进行指定的浮点数据(32 位)的加法运算,将结果输出 3 到指定通道。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 +F @+F 各 下降沿时 1 周期执行 无 指 符号 每次刷新指定 无 令 说 使用限制 明 S1:被加数浮点数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 S2:加数浮点数据低位 CH 编号 使用 可 可 可 可 D:运算结果输出低位 CH 编号 数据内容 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为单精度浮点 区域 CIO(输入输出继电器等) 内部辅助继电器 数据(32 位:IEEE754)进行加法运算,结果输出到 D+1, 保持继电器 D。 特殊辅助继电器 时间 被加数浮点数据 (32 位) 计数器 数据内存(DM) 浮 点 加数浮点数据 (32 位) DM 间接(BIN) DM 间接(BCD) 常数 转 换 浮点小数点运算结果数据 · (32 位) 数据寄存器 运 算 指 ・S1 或 S2 不作为浮点数据时,出错标志(ER)为 ON, 不执行指令。 变址寄存器(直接) 变址寄存器(间接) 令 ・运算结果的绝对值比浮点数据所能表示的最大值还大 时,溢出(OF)为 ON。此时,运算结果作为±∞被输 出。 S1 S2 D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 #00000000~ - FFFFFFFF (BIN 数据) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 ・运算结果的绝对值比浮点数据所能表示的最小值还小 时,下溢(UF)为 ON。此时,运算结果作为浮点数 据的 0 输出。 注: ・转换结果的指数部和尾数部均为 0(浮点数据的 0)时, =标志为 ON。 ・转换结果为负数时,N 标志为 ON。 状态标志的动作 名称 出错标志 标记符 ER =标志 = 上溢标志 OF 下溢标志 UF N 标志 N 内容 ・被加数或者加数为非数时为 ON ・想对+∞和-∞进行加法运算时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF ・ 运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF ・ 运算结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF ・运算结果转为负数时为 ON ・除此之外为 OFF 3-302 浮点转换·运算指令 浮点加法运算 +F(454) 浮点加法运算(+F)的运算规则 按照运算的浮点数据的组合,根据下表输出结果。 加数 0 数值 0 0 数值 被加数 数值 +∞ 数值 +∞ ** +∞ -∞ -∞ -∞ 非数 3 各 指 令 说 +∞ +∞ +∞ +∞ ER 明 -∞ -∞ -∞ ER -∞ 非数 ER **:此时,输出 0(包括下溢的结果 UF 转为 0 时)或、 数值、+∞、-∞中的任意结果 ER:出错标志(ER)为 ON,不执行指令。 浮 点 转 换 · 运 算 指 令 3-303 浮点转换·运算指令 3-124 浮点减法运算 -F(455) 概要 使用限制 3-124 浮点减法运算 -F(455) 进行指定的浮点数据(32 位)的减法运算,将结果输出 3 到指定通道。 各 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 指 符号 数据内容 令 区域 S1 S2 D 说 CIO(输入输出继电器等) 0000~6142 明 S1:被减数浮点数据低位 CH 编号 内部辅助继电器 W000~510 S2:减数浮点数据低位 CH 编号 D:运算结果输出低位 CH 编号 保持继电器 特殊辅助继电器 时间 H000~510 A000~958 T0000~4094 A448~958 计数器 C0000~4094 功能说明 数据内存(DM) D00000~32766 作为单精度浮点数据(32 位:IEEE754),从 S1 所指定 的数据中减去 S2 所指定的数据,将结果输出到 D+1, D。 DM 间接(BIN) DM 间接(BCD) 常数 @D00000~32767 *D00000~32767 #00000000~FFFFFFFF 被减数浮点数据 (BIN 数据) (32 位) 数据寄存器 ― 变址寄存器(直接) ― 减数浮点数据 变址寄存器(间接) ,IR0~15 (32 位) -2048~+2047,IR0~15 浮 DR0~15,IR0~15 点 转 换 浮点运算结果数据 (32 位) ,IR0~15+(++) ,-(--)IR0~15 · 注: 运 状态标志的动作 算 ・S1 或 S2 不作为浮点数据时,出错标志(ER)为 ON。 名称 标记符 内容 指 令 ・运算结果的绝对值比浮点数据所能表示的最大值还大 出错标志 时,溢出(OF)为 ON。此时,运算结果作为±∞输出。 ER ・被减数或者减数为非数时为 ON ・ 想对+∞和+∞或-∞和-∞进行减法运算 时为 ON ・运算结果的绝对值比浮点数据所能表示的最小值还小时, 下溢(UF)为 ON。此时,运算结果作为浮点数据的 0 输出。 =标志 ・除此之外为 OFF = ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・ 运算结果的绝对值比浮点数据所能表示的 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 -F @-F 下溢标志 最大值还大时为 ON ・除此之外为 OFF UF ・ 运算结果的绝对值比浮点数据所能表示的 最小值还小时为 ON 下降沿时 1 周期执行 无 ・除此之外为 OFF 每次刷新指定 无 N 标志 N ・运算结果转为负数时为 ON ・除此之外为 OFF 浮点减法运算(-F)的运算规则 按照运算的浮点数据的组合,根据下表输出结果。 减数 0 数值 +∞ -∞ 非数 0 0 数值 -∞ +∞ 被减数 数值 数值 ** -∞ +∞ +∞ +∞ +∞ ER +∞ -∞ -∞ -∞ -∞ ER 非数 ER **:此时,输出 0(包括下溢的结果 UF 转为 0 时)或、 数值、+∞、-∞中的任意结果 ER:出错标志(ER)为 ON,不执行指令。 3-304 浮点转换·运算指令 3-125 浮点乘法运算 *F(456) 概要 执行条件/每次刷新指定 3-125 浮点乘法运算 *F(456) 进行指定的浮点数据(32 位)的乘法运算,将结果输出 到指定通道。 执行条件 ON 时每周期执行 *F 上升沿时 1 周期执行 @*F 3 符号 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S1:被乘数浮点数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 S2:乘数浮点数据低位 CH 编号 D:运算结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 数据内容 功能说明 区域 S1 S2 D 将 S1 所指定的数据和 S2 所指定的数据作为单精度浮点 数据(32 位:IEEE754)进行乘法运算,将结果输出到 D+1, D。 被乘数浮点数据 (32 位) CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 数据内存(DM) D00000~32766 乘数浮点数据 (32 位) 注: 浮点运算结果数据 (32 位) ・S1 或 S2 不作为浮点数据时,出错标志(ER)为 ON,不 执行指令。 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) @D00000~32767 浮 *D00000~32767 点 #00000000~ 转 FFFFFFFF 换 (BIN 数据) · ― 运 算 ― 指 ,IR0~15 令 -2048~+2047,IR0~15 ・运算结果的绝对值比浮点数据所能表示的最大值还大时, 溢出(OF)为 ON。此时,运算结果作为±∞被输出。 ・运算结果的绝对值比浮点数据所能表示的最小值还小时, 下溢(UF)为 ON。此时,运算结果作为浮点数据的 0 状态标志的动作 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 输出。 名称 标记符 内容 出错标志 ER ・被乘数或者乘数为非数时为 ON ・想对 0 和+∞或-∞进行乘法运算时为 ON ・除此之外为 OFF =标志 = ・运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・运算结果的绝对值比浮点数据所能表示的最 大值还大时为 ON ・除此之外为 OFF 下溢标志 UF ・运算结果的绝对值比浮点数据所能表示的最 小值还小时为 ON ・除此之外为 OFF N 标志 N ・运算结果转为负数时为 ON ・除此之外为 OFF 3-305 浮点转换·运算指令 浮点乘法运算 *F(456) 浮点乘法运算(*F)的运算规则 3 按照运算的浮点数据的组合,根据下表输出结果。 各 被乘数 指 0 数值 +∞ -∞ 非数 令 0 0 0 ER ER 说 乘数 数值 0 ** +/-∞ +/-∞ 明 +∞ ER +/-∞ +∞ -∞ -∞ ER +/-∞ -∞ +∞ 非数 ER **:此时,输出 0(包括下溢的结果 UF 转为 0 时)或、 数值、+∞、-∞中的任意结果 ER:出错标志(ER)为 ON,不执行指令。 浮 点 转 换 · 运 算 指 令 3-306 浮点转换·运算指令 3-126 浮点除法运算 /F(457) 概要 执行条件/每次刷新指定 3-126 浮点除法运算 /F(457) 进行指定的浮点数据(32 位)的除法运算,将结果输出 ON 时每周期执行 /F 到指定通道。 执行条件 上升沿时 1 周期执行 @/F 3 下降沿时 1 周期执行 无 各 符号 每次刷新指定 无 指 使用限制 令 说 S1:被除数浮点数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 S2:除数浮点数据低位 CH 编号 使用 可 可 可 可 D:运算结果输出低位 CH 编号 数据内容 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为单精度浮点 数据(32 位:IEEE754)进行除法运算,将结果输出到 D+1, D。 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 S1 S2 0000~6142 W000~510 H000~510 A000~958 D A448~958 被乘数浮点数据 (32 位) 时间 计数器 数据内存(DM) T0000~4094 C0000~4094 D00000~32766 DM 间接(BIN) @D00000~32767 乘数浮点数据 DM 间接(BCD) *D00000~32767 浮 (32 位) 常数 #00000000~FFFFFFFF 点 (BIN 数据) 转 注: 浮点运算结果数据 (32 位) ・S1 或 S2 不作为浮点数据时,出错标志(ER)为 ON,不 执行指令。 数据寄存器 变址寄存器(直接) 变址寄存器(间接) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) 换 · 运 算 指 令 ・运算结果的绝对值比浮点数据所能表示的最大值还大时, ,-(--)IR0~15 溢出(OF)为 ON。此时,运算结果作为±∞输出。 状态标志的动作 ・运算结果的绝对值比浮点数据所能表示的最小值还小时, 下溢(UF)为 ON。此时,运算结果作为浮点数据的 0 输出。 名称 出错标志 =标志 上溢标志 下溢标志 N 标志 标记符 ER = OF UF N 内容 ・被除数或者除数为非数时为 ON ・被除数和除数均为 0 或者+/-∞时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF ・ 运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF ・ 运算结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF ・ 运算结果为负数时。ON ・除此之外为 OFF 3-307 浮点转换·运算指令 浮点除法运算 /F(457) 浮点除法运算(/F)的运算规则 3 按照运算的浮点数据的组合,根据下表输出结果。 各 被除数 指 0 数值 +∞ -∞ 非数 令 0 ER +/-∞ +∞ -∞ 说 除数 数值 0 ** +/-∞ +/-∞ 明 +∞ 0 0* ER ER -∞ 0 0* ER ER 非数 ER *:下溢的结果转为 0。 **:此时,输出 0(包括下溢的结果 UF 转为 0 时)或、 数值、+∞、-∞中的任意结果 ER:出错标志(ER)为 ON,不执行指令。 浮 点 转 换 · 运 算 指 令 3-308 浮点转换·运算指令 3-127 角度→弧度转换 RAD(458) 概要 执行条件/每次刷新指定 3-127 角度→弧度转换 RAD(458) 将指定的浮点数据(32 位)由度(°)单位转换为弧度 (rad)单位,将结果输出到指定通道。 符号 ON 时每周期执行 RAD 执行条件 上升沿时 1 周期执行 @RAD 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S:度(°)数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 区域 S D 将用 S 所指定的单精度浮点数据(32 位:IEEE754)表 CIO(输入输出继电器等) 0000~6142 示的角度数据由度单位转换为弧度单位,并将结果输出 内部辅助继电器 W000~510 到 D+1, D。 保持继电器 特殊辅助继电器 H000~510 A000~958 A448~958 度(°)数据 时间 T0000~4094 (浮点数据 32 位) 计数器 C0000~4094 弧度(rad)数据 (浮点数据 32 位) 数据内存(DM) DM 间接(BIN) DM 间接(BCD) D00000~32766 @D00000~32767 浮 *D00000~32767 点 常数 #00000000~ - 转 ・从 RAD 指令的度转换为弧度,依据下式进行。 S 度(°)×π/180=弧度(rad) ・S 不作为浮点数据时,出错标志(ER)为 ON,不执 行指令。 数据寄存器 变址寄存器(直接) 变址寄存器(间接) FFFFFFFF (BIN 数据) - - ,IR0~15 换 · 运 算 指 令 ・转换结果的绝对值比浮点数据所能表示的最大值还大 -2048~+2047,IR0~15 时,溢出(OF)为 ON。此时,转换结果作为±∞输出。 ・转换结果的绝对值比浮点数据所能表示的最小值还小 时,下溢(UF)为 ON。此时,转换结果作为浮点数 据的 0 输出。 状态标志的动作 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 名称 出错标志 =标志 上溢标志 下溢标志 N 标志 标记符 ER = OF UF N 内容 ・角度数据为非数时为 ON ・除此之外为 OFF ・ 转换结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF ・ 转换结果的绝对值比浮点数据所能表示的最 大值还大时为 ON ・除此之外为 OFF ・ 转换结果的绝对值比浮点数据所能表示的最 小值还小时为 ON ・除此之外为 OFF ・转换结果变为负数时 ON ・除此之外为 OFF 3-309 浮点转换·运算指令 3-128 弧度→角度转换 DEG(459) 概要 执行条件/每次刷新指定 3-128 弧度→角度转换 DEG(459) 将指定的浮点数据(32 位)由弧度(rad)单位转换为度 3 (°)单位,并将结果输出到指定通道。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 DEG @DEG 无 无 说 使用限制 明 S:弧度(rad)数据 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D:转换结果输出 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 将用 S 所指定的单精度浮点数据(32 位:IEEE754)所 表示的角度数据由弧度单位转换为度单位,并将结果输 区域 CIO(输入输出继电器等) S D 0000~6142 出到 D+1, D。 弧度(rad)数据 (浮点数据 32 位) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 W000~510 H000~510 A000~958 A448~958 T0000~4094 计数器 度(°)数据 数据内存(DM) 浮 (浮点数据 32 位) DM 间接(BIN) 点 DM 间接(BCD) 转 ・从 DEG 指令的弧度转换为度,依据下式进行。 常数 换 · 弧度(rad)×180/π=度(°) 运 注: 数据寄存器 算 指 ・S 不作为浮点数据时,出错标志(ER)为 ON,不执行指 变址寄存器(直接) 令 令。 变址寄存器(间接) ・转换结果的绝对值比浮点数据所能表示的最大值还大时, C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 #0000000~ - FFFFFFFF (BIN 数据) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 溢出(OF)为 ON。此时,转换结果作为±∞输出。 ・转换结果的绝对值比浮点数据能够表现的最小值还小时, ,IR0~15+(++) ,-(--)IR0~15 下溢(UF)为 ON。此时,转换结果作为浮点数据的 0 状态标志的动作 输出。 名称 标记符 内容 出错标志 ER ・角度数据为非数时为 ON ・除此之外为 OFF =标志 = ・ 转换结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・ 转换结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF 下溢标志 UF ・ 转换结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF N 标志 N ・转换结果变为负数时 ON ・除此之外为 OFF 3-310 浮点转换·运算指令 3-129 SIN 运算 SIN(460) 概要 执行条件/每次刷新指定 3-129 SIN 运算 SIN(460) 运算指定的浮点数据(32 位)所表示的角度(弧度单位) ON 时每周期执行 SIN 的 SIN(正弦)值,将结果输出到指定通道。 执行条件 上升沿时 1 周期执行 @SIN 3 下降沿时 1 周期执行 无 各 符号 每次刷新指定 无 指 令 使用限制 说 S:角度(rad)数据 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 D:转换结果输出 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 计算 S 所指定的单精度浮点数据(32 位:IEEE754)所 表示的角度(弧度单位)的 SIN(正弦)值,并将结果 区域 CIO(输入输出继电器等) S D 0000~6142 输出到 D+1, D。 内部辅助继电器 保持继电器 W000~510 H000~510 特殊辅助继电器 A000~958 A448~958 时间 T0000~4094 ・请在 S 中指定弧度(rad)单位的角度数据。 计数器 数据内存(DM) C0000~4094 D00000~32766 同时,关于度(°)和弧度(rad)的转换,请参见 RAD 指令、DEG 指令。 ・角度数据请在-65535~65535 的范围内加以指定。指 定了-65535~65535 的范围外的数据时,出错标志 (ER)为 ON,不执行指令。 输入数据与运算结果的关系 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) @D00000~32767 浮 *D00000~32767 点 #00000000~ ― 转 FFFFFFFF 换 (BIN 数据) · ― 运 算 ― 指 ,IR0~15 令 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 S:角度(rad)数据 D:运算结果(SIN 值) 状态标志的动作 名称 出错标志 标记符 ER =标志 = 上溢标志 OF 下溢标志 UF N 标志 N 内容 ・角度数据为非数时为 ON ・角度数据的绝对值不在 0~65535 的范围内 时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF OFF OFF ・运算结果为负数时为 ON ・除此之外为 OFF 3-311 浮点转换·运算指令 3-130 COS 运算 COS(461) 概要 执行条件/每次刷新指定 3-130 COS 运算 COS(461) 运算用指定的浮点数据(32 位)所表示的角度(弧度单 3 位)的 COS(余弦)值,将结果输出到指定通道。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 COS @COS 无 无 说 使用限制 明 S:角度(rad)数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D:转换结果输出低位 CH 编号 域 程序区域 程序区域 使用 可 可 可 可 功能说明 数据内容 运算用 S 所指定的单精度浮点数据(32 位:IEEE754) 所表示的角度(弧度单位)的 COS(余弦)值,将结果 输出到 D+1,D。 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 ・请在 S 中指定弧度(rad)单位的角度数据。 数据内存(DM) 浮 同时,关于度(°)和弧度(rad)的转换,请参见 RAD DM 间接(BIN) 点 转 指令、DEG 指令。 DM 间接(BCD) 常数 换 ・角度数据请在-65535~65535 的范围内加以指定。指定 · 运 算 指 令 了-65535~65535 的范围外的数据时,出错标志(ER) 为 ON,不执行指令。 输入数据与运算结果的关系 数据寄存器 变址寄存器 (直接) 变址寄存器 S:角度(rad)数据 (间接) D:运算结果(COS 值) S D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 #00000000~ - FFFFFFFF (BIN 数据) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER =标志 = 上溢标志 OF 下溢标志 UF N 标志 N 内容 ・角度数据为非数时为 ON ・角度数据的绝对值不在 0~65535 的范围内 时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF OFF OFF ・运算结果为负数时为 ON ・除此之外为 OFF 3-312 浮点转换·运算指令 3-131 TAN 运算 TAN(462) 概要 执行条件/每次刷新指定 3-131 TAN 运算 TAN(462) 运算用指定的浮点数据(32 位)所表示的角度(弧度单 位)的 TAN(正切)值,将结果输出到指定通道。 符号 ON 时每周期执行 TAN 执行条件 上升沿时 1 周期执行 @TAN 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S:角度(rad)数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务程 明 D:转换结果输出低位 CH 编号 域 程序区域 序区域 使用 可 可 可 可 功能说明 数据内容 运算用 S 所指定的单精度浮点数据(32 位:IEEE754) 所表示的角度(弧度单位)的 TAN(正切)值,将结果 区域 CIO(输入输出继电器等) S D 0000~6142 输出到 D+1,D。 内部辅助继电器 保持继电器 W000~510 H000~510 特殊辅助继电器 A000~958 A448~958 ・请在 S 中指定弧度(rad)单位的角度数据。 同时,关于度(°)和弧度(rad)的转换,请参见 RAD 指令、DEG 指令。 ・角度数据请在-65535~65535 的范围内加以指定。指 定了-65535~65535 的范围外的数据时,出错标志 (ER)为 ON,不执行指令。 ・运算结果的绝对值比浮点数据所能表示的最大值还大 时,溢出(OF)为 ON。此时,运算结果作为±∞被输 出。 输入数据与运算结果的关系 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) T0000~4094 C0000~4094 D00000~32766 @D00000~32767 浮 *D00000~32767 点 #00000000~ - 转 FFFFFFFF 换 (BIN 数据) · ― 运 算 ― 指 ,IR0~15 令 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER =标志 = 上溢标志 OF 下溢标志 UF N 标志 N 内容 ・角度数据为非数时为 ON ・角度数据的绝对值不在 0~65535 的范围内 时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF ・ 运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF OFF ・运算结果为负数时为 ON ・除此之外为 OFF S:角度(rad)数据 D:运算结果(TAN 值) 3-313 浮点转换·运算指令 3-132 SIN-1 运算 ASIN(463) 概要 执行条件/每次刷新指定 3-132 SIN-1 运算 ASIN(463) 通过用指定的浮点数据(32 位)所表示的 SIN(正弦) 3 值求出角度(弧度单位),将结果输出到指定通道。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ASIN @ASIN 无 无 说 使用限制 明 S:SIN(正弦)数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 运算用 S 所指定的单精度浮点数据(32 位:IEEE754) 所表示的 SIN(正弦)值的角度(弧度单位),并将结 区域 CIO(输入输出继电器等) 果输出到 D+1,D。 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 ・请将 SIN(正弦)数据指定在-1.0~1.0 的范围内。 数据内存(DM) 浮 指定了-1.0~1.0 的范围外的数据时,出错标志(ER) DM 间接(BIN) 点 为 ON,不执行指令。 DM 间接(BCD) 转 换 · 同时,SIN(正弦)数据不作为浮点数据时也会出错。 常数 ・运算结果作为-π/2~π/2 的范围内的角度(弧度单 运 位)数据,被输出到 D+1, D CH。 数据寄存器 算 指 输入数据与运算结果的关系 令 变址寄存器(直接) 变址寄存器(间接) S:输入数据(SIN 值) D:运算结果(rad) S D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 #00000000~ - FFFFFFFF (BIN 数据) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER =标志 = 上溢标志 OF 下溢标志 UF N 标志 N 内容 ・SIN 数据为非数时为 ON ・SIN 数据不在-1.0~1.0 的范围内时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF OFF OFF ・ 运算结果为负数时。ON ・除此之外为 OFF 3-314 浮点转换·运算指令 3-133 COS-1 运算 ACOS(464) 概要 执行条件/每次刷新指定 3-133 COS-1 运算 ACOS(464) 通过用指定的浮点数据(32 位)所表示的 COS(余弦) 值求出角度(弧度单位),将结果输出到指定通道。 符号 ON 时每周期执行 ACOS 执行条件 上升沿时 1 周期执行 @ACOS 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S:COS(余弦)数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 D:转换结果输出低位 CH 编号 域 程序区域 程序区域 使用 可 可 可 可 功能说明 运算用 S 所指定的单精度浮点数据(32 位:IEEE754) 所表示的 COS(余弦)值的角度(弧度单位),将结果 输出到 D+1,D。 ・请将 COS(余弦)数据指定在-1.0~1.0 的范围内。 指定了-1.0~1.0 的范围外的数据时,出错标志(ER) 为 ON,不执行指令。 同时, COS(余弦)数据不作为浮点数据时也会出错。 ・运算结果作为 0~π 的范围内的角度(弧度单位)数据 被输出到 D+1, D CH。 输入数据与运算结果的关系 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 浮 *D00000~32767 点 #00000000~ ― 转 FFFFFFFF 换 (BIN 数据) · ― 运 算 ― 指 ,IR0~15 令 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 S:输入数据(COS 值) D:运算结果(rad) 状态标志的动作 名称 出错标志 标记符 ER =标志 = 上溢标志 OF 下溢标志 UF N 标志 N 内容 ・COS 数据为非数时为 ON ・COS 数据不在-1.0~1.0 的范围内时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF OFF OFF OFF 3-315 浮点转换·运算指令 3-134 TAN-1 运算 ATAN(465) 概要 执行条件/每次刷新指定 3-134 TAN-1 运算 ATAN(465) 通过用指定的浮点数据(32 位)所表示的 TAN(正切) 3 值求出角度(弧度单位),将结果输出到指定通道。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 ATAN @ATAN 各 指 符号 令 下降沿时 1 周期执行 无 每次刷新指定 无 说 使用限制 明 S:TAN(正切)数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D:转换结果输出低位 CH 编号 域 程序区域 程序区域 使用 可 可 可 可 功能说明 数据内容 运算用 S 所指定的单精度浮点数据(32 位:IEEE754) 所表示的 TAN(正切)值的角度(弧度单位),将结果 输出到 D+1, D CH。 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 ・TAN(正切)数据不作为浮点数据时,出错标志(EF) 数据内存(DM) 浮 为 ON,不执行指令。 DM 间接(BIN) 点 ・运算结果作为-π/2~π/2 的范围内的角度(弧度单 DM 间接(BCD) 转 换 位)数据,被输出到 D+1, D CH。 常数 · 运 输入数据与运算结果的关系 算 指 令 S:输入数据(TAN 值) 数据寄存器 变址寄存器(直接) 变址寄存器(间接) D:运算结果(rad) S D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 #00000000~ - FFFFFFFF (BIN 数据) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER =标志 = 上溢标志 OF 下溢标志 UF N 标志 N 内容 ・TAN 数据为非数时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF OFF OFF ・ 运算结果转为负数时,ON ・除此之外为 OFF 3-316 浮点转换·运算指令 3-135 平方根运算 SQRT(466) 执行条件/每次刷新指定 概要 ON 时每周期执行 SQRT 运算指定的浮点数据(32 位)的平方根(√—),将结 3-135 平方根运算 SQRT(466) 果输出到指定通道。 执行条件 上升沿时 1 周期执行 @SQRT 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 符号 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 S:输入数据低位 CH 编号 D:运算结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 对用 S 所指定的单精度浮点数据(32 位:IEEE754)所 表示的输入数据运算平方根,将结果输出到 D+1,D。 ・输入数据为负数时,出错标志(ER)为 ON,不执行 指令。此外,输入数据不被视为浮点数据时将发生错 误。 ・运算结果的绝对值比浮点数据所能表示的最大值还大 时,溢出(OF)为 ON。此时,运算结果作为+∞输 出。 输入数据与运算结果的关系 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S:输入数据 D:运算结果 状态标志的动作 S D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 浮 *D00000~32767 点 #00000000~ - 转 FFFFFFFF 换 (BIN 数据) · ― 运 算 ― 指 ,IR0~15 令 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 名称 出错标志 =标志 上溢标志 下溢标志 N 标志 标记符 ER = OF UF N 内容 ・输入数据为负数时为 ON ・输入数据为非数时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF ・ 运算结果的绝对值比浮点数据所能表示的最 大值还大时为 ON ・除此之外为 OFF OFF OFF 3-317 浮点转换·运算指令 3-136 指数运算 EXP(467) 概要 执行条件/每次刷新指定 3-136 指数运算 EXP(467) 运算指定的浮点数据(32 位)的指数(将 e 作为底时的 3 指数),将结果输出到指定通道。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 EXP @EXP 各 指 符号 令 下降沿时 1 周期执行 无 每次刷新指定 无 说 使用限制 明 S:输入数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D:运算结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 运算用 S 所指定的单精度浮点数据(32 位:IEEE754) 所表示的输入数据的指数(将 e 作为底时的指数),将 区域 CIO(输入输出继电器等) 结果输出到 D+1,D。 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) 浮 点 ・EXP 指令将底(e)作为 2.718282,进行指数运算。 ・输入数据不作为浮点时,出错标志(ER)为 ON,不 DM 间接(BIN) DM 间接(BCD) 转 执行指令。 常数 换 · 运 ・运算结果的绝对值比浮点数据所能表示的最大值还大 时,溢出(OF)为 ON。此时,运算结果作为+∞输 数据寄存器 算 指 令 出。 ・运算结果的绝对值比浮点数据所能表示的最小值还小 变址寄存器(直接) 变址寄存器(间接) 时,下溢(UF)为 ON。此时,运算结果作为浮点数 据的 0 输出。 输入数据与运算结果的关系 S D 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 *D00000~32767 #00000000~ - FFFFFFFF (BIN 数据) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 S:输入数据 D:运算结果 状态标志的动作 名称 出错标志 标记符 ER =标志 = 上溢标志 OF 下溢标志 UF N 标志 N 内容 ・输入数据为非数时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF ・ 运算结果的绝对值比浮点数据所能表示的最 大值还大时为 ON ・除此之外为 OFF ・ 运算结果的绝对值比浮点数据所能表示的最 小值还小时为 ON ・除此之外为 OFF OFF 3-318 浮点转换·运算指令 3-137 对数运算 LOG(468) 概要 执行条件/每次刷新指定 3-137 对数运算 LOG(468) 运算指定的浮点数据(32 位)的自然对数(将 e 作为底 时的对数),将结果输出到指定通道。 执行条件 ON 时每周期执行 LOG 上升沿时 1 周期执行 @LOG 3 符号 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S:输入数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 D:运算结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 运算用 S 所指定的单精度浮点数据(32 位:IEEE754) 数据内容 区域 CIO(输入输出继电器等) S D 0000~6142 所表示的输入数据的自然对数(将 e 作为底时的对数), 内部辅助继电器 W000~510 将结果输出到 D+1,D。 保持继电器 特殊辅助继电器 H000~510 A000~958 A448~958 时间 T0000~4094 计数器 C0000~4094 数据内存(DM) D00000~32766 ・LOG 指令将底(e)作为 2.718282,进行指数运算。 ・输入数据为负数时,出错标志(ER)为 ON,不执行 指令。此外,输入数据不被视为浮点数据时将发生错 误。 ・运算结果的绝对值比浮点数据所能表示的最大值还大 时,溢出(OF)为 ON。此时,运算结果作为±∞被输 出。 输入数据与运算结果的关系 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) @D00000~32767 浮 *D00000~32767 点 #00000000~ - 转 FFFFFFFF 换 (BIN 数据) · ― 运 算 ― 指 ,IR0~15 令 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) S:输入数据 D:运算结果 状态标志的动作 ,-(--)IR0~15 名称 出错标志 =标志 上溢标志 下溢标志 N 标志 标记符 ER = OF UF N 内容 ・输入数据为负数时为 ON ・输入数据为非数时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF ・ 运算结果的绝对值比浮点数据所能表示的最 大值还大时为 ON ・除此之外为 OFF OFF ・ 运算结果为负数时。ON ・除此之外为 OFF 3-319 浮点转换·运算指令 3-138 乘方运算 PWR(840) 概要 执行条件/每次刷新指定 3-138 乘方运算 PWR(840) 进行指定的浮点数据(32 位)的乘方运算,将结果输出 3 到指定通道。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 PWR @PWR 各 指 符号 令 下降沿时 1 周期执行 无 每次刷新指定 无 说 使用限制 明 S1:被乘方数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务程 S2:乘方数据低位 CH 编号 D:运算结果输出低位 CH 编号 域 使用 可 程序区域 可 序区域 可 可 数据内容 功能说明 区域 S1 S2 D 对 S1 所指定的数据和 S2 所指定的数据作为单精度浮点 数据(32 位:IEEE754)进行乘方运算,将结果输出到 D+1, D。 乘方数据 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 0000~6142 W000~510 H000~510 A000~958 A448~958 T0000~4094 计数器 C0000~4094 数据内存(DM) D00000~32766 浮 被乘方数据 点 转 例:浮点数据 运算结果 DM 间接(BIN) DM 间接(BCD) 常数 换 · S1:3.1 → 3.13→ D:29.791 运 S2:3.0 数据寄存器 算 指 注: 变址寄存器(直接) 变址寄存器(间接) 令 ・被乘方数据 S1、或者乘方数据 S2 的内容不能被视为浮 点数据时,会发生错误,ER 标志为 ON。 ・转换结果的指数部和尾数部均为 0(浮点数据的 0)时, @D00000~32767 *D00000~32767 #00000000~ ― FFFFFFFF (BIN 数据) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 =标志为 ON。 ・运算结果的绝对值比浮点数据所能表示最大值还大时, OF 标志为 ON。 状态标志的动作 名称 出错标志 标记符 内容 ER ・被乘方数据或者乘方算数据为非数时为 ON ・运算结果的绝对值比浮点数据所能表示最小值还小时, UF 标志为 ON。 ・被乘方数据为 0,且乘方数据为 0 以下时为 ON ・被乘方数据为负,且乘方数据不为整数时为 ON ・除此之外为 OFF ・转换结果为负数时,N 标志为 ON。 =标志 = ・运算结果(浮点数据)的指数部和尾数部均为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・运算结果的绝对值比浮点数据所能表示的最大 值还大时为 ON ・除此之外为 OFF 下溢标志 UF ・运算结果的绝对值比浮点数据所能表示的最小 值还小时为 ON ・除此之外为 OFF N 标志 N ・ 运算结果为负数时。ON ・除此之外为 OFF 3-320 浮点转换·运算指令 3-139 单精度浮点数据比较 =F,<>F,F,>=F (LD/AND/OR 型)(329~334) 概要 LD(载入)连接型 比较结果反映到功率流 3-139 单精度浮点数据比较 =F,<>F,F,>=F (LD/AND/OR 型)(329~334) 比较被指定的单精度浮点数据(32 位:IEEE754)或者 常数,比较结果为真时,连接到下一段之后。 ・连接型中有 LD(逻辑取反)连接、AND(串联)连 接、OR(并联)连接 3 种。 AND(串联)连接型 3 各 指 比较结果反映 令 到功率流 说 符号 明 等 LD(载入)连接型 符号·选项 S1:比较数据 1 S2:比较数据 2 OR(并联)连接型 AND(串联)连接型 符号·选项 S1:比较数据 1 S2:比较数据 2 OR(并联)连接型 符号·选项 S1:比较数据 1 S2:比较数据 2 等 比较结果反映到功率流 浮 点 转 换 · 运 比较指令通过符号与选项的组合,表示为 18 种类的 算 指 助记符。 令 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为单精度浮点 数据(32 位:IEEE754)进行比较,比较结果为真时, 连接到下一段之后。 指定比较数据 S1, S2 时,输入操作数 S1, S2 中存储了数 据的通道的开始地址。并且,在比较数据中使用常数时, 在 S1, S2 中直接输入 16 进制 8 位的数值。 和 LD、AND、OR 指令具有相同操作,接在各指令后 面对其它指令进行编程。 LD 型时:能直接连接到母线。 AND 型时:不能直接连接到母线。 OR 型时:能直接连接到母线。 符号・选项 符号 选项 (梯形图中无 LD、AND、 (数据型) OR) LD=、AND=、OR=、 + F(单精度浮点) LD<>、AND<>、OR<> LD<、AND<、OR< LD<=、AND<=、OR<= LD>、AND>、OR> LD>=、AND>=、OR>= 注: • 请在本指令的最终段中加上输出类指令(OUT 类指令以 及下段连接型指令之外的应用指令)。 • 本指令不能在回路的最终段中进行使用。 3-321 浮点转换·运算指令 单精度浮点数据比较 =F,<>F,F,>=F (LD/AND/OR 型)(329~334) 执行条件/每次刷新指定 数据内容 执行条件 ON 时每周期执行,连接到下 符号比较 区域 3 一段 指令 CIO(输入输出继电器等) S1 S2 0000~6142 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) W000~510 H000~510 A000~958 T0000~4094 C0000~4094 D00000~32766 @D00000~32767 DM 间接(BCD) *D00000~32767 符号比较指令一览 常数 #00000000~FFFFFFFF (BIN 数据) 功能 助记符 名称 FUN 编号 数据寄存器 - S1=S2 时 LD = F LD 型・浮点数据・一致 329 为真(ON)AND = F AND 型・浮点数据・一致 329 OR = F OR 型・浮点数据・一致 329 S1≠S2 时 LD <> F LD 型・浮点数据・不一致 330 为真(ON)AND <> F AND 型・浮点数据・不一致 330 变址寄存器(直接) 变址寄存器(间接) IR0~15 ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 OR <> F OR 型・浮点数据・不一致 330 浮 点 S1<S2 时 LD < F LD 型・浮点数据・未满 为真(ON) AND < F AND 型・浮点数据・未满 331 331 转 OR < F OR 型・浮点数据・未满 331 换 · 运 S1≦S2 时 LD <= F LD 型・浮点数据・以下 为真(ON)AND <= F AND 型・浮点数据・以下 332 332 算 OR <= F OR 型・浮点数据・以下 332 指 令 S1>S2 时 LD > F LD 型・浮点数据・超过 为真(ON) AND > F AND 型・浮点数据・超过 333 333 OR > F OR 型・浮点数据・超过 333 状态标志的动作 名称 出错标志 标记符 ER >标志 ≧标志 > >= 内容 ·S1+1, S1 或者 S2+1, S2 为非数时为 ON ·S1+1, S1 或者 S2+1, S2 为+∞时为 ON ·S1+1, S1 或者 S2+1, S2 为-∞时为 ON ·除此之外为 OFF ·比较结果为 S1+1、S1>S2+1、S2 时为 ON ·除此之外为 OFF ·比较结果为(S1+1, S1)≧(S2+1, S2)时 为 ON ·除此之外为 OFF S1≧S2 时 LD >= F LD 型・浮点数据・以上 334 为真(ON)AND>= F AND 型・浮点数据・以上 334 OR >= F OR 型・浮点数据・以上 334 =标志 ≠标志 = <> ·比较结果为(S1+1, S1)=(S2+1、S2) 时为 ON ·除此之外为 OFF ·比较结果为(S1+1, S1)≠(S2+1, S2)时 为 ON ·除此之外为 OFF <标志 < ·比较结果为(S1+1, S1)<(S2+1, S2)时 为 ON ·除此之外为 OFF ≦标志 <= ·比较结果为(S1+1, S1)≦(S2+1, S2)时 为 ON ·除此之外为 OFF N 标志 N 保持 3-322 浮点转换·运算指令 单精度浮点数据比较 =F,<>F,F,>=F (LD/AND/OR 型)(329~334) 动作说明 (例) 3 各 指 令 说 明 0.00 为 ON 时,比较存储在数据存储器 D100, D101 中的 浮点数据和存储在 D200, D201 中的浮点数据。比较结果 为(D100, D101 的数据)<(D200, D201 的数据)时, 连接到下一段之后,输出继电器 100.00 为 ON。 比较结果不为(D100, D101 的数据)<(D200, D201 的 数据)时,不连接到下一段之后。 浮 点 转 换 · 运 算 指 令 3-323 浮点转换·运算指令 3-140 浮点<单>→字符串转换 FSTR (448) 概要 3-140 浮点<单>→字符串转换 FSTR (448) 将指定的单精度浮点数据(32 位:IEEE754)用小数点 3 形式或者指数形式表示,将其转换为字符串数据(ASCII 各 代码)。 指 令 说 符号 明 操作数说明 控制数据 S:浮点数据低位 CH 编号 C:控制数据 D:转换结果输出低位 CH 编号 浮 点 转 换 · 运 功能说明 算 指 令 将 S 所指定的单精度浮点数据(32 位:IEEE754)根据 C~C+2 的内容,以小数点形式或者指数形式表示,将 其转换为字符串(ASCII 代码),并将结果输出到 D 所 指定的通道。 ・通过 C(转换形式)来指定用小数点形式/指数形式来 表示 S+1, S 的浮点数据。 ・小数点形式 将实数用整数部和小数部表示的形 式。 例)124.56 ・指数形式 将实数用整数部、小数部以及指数部 表示的形式。 例)1.2456E-2(1.2456×10-2) ・用 C+1(全位数)来指定转换后的字符串数(包括符 号、数值、小数点、半角空格在内)。 ・用 C+2(小数部位数)来指定转换后的字符串的小数 部位数(字符数)。 存储到 D 以后的顺序为:D 的高位字节→D 的低位字节 →D+1 的高位字节→D+1 的低位字节→……(以下相 同)。 3-324 浮点转换·运算指令 浮点<单>→字符串转换 FSTR (448) ・转换后的字符串的存储详情 ・整数部位数(整数部字符数)的限制 转换后的字符串如下图所示存储到 D 中。 同时,小数点形式和指数形式的情况下字符串的存储方 法不同。 小数点形式(C=0000Hex) 符号 全位数 整数部 小数部位数 小数点 1) 转换后的字符串为小数点形式(C=0000 Hex) 时 ・小数部位数为 0 时: 1≦整数部位数≦24 3 各 指 ・小数部位数为 0 以外时: 令 1≦整数部位数≦24-小数部位数-2 说 2) 转换后的字符串为指数形式(C=0001 Hex)时 1 明 (固定) S 的浮点数据的小数部位数大于该数时,将下一位四舍 五入。 S 的浮点数据的小数部位数小于该数时,将 0(30Hex) 存储到下一位之后。 存储(2EHex),但是,小数部位数为 0 时,不存储 (全位数)-(符号+小数点+小数部位数) >浮点数据的整数部时 存储空格(20Hex) ・对于小数部位数的限制 1) 转换后的字符串为小数点形式(C=0000 Hex) 时 小数部位数≦7,并且(小数部位数)≦(全位 正:空格(20Hex) 负:-(2DHex) 指数形式(C=0001Hex) 全位数 整数部 小数部位数 符号 小数点 指数部 (4 位固定) 符号 数-3) 2) 转换后的字符串为指数形式(C=0001 Hex)时 小数部位数≦7,并且(小数部位数)≦(全位 数-7) 执行条件/每次刷新指定 浮 0~9 时,作为 00~09 存储 正:+(2BHex) 负:-(2DHex) 存储 E(45Hex) S 的浮点数据的小数部位数大于该数时, 将下一位四舍五入。 S 的浮点数据的小数部位数小于该数时, 将 0(30Hex)存储到下一位之后。 执行条件 ON 时每周期执行,连接到下 FSTR 点 一段 转 换 上升沿 1 周期执行 @FSTR · 下降沿 1 周期执行 无 运 每次刷新指定 无 算 指 使用限制 令 存储(2EHex)。但是,小数部位数为 0 时,不存储 (全位数)-(符号+小数点+小数部位数+指数部)>浮点数据的整 数部时将空格(20Hex)存储到符号与整数部之间 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 正:空格(20Hex) 负:-(2DHex) 使用 可 可 可 可 注:转换后字符串的最后处理(结束代码)按照下述方法存储。 ·全位数为奇数时:在最后字符串后存储“00Hex”。 ·全位数为偶数时:在最后字符串后存储“0000Hex”。 ・转换后字符串位数的限制 对转换后的字符串位数(字符数)有限制。并且 不满足限制时,ER 标志为 ON。 ・对全位数(全字符数)的限制 1) 转换后的字符串为小数点形式(C=0000 Hex) 时 ・小数部位数为 0 时: 2≦全位数≦24 ・小数部位数为 0 以外时: (小数部位数+3)≦全位数≦24 2) 转换后的字符串为指数形式(C=0001 Hex)时 ・小数部位数为 0 时: 6≦全位数≦24 ・小数部位数为 0 以外时: (小数部位数+7)≦全位数≦24 3-325 浮点转换·运算指令 浮点<单>→字符串转换 FSTR (448) 数据内容 区域 S C D 3 CIO(输入输出继电器 0000~6142 0000~6141 0000~6143 各 指 令 说 明 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 W000~510 H000~510 A000~958 T0000~4094 C0000~4094 W000~509 H000~509 A000~957 T0000~4093 C0000~4093 W000~511 H000~511 A448~959 T0000~4095 C0000~4095 数据内存(DM) D00000~ D00000~ D00000~ 32766 32765 327677 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #00000000~ - FFFFFFFF (BIN 数据) 数据寄存器 - 变址寄存器(直接) - 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 IR0~15+(++) ,-(--)IR0~15 浮 点 转 换 · 运 算 指 令 状态标志的动作 名称 出错标志 =标志 标记符 ER = 内容 ・S+1, S 的数据为非数时 ・S+1, s 的数据为+/-∞时 ・C 所指定的字符串表示形式指定为 0000,0001 以外时 ・C+1 的全位数为下述范围外时 小数点形式 (1)小数部位数为 0 时 2≦(全位数)≦24 (2)小数部位数为 0 以外时 (小数部位数+3)≦(全位数)≦24 指数形式 (1)小数部位数为 0 时 6≦(全位数)≦24 (2)小数部位数为 0 以外时 (小数部位数+7)≦(全位数)≦24 ・C+2 所指定的小数部位数在下述范围外时 小数点形式 小数部位数≦7、 并且,(小数部位数)≦(全位数-3) 指数形式 小数部位数≦7、 并且,(小数部位数)≦(全位数-7) ・除此之外为 OFF ・转换结果为“0”时为 ON ・除此之外为 OFF 3-326 浮点转换·运算指令 浮点<单>→字符串转换 FSTR (448) 动作说明 (例) (1)将浮点数据转换为小数点形式的字符串 3 各 0.00 为 ON 时,将存储在 D1, D0 中的浮点数据转换为小数点形式的字符串,根据存储在 D10 之后的控制数据的内容 指 (小数点形式、全位数=7 位、小数部位数=3 位),将转换的字符串存储在 D100 之后。 令 说 明 转换 存储 小数点形式 全位数(全字符数)=7 位(字符) 小数部位数(字符数)=3 位(字符) 全位数 四舍五入 空格 小数部位数 浮 点 (空格) (空格) 转 换 · 运 算 (2)将浮点数据转换为指数形式的字符串 指 0.00 为 ON 时,将存储在 D1, D0 中的浮点数据转换为指数形式的字符串,根据存储在 D10 之后的控制代码的内容(指 令 数形式、全位数=11 位、小数部位数=3 位),将转换后的字符串存储到 D100 之后。 转换 存储 全位数 指数形式 全位数(全字符数)=11 位(字符) 小数部位数(字符数)=3 位(字符) 空格 小数部位数 四舍五入 (空格) (空格) 3-327 浮点转换·运算指令 3-141 字符串→浮点<单>转换 FVAL (449) 概要 3-141 字符串→浮点<单>转换 FVAL (449) 将以指定的小数点形式或者指数形式所表示的字符串 3 (ASCII 代码)转换为单精度浮点数据(32 位: 各 指 IEEE754),并将结果输出到指定的通道。 令 符号 说 明 S:字符串数据存储通道编号 D:转换结果输出通道编号 ・字符串的存储详情 字符串如下表所示进行转换。 此外,在小数点形式和指数形式下转换条件不同。 功能说明 将 S 所指定的 CH 中存储的字符串数据(ASCII 代码) 转换为单精度浮点数据(32 位:IEEE754),并将结果 输出到 D 所指定的通道。 在作为转换对象的字符串数据中用以下任一种形式所表 示的 ASCII 代码。 ・小数点形式 浮 将实数用整数部和小数部表示的形式。 点 转 例)124.56 换 ・指数形式 · 将实数用整数部、小数部以及指数部表示的形 运 算 式。 指 例)1.2456E-2(1.2456×10-2) 令 同时,对被存储的字符串数据的形式进行自动判别。 S 之后的字符串存储顺序为:S 的高位字节→S 的低位字 节→S+1 的高位字节→S+1 的低位字节→……(以此类 推)。 小数点形式 将字符串(ASCII 代 码)转换为单精度浮 点数据(32 位) 浮点 32 位数据 执行条件/每次刷新指定 执行条件 ON 时每周期执行,连接到下 一段 上升沿 1 周期执行 FVAL @FVAL 符号 指数部 存储到 D 指 定的通道 下降沿 1 周期执行 无 每次刷新指定 无 使用限制 转换时忽略 除去符号、小数点、指数部 后的第 6 字符之后被忽略 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 指数形式 将字符串(ASCII 代 码)转换为单精度浮 点数据(32 位) 浮点 32 位数据 转换时忽略 (2B)(30)(32) 符号 指数部 存储到 D 指 定的通道 3-328 浮点转换·运算指令 字符串→浮点<单>转换 FVAL (449) 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S D 0000~6143 0000~6142 W000~511 W000~510 H000~511 H000~510 A000~959 A448~958 T0000~4095 T0000~4094 C0000~4095 C0000~4094 D00000~32767 D00000~32766 @D00000~32767 *D00000~32767 - - - ,IR0~15 -2048~+2048,IR0~15 DR0~ 15,IR0~15 IR0~15+(++) ,-(--)IR0~15 动作说明 (例) (1)将小数点形式的字符串转换为浮点数据 3 各 0.00 为 ON 时,将存储到 D0 之后的小数点形式的字符 指 串转换为浮点数据,将转换后的浮点数据存储到 D100 令 之后。 说 明 忽略 除去符号、小数点后,第 6 字符之后被忽略 空格 转换 状态标志的动作 存储 名称 出错标志 =标志 标记符 内容 浮 ER ・S 所指定的字符串数据的整数部、小数部中 点 有 30 Hex~39 Hex(0~9)以外的字符时 转 ・S 所指定的字符串数据的指数部中有“45 换 Hex(E)、2C Hex(+)”、“45 Hex(E)、 · 2D Hex(-)”以外的字符时 ・S 所指定的字符串中有多个指数部时 ・转换后的数据为+/-∞时 (2)将指数形式的字符串转换为浮点数据 运 算 0.00 为 ON 时,将存储在 D0 中的指数形式的字符串转 指 ・S 所指定的字符串数据的字符数为 0 时 换为浮点数据,将转换后的浮点数据存储在 D100 之后。 令 ・S 所指定的字符串数据的 25 字符以内没有 “00 Hex 时 ・除此之外为 OFF = ・转换结果为“0 时为 ON ・除此之外为 OFF 忽略 忽略 空格 转换 存储 3-329 浮点转换·运算指令 3 各 指 令 说 明 浮 点 转 换 · 运 算 指 令 3-330 双精度浮点转换 运算指令 双精度浮点转换·运算指令 项目号 3-142 3-143 3-144 3-145 3-146 3-147 3-148 3-149 3-150 3-151 3-152 3-153 3-154 3-155 3-156 3-157 3-158 3-159 3-160 3-161 3-162 指令语句 浮点→16 位 BIN 转换<双精度> 浮点→32 位 BIN 转换<双精度> 16 位 BIN→浮点转换<双精度> 32 位 BIN→浮点转换<双精度> 浮点加法运算<双精度> 浮点减法运算<双精度> 浮点乘法运算<双精度> 浮点除法运算<双精度> 角度→弧度转换<双精度> 弧度→角度转换<双精度> SIN 运算<双精度> COS 运算<双精度> TAN 运算<双精度> SIN-1 运算<双精度> COS-1 运算<双精度> TAN-1 运算<双精度> 平方根运算<双精度> 指数运算<双精度> 对数运算<双精度> 乘方运算<双精度> 双精度浮点数据比较 助记符 FIXD FIXLD DBL DBLL +D -D *D /D RADD DEGD SIND COSD TAND ASIND ACOSD ATAND SQRTD EXPD LOGD PWRD =D、<>D、 D、>=D FUN 编号 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 335~340 页码 3-337 3-338 3-339 3-340 3-341 3-343 3-345 3-347 3-349 3-350 3-351 3-352 3-353 3-354 3-355 3-356 3-357 3-358 3-359 3-360 3-361 3-331 双精度浮点转换・运算指令 双精度浮点转换・运算指令 FUN 编号 助记符 3 841 FIXD 各 842 FIXLD 指 843 DBL 令 说 明 844 DBLL 845 +D 846 -D 847 /D 指令语句 浮点→16 位 BIN 转换<双精度> 浮点→32 位 BIN 转换<双精度> 16 位 BIN→浮点转换<双精度> 32 位 BIN→浮点转换<双精度> 浮点加法运算<双精度> 浮点减法运算<双精度> 浮点除法运算<双精度> 数据 s:符号 e:指数部 f:尾数部 位数 1 11 52 内容 0:正、1:负 指数部 e 为 0~2047 的值。从 e 中减去 1023 后的值为实际的指数。因此,指数为- 1023~1024。e=0、e=1024 时表示特殊数。 表示 2 进制数的浮点的尾数部。同时将尾 数正规化时,尾数的范围转为 1.0≦1.f< 2.0。 848 *D 浮点乘法运算<双精度> 有效位数 849 RADD 850 DEGD 851 SIND 角度→弧度转换<双精度> 弧度→角度转换<双精度> SIN 运算<双精度> CP 系列中可以处理的双精度浮点数据的有效位数用 2 进制数表示时为 53 位,用 10 进制数表示时为 15.6 位。 852 COSD COS 运算<双精度> 双精度浮点数据下的表示 853 TAND 854 ASIND 855 ACOSD 856 ATAND TAN 运算<双精度> SIN-1 运算<双精度> COS-1 运算<双精度> TAN-1 运算<双精度> 可以表示的数如下所示。 ・-∞ ・-1.79769313486232×10308≦值≦-2.22507385850720×10-308 857 SQRTD 平方根运算<双精度> ・0 858 EXPD 指数运算<双精度> ・+2.22507385850720×10-308≦值≦+1.79769313486232×10308 859 LOGD 双 精 860 PWRD 对数运算<双精度> 乘方运算<双精度> ・+∞ ・非数 度 浮 数据格式 点 所谓双精度浮点数据,是指将实数用符号、尾数、指数 转 换 表示出来的数据。 · 此外,将任意数据用浮点形式表示如下所示。 运 算 指 实数值=(-1)s 2e-1023×(1.f) s:符号 并且,表示非数、±∞、0 时,需将指数部以及尾数部设 为以下值。 令 e:指数部 非数 e=1024、f≠0 f:尾数部 +∞ e=1024、f=0、s=0 在此,(1.f)将尾数正规化,表示 1 的位为 1,剩下的 -∞ e=1024、f=0、s=1 小数部为 f。 0 e=0、f=0 CP 系列中,使用以 IEEE754 标准的双精度为基准的双 精度浮点数据的格式。双精度数据表示为 64 位,格式如 下所示。 同时,所谓非数,是指不能视为浮点数据的值。 但是,双精度浮点・运算指令的结果不会转为非数。 双精度浮点数据格式的存储方法 在外围工具 CX-Programmer 的 I/O 存储器编辑画面中, 将数据形式指定为「倍长浮点」后,输入的小数点数据 自动转换为上述 IEEE754 标准的数据格式,存储在 I/O 存储器中。此外,以上述 IEEE754 标准的数据格式所存 储的数据自动被小数点数据所监控。 3-332 双精度浮点转换・运算指令 因此,用户没有必要关心上述 IEEE754 标准的数据格式。 (2)非正规化数 仅需注意双精度浮点数据占有 4CH。 表示绝对值较小的实数值。 参考 浮点数所表示的值的种类 符号部以 0(正)或 1(负)来表示值的符号。 指数部为 0,实际的指数转为-1022。 3 各 解释为尾数部为 1~252-1,实际的尾数将 252 的位假定 指 为 0,紧随其后有小数点。 令 表示非正规化数的值为 说 明 (-1)(符号部)×2-1022×(<尾数部>×2-52)。 指数部(e) 0 既不是 0 也不是全 全位 1 1位 (1024) 尾数部(f) (1024) 0 0 以外 0 非正规化数 正规化数 无限大 非数 注:非正规化数表示正规化数无法表示的范围内的绝对值 较小的浮点数,与正规化数相比,有效位数较少。因此, 运算结果转为非正规化数的情况下,或者途中结果转为 非正规化数的情况下,结果的有效位数将无法保证,请 注意。 例 32 0 00000000000000000000000000000000 00000000000011000000000000000000 64 63 52 51 33 符号:+ 指数:-1022 尾数:0+(251+250)×2-52=0+(2-1+2-2)=0+0.75=0.75 值:0.75×2-1022=1.668805×10-308 (1)正规化数 表示通常的实数值。 (3)零 双 符号部以 0(正)或 1(负)分别表示+0.0、-0.0。 精 符号部以 0(正)或 1(负)来表示值的符号。 指数部取 1~2046 的值。实际的指数是从该值中减去 1023 后的值,其范围为-1022~1023。 指数部、尾数部均为 0。 +0.0、-0.0 作为值均表示 0.0。关于零的符号的不同所 导致的各运算下的功能区别,请参见「浮点的四则运算」。 度 浮 点 转 尾数部取 0~(252-1)的值。解释为实际的尾数将 252 换 的位假定为 1,紧随其后有小数点。 (4)无限大 · 运 表示正规化数的值为 (-1)(符号部) ×2(指数部)-1023×(1+<尾数部>×2-52) 符号部以 0(正)或 1(负)分别表示+∞、-∞。 指数部为 2047(211-1)。 算 指 令 尾数部为 0。 例 符号:- 指数:1024-1023=1 尾数:1+(251+250) ×2-52=1+(2-1+2-2)=1+0.75=1.75 值:-1.75×21=-3.5 (5)非数 「0.0/0.0」、「∞/∞」、「∞-∞」等作为结果不对应 数值或无限大的运算结果。 指数部为 2047(211-1)。 尾数部为 0 以外的值。 注:关于非数的符号以及尾数字段的(0 以外的)值没有规 定。 3-333 双精度浮点转换・运算指令 浮点的四则运算 关于双精度浮点数据的运算结果 (1) 结果值的进位方法 浮点数的四则运算结果的正 (1)溢出 3 确值超过内部表示的尾数有效数字时,根据以下 运算结果的绝对值比浮点数据所能表示的最大值 各 规则进行进位。 还大时,发生溢出。此时,运算结果发生如下变 指 令 说 明 ①结果值向近似该值的两个浮点数的内部表示中 较近的方向进位。 ②结果值刚好在与该值近似的两个浮点数的中间 化。 ・运算结果为正时:+∞ ・运算结果为负时:-∞ 时,尾数的最后一位为 0。 (2)运算结果转为 0 时 运算结果的尾数部 f 和指数部 e 双方为 0 时,运算结果转为 0。此外,运算结果的 (2)上溢、下溢、无效运算时的处理 对于执行时的上溢、下溢、无效运算,进行以下 绝对值比浮点数据所能表示的最小值还小时,发 生下溢。此时,运算结果也转为 0。 处理。 (3)同时,对于运算结果为 0 时 ON 的状态标志的=标 ①溢出时,根据结果的符号,转为正或负的无限 志,只有运算结果的尾数部 f 和指数部的 e 均为 0 大。 时为 ON。 ②下溢时,根据结果的符号,转为正或负的零。 ③在符号加上逆的无限大,符号减去相同的无限 大,零乘以无限大,零除以零,或者无限大除 以无限大时发生无效运算。 这些情况下结果转为非数。 ④从浮点数转换为整数时发生溢出的情况下,结 双 精 果值将无法保证。 度 浮 点 转 (3)关于特殊值运算的注意事项 关于特殊值(零、无 限大、非数)运算的注意事项如下。 换 ①正的零和负的零之和为正的零。 · 运 ②同符号的零之差为正的零。 算 ③被运算数一方或者双方中含有非数的运算结果 指 通常转为非数。 令 ④在比较运算中,正的零和负的零作为相等值处 理。 ⑤被运算数一方或者双方为非数的比较运算、等 值运算的结果,对于「!=」通常为真、其他 情况下通常为假。 3-334 双精度浮点转换・运算指令 单精度浮点转换・运算的结果和双精度浮点 转换・运算的结果比较 3 此时,极坐标形式所表示的矢量 各 指 j⎜⎛ π ⎟⎞θ 令 将 r = re ⎝ 360 ⎠ 说 将 转换为 X-Y 直交坐标系上的坐标 A(x,y)的示例中,表示单精度浮点和双精度浮点的运算结果区别。 明 同时,在此 θ=20°(deg)、r=10,以 BCD 4 位将 θ 存储到 D0,将 r 存储到 D1000。 ●使用单精度浮点转换・运算时 ・程序示例 ●使用双精度浮点转换・运算时 ・程序示例 双 精 度 浮 点 转 换 · 运 算 指 令 3-335 双精度浮点转换・运算指令 ①从 BCD 数据转换为单精度浮点数据(32 位: ①从 BCD 数据转换为双精度浮点数据(64 位: 3 IEEE754)。 IEEE754)。 各 ・通过 BIN 指令转换为 BIN 数据,通过 FLT ・通过 BIN 指令转换为 BIN 数据,通过 DBL 指 指 令 转 换 为 单 精 度 浮 点 数 据 ( 32 位 : 指 令 转 换 为 双 精 度 浮 点 数 据 ( 64 位 : 令 IEEE754)。 IEEE754)。 说 明 ・将 θ 转换为单精度浮点数据(32 位: IEEE754)的值被输出到 D200, D201。 ・将 θ 转换为双精度浮点数据(64 位: IEEE754)的值被输出到 D200~D203。 ・存储到 D200, D201 的角度转换为弧度。 ・存储到 D200~D203 的角度转换为弧度。 ・将 r 转换为单精度浮点数据(32 位: IEEE754)的值被输出到 D1200, D1201。 ・将 r 转换为双精度浮点数据(64 位: IEEE754)的值被存储到 D1200~D1203。 ②通过单精度浮点计算 cosθ、sinθ 的值。 ②通过双精度浮点计算 cosθ、sinθ 的值。 ・cosθ 的值被输出到 D300, D301。 ・cosθ 的值被输出到 D300~D303。 ・sinθ 的值被输出到 D400, D401。 ・sinθ 的值被输出到 D400~D403。 ③通过单精度浮点计算 r×cosθ、r×sinθ。 ③通过双精度浮点计算 r×cosθ、r×sinθ。 ・r×cosθ 的值被输出到 D10000~D10001。 ・r×cosθ 的值被输出到 D10000~D10003。 ・r×sinθ 的值被输出到 D20000~D20001。 ・r×sinθ 的值被输出到 D20000~D20003。 ・运算结果 A(x,y) ・运算结果 A(x,y) A 的坐标 单精度浮点数据 实数值 A 的坐标 双精度浮点数据(64 实数值 (32 位:IEEE754) 位:IEEE754) 双 精 度 x 4116 59CF 3.4202015399 933 4022 CB39 E973 3.4202014332 x 5C32 567 浮 点 y 405A E495 9.3969259262 085 400B 5C92 91AC 9.3969262078 y 8EEB 591 转 换 · ●运算结果的比较 运 可以知道如果比较运算结果的实数值,可以得到比使用双精度浮点数据的一方精度更高的结果。 算 指 令 3-336 双精度浮点转换・运算指令 3-142 浮点→16 位 BIN 转换<双精度> FIXD(841) 概要 执行条件/每次刷新指定 3-142 浮点→16 位 BIN 转换<倍> FIXD(841) 将指定的双精度浮点数据(64 位:IEEE754)转换为带 ON 时每周期执行 FIXD 符号 BIN16 位数据,并将结果输出到指定通道。 执行条件 上升沿时 1 周期执行 @FIXD 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 符号 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 S:浮点数据低位 CH 编号 D:转换结果输出 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 区域 S D 将 S 所指定的双精度浮点数据(64 位:IEEE754)的整 CIO(输入输出继电器等) 0000~6140 0000~6143 数部转换为带符号 BIN(16 位),并将结果输出到 D。 浮点数据 (64 位) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 W000~508 H000~508 A000~956 T0000~4092 W000~511 H000~511 A448~959 T0000~4095 带符号 BIN 数据 (16 位) 计数器 数据内存(DM) DM 间接(BIN) C0000~4092 C0000~4095 D00000~32764 D00000~32767 @D00000~3276 将浮点数据的整数部转换为 BIN 数据,并将结果输出到 DM 间接(BCD) *D00000~32767 指定通道。小数点之后舍去。 例: 浮点数据 转换结果(带符号 BIN 16 位) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) - 双 - DR0~15 精 - 度 浮 ,IR0~15 点 3.5 → 3 -2048~+2047,IR0~15 转 -3.5 → -3 DR0~15,IR0~15 换 ,IR0~15+(++) · ,-(--)IR0~15 运 算 注: 状态标志的动作 指 · S 的内容不作为浮点数据时,会发生错误,ER 标志为 名称 标记符 内容 令 ON。 ·S+3, S+2, S+1, S 的内容不在-32,768~+32,767 的范围内 时,会发生错误,ER 标志为 ON。 出错标志 ER ・S+3、S+2、S+1、S 的数据为非数时为 ON ・S+3、S+2、S+1、S 的数据不在-32768~ +32767 的范围内时为 ON ・除此之外为 OFF ·转换的结果,D 的内容为 0000 Hex 时,=标志为 ON。 · 转换的结果,D 的内容的最高位位为 1 时,N 标志为 ON。 =标志 N 标志 = ・转换结果为 0 时为 ON ・除此之外为 OFF N ・转换结果的最高位位为1时为 ON ・除此之外为 OFF 3-337 双精度浮点转换・运算指令 3-143 浮点→32 位 BIN 转换<双精度> FIXLD(842) 概要 执行条件/每次刷新指定 3-143 浮点→32 位 BIN 转换<倍> FIXLD(842) 将指定的双精度浮点数据(64 位:IEEE754)转换为带 3 符号 BIN 32 位数据,并将结果输出到指定通道。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 FIXLD @FIXLD 无 无 说 使用限制 明 S:浮点数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 将 S 所指定的双精度浮点数据(64 位:IEEE754)的整 数部转换为带符号 BIN(32 位),并将结果输出到 D+1, 区域 CIO(输入输出继电器等) S 0000~6140 D 0000~6142 D。 浮点数据 (64 位) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 W000~508 H000~508 A000~956 T0000~4092 W000~510 H000~510 A448~958 T0000~4094 计数器 带符号 BIN 倍长数据 (32 位) 数据内存(DM) DM 间接(BIN) 将浮点数据的整数部转换为带符号 BIN 倍长数据,并将 DM 间接(BCD) 双 结果输出到指定通道。小数点之后舍去。 精 度 例: 浮 浮点数据 转换结果(带符号 BIN 32 位) 点 转 2147483640.5 → 2147483640 换 -2147483640.5 → -2147483640 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) · 运 算 注: 指 令 · S 的内容不作为浮点数据时,会发生错误,ER 标志为 ON。 状态标志的动作 名称 标记符 C0000~4092 C0000~4094 D00000~32764 D00000~32766 @D00000~32767 *D00000~32767 - - - ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 内容 · S+3, S+2, S+1, S 的 内 容 不 在 - 2,147,483,648 ~ +2,147,483,647 的范围内时,会发生错误,ER 标志为 ON。 出错标志 ER ・S+3, S+2, S+1, S 的数据为非数时为 ON ・S+3, S+2, S+1, S 的数据不在 - 2147483648~+2147483647 的范围内时为 ·转换的结果,D+1, D 的内容为 00000000 Hex 时,=标志 为 ON。 ·转换的结果,D+1, D 的内容的最高位位为 1 时,N 标志 为 ON。 =标志 N 标志 ON ・除此之外为 OFF = ・转换结果为 0 时为 ON ・除此之外为 OFF N ・转换结果的最高位位为 1 时为 ON ・除此之外为 OFF 3-338 双精度浮点转换・运算指令 3-144 16 位 BIN→浮点转换<双精度> DBL(843) 概要 执行条件/每次刷新指定 3-144 16 位 BIN→浮点转换<倍> DBL(843) 将指定的带符号 BIN 16 位数据转换为双精度浮点数据 ON 时每周期执行 DBL (64 位:IEEE754),并将结果输出到指定通道。 执行条件 上升沿时 1 周期执行 @DBL 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 符号 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 S:BIN 数据 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 区域 S D 将所指定的带符号 BIN 数据(16 位)转换为浮点数据(64 CIO(输入输出继电器等) 0000~6143 0000~6140 位:IEEE754),并将结果输出到 D+3, D+2, D+1, D。同 时结果的小数点之后 1 位为 0。 内部辅助继电器 保持继电器 特殊辅助继电器 W000~511 H000~511 A000~959 W000~508 H000~508 A448~956 带符号 BIN 数据 (16 位) 时间 计数器 T0000~4095 C0000~4095 T0000~4092 C0000~4092 数据内存(DM) D00000~32767 D00000~32764 浮点数据 DM 间接(BIN) @D00000~32767 (64 位) DM 间接(BCD) *D00000~32767 S 中可以指定-32768~32767 的范围内的 BIN 数据。 同时若要转换为-32768~32767 的范围外的 BIN 数据 时,请使用 DBLL 指令。 常数 数据寄存器 变址寄存器(直接) #0000~FFFF - (BIN 数据) DR0~15 - - 双 精 度 浮 点 例: 变址寄存器(间接) ,IR0~15 转 带符号 BIN16 位 浮点数据 -2048~+2047,IR0~15 换 DR0~15,IR0~15 · 3 → 3.0 -3 → -3.0 ,IR0~15+(++) 运 ,-(--)IR0~15 算 指 状态标志的动作 令 注: 名称 标记符 内容 ・指令执行时,ER 标志置于 OFF。 出错标志 ER OFF ・转换结果的指数部和尾数部均为 0(浮点数据的 0)时, =标志为 ON。 ・转换结果为负数时,N 标志为 ON。 =标志 N 标志 = ・转换结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF N ・转换结果转为负数时为 ON ・除此之外为 OFF 3-339 双精度浮点转换・运算指令 3-145 32 位 BIN→浮点转换<双精度> DBLL(844) 概要 执行条件/每次刷新指定 3-145 32 位 BIN→浮点转换<倍> DBLL(844) 将指定的带符号 BIN32 位数据转换为双精度浮点数据 3 (64 位:IEEE754),并将结果输出到指定通道。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 DBLL @DBLL 无 无 说 使用限制 明 S:BIN 倍长数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 将 S 所指定的 BIN 数据(32 位)转换为双精度浮点数据 (64 位:IEEE754),并将结果输出到 D+3, D+2, D+1, D。 区域 CIO(输入输出继电器等) S 0000~6142 D 0000~6140 同时结果的小数点之后 1 位为 0。 S+1 CH S CH 带符号 BIN 倍长数据 (32 位) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 W000~510 H000~510 A000~958 T0000~4094 W000~508 H000~508 A448~956 T0000~4092 D+3 CH D+2 CH D+1 CH D CH 浮点数据 (64 位) 计数器 数据内存(DM) ・S 中可以指定-2147483648~2147483647 的范围内的 DM 间接(BIN) DM 间接(BCD) 双 BIN 倍长数据。 常数 精 度 例: 浮 带符号 BIN 32 位 浮点数据 点 转 16777215 → 16777215.0 数据寄存器 变址寄存器(直接) 换 -16777215 → -16777215.0 变址寄存器(间接) · 运 算 注: 指 令 ・指令执行时,ER 标志置于 OFF。 C0000~4094 C0000~4092 D00000~32766 D00000~32764 @D00000~32767 *D00000~32767 #00000000~ - FFFFFFFF (BIN 数据) - - ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 ・转换结果的指数部和尾数部均为 0(浮点数据的 0)时, 状态标志的动作 =标志为 ON。 名称 标记符 内容 ・转换结果为负数时,N 标志为 ON。 出错标志 =标志 ER OFF = ・转换结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF N 标志 N ・转换结果转为负数时为 ON ・除此之外为 OFF 3-340 双精度浮点转换・运算指令 3-146 浮点加法运算<双精度> +D(845) 概要 执行条件/每次刷新指定 3-146 浮点加法运算<倍> +D(845) 进行指定的双精度浮点数据(64 位:IEEE754)的加法 ON 时每周期执行 +D 运算,将结果输出到指定通道。 执行条件 上升沿时 1 周期执行 @+D 3 符号 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S1:被加数浮点数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 S2:加数浮点数据低位 CH 编号 D:运算结果输出低位 CH 编号 域 程序区域 程序区域 使用 可 可 可 可 数据内容 功能说明 区域 S1 S2 D 将 S1 所指定的数据和 S2 所指定的数据作为双精度浮点 数据(64 位:IEEE754)进行加法运算,并将结果输出 到 D+3, D+2, D+1, D。 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 0000~6140 W000~508 H000~508 A000~956 A448~956 被加数浮点数据 (64 位) 时间 计数器 数据内存(DM) T0000~4092 C0000~4092 D00000~32764 加数浮点数据 (64 位) 浮点运算结果数据 (64 位) ・S1 或 S2 不作为浮点数据时,出错标志(ER)为 ON, 不执行指令。 ・运算结果的绝对值比浮点数据所能表示的最大值还大 时,溢出(OF)为 ON。此时,运算结果作为±∞被输 出。 ・运算结果的绝对值比浮点数据所能表示的最小值还小 时,下溢(UF)为 ON。此时,运算结果作为浮点数 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 状态标志的动作 名称 标记符 @D00000~32767 *D00000~32767 - 双 - 精 - 度 浮 ,IR0~15 点 -2048~+2047,IR0~15 转 DR0~15,IR0~15 换 ,IR0~15+(++) · ,-(--)IR0~15 运 算 指 令 内容 据的 0 输出。 出错标志 ER ・被加数或加数为非数时为 ON 注: ・想对+∞和-∞进行加法运算时为 ON ・除此之外为 OFF ・结果为负数时,N 标志为 ON。 =标志 = ・运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF 下溢标志 UF ・运算结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF N 标志 N ・ 运算结果为负数时。ON ・除此之外为 OFF 3-341 双精度浮点转换・运算指令 浮点加法运算<双精度> +D(845) 浮点加法运算<双精度>(+D)的运算规则 按照运算的浮点数据的组合,根据下表输出结果。 3 被加数 各 0 数值 +∞ -∞ 非数 指 令 说 明 0 0 数值 +∞ -∞ 加数 数值 数值 ** +∞ -∞ +∞ +∞ +∞ +∞ ER -∞ -∞ -∞ ER -∞ 非数 ER **:此时,输出 0(包括下溢的结果 UF 转为 0 时)或、 数值、+∞、-∞中的任意结果 ER:出错标志(ER)为 ON,不执行指令。 双 精 度 浮 点 转 换 · 运 算 指 令 3-342 双精度浮点转换・运算指令 3-147 浮点减法运算<双精度> -D(846) 概要 执行条件/每次刷新指定 3-147 浮点减法运算<倍> -D(846) 进行指定的双精度浮点数据(64 位:IEEE754)的减法 ON 时每周期执行 -D 运算,将结果输出到指定通道。 执行条件 上升沿时 1 周期执行 @-D 3 符号 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S1:被减数浮点数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 S2:减数浮点数据低位 CH 编号 域 程序区域 程序区域 D:运算结果输出低位 CH 编号 使用 可 可 可 可 数据内容 功能说明 区域 S1 S2 D 从 S1 所指定的数据中将 S2 所指定的数据作为双精度浮 点数据(64 位:IEEE754)减去,将结果输出到 D+3, D+2, D+1, D。 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 0000~6140 W000~508 H000~508 A000~956 A448~956 被减数浮点数据 时间 T0000~4092 (64 位) 计数器 C0000~4092 数据内存(DM) D00000~32764 减数浮点数据 DM 间接(BIN) @D00000~32767 (64 位) DM 间接(BCD) *D00000~32767 浮点运算结果数据 (64 位) 注: ・S1 或 S2 不作为浮点数据时,出错标志(ER)为 ON。 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) - 双 - 精 - 度 浮 ,IR0~15 点 -2048~+2047,IR0~15 转 DR0~15,IR0~15 换 ・运算结果的绝对值比浮点数据所能表示的最大值还大 时,溢出(OF)为 ON。此时,运算结果作为±∞输出。 ,IR0~15+(++) · ,-(--)IR0~15 运 算 ・运算结果的绝对值比浮点数据所能表示的最小值还小时, 状态标志的动作 指 令 下溢(UF)为 ON。此时,运算结果作为浮点数据的 0 名称 标记符 内容 输出。 出错标志 ER ・被减数或减数为非数时为 ON ・ 想对+∞和+∞或-∞和-∞进行减法运算 时为 ON ・除此之外为 OFF =标志 = ・运算结果(浮点数据)的指数部和尾数部 均为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF 下溢标志 UF ・运算结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF N 标志 N ・ 运算结果为负数时。ON ・除此之外为 OFF 3-343 双精度浮点转换・运算指令 浮点减法运算<双精度> -D(846) 浮点减法运算<双精度>(-D)的运算规则 3 按照运算的浮点数据的组合,根据下表输出结果。 各 被减数 指 0 数值 +∞ -∞ 非数 令 0 0 数值 +∞ -∞ 说 减数 数值 数值 ** +∞ -∞ 明 +∞ -∞ -∞ ER -∞ -∞ +∞ +∞ +∞ ER 非数 ER **:此时,输出 0(包括下溢的结果 UF 转为 0 时)或、 数值、+∞、-∞中的任意结果 ER:出错标志(ER)为 ON,不执行指令。 双 精 度 浮 点 转 换 · 运 算 指 令 3-344 双精度浮点转换・运算指令 3-148 浮点乘法运算<双精度> *D(847) 概要 执行条件/每次刷新指定 3-148 浮点乘法运算<倍> *D(847) 进行指定的双精度浮点数据(64 位:IEEE754)的乘法 运算,将结果输出到指定通道。 执行条件 ON 时每周期执行 *D 上升沿时 1 周期执行 @*D 3 符号 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S1:被乘数浮点数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 S2:乘数浮点数据低位 CH 编号 D:运算结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 数据内容 功能说明 区域 S1 S2 D 将 S1 所指定的数据和 S2 所指定的数据作为双精度浮点 数据(64 位:IEEE754)进行乘法运算,并将结果输出 到 D+3, D+2, D+1, D。 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 0000~6140 W000~508 H000~508 A000~956 A448~956 被乘数浮点数据 时间 T0000~4092 (64 位) 计数器 C0000~4092 乘数浮点数据 (64 位) 数据内存(DM) DM 间接(BIN) DM 间接(BCD) D00000~32764 @D00000~32767 *D00000~32767 浮点运算结果数据 (64 位) 注: ・S1 或 S2 不作为浮点数据时,出错标志(ER)为 ON,不 执行指令。 ・运算结果的绝对值比浮点数据所能表示的最大值还大时, 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) - 双 - 精 - 度 浮 ,IR0~15 点 -2048~+2047,IR0~15 转 DR0~15,IR0~15 换 ,IR0~15+(++) · ,-(--)IR0~15 运 算 溢出(OF)为 ON。此时,运算结果作为±∞被输出。 状态标志的动作 指 令 ・运算结果的绝对值比浮点数据所能表示的最小值还小时, 名称 标记符 内容 下溢(UF)为 ON。此时,运算结果作为浮点数据的 0 输出。 出错标志 ER ・被乘数或乘数为非数时为 ON ・想对 0 和+∞或-∞进行乘法运算时为 ON ・除此之外为 OFF =标志 = ・运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF 下溢标志 UF ・运算结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF N 标志 N ・ 运算结果为负数时。ON ・除此之外为 OFF 3-345 双精度浮点转换・运算指令 浮点乘法运算<双精度> *D(847) 浮点乘法运算<双精度>(*D)的运算规则 3 按照运算的浮点数据的组合,根据下表输出结果。 各 被乘数 指 0 数值 +∞ -∞ 非数 令 0 0 0 ER ER 说 乘数 数值 0 ** +/-∞ +/-∞ 明 +∞ ER +/-∞ +∞ -∞ -∞ ER +/-∞ -∞ +∞ 非数 ER **:此时,输出 0(包括下溢的结果 UF 转为 0 时)或、 数值、+∞、-∞中的任意结果 ER:出错标志(ER)为 ON,不执行指令。 双 精 度 浮 点 转 换 · 运 算 指 令 3-346 双精度浮点转换・运算指令 3-149 浮点除法运算<双精度>/D(848) 概要 执行条件/每次刷新指定 3-149 浮点除法运算<倍> /D(848) 对指定的双精度浮点数据(64 位:IEEE754)进行除法 ON 时每周期执行 /D 运算,将结果输出到指定通道。 执行条件 上升沿时 1 周期执行 @/D 3 符号 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S1:被除数浮点数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 S2:除数浮点数据低位 CH 编号 D:运算结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 数据内容 功能说明 区域 S1 S2 D 将 S1 所指定的数据和 S2 所指定的数据作为双精度浮点 CIO(输入输出继电器等) 0000~6140 数据(64 位:IEEE754)进行除法运算,并将结果输出 到 D+3, D+2, D+1, D。 被除数浮点数据 (64 位) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 W000~508 H000~508 A000~956 A448~956 T0000~4092 C0000~4092 除数浮点数据 (64 位) 数据内存(DM) DM 间接(BIN) DM 间接(BCD) D00000~32764 @D00000~32767 *D00000~32767 常数 双 浮点运算结果数据 (64 位) 数据寄存器 变址寄存器(直接) - 精 度 - 浮 注: 变址寄存器(间接) ,IR0~15 点 ・S1 或 S2 不作为浮点数据时,出错标志(ER)为 ON,不 -2048~+2047,IR0~15 转 DR0~15,IR0~15 换 执行指令。 ・运算结果的绝对值比浮点数据所能表示的最大值还大时, ,IR0~15+(++) · ,-(--)IR0~15 运 算 溢出(OF)为 ON。此时,运算结果作为±∞输出。 状态标志的动作 指 令 ・运算结果的绝对值比浮点数据所能表示的最小值还小时, 名称 标记符 内容 下溢(UF)为 ON。此时,运算结果作为浮点数据的 0 输出。 出错标志 ER ・被除数或除数为非数时为 ON ・被除数和除数均为 0、或±∞时为 ON ・除此之外为 OFF =标志 = ・运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF 下溢标志 UF ・运算结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF N 标志 N ・运算结果转为负数时为 ON ・除此之外为 OFF 3-347 双精度浮点转换・运算指令 浮点除法运算<双精度> /D(848) 浮点除法运算<双精度>(/D)的运算规则 3 按照运算的浮点数据的组合,根据下表输出结果。 各 被除数 指 0 数值 +∞ -∞ 非数 令 0 ER +/-∞ +∞ -∞ 说 除数 数值 0 ** +/-∞ +/-∞ 明 +∞ 0 0* ER ER -∞ 0 0* ER ER 非数 ER *:下溢的结果转为 0。 **:此时,输出 0(包括下溢的结果 UF 转为 0 时)或、 数值、+∞、-∞中的任意结果 ER:出错标志(ER)为 ON,不执行指令。 双 精 度 浮 点 转 换 · 运 算 指 令 3-348 双精度浮点转换・运算指令 3-150 角度→弧度转换<双精度> RADD(849) 概要 执行条件/每次刷新指定 3-150 角度→弧度转换<倍> RADD(849) 将指定的双精度浮点数据(64 位:IEEE754)从度(°) 单位转换为弧度(rad)单位,并将结果输出到指定通道。 符号 ON 时每周期执行 RADD 执行条件 上升沿时 1 周期执行 @RADD 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S:度(°)数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 将 S 所指定的双精度浮点数据(64 位:IEEE754)所表 数据内容 区域 CIO(输入输出继电器等) S D 0000~6140 示的角度数据从度单位转换为弧度单位,并将结果输出 内部辅助继电器 W000~508 到 D+3, D+2, D+1, D。 保持继电器 特殊辅助继电器 H000~508 A000~956 A448~956 时间 T0000~4092 计数器 C0000~4092 数据内存(DM) D00000~32764 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 ・从 RADD 指令的度转换为弧度,依据下式进行。 常数 - 双 S 度(°)×π/180=弧度(rad) ・S 不作为浮点数据时,出错标志(ER)为 ON,不执 行指令。 数据寄存器 变址寄存器(直接) 变址寄存器(间接) - 精 - 度 浮 ,IR0~15 点 ・转换结果的绝对值比浮点数据所能实现的最大值还大 时,溢出(OF)为 ON。此时,转换结果作为±∞输出。 -2048~+2047,IR0~15 转 DR0~15,IR0~15 换 ,IR0~15+(++) · ・转换结果的绝对值比浮点数据所能表示的最小值还小 ,-(--)IR0~15 运 时,下溢(UF)为 ON。此时,转换结果作为浮点数 据的 0 输出。 状态标志的动作 算 指 令 名称 标记符 内容 出错标志 ER ・角度数据为非数时为 ON ・除此之外为 OFF =标志 = ・转换结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・转换结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF 下溢标志 UF ・转换结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF N 标志 N ・转换结果转成负数时为 ON ・除此之外为 OFF 3-349 双精度浮点转换・运算指令 3-151 弧度→角度转换<双精度> DEGD(850) 概要 执行条件/每次刷新指定 3-151 弧度→角度转换<倍> DEGD(850) 将指定的双精度浮点数据(64 位:IEEE754)从弧度(rad) 3 单位转换为度(°)单位,并将结果输出到指定通道。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 DEGD @DEGD 无 无 说 使用限制 明 S:弧度(rad)数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 将 S 所指定的双精度浮点数据(64 位:IEEE754)所表 示的角度数据从弧度单位转换为度单位,并将结果输出 区域 CIO(输入输出继电器等) S D 0000~6140 到 D+3, D+2, D+1, D。 内部辅助继电器 保持继电器 W000~508 H000~508 特殊辅助继电器 A000~956 A448~956 时间 T0000~4092 计数器 C0000~4092 数据内存(DM) D00000~32764 DM 间接(BIN) @D00000~32767 ・从 DEGD 指令的弧度转换为度,依据下式进行。 DM 间接(BCD) *D00000~32767 双 弧度(rad)×180/π=度(°) 常数 精 度 浮 点 注: ・S 不作为浮点数据时,出错标志(ER)为 ON,不执行指 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 转 令。 - - - ,IR0~15 -2048~+2047,IR0~15 换 · ・转换结果的绝对值比浮点数据所能实现的最大值还大时, DR0~15,IR0~15 ,IR0~15+(++) 运 溢出(OF)为 ON。此时,转换结果作为±∞输出。 ,-(--)IR0~15 算 指 令 ・转换结果的绝对值比浮点数据所能表示的最小值还小时, 下溢(UF)为 ON。此时,转换结果作为浮点数据的 0 状态标志的动作 输出。 名称 标记符 内容 出错标志 ER ・角度数据为非数时为 ON ・除此之外为 OFF =标志 = ・转换结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・转换结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF 下溢标志 UF ・转换结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF N 标志 N ・转换结果转成负数时为 ON ・除此之外为 OFF 3-350 双精度浮点转换・运算指令 3-152 SIN 运算<双精度> SIND(851) 概要 执行条件/每次刷新指定 3-152 SIN 运算<倍> SIND(851) 运算指定的双精度浮点数据(64 位:IEEE754)所表示 的角度(弧度单位)的 SIN(正弦)值,并将结果输出 到指定通道。 符号 ON 时每周期执行 SIND 执行条件 上升沿时 1 周期执行 @SIND 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 S:角度(rad)数据低位 CH 编号 域 程序区域 程序区域 D:转换结果输出低位 CH 编号 使用 可 可 可 可 功能说明 计算 S 所指定的双精度浮点数据(64 位:IEEE754)所 数据内容 区域 CIO(输入输出继电器等) S D 0000~6140 表示的角度(弧度单位)的 SIN(正弦)值,将结果输 出到 D+3, D+2, D+1, D。 内部辅助继电器 保持继电器 特殊辅助继电器 W000~508 H000~508 A000~956 A448~956 时间 T0000~4092 ・请在 S 中指定弧度(rad)单位的角度数据。 同时,关于度(°)和弧度(rad)的转换,请参见 RADD 指令、DEGD 指令。 ・角度数据的绝对值在 65536 以上时,出错标志(ER) 为 ON,不执行指令。 输入数据与运算结果的关系 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 状态标志的动作 名称 标记符 C0000~4092 D00000~32764 @D00000~32767 *D00000~32767 - 双 - 精 - 度 浮 ,IR0~15 点 -2048~+2047,IR0~15 转 DR0~15,IR0~15 换 ,IR0~15+(++) · ,-(--)IR0~15 运 算 指 令 内容 S:角度(rad)数据 D:运算结果(SIN 值) 出错标志 ER ・角度数据为非数时为 ON ・角度数据的绝对值不在 0~65535 的范围内 时为 ON ・除此之外为 OFF =标志 = ・运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF 保持 下溢标志 UF 保持 N 标志 N ・运算结果为负数时为 ON ・除此之外为 OFF 3-351 双精度浮点转换・运算指令 3-153 COS 运算<双精度> COSD(852) 概要 执行条件/每次刷新指定 3-153 COS 运算<倍> COSD(852) 计算指定的双精度浮点数据(64 位:IEEE754)所表示 3 的角度(弧度单位)的 COS(余弦)值,将结果输出到 各 指定通道。 指 令 符号 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 COSD @COSD 无 无 说 使用限制 明 区域 块程序区 工程步进 子程序区域 中断任务 S:角度(rad)数据低位 CH 编号 D:转换结果输出低位 CH 编号 域 程序区域 程序区域 使用 可 可 可 可 功能说明 计算 S 所指定的双精度浮点数据(64 位:IEEE754)所 数据内容 区域 CIO(输入输出继电器等) 表示的角度(弧度单位)的 COS(余弦)值,将结果输 出到 D+3, D+2, D+1, D。 内部辅助继电器 保持继电器 特殊辅助继电器 时间 ・请在 S 中指定弧度(rad)单位的角度数据。 同时,关于度(°)和弧度(rad)的转换,请参见 RADD 指令、DEGD 指令。 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 双 ・角度数据的绝对值在 65536 以上时,出错标志(ER)为 常数 精 度 ON,不执行指令。 浮 点 输入数据与运算结果的关系 转 换 S:角度(rad)数据 数据寄存器 变址寄存器 (直接) 变址寄存器 (间接) · D:运算结果(COS 值) 运 算 指 令 状态标志的动作 S D 0000~6140 W000~508 H000~508 A000~956 A448~956 T0000~4092 C0000~4092 D00000~32764 @D00000~32767 *D00000~32767 - - - ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 名称 出错标志 =标志 上溢标志 下溢标志 N 标志 标记符 ER = OF UF N 内容 ・角度数据为非数时为 ON ・角度数据的绝对值不在 0~65535 的范围内 时为 ON ・除此之外为 OFF ・ 运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 保持 保持 ・运算结果为负数时为 ON ・除此之外为 OFF 3-352 双精度浮点转换・运算指令 3-154 TAN 运算<双精度> TAND(853) 概要 执行条件/每次刷新指定 3-154 TAN 运算<倍> TAND(853) 计算指定的双精度浮点数据(64 位:IEEE754)所表示 的角度(弧度单位)的 TAN(正切)值,将结果输出到 指定通道。 符号 ON 时每周期执行 TAND 执行条件 上升沿时 1 周期执行 @TAND 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务程 明 S:角度(rad)数据低位 CH 编号 D:转换结果输出低位 CH 编号 域 使用 可 程序区域 可 序区域 可 可 功能说明 计算 S 所指定的双精度浮点数据(64 位:IEEE754)所 数据内容 区域 CIO(输入输出继电器等) S D 0000~6140 表示的角度(弧度单位)的 TAN(正切)值,将结果输 出到 D+3, D+2, D+1, D。 内部辅助继电器 保持继电器 特殊辅助继电器 W000~508 H000~508 A000~956 A448~956 时间 T0000~4092 ・请在 S 中指定弧度(rad)单位的角度数据。 计数器 C0000~4092 同时,关于度(°)和弧度(rad)的转换,请参见 RADD 指令、DEGD 指令。 ・角度数据的绝对值在 65536 以上时,出错标志(ER) 为 ON,不执行指令。 ・运算结果的绝对值比浮点数据所能表示的最大值还大 时,溢出(OF)为 ON。此时,运算结果作为±∞被输 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) D00000~32764 @D00000~32767 *D00000~32767 - 双 - 精 - 度 浮 ,IR0~15 点 出。 -2048~+2047,IR0~15 转 DR0~15,IR0~15 换 输入数据与运算结果的关系 ,IR0~15+(++) · ,-(--)IR0~15 运 算 状态标志的动作 指 令 名称 标记符 内容 出错标志 ER ・角度数据为非数时为 ON ・角度数据的绝对值不在 0~65535 的范围内 时为 ON ・除此之外为 OFF =标志 = ・运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF 下溢标志 UF 保持 N 标志 N ・运算结果为负数时为 ON ・除此之外为 OFF S:角度(rad)数据 D:运算结果(TAN 值) 3-353 双精度浮点转换・运算指令 3-155 SIN-1 运算<双精度> ASIND(854) 概要 执行条件/每次刷新指定 3-155 SIN-1 运算<倍> ASIND(854) 通过指定的双精度浮点数据(64 位:IEEE754)所表示 3 的 SIN(正弦)值来计算角度(弧度单位),将结果输 各 出到指定通道。 指 令 符号 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ASIND @ASIND 无 无 说 使用限制 明 区域 块程序区 工程步进 子程序区域 中断任务 S:角度(rad)数据低位 CH 编号 域 程序区域 程序区域 D:转换结果输出低位 CH 编号 使用 可 可 可 可 功能说明 计算相对于用 S 所指定的双精度浮点数据(64 位: 数据内容 区域 CIO(输入输出继电器等) S D 0000~6140 IEEE754)所表示的 SIN(正弦)值的角度(弧度单位), 将结果输出到 D+3, D+2, D+1, D。 内部辅助继电器 保持继电器 特殊辅助继电器 W000~508 H000~508 A000~956 A448~956 时间 T0000~4092 ・请将 SIN(正弦)数据指定在-1.0~1.0 的范围内。 计数器 指定了-1.0~1.0 的范围外的数据时,出错标志(ER) 数据内存(DM) 双 为 ON,不执行指令。 同时,SIN(正弦)数据不作为浮点数据时也会出错。 DM 间接(BIN) DM 间接(BCD) 常数 精 ・运算结果作为-π/2~π/2 的范围内的角度(弧度单 数据寄存器 度 浮 位)数据被输出到 D+3, D+2, D+1, D。 点 转 输入数据与运算结果的关系 变址寄存器(直接) 变址寄存器(间接) 换 · 运 算 S:输入数据(SIN 值) 指 D:运算结果(rad) 状态标志的动作 令 名称 标记符 C0000~4092 D00000~32764 @D00000~32767 *D00000~32767 - - - ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 内容 出错标志 ER ・SIN 数据为非数时为 ON ・SIN 数据不在-1.0~1.0 的范围内时为 ON ・除此之外为 OFF =标志 = ・ 运算结果(浮点数据)的指数部和尾数部 均为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF 保持 下溢标志 UF 保持 N 标志 N ・ 运算结果为负数时。ON ・除此之外为 OFF 3-354 双精度浮点转换・运算指令 3-156 COS-1 运算<双精度> ACOSD(855) 概要 执行条件/每次刷新指定 3-156 COS-1 运算<倍> ACOSD(855) 通过指定的双精度浮点数据(64 位:IEEE754)所表示 的 COS(余弦)值来运算角度(弧度单位),将结果输 执行条件 ON 时每周期执行 ACOSD 上升沿时 1 周期执行 @ACOSD 3 出到指定通道。 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 符号 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 S:COS(余弦)数据低位 CH 编号 域 程序区域 程序区域 D:转换结果输出低位 CH 编号 使用 可 可 可 可 功能说明 运算相对于用 S 所指定的双精度浮点数据(64 位: 数据内容 区域 CIO(输入输出继电器等) S D 0000~6140 IEEE754)所表示的 COS(余弦)值的角度(弧度单位), 将结果输出到 D+3, D+2, D+1, D 内部辅助继电器 保持继电器 特殊辅助继电器 W000~508 H000~508 A000~956 A448~956 时间 T0000~4092 ・请将 COS(余弦)数据指定在-1.0~1.0 的范围内。 指定了-1.0~1.0 的范围外的数据时,出错标志(ER) 为 ON,不执行指令。 同时, COS(余弦)数据不作为浮点数据时也会出错。 ・运算结果作为 0~π 的范围内的角度(弧度单位)数据 被输出到 D+3, D+2, D+1, D。 输入数据与运算结果的关系 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 状态标志的动作 名称 标记符 C0000~4092 D00000~32764 @D00000~32767 *D00000~32767 - 双 - 精 - 度 浮 ,IR0~15 点 -2048~+2047,IR0~15 转 DR0~15,IR0~15 换 ,IR0~15+(++) · ,-(--)IR0~15 运 算 指 令 内容 出错标志 ER ・COS 数据为非数时为 ON ・COS 数据不在-1.0~1.0 的范围内时为 ON ・除此之外为 OFF =标志 = ・运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF S:输入数据(COS 值) D:运算结果(rad) 上溢标志 下溢标志 N 标志 OF 保持 UF 保持 N 保持 3-355 双精度浮点转换・运算指令 3-157 TAN-1 运算<双精度> ATAND(856) 概要 执行条件/每次刷新指定 3-157 TAN-1 运算<倍> ATAND(856) 通过指定的双精度浮点数据(64 位:IEEE754)所表示 3 的 TAN(正切)值运算角度(弧度单位),将结果输出 各 到指定通道。 指 令 符号 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ATAND @ATAND 无 无 说 使用限制 明 区域 块程序区 工程步进 子程序区域 中断任务 S:TAN(正切)数据低位 CH 编号 域 程序区域 程序区域 D:转换结果输出低位 CH 编号 使用 可 可 可 可 功能说明 运算相对于用 S 所指定的双精度浮点数据(64 位: 数据内容 区域 CIO(输入输出继电器等) S D 0000~6140 IEEE754)所表示的 TAN(正切)值的角度(弧度单位), 将结果输出到 D+3, D+2, D+1, D。 内部辅助继电器 保持继电器 特殊辅助继电器 W000~508 H000~508 A000~956 A448~956 时间 T0000~4092 ・TAN(正切)数据不作为浮点数据时,出错标志(ER) 计数器 为 ON,不执行指令。 数据内存(DM) 双 ・运算结果作为-π/2~π/2 的范围内的角度(弧度单 位)数据被输出到 D+3, D+2, D+1, D。 DM 间接(BIN) DM 间接(BCD) 常数 精 度 输入数据与运算结果的关系 浮 点 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 转 换 S:输入数据(TAN 值) · D:运算结果(rad) 运 算 指 状态标志的动作 令 名称 标记符 C0000~4092 D00000~32764 @D00000~32767 *D00000~32767 - - - ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 内容 出错标志 ER ・TAN 数据为非数时为 ON ・除此之外为 OFF =标志 = ・运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF 保持 下溢标志 UF 保持 N 标志 N ・ 运算结果转为负数时,ON ・除此之外为 OFF 3-356 双精度浮点转换・运算指令 3-158 平方根运算<双精度> SQRTD(857) 概要 执行条件/每次刷新指定 3-158 平方根运算<倍> SQRTD(857) 运算指定的双精度浮点数据(64 位:IEEE754)的平方 根(√),将结果输出到指定通道。 符号 ON 时每周期执行 SQRTD 执行条件 上升沿时 1 周期执行 @SQRTD 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S:输入数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 运算相对于用 S 所指定的双精度浮点数据(64 位: IEEE754)所表示的输入数据的平方根,将结果输出到 区域 CIO(输入输出继电器等) S D 0000~6140 D+3, D+2, D+1, D。 内部辅助继电器 保持继电器 W000~508 H000~508 特殊辅助继电器 A000~956 A448~956 ・输入数据为负数时,出错标志(ER)为 ON,不执行 指令。此外,输入数据不被视为浮点数据时将发生错 误。 时间 计数器 数据内存(DM) DM 间接(BIN) T0000~4092 C0000~4092 D00000~32764 @D00000~32767 ・运算结果的绝对值比浮点数据所能表示的最大值还大 时,溢出(OF)为 ON。此时,运算结果作为+∞输 出。 输入数据与运算结果的关系 DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S:输入数据 D:运算结果 状态标志的动作 名称 标记符 *D00000~32767 - 双 - 精 - 度 浮 ,IR0~15 点 -2048~+2047,IR0~15 转 DR0~15,IR0~15 换 ,IR0~15+(++) · ,-(--)IR0~15 运 算 指 令 内容 出错标志 ER ・输入数据为负数时为 ON ・输入数据为非数时为 ON ・除此之外为 OFF =标志 = ・运算结果(浮点数据)的指数部和尾数部均 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF 上溢标志 OF ・运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF 下溢标志 UF 保持 N 标志 N 保持 3-357 双精度浮点转换・运算指令 3-159 指数运算<双精度> EXPD(858) 概要 执行条件/每次刷新指定 3-159 指数运算<倍> EXPD(858) 运算指定的双精度浮点数据(64 位:IEEE754)的指数 3 (将 e 作为底时的指数),将结果输出到指定通道。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 EXPD @EXPD 无 无 说 使用限制 明 S:输入数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 数据内容 运算相对于用 S 所指定的双精度浮点数据(64 位: IEEE754)所表示的输入数据的指数(将 e 作为底时的 区域 CIO(输入输出继电器等) S D 0000~6140 指数),将结果输出到 D+3, D+2, D+1, D。 内部辅助继电器 保持继电器 W000~508 H000~508 特殊辅助继电器 A000~956 A448~956 ・EXPD 指令将底(e)作为 2.718282 进行指数运算。 ・输入数据不作为浮点时,出错标志(ER)为 ON,不 执行指令。 时间 计数器 数据内存(DM) DM 间接(BIN) T0000~4092 C0000~4092 D00000~32764 @D00000~32767 ・运算结果的绝对值比浮点数据所能表示的最大值还大 DM 间接(BCD) *D00000~32767 双 精 度 浮 点 转 时,溢出(OF)为 ON。此时,运算结果作为+∞输 出。 ・运算结果的绝对值比浮点数据所能表示的最小值还小 时,下溢(UF)为 ON。此时,运算结果作为浮点数 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 换 据的 0 输出。 - - - ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 · ,IR0~15+(++) 运 输入数据与运算结果的关系 ,-(--)IR0~15 算 指 令 D S:输入数据 状态标志的动作 D:运算结果 名称 标记符 内容 出错标志 ER ・输入数据为非数时为 ON ・除此之外为 OFF =标志 = ・ 运算结果(浮点数据)的指数部和尾数部 均为 0(浮点数据的 0)时为 ON 2.718282 1 上溢标志 ・除此之外为 OFF OF ・运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON 01 S 下溢标志 ・除此之外为 OFF UF ・运算结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF N 标志 N 保持 3-358 双精度浮点转换・运算指令 3-160 对数运算<双精度> LOGD(859) 概要 执行条件/每次刷新指定 3-160 对数运算<倍> LOGD(859) 运算指定的双精度浮点数据(64 位:IEEE754)的自然 对数(以 e 为底时的对数),将结果输出到指定通道。 符号 ON 时每周期执行 LOGD 执行条件 上升沿时 1 周期执行 @LOGD 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S:输入数据低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 D:转换结果输出低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 功能说明 运 算 相 对 于 S 所 指 定 的双 精 度 浮 点数 据 ( 64 位: 数据内容 区域 CIO(输入输出继电器等) S D 0000~6140 IEEE754)表示的输入数据的自然对数(以 e 为底时的 对数),将结果输出到 D+3, D+2, D+1, D。 内部辅助继电器 保持继电器 特殊辅助继电器 W000~508 H000~508 A000~956 A448~956 时间 T0000~4092 ・LOGD 指令将底(e)作为 2.718282 进行指数运算。 ・输入数据为负数时,出错标志(ER)为 ON,不执行 指令。此外,输入数据不被视为浮点数据时将发生错 误。 ・运算结果的绝对值比浮点数据所能表示的最大值还大 时,溢出(OF)为 ON。此时,运算结果作为±∞被输 出。 输入数据与运算结果的关系 D S:输入数据 D:运算结果 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 状态标志的动作 名称 标记符 C0000~4092 D00000~32764 @D00000~32767 *D00000~32767 - 双 - 精 - 度 浮 ,IR0~15 点 -2048~+2047,IR0~15 转 DR0~15,IR0~15 换 ,IR0~15+(++) · ,-(--)IR0~15 运 算 指 令 内容 出错标志 ER ・输入数据为负数时为 ON ・输入数据为非数时为 ON ・除此之外为 OFF =标志 = ・运算结果(浮点数据)的指数部和尾数部均 1 01 2.718282 S 上溢标志 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF OF ・运算结果的绝对值比浮点数据所能表示的 最大值还大时为 ON ・除此之外为 OFF 下溢标志 UF 保持 N 标志 N ・ 运算结果为负数时。ON ・除此之外为 OFF 3-359 双精度浮点转换・运算指令 3-161 乘方运算<双精度> PWRD(860) 概要 执行条件/每次刷新指定 3-161 乘方运算<倍> PWRD(860) 进行指定的双精度浮点数据(64 位:IEEE754)的乘方 3 运算,将结果输出到指定通道。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 PWRD @PWRD 各 指 符号 令 下降沿时 1 周期执行 无 每次刷新指定 无 说 使用限制 明 S1:底数首字低位 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务程 S2:指数低位 CH 编号 D:运算结果输出低位 CH 编号 域 使用 可 程序区域 可 序区域 可 可 数据内容 功能说明 区域 S1 S2 D 将 S1 所指定的数据和 S2 所指定的数据作为双精度浮点 数据(64 位:IEEE754)进行幂运算,将结果输出到 D+3, D+2, D+1, D。 指数数据 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 0000~6140 W000~508 H000~508 A000~956 A448~956 T0000~4092 计数器 C0000~4092 例. 底数数据 数据内存(DM) DM 间接(BIN) D00000~32764 @D00000~32767 浮点数据 运算结果 双 精 S1:3.1 → 3.13 → D:29.791 DM 间接(BCD) 常数 数据寄存器 *D00000~32767 - - 度 S2:3.0 变址寄存器(直接) 浮 点 变址寄存器(间接) 转 换 注: · ・底数数据 S1 或指数数据 S2 的内容不作为浮点数据时, 运 算 指 会发生错误,ER 标志为 ON。 ・运算结果的指数部和尾数部均为 0(浮点数据的 0)时, 状态标志的动作 - ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 令 =标志为 ON。 名称 出错标志 标记符 内容 ER ・底数数据或指数数据为非数时为 ON ・运算结果的绝对值比浮点数据所能表示最大值还大时, ・底数数据为 0 且指数数据在 0 以下时为 ON OF 标志为 ON。 ・运算结果的绝对值比浮点数据所能表示最小值还小时, =标志 ・底数数据为负且指数数据不为整数时为 ON ・除此之外为 OFF = ・运算结果(浮点数据)的指数部和尾数部均 UF 标志为 ON。 ・运算结果为负数时,N 标志为 ON。 上溢标志 为 0(浮点数据的 0)时为 ON ・除此之外为 OFF OF ・运算结果的绝对值比浮点数据所能表示的 ・底数数据为 0,且指数数据在 0 以下时,错误标志为 ON。 最大值还大时为 ON ・除此之外为 OFF ・底数数据为负,且指数数据不为整数时,错误标志为 ON。 下溢标志 UF ・运算结果的绝对值比浮点数据所能表示的 最小值还小时为 ON ・除此之外为 OFF N 标志 N ・运算结果转为负数时为 ON ・除此之外为 OFF 3-360 双精度浮点转换・运算指令 3-162 双精度浮点数据比较 =D,<>D,D,>=D (LD/AND/OR 型)(335~340) 概要 3-162 双精度浮点数据比较 =D,<>D,D,>=D (LD/AND/OR 型)(335~340) 比较指定的双精度浮点数据(64 位:IEEE754),比较 结果为真时,连接到下一段之后。 3 ・连接型中有 LD(逻辑取反)连接、AND(串联)连 接、OR(并联)连接 3 种。 ・无法进行与常数的比较。 各 指 令 说 符号 明 双 精 度 浮 点 比较指令通过符号与选项的组合,表示为 18 种类的 转 换 助记符。 · 运 符号・选项 算 指 符号 选项 令 (梯形图中没有 LD、 (数据型) 功能说明 将 S1 所指定的数据和 S2 所指定的数据作为双精度浮点 数据(64 位:IEEE754)进行比较,比较结果为真时, 连接到下一段之后。 指定比较数据 S1, S2 时,输入操作数 S1, S2 中存储了数 据的通道的开始地址。同时,比较数据中不能使用常数。 AND、OR) LD=、AND=、OR=、 LD<>、AND<>、OR<> LD<、AND<、OR< LD<=、AND<=、OR<= LD>、AND>、OR> LD>=、AND>=、OR>= + D(双精度浮点) 与 LD、 AND、 OR 指令同样处理,在各指令之后继续 对其他指令进行编程。 注: LD 型时:能直接连接到母线。 AND 型时:不能直接连接到母线。 OR 型时:能直接连接到母线。 • 请在本指令的最终段中加上输出类指令(OUT 类指令以 及下段连接型指令之外的应用指令)。 • 本指令不能在回路的最终段中进行使用。 3-361 双精度浮点转换・运算指令 双精度浮点数据比较 =D,<>D,D,>=D (LD/AND/OR 型)(335~340) 执行条件/每次刷新指定 执行条件 ON 时每周期执行,连接到下 符号比较 3 一段 指令 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 符号比较指令一览 功能 助记符 名称 FUN 编号 S1=S2 时 LD = D LD 型・浮点数据・一致(双精度) 335 为真(ON)AND = D AND 型・浮点数据・一致 335 (双精度) OR = D OR 型・浮点数据・一致(双精度) 335 S1≠S2 时 LD <> D LD 型・浮点数据・不一致 336 为真(ON) (双精度) AND <> D AND 型・浮点数据・不一致 336 双 (双精度) 精 OR <> D OR 型・浮点数据・不一致 336 度 (双精度) 浮 点 S1<S2 时 LD < D LD 型・浮点数据・不到(双精度) 337 转 为真(ON) AND < D AND 型・浮点数据・不到 337 换 (双精度) · 运 OR < D OR 型・浮点数据・不到(双精度) 337 算 S1≦S2 时 LD <= D LD 型・浮点数据・以下(双精度) 338 指 为真(ON)AND <= D AND 型・浮点数据・以下 338 令 (双精度) OR <= D OR 型・浮点数据・以下(双精度) 338 S1>S2 时 LD > D LD 型・浮点数据・超过(双精度) 339 为真(ON) AND > D AND 型・浮点数据・超过 339 (双精度) OR > D OR 型・浮点数据・超过(双精度) 339 S1≧S2 时 LD >= D LD 型・浮点数据・以上(双精度) 340 为真(ON)AND>= D AND 型・浮点数据・以上 340 (双精度) OR >= D OR 型・浮点数据・以上(双精度) 340 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S1 S2 0000~6140 W000~508 H000~508 A000~956 T0000~4092 C0000~4092 D00000~32764 @D00000~32767 *D00000~32767 - - - -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER >标志 ≧标志 =标志 ≠标志 <标志 ≦标志 N 标志 > >= = <> < <= N 内容 ·比较数据 1 或 2 为非数时为 ON ·比较数据 1 或 2 为+∞时为 ON ·比较数据 1 或 2 为-∞时为 ON ·除此之外为 OFF ·比较结果为 (S1+3, S1+2, S1+1, S1)> (S2+3, S2+2, S2+1, S2)时为 ON ·除此之外为 OFF ·比较结果为 (S1+3, S1+2, S1+1, S1)≧ (S2+3, S2+2, S2+1, S2)时为 ON ·除此之外为 OFF ·比较结果为 (S1+3, S1+2, S1+1, S1)= (S2+3, S2+2, S2+1, S2)时为 ON ·除此之外为 OFF ·比较结果为(S1+3, S1+2, S1+1, S1)≠(S2+3, S2+2, S2+1, S2)时为 ON ·除此之外为 OFF ·比较结果为 (S1+3, S1+2, S1+1, S1)< (S2+3, S2+2, S2+1, S2)时为 ON ·除此之外为 OFF ·比较结果为 (S1+3, S1+2, S1+1, S1)≦ (S2+3, S2+2, S2+1, S2)时为 ON ·除此之外为 OFF 保持 3-362 双精度浮点转换・运算指令 双精度浮点数据比较 =D,<>D,D,>=D (LD/AND/OR 型)(335~340) 动作说明 (例) 3 各 指 令 说 明 0.00 为 ON 时,对数据存储器 D100~D103 中所存储的浮点数据和 D200~D203 中所存储的浮点数据进行比较。 比较结果为(D100~D103 的数据)<D200~D203 的数据时,连接到下一段之后,输出继电器 100.00 为 ON。 比较结果不为(D100~D103 的数据)<D200~D203 的数据时,不连接到下一段之后。 双 精 度 浮 点 转 换 · 运 算 指 令 3-363 双精度浮点转换・运算指令 3 各 指 令 说 明 双 精 度 浮 点 转 换 · 运 算 指 令 3-364 表格数据处理指令 表格数据处理指令 项目号 3-163 3-164 3-165 3-166 3-167 3-168 3-169 3-170 3-171 3-172 3-173 3-174 3-175 3-176 3-177 3-178 3-179 3-180 指令语句 栈区域设定 栈数据存储 后入先出 先入先出 表格区域宣言 记录位置设定 记录位置读取 数据检索 字节交换 最大值检索 最小值检索 总数值计算 FCS 值计算 栈数据数输出 栈数据参见 栈数据更新 栈数据插入 栈数据删除 助记符 SSET PUSH LIFO FIFO DIM SETR GETR SRCH SWAP MAX MIN SUM FCS SNUM SREAD SWRIT SINS SDEL FUN 编号 630 632 634 633 631 635 636 181 637 182 183 184 180 638 639 640 641 642 页码 3-371 3-373 3-375 3-377 3-379 3-381 3-382 3-384 3-386 3-388 3-390 3-392 3-394 3-396 3-398 3-400 3-402 3-404 3-365 表格数据处理指令 表格数据处理指令 3 表格数据处理大致可以分为栈处理和表格处理。 各 指 处理 令 1)栈处理 说 明 用途 使用指令 先入先出、后入先出、读 SSET、PUSH、FIFO、LIFO、SREAD、 取(参见)、变更(更新)、 SWRIT、SINS、SDEL、SNUM 指令 插入、删除、计数等处理 2)表格处 1 记录为 1 基本性处 最大值、最小值检索和 MIN、MAX、SRCH、SUM、FCS 指 理 字的表格处 理 SUM 计算等处理 令 理 应用性处 表格数据内其他各种处理 MIN、MAX、SRCH 指令和比较指令 理 (比较、重新排列等) 等与变址寄存器的组合 1 记录为多个字的表格处 记录单位下的数据处理 DIM、SETR、GETR 指令和比较指令 理 等与变址寄存器的组合 栈处理 将数据存储到栈区域,可以进行出入的处理。 使用 SSET 指令,将 I/O 存储器的特定区域定义为栈区域。栈区域开端部中存储指针用地址,每存储一次数据,指针 地址则加 1,并指示接下来应该存储的地址。 指针地址 表 格 栈区域 数 据 处 理 指 令 A B 指针地址 A 指针地址 A B C 指针地址 A B C 注:上图的指针表示追加数据前的状态。 注:正确地在指针地址之前存储栈区域的最终通道地址。 数据存储后,可以进行以下所有处理。 先入先出(FIFO:First IN First OUT)处理 指针地址 A B C 从先前进入的数据开始按顺序读取。 A 每次读取数据,指针地址则-1,接下来指 定应该保存的地址。 -1 X 3-366 表格数据处理指令 后入先出(LIFO:Last IN First OUT)处理 指针地址 A B 从后进入的数据开始按顺序读取。 每次读取数据,指针地址则-1,指定接下来应该 3 各 X 保存的地址。读取位置的数据保持不变。 指 V 令 W -1 说 X 明 中途数据的读取、变更、插入、删除处理 例)中途数据的读取 指针地址 A 读取(参见)、变更(更新)、插入、删除栈化过 B 程中的中途数据。 读取 V V 对距离指针地址-n 位置的数据进行各种处理。 -n W 用途:跟踪传送带上传送的物品时,作为栈化数据 X =物处理,管理物品的投入、排放、变更等。 指定距离指针位置-n 位 置的数据 栈数据数的计数 指针地址 对栈化数据的数目进行计数。 A 对指针地址到开头区域为止的数据数进行计数。 B 从指针位置的 1 个之前到 开头为止的数据数 N 用途:管理传送带传送的物品数目。 表 格 数 V 据 W 处 X N 理 指 令 处理 指令 栈区域设定(定義) SSET 指令 数据存储 PUSH 指令 FIFO 处理 FIFO 指令 LIFO 处理 栈数据参见 栈数据更新 LIFO 指令 SREAD 指令 SWRIT 指令 栈数据插入 SINS 指令 栈数据删除 SDEL 指令 栈数据数输出 SNUM 指令 用途:自动仓库的库存信息数据处理、工作实绩(存入)数据的处理、传送带上的工件数据管理等 栈区域 栈区域是具有如下图所示结构的数据区域。可以通过 SSET 指令将 I/O 存储器的一部分作为栈区域加以定义。栈区域 开端部中存储指针用地址,每次存储数据,指针地址则+1,并指示接下来应该存储的地址。 3-367 表格数据处理指令 事先通过 PUSH 指令将数据陆续存储到栈区域中。之后通过 FIFO 指令或者 LIFO 指令从先入或后入区域读取存储过 的数据。 3 各 表格处理 指 令 表格处理分为 1 记录为 1 字的表格处理和 1 记录为多个字的表格处理。 说 明 1 记录为 1 字的表格处理 基本性处理 作为基本性处理动作,备有 MAX(最大值)、MIN(最小值)、SRCH(检索)指令。 在这些指令中,将每个指令所指定的区域视为表格区域,进行最大值检索、最小值检索、指定数据检索,将最大值、 最小值、一致数据的 I/O 存储器有效地址存储到变址寄存器 IR0 中。通过 MOV 指令等间接指定 IR0,可以进行该数 据的读取等各种处理。 各指令 指定范围 最大值 最小值 检索 SUM 值计算 FCS 值计算 相关指令 表 格 处理 数 最大值检索 据 处 理 最小值检索 指 令 数据检索 SUM 值检索 FCS 值检索 指令 MAX 指令 MIN 指令 SRCH 指令 SUM 指令 FCS 指令 内容 检索指定范围内的最大值,输出该值,并将该地址存储到变址寄存 器 检索指定范围内的最小值,输出该值,并将该地址存储到变址寄存 器 在指定范围内检索指定数据,将该最低位地址存储到 IR(变址寄存 器),并将一致个数存储到 DR(数据寄存器) 计算指定范围内的数据的 SUM 值 计算指定范围内的数据的 FCS 值 应用性处理 除此之外的各种处理(重新排列等)可以通过 IR(变址寄存器)以及重复处理(FOR~NEXT)指令和比较等指令的 组合得以实现。 1 记录为多个字的表格处理 定义由同一通道所构成的多个记录的表格区域,为了便于在记录单位下的处理,备有如下指令。 处理 表格区域宣言 记录位置设定 记录位置读取 指令 DIM 指令 SETR 指令 GETR 指令 内容 将指定区域(记录长×记录数)宣言(定义)为表格区域。 将指定记录编号的位置(开端地址的 I/O 存储器有效地址)存储在指 定变址寄存器(IR)中 输出包括指定变址寄存器(IR)内的 I/O 存储器有效地址在内的记录编 号 注:记录编号和通道地址通过变址寄存器联系起来。如果指定记录编号,该记录的开端地址 I/O 存储器有效地址将存储到 变址寄存器(根据记录位置设定 SETR 指令)。将其作为指针,可以进行指定记录必要位置的数据读取等各种处理。 3-368 表格数据处理指令 通过组合这些指令和变址寄存器,可以进行记录单位数据的如下各种处理。 记录的读写、记录的检索、记录内的重新排列、记录的比较、记录的运算 用途示例: 将各品种的处方数据(温度设定值、压力设定值等)作为记录加以存储,只需 指定品种(记录编号)即可读取处方数据。 3 各 指 表格设定值 品种 A NO.2 品种 A 记录 2 令 说 明 记录 1 温度设定值 记录 2 压力设定值 记录 N 基本上按照以下顺序进行。 1. 通过 DIM 指令定义表格区域,通过 SETR 指令将指定记录的 I/O 存储器有效地址存储到变址寄存器。 2. 在此基础上,指定记录内的数据(第几个字)进行比较等各种处理。 3. 对变址寄存器的值进行加法运算/减法运算/增量/减量等处理,移动记录位置。 4 直到条件成立为止重复 2.、3.的处理。 表 例:定义 5 CH×1000 记录的表格区域,该 5 CH 的各记录内的第 1,3,5 CH 检查是否与各原有值一致,如果一致,则存 格 储该记录编号。 数 据 处 理 根据 DIM 指令定义记录数(1000)和每 1 记录中的字数(5)。 指 通过 SETR 指令将表格 1 的记录 No.的开头地址的 I/O 存储器有 令 效地址保存到变址寄存器 IR0。 ・记录内的第 1,3,5CH 比较各个值是否一致 ・如果一致,则通过 GETR 指令设置该记录编号,同时结束反 复。 ・如果不一致,则在 IR0 中+5,重复比较处理。 3-369 表格数据处理指令 以表格编号 1,每 1 记录登录 5CH(字) ×1000 记录部分的表格数据 3 各 指 令 说 将表格编号 1 的开端部(NO.0)的 I/O 明 存储器有效地址设置为 IR0 条件非成立时不执行以下的 FOR~ NEXT 循环 循环的重复开端 (最大 1000 记录分=1000 次) 如果记录内第 1、3、5CH(字)各个与 ﹟1234、﹟ABCD、﹟9999 一致,将该 记录编号设置为 D00000 表 格 同时终止循环 数 据 处 理 将 IR0 的值+5 后,在接下来的记录的开 指 端部执行 令 返回 FOR,重复 条件非成立时的转移目的 表格区域 将 IR0(记录的开端部)各加 5,同时将记录的开端部+0、+2、+4 的各种与﹟1234、﹟ABCD、﹟9999 比较,如果一致,将该记录 编号存储到 D00000,结束重复循环。 将同一通道数的多个记录群所组成的一系列数据称为表格数据。可以将 I/O 存储器的指定区域中所存储的数据表格作 为表格区域进行登录(DIM 指令)。表格区域最多可以登录 16 个,参见 0~15 的表格编号。 表格区域 表格编号 0 I/O 存储器 表格数据 记录 记录 同一通道数 记录 表格区域 表格编号 1 通常表格数据中使用了变址寄存器(IR)的间接参见比较方便。对于登录的表格区域,通过 SETR(记录位置设定) 指令以及 GETR(记录位置读取)指令可以很容易地进行记录的地址计算。 3-370 表格数据处理指令 3-163 栈区域设定 SSET(630) 概要 3-163 栈区域设定 SSET(630) 从指定 CH 中设定指定 CH 数的栈区域。 符号 操作数说明 D~D+3:栈管理信息(固定为 4 CH) 执行条件/每次刷新指定 执行条件 ON 时每周期执行 SSET 上升沿时 1 周期执行 @SSET 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块 程 序 区 工程步进 子程序区域 中 断 任 务 明 域 程序区域 程序区域 使用 可 可 可 可 数据内容 区域 D W CIO(输入输出继电器等) 0000~6143 内部辅助继电器 W000~511 保持继电器 H000~511 特殊辅助继电器 A448~959 A000~959 时间 T0000~4095 计数器 C0000~4095 数据内存(DM) D00000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 ― #0005~FFFF 数据寄存器 变址寄存器(直接) 变址寄存器(间接) (BIN 数据) 或者 10 进制 表 格 &5~65535 数 ― DR0~15 据 ― 处 理 ,IR0~15 指 -2048~+2047,IR0~15 令 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 D+4~:数据存储区域 注:D~D+(W-1)必须为同一区域种类。 W:0005~FFFF Hex 或者 10 进制&5~65535 功能说明 从 D 所指定的栈区域低位 CH 编号中确保以 W 所指定的 区域 CH 数作为栈区域。在确保的栈区域开端 2 CH(D+1, D+0)中输出栈区域最终 CH 的 I/O 存储器有效地址(32 位),在随后的 2 CH(D+3, D+2)中作为栈指针输出栈 区域开端+4CH(D+4),即数据存储区域的开端 I/O 存 储器有效地址(32 位)。 同时,数据存储区域(D+4~D+(W-1))全部以 0 进行 清空。 3-371 表格数据处理指令 栈区域设定 SSET(630) 状态标志的动作 参考 名称 标记符 内容 3 出错标志 ER ・W 的数据不在 0005~FFFF Hex 的范围内时为 各 ON 指 ・除此之外为 OFF 令 ・本指令是确保带有指针的栈区域所需的指令。通过本指 令确保栈区域后 1)通过 PUSH(栈数据存储)指令,在确保的栈区域中 逐个 CH(通道)存储数据。 说 明 注: ・为了使区域 CH 数(W)中包含上述栈管理信息(栈区域 最终存储器地址+栈指针),需要指定 5 以上的值。 ・W 的内容不在 0005~FFFF Hex 的范围时,会发生错误, ER 标志为 ON。 2)之后,希望从先入的数据中读取时,执行 FIFO(先 入先出)指令。希望从后入的数据中读取时,执行 LIFO(后入先出)指令。 通过 PUSH、FIFO、LIFO 指令的执行,栈管理信息 内的栈指针值自动被更新。通常无需在用户程序中记 住栈管理信息。除了上述指令以外,参见栈的内容时, 请在变址寄存器(IR)中设定栈指针的值,进行间接 参见。 相关指令: PUSH(栈数据存储)指令:在指定的栈区域中存储数据。 FIFO(先入先出)指令: 从指定的栈区域中读取最初存储的数据。 LIFO 指令(后入先出)指令: 从指定的栈区域中读取最后存储的数据。 表 格 动作说明 数 据 (例) 处 理 指 令 3-372 表格数据处理指令 3-164 栈数据存储 PUSH(632) 概要 3-164 栈数据存储 PUSH(632) 在指定的栈区域中存储数据。 符号 操作数说明 D~D+3:栈管理信息(固定为 4 CH) D+4~:数据存储区域 执行条件/每次刷新指定 执行条件 ON 时每周期执行 PUSH 上升沿时 1 周期执行 @PUSH 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) D S 0000~6143 W000~511 H000~511 A448~959 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 - #0000~FFFF ― (BIN 数据) DR0~15 表 格 ― 数 ,IR0~15 据 -2048~+2047,IR0~15 处 DR0~15,IR0~15 理 ,IR0~15+(++) 指 ,-(--)IR0~15 令 状态标志的动作 名称 出错标志 标记符 ER 内容 ・栈指针(D+3, D+2)所示的地址超过栈区域 的最终 CH 时为 ON ・除此之外为 OFF 功能说明 在 D 所指定的栈区域的栈指针(D+3, D+2)所指示的地 址中输出 S 所指定的数据(1 CH)中,在栈指针的内容 中+1。 3-373 表格数据处理指令 栈数据存储 PUSH(632) 注: 参考 3 各 指 令 ・指令执行时,栈指针的值比栈存储区域最终 CH 的 I/O 存 储器有效地址(D+1, D+0)还大时(栈溢出时)将发生 错误。 ・栈区域必须通过 SSET(栈区域设定)指令事先加以设定。 ・栈指针在通过本指令存储数据后,指定最终数据的下一 个地址。 ・通过本指令存储数据后,可以使用 FIFO(先入先出)指 令或者 LIFO(后入先出)指令。 说 明 动作说明 (例) 表 格 数 据 处 理 指 令 3-374 表格数据处理指令 3-165 先入后出 LIFO(634) 概要 3-165 后入先出 LIFO(634) 从指定的栈区域中读取最后存储的数据。 符号 操作数说明 S~S+3:栈管理信息(固定为 4 CH) S+4~:数据存储区域 执行条件/每次刷新指定 执行条件 ON 时每周期执行 LIFO 上升沿时 1 周期执行 @LIFO 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 数据内容 区域 S D CIO(输入输出继电器等) 0000~6143 内部辅助继电器 W000~511 保持继电器 H000~511 特殊辅助继电器 A448~959 时间 T0000~4095 计数器 C0000~4095 数据内存(DM) D00000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 ― 数据寄存器 变址寄存器(直接) 变址寄存器(间接) ― DR0~15 表 ― 格 ,IR0~15 数 -2048~+2047,IR0~15 据 DR0~15,IR0~15 处 ,IR0~15+(++) 理 ,-(--)IR0~15 指 令 状态标志的动作 名称 出错标志 标记符 ER 内容 ・栈指针(S+3, S+2)的内容在数据存储区域 开端的 I/O 存储器有效地址以下时为 ON ・除此之外为 OFF 功能说明 对 S 所指定的栈区域的栈指针(S+3, S+2)数据-1,从 该地址中读取数据后输出到 D。读取位置的内容保持不 变。 I/O 存储器 I/O 存储器 有效地址 有效地址 最后输入 的数据 指针 指针 指针-1 A 保持不变 3-375 表格数据处理指令 后入先出 LIFO(634) 注: 参考 ・栈区域必须通过 SSET(栈区域设定)指令事先加以指定。 ・本指令与 PUSH(栈数据存储)指令组合使用。通过 3 ・指令执行时,栈指针已经在数据存储区域开端(S+4)的 PUSH 指令存储数据后,如果使用本指令,可以进行 各 I/O 存储器有效地址以下时(栈下溢时),发生错误,ER 后入先出处理。 指 标志为 ON。 令 说 明 ・通过 PUSH 指令存储数据后,栈指针指定最终数据的 下一个地址。 本指令对栈指针的内容-1,读取该地址的数据(最终 数据)。 动作说明 (例) 表 格 数 据 处 理 指 令 3-376 表格数据处理指令 3-166 先入先出 FIFO(633) 概要 3-166 先入先出 FIFO(633) 从指定的栈区域中读取最初存储的数据。 符号 操作数说明 S~S+3:栈管理信息(固定为 4 CH) S+4~:数据存储区域 执行条件/每次刷新指定 执行条件 ON 时每周期执行 FIFO 上升沿时 1 周期执行 @FIFO 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 状态标志的动作 S D 0000~6143 W000~511 H000~511 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― ― DR0~15 表 ― 格 ,IR0~15 数 -2048~+2047,IR0~15 据 DR0~15,IR0~15 处 ,IR0~15+(++) 理 ,-(--)IR0~15 指 令 名称 出错标志 标记符 ER 内容 ・栈指针(S+3, S+2)的内容在数据存储区域 开端 I/O 存储器有效地址以下时为 ON ・除此之外为 OFF I/O 存储器 有效地址 最初输入 的数据 I/O 存储器 有效地址 功能说明 指针 从 S 所指定的栈区域的数据存储区域开端(S+4)中读 取数据,输出到 D。此后对栈指针(S+3, S+2)的内容 指针 -1,将数据存储区域开端+1(S+5)~栈指针所示的位 置的数据向低位 CH 侧移位 1 CH(通道)。此时,消除 数据存储区域开端(S+4)原来的数据。并且,栈指针 位置的数据在移位后保持不变。 3-377 表格数据处理指令 先入先出 FIFO(633) 注: 参考 3 ・栈区域必须通过 SSET(栈区域设定)指令事先加以设定。 ・指令执行时,栈指针已经在数据存储区域开端(S+4)的 ・本指令与 PUSH(栈数据存储)指令组合使用。通过 PUSH 指令存储数据后,如果使用本指令,可以进行先入先出 各 I/O 存储器有效地址以下时(栈下溢时),发生错误。 的处理。 指 令 ・本指令读取栈区域的开端数据后,消除读取的数据,向 说 前对齐。 明 动作说明 (例) 0.00 为 ON 时,读取 D0 开端的栈区域的开端位置(栈指针 I/O 存储器有效存储位置 +1CH)的 1CH(D4),存储到 D300。 栈区域最终 I/O 存储器有效地址 栈指针表示的 I/O 存储器有效地址 栈 最终 指针 表 CH 格 数 据 处 理 指 令 最终 CH 栈 指针 3-378 表格数据处理指令 3-167 表格区域宣言 DIM(631) 概要 3-167 表格区域宣言 DIM(631) 登录指定编号的表格区域。 符号 操作数说明 N:0~15 S1:0001~FFFF Hex 或者 10 进制&1~65535 S2:0001~FFFF Hex 或者 10 进制&1~65535 注:根据 S1 和 S2 的设定,可以对 1 个表格区域 D~D+(S1 记录长×S2 记录数)-1 进行跨区域的指定。此时,请在 确认超过区域境界是否有问题的基础上进行使用。 功能说明 将从 D 所指定的表格区域低位 CH 编号起记录长(S1) ×记录数(S2)部分的区域作为 N 所指定的编号的表格 区域进行登录。表格区域的数据不变。 参考 本指令与简化表格数据的地址计算的 SETR(记录位置 设定)指令、GETR(记录位置读取)指令组合使用。 通过本指令将数据分割到记录中后,通过 SETR(记录 位置设定)指令将希望知道的记录编号的开端地址存储 到变址寄存器。根据可以将其作为指针,将变址寄存器 作为操作数进行间接指定(通常的)指令,读写必要地 址的数据,进行检索、比较等各种处理。 由此,例如将温度、压力等设定值作为 1 个记录,将每 个品种的记录以表格进行存储,在某种条件下,即可较 简便地进行某一品种(记录编号)的设定温度读取等各 种处理。 相关指令 ・SETR(记录位置设定)指令:将指定记录编号的开端 地址的 I/O 存储器有效地址设定在变址寄存器(IR) 3 中。 各 ・GETR(记录位置读取)指令:输出包含了指定变址 寄存器(IR)值(I/O 存储器有效地址)的记录编号。 指 令 说 执行条件/每次刷新指定 明 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 DIM @DIM 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 区域 N S1 S2 D CIO(输入输出继电器 ― 等) 0000~6143 内部辅助继电器 ― W000~511 保持继电器 ― H000~511 表 特殊辅助继电器 时间 计数器 ― A000~959 A448~959 格 ― T0000~4095 数 据 ― C0000~4095 处 数据内存(DM) ― D00000~32767 理 DM 间接(BIN) ― @D00000~32767 指 DM 间接(BCD) ― *D00000~32767 令 常数 0~15 #0001~FFFF ― (BIN 数据) 或者&1~65535 数据寄存器 ― DR0~15 ― 变址寄存器(直接) ― ― 变址寄存器(间接) ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER 内容 ・S1,S2 中的任一数据为 0000 Hex 时为 ON ・除此之外为 OFF 3-379 表格数据处理指令 表格区域宣言 DIM(631) 注:登录的表格记录通过记录编号 (0~(记录数-1))进行参见。 3 各 指 令 动作说明 说 (例) 明 表 格 数 据 处 理 指 令 3-380 表格数据处理指令 3-168 记录位置设定 SETR(635) 概要 执行条件/每次刷新指定 3-168 记录位置设定 SETR(635) 将指定记录的位置(记录开端的 I/O 存储器有效地址) 存储到指定变址寄存器。 执行条件 ON 时每周期执行 SETR 上升沿时 1 周期执行 @SETR 3 符号 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 SETR 使用限制 说 N N:表格编号 区域 块程序区 工程步进 子程序区域 中断任务 明 S1 S1:记录编号 D D:输出目的地变址寄存器 域 程序区域 程序区域 使用 可 可 可 可 数据内容 操作数说明 区域 N S1 D N:0~15 S1:0000~FFFE Hex 或者 10 进制&0~65534 D:IR0~15 CIO(输入输出继电器等) - 0000~6143 - 内部辅助继电器 - W000~511 - 保持继电器 - H000~511 - 特殊辅助继电器 - A000~959 - 功能说明 将 N 所指定的编号的表格区域指定记录(S1)开端的 I/O 存储器有效地址输出到 D 所指定的变址寄存器。 时间 计数器 数据内存(DM) DM 间接(BIN) - T0000~4095 - - C0000~4095 - - D00000~32767 - - @D00000~32767 - 表格编号:N I/O 存储器 有效地址 S1 所指定的记录编号的记录的开 端通道的 I/O 存储器有效地址 DM 间接(BCD) - *D00000~32767 - 常数 0~15 #0000~FFFE - 数据寄存器 (BIN 数据) 或者&0~65534 - DR0~15 - 表 格 数 变址寄存器(直接) - IR0~15 据 变址寄存器(间接) - ,IR0~15 - 处 -2048~ 理 +2047,IR0~15 指 DR0~15,IR0~15 令 ,IR0~15+(++) 注: , - (--)IR0~15 ・表格区域必须通过表格区域宣言(DIM)指令实现登录。 ・记录编号将开端的记录指定为 0。 ・指定了超过登录的记录数的记录编号时,发生错误,ER 标志为 ON。 ・N 所指定的表格区域未根据 DIM 指令进行登录时,发生 错误,ER 标志为 ON。 状态标志的动作 名称 出错标志 标记符 ER 内容 ・指定表格区域在未登录时为 ON ・指定记录编号超过登录的记录数时为 ON ・除此之外为 OFF 3-381 表格数据处理指令 3-169 记录位置读取 GETR(636) 概要 执行条件/每次刷新指定 3-169 记录位置读取 GETR(636) 输出包含指定变址寄存器值(I/O 存储器有效地址)在内 3 的记录的记录编号。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 GETR @GETR 无 无 说 GETR 明 N N:表格编号 使用限制 区域 块程序区 工程步进 子程序区域 中断任务 S1 S1:变址寄存器 D D:记录值输出 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 数据内容 操作数说明 区域 N S1 D N:0~15 S1:IR0~15 CIO(输入输出继电器 ― 等) 内部辅助继电器 ― 0000~6143 W000~511 功能说明 保持继电器 ― 特殊辅助继电器 ― H000~511 A448~959 在表格编号 N 中,将包含 S1 所指定的变址寄存器中存 时间 ― T0000~4095 储的值(I/O 存储器有效地址)在内的记录编号输出到 D。 计数器 ― C0000~4095 存储在变址寄存器中的 I/O 存储器有效地址可以不位于 相应记录的开端。 数据内存(DM) DM 间接(BIN) DM 间接(BCD) ― D00000~32767 ― @D00000~32767 ― *D00000~32767 表格编号:N 的内容 I/O 存储器 常数 0~15 ― - 表 格 数 据 有效地址 将包含 S1 所指定的变 数据寄存器 变址寄存器(直接) 变址寄存器(间接) ― ― IR0~15 ― DR0~15 ― ,IR0~15 处 址 寄 存 器 IR 的 内 容 -2048~+2047,IR0~15 理 (I/O 存储器有效地址 DR0~15,IR0~15 指 m)的记录编号 n 输出 ,IR0~15+(++) 令 到D ,-(--)IR0~15 注: ・表格区域必须通过表格区域宣言(DIM)指令实现登录。 ・N 所指定的表格区域没有根据 DIM 指令进行登录时,或 者变址寄存器所示的地址不在指定表格区域内时,发生 错误,ER 标志为 ON。 状态标志的动作 名称 出错标志 标记符 ER 内容 ・ 变址寄存器所示的地址不是指定表格区域时 为 ON ・指定表格区域在未登录时为 ON ・除此之外为 OFF 3-382 动作说明 (例) 表格数据处理指令 记录位置读取 GETR(636) 3 各 指 令 说 明 表 格 数 据 处 理 指 令 3-383 表格数据处理指令 3-13790 数据检索 SRCH(181) 概要 3-170 数据检索 SRCH(181) 在已指定范围的表格中检索 1 CH 的数据。 3 各 符号 指 令 SRCH 说 明 W W:表格长指定数据 S1 S1:数据低位 CH 编号 S2 S2:检索数据 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 SRCH @SRCH 无 无 中断任务 程序区域 可 操作数说明 表格长:0001~FFFFHex 一致个数数据 寄存器输出指定 一致个数数据 表 格 0:无输出 1:有输出 寄存器输出指定 0000Hex:无输出 8000Hex:有输出 数 据 处 理 指 令 数据存储区域 数据内容 区域 CIO ( 输 入 输 出 继 电 器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) W 0000~6142 S1 S2 0000~6143 W000~510 H000~510 A000~958 T0000~4094 C0000~4094 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~ D00000~32767 32766 @D00000~32767 *D00000~32767 参照左边 ― #0000~FFFF (BIN 数据) ― DR0~15 ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 S2:0000~FFFF Hex 注:W~W+1、以及 S1~S1+(W-1)必须为同一区域种 类。 功能说明 从 S1 所指定的表格低位 CH 编号中,对于表格长(W) 的表格数据,以 CH(通道)为单位检索指定数据(S2), 存在一致的数据时,将存在数据的 CH(有多个时为低 位 CH)的 I/O 存储器有效地址输出到变址寄存器 IR00。 同时将=标志转换为 ON。 一致个数数据寄存器输出指定(W+1 的位 15)被指定为 有输出(1)时,将一致个数以 BIN 值(0000~FFFF Hex) 输出到数据寄存器 DR00。指定为无输出(0)时 DR00 无变化。 3-384 表格数据处理指令 数据检索 SRCH(181) 状态标志的动作 名称 出错标志 标记符 ER =标志 = 内容 ・W 的表格长数据(位 00~15)不在 0001~ FFFF Hex 的范围内时为 ON ・在背景处理指定时,与 PLC 系统设定的「背 景处理中使用的通信端口 No.」所指定的通 信端口 No.对应的网络通信指令可以执行标 志 OFF 时为 ON (仅 CP1H) ・除此之外为 OFF ・检索的结果,与 S2 的数据相同的数据位于 表格内时为 ON ・除此之外为 OFF 注: ・此处这里所说的「表格区域」是指通过本指令设定的区 域。与表格区域宣言(DIM)指令所设定的表格。 3 ・关于是否存在一致的数据,请在本指令之后读取=标志, 各 进行判断。 指 ・不存在一致的数据时,IR00 和 DR00 的值保持不变。 令 说 ・表格长数据 W 不在 0001~FFFF Hex 的范围内时,发生 明 错误,ER 标志为 ON。 参考 本指令是 1 记录对于 1 CH 的表格数据进行检索的指令。 1 记录对于多个 CH 的表格数据进行检索时,可以组合 使用 DIM、SETR、GETR 指令和 FOR~NEXT、BREAK 指令以及通过变址寄存器(IR)进行的间接参见而实现。 动作说明 (例) 0.0 为 ON 时,从 D100 开端在 10CH 的数据中,检索与 D200 的内容相同的内容, 表 在一致的内容中,将最小(低位的)I/O 存储器有效地址存储到变址寄存器 IR00 格 中。检索的结果,一致的个数存储到数据寄存器 DR00 中。 数 据 处 理 指 I/O 存储器有效地址 令 检索 一致个数 将表格长指常数据作为&10(10 进制)或者 A Hex(16 进制)时,不将一 致的个数输出到数据寄存器 DR00。 3-385 表格数据处理指令 3-171 字节交换 SWAP(637) 概要 执行条件/每次刷新指定 3-171 字节交换 SWAP(637) 对指定了范围的表格数据的高位字节和低位字节进行交 3 换。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 SWAP @SWAP 各 指 符号 令 下降沿时 1 周期执行 无 每次刷新指定 无 说 SWAP 使用限制 明 S S:表格长指定数据 区域 块程序区 工程步进 子程序区域 中断任务 D D:表格低位 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 操作数说明 数据内容 S:0001~FFFF Hex 或者 10 进制&1~65535 区域 S D CIO(输入输出继电器等) 0000~6143 内部辅助继电器 W000~511 保持继电器 H000~511 特殊辅助继电器 A000~959 A448~959 时间 T0000~4095 计数器 C0000~4095 数据内存(DM) D00000~32767 DM 间接(BIN) @D00000~32767 功能说明 DM 间接(BCD) 常数 *D00000~32767 #0001~FFFF - 表 对从 D 所指定的表格数据开端 CH 起指定表格长(S) 格 的表格数据,分别交换各个数据(16 位)的高位 8 位和 数 据 低位 8 位,将结果输出到 D。 数据寄存器 处 变址寄存器(直接) 理 指 变址寄存器(间接) 令 D (BIN 数据) 或 10 进制&1~65535 DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 S ,IR0~15+(++) ,-(--)IR0~15 注: ・此处这里所说的「表格区域」是指通过本指令设定的区 域。与表格区域宣言(DIM)指令所设定的表格。 ・S 的数据为 0000 Hex 时,发生错误,ER 标志为 ON。 参考 用于将字符串(ASCII 代码)的存储顺序反转等时。 状态标志的动作 名称 出错标志 标记符 ER 内容 ・S 的数据为 0000 Hex 时为 ON ・在背景处理指定时,与 PC 系统设定的「背 景处理中使用的通信端口 No.」所指定的通 信端口 No.对应的网络通信指令可以执行标 志 OFF 时为 ON (仅 CP1H) ・除此之外为 OFF 3-386 动作说明 (例) 表格数据处理指令 字节交换 SWAP(637) 0.00 为 ON 时,W0CH~W9CH 的 10CH 各个数据的高位字节与低位字节替换。 3 各 指 令 说 明 表 格 数 据 处 理 指 令 3-387 表格数据处理指令 3-14712 最大值检索 MAX(182) 概要 3-172 最大值检索 MAX(182) 检索指定了范围的表格内的最大值。 3 各 符号 指 令 说 明 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 MAX @MAX 无 无 中断任务 程序区域 可 操作数说明 数据内容 区域 C S D CIO(输入输出继电器 0000~6142 等) 0000~6143 内部辅助继电器 W000~510 W000~511 保持继电器 特殊辅助继电器 H000~510 A000~958 H000~511 A000~959 A448~959 时间 T0000~4094 T0000~4095 计数器 C0000~4094 C0000~4095 数据内存(DM) D00000~ D00000~32767 32766 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 表 常数 参照左边 ― 格 数 据 数据寄存器 变址寄存器(直接) ― ― DR0~15 处 理 变址寄存器(间接) ,IR0~15 指 -2048~+2047,IR0~15 令 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 功能说明 从 S 所指定的表格低位 CH 编号起将 C 所指定的表格长 (字数)作为表格数据,检索其中的最大值,输出到 D。 变址寄存器输出指定(C+1)指定为有输出时,将最大 值所在的 CH(存在于多个 CH 时为低位 CH)的 I/O 存 储器有效地址输出到 IR00。 带符号指定(C+1)时,将表格的数据作为带符号 BIN 数据(负数为 2 的补数)处理。 I/O 存储器有效地址 C 的位 00~15 状态标志的动作 名称 出错标志 标记符 ER =标志 = N 标志 N 内容 ・C 的表格长数据(位 00~15)不在 0001~FFFF Hex 的范围内时为 ON ・在背景处理指定时,与 PC 系统设定的「背景 处理中使用的通信端口 No.」所指定的通信端 口 No.对应的网络通信指令可以执行标志 OFF 时为 ON(仅 CP1H) ・除此之外为 OFF ・最大值为 0 时为 ON ・除此之外为 OFF ・最大值的最高位位为 1 时为 ON ・除此之外为 OFF 3-388 表格数据处理指令 最大值检索 MAX(182) 注: 参考 ・此处这里所说的「表格区域」是指通过本指令设定的区 域。与表格区域宣言(DIM)指令所设定的表格。 带符号指定(C+1 的位 15)中指定了带符号(1)时, 将 8000~FFFF Hex 的数值作为负数处理。因此,根据 3 ・表格长(C)勿超出表格数据的范围。 带符号指定的有无,检索结果有所不同。 各 ・表格(C)不在 0001~FFFF Hex 的范围内时,发生错误, ER 标志为 ON。 指 令 说 ・最大值为 0000 Hex 时,=标志为 ON。 明 ・最大值的最高位位为 1 时,N 标志为 ON。 动作说明 (例) 0.00 为 ON 时,从 D200 开端在 10 字(D100 指定)的表格中检索最大值,将该 值存储到 D300。同时,将最大值所在的地址 D202 的 I/O 存储器有效地址存储到 IR00。 10 字 表格长 表 格 数 据 处 理 变址寄存器输出指定 指 1:有输出 令 带符号指定 1:带符号 I/O 存储器 有效地址 10 进制 最大值 3-389 表格数据处理指令 3-173 最小值检索 MIN(183) 概要 3-173 最小值检索 MIN(183) 检索指定表格内的最小值。 3 各 符号 指 令 说 C:控制数据 明 S:表格低位 CH 编号 D:最小值输出目的地 CH 编号 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 MIN @MIN 无 无 中断任务 程序区域 可 操作数说明 数据内容 表 格 数 据 处 理 指 令 功能说明 区域 CIO ( 输 入 输 出 继 电 器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) C 0000~6142 S D 0000~6143 W000~510 H000~510 A000~958 T0000~4094 C0000~4094 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~ D00000~32767 32766 参照左边 @D00000~32767 *D00000~32767 ― ― DR0~15 ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 从 S 所指定的表格低位 CH 编号起将 C 所指定的表格长 (字数)作为表格数据,检索其中的最小值,输出到 D。 变址寄存器输出指定(C+1)时,将最小值所在的 CH(存 在于多个 CH 时为低位 CH)的 I/O 存储器有效地址输出 到 IR00。 带符号指定(C+1)时,将表格的数据作为带符号 BIN 数据(负数为 2 的补数)处理。 状态标志的动作 名称 出错标志 标记符 ER =标志 = N 标志 N 内容 ・C 的表格长数据(位 00~15)不在 0001~ FFFF Hex 的范围内时为 ON ・背景处理指定时,与 PC 系统设定的「背景 处理中使用的通信端口 No.」所指定的通信 端口 No.对应的网络通信指令可以执行标 志 OFF 时为 ON (仅 CP1H) ・除此之外为 OFF ・最小值为 0 时为 ON ・除此之外为 OFF ・最小值的最高位位为 1 时为 ON ・除此之外为 OFF 3-390 表格数据处理指令 最小值检索 MIN(183) 注: 参考 ・此处这里所说的「表格区域」是指通过本指令设定的区 域。与表格区域宣言(DIM)指令所设定的表格。 带符号指定(C+1 的位 15)中指定了带符号(1)时, 将 8000~FFFF Hex 的数值作为负数处理。因此,根据 3 ・表格长(C)勿超出表格数据的范围。 带符号指定的有无,检索结果有所不同。 各 ・表格长(C)不在 0001~FFFF Hex 的范围内时,发生错 误,ER 标志为 ON。 指 令 说 ・最小值为 0000 Hex 时,=标志为 ON。 明 ・最小值的最高位位为 1 时,N 标志为 ON。 动作说明 (例) 0.00 为 ON 时,从 D200 开端在 10 字(D100 指定)的表格中检索最小值,将该 值存储到 D300。同时,将最小值所在的地址 D207 的 I/O 存储器有效地址存储到 IR00。 10 字 表格长 表 格 数 据 处 理 0 固定 指 令 变址寄存器输出指定 1:有输出 带符号指定 1:带符号 10 进制 I/O 存储器 有效地址 最小值 3-391 表格数据处理指令 3-174 总数值计算 SUM(184) 概要 3-174 总数值计算 SUM(184) 计算指定表格内的总数值,将结果以 2 CH 输出。 3 各 符号 指 令 说 明 操作数说明 表 格 数 据 处 理 指 令 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 SUM @SUM 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 区域 CIO(输入输出继电 器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) C 0000~6142 S 0000~6143 D 0000~6142 W000~510 H000~510 A000~958 T0000~4094 C0000~4094 D00000~ W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~ W000~510 H000~510 A448~958 T0000~4094 C0000~4094 D00000~ 32766 参照左边 32767 @D00000~32767 *D00000~32767 - 32766 ― ― 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 功能说明 将从 S 所指定的表格低位 CH 编号起 C 所指定的表格长 作为表格数据,根据 C+1 所指定的计算单位(字或者字 节)以及数据类型(BIN 或者 BCD)运算总数值,将结 果输出到 D+1, D。 (表格长) ※因为表格长根据计 算单位为字/字节 3-392 表格数据处理指令 总数值计算 SUM(184) 状态标志的动作 名称 出错标志 =标志 N 标志 标记符 ER = N 内容 ・C 的表格长数据(位 00~15)不在 0001~FFFF Hex 的范围内时为 ON ・表格内有 BIN 数据时为 ON(数据类型指定为 BCD 时) ・在背景处理指定时,与 PC 系统设定的「背景处 理中使用的通信端口 No.」所指定的通信端口 No.对应的网络通信指令可以执行标志 OFF 时 为 ON(仅 CP1H) ・除此之外为 OFF ・运算的结果、总数值为 0 时为 ON ・除此之外为 OFF ・运算的结果、总数值的最高位位为 1 时为 ON ・除此之外为 OFF ・作为计算单位指定字节时,C+1 的计算开端位置指定(高 位字节或者低位字节)有效。 ・表格长单位(字或者字节)根据计算单位(C+1)。 3 ・作为数据类型指定 BIN 时,C+1 的符号指定(带符号或 各 者无符号)有效。数据类型中指定 BCD 后,包含 BIN 数 指 据时,发生错误,ER 标志为 ON。 令 ・表格长(C)勿超出表格数据的范围。表格长数据 C 不在 0001~FFFF Hex 的范围内时,发生错误,ER 标志为 ON。 说 明 ・运算的结果,总数值为 0 时,=标志为 ON。 ・运算的结果,总数值的最高位位为 1 时,N 标志为 ON。 注: ・此处这里所说的「表格区域」是指通过本指令设定的区 域。与表格区域宣言(DIM)指令所设定的表格。 动作说明 (例) 0.00 为 ON 时,从 D100 的低位字节开端,对于 D300 指定的字节数的数据,作为 无符号 BIN 数据计算 SUM 值,存储到 D201、D200。 表 格 数 据 处 理 指 令 0 固定 符号 0:无符号 计算开端位置 (仅在字节单位时有效) 1:低位字节 数据类型 0:BIN 计算单位 1:字节 表格长 10(字节) 部的 SUM 值计算 3-393 表格数据处理指令 3-175 FCS 值计算 FCS(180) 概要 执行条件/每次刷新指定 3-175 FCS 值计算 FCS(180) 计算指定表格的 FCS(Frame check sequence)值,以 3 ASCII 代码输出。 各 指 符号 令 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 FCS @FCS 无 无 说 使用限制 明 C:控制数据 区域 块程序区 工程步进 子程序区域 中断任务 S:表格低位 CH 编号 D:FCS 值存储开端 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 操作数说明 数据内容 区域 CIO ( 输 入 输 出 继 电 器 等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) C 0000~6142 W000~510 H000~510 A000~958 T0000~4094 C0000~4094 D00000~ S D 0000~6143 W000~511 H000~511 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 32766 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 表 常数 参照左边 格 数 据 数据寄存器 ― 变址寄存器(直接) ― 处 理 变址寄存器(间接) ,IR0~15 指 -2048~+2047,IR0~15 令 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 功能说明 将从 S 所指定的表格低位 CH 编号起 C 所指定的表格长 作为表格数据,以 C+1 所指定的计算单位(字单位或者 字节单位)运算 FCS 值,转换为 ASCII 代码数据, ・在计算单位中指定字节单位时:输出到 D。 ・在计算单位中指定字单位时:输出到 D+1, D。 3-394 表格数据处理指令 FCS 值计算 FCS(180) 状态标志的动作 名称 出错标志 标记符 ER 内容 ・C 的表格长数据(位 00~15)不在 0001~ FFFF Hex 的范围内时为 ON ・背景处理指定时,与 PC 系统设定的「背景 处理中使用的通信端口 No.」所指定的通信 端口 No.对应的网络通信指令可以执行标 志 OFF 时为 ON (仅 CP1H) ・除此之外为 OFF C(表格长) 注: ·此处这里所说的「表格区域」是指通过本指令设定的区 域。与表格区域宣言(DIM)指令所设定的表格。 3 ·作为计算单位指定字节单位时,通过 C+1 指定计算开端 各 位置(高位字节或者低位字节)。 指 ·表格长(C)的单位(字或者字节)依据计算单位(C+1)。 令 说 ·表格长(C)勿超出表格数据的范围。 明 ·表格长(C)不在 0001~FFFF Hex 的范围内时,发生错 误,ER 标志为 ON。 计算 FCS 值 ASCII 转换 动作说明 (例) 0.00 为 ON 时,从 D100 的低位字节开端,对于 D300 指定的字节数的数据,作为 BIN 数据计算 FCS 值,存储到 D200。 表 格 数 据 处 理 0 固定 指 令 0 固定 计算开端位置 (仅在字节单位时有效) 1:低位字节 计算单位 1:字节 表格长 :10(字节) FCS 值转换为 ASCII 代码 部的 FCS 值计算 3-395 表格数据处理指令 3-176 栈数据数输出 SNUM(638) 概要 3-176 栈数据数输出 SNUM(638) 计数栈区域内当前时间点下的栈数据数(CH 数)。 3 各 符号 指 令 说 明 S:栈区域低位 CH 编号 D:输出目的地 CH 编号 参考 本指令在对当前传送带上存在的工件数进行计数等情况 下使用。 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 SNUM @ SNUM 无 无 操作数说明 S~S+3:栈管理信息(固定为 4 CH) 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 栈区域最终 CH 的 I/O 存储器有效地址(低位) 栈区域最终 CH 的 I/O 存储器有效地址(高位) 表 格 数 栈指针的初始值 据 处 理 (S+4CH 的 I/O 存储器 有效地址的低位) 指 令 栈指针的初始值 S+4~:数据存储区域 (S+4CH 的 I/O 存储器 有效地址的高位) 数据存储区域 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 状态标志的动作 S D 0000~6143 W000~511 H000~511 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 功能说明 名称 =标志 标记符 = 内容 ・数据存储区域的数据数(输出到 D 的值) 为 0(无数据)时为 ON ・除此之外为 OFF 从 S 所指定的栈区域的数据存储区域开端(S+4)到当 前栈指针(S+3, S+2)所指向的位置-1,对数据的 CH 数进行计数,将该 CH 数输出到 D。此时,数据存储区 域的数据以及栈指针的位置保持不变。 注: ・栈区域必须通过 SSET(栈区域设定)指令事先加以设定。 3-396 动作说明 (例) 表格数据处理指令 栈数据数输出 SNUM(638) 3 各 指 令 I/O 存储器 说 有效地址 明 栈区域 最终 I/O 存储器有效地 栈指针表示的 I/O 存储器有效地址 数据数(CH 数)计数 =左侧状态中的 CH 表 格 数 据 处 理 指 令 3-397 表格数据处理指令 3-177 栈数据读取 SREAD(639) 概要 功能说明 3-177 栈数据参见 SREAD(639) 从指定的栈区域中读取中途的数据(从当前栈指针所在 读取从 S 所指定的栈区域的栈指针(S+3, S+2)所指向 3 的位置上升到指定个数前的数据)。 的位置中减去 C 所指定的 CH 数(偏移)后的位置的数 各 据,输出到 D。此时,数据存储区域的数据以及栈指针 指 令 说 符号 明 的位置保持不变。 栈区域 I/O 存储器 有效地址 S:栈区域低位 CH 编号 C:参见位置(偏移值) D:输出目的地 CH 编号 指针 A 保持不变 操作数说明 S~S+3:栈管理信息(固定为 4 CH) 偏移参见 最终字 读取 (指针保持不变) 栈区域最终 CH 的 I/O 存储器有效地址(低位) 读取从当前栈指针位置 减去 C 指定的偏移 a 分 后的位置的数据,输出 到D 参考 表 格 栈区域最终 CH 的 I/O 存储器有效地址(高位) 本指令用于在当前传送带上存在的工件中读取某一位置 数 的(从最后投入的工件到指定个数前的)工件的数据等 据 处 情况下。 理 指 执行条件/每次刷新指定 令 栈指针的初始值 (S+4CH 的 I/O 存储器有效地址的低位) 执行条件 ON 时每周期执行 上升沿时 1 周期执行 SREAD @SREAD 下降沿时 1 周期执行 无 每次刷新指定 无 S+4~:数据存储区域 栈指针的初始值 使用限制 (S+4CH 的 I/O 存储器有效地址的高位) 区域 块程序区 域 数据存储区域 使用 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 3-398 表格数据处理指令 栈数据读取 SREAD(639) 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) S C D 0000~6143 W000~511 H000~511 A448~959 A000~959 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 0001~FFFB Hex ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 标记符 内容 出错标志 =标志 ER ・指定读取位置位于栈数据区域外时为 ON 3 ・参见位置为 0 或者超过栈数据的最大区域 (FFFB Hex)时为 ON ・除此之外为 OFF 各 指 = ・D 的数据(输出数据)为 0000 Hex 时为 ON 令 ・除此之外为 OFF 说 明 注: ・栈区域必须通过 SSET(栈区域设定)指令事先加以设定。 ・指令执行时,栈指针已经在数据存储区域开端(S+4)的 I/O 存储器有效地址以下时(栈下溢时),发生错误,ER 标志为 ON。 动作说明 (例) 表 格 数 输入继电器 0.00 为 ON 时,读取 D0 开端的栈区域的当前栈指针所指向的位置(D7) 据 中减去 3CH 分的位置(D4)的内容,存储到 D100。当前栈指针的位置不变化。 处 理 指 令 栈区域 最终 I/O 存储器有效地址 栈指针表示的 I/O 存储器有效地址 栈区域 最终 I/O 存储器有效地址 栈指针表示的 I/O 存储器有效地址 3-399 表格数据处理指令 3-178 栈数据更新 SWRIT(640) 概要 功能说明 3-178 栈数据更新 SWRIT(640) 在指定的栈区域,在中途数据(从当前栈指针所在位置 从 D 所指定的栈区域的栈指针(D+3, D+2)所指的位置 3 上升到指定个数前的数据)的位置上覆盖其他数据。 起减去 C 所指定的 CH 数(偏移)后的位置上覆盖 S 所 各 指定的数据。此时,数据存储区域的数据以及栈指针的 指 令 说 符号 位置保持不变。 明 D:栈区域低位 CH 编号 C:更新位置(偏移值) S:写入数据 操作数说明 D~D+3:栈管理信息(固定为 4 CH) 栈区域最终 CH 的 I/O 存储器有效地址(低位) 参考 本指令用于从当前传送带上存在的工件中,更新(变更) 某一位置的(最后投入的工件到指定个数前的)工件数 据等情况。 表 栈区域最终 CH 的 执行条件/每次刷新指定 格 数 I/O 存储器有效地址(高位) ON 时每周期执行 SWRIT 据 处 理 执行条件 上升沿时 1 周期执行 下降沿时 1 周期执行 @ SWRIT 无 指 令 栈指针的初始值 每次刷新指定 无 (D+4CH 的 I/O 存储器 使用限制 有效地址的低位) 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 栈指针的初始值 使用 可 可 可 可 (D+4CH 的 I/O 存储器有效地址的高位) D+4~:数据存储区域 数据存储区域 3-400 表格数据处理指令 栈数据更新 SWRIT(640) 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) D C S 0000~6143 W000~511 H000~511 A448~959 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― 0001~ 0000~ FFFB Hex FFFF Hex ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 标记符 内容 出错标志 ER ・指定写入位置位于栈数据区域外时为 ON 3 ・更新位置为 0 或者超过栈数据的最大区域 (FFFB Hex)时为 ON ・除此之外为 OFF 各 指 令 注: 说 明 ・栈区域必须通过 SSET(栈区域设定)指令事先加以设定。 ・指令执行时,栈指针已经在数据存储区域开端(S+4)的 I/O 存储器有效地址以下时(栈下溢时),发生错误,ER 标志为 ON。 动作说明 (例) 输入继电器 0.00 为 ON 时,将 D100 的内容存储到 D0 开端的栈区域的当前栈指 表 格 针所指向的位置(D7)中减去 3CH 分后的位置(D4)。栈指针的位置不变化。 数 据 处 理 指 令 栈区域 最终 I/O 存储器有效地址 栈指针表示的 I/O 存储器有效地址 重写 栈区域 最终 I/O 存储器有效地址 栈指针表示的 I/O 存储器有效地址 3-401 表格数据处理指令 3-179 栈数据插入 SINS(641) 概要 3-179 栈数据插入 SINS(641) 在指定的栈区域中,在中途的数据位置(从当前栈指针 3 所在的位置到指定个数前的位置)插入其他数据。 各 指 符号 令 说 明 D:栈区域低位 CH 编号 C:插入位置(偏移值) S:插入数据 操作数说明 D~D+3:栈管理信息(固定为 4 CH) 参考 本指令用于在当前传送带上存在的工件中的某一位置 (从最后投入的工件到指定个数前的位置)插入工件等 情况。 执行条件/每次刷新指定 栈区域最终 CH 的 I/O 存储器有效地址(低位) 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 SINS @ SINS 无 无 使用限制 区域 块程序区 工程步进 子程序区域 中断任务 表 格 栈区域最终 CH 的 I/O 存储器有效地址(高位) 域 程序区域 程序区域 使用 可 可 可 可 数 据 数据内容 处 理 指 栈指针的初始值 区域 (D+4CH 的 I/O 存储器有效地址的低位) CIO(输入输出继电器等) D C S 0000~6143 令 内部辅助继电器 W000~511 D+4~:数据存储区域 保持继电器 特殊辅助继电器 栈指针的初始值 时间 (D+4CH 的 I/O 存储器有效地址的高位) 计数器 数据内存(DM) 数据存储区域 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 H000~511 A448~959 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― 0000~ 0000~ FFFA Hex FFFF Hex ― DR0~15 功能说明 在从 D 所指定的栈区域中栈指针(D+3, D+2)所指向的 位置中减去 C 所指定的 CH 数(偏移)后的位置,插入 S 所指定的数据 1CH。此时,从插入的位置到栈指针-1 为止的数据全部+1 CH(向下)移位(栈指针的位置的 内容被覆盖)。同时在栈指针(D+3, D+2)的数据上+1。 变址寄存器(直接) 变址寄存器(间接) ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-402 表格数据处理指令 栈数据插入 SINS(641) 状态标志的动作 名称 出错标志 标记符 ER 内容 ・栈指针(D+3, D+2)所示的地址超过栈区域 的最终 CH 时为 ON ・ 插入位置超过栈数据的最大区域-1(FFFA Hex)时为 ON ・除此之外为 OFF 注: ・为了插入 1 CH,不能在数据存储区域的最后 1 CH 存储 数据。如果存储了数据,会发生错误,无法插入。 3 ・指令执行时,栈指针的值已经比栈存储区域最终 CH 的 各 I/O 存储器有效地址(D+1, D)还大时(栈上溢时),会 指 发生错误,无法插入。 令 ・栈区域必须通过 SSET(栈区域设定)指令事先加以设定。 说 明 动作说明 (例) 栈区域 最终 I/O 存储器有效地址 表 栈指针表示的 格 I/O 存储器有效地址 数 据 处 理 指 令 栈区域 最终 I/O 存储器有效地址 栈指针表示的 I/O 存储器有效地址 3-403 表格数据处理指令 3-180 栈数据删除 SDEL(642) 概要 3-180 栈数据删除 SDEL(642) 在指定的栈区域中,删除中途的数据位置(从当前栈指 3 针所在的位置上升到指定个数前的位置)的数据。 栈区域 I/O 存储器 有效地址 栈区域 I/O 存储器 有效地址 指针-1 各 指 指针 令 说 符号 明 偏移参见 最终字 指针-1 最终字 删除(指针-1) S:栈区域低位 CH 编号 C:删除位置(偏移值 α) D:操作量输出 CH 编号 将从当前栈指针位置 减去 C 指定的偏移 a 分后的位置的数据, 从栈区域中删除,该 数据输出到 D 操作数说明 S~S+3:栈管理信息(固定为 4 CH) 参考 本指令用于从当前传送带上存在的工件中排出某一位置 (最后投入的工件到指定个数前的位置)的工件等情况 下。 栈区域最终 CH 的 I/O 存储器有效地址(低位) 执行条件/每次刷新指定 ON 时每周期执行 SDEL 执行条件 上升沿时 1 周期执行 @ SDEL 下降沿时 1 周期执行 无 表 栈区域最终 CH 的 每次刷新指定 无 格 数 I/O 存储器有效地址(高位) 使用限制 据 区域 块程序区 工程步进 子程序区域 中断任务程 处 域 程序区域 序区域 理 使用 可 可 可 可 指 栈指针的初始值 令 (S+4CH 的 I/O 存储器有效地址的低位) 数据内容 区域 S C D CIO(输入输出继电器等) 0000~6143 S+4~:数据存储区域 栈指针的初始值 内部辅助继电器 (S+4CH 的 I/O 存储器有效地址的高位) 保持继电器 特殊辅助继电器 时间 A448~959 W000~511 H000~511 A000~959 T0000~4095 A448~959 数据存储区域 计数器 数据内存(DM) C0000~4095 D00000~32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 功能说明 将从 S 所指定的栈区域的栈指针(S+3, S+2)所指向的 位置减去 C 所指定的 CH 数(偏移)后的位置的数据 1 CH 从栈区域中删除,读取该数据,输出到 D。此时,从删 除的位置+1 CH 到栈指针-1 为止的数据全部(向上) 移位-1CH,同时从栈指针(S+3, S+2)的数据中-1。 此时,栈指针-1 的数据保持不变。 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) ― 0001~ ― FFFB Hex ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-404 表格数据处理指令 栈数据删除 SDEL(642) 状态标志的动作 名称 出错标志 标记符 ER =标志 = 内容 ・栈指针(S+3, S+2)所指向的地址在数据存 储区域开端(S+4)的 I/O 存储器有效地址 以下时为 ON ・删除位置为 0 或者、超过栈数据的最大区 域(FFFB Hex)时为 ON ・除此之外为 OFF ・输出(存储)数据为 0 Hex 时为 ON ・除此之外为 OFF 注: 3 指令执行时,栈指针的值已经在数据存储区域开端(S+4) 的 I/O 存储器有效地址以下时(栈下溢时),会发生错误, 各 无法插入。 指 ・栈区域必须通过 SSET(栈区域设定)指令事先加以设定。 令 说 明 动作说明 (例) 输入继电器 0.00 为 ON 时,在 D0 开端的栈区域的当前栈指针所指向的位置(D07)中减去 3CH 分后的位置(D4)删除 D100 的内容,将该数据存储到 D100。此时,从删除位置+1(D5)开端 到栈指针-1(D6)的数据,全部移位到-1 CH 上。同时,栈指针(D7)-1,指向 D6。 栈区域 最终 I/O 存储器有效地址 栈指针表示的 I/O 存储器有效地址 表 格 数 据 处 理 指 令 栈区域 最终 I/O 存储器有效地址 栈指针表示的 I/O 存储器有效地址 3-405 表格数据处理指令 3 各 指 令 说 明 表 格 数 据 处 理 指 令 3-406 数据控制指令 项目号 3-181 3-182 3-183 3-184 3-185 3-186 3-187 3-188 3-189 3-190 指令语句 PID 计算 带自整定 PID 运算 上下限限位控制 死区控制 静区控制 时间比例输出 缩放 缩放 2 缩放 3 数据平均化 助记符 PID PIDAT LMT BAND ZONE TPO SCL SCL2 SCL3 AVG FUN 编号 190 191 680 681 682 685 194 486 487 195 页码 3-408 3-418 3-425 3-427 3-429 3-431 3-438 3-441 3-444 3-446 3-407 数据控制指令 3-181 PID 运算 PID(190) 概要 3-181 PID 运算 PID(190) 根据指定的参数进行 PID 运算。 3 各 符号 指 令 说 S:测定值输入 CH 编号 明 C:PID 参数保存低位 CH 编号 D:操作量输出 CH 编号 输入条件为 OFF 时,PID 运算停止。D 的操作量保持此 时的值。必须变更时,请通过梯形图程序或手动操作进 行变更。 参数 C~C+8 测定值 S PID 运算 操作量 D 操作数说明 数 据 控 制 指 令 ・根据输入范围(C+6 的位 8~11)指定,指定 S 的测 定值输入在 16 位内的有效位数。例如,将输入范围指 定为 12 位(4 Hex),0000~0FFF Hex 范围的值作为 测定值而有效。输入了比输入范围中指定的位还大的 值时,用输入范围的最大值进行补正。此时 ER 标志 不为 ON。 ・设定值的范围也取决于输入范围。 ・测定值以及设定值是 0000 Hex~输入范围最大值的无 符号 BIN 值。 ・根据输出范围(C+6 的位 0~3)指定,指定操作量在 16 位内的有效位数。例如,输出范围指定为 12 位(4 Hex)时,0000~0FFF Hex 范围的值作为操作量被输 出。 ・仅有比例动作时,可以指定测定值=设定值时的操作 量。 0:输出 0% 1:输出 50% ・可以指定比例动作的正动作、逆动作。 ・可以指定操作量的上下限。 ・可以 10ms 为单位指定采样周期(0.01~99.99s)。但 是,实际的 PID 运算通过采样周期和 PID 指令执行时 (每个周期时间)的组合来决定是否执行。 ・执行 PID 运算过程中,变更了比例带(P)、积分常 数(Tik)、微分常数(Tdk)时,可以指定是否将该 变更在每个采样周期中反映在 PID 运算中。取决于 PID 常数反映定时指定(C+5 的位 1)。 注:PID 运算执行中能够反映变更的只有 P、Tik、Tdk 的 各参数。 功能说明 根据 C 所指定的参数(设定值、PID 常数等)进行将 S 作为测定值输入的 PID 运算(目标值滤波型 2 自由度 PID 运算),将 D 输出到操作量。 输入条件上升(OFF→ON)时,读取参数,如果在正常 范围外,将 ER 标志置于 ON。 请注意 PID 参数(C~C+38)之中,只有 C 的设定值(SV) 可以在 ON 的状态下变更输入条件。已变更其他值时, 必须将输入条件由 OFF 上升为 ON。 如果在正常范围内,将此时的操作量作为初期值,进行 PID 处理。 输入条件为 ON 时,将每个指定采样周期的测定值作为 输入,进行运算。 3-408 数据控制指令 PID 运算 PID(190) 执行条件/每次刷新指定 ON 时每周期执行 PID 执行条件 上升沿时 1 周期执行 无 下降沿时 1 周期执行 无 每次刷新指定 无 使用限制 区域 使用 块程序区 域 不可 工程步进 程序区域 可 子程序区域 可 中断任务程 序区域 不可 数据内容 区域 CIO(输入输出继 电器等) S 0000~6143 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~ DM 间接(BIN) DM 间接(BCD) 数据寄存器 常数 32767 DR0~15 变址寄存器(直接) C 0000~6105 W000~473 H000~473 A000~921 T0000~4057 C0000~4057 D00000~ 32729 @D00000~32767 *D00000~32767 ― ― ― D 0000~6143 W000~511 H000~511 A448~959 T0000~4095 C0000~4095 D00000~ 32767 DR0~15 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 状态标志的动作 名称 标记符 内容 出错标志 ER ・C 的数据在范围之外时为 ON 3 >标志 ・实际的采样周期超过设定的采样周期的 2 各 倍时为 ON 指 ・除此之外为 OFF 令 > ・经过了 PID 运算的操作量高于操作输出限 位上限值时为 ON ・除此之外为 OFF 说 明 <标志 < ・经过了 PID 运算的操作量低于操作输出限 位下限值时为 ON ・除此之外为 OFF 进位标志 CY ・执行了 PID 运算时为 ON ・除此之外为 OFF 注: ·PID 指令将输入条件的上升视为 STOP→RUN 执行。输 入条件上升时,对 C+9~C+38 进行初始化(清空)后, 下一周期以后输入条件如果保持 ON,执行 PID 运算。 因此,将常时 ON 标志(ON)作为 PID 指令的输入条件 时,请另行设置在运转开始时对 C+9~C+38 进行初始化 (清空)处理。 ·C 的数据(设定值以外)位于范围外时,会发生错误, ER 标志为 ON。 ·实际的采样周期超过设定的采样周期的 2 倍时,会发生 数 错误,ER 标志为 ON。但此时进行 PID 运算。 据 控 ·已执行 PID 运算时,CY 标志为 ON。 制 指 ·已经过 PID 运算的操作量高于操作量限位上限值时,> 令 标志为 ON。此时,结果以操作量限位上限值被输出。 ·已经过 PID 运算的操作量低于操作量限位下限值时,< 标志为 ON。此时,结果以操作量限位下限值被输出。 3-409 数据控制指令 PID 运算 PID(190) 动作说明 (例) 3 各 指 令 说 明 数 据 控 制 指 令 3-410 数据控制指令 PID 运算 PID(190) 参考 PID 运算指令的测定值以及操作输出量的范围为控制数据的 C+6 的位 8~11 以及 C+6 的位 0~3,以 16 位内的有效 位数加以指定(参见下表)。 3 C+6 的位 8~11 C+6 的位 0~3 有效位数 数据范围 各 指 0 8 0000~00FF Hex 1 9 0000~01FF Hex 2 10 0000~03FF Hex 令 说 明 3 11 0000~07FF Hex 4 12 0000~0FFF Hex 5 13 0000~1FFF Hex 6 14 0000~3FFF Hex 7 15 0000~7FFF Hex 8 16 0000~FFFF Hex 如果使用的模拟量输入单元以及模拟量输出单元的数据范围不是由该有效位数可以指定的数据范围,如下所示,在 PID 运算指令之前和之后,请使用 APR(数值转换)指令进行数值转换,使数据范围一致。 例:使用 CompoBus/D 从站的模拟量输入单元 DRT1-AD04、模拟量输出单元 DRT1-DA02 时 DRT1-AD04、DRT1-DA02 的数据范围均为 0000~1770 Hex,所以不可以通过有效位数来指定该数据范围。因此, 如下所示,使用 APR(数值转换)指令,例如,将模拟输入单元中的 0000~1770 Hex 通过 APR 指令转换为 0000~ FFFF Hex,输入 PID 运算指令的测定值。此外,将 PID 运算指令的操作输出量通过 APR 指令转换为 0000~1770 Hex, 输出到模拟输出单元。 数 据 控 制 指 令 3-411 数据控制指令 PID 运算 PID(190) 性能规格 项目 3 PID 运算方式 各 PID 控制回路数 指 取样控制 令 说 明 PID 常数 比例带 积分常数 微分常数 设定值 测定值 操作值 规格 - 目标值滤波型 2 自由度 PID 方式(正向动作/反向动作) - 无限制(1 指令 1 回路) τ 0.01~99.99s P 0.1~999.9% Tik 1~8191、9999(采样周期的倍数为 9999 时无积分动作) Tdk 0~8191(采样周期的倍数为 0 时无微分动作) SV 0~65535(到输入范围最大值为止有效) PV 0~65535(到输入范围最大值为止有效) MV 0~65535(到输出范围最大值为止有效) 运算方式 PID 控制中的运算以目标值滤波型 2 自由度 PID 控制方式进行。 目标值滤波型 2 自由度 PID 框图 目标值滤波 比例+积分要素 设定值 (目标值) 操作量 MV Kp:比例常数 Ti:积分时间 Td:微分时间 τ:采样周期 α:2-PID 参数 数 先行微分型要素 λ:不完全微分系数 据 控 测定值 制 指 令 ·当使用简单的 PID 控制防止超调时,对于干扰的稳定性将会变得迟缓(①),相反如果加快对干扰的稳定,将发 生超调,对于目标值的响应将变慢(②)。 在 2 自由度 PID 控制中,没有超调,对于目标值的响应将变快,也可以更快地实现对于干扰的稳定(③)。 简单 PID 控制 目标值应答如果变慢, 干扰应答将变慢 前馈 PID 控制 2 自由度 PID 控制 超调 干扰响应如果变慢, 目标值响应将变慢 目标响应 干扰响应 3-412 数据控制指令 PID 运算 PID(190) PID 参数的设定内容 控制数据 项目 内容 设定范围 输入条件为 ON 时能否变 3 更 各 C 设定值(SV) 控制对象的目标值。 输入范围的位数的 BIN 数据 可以 指 (0~指定输入范围最大值) 令 C+1 比例带(P) 比例控制范围/控制范围整体所 0001~270F Hex(1~9999) 表示的 P 控制用参数。 (0.1%单位、0.1~999.9%) C+2 积分常数(Tik) 表示积分动作的效果大小的常数。 0001~1FFF Hex(1~8191) 输入条件为 ON 时 C+5 的 位 1 为 1 时可 说 明 将该值变大后,积分效果变弱。 270F Hex(9999)(无积分动作的设定) 以 积分・微分常数单位指定为 “1”时:1~8191 倍 “9”时:0.1~819.1s(注 1) C+3 微分常数(Tdk) 表示微分动作大小的常数。 0001~1FFF Hex(1~8191) 将该值变大后,微分效果变弱。 0000 Hex(0000)(无微分动作的设定) 积分・微分常数单位指定为 “1”时:1~8191 倍 “9”时:0.1~819.1s(注 1) C+4 采样周期(τ) 设定进行 PID 运算的周期。 0001~270F(1~9999) 不可 (10ms 单位、0.01~99.99s) C+5 的位 2-PID 参数(α) 输入滤波器系数。通常为 0.65(设 000 Hex:α=0.65(16 进制 3 位) 4~15 定值为 0)。 如果为 100~163 Hex,低 2 位的值意味着 值越接近 0,滤波器则效果越弱。 α=0.00~0.99。(注 2) C+5 的位 3 操作量输出指定 指定测定值=设定值时的操作量。 0、1 0:输出 0% 1:输出 50% C+5 的位 1 PID 常数改变使 指定何时将 P(比例带)、Tik(积 0、1 可以 能设定 分常数)、Tdk(微分常数)的各 0:仅在 PID 指令开始执行时 参数变化反映在 PID 运算中。 1:PID 指令开始执行时,以及每个采样周期 C+5 的位 0 操作量正逆动作 决定比例动作方向的参数。 0、1 不可 切换指定 0:反向动作 1:正向动作 数 C+6 的位 操作量限位控制 是否对操作量进行限位控制的指 0、1 据 12 指定 定。 0:无效(不进行限位控制) 控 1:有效(进行限位控制)(注 3) 制 C+6 的位 输入量程 输入数据的位数。 (16 进制 1 位) 指 8~11 0:8 位 1:9 位 2:10 位 令 3:11 位 4:12 位 5:13 位 6:14 位 7:15 位 8:16 位 C+6 的位 积分・微分常数单 积分常数・微分常数的时间单位指 9(16 进制 1 位) 4~7 位指定 定。 1:采样周期倍数指定 将积分・微分时间作为采样周期的指定倍数 时间加以指定。 9:时间指定 将积分・微分时间以 100ms 为单位 加以指定。(注 1) C+6 的位 输出范围 输出数据的位数。 设定范围与输入范围相同。 0~3 C+7 操作量限位下限值 对操作量进行了限位控制时的限位 0000~FFFF(BIN 数据)(注 3) 下限值。 C+8 操作量限位上限值 对操作量进行了限位控制时的限位 0000~FFFF(BIN 数据)(注 3) 上限值。 注 1:将积分·微分常数单位指定设定为时间指定(“9”)时,请将积分时间·微分时间的设定设定在采样周期的 1~8191 倍的时间内。 注 2:如果设定为 000,2-PID 参数 α 将转成 0.65。通常请设定为 000。 注 3:操作量限位控制指定设定为有效(“1”)时,请对各值进行如下所示的设定。 0000≦操作量限位下限值≦操作量限位上限值≦指定输出范围最大值 3-413 数据控制指令 PID 运算 PID(190) 关于采样周期和扫描周期时间的关系 采样周期可以以 10ms 为单位进行指定(0.01~99.99s)。但是,实际的 PID 运算取决于采样周期和 PID 指令执行时 3 (每个扫描周期时间)的组合。采样周期和扫描周期时间的关系如下所示。 各 指 令 说 明 1)采样周期<扫描周期时间时 不进行每个采样周期的 PID 运算,而转成每个扫描周期时间的 PID 运算。 2)采样周期≧周期时间时 不进行每扫描周期 PID 运算,扫描周期时间(PID 指令-PID 指令间的时间)的累计值≧采样周期时,执行 PID 指 令。累计值的溢出部分(周期时间的累计值ー采样周期)转入下一次累计值。 例如,采样周期 100ms,扫描周期时间固定为 60ms 时 执行初始化后的第一次是 60ms<100ms,不执行 PID 指令。 第 2 次转成 60ms+60ms>100ms,所以执行 PID 指令。(溢出部分的 120ms-100ms=20ms 转入下一次) 第 3 次与上一次的转入部分相加,得出 20ms+60ms 的结果,由于 80ms<100ms,所以不执行 PID 指令。 第 4 次由于 80ms+60ms>100ms,执行 PID 指令。(溢出部分的 140ms-100ms=40ms 转入下一次),依此类推。 数 据 控 制 指 令 3-414 数据控制指令 PID 运算 PID(190) 关于 PID 控制 比例动作(P) 3 对于设定值拥有比例带,其中将操作量(控制量)与偏差成比例的动作称为比例动作。 各 当前值小于比例带时,操作量为 100%。在比例带内操作量与偏差成比例逐渐变小,如果设定值和当前值一致(偏差 指 转成 0),操作量将随着操作量输出指定参数,转成 0%或者 50%。(逆动作时) 比例带用相对于输入范围全幅的百分率来表示。在比例动作中,产生静差(残留偏差),通过缩小比例带,可以减 小静差值。但是,如果过小会产生震颤。 令 说 明 积分动作(I) 比例动作中发生静差。此时,在比例动作中组合积分动作,随着时间的推移,静差逐渐减少,测定值和设定值逐渐 趋向一致。 数 据 控 ・积分时间 制 表示积分动作强弱的单位,如图所示,对于阶梯状的偏差,表示积分的操作量达到与比例动作相同的操作量为止的 指 令 时间。积分时间越短,根据积分动作进行的订正则越强。但是,如果过短,订正动作会变得过强,有时会产生震颤。 3-415 数据控制指令 PID 运算 PID(190) 微分动作(D) 由于比例动作和积分动作是针对控制结果的订正动作,无论如何应答都会变慢。微分动作为了补偿这个缺点,对于 3 剧烈的干扰给予较大的操作量,使其快速恢复到原来的状态。以与产生偏差的斜率(微分系数)成比例的操作量进 各 行订正动作。 指 令 ・微分时间 说 明 表示微分动作强弱的单位,如图所示,对于阶跃的偏差,表示微分的操作量到达与比例动作相同的操作量为止的时 间。微分时间越长,根据微分动作进行的订正则越强。 PID 动作 PID 动作是组合了比例动作(P)、积分动作(I)以及微分动作(D)的动作,对于有死区时间的控制对象也有良好 的控制结果。通过比例动作进行无震颤的平滑控制,以积分动作自动修整偏移,运用微分动作加快对于干扰的应答。 数 以下表示对于阶跃偏差、脉冲偏差的 PID 动作的操作量变化。 据 控 制 指 令 动作方向 请在 PID 控制中选择以下 2 个之中的一个控制方向。 反向动作:测定值比设定值小时,增加操作量。(加热) 正向动作:测定值比设定值大时,增加操作量。(冷却) 3-416 数据控制指令 PID 运算 PID(190) 关于 PID 参数的调整 PID 参数和控制状态的一般关系如下所示。请作为使用 PID 指令时的参考。 ・不管达到稳定需要多少时间(整定时 ・即使产生超调,希望尽早形成稳定的控 3 间),不希望产生超程时,扩大比例 带(P)。 制状态时,缩小比例带(P)。但是, 如果过小,会产生震颤。 各 指 令 说 明 ・当产生宽幅的震颤,或在重复超调・ 达不到目标值,很可能因为积分动作 过强。通过增加积分时间(I),或扩 大比例带(P)时,可以缩小震颤。 ・产生短周期的震颤时,控制系统的响应 变快,微分动作过强。此时,请缩小微 分作用(D)。 数 据 控 制 指 令 3-417 数据控制指令 3-182 带自整定 PID 运算 PIDAT(191) 概要 功能说明 3-182 带自整定 PID 运算 PIDAT(191) 根据指定的参数进行 PID 运算。可以执行 PID 常数的自 根据 C 所指定的参数(设定值、PID 常数等)进行将 S 3 整定(AT)。 作为测定值输入的 PID 运算(目标值滤波型 2 自由度 PID 各 运算),将 D 输出到操作量。 指 符号 令 说 输入条件上升(OFF→ON)时,读取参数,如果在正常 范围外,将 ER 标志置于 ON。 明 S:测定值输入 CH 编号 如果在正常范围内,将此时的操作量作为初期值,进行 PID 处理。 C:PID 参数保存低位 CH 编号 输入条件为 ON 时,将每个指定采样周期的测定值作为 D:操作量输出 CH 编号 输入,进行运算。 操作数说明 输入条件为 OFF 时,停止 PID 运算。D 的操作量保持此 时的值。有必要变更时,请运用梯形图程序或手动操作 进行变更。 ・在某一周期中,如果 AT 指令/执行中(C+9 的位 15) 转成 1(ON)(每周期检测该位),则开始执行 PID 数 常数的自整定(AT)(并且在 AT 执行中不反映 SV 据 的变更)。 控 制 AT 取决于限位周期法。PIDAT 指令强制性改变操作 指 量(最大操作量←→最小操作量),并观测控制对象 令 的特性,基于该观测结果,自动运算 P、I、D 常数, 分别自动存储到 C+1、C+2、C+3 中。 同时将 AT 指令/执行中(C+9 的位 15)由 1(ON) 转成 0(OFF),根据自动运算后的 PID 常数(C+1、 C+2、C+3)值开始 PID 运算。 ・PIDAT 指令执行开始时,C+9 的位 15 为 1 时: 事先执行 AT 后,根据计算出的 PID 常数开始 PID 运 算。 ・PIDAT 指令执行中,将 C+9 的位 15 由 0 转成 1 时: 中断用户事先存储的 PID 常数下的 PID 运算,执行 AT 后,根据计算出的 PID 常数开始(重新开始)PID 运算。 3-418 数据控制指令 带自整定 PID 运算 PIDAT(191) AT 执行的步骤 注: ・PID 运算执行中可以反映变更的只有 P、Tik、Tdk 的各 参数。 3 ・手动变更 PID 常数时,将该 PID 常数反映定时指定(C+5 各 的位 1)作为 1(将 C+1、C+2、C+3 的值逐个采样周期 指 反映到 PID 运算中)。此时,该指定在执行 AT 后手动 令 调整 PID 常数时有效。 说 明 请注意 PID 参数(C~C+40)之中,在输入条件保持 ON 的状 态下可以变更的值为以下参数。已变更其他值时,必须 将输入条件由 OFF 上升为 ON。 ・C 的设定值(SV)(但是,仅在 PID 运算执行中。 AT 执行中不反映变更过的值) ・PID 常数的反映定时指定 注:1)AT 执行中,C+9 的位 15 从 1 转成 0,终止了 AT 时,以 AT 执行开始之前的 PID 参数开始 PID 运算。 ・PID 常数反映定时(C+5 的位 1)为 1(C+1、C+2、 C+3 的值反映在每个采样周期)时的 C+1、C+2、C+3 的各 P、I、D 常数 2)即使 AT 执行出错,也以 AT 执行开始之前的 PID ・C+9 的位 15 的 AT 指令/执行中位 参数开始 PID 运算。 ・C+9 的位 0~14 的 AT 计算增益以及 C+10 的限位周 1)、2)均是将 P、I、D 的各参数在 AT 中止时点 期滞后(但是,无论何种情况下,AT 开始时为 1 的 的值作为有效值进行运算。 情况下被读取) ・根据输入范围(C+6 的位 8~11)指定,指定 S 的测 定值输入在 16 位内的有效位数。例如,将输入范围指 定为 12 位(4 Hex),0000~0FFF Hex 范围的值作为 测定值而有效。输入了比输入范围中指定的位还大的 参考 PIDAT 指令(191)是在 PID 指令(190)中附加 AT(自 整定)功能的指令。关于 PID 控制动作自身,与 PID 指 数 据 控 制 指 值时,用输入范围的最大值进行补正。此时 ER 标志 令(190)一致。关于 PID 控制动作的详细情况,请参 令 不为 ON。 见 PID 指令(190)的项。 ・设定值的范围也取决于输入范围。 ・测定值以及设定值是 0000 Hex~输入范围最大值的无 符号 BIN 值。 ・根据输出范围(C+6 的位 0~3)指定,指定操作量在 16 位内的有效位数。例如,如果将输出范围指定为 12 位(4Hex),0000~0FFF Hex 范围的值作为操作量被 输出。 ・仅有比例动作的情况下,可以将测定值=设定值时的 操作量指定为 0%和 50%中的一个。 ・可以指定比例动作的正动作、逆动作。 ・可以指定操作量的上下限。 ・可以 10ms 为单位指定采样周期(0.01~99.99s)。但 是,实际的 PID 运算通过采样周期和 PIDAT 指令执 行时(每个周期时间)的组合来决定是否执行。 ・执行 PID 运算过程中,变更了比例带(P)、积分常 数(Tik)、微分常数(Tdk)时,可以指定是否将该 变更在每个采样周期中反映在 PID 运算中。取决于 PID 常数反映定时指定(C+5 的位 1)。 3-419 数据控制指令 带自整定 PID 运算 PIDAT(191) 执行条件/每次刷新指定 ON 时每周期执行 PIDAT 3 执行条件 上升沿时 1 周期执行 无 各 下降沿时 1 周期执行 无 指 每次刷新指定 无 令 说 使用限制 明 区域 块程序区 工程步进 子程序区域 中断任务程 域 程序区域 序区域 使用 不可 可 可 不可 数据内容 区域 CIO(输入输出继电 器等) S 0000~6143 C 0000~6103 D 0000~6143 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~ W000~471 H000~471 A000~919 T0000~4055 C0000~4055 D00000~ W000~511 H000~511 A448~959 T0000~4095 C0000~4095 D00000~ 32767 32727 32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 数据寄存器 DR0~15 ― DR0~15 数 常数 ― 据 变址寄存器(直接) ― 控 制 变址寄存器(间接) 指 令 ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 状态标志的动作 名称 出错标志 标记符 ER >标志 > <标志 < 进位标志 CY 内容 ・C 的数据在范围之外时为 ON ・实际的采样周期超过设定的采样周期的 2 倍时为 ON ・执行自整定时发生了异常时为 ON ・除此之外为 OFF ・经过了 PID 运算的操作量高于操作输出限 位上限值时为 ON ・除此之外为 OFF ・经过了 PID 运算的操作量低于操作输出限 位下限值时为 ON ・除此之外为 OFF ・执行了 PID 运算时为 ON ・除此之外为 OFF 注: ・PIDAT 指令将输入条件的上升视为 STOP→RUN 而执 行。输入条件上升时将 C+11~C+40 初始化(清除)后, 在下一周期以后输入条件为 ON 时,执行 PIDAT 指令。 因此,将常时 ON 标志(ON)作为 PIDAT 指令的输入条 件时,请另行设置将 C+11~C+40 在运转开始时进行初 始化(清除)的处理。 ・C 的数据(设定值以外)位于范围外时,会发生错误, ER 标志为 ON。 ・自整定(AT)执行时发生了异常时,ER 标志为 ON。 ・PID 运算执行中,实际的采样周期超过设定的采样周期 的 2 倍时,会发生错误,ER 标志为 ON。但此时进行 PID 运算。 ・已执行 PID 运算时,CY 标志为 ON。 ・已经过 PID 运算的操作量高于操作量限位上限值时,> 标志为 ON。此时,结果以操作量限位上限值被输出。 ・已经过 PID 运算的操作量低于操作量限位下限值时,< 标志为 ON。此时,结果以操作量限位下限值被输出。 3-420 数据控制指令 带自整定 PID 运算 PIDAT(191) 动作说明 PID 参数的设定内容 控制数据 项目 内容 设定范围 输入条件为 ON 时能否变更 3 C 设定值(SV) 控制对象的目标值。 输入范围的位数的 BIN 数据 (0~指定输入范围最大值) 可以(但在 AT 各 执行中不可以) 指 C+1 比例带(P) 比例控制范围/控制范围整体所表示 0001~270F Hex(1~9999) 输入条件为 ON 令 的 P 控制用参数。 (0.1%单位、0.1~999.9%) 时 C+5 的位 1 说 C+2 积分常数(Tik) 表示积分动作的效果大小的常数。将该 0001~1FFF Hex(1~8191) 为 1 时可以 值变大后,积分效果变弱。 270F Hex(9999)(无积分动作的设定) 明 积分・微分常数单位指定为 “1”时:1~8191 倍 “9”时:0.1~819.1s(注 1) C+3 微分常数(Tdk) 表示微分动作大小的常数。 0001~1FFF Hex(1~8191) 将该值变大后,微分效果变弱。 0000 Hex(0000)(无微分动作的设定) 积分・微分常数单位指定为 “1”时:1~8191 倍 “9”时:0.1~819.1s(注 1) C+4 采样周期(τ) 设定进行 PID 运算的周期。 0001~270F(1~9999) 不可 (10ms 单位、0.01~99.99s) C+5 的位 2-PID 参数(α) 输入滤波器系数。通常请以 0.65 使用。 000 Hex:α=0.65(16 进制 3 位) 4~15 值越接近 0,滤波器则效果越弱。 如果为 100~163 Hex,低位 2 位的值意味 着 α=0.00~0.99。 (注 2) C+5 的位 3 操作量输出指定 指定测定值=设定值时的操作量。 0、1 0:输出 0% 1:输出 50% C+5 的位 1 PID 常数刷新时间 指定何时将 P(比例带)、Tik(积分 0、1 可以 指定 常数)、Tdk(微分常数)的各参数反 0:仅在输入条件上升时 映在 PID 运算中。 1:输入条件上升时,以及每个采样周期 C+5 的位 0 操作量正反动作 决定比例动作方向的参数。 0、1 不可 切换指定 0:反向动作 1:正向动作 数 C+6 的位 操作量限位控制 是否对操作量进行限位控制的指定。 0、1 据 12 指定 0:无效(不进行限位控制) 控 1:有效(进行限位控制)(注 3) 制 C+6 的位 输入量程 输入数据的位数。 (16 进制 1 位) 指 8~11 0:8 位 1:9 位 令 2:10 位 3:11 位 4:12 位 5:13 位 6:14 位 7:15 位 8:16 位 C+6 的位 积分・微分常数单 积分常数・微分常数的时间单位指定。 9(16 进制 1 位) 4~7 位指定 1:采样周期倍数指定 将积分・微分时间作为采样周期的指 定倍数时间加以指定。 9:时间指定 将积分・微分时间以 100ms 为单位加以指定。(注 1) C+6 的位 输出范围 输出数据的位数。 设定范围与输入范围相同。 0~3 C+7 操作量限位下限值 对操作量进行了限位控制时的限位下限 0000~FFFF(BIN 数据)(注 3) 值。 C+8 操作量限位上限值 对操作量进行了限位控制时的限位上限 0000~FFFF(BIN 数据)(注 3) 值。 3-421 数据控制指令 带自整定 PID 运算 PIDAT(191) 控制数据 项目 内容 设定范围 输入条件为 ON 3 时能否变更 各 C+9 的位 AT 指令/执行中 同时兼具 PID 常数的 AT(自整定)执 0、1 可以 指 15 行指令和 AT 执行中标志作用。 ・作为 AT 执行指令 令 ・AT 执行时设置为 1(即使执行 0→1:AT 执行指示(PIDAT 指令执行时 说 PIDAT 指令时也有效)。 为 1 时也执行 AT 指示) 明 ・AT 结束后,自动返回 0。 1→0:AT 中止指示或者 AT 结束时自动 注:AT 执行中如果从 1 设置为 0,AT 发生变化 将中止,以 AT 执行开始之前的 PID 参数开始 PID 运算。但是,P、I、 ・作为 AT 执行中标志 0:AT 非执行中 D 的各参数在中止时的值有效 1:AT 执行中 C+9 的位 AT 计算增益 对通过 AT 进行的 PID 调整的计算结果 0000 Hex:1.00(默认值) 可以 0~11 的自动存储值的补给度通过用户定义 0001~03E8 Hex:0.01~10.00(0.01 单位) (但反映定时 进行调整时加以设定。 为 AT 开始时) 通常在默认值下进行使用。 ・重视稳定性时变大。 ・重视速应性时变小。 C+10 限位周期滞后 在 SV 中,设定发生限位周期时的滞后。 0000 Hex:0.20%(默认值) 默认值中,逆动作的情况下,在 SV- 0001~03E8 Hex:0.01~10.00%(0.01 单 0.20%的滞后中将 MV 置于 ON。 位) 由于 PV 不稳定,在无法发生正常的限 FFFF Hex:0.00% 位周期时,增大该值。但是,如果过大, 注:相对于输入范围的% AT 精度将变低。 注 1:将积分・微分常数单位指定设定为时间指定(“9”)时,请将积分时间・微分时间的设定设定在采样周期的 1~8191 数 倍的时间内。 据 控 注 2:如果设定为 000,2-PID 参数 α 将转成 0.65。通常请设定为 000。 制 指 令 注 3:操作量限位控制指定设定为有效(“1”)时,请对各值进行如下所示的设定。 0000≦操作量限位下限值≦操作量限位上限值≦指定输出范围最大值 3-422 数据控制指令 带自整定 PID 运算 PIDAT(191) 动作说明 例)PID 指令执行后,在其他条件下执行 AT 时 ·0.00 上升沿(OFF→ON)时,根据设定在 D200~D208 中的下述参数,进 行 D211~D240 的工作区域的初始化。初始化结束后,进行 PID 运算,将 操作量输出到 2000CH。 ·0.00 为 ON 时,根据设定在 D2000~D210 中的参数,以采样周期的间隔执 3 各 指 令 行 PID 运算,将操作量输出到 2000CH。 说 ·在 0.00 变为 ON 以后,比例带(P)、积分常数(Tik)、微分常数(Tdk) 明 等 PID 参数的改变不再反映在 PID 运算中。 ·W0.00 从 ON 下降到 OFF 时,根据 SETB 指令,将 D209(C+9)的位设 为 1(ON),开始 AT 执行。AT 执行结束后,在 C+1、C+2、C+3 中分 别设置计算出的 P、I、D,根据该 PID 常数执行 PID 运算。 参数 测定值 1000 CH PID 运算 操作量 设定值:300 比例带:10.0 秒 积分时间:120.0 秒 微分时间:40.0 秒 采样周期:0.5 秒 反向动作(位 00:0)/PID 常数反映定时=输入条件上升时(位 01:0)/设定值 =测定值时输出 50%(位 03:1)/2-PID 参数 α=0.65(位 04~15:000Hex) 操作量输出范围 12 位(位 00~03:4Hex)积分·微分常数:时间指定(位 04~07:9Hex) 输入范围 12 位(位 08~11:4Hex)无操作量限位控制(位 12:0) AT 指令执行中(位 15:0)/AT 计算增益 1.00(位 00~11:000Hex) 限位周期滞后:0.20% 工作区域 数 据 控 制 指 令 开始 PID 运算 设置计算出的 PID 常数 PID 运算 AT 执行 PID 运算 中 位 15 时间 时间 3-423 数据控制指令 带自整定 PID 运算 PIDAT(191) 例)PID 指令执行时立即执行 AT 时 0.00 为 ON 时,D209(C+9)的位 15 为 1(ON)时,先执行 AT。AT 执行 3 结束后,在 C+1、C+2、C+3 中分别设置计算出的 P、I、D,根据该 PID 常 各 数执行 PID 运算。 指 令 说 明 数 据 控 制 指 令 例)AT 执行中终止了 AT 时 AT 执行过程中,将 D209(C+9)的位 15 从 1(ON)转为 0 (OFF),AT 被终止,通过 AT 执行开始之前的 PID 常数,重 新开始 PID 运算。 开始 PID 运算 3-424 数据控制指令 3-183 上下限限位控制 LMT(680) 概要 执行条件/每次刷新指定 3-183 上下限限位控制 LMT(680) 根据输入数据是否位于上下限限位数据的范围内来控制 输出数据。 执行条件 ON 时每周期执行 LMT 上升沿时 1 周期执行 @LMT 3 符号 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 S:输入 CH 编号 区域 块程序区 工程步进 子程序区域 中断任务 明 C:限位数据低位 CH 编号 D:输出 CH 编号 使用 域 可 程序区域 可 程序区域 可 可 数据内容 操作数说明 区域 S C D CIO(输入输出继电 0000~6143 器等) 0000~6142 0000~6143 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~ W000~510 H000~510 A000~958 T0000~4094 C0000~4094 D00000~ W000~511 H000~511 A448~959 T0000~4095 C0000~4095 D00000~ 32767 32766 32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 #0000 ~ FFFF - 注:C 以及 C+1 必须为同一区域种类。 (BIN 数据) 数 数据寄存器 DR0~15 ― DR0~15 据 变址寄存器(直接) ― 控 功能说明 制 对于 S(带符号 BIN 数据),下限限位数据≦S≦上限 限位数据时,将 S 输出到 D。S>上限限位数据时,将上 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 指 令 限限位数据输出到 D。S<下限限位数据时,将下限限位 ,IR0~15+(++) 数据输出到 D。 ,-(--)IR0~15 3-425 数据控制指令 上下限限位控制 LMT(680) 状态标志的动作 名称 标记符 内容 3 出错标志 ER ・上限限位数据<下限限位数据时为 ON 各 ・除此之外为 OFF 指 >标志 > ・S>上限限位数据时为 ON 令 ・除此之外 OFF 说 =标志 = ・结果为 0 时为 ON 明 <标志 ・除此之外为 OFF < ・S<下限限位数据时为 ON ・除此之外为 OFF N 标志 N ・结果的最高位位为 1 时 ON ・除此之外为 OFF 动作说明 (例) 注: ・上限限位数据<下限限位数据时,会发生错误,ER 标志 为 ON。 ・S>上限限位数据时,>标志 ON。 ・输出 D 的内容为 0000 Hex 时,=标志为 ON。 ・S<下限限位数据时,<标志为 ON。 ・输出 D 的内容的最高位位为 1 时,N 标志为 ON。 数 据 控 制 指 令 3-426 数据控制指令 3-184 死区控制 BAND(681) 概要 例)下限数据 0100 Hex、输入数据 8000 Hex 时 3-184 死区控制 BAND(681) 根据输入数据是否位于上下限数据(死区)的范围内来 输出数据:8000 Hex-0100 Hex=7F00 Hex 控制输出数据。 (-32768) (256) (32512) 3 各 符号 指 执行条件/每次刷新指定 令 S:输入 CH 编号 执行条件 ON 时每周期执行 上升沿时 1 周期执行 BAND @BAND 说 明 C:上下限数据低位 CH 编号 下降沿时 1 周期执行 无 D:输出 CH 编号 每次刷新指定 无 操作数说明 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 下限数据 (死区下限值) 数据内容 区域 CIO(输入输出继 电器等) S 0000~6143 C 0000~6142 D 0000~6143 内部辅助继电器 W000~511 W000~510 W000~511 上限数据 保持继电器 H000~511 H000~510 H000~511 (死区上限值) 特殊辅助继电器 A000~959 A000~958 A448~959 时间 T0000~4095 T0000~4094 T0000~4095 注:C 以及 C+1 必须为同一区域种类。 功能说明 对于 S 所指定的数据(带符号 BIN 数据),下限数据< S<上限数据时(死区),将 0000 Hex 输出到 D。 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 C0000~4095 C0000~4094 C0000~4095 D00000~32767 D00000~ D00000~ 32766 32767 @D00000~32767 *D00000~32767 #0000~FFFF ― 数 据 控 制 指 令 S>上限数据时,将(S 所指定的数据)-(上限数据) (BIN 数据) 输出到 D。 数据寄存器 DR0~15 ― DR0~15 S<下限数据时,将(S 所指定的数据)-(下限数据) 输出到 D。 变址寄存器 (直接) 变址寄存器 (间接) ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 输出数据小于 8000 Hex 时,或大于 7FFF Hex 时,符号 反转。 3-427 数据控制指令 死区控制 BAND(681) 状态标志的动作 名称 标记符 内容 3 出错标志 ER ・上限数据<下限数据时为 ON 各 指 >标志 令 说 =标志 明 <标志 ・除此之外为 OFF > ・S>上限数据时为 ON ・除此之外 OFF = ・结果为 0 时为 ON ・除此之外为 OFF < ・S<下限数据时为 ON ・除此之外为 OFF 否定标志 N ・结果的最高位位为 1 时 ON ・除此之外为 OFF 动作说明 (例) 注: ・上限限位数据<下限限位数据时,会发生错误,ER 标志 为 ON。 ・S>上限限位数据时,>标志 ON。 ・输出 D 的内容为 0000 Hex 时,=标志为 ON。 ・S<下限限位数据时,<标志为 ON。 ・输出 D 的内容的最高位位为 1 时,N 标志为 ON。 数 据 控 制 指 令 3-428 数据控制指令 3-185 静区控制 ZONE(682) 概要 3-185 静区控制 ZONE(682) 将指定的偏置值附加到输入数据中进行输出。 符号 执行条件/每次刷新指定 执行条件 ON 时每周期执行 ZONE 上升沿时 1 周期执行 @ZONE 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 区域 块程序区 工程步进 子程序区域 中断任务 明 域 程序区域 程序区域 使用 可 可 可 可 操作数说明 数据内容 区域 CIO(输入输出继 电器等) S 0000~6143 C 0000~6142 D 0000~6143 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 W000~510 H000~510 A000~958 T0000~4094 C0000~4094 D00000~ W000~511 H000~511 A448~959 T0000~4095 C0000~4095 D00000~ 32766 32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 功能说明 常数 #0000~FFFF ― (BIN 数据) 数 对于 S 所指定的输入数据(带符号 BIN 数据),输入数 数据寄存器 DR0~15 ― DR0~15 据 据<0 时,将输入数据+负的偏置值(C+0)输出到 D。 输 入数据>0 时,将输入数据+正的偏置值(C+1)输出到 D。 输入数据=0 时,将 0000 Hex 输出到 D。 变址寄存器 (直接) 变址寄存器 (间接) ― ,IR0~15 -2048~+2047,IR0~15 控 制 指 令 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 输出数据小于 8000 Hex 时,或大于 7FFF Hex 时,符号 反转。 例)负的偏置值 FF00 Hex、输入数据 8000 Hex 时 输出数据:8000 Hex+FF00 Hex=7F00 Hex (-32767)(-256) (32512) 3-429 数据控制指令 静区控制 ZONE(682) 状态标志的动作 名称 标记符 内容 3 出错标志 ER ・正的偏置值<负的偏置值时为 ON 各 指 >标志 令 说 =标志 明 <标志 ・除此之外为 OFF > ・S>0 时为 ON ・除此之外 OFF = ・结果为 0 时为 ON ・除此之外为 OFF < ・S<0 时为 ON ・除此之外为 OFF 否定标志 N ・结果的最高位位为 1 时 ON ・除此之外为 OFF 动作说明 (例) 注: ・正的偏置值<负的偏置值时,会发生错误,ER 标志为 ON。 ・S>0000 Hex 时,>标志为 ON。 ・输出 D 的内容为 0000 Hex 时,=标志为 ON。 ・S<0000 Hex 时,<标志为 ON。 ・输出 D 的内容的最高位位为 1 时,N 标志为 ON。 数 据 控 制 指 令 3-430 数据控制指令 3-186 时间比例输出 TPO(685) 概要 R: 3-186 时间比例输出 TPO(685) 输入指定通道内的占空比或操作量,根据指定参数,将 指定脉冲输出的输出目的地接点。 占空比转换为时间比例输出,将结果输出到指定的接点。 通常指定晶体管输出单元的输出位,在该晶体管输出单 3 元上连接 SSR(固态继电器)。 各 符号 指 功能说明 令 S:输入任务比或操作量存储 CH 编号 输入 S 所指定的通道编号内的占空比或操作量,根据 说 C~C+3 所指定的参数,将占空比转换为时间比例输出 明 C:参数存储低位 CH 编号 *1,脉冲输出到 R 所指定的接点。 R:脉冲输出继电器编号 操作数说明 S: 指定输入占空比或操作量存储通道。 ・输入占空比:0000~2710 Hex(0.00~100.00%) ・输入操作量*1:0000~最大 FFFF Hex(0~最大 65535)(根据 C 的位 00~03,指定作为有效位数的 操作量范围。使之与 PID 运算指令的操作量输出的输 出范围一致) ﹡1: 所谓时间比例输出是指,根据输入值(S)按比例来 变更 ON 和 OFF 的时间比的输出。 变更 ON 和 OFF 的时间比的周期称为「控制周期」, 指定为 C+1。 例)控制周期=1s 时,输入值为 50%时,0.5s 的过 程中 ON、0.5s 的过程中 OFF、输入值为 80%时,0.8s 的过程中 ON、0.2s 的过程中 OFF。 一般而言,与 PID 运算指令(PID)(或带自整定 PID 运算指令(PIDAT))成套使用,通过本指令的 S 来指 定该操作量输出结果(D)。 根据 C 的位 04~07(输入种类指定),指定视为输入占 进一步在 R 中指定晶体管输出单元的输出位,在该晶体 管输出单元上连接 SSR,进行加热器的时间比例控制(对 空比、输入操作量的哪个数据(C 的位 04~07 为 0 Hex 时为占空比。C 的位 04~07 为 1 Hex 时为操作量) *1:将 S 视为输入操作量时,根据 PID 运算指令(PID) (或带自整定 PID 运算指令(PIDAT))指定存储操 作量的通道编号。 ON 和 OFF 的时间比按比例进行控制)。 与 PID 运算指令组合时的示例 与 PID 运算指令进行组合时,以输入操作量为基础,将 对操作量按操作范围进行分割的值作为占空比,并将该 占空比转换为时间比例输出,进行脉冲输出。 数 据 控 制 指 令 C: 此时,必须使 PID 运算指令的输出范围和本指令的操作 量范围一致。 例)输出范围=操作量范围指定例如在 12 位(0000~ 0FFF Hex)的情况下,将根据 PID 运算指令用 0FFF Hex 分割操作量后的值作为占空比。本指令将该值转换为时 间比例输出。 3-431 数据控制指令 时间比例输出 TPO(685) 外部配线例 对晶体管输出单元和 SSR 进行连接,如下所示。 3 各 指 令 说 明 执行条件/每次刷新指定 ON 时每周期执行 TPO 执行条件 上升沿时 1 周期执行 无 下降沿时 1 周期执行 无 每次刷新指定 无 使用限制 区域 使用 块程序区 域 不可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 区域 S C R CIO(输入输出继电 0000~6143 0000~6137 0000.00~ 数 器等) 6143.15 据 内部辅助继电器 W000~511 W000~505 W000.00~ 控 511.15 制 保持继电器 H000~511 H000~505 H000.00~ 指 511.15 令 特殊辅助继电器 A000~959 A000~953 A448.00~ 959.15 时间 T0000~4095 T0000~4089 - 计数器 C0000~4095 C0000~4089 - 数据内存(DM) D00000~ D00000~ - 32767 32761 DM 间接(BIN) @D00000~32767 - DM 间接(BCD) *D00000~32767 - 常数 #0000~#FFFF - - 数据寄存器 DR0~15 - - 变址寄存器(直接) - 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER 内容 ・S 在范围外时为 ON ※范围因输入种类而异 ・C 在范围外时为 ON ※操作量范围只有在输入 种类指定为操作量时 ・控制周期(C+1)在范围外时为 ON ・输出限位功能有效,输出限位下限值(C+2)、 输出限位上限值(C+3)在范围外时为 ON ・输出限位功能有效,结果不为输出限位下限值 (C+2)≦输出限位上限值(C+3)时为 ON ・除此之外为 OFF 3-432 数据控制指令 时间比例输出 TPO(685) 参数的设定内容 控制数据 项目 内容 设定范围 输入条件为 ON 时能否变 3 更 各 C 的位 0~3 操作量范围 输入数据的位数。 (16 进制 1 位) 可以 指 0:8 位 1:9 位 2:10 位 令 C 的位 4~7 输入种类指定 3:11 位 6:14 位 输入(S)内的数据选择是占空比 0:占空比 4:12 位 7:15 位 5:13 位 8:16 位 可以 说 明 还是操作量。 注:S 的值的范围:占空比: 0000~2710 Hex(0~100.00%) 1:操作量 注:S 值的范围:0000~FFFF Hex(0~65535) ※上限根据操作量范围(C 的位 0~3) C 的位 8~11 输入读取的时 指定输入读取的时间。 0:每个控制周期 间指定 1:下方优先 2:上方优先 3:连续调整 C 的位 12~ 输出限位功能 指定输出限位功能的有效/无效。 0:无效(不进行限位控制) 可以 15 指定 1:有效(进行限位控制)(注) C+1 控制周期 控制周期(改变 ON 和 OFF 的时 0064~270F Hex(1.00~99.99 秒) 可以 间比的周期) 注:例如,1 秒不是 0001 Hex,请注意设定为 0064 Hex 的点。 C+2 输出限位下限 对输出进行限位控制时的限位下限 0000~2710 Hex(0~100.00%) 可以 值 值。 C+3 输出限位上限 对输出进行限位控制时的限位上限 0000~2710 Hex(0~100.00%) 可以 值 值。 C+4 工作区域 系统为使用的区域。 不可使用 - 用户无法使用该通道。 数 C+5 据 C+6 控 注:输出限位控制指定有效(“1”)时,请对各值进行如下所示的设定。 制 指 0000 Hex≦输出限位下限值≦输出限位上限值≦2710 Hex 令 功能说明 ・输入条件为 ON 的过程中执行指令。 ・开始指令的执行,根据占空比将输出接点(R)转为 ON/OFF。 ・参数(C~C+3)在每次执行指令时进行实时读取。变更时,请同时变更(以免破坏各参数间的整合性)。 ・在指令执行的定时点进行输出(R)的 ON/OFF。同时,输出(R)的 ON/OFF 定时精度最大为 10ms。 ・如果输入条件转成 OFF,将中断指令的执行。此时,经过时间被复位,控制周期被初始化。 ・根据输入种类指定(C 的位 04~07),输入(S)内的数据选择为占空比或操作量。 输入(S)内的数据为操作量时,占空比通过操作量(S)÷操作量范围(根据 C 的位 0~3)进行计算。 ・输入(S)的读取定时根据输入读取定时指定(C 的位 8~11)进行指定。 「0:每控制周期」时 在控制周期的开始点读取占空比输入,周期过程中的占空比变化将被忽略。 「1:下方优先」时 根据控制周期开始点的占空比,占空比输入下降时,下降的值优先, ON 的 时间相应减少。 「2:上方优先」时 对于控制周期开始点的占空比,占空比输入上升时,上升的值优先, ON 的 时间相应增加。 「3:常时」中 每次执行指令时对占空比进行实时读取,在控制周期内重复 ON/OFF。 下页中进行图解。 3-433 数据控制指令 时间比例输出 TPO(685) ・输入读取时间指定为「0:每个控制周期」时 在控制周期的开始读取 3 各 指 令 占空比 说 (操作量/操作量范围) 明 控制周期 a 秒 控制周期 a 秒 输出 时间 根据控制周期开始时的占空比,决定其周期的输出。参考:用于一般用途。 ・输入读取时间指定为「1:下方优先」时 数 据 控 制 指 令 如果输入占空比下降到低于控制周期开始时的值,且足够早,输出占空比将被调整,输 出也将很快被置为 OFF。 参考:在时间比例中进行加热动作时,且控制周期比较长时,用于希望防止加热时的超 调。 3-434 数据控制指令 时间比例输出 TPO(685) ・输入读取时间指定为「2:上方优先」时 控制周期 a 秒 控制周期 a 秒 3 占空比 保持 55%预定 各 (操作量/操作量范围) 指 令 将预定的 70% 更改为 80% 说 明 时间 如果输入占空比上升到高于控制周期开始的值,且足够早,输出占空比将被调整,输出 也将很快被置 ON。(使用该设定时,输出 ON/OFF 的顺序是反的,OFF 在周期中先 于 ON)。 参考:在时间比例中进行冷却动作时,且控制周期比较长时,用于希望防止冷却时的超 调。 ・输入读取时间指定为「3:连续调整」时 占空比 (操作量/操作量范围) 控制周期 a 秒 控制周期 a 秒 ON 点 数 OFF 点 据 控 制 指 令 实时追踪占空比的变化。 如果输入占空比下降到低于控制周期开始时的值,且足够早,输出占空比将被调整,输出 也将很快被置为 OFF。如果之后输入占空比上升,输出占空比将被重新调整,输出也将被 重新置 ON。这个过程是连续重复的。 参考:控制周期较长且占空比的变化比较频繁时,用于提高响应特性,也适用于照明/电力 等需要精确控制的情况下。 ・如果将输出限位功能(C 的位 12~15)设为有效,输出位于输出限位下限值(C+2)和输出限位上限值(C+3)的 范围外时,可以对输出进行控制(使之饱和)。 3-435 数据控制指令 时间比例输出 TPO(685) 动作说明 (例 1)与 PID 指令组合使用时 3 0.00 为 ON 的过程中,输入来自 PID 运算指令的输出操作量(存储到 D0),以此为基础,计算占空比(操作量÷操 各 指 令 作量范围),将其转换为时间比例输出,脉冲输出到 100.05。 同时,将晶体管输出单元分配到 100 CH 中,在该位 05 的端子上连接 SSR,进行加热器控制。 说 0.00 由 OFF 上升为 ON 时,读取参数,将 1000CH 明 测定值 作为测定值(PV),开始 PID 运算,存储到操作量 PID 参数 (MV)D0。 操作量 操作量 参数 脉冲输出 用存储到 D0 中的操作量(MV)除以操作量范围(例: 12 位指定时 0FFFHex)后得出的比率作为占空比, 将其转换为时间比例输出,输出到 100.05。 设定值(SV) 比例带(P) 输出范围:4 Hex (12 位:0000~0FFF Hex) 操作量范围:4 Hex (12 位:0000~0FFF Hex) 数 输入种类指定:1 Hex(操作量) 据 控 请注意 制 指 在周期执行任务内,将本指令与 PID 指令组合使用,且使用中断任务的情况下,在 PID 指令以及本指令之前,执行 令 DI(中断任务执行禁止),请禁止中断任务的执行。在 PID 指令和本指令之间,一旦中断进入,控制周期可能发生 偏差。 禁止进入 中断任务 允许进入 中断任务 3-436 数据控制指令 时间比例输出 TPO(685) (例 2)单独使用本指令时 0.00 在 ON 的过程中,输入 D10 内的占空比,将其转换为时间比例输出,脉冲输出到 100.06。控制周期=1 秒、输出 限位功能有效(下限 20.00%、上限 80.00%)时。 3 各 指 令 说 明 数 据 控 制 指 令 3-437 数据控制指令 3-187 缩放 SCL(194) 概要 3-187 缩放 SCL(194) 根据指定的一次函数,将无符号 BIN 数据缩放(转换) ( 无 3 为无符号 BCD 数据。 各 符 号 指 符号 令 值 说 ) 明 S:转换对象 CH 编号 BCD C:参数保存低位 CH 编号 D:转换结果保存 CH 编号 参考 根据 A 点和 B 点所指定的 1 次函数进行转换(缩放) 转换 转换 (无符号 BIN 值) 操作数说明 缩放后的 A 点值(Ad) 0000~9999(BCD4 位) 本指令用于将来自模拟输入单元的模拟信号的转换结果 转换为用户定义的缩放等情况。(例:将对于 1~5V 的 0000~0FA0 Hex 缩放为 50~200℃) 本指令将无符号 BIN 缩放(转换)为无符号 BCD。 因此,原数据 S 中有负数时,使用 SCL 指令之前,必须 在程序中加上一个最大的负值,见例子。 同时,无法在缩放结果 D 中输出负数。缩放(转换)结 果为负数时,输出 0000。 缩放前的 A 点值(As) 0000~FFFF Hex 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 SCL @SCL 数 下降沿时 1 周期执行 无 据 每次刷新指定 无 控 制 指 缩放后的 B 点值(Bd) 0000~9999(BCD4 位) 使用限制 令 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 使用 可 可 可 可 缩放前的 B 点值(Bs) 0000~FFFF Hex 功能说明 将 S 所指定的无符号 BIN 数据根据 C 所指定的参数(A 点和 B 点 2 点的各缩放前和缩放后的值)所决定的一次 函数,转换为无符号 BCD 数据,将结果输出到 D。 转换式: D=Bd- (Bd-Ad) (Bs-As)的 BCD 转换值 的 BCD 转换值 ×(Bs-S) A 点和 B 点不仅可以形成正斜率,还可以形成负斜率。 因此,可以进行逆缩放。 ・转换结果的小数点之后数据四舍五入 转换结果小于 0000 时输出 0000,大于 9999 时输出 9999。 数据内容 区域 CIO(输入输出继电 器等) S 0000~6143 C 0000~6140 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 W000~508 H000~508 A000~956 T0000~4092 C0000~4092 D00000~ DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) DR0~15 32764 @D00000~32767 *D00000~32767 ― ― ― D 0000~6143 W000~511 H000~511 A448~959 T0000~4095 C0000~4095 D00000~ 32767 DR0~15 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-438 数据控制指令 缩放 SCL(194) 状态标志的动作 名称 出错标志 标记符 ER =标志 = 内容 ・Ad(C)和 Bd(C+2)的值不为 BCD 时为 ON ・As(C+1)和 Bs(C+3)的值相等时为 ON ・除此之外为 OFF ・转换结果为 0 时为 ON ・除此之外为 OFF 注: ・Ad(C)和 Bd(C+2)的值不为 BCD 时,或者 As(C+1) 3 和 Bs(C+3)的值相等时,会发生错误,ER 标志为 ON。 ・转换结果 D 的内容为 0000 Hex 时,=标志为 ON。 各 指 令 说 明 动作说明 (例) 对于模拟信号 1~5V,0000~0FA0 Hex 的值被存储在 D0 中时,将该值转换(缩 放)为 0000~0300 的 BCD 值。 0.00 为 ON 时,将来自模拟输入单元的 D0 值根据 A 点(0000Hex→0000(BCD)) 和 B 点(0FA0Hex→0300(BCD))所决定的 1 次函数进行缩放,存储到 D200。 D(D0)的内容 B点 A点 数 S(D0)的内容 据 控 制 指 令 参考 来自实际的模拟输入单元的变更值,对于 0.8V~5.2V 存储 FF38~1068Hex 的值。 但是, SCL 指令将 S 的值作为 0000~FFFF Hex 的无符号 BIN 值处理,因此对 于 1V(0000 Hex)未满的带符号 BIN 值 FF38~FFFFHex,无法正确进行缩放。 因此,将来自实际的模拟输入单元的转换值用 SCL 指令进行缩放时,为使 FF38 Hex 转成 0000Hex,全体加 00C8 后执行 SCL 指令。 200CH 上+C8Hex 后的值 3-439 数据控制指令 缩放 SCL(194) D(D200)的内容 3 各 指 B点 令 说 明 A点 A 点(00CB Hex→0000(BCD)) B 点(1068 Hex→0300(BCD)) S(D0)的内容 但是,SCL 指令时,0000~9999 的无符号 BCD 值存储在 D 的值中。因此,对于 0.8~5.2V,本 应该进行-15~+315 的缩放,但是因为转换结果为负数时存储 0000(BCD),因此如上图所示, 对于 0000~00C8Hex,0000(BCD)为确定。 参考 关于逆缩放也可进行 AsBd。 D ︵ 数 无 据 符 控 制 号 B A点 指 令 C D 值 B点 ︶ (无符号 BIN 值) 此时,例如对于 1~5V(0000~0FAHex),可进行向 0300~0000 的转换(逆缩放)。 A点 B点 3-440 数据控制指令 3-188 缩放 2 SCL2(486) 概要 3-188 缩放 2 SCL2(486) 根据带指定的偏移值的一次函数,将带符号 BIN 数据缩 放(转换)为带符号 BCD 数据。 符号 操作数说明 S:转换对象 CH 编号 C:参数存储低位 CH 编号 D:转换结果存储 CH 编号 ·转换结果超过上限(9999)时,输出 9999,超过下限时, 输出-9999。 偏移为正时 D(带符号 BCD) 偏移为负时 3 D(带符号 BCD) 各 指 令 说 明 偏移 S (带符号 BIN) S (带符号 BIN) 偏移 偏移 8000~7FFFHex(带符号 BIN) 偏移 △X △Y (带符号 BIN) (带符号 BIN) (带符号 BCD) 偏移为 0(0000Hex)时 D(带符号 BCD) △X 8000~7FFFHex(带符号 BIN) 偏移 (带符号 BIN) 功能说明 △Y 0000~9999(BCD) 数 据 参考 控 制 本指令用于将来自模拟输入单元的模拟信号的转换结果 指 转换为用户定义的缩放等情况。(例:将对于 1~5V 的 令 0000~0FA0 Hex 缩放为-100~200℃) 将 S 所指定的带符号 BIN 数据根据 C 指定的参数(斜率 本指令将带符号 BIN 缩放(转换)为带符号 BCD。 和偏移)所决定的 1 次函数,转换为带符号 BCD 数据 因此,原数据 S 中即使有负数,也可直接进行缩放。 (BCD 数据为绝对值,用 CY 标志判别正负 ON:负、 OFF:正),将结果输出到 D。 同时,通过缩放结果 D 和 CY 标志也可以在缩放结果中 输出负数。 转换式: ΔY D= ΔX 的 BCD 转换值 X {(S 的 BCD 转换值)-(偏移的的 BCD 转换值)} 注: ΔY ΔX 为斜率。 偏移可以是正数、0、负数。 斜率可以是正数、0、负数。因此,也可以进行逆缩放。 ・转换结果的小数点之后数据四舍五入。 ・D(BCD 数据)表示绝对值,进位标志(CY)表示正负。 因此,转换结果在-9999~9999 的范围内输出。 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 SCL2 @SCL2 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 3-441 数据控制指令 缩放 2 SCL2(486) 数据内容 区域 S C D 3 CIO(输入输出继电 0000~6143 0000~6141 0000~6143 各 器等) 指 内部辅助继电器 W000~511 W000~509 W000~511 令 保持继电器 H000~511 H000~509 H000~511 说 特殊辅助继电器 A000~959 A000~957 A448~959 明 时间 T0000~4095 T0000~4093 T0000~4095 计数器 C0000~4095 C0000~4093 C0000~4095 数据内存(DM) D00000~ D00000~ D00000~ 32767 32765 32767 DM 间接(BIN) @D00000~32767 DM 间接(BCD) *D00000~32767 常数 ― 数据寄存器 DR0~15 ― DR0~15 变址寄存器(直接) ― 变址寄存器(间接) 动作说明 ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 =标志 进位标志 注: 标记符 ER = CY 内容 ・腦(C+1)的数据为 0 时为 ON ・腨(C+2)的数据不为 BCD 时为 ON ・除此之外为 OFF ・转换结果为 0 时为 ON ・除此之外为 OFF ・转换结果转成负数时为 ON ・除此之外为 OFF ・ΔX(C+1)的数据为 0000 Hex 时或 ΔY(C+2)的数据 不为 BCD 时,会发生错误,ER 标志为 ON。 ・转换结果 D 的内容为 0000 Hex 时,=标志为 ON。 ・转换结果 D 中内容为负数时,CY 标志为 ON。 对于模拟信号 1~5V,进行 0~300 缩放时 对于模拟信号 1~5V,带符号 BIN 值 0000~0FA0 的值存储到 2005 CH 时, 数 将该值转换(缩放)为 0000~0300 的 BCD 值。 据 控 制 指 0.00 为 ON 时,将来自模拟输入单元的 2005 CH 的值根据偏移=0000 Hex、△X=0FA0 Hex、 △Y=0300 所决定的 1 次函数进行缩放,存储到 D200。 令 D(D200)的内容 偏移 S’(2005 CH)的内容 (△X) 3-442 数据控制指令 缩放 2 SCL2(486) (例)对于模拟信号 1~5V,进行-200~+200 的缩放时 对于模拟信号 1~5V,带符号 BIN 值 0000~0FA0 Hex 的值被存储在 2005 CH 中时,将该值转换(缩放)为 -0200~0200 的 BCD 值。 3 各 指 令 说 明 数 据 控 制 指 令 3-443 数据控制指令 3-189 缩放 3 SCL3(487) 概要 ·S 的 BCD 数据表示绝对值,用指令执行时的进位标志 (CY)来区别正负。因此,转换对象数据为-9999~9999 3-189 缩放 3 SCL3(487) 根据指定的带偏移一次函数,将带符号 BCD 数据缩放 的范围。 3 (转换)为带符号 BIN 数据。 各 ·转换结果的小数点之后数据四舍五入。 指 符号 ·转换结果超过转换最大值(C+3)时,输出转换最大值, 令 超过转换最小值(C+4)时,输出转换最小值。 说 明 S:转换对象 CH 编号 偏移为正时 偏移为负时 C:参数存储低位 CH 编号 D 的内容(带符号 BIN) D 的内容(带符号 BIN) 操作数说明 D:转换结果存储 CH 编号 转换最大值 转换 最大值 转换 最小值 偏移 偏移 S 的内容 (带符号 BCD) 转换 最小值 S 的内容 (带符号 BCD) 偏移为 0 时 D 的内容(带符号 BIN) 转换最大值 数 据 控 制 指 令 S 的内容 转换 (带符号 BCD) 最小值 功能说明 将 S 所指定的带符号 BCD 数据(BCD 数据为绝对值, 用 CY 标志判别正负、ON:负、OFF:正 )根据 C 指 定的参数(斜率和偏移)所决定的 1 次函数,转换为带 符号 BIN 数据,将结果输出到 D。 CY 标志请用 STC 指令(040)/CLC 指令(041)进行 ON/OFF。 转换式: ΔY D= ΔX 的 BIN 转换值 X (S 的 BIN 转换值)+(偏移) 注: ΔY ΔX 为斜率。 参考 本指令用于将用户定义的缩放转换为模拟输出单元用的 带符号 BIN 数据时等(例:将 0~200℃转换为 0000~ 0FA0 Hex,从模拟输出单元中输出模拟输出信号 1~ 5V)。 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 SCL3 @SCL3 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 ·偏移可以为正数、0、负数。 ·斜率可以为正数、0、负数。因此,也可以进行逆缩放。 3-444 数据控制指令 缩放 3 SCL3(487) 数据内容 区域 CIO(输入输出继电 器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) S 0000~6143 C 0000~6139 D 0000~6143 W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~ 32767 DR0~15 W000~507 H000~507 A000~955 T0000~4091 C0000~4091 D00000~ 32763 @D00000~32767 *D00000~32767 ― ― ― W000~511 H000~511 A448~959 T0000~4095 C0000~4095 D00000~ 32767 DR0~15 状态标志的动作 名称 标记符 内容 出错标志 ER ・S 的数据不为 BCD 时为 ON 3 =标志 N 标志 ・腦(C+1)的数据不为 0001~9999 的 BCD 各 时为 ON 指 ・除此之外为 OFF 令 = ・转换结果为 0 时为 ON ・除此之外为 OFF N ・转换结果的最高位位为 1 时为 ON 说 明 ・除此之外为 OFF 注: ・S 的数据不为 BCD 时或 ΔX(C+1)的数据不为 0001~ 9999 的 BCD 时,会发生错误,ER 标志为 ON。 ・转换结果 D 的内容为 0000 Hex 时,=标志为 ON。 ・转换结果 D 的内容的最高位位为 1 时,N 标志为 ON。 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 动作说明 (例) 将 0~200 的值缩放为模拟信号(例如 1~5V)时,将带符号 BCD 值 0000~0200 的值转换(缩放)为模拟输出单元用数据带符号 BIN 值 0000~0FA0。 数 据 控 制 指 令 3-445 数据控制指令 3-190 数据平均化 AVG(195) 概要 3-190 数据平均化 AVG(195) CH 数据的指定周期次数的平均值以无符号 BIN 进行计 3 算。 各 指 符号 令 说 明 S1:当前值输入 CH 编号(对象 CH) S2:平均值运算循环次数 D:平均值存储低位 CH 编号 操作数说明 S2:0001~0040 Hex(1~64) D:平均值 D+1:作业数据(用户不可写入) 使用系统 执行条件/每次刷新指定 平均值有效标志 0:无效(从 AVG 指令开始的扫描的扫描次数<S2 的值时) 1:有效(从 AVG 指令执行开始的扫描次数≥S2 的值时) 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 AVG 无 无 数 据 :过去的值 1 控 制 指 令 :过去的值 N 每次刷新指定 无 使用限制 区域 使用 块程序区 域 不可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 功能说明 数据内容 在更新指定的周期次数(S2)、存储指针(D+1 的位 00~ 07)的同时,将 S1 所指定的无符号 BIN 数据作为过去 区域 CIO(输入输出继电 S1 值依次存储到 D+2 之后。 器等) S2 0000~6143 D 在这一过程中,S1 的数据直接输出到 D,将平均值有效 标志(D+1 的位 15)设为 0(OFF)。 指定周期次数(S2)的过去 S1 值被存储到 D+2 之后时, 计算该过去值的平均值,将结果以无符号 BIN 数据输出 到 D。此时,将平均值有效标志(D+1 的位 15)设为 1 (ON)。 以后每次扫描时,根据最新 S2 扫描部分的数据计算平 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) W000~511 H000~511 A000~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 A448~959 均值,输出到 D。 常数 #0000~FFFF #0001~0040 - 指定周期次数(S2)最大为 64。 (BIN 数据) (BIN 数据) 指定为 64 以上时,作为 64 次进行处理。 数据寄存器 DR0~15 ― 变址寄存器(直接) ― 如果过去值的存储指针到达 S2-1,则重新从 0 开始。 平均值的小数点以下数据四舍五入。 变址寄存器(间接) ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 状态标志的动作 名称 出错标志 标记符 ER 内容 ・S2 的数据为 0 时为 ON ・除此之外为 OFF 3-446 数据控制指令 数据平均化 AVG(195) 注: 请注意 ・在初次输入条件上升时,根据本指令,对作业数据(D+1) 进行初始化(清空为 0000 Hex)。 程序运行的第 1 周期时,不对作业数据(D+1)进行初 始化。因此,从程序运行的第 1 周期开始执行本指令时, 3 ・S2(平均值计算周期次数)的数据为 0000 Hex 时,会发 请根据程序清空 D+1。 各 生错误,ER 标志为 ON。 指 令 说 动作说明 明 (例) 数 据 控 制 指 令 @ 3-447 数据控制指令 3 各 指 令 说 明 数 据 控 制 指 令 3-448 子程序指令 项目号 3-191 3-192 3-193 3-194 3-195 指令语句 子程序调用 宏 子程序进入 子程序返回 全局子程序调用 全局子程序进入 全局子程序回送 助记符 SBS MCRO SBN RET GSBS GSBN GRET FUN 编号 091 099 092 093 750 751 752 页码 3-450 3-454 3-457 3-459 3-464 3-449 子程序指令 3-191 子程序调用 SBS(091) 概要 3-191 子程序调用 SBS(091) 调用指定编号的子程序,执行程序。 3 各 符号 指 令 说 明 操作数说明 N:0~255(10 进制) 组合使用指令 SBN(子程序进入)指令以及 RET(子程序回送)指令 功能说明 调用 N 所指定的编号的子程序区域(SBN 指令~RET 指令间的区域)的程序。执行子程序区域后,返回本指 令后的下一指令。 子 程 序 指 令 执行条件/每次刷新指定 ON 时每周期执行 SBS 执行条件 上升沿时 1 周期执行 @SBS 下降沿时 1 周期执行 无 每次刷新指定 无 子程序的嵌套最多 16 层。 所谓嵌套是指在子程序(SBN~RET)中进入子程序调 用(SBS)后的状态。 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务程 序区域 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) N ― ― ― ― ― ― ― ― ― 0~255(10 进制) ― ― ― 3-450 子程序指令 子程序调用 SBS(091) 状态标志的动作 请注意 名称 出错标志 注: 标记符 ER 内容 ・嵌套数超过 16 层时为 ON ・不存在指定目的地的子程序时为 ON ・从自子程序中调用自子程序时为 ON ・调用执行中的子程序时为 ON ・ 指定目的地的子程序没有在自任务内加以 定义时为 ON ・除此之外为 OFF 在子程序内使用输出微分型指令(DIFU、DIFD、带动 作选项@、%指令)时,需注意以下事项。 3 ・在同一周期内,多次执行同一子程序时,子程序内的 各 输出微分型指令(DIFU、DIFD、带动作选项@、%指 令)动作不固定,请注意。 ・在下述示例中,输出继电器 0.00 为 ON 时执行子程序 指 令 说 明 0001,输出继电器 0.01 由 OFF 转成 ON 时,DIFU 指 令使 100.00 转成 ON。但是,在同一周期内输出继电 ・可以多次调用同一子程序。 器 0.01 为 ON 时,由于再次执行子程序 0001,本次不 ・该子程序调用(SBS)指令和子程序进入(SBN)指令必 检测 DIFU 指令的 0.01 上升,100.00 转成 OFF。 须在同一任务内。如果不在同一任务内,会发生错误, ER 标志为 ON。 ・即使执行子程序指令,在下列情况下,ER 标志为 ON, 实际上不进行调用。 1)指定目的地的子程序未在自任务内加以定义。 2)从自子程序中调用自子程序时 3)子程序的嵌套超过 16 层时 4)指定子程序在执行过程中时 ・通过 IL-ILC 指令进行互锁的过程中,SBS 指令进入 NOP 处理。 子 程 序 ・相反,执行子程序内的微分指令(DIFU、DIFD 指令), 指 在该输出为 ON 的状态下,下一次开始不调用同一子 令 程序的情况下,微分指令(DIFU、DIFD 指令)的输 出保持 ON,而不发生 OFF,请注意。 ・在下述示例中,0.00 为 ON 时执行子程序 0001,0.01 由 OFF 转成 ON 时,DIFU 指令使 100.00 转成 ON。 如果在之后的周期中,0.00 保持 OFF 不变,子程序 0001 不执行时,DIFU 指令的输出 100.00 保持 ON 状态。 3-451 子程序指令 子程序调用 SBS(091) 动作说明 3 有两个子程序调用指令时 各 ・未嵌套时 指 令 说 明 ・嵌套 2 层时 子 程 序 指 令 3-452 动作说明 (例) 子程序指令 子程序调用 SBS(091) 3 各 指 令 说 明 子 程 序 指 令 3-453 子程序指令 3-192 宏 MCRO(099) 概要 3-192 宏 MCRO(099) 带参数的子程序调用。 3 各 符号 指 令 说 明 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 MCRO @MCRO 无 无 中断任务 程序区域 可 操作数说明 数据内容 N:0~255(10 进制) 组合使用指令 区域 N CIO(输入输出继电器等) - 内部辅助继电器 - 保持继电器 - S D 0000~6140 W000~508 H000~508 SBN(子程序进入)指令以及 RET(子程序回送)指令 特殊辅助继电器 功能说明 调用 N 所指定的编号的子程序区域(SBN 指令~RET 指令间的区域)的程序。 与 SBS(子程序调用)指令不同,根据 S 所指定的参数 数据和 D 所指定的返值数据,可以进行与子程序区域程 序的数据传递。 由此,可以作为仅改变 1 个子程序区域程序的地址的多 个回路分开使用。 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 子 将 S~S+3 CH 的数据复制到 A600~A603 CH(MCRO 程 序 指 指令用参数区域),调用指定编号的子程序。将 A600~ A603 CH 的数据作为输出数据,执行将 A604~A607 CH 令 (MCRO 指令用返值区域)作为输出数据的子程序后, - - - - - - 0~255 (10 进制) - A000~444 A448~956 A448~956 T0000~4092 C0000~4092 D00000~32764 @D00000~32767 *D00000~32767 - ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 将 A604~A607 CH 的数据复制到 D~D+3 CH 后,返回 MCRO 指令的下一个指令。 执 行 SBN ~ RET 间的子程序 将 AS00~AS03 作为输入, 将 AS04~ AS07 作为输出使用的子程序 3-454 子程序指令 宏 MCRO(099) 状态标志的动作 名称 出错标志 标记符 ER 内容 ・嵌套数超过 16 层时为 ON ・不存在指定目的地的子程序时为 ON ・从自子程序中调用自子程序时为 ON ・调用执行中的子程序时为 ON ・ 指定目的地的子程序没有在自任务内加以 定义时为 ON ・除此之外为 OFF 参考 相同动作模式・结构下,存在仅地址不同的多个回路时, 如果使用该 MCRO(宏)指令,可以将这些多个回路汇 3 总到多个 MCRO 指令和 1 个回路。该宏指令是子程序的 各 一种。在执行 MCRO(宏)指令时,将子程序编号所指 定的子程序变更为指定的输入输出编号后执行。 但是,能够通过 MCRO(宏)指令汇总的回路必须为仅 地址不同,其他全部相同的回路。 指 令 说 明 相关特殊辅助继电器 名称 MCRO 指令用 自变数区域 地址 A600~A603 MCRO 指令用 A604~A607 变量区域 内容 MCRO 指令执行时,从自变量 数据低位 CH 编号的 4CH 的自 变数据在这里被复制。被复制 的参数 4CH 传递到子程序。 MCRO 指令的子程序执行后, 从子程序传递返值 4CH。传递 的返值作为 MCRO 指令的参 数,保存在从返值数据低位 CH 编号开始的 4CH 里。 注: ・在通过 MCRO 指令调用的子程序中,必须在输出地址中 使用参数区域(A600~A603 CH)的 4 CH 数据(通道、 位等),在输出地址中使用返值区域(A604~A607 CH) 子 的 4CH 数据(通道、位等)。该 4 CH 以上的数据不能 传递,请注意。 程 序 指 ・MCRO 指令可以嵌套。但是,参数区域(A600~A603 CH) 令 以及返值区域(A604~A607 CH)分别只有 1 个,嵌套 时必须有数据退避处理的程序。 3-455 子程序指令 宏 MCRO(099) 动作说明 (例) 3 各 指 令 说 明 子 程 序 指 令 3-456 子程序指令 3-193 子程序进入 SBN(092)/子程序返回 RET(093) SBN 指令 3-193 子程序进入 SBN(092)/子程序回送 RET(093) 概要 显示指定编号的子程序开始。 在 RET 指令和设置中使用,定义子程序区域。 符号 执行条件/每次刷新指定 执行条件 ON 时每周期执行 SBN RET 每次刷新指定 无 无 3 使用限制 各 指 区域 块程序区 工程步进 子程序区域 中断任务 令 域 程序区域 程序区域 说 SBN 不可 不可 不可 可 明 RET 不可 不可 可 可 操作数说明 N:0~255(10 进制) 组合使用指令 ・RET(子程序返回)指令 ・SBS(子程序调用)指令或者 MCRO(宏)指令 功能说明 显示子程序区域的开始。 最初的 SBN 指令以后为子程序区域,子程序区域只能通 过 SBS 指令或 MCRO 指令执行。 数据内容(SBN 指令) 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) N ― ― ― ― ― ― ― ― ― 0~255(10 进制) ― ― ― 状态标志的动作 子 无 程 序 注:未执行子程序时,进行 NOP 处理。 指 令 RET 指令 概要 表示子程序的结束。 在 SBN 指令和设置中使用,定义子程序区域。 符号 组合使用指令 ・SBN(子程序进入)指令 ・SBS(子程序调用)指令或者 MCRO(宏)指令 功能说明 结束子程序区域的执行,返回调用源 SBS 指令或者 MCRO 指令的下一指令。 通过 MCRO 指令调用子程序时,将 A604~A607 CH (MCRO 指令用返值区域)的值写入 D 所指定的返值数 据低位 CH 编号之后。 3-457 子程序指令 子程序进入 SBN(092)/子程序返回 RET(093) 注: 请注意 3 各 请将子程序区域(SBN~RET)配置在分配于各任务中的各 程序的最后(END 指令)之前(存在多个子程序时汇总)、 常规程序之后。如果在子程序区域(SBN~RET)之后已配 ・子程序区域(SBN~RET)请配置在同一编号的 SBS 指令或者与 MCRO 指令的同一程序(任务)内。超 越任务时,无法执行子程序。同时,可以将子程序区 指 置常规程序,则不执行该常规程序,转成无效。 域配置在中断任务(分配的程序)中。 令 说 明 动作说明 (例) 子 程 序 指 令 ・工序步进指令(STEP 指令、SNXT 指令)无法在子 程序区域内使用,请注意。 3-458 子程序指令 3-194 全局子程序调用 GSBS(750) 概要 3-194 全局子程序调用 GSBS(750) 调用指定编号的全局子程序,执行程序。可以从多个任 务中调用同一全局子程序。 3 各 符号 指 令 说 明 操作数说明 N:0~255(10 进制) 注:全局子程序编号和通常的子程序编号(SBS 指令或者 MCRO 指令的操作数)共通(请使用同一编号)。 组合使用指令 GSBN(全局子程序进入)指令以及 GRET(全局子程序 返回)指令 也可以在中断任务 No.0 内定义(记述)多个全局子程序 区域(GSBN 指令~GRET 指令)。 功能说明 调用 N 所指定的编号的全局子程序区域(GSBN 指令~ GRET 指令间的区域)的程序。全局子程序区域执行结 束后,返回本指令的下一指令。 将本指令记述在多个任务中,可以调用同一编号的全局 子程序。通过将任务共通的标准回路作为全局子程序, 可以事先进行程序的模块化。 子 全局子程序区域(GSBN 指令~GRET 指令间的区域) 程 可以仅定义(记述)在中断任务 No.0。定义在其他任务 中时,如果试图执行 GSBS 指令,会发生错误,ER 标志 序 指 令 为 ON。 同时,本 GSBS 指令可以记述在周期执行任务以及中断 任务(包括追加任务)的任一任务中。 3-459 子程序指令 全局子程序调用 GSBS(750) 注: 在子程序区域(SBN 指令~RET 指令)、全局子程序区 ・全局子程序进入(GSBN)以及全局子程序返回(GRET) 3 各 指 域(GSBN 指令~GRET 指令)内记述 SBS 指令或者 GSBS 指令,可以嵌套子程序以及全局子程序。 但是,嵌套最多 16 层。 指令必须在中断任务 No.0 内。如果不在中断任务 No.0 内,在 GSBS 指令执行时会发生错误,ER 标志为 ON。 ・以下任一情况下,不执行调用,ER 标志为 ON。 令 说 1)不存在指定目的地的全局子程序时 明 2)与常规子程序的合计嵌套数超过 16 层时 3)自全局子程序调用自全局子程序时 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 GSBS @GSBS 无 无 4)调用了执行中的全局子程序时 5)指定目的地的全局子程序未定义在中断任务 No.0 中时 ・全局子程序区域(GSBN 指令~GRET 指令间的区域)不 能通过常规子程序调用(SBS)指令进行调用。 ・由于在互锁中不执行 GSBS 指令,全局子程序区域内也 不进行互锁。 ・也可以多次调用同一全局子程序区域(GSBN 指令~ GRET 指令间的区域)。 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 区域 CIO(输入输出继电器等) 子 程 内部辅助继电器 序 保持继电器 指 特殊辅助继电器 令 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) N ― ― ― ― ― ― ― ― ― 0~255(10 进制) ― ― ― 状态标志的动作 名称 出错标志 标记符 ER 内容 ・与常规子程序的合计嵌套数超过 16 层时为 ON ・不存在指定目的地的全局子程序时为 ON ・ 从自全局子程序中调用自全局子程序时为 ON ・调用全局子程序时为 ON ・ 指定目的地的全局子程序定义在中断任务 No.0 中时为 ON ・除此之外为 OFF 3-460 子程序指令 全局子程序调用 GSBS(750) 请注意 在子程序内使用输出微分型指令(DIFU、DIFD、带动 作选项@、%指令)时,需注意以下事项。 ·在同一周期内多次执行同一全局子程序时,全局子程 序内的输出微分型指令(DIFU、DIFD、带动作选项 @、%指令)的动作不确定,请注意。 下述示例中,输出继电器 0.00 为 ON 时执行全局子程 ·相反,执行全局子程序内的微分指令(DIFU、DIFD 指令),该输出为 ON 的状态下,从下一次开始不调 用同一全局子程序时,微分指令(DIFU、DIFD 指令) 的输出保持 ON,不转成 OFF,请注意。 3 各 在下述示例中,0.00 为 ON 时调用全局子程序 0001, 0.01 从 OFF 转成 ON 时,DIFU 指令使 100.00 转成 ON。如果在之后的周期中,0.00 保持 OFF,不执行 指 令 说 明 全局子程序 0001 时,DIFU 指令的输出 100.00 保持 序 0001,输出继电器 0.01 由 OFF 转成 ON 时,DIFU ON。 指令使 100.00 转成 ON。但是,在同一周期内输出继 电器 0.01 为 ON 时,由于再次执行全局子程序 0001, 本次不检测 DIFU 指令的 0.01 上升,100.00 转成 OFF。 子 程 序 指 令 3-461 子程序指令 全局子程序调用 GSBS(750) 动作说明 (例 1) 3 各 指 令 说 明 子 程 序 指 令 3-462 子程序指令 全局子程序调用 GSBS(750) (例 2) 在中断任务 No.0 内,可以事先记述多个全局子程序。此时,对中断任务 No.0 进行分割,可以作为子程序功能的任 务使用。 3 各 指 令 说 明 子 程 序 指 令 3-463 子程序指令 3-195 全局子程序进入 GSBN(751) /全局子程序返回 GRET(752) GSBN 指令 3-195 全局子程序进入 GSBN(751)/全局子程序回送 GRET(752) 3 概要 各 指 令 表示指定编号的全局子程序的开始。 在 GRET 指令和复制中使用,定义全局子程序区域。 说 明 符号 GRET 指令 概要 表示全局子程序的结束。 在 GSBN 指令和复制中使用,定义全局子程序区域。 符号 GRET 操作数说明 N:0~255(10 进制) 组合使用指令 ・GRET(全局子程序返回)指令 ・GSBS(全局子程序调用)指令 功能说明 表示全局子程序区域的开始。 最初的 GSBN 指令之后转成全局子程序区域,全局子程 序区域只能通过 GSBS 指令执行。 组合使用指令 ・GSBN(全局子程序进入)指令 ・GSBS(全局子程序调用)指令 功能说明 结束全局子程序区域的执行,返回调用源 GSBS 指令的 下一指令。 GSBN 指令 执行条件/每次刷新指定 执行条件 ON 时每周期执行 每次刷新指定 GSBN 无 GRET 无 使用限制 子 区域 块程序区 工程步进 子程序区域 中断任务 程 序 域 程序区域 程序区域 指 GSBN 不可 不可 - 可 令 GRET 不可 不可 不可 可 数据内容(GSBN/GRET 指令共通) 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) N ― ― ― ― ― ― ― ― ― 0~255(10 进制) ― ― ― 状态标志的动作 无 注:不执行全局子程序时,进行 NOP 处理。 3-464 子程序指令 全局子程序进入 GSBN(751)/全局子程序返回 GRET(752) 注: 请注意 请将全局子程序区域(GSBN~GRET)配置在分配于中断 任务 No.0 中的程序的最后(END 指令)之前(存在多个全 局子程序时,将其汇总)、常规程序之后。如果已在全局 ·全局子程序区域(GSBN~GRET)必须配置在中断 任务 No.0 中。 3 各 子程序区域(GSBN~GRET)之后配置常规程序,则不执 指 行该常规程序,转为无效。 令 程序(中断任务 No.0) 周期执行任务 1 周期执行任务 1 说 明 全局子程序区域 该区域的程序不执行。 周期执行任务 2 中断任务 No.0 动作说明 (例) 0.00 为 ON 时,子程序编号 10 的子程序区域(GSBN~GRET) 的程序执行后,返回 GSBS 的下一指令。 周期执行任务/中断任务 中断任务 No .0 全局 子程序区域 ・工序步进指令(STEP 指令、SNXT 指令)不能在全 局子程序区域内使用,请注意。 子 程 GSBN 序 指 令 SNXT STEP GRET 3-465 子程序指令 3 各 指 令 说 明 子 程 序 指 令 3-466 中断控制指令 项目号 3-196 3-197 3-198 3-199 3-200 指令语句 中断屏蔽设置 中断屏蔽前导 中断解除 中断任务执行禁止 解除中断任务执行禁止 助记符 MSKS MSKR MSKR DI EI FUN 编号 690 692 691 693 694 页码 3-468 3-471 3-473 3-475 3-477 3-467 中断控制指令 3-196 中断屏蔽设置 MSKS(690) 概要 (2)定时中断时 3-196 割込マスクセット MSKS(690) 用 N 指定定时中断编号和启动方法,用 S 指定定时中 3 各 指 令 说 明 对是否能执行输入中断任务及定时中断任务进行控制。 在 PLC 进入 RUN 模式时下,作为输入中断任务的启动 要因的中断输入被屏蔽(禁止接收),作为定时中断任 务的启动要因的内部计时器处于停止状态。 通过执行该 MSKS(中断屏蔽设置)指令,可以屏蔽或 允许输入中断或设定定时中断的定时间隔。 断时间(中断的间隔)。 数据 数据内容 N 定时中断 0(中断任务 No.2) 14:复位开始指定(将内部时间值复位后, 开始计时) 4:非复位开始指定(另外需要用 CLI 指 令来设定初次中断开始时间) S 0(0000 Hex):禁止执行定时中断(内部 符号 计时器停止) PLC 系统设定 “定 10ms 1~9999(0001~270F Hex):定时中断时 时中断单位时间设 间设定 10~99,990ms 定” 1ms 1~9999(0001~270F Hex):定时中断时 间设定 1~9,999ms 0.1ms 5~9999(0005~270F Hex):定时中断时 间设定 0.5~999.9ms 操作数说明 (1)输入中断时 用 N 来指定输入中断编号,用 S 设定动作。 数据 数据内容 中断输入的 中断输入的屏蔽解 注:1~4(0001~0004 Hex)不可指定。 将变成指令处理出错。 功能说明 通过 N 的值,来指定是将输入中断作为对象,还是将定 时中断任务作为对象。 N 输入中断 0 (中断任务 No.140) 输入中断 1 (中断任务 No.141) 输入中断 2 上升沿/下 降沿指定时 110(或 10) 除/屏蔽指定时 100(或 6) 111(或 11) 101(或 7) 112(或 12) 102(或 8) (1)输入中断(N=100~107、110~117 或 6~13) ・分为可指定是在启动时检测中断输入还是在关闭时检 测中断输入的功能,以及指定解除中断输入的任务(许 可)/屏蔽(禁止)的功能这 2 种功能,可结合使用。 此外,不执行指定启动/关闭的 MSKS 指令的情况下, 作为初始值的被指定启动来进行动作。 (中断任务 No.142) 中 输入中断 3 113(或 13) 103(或 9) 断 (中断任务 No.143) 控 输入中断 4 114 104 制 指 令 (中断任务 No.144) 输入中断 5 115 (中断任务 No.145) 105 ・解除中断输入任务的情况下,指定直接模式还是计数 模式(减法或加法)。关于各个动作,请参照用户手 册的「中断功能」。 ・在启动/关闭指定时(变更时)及中断输入任务解除 时,在这一时间之前检测出的中断要因将被清除。 输入中断 6 116 106 (中断任务 No.146) 输入中断 7 117 107 (中断任务 No.147) (2)定时中断(N=4、14) ・指定定时中断的时间间隔的同时,开始内部计时器的 计时。时间间隔的设定值依存于 PLC 系统设定的“定 S 0000 Hex:检测上 0000 Hex:中断任务解 时中断单位时间设定”。 升沿(初始值) 除(直接模式) 0001 Hex:检测下 0001 Hex:中断任务屏 降沿 蔽 ・作为内部计时器的启动方法,指定是复位启动还是非 复位启动。 0002 Hex:中断任务解 ・在复位启动指定中,将使内部计时器的目前值复位后 除(计数模式、开始减 法计数) 0003 Hex:中断任务解 除(计数模式、开始加 法计数) 开始计时。执行本指令后,将以用 S 指定的时间间隔 启动定时中断任务。 ・在非复位启动指定中,要另行通过 CLI 指令指定初次 中断开始时间,在此基础上内部计时器的目前值将不 注:CP1H Y 型、CP1L 中,不使用中断输入 6、7。 CP1L 14 点输入输出型,不可使用输入中断 4、5、6、 7。 会被清除,将延续前次启动时的值进行使用。因此, 没有使用 CLI 指令指定初次中断开始时间的情况下, 本指令执行后,初次定时中断任务到启动为止的时间 无法确定。此外,这样的情况下,第 2 次以后将以指 定的 MSKS 指令指定的时间间隔启动定时中断任务。 3-468 中断控制指令 中断屏蔽设置 MSKS(690) 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 MSKS @MSKS 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 区域 CIO(输入输出继电器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) N S ― 0000~6143 ― W000~511 ― H000~511 ― A000~959 ― T0000~4095 ― C0000~4095 ― D00000~32767 ― @D00000~32767 ― *D00000~32767 参照前页 ― DR0~15 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) -(― ―)IR0~15 状态标志的动作 名称 出错标志 标记符 ER =标志 = 否定标志 N 注. 内容 ・N 的数据不在指定范围内时为 ON) ・S 的数据不在 0000~270F Hex (0.1ms 单位的 情况下 0005~270FHex)的范围内时,为 ON(定时中断指定时) ・除此之外为 OFF OFF OFF 请注意 ・请将定时中断任务的时间间隔设定长于中断任务实际 执行所需要的时间。 3 ・在中断任务过程中,对 CJ 系列特殊 I/O 单元执行 IORF 各 指令的情况下,请务必将 PLC 设定中的“特殊 I/O 单 指 元周期刷新”禁止。否则 IORF 可能在周期刷新时被 令 执行,导致一个“多重刷新错误”的非致命错误,并 说 将中断任务错误标志置 ON。 明 参考 ・中断任务的最大处理时间包含在特殊辅助继电器 A440 CH 中(执行最大处理时间的中断任务时)。同 时相应的中断任务号包含在特殊辅助继电器 A441 CH 的低字节中。 相关 PLC 系统设定 名称 内容 设定 定时中断单 在一定时间间隔下,设定 00 Hex:10ms(初始值) 位时间设定 执行中断任务程序定时 01 Hex:1.0ms 中断情况下的单位时间。 02 Hex:0.1ms 定时中断时间的设定可 通过 MSKS(中断屏蔽设 置)指令进行指定。 相关特殊辅助继电器 名称 地址 内容 中断任务异 A402.13 下一次将为(ON)。 常标志 ・在未将高功能 I/O 再点击刷新设 中断任务异 常要因标志 中断任务异 A426.15 A426.00 置为禁止的状态下,在中断任务 中,将要通过 IORF 指令执行 I/O 刷新时。 包括多重刷新对象的高功能 I/O 单 中 断 控 制 常发生任务 ~ 元的编号 No. 指 编号 A426.11 令 ・在以下任何一种情况下为出错,ER 标志为 ON。 -N 的数据不在指定范围内时 -I/O 中断指定时:S 的内容不在 0000~0003 Hex 的范围 内时(内置输入中断使用时) -定时中断指定时:S 的内容不在 0000~270F Hex (0.1ms 单位的情况下为 0005~270F Hex)的范围内时 ・执行指令时,=标志及 N 标志为 OFF。 3-469 中断控制指令 中断屏蔽设置 MSKS(690) 动作说明 (例) 3 各 指 令 说 明 中 断 控 制 指 令 3-470 中断控制指令 3-197 中断屏蔽前导 MSKR(692) 概要 3-197 割込マスクリード MSKR(692) 读取通过 MSKS 指令指定的中断控制的设定。 符号 N:控制数据 D:输出 CH 编号 (2)定时中断时 用 N 指定定时中断编号和读取数据的种类,在 D 中 指定包括该值在内的频道。 数据 数据内容 定时中断时间读取时 定时中断用内部计时 器的现在值(初次启 动或前次的定时中断 3 各 指 令 处理开始的经过时 说 间)读取时 明 操作数说明 N 定时中断 0 4 14 (中断任务 No.2) (1)输入中断时 用 N 指定输入中断编号,用 D 读取设定内容。 数据 数据内容 中断输入的上升沿/ 中断输入的屏蔽解 下降沿指定读取时 除/屏蔽指定时 N 输入中断 0 110(或 10) 100(或 6) (中断任务 No.140) 输入中断 1 111(或 11) 101(或 7) (中断任务 No.141) D PLC 系统 10ms 设定“定时 1ms 中断时间 设定” 0.1ms 0 (0000 Hex): 禁止执行定时中断 1~9999 (0001~270F Hex): 定时中断时间(设定 值) 10~99990ms 1~9999ms 0.1~999.9ms 0~9999 (0000~270F Hex): 内部计时器现在值 (注) 0~99990ms 0~9999ms 0~999.9ms 输入中断 2 (中断任务 No.142) 输入中断 3 (中断任务 No.143) 112(或 12) 113(或 13) 102(或 8) 103(或 9) 注:即使在定时中断执行停止过程中,也可以读取停止点 之前的经过之间。一次也没有启动指定定时中断的情况 下,读取值为 0。 输入中断 4 (中断任务 No.144) 输入中断 5 (中断任务 No.145) 输入中断 6 (中断任务 No.146) 输入中断 7 (中断任务 No.147) D 114 115 116 117 0000 Hex: 检测启动 0001 Hex: 检测关闭 104 功能说明 105 根据 N 的值,来指定是将输入中断作为对象,还是将定 时中断作为对象。 106 (1)输入中断(N=100~107、110~117、或 6~13) 中 将用 N 指定的中断输入的屏蔽状态或触发器指定(启动 断 107 检测/关闭检测)向 D 输出。 控 制 0000 Hex: (2)定时中断(N=4、14) 指 令 中断屏蔽解除(直接 将用 N 指定的定时中断的定时中断时间(设定值)或内 模式) 部计时器的现在值以 Hex 值的形式向 D 输出。被输出值 0001 Hex: 中断屏蔽 的单位根据 PLC 系统设定“定时中断单位时间设定”。 0002 Hex: 中断屏蔽解除 (计时模式、减法计 时开始) 0003 Hex: 中断屏蔽解除 (计时模式、加法计 时开始) 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 MSKR @MSKR 无 无 注:CP1H Y 型、CP1L 中,不使用输入中断 6、7。 CP1L 14 点输入输出型,不可使用输入中断 4、5、6、 7。 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 3-471 中断控制指令 中断屏蔽前导 MSKR(692) 数据内容 区域 3 CIO(输入输出继电器等) 各 内部辅助继电器 指 令 保持继电器 特殊辅助继电器 时间 说 计数器 明 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) 动作说明 (例) N ― ― ― ― ― ― ― ― ― 前页 参照 ― ― D 0000~6143 W000~511 H000~511 A448~959 T0000~4095 C0000~4095 D00000~32767 @D00000~32767 *D00000~32767 ― DR0~15 ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER 内容 ・N 的数据不在指定范围内时为 ON ・除此之外为 OFF 注: ・本指令无论在周期执行任务内,或在中断任务内,都可 使用。 ・N 的数据不在指定范围内时,表示出错,ER 标志为 ON。 中 断 控 制 指 令 3-472 中断控制指令 3-198 中断解除 CLI(691) 概要 功能说明 3-198 割込解除 CLI(691) 进行输入中断要因的记忆解除/保持、定时中断的初次中 根据 N 的值,来指定是进行输入中断要因的记忆的解除 断开始时间的设定、或高速计数中断要因的记忆的解除/ /保持,还是进行定时中断的初次中断开始时间设定,或 3 保持。 者高速计数器中断要因的记忆的解除/保持。 各 指 符号 (1)输入中断(N=100~107 或 N=6~9) 令 通过 S 来解除或保持用 N 指定的输入中断编号相对应的 说 中断要因的记忆状态。 明 (1)输入中断时 用 N 指定输入中断编号,用 S 指定动作。 数据 数据内容 N 中断输入编号(用 N 指定输入中断编号,用 S 指定动作。 100(或 6):输入中断 0(中断任务 No.140) 101(或 7):输入中断 1(中断任务 No.141) 在执行输入中断任务过程中,可接收其他编号的中断输 入在进行 OFF→ON 的情况下,一旦该中断要因被记忆 102(或 8):输入中断 2(中断任务 No.142) 103(或 9):输入中断 3(中断任务 No.143) 104 :输入中断 4(中断任务 No.144) 到内部,(只要不执行该 CLI(中断解除)指令)那么 被记忆保持的所有输入中断编号的中断任务将按编号从 小到大的顺序执行。 ~ ~ 107 :输入中断 7(中断任务 No.147) S 中断要因记忆解除指定 0001 Hex:记忆解除 因此,要使输入中断任务执行过程中记忆的中断要因无 效时,可通过该 CLI(中断解除)指令,解除被记忆到 内部的中断要因。 0000 Hex:记忆保持 注:CP1H Y 型、CP1L 中,不使用输入中断 6, 7。 CP1L 14 点输入输出型,不可使用输入中断 4、5、6、 (2)定时中断(N=4) 对于用 N 指定的编号的定时中断,用 S 指定初次中断开 始时间。 7。 中 (2)定时中断时 断 控 用 N 指定定时中断编号,用 S 指定初次中断开始时间。 制 指 数据 N 定时中断编号 数据内容 (3)高速计数器中断(N=10~13) 令 4:定时中断 0(中断任务 No.2) S 0000~270F Hex:初次中断开始时间(0~9999) 注:单位时间可通过 PLC 系统设定(定时中断单位时间设定) 通过 S,来解除或保持用N指定编号的高速计数器中断 的中断要因(目标值一致或带域比较)的记忆状态。 来设定 10ms/1.0ms/0.1ms 中的任何一个。 (3)高速计数器中断时 用N指定高速计数器中断编号,用 S 指定动作。 数据 数据内容 N 高速计数器中断编号 10:高速计数器中断 0 11:高速计数器中断 1 12:高速计数器中断 2 13:高速计数器中断 3 S 中断要因记忆解除指定 0001 Hex:记忆解除 0000 Hex:记忆保持 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 MSKR @MSKR 无 无 中断任务 程序区域 可 3-473 中断控制指令 中断解除 CLI(691) 数据内容 区域 3 CIO(输入输出继电器等) 各 内部辅助继电器 指 保持继电器 令 特殊辅助继电器 说 时间 明 计数器 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 数据寄存器 常数 变址寄存器(直接) 变址寄存器(间接) N S ― 0000~6143 ― W000~511 ― H000~511 ― A000~959 ― T0000~4095 ― C0000~4095 ― D00000~32767 ― @D00000~32767 ― *D00000~32767 ― DR0~15 参照前页 ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 状态标志的动作 名称 出错标志 标记符 ER 内容 ・N 的数据不在指定范围内时为 ON ・S 的数据不在 0000~0001 Hex 范围内时为 ON(输入中断或高速计数器中断指定时) ・S 的数据不在 0000~270F Hex 范围内时, 为 ON(定时中断指定时) ・除此之外为 OFF 中 断 动作说明 控 制 (例) 指 令 注: ・对于同一输入中断的要因,将不会重复记忆,之后产生 的要因将被忽略。此外,由于中断要因的记忆所相对应 的中断任务的执行终止前将一直持续,所以在执行过程 中,再次发生同一编号的中断要因也将被忽略。 3-474 中断控制指令 3-1599 中断任务执行禁止 DI(693) 概要 注: 3-199 割込タスク実行禁止 DI(693) 禁止执行所有的中断任务。 ・禁止状态可通过 EI(解除中断任务执行禁止)指令来解 除。 3 符号 ・本指令在中断任务内不可执行。在中断任务内执行时, 各 将表示出错,ER 标志为 ON。 指 令 执行条件/每次刷新指定 说 功能说明 ON 时每周期执行 DI 明 ・在周期执行任务中使用,禁止所有中断任务(输入中 执行条件 上升沿时 1 周期执行 @DI 断任务、定时中断任务、高速计数器中断任务、外部 中断任务)的执行。 下降沿时 1 周期执行 无 每次刷新指定 无 在执行解除禁止中断任务执行(EI)之前的时间段内, 在中断任务的执行暂时停止时使用。 使用限制 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 使用 可 可 可 不可 状态标志的动作 名称 出错标志 标记符 ER 内容 在中断任务执行时为 ON,除此以外时为 OFF 动作说明 (例) 中 断 控 制 指 令 注:通过本指令使所有中断任务处于执行禁止的情况时: 无法进行超越周期执行任务的禁止。 需要在多个周期执行任务中进行禁止的情况下,请在各个周期执行任务中输入本指令。但是,在 1 个周期执行任务执 行过程中发生的中断只要不(通过 CLI 指令)解除中断要因的记忆,都将在周期执行任务终止后执行。 3-475 中断控制指令 中断任务执行禁止 DI(693) (例) 3 各 指 令 说 明 中 断 控 制 指 令 3-476 中断控制指令 3-200 解除中断任务执行禁止 EI(694) 概要 执行条件/每次刷新指定 3-200 割込タスク実行禁止解除 EI(694) 解除通过 DI 指令设定的所有中断任务的执行禁止。 符号 ON 时每周期执行 MSKR 执行条件 上升沿时 1 周期执行 无 3 下降沿时 1 周期执行 无 各 每次刷新指定 无 指 令 使用限制 说 功能说明 区域 块程序区 工程步进 子程序区域 中断任务 明 ・在周期执行任务内使用,解除通过 DI(禁止执行中断 任务)指令被禁止执行的所有中断任务(输入中断任 域 使用 可 程序区域 可 程序区域 可 不可 务、定时中断任务、高速计数器中断任务、外部中断 任务)的执行禁止。 注: 状态标志的动作 名称 出错标志 标记符 ER 内容 在中断任务执行时为 ON,除此以外时为 ·本指令无需输入条件(功率流)。 OFF ·本指令能解除通过 DI(解除中断任务执行禁止)指令被 暂时禁止的状态。对于用 MSKS(中断屏蔽设置)指令 没有设定可以输入中断(可接收)或可定时中断处理的 中断任务 No.,通过本指令也不能使其接收。 ·本指令在中断任务内不可执行。在中断任务内执行时, 将表示出错,ER 标志为 ON。 动作说明 (例) 中 断 控 制 指 令 3-477 中断控制指令 3 各 指 令 说 明 中 断 控 制 指 令 3-478 高速计数/脉冲输出指令 项目号 3-201 3-202 3-203 3-204 3-205 3-206 3-207 3-208 3-209 3-210 指令语句 动作模式控制 脉冲当前值读取 脉冲频率转换 比较表登录 快速脉冲输出 脉冲量设置 定位 频率加减速控制 原点搜索 PWM 输出 助记符 INI PRV PRV2 CTBL SPED PULS PLS2 ACC ORG PWM FUN 编号 880 881 883 882 885 886 887 888 889 891 页码 3-480 3-482 3-485 3-487 3-490 3-494 3-496 3-501 3-505 3-507 3-479 高速计数/脉冲输出指令 3-201 动作模式控制 INI(880) 概要 3-201 動作モードコントロール INI(880) 对于内置输入输出执行以下的动作。 3 ・开始与高速计数器比较表的比较 各 指 令 ・停止与高速计数器比较表的比较 ・高速计数器当前值变更 说 ・变更中断输入(计数模式)的当前值 明 ・变更脉冲输出当前值(原点固定为 0) ・脉冲输出停止 符号 功能说明 对于由 C1 指定的端口,进行由 C2 指定的控制。 下表为能够指定的 C1 和 C2 的组合. C1(端口指定) C2(控制数据) 比较开始 比较停止 当前值变更 脉冲输出停 (0000 (0001 (0002 止 Hex) Hex) Hex) (0003 Hex) 脉冲输出 (0000~0003 Hex) × × ○ ○ 操作数说明 高速计数输入 (0010~0013 Hex) ○ ○ ○ × 中断输入 C1:端口指定 (计数模式) × × ○ × (0100~0107 Hex) 0000 Hex:脉冲输出 0 0001 Hex:脉冲输出 1 PWM 输出 × × × ○ (1000, 1001 Hex) 0002 Hex:脉冲输出 2(仅 CP1H) 比较开始(C2=0000 Hex) 0003 Hex:脉冲输出 3(仅 CP1H) 通过比较表登录(CTBL)指令,开始登录的比较表和高 0010 Hex:高速计数器输入 0 速计数当前值之间的比较。 0011 Hex:高速计数器输入 1 0012 Hex:高速计数器输入 2 注:比较表没有被登录时,本指令为出错,不被执行。 0013 Hex:高速计数器输入 3 比较停止(C2=0001 Hex) 0020 Hex:变频器定位 0(仅 CP1L) 高 速 0021 Hex:变频器定位 1(仅 CP1L) 计 0100 Hex:中断输入 0(计数模式) 数 0101 Hex:中断输入 1(计数模式) 脉 / 0102 Hex:中断输入 2(计数模式) 冲 输 出 0103 Hex:中断输入 3(计数模式) 0104 Hex:中断输入 4(计数模式)*1 指 0105 Hex:中断输入 5(计数模式)*1 令 0106 Hex:中断输入 6(计数模式)*2 0107 Hex:中断输入 7(计数模式)*2 1000 Hex:PWM 输出 0 1001 Hex:PWM 输出 1 通过比较表登录(CTBL)指令,停止登录的比较表和高 速计数当前值之间的比较。 当前值变更(C2=0002 Hex) 控制对象 控制内容 可变更范围 脉冲输出 (C1=0000~0003 Hex) 进行脉冲输出当前值 80000000~ 的变更。将变更的值设 7FFFFFFF Hex 定在 S+1、S 中。 (-2147483648~ 注:本指令只有在脉冲 2147483647) 输出停止中才能 执行。在脉冲输出 中执行时为出错。 高速计数输 线形 相差位输 变更高速计数当前值。 80000000~ 入 模式 入/加减 将变更的值设定在 7FFFFFFF Hex (C1=0010 时 法脉冲输 S+1、S 中。 (-2147483648~ *1. 不可使用 CP1L 14 点输入输出型 ~0013 Hex) 入/脉冲 注:指定端口不为高速 2147483647) +方向输 计数的设定时,本 *2. CP1H Y 型及 CP1L 中,不可使用输入中断。 入 加法脉冲 指令为出错。 00000000~ C2:控制数据 0000 Hex:比较开始 0001 Hex:比较停止 输入 链路模式时 FFFFFFFF Hex (0~4294967295) 00000000~ FFFFFFFF Hex 0002 Hex:变更当前值 0003 Hex:停止脉冲输出 中断输入(计数模式) (C1=0100~0107 Hex) (0~4294967295) 变更中断输入(计数模 00000000~ 式)当前值。将变更的 0000FFFF Hex S:变更数据保存低位 CH 编号 值设定在 S+1、S 中。 (0~65535) 注:指定上述范围 指定变更当前值 (C2=0002 Hex)时,保存变更数 据。 外的值时为出 错。 指定变更当前值以外的值时,不使用此操作数的值。 3-480 高速计数/脉冲输出指令 动作模式控制 INI(880) 脉冲输出停止(C1=0000~0003, 1000, 1001 Hex、C2 =0003 Hex) 状态标志的动作 停止指定端口的脉冲输出。(立即停止) 名称 标记符 内容 此外,在脉冲输出停止状态下执行本指令时,清除脉冲 出错标志 ER ・超过 C1、C2、S 所指定的范围时为 ON 3 量设定。 ・C1 和 C2 不对应时为 ON 各 ・在比较表中没有登录而要指定比较开始时为 指 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 INI @INI ON ・在进行脉冲输出的端口指定当前值变更时为 令 说 ON ・在没有设定高速计数的端口指定高速计数当前 明 下降沿时 1 周期执行 无 值变更时为 ON 每次刷新指定 无 ・变更中断输入(计数模式)当前值,指定范围 之外的值时为 ON 使用限制 ・在 CTBL 指令执行中需要中断,在中断任务内 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 执行高速计数输入指定的 INI 指令时为 ON ・在没有设定中断输入(计数模式)的端口,执 行指令时为 ON ・除此之外为 OFF 数据内容 区域 C1 C2 S CIO(输入输出继电 ― ― 器等) 0000~6142 内部辅助继电器 ― ― W000~510 保持继电器 ― ― H000~510 特殊辅助继电器 ― ― A000~958 时间 ― ― T0000~4094 计数器 ― ― C0000~4094 数据内存(DM) ― ― D00000~32766 DM 间接(BIN) ― ― @D00000~32767 DM 间接(BCD) ― ― *D00000~32767 常数 参照前页 参照前页 ― 数据寄存器 ― ― ― 变址寄存器(直接) ― ― ― 高 变址寄存器(间接) ― ― ,IR0~15 速 -2048~+2047,IR0~15 计 DR0~15, IR0~15 数 ,IR0~15+(++) 脉 ,-(--)IR0~15 冲 输 动作说明 出 (例) 指 令 0.00 由 OFF→ON 时,通过 SPED 指令,采用连续模式,开始从脉冲输出 0 中输出 500 Hz 的脉冲。0.01 由 OFF→ ON 时,通过 INI 指令停止脉冲输出。 / 3-481 高速计数/脉冲输出指令 3-202 脉冲当前值读取 PRV(881) 概要 注:CP1H Y 型、CP1L 中,不使用输入中断 6、7。 3-202 脉冲当前值读取 PRV(881) CP1L 14 点输入输出型,不可使用输入中断 4、5、6、 读取以下内置输入输出的数据。 3 ・当前值(高速计数器当前值、脉冲输出当前值、中断 7。 各 输入(计数模式)当前值) C2:控制数据 指 令 ・状态信息 说 明 状态种类 脉冲输出状态 内容 ・脉冲输出状态 ・当前值溢出/下溢 0000 Hex:读取当前值 0001 Hex:读取状态 0002 Hex:读取区域比较结果 00□3 Hex:C1=0000 Hex 或 0001 Hex 时:读取脉 ・脉冲输出量设定 ・脉冲输出结束 冲输出为 0 或 1 的频率 ・脉冲输出进行中 C1=0010 Hex 时:读取高速计数输入 ・无原点标志 ・原点停止标志 ・脉冲输出停止异常标志 为 0 的频率 0003 Hex:通常方式 高速计数器输入状态 PWM 输出状态 ・区域比较结果 ・比较动作 ・当前值溢出/下溢 脉冲输出中 0013 Hex:高频率对应・10ms 采样方式 0023 Hex:高频率对应・100ms 采样方式 0033 Hex:高频率对应・1s 采样方式 ・脉冲输出的频率(脉冲输出从 0 到 3) D:当前值保存低位 CH 编号 ・高速计数的频率(只有高速计数输入 0) 符号 操作数说明 高 速 计 C1:端口指定 0000 Hex:脉冲输出 0 数 0001 Hex:脉冲输出 1 脉 / 0002 Hex:脉冲输出 2(仅 CP1H) 冲 输 出 0003 Hex:脉冲输出 3(仅 CP1H) 0010 Hex:高速计数器输入 0 指 0011 Hex:高速计数器输入 1 令 0012 Hex:高速计数器输入 2 0013 Hex:高速计数器输入 3 0020 Hex:变频器定位 0 (仅 CP1L) 0021 Hex:变频器定位 1 (仅 CP1L) 0030 Hex:偏差计数器 0(带符号)(仅 CP1L) 0031 Hex:偏差计数器 1(带符号)(仅 CP1L) 0040 Hex:偏差计数器 0(无符号)(仅 CP1L) 0041 Hex:偏差计数器 1(无符号)(仅 CP1L) 0100 Hex:中断输入 0(计数器模式) 0101 Hex:中断输入 1(计数器模式) 0102 Hex:中断输入 2(计数器模式) 0103 Hex:中断输入 3(计数器模式) 0104 Hex:中断输入 4(计数器模式) 0105 Hex:中断输入 5(计数器模式) 0106 Hex:中断输入 6(计数器模式) 0107 Hex:中断输入 7(计数器模式) 1000 Hex:PWM 输出 0 1001 Hex:PWM 输出 1 功能说明 在 C1 指定的端口读取由 C2 指定的数据。 下表为能够指定的 C1 和 C2 的组合。 C1(端口指定) C2(控制数据) 当前值读取 状态读取 区域比较 (0000 Hex) 脉冲输出 (0000~0003 Hex) ○ 高速计数输入 (0010~003 Hex) ○ (0001 Hex) ○ 结果读取 (0002 Hex) × ○ ○ 中断输入 (计数模式) ○ × × (0100~0107 Hex) PWM 输出 (1000, 1001 Hex) × ○ × 脉冲输出/高 速计数频率读 取 (0003 Hex) ○ ○ (只有高速计 数 0) × × 3-482 高速计数/脉冲输出指令 脉冲当前值读取 PRV(881) 当前值读取(C2=0000 Hex) 对象 内容 读取的结果范围 脉冲输出 (C1=0000~0003 Hex) 读取脉冲输出当前值 保存到 D+1, D。 80000000~ 7FFFFFFF Hex (-2147483648~ 高速计数输 线形模式时 入 (C1=0010 ~0013 Hex) 环形模式时 2147483647) 读取高速计数当前值, 80000000~ 保存到 D+1, D。 7FFFFFFF Hex (-2147483648~ 2147483647) 00000000~ FFFFFFFF Hex (0~4294967295) 中断输入(计数模式)(C1 读取中断输入(计数模 0000~FFFF Hex =0100~0107 Hex) 式)当前值,保存到 D。(0~65535) 状态读取(C2=0001 Hex) 对象 内容 读取的结果范围 脉冲输 读取脉冲输 出 出的状态,保 存到 D。 高速计 读取高速计 数输入 数的状态,保 存到 D。 PWM 输出 读取 PWM 输出的状态, 保存到 D。 读取区域比较结果(C2=0002 Hex) 通过区域比较型对高速计数进行比较时,读取 PRV 指令 执行时的比较结果,保存到 D。 脉冲输出或高速计数频率读取(C2=00□3 Hex) 读取从脉冲输出 0~3 中输出的脉冲频率(Hz)或输入 到高速计数 0 的脉冲频率(Hz),保存到 D+1, D 中。 3 C1=0000 Hex~0003 Hex 时: 各 ・CP1H X/XA 型 脉冲输出 2~3(单元版本 Ver.1.0) 指 的频率读取 令 转换结果=00000000~00007530 Hex(0~30,000) ・CP1H X/XA 型 脉冲输出 0~1、脉冲输出 2~3(单 说 明 元版本 Ver.1.1 以上)、Y 型 脉冲输出 2~3、CP1L 的频率读取 转换结果=00000000~000186A0 Hex(0~100,000) ・CP1H Y 型 脉冲输出 0~1 的频率读取 转换结果=00000000~000F4240 Hex(0~1,000,000) C1=0010 Hex 时: 读取高速计数输入 0 的频率 计数输入方式为相位差 4 倍以外时: ・CP1H X/XA 型、CP1L 时: 转换结果=00000000~000186A0 Hex(0~100,000) 注:输入超过 100kHz 的频率时,输出值由最大值 (000186A0 Hex)固定。 ・CP1H Y 型时: 转换结果=00000000~000F4240 Hex(0~1,000,000) 注:输入超过 1MHz 的频率时,输出值由最大值 (000F4240 Hex)固定。 计数输入方式为相位差 4 倍频时: ・CP1H X/XA 型、CP1L 时: 转换结果=00000000~00030D40 Hex(0~200,000) 高 注:输入超过 200kHz 的频率时,输出值由最大值 速 计 (00030D40 Hex)固定。 数 ・CP1H Y 型时: 脉 转换结果=00000000~001E8480 Hex(0~2,000,000) 冲 输 注:输入超过 2MHz 的频率时,输出值由最大值 出 (001E8480 Hex)固定。 ●脉冲频率的计算方式: 指 令 在计算从脉冲输出 0~3 中输出的脉冲频率(Hz)或输 入到高速计数 0 中的脉冲频率(Hz)的方式中,大致 可以分成以下 2 种方式。 ・通常方式(来自传统的方式):与频率的大小无关 地,用每个脉冲计数时钟的计数来进行计算的方式。 在高频率时,产生脉冲上升沿/下降沿的失真,引起 误差(参考:100kHz 中最大为 1%的误差。1MHz 时的最大误差为(5%))。 / 3-483 高速计数/脉冲输出指令 脉冲当前值读取 PRV(881) ・高频率对应方式:用高频率和低频率来切换测量的 方式。 状态标志的动作 3 在 1kHz 以上的高频率时,测量一定时间(采样时 间)内的计数脉冲,计算出频率。根据采样时间的 名称 出错标志 标记符 内容 ER ・超过由 C1, C2 指定的范围时为 ON 各 指 令 说 宽度可以选择以下的 3 个种类。由 C2 的第 2 低位 进行指定。 ・高频率对应•10ms 采样方式(计算每 10ms 的脉冲数 明 的方式): C2=0013 Hex ・C1 和 C2 不对应时为 ON ・不在区域比较动作中时,指定并读取区域比较 结果时为 ON ・在高速计数 0 以外,指定并读取输入频率时为 ON ・对于作为高速计数没有被设定的端口,在执行 指令时为 ON (参考:100kHz 中最大误差为 0.1%。 ・在没有设定中断输入(计数模式)的端口,执 1kHz 时最大误差为(10%)) ・高频率对应•100ms 采样方式(计算每 100ms 的脉冲 行指令时为 ON ・除此之外为 OFF 数的方式): C2=0023 Hex (参考:100kHz 中最大误差为 0.01%。 1kHz 时最大误差为(1%)) ・高频率对应•1s 采样方式(计算每 1s 的脉冲数的方 式): C2=0023 Hex (参考:100kHz 中最大误差为 0.001%。 1kHz 时最大误差为(0.1%)) 动作说明 (例 1) 0.00 由 OFF→ON 时,通过 CTBL 指令,将区域比较表 登录到高速计数输入 0 中,开始进行比较。 0.01 由 OFF→ON 时,通过 PRV 指令,将该时的区域比 较结果读入 100.00 中。 在不满 1kHz 的低频率时,采用通常方式来计算频 率。 执行条件/每次刷新指定 ON 时每周期执行 PRV 执行条件 上升沿时 1 周期执行 @PRV 下降沿时 1 周期执行 无 高 每次刷新指定 无 速 计 使用限制 数 脉 冲 输 / 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 出 指 数据内容 令 区域 C1 C2 D CIO(输入输出继电 ― ― 器等) 0000~6142 内部辅助继电器 ― ― W000~510 保持继电器 ― ― H000~510 特殊辅助继电器 ― ― A448~958 时间 ― ― T0000~4094 计数器 ― ― C0000~4094 数据内存(DM) ― ― D00000~32766 DM 间接(BIN) ― ― @D00000~32767 DM 间接(BCD) ― ― *D00000~32767 常数 参照前页 参照前页 ― 数据寄存器 ― ― ― 变址寄存器(直接) ― ― ― 变址寄存器(间接) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15, IR0~15 ,IR0~15+(++) ,-(--)IR0~15 (例 2) 0.01 为 ON 时,通过 PRV 指令,在该状态下读取输入到 高速计数输入 0 中的脉冲频率,由 16 进制数输出到 D201, D200 中。 3-484 高速计数/脉冲输出指令 3-203 脉冲频率转换 PRV2(883) 概要 3-203 パルス周波数変換 PRV2(883) 读取输入到高速计数器中的脉冲频率,转换成旋转速度 (旋转数)或将计数器当前值转换成累计旋转数,用 16 进制数 8 位来输出结果。仅可在高速计数器 0 中使用。 符号 操作数说明 C1:控制数据 0□﹡0 Hex:频率-旋转速度转换 (□为单位、*为指定频率计算方式) 0001 Hex:计数当前值-累计旋转数转换 C1: 0 转换种类:0 Hex:频率-旋转速度转换 1 Hex:计数器当前值-累计旋转数转换 (转换种类:频率-旋转速度转换) 脉冲频率计算方式: 0 Hex:通常方式 1 Hex:高频率对应方式・10 ms 采样方式 2 Hex:高频率对应方式・100 ms 采样方式 3 Hex:高频率对应方式・1000 ms 采样方式 (转换种类:频率-旋转速度转换) 旋转速度单位:0 Hex:r/min 1 Hex:r/sec 2 Hex:r/hr C2:系数指定 0001~FFFF Hex:旋转 1 次的脉冲数 D:转换结果保存目的地低位 CH 编号 功能说明 使用由 C2 指定的系数,采用 C1 的转换方法,将输入到 高速计数 0 中的脉冲频率输出到 D。 利用 C1 选择以下 2 种转换方法中的任何一种。 ・频率-旋转速度转换(C1=0□*0 Hex)时 (□为单位、*为指定频率计算方式) 1)旋转速度单位: 按旋转速度单位有以下 3 个种类。 ・□=0 Hex 时,单位 r/min:从频率数据和每旋转 1 圈的脉冲数中计算旋转速度(r/min)。 转换结果(r/min)=(频率/每旋转 1 圈的脉冲数) ×60 ・□=1 Hex 时,单位 r/s:从频率数据和每旋转一圈 的脉冲数中计算旋转速度(r/sec)。 转换结果(r/sec)=(频率/每旋转一圈的脉冲数) ・□=2 Hex 时,单位 r/hr:从频率数据和每旋转一圈 的脉冲数中计算旋转速度(r/hr)。 3 各 指 转换结果(r/hr)=(频率/每旋转一圈的脉冲数)× 令 60×60 说 明 频率/每 1 次回转的脉冲数为以下范围。 -计数输入方式为相位差 4 倍频以外时: ・CP1H X/XA 型、CP1L 时 转换结果=00000000~000186A0 Hex(0~100,000) ・CP1H Y 型时 转换结果=00000000~000F4240 Hex(0~1,000,000) -计数输入方式为相位差 4 倍频: ・CP1H X/XA 型、CP1L 时 转换结果=00000000~00030D40 Hex(0~200,000) ・CP1H Y 型时 转换结果=00000000~001E8480 Hex(0~2,000,000) 输入超过最大输入频率的频率时,输出值由最大值进 行固定。 ※CP1H Y 型的转换结果(r/hr)上溢时为固定在 FFFFFFFF。 2)脉冲频率的计算方式: 高 速 在计算输入到高速计数 0 的脉冲频率(Hz)的方式中, 计 大致可以分成以下 2 种方式。 数 ・通常方式(来自传统的方式): C1=0□00 Hex 时 与频率的大小无关地用每个脉冲 脉 冲 输 数来进行计算的方式。在高频率时,产生脉冲上升 出 沿/下降沿的失真,引起误差(参考:100kHz 中最大 为 1%的误差)。 指 令 ・高频率对应方式: 用高频率和低频率来切换测量的方式。 在 1kHz 以上的高频率时,测量一定时间(采样时间) 内的计数脉冲,计算出频率。根据采样时间的宽度 可以选择以下的 3 个种类。用 C1 的第 2 低位进行指 定。 ・高频率对应・10ms 采样方式(计算每 10ms 的 脉冲数的方式):C1=0□10 Hex 时(参考:1kHz 中最大为 10%的误差) / 3-485 高速计数/脉冲输出指令 脉冲频率转换 PRV2(883) ・高频率对应・100ms 采样方式(计算每 100ms 中的脉冲数的方式):C2=0□20 Hex 时(参考: 状态标志的动作 3 各 指 令 说 明 1kHz 中最大为 1%的误差) ・高频率对应・1s 采样方式(计算每 1s 的脉冲数 的方式):C2=0□30 Hex 时(参考:1kHz 中 最大为 0.1%的误差) 在不满 1kHz 的低频率时,采用通常方式来计算频 率。 名称 错误 标志 上溢 标志 标记符 ER OF 内容 ・为不使用高速计数 0 的设定时为 ON ・控制数据在范围外时为 ON ・系数指定为 0000 时为 ON ・除上述之外时为 OFF ・Y 型下结果超出最大值时为 ON ・除上述之外时为 OFF ・计数当前值-累计旋转数转换(C2=0001 Hex)时 动作说明 由计数当前值和每旋转一次的脉冲数来计算累计旋转 (例 1) 数。 0.01 为 ON 时,由 PRV2 指令读取该时输入高速计数输 转换结果=(计数当前值/每旋转一圈的脉冲数) 入 0 的脉冲频率,转换成旋转速度(r/min),由 16 进 执行条件/每次刷新指定 制数输出到 D201, D200 中。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 PRV2 @PRV2 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 (例 2) 0.01 为 ON 时,由 PRV2 指令读取该时的计数器当前值, 转换成累计旋转数,由 16 进制数输出到 D301, D300 中。 数据内容 区域 C1 C2 D CIO(输入输出继电 ― 器等) 0000~6143 0000~6142 内部辅助继电器 ― W000~511 W000~510 高 保持继电器 ― H000~511 H000~510 速 特殊辅助继电器 ― A000~959 A448~958 计 时间 数 计数器 ― T0000~4095 T0000~4094 ― C0000~4095 C0000~4094 脉 冲 输 / 数据内存(DM) DM 间接(BIN) ― D00000~32767 D00000~32766 ― @D00000~ @D00000~ 出 32767 32767 指 DM 间接(BCD) ― *D00000~32767 *D00000~32767 令 常数 前页 参照前页 ― 参照 数据寄存器 ― DR0~15 ― 变址寄存器 ― ― ― (直接) 变址寄存器 ― ,IR0~15 (间接) -2048~+2047,IR0~15 DR0~15, IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-486 高速计数/脉冲输出指令 3-204 比较表登录 CTBL(882) 概要 3-204 比較テーブル登録 CTBL(882) 对高速计数器当前值进行目标值一致比较或区域比较。 条件成立时执行中断任务。 只能登录比较表。只在进行登录时,由 INI 指令开始比 较或停止比较。 符号 ・指定区域比较表时 必须指定 8 个区域,为 40 CH 的固定长度。 设定值不满 8 个时,将 FFFF Hex 指定为中断任务 No.。 3 各 指 令 说 明 操作数说明 C1:端口指定 0000 Hex:高速计数器输入 0 0001 Hex:高速计数输器入 1 0002 Hex:高速计数器输入 2 0003 Hex:高速计数器输入 3 C2:控制数据 功能说明 对于由 C1 指定的端口,按由 C2 指定的方式,开始执行 与高速计数器当前值进行比较的表的登录和比较。 0000 Hex:登录目标值一致比较表并开始比较 0001 Hex:登录区域比较表并开始比较 另外,一旦表被登录直到登录不同表或者 CPU 切换「程 序」模式之前为有效。 0002 Hex:只登录目标值一致比较表 0003 Hex:只登录区域比较表 执行一次 CTBL 指令时,由指定条件开始进行比较动作。 S:比较表低位 CH 编号 因此基本上在输入微分型(带@)或 1 周期 ON 的输入 条件下使用。(由 C2 指定比较开始时) 高 ・ 指定目标值一致比较表时 速 根据 S 的比较个数,为 4~145 通道的可变长度。 注:作为程序在比较表中指定没有登录的中断任务 No.时, 当产生中断时,程序就会出错(运行停止异常)。 计 数 比较表登录(C2=0002, 0003 Hex) 脉 冲 只执行为了和高速计数当前值进行比较的表的登录。 输 这时候通过执行 INI 指令来开始比较。 出 指 登录比较表并开始比较(C2=0000, 0001 Hex) 令 登录为了和高速计数当前值进行比较的表,开始执行比 较。 比较的停止 在停止比较动作状态下,不管是使用 CTBL 指令开始进 行比较时,还是用 INI 指令开始进行比较时,都使用 INI 指令。 / 3-487 高速计数/脉冲输出指令 比较表登录 CTBL(882) 目标值一致比较 执行条件/每次刷新指定 高速计数当前值和表的目标值一致时,执行指定中断任 3 务。 执行条件 ON 时每周期执行 上升沿时 1 周期执行 CTBL @CTBL 各 ・对相同的中断任务 No.能够进行多个比较。 下降沿时 1 周期执行 无 指 ・作为一致条件,能够指定加法计数时的一致和减法计 每次刷新指定 无 令 说 明 数时的一致。 在表内的中断任务 No.的最高位中,指定 0 时为加法、 指定 1 时为减法。 使用限制 区域 块程序区 域 工程步进 程序区域 子程序区域 中断任务 程序区域 ・在比较表中能够登录最大为 48 个的目标值。另外在表 使用 可 可 可 可 的开头通道中设定指定个数(表的数据长:可变长度)。 ・对于登录在表中的所有值都进行和目标值的比较。 数据内容 注 1:在表中复数指定相同的目标值时就会出错。 区域 C1 C2 CIO(输入输出继电 ― ― S 0000~6143 注 2:高速计数被设定为加法脉冲模式时,作为一致条件, 指定减法时就会出错。 注 3:在和目标值一致的状态下,计数方向(加法/减法) 发生变化时,不能取得和在该方向上的下一个目标值 器等) 内部辅助继电器 保持继电器 特殊辅助继电器 时间 ― ― ― ― ― ― ― ― W000~511 H000~511 A448~959 T0000~4095 的一致。目标值请设定为与计数值变化的峰值及谷值 计数器 ― ― C0000~4095 不同的值。 数据内存(DM) ― ― D00000~32767 DM 间接(BIN) ― ― @D00000~32767 区域比较 高速计数器当前值在上限值和下限值中间时,执行指定 DM 间接(BCD) ― ― *D00000~32767 中断任务。 ・对相同的中断任务 No.能够进行多个比较。 常数 参照前页 参照前页 ― 数据寄存器 ― ― ― 变址寄存器(直接) ― ― ― ・在比较表中能够登录 8 个区域(上限值和下限值的设 变址寄存器(间接) ― ― ,IR0~15 置)。区域能够重复指定。 -2048~+2047,IR0~15 ・在不满 8 个时,通过将 FFFF Hex 指定为中断任务 No. 无视该区域的设定值(表的数据长:固定(40 CH))。 DR0~15, IR0~15 ,IR0~15+(++) ,-(--)IR0~15 高 速 计 数 ・只有在条件一致的上升沿时,执行中断任务。 在 1 周期的比较执行中,成为条件一致的上升沿的区 域为复数时,靠近表头的部分被优先执行,其它的部 状态标志的动作 名称 标记符 内容 脉 冲 输 出 指 / 分在下个周期之后被执行。另外在没有必要启动中断 任务时,请将 AAAA Hex 指定为中断任务 No.。这时 通过参照 PRV 指令的执行(读取区域比较结果)或区 域比较条件一致标志来确认比较结果。 出错标志 ER ・超过可由 C1、C2 指定的范围时为 ON ・在目标值一致比较中,将比较个数设定为 0 时为 ON ・在目标值一致比较中,将比较个数设定为超过 48 个值时为 ON 令 注 1:将上限值和下限值指定为相反时就会出错。 ・在目标值一致比较中,对同一目标值进行复数设 定时为 ON ・在区域比较中,反向设置上限值和下限值时为 ON ・在区域比较中,将所有的区域设定值设定为无效 时为 ON ・高速计数被设定为加法脉冲模式,作为一致条件 在指定减法时为 ON ・设定为高速计数的链路模式时,指定超过链路最 大值并执行指令时为 ON ・对于作为高速计数没有被设定的端口,在执行指 令时为 ON ・在比较动作执行中,用不同的比较方法执行指令 时为 ON ・除此之外为 OFF 3-488 高速计数/脉冲输出指令 比较表登录 CTBL(882) 动作说明 (例) 0.00 由 OFF→ON 时,由 CTBL 指令对高速计数输入 0 进行目标值一致比较表的登录和比较。 3 高速计数器当前值在加法方向上进行计数,当到达 500 时,由于和目标值 1 一致,因此执行中断任务 No.1。 接着继续进行加法计数,当到达 1,000 时,由于和目标值 2 一致,因此执行中断任务 No.2。 各 指 令 说 明 高 速 计 数 脉 冲 输 出 指 令 / 3-489 高速计数/脉冲输出指令 3-205 快速脉冲输出 SPED(885) 概要 目标频率上限值 3-205 周波数設定 SPED(885) 按输出端口指定脉冲频率,输出无加减速脉冲。 3 能够进行定位(独立模式)或速度控制(连续模式)。 各 指 令 说 还有在定位(独立模式)时,将 PULS 指令作为一组来 使用。 在脉冲输出中执行本指令时,能够变更当前脉冲输出的 明 「目标频率」。据此能够进行阶跃方式的速度变更。 端口 0 端口 1 端口 2 端口 3 X40/XA40 (Ver. 1.0) 100k 100k 30k 30k CP1H X40/XA40 (Ver. 1.1 以上) 100k 100k 100k 100k Y20 1M 1M 100k 100k CP1L 100k 100k - - / 符号 操作数说明 C1:端口指定 0000 Hex:脉冲输出 0 0001 Hex:脉冲输出 1 0002 Hex:脉冲输出 2(仅 CP1H) 0003 Hex:脉冲输出 3(仅 CP1H) 0020 Hex:变频器定位 0(仅 CP1L) 0021 Hex:变频器定位 1(仅 CP1L) C2:控制数据 高 速 计 数 脉 冲 输 出 指 令 功能说明 从由 C1 指定的端口中,通过由 C2 指定的方式和由 S 指 定的「目标频率」来执行脉冲输出。 执行一次 SPED 指令时,通过指定的条件,执行脉冲输 出。因此基本上在输入微分型(带@)或 1 周期 ON 的 输入条件下使用。 在独立模式中输出事先由 PULS 指令所设定的脉冲量 时,自动地停止脉冲输出。 在连续模式中,脉冲输出一直进行到执行停止脉冲输出 为止。 在独立模式下的脉冲输出中向连续模式变更时、以及在 连续模式下的脉冲输出中向独立模式的变更时,为出错, 不能被执行。 S:目标频率低位 CH 编号 3-490 高速计数/脉冲输出指令 快速脉冲输出 SPED(885) 连续模式(速度控制) 在执行停止脉冲输出之前继续进行脉冲的输出。 注:当转换到「程序」模式时立即停止脉冲输出。 3 操作 动作内容 使用示例 脉冲输出开 速度指定输出 始 使速度(频率)变 为阶跃式时 频率的变化 说明 进行指定频率的脉 冲输出。 使用步骤 指令语句 SPED(连续) 各 指 令 说 明 设定变更 阶跃式速度变更 希望在运行中变 更速度时 脉冲输出停 脉冲输出停止 止 即刻停止 脉冲输出停止 即刻停止 将脉冲输出中的频 SPED(连续) 率变更为阶跃式(上 ↓ 方或下方)。 SPED(连续) 即刻停止脉冲输出。 SPED(连续) ↓ INI 即刻停止脉冲输出。 SPED(连续) ↓ SPED(连续、目 标频率 0Hz) 高 速 计 数 脉 冲 输 出 指 令 / 3-491 高速计数/脉冲输出指令 快速脉冲输出 SPED(885) 独立模式(定位) 只输出由 PULS 指令设定的脉冲输出量。 3 注: 各 指 ・转换为「程序」模式时,立即停止脉冲输出。 令 ・在停止脉冲输出后再一次进行输出时,根据情况有必要用 PULS 指令来设定脉冲输出量。 说 ・有必要事先用 PULS 指令来设定脉冲输出量。即使在没有设定的状态下执行 SPED 指令时,也不会输出脉冲。 明 ・在根据 PULS 指令用绝对脉冲指定来设定移动脉冲量时,无视由本 SPED 指令的操作数所进行的方向指定(CW 方向/CCW 方向)。 操作 动作内容 使用示例 脉冲输出开 速度指定输出 进行无加减速 始 的定位时 频率的变化 说明 使用步骤 指令语句 按照指定脉冲输出的频率开始, PULS 输出指定脉冲量时,使其即刻停 ↓ 止。 SPED(独立) 注:不可变更定位(脉冲输出) 中的目标位置(脉冲量)。 设定变更 阶跃式速度变 希望在运行中 更 将速度变更为 阶跃式时 定位中,执行 SPED 指令,将脉 PULS 冲输出中的频率变更为阶跃式 ↓ (上方或下方)。该情况下,目 SPED(独立) 标位置(脉冲量)不变。 ↓ SPED(独立) 脉冲输出停 脉冲输出停止 即刻停止 止 (脉冲输出量 不保持) 高 速 计 数 脉 / 冲 脉冲输出停止 即刻停止 输 (脉冲输出量 出 不保持) 指 令 即刻停止脉冲输出。此时,当前 PULS 的脉冲输出量被清除。 ↓ SPED(独立) ↓ INI 即刻停止脉冲输出。此时,当前 PULS 的脉冲输出量被清除。 ↓ SPED(独立) ↓ SPED(独立、目 标频率 0Hz) 3-492 高速计数/脉冲输出指令 快速脉冲输出 SPED(885) 执行条件/每次刷新指定 状态标志的动作 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 数据内容 SPED @SPED 无 无 中断任务 程序区域 可 名称 标记符 内容 出错标志 ER ・超过 C1、C2、S 所指定的范围时为 ON 3 ・在 PLS2、ORG 指令中,在正在进行脉冲输出 各 的端口中,已经使用本指令时为 ON 指 ・在 SPED、ACC 指令中,在脉冲输出端口中, 改变并使用由本指令指定的独立/连续时为 ON ・在周期执行任务中执行控制脉冲输出的指令时 需要中断,在中断任务内执行本指令时为 ON 令 说 明 ・在未确定原点,由独立模式・绝对脉冲指定来 执行本指令时为 ON ・除此之外为 OFF 区域 C1 C2 S CIO(输入输出继电 ― ― 器等) 0000~6142 内部辅助继电器 ― ― W000~510 保持继电器 ― ― H000~510 特殊辅助继电器 ― ― A000~958 时间 ― ― T0000~4094 计数器 ― ― C0000~4094 数据内存(DM) ― ― D00000~32766 DM 间接(BIN) ― ― @D00000~32767 DM 间接(BCD) ― ― *D00000~32767 常数 参照前记 参照前记 参照前记 数据寄存器 ― ― ― 变址寄存器(直接) ― ― ― 变址寄存器(间接) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15, IR0~15 ,IR0~15+(++) ,-(--)IR0~15 高 动作说明 速 (例) 计 数 0.00 由 OFF→ON 时,通过 PULS 指令由相对脉冲指定将脉冲输出 0 的脉冲输出量设定为 5,000 脉冲。同时通过 SPED 脉 指令由 CW/CCW 方式、CW 方向、独立模式开始输出目标频率 500Hz 的脉冲。 冲 输 出 指 令 / 3-493 高速计数/脉冲输出指令 3-206 脉冲量设置 PULS(886) 概要 ・执行本指令后、即使通过动作模式控制(INI)指令进行 脉冲输出当前值的变更,也不能变更计算的移动脉冲量。 3-206 パルス量セット PULS(886) 3 各 指 令 设定脉冲输出量。 在由本指令设定的脉冲输出量的状态下,通过用独立模 式 来 执 行 频 率 设 定 ( SPED ) 指 令 或 频 率 加 减 速 控 制 (ACC)指令,来输出设定的脉冲量。 ・在由绝对脉冲指定设定移动脉冲量时,无视由 SPED 指 令以及 ACC 指令的操作数所指定的方向(CW 方向/CCW 方向)。 ・也能够进行在脉冲输出量的当前值范围(-2147483648~ 说 符号 明 2147483647)之外的移动的指定。 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 PULS @PULS 无 无 操作数说明 C1:端口指定 0000 Hex:脉冲输出 0 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 0001 Hex:脉冲输出 1 0002 Hex:脉冲输出 2(仅 CP1H) 数据内容 0003 Hex:脉冲输出 3(仅 CP1H) 0020 Hex:变频器定位 0(仅 CP1L) 0021 Hex:变频器定位 1(仅 CP1L) 区域 C1 C2 CIO(输入输出继电 ― ― 器等) 内部辅助继电器 ― ― S 0000~6142 W000~510 C2:控制数据 0000 Hex:相对脉冲指定 0001 Hex:绝对脉冲指定 保持继电器 特殊辅助继电器 时间 ― ― ― ― ― ― H000~510 A000~958 T0000~4094 S:脉冲输出量设定低位 CH 编号 计数器 ― ― 数据内存(DM) ― ― C0000~4094 D00000~32766 DM 间接(BIN) ― ― @D00000~32767 高 DM 间接(BCD) ― ― *D00000~32767 速 常数 参照左边 参照左边 参照左边 计 数据寄存器 ― ― ― 数 变址寄存器(直接) ― ― ― 脉 / 变址寄存器(间接) ― ― ,IR0~15 冲 输 出 根据相对脉冲指定和绝对脉冲指定,在实际中输出的移动 指 脉冲量分别为如下所示。 令 ・相对脉冲指定时 -2048~+2047,IR0~15 DR0~15, IR0~15 ,IR0~15+(++) ,-(--)IR0~15 移动脉冲量=脉冲输出量设定值 ・绝对脉冲指定时 移动脉冲量=脉冲输出量设定值-当前值 功能说明 对于由 C1 指定的端口,设定由 C2、S 所指定的方式/ 脉冲输出量。 状态标志的动作 名称 出错标志 标记符 ER 内容 ・超过 C1、C2、S 所指定的范围时为 ON ・在脉冲输出端口中,已经使用本指令时为 ON ・在周期执行任务中执行控制脉冲输出的指令时 需要中断,在中断任务内执行本指令时为 ON ・除此之外为 OFF 由 PULS 指令设定的脉冲输出量,通过用独立模式来执 行频率设定(SPED)指令或频率加减速控制(ACC)指 令,来进行输出。 注: ・脉冲输出中执行 PULS 指令时为出错,不能进行脉冲输 出量的再设定。 因此对于本指令基本上采用输入微分型(带@)或 1 周期 ON 的输入条件。 3-494 高速计数/脉冲输出指令 脉冲量设置 PULS(886) 动作说明 (例) 0.00 由 OFF→ON 时,通过 PULS 指令由相对脉冲指定将脉冲输出 0 的脉冲输出量设定为 5,000 脉冲。同时通过 SPED 3 指令由 CW/CCW 方式、CW 方向、独立模式开始输出目标频率 500Hz 的脉冲。 各 指 令 说 明 高 速 计 数 脉 冲 输 出 指 令 / 3-495 高速计数/脉冲输出指令 3-207 定位 PLS2(887) 概要 根据相对脉冲指定和绝对脉冲指定,在实际中输出的移动 3-207 位置決め PLS2(887) 在按输出端口的指定中,指定「脉冲输出量」、「目标 脉冲量分别为如下所示。 3 各 指 令 说 频率」、「加速比率」、「减速比率」,输出脉冲。 只能为定位(独立模式)。 在脉冲输出中执行本指令时,能够变更当前的脉冲输出 的「脉冲输出量」、「目标频率」、「加速比率」、「减 ・相对脉冲指定时 移动脉冲量=脉冲输出量设定值 ・绝对脉冲指定时 移动脉冲量=脉冲输出量设定值-当前值 S2:启动频率低位 CH 编号 明 速比率」。据此,能进行「带斜率的速度变更(加速比 率≠减速比率)变更」、「目标位置变更」、「目标位 置+带斜率的速度变更」、「方向变更」。 符号 操作数说明 C1:端口指定 0000 Hex:脉冲输出 0 0001 Hex:脉冲输出 1 0002 Hex:脉冲输出 2(仅 CP1H) 0003 Hex:脉冲输出 3(仅 CP1H) 0020 Hex:变频器定位 0(仅 CP1L) 0021 Hex:变频器定位 1(仅 CP1L) 高 C2:控制数据 速 计 数 / 脉 冲 输 出 指 令 目标频率·启动频率上限值 端口 0 端口 1 端口 2 端口 3 X40/XA40 (Ver. 1.0) 100k 100k 30k 30k CP1H X40/XA40 (Ver. 1.1 以上) 100k 100k 100k 100k Y20 1M 1M 100k 100k CP1L 100k 100k - - 功能说明 在由 C1 指定的端口中,用由 C2 指定的方式和由 S2 指 定的启动频率,来开始脉冲输出(下图①)。 在每个脉冲控制周期(4ms)中,根据由 S1 指定的加速 比率,在达到由 S1 指定的目标频率之前,使频率增加(下 图②)。 达到目标频率之后停止加速,以等速继续脉冲的输出(下 图③)。 到达由 S1 指定的脉冲输出量和减速比率中所计算得到 的减速点(使频率减少的定时)之后,在每个脉冲控制 周期(4ms)中对频率进行减少,当到达启动频率时, 停止输出(下图④)。 执行一次 PLS2 指令时,由指定条件开始输出脉冲。因 此基本上在输入微分型(带@)或 1 周期 ON 的输入条 件下使用。 S1:设定表低位 CH 编号 PLS2 指令只能进行定位。 在通过 ACC 指令(独立或连续模式)的脉冲输出中(不 仅为等速,在加速或减速中也可以),能够执行本 PLS2 指令(﹡1)。相反在通过本 PLS2 指令的脉冲输出中(不 仅为等速,在加速或减速中也可以)中也能执行 ACC 指令(独立模式)。 3-496 高速计数/脉冲输出指令 定位 PLS2(887) *1:在由 ACC 指令(连续模式)的速度控制中,指定和 ACC 指令相同的目标频率,通过执行 PLS2 指令,能 够进行中断定量传送。 这时不执行由 PLS2 指令的加速,如果使加速比率为 0 时,ER 标志为 ON,不执行 PLS2 指令。请在加速比 率中设定为 0 之外的值。 3 各 指 令 说 明 参考 可通过加减速比率 1Hz 进行指定,但加减速时间中有具有上限。 因此,加减速的开始速度和目标速度的差距超过 100kHz 时,自动提升加减速比率进行运行。 ・加减速开始速度和目标速度的差距大于 100kHz、小于 200kHz 时,加减速比率为 2Hz 以上 ・加减速开始速度和目标速度的差距大于 200kHz、小于 300kHz 时,加减速比率为 3Hz 以上 : : ・加减速开始速度和目标速度的差距大于 900kHz、小于 1,000kHz 时,加减速比率为 10Hz 以上 独立模式(定位) 注:向「程序」模式转换时,脉冲输出立即停止。 操作 动作内容 使用示例 脉冲输出开 始 详细的台型控制 进行台型加减速 的定位时(加速比 率及减速比率不 同。有起动速度)。 可变更定位中的 脉冲量 频率的变化 设定变更 斜率式速度(加 速比率≠减速比 率)变更 定位中的目标速 度(频率)的变更 (加速比率与减 速比率不同) 目标位置变更 定位中的目标位 置的变更(多重起 动) 目标位置+斜率 式的速度变更 定位中的目标位 置、目标速度的变 更(多重起动) 说明 使用步骤 指令语句 按照一定的比率使频率加 PLS2 速,按照一定的比率使频 率减速。输出指定脉冲量 时,停止加减速(*1)。 注:可变更定位(脉冲输 高 出)中的目标位置(脉 速 冲量)。 计 数 可在定位中,执行 PLS2 PLS2 脉 指令,变更加速比率、减 ↓ 冲 速比率、目标频率。 PLS2 输 注:为了有目的地不变更 出 目标位置,作为 PLS2 指令的操作数,需要 指 令 通过绝对指定来指定 PULS 与原来相同的位置。 ↓ ACC(独立) PLS2 可在定位中,执行 PLS2 PLS2 指令,变更目标位置(脉 ↓ 冲量)、加速比率、减速 PLS2 比率、目标频率。 注:变更后不能确保等速 域的情况下作为出 PULS 错,忽略执行,继续 ↓ 原来的动作。 ACC(独立) PLS2 可在定位中,执行 PLS2 PLS2 指令,变更目标位置(脉 ↓ 冲量)、加速比率、减速 PLS2 比率、目标频率。 注:变更后不能确保等速 域的情况下作为出 PULS 错,忽略执行,继续 ↓ 原来的动作。 ACC(独立) PLS2 3-497 / 高速计数/脉冲输出指令 定位 PLS2(887) 操作 动作内容 使用示例 定位中的加减速 3 的变更(多重起 各 动) 指 令 说 明 方向变更 定位中的方向的 变更 脉冲输出停 脉冲输出停止 即刻停止 止 (脉冲输出量不 保持) 斜率式的脉冲输 减速停止 出停止(脉冲输 出量不保持) 频率的变化 说明 使用步骤 指令语句 在定位中执行 PLS2 指令,PLS2 能够变更加速比率、减速 ↓ 比率。 PLS2 可在绝对脉冲指定的定位 PLS2 中,执行 PLS2 指令,指 ↓ 定绝对位置,变更方向。 PLS2 PULS ↓ ACC(独立) PLS2 即刻停止脉冲输出。此时, PLS2 当前的脉冲输出量被清 ↓ 除。 INI 将脉冲输出减速停止。 PLS2 ↓ ACC(独立、 目标频率 0Hz) 高 *1:三角控制 在加速以及减速中所需的脉冲量即使在没有达到目标频率的脉冲量时(不为出错),也能自动地减少加减 速 速时间,进行只有加减速的三角形状的控制。 计 数 / 脉 冲 输 出 指 令 3-498 高速计数/脉冲输出指令 定位 PLS2(887) 连续模式(速度控制)→独立模式(定位) 使用示例 频率的变化 说明 使用步骤 指令语句 3 从速度控制变 更为固定距离 定位 在由 ACC 指令来进行速度的控 ACC(连续) 各 制中,执行 PLS2 指令,变更为 ↓ 指 定位 PLS2 令 说 明 固定距离中断 进给 / 执行条件/每次刷新指定 状态标志的动作 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 数据内容 PLS2 @PLS2 无 无 中断任务 程序区域 可 名称 标记符 内容 出错标志 ER ・超过可由 C1、C2、S1、S2 所能指定的范围时 为 ON ・在 SPED、ORG 指令中,在正在进行脉冲输出 的端口中,已经使用本指令时为 ON ・在周期执行任务中执行控制脉冲输出的指令时 需要中断,在中断任务内执行本指令时为 ON ・在未确定原点,由绝对脉冲指定来执行本指令 高 时为 ON 速 ・除此之外为 OFF 计 数 区域 C1 C2 S1 S2 脉 CIO(输入输出继 ― ― 0000~6138 0000~6142 冲 电器等) 输 内部辅助继电器 ― ― W000~506 W000~510 出 保持继电器 ― 特殊辅助继电器 ― ― H000~506 H000~510 ― A000~954 A000~958 指 令 时间 ― ― T0000~4090 T0000~4094 计数器 ― ― C0000~4090 C0000~4094 数据内存(DM) ― ― D00000~ D00000~ 32762 32766 DM 间接(BIN) ― ― @D00000~ @D00000~ 32767 32767 DM 间接(BCD) ― ― *D00000~ *D00000~ 32767 32767 常数 参照前记 参照前记 ― 参照前记 数据寄存器 ― ― ― ― 变址寄存器(直接) ― ― ― ― 变址寄存器(间接) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15,IR0~15 ,IR0~15+(++) ,-(--)IR0~15 3-499 高速计数/脉冲输出指令 定位 PLS2(887) 动作说明 (例) 3 0.00 由 OFF→ON 时,通过 PLS2 指令由相对脉冲指定从脉冲输出 0 开始进行 100,000 脉冲的输出。从启动频率的 各 200Hz 开始,以 500Hz/4ms 的加速比率,加速到目标频率 50kHz 为止。之后从减速点,以 250Hz/4ms 的减速比率 指 进行减速,当减速到启动频率的 200Hz 时,停止脉冲输出。 令 说 明 / 高 速 计 数 脉 冲 输 出 指 令 3-500 高速计数/脉冲输出指令 3-208 频率加减速控制 ACC(888) 概要 3-208 周波数加減速コントロール ACC(888) 按输出端口指定来指定脉冲频率和加减速比率,进行有 加减速的脉冲输出(加速比率=减速比率)。 能够进行定位(独立模式)或速度控制(连续模式)。 还有在定位(独立模式)时,将 PULS 指令作为一组来 使用。 另外在脉冲输出中执行本指令时,能够变更当前的脉冲 输出的「目标频率」、「加减速比率」。据此能够进行 带斜率速度的变更。 符号 操作数说明 C1:端口指定 0000 Hex:脉冲输出 0 0001 Hex:脉冲输出 1 0002 Hex:脉冲输出 2(仅 CP1H) 0003 Hex:脉冲输出 3(仅 CP1H) 0020 Hex:变频器定位 0(仅 CP1L) 0021 Hex:变频器定位 1(仅 CP1L) C2:控制数据 S:设定表低位 CH 编号 目标频率上限值 CP1H CP1L X40/XA40 X40/XA40 Y20 (Ver. 1.0) (Ver. 1.1 以上) 3 各 端口 0 100k 100k 1M 100k 指 端口 1 100k 100k 1M 100k 令 端口 2 30k 100k 100k - 说 端口 3 30k 100k 100k - 明 功能说明 从由 C1 指定的端口,通过由 C2 指定的方式,由 S 指定 的「目标频率」和「加减速比率」进行脉冲的输出。 在每个脉冲控制周期(4ms)中,按照由 S 指定的加减 速比率,在到达由 S+2, S+1 指定的目标频率之前,进行 频率的加减速。 执行一次 ACC 指令时,按指定的条件开始进行脉冲的输 出。因此基本上在输入微分型(带@)或 1 周期 ON 的 输入条件下使用。 高 速 计 在独立模式中输出事先由 PULS 指令所设定的脉冲量 时,自动地停止脉冲输出。 数 脉 冲 在连续模式中,脉冲输出一直进行到执行停止脉冲输出 输 为止。 在独立模式下的脉冲输出中向连续模式变更时、以及在 出 指 令 连续模式下的脉冲输出中向独立模式的变更时,为出错, 不能被执行。 在根据本 ACC 指令(独立或连续模式)的脉冲输出中(不 仅仅为等速,在加速或减速中也可以),能够执行 PLS2 指令(*1)。相反在根据 PLS2 指令的脉冲输出中(不 仅仅为等速,在加速或减速中也可以),也能执行 PLS2 指令或本 ACC 指令(独立模式)。 *1:在由 ACC 指令(连续模式)的速度控制中,指定和 ACC 指令相同的目标频率,通过执行 PLS2 指令,能 够进行中断定量传送。 这时不执行由 PLS2 指令的加速,如果使加速比率为 0 时,ER 标志为 ON,不执行 PLS2 指令。请在加速比 率中设定为 0 之外的值。 / 3-501 高速计数/脉冲输出指令 频率加减速控制 ACC(888) 参考 可通过加减速比率 1Hz 进行指定,但加减速时间中有具有上限。 3 因此,加减速的开始速度和目标速度的差距超过 100kHz 时,自动提升加减速比率进行运行。 各 指 ・加减速开始速度和目标速度的差距大于 100kHz、小于 200kHz 时,加减速比率为 2Hz 以上 令 ・加减速开始速度和目标速度的差距大于 200kHz、小于 300kHz 时,加减速比率为 3Hz 以上 说 : 明 : ・加减速开始速度和目标速度的差距大于 900kHz、小于 1,000kHz 时,加减速比率为 10Hz 以上 连续模式(速度控制) 在执行停止脉冲输出之前继续进行脉冲的输出。 注:当转换到「程序」模式时立即停止脉冲输出。 操作 动作内容 使用示例 脉冲输出开 加速度/速度指 按照一定的比率 始 定输出 使速度(频率)加 速时 频率的变化 说明 按照一定的比率使频率变化 的脉冲输出。 使用步骤 指令语句 ACC(连续) 设定变更 斜率式速度变更 在运行中想缓慢 地变更速度时 希望以倾角的连 高 续使速度变化时 速 计 数 脉 / 冲 输 速度变化中停止 出 指 时 令 脉冲输出停 脉冲输出停止 止 即刻停止 脉冲输出停止 即刻停止 从当前的频率开始按照一定 的比率使频率加速或减速。 ACC(连续) 或 SPED(连续) ↓ ACC(连续) 加速或减速中,使加速比率或 ACC(连续) 减速比率变更。 ↓ ACC(连续) 减速中变更减速比率。 ACC(连续) 注:设定目标频率为 0Hz 时, ↓ 减速比率保留为运行中的 ACC(连续) 值即为有效。 ↓ ACC(连续、目 标频率 0Hz) 即刻停止脉冲输出。 ACC(连续) ↓ INI 即刻停止脉冲输出。 ACC(连续) ↓ SPED(连续、目 标频率 0Hz) 3-502 高速计数/脉冲输出指令 频率加减速控制 ACC(888) 操作 动作内容 使用示例 频率的变化 说明 使用步骤 指令语句 斜率式脉冲输出 减速停止 停止 独立模式(定位) 将脉冲输出减速停止。 ACC(连续) 注:第 2 次 ACC 指令的目标 ↓ 3 频率为 0Hz 时,按第 1 次 ACC(连续、目 各 ACC 指令的减速比率进行 标频率 0Hz) 减速。 指 令 说 明 只输出由 PULS 指令设定的脉冲输出量。 当到达从设定的脉冲输出量和加减速比率中计算出的减速点(使频率减少的定时)时,每 4ms 按由加减速比率所设 定的频率来减少频率,在达到脉冲输出量时,停止脉冲输出量。 注: ・向「程序」模式转换时立即停止脉冲输出。 ・在停止脉冲输出后再一次进行输出时,根据情况有必要用 PULS 指令来设定脉冲输出量。 ・有必要事先用 PULS 指令来设定脉冲输出量。在没有设定的状态下即使执行 ACC 指令也不能进行脉冲的输出。 ・在通过 PULS 指令由绝对脉冲指定来设定移动脉冲量时,无视由本 ACC 指令的操作数所进行的方向指定(CW 方向/CCW 方向)。 操作 动作内容 使用示例 脉冲输出开 始 单纯的台型控制 进行台型加减速 的定位时(加速 率比与减速比率 相同。无起动速 度)。不可变更 定位中的脉冲量 频率的变化 说明 使用步骤 指令语句 以一定的比率对频率进行加速 PULS 或减速,输出指定的脉冲量时, ↓ 立即停止(*1)。 ACC(独立) 注:不可变更定位(脉冲输出) 中的目标位置(脉冲量)。 设定变更 斜率式速度(加 速比率=减速比 率)变更 定位中的目标速 度(频率)的变 更(加速比率与 减速比率相同) 脉冲输出停 脉冲输出停止 即刻停止 止 (脉冲输出量不 保持) 可在定位中,执行 ACC 指令, PULS 变更加减速比率、目标频率。 ↓ 该情况下,目标位置(脉冲量) ACC(独立) 不变。 ↓ 高 速 计 ACC(独立) 数 PLS2 脉 ↓ ACC(独立) 冲 输 出 指 令 即刻停止脉冲输出。此时,当 前的脉冲输出量被清除。 PULS ↓ ACC(独立) ↓ INI 斜率式的脉冲输 减速停止 出停止(脉冲输 出量不保持) 将脉冲输出减速停止。 PULS 注:ACC 指令执行时的加减速 比率,动作中的值保持并转 ↓ ACC(独立) 或 为有效。因此,通过 SPED SPED(独立) 指令起动的情况下,由于加 ↓ 减速比率为无效,出现即刻 停止。 ACC(独立、目 标频率 0Hz) PLS2 ↓ ACC(独立、目 标频率 0Hz) / 3-503 高速计数/脉冲输出指令 频率加减速控制 ACC(888) *1:三角控制 在加速以及减速中所需的脉冲量即使在没 区域 C1 C2 S 有达到目标频率的脉冲量时(不为出错),也能自动 时间 计数器 ― ― ― ― T0000~4093 C0000~4093 3 各 指 地减少加减速时间,进行只有加减速的三角形状的控 制。 数据内存(DM) DM 间接(BIN) DM 间接(BCD) 常数 ― ― ― 参照前页 ― ― ― 参照前页 D00000~32765 @D00000~32767 *D00000~32767 ― 令 数据寄存器 ― ― ― 说 变址寄存器(直接) ― ― ― 明 变址寄存器(间接) ― ― ,IR0~15 -2048~+2047,IR0~15 DR0~15, IR0~15 ,IR0~15+(++) 执行条件/每次刷新指定 ,-(--)IR0~15 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ACC @ACC 无 无 使用限制 区域 使用 块程序区 域 可 工程步进 程序区域 可 子程序区域 可 中断任务 程序区域 可 数据内容 区域 C1 C2 CIO(输入输出继电 ― ― 器等) S 0000~6141 状态标志的动作 名称 出错标志 标记符 ER 内容 ・超过 C1、C2、S 所指定的范围时为 ON ・在 ORG 指令中,在正在进行脉冲输出的端口 中,已经使用本指令时为 ON ・在 SPED、ACC、PLS2 指令中,在脉冲输出端 口中,改变并使用由本指令指定的独立/连续时 为 ON ・在周期执行任务中执行控制脉冲输出的指令时 需要中断,在中断任务内执行本指令时为 ON ・在未确定原点,由独立模式・绝对脉冲指定来 执行本指令时为 ON ・除此之外为 OFF 内部辅助继电器 ― ― 保持继电器 ― ― 特殊辅助继电器 ― ― W000~509 H000~509 A000~957 动作说明 高 速 (例) 计 数 0.00 由 OFF→ON 时,通过 ACC 指令从脉冲输出 0 的端口,用 CW/CCW 方式、CW 方向、连续模式开始进行加减 速比率 20Hz、目标频率 500Hz 的脉冲输出。之后 0.01 由 OFF→ON 时,再一次通过 ACC 指令变更为加减速比率 脉 冲 / 10Hz、目标频率 1,000Hz。 输 出 指 令 3-504 高速计数/脉冲输出指令 3-209 原点搜索 ORG(889) 概要 3-209 原点サーチ ORG(889) 进行原点搜索以及原点复位。 ·原点搜索: 根据事先设定的方式,通过输出脉冲,来实际启动 电机,使用原点附近的输入信号、原点输入信号来 确定原点。 ·原点复位: 从当前的位置向确定的原点位置移动。 符号 操作数说明 C1:端口指定 0000 Hex:脉冲输出 0 0001 Hex:脉冲输出 1 0002 Hex:脉冲输出 2(仅 CP1H) 0003 Hex:脉冲输出 3(仅 CP1H) 0020 Hex:变频器定位 0(仅 CP1L) 0021 Hex:变频器定位 1(仅 CP1L) C2:控制数据 执行一次 ORG 指令时,按指定的条件进行原点的确定。 因此基本上在输入微分型(带@)或 1 周期 ON 的输入 条件下使用。 3 原点搜索(C2 位 12~15=0 Hex) 按指定的输出方式输出原点搜索启动速度的脉冲。(下 图①) 各 指 令 说 随着原点搜索加速比率加速到原点搜索高速速度下图 明 ②),在原点附近输入信号为 ON 之前,以等速进行动 作。(下图③) 原点附近输入信号为 ON 时,根据原点搜索减速比率, 一直减速到原点搜索附近速度(下图④),在原点输入 信号为 ON 之前,以等速进行动作。当减速到原点复位 启动速度时(到达原点),停止脉冲输出。 原点输入信号为 ON 时停止脉冲输出。(下图⑥) 原点搜索完了时,偏差计数重置输出为 ON。 以上的动作根据动作模式和原点检测方法等参数而不 同。 有关详细内容请参见「用户手册」。 高 速 计 数 脉 冲 输 出 指 令 功能说明 从由 C1 指定的端口中,用由 C2 指定的方式输出脉冲, 进行原点搜索或原点复位。在执行本 ORG 指令时,通 过 PLC 系统设定,需要事先设定以下的参数(有关参数 的详细内容请参见「用户手册」)。 原点搜索 ・原点搜索功能使用设定 ・动作模式选择 ・原点搜索动作指定 ・原点检测方法指定 ・原点搜索方向指定 ・原点搜索/原点复位启动速度 ・原点搜索高速速度 ・原点搜索附近速度 ・原点搜索加速比率 ・原点搜索减速比率 ・原点补偿 ・原点接近输入信号类别 ・原点输入信号类别 ・接近输入信号类别 ・定位监视时间 原点复位 ・原点复位目标速度 ・原点搜索/原点复位启动速度 ・原点复位加速比率 ・原点复位减速比率 3-505 / 高速计数/脉冲输出指令 原点搜索 ORG(889) 原点复位(C2 位 12~15=1 Hex) 数据内容 按指定的输出方式开始原点复位启动速度的脉冲输出。 区域 3 (下图①) CIO(输入输出继电器等) 各 根据原点复位加速比率,到原点复位目标速度(下图②) 内部辅助继电器 指 令 为止进行加速,以等速进行动作。(下图③) 当到了从到原点位置为止的脉冲输出量和原点复位减速 保持继电器 特殊辅助继电器 时间 说 比率中计算得到的减速点(使频率减少的定时)时,开 计数器 明 始减速(下图④)。当减速到原点复位启动速度时(到 数据内存(DM) 达原点),停止脉冲输出。 DM 间接(BIN) DM 间接(BCD) 常数 数据寄存器 变址寄存器(直接) 变址寄存器(间接) C1 ― ― ― ― ― ― ― 参照前页 ― ― C2 ― ― ― ― ― ― ― 参照前页 ― ― 状态标志的动作 名称 标记符 内容 出错标志 ER ・超过可由 C1、C2 指定的范围时为 ON ・在 SPED、ACC、PLS2 指令中,在正在进行脉冲 输出端口中,使用本指令时为 ON ・在周期执行任务中执行控制脉冲输出的指令时需 执行条件/每次刷新指定 执行条件 ON 时每周期执行 上升沿时 1 周期执行 下降沿时 1 周期执行 每次刷新指定 ORG @ORG 无 无 使用限制 区域 块程序区 工程步进 子程序区域 中断任务 域 程序区域 程序区域 高 使用 可 可 可 可 速 计 动作说明 数 (例) 要中断,在中断任务内执行本指令时为 ON ・决定 PLC 系统设定的原点,相关的参数在范围外 时为 ON ・PLC 系统设定的原点搜索相关速度为原点搜索 高速速度≦原点搜索附近速度时,或原点搜索附 近速度≦原点搜索启动速度时为 ON ・PLC 系统设定的原点复位相关速度为原点复位 目标速度≦原点复位启动速度时为 ON ・在原点未确定的状态下指定原点复位时为 ON, 除此之外时为 OFF 脉 / 0.00 由 OFF→ON 时,根据 ORG 指令,对于脉冲输出 0 用 CW/CCW 方式输出脉冲,进行原点复位。随着 PLC 系 冲 输 统的设定,启动速度为 100pps,目标速度为 200pps,加速比率和减速比率为 50Hz/4ms。 出 指 令 PLC 系统设定 脉冲输出 0 原点搜索/原点复位启动速度 脉冲输出 0 原点复位目标速度 脉冲输出 0 原点复位加速比率 脉冲输出 0 原点复位减速比率 00000064 Hex:100pps 000000C8 Hex:200pps 0032 Hex:50 Hz /4ms 0032 Hex:50 Hz /4ms 3-506 高速计数/脉冲输出指令 3-210 PWM 输出 PWM(891) 概要 3-210 PWM 出力 PWM(891) 从指定端口中输出指定占空比的脉冲。 符号 操作数说明 执行一次 PWM 指令时,由指定的条件开始脉冲的输出。 因此基本上在输入微分型(带@)或 1 周期 ON 的输入 条件下使用。 脉冲输出的停止可以按以下任何一种方法进行。 (1) 执行 INI 指令(C2=0003 Hex:脉冲输出停止) 3 各 指 (2)向「程序」模式转换 令 执行条件/每次刷新指定 说 明 ON 时每周期执行 PWM 执行条件 上升沿时 1 周期执行 @PWM 下降沿时 1 周期执行 无 每次刷新指定 无 C:端口指定 使用限制 0000 Hex:脉冲输出 0(占空比 单位 1%、 频率 单 位 0.1Hz) 区域 块程序区 域 工程步进 程序区域 子程序区域 中断任务 程序区域 0001 Hex:脉冲输出 1(占空比 单位 1%、频率 单 使用 可 可 可 可 位 0.1Hz) 1000 Hex:脉冲输出 0(占空比 单位 0.1%、频率 单 位 0.1Hz) 1001 Hex:脉冲输出 1(占空比 单位 0.1%、频率 单 位 0.1Hz) 0100 Hex:脉冲输出 0(占空比 单位 1%、频率 单 数据内容 区域 C CIO(输入输出继电 ― 器等) 内部辅助继电器 ― 保持继电器 ― S1 0000~6143 W000~511 H000~511 S2 0000~6143 W000~511 H000~511 位 1Hz、仅 CP1L) 0101 Hex:脉冲输出 1(占空比 单位 1%、频率 单 位 1Hz、仅 CP1L) 1100 Hex:脉冲输出 0(占空比 单位 0.1%、频率 单 位 1Hz、仅 CP1L) 特殊辅助继电器 时间 计数器 数据内存(DM) DM 间接(BIN) ― A000~959 A000~959 ― T0000~4095 T0000~4095 ― C0000~4095 C0000~4095 ― D00000~32767 D00000~32767 ― @D00000~ @D00000~32767 32767 1101 Hex:脉冲输出 1(占空比 单位 0.1%、频率 单 DM 间接(BCD) ― *D00000~ *D00000~32767 位 1Hz、仅 CP1L) 常数 32767 参照左边 0001~FFFF Hex 0000~03E8 Hex 高 S1:频率指定 数据寄存器 ― DR0~15 DR0~15 速 0001~FFFF Hex:0.1Hz~6553.5 Hz(0.1Hz 单位指 定时) 变址寄存器(直接) ― 变址寄存器(间接) ― ― ― ,IR0~15 -2048~+2047,IR0~15 计 数 脉 0001~8020 Hex:1 Hex~32,800 Hz(1Hz 单位指定 DR0~15, IR0~15 冲 时、仅 CP1L) 但是由于输出回路的制限,实际上能够确保输入 PWM 波形精度(ON 占空+5%,-0%)的为 0.1~ 状态标志的动作 ,IR0~15+(++) 输 ,-(--)IR0~15 出 指 令 1000.0Hz。 名称 标记符 内容 S2:占空比指定 0000~03E8 Hex:0.0~100.0%(0.1%单位指定时) 出错标志 ER ・超过由 C、S1、S2 所能指定的范围时为 ON ・在 ORG 指令中,在正在进行脉冲输出的端口中, 已经使用本指令时为 ON 0000~0064 Hex:0~100%(1%单位指定时) 占空比(相对于脉冲周期 ON 的时间的比例)用百 分比指定。 ・在周期执行任务中执行控制脉冲输出的指令时需 要中断,在中断任务内执行本指令时为 ON ・除此之外为 OFF 功能说明 从由 C 指定的端口中输出由 S1 指定的频率和由 S2 指定 的占空比的脉冲。 在由 PWM 指令的可变占空比脉冲输出中,变更占空比 的指定执行 PWM 指令时,可以不需要停止脉冲输出来 变更占空比。但是频率变更为无效,不能被执行。 / 3-507 高速计数/脉冲输出指令 PWM 输出 PWM(891) 动作说明 (例) 3 0.00 由 OFF→ON 时,通过 PWM 指令对于脉冲输出 0 来说由频率 200Hz、占空比 50%来开始脉冲的输出。 各 指 0.01 由 OFF→ON 时,变更为占空比 25%。 令 说 明 / 高 速 计 数 脉 冲 输 出 指 令 3-508 工序步进控制指令 项目号 3-211 指令语句 步梯形区域定义 步梯形区域步进 助记符 STEP SNXT FUN 编号 008 009 页码 3-511 3-509 工序步进控制指令 工序步进控制指令 通过 SNXT(步梯形步进)指令和 STEP(步梯形区域)指令的组合,作成工序步进程序。 3 各 指 令 说 明 工 序 步 进 控 制 指 令 3-510 工序步进控制指令 3-211 步梯形区域步进 SNXT(009)/步梯形区域定义 STEP(008) 步梯形区域步进 SNXT 3-211 ステップラダー領域歩進 SNXT(009)/ステップラダー領域定義 STEP(008) 概要 在 STEP 指令之前配置,(之前有工序的情况下将之前 的工序编号进行 ON→OFF)通过对指定的工序编号进 行 OFF→ON,来控制工序的步进。 符号 功能说明 根据配置位置不同,分为以下 3 种作用。 1)向步梯形区域的步进 2)向下一工序编号的步进 3)向步梯形区域结束的步进 步梯形区域是从 STEP 指 令(指定工序编号)~STEP 指令(无工序编号)为 止的区域。 ●向步梯形区域的步进 (配置在步梯形区域整体 之前时) 对用工序编号 S 指定的继电器进行 OFF→ON,向工序 S (STEP S 指令以后)推进。 请将输入条件设置为启动微分型。(若将 SNXT 指令配 置在步梯形区域外时,则会出现与 SET 指令同样的动 作) ●向下一工序的步进 (配置在步梯形区域整体中 时) 对之前的工序编号(继电器)进行 ON→OFF,对下一 工序的工序编号(继电器)S 进行 OFF→ON,向工序 S (STEP S 指令以后)推进。 ●向步梯形区域结束的步进 (配置在步梯形区域 整体最后时) 对之前的工序编号(继电器)进行 ON→OFF。用 S 指 定的工序编号为虚转接。(但是会出现 ON 的情况,所 以请指定即使 ON 也没有问题的继电器)。 步梯形区域定义 STEP 概要 3 在 SNXT 指令之后,各工序之前配置,表示该工序开始 (指定工序编号)。 在 SNXT 指令之后,步梯形区域整体的最后配置,表示 步梯形区域整体的结束(无工序编号)。 各 指 令 说 明 步梯形区域开始指令(已指定工序编号时) 符号 步梯形区域结束指令(未指定工序编号时) 符号 功能说明 根据配置位置和有无工序编号指定,分为以下 2 种作用。 1)已指定工序的开始 2)步梯形区域整体的结束 ●已指定工序的开始 (配置在各工序之前,指定 了 S 时) 工 序 通过 SNXT 指令使工序编号 S 开始进行 OFF→ON 时, 步 将从本指令的下一个指令开始执行。同时,将 A200.12 (步梯形 1 周期 ON 标志)设置为 ON。 进 控 制 在下一周期之后,到下一工序的迁移条件成立为止,(到 指 通过 SNXT 指令形成的下一工序编号进行 OFF→ON 为 令 止),现在工序都将反复执行。 通过 SNXT 指令使工序编号 S 开始进行 OFF→ON 时, 通过本指令指定的工序编号 S 将被复位(ON→OFF), 现在的工序编号 S 的工序将变为 IL 中(互锁中)。 根据 STEP 指令指定的工序编号 S 的 ON/OFF 状态, 工序编号 S 在工序内的指令及输出如下。工序编号 S 被 复位进行 ON→OFF 时,将出现互锁状态(参见表 1)。 3-511 工序步进控制指令 步梯形区域步进 SNXT(009)/步梯形型区域定义 STEP(008) 工序编号(继电 动作 数据内容(STEP/SNXT 指令通用) 器)的状态 3 ON 以通常的动作执行工序内的指令。 各 ON→OFF 将工序内使用的继电器及指令设置为表 1 的 指 IL(互锁)状态。 令 OFF 对工序内的指令进行 NOP 处理。 说 明 表 1:1L(互锁)状态 各指令的输出 状态 用 OUT、OUT NOT 指令指定的继电器 全部 OFF 计时系列指令(计时器 当前值 TIM/TIMX、高速计时器 向上标志 TIMH/TIMHX、超高速计时 器 TMHH/TMHHX、长时间 计时