西门子S7-200 SMART PLC软元件、数据类型及数据直接寻址讲解!
软元件
软元件I
表示输入继电器,也称输入映像寄存器。在PLC的每一个数字量输入点,对应着输入映像寄存器的一个位,主要用于接收外部开关信号。
PLC外部开关信号闭合时,输入继电器的线圈得电,在程序中其常开触点闭合,常闭触点断开。输入继电器触点在程序中可以不限次的使用。
软元件Q
表示输出继电器,也称为输出映像寄存器。在PLC的每一个数字量输出点,对应着输出映像寄存器的一个位,主要用于驱动外部负载。
一个输出继电器对应输出端子连接的常开触点,内部常开触点和常闭触点可以有很多个。
关于软元件输入I和输出Q,由于I/O扩展模块占用的输入和输出地址与模块位置有关,不连续且不能被用户自定义,可以在系统块中的概览表格中查看地址规划,编程时对应查看,防止地址用错。
软元件M
软中间继电器在编程过程中,主要起中间过渡或辅助作用。200smart提供的中间继电器地址范围是:M0.0~M31.7,共256个。断电不保持M0.0~M13.7,在PLC电源断开后,状态变为OFF。当电源恢复后,除了程序使其变为ON外,其它仍保持OFF。断电保持型中间继电器M14.0~M31.7,在PLC电源断开后,可以保持断电前的状态,在恢复供电后继续断电前的状态。
软元件SM
用于存储系统的状态、控制参数和信息等。
SM0.0 :PLC处于RUN状态时,始终为“1”或处于导通状态。
SM0.1 :初始化脉冲。PLC开始运行时,SM0.1接通一个扫描周期。
SM0.2:如果保持数据丢失,从0变为1,置位一个扫描周期。
SM0.3:PLC上电或者暖启动条件进入RUN方式时,SM0.3接通一个扫描周期,可用于开启操作之前给机器提供预热时间。
SM0.4:分时钟脉冲,提供占空比为50%,30秒接通,30秒断开的周期为一分钟的脉冲串。
SM0.5:秒时钟脉冲,提供占空比为50%,0.5接通,0.5断开的周期为1秒的脉冲串。
SM0.6:扫描周期时钟,接通扫描一个周期,断开一个周期,再接通扫描一个周期依次循环。
SM0.7:指令执行状态位,指令执行的结果溢出或检测到非法数值时,置为1。
软元件V
变量存储器,用来存储变量。可以用来存放程序执行过程中的中间结果,也可以使用变量存储器来保存与工序或任务相关的其他数据。
软元件L
局部变量存储器。用来存放局部变量。局部变量与变量存储器的全局变量十分相似,主要区别在于全局变量是全局有效的,而局部变量是局部有效的。
在后面篇幅中,小编将通过一个具体运用来说明局部变量存储器L的使用。
软元件S
状态继电器又称顺序控制继电器,是编制顺序控制程序的重要器件,它通常与顺控指令使用以实现顺序控制功能。
软元件HC
高速计数器。普通的计数器的计数频率受到扫描周期的影响,不能太高,而高速计数器可累计比CPU的扫描周期更快的事件,高速计数器一般运用于运动控制领域。
西门子S7-200 Smart系列PLC高速计数器多6个,编号从HSC0~HSC5,其中“HSC”是高速计数器的标识符。
软元件AI与AQ
模拟量输入映像寄存器与模拟量输出映像寄存器。西门子S7-200Smart系列PLC的模拟量输入映像寄存器与模拟量输出映像寄存器的地址是 AIW0 ~ AIW110;AQW0 ~AQW110,共56个字,其地址只能以字地址形式进行寻址,并且字地址只能是偶数。
AIW0、AIW2、AIW4、AIW6、AIW8、 …… 、AIW110
AQW0、AQW2、AQW4、AQW6、AQW8、 …… 、AQW110
模拟量输入值为只读数据,模拟量输出值为只写数据!
软元件AC
累加器是用来暂存数据的寄存器,可以用来存放运算数据、中间数据和结果。200Smart这款PLC提供4个长度为32位的累加器,其地址范围是 AC0 ~ AC3,是可读可写单元。
在后面篇幅中,小编将通过一个具体运用来说明累加器AC的使用。
02字节、字、双字
字节Byte:由八个位组成的一个单元,8个bit组成1个Byte。数据存储是以“字节”为单位,数据传输大多以“位”为单位。
VB0:表示V存储区的字节0,包含了V0.0—V0.7,8个二进制位。V0.0是低位,V0.7是高位。
字Word:16个位为一个字,计算机进行数据存储和数据处理的运算单位,通常称16位是一个字。
VW0:表示V存储区的字0,包含VB0、VB1,VB0包含V0.0—V0.7。VB1包含V1.0—V1.7。VW0中V0.7是高bit位,V1.0是低bit位,VB0是高字节,VB1是低字节。
双字Doubleword :32位组成一个双字。
VD0:表示V存储区的双字0,包含VW0、VW2,包含VB0、VB1、VB2、VB3。VB0包含V0.0—V0.7的8个位,VB1包含V1.0—V1.7的8个位,VB2包含V2.0—V2.7的8个位,VB3包含V3.0—V3.7的8个位。VD0中V0.7是高bit位,V3.0是低bit位,VW0是高字,VB0是高字节,VB3是低字
03数据类型及数据大小范围
无符号整数:只有0和正整数
有符号整数:可以是正数和负数。有符号整数采用二进制补码的形式来表示负数。
实数(浮点数):以 32 位单精度数表示,实数按双字长度访问。浮点数jingque到小数点后第 6 位。输入浮点常数时,多只能指定6 位小数。计算涉及到包含非常大和非常小数字的一长串数值时,计算结果可能不准确。
ASCII字符和String(字符串):ASCII字符是由表示字母、数字和一些特殊符号的ASCII编码组成的二进制数据字节,一个字节存储一个字符。
多字节组合寻址时,遵循“高地址,低字节”。例如VW0,包含VB0和VB1,VB1是高地址,低字节,V1.0是低位,V0.7是高位。
04直接寻址和间接寻址
所谓“寻址”,是指PLC的CPU根据程序中变量的地址,找到对应的物理地址的过程。有直接寻址和间接寻址两种。直接寻址又分为物理寻址和符号寻址两种。
直接寻址(物理寻址)
按位寻址:V0.4,“V”代表存储区标识符;“0”代表字节地址,字节0;“.”代表分隔符;“4”代表位在字节中的位置。
按字节寻址:VB0,“V”代表存储区;“B”代表访问字节,“0”代表字节地址,字节0。
按字寻址:如VW0,“V”代表存储区标识符;“W”代表访问字,“0”代表起始字节地址,从字节0开始寻址,连续访问两个字节。
按双字寻址:如VD0,“V”代表存储区标识符;“D”代表访问字,“0”代表起始字节地址,从字节0开始寻址,连续访问四个字节。
通过指定存储区的类型及访问宽度,就可以唯一定位一个地址。
例如访问变量存储区V的第100个字节,写作:VB100。V100.7是高位,V100.0是低位。
访问V存储区的第100个字节开始的一个字,写作:VW100,它包含VB100和VB101。其中VB101是低字节,VB100是高字节。V100.7是高位,V101.0是低位。
访问V存储区的第100个字节开始的一个双字,写作:VD100,它包含VB100、VB101、VB102、VB103。其中VB103是低字节,VB100是高字节。V100.7是高位,V103.0是低位。
直接寻址(符号寻址)
在程序编写过程中,由于物理地址不能表示实际的工程意义且不便于程序分析,为了提高程序的可读性,通过给物理地址命名,称为“符号名”。符号名与物理地址一一对应,这种通过符号名来访问物理地址的方式称为“符号寻址”。