西门子PLC指令实例教程优质PPT.ppt
《西门子PLC指令实例教程优质PPT.ppt》由会员分享,可在线阅读,更多相关《西门子PLC指令实例教程优质PPT.ppt(96页珍藏版)》请在冰豆网上搜索。
![西门子PLC指令实例教程优质PPT.ppt](https://file1.bdocx.com/fileroot1/2022-10/9/b820608f-d604-4062-91c7-bce637c5f15a/b820608f-d604-4062-91c7-bce637c5f15a1.gif)
图4.1LAD编程语言1、梯形图(LAD)Date:
44.1.1STEP74.1.1STEP7编程语言编程语言2、语句表(STL)STL(STL:
StatementList)简称语句表,STL是一种类似于微机汇编语言的一种文本编程语言,由多条语句组成一个程序段。
语句表适合于经验丰富的程序员使用,可以实现某些梯形图不能实现的功能。
STL适用于喜欢用汇编语言编程的人员使用。
STL编程语言如图4.2所示。
图4.2STL编程语言Date:
54.1.1STEP74.1.1STEP7编程语言编程语言3、功能块图(FBD)FBD(FBD:
FunctionBlockDiagram)简称功能块图,功能块图使用类似于布尔代数的图形逻辑符号来表示控制逻辑,一些复杂的功能用指令框表示。
FBD适合于有数字电路基础的编程人员使用。
FBD编程语言如图4.3所示。
64.1.1STEP74.1.1STEP7编程语言编程语言图4.3FBD编程语言Date:
74.1.2S7-300CPU4.1.2S7-300CPU的系统存储器的系统存储器1、过程映像输入表/输出表(I/Q)过程映像输入表(PII):
循环扫描开始时,存储数字量输入模块的输入信号的状态。
过程映像输出表(PIQ):
循环扫描结束时,存储用户程序计算的输出值,并将PIQ的内容写入数字量输出模块。
2、内部存储器区(M)内部存储器区(M),主要用于存储中间变量。
3、定时器(T)存储器区在CPU的存储器中,有一个区域是专为定时器保留的。
此存储区域为每个定时器地址保留一个16位字。
梯形图逻辑指令集支持256个定时器。
时间值可以用二进制或BCD码方式读取。
84.1.2S7-300CPU4.1.2S7-300CPU的系统存储器的系统存储器4、计数器(C)存储器区在用户CPU的存储器中,有为计数器保留的存储区。
此存储区为每个计数器地址保留一个16位字。
梯形图指令集支持256个计数器。
计数值(0999)可以用二进制或BCD码方式读取。
5、数据块/背景数据块(DB)DB为共享数据块,DBX2.3,DBB5,DBW10和DBD12。
DI为背景数据块,DIX,DIB,DIW和DID。
6、外部I/O存储区(PI/PQ)外设输入(PI)区和外设输出(PQ)区允许直接访问本地的和分布式的输入模块和输出模块。
94.1.3S7-300CPU4.1.3S7-300CPU的寄存器的寄存器1、累加器(ACCUx)累加器用于处理字节、字或双字的寄存器。
S7-300有两个32位累加器(ACCU1和ACCU2)。
2、状态字寄存器(16位)状态字用于表示CPU执行指令时所具有的状态。
一些指令是否执行或以何方式执行可能取决于状态字中的某些位;
执行指令时也可能改变状态字中的某些位,也能在位逻辑指令或字逻辑指令中访问并检测。
状态字的结构如图4.4所示。
图4.4状态字的结构Date:
104.1.4STEP74.1.4STEP7数据类型数据类型在STEP7中,大多数指令要与具有一定大小的数据对象一起操作,不同的数据类型具有不同的格式。
编程所用的数据要指定数据类型,要确定数据大小和数据的位结构。
数据类型分为3大类。
1、基本数据类型基本数据类型有很多种,每种数据类型在分配内存空间时有确定的位数,如布尔型(BOOL)数据为1位,字节型(BYTE)数据为8位,字型(WORD)数据为16位,双字型(DWORD)数据为32位。
基本数据类型见表4-1。
114.1.4STEP74.1.4STEP7数据类型数据类型表4-1STEP7中常用的基本数据类型Date:
124.1.4STEP74.1.4STEP7数据类型数据类型2、复式数据类型超过32位或由其他数据类型组成的数据为复式数据类型,STEP7允许4种复式数据类型,见表4-2。
表4-2STEP7中的复式数据类型数据类型数据类型说明说明日期日期__时间时间DTDTDATE_ANDATE_AND_TIMED_TIME定义定义6464位区(位区(88字节)。
用字节)。
用BCDBCD码存储时间信息:
字节码存储时间信息:
字节00,年;
字节,年;
字节11,月;
字节,月;
字节22,日;
字节,日;
字节33,小时;
字节,小时;
字节44,分;
字节,分;
字节55,秒;
,秒;
字节字节66和字节和字节77的高位,毫秒;
字节的高位,毫秒;
字节77的低位,星期几的低位,星期几字符串字符串STRINGSTRING可定义可定义254254个字符。
字符串的默认大小为个字符。
字符串的默认大小为256256字节(存放字节(存放254254个字符,个字符,外加双字节字头),可以通过定义字符串的实际数目来减少预外加双字节字头),可以通过定义字符串的实际数目来减少预留值留值数组数组ARRAYARRAY定义一种数据格式的多维数组定义一种数据格式的多维数组构造构造STRUCTSTRUCT定义多种数据类型组合的数组定义多种数据类型组合的数组Date:
134.1.4STEP74.1.4STEP7数据类型数据类型3、参数类型参数类型用于向FB和FC传送参数。
STEP7提供的参数类型见表4-3。
参数参数大小大小说明说明定时器(定时器(TimerTimer)22字节字节指定执行逻辑块时要使用的定时器,如指定执行逻辑块时要使用的定时器,如T1T1计数器(计数器(CounterCounter)22字节字节指定执行逻辑块时要使用的计数器,如指定执行逻辑块时要使用的计数器,如C1C1块块BlockFBBlockFBBlockFCBlockFCBlockDBBlockDBBlockSDBBlockSDB22字节字节如:
如:
FB1FB1FC1FC1DB1DB1SDB1SDB1指针(指针(Pointer)Pointer)66字节字节定义内存单元,如定义内存单元,如P#M30.0ANYANY1010字字节节如果实参的数据类型未知,或可以使用任如果实参的数据类型未知,或可以使用任何数据类型时,如何数据类型时,如P#M30.0P#M30.0,byte10byte10表4-3STEP7的参数类型Date:
144.1.5PLC4.1.5PLC编程的基本原则编程的基本原则11)外部输入、输出继电器、内部继电器、定时器、计数器)外部输入、输出继电器、内部继电器、定时器、计数器等器件的接点可多次重复使用;
等器件的接点可多次重复使用;
22)梯形图每一行都是从左母线开始,线圈接在最右边,接)梯形图每一行都是从左母线开始,线圈接在最右边,接点不能放在线圈的右边;
点不能放在线圈的右边;
33)线圈不能直接与左母线相连;
)线圈不能直接与左母线相连;
44)同一编号的线圈在一个程序中使用两次容易引起误操作,)同一编号的线圈在一个程序中使用两次容易引起误操作,应尽量避免线圈重复使用;
应尽量避免线圈重复使用;
55)梯形图程序必须符合顺序执行的原则,从左到右,从上)梯形图程序必须符合顺序执行的原则,从左到右,从上到下地执行,如不符合顺序执行的电路不能直接编程;
到下地执行,如不符合顺序执行的电路不能直接编程;
66)在梯形图中串联接点、并联接点的使用次数没有限制,)在梯形图中串联接点、并联接点的使用次数没有限制,可无限次地使用。
可无限次地使用。
PLC编程应该遵循以下基本原则:
154.2STEP74.2STEP7的指令结构的指令结构指令是程序的最小独立单位,用户程序是由若干条顺序排列的指令构成。
STEP7编程语言其指令功能非常丰富。
利用程序编辑器,可以进行离线编程,即把程序存储在编程器中,也可以进行在线编程,将程序存储在CPU中。
4.2.1指令操作数指令操作数(又称编程元件)一般在用户存储区中,操作数由操作标识符和参数组成。
操作标识符由主标识符和辅助标识符组成,主标识符用来指定操作数所使用的存储区类型,辅助标识符则用来指定操作数的单位(如:
位、字节、字、双字等)。
主标识符有:
I(输入过程映像寄存器)、Q(输出过程映像寄存器)、M(位存储器)、PI(外部输入寄存器)、PQ(外部输出寄存器)、T(定时器)、C(计数器)、DB(数据块寄存器)和L(本地数据寄存器);
辅助标识符有:
X(位)、B(字节)、W(字)、D(双字)。
4.2.2寻址方式所谓寻址方式就是指令执行时获取操作数的方式,可以直接或间接方式给出操作数。
S7-300有4种寻址方式:
立即寻址、存储器直接寻址、存储器间接寻址和寄存器间接寻址。
161、立即寻址立即寻址是对常数或常量的寻址方式,其特点是操作数直接表示在指令中,或以唯一形式隐含在指令中。
下面各条指令操作数均采用了立即寻址方式。
SET/把RLO置1OWW#16#A320/将常量W#16#A320与累加器1“或”运算L27/把整数27装入累加器1LC#0100/把BCD码常数0100装入累加器12、存储器直接寻址存储器直接寻址,简称直接寻址。
该寻址方式在指令中直接给出操作数的存储单元地址。
存储单元地址可用符号地址(如SB1、KM等)或绝对地址(如I0.0、Q4.1等)。
下面各条指令操作数均采用了直接寻址方式。
AI0.0/对输入位I0.0进行“与”逻辑操作SL20.0/把本地数据位L20.0置1=M115.4/使存储区位M115.4的内容等于RLO的内容LIB10/把输入字节IB10的内容装入累加器1TDBD12/把累加器1中的内容传送给数据双字DBD12中Date:
173、存储器间接寻址存储器间接寻址,简称间接寻址。
该寻址方式在指令中以存储器的形式给出操作数所在存储器单元的地址,也就是说该存储器的内容是操作数所在存储器单元的地址。
该存储器一般称为地址指针,在指令中需写在方括号“”内。
地址指针可以是字或双字,对于地址范围小于65535的存储器可以用字指针;
对于其他存储器则要使用双字指针。
存储器间接寻址的双字指针的格式如图4.5所示。
图图4.54.5寄存器间接寻址的指针格式寄存器间接寻址的指针格式Date:
184.34.3位逻辑指令位逻辑