附錄 D、VFD-E 與 PLC 的應用 判断是属于何种接点储存命令。 MPS 可以由“┬”来做分辨,一共可以连续下此命令 8 次。MRD 指令是分歧点记忆读取,因为同一 垂直线的逻辑状态是相同的,所以为了继续其他的阶梯图的解析进行,必须要再把原接点的状态读出。 MRD 可以由“├”来做分辨。MPP 指令是将最上层分歧点开始的状态读出并且把它自堆栈中读出 (Pop),因为它是同一垂直线的最后一笔,表示此垂直线的状态可以结束了。 MPP 可以由“└”来做判定。基本上使用上述的方式解析不会有误,但是有时相同的状态输出,编 译程序会将之省略,以下图说明 MPS MRD () MPP () () () () () () D-3-4 常用基本程序设计范例 起动、停止及自保 有些应用场合需要利用按钮的瞬时闭合及瞬时断开作为设备的启动与停止。因此若要维持持续动作, 则必须设计自保回路,自保回路有下列几种方式: 范例 1:停止优先的自保回路 当启动常开接点 X1=On,停止常闭接点 X2=Off 时,Y1=On,此时将 X2=On,则线圈 Y1 停止受电,所以称为停止优先。 Y1 X2 Y1 X1 STOP START 范例 2:启动优先的自保回路 当启动常开接点 X1=On,停止常闭接点 X2=Off 时,Y1=On,线圈 Y1 将受电且自保,此时 将 X2=On,线圈 Y1 仍因自保接点而持续受电,所以称为启动优先。 X1 X2 Y1 START STOP Y1 范例 3:设定(SET)、复位(RST)指令的自保回路 下图是利用 RST 及 SET 指令组合成的自保电路。 D-17
附錄 D、VFD-E 與 PLC 的應用 RST 指令设置在 SET 指令之后,为停止优先。由于 PLC 执行程序时,是由上而下,因此会 以程序最后,Y1 的状态作为 Y1 的线圈是否受电。所以当 X1 与 X2 同时动作时,Y1 将失电, 因此为停止优先。 SET 指令设置在 RST 指令之后,为启动优先。当 X1 与 X2 同时动作时,Y1 将受电,因此 为启动优先。 停止優先 SET Y1 停止優先 RST Y1 X1 RST Y1 X2 SET Y1 X2 X1 常用的控制回路 范例 4:条件控制 X1、X3 分别启动/停止 Y1,X2、X4 分别启动/停止 Y2,而且均有自保回路。由于 Y1 的常 开接点串联了 Y2 的电路,成为 Y2 动作的一个 AND 的条件,所以 Y2 动作要以 Y1 动作为 条件,Y1 动作中 Y2 才可能动作。 X1 X3 Y1 X1 Y1 X3 X2 X4 Y1 X2 Y2 Y2 X4 Y1 Y2 范例 5:互锁控制 下图为互锁控制回路,启动接点 X1、X2 那一个先有效,对应的输出 Y1、Y2 将先动作,而 且其中一个动作了,另一个就不会动作,也就是说 Y1、Y2 不会同时动作(互锁作用)。即使 X1,X2 同时有效,由于阶梯图程序是自上而下扫描,Y1、Y2 也不可能同时动作。本阶梯图 形只有让 Y1 优先。 X1 X3 Y2 Y 1 X1 Y1 X3 X2 X2 X4 Y1 Y2 X4 Y2 Y1 Y2 D-18
附錄 D、VFD-E 與 PLC 的應用 范例 6:顺序控制 若把范例 5 “条件控制” 中 Y2 的常闭接点串入到 Y1 的电路中,作为 Y1 动作的一个 AND 条 件(如下图所示),则这个电路不仅 Y1 作为 Y2 动作的条件,而且当 Y2 动作后还能停止 Y1 的动作,这样就使 Y1 及 Y2 确实执行顺序动作的程序。 X1 X3 Y2 Y1 Y1 X2 X4 Y1 Y2 Y2 范例 7:振荡电路 周期为ΔT+ΔT 的振荡电路 下图为一个很简单的阶梯图形。当开始扫描 Y1 常闭接点时,由于 Y1 线圈为失电状态,所以 Y1 常闭接点闭合,接着扫描 Y1 线圈时,使之受电,输出为 1。下次扫描周期再扫描 Y1 常 闭接点时,由于 Y1 线圈受电,所以 Y1 常闭接点打开,进而使线圈 Y1 失电,输出为 0。重 复扫描的结果,Y1 线圈上输出了周期为ΔT(On)+ΔT(Off) 的振荡波形。 Y1 Y1 Y1 TT 周期为 nT+ΔT 的振荡电路 下图的阶梯图程序使用定时器 T0 控制线圈 Y1 的受电时间,Y1 受电后,它在下个扫描周期 又使定时器 T0 关闭,进而使 Y1 的输出成了下图中的振荡波形。其中 n 为定时器的十进制设 定值,T 为该定时器时基(时钟周期)。 X0 Y1 TMR T0 Kn X0 T0 Y1 Y1 nT T 范例 8:闪烁电路 下图是常用的使指示灯闪烁或使蜂鸣器报警用的振荡电路。它使用了两个定时器,以控制 Y1 线圈的 On 及 Off 时间。其中 n1、n2 分别为 T1 与 T2 的计时设定值,T 为该定时器时基(时 钟周期)。 X0 T2 TMR T1 Kn1 X0 n2*T T1 TMR T2 Kn2 Y1 n1*T X0 T1 Y1 范例 9:触发电路 在下图中,X0 的上升缘微分指令使线圈 M0 产生ΔT(一个扫描周期时间)的单脉冲,在这 D-19
附錄 D、VFD-E 與 PLC 的應用 个扫描周期内线圈 Y1 也受电。下个扫描周期线圈 M0 失电,其常闭接点 M0 与常闭接点 Y1 都闭合着,进而使线圈 Y1 继续保持受电状态,直到输入 X0 又来了一个上升缘,再次使线圈 M0 受电一个扫描周期,同时导致线圈 Y1 失电…。其动作时序如下图。这种电路常用于靠一 个输入使两个动作交替执行。另外由下时序图形可看出:当输入 X0 是一个周期为 T 的方波 信号时,线圈 Y1 输出便是一个周期为 2T 的方波信号。 X0 M0 X0 T M0 Y1 Y1 M0 M0 Y1 Y1 范例 10:延迟电路 当输入 X0 On 时,由于其对应常闭接点 Off,使定时器 T10 处于失电状态,所以输出线圈 Y1 受电,直到输入 X0 Off 时,T10 得电并开始计时,输出线圈 Y1 延时 100 秒(K1000*0.1 秒=100 秒)后失电,请参考下图的动作时序。 X0 TMR T10 K1000 X0 T10 Y1 Y1 100秒 時 基:T=0.1秒 范例 11:通断延迟电路,使用两个定时器组成的电路,当输入 X0 On 与 Off 时,输出 Y4 都会产生 延时。 X0 TMR T5 K50 X0 T5 T6 5秒 T5 Y4 Y4 X0 Y4 T6 TMR T6 K30 3秒 范例 12:延长计时电路 在左图电路中,从输入 X0 闭合到输出 Y1 得电的总延迟时间=(n1+n2)*T,其中 T 为时钟周 期。 定时器:T11、T12;时钟周期:T。 X0 TMR T11 Kn1 X0 T 11 n1*T n2*T TMR T12 Kn2 T 11 T12 Y1 T12 Y1 (n1+n2)*T D-20
附錄 D、VFD-E 與 PLC 的應用 D-4 PLC 各种装置功能 项目 规格 备注 演算控制方式 内存程序,往返式来回扫瞄方式 输入/输出控制方式 结束再生方式(当执行至 END 指令),输入/输出 有立即刷新指令 演算处理速度 基本指令 (数个 us); 应用指令(10~数百 us) 程序语言 指令+阶梯图 程序容量 500 steps 输入/输出接点 数字输入(X):6, 数字输出(Y):2, 模拟输入 AI : 2 ,模拟输出 AO :1 类别 装置 项目 范围 功能 X 外部输入继电器 X0~X17,16 点,8 进制编码 合计 对应至外部的输入点 Y 外部输出继电器 Y0~Y17,16 点,8 进制编码 32 点 对应至外部的输出点 辅助 一般用 M0~M159,160 点 合计 接点可于程序内做 On/Off 切 M 继电器 特殊用 继 M1000~M1031,32 点 192 点 换 电 T 定时器 100ms 定时 T0~T15,16 点 合计 TMR 指令所指定的定时器, 器 器 16 点 若计时到达则此同编号 T 的 接点将会 On 位 CNT 指令所指定的计数器, 元 16 位上数一 合计 若计数到达则此同编号 C 的 型 计数器 C0~C7,8 点 8点 接点将会 On 般用 态 C235,1 点 若计数到达 DHSCS 指令所 C 指定到的目标,接点将会导通 (On) 高速 32 位上/下 (透过 PG 卡输入) 合计 计数器 数一般用 ( 搭 配 DHSCS + M1018 + 1点 M1028~M1030 使用) T 定时器现在值 T0~T15,16 点 计时到达时,接点导通 暂存 C 计数器现在值 C0~C7,16 位计数器 8 点 计数到达时,该计数器接点导 器字 通 元组 停电保持用 D0~D9,10 点 资料 D 资料 D10~D29,20 点 合计 作为数据储存的内存区域 一般用 75 点 缓存器 特殊用 D1000~D1044,45 点 常数 K 10 进制 K-32,768 ~ K32,767 H 16 进制 H0000 ~ HFFFF 串行通信口(程序写入/读出) RS-485(slave 从站) 模拟输入/输出 内建两组模拟输入,一组模拟输出 功能扩充模块 选购 数字输出/输入卡,A/D D/A 卡 D-4-1 各装置功能说明 输入/输出接点的功能 输入接点 X 的功能:输入接点 X 与输入设备连接,读取输入讯号进入 PLC。每一个输入接点 X 的 A 或 D-21
附錄 D、VFD-E 與 PLC 的應用 B 接点于程序中使用次数没有限制。输入接点 X 之 On/Off 只会跟随输入设备的 On/Off 做变化,不可 使用周边装置(WPLSoft)来强制输入接点 X 之 On/Off。 输出接点 Y 的功能 输出接点 Y 的任务就是送出 On/Off 信号来驱动连接输出接点 Y 的负载。输出接点分成两种,一为继 电器(Relay),另一为晶体管(Transistor),每一个输出接点 Y 的 A 或 B 接点于程序中使用次数没有限 制,但输出线圈 Y 的编号,在程序建议仅能使用一次,否则依 PLC 的程序扫描原理,其输出状态的 决定权会落在程序中最后的输出 Y 的电路。 X0 1 Y0 Y0重 覆 X10 2 Y0 Y0的輸出最後會由電路 2 決定,亦即由X10的ON/OFF決定Y0的輸出。 数值、常数 [K] / [H] 常数 K 10 进制 K-32,768 ~ K32,767 H 16 进制 H0000 ~ HFFFF PLC 内部依据各种不同控制目的,共使用 5 种数值类型执行运算的工作,各种数值的任务及功能如 下说明。 二进制(Binary Number,BIN) PLC 内部之数值运算或储存均采用二进制,二进制数值及相关术语如下: 位(Bit) 位为二进制数值之最基本单位,其状态非 1 即 0 位数(Nibble) 由连续的 4 个位所组成(如 b3~b0),可用以表示一个位数之 10 进制数字 0~9 或 16 进制之 0~F。 字节(Byte) 是由连续之两个位数所组成(亦即 8 位,b7~b0),可表示 16 进制之 00~FF。 字符组(Word) 是由连续之两个字节所组成(亦即 16 个位,b15~b0),可表示 16 进制之 4 个 位数值 0000~FFFF。 双字符组 是由连续之两个字符组所组成(亦即 32 个位,b31~b0),可表示 16 进制之 8 (Double Word) 个位数值 00000000~FFFFFFFF 二进制系统中位、位数、字节、字符组、及双字符组的关系如下图所示: 雙字符組 字符組 DW 位元組 位數 W1 W2 位元 BY3 BY2 BY1 BY0 NB7 NB6 NB5 NB4 NB3 NB2 NB1 NB0 B31 B30 B29 B28 B27 B26 B25 B24 B23 B22 B21 B20 B19 B18 B17 B16 B15 B14 B13 B12 B11 B10 B9 B8 B7 B6 B5 B4 B3 B2 B1 B0 八进制(Octal Number,OCT) DVP-PLC 的外部输入及输出端子编号采八进制编码 例:外部输入:X0~X7,X10~X17…(装置编号); D-22
附錄 D、VFD-E 與 PLC 的應用 外部输出:Y0~Y7,Y10~Y17…(装置编号) 十进制(Decimal Number,DEC) 十进制在 PLC 系统应用的时机如: ; 作为定时器 T、计数器 C 等的设定值,例:TMR C0 K50。(K 常数) ; M、T、C、D 等装置的编号,例:M10、T3。(装置编号) ; 在应用指令中作为操作数使用,例:MOV K123 D0。(K 常数) BCD(Binary Code Decimal,BCD) 以一个位数或 4 个位来表示一个十进制的数据,故连续的 16 个位可以表示 4 位数的十进制数值数据。 主要用于读取指拨轮数字开关的输入数值或将数值数据输出至七段显示驱动器显示之用。 16 进位(Hexadecimal Number,HEX) H1A2B D0。(H 常 16 进位在 PLC 系统应用的时机如:在应用指令中作为操作数使用,例:MOV 数) 常数 K 十进制数值在 PLC 系统中,通常会在数值前面冠以一“K”字表示,例:K100,表示为十进制,其 数值大小为 100。 例外:当使用 K 再搭配位装置 X、Y、M 可组合成为位数、字节、字符组或双字符组形式的数据。例: K2Y10、K4M100。在此 K1 代表一个 4 bits 的组合,K2~K4 分别代表 8、12 及 16 bits 的组 合。 常数 H 16 进位数值在 PLC 中,通常在其数值前面冠以一“H”字符表示,例:H100,其表示为 16 进位, 数值大小为 100。 辅助继电器的功能 辅助继电器 M 与输出继电器 Y 一样有输出线圈及 A、B 接点,而且于程序当中使用次数无限制,使 用者可利用辅助继电器 M 来组合控制回路,但无法直接驱动外部负载。依其性质可区分为下列二种: 一般用辅助继电器:一般用辅助继电器于 PLC 运转时若遇到停电,其状态将全部被复归为 Off,再送 电时其状态仍为 Off。 特殊用辅助继电器:每一个特殊用辅助继电器均有其特定之功用,未定义的特殊用辅助继电器请勿使 用。 定时器的功能 定时器是以 100ms 为一个计时单位,计时方式采上数计时,当定时器现在值=设定值时输出线圈导通, 设定值为 10 进制 K 值,亦可使用数据缓存器 D 当成设定值。 定时器之实际设定时间 = 计时单位 * 设定值 D-23
附錄 D、VFD-E 與 PLC 的應用 计数器特点 项目 16 位计数器 32 位计数器 类型 计数方向 一般型 高速型 设定值 设定值的指定 上数 上、下数 现在值的变化 0~32,767 -2,147,483,648~+2,147,483,647 输出接点 常数 K 或数据缓存器 D 常数 K 或数据缓存器 D (指定 2 个) 复归动作 计数到达设定值就不再计数 计数到达设定值后,仍继续计数 接点动作 计数到达设定值,接点导通并保持 上数到达设定值接点导通并保持 On 下数到达设定值接点复归成 Off RST 指令被执行时现在值归零,接点被复归成 Off 在扫描结束时,统一动作 计数到达立即动作,与扫描周期无关 计数器的功能 计数器之计数脉波输入信号由 Off→On 时,计数器现在值等于设定值时输出线圈导通,设定值为 10 进制 K 值,亦可使用数据缓存器 D 当成设定值。 16 位计数器 C0~C7: ; 16 位计数器的设定范围:K0~K32,767。(K0 与 K1 相同,在第一次计数时输出接点马上导通。) ; 一般用计数器在 PLC 停电的时候,计数器现在值即被清除。 ; 若使用 MOV 指令或 WPLSoft 将一个大于设定值的数值传送到 C0 现在值缓存器时,在下次 X1 由 Off→On 时,C0 计数器接点即变成 On,同时现在值内容变成与设定值相同。 ; 计数器之设定值可使用常数 K 直接设定或使用缓存器 D (不包含特殊数据缓存器 D1000~ D1044) 中之数值作间接设定。 ; 设定值若使用常数 K 仅可为正数,使用数据缓存器 D 作为设定值可以是正负数。 计数器现在 值由 32,767 再往上累计时则变为 -32,768。 范例: X0 X0 RST C0 C0 X1 CNT C0 K5 LD X1 C0 RST C0 K5 Y0 LD C0 CNT Y0 LD OUT 1. 当 X0=On 时 RST 指令被执行,C0 的现在 X0 值归零,输出接点被复归为 Off。 2. 当 X1 由 Off→On 时,计数器之现在值将执 X1 行上数(加一)的动作。 C0計 數 現 在 值 5 3. 当计数器 C0 计数到达设定值 K5 时,C0 接 4 設定值 1 3 点导通,C0 现在值=设定值=K5。之后的 0 2 X1 触发信号 C0 完全不接受,C0 现在值保 0 持在 K5 处。 Y0, C0接 點 32 位高速上数/下数计数器 C235 32 位高速上数/下数计数器的设定范围:K-2,147,483,648~K2,147,483,647。 设定值可使用常数 K 或使用数据缓存器 D (不包含特殊数据缓存器 D1000~D1044)作为设定值可以是 正负数,若使用数据缓存器 D 则一个设定值占用两个连续的数据缓存器。 VFD-E 系列机种 PLC 功能支持之高速计数器,高速计数脉波输入频率可达 500 KHz。 D-24
附錄 D、VFD-E 與 PLC 的應用 缓存器依其性质可区分为下列五种 一般用缓存器:当 PLC 由 RUN→STOP 或断电时,缓存器内的数值数据会被清除为 0。 特殊用缓存器:每个特殊用缓存器均有其特殊定义与用途,主要作为存放系统状态、错误讯息、监视 状态之用。 D-4-2 特殊继电器功能说明 特M 功能说明 R/W M1000 运转监视常开接点(a 接点)。RUN 的状态下,此接点 On 只读 M1001 运转监视常闭接点(b 接点)。RUN 的状态下,此接点 Off 只读 M1002 启始正向(RUN 的瞬间’On’)脉波。RUN 的瞬间,产生正向的脉波,其宽度 = 扫描 只读 周期 M1003 启始负向(RUN 的瞬间’Off’)脉波。RUN 的瞬间,产生负向的脉波,其宽度 = 扫描 只读 周期 M1004 -- -- M1005 变频器故障指示 只读 M1006 输出频率为零 只读 M1007 变频器运转方向 FWD(0)/REV(1) 只读 M1008 -- -- M1009 -- -- M1010 -- -- M1011 10ms 时钟脉冲,5ms On/5ms Off 只读 M1012 100ms 时钟脉冲,50ms On / 50ms Off 只读 M1013 1s 时钟脉冲,0.5s On / 0.5s Off 只读 M1014 1min 时钟脉冲,30s On / 30s Off 只读 M1015 频率到达 只读 M1016 参数读写错误 只读 M1017 参数写入成功 只读 M1018 高速计数功能启动(M1028 ON 时) 只读 M1019 -- -- M1020 零旗号(Zero flag) 只读 M1021 借位旗号(Borrow flag) 只读 M1022 进位旗号(Carry flag) 只读 M1023 除数为 0 只读 M1024 -- -- M1025 变频器 RUN(ON)/STOP(OFF) 可擦写 M1026 设定驱动器运转方向: 0:正转 ; 1:反转 可擦写 M1027 触发驱动器 Reset 可擦写 M1028 高速计数功能开启(ON)/关闭(OFF) 可擦写 M1029 清除高速计数值 可擦写 M1030 高速计数器计数方向 上数(OFF)/下数(ON) 可擦写 M1031 强制设定 PID 当前积分值等于 D1019 (0 变 1 有效) 可擦写 D-4-3 特殊缓存器功能说明 特D 功能说明 R/W D1000 D1001 -- -- 内部 PLC 版本 只读 D-25
附錄 D、VFD-E 與 PLC 的應用 D1002 程序容量 只读 D1003 程序内存内容总和 只读 D1004~D1009 -- -- D1010 现在扫描时间 (单位: 0.1ms) 只读 D1011 最小扫描时间 (单位: 0.1ms) 只读 D1012 最大扫描时间 (单位: 0.1ms) 只读 D1013~D1017 -- -- D1018 当前积分值 只读 D1019 强制设定 PID 的 I 积分量 可擦写 D1020 输出频率(0.00~600.00Hz) (日本版 0.00~599.00Hz) 只读 D1021 输出电流(####.#A) 只读 扩充卡编号 02 USB Card (第二通讯卡 CME-USB01) 03 12Bit A/D (2CH)\&12Bit D/A (2CH) (模拟输入/输出卡 EME-A22A) 04 Relay Card-2C (扩充卡 EME-R2CA) D1022 05 Relay Card-3A (扩充卡 EME-R3AA) 只读 06 3IN/3OUT Card (扩充卡 EME-D33A) 07 PG Card (回授卡 EME-PG01) 08 6IN 110VAC card (扩充卡 EME-D611A) 09 AUI \& 3OUT (扩充卡 EME-A1D3A) D1023~D1024 保留 只读 D1025 高速计数器 C235 现在值(低位) 只读 D1026 高速计数器 C235 现在值(高位) 只读 D1027 PID 演算完后的频率命令 只读 D1028 AVI 模拟电压输入值 0~10V 对应 0~1023 只读 D1029 ACI 模拟电流输入值 4~20mA 对应 0~1023 或 AVI2 模拟电压输入值 0~10V 只读 对应 0~1023 D1030 V.R 数字操作器旋钮 0~10V 对应 0~1023 只读 D1031 扩充卡 AI1 模拟输入: 0~10V 或 0~20mA 对应(0~4095) 只读 D1032 扩充卡 AI2 模拟输入: 0~10V 或 0~20mA 对应(0~4095) 只读 D1033~D1035 -- -- D1036 驱动器错误码 只读 D1037~D1039 -- -- D1040 AFM 模拟输出值 可擦写 D1041 扩充卡 AO1 模拟输出 : 0~10V 或 0~20mA 对应(0~65535) 可擦写 D1042 扩充卡 AO2 模拟输出 : 0~10V 或 0~20mA 对应(0~65535) 可擦写 D1043 使用者可定义(当参数 00.04 设定为 2 可显示于面版上 C xxx) 可擦写 D1044 高速计数模式 可擦写 D-4-4 PLC 装置通讯地址 (Only for PLC2) 装置 范围 类别 位 址 (Hex) X 00~17 (Octal) bit 0400~040F Y 00~17 (Octal) bit 0500~050F T bit/word 0600~060F M 00~15 bit 0800~089F M 000~159 bit 0BE8~0C07 C 1000~1031 bit/word 0E00~0E07 D word 1000~101D D 0~7 word 13E8~1414 00~29 1000~1044 D-26
可使用之命令码 附錄 D、VFD-E 與 PLC 的應用 Function.Code 功能说明 功能对象 Y,M,T,C H1 Coil 状态读取 X,Y,M,T,C T,C,D H2 Input 状态读取 Y,M,T,C T,C,D H3 读取单笔数据 Y,M,T,C T,C,D H5 强制单个 Coil 状态改变 H6 写入单笔资料 HF 强制多个 Coil 状态改变 H10 写入多笔资料 在 PLC1 时,MODBUS 通讯会对应到驱动器的地址。 在 PLC2 时,MODBUS 通讯会对应到内部的 PLC 地址。 例如 : 在 PLC1 时,通讯地址 0400H 对应参数 04.00 在 PLC2 时,通讯地址 0400H 则对应为 X0。 D-5 指令功能说明 D-5-1 基本指令一览表 一般指令 脚本 功能 操作数 执行速度(us) LD 载入 A 接点 X、Y、M、T、C 10 LDI 载入 B 接点 X、Y、M、T、C 10 10 AND 串联 A 接点 X、Y、M、T、C 10 ANI 串联 B 接点 X、Y、M、T、C 10 OR 并联 A 接点 X、Y、M、T、C 10 ORI 并联 B 接点 X、Y、M、T、C 4 ANB 串联回路方块 4 ORB 并联回路方块 无 4 MPS 存入堆栈 无 4 MRD 堆栈读取(指针不动) 无 4 MPP 读出堆栈 无 4 INV 运算结果反相 无 无 输出指令 脚本 功能 操作数 执行速度(us) 14 OUT 驱动线圈 Y、M 14 SET 动作保持(ON) Y、M 18 RST 接点或缓存器清除 Y、M、T、C、D 定时器、计数器 脚本 功能 操作数 执行速度(us) D-27
附錄 D、VFD-E 與 PLC 的應用 TMR 16 位定时器 T-K 或 T-D 32 CNT 16 位计数器 C-K 或 C-D(16 位) 37 主控指令 脚本 功能 操作数 共通串行接点之连结 MC 共通串行接点之解除 N0~N7 MCR N0~N7 接点上升缘/下降缘检出指令 脚本 功能 操作数 执行速度(us) 12 LDP 正缘检出动作开始 X、Y、M、T、C 12 LDF 负缘检出动作开始 X、Y、M、T、C 12 ANDP 正缘检出串联连接 X、Y、M、T、C 12 ANDF 负缘检出串联连接 X、Y、M、T、C 12 ORP 正缘检出并联连接 X、Y、M、T、C 12 ORF 负缘检出并联连接 X、Y、M、T、C 上下微分输出指令 脚本 功能 操作数 执行速度(us) PLS 13 PLF 上微分输出 Y、M 13 下微分输出 Y、M 结束指令 脚本 功能 操作数 END 无 程序结束 D-5-2 基本指令详细说明 指令 功能 LD 载入 A 接点 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - LD 指令用于左母线开始的 A 接点或一个接点回路块开始的 A 接点,它的作用是把当前 指令說明 内容保存,同时把取来的接点状态存入累积缓存器内。 程式範例 阶梯图: 脚本: 说明: X0 X1 LD X0 载入 X0 之 A 接点 Y1 AND X1 串联 X1 之 A 接点 OUT Y1 驱动 Y1 线圈 指令 功能 LDI 载入 B 接点 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 操作数 X0~X17 9 9 9 9 - 9 D-28
附錄 D、VFD-E 與 PLC 的應用 指令說明 LDI 指令用于左母线开始的 B 接点或一个接点回路块开始的 B 接点,它的作用是把当前 程式範例 内容保存,同时把取来的接点状态存入累积缓存器内。 阶梯图: 脚本: 说明: X0 X1 LDI X0 载入 X0 之 B 接点 Y1 AND X1 串联 X1 之 A 接点 OUT Y1 驱动 Y1 线圈 指令 功能 AND 串联 A 接点 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - AND 指令用于 A 接点的串联连接,先读取目前所指定串联接点的状态再与接点之前逻 指令說明 辑运算结果作 “及”(AND)的运算,并将结果存入累积缓存器内。 程式範例 阶梯图: 脚本: 说明: X1 X0 LDI X1 载入 X1 之 B 接点 Y1 AND X0 串联 X0 之 A 接点 OUT Y1 驱动 Y1 线圈 指令 功能 ANI 串联 B 接点 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - ANI 指令用于 B 接点的串联连接,它的作用是先读取目前所指定串联接点的状态再与接 指令說明 点之前逻辑运算结果作 “及”(AND)的运算,并将结果存入累积缓存器内。 程式範例 阶梯图: 脚本: 说明: X1 X0 LD X1 载入 X1 之 A 接点 Y1 ANI X0 串联 X0 之 B 接点 OUT Y1 驱动 Y1 线圈 指令 功能 OR 并联 A 接点 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - OR 指令用于 A 接点的并联连接,它的作用是先读取目前所指定并联接点的状态再与接 指令說明 点之前逻辑运算结果作 “或”(OR)的运算,并将结果存入累积缓存器内。 阶梯图: 脚本: 说明: 程式範例 LD X0 载入 X0 之 A 接点 X0 Y1 OR X1 并联 X1 之 A 接点 X1 OUT Y1 驱动 Y1 线圈 D-29
附錄 D、VFD-E 與 PLC 的應用 指令 功能 ORI 并联 B 接点 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - ORI 指令用于 B 接点的并联连接,它的作用是先读取目前所指定并联接点的状态再与接 指令說明 点之前逻辑运算结果作 “或”(OR)的运算,并将结果存入累积缓存器内。 阶梯图: 脚本: 说明: 程式範例 LD X0 载入 X0 之 A 接点 X0 Y1 ORI X1 并联 X1 之 B 接点 X1 OUT Y1 驱动 Y1 线圈 指令 串联回路方块 功能 ANB 无 操作数 指令說明 ANB 是将前一保存的逻辑结果与目前累积缓存器的内容作 “及” (AND)的运算。 程式範例 阶梯图: 脚本: 说明: X0 载入 X0 之 A 接点 X1 LD X0 并联 X2 之 B 接点 载入 X1 之 B 接点 ANB Y1 ORI X2 并联 X3 之 A 接点 串联回路方块 X2 X3 LDI X1 驱动 Y1 线圈 OR X3 ANB Block A Block B OUT Y1 指令 并联回路方块 功能 ORB 无 操作数 指令說明 ORB 是将前一保存的逻辑结果与目前累积缓存器的内容作 “或” (OR) 的运算。 阶梯图: 脚本: 说明: 载入 X0 之 A 接点 程式範例 X1 Block A LD X0 并联 X1 之 B 接点 X0 Y1 载入 X2 之 B 接点 ANI X1 并联 X3 之 A 接点 X2 X3 并联回路方块 ORB LDI X2 驱动 Y1 线圈 Block B AND X3 ORB Y1 OUT D-30
附錄 D、VFD-E 與 PLC 的應用 指令 存入堆栈 功能 MPS 无 操作数 指令說明 将目前累积缓存器的内容存入堆栈。(堆栈指针加一) 指令 读出堆栈(指针不动) 功能 MRD 无 操作数 指令說明 读取堆栈内容存入累积缓存器。(堆栈指针不动) 指令 读出堆栈 功能 MPP 无 操作数 指令說明 自堆栈取回前一保存的逻辑运算结果,存入累积缓存器。(堆栈指针减一) 阶梯图: 脚本: 说明: 载入 X0 之 A 接点 程式範例 MPS LD X0 存入堆栈 串联 X1 之 A 接点 X0 X1 MPS 驱动 Y1 线圈 读出堆栈(指针不动) X2 Y1 AND X1 串联 X2 之 A 接点 M0 驱动 M0 线圈 MRD Y2 OUT Y1 读出堆栈 END 驱动 Y2 线圈 MRD 程序结束 AND X2 MPP OUT M0 MPP OUT Y2 END 指令 运算结果反相 功能 INV 无 操作数 指令說明 将 INV 指令之前的逻辑运算结果反相存入累积缓存器内。 阶梯图: 脚本: 说明: 程式範例 LD X0 载入 X0 之 A 接点 X0 Y1 INV 运算结果反相 OUT Y1 驱动 Y1 线圈 指令 功能 OUT 驱动线圈 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 操作数 X0~X17 9 9 - - - - D-31
附錄 D、VFD-E 與 PLC 的應用 指令說明 将 OUT 指令之前的逻辑运算结果输出至指定的组件。 线圈接点动作: OUT 指 令 运算结果 线圈 接点 FALSE Off A 接点(常开) B 接点(常闭) TRUE On 不导通 导通 导通 不导通 程式範例 阶梯图: 脚本: 说明: 载入 X0 之 B 接点 X0 X1 LD X0 并联 X1 之 A 接点 驱动 Y1 线圈 Y1 AND X1 OUT Y1 指令 功能 SET 操作数 动作保持(ON) 指令說明 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 - 9 9 --- 当 SET 指令被驱动,其指定的组件被设定为 On,且被设定的组件会维持 On,不管 SET 指令是否仍被驱动。可利用 RST 指令将该组件设为 Off。 阶梯图: Y0 脚本: 说明: LD X0 载入 X0 之 A 接点 程式範例 ANI Y0 并联 Y0 之 B 接点 X0 SET Y1 动作保持(ON) SET Y1 指令 功能 RST 接点或缓存器清除 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 - 9 9 9 9 9 指令說明 当 RST 指令被驱动,其指定的组件的动作如下: 元件 状态 Y, M 线圈及接点都会被设定为 Off。 T, C 目前计时或计数值会被设为 0,且线圈及接点都会被设定为 Off。 D 内容值会被设为 0。 若 RST 指令没有被执行,其指定组件的状态保持不变。 程式範例 阶梯图: 脚本: 说明: 载入 X0 之 A 接点 X0 LD X0 接点或缓存器清除 RST Y5 RST Y5 指令 功能 TMR 操作数 16 位定时器 T-K T0~T15,K0~K32,767 D-32
附錄 D、VFD-E 與 PLC 的應用 T-D T0~T15,D0~D29 指令說明 当 TMR 指令执行时,其所指定的定时器线圈受电,定时器开始计时,当到达所指定的 定时值(计时值 >= 设定值),其接点动作如下: NO(Normally Open) 接点 闭合 NC(Normally Close) 接点 开路 若 RST 指令没有被执行,其指定组件的状态保持不变。 程式範例 阶梯图: 脚本: 说明: X0 LD X0 载入 X0 之 A 接点 TMR T5 K1000 T5 定时器 TMR T5 K1000 设定值为 K1000 指令 功能 CNT 16 位计数器 操作数 C-K C0~C7,K0~K32,767 C-D C0~C7,D0~D29 当 CNT 指令由 Off→On 执行,表示所指定的计数器线圈由失电→受电,则该计数器计 指令說明 数值加 1,当计数到达所指定的定数值(计数值 = 设定值),其接点动作如下: NO(Normally Open) 接点 闭合 NC(Normally Close) 接点 开路 当计数到达之后,若再有计数脉波输入,其接点及计数值均保持不变,若要重新计数或 作清除的动作,请利用 RST 指令。 程式範例 阶梯图: 脚本: 说明: X0 LD X0 载入 X0 之 A 接点 CNT C2 K100 CNT C2 定时器 C2 K100 设定值为 K100 指令 功能 MC/MCR 共通串联接点之连结 / 解除 操作数 N0~N7 指令說明 MC 为主控起始指令,当 MC 指令执行时,位于 MC 与 MCR 指令之间的指令照常执行。 当 MC 指令 Off 时,位于 MC 与 MCR 指令之间的指令动作如下所示: 指令区分 说明 一般定时器 计时值归零,线圈失电,接点不动作 子程序用定时器 计时动作不受影响,计时到达,接点动作 积算型定时器 线圈失电,计时值及接点保持目前状态 计数器 线圈失电,计数值及接点保持目前状态 OUT 指令驱动的线圈 全部不受电 SET,RST 指令驱动的组件 保持目前状态 应用指令 全部不动作 MCR 为主控结束指令,置于主控程序最后,在 MCR 指令之前不可有接点指令。 D-33
附錄 D、VFD-E 與 PLC 的應用 MC-MCR 主控程序指令支持巢状程序结构,最多可 8 层,使用时依 N0~N7 的顺序,请 参考如下程序所示: 程式範例 阶梯图: 脚本: 说明: LD X0 载入 X0 之 A 接点 X0 N0 共通串联接点之 X1 MC N0 MC N0 连结 X2 Y0 载入 X1 之 A 接点 X3 MC N1 LD X1 驱动 Y0 线圈 Y1 OUT Y0 X10 MCR N1 载入 X2 之 A 接点 X11 MCR N0 : X2 N1 共通串联接点之 MC N0 LD 连结 Y10 载入 X3 之 A 接点 MCR N0 MC N1 驱动 Y1 线圈 LD X3 N1 共通串联接点之 OUT Y1 解除 : N0 共通串联接点之 解除 MCR N1 载入 X10 之 A 接点 : N0 共通串联接点之 连结 MCR N0 载入 X11 之 A 接点 驱动 Y10 线圈 : LD X10 N0 共通串联接点之 解除 MC N0 LD X11 OUT Y10 : N0 MCR 指令 功能 LDP 正缘检出动作开始 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - LDP 指令用法上与 LD 相同,但动作不同,它的作用是指当前内容保存,同时把取来的 指令說明 接点上升缘检出状态存入累积缓存器内。 程式範例 阶梯图: 脚本: 说明: X0 X1 X0 正缘检出动作开 LDP X0 始 Y1 串联 X1 之 A 接点 驱动 Y1 线圈 AND X1 OUT Y1 D-34
附錄 D、VFD-E 與 PLC 的應用 指令 功能 LDF 负缘检出动作开始 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - LDF 指令用法上与 LD 相同,但动作不同,它的作用是指当前内容保存,同时把取来的 指令說明 接点下降缘检出状态存入累积缓存器内。 阶梯图: 脚本: 说明: X0 负缘检出动作开 程式範例 LDF X0 始 X0 X1 串联 X1 之 A 接点 驱动 Y1 线圈 Y1 AND X1 OUT Y1 指令 功能 ANDP 正缘检出串联连接 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - 指令說明 ANDP 指令用于接点上升缘检出的串联连接。 阶梯图: 脚本: 说明: LD X0 载入 X0 之 A 接点 程式範例 X1 正缘检出串联连 X0 X1 接 驱动 Y1 线圈 Y1 ANDP X1 OUT Y1 功能 指令 ANDF 负缘检出串联连接 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - 指令說明 ANDF 指令用于接点下降缘检出的串联连接。 阶梯图: 脚本: 说明: LD X0 载入 X0 之 A 接点 程式範例 X1 负缘检出串联连 X0 X1 接 驱动 Y1 线圈 Y1 ANDF X1 OUT Y1 功能 指令 ORP 正缘检出并联连接 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - D-35
附錄 D、VFD-E 與 PLC 的應用 指令說明 ORP 指令用于接点上升缘检出的并联连接。 阶梯图: 脚本: 说明: 程式範例 LD X0 载入 X0 之 A 接点 X0 Y1 X1 正缘检出并联连 X1 接 ORP X1 OUT Y1 驱动 Y1 线圈 指令 功能 ORF 负缘检出并联连接 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 9 9 9 9 9 - 指令說明 ORF 指令用于接点下降缘检出的并联连接。 阶梯图: 脚本: 说明: 程式範例 LD X0 载入 X0 之 A 接点 X0 Y1 X1 负缘检出并联连 X1 ORF X1 接 OUT Y1 驱动 Y1 线圈 指令 功能 PLS 上微分输出 操作数 X0~X17 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 - 9 9 - - - 上微分输出指令。当 X0=Off→On(正缘触发)时 PLS 指令被执行,M0 送出一次脉波, 指令說明 脉波长度为一次扫描时间。 程式範例 阶梯图: PLS M0 脚本: 说明: SET Y0 LD X0 载入 X0 之 A 接点 X0 PLS M0 M0 上微分输出 M0 LD M0 载入 M0 之 A 接点 SET Y0 Y0 动作保持(ON) 时序图: X0 一次掃描時間 M0 Y0 指令 功能 PLF 操作数 下微分输出 Y0~Y17 M0~M159 T0~15 C0~C7 D0~D29 X0~X17 D-36
附錄 D、VFD-E 與 PLC 的應用 - 9 9 --- 下微分输出指令。当 X0= On→Off (负缘触发)时 PLF 指令被执行,M0 送出一次脉波, 指令說明 脉波长度为一次扫描时间。 阶梯图: PLF M0 脚本: 说明: SET Y0 LD X0 载入 X0 之 A 接点 程式範例 PLF M0 M0 下微分输出 X0 LD M0 载入 M0 之 A 接点 M0 SET Y0 Y0 动作保持(ON) 时序图: X0 一次掃描時間 M0 Y0 指令 功能 END 程序结束 操作数 无 在阶梯图程序或指令程序最后必须加入 END 指令。PLC 由地址 0 扫描到 END 指令, 指令說明 执行之后,返回到地址 0 重新作扫描执行。 D-5-3 应用指令一览表 分类 API 脚本 P 指令 功能 STEPS 16 位 32 位 16bit 32bit 传 10 CMP – 9 比较设定输出 7– 送 11 9 区域比较 9– 比 12 ZCP – 9 数据移动 5– 较 15 MOV – 9 全部传送 7– 20 BMOV – 9 BIN 加法 7– 四 21 ADD – 9 BIN 减法 7– 则 22 SUB – 9 BIN 乘法 7– 逻 23 MUL – 9 BIN 除法 7– 辑 24 DIV – 9 BIN 加一 3– 运 25 INC – 9 BIN 减一 3– 算 30 DEC – 9 右旋转 5– 旋转 ROR – 位移 31 – 9 左旋转 5– ROL 变频器 53 X 比较设定(高速计数器) – 13 特殊 139 – DHSCS 9 变频器参数读取 5– 指令 RPR – 140 9 变频器参数写入 5– WPR – 141 9 变频器 PID 控制 9– FPID – 142 9 变频器运转控制 7– FREQ – D-37
附錄 D、VFD-E 與 PLC 的應用 D-5-4 应用指令详细说明 API CMP S1 S2 D 比较设定输出 10 P 位装置 字符装置 16 位指令 (7 STEP) X Y M K H KnX KnY KnM T C D CMP 连续执行型 CMPP 脉波执行型 - - S1 * * * * * * ** * * 32 位指令 S2 * * * * * * - - D ** 操作数使用注意: 旗标信号:无 D 操作数会占用连续 3 点 指令說明 S1 :比较值 1。 S2 :比较值 2。 D :比较结果。 将操作数 S1 和 S2 的内容作大小比较,其比较结果在 D 作表示。 大小比较是以代数来进行,全部的数据是以有号数二进制数值来作比较。因此 16 位指令,b15 为 1 时,表示为负数。 指定装置为 Y0,则自动占有 Y0,Y1 及 Y2。 程式範例 当 X10=On 时,CMP 指令执行,Y0,Y1 及 Y2 其中之一会 On,当 X10=Off 时, CMP 指令不执行,Y0,Y1 及 Y2 状态保持在 X10=Off 之前的状态。 若需要得到≧、≦、≠之结果时,可将 Y0~Y2 串并联即可取得。 X10 CMP K10 D10 Y0 Y0 K 1 0 > D 1 0現 在 值 時, Y 0為O N Y1 K 1 0 = D 1 0現 在 值 時, Y 1為O N Y2 K 1 0 < D 1 0現 在 值 時, Y 2為O N 若要清除其比较结果请使用 RST 指令。 X10 RST M0 RST M1 RST M2 D-38
附錄 D、VFD-E 與 PLC 的應用 API ZCP S1 S2 S D 区域比较 11 P 位装置 字符装置 16 位指令 (9 STEP) ZCP 连续执行型 X Y M K H KnX KnY KnM T C D ZCPP 脉波执行型 S1 * ***** * * - - S2 * * * * * * * * 32 位指令 S ******** - - D ** 操作数使用注意: 旗标信号:无 S1 操作数内容值请小于 S2 操作数内容值 D 操作数会占用连续 3 点 指令說明 S1 :区域比较之下限值。 S2 :区域比较之上限值。 S :比较值。 D : 比较结果。 比较值 S 与下限 S1 及上限 S2 作比较,其比较结果在 D 作表示。 当下限 S1 >上限 S2 时,则指令以下限 S1 作为上下限进行比较。 大小比较是以代数来进行,全部的数据是以有号数二进制数值来作比较。因此 16 位指令,b15 为 1 时,表示为负数。 程式範例 指定装置为 M0,则自动占有 M0,M1 及 M2。 当 X0=On 时,ZCP 指令执行,M0,M1 及 M2 其中之一会 On,当 X0=Off 时,ZCP 指令不执行,M0,M1 及 M2 状态保持在 X0=Off 之前的状态。 若需要得到≧、≦、≠之结果时,可将 Y0~Y2 串并联即可取得。 X0 ZCP K10 K100 C10 M0 M0 K10>C10現在值時, M0為ON M1 K10<=C10現在值時 <=K100, M1為ON M2 C10現在值時>K100, M2為ON 若要清除其比较结果请使用 RST 指令。 D-39
附錄 D、VFD-E 與 PLC 的應用 API SD 数据移动 MOV 12 P 位装置 字符装置 16 位指令 (5 STEP) XYM K H KnX KnY KnM T C D MOV 连续执行型 MOVP 脉波执行型 S* ***** - - D ** - *** * * 32 位指令 操作数使用注意:无 - 旗标信号: 指令說明 S :资料之来源。 D :数据之搬移目的地。 当该指令执行时,将 S 的内容直接搬移至 D 内。当指令不执行时, D 内 容不会变化。 程式範例 当 X0=Off 时,D10 内容没有变化,若 X0=On 时,将数值 K10 传送至 D10 数据缓 存器内。 当 X1=Off 时,D10 内容没有变化,若 X1=On 时,将 T0 现在值传送至 D10 数据缓 存器内。 X0 MOV K10 D0 X1 MOV T0 D10 D-40
附錄 D、VFD-E 與 PLC 的應用 API SDn 全部传送 BMOV 15 P 位装置 字符装置 16 位指令 (7 STEP) X Y M K H KnX KnY KnM T C D BMOV 连续执行型 BMOVP 脉波执行型 S ****** D * * * * * 32 位指令 n ** ---- 操作数使用注意: n 操作数范围 n =1~512 旗标信号:无 指令說明 S :来源装置起始。 D :目的地装置起始。 n :传送区块长度。 S 所指定的装置起始号码开始算 n 个缓存器的内容被传送至 n 所指定的装 置起始号码开始算 n 个缓存器当中,如果 n 所指定点数超过该装置的使用范围时, 只有有效范围被传送。 程式範例 当 X10=ON 时,D0~D3 个缓存器的内容被传送至 D20~D23 的 4 个缓存器内。 (一) X10 BMOV D0 D20 K4 D0 D20 D1 D21 n=4點 D2 D22 D3 D23 程式範例 如果指定位装置 KnX、KnY、KnM、KnS 作传送时, S 及 D 的位数必须 (二) 相同,即 n 之数目须相同。 M1000 BMOV K1M0 K1Y0 K3 M0 Y0 M1 Y1 M2 Y2 M3 Y3 M4 Y4 M5 M6 Y5 n=3點 M7 Y6 M8 Y7 M9 M10 Y10 M11 Y11 Y12 Y13 D-41
附錄 D、VFD-E 與 PLC 的應用 API ADD S1 S2 D BIN 加法 20 P 位装置 字符装置 16 位指令 (7 STEP) X Y M K H KnX KnY KnM T C D ADD 连续执行型 ADDP 脉波执行型 S1 * * * * * * * * S2 * * * * * * * * 32 位指令 - - - - D ***** 操作数使用注意:无 旗标信号:M1020 零旗号 Zero flag M1021 借位旗号 Borrow flag M1022 进位旗号 Carry flag 请参考下列补充说明 指令說明 S1 :被加数。 S2 :加数。 D :和。 将两个资料源: S1 及 S2 以 BIN 方式相加的结果存于 D 。 各数据的最高位位为符号位 0 表(正)1 表(负),因此可做代数加法运算。(例如: 3+(-9)=-6) 加法相关旗号变化。 1. 演算结果为 0 时,零旗号(Zero flag)M1020 为 On。 2. 演算结果小于 –32,768 时,借位旗号(Borrow flag)M1021 为 On。 3. 演算结果大于 32,767 时,进位旗号(Carry flag)M1022 为 On。 程式範例 16 位 BIN 加法:当 X0=On 时,被加数 D0 内容加上加数 D10 之内容将结果存在 D20 之内容当中。 X0 ADD D0 D10 D20 補充說明 旗号动作与数值的正负关系: 16:位元零旗號 零旗號 零旗號 32,767 0 1 2 -2, -1, 0 -32,768 -1, 0 1 借位旗號 資料的最高位 資料的最高位 進位旗號 位 元1為 表(負) 位 元 為0表(正) D-42
附錄 D、VFD-E 與 PLC 的應用 API SUB S1 S2 D BIN 减法 21 P 位装置 字符装置 16 位指令 (7 STEP) XYM K H KnX KnY KnM T C D SUB 连续执行型 SUBP 脉波执行型 S1 * ***** - - S2 * ***** ** * * 32 位指令 D *** - - 操作数使用注意:无 ** 旗标信号:M1020 零旗号 Zero flag M1021 借位旗号 Borrow flag M1022 进位旗号 Carry flag 请参考下列补充说明 指令說明 S1 :被减数。 S2 :减数。 D :差。 将两个资料源: S1 及 S2 以 BIN 方式相减的结果存于 D 。 各数据的最高位位为符号位 0 表(正)1 表(负),因此可做代数减法运算。 减法相关旗号变化。 1. 演算结果为 0 时,零旗号(Zero flag)M1020 为 On。 2. 演算结果小于 –32,768 时,借位旗号(Borrow flag)M1021 为 On。 3. 演算结果大于 32,767 时,进位旗号(Carry flag)M1022 为 On。 程式範例 16 位 BIN 减法:当 X0=On 时,将 D0 内容减掉 D10 内容将差存在 D20 之内容中。 X0 SUB D0 D10 D20 D-43
附錄 D、VFD-E 與 PLC 的應用 API MUL S1 S2 D BIN 乘法 22 P 位装置 字符装置 16 位指令 (7 STEP) X Y M K H KnX KnY KnM T C D MUL 连续执行型 MULP 脉波执行型 * - - S1 * * * * * * ** * * * 32 位指令 S2 * * * * * - - D ** ** 操作数使用注意: 旗标信号:无 16 位指令 D 操作数会占用连续 2 点 指令說明 S1 :被乘数。 S2 :乘数。 D :积。 将两个资料源: S1 及 S2 以有号数二进制方式相乘后的积存于 D 。 16 位 BIN 乘法运算: S1 S2 D +1 D b15..........b0 b15..........b0 b31..........b16b15..............b0 X= b15為符號位元 b15為符號位元 b31為符號位元(即D+1的b15) b15=0 S1為正數 b15=0 S2為正數 b31=0 D(D+1)為正數 b15=1 S1為負數 b15=1 S2為負數 b31=1 D(D+1)為負數 D 为位装置时,可指定 K1~K4 构成 16 位,占用连续 2 组。 程式範例 16 位 DO 乘上 16 位 D10 其结果是 32 位之积,上 16 位存于 D21,下 16 位存于 D20 内,结果之正负由最左边位之 Off/On 来代表正或负值。 X0 MUL D0 D10 D20 D-44
附錄 D、VFD-E 與 PLC 的應用 API S1 S2 D BIN 除法 DIV 23 P 位装置 字符装置 16 位指令 (7 STEP) X Y M K H KnX KnY KnM T C D DIV 连续执行型 DIVP 脉波执行型 * - - S1 * * * * * * ** * * * 32 位指令 S2 * * * * * - - D ** ** 操作数使用注意: 旗标信号:无 16 位指令 D 操作数会占用连续 2 点 指令說明 S1 :被除数。 S2 :除数。 D :商及余数。 将两个资料源: S1 及 S2 以有号数二进制方式相除后的商及余数存于 D 。必须注意 16 位运算时, S1 , S2 及 D 的符号位。 16 位 BIN 除法运算: 商數 餘數 S1 S2 D D +1 b15..........b0 b15..........b0 b31..........b16b15..............b0 /= D 为位装置时,可指定 K1~K4 构成 16 位,占用连续 2 组得到商及余数。 程式範例 当 X0=On 时,被除数 D0 除以除数 D10 而结果商被指定放于 D20,余数指定放于 D21 内。所得结果之正负由最高位位之 Off/On 来代表正或负值。 X0 DIV D0 D10 D20 DIV D0 D10 K4Y0 D-45
附錄 D、VFD-E 與 PLC 的應用 API D BIN 加一 INCP 脉波执行型 INC - - 字符装置 16 位指令 (3 STEP) 24 P C D INC 连续执行型 H KnX KnY KnM T ** 位装置 *** 32 位指令 XYM K -- D 操作数使用注意:无 旗标信号:无 指令說明 D :目的地装置。 若指令不是脉波执行型,则当指令执行时,程序每次扫描周期被指定的装置 D 内 容都会加 1。 本指令一般都是使用脉波执行型指令(INCP)。 16 位运算时,32,767 再加 1 则变为-32,768。 程式範例 当 X0=Off→On 时,D0 内容自动加 1。 X0 INCP D0 D-46
附錄 D、VFD-E 與 PLC 的應用 API D BIN 减一 DEC 25 P 位装置 字符装置 16 位指令 (3 STEP) DECP 脉波执行型 C D DEC 连续执行型 - - XYM K H KnX KnY KnM T D* **** 32 位指令 操作数使用注意:无 - - 旗标信号:无 指令說明 D :目的地装置。 若指令不是脉波执行型,则当指令执行时,程序每次扫描周期被指定的装置 D 内 容都会减 1。 本指令一般都是使用脉波执行型指令(DECP)。 16 位运算时,-32,768 再减 1 则变为 32,767。 当 X0=Off→On 时,D0 内容自动减 1。 程式範例 X0 DECP D0 D-47
附錄 D、VFD-E 與 PLC 的應用 API Dn 右旋转 ROR 30 P 位装置 字符装置 16 位指令 (5 STEP) X Y M K H KnX KnY KnM T C D ROR 连续执行型 RORP 脉波执行型 D ***** 32 位指令 ---- n ** 操作数使用注意: D 操作数若指定为 KnY、KnM 时,只有 K4(16 位)有效 旗标信号:M1022 进位旗号 Carry flag n 操作数 n=K1~K16(16 位) 指令說明 D :欲旋转之装置。 n :一次旋转之位数。 将 D 所指定的装置内容一次向右旋转 n 个位。 本指令一般都是使用脉波执行型指令(RORP)。 程式範例 当 X0=Off→On 变化时,D10 的 16 个位以 4 个位为一组往右旋转,如下图所示标 明※的位内容被传送至进位旗号信号 M1022 内。 X0 RORP D10 K4 右旋轉 上位 下位 D10 0 1 1 1 1 0 1 1 0 1 0 0 0 1 0 1 M1022 ※ 進位旗標 1 6個 位 元 一次旋轉後 上位 下位 D10 0 1 0 1 0 1 1 1 1 0 1 1 0 1 0 0 0 M1022 ※ ※ D-48
附錄 D、VFD-E 與 PLC 的應用 API Dn 左旋转 ROL 31 P 位装置 字符装置 16 位指令 (5 STEP) D ROL 连续执行型 X Y M K H KnX KnY KnM T C * ROLP 脉波执行型 * - - D *** 32 位指令 -- n ** 操作数使用注意: D 操作数若指定为 KnY、KnM 时,只有 K4(16 位)有效 旗标信号:M1022 进位旗号 Carry flag n 操作数 n=1~16(16 位) 指令說明 D :欲旋转之装置。 n :一次旋转之位数。 将 D 所指定的装置内容一次向左旋转 n 个位。 本指令一般都是使用脉波执行型指令(ROLP)。 程式範例 当 X0=Off→On 变化时,D10 的 16 个位以 4 个位为一组往左旋转,如下图所示标 明※的位内容被传送至进位旗号信号 M1022 内。 X0 ROLP D10 K4 上位 ※ 左旋轉 下位 M1022 進位旗標 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 D10 1 6個 位 元 一次旋轉後 上位 下位 M1022 1 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 D10 ※ ※ D-49
附錄 D、VFD-E 與 PLC 的應用 D-5-5 变频器特殊应用指令详细说明 API S1 S2 D 比较设定(高速计数器) HSCS 53 D 位装置 字符装置 16 位指令 X Y M K H KnX KnY KnM T C D - - - - S1 * * * * * * * * S2 * 32 位指令 (13 STEP) DHSCS 连续执行型 - 脉波执行型 D ** 操作数使用注意:无 旗标信号:无 指令說明 S1 :比较值。 S2 :高速计数器编号 C235。 D :比较结果。 使用 DHSCS 指令须另选购 PG 卡,接受外部输入脉波计数。 DHSCS 指令设定所要的目标比较值 S1,并且把 M1028 =On,计数器 C235 将自 行计数。将 M1029 设为 On,即可清除计数器 C235 的计数值。 本指令接点条件请使用接点上升缘/下降缘检出指令(LDP/LDF…)来控制,若使用 A/B 接点结果会造成错误,请注意。在 M1028 On 时,DHSCS 指令执行过后会将 M1018 设定为 On,此外也可利用 M1029 清除高速计数值,执行完成后会自动将 M1018 清除为 Off。 高速计数器 C235 有 3 种控制的计数模式,可由 D1044 来设定计数模式。 模式 1:”A-B 相脉波” 4 倍频模式(D1044=0),使用者可以透过回授卡 EME-PG01 在 A 及 B 接点输入 A 相和 B 相的脉波来做计数器的输入,此外,/A 及/B 接点需和 GND 短接。 模式 2:脉波+计数方向” 模式(D1044=1),使用者可以由脉波的输入以及计数方向 来做上数或下数。定义回授卡上的 A 接点来做脉波输入,B 接点来做上数 或下数的切换,此外/A 及/B 接点需和 GND 短接。 模式 3:脉波+内部旗标(M1030)” 模式(D1044=2),使用者可以由脉波的输入以及 内部旗标(M1030)来做上数或下数。定义回授卡上的 A 接点来做脉波输入, 内部旗标(M1030)来做上数或下数的切换,此外/A 接点需和 GND 短接。 D-50
附錄 D、VFD-E 與 PLC 的應用 程式範例 当 M100=On 时,设定为 A-B 相脉波计数模式。当 M101=On 时,设定为脉波+计 数方向计数模式。当 M102=On 时,设定为脉波+内部旗标(M1030)计数模式。 M1030 来设定高速计数器使用脉波+内部旗标(M1030)计数模式计数之方向,上数 (Off)/下数(On)。 若 M0=Off→On 时,DHSCS 指令执行启动高速计数器比较设定,当 C235 之现在 值由 H’2→H’3 或 H’4→H’3 变化时,M3=On,且一直保持为 On。 若 M1=Off→On 时,DHSCS 指令执行启动高速计数器比较设定,当 C235 之现在 值由 H’1004F→H’10050 或 H’10051→H’10050 变化时,M2=On,且一直保持为 On。 M1028:来设定高速计数功能,开启(On)/关闭(Off)。 M1029:清除高速计数值。 M1018:高速计数功能启动(M1028 On 时)。 D1025:高速计数器 C235 现在值(低位)。 D1026:高速计数器 C235 现在值(高位)。 M100 MOV K0 D1044 M101 MOV K1 D1044 M102 MOV K2 D1044 M102 M1030 M0 M1018 DHSCS H10050 C235 M2 M1 M1018 DHSCS H3 C235 M3 M2 Y1 M3 M10 M1028 M11 M1029 M1000 MOV D1025 D0 MOV D1026 D1 END D-51
附錄 D、VFD-E 與 PLC 的應用 API S1 S2 变频器参数读取 RPR 139 P 位装置 字符装置 16 位指令 (5 STEP) XYM K H KnX KnY KnM T C D RPR 连续执行型 RPRP 脉波执行型 S1 * * - - * S2 * 32 位指令 - 操作数使用注意:无 - 旗标信号:无 指令說明 S1 :欲读取数据的参数地址。 S2 :欲读取数据存放之缓存器。 API S1 S2 变频器参数写入 WPR 140 P 位装置 字符装置 16 位指令 (5 STEP) XYM K H KnX KnY KnM T C D WPR 连续执行型 WPRP 脉波执行型 S1 * * - S2 * * * - - 操作数使用注意:无 * 32 位指令 - 旗标信号:无 指令說明 S1 :欲写入的资料。 S2 :欲写入数据的参数地址。 D-52
附錄 D、VFD-E 與 PLC 的應用 程式範例 将 VFD-E 变频器的 MODBUS 地址 H2100 数据读出后存放到 D0,H2101 数据读 出后存放 D1。 当 M0=On 时,将 D10 内容值写到 VFD-E 变频器的 MODBUS 地址 H2001(频率命 令)中。 当 M1=On 时,将 H2 写到 VFD-E 变频器的 MODBUS 地址 H2000(对驱动器的命 令)中。即是命令驱动器启动。 当 M2=On 时,将 H1 写到 VFD-E 变频器的 MODBUS 地址 H2000(对驱动器的命 令)中。即是命令驱动器停止。 当参数写入成功 M1017=On。 如果是用在写入参数的部份,则容许改值次数限制 106 次内,如超过使用,EEPROM 会因写入次数过多而造成损坏。 M1000 RPR H2100 D0 M0 RPR H2101 D1 M1 WPR D10 H2001 M2 WPRP H2 H2000 M1017 WPRP H1 H2000 Y0 END API FPID S1 S2 S3 S4 变频器 PID 控制 141 P 位装置 字符装置 16 位指令 (9 STEP) X Y M K H KnX KnY KnM T C D FPID 连续执行型 FPIDP 脉波执行型 - - S1 * * * - S2 * * * 32 位指令 S3 * * *- S4 * * * 操作数使用注意:无 旗标信号:无 指令說明 S1 :PID 参考目标值输入端子选择(0~4)。 S2 :PID 功能比例值增益 P (0~100)。 S3 :PID 功能积分时间 I (0~10000)。 S4 :PID 功能微分时间 D (0~100)。 此指令 FPID 可以直接控制变频器的回授控制 PID 参数 10.00 PID 参考目标值输入 端子选择、10.02 比例值 P 增益、10.03 积分时间 I、10.04 微分时间 D。 D-53
附錄 D、VFD-E 與 PLC 的應用 程式範例 当 M0=On 时,设定 PID 参考目标值输入端子选择 0(无 PID 功能),PID 功能比例 值增益 P 为 0(单位:0.1),PID 功能积分时间 I 为 1(单位:0.01 秒),PID 功能微分 时间 D 为 1(单位:0.01 秒)。 当 M1=On 时,设定 PID 参考目标值输入端子选择 0(无 PID 功能),PID 功能比例 值增益 P 为 1,PID 功能积分时间 I 为 0,PID 功能微分时间 D 为 0。 当 M2=On 时,设定 PID 参考目标值输入端子选择 1(目标频率输入由数字操作器控 制),PID 功能比例值增益 P 为 1,PID 功能积分时间 I 为 0,PID 功能微分时间 D 为 0。 D1027:PID 演算完后的频率命令。 M0 FPID H0 H0 H1 H1 M1 FPID H0 H1 H0 H0 M2 FPID H1 H1 H0 H0 M1000 MOV D1027 D1 END D-54
附錄 D、VFD-E 與 PLC 的應用 API S1 S2 S3 驱动器速度控制 FREQ 16 位指令 (7 STEP) 142 P C D FREQ 连续执行型 FREQP 脉波执行型 位装置 字符装置 * * 32 位指令 XYM K H KnX KnY KnM T *- - - - S1 * * S2 * * 旗标信号:NA S3 * * 操作数使用注意:无 指令說明 S1 :频率命令。 S2 :加速时间。 S3 :减速时间。 此指令 FREQ 可控制变频器频率命令,加速/减速时间,另使用 M1025 控制变频器 RUN(On)/STOP(Off)及 M1026 控制变频器运转方向 FWD(On)/REV(Off)。 程式範例 M1025:变频器 RUN(On)/STOP(Off)。 M1026:设定驱动器运转方向: 0:正转 ; 1:反转。 M1015:频率到达。 当 M10=On 时,设定变频器频率命令 K300(3.00Hz),加速/减速时间为 0。 当 M11=On 时,设定变频器频率命令 K3000(30.00Hz),加速时间为 50,减速时间 为 60。 S2 ,S3 : 加减速时间设定中, 其小数字数是根据 01.09 的定义而定的。 若参数 01.09=1 时, 单位: 0.01 秒, 则下图中 S2(加速时间)设定 50,其实为 0.5 sec; S3 (减速时间) 设定 60 ,其实为 0.6 sec 若参数 01.09=0 时, 单位: 0.1 秒, 则下图中 S2(加速时间)设定 50,其实为 5 sec; S3 (减速时间) 设定 60 ,其实为 6 sec M1000 M1025 M11 M1026 M10 M11 FREQP K300 K0 K0 M11 M10 FREQ K3000 K50 K60 END D-55
附錄 D、VFD-E 與 PLC 的應用 D-6 错误显示及处理 Code ID* 说明 建议处理方式 PLod 20 下载 PLC 程序时,程序代码内的组 检视程序是否有错误,修正后再下载程序 PLSv 件超出范围,如 : T 组件支持范围为 T0~T15,当语法有使用 T16 时,则 PLdA 在下载程序时,会显示 PLod 错误 PLFn 21 PLC 程序执行中,当 PLC 欲写入数 检视程序是否有错误修正后再重新下载程序 PLor 据至指定地址时,发现写入地址不合 PLFF 理,则会显示 PLSv 错误 PLSn PLEd 22 PLC 程序执行中,外部 MODBUS 对 确认上位机传送命令是否正确 PLCr 内部 PLC 读写不合理的组件时则会 显示 PLdA 错误 23 下载程序时发现使用不支持指令,则 请先确认 WPL 软件版本是否太旧,可至官 会显示 PLFn 错误 网下载版本 30 PLC 程序执行中,检视到内部程序代 先清除PLC 程序(参数00.02 设为6),再重 码异常则会显示 PLor 错误 新上电及下载程序 31 PLC 程序执行中,当 PLC 执行对应 当启用PLC功能时,如内部PLC无程序则会 的指令不合理,则会显示 PLFF 错误 显示PLFF,此为正常情形,请直接下载程序 即可。 32 PLC 程序执行中发现检查码错误 先清除 PLC 程序(参数 00.02 设为 6),再 重新上电及下载程序 33 PLC 程序执行中发现程序中没有结 先清除 PLC 程序(参数 00.02 设为 6),再 束指令 END 重新上电及下载程序 34 1. MC 指令连续使用 9 次以上 检视程序是否有错误修正后再重新下载程序 *ID : Warning code D-56
附录 E、CANopen 通讯简介 此最新内容请至 http://www.delta.com.tw/industrialautomation/ 下载 E-1 CANopen 概论 E-2 CANopen 通讯接口说明 内建的 CANopen 功能为一种外部控制的方法。主站可以藉由 CANopen 通讯协议的方式控制变频器 。 CANopen 是 一 种 以 CAN 为 基 础的上层 协议, 提供了一 套标准的 通讯 对象:包 含及时传 输数 据 PDO(Process Data Objects)组态数据 SDO(Service Data Objects)和一些特定的功能时间标记(Time Stamp),同步讯息(Sync message),紧急讯息(Emergency message)。另外也订定了网络管理数据 (network management data),如开机讯息(Boot-up message)、网络管理讯息(NMT message)和错误控 制讯息( Error Control message)。(可以参考 CiA 网站 http://www.can-cia.org) 支持功能 : CAN2.0A 协定 CANopen DS301 V4.02 DSP-402 V2.0 支持服务 : 支援两组 PDO (Process Data Objects) PDO1~PDO2 支援 SDO (Service Data Objects) 初始 SDO 下载; 初始 SDO 上传; SDO 错误讯息; SDO 指令以一送一回的方式进行,透过对从站节点作组态设定,SOD 可以对其节点有使用对象字典 的权利。 支持 SOP (Special Object Protocol) 301(版本 4.02)预定义的规范 同步讯息(SYNC Message) 紧 急服务(Emergency Message) 支持网络管理讯息 NMT(Network Management) NMT 模式控制(Module Control) NMT 错误控制 (Error Control) 开机讯息(Boot-up) 不支持服务 : 时间标记服务(Time Stamp)
附录 E、CANopen 通讯简介 E-1 CANopen 概论 关于 CANopen 协定 CANopen 是一种以 CAN 为基础的上层协议,是为了使设备达成运动控制之目的的一种控制网络功 能,就像管理系统一般。CANopen 301(版本 4.02)标准化为 EN50325-4。CANopen 各个规格包含了 应用层和通讯概况(CiA DS301),另外也包括可程序装置的架构(CiA DS302),缆线和链接器的建 (CiADS303-1),还有 SI 单位和文字表示方式(CiA DS303-2)。 Device Profile CiA Device Profile CiA Device Profile CiA DSP-401 DSP-404 DSP-XXX OSI Layer 7 CiA DS-301 通訊概況 應用層 OSI Layer 2 CAN 控制器 CAN 2.0A 資料連結層 OSI Layer 1 +- ISO 11898 物理層 +- CAN bus CANopen 机种(VFD_ _ _E_ _C), 脚位定义 注: CANopen 机种无法使用 PU06 脚位 讯号 说明 1 CAN_H CAN_H bus line (dominant high) 8~1 2 CAN_L CAN_L bus line (dominant low) 插座 3 CAN_GND 接地端/0V/V- 4 SG- 485 通讯 5 SG+ 485 通讯 6 GND 接地端 7 CAN_GND 接地端/0V/V- 8 EV 电源端 E-2
附录 E、CANopen 通讯简介 连接设定预定义 为了尽量简化网络配置,CANopen 预先定义了一些基本的 ID 配置 。一组 11-bit 架构的 COB-ID(COB Identifier)定义如下。 COB Identifier (CAN Identifier) 10 9 8 7 6 5 4 3 2 1 0 功能码 节点数 物件 功能码 节点数 COB-ID 对象字典引索 广播消息 0000 - 0 - NMT 0001 - 0x80 0x1005, 0x1006, 0x1007 SYNC 0010 - 0x100 0x1012, 0x1013 TIME STAMP 点对点讯息 0001 1-127 0x81-0xFF 0x1014, 0x1015 Emergency 0011 1-127 0x181-0x1FF 0x1800 TPDO1 0100 1-127 0x201-0x27F 0x1400 RPDO1 0101 1-127 0x281-0x2FF 0x1801 TPDO2 0110 1-127 0x301-0x37F 0x1401 RPDO2 0111 1-127 0x381-0x3FF 0x1802 TPDO3 1000 1-127 0x401-0x47F 0x1402 RPDO3 1001 1-127 0x481-0x4FF 0x1803 TPDO4 1010 1-127 0x501-0x57F 0x1403 RPDO4 1011 1-127 0x581-0x5FF 0x1200 Default SDO (tx) 1100 1-127 0x601-0x67F 0x1200 Default SDO (rx) 1110 1-127 0x701-0x77F 0x1016, 0x1017 NMT Error Control CANopen 通讯协议 CANopen 通讯协议包括以下的一些服务: NMT (Network Management Object) SDO (Service Data Objects) PDO (Process Data Object) EMCY (Emergency Object) E-3
附录 E、CANopen 通讯简介 NMT (Network Management Object) 网络管理讯息 NM 遵循了主站/从站的架构进行 NMT 服务。在这架构之下只有一个主站,而此主站 可以搭配多个从站。所有的 CANopen 节点都有自己专属的 NMT 状态,而主站可以藉由 NMT 的讯 息去控制从站的状态。状态流程途如下: (1) (9) 初始化 (10) (15) ( 11 ) 重置應用 (16) 重置通訊 (14) (2) (5) (7) (13) 預運轉 ABCD 停止 AB (12) (3) (4) (8) (6) 運 轉A B C D (1) 开启电源后,自动进入初始状态 A: NMT (2) 自动进入预运转状态 B: Node Guard (3) (6)启动远程节点 C: SDO (4) (7) 进入预运转状态 D: Emergency (5) (8) 停止远程节点 E: PDO (9) (10) (11) 重置节点 F: Boot-up (12) (13) (14)重置通讯 (15) 自动进入重置应用状态 (16) 自动进入重置通讯状态 PDO 初始化 预运转 运转 停止 SDO ○ ○ ○ SYNC ○ ○ Time Stamp ○ ○ EMERG ○ ○ Boot-up ○ ○ NMT ○ ○ E-4
附录 E、CANopen 通讯简介 NMT 协议如下: NMT 主站 Start Remote Node NMT 從站 数值 CS 定义 Request byte 0 byte 1 1 定义 CS Node-ID Indication(s) 2 开始 request 停止 COB-ID=0 Indication 128 Indication 129 进入预运转 Indication 130 重置节点 重置通讯 SDO (Service Data Objects) SDO 使用的模式为客户/伺服端两端,彼此有进行对象字典的权限。一个 SDO 讯息包含了一组 COB-ID(要求的 SDO 与响应的 SDO),可以在两个节点之间做存取的动作。SDO 可以传送任意大小 的数据,但是一旦超过 4 个字节就必须利用区段(Segment)传送的方式,而最后一个区段需包含结束 的指示。 对象字典为 CANopen 节点的群组对象,每个节点有所属的对象字典。而对象字典包含了多个参数, 此参数描述了其所支持的参数属性和数值。SDO 的存取路径是藉由索引和子索引的方式进行。每个 对象有单一的索引值,但是假如有需要的话可能会有多个子索引值。SDO 要求和响应消息的架构如 下: Data 0 Data 1 Data 2 Data 3 Data 4 Data 5 Data 6 Data 7 型态 7 6 5 4 3 2 1 0 Index Index Index Data Data Data Data 区域下载 区域上传 command L H Sub LL LH HL HH 中止区域传送 Client 0 0 1 - N E S Server 0 1 1 - - - - - Client 0 1 0 - - - - - Server 0 1 0 - N E S Client 1 0 0 - - - - - Server 1 0 0 - - - - - N:未使用字节数 E:一般(0) / 发送(1) S:资料大小 PDO (Process Data Object) PDO 使用的模式为生产/消费两端,每一个网络节点可以聆听传送节点的讯息,也会判断接收讯息之 后与要处理与否。PDO 数据传送可以是一对一或是一对多的方式进行。每一个 PDO 讯息包含了传送 PDO(TxPDO)和接收 PDO(RxPDO)讯息,其传送方式定义在 PDO 通讯参数索引(第一组接收 PDO 讯息设在索引 1400h、第一组传送 PDO 讯息设在索引 1800h)。而传送方式列在以下的表格: 型态数目 Cyclic Acyclic PDO 传送型态 RTR only ○ ○ Synchronous Asynchronous 0 1-240 ○ ○ E-5
附录 E、CANopen 通讯简介 241-251 Reserved 252 ○ ○ ○ 253 ○ 254 ○ 255 ○ 形式数目(Type No)1-240 代表两个 PDO 传送之间的同步讯息(SYNC)数目。 形式数目(Type No)252 代表接收 SYNC 讯息之后立刻更新数据。 形式数目(Type No)253 代表接收 RTR 讯息之后立刻更新数据。 形式数目(Type No)254 不支持。 形式数目(Type No)255 代表异步传送。 所有的 PDO 传送数据必须透过对象字典映像到对应的索引区上。以下为范例: 主站 傳送PDO訊息 到從站 PDO1 CAN(H) CAN(L) 主站 從站 PDO1 data value Data 0, Data 1, Data 2, Data 3, Data 4, Data 5, Data 6, Data 7, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, Index Sub Definition Value R/W Size 0x1600 0 0. Number 1 R/W U8 0x60400010 R/W U32 0x1600 1 1. Mapped Object R/W U32 PDO1 Map 0x1600 2 2. Mapped Object 0 R/W U32 0 R/W U32 0x1600 3 3. Mapped Object 0 0x1600 4 4. Mapped Object 0x60400010 0x6040 0 0. Control word 0x2211 R/W U16 (2 Byte) 從站回送訊息給主站 PDO1 CAN(H) CAN(L) 主站 從站 PDO1 data value Data 0, Data 1, Data 2, Data 3, Data 4, Data 5, Data 6, Data 7, 0xF3, 0x00, Index Sub Definition Value R/W Size PDO1 Map 0x1A00 0 0. Number 1 R/W U8 0x1A00 1 1. Mapped Object 0x60410010 R/W U32 0x1A00 2 2. Mapped Object R/W U32 0x1A00 3 3. Mapped Object 0 R/W U32 0x1A00 4 4. Mapped Object 0 R/W U32 0 0x6041 0 Stalusword 0xF3 R/W U16 E-6
附录 E、CANopen 通讯简介 EMCY (Emergency Object) 当硬设备发生内部错误情况时,就会触发紧急对象的产生。紧急对象只有当错误事件发生时才会传送, 只要硬件没有发生任何错误就不会产生任何紧急对象,其用来当作一个错误警告的中断讯息。紧急对 象是一个 8 字节的数据格式,表示如下: Byte 0 1 2 34567 Manufacturer specific Error Field Content Emergency Error Code Error register (Object 1001H) EC 机种的紧急对象讯息定义: 显示码 错误码 说明 CANopen CANopen 错误码 错误缓存器 0001H 交流马达驱动器侦测输出侧有异常突增的过电流产生 2130H (bit 0~7) 0002H 交流马达驱动器侦测内部直流高压侧有过电压现象产生 3210H 1 2 0003H 交流马达驱动器侦测内部温度过高,超过保护位准 4310H 3 0005H 输出电流超过交流马达驱动器可承受的电流,若输出 2310H 1 150%的交流马达驱动器额定电流,可承受 60 秒。 1 1 0006H 内部电子热动电驿保护动作 2310H 5 0007H 马达负载太大 2310H 1 当外部多功能输入端子(MI3~MI9)设定外部异常(EF)时, 9000H 1 0008H 交流马达驱动器停止输出 1 0009H 加速中过电流 2310H 1 000AH 减速中过电流产生 2310H 2 2 000BH 运转中过电流产生 2310H 5 接地保护线路动作。当交流马达驱动器侦测到输出端接 5 5 000CH 地且接地电流高于交流马达驱动器额定电流的 50%以 2240H 5 上。注意:此保护系针对交流马达驱动器而非人体。 5 2 000DH 交流马达驱动器内部直流高压侧过低 3220H 2 000EH 欠相保护 3130H 当外部多功能输入端子(MI1~MI6)设定此一功能时,交流 9000H 000FH 马达驱动器停止输出 0011H 软件保护启动 6320H 0012H 内部存储器 IC 资料写入异常 5530H 0013H 内部存储器 IC 资料读出异常 5530H 0014H 控制器硬件保护线路异常 5000H 0015H 控制器硬件保护线路异常 5000H 0016H 控制器硬件保护线路异常 5000H E-7
附录 E、CANopen 通讯简介 显示码 错误码 说明 CANopen CANopen 错误码 错误缓存器 0017H 控制器硬件保护线路异常 0018H 交流马达驱动器 U-相电流感侦测线路异常 5000H (bit 0~7) 0019H 交流马达驱动器 V-相电流感侦测线路异常 001AH 交流马达驱动器 W-相电流感侦测线路异常 1 001BH 交流马达驱动器直流测电压(DC-BUS)侦测线路异常 001CH 交流马达驱动器温度传感器异常 2300H 1 001EH 内部存储器 IC 资料写入异常 001FH 内部存储器 IC 资料读出异常 2300H 1 0020H 模拟信号错误 0022H 马达过热错误讯息 2300H 1 0023H 编码器回授讯号断线 0028H Com 1 通讯逾时 3210H 2 0029H dEb 错误 002AH 内部通讯回路异常 4310H 3 5530H 5 5530H 5 FF00H 7 7120H 5 7305H 7 7500H 4 3320H 2 7500H 4 EC 支持的基本索引: Index Sub 定义 初值 R/W Size Unit 附注 0x1000 0 Abort connection option code 0x00010192 RO U32 0x1001 0 Error register 0 RO U8 0x1005 0 COB-ID SYNC message 0x80 RW U32 0x1006 0 Communication cycle period 0 RW U32 us 500us~15000us 0x1008 0 Manufacturer device name 0 RO U32 0x1009 0 Manufacturer hardware version 0 RO U32 0x100A 0 Manufacturer software version 0 RO U32 0x100C 0 Guarding time 0 RW U16 ms 0x80 + node 1 0x100D 0 Guarding factor 0 RW U8 U32 0x1014 0 COB-ID emergency 0x0000080 RO U16 100us 设定为 10 的整数倍 +Node-ID 0x1015 0 Inhibit time EMCY 0 RW 0x1016 0 Number 1 Consumer heartbeat time 0x1 RO U8 使 用 Heartbeat time 时 , 必 须 0x0 RW U32 1ms Guarding time 无作用之下才行。 0x1017 0 Producer heartbeat time 0x0 RW U16 1ms 0x3 RO U8 使 用 Heartbeat time 时 , 必 须 Guarding time 无作用之下才行。 0 Number 0x000001DD RO U32 1 Vender ID U32 0x1018 2 Product code 0x00002600 U32 +机种 RO 3 Revision 0x00010000 RO E-8
附录 E、CANopen 通讯简介 Index Sub 定义 初值 R/W Size Unit 附注 0 Server SDO Parameter 2 RO U8 U32 0x1200 1 COB-ID Client -> Server 0x0000600+N RO U32 ode-ID RO U8 2 COB-ID Client <- Server U32 0x0000580+N ode-ID 0 Number 2 RO 1 COB-ID used by PDO 0x00000200 RW 0x1400 +Node-ID 2 Transmission Type 5 RW U8 00: Acyclic \& Synchronous 01~240:Cyclic \& Synchronous 0 Number 2 RO U8 255: Asynchronous 1 COB-ID used by PDO U32 0x1401 0x80000300 RW 00: Acyclic \& Synchronous 2 Transmission Type +Node-ID 01~240:Cyclic \& Synchronous 255: Asynchronous 5 RW U8 0 Number 2 RW U8 1 1.Mapped Object 2 2.Mapped Object 0x60400010 RW U32 3 3.Mapped Object 0x1600 4 4.Mapped Object 0x60420020 RW U32 0x1601 0 Number 1 1.Mapped Object 0 RW U32 2 2.Mapped Object 3 3.Mapped Object 0 RW U32 4 4.Mapped Object 0 Number 0 RW U8 1 COB-ID used by PDO 0 RW U32 0 RW U32 0 RW U32 0 RW U32 5 RO U8 U32 0x00000180 RW +Node-ID 00: Acyclic \& Synchronous 2 Transmission Type 5 RW U8 01~240:Cyclic \& Synchronous 0x1800 253: Remote function 255: Asynchronous 3 Inhibit time 0 RW U16 100us 设定为 10 的整数倍 4 Reserved 5 Event timer 3 RW U8 Reserved 0 Number 1 COB-ID used by PDO 0 RW U16 1ms 5 RO U8 0x80000280 RW U32 +Node-ID 00: Acyclic \& Synchronous 2 Transmission Type 5 RW U8 01~240:Cyclic \& Synchronous 0x1801 253: Remote function 255: Asynchronous 3 Inhibit time 0 RW U16 100us 设定为 10 的整数倍 4 Reserved 5 Event timer 3 RW U8 0 Number 1 1.Mapped Object 0 RW U16 1ms 2 RW U8 0x1A00 0x60410010 RW U32 E-9
附录 E、CANopen 通讯简介 Index Sub 定义 初值 R/W Size Unit 附注 2 2.Mapped Object 0x60430010 RW U32 3 3.Mapped Object 0 RW U32 4 4.Mapped Object 0 RW U32 0 Number 0 RW U8 1 1.Mapped Object 0 RW U32 0x1A01 2 2.Mapped Object 0 RW U32 3 3.Mapped Object 0 RW U32 4 4.Mapped Object 0 RW U32 台达制定的部分 Index Sub 定义 初值 R/W Size Unit 附注 0 Number 3 RO U8 00B:无功能 1 Controlword 0 RW U16 01B:停止 2020 bit 0 ~ 1 2 vl target velocity 10B:启动 3 Other trigger 11B:JOG 启动 0 Number Bit2~3 保留 1 错误码(Error code) 00B:无功能 01B:正方向指令 0x2021 Bit4~5 2 变频器状态 10B:反方向指令 11B:改变方向指令 00B:第一段加减速 Bit6~7 01B:第二段加减速 Bit8~15 保留 0 RW U16 Hz Bit0 1:E.F. ON 0 RW U16 Bit1 1:Reset 指令 Bit2~15 保留 0xD RO U8 0 RO U16 Bit 0~1 00B:驱动器停止 0 RO U16 01B:驱动器减速停止时 Bit 2 10B:驱动器运转等待频率命令 11B:驱动器运转中 Bit 3~4 1:有 JOG 指令 00B:驱动器正转 Bit 5~7 01B:驱动器由反转到正转时 Bit 8 10B:驱动器由正转到反转时 Bit 9 11B:驱动器反转 保留 1:主频率来源由通信界面 1:主频率来源由模拟信号输入 E-10




