西门子 S7-200 SMART PLC进制及其转换,数据类型,存储空间,地址分配
1、进制及其转换:十进制,二进制,八进制,十六进制,两两相互转换。
01010101010:二进制数,PLC一种专门用于工业控制的计算机。而数据最终在计算机或者PLC都是以二进制形式存在。计算机只能通过高低电平的方式记录在内部电路中。
二进制:0和1。在西门子S7-200 Smart中,数字前加2#表示二进制常数。比如:2#0010。
八进制:0-7。规则:逢八进一。在西门子S7-200 Smart中输入输出点都是以八进制排列。比如:I0.0-I0.7,I1.0-I1.7。
十进制:0-9。包含0-9十个数。规则:逢十进一。比如:17
十六进制:包含0-9,A(10),B(11),C(12),D(13),E(14),F(15)
规则:逢十六进一。在西门子S7-200 Smart中,数字前加16#表示十六进制常数,比如:16#A。
除非加16#和2#表示十六进制和二进制,如果不表示进制符号只能表示十进制数。
八进制表示输入和输出的点。
十进制转二进制:除二取余,逆序排列。
8/2=4,4/2=2,2/2=1。即为:1000
二进制转十进制:以最后以为开始算,依次为0,1,2,3,4,5,6.........
2#10111=1*2的0次方+1*2的1次方+1*2的2次方+0*2的三次方+1*2的四次方=1+2+4+0+16=23
二进制转十六进制数:
四位二进制数表示一个16进制数。
二进制数转十六进制数:
2#11011101=16#DD
2#1101 1101
8421 8421
8+4+1=13
8+4+1=13
进制神器:调用程序员,用计算机里面的进制神器进行快速搞定。
2、数据类型
一、基本数据类型
基本数据类型的长度不超过32位。
位(BOOL):长度为1位,范围为:0和1。输入例子:1和0
字节(BYTE):长度为8位,范围为:16#00-16#FF(0-255),输入例子:16#AB
字(WORD):长度为16位,范围为:16#0000-16#FFFF(0-65535),输入例子:16#ABCD
双字(DOUBLE WORD):长度为32位,范围为:16#00000000-16#FFFFFFFF(4294967295)
整数(INT):长度为16位,范围为:-32768-32767,符号为:+和-占用了一个位,输入例子:123
双整数(DOUBLE INT):长度为32为,范围为:-2147483648-2147483647,符号为:符号占用一个位
浮点数(REAL):长度为32位,用小数的时候用浮点数32位数。
Int(16位)和Dint(32位)为有符号数(就是有正有负,+-),最高位为1的时候为负数,最高位为0的时候为正数。
word为无符号数来使用
int为有符号数来使用
S5TIME(SIMATIC时间)
IEC时间(TIME)
IEC日期(date)
日计时(TIME_OF_DAY)
字符(CHAR)
重点:S5TIME和IEC时间数据类型结构,二者区别
二、复杂数据类型
复杂数据类型是由其他基本数据类型组合而成的,长度超过32位的数据类型。
1.日期时间数据类型(Data_And_Time):
2.字符串类型(String):
3.数组类型Array
4.结构(STRUCT):
5.用户定义类型(UDT):
三、参数数据类型
用于功能FC或功能块FB的数据类型
(1)Pointe指针类型,6字节指针类型,传递数据块号和数据地址
(2.)Any指针类型,10字节指针类型,传递数据块号、数据地址、数据数量以及数据类型
3、存储空间
输入寄存器(I)数字量 BOOL使用
输出寄存器(Q)数字量 BOOL使用
变量存储区(V)存储器存储空间比较大
中间位存储区(M)中间转换使用,中间继电器,中间变量来使用
特殊标志存储区(SM)系统的东西全部存储在特殊标志存储区中,西门子已经固话了,我们只能使用
定时器区(T)进行软元件来定时
计数器区(C)进行软元件来累计
高速计数器区(HC)
模拟输入(AI)弯度表,压力表,温度,接入到模拟量来输入
局部变量存储区(L)
累加器(AC)
电脑分区:
C、 D、 E盘
系统 软件 文件
4、寻址
寻址格式:按位/字节/字/双字寻址
I0.1 Q0.1 M0.1
I:寄存器标识符
0:字节地址:B表示字节。W表示字。D表示双字。
1:字节的位号:起始编号。
QB2:将字节2D的八个位全部占用。
IB2:将字节2D的八个位全部占用。
IW0:包括IB0和IB1。也是16个位。
QW4:包括QB4和QB5。也是16个位。
ID0:包括IB0、IB1、IB2、IB3。也就是32个位。
存储空间
位:Bit 是计算机最小存储单元,表示两种状态0和1
字节:byte从0号位开始连续8位为一个字节。字节是PLC处理最基本单元。
字:word相邻的两个字组成一个字的长度。取值范围为:0-65535。
IW0 为IB0-IB1
双字:Dword 相邻的四个字节组成一个双字的长度(0-4294967295)
ID2 为IB2-IB3-IB4-IB5。
IW2为IB2-IB3
IW4为IB4-IB5
ID2。
存储关系:
1个双字 Dword(32位)=2 个字word(16位)=4个字节byte(8位)=32位
VB100/VB101/VB102/VB103=VW100+VW102=VD100
VB104/VB105/VB106/VB107=VW104+VW106=VD104
VB102/VB103/VB104/VB105=VW102+VW104=VD102
字地址偏移:+2
双字节地址偏移:+4
如果我在编程的时候,我写了VD100,又写了一个VD102。就会存在数据重叠和数据错乱。
防止出现数据错乱,有一个方法如下:
字地址偏移:+2
双字节地址偏移:+4
5、地址分配
西门子PLC的地址分配原则:高地址,低字节。与日系相反。
VB100:V表示区域标识符。B表示访问字节。100表示字节地址。
VW100:V表示区域标识符。W表示访问字。100表示字节地址。
VD100:V表示区域标识符。D表示访问双字。100表示字节地址。
VB100:
MSB LSB
7 VB100 0
VW100:
MSB LSB
15 VB100 8 7 VB101 0
VD100:
MSB LSB
31 VB100 24 23 VB101 16 15 VB102 8 7 VB103 0
西门子PLC的地址分配原则:高地址,低字节
VW10(VB10、VB11、V10.0-V10.7,V11.0-V11.7)
VW10最低位为V11.0,最高位为V10.7
V10.7V10.6V10.5V10.4V10.3V10.2V10.1V10.0V11.7V11.6V11.5V11.4V11.3V11.2V11.1V11.0