PLC应用技术(S7-1200机型)课件 项目三任务2流动彩灯控制系统的设计_第1页
PLC应用技术(S7-1200机型)课件 项目三任务2流动彩灯控制系统的设计_第2页
PLC应用技术(S7-1200机型)课件 项目三任务2流动彩灯控制系统的设计_第3页
PLC应用技术(S7-1200机型)课件 项目三任务2流动彩灯控制系统的设计_第4页
PLC应用技术(S7-1200机型)课件 项目三任务2流动彩灯控制系统的设计_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《可编程控制器技术应用》流动彩灯控制系统的设计主讲教师:×××Microbot目录010203第一部分:任务描述第二部分:任务准备与实施第三部分:任务检查与评价目录第一部分任务描述有4盏彩灯HL1、HL2、HL3、HL4成一排。当”启动”按钮按下时,从HL1到HL4以1s为间隔依次循环点亮。当按下“停止”按钮时,所有灯熄灭。要求完成系统的接线,并用博途软件编程、下载、运行。一、任务描述1.任务目标(1)掌握SCL编程语言的语法。(2)理解传送、移位四则运算、比较等指令的含义。(3)能绘制流动彩灯PLC系统的外部接线图。(4)能利用传送、移位四则运算、比较等指令编写流动彩灯PLC控制程序。一、任务描述2.实施条件(1)已经安装完毕的1200系列PLC系统一套。(2)已安装博途软件的计算机一台。一、任务描述3.安全提示(1)PLC所有模块的安装与接线必须在断电的情况下操作。(2)在安装接线完成后,必须由指导教师检查后才能上电运行。(3)在通电的情况下,不能用手去触摸任何金属端子。(4)出现任何异常情况先断电,并立即向指导教师报告。目录第二部分任务准备与实施二、任务准备与实施任务实施过程如图3-16所示。图3-16任务实施过程二、任务准备与实施1.PLC控制系统硬件设计(1)多灯控制系统工作原理的分析按下”启动”按钮SB1时HL1亮,同时定时器开始启动计时。1s后HL1灭,HL2亮;再过1s,HL2灭,HL3亮……即HL1~HL4每隔1s轮流点亮。按下“停止”按钮SB2时所有灯灭。二、任务准备与实施1.PLC控制系统硬件设计(2)绘制PLC外部接线原理图并接线根据继电器-接触器控制原理,如图所示完成本控制任务需要有”启动”按钮SB1和”停止”按钮SB2这两个主令控制信号作为输入设备;有4个执行元件(灯)HL1~HL4作为输出设备。虽然还有定时器进行定时控制,但这种控制属于PLC内部的程序控制,并不对外部产生输出信号。所以本系统共有两个输入设备、4个输出设备。PLC外部接线原理图如图3-17所示。图3-17PLC外部接线原理图二、任务准备与实施2.程序设计(1)SCL语言结构化控制语言(SCL,StructuredControlLanguage)是用于SIMATICS7CPU的基于PASCAL的高级编程语言。SCL指令使用标准编程运算符,例如,用(:=)表示赋值,算术功能(+表示相加,-表示相减,*表示相乘,/表示相除)。SCL也使用标准的PASCAL程序控制操作,如IF-THEN-ELSE、CASE、REPEAT-UNTIL、GOTO和RETURN。SCL编程语言中的语法元素还可以使用所有的PASCAL参考。

a.SCL表达式的构造SCL表达式是用于计算值的公式。表达式由操作数和运算符(如*、/、+或-)组成。操作数可以是变量、常量或表达式。表达式的计算按一定的顺序进行,具体由以下因素决定:二、任务准备与实施2.程序设计(1)SCL语言●每个运算符均具有预定义的优先级,首先执行优先级最高的运算。●按从左至右的顺序处理优先级相同的运算符。●可使用圆括号指定要一起计算的一系列运算符。表达式的结果可用于将值分配给程序使用的变量、用作由控制语句使用的条件、用作其它SCL指令的参数或者用于调用代码块。作为一种高级编程语言,SCL使用标准语句实现基本任务:●赋值语句::=二、任务准备与实施2.程序设计(1)SCL语言●算术功能:+、-、*和/●全局变量的寻址:"<变量名称>"(变量名称或数据块名称括在双引号内)●局部变量的寻址:#<变量名称>(在变量名称前加“#”符号)以下示例显示了用法不同的各种表达式:"C":=#A+#B;将两个局部变量之和赋值给一个变量"Data_block_1".Tag:=#A;为数据块变量赋值IF#A>#BTHEN"C":=#A;IF-THEN语句的条件"C":=SQRT(SQR(#A)+SQR(#B));SQRT指令的参数二、任务准备与实施2.程序设计(1)SCL语言算术运算符可以处理各种数值数据类型。结果的数据类型取决于最高有效操作数的数据类型。例如,使用INT操作数和REAL操作数的乘法运算会产生REAL结果值二、任务准备与实施2.程序设计(1)SCL语言

b.控制语句控制语句是SCL表达式的一种专用类型,可用于执行以下任务:●程序分支●重复SCL编程代码的某些部分●跳转到SCL程序的其它部分●按条件执行二、任务准备与实施2.程序设计(1)SCL语言SCL控制语句包括IF-THEN、CASE-OF、FOR-TO-DO、WHILE-DO、REPEATUNTIL、CONTINUE、GOTO和RETURN。一条语句通常占一行代码。可以在一行中输入多条语句,或者可将一条语句断开成多行代码以使代码易于阅读。分隔符(如制表符、换行符和多余空格)在语法检查期间会被忽略。END语句可终止控制语句。以下示例显示的是FOR-TO-DO控制语句。(两种形式的代码在语法上均有效。)FORx:=0TOmaxDOsum:=sum+value(x);END_FOR;FORx:=0TOmaxDOsum:=sum+value(x);END_FOR;二、任务准备与实施2.程序设计(2)移动指令数据移动指令(MOVE)的功能是将存储在确定地址单元的数据复制到新的存储单元。具体说明如表3-1所示。所能使用的数据类型如表3-2所示。LAD/LBDSCL说明out1:=in;将存储在指定地址的数据元素复制到新地址或多个地址。表3-1移动指令二、任务准备与实施2.程序设计(2)移动指令

表3-2移动指令的数据类型参数数据类型说明IN、OUTSInt,Int,DInt,USInt,UInt,UDInt,Real,LReal,Byte,Word,DWord,Char,WChar,Array,Struct,DTL,Time,Date,TOD,IEC数据类型,PLC数据类型IN为源地址OUT为目标地址二、任务准备与实施2.程序设计(2)移动指令

举例:

a.BOOL型数据的传送LADSCL二、任务准备与实施2.程序设计(2)移动指令

b.数值的传送LADSCL二、任务准备与实施2.程序设计(3)移位指令移位指令的功能是在使能端EN得电的时候,将输入端IN的数据逐位右移或者左移若干位。移位指令的说明如表3-3所示,参数的数据类型如表3-4所示。LAD/LBDSCL说明out:=SHR(in:=_variant_in_,n:=_uint_in);out:=SHL(in:=_variant_in_,n:=_uint_in);使用移位指令(SHL和SHR)移动参数IN的位序列。结果将分配给参数OUT。参数N指定移位的位数:•SHR:右移位序列•SHL:左移位序列表3-3移动指令的说明二、任务准备与实施2.程序设计(3)移位指令参数数据类型说明IN整数要移位的位序列NUSInt,UDint要移位的位数OUT整数移位操作后的位序列表3-4移动指令参数的数据类型●若N=0,则不移位。将IN值分配给OUT。●用0填充移位操作清空的位位置。●如果要移位的位数(N)超过目标值中的位数(Byte为8位、Word为16位、DWord为32位),则所有原始位值将被移出并用0代替(将0分配给OUT)。●对于移位操作,ENO总是为TRUE。二、任务准备与实施2.程序设计(3)移位指令举例:自右插入零,使Word的位左移(N=1)IN1110001010101101首次移位前的OUT值:1110001010101101首次左移后:1100010101011010第二次左移后:1000101010110100第三次左移后:0001010101101000二、任务准备与实施2.程序设计(4)循环指令循环移位指令的功能是在使能端EN得电的时候,将输入端IN的数据逐位循环右移或者循环左移。循环指令的说明如表3-5所示,参数的数据类型如表3-6所示。LAD/LBDSCL说明out:=ROL(in:=_variant_in_,n:=_uint_in);out:=ROR(in:=_variant_in_,n:=_uint_in);循环指令(ROR和ROL)用于将参数IN的位序列循环移位。结果分配给参数OUT。参数N定义循环移位的位数。•ROR:循环右移位序列•ROL:循环左移位序列表3-5循环指令说明二、任务准备与实施2.程序设计(4)循环指令参数数据类型说明IN整数要移位的位序列NUSInt,UDint要移位的位数OUT整数移位操作后的位序列自右插入零,使Word的位循环左移(N=1)IN1110001010101101首次移位前的OUT值:1110001010101101首次左移后:1100010101011011第二次左移后:1000101010110111第三次左移后:0001010101101111表3-6循环指令参数的数据类型举例二、任务准备与实施2.程序设计(5)比较指令比较指令通常用来比较两个数据之间的大小关系。比较指令的说明如表3-7所示,参数的数据类型如表3-8所示。LADFBDSCL说明out:=in1=in2;orIFin1=in2THENout:=1;ELSEout:=0;END_IF;比较数据类型相同的两个值。该LAD触点比较结果为TRUE时,则该触点会被激活。如果该FBD功能框比较结果为TRUE,则功能框输出为TRUE。表3-7比较指令的说明二、任务准备与实施2.程序设计(5)比较指令对于LAD和FBD:单击指令名称(如“==”),以从下拉列表中更改比较类型。单击“???”并从下拉列表中选择数据类型。参数数据类型说明IN1,IN2Byte,Word,DWord,SInt,Int,DInt,USInt,UInt,UDInt,Real,LReal,String,WString,Char,Char,Time,Date,TOD,DTL,常数要比较的值表3-8比较指令的参数数据类型二、任务准备与实施2.程序设计(6)数据四则计算指令四则计算通常用于两个或两个以上的数据进行四则计算。四则运算指令的说明如表3-9所示,参数的数据类型如表3-10所示。LAD/LBDSCL说明out:=in1+in2;out:=in1-in2;out:=in1*in2;out:=in1/in2;•ADD:加法(IN1+IN2=OUT)•SUB:减法(IN1-IN2=OUT)•MUL:乘法(IN1*IN2=OUT)•DIV:除法(IN1/IN2=OUT)整数除法运算会截去商的小数部分以生成整数输出。表3-9四则运算指令说明二、任务准备与实施2.程序设计(6)数据四则计算指令对于LAD和FBD:单击“???”并从下拉菜单中选择数据类型。表3-10四则运算指令参数类型参数数据类型说明IN1,IN2SInt,Int,DInt,USInt,UInt,UDInt,Real,LReal,常数数学运算输入OUTSInt,Int,DInt,USInt,UInt,UDInt,Real,LReal,数学运算输出二、任务准备与实施2.程序设计(7)SCL控制语句结构化控制语言(SCL,StructuredControlLanguage)提供三类用于结构化用户程序的程序控制语句:●选择语句:选择语句可将程序执行转移到备选语句序列。●循环:可以使用迭代语句控制循环执行。迭代语句指定应根据某些条件重复执行的程序部分。●程序跳转:程序跳转是指立刻跳转到特定的跳转目标,因而跳转到同一块内的其它语句。a.IF-THEN语句IF-THEN语句是条件语句,可控制程序流,根据逻辑表达式的Bool值的结果决定是否执行一组语句。还可以使用括号嵌套或结构化多条IF-THEN

语句的执行。IF-THEN语句的元素如表3-11所示。二、任务准备与实施2.程序设计(7)SCL控制语句SCL说明IF"condition"THENstatement_A;statement_B;statement_C;如果“condition”为TRUE或1,则执行后面的语句,直到遇到END_IF语句为止。如果“condition”为FALSE或0,则跳转到END_IF语句(除非程序包含可选的ELSIF或ELSE语句)。[ELSIF"condition-n"THENstatement_N;]可选的ELSEIF1语句提供其它要评估的条件。例如:如果IFTHEN语句中的“condition”为FALSE,则程序将评估“conditionn”。如果“condition-n”为TRUE,则执行“statement_N”。[ELSEstatement_X;]可选的ELSE语句提供IF-THEN语句的“condition”为FALSE时将要执行的语句。END_IF;END_IF语句用于终止IF-THEN指令。表3-11IF-THEN语句元素表二、任务准备与实施2.程序设计(7)SCL控制语句b.FOR语句FOR语句是循环语句。元素如表3-12所示。SCL说明FOR"control_variable":="begin"TO"end"[BY"increment"]DOstatement;;END_FOR;语句用于在控制变量处于指定的值范围内时重复执行某一语句序列。使用FOR定义循环时需要指定初始值和最终值。这两个值的数据类型必须与控制变量的相同。可以嵌套使用FOR循环。END_FOR语句与最后执行的FOR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论