项目2 S7-1200 PLC控制输送带物料分拣_第1页
项目2 S7-1200 PLC控制输送带物料分拣_第2页
项目2 S7-1200 PLC控制输送带物料分拣_第3页
项目2 S7-1200 PLC控制输送带物料分拣_第4页
项目2 S7-1200 PLC控制输送带物料分拣_第5页
已阅读5页,还剩107页未读 继续免费阅读

下载本文档

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

文档简介

常见数据类型与寻址数据类型PLC程序中出现的与变量紧密联系的数据形式,它用于指定数据元素的大小以及如何解释数据。在定义变量时,需要设置它的数据类型,每个指令参数至少支持一种数据类型,而有些参数支持多种数据类型。数据类型数据类型在计算机系统中,所有的数据都是以二进制进行存储的,整数一律用补码来表示和存储,并且正整数的补码为原码;负整数的补码为绝对值的反码加1。数据类型USint、UInt、UDInt数据类型为无符号整型数;Sint、Int、Dint数据类型为有符号整型数,最高位为符号位,符号位为“0”表示正整数,符号位为“1”表示负整数。数据类型浮点数分为Real(32位)和LReal(64位),不一样的存储长度,其记录的数据值的精度不一样。其中最高位为符号位,符号位“0”表示正实数,符号位为“1”表示负实数。数据存储与输入输出映像区上述数据类型可以存放在过程映像输入I区、过程映像输出Q区、位存储器M区和数据块DB区等PLC地址区。每个存储单元都有唯一的地址,用户程序利用这些地址访问存储单元中的信息。绝对寻址绝对地址由以下元素组成:第一种是地址区助记符,如I、Q或M。第二种是要访问数据的单位,如“B”表示Byte、“W”表示Word、“D”表示DWord。第三种是数据地址,如Byte3、Word3。地址表示方式地址表示方式运算指令一.比较指令比较指令常用于工业控制中位置、数量的比较及其所引发的相关参数的控制。在梯形图指令中,比较指令的用法就是用于两个相同数据类型的有符号数或无符号数IN1和IN2的比较判断操作,涉及到的运算有“==、>=、<=、>、<、<>”等,分别表示“等于、大于等于、小于等于、大于、小于、不等于”。一.比较指令一.比较指令(1)CMP==:等于比较器:可以使用“等于”指令判断第一个比较值(<操作数1>)是否等于第二个比较值(<操作数2>)。如果满足比较条件,则该指令返回逻辑运算结果(RLO)“1”。如果不满足比较条件,则该指令返回RLO“0”。(2)CMP<>:不等于使用“不等于”指令判断第一个比较值(<操作数1>)是否不等于第二个比较值(<操作数2>)。如果满足比较条件,则该指令返回逻辑运算结果(RLO)“1”。如果不满足比较条件,则该指令返回RLO“0”。一.比较指令(3)CMP>=:大于或等于可以使用“大于或等于”指令判断第一个比较值(<操作数1>)是否大于或等于第二个比较值(<操作数2>)。如果满足比较条件,则该指令返回逻辑运算结果(RLO)“1”。如果不满足比较条件,则该指令返回RLO“0”。(4)CMP<=:小于或等于可以使用“小于或等于”指令判断第一个比较值(<操作数1>)是否小于或等于第二个比较值(<操作数2>)。如果满足比较条件,则该指令返回逻辑运算结果(RLO)“1”。如果不满足比较条件,则该指令返回RLO“0”。

一.比较指令(5)CMP>:大于可以使用“大于”指令确定第一个比较值(<操作数1>)是否大于第二个比较值(<操作数2>)。如果满足比较条件,则该指令返回逻辑运算结果(RLO)“1”。如果不满足比较条件,则该指令返回RLO“0”。(6)CMP<:小于可以使用“小于”指令判断第一个比较值(<操作数1>)是否小于第二个比较值(<操作数2>)。如果满足比较条件,则该指令返回逻辑运算结果(RLO)“1”。如果不满足比较条件,则该指令返回RLO为“0”。二.移动指令移动指令是将数据元素复制到新的存储器地址,并从一种数据类型转换为另一种数据类型,移动过程中不更改源数据。1.MOVE移动值二.移动指令1.MOVE移动值在初始状态,指令框中包含1个输出,即OUT1,可以鼠标点击图符扩展输出数目。在该指令框中,应按升序顺序排列所添加的输出端。执行该指令时,将IN输入端操作数中的内容发送到所有可用的输出端。如果传送结构化数据类型(DTL,Struct,Array)或字符串(String)的字符,则无法扩展指令框。可以输出多个地址OUT1、OUT2、OUT3等。扩展输出二.移动指令2.MOVE_BLK指令使用“MOVE_BLK块移动”指令,可将存储区(源区域)的内容移动到其它存储区(目标区域)。使用参数COUNT可以指定待复制到目标区域中的元素个数。可通过IN输入端的元素宽度来指定待复制元素的宽度。并按地址升序顺序执行复制操作。二.移动指令3.UMOVE_BLK无中断块移动使用“UMOVE_BLK无中断块移动”指令,可将存储区(源区域)的内容连续复制到其它存储区(目标区域)。使用参数COUNT可以指定待复制到目标区域中的元素个数。可通过IN输入端的元素宽度来指定待复制元素的宽度。源区域内容沿地址升序方向复制到目标区域。二.移动指令4.FILL_BLK填充块“FILL_BLK填充块”指令中用IN输入的值填充一个存储区域(目标区域)。将以OUT输出指定的起始地址,填充目标区域。可以使用参数COUNT指定复制操作的重复次数。执行该指令时,将选择IN输入的值,并复制到目标区域COUNT参数中指定的次数。二.移动指令5.SWAP交换指令“SWAP交换”指令可以更改输入IN中字节的顺序,并在输出OUT中查询结果。SWAP交换数据类型为DWORD的示意二.移动指令5.SWAP交换指令三.数学运算指令在数学运算指令中,ADD、SUB、MUL和DIV分别是加、减、乘、除指令,其操作数的数据类型可选SInt、Int、Dint、USInt、UInt、UDInt和Real。在运算过程中,操作数的数据类型应该相同。1.加法ADD指令三.数学运算指令1.加法ADD指令在初始状态下,指令框中至少包含两个输入(IN1和IN2),可以鼠标点击图符扩展输入数目,在功能框中按升序对插入的输入进行编号,执行该指令时,将所有可用输入参数的值相加,并将求得的和存储在输出OUT中。点击图符扩展输入数目三.数学运算指令1.加法ADD指令根据参数说明,只有使能输入EN的信号状态为“1”时,才执行该指令。如果成功执行该指令,使能输出ENO的信号状态也为“1”。三.数学运算指令1.加法ADD指令如果满足下列条件之一,则使能输出ENO的信号状态为“0”:条件一:使能输入EN的信号状态为“0”。条件二:指令结果超出输出OUT指定的数据类型的允许范围。条件三:浮点数具有无效值。三.数学运算指令2.减法SUB指令可以使用减法SUB指令从输入IN1的值中减去输入IN2的值并在输出OUT(OUT=IN1-IN2)处查询差值。SUB指令的参数与ADD指令相同。三.数学运算指令3.乘法MUL指令可以使用乘法MUL指令将输入IN1的值乘以输入IN2的值,并在输出OUT(即OUT=IN1*IN2)处查询乘积。二.移动指令4.除法DIV和返回除法余数MOD指令除法DIV是返回除法的商,返回除法余数MOD是余数。需要注意的是,MOD指令只有在整数相除时才能应用。三.数学运算指令除了上述运算指令之外,还有NEG、INC、DEC和ABS等数学运算指令,具体说明如下:(1)NEG指令:将输入IN的值取反,保存在OUT中。(2)INC和DEC指令:参数IN/OUT的值分别加1和减1。(3)绝对值指令ABS:求输入IN中有符号整数或实数的绝对值。三.数学运算指令对于浮点数函数运算,其梯形图和对应的描述如表中所示。需要注意的是,三角函数和反三角函数指令中的角度均为以弧度为单位的浮点数。三.数学运算指令除了上述运算指令之外,还有NEG、INC、DEC和ABS等数学运算指令,具体说明如下:(1)NEG指令:将输入IN的值取反,保存在OUT中。(2)INC和DEC指令:参数IN/OUT的值分别加1和减1。(3)绝对值指令ABS:求输入IN中有符号整数或实数的绝对值。四.移位、循环和字逻辑运算指令1.移位和循环指令移位指令可以将输入参数IN中的内容向左或向右逐位移动;循环指令可以将输入参数IN中的全部内容循环地逐位左移或右移,空出的位用输入IN移出位的信号状态填充。该指令可以对8、16、32以及64位的字或整数进行操作。四.移位、循环和字逻辑运算指令1.移位和循环指令字移位指令移位的范围为0~15,双字移位指令移位的范围为0~31,长字移位指令移位的范围为0~63。对于字、双字和长字移位指令,移出的位信号丢失,移空的位使用0补足。四.移位、循环和字逻辑运算指令1.移位和循环指令带有符号位的整数移位范围为0~15;双整数移位范围为0~31;长整数移位指令移位的范围为0~63。移位方向只能向右移,移出的位信号失,移空的位使用符号位补足。四.移位、循环和字逻辑运算指令2.字逻辑运算指令字逻辑指令可以对Byte(字节)、Word(字)、DWord(双字)或LWord(长字)逐位进行“与”、“或”、“异或”逻辑运算操作。“与”操作可以判断两个变量在相同的位数上有多少位为1,通常用于变量的过滤,例如一个字变量与常数W#16#00FF相“与”,则可以将字变量中的高字节过滤为0;“或”操作可以判断两个变量中为1位的个数;“异或”操作可以判断两个变量有多少位不相同。使用步序控制实现输送带物料分拣任务实施任务描述

任务要求如下:1.能正确完成PLC控制的电气接线。2.能完成气路图的安装。3.能使用步序控制编程方式实现复杂程序的编写。步序控制编程步骤一PLCI/O分配和控制电路接线步骤一PLCI/O分配和控制电路接线PLC控制电气原理图DC24V线圈步骤二气路连接原理与气动元件安装选择一定规格尺寸的气管,从气泵产生气源开始,经过可调压的空气过滤器,再经过开关后进入电磁阀底座,最后进入气缸(即1#分拣机构推出气缸、1#分拣机构升降气缸、2#分拣机构推出气缸、2#分拣机构升降气缸、3#分拣机构推出气缸、3#分拣机构升降气缸)。步骤二气路连接原理与气动元件安装可调压空气过滤器包括空气减压阀、过滤器,又称为气源处理二联件,其中减压阀可以对气源进行稳压调节。步骤二气路连接原理与气动元件安装典型的电磁阀底座连接是PC螺纹接头(进气用)、电磁阀、消声器、阀板、内六角堵头进行连接。步骤二气路连接原理与气动元件安装二位五通电磁阀:二位表示阀芯的工作位置数为2个;五通表示切换通口数量为5个,即A、B、R、P、S。“A”、“B”即电磁阀的输出口,接下游的设备;“R”、“S”即电磁阀的泄放口;“P”是压力介质的入口,一般接压缩空气气源。步骤二气路连接原理与气动元件安装气缸结构步骤二气路连接原理与气动元件安装磁感应式接近开关为确认气缸动作是否到位,通常会加装图中所示的磁感应式接近开关,该开关可以采用带式、导轨式、拉杆式和直接式等方式安装在气缸两端。步骤二气路连接原理与气动元件安装带式安装步骤二气路连接原理与气动元件安装选择一定规格尺寸的气管,从气泵产生气源开始,经过可调压的空气过滤器,再经过开关后进入电磁阀底座,最后进入气缸(即1#分拣机构推出气缸、1#分拣机构升降气缸、2#分拣机构推出气缸、2#分拣机构升降气缸、3#分拣机构推出气缸、3#分拣机构升降气缸)。步骤三PLC梯形图编程步序控制编程的优点:(1)可以直观地看到设备的动作顺序,程序的规律性较强,容易读懂。(2)在设备发生故障时能很容易的找出故障所在位置。(3)不需要复杂的互锁电路,更容易设计和维护系统。步序控制的标准结构是:状态或步+该步工序中的动作或命令+有向连接+转换和转换条件步骤三PLC梯形图编程步序控制设计规则从初始状态或步开始执行,当每步的转换条件成立,就由当前状态或步转为执行下一步,最后结束所有状态或步的运行。步骤三PLC梯形图编程步序控制设计实例使用步序控制法编程将这个控制要求分为几个工作状态(或步),从一个工作状态(或步)到另一个工作状态(或步)通过满足转换条件来实现转移。步骤三PLC梯形图编程步骤三PLC梯形图编程变量定义说明步骤三PLC梯形图编程步骤三PLC梯形图编程步骤三PLC梯形图编程步骤三PLC梯形图编程步骤三PLC梯形图编程S7-1200代码块种类各种块组织块OBOB(OrganizationBlock的简称)是定义程序的结构在组织块中,OB1是用于循环执行用户程序的默认组织块,为用户程序提供基本结构,是唯一一个用户必需的程序块。其他OB具有预定义的行为和启动事件,但用户也可以创建具有自定义启动事件的OB。函数FC和函数块FB函数FC和函数块FB是包含与特定任务或参数组合相对应的程序代码。每个FC或FB都能提供一组输入和输出参数,其中FB还使用相关联的数据块(或称为背景数据块)来保存执行期间的值状态。数据块DB数据块DB是存储程序块可以使用的数据,它可以手动建立或者在调用指令时自动建立。标准DB优化的DB数据块数据块DB标准DB在PLC内的存储及处理方式数据块DB优化DB在S7系列PLC内的存储及处理方式数据块DBS7-1200PLC处理标准DB块内的数据时,要额外消耗CPU的资源,导致CPU效率下降,所以推荐使用优化DB。在优化DB中,所有的变量以符号形式存储,没有绝对地址,不易出错,且数据存储的编码方式与CPU编码方式相同,效率更高。用户程序的结构有了OB、FB、FC和DB后,PLC的程序就可以正常运行。用户程序的执行顺序是:从一个或多个在进入RUN模式时运行一次的可选启动组织块(OB)开始,然后执行一个或多个循环执行的程序循环OB。FC函数函数的定义函数(即Function,简称FC)是指一段可以直接被另一段程序或代码(即OB、FB或FC)引用的程序或代码。函数的作用(1)作为子程序使用。将相互独立的控制设备分成不同的FC编写,统一由OB块调用,这样就实现了对整个程序进行结构化划分,便于程序调试及修改,使整个程序的条理性和易读性增强。(2)可以在程序的不同位置多次调用同一个函数。函数中通常带有形参,通过多次调用,并对形参赋值不同的实参,可实现对功能类似的设备统一编程和控制。函数的形参接口区函数的形参接口区参数类型分为输入参数、输出参数、输入/输出参数和返回值。本地数据包括临时数据及本地常量。每种形参类型和本地数据均可以定义多个变量。函数的形参说明(1)Input:输入参数,只能读取,函数调用时将用户程序数据传递到函数中,实参可以为常数。(2)Output:输出参数,只能写入,函数调用时将函数执行结果传递到用户程序中,实参不能为常数。(3)InOut:输入/输出参数,可读取和写入,调用时由函数读取其值后进行运算,执行后将结果返回,实参不能为常数。函数的形参说明(4)Temp:用于存储临时中间结果的变量,为本地数据区L,只能用于函数内部作为中间变量使用。临时变量在函数调用时生效,函数执行完成后临时变量区被释放,所以临时变量不能存储中间数据。临时变量在调用函数时由系统自动分配,退出函数时系统自动回收,所以数据不能保持。(5)Constant:声明常量符号名后,程序中可以使用符号代替常量,这使得程序具有可读性且易于维护。符号常量由名称、数据类型和常量值三个元素组成。局部常量仅在块内适用。(6)Return:函数FC的执行返回情况,数据类型为Void。无形参函数(子程序功能)控制三个相互独立的控制设备,可将程序分别编写在三个子程序中,然后在主程序中分别调用FC1、FC2、FC3等各个子程序,实现对设备的控制。使用函数块FC实现输送带物料分拣任务实施任务描述

任务要求如下:1.新建函数FC块来替代原梯形图中重复的程序代码并进行结构化编程。2.函数FC块需带有形参,可以进行多次调用。FC编程第一步完成物料逻辑FC块的编程第一步完成物料逻辑FC块的编程定义函数“物料逻辑”的形参接口区根据流程图,参数需要选择合适的数据类型,比如物料编号和定时为Int,其余变量均为Bool。第一步完成物料逻辑FC块的编程FC1函数的编程,其中变量均以“#”开始第一步完成物料逻辑FC块的编程第一步完成物料逻辑FC块的编程完成后的FC1位置示意第二步主程序调用FC块主程序OB1块的变量说明除了输入输出之外,它还包括定时1(MW12)、定时2(MW14)、定时3(MW16)、定时变量1(M20.0)、定时变量2(M20.1)、定时变量3(M20.2)。第二步主程序调用FC块第二步主程序调用FC块第二步主程序调用FC块第二步主程序调用FC块第二步主程序调用FC块块调用与FB块调用在PLC编程中,通过设计FB和FC块来执行通用任务,可创建模块化程序块,然后可通过由其它程序块调用这些可重复使用的模块来构建程序,调用块将设备特定的参数传递给被调用块块调用使用可嵌套块调来实现更加模块化的结构函数块FB接口区添加FB函数函数块FB接口区函数块的形参接口区参数类型除输入参数、输出参数、输入/输出参数、临时数据区、本地常量外,还带有存储中间变量的静态数据区。函数块FB接口区Input:输入参数,函数块调用时将用户程序数据传递到函数块中,实参可以为常数。Output:输出参数

温馨提示

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

评论

0/150

提交评论