您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 自动生产线的安装与调试
1第2章西门子S7-200的基本指令可编程序控制器指令是PLC的编程语言,用户通过编写指令码,由编译系统编译成机器码后,加载到可编程序控制器的用户程序存储器中,由监控程序去执行它,从而实现复杂的控制操控。可编程序控制器语言指令是由各类工程人员所熟悉的工程语言直接转化过来的,便于记忆,易于编程。S7-200PLC编程指令结构2第2章西门子S7-200的基本指令2.1基本逻辑指令2.1.1基本位操作指令•基本逻辑指令在语句表语言中是指对位存储单元的简单逻辑运算,在梯形图中是指对触点的简单连接和对标准线圈的输出。•一般来说,语句表语言更适合于熟悉可编程序控制器和逻辑编程方面有经验的编程人员。用这种语言可以编写出用梯形图或功能框图无法实现的程序。选择语句表时进行位运算要考虑主机的内部存储结构。3第2章西门子S7-200的基本指令•(1)LD:装入常开触点(LoaD)•(2)LDN:装入常闭触点(LoaDNot)•(3)A:与常开触点(And)•(4)AN:与常闭触点(AndNot)。•(5)O:或常闭触点(Or)•(6)ON:或常闭触点(OrNot)•(7)NOT:触点取非(输出反相)•(8)=:输出指令4第2章西门子S7-200的基本指令•可编程序控制器中的堆栈与计算机中的堆栈结构相同,堆栈是一组能够存储和取出数据的暂时存储单元。堆栈的存取特点是“后进先出”,S7-200可编程序控制器的主机逻辑堆栈结构如表所示。5第2章西门子S7-200的基本指令•在语句表中,LD、LDN、A、AN、O、ON、NOT这几条指令的执行对逻辑堆栈的影响分别如下表说明。LDI0.1=1的执行I0.2的执行6第2章西门子S7-200的基本指令•如图所示。•在功能框图中,常闭触点的装入和串并联用指令盒的对应输入信号端加圆圈来表示。LDI0.0//OI0.1//AI0.2//=Q0.0//////LDNI0.0//ONI0.1//ANI0.2//=Q0.1//////LDI0.0//OI0.1//AI0.2//NOT//=Q0.3//触点的使用7第2章西门子S7-200的基本指令2.1.2脉冲生成(边沿触发)指令脉冲生成也称边沿触发指令,就是利用信号的边沿,来触发相应的电路从而产生一个机器周期的扫描脉冲,常常用作脉冲整形和噪波消除。8第2章西门子S7-200的基本指令脉冲生成指令时序图9第2章西门子S7-200的基本指令2.1.3设置、复原操作指令梯形图中线圈获得能量流时(存储器位置1)表示线圈通电,线圈没有获得能量流(存储器位置0)时表示线圈断电。利用继电器电路中线圈通、断电原理来描述存储器位的置位、复位操作。设置、复原指令则是将存储器的设置、复原功能分开来用。LDI0.0//装入常开触点AI0.1//与常开触点=Q1.0//输出触点LDI0.0//AI0.1//SQ0.0,1//将Q0.0开始的//1个触点置1RQ0.2,3//将Q0.2开始的//3个触点置0I0.0Q0.2-Q0.4Q0.0Q1.0I0.110第2章西门子S7-200的基本指令2.1.4取反和无操作指令无操作指令(NOP)的作用是防止程序跑飞。当使能输入有效时,执行空操作指令(NOP),扫描周期长度将会稍微延长,给程序增加陷阱,不影响用户程序的执行,使能流输出不中断。取反指令(NOT)的作用是把电路的逻辑运算取反,即对存储器位进行取反操作运算结果若为1则变为0,改变能量流的状态。11第2章西门子S7-200的基本指令2.1.5定时器指令西门子S7-200系列PLC的定时器指令可按照工作方式和时间基准进行分类,若按照工作方式可分为,接通(通电)延时定时器(TON),用于单个间隔计时;保留性接通(有记忆的通电)延时定时器(TONR);断开延时定时器(TOF),用于延长时间以超过关闭(或假条件),例如电机关闭后使电机冷却。这些定时器用于实现时间控制,属于增量型定时器。时间基准又称为定时精度和分辨率。定时器指令格式如表所示。12第2章西门子S7-200的基本指令LDI0.0//使能输入TONT35,+4//通电延时定时//延时时间为//40msLDI0.0//TONRT2,+10//有记忆通电//延时时间累计//为1000msLDI0.0//TOFT36,+3//断电延时定时//延时时间为//30ms定时器特性13第2章西门子S7-200的基本指令T36位4103I0.0T33当前值T2当前值T33位3T2位T36当前值最大值最大值4定时器时序14第2章西门子S7-200的基本指令定时器时基标准15第2章西门子S7-200的基本指令2.1.6计数器指令计数器的基本结构和使用方法与定时器的基本一致,西门子S7-200系列PLC计数器指令有CTU(增计数)、CTD(减计数)、CTUD(增/减计数),其工作原理是利用输入脉冲上升沿信号来累计脉冲个数。主要由预置值寄存器、当前值寄存器、状态位等组成。实际用来对产品进行计数或完成相应的逻辑控制。计数器指令格式如表5-7所示。16第2章西门子S7-200的基本指令LDI0.0//增计数输入端LDI0.1//减计数输入端LDI0.2//复位输入端CTUDC30,+5//增减计数,设定//脉冲数为5。LDC30//计数器触点=Q0.0//输出触点1234543434567I0.0I0.1I0.2C30当前值C30位17第2章西门子S7-200的基本指令2.1.7比较指令比较指令用于两个数值、字符串按一条件进行比较。18第2章西门子S7-200的基本指令LDI0.0//增计数输入端LDI0.1//减计数输入端LDI0.2//复位输入端CTUDC30,+10000//增减计数,//设定脉冲数//为10000。LDW=C30,VW20//比较计数器//当前值是否大于//VW20中的值=Q0.0//输出触点LDW= C30,VW30//比较计数器//当前值是否大于//VW30中的值=Q0.1//输出触点1000100050005000C30当前值Q0.0Q0.1比较指令程序举例19第2章西门子S7-200的基本指令2.2数学运算指令2.2.1算术运算指令+I,整数加法指令。使能输入有效时,将两个单字长(16位)的符号整数IN1和IN2相加,产生一个16位整数结果OUT。+D,双整数加法指令。使能输入有效时,将两个双字长(32位)的符号双整数IN1和IN2相加,产生一个32位双整数结果OUT。IN1+IN2=OUT。+R,实数加法指令。使能输入有效时,将两个双字长(32位)的实数IN1和IN2相加,产生一个32位实数结果OUT。20第2章西门子S7-200的基本指令•减法指令是对有符号数进行相减操作。包括:整数减法、双整数减法和实数减法。这三种减法指令与所对应的加法指令除运算法则不同之外,其他方面基本相同。•在LAD和FBD中,以指令盒形式编程,执行结果:IN1-IN2=OUT。•在STL中,执行结果:OUT-IN2=OUT。•指令格式:-IIN2,OUT(整数减法)•-DIN2,OUT(双整数减法)•-RIN2,OUT(实数减法)•例:-IAC0,VW421第2章西门子S7-200的基本指令乘/除运算指令乘/除运算指令是对符号数的乘法运算指令和除法运算指令。•乘法指令。使能输入有效时,将两个单字长的符号整数IN1和IN2相乘,产生一个整数结果OUT。22第2章西门子S7-200的基本指令2.2.2数学函数指令1.三角函数指令•SIN、COS、TAN,即正弦、余弦、正切指令。将一个双字长(32位)的实数弧度值IN分别取正弦、余弦、正切,各得到32位的实数结果。•如果已知输入值为角度,要先将角度值转化为弧度值,方法:使用(*R)MUL_R指令用角度值乘以π/180°即可。23第2章西门子S7-200的基本指令2.指数/自然对数/平方根指令24第2章西门子S7-200的基本指令2.2.3增1/减1计数计数器的增1/减1计数器用于是用于对输入脉冲的计数,用于数的自增、自减操作,用来实现累加计数和循环控制等功能。25第2章西门子S7-200的基本指令26第2章西门子S7-200的基本指令2.2.4逻辑运算指令逻辑运算指令严格的讲为字的逻辑运算指令,是对无符号字进行的逻辑处理,包括取反(INV)指令;逻辑与(WAND)指令、逻辑或(WOR)指令、逻辑异或(WXOR)指令,它们的作用是把两个输入字(IN1和IN2)的对应位执行运算。并把运算结果由OUT制定的存储单元输出。27第2章西门子S7-200的基本指令28第2章西门子S7-200的基本指令2.3数据处理指令2.3.1数据传送指令将输入字节或字以单一数据或数据块的形式移至输出,不改变原来的数值,从而实现存储单元间的数据复制和传送。•1.单一传送•(1)MOVB,字节传送指令•(2)BIR,传送字节立即读指令•(3)BIW,传送字节立即写指令•(4)MOVW,字传送指令•(5)MOVD,双字传送指令•(6)MOVR,实数传送指令•2.块传送•(1)BMB,字节块传送指令•(2)BMW,字块传送指令•(3)BMD,双字块传送指令29第2章西门子S7-200的基本指令数据传送指令应用实例30第2章西门子S7-200的基本指令2.3.2移位指令循环左移和循环右移根据所循环移位的数的长度分别又可分为字节型、字型、双字型。循环移位特点:移位数据存储单元的移出端与另一端相连,同时又与SM1.1(溢出)相连,所以最后被移出的位被移到另一端的同时,也被放到SM1.1位存储单元。例如在循环右移时,移位数据的最右端位移入最左端,同时又进入SM1.1。SM1.1始终存放最后一次被移出的位。•(1)字节循环左移和字节循环右移•(2)字循环左移和字循环右移•(3)双字循环左移和双字循环右移31第2章西门子S7-200的基本指令移位寄存器位(SHRB)指令:将DATA数值移入移位寄存器。32第2章西门子S7-200的基本指令2.3.3交换字节指令将输入字(IN)的最高位字节和最低位字节相互交换。33第2章西门子S7-200的基本指令2.3.4内存填充指令从地址OUT开始,将包含在地址IN中的字值填充N个连续字。N(字节)的数据范围为0~255。34第2章西门子S7-200的基本指令2.4转换指令2.4.1数据类型转换指令1.整数与BCD码(1)BCD码到整数(2)整数到BCD码2.字节与整数(1)字节到整数(2)整数到字节3.整数与双整数(1)双整数到整数(2)整数到双整数4.双整数与实数(1)实数到双整数(2)双整数到实数35第2章西门子S7-200的基本指令数据类型转换指令应用实例36第2章西门子S7-200的基本指令2.4.2数据编码、解码指令1.编码指令ENCO,编码指令。使能输入有效时,将字型输入数据IN的最低有效位(值为1的位)的位号输出到OUT所指定的字节单元的低4位。2.解码指令DECO,译码指令。使能输入有效时,将字节型输入数据IN的低4位所表示的位号对OUT所指定的字单元的对应位置1,其他位置0。即对半个字节的编码进行译码来选择一个字型数据16位中的1位。3.七段显示译码指令SEG,七段码指令。使能输入有效时,将字节型输入数据IN的低4位有效数字产生相应的七段码,并将其输出到OUT所指定的字节单元。37第2章西门子S7-200的基本指令编码、解码及七段显示译码指令应用实例38第2章西门子S7-200的基本指令2.4.3字符串类型转换指令•1.指令种类•(1)ASCII码转换16进制指令•(2)16进制到ASCII码•(3)整数到ASCII码•(4)双整数到ASCII码•(5)实数到ASCII码•2.指令介绍•下面仅以ASCII码转换16进制指令为例说明字符串与其他数据类型之间的转换。•ATH,ASCII码转换16进制指令。指令盒中有3个操作数:IN,开始字符的字节地址,字节类型;LEN,字符串的长度,字节类型,最大长度为255;OUT,输出目的开始字节地址,字节类型。使能输入有效时,把从IN开始的长度为LEN的AS
本文标题:自动生产线的安装与调试
链接地址:https://www.777doc.com/doc-1333399 .html