资源描述:
《西门子plc编程》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库。
西门子PLC编程授课人:肖才丁2010.3
1一、状态故障判断SF(系统出错/故障显示,红色):CPU硬件故障或软件错误时亮。BATF(电池故障,红色):电池电压低或没有电池时亮。DC5V(+5V电源指示,绿色):5V电源正常时亮。FRCE(强制,黄色):至少有一个I/O被强制时亮。RUN(运行方式,绿色):CPU处于RUN状态时亮;重新启动时以2Hz的频率闪亮;HOLD(单步、断点)状态时以0.5Hz的频率闪亮。STOP(停止方式,黄色):CPU处于STOP,HOLD状态或重新启动时常亮。BUSF(总线错误,红色)。
2二、模式选择开关RUN-P(运行-编程)位置:运行时还可以读出和修改用户程序,改变运行方式。RUN(运行)位置:CPU执行、读出用户程序,但是不能修改用户程序。STOP(停止)位置:不执行用户程序,可以读出和修改用户程序。MRES(清除存储器):不能保持。将钥匙开关从STOP状态扳到MRES位置,可复位存储器,使CPU回到初始状态。
3三、复位存储器:通电后从STOP位置扳到MRES位置,“STOP”LED熄灭1s,亮1s,再熄灭1s后保持亮。放开开关,使它回到STOP位置,然后又回到MRES,“STOP”LED以2Hz的频率至少闪动3s,表示正在执行复位,最后“STOP”LED一直亮。
4第二章PLC编程基础
5一、快速认识西门子PLC例如,有两个开关K1、K2。控制要求,只有两个开关都接通时小灯D1才亮。当D1亮2秒钟后小灯D2开始亮。当开关K3切断时两个小灯就同时熄灭。1)接线程序控制2)存贮程序控制(PLC控制)
6二、S7-300/400软件基础2.1S7-300的数据环境1数据类型•位BOOL例:True或False(1或0)•字节BYTE例:B#16#0~FF•字WORD例:W#16#0~FFFF•双字DWORD例:DW#16#0~FFFF_FFFF•整数INT例:-32768~32767•双整数DINT例:-214783648~214783647•实数REAL例:1.2或34.5E-12•时间S5TIME例:S5T#2H5M(时基10mS)•字符CHAR例:'A‘•日期时间TIME_OF_DAY例:TOD#12:23:45.12•时间TIME例:T#20H_31M_23S(时基1mS)•日期DATE例:D#1990-1-1(时基1天)
7说明:S5TIME为SIMATIC时间范围S5T#0H_0M_0S_10MS~S5T#2H_46M_39S_0MSTIME为IEC时间范围T#000.0~T#235959.999TIME-OF-DAY为日计时范围TOD#0:0:0.0~TOD#23:59:59.999
82过程映象字节0字节1字节2:::CPU存储器区字节0字节1字节2:::PIIPIQ用户程序CPU存储器区::AI2.0=Q4.3::::11
9PSCPUSMSMSMSMSMSMSM模块1245678910槽号地址0.0地址0.7地址1.0地址1.7
103.STEP7的可能寻址范围设计的地址区访问区域缩写加在一起的最大区域过程映象I/Q输入/输出位I/Q0.0---65,535.7输入/输出字节I/QB0---65,535输入/输出字I/QW0---65,534输入/输出双字I/QD0---65,532存储器标志存储器位M0.0---255.7存储器字节MB0---255存储器字MW0---254存储器双字MD0---252I/Q外部输入/输出I/Q字节,外设PIB/PQB0---65,535I/Q字,外设PIW/PQW0---65,534I/Q双字,外设PID/PQD0---65,532定时器定时器(T)T0---255计数器计数器(C)C0---255
11设计的地址区访问区域缩写加在一起的最大区域数据块数据块(DB)DB0---65,535数据块用OPNDB打开位DBX0.0---65,535.7字节DBB0---65,535字DBW0---65,534双字DBD0---65,532用OPNDI打开位DIX0.0---65,535.7字节DIB0---65,535字DIW0---65,534双字DID0---65,532说明:DB块包含由任意一个块存取的数据.DB块用“OPNDB”打开.DI块用于存取与FB和SFB块的数据.DI块用“OPNDI”打开.S7同时只能识别一个DB块和一个DI块的数据.
122.2逻辑操作指令1.位逻辑指令(1)基本逻辑指令:与,或
13(2)基本逻辑指令:异或(XOR)
14•异或(XOR)指令练习:
15(3)常开和常闭触点,传感器和符号
16•常开常闭触点练习
17•与或非操作练习
18(4)赋值,置位,复位
19•置位复位操作练习
20(5)触发器的置位/复位
21•置位复位触发器练习
22(6)中间输出操作LADI1.0I1.1()M0.0I2.0I2.1()M1.1NOT()Q4.0AI1.0AI1.1=M0.0AM0.0AI2.0AI2.1NOT=M1.1AM1.1=Q4.0STLI1.0I1.1&&I2.0I2.1M0.0M1.1Q4.0=FBD
23•中间输出操作练习
24(7)RLO-边沿检测(检测确>>I1.0与I1.1的边沿)PI1.0I1.1M1.0M8.0NI1.0I1.1M1.1M8.1LADI1.0I1.1P=&M1.0M8.0I1.0I1.1N=&M1.1M8.1FBDAI1.0AI1.1FPM1.0=M8.0AI1.0AI1.1FNM1.1=M8.1STLI1.0I1.1RLOM1.0M8.0M8.1M1.1OB1-循环例如
25(8)信号-边沿检测(I1.0=1时检测>>I1.1的边沿)I1.1=M8.0POSM_BITM1.0&I1.0I1.1=M8.1NEGM_BITM1.1&I1.0FBDAI1.0A(AI1.1FPM1.0)=M8.0AI1.0A(AI1.1FNM1.1)=M8.1STLI1.1M8.0POSM_BITM1.0QI1.0I1.1M8.1NEGM_BITM1.1QI1.0LAD例如I1.0I1.1M1.0M8.0M8.1M1.1OB1-周期
262计数器线圈操作•加计数线圈CU•减计数线圈CDI0.0为置数脉冲I0.1为加计数脉冲I0.2为减计数脉冲CV=0时C5=OFFCV0时C5=ONQ0.5=C5I1.0=ON时,I0.0=ON时CV=10。I0.1脉冲使计数加1I0.2脉冲使计数减1
273计时器线圈操作•脉冲计时器(SP)I1.0=ON时•扩展脉冲计时器(SE)I1.0=ON时计时器的数据格式:
28•开通延时计时器(SD)I1.0=ON时•保持型开通延时计时器(SS)I1.0=ON时•关断延时计时器(SF)I1.0=ON时
295.3程序控制指令(1)主控继电器功能
30主控继电器(MCR)是梯形逻辑主控开关,控制信号流的通断。•主控继电器的启动指令(MCRA)•主控继电器的开通指令(MCR<)•主控继电器的关断指令(MCR>)•主控继电器的停止指令(MCRD)
31•主控继电器的例子1I0.0=ON执行“MCR<”和“MCR>”之间的指令。I0.0=OFF不执行“MCR<”和“MCR>”之间的指令。其中置位信号不变,赋值信号被复位。
32•主控继电器的例子2
33(2)无条件跳转指令
34(3)条件跳转指令
35•跳转指令练习(跳过之处不扫描)
362.4传送和比较指令•传送指令字节,字,双字…传送。•比较指令整数,双整数,实数比较。比较符:EQ_I,NE_I,GT_I,LT_I,GE_I,LE_I.EQ_D,NE_D,GT_D,LT_D,GE_D,LE_D.EQ_R,NE_R,GT_R,LT_R,GE_R,LE_R.
372.5运算指令•整数运算运算符:ADD_I.SUB_I.MUL_I.DIV_I.ADD_DI.SUB_DI.MUL_DI.DIV_DI,MOD_DI.•实数运算运算符:ADD_R.SUB_R.MUL_R.DIV_R.SIN,COS,TAN,ASIN,ACOS,ATAN,LN,EXP…
382.6转换指令•BCD码与整数转换BCD_I把通道中的BCD码转换为整数存入通道中。I_BCD把通道中的整数转换为BCD码存入通道中。•双整数与实数转换DI_RROUND…BCD_DI,DI_BCD,I_DI,DI_I。
392.7计数器指令•双向计数器I0.0为加计数脉冲I0.1为减计数脉冲I0.2为置数脉冲I0.3为复位脉冲CV>0时,C0=ON。•向上计数器I0.0为加计数脉冲I0.1为置数脉冲I0.2为复位脉冲CV>0时,C0=ON。
40•向下计数器I0.3为减计数脉冲I0.4为置数脉冲I0.5为复位脉冲CV>0时,C0=ON。说明:梯形图中CV为用十六进制表示的计数器的当前值。梯形图中CV_BCD为用BCD码表示的计数器的当前值。梯形图中的PV值可以用BCD码表示的数值由通道送入。
412.8计时器指令•脉冲计时器(SP)•扩展脉冲计时器(SE)
42•开通延时计时器(SD)•保持型开通延时计时器(SS)
43•关断延时计时器(SF)说明:梯形图中BI为用十六进制表示的计数器的当前值。梯形图中BCD为用BCD码表示的计数器的当前值。梯形图中的TV值可以用BCD码表示的数值由通道送入。
442.9块操作指令1温度控制(S7-PRO1)•说明:检测温度在PIW256中,显示在PQW368中。温控1的温度保持在8±2,控制器为Q0.0。温控2的温度保持在18±2,控制器为Q0.1。•设计:OB1为主程序,负责调用控制程序FC1。DB1和DB2为通用数据块。其中DB1为温控1的控制参数数据块。DB2为温控2的控制参数数据块。
45•DB块:DB1DB2
46•FC块:FC1
47•OB块:OB1
48•运行仿真:温控1控制仿真温控2控制仿真
492温度控制(S7-PRO2)•说明:检测温度在PIW256中,显示在PQW368中。温控1的温度保持在8±2,控制器为Q0.0。温控2的温度保持在18±2,控制器为Q0.1。•设计:OB1为主程序,负责调用控制程序FB1。DB1和DB2为FB1型数据块。其中DB1为温控1的控制参数数据块。DB2为温控2的控制参数数据块。
50•FB块:FB1
51•DB块:DB1DB2
52•OB块:OB1
53•运行仿真:温控1控制仿真温控2控制仿真
543温度控制(S7-PRO3)•说明:检测温度在PIW256中,显示在PQW368中。温控1的温度保持在8±2,控制器为Q0.0。温控2的温度保持在18±2,控制器为Q0.2。温控3的温度保持在28±2,控制器为Q0.4。•设计:OB1为主程序,负责调用控制程序FB1和FC1。DB1和DB2为FB1型数据块。其中DB1为温控1的控制参数数据块。DB2为温控2的控制参数数据块。DB3为通用数据块,为温控3的控制参数。FB1控制温度1,2。FC1控制温度3。
55•FC块:FC1
56•FB块:FB1
57•DB块:DB1DB2
58DB3
59•OB块:OB1
60OB1续•运行仿真:I0.0,I0.1=ON:PIW256<6Q0.0=ON,PIW256>10Q0.0=OFF.I0.2,I0.3=ON:PIW256<16Q0.2=ON,PIW256>20Q0.2=OFF.I0.3,I0.4=ON:PIW256<26Q0.4=ON,PIW256>30Q0.4=OFF.
614计时器计数器与数据块(S7-PRO10)•说明:计时器,计数器的数据在数据块中的存取的实现。计时器T0与T1组成一个振荡器。振荡的次数由计数器记录。•设计:OB1为运行程序,DB1为存取数据块。DB块:DB1
62•OB块:OB1计时器数据格式:
63OB1续
64•运行仿真:
655占空比可调的时间震荡器(S7-PRO26)
66•运行仿真:
676循环中断OB35(S7-PRO21)•在项目中添加OB35•进入OB35编写中断程序
68•在PLC中设定循环中断有效
69•进入OB1编写主程序•程序下载到PLC(或仿真器)•运行
70第三章PLC程序设计(开关量设计)
711.开关量控制系统设计方法举例(1)机械手控制系统线性程序设计•控制要求:机械手一个循环周期可分为八步。•控制方式:自动、单动和手动。下面讨论自动控制过程。
72•硬件选择
73•硬件接线原理图
74•由逻辑流程图设计程序
75•由时序流程图设计程序由时序流程图来设计程序,首先要把整个工程的各个任务分成多个时序,在不同的时序中完成不同的任务。例如本例子中可分成8个时序。用M1.0、M1.1…M1.7分别表述各个时序的特征位。当M1.O=1时为机械手下降1时序,M1.1为机械手抓紧时序等。
76•线性结构软件设计(S7-PR23)OB1块
77OB1续
78OB1续
79OB1续
80OB1续
81OB1续
82运行仿真I0.4=1I0.6=1I1.5=1I0.0=1Q0.0=1降1I0.4=0I0.5=1Q0.0=0Q0.4=1T1=1Q0.1=1升1I0.5=0I0.4=1Q0.1=0Q0.2=1右I0.6=0I0.7=1Q0.2=0Q0.0=1降2I0.4=0I0.5=1Q0.0=0Q0.4=0T2=1Q0.1=1升2I0.5=0I0.4=1Q0.1=0Q0.3=1左I0.7=0I0.6=1Q0.3=0
83(2)搅拌控制系统线性程序设计•初始状态及操作工艺…•硬件设计…
84•内存变量分配表
85•线性结构软件设计(S7-PRO8)OB1块
86OB1续
87OB1续
88•系统仿真I0.0=ONI0.4=OFFQ4.0=ONI0.3=ONQ4.0=OFFQ4.1=ONI0.2=ONQ4.1=OFFQ4.2=OFFT1T1=ONQ4.2=OFFQ4.3=ONI0.4=OFFT2T2=ONQ4.3=OFF
89(3)搅拌控制系统分块结构软件设计(S7-PRO9)•块结构OB1主程序OB100由停止转为运行时初始化程序FC1为配料A控制程序FC2为配料B控制程序FC3为搅拌控制程序FC4为出料控制程序
90OB1
91OB1续
92OB100
93FC1FC2
94FC3
95FC4
96•系统仿真I0.0=ONI0.4=OFFQ4.0=ONI0.3=ONQ4.0=OFFQ4.1=ONI0.2=ONQ4.1=OFFQ40.2=OFFT1T1=ONQ4.2=OFFQ4.3=ONI0.4=OFFT2T2=ONQ4.3=OFF
97第四章PLC程序设计(模拟量设计)
981.模拟量控制系统设计举例(1)搅拌控制系统线性程序设计(S7-PRO111)•初始状态及操作工艺…•硬件设计…•软件系统结构
99•OB1块
100OB1续
101OB1续
102OB1续
103•OB100块
104•系统仿真I0.0=ONPIW256<100Q4.0=ONPIW256>=100Q4.0=OFFQ4.1=ONPIW256>=200Q4.1=OFFQ4.2=OFFT1T1=ONQ4.2=OFFQ4.3=ONPIW256=0T2T2=ONQ4.3=OFF
1052S7-300模拟量模块的寻址IM256to270336to350352to366368to382304to318320to334272to286288to302(发送)槽口号234567891011384to398400to414432to446448to462464to478480to494496to510416to430机架1R0电源模块IM(接收)电源模块CPU512to526528to542544to558560to574576to590592to606608to622624to638机架2IM(接收)电源模块机架3640to654656to670672to686688to702704to718720to734736to750752to766IM(接收)电源模块
1063模拟量模块SM335(输入)
1074模拟模块SM335(输出)
1085模拟输入模块SM331
1096配置模拟量模块SM335
1107配置模拟量模块SM331
111发布完毕!
112谢谢大家!