| [打印] | 
第一节 PLC简述
一、PLC的特点:
1、高可靠性
2、编程简单,使用方便 可采用梯形图编程方式,与实际继电器控制电路非常接近,一般电气工作者很容易接受。
3、环境要求低 适用于恶劣的工业环境。
4、体积小,重量轻 
5、扩充方便,组合灵活
二、PLC的硬件结构:
1、硬件框图
2、输入接口电路
为了保证能在恶劣的工业环境中使用,PLC输入接口都采用了隔离措施。如下图,采用光电耦合器为电流输入型,能有效地避免输入端引线可能引入的电磁场干扰和辐射干扰。
在光敏输出端设置RC滤波器,是为了防止用开关类触点输入时触点振颤及抖动等引起的误动作,因此使得PLC内部约有10ms的响应滞后。
当各种传感器(如接近开关、光电开关、霍尔开关等)作为输入点时,可以用PLC机内提供的电源或外部独立电源供电,且规定了具体的接线方法,使用时应加注意。
3、输出接口电路
PLC一般都有三种输出形式可供用户选择,即继电器输出,晶体管输出和晶闸管输出。 
在线路结构上都采用了隔离措施。 
特点:
继电器输出:开关速度低,负载能力大,适用于低频场合。
晶体管输出:开关速度高,负载能力小,适用于高频场合。
晶闸管输出:开关速度高,负载能力小,适用于高频场合。
注意事项: 
(1)PLC输出接口是成组的,每一组有一个COM口,只能使用同一种电源电压。 
(2)PLC输出负载能力有限,具体参数请阅读相关资料。 
(3)对于电感性负载应加阻容保护。
(4)负载采用直流电源小于30V时,为了缩短响应时间,可用并接续流二极管的方法改善响应时间。 
三、三菱FX2 PLC实物图及面板上的LED指示说明(用鼠标在各处点点)
 
第二节 PLC的工作过程
PLC大多采用成批输入/输出的周期扫描方式工作,按用户程序的先后次序逐条运行。一个完整的周期可分为三个阶段:
(一)   输入刷新阶段 
程序开始时,监控程序使机器以扫描方式逐个输入所有输入端口上的信号,并依次存入对应的输入映象寄存器。
(二)   程序处理阶段 
所有的输入端口采样结束后,即开始进行逻辑运算处理,根据用户输入的控制程序,从第一条开始,逐条加以执行,并将相应的逻辑运行结果,存入对应的中间元件和输出元件映象寄存器,当最后一条控制程序执行完毕后,即转入输出刷新处理。 
(三)   输出刷新阶段 
将输出元件映象寄存器的内容,从第一个输出端口开始,到最后一个结束,依次读入对应的输出锁存器,从而驱动输出器件形成可编程的实际输出。
一般地,PLC的一个扫描周期约10ms,另外,可编程序控制器的输入/输出还有响应滞后(输入滤波约10ms),继电器机械滞后约10ms,所以,一个信号从输入到实际输出,大约有20--30ms的滞后。
输入信号的有效宽度应大于1个周期+10ms。 
第三节 三菱FX PLC中各种元件介绍(以FX2-64MR为例)
一、输入继电器 X 
 X、Y还有无数个常开、常闭触点供编程使用。 
Y外部分仅有一个常开触点供带动负载使用。
可以看出每组都是8个 
输入输出点数根据实际工程需要来确定。
可采用主机+扩展的方式来使用,扩展的编号依次编下去。
X0--X7 
X10-X17 
X20-X27 
X30-X37 
(共32点) 
二、输出继电器 Y 
Y0--Y7 
Y10--Y17 
Y20--Y27 
Y30--Y37 
 (共32点)
三、辅助继电器 M 
(1)       通用辅助继电器 
M0--M499(共500个),关闭电源后重新启动后,通用继电器不能保护断电前的状态。 
(2)       掉电保持辅助继电器 
M500--M1023(共524个),PLC断电后再运行时,能保持断电前的工作状态,采用锂电池作为PLC掉电保持的后备电源。
(3)       特殊辅助继电器 
M8000--M8255(共156点),有特殊用途,将在其它章节中另作介绍。
辅助继电器都有无数个常开、常闭触点供编程使用,只能作为中间继电器使用,不能作为外部输出负载使用。 
四、状态继电器 S 
(1)通用状态继电器 S0--S499 
(2)掉电保持型状态继电器 S499-S899 
(3)供信号报警用:S900-S999 
状态继电器S是对工作步进控制进行简易编程的重要元件,这里不作进一步的介绍。 
五、定时器 T 
(1)定时器 
T0--T199 (200只):时钟脉冲为100ms的定时器,即当设定值K=1时,延时100ms。
设定范围为0.1--3276.7秒。
T200--T245(46只):时钟脉冲为10ms的定时器,即当设定值K=1时,延时10mS。 
设定范围为0.01--327.67秒。 
(2)积算定时器 
T246--T249(4只) :时钟脉冲为1ms的积算定时器。
设定范围:0.001--32.767秒。
T250--T255 (6只) :时钟脉冲为100ms的积算定时器。
设定范围:0.1--3267.7秒。
积算定时器的意义:当控制积算定时器的回路接通时,定时器开始计算延时时间,当设定时间到时定时器动作,如果在定时器未动作之前控制回路断开或掉电,积算定时器能保持已经计算的时间,待控制回路重新接通时,积算定时器从已积算的值开始计算。
积算定时器可以用RST命令复位。 
五、计数器 C 
(1)16bit加计数器 
C0--C99(100点):通用型 
C100-C199(100点):掉电保持型 
设定值范围:K1--K32767 
(2)32bit可逆计数器 
C200--C219(20点):通用型 
C220--C234(15点):掉电保持型。
设定值范围:-2147483648到+2147483647 
可逆计数器的计数方向(加计数或减计数)由特殊辅助继电器M8200--M8234设定。
即M8△△△接通时作减计数,当M8△△△断开时作加计数。 
(3)高速计数器:C235--C255(后面章节实例中作介绍)
六、数据寄存器 D 
D0--D199(200只):通用型数据寄存器,即掉电时全部数据均清零。 
D200--D511(312只):掉电保护型数据寄存器。 
七、变址寄存器 (在实例中作介绍)
第四节 三菱FX2 PLC基本指令表
 触点取用与线圈输出指令 LD、LDI、OUT 
 单个触点串联指令 AND、ANI
 单个触点并联指令 OR、ORI
 串联电路块的并联 ORB
 并联电路块的串联 ANB
 LDP、LDF、ANDP、ANDF、ORP、ORF(FX2n型有)
 多重输出电路 MPS、MRD、MPP 
 主控及主控复位指令 MC、MCR
 脉冲输出 PLS、PLF
 自保持与解除 SET、RST 
 计数器、定时器线圈输出和复位指令 OUT、RST
 空操作指令 NOP
 程序结束指令 END 
 梯形图设计的规则和技巧
双重输出动作及其对策
#p##e#
第五节 三菱FX2 功能指令表
| 类别 | 功能号 | 指令助记符 | 功能 | D指令 | P指令 | 
| 程序流程 | 00 | CJ | 条件跳转 | - | O | 
| 01 | CALL | 调用子程序 | - | O | |
| 02 | SRET | 子程序返回 | - | - | |
| 03 | IRET | 中断返回 | - | - | |
| 04 | EI | 开中断 | - | - | |
| 05 | DI | 关中断 | - | - | |
| 06 | FEND | 主程序结束 | - | - | |
| 07 | WDT | 监视定时器 | - | O | |
| 08 | FOR | 循环区开始 | - | - | |
| 09 | NEXT | 循环区结束 | - | - | |
| 传送与比较 | 10 | CMP | 比较 | O | O | 
| 11 | ZCP | 区间比较 | O | O | |
| 12 | MOV | 传送 | O | O | |
| 13 | SMOV | 移位传送 | - | O | |
| 14 | CML | 取反 | O | O | |
| 15 | BMOV | 块传送 | - | O | |
| 16 | FMOV | 多点传送 | O | O | |
| 17 | XCH | 数据交换 | O | O | |
| 18 | BCD | 求BCD码 | O | O | |
| 19 | BIN | 求二进制码 | O | O | |
| 四则运算与逻辑运算 | 20 | ADD | 二进制加法 | O | O | 
| 21 | SUB | 二进制减法 | O | O | |
| 22 | MUL | 二进制乘法 | O | O | |
| 23 | DIV | 二进制除法 | O | O | |
| 24 | INC | 二进制加一 | O | O | |
| 25 | DEC | 二进制减一 | O | O | |
| 26 | WADN | 逻辑字与 | O | O | |
| 27 | WOR | 逻辑字或 | O | O | |
| 28 | WXOR | 逻辑字与或 | O | O | |
| 29 | ENG | 求补码 | O | O | |
| 循环与转移 | 30 | ROR | 循环右移 | O | O | 
| 31 | ROL | 循环左移 | O | O | |
| 32 | RCR | 带进位右移 | O | O | |
| 33 | RCL | 带进位左移 | O | O | |
| 34 | SFTR | 位右移 | - | O | |
| 35 | SFTL | 位左移 | - | O | |
| 36 | WSFR | 字右移 | - | O | |
| 37 | WSFL | 字左移 | - | O | |
| 38 | SFWR | FIFO写 | - | O | |
| 39 | SFRD | FIFO读 | - | O | |
| 数据处理 | 40 | ZRST | 区间复位 | - | O | 
| 41 | DECO | 解码 | - | O | |
| 42 | ENCO | 编码 | - | O | |
| 43 | SUM | 求置ON位的总和 | O | O | |
| 44 | BON ON | 位判断 | O | O | |
| 45 | MEAN | 平均值 | O | O | |
| 46 | ANS | 标志位置 | - | - | |
| 47 | ANR | 标志复位 | - | O | |
| 48 | SOR | 二进制平方根 | O | O | |
| 49 | FLT | 二进制整数与浮点数转换 | O | O | |
| 高速处理 | 50 | REF | 刷新 | - | O | 
| 51 | REFE | 滤波调整正 | - | O | |
| 52 | MTR | 矩阵输入 | - | - | |
| 53 | HSCS | 比较置位(高速计数器) | O | - | |
| 54 | HSCR | 比较复位(高速计数器) | O | - | |
| 55 | HSZ | 区间比较(高速计数器) | O | - | |
| 56 | SPD | 脉冲密度 | - | - | |
| 57 | PLSY | 脉冲输出 | O | - | |
| 58 | PWM | 脉宽调制 | - | - | |
| 59 | PLSR | 带加速减速的脉冲输出 | O | - | |
| 方便指令 | 60 | IST | 状态初始化 | - | - | 
| 61 | SER | 查找数据 | O | O | |
| 62 | ABSD | 绝对值式凸轮控制 | O | - | |
| 63 | INCD | 增量式凸轮控制 | - | - | |
| 64 | TTMR | 示都定时器 | - | - | |
| 65 | STMR | 特殊定时器 | - | - | |
| 66 | ALT | 交替输出 | - | - | |
| 67 | RAMP | 斜坡输出 | - | - | |
| 68 | ROTC | 旋转工作台控制 | - | - | |
| 69 | SORT | 列表数据排序 | - | - | |
| 外部设备I/O | 70 | TKY | 十键输入 | O | - | 
| 71 | HKY | 十六键输入 | O | - | |
| 72 | DSW | 数字开关输入 | - | - | |
| 73 | SEGD | 七段译码 | - | O | |
| 74 | SEGL | 带锁存七段码显示 | - | - | |
| 75 | ARWS | 方向开关 | - | - | |
| 76 | ASC | ASCII码转换 | - | - | |
| 77 | PR | ASCII码打印输出 | - | - | |
| 78 | FROM | 读特殊功能模块 | O | O | |
| 79 | TO | 写特殊功能模块 | O | O | |
| 外部设备 SER | 80 | RS | 串行通讯指令 | - | - | 
| 81 | PRUN | 八进制位传送 | O | O | |
| 82 | ASCI | 将十六进制数转换成ASCII码 | - | O | |
| 83 | HEX | ASCII码转换成十六进制数 | - | 0 | |
| 84 | CCD | 校验码 | - | O | |
| 85 | VRRD | 模拟量读出 | - | O | |
| 86 | VRSC | 模拟量区间 | - | O | |
| 88 | PID | PID运算 | - | O | |
| 浮点 | 110 | ECMP | 二进制浮点数比较 | O | O | 
| 111 | EZCP | 二进制浮点数区间比较 | O | O | |
| 118 | EBCD | 二进制--十进制浮点数变换 | O | O | |
| 119 | EBIN | 十进制--二进制浮点数变换 | OO | O | |
| 120 | EAAD | 二进制浮点数加法 | O | O | |
| 121 | ESUB | 二进制浮点数减法 | O | O | |
| 122 | EMUL | 二进制浮点数乘法 | O | O | |
| 123 | EDIV | 二进制浮点数除除法 | O | O | |
| 127 | ESOR | 二进制浮点数开方 | O | O | |
| 129 | INT | 二进制浮点--二进制整数转换 | O | O | |
| 130 | SIN | 浮点数SIN演算 | O | O | |
| 131 |  | 浮点数COS演算 | O | O | |
| 132 | TAN | 浮点数TAN演算 | O | O | |
| 147 | SWAP | 上下位变换 | O | O | |
| 时钟运算 | 160 | TCMP | 时钟数据比较 | - | O | 
| 161 | TZCP | 时钟数据区间比较 | - | O | |
| 162 | TADD | 时钟数据加法 | - | O | |
| 163 | TSUB | 时钟数据减法 | - | O | |
| 166 | TRD | 时钟数据读出 | - | O | |
| 167 | TWR | 时钟数据写入 | - | O | |
| 葛雷码 | 170 | GRY | 葛雷码转换 | O | O | 
| 171 | GBIN | 葛雷码逆转换 | O | O | |
| 触点比较 | 224 | LD=(S1)=(S2) |  | O | - | 
| 225 | LD>(S1)>(S2) |  | O | - | |
| 226 | LD<(S1)<(S2) |  | O | - | |
| 228 | LD<> (S1)≠(S2) |  | O | - | |
| 229 | LD<=(S1)≤(S2) |  | O | - | |
| 230 | LD>=(S1)≥(S2) |  | O | - | |
| 232 | AND=(S1)=(S2) |  | O | - | |
| 233 | AND>(S1)>(S2) |  | O | - | |
| 234 | AND<(S1)<(S2) |  | O | - | |
| 236 | AND<>(S1)≠(S2) |  | O | - | |
| 237 | AND<=(S1)≤(S2) |  | O | - | |
| 238 | AND>=(S1)≥(S2) |  | O | - | |
| 240 | OR=(S1)=(S2) |  | O | - | |
| 241 | OR>(S1)>(S2) |  | O | - | |
| 242 | OR< (S1)<(S2) |  | O | - | |
| 244 | OR<> (S1)≠(S2) |  | O | - | |
| 245 | OR<= (S1)≤(S2) |  | O | - | |
| 246 | OR>=(S1)≥(S2) |  | O | - | 
