STEP7基础编程介绍.ppt
《STEP7基础编程介绍.ppt》由会员分享,可在线阅读,更多相关《STEP7基础编程介绍.ppt(212页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 第三章 STEP7编程技术3.1 STEP 7中的块 在在STEP7STEP7软件中主要有以下几种类型的块:软件中主要有以下几种类型的块:n n组织块:组织块:OBOB(Organization BlockOrganization Block)n n功能:功能:FCFC(FunctionFunction)n n功能块:功能块:FBFB(Function BlockFunction Block)n n系统功能:系统功能:SFCSFC(System FunctionSystem Function)n n系统功能块:系统功能块:SFBSFB(System Function BlockSystem
2、Function Block)n n背景数据块:背景数据块:DBDB(Instance Data BlockInstance Data Block)n n共享数据块:共享数据块:DBDB(Share Data BlockShare Data Block)3.1.1组织块OBn n启动组织块n n循环执行的程序组织块n n定期执行的程序组织块n n事件驱动执行的程序组织块1.启动组织块启动组织块n n(1 1)OB100OB100为完全再启动类型(暖启动)。启动时,过程映像区和不为完全再启动类型(暖启动)。启动时,过程映像区和不保持的标志存储器、定时器及计数器被清零,保持的标志存储器、定保持的标
3、志存储器、定时器及计数器被清零,保持的标志存储器、定时器和计数器以及数据块的当前值保持原状态,执行时器和计数器以及数据块的当前值保持原状态,执行OB100OB100,然后开,然后开始执行循环程序始执行循环程序OB1OB1。一般。一般S7-300PLCS7-300PLC都采用此种启动方式。都采用此种启动方式。n n (2 2)OB101OB101为再启动类型(热启动)。启动时,所有数据(无论为再启动类型(热启动)。启动时,所有数据(无论是保持型和非保持型)都将保持原状态,并且将是保持型和非保持型)都将保持原状态,并且将OB101OB101中的程序执行中的程序执行一次。然后程序从断点处开始执行。剩
4、余循环执行完以后,开始执行一次。然后程序从断点处开始执行。剩余循环执行完以后,开始执行循环程序。热启动一般只有循环程序。热启动一般只有S7-400S7-400具有此功能。具有此功能。n n (3 3)OB102OB102为冷启动方式。为冷启动方式。CPU318-2CPU318-2和和CPU417-4CPU417-4具有冷启动型的具有冷启动型的启动方式,冷启动时,所有过程映像区和标志存储器、定时器和计数启动方式,冷启动时,所有过程映像区和标志存储器、定时器和计数器(无论是保持型还是非保持型)都将被清零,而且数据块的当前值器(无论是保持型还是非保持型)都将被清零,而且数据块的当前值被装载存储器的原
5、始值覆盖。然后将被装载存储器的原始值覆盖。然后将OB102OB102中的程序执行一次后执行中的程序执行一次后执行循环程序。循环程序。2.循环执行的程序组织块循环执行的程序组织块 OB1是循环执行的组织块。其优先级为最低。PLC在运行时将反复循环执行OB1中的程序,当有优先级较高的事件发生时,CPU将中断当前的任务,去执行优先级较高的组织块,执行完成以后,CPU将回到断点处继续执行OB1中的程序,并反复循环下去,直到停机或者是下一个中断发生。一般用户主程序写在OB1中。3.定期的程序执行组织块定期的程序执行组织块n nOB10OB10、OB11OB17OB11OB17为日期中断组织块。通过日期为
6、日期中断组织块。通过日期中断组织块可以在指定的日期时间执行一次程序,中断组织块可以在指定的日期时间执行一次程序,或者从某个特定的日期时间开始,间隔指定的时或者从某个特定的日期时间开始,间隔指定的时间(如一天,一个星期,一个月等)执行一次程间(如一天,一个星期,一个月等)执行一次程序。序。n nOB30OB30、OB31OB38OB31OB38为循环中断组织块。通过循环为循环中断组织块。通过循环中断组织块可以每隔一段预定的时间执行一次程中断组织块可以每隔一段预定的时间执行一次程序。循环中断组织块的间隔时间较短,最长为序。循环中断组织块的间隔时间较短,最长为1 1分分钟。最短为钟。最短为1 1毫秒
7、。在使用循环中断组织块时,应毫秒。在使用循环中断组织块时,应该保证设定的循环间隔时间大于执行该程序块的该保证设定的循环间隔时间大于执行该程序块的时间,否则时间,否则CPUCPU将出错。将出错。4.事件驱动的程序执行组织块事件驱动的程序执行组织块n n延时中断组织块n n硬件中断组织块n n异步错误组织块n n同步错误组织块延时中断组织块延时中断组织块n nOB20OB27:延时中断,当某一事件发生后,延时中断组织块(OB20)将延时指定的时间后执行。OB20 OB27只能通过调用系统功能SFC32而激活,同时可以设置延时时间。硬件中断组织块硬件中断组织块n nOB40OB47:硬件中断。一旦硬
8、件中断事件发生,硬件中断组织块OB40OB47将被调用。硬件中断可以由不同的模块触发,对于可分配参数的信号模块DI、DO、AI、AO等,可使用硬件组态工具来定义触发硬件中断的信号;对于CP模块和FM模块,利用相应的组态软件可以定义中断的特性。异步错误组织块异步错误组织块n nOB80OB87:异步错误中断。异步错误是PLC的功能性错误。它们与程序执行时不同步地出现,不能跟踪到程序中的某个具体位置。在运行模式下检测到一个故障后,如果已经编写了相关的组织块,则调用并执行该组织块中的程序。如果,发生故障时,相应的故障组织块不存在,则CPU将进入STOP模式。同步错误组织块同步错误组织块n nOB12
9、1OB121、OB122OB122:同步错误中断。如果在某特定的:同步错误中断。如果在某特定的语句执行时出现错误,语句执行时出现错误,CPUCPU可以跟踪到程序中某可以跟踪到程序中某一具体的位置。由同步错误所触发的错误处理组一具体的位置。由同步错误所触发的错误处理组织块,将作为程序的一部分来执行,与错误出现织块,将作为程序的一部分来执行,与错误出现时正在执行的块具有相同的优先级。时正在执行的块具有相同的优先级。n n编程错误,例如在程序中调用一个不存在的块,编程错误,例如在程序中调用一个不存在的块,将调用将调用OB121OB121。n n访问错误,例如程序中访问了一个有故障或不存访问错误,例如
10、程序中访问了一个有故障或不存在的模块,将调用在的模块,将调用OB122OB122。3.1.2功能FC和功能块FBn nFC和FB都是用户自己编写的程序块,用户可以将具有相同控制过程的程序编写在FC或FB中,然后在主程序OB1或其他程序块中(包括组织块和功能、功能块)调用FC或FB。FC或FB相当于子程序的功能,都可以定义自己的参数 1.FC和和FB的变量声明表的差别的变量声明表的差别2FC和和FB参数赋值不同参数赋值不同n nFC没有自己的背景数据块n nFB有自己的背景数据块n nFC的参数必须指定实参n nFB的参数可根据需要决定是否指定实参3.1.3系统功能SFC和系统功能块SFBn n
11、SFC和SFB是预先编好的可供用户调用的程序块,它们已经固化在S7PLC的CPU中,其功能和参数已经确定。一台PLC具有哪些SFC和SFB功能,是由CPU型号决定的。具体信息可查阅CPU的相关技术手册。通常SFC和SFB提供一些系统级的功能调用,如通讯功能、高速处理功能等。注意:在调用SFB时,需要用户指定其背景数据块(CPU中不包含其背景数据块),并确定将背景数据块下载到PLC中。3.1.4背景数据块和共享数据块n n背景DB是和某个FB或SFB相关联,其内部数据的结构与其对应的FB或SFB的变量声明表一致。n n共享DB的主要目的是为用户程序提供一个可保存的数据区,它的数据结构和大小并不依
12、赖于特定的程序块,而是用户自己定义。需要说明的是,背景DB和共享DB没有本质的区别,它们的数据可以被任何一个程序块读写。3.2STEP7的程序结构和编程语言n n STEP7的程序结构可分为以下三类:的程序结构可分为以下三类:1.线性程序结构线性程序结构2.分块程序结构分块程序结构3.结构化程序结构结构化程序结构 n n编程语言编程语言(三种基本编程语言)(三种基本编程语言)1.梯形图梯形图LAD2.语句表语句表STL3.功能图功能图FBD3.3数据类型数据类型数据是程序处理和控制的对象,在程序运行过程中,CPU处理的一串二进制符号所代表的意义是由数据类型决定的,数据类型决定了数据的属性,例如
13、数据长度,取值范围等。n nSTEP7中的数据可分为以下三大类:n n基本数据类型n n复合数据类型n n参数数据类型基本数据类型(一)基本数据类型(一)n n 位(BOOL)n n 字节(BYTE)n n字(WORD)n n双字(DOUBLE WORD)n n整数(INT)n n双整数(DOUBLE INT)n n浮点数(REAL)基本数据类型(二)基本数据类型(二)n nS5TIME(SIMATIC时间)n nIEC时间(TIME)n nIEC日期(date)n n日计时(TIME_OF_DAY)n n字符(CHAR)3.3.2复杂数据类型n n日期时间数据类型(Data_And_Time
14、)n n字符串类型(String)n n数组类型Array n n结构(STRUCT)n n用户定义类型(UDT)3.3.3参数数据类型参数数据类型是一类用于功能FC或功能块FB的数据类型,主要包括以下两种:n nPointe指针类型 6字节指针类型,传递数据块号和数据地址n nAny指针类型 10字节指针类型,传递数据块号、数据地址、数据数量以及数据类型3.4S7的系统存储区和寻址方式n nS7的系统存储区集成在CPU中,不能被扩展。系统存储区根据功能分为不同的区域供用户使用。n nS7的寻址方式为:符号地址寻址 绝对地址寻址3.4.1系统存储区系统存储区n n输入过程暂存区(I)n n输出
15、过程暂存区(Q)n n位存储区(M)n n外部输入输出(PI/PQ)n n计时器(T)n n计数器(C)n n数据块(DB)n n局部数据(L)3.4.2绝对地址寻址绝对地址寻址n n位寻址n n字节寻址 n n字寻址n n双字寻址位寻址位寻址位寻址是最小存储单元的寻址方式。寻址时,采用以下结构:存储区关键字+字节地址+位地址:例如:Q 10.3 n nQ:表示输出过程暂存区;n n10:表示第十个字节;字节地址从0开始,最大值由该存储区的大小决定;n n3:表示位地址为3,位地址的取值范围是07。字节寻址字节寻址 n n字节寻址时,访问一个8位的存储区域。寻址时,采用以下结构进行寻址:n n
16、存储区关键字+字节的关键字(B)+字节地址n n例如:MB0n n M:表示位存储区n n B:表示字节byten n 0:表示第0个字节。其中最低位的位地址为M0.0,最高位的为M0.7 字节寻址字节寻址字寻址字寻址字寻址时,访问一个16位的存储区域,包含两个字节。寻址时采用以下结构:存储区关键字+字的关键字(W)+第一字节地址n n例如:IW10n n I:表示输入过程暂存区n n W:表示字wordn n 10:表示从第10个字节开始,包括两个字节的存储空间,即IB10和IB11。字寻址字寻址双字寻址双字寻址双字寻址时,访问一个双字寻址时,访问一个3232位的存储区域,包含位的存储区域,
17、包含4 4个字个字节。寻址时采用以下结构:存储区关键字节。寻址时采用以下结构:存储区关键字+字的关字的关键字(键字(DD)+第一字节地址第一字节地址n n例如:例如:LD20LD20n n L L:表示局部数据暂存区:表示局部数据暂存区n n DD:表示字:表示字wordwordn n 20 20:表示从第:表示从第2020个字节开始,包括个字节开始,包括4 4个字节个字节的存储空间。包括的存储空间。包括LB20LB20、LB21LB21、LB22LB22和和LB23LB23四个四个字节字节 双字寻址双字寻址3.4.3符号地址寻址符号地址寻址n nSTEP7中的符号寻址是先给需要使用的绝对地址
18、或参数变量定义符号,然后在程序中使用所定义好的符号进行编程寻址 n nSTEP7中可以定义的符号有两种:全局符号 局部符号 全局符号全局符号 和局部符号和局部符号全局符号n n在符号编辑器中定义n n适用于所有的程序块n n以双引号表示局部符号n n在块中的变量申明表中定义n n所定符号只在本程序块中有效n n符号前加#号表示3.5STEP7指令系统(一)n nS7系列系列PLC的的CPU中的寄存器中的寄存器 累加器(Accumulators)地址寻址寄存器(Address Register)数据块寄存器(Data Block Register)状态字(Status Word)n n位逻辑指令
19、位逻辑指令 3.5.1S7系列PLC的CPU中的寄存器n n状态字状态字n n/FC/FC:首次检查位。:首次检查位。n nRLORLO:逻辑操作结果位。:逻辑操作结果位。n nSTASTA:状态位:状态位n nOROR:或位:或位n nOVOV:溢出位:溢出位 n nOSOS:溢出存储位:溢出存储位 n nCC0CC0和和CC1CC1:条件码:条件码 n nBRBR:二进制结果:二进制结果 3.5.2 位逻辑指令 n n常开接点n n常闭接点n n输出线圈n n程序实例:位逻辑指令n n中间输出单元n n信号流反向指令n n复位线圈n n置位线圈n n复位置位触发器和置位复位触发器位逻辑指令
20、n n程序实例n n对应时序图如下所示:位逻辑指令n n时序图位逻辑指令正跳沿(上升沿)检测指令正跳沿(上升沿)检测指令位逻辑指令负跳沿(下降沿)检测指令负跳沿(下降沿)检测指令位逻辑指令n n地址正跳沿检测n n地址负跳沿检测 n nSAVE指令 位逻辑指令地址上升沿检测指令示例位逻辑指令以上程序的时序图3.6实训四:PLC控制一台电机正反转 使用S7-300PLC实现一台电动机的正反转控制。控制要求如下:要求能实现电机的正转和反转控制,并能进行正反转的直接切换。另外,还可进行正反向的点动控制,当电机处于正常运行时,点动按钮不起作用。3.6.1实训目的:n n掌握S7-300PLC输入输出模
21、块接线方法;n n掌握西门子S7-300PLC编程软件的使用方法和程序输入、下载和调试方法;n n掌握基本指令的使用方法;3.6.2实训设备:n nPLC实验板(西门子S7-300)n n开关按钮5个n n直流继电器两个(线圈电压为24V)n n直流电动机一台(额定电压9V)n n导线若干 n nPC机和STEP 7编程调试软件3.6.3实训内容:n n系统分析(预习):n nPLC硬件配置 n n分析控制要求进行输入输出点分配,并根据资源分配画出外部接线图。n n根据控制要求设计程序。n n在线调试程序3.6.4实训步骤:n n按照输入输出模块接线图以及直流电动机主电路接线图进行外部接线;n
22、 n使用STEP-7软件创建项目,进行硬件配置和参数设置;n n打开项目中的OB1程序块编写并书写控制程序;n n下载,并调试程序;n n打开直流电动机主电路电源进行整体调试;参考硬件配置表参考硬件配置表序号序号 名称名称型号说明型号说明 数量数量 1 1CPU CPU CPU313 CPU313 1 12 2电源模块电源模块PS307PS3071 13 3开关量输入模开关量输入模块块SM321SM3211 14 4开关量输出模开关量输出模块块SM322 SM322 1 15 5前连接器前连接器2020针针2 2参考输入输出地址分配表参考输入输出地址分配表序号序号 输入信号名称输入信号名称 地
23、址地址1 1正向长动按钮正向长动按钮SB1SB1(常开)(常开)I0.0 I0.0 2 2正向点动按钮正向点动按钮SB2SB2(常开)(常开)I0.1I0.13 3反向长动按钮反向长动按钮SB3SB3(常开)(常开)I0.2I0.24 4反向点动按钮反向点动按钮SB4SB4(常开)(常开)I0.3I0.35 5停止按钮停止按钮SB5SB5(常开)(常开)I0.4I0.4序号序号 输出信号名称输出信号名称 地址地址1 1正转继电器正转继电器KM1 KM1 Q4.0 Q4.0 2 2反转继电器反转继电器KM2 KM2 Q4.1 Q4.1 3.7STEP7指令系统(二)n n定时器指令 1.脉冲定时
24、器:-(SP)2.扩展脉冲定时器-(SE)3.开通延时定时器-(SD)4.保持型开通延时定时器-(SS)5.关断延时定时器-(SF)n n数据装载和传送指令(MOVE)1、脉冲定时器、脉冲定时器 -(SP)n n-(SP)指令是产生指定时间宽度脉冲的定时器。LADLAD参数参数数据数据类类型型存存储储区区说说明明 TIMTIMERERT T地址表示要起地址表示要起动动的的计时计时器号器号时间时间值值S5TIS5TIMEMEI I,Q Q,MM,D D,L L定定时时间值时时间值(S5TIMES5TIME格式)格式)1、脉冲定时器、脉冲定时器 -(SP)n n如图所示程序,定时器定义的时间值为2
25、S 1、脉冲定时器、脉冲定时器 -(SP)n n上图程序对应的时序图如图所示 1、脉冲定时器、脉冲定时器 -(SP)n nT1接点控制Q0.0线圈,因此T1接点的状态与Q0.0的状态一致。由时序图可以看出,脉冲定时器每次起动的条件是逻辑位有正跳沿发生,定时器启动计时,T1接点开始输出高电平“1”。从时序图可以看到,-(SP)指令计时的过程中,逻辑位的状态若变为“0”(如图3.7.2第7秒处)则定时器停止计时,且输出为“0”。因此,脉冲定时器输出的高电平的宽度小于或等于所定义的时间值。1、脉冲定时器、脉冲定时器 -(SP)n n脉冲定时器的方框指令如表所示 LADLAD参数参数数据数据类类型型说
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- STEP7 基础 编程 介绍
限制150内