GEFanuc Automation Shanghai Office GE Fanuc PLC 90-70 指令培训 GEFanuc Automation Shanghai Office V2.00
继电器控制电路 R 9 E V _ P B F W D S T O 1 3 4 M L 2
PLC 工作原理 2 CPU 3 1 输入模块 输出模块 1 2 3 执行 程序 用户程序 通讯服务 Q1 ( ) Q2 I1 I 2 输入扫描 执行 程序 输出刷新 通讯服务 1 2 CPU 2 输入地址%I Q1 ( ) Q2 I1 I 2 用户程序 输出地址%Q 3 I 1 Q 1 I 2 1 Q 2 I 3 Q 3 I 4 Q 4 I 5 Q 5 I 6 Q 6 输入模块 输出模块 I 1 2 3 4 5 6 7 8 C O M Q1 Q2 Q3 Q4 1 数据储存 (%M,%R,...) 3 Q5 Q6 Q7 Q8 C O M
编程语言 1。指令助记符(IL) 2。梯形图(LD) 3。顺序功能图(SFC) 4。“C” 语言,“BASIC”语言 5。状态逻辑
系列90 PLC 编程语言 指令语句编程 继电器梯形图(Relay Ladder Logic)编程 顺序流程图 (SFC)编程 状态逻辑语言编程 支持用 C 语言编程 开发复杂的控制算法 C 程序代码比梯形图程序快4-6倍
系列 90 PLC 编程与组态 计算机+编程软件: LM90——Windows下DOS窗口 CC90——Windows98/NT VersaPro——Windows98/NT 串行通讯 RS232/RS485 转换器 以太网 手持式编程器 S90-30PLC RS485 编程口 S90-70PLC 仅支持S90-30 341以下CPU
GE PLC 地址表示形式 %AI00326 %I %Q %AI 位(bit)地址 外部地址 %AQ 字(word)地址 %M %G %T 表示地址 地址类型 地址号 位(bit)地址 外部地址 字(word)地址 %M %G %T %R 中间继电器—位地址 ——寄存器—字地址 内部地址 %P %L %U %UR %S ——程序寄存器—字地址 ——局部寄存器—字地址 ——无定义变量 ——系统变量 地址数为自然数——例如“%R0326”
指令分类——按形式分 触点 线圈 1. 继电器 ——( ) 2. 功能块 输入参数 输出参数 功能 条件 数据类型 长度 地址 %R ——( ) 2. 功能块 条件 功能 Enable OK 数据类型 I1 输入参数 输出参数 I2 Q 长度 I3 地址 %R
指令分类——按功能分 1. 继电器功能 2. 定时器/计数器 3. 算术运算功能 4. 关系运算功能 5. 位操作功能 6. 数据传送功能 1. 继电器功能 2. 定时器/计数器 3. 算术运算功能 4. 关系运算功能 5. 位操作功能 6. 数据传送功能 7. 数据表格功能 8. 转换功能 9. 控制功能
Relay and Basic Programming Series 90-70 指令教程 继电器和基本编程 Relay and Basic Programming RELAY F1 Shift
继电器控制电路 ZC REV_PB FWD_PB STOP_PB FC MTR_FWD MTR_REV L1 L2 ZC REV_PB
继电器指令基本元素 —( ) —( / ) —( S ) —( R ) —( M ) —( / M ) —( SM ) —( RM ) 线圈 —( ) —( / ) —( S ) —( R ) —<+> —( M ) —( / M ) —( SM ) —( RM ) 线圈 触点 —[NOFLT]— —[FAULT]— —[HIALR]— —[LOALR]— <+>—
定时器和计数器 Timers and Counters Series 90-70 指令教程 定时器和计数器 Timers and Counters TMRCTR ofdt F2 Shift
系统时间 System Timers Watch-Dog Timer Constant Sweep Timer Time-of-Day Clock Elapsed Time Clock Time Tick Contacts
定 时 器 TMRCTR ofdt F2 Shift > 保持型延时接通定时器 R P V C O N D T 1 . s ? F1 定 时 器 F2 Shift TMRCTR ofdt 1 2 3 4 5 6 7 8 9 10 RELAY TMRCTR ondtr ofdt tmr tmbase MATH TABLE CONTRL T CONVRT OPN SP P > DATAM dnctr BITOP upctr RELAT 保持型延时接通定时器 R P V C O N D T 1 . s ? F1 延时断开定时器 P V C O F D T 1 . s ? F2 延时接通定时器 P V C T M R 1 . s ? F3
延时接通定时器 Timer —( ) TMR 输出端 输入端 延时时间 t =预置值×时基 时基 预置值 当前值 例如:%R0001, 0. 1S 0.01S 0. 001S PV %R???? —( ) 输出端 输入端 延时时间 t =预置值×时基 %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST 时基 预置值 CV 当前值 例如:%R0001, 或常数:00050 Address 例如:%R0001 ~%R0003 当前值 预置值 控制字 %R %R + 1 %R + 2 连续三个R寄存器
延时接通定时器 Timer 输出端 预置值 Enable 其工作波形图如下: 输入端 TS 输出端 预置值 计时值
延时断开定时器 Timer —( ) OFDT 输出端 输入端 延时时间 t =预置值×时基 时基 预置值 当前值 当前值 预置值 控制字 0. 1S 0.01S 0. 001S PV %R???? —( ) 输出端 输入端 延时时间 t =预置值×时基 %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST 时基 预置值 CV 当前值 Address 当前值 预置值 控制字 %R %R + 1 %R + 2 连续三个R寄存器
延时断开定时器 Timer 其工作波形图如下: OFDT 输入端 输出端 预置值 计时值 输入端 输出端 0. 1S PV 预置值
保持型定时器 Timer —( ) ONDTR 输出端 输入端 延时时间 t =预置值×时基 复位 时基 预置值 当前值 当前值 预置值 0. 1S 0.01S 0. 001S PV %R???? —( ) 输出端 输入端 延时时间 t =预置值×时基 R 复位 时基 预置值 CV 当前值 %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST Address 当前值 预置值 控制字 %R %R + 1 %R + 2 连续三个R寄存器
保持型定时器 Timer 其工作波形图如下: ONDTR 输入端 输出端 复位端 预置值 计时值 输出端 预置值 0. 1S PV TS= T1+T2 输入端 TS T1 T2 输出端 复位端 预置值 计时值
User Programmed Counters TMRCTR ofdt Shift F2 R E L A Y T M R C T R M A T H R E L A T B I T O P D A T A M T A B L E C O N V R T C O N T R L O P N S P 1 2 3 4 5 6 7 8 9 1 o n d t r o f d t t m r u p c t r d n c t r t m b a s e > 9 4 6 4 F4 U P C T R F5 D N C T R R R P V C V P V C V ? ? ? ? ? ? ? ? ? ? ? ? ? ? Up Counter Down Counter
计数器 Counter —( ) UPCTR DNCTR 输出端 输入端 复位 预置值 当前值 当前值 预置值 控制字 连续三个R寄存器 R —( ) 输出端 输入端 UPCTR DNCTR R 复位 预置值 PV CV 当前值 %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST %R???? Address 当前值 预置值 控制字 %R %R + 1 %R + 2 连续三个R寄存器
数学运算指令 Math Operations Series 90-70 指令教程 数学运算指令 Math Operations MATH mul F3 Shift
Math Group MATH F3 Addition Multiplication Subtraction Division Shift 1 2 3 4 5 6 7 8 9 R E L A Y M T H a d s u b m l o r e t y p C B O N V P S > q D I i v Addition F1 Multiplication F3 Subtraction F2 Division F4
Math Group (Continued) MATH F3 Modulo Division Square Root Shift F3 9 4 1 7 2 3 5 6 8 R E L A Y M T H a d s u b m l o r e t y p C B O N V P S > q D I i v F5 F6 Modulo Division F7 Square Root Absolute Value
算术运算 (1 )Arithmetic Function ADD SUB MUL DIV MOD Enable OK ADD : Q = I1 + I2 SUB : Q = I1 - I2 MUL : Q = I1 * I2 DIV : Q = I1 / I2 MOD : Q =I1 -((I1/I2)*I2) %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST I1 INT UIND DINT REAL MIXED %I,%Q,%M,%T, %G,%R,%AI,%AQ Q %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST I2 %I,%Q,%M,%T,%G 不能用于 REAL
算术运算 (2 )Arithmetic Function SQRT ABS Enable OK SQRT: Q = IN INT DINT REAL ABS: Q=|I1| %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST %I,%Q,%M,%T, %G,%R,%AI,%AQ I1 Q
三角函数 SIN COS TAN ASIN ACOS ATAN Enable OK REAL %R,%AI,%AQ,CONST Q IN
对数,指数功能 LOG LN EXP EXPT LOG: Q = log(IN) LN: Q = ln(IN) EXP: Q = eI N Enable OK LOG: Q = log(IN) LN: Q = ln(IN) EXP: Q = eI N REAL TXPT: Q = I1I 2 %R,%AI,%AQ,CONST Q IN %R,%AI,%AQ
指数功能 LOG LN EXP EXP: Q = I 1 Enable OK REAL %R,%AI,%AQ,CONST I1 Q
数据转换指令 Data Operations Series 90-70 指令教程 数据转换指令 Data Operations CONVRT F8 Shift
Convert Group CONVRT Shift F8
Convert Group (Continued) I N ? Q U T _ O DESTINATION DATA TYPES F3 BCD-4 F4 BCD-8 F5 UINT F6 INT F7 DINT I N ? Q U T _ O F8 REAL F9 = MORE F1 INT F2 DINT
Convert Group (Continued) I N ? Q U T _ O = = BIT = BYTE = WORD F1 = BIT F2 = BYTE F3 = WORD F10 = DWORD types = STARTING DATA TYPES F4 F5 = UINT F6 = INT F7 = DINT F8 = REAL F9 = MORE I N ? Q U T _ O F1 = BCD-4 F2 = BCD-8 F3 = MIXED
Convert Group (Continued) End Data Type Start Data Type BCD-4 BCD-8 UINT INT DINT REAL INT DINT BIT BYTE WORD DWORD UINT INT DINT REAL BCD-4 BCD-8 Mixed
数据转换 (1) INT DINT TO BCD4 BCD8 Enable OK %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST %I,%Q,%M,%T, %G,%R,%AI,%AQ IN Q
数据转换 (2) BCD4 BCD8 TO INT DINT Enable OK %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST %I,%Q,%M,%T, %G,%R,%AI,%AQ IN Q
数据转换 (3) REAL TO INT UINT DINT Enable OK %I,%Q,%M,%T, %G,%R,%AI,%AQ %R,%AI,%AQ,CONST IN Q
数据转换 (4) INT UINT DINT BCD4 BCD8 TO REAL Enable OK %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST IN Q %R,%AI,%AQ
数据转换 (5) REAL_ TRUN_ INT DINT Enable OK %I,%Q,%M,%T, %G,%R,%AI,%AQ %R,%AI,%AQ,CONST IN Q 例如: IN=235.85 Q=235 IN=-53.12 Q=-53
Relational Operations Series 90-70 指令教程 比较指令 Relational Operations RELATN F4 Shift
Relational Group RELATN F4 Equal Greater Than Not Equal Shift F4 Equal F1 Greater Than F3 Not Equal F2 F4 Greater Than or Equal To
Relational Group (Continued) RELATN F4 Less Than Compare Shift F4 Less Than F5 Compare F7 F8 Less Than or Equal To F6 Range
比较功能 (1 ) Comparison Function Enable EQ NE GT GE LT LE I1 = I2 I1≠I2 I1 > I2 I1≥I2 I1 < I2 I1≤I2 %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST I1 ——( ) Q INT UINT DINT REAL %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST I2
比较功能 (2 ) Comparison Function Enable RANGE INT UINT DINT REAL Q=1 L1>IN>L2 L1<IN<L2 %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST L1 ——( ) Q %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST L2 Q=0 L1>IN;L2>IN L1<IN;L2<IN %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST IN
比较功能 (3 ) Comparison Function Enable CMP_ INT UINT DINT REAL %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST I1 ——( ) LT %I,%Q,%M,%T,%G, %R,%AI,%AQ,CONST I2 ——( ) EQ ——( ) GT
数据传送指令 Data Move Operations Series 90-70 指令教程 数据传送指令 Data Move Operations DATAMV F6 Shift
Move Group DATAMV F6 Shift RELAY move TMRCTR blkmov MATH blkclr RELATN shfreq BITOP bitseq TABLE comreq CONVRT CONTRL more OPN SP types
Move Group F1 Move F4 F2 F3 Shift Register Block Clear Block Move
数据传送 Data Move MOVE Enable OK %I,%Q,%M,%T,%SA, %I,%Q,%M,%T, LEN INT UINT DINT BIT WORD DWORD REAL %I,%Q,%M,%T,%SA, %SB,%SC,%G,%R, %AI,%AQ,CONST %I,%Q,%M,%T, %SA,%SB,%SC, %G,%R,%AI,%AQ LEN 1 - 256 Q IN
常数块传送 Block Move BLKMV Enable OK IN1 IN2 IN3 %I,%Q,%M,%T, IN4 Q INT UINT DINT WORD DWORD REAL IN1 IN2 IN3 IN4 IN5 IN6 IN7 %I,%Q,%M,%T, %SA,%SB,%SC, %G,%R,%AI,%AQ Q CONST
块清零 Block Clear BLK CLR Enable OK %I,%Q,%M,%T, LEN %SA,%SB,%SC, IN WORD %I,%Q,%M,%T, %SA,%SB,%SC, %G,%R,%AI,%AQ LEN 1 - 256 IN
数据初始化 DATA_ INIT_ Enable OK %I,%Q,%M,%T, Q %SA,%SB,%SC, LEN INT UINT DINT WORD DWORD REAL %I,%Q,%M,%T, %SA,%SB,%SC, %G,%R,%AI,%AQ Q LEN 1
数据初始化 DATA_ INIT_ COMM Enable OK %I,%Q,%M,%T, Q %SA,%SB,%SC, LEN %G,%R,%AI,%AQ Q LEN 1
数据初始化 DATA_ INIT_ ASCII Enable OK %I,%Q,%M,%T, Q %SA,%SB,%SC, LEN %G,%R,%AI,%AQ Q LEN LEN是字节数,必须是偶数
Series 90-70 指令教程 表格处理 Table Operations TABLES F7 Shift
Array Operation TABLES F7 Array Shift F8 ARRAY_ MOVE_ WORD ??????? SR DS SNX DNX N LEN 00001 ??????? ??????? ??????? ??????? Array
Array Search Operation CONTRL F9 more Search Equal F1 ??????? SRCH_ EQ_ WORD AR FD NX NX IN LEN 00001 F2 SRCH_ NE_ WORD F3 SRCH_ GT_ WORD ??????? AR FD NX NX IN ??????? AR FD NX NX IN LEN 00001 LEN 00001 ??????? ??????? ??????? ??????? ??????? ??????? Search Not Equal Search Greater Than
Array Search Operation CONTRL F9 more Search Greater Than or Equal F4 ??????? SRCH_ GE_ WORD AR FD NX NX IN LEN 00001 F5 SRCH_ LT_ WORD F6 SRCH_ LE_ WORD ??????? AR FD NX NX IN ??????? AR FD NX NX IN LEN 00001 LEN 00001 ??????? ??????? ??????? ??????? ??????? ??????? Search Less Than Search Less Than or Equal
数组变址传送 Array Move ARRAY MOVE_ Enable OK %I,%Q,%M,%T,%G, %SA,%SB,%SC, %R,%AI,%AQ %I,%Q,%M,%T,%G, %SA,%SB,%SC, %R,%AI,%AQ SR DS INT UINT DINT BIT BYTE WORD DWORD SNX %I,%Q,%M,%T,%G, R,%AI,%AQ,CONST DNX LEN N 将 (SR+SNX-1) 送到 (SR+SNX-1)
表格搜索 ——( ) SRCH EQ_ SRCH_NE SRCH_GT SRCH_GE SRCH_LT SRCH_LE Enable OK %I,%Q,%M,%T,%G, %R,%AI,%AQ ——( ) AR INT UINT DINT BYTE WORD DWORD FS %I,%Q,%M,%T,%G, %R,%AI,%AQ 0—(LEN-1) NX NX %I,%Q,%M,%T,%G, R,%AI,%AQ,CONST 1—LEN LEN IN 被查数
Series 90-70 指令教程 位处理指令 Bit Operations BITOP F5 Shift
Multiple Bit Functions Shift BITOP F5 F1 ??????? ??????? ??????? F3 XOR_ And F2 OR_ ??????? ??????? F4 NOT_ ??????? ??????? ??????? ??????? ??????? ??????? Xor ??????? Or Not
字逻辑功能 (1) Logic Function AND_ OR_ XOR_ Enable OK AND : Q = I1 * I2 OR : Q = I1 + I2 XOR : Q = I1 I2 WORD I1 %I,%Q,%M,%T,%G, %SA,%SB%SC,%R, %AI,%AQ,CONST %I,%Q,%M,%T,%G, %SA,%SB,%SC, %R,%AI,%AQ Q I2
字逻辑功能 (2) Logic Function NOT Enable OK WORD NOT : Q = I1 %I,%Q,%M,%T, %G,%S,%SA, %SB%SC,%R, %AI,%AQ,CONST %I,%Q,%M,%T,%G, %S,%SA,%SB,%SC, %R,%AI,%AQ I1 Q
Bit Functions more F9 Bit Test Bit Clear Bit Set Bit Position F1 ??????? BIT_ TEST_ WORD IN Q BIT F3 Bit Clear ??????? BIT_ CLR_ WORD IN BIT F2 Bit Set ??????? BIT_ SET_ WORD IN BIT F4 Bit Position ??????? BIT_ POS_ WORD IN Q POS
字逻辑功能 (3) Logic Function Enable BIT_SET BIT_CLR OK WORD IN %I,%Q,%M,%T, %G,%SA,%SB,%SC, %R,%AI,%AQ, CONST for BIT LEN 1 - 256 BIT
字逻辑功能 (4) Logic Function Enable BIT_ TEST OK WORD Tested BIT state IN ——( ) %I,%Q,%M,%T, %G,%S,%SA,%SB, %SC,%R,%AI,%AQ, CONST for BIT Q LEN 1 - 256 BIT
字逻辑功能 (5) Logic Function Enable BIT_ POS OK WORD %I,%Q,%M,%T,%G,% SA,%SB,%SC, %R,%AI,%AQ, IN LEN 1 - 256 %I,%Q,%M,%T,% G,%%R,%AI,%AQ, POS
Multiple Bit Functions Continued Shift BITOP F5 Shift Left F5 ??????? SHL MSB LSB B1 B2 F6 SHR_ ??????? ??????? ??????? SHR B2 MSB LSB B1 Shift Right
移位 Shift ——( ) SHR_ SHL_ Enable OK %I,%Q,%M,%T, %G,%SA,%SB%SC, %R,%AI,%AQ, WORD IN ——( ) B2 %I,%Q,%M,%T, %G,%SA,%SB%SC, %R,%AI,%AQ,CONST N %I,%Q,%M,%T, %G,%SA,%SB,%SC, %R,%AI,%AQ Q LEN 1 - 256 B1 B2 B1 SHL MSB IN, Q LSB B1 B2 SHR
Multiple Bit Functions Continued Shift BITOP F5 Rotate Left F7 ??????? ROL_ Q ROL MSB LSB Rotate Right F8 ??????? ROR_ Q ROR MSB LSB
旋转 Rotat ROL_ ROR_ Enable OK %I,%Q,%M,%T, %G,%SA,%SB%SC, %R,%AI,%AQ, WORD IN %I,%Q,%M,%T, %G,%SA,%SB,%SC, %R,%AI,%AQ Q LEN 1 - 256 %I,%Q,%M,%T, %G,%SA,%SB%SC, %R,%AI,%AQ,CONST N MSB SHL LSB SHR
移位寄存器 Shift Register SHFR Enable OK BIT WORD %I,%Q,%M,%T, %G,%SA,%SB,%SC, %R,%AI,%AQ Reset R Q IN %I,%Q,%M,%T, %G,%SA,%SB%SC, %R,%AI,%AQ, LEN 1 - 256 ST Q IN MSB ST LSB
定序器 Bit Sequencer BIT_ SEQ Enable OK Reset R 1—L 0—R DIR LEN 1 - 256 STEP %I,%Q,%M,%T, %G,%SA,%SB%SC, %R,%AI,%AQ, ST 当前步数 长 度 Control Word %R %R + 1 %R + 2
控制指令 Control Operations Series 90-70 指令教程 控制指令 Control Operations CONTRL F9 Shift
IO立即刷新 DO IO DOIO不能刷新Genius网上I/O地址 若没有ALT则刷新真实地址 Enable OK ST %I,%Q,%AI,%AQ, END %I,%Q,%M,%T, %G%R,%AI,%AQ, ALT 若没有ALT则刷新真实地址
[ ] [ ] 子程序调用 ——( ) ——( ) [ START OF PROGRAM MAIN ] CALL ??????? [ START OF PROGRAM MAIN ] ——( ) [ ] CALL SUB [ END OF PROGRAM LOGIC] [ START OF PROGRAM SUB ] ——( ) [ ] [ END OF BLOCK LOGIC] 最多可定义 255 个子程序
子程序调用 每个程序块可有64 个“CALL” 最多可8级子程序嵌套 MAIN BLOCK A BLOCK C BLOCK B BLOCK D 开始 CALL A CALL B 最多可8级子程序嵌套 CALL C CALL B
[ ] [ ] 主控指令MCR和跳转指令JUMP ——( ) ——( ) [ MCR ] [ MCR ] [ END_MCR] DOG: ——( ) ——( ) [ MCR ] >> DOG [ ] [ ] [ END_MCR] DOG:
通讯请求命令 ——( ) COMM_ REQ Enable OK %R,%AI,%AQ IN FT %I,%Q,%M,%T,%G, ——( ) FT %I,%Q,%M,%T,%G, %R,%AI,%AQ,常数 SYSID %R,%AI,%AQ,常数 TASK
服务请求 Servic Request SVC REQ Enable OK FNC %I,%Q,%M,%T, %G,%R,%AI,%AQ, CONST for FNC PARM
服务请求功能 Servic Request 功能码 说明 7 改变/读取日期时钟 14 故障表清零 15 读取最后登录的故障记录 功能码 说明 7 改变/读取日期时钟 14 故障表清零 15 读取最后登录的故障记录 16 读取开机耗时时间 18 读取I/O 强制状态 29 读取关机耗时时间 26/30 询问 I/O 状态
服务请求 Servic Request ——改变/读取日期时钟 %R0010 %R0011 %R0012 %R0014 %R0013 0—读取 1—设置 年 分 日 周 SVC REQ 1—BCD 月 7 FNC 时 %R0010 秒 PARM 空
服务请求 Servic Request ——清除故障表 0 ——清除PLC故障表 1——清除I/O故障表 SVC REQ 14 %R0020 FNC %R0020 PARM 0 ——清除PLC故障表 1——清除I/O故障表
PID 调节回路 PID IND Enable OK %I,%Q,%M,%T, %G%R,%AI,%AQ, SP CV CONST for SP PV MAN UP DN %R???? 40个R寄存器